public override void DoProcessRequest(IExecutionContext context)
        {
            base.DoProcessRequest(context);

            if (context.CurrentUser.Identity.IsAuthenticated)
                currentUser = (UserProfile)context.CurrentUser;
        }
        /// <summary>
        /// Generates an application node for the user.
        /// </summary>
        /// <param name="user">The user.</param>
        /// <param name="comment">The comment.</param>
        public virtual void Apply(UserProfile user, string comment)
        {
            var application = new Posting.application();

            application.Comment = comment;
            application.SubmittedBy = user;
            application.SubmittedOn = DateTime.Now;
            application.SubmittedPosting = user.Posting;
            application.Posting = this;

            applications.Add(application);
        }
        /// <summary>
        /// Flags with the specified flag.
        /// </summary>
        /// <param name="flag">The flag.</param>
        /// <param name="user">The user.</param>
        /// <returns></returns>
        public virtual UserAction Flag(int flag, UserProfile user)
        {
            UserAction userAction = new UserAction();
            userAction.Id = flag;

            if (user != null)
                userAction.User = user;

            userAction.CreatedOn = System.DateTime.Now;
            userAction.Posting = this;

            return userAction;
        }