Skip to content

Commit

Permalink
✔ Fix 💩
Browse files Browse the repository at this point in the history
  • Loading branch information
bifeldy committed May 27, 2023
1 parent 02f28b4 commit f34d9fe
Show file tree
Hide file tree
Showing 7 changed files with 54 additions and 50 deletions.
2 changes: 1 addition & 1 deletion dist/fansubid/browser/ngsw.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"configVersion": 1,
"timestamp": 1685197347112,
"timestamp": 1685204419872,
"index": "/index.html",
"assetGroups": [
{
Expand Down
2 changes: 1 addition & 1 deletion dist/fansubid/server/main.js

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions src/api/controllers/anime-/anime-berkas.controller.ts
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,9 @@ export class AnimeBerkasController {
const userFilesCriteria: any = {};
if (user) {
userFilesCriteria.name = ILike(`%${req.query['q'] ? req.query['q'] : ''}%`);
userFilesCriteria.anime_ = {
id: In(animeId)
};
if (user.role === RoleModel.ADMIN || user.role === RoleModel.MODERATOR) {
// Admin & Mod Can See Private Berkas From All Private Profile
} else {
Expand Down
3 changes: 3 additions & 0 deletions src/api/controllers/dorama-/dorama-berkas.controller.ts
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,9 @@ export class DoramaBerkasController {
const userFilesCriteria: any = {};
if (user) {
userFilesCriteria.name = ILike(`%${req.query['q'] ? req.query['q'] : ''}%`);
userFilesCriteria.dorama_ = {
id: In(doramaId)
};
if (user.role === RoleModel.ADMIN || user.role === RoleModel.MODERATOR) {
// Admin & Mod Can See Private Berkas From All Private Profile
} else {
Expand Down
10 changes: 6 additions & 4 deletions src/api/controllers/fansub-/fansub-berkas.controller.ts
Original file line number Diff line number Diff line change
Expand Up @@ -36,16 +36,18 @@ export class FansubBerkasController {
.leftJoinAndSelect('berkas.dorama_', 'dorama_')
.leftJoinAndSelect('berkas.user_', 'user_')
.leftJoinAndSelect('berkas.fansub_', 'fansub_')
.where('fansub_.id IN (:...id)', { id: fansubId })
.andWhere('berkas.name ILIKE :query', { query: `%${req.query['q'] ? req.query['q'] : ''}%` });
.where('berkas.name ILIKE :query', { query: `%${req.query['q'] ? req.query['q'] : ''}%` })
.andWhere('fansub_.id IN (:...id)', { id: fansubId })
.andWhere('user_.private = :isPrivate', { isPrivate: false });
if (user?.verified) {
// Verified User Can See Private Berkas From Public Profile
} else {
fileRepoQuery = fileRepoQuery.andWhere('berkas.private = :isPrivate', { isPrivate: false });
}
fileRepoQuery = fileRepoQuery.andWhere('user_.private = :isPrivate', { isPrivate: false });
if (user) {
fileRepoQuery = fileRepoQuery.orWhere('berkas.name ILIKE :query', { query: `%${req.query['q'] ? req.query['q'] : ''}%` });
fileRepoQuery = fileRepoQuery
.orWhere('berkas.name ILIKE :query', { query: `%${req.query['q'] ? req.query['q'] : ''}%` })
.andWhere('fansub_.id IN (:...id)', { id: fansubId })
if (user.role === RoleModel.ADMIN || user.role === RoleModel.MODERATOR) {
// Admin & Mod Can See Private Berkas From Private Profile
} else {
Expand Down
80 changes: 37 additions & 43 deletions src/api/controllers/user.controller.ts
Original file line number Diff line number Diff line change
Expand Up @@ -326,24 +326,17 @@ export class UserController {
const queryPage = parseInt(req.query['page'] as string);
const queryRow = parseInt(req.query['row'] as string);
const user: UserModel = res.locals['user'];
const selectedUser = await this.userRepo.findOneOrFail({
where: [
{
username: ILike(req.params['username']),
...((user?.role === RoleModel.ADMIN || user?.role === RoleModel.MODERATOR || user?.username === req.params['username']) ? {
// Admin, Mod, & User Itself Can See Private Profile
} : {
private: false
})
}
]
});
const [files, count] = await this.berkasRepo.findAndCount({
where: [
{
name: ILike(`%${req.query['q'] ? req.query['q'] : ''}%`),
user_: {
id: Equal(selectedUser.id)
username: ILike(req.params['username']),
...((user?.role === RoleModel.ADMIN || user?.role === RoleModel.MODERATOR || user?.username === req.params['username']) ? {
// Admin, Mod, & User Itself Can See Private Profile
} : {
private: false
})
}
}
],
Expand Down Expand Up @@ -414,24 +407,17 @@ export class UserController {
const queryPage = parseInt(req.query['page'] as string);
const queryRow = parseInt(req.query['row'] as string);
const user: UserModel = res.locals['user'];
const selectedUser = await this.userRepo.findOneOrFail({
where: [
{
username: ILike(req.params['username']),
...((user.role === RoleModel.ADMIN || user.role === RoleModel.MODERATOR || user.username === req.params['username']) ? {
// Admin, Mod, & User Itself Can See Private Profile
} : {
private: false
})
}
]
});
const [komens, count] = await this.komentarRepo.findAndCount({
where: [
{
comment: ILike(`%${req.query['q'] ? req.query['q'] : ''}%`),
user_: {
id: Equal(selectedUser.id)
username: ILike(req.params['username']),
...((user.role === RoleModel.ADMIN || user.role === RoleModel.MODERATOR || user.username === req.params['username']) ? {
// Admin, Mod, & User Itself Can See Private Profile
} : {
private: false
})
}
}
],
Expand Down Expand Up @@ -483,43 +469,46 @@ export class UserController {
try {
const queryPage = parseInt(req.query['page'] as string);
const queryRow = parseInt(req.query['row'] as string);
const user: UserModel = res.locals['user'];
const selectedUser = await this.userRepo.findOneOrFail({
where: [
{
username: ILike(req.params['username']),
...((user.role === RoleModel.ADMIN || user.role === RoleModel.MODERATOR || user.username === req.params['username']) ? {
// Admin, Mod, & User Itself Can See Private Profile
} : {
private: false
})
}
]
});
const user: UserModel = res.locals['user'];;
const [likedislikes, count] = await this.likeDislikeRepo.findAndCount({
where: [
{
news_: {
title: ILike(`%${searchQuery}%`)
},
report_by_: {
id: Equal(selectedUser.id)
username: ILike(req.params['username']),
...((user.role === RoleModel.ADMIN || user.role === RoleModel.MODERATOR || user.username === req.params['username']) ? {
// Admin, Mod, & User Itself Can See Private Profile
} : {
private: false
})
}
},
{
berkas_: {
name: ILike(`%${searchQuery}%`)
},
report_by_: {
id: Equal(selectedUser.id)
username: ILike(req.params['username']),
...((user.role === RoleModel.ADMIN || user.role === RoleModel.MODERATOR || user.username === req.params['username']) ? {
// Admin, Mod, & User Itself Can See Private Profile
} : {
private: false
})
}
},
{
fansub_: {
name: ILike(`%${searchQuery}%`)
},
report_by_: {
id: Equal(selectedUser.id)
username: ILike(req.params['username']),
...((user.role === RoleModel.ADMIN || user.role === RoleModel.MODERATOR || user.username === req.params['username']) ? {
// Admin, Mod, & User Itself Can See Private Profile
} : {
private: false
})
}
},
{
Expand All @@ -529,7 +518,12 @@ export class UserController {
}
},
report_by_: {
id: Equal(selectedUser.id)
username: ILike(req.params['username']),
...((user.role === RoleModel.ADMIN || user.role === RoleModel.MODERATOR || user.username === req.params['username']) ? {
// Admin, Mod, & User Itself Can See Private Profile
} : {
private: false
})
}
}
],
Expand Down
4 changes: 3 additions & 1 deletion src/api/services/idcloudhost.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,9 @@ export class IdCloudHostService {
private gs: GlobalService,
private cfg: ConfigService
) {
this.connect();
if (environment.production) {
this.connect();
}
}

onOpen(): void {
Expand Down

0 comments on commit f34d9fe

Please sign in to comment.