diff --git a/src/routes/postSkipSegments.ts b/src/routes/postSkipSegments.ts index 637b1f0..dcae914 100644 --- a/src/routes/postSkipSegments.ts +++ b/src/routes/postSkipSegments.ts @@ -249,7 +249,7 @@ async function checkInvalidFields(videoID: VideoID, userID: UserID, hashedUserID } async function checkEachSegmentValid(rawIP: IPAddress, paramUserID: UserID, userID: HashedUserID, videoID: VideoID, - segments: IncomingSegment[], service: Service, isVIP: boolean, lockedCategoryList: Array): Promise { + segments: IncomingSegment[], service: Service, isVIP: boolean, isTempVIP: boolean, lockedCategoryList: Array): Promise { for (let i = 0; i < segments.length; i++) { if (segments[i] === undefined || segments[i].segment === undefined || segments[i].category === undefined) { @@ -309,11 +309,11 @@ async function checkEachSegmentValid(rawIP: IPAddress, paramUserID: UserID, user } // Check for POI segments before some seconds - if (!isVIP && segments[i].actionType === ActionType.Poi && startTime < config.poiMinimumStartTime) { + if (!(isVIP || isTempVIP) && segments[i].actionType === ActionType.Poi && startTime < config.poiMinimumStartTime) { return { pass: false, errorMessage: `POI cannot be that early`, errorCode: 400 }; } - if (!isVIP && segments[i].category === "sponsor" + if (!(isVIP || isTempVIP) && segments[i].category === "sponsor" && segments[i].actionType !== ActionType.Full && (endTime - startTime) < 1) { // Too short return { pass: false, errorMessage: "Segments must be longer than 1 second long", errorCode: 400 }; @@ -505,7 +505,8 @@ export async function postSkipSegments(req: Request, res: Response): Promise