11import { Request , Response } from 'express' ;
22import { Container } from 'typedi' ;
3- import { MemberService , ObjectInstanceService , PlaceService , FleaMarketService } from '../services' ;
3+ import {
4+ MemberService ,
5+ ObjectInstanceService ,
6+ PlaceService ,
7+ FleaMarketService ,
8+ BlackMarketService } from '../services' ;
49import * as badwords from 'badwords-list' ;
510
611class ObjectInstanceController {
@@ -9,6 +14,7 @@ class ObjectInstanceController {
914 private placeService : PlaceService ,
1015 private memberService : MemberService ,
1116 private fleaMarketService : FleaMarketService ,
17+ private blackMarketService : BlackMarketService ,
1218 ) { }
1319
1420 /** Stores the position of an object instance in the database */
@@ -36,6 +42,9 @@ class ObjectInstanceController {
3642 if ( place . slug === 'fleamarket' ) {
3743 adminStatus = await this . fleaMarketService . canAdmin ( session . id ) ;
3844 }
45+ if ( place . slug === 'blackmarket' ) {
46+ adminStatus = await this . blackMarketService . canAdmin ( session . id ) ;
47+ }
3948 if ( ! adminStatus && objectInstance . member_id != session . id ) {
4049 throw new Error ( 'Not the owner of this object' ) ;
4150 }
@@ -74,11 +83,14 @@ class ObjectInstanceController {
7483 const objectInstance = await this . objectInstanceService . find ( id ) ;
7584 const place = await this . placeService . findById ( Number . parseInt ( request . body . placeId ) ) ;
7685
77- if ( place . slug !== 'fleamarket' && place . member_id != session . id ) {
86+ if (
87+ place . slug !== 'fleamarket' &&
88+ place . slug !== 'blackmarket' &&
89+ place . member_id !== session . id ) {
7890 throw new Error ( 'Not the owner of this place' ) ;
7991 }
8092
81- if ( objectInstance . member_id != session . id ) {
93+ if ( objectInstance . member_id !== session . id ) {
8294 throw new Error ( 'Not the owner of this object' ) ;
8395 }
8496
@@ -235,7 +247,9 @@ class ObjectInstanceController {
235247 if ( place . slug === 'fleamarket' ) {
236248 adminStatus = await this . fleaMarketService . canAdmin ( session . id ) ;
237249 }
238-
250+ if ( place . slug === 'blackmarket' ) {
251+ adminStatus = await this . blackMarketService . canAdmin ( session . id ) ;
252+ }
239253 if ( ! adminStatus && objectInstance . member_id != session . id ) {
240254 throw new Error ( 'Not the owner of this object' ) ;
241255 }
@@ -251,9 +265,11 @@ const objectInstanceService = Container.get(ObjectInstanceService);
251265const placeService = Container . get ( PlaceService ) ;
252266const memberService = Container . get ( MemberService ) ;
253267const fleaMarketService = Container . get ( FleaMarketService ) ;
268+ const blackMarketService = Container . get ( BlackMarketService ) ;
254269export const objectInstanceController = new ObjectInstanceController (
255270 objectInstanceService ,
256271 placeService ,
257272 memberService ,
258273 fleaMarketService ,
274+ blackMarketService ,
259275) ;
0 commit comments