// Module ID: 14538 // Function ID: 14539 // Name: quests // Dependencies: [7717, 1074, 8367, 9591, 7738, 9586, 1242, 573, 11547, 2] // Module 14538 (quests) import DispatcherDefault from "Dispatcher" /* 573 */; import AnalyticsUtilsDefault from "AnalyticsUtils" /* 1242 */; import QuestTaskUtils from "QuestTaskUtils" /* 7738 */; import RPCErrorDefault from "RPCError" /* 9586 */; import RPCHelpers from "RPCHelpers" /* 9591 */; import QuestMatchingUtils from "QuestMatchingUtils" /* 11547 */; import QuestStore from "QuestStore" /* 7717 */; require = fn; const Constants = fn(1074); ({ RPCCommands, RPCErrors: closure_4, AnalyticEvents: hasOwnProperty } = Constants); let obj = {}; obj[RPCCommands.GET_QUEST_ENROLLMENT_STATUS] = { scope: fn(8367).OAuth2Scopes.IDENTIFY, handler(socket) { socket = socket.socket; const quest_id = socket.args.quest_id; const result = RPCHelpers.validatePostMessageTransport(socket.transport); const quest = QuestStore.getQuest(quest_id); const validateApplicationResult = RPCHelpers.validateApplication(socket.application); const activityApplicationId = QuestTaskUtils.getActivityApplicationId(quest); if (null != quest) { if (null != activityApplicationId) { if (activityApplicationId === validateApplicationResult) { const obj4 = { quest_id, is_enrolled: null, enrolled_at: null }; const userStatus = quest.userStatus; let enrolledAt; if (userStatus != null) { enrolledAt = userStatus.enrolledAt; } obj4.is_enrolled = null != enrolledAt; const userStatus2 = quest.userStatus; let enrolledAt1; if (userStatus2 != null) { enrolledAt1 = userStatus2.enrolledAt; } if (enrolledAt1 == null) { enrolledAt1 = null; } obj4.enrolled_at = enrolledAt1; return obj4; } } } const obj5 = { errorCode: constants.INVALID_COMMAND }; throw new RPCErrorDefault(obj5, "Quest not found: " + quest_id); } }; let obj2 = { scope: fn(8367).OAuth2Scopes.IDENTIFY, handler(socket) { socket = socket.socket; const quest_id = socket.args.quest_id; const result = RPCHelpers.validatePostMessageTransport(socket.transport); const quest = QuestStore.getQuest(quest_id); const validateApplicationResult = RPCHelpers.validateApplication(socket.application); const activityApplicationId = QuestTaskUtils.getActivityApplicationId(quest); if (null != quest) { if (null != activityApplicationId) { if (activityApplicationId === validateApplicationResult) { const obj4 = { quest_id, is_enrolled: null, enrolled_at: null }; const userStatus = quest.userStatus; let enrolledAt; if (userStatus != null) { enrolledAt = userStatus.enrolledAt; } obj4.is_enrolled = null != enrolledAt; const userStatus2 = quest.userStatus; let enrolledAt1; if (userStatus2 != null) { enrolledAt1 = userStatus2.enrolledAt; } if (enrolledAt1 == null) { enrolledAt1 = null; } obj4.enrolled_at = enrolledAt1; return obj4; } } } const obj5 = { errorCode: constants.INVALID_COMMAND }; throw new RPCErrorDefault(obj5, "Quest not found: " + quest_id); } }; obj[RPCCommands.QUEST_START_TIMER] = { scope: fn(8367).OAuth2Scopes.IDENTIFY, handler(socket) { socket = socket.socket; const quest_id = socket.args.quest_id; const result = RPCHelpers.validatePostMessageTransport(socket.transport); const validateApplicationResult = RPCHelpers.validateApplication(socket.application); const quest = QuestStore.getQuest(quest_id); const playActivityApplicationId = QuestTaskUtils.getPlayActivityApplicationId(quest); if (null != quest) { if (null != playActivityApplicationId) { if (playActivityApplicationId === validateApplicationResult) { const userStatus = quest.userStatus; let enrolledAt; if (userStatus != null) { enrolledAt = userStatus.enrolledAt; } if (null == enrolledAt) { const obj5 = { errorCode: constants.INVALID_COMMAND }; const tmp16 = new RPCErrorDefault(obj5, "User is not enrolled in quest"); throw tmp16; } else { const obj7 = { application_id: validateApplicationResult, quest_id }; AnalyticsUtilsDefault.track(constants2.RPC_QUEST_START_TIMER_CALLED, obj7); const obj8 = { type: "QUEST_APPLICATION_START_TIMER", questId: quest_id, applicationId: validateApplicationResult }; DispatcherDefault.dispatch(obj8); return { success: true }; } } } } const obj9 = { errorCode: constants.INVALID_COMMAND }; throw new RPCErrorDefault(obj9, "Quest not found: " + quest_id); } }; let obj3 = { scope: fn(8367).OAuth2Scopes.IDENTIFY, handler(socket) { socket = socket.socket; const quest_id = socket.args.quest_id; const result = RPCHelpers.validatePostMessageTransport(socket.transport); const validateApplicationResult = RPCHelpers.validateApplication(socket.application); const quest = QuestStore.getQuest(quest_id); const playActivityApplicationId = QuestTaskUtils.getPlayActivityApplicationId(quest); if (null != quest) { if (null != playActivityApplicationId) { if (playActivityApplicationId === validateApplicationResult) { const userStatus = quest.userStatus; let enrolledAt; if (userStatus != null) { enrolledAt = userStatus.enrolledAt; } if (null == enrolledAt) { const obj5 = { errorCode: constants.INVALID_COMMAND }; const tmp16 = new RPCErrorDefault(obj5, "User is not enrolled in quest"); throw tmp16; } else { const obj7 = { application_id: validateApplicationResult, quest_id }; AnalyticsUtilsDefault.track(constants2.RPC_QUEST_START_TIMER_CALLED, obj7); const obj8 = { type: "QUEST_APPLICATION_START_TIMER", questId: quest_id, applicationId: validateApplicationResult }; DispatcherDefault.dispatch(obj8); return { success: true }; } } } } const obj9 = { errorCode: constants.INVALID_COMMAND }; throw new RPCErrorDefault(obj9, "Quest not found: " + quest_id); } }; obj[RPCCommands.GET_QUEST] = { scope: fn(8367).OAuth2Scopes.IDENTIFY, handler(socket) { socket = socket.socket; const result = RPCHelpers.validatePostMessageTransport(socket.transport); const validateApplicationResult = RPCHelpers.validateApplication(socket.application); const eligibleQuestsForApplicationId = QuestMatchingUtils.getEligibleQuestsForApplicationId(QuestStore.quests, validateApplicationResult, true); if (0 === eligibleQuestsForApplicationId.length) { const obj4 = { errorCode: constants.INVALID_COMMAND }; const tmp9 = new RPCErrorDefault(obj4, "No eligible quests found"); throw tmp9; } else { const mapped = eligibleQuestsForApplicationId.map((id) => { const obj = { quest_id: id.id, enrolled_at: null, completed_at: null, external_cta_url: null }; const userStatus = id.userStatus; let enrolledAt; if (userStatus != null) { enrolledAt = userStatus.enrolledAt; } if (enrolledAt == null) { enrolledAt = null; } obj.enrolled_at = enrolledAt; const userStatus2 = id.userStatus; let completedAt; if (userStatus2 != null) { completedAt = userStatus2.completedAt; } if (completedAt == null) { completedAt = null; } obj.completed_at = completedAt; obj.external_cta_url = id.config.ctaConfig.link; return obj; }); return mapped.sort((enrolled_at, enrolled_at2) => { if (null != enrolled_at.enrolled_at) { let num2 = 1; if (null != enrolled_at.enrolled_at) { let num3 = -1; if (null != enrolled_at2.enrolled_at) { const _Date = Date; const date = new Date(enrolled_at.enrolled_at); const _Date2 = Date; const time = date.getTime(); const date1 = new Date(enrolled_at2.enrolled_at); num3 = time - date1.getTime(); } num2 = num3; } let num = num2; } else { num = 0; } return num; })[0]; } } }; const size = fn(2); let result = size.fileFinishedImporting("modules/rpc/server/commands/quests.tsx"); export default obj;