diff --git a/client/src/app/+admin/follows/follows.routes.ts b/client/src/app/+admin/follows/follows.routes.ts
index b7d44f75b..e84c79e82 100644
--- a/client/src/app/+admin/follows/follows.routes.ts
+++ b/client/src/app/+admin/follows/follows.routes.ts
@@ -13,7 +13,7 @@ export const FollowsRoutes: Routes = [
component: FollowsComponent,
canActivate: [ UserRightGuard ],
data: {
- userRight: UserRight.MANAGE_APPLICATION_FOLLOW
+ userRight: UserRight.MANAGE_SERVER_FOLLOW
},
children: [
{
diff --git a/client/src/app/+admin/follows/shared/follow.service.ts b/client/src/app/+admin/follows/shared/follow.service.ts
index 3dc91dfca..d64361ee3 100644
--- a/client/src/app/+admin/follows/shared/follow.service.ts
+++ b/client/src/app/+admin/follows/shared/follow.service.ts
@@ -11,7 +11,7 @@ import { AccountFollow, ResultList } from '../../../../../../shared'
@Injectable()
export class FollowService {
- private static BASE_APPLICATION_URL = API_URL + '/api/v1/application'
+ private static BASE_APPLICATION_URL = API_URL + '/api/v1/server'
constructor (
private authHttp: HttpClient,
diff --git a/client/src/app/core/menu/menu-admin.component.html b/client/src/app/core/menu/menu-admin.component.html
index 99ee287c5..eb2d0d69c 100644
--- a/client/src/app/core/menu/menu-admin.component.html
+++ b/client/src/app/core/menu/menu-admin.component.html
@@ -5,7 +5,7 @@
List users
-
+
Manage follows
diff --git a/client/src/app/core/menu/menu-admin.component.ts b/client/src/app/core/menu/menu-admin.component.ts
index 88a654d1f..466da1aee 100644
--- a/client/src/app/core/menu/menu-admin.component.ts
+++ b/client/src/app/core/menu/menu-admin.component.ts
@@ -15,8 +15,8 @@ export class MenuAdminComponent {
return this.auth.getUser().hasRight(UserRight.MANAGE_USERS)
}
- hasApplicationFollowRight () {
- return this.auth.getUser().hasRight(UserRight.MANAGE_APPLICATION_FOLLOW)
+ hasServerFollowRight () {
+ return this.auth.getUser().hasRight(UserRight.MANAGE_SERVER_FOLLOW)
}
hasVideoAbusesRight () {
diff --git a/client/src/app/core/menu/menu.component.ts b/client/src/app/core/menu/menu.component.ts
index 872d29819..d2bd71534 100644
--- a/client/src/app/core/menu/menu.component.ts
+++ b/client/src/app/core/menu/menu.component.ts
@@ -16,7 +16,7 @@ export class MenuComponent implements OnInit {
private routesPerRight = {
[UserRight.MANAGE_USERS]: '/admin/users',
- [UserRight.MANAGE_APPLICATION_FOLLOW]: '/admin/friends',
+ [UserRight.MANAGE_SERVER_FOLLOW]: '/admin/friends',
[UserRight.MANAGE_VIDEO_ABUSES]: '/admin/video-abuses',
[UserRight.MANAGE_VIDEO_BLACKLIST]: '/admin/video-blacklist'
}
@@ -58,7 +58,7 @@ export class MenuComponent implements OnInit {
const adminRights = [
UserRight.MANAGE_USERS,
- UserRight.MANAGE_APPLICATION_FOLLOW,
+ UserRight.MANAGE_SERVER_FOLLOW,
UserRight.MANAGE_VIDEO_ABUSES,
UserRight.MANAGE_VIDEO_BLACKLIST
]
diff --git a/server/controllers/api/index.ts b/server/controllers/api/index.ts
index 876c911c7..b00fb7467 100644
--- a/server/controllers/api/index.ts
+++ b/server/controllers/api/index.ts
@@ -4,13 +4,13 @@ import { badRequest } from '../../helpers'
import { oauthClientsRouter } from './oauth-clients'
import { configRouter } from './config'
-import { applicationRouter } from './server'
+import { serverRouter } from './server'
import { usersRouter } from './users'
import { videosRouter } from './videos'
const apiRouter = express.Router()
-apiRouter.use('/application', applicationRouter)
+apiRouter.use('/server', serverRouter)
apiRouter.use('/oauth-clients', oauthClientsRouter)
apiRouter.use('/config', configRouter)
apiRouter.use('/users', usersRouter)
diff --git a/server/controllers/api/server/follows.ts b/server/controllers/api/server/follows.ts
index e00787f02..520d4d858 100644
--- a/server/controllers/api/server/follows.ts
+++ b/server/controllers/api/server/follows.ts
@@ -15,9 +15,9 @@ import { ensureUserHasRight } from '../../../middlewares/user-right'
import { followValidator } from '../../../middlewares/validators/servers'
import { followersSortValidator, followingSortValidator } from '../../../middlewares/validators/sort'
-const applicationFollowsRouter = express.Router()
+const serverFollowsRouter = express.Router()
-applicationFollowsRouter.get('/following',
+serverFollowsRouter.get('/following',
paginationValidator,
followingSortValidator,
setFollowingSort,
@@ -25,15 +25,15 @@ applicationFollowsRouter.get('/following',
asyncMiddleware(listFollowing)
)
-applicationFollowsRouter.post('/follow',
+serverFollowsRouter.post('/follow',
authenticate,
- ensureUserHasRight(UserRight.MANAGE_APPLICATION_FOLLOW),
+ ensureUserHasRight(UserRight.MANAGE_SERVER_FOLLOW),
followValidator,
setBodyHostsPort,
asyncMiddleware(follow)
)
-applicationFollowsRouter.get('/followers',
+serverFollowsRouter.get('/followers',
paginationValidator,
followersSortValidator,
setFollowersSort,
@@ -44,21 +44,21 @@ applicationFollowsRouter.get('/followers',
// ---------------------------------------------------------------------------
export {
- applicationFollowsRouter
+ serverFollowsRouter
}
// ---------------------------------------------------------------------------
async function listFollowing (req: express.Request, res: express.Response, next: express.NextFunction) {
- const applicationAccount = await getServerAccount()
- const resultList = await db.AccountFollow.listFollowingForApi(applicationAccount.id, req.query.start, req.query.count, req.query.sort)
+ const serverAccount = await getServerAccount()
+ const resultList = await db.AccountFollow.listFollowingForApi(serverAccount.id, req.query.start, req.query.count, req.query.sort)
return res.json(getFormattedObjects(resultList.data, resultList.total))
}
async function listFollowers (req: express.Request, res: express.Response, next: express.NextFunction) {
- const applicationAccount = await getServerAccount()
- const resultList = await db.AccountFollow.listFollowersForApi(applicationAccount.id, req.query.start, req.query.count, req.query.sort)
+ const serverAccount = await getServerAccount()
+ const resultList = await db.AccountFollow.listFollowersForApi(serverAccount.id, req.query.start, req.query.count, req.query.sort)
return res.json(getFormattedObjects(resultList.data, resultList.total))
}
diff --git a/server/controllers/api/server/index.ts b/server/controllers/api/server/index.ts
index 011b971ed..8dc1a0031 100644
--- a/server/controllers/api/server/index.ts
+++ b/server/controllers/api/server/index.ts
@@ -1,12 +1,12 @@
import * as express from 'express'
-import { applicationFollowsRouter } from './follows'
+import { serverFollowsRouter } from './follows'
-const applicationRouter = express.Router()
+const serverRouter = express.Router()
-applicationRouter.use('/', applicationFollowsRouter)
+serverRouter.use('/', serverFollowsRouter)
// ---------------------------------------------------------------------------
export {
- applicationRouter
+ serverRouter
}
diff --git a/server/initializers/constants.ts b/server/initializers/constants.ts
index eeda8347d..f0a569410 100644
--- a/server/initializers/constants.ts
+++ b/server/initializers/constants.ts
@@ -322,7 +322,7 @@ const OPENGRAPH_AND_OEMBED_COMMENT = ''
if (isTestInstance() === true) {
CONSTRAINTS_FIELDS.VIDEOS.DURATION.max = 14
FRIEND_SCORE.BASE = 20
- JOBS_FETCHING_INTERVAL = 10000
+ JOBS_FETCHING_INTERVAL = 2000
REMOTE_SCHEME.HTTP = 'http'
REMOTE_SCHEME.WS = 'ws'
STATIC_MAX_AGE = '0'
diff --git a/server/tests/utils/follows.ts b/server/tests/utils/follows.ts
new file mode 100644
index 000000000..9ad1ca7f4
--- /dev/null
+++ b/server/tests/utils/follows.ts
@@ -0,0 +1,53 @@
+import * as request from 'supertest'
+
+import { wait } from './miscs'
+
+function getFollowersListPaginationAndSort (url: string, start: number, count: number, sort: string) {
+ const path = '/api/v1/servers/followers'
+
+ return request(url)
+ .get(path)
+ .query({ start })
+ .query({ count })
+ .query({ sort })
+ .set('Accept', 'application/json')
+ .expect(200)
+ .expect('Content-Type', /json/)
+}
+
+function getFollowingListPaginationAndSort (url: string, start: number, count: number, sort: string) {
+ const path = '/api/v1/servers/following'
+
+ return request(url)
+ .get(path)
+ .query({ start })
+ .query({ count })
+ .query({ sort })
+ .set('Accept', 'application/json')
+ .expect(200)
+ .expect('Content-Type', /json/)
+}
+
+async function follow (follower: string, following: string[], accessToken: string, expectedStatus = 204) {
+ const path = '/api/v1/servers/follow'
+
+ const res = await request(follower)
+ .post(path)
+ .set('Accept', 'application/json')
+ .set('Authorization', 'Bearer ' + accessToken)
+ .send({ 'hosts': following })
+ .expect(expectedStatus)
+
+ // Wait request propagation
+ await wait(1000)
+
+ return res
+}
+
+// ---------------------------------------------------------------------------
+
+export {
+ getFollowersListPaginationAndSort,
+ getFollowingListPaginationAndSort,
+ follow
+}
diff --git a/server/tests/utils/pods.ts b/server/tests/utils/pods.ts
deleted file mode 100644
index 52e807e70..000000000
--- a/server/tests/utils/pods.ts
+++ /dev/null
@@ -1,103 +0,0 @@
-import * as request from 'supertest'
-
-import { wait } from './miscs'
-
-function getFriendsList (url: string) {
- const path = '/api/v1/pods/'
-
- return request(url)
- .get(path)
- .set('Accept', 'application/json')
- .expect(200)
- .expect('Content-Type', /json/)
-}
-
-function getPodsListPaginationAndSort (url: string, start: number, count: number, sort: string) {
- const path = '/api/v1/pods/'
-
- return request(url)
- .get(path)
- .query({ start })
- .query({ count })
- .query({ sort })
- .set('Accept', 'application/json')
- .expect(200)
- .expect('Content-Type', /json/)
-}
-
-async function makeFriends (url: string, accessToken: string, expectedStatus = 204) {
- // Which pod makes friends with which pod
- const friendsMatrix = {
- 'http://localhost:9001': [
- 'localhost:9002'
- ],
- 'http://localhost:9002': [
- 'localhost:9003'
- ],
- 'http://localhost:9003': [
- 'localhost:9001'
- ],
- 'http://localhost:9004': [
- 'localhost:9002'
- ],
- 'http://localhost:9005': [
- 'localhost:9001',
- 'localhost:9004'
- ],
- 'http://localhost:9006': [
- 'localhost:9001',
- 'localhost:9002',
- 'localhost:9003'
- ]
- }
- const path = '/api/v1/pods/make-friends'
-
- // The first pod make friend with the third
- const res = await request(url)
- .post(path)
- .set('Accept', 'application/json')
- .set('Authorization', 'Bearer ' + accessToken)
- .send({ 'hosts': friendsMatrix[url] })
- .expect(expectedStatus)
-
- // Wait request propagation
- await wait(1000)
-
- return res
-}
-
-async function quitFriends (url: string, accessToken: string, expectedStatus = 204) {
- const path = '/api/v1/pods/quit-friends'
-
- // The first pod make friend with the third
- const res = await request(url)
- .get(path)
- .set('Accept', 'application/json')
- .set('Authorization', 'Bearer ' + accessToken)
- .expect(expectedStatus)
-
- // Wait request propagation
- await wait(1000)
-
- return res
-}
-
-function quitOneFriend (url: string, accessToken: string, friendId: number, expectedStatus = 204) {
- const path = '/api/v1/pods/' + friendId
-
- return request(url)
- .delete(path)
- .set('Accept', 'application/json')
- .set('Authorization', 'Bearer ' + accessToken)
- .expect(expectedStatus)
-}
-
-// ---------------------------------------------------------------------------
-
-export {
- getFriendsList,
- makeFriends,
- quitFriends,
- quitOneFriend,
- getPodsListPaginationAndSort
-}
diff --git a/shared/models/users/user-right.enum.ts b/shared/models/users/user-right.enum.ts
index ecad69d6f..9460b668e 100644
--- a/shared/models/users/user-right.enum.ts
+++ b/shared/models/users/user-right.enum.ts
@@ -1,7 +1,7 @@
export enum UserRight {
ALL,
MANAGE_USERS,
- MANAGE_APPLICATION_FOLLOW,
+ MANAGE_SERVER_FOLLOW,
MANAGE_VIDEO_ABUSES,
MANAGE_VIDEO_BLACKLIST,
REMOVE_ANY_VIDEO,