From 2e3a0215d051dca1f7c8ef423564c8d37a255f77 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Thu, 15 Mar 2018 14:31:08 +0100 Subject: Add short description in config --- server/controllers/api/config.ts | 5 +++++ server/initializers/constants.ts | 1 + server/lib/job-queue/handlers/activitypub-http-broadcast.ts | 2 +- server/lib/job-queue/handlers/activitypub-http-unicast.ts | 4 ++-- server/models/activitypub/actor-follow.ts | 2 +- server/tests/api/check-params/config.ts | 1 + server/tests/api/server/config.ts | 12 ++++++++++++ 7 files changed, 23 insertions(+), 4 deletions(-) (limited to 'server') diff --git a/server/controllers/api/config.ts b/server/controllers/api/config.ts index a25d7a157..62a783982 100644 --- a/server/controllers/api/config.ts +++ b/server/controllers/api/config.ts @@ -44,6 +44,7 @@ async function getConfig (req: express.Request, res: express.Response, next: exp const json: ServerConfig = { instance: { name: CONFIG.INSTANCE.NAME, + shortDescription: CONFIG.INSTANCE.SHORT_DESCRIPTION, defaultClientRoute: CONFIG.INSTANCE.DEFAULT_CLIENT_ROUTE, customizations: { javascript: CONFIG.INSTANCE.CUSTOMIZATIONS.JAVASCRIPT, @@ -85,6 +86,7 @@ function getAbout (req: express.Request, res: express.Response, next: express.Ne const about: About = { instance: { name: CONFIG.INSTANCE.NAME, + shortDescription: CONFIG.INSTANCE.SHORT_DESCRIPTION, description: CONFIG.INSTANCE.DESCRIPTION, terms: CONFIG.INSTANCE.TERMS } @@ -116,8 +118,10 @@ async function updateCustomConfig (req: express.Request, res: express.Response, const toUpdateJSON = omit(toUpdate, 'videoQuota') toUpdateJSON.user['video_quota'] = toUpdate.user.videoQuota toUpdateJSON.instance['default_client_route'] = toUpdate.instance.defaultClientRoute + toUpdateJSON.instance['short_description'] = toUpdate.instance.shortDescription delete toUpdate.user.videoQuota delete toUpdate.instance.defaultClientRoute + delete toUpdate.instance.shortDescription await writeFilePromise(CONFIG.CUSTOM_FILE, JSON.stringify(toUpdateJSON, undefined, 2)) @@ -139,6 +143,7 @@ function customConfig (): CustomConfig { return { instance: { name: CONFIG.INSTANCE.NAME, + shortDescription: CONFIG.INSTANCE.SHORT_DESCRIPTION, description: CONFIG.INSTANCE.DESCRIPTION, terms: CONFIG.INSTANCE.TERMS, defaultClientRoute: CONFIG.INSTANCE.DEFAULT_CLIENT_ROUTE, diff --git a/server/initializers/constants.ts b/server/initializers/constants.ts index 5946bcd11..d12d96803 100644 --- a/server/initializers/constants.ts +++ b/server/initializers/constants.ts @@ -157,6 +157,7 @@ const CONFIG = { }, INSTANCE: { get NAME () { return config.get('instance.name') }, + get SHORT_DESCRIPTION () { return config.get('instance.short_description') }, get DESCRIPTION () { return config.get('instance.description') }, get TERMS () { return config.get('instance.terms') }, get DEFAULT_CLIENT_ROUTE () { return config.get('instance.default_client_route') }, diff --git a/server/lib/job-queue/handlers/activitypub-http-broadcast.ts b/server/lib/job-queue/handlers/activitypub-http-broadcast.ts index 159856cda..78878fc01 100644 --- a/server/lib/job-queue/handlers/activitypub-http-broadcast.ts +++ b/server/lib/job-queue/handlers/activitypub-http-broadcast.ts @@ -39,7 +39,7 @@ async function processActivityPubHttpBroadcast (job: kue.Job) { } } - return ActorFollowModel.updateActorFollowsScoreAndRemoveBadOnes(goodUrls, badUrls, undefined) + return ActorFollowModel.updateActorFollowsScore(goodUrls, badUrls, undefined) } // --------------------------------------------------------------------------- diff --git a/server/lib/job-queue/handlers/activitypub-http-unicast.ts b/server/lib/job-queue/handlers/activitypub-http-unicast.ts index 9b4188c50..e1e1824e5 100644 --- a/server/lib/job-queue/handlers/activitypub-http-unicast.ts +++ b/server/lib/job-queue/handlers/activitypub-http-unicast.ts @@ -28,9 +28,9 @@ async function processActivityPubHttpUnicast (job: kue.Job) { try { await doRequest(options) - ActorFollowModel.updateActorFollowsScoreAndRemoveBadOnes([ uri ], [], undefined) + ActorFollowModel.updateActorFollowsScore([ uri ], [], undefined) } catch (err) { - ActorFollowModel.updateActorFollowsScoreAndRemoveBadOnes([], [ uri ], undefined) + ActorFollowModel.updateActorFollowsScore([], [ uri ], undefined) throw err } diff --git a/server/models/activitypub/actor-follow.ts b/server/models/activitypub/actor-follow.ts index 3c11d1b67..d3c438626 100644 --- a/server/models/activitypub/actor-follow.ts +++ b/server/models/activitypub/actor-follow.ts @@ -111,7 +111,7 @@ export class ActorFollowModel extends Model { if (numberOfActorFollowsRemoved) logger.info('Removed bad %d actor follows.', numberOfActorFollowsRemoved) } - static updateActorFollowsScoreAndRemoveBadOnes (goodInboxes: string[], badInboxes: string[], t: Sequelize.Transaction) { + static updateActorFollowsScore (goodInboxes: string[], badInboxes: string[], t: Sequelize.Transaction) { if (goodInboxes.length === 0 && badInboxes.length === 0) return logger.info('Updating %d good actor follows and %d bad actor follows scores.', goodInboxes.length, badInboxes.length) diff --git a/server/tests/api/check-params/config.ts b/server/tests/api/check-params/config.ts index ca8239270..3fe517fad 100644 --- a/server/tests/api/check-params/config.ts +++ b/server/tests/api/check-params/config.ts @@ -16,6 +16,7 @@ describe('Test config API validators', function () { const updateParams: CustomConfig = { instance: { name: 'PeerTube updated', + shortDescription: 'my short description', description: 'my super description', terms: 'my super terms', defaultClientRoute: '/videos/recently-added', diff --git a/server/tests/api/server/config.ts b/server/tests/api/server/config.ts index 271a57275..e17588142 100644 --- a/server/tests/api/server/config.ts +++ b/server/tests/api/server/config.ts @@ -52,6 +52,10 @@ describe('Test config', function () { const data = res.body as CustomConfig expect(data.instance.name).to.equal('PeerTube') + expect(data.instance.shortDescription).to.equal( + 'PeerTube, a federated (ActivityPub) video streaming platform using P2P (BitTorrent) directly in the web browser ' + + 'with WebTorrent and Angular.' + ) expect(data.instance.description).to.equal('Welcome to this PeerTube instance!') expect(data.instance.terms).to.equal('No terms for now.') expect(data.instance.defaultClientRoute).to.equal('/videos/trending') @@ -75,6 +79,7 @@ describe('Test config', function () { const newCustomConfig = { instance: { name: 'PeerTube updated', + shortDescription: 'my short description', description: 'my super description', terms: 'my super terms', defaultClientRoute: '/videos/recently-added', @@ -116,6 +121,7 @@ describe('Test config', function () { const data = res.body expect(data.instance.name).to.equal('PeerTube updated') + expect(data.instance.shortDescription).to.equal('my short description') expect(data.instance.description).to.equal('my super description') expect(data.instance.terms).to.equal('my super terms') expect(data.instance.defaultClientRoute).to.equal('/videos/recently-added') @@ -146,6 +152,7 @@ describe('Test config', function () { const data = res.body expect(data.instance.name).to.equal('PeerTube updated') + expect(data.instance.shortDescription).to.equal('my short description') expect(data.instance.description).to.equal('my super description') expect(data.instance.terms).to.equal('my super terms') expect(data.instance.defaultClientRoute).to.equal('/videos/recently-added') @@ -170,6 +177,7 @@ describe('Test config', function () { const data: About = res.body expect(data.instance.name).to.equal('PeerTube updated') + expect(data.instance.shortDescription).to.equal('my short description') expect(data.instance.description).to.equal('my super description') expect(data.instance.terms).to.equal('my super terms') }) @@ -183,6 +191,10 @@ describe('Test config', function () { const data = res.body expect(data.instance.name).to.equal('PeerTube') + expect(data.instance.shortDescription).to.equal( + 'PeerTube, a federated (ActivityPub) video streaming platform using P2P (BitTorrent) directly in the web browser ' + + 'with WebTorrent and Angular.' + ) expect(data.instance.description).to.equal('Welcome to this PeerTube instance!') expect(data.instance.terms).to.equal('No terms for now.') expect(data.instance.defaultClientRoute).to.equal('/videos/trending') -- cgit v1.2.3