public virtual ActionResult Award(string id, UserAwardViewModel model) { var award = Awards[id]; var ua = model.CreateAward(CurrentUser, award); if (ua.Amount.HasValue) { Accounting.CreateProgramAward( award, CurrentUser, Users[ua.Recipient], ua.Amount.Value, award.Content.Title ); } UserAwards.Save(ua); Messaging.SendAward(ControllerContext.RequestContext, ua); return(Index()); }
protected Transaction TryAwardPoints(int points) { try { return (Accounting.CreateProgramAward( CurrentResource, null, CurrentUser, points, CurrentResource.Content.Title )); } catch (Exception) { Notifier.Notify( Severity.Error, "We couldn't award your points.", "We're sorry, but there was configuration problem with this program. Please contact technical support so that the issue can be resolved.", CurrentResource); } return(null); }