protected void Page_Load(object sender, EventArgs e) { IssueInfo issue = EditedObject as IssueInfo; if (issue == null) { RedirectToAccessDenied(GetString("general.invalidparameters")); } if (!issue.CheckPermissions(PermissionsEnum.Read, CurrentSiteName, CurrentUser)) { RedirectToAccessDenied(issue.TypeInfo.ModuleName, "AuthorIssues"); } var subscriber = GetSubscriber(NewsletterInfoProvider.GetNewsletterInfo(issue.IssueNewsletterID)); // Switch culture to the site culture, so the e-mail isn't rendered in the editor's culture string culture = CultureHelper.GetDefaultCultureCode(SiteContext.CurrentSiteName); using (new CMSActionContext { ThreadCulture = CultureHelper.GetCultureInfo(culture) }) { string htmlPage = NewsletterHelper.GetPreviewHTML(issue, subscriber); Response.Clear(); Response.Write(htmlPage); } RequestHelper.EndResponse(); }
protected void Page_Load(object sender, EventArgs e) { issueInfo = EditedObject as IssueInfo; if (issueInfo == null) { RedirectToAccessDenied(GetString("general.invalidparameters")); } if (!issueInfo.CheckPermissions(PermissionsEnum.Read, CurrentSiteName, CurrentUser)) { RedirectToAccessDenied(issueInfo.TypeInfo.ModuleName, "Read"); } InitAbTestingTab(); rptEmailWidgets.DataSource = GetAvailableWidgets(issueInfo.IssueTemplateID); rptEmailWidgets.DataBind(); alNoRecords.Visible = !rptEmailWidgets.HasData(); // Set builder iframe builderIframe.Src = URLHelper.ResolveUrl($"~/CMSPages/Newsletters/GetEmailBuilderContent.ashx?issueid={issueInfo.IssueID}"); // Initialize email properties control emailProperties.Enabled = EditEnabled; emailProperties.IssueID = issueInfo.IssueID; emailProperties.NewsletterID = issueInfo.IssueNewsletterID; emailProperties.Save += EmailProperties_Save; if (!RequestHelper.IsAsyncPostback()) { string moduleId = "CMS.Newsletter/emailbuilder"; var zonesConfiguration = Service.Resolve <IZonesConfigurationServiceFactory>().Create(issueInfo); var localizationProvider = Service.Resolve <IClientLocalizationProvider>(); var newsletter = NewsletterInfoProvider.GetNewsletterInfo(issueInfo.IssueNewsletterID); var filter = new EmailBuilderContentFilter(issueInfo, newsletter); ScriptHelper.RegisterModule(this, "CMS/RegisterClientLocalization", localizationProvider.GetClientLocalization(moduleId)); ScriptHelper.RegisterModule(this, "CMS.Newsletter/EmailBuilder", new { issueId = issueInfo.IssueID, enableWidgetManipulation = EditEnabled, emailContent = zonesConfiguration.GetEmailContent(filter) }); ScriptHelper.HideVerticalTabs(this); ScriptHelper.RefreshTabHeader(Page, issueInfo.Generalized.ObjectDisplayName); InitHeaderActions(); } SetClientApplicationData(); }
protected void Page_Load(object sender, EventArgs e) { MessagesPlaceHolder = plcMess; // Get newsletter issue and check its existence mIssue = EditedObject as IssueInfo; if (mIssue == null) { RedirectToAccessDenied(GetString("general.invalidparameters")); } if (!mIssue.CheckPermissions(PermissionsEnum.Read, CurrentSiteName, CurrentUser)) { RedirectToAccessDenied(mIssue.TypeInfo.ModuleName, "AuthorIssues"); } mNewsletter = NewsletterInfoProvider.GetNewsletterInfo(mIssue.IssueNewsletterID); string infoMessage; if (mIssue.IssueIsABTest) { InitSendVariant(mIssue); infoMessage = sendVariant.InfoMessage; } else { InitSendElem(mIssue); infoMessage = GetInfoMessage(mIssue.IssueStatus); } // Display additional information if (!String.IsNullOrEmpty(infoMessage)) { ShowInformationInternal(infoMessage); } string scriptBlock = @"function RefreshPage() {{ document.location.replace(document.location); }}"; ScriptHelper.RegisterClientScriptBlock(this, GetType(), "RefreshActions", scriptBlock, true); if (!RequestHelper.IsPostBack() && (QueryHelper.GetInteger("sent", 0) == 1)) { ShowConfirmation(GetString("Newsletter_Send.SuccessfullySent")); } AddBrokenEmailUrlNotifier(mNewsletter, lblUrlWarning); }
protected void Page_Load(object sender, EventArgs e) { // Get edited issue object and check its existence IssueInfo issue = EditedObject as IssueInfo; if (issue == null) { RedirectToAccessDenied(GetString("general.invalidparameters")); } if (!issue.CheckPermissions(PermissionsEnum.Modify, CurrentSiteName, CurrentUser)) { RedirectToAccessDenied(issue.TypeInfo.ModuleName, "AuthorIssues"); } // Reset master page content CSS class CurrentMaster.PanelContent.CssClass = string.Empty; // Ensure correct padding CurrentMaster.MessagesPlaceHolder.OffsetX = 16; CurrentMaster.MessagesPlaceHolder.OffsetY = 8; // Get newsletter and check its existence newsletter = NewsletterInfoProvider.GetNewsletterInfo(issue.IssueNewsletterID); if ((newsletter != null) && (newsletter.NewsletterType == NewsletterType.Dynamic)) { ShowError(GetString("Newsletter_Issue_Edit.CannotBeEdited")); editElem.StopProcessing = true; editElem.Visible = false; return; } // Get variant issue ID if A/B testing is ON int issueId = InitVariantSlider(issue.IssueID); // Initialize edit control editElem.IssueID = issueId; editElem.NewsletterID = issue.IssueNewsletterID; editElem.IsDialogMode = false; InitHeaderActions(issueId); }
protected void Page_Load(object sender, EventArgs e) { // Normal messages must be bellow the information label MessagesPlaceHolder = plcMess; // Get newsletter issue and check its existence IssueInfo issue = EditedObject as IssueInfo; if (issue == null) { RedirectToAccessDenied(GetString("general.invalidparameters")); } if (!issue.CheckPermissions(PermissionsEnum.Read, CurrentSiteName, CurrentUser)) { RedirectToAccessDenied(issue.TypeInfo.ModuleName, "AuthorIssues"); } string infoMessage; bool isABTest = issue.IssueIsABTest; bool sendingIssueAllowed = false; sendElem.Visible = !isABTest; sendVariant.Visible = isABTest; if (!isABTest) { sendElem.IssueID = issue.IssueID; sendElem.NewsletterID = issue.IssueNewsletterID; bool isSent = (issue.IssueMailoutTime != DateTimeHelper.ZERO_TIME) && (issue.IssueMailoutTime < DateTime.Now); infoMessage = (isSent ? GetString("Newsletter_Issue_Header.AlreadySent") : GetString("Newsletter_Issue_Header.NotSentYet")); // If resending is disabled check that the issue has 'Idle' status newsletter = NewsletterInfoProvider.GetNewsletterInfo(issue.IssueNewsletterID); if (newsletter != null) { sendingIssueAllowed = newsletter.NewsletterEnableResending || (issue.IssueStatus == IssueStatusEnum.Idle) || (issue.IssueStatus == IssueStatusEnum.ReadyForSending); } } else { sendVariant.StopProcessing = (issue.IssueID <= 0); sendVariant.IssueID = issue.IssueID; sendVariant.OnChanged -= sendVariant_OnChanged; sendVariant.OnChanged += sendVariant_OnChanged; sendVariant.ReloadData(!RequestHelper.IsPostBack()); infoMessage = sendVariant.InfoMessage; sendingIssueAllowed = sendVariant.SendingAllowed; } // Display additional information if (!String.IsNullOrEmpty(infoMessage)) { ShowInformationInternal(infoMessage); } InitHeaderActions(isABTest && (issue.IssueStatus != IssueStatusEnum.Finished), sendingIssueAllowed); string scriptBlock = @"function RefreshPage() {{ document.location.replace(document.location); }}"; ScriptHelper.RegisterClientScriptBlock(this, GetType(), "RefreshActions", scriptBlock, true); if (!RequestHelper.IsPostBack() && (QueryHelper.GetInteger("sent", 0) == 1)) { ShowConfirmation(GetString("Newsletter_Send.SuccessfullySent")); } }