public void HandleContentSubmission(int contentID, JPPConstants.HandleUserContent handleContent, string reason = null) { achievement_user_content_pending pendingContent = _dbContext.achievement_user_content_pending.Find(contentID); if (pendingContent == null) return; switch (handleContent) { case JPPConstants.HandleUserContent.Approve: AssignContentSubmissionAchievement(WebSecurity.CurrentUserId, pendingContent); return; case JPPConstants.HandleUserContent.Deny: if (!String.IsNullOrWhiteSpace(reason)) DenyContentSubmission(pendingContent, reason); return; default: return; } }
public ActionResult ManageUserQuestSubmission(int? id, JPPConstants.HandleUserContent handleContent, string reason = null) { switch (handleContent) { case JPPConstants.HandleUserContent.Approve: if (id == null) { ModelState.AddModelError(String.Empty, "Achievement of ID:" + id + " does not exist in the current version."); break; } ApproveQuest((int)id); return RedirectToAction("PendingUserQuestsList"); case JPPConstants.HandleUserContent.Deny: if (id == null) { ModelState.AddModelError(String.Empty, "Achievement of ID:" + id + " does not exist in the current version."); break; } if (String.IsNullOrWhiteSpace(reason)) { ModelState.AddModelError(String.Empty, "A reason needs to be provided for denying this quest."); break; } DenyUserQuest((int)id, reason); return RedirectToAction("PendingUserQuestsList"); default: break; } return View(); }
/// <summary> /// Creates the approriate response model based on the result of assigning the achievement /// </summary> /// <param name="assignAchievementResult">The result of the achievement assigning</param> /// <returns>MobileAppScanResultModel</returns> private MobileAppScanResultModel GetAssignResultModel(JPPConstants.AssignAchievementResult assignAchievementResult) { switch (assignAchievementResult) { case JPPConstants.AssignAchievementResult.Success: return new MobileAppScanResultModel() { Success = true, Message = "Achievement Successfully Assigned", Code = 0 }; case JPPConstants.AssignAchievementResult.SuccessNoCard: return new MobileAppScanResultModel() { Success = true, Message = "Achievement Successfully Assigned, Pick Up Card Elsewhere", Code = 0 }; case JPPConstants.AssignAchievementResult.SuccessYesCard: return new MobileAppScanResultModel() { Success = true, Message = "Achievement Successfully Assigned, Give Card", Code = 0 }; case JPPConstants.AssignAchievementResult.SuccessRepetition: return new MobileAppScanResultModel() { Success = true, Message = "Repetition Success", Code = 0 }; case JPPConstants.AssignAchievementResult.SuccessThresholdTriggered: return new MobileAppScanResultModel() { Success = true, Message = "Achievement Successfully Assigned, Threshold Unlocked", Code = 0 }; case JPPConstants.AssignAchievementResult.FailureInvalidAchievement: return new MobileAppScanResultModel() { Success = false, Message = "Achievement Invalid", Code = 0 }; case JPPConstants.AssignAchievementResult.FailureInvalidPlayer: return new MobileAppScanResultModel() { Success = false, Message = "Player Invalid", Code = 0 }; case JPPConstants.AssignAchievementResult.FailureUnauthorizedPlayer: return new MobileAppScanResultModel() { Success = false, Message = "Player Unauthorized", Code = 0 }; case JPPConstants.AssignAchievementResult.FailureInvalidAssigner: return new MobileAppScanResultModel() { Success = false, Message = "Assigner Invalid", Code = 0 }; case JPPConstants.AssignAchievementResult.FailureUnauthorizedAssigner: return new MobileAppScanResultModel() { Success = false, Message = "Assigner Unauthorized", Code = 0 }; case JPPConstants.AssignAchievementResult.FailureAlreadyAchieved: return new MobileAppScanResultModel() { Success = false, Message = "Player already has this achievement", Code = 0 }; case JPPConstants.AssignAchievementResult.FailureRepetitionDelay: return new MobileAppScanResultModel() { Success = false, Message = "Player needs to wait longer to get this achievement again", Code = 0 }; case JPPConstants.AssignAchievementResult.FailureOther: return new MobileAppScanResultModel() { Success = false, Message = "Failure Other", Code = 0 }; } return null; }