/// <summary> /// See all the achievements that are unlocked by this task. if they arent already conferred, confer them /// Recalculate rewards unlocked by the achievement, if they arent already conferred, confer them /// Recalculate Pilot levels unlocked by the achievement if they arent already conferred, confer them /// </summary> /// <param name="dc"></param> /// <param name="taskID"></param> /// <param name="email"></param> private void ProcessTaskDependents(DBClassesDataContext dc, Guid taskID, string email) { // recalculate achievements for this pilot List <Guid> Achievements = RecalculateAchievements(dc, email); // save these achievements if (Achievements.Count > 0) { PilotAchievement.saveAchievements(dc, email, Achievements); } dc.SubmitChanges(); // Now calculate all rewards which are unlocked by this achievement List <Guid> Rewards = RecalculateRewards(dc, email, Achievements); if (Rewards.Count > 0) { PilotReward.saveRewards(dc, email, Rewards); } dc.SubmitChanges(); // Now calculate all rewards which are unlocked by this achievement List <Guid> Levels = RecalculateLevels(dc, email, Achievements); if (Rewards.Count > 0) { PilotClass.saveClasses(dc, email, Levels); } dc.SubmitChanges(); }
protected void Page_Load(object sender, EventArgs e) { mUser = (AppUser)Session[Constants.SESS_KEY_USER]; if (mUser == null) { getUserFromCookie(); if (mUser == null) { Response.Redirect("login.aspx"); Response.Close(); return; } } PilotClasses = PilotClass.getPilotClassesForPilot(mUser.UserEmail); Achievements = PilotAchievement.getAchievementsForPilot(mUser.UserEmail); Rewards = PilotReward.getRewardsForPilot(mUser.UserEmail); }