/// <summary> /// Raises the <see cref="Control.DataBind()"/> event. /// </summary> /// <param name="e">An <see cref="EventArgs"/> object that contains the event data.</param> protected override void OnDataBinding(EventArgs e) { string cid = CPProfile.Cid; if (!string.IsNullOrEmpty(cid)) { this._newMessageCount = CmoMailbox.GetMailbox(cid, this.Elections).CountUnopened(); } }
/// <summary> /// Raises the <see cref="Control.DataBinding"/> event. /// </summary> /// <param name="e">An <see cref="EventArgs"/> object that contains the event data.</param> protected override void OnDataBinding(EventArgs e) { this.DataSource.GetMessages(); this.CmoMailboxMessageList.DataSource = this.DataSource; this.CmoMailboxMessageList.DataBind(); this.UnarchiveButton.Visible = (this.DataSource.View != CmoMailboxView.Unopened) && (this.DataSource.View != CmoMailboxView.Current); this.ArchiveButton.Visible = (this.DataSource.View != CmoMailboxView.Archived) && (this.DataSource.View != CmoMailboxView.Unopened); this.FlagButton.Visible = this.DataSource.View != CmoMailboxView.FollowUp; this.Master.DataSource = this.DataSource; this.Master.DataBind(); }
/// <summary> /// Handles the <see cref="Control.OnLoad" /> event that occurs as an instance of the page is being created. /// </summary> /// <param name="e">An <see cref="EventArgs" /> that contains the event data.</param> protected override void OnLoad(EventArgs e) { base.OnLoad(e); this.DataSource = CmoMailbox.GetMailbox(CPProfile.Cid, CPProfile.Elections); this.DataSource.Username = User.Identity.Name; this.DataSource.ParseQueryString(Request.QueryString); if (!Page.IsPostBack) { this.DataBind(); } }
private CmoMailbox GetMailbox(CmoMailboxView?view = null) { var mailbox = CmoMailbox.GetMailbox(CPProfile.Cid, CPProfile.Elections); mailbox.Username = User.Identity.Name; if (view.HasValue) { mailbox.GetMessages(view.Value); } return(mailbox); }
public static MessageCenterViewModel MessageCenterFrom(CmoMailbox source, MessageViewModel message = null) { return(source == null ? new MessageCenterViewModel() : new MessageCenterViewModel { Messages = source.Messages.Select(m => MessageHeaderFrom(m)), CurrentView = source.View, Views = new Dictionary <string, CmoMailboxView>() { { "Current", CmoMailboxView.Current }, { "Unopened", CmoMailboxView.Unopened }, { "Flagged", CmoMailboxView.FollowUp }, { "Archived", CmoMailboxView.Archived }, { "All", CmoMailboxView.All } }, SelectedMessage = message }); }
/// <summary> /// Handles the <see cref="Control.OnLoad" /> event that occurs as an instance of the page is being created. /// </summary> /// <param name="e">An <see cref="EventArgs" /> that contains the event data.</param> protected override void OnLoad(EventArgs e) { base.OnLoad(e); string UniqueID = Request.QueryString[CmoMailboxMessageList.MessageIdParameterName]; _mailbox = CmoMailbox.GetMailbox(CPProfile.Cid, CPProfile.Elections, Request.QueryString); _mailbox.Username = User.Identity.Name; if (!Page.IsPostBack) { _datasource = GetMessage(UniqueID); this.DataBind(); } Messages master = this.Master as Messages; if (master != null) { master.DataSource = _mailbox; master.DataBind(); } }
public static MessageViewModel MessageFrom(string id, CmoMailbox mailbox) { if (string.IsNullOrWhiteSpace(id) || mailbox == null) { return(new MessageViewModel()); } string previousId, nextId; int messageIndex; var source = mailbox.OpenMessage(id, out previousId, out nextId, out messageIndex); if (source == null) { mailbox.View = CmoMailboxView.All; source = mailbox.OpenMessage(id); } return(source == null || !source.IsPosted ? new MessageViewModel() : new MessageViewModel { ID = source.UniqueID, ElectionCycle = source.ElectionCycle, Title = source.Title, Flagged = source.NeedsFollowUp, HasAttachments = source.HasAttachment, OpenedDate = source.OpenDate, Posted = source.PostDate.Value, ArchivedDate = source.ArchiveDate, ArchiveUser = source.Archiver, FlagDate = source.FollowUpDate, FlagUser = source.FollowUpFlagger, OpenUser = source.Opener, Body = source.Body, CurrentView = mailbox.View, CurrentIndex = messageIndex + 1, MailboxViewCount = mailbox.Messages.Count, NextID = nextId, PreviousID = previousId, Attachments = source.Attachments.Values.Select(a => a.ID) }); }