protected void Page_Load(object sender, System.EventArgs e) { if (SiteSecurity.IsInRole("admin") == false) { Response.Redirect("~/FormatPage.aspx?path=SiteConfig/accessdenied.format.html"); } if (!IsPostBack || Session["newtelligence.DasBlog.Web.EditBlogRollBox.OpmlTree"] == null) { SharedBasePage requestPage = Page as SharedBasePage; foreach (string file in Directory.GetFiles(SiteConfig.GetConfigPathFromCurrentContext(), "*.opml")) { listFiles.Items.Add(Path.GetFileName(file)); } if (listFiles.Items.Count == 0) { listFiles.Items.Add("blogroll.opml"); } Session["newtelligence.DasBlog.Web.EditBlogRollBox.baseFileName"] = baseFileName = listFiles.Items[0].Text; string fileName = Path.Combine(SiteConfig.GetConfigPathFromCurrentContext(), baseFileName); LoadOutline(fileName); } else { baseFileName = Session["newtelligence.DasBlog.Web.EditBlogRollBox.baseFileName"] as string; opmlTree = Session["newtelligence.DasBlog.Web.EditBlogRollBox.OpmlTree"] as Opml; } BindGrid(); }
protected void Eventlog_Load(object sender, System.EventArgs e) { this.CategoryName = "admin"; if (SiteSecurity.IsInRole("admin") == false) { Response.Redirect("~/FormatPage.aspx?path=SiteConfig/accessdenied.format.html"); } }
protected void Page_Load(object sender, System.EventArgs e) { if (SiteSecurity.IsInRole("admin") == false) { Response.Redirect("~/FormatPage.aspx?path=SiteConfig/accessdenied.format.html"); } //set the current page <li> tag to here string filePath = this.Request.FilePath; if (filePath.EndsWith("CrosspostReferrers.aspx", StringComparison.InvariantCultureIgnoreCase)) { crosspost.Attributes["class"] = "here"; hyperlinkCrosspostReferrers.NavigateUrl = ""; } else if (filePath.EndsWith("UserClickThroughs.aspx", StringComparison.InvariantCultureIgnoreCase)) { userclickthrough.Attributes["class"] = "here"; hyperlinkUserClickThroughs.NavigateUrl = ""; } else if (filePath.EndsWith("ClickThroughs.aspx", StringComparison.InvariantCultureIgnoreCase)) { clickthrough.Attributes["class"] = "here"; hyperlinkClickThroughs.NavigateUrl = ""; } else if (filePath.EndsWith("AggBugs.aspx", StringComparison.InvariantCultureIgnoreCase)) { aggbugs.Attributes["class"] = "here"; hyperlinkAggBugs.NavigateUrl = ""; } else if (filePath.EndsWith("Referrers.aspx", StringComparison.InvariantCultureIgnoreCase)) { referrers.Attributes["class"] = "here"; hyperLinkReferrers.NavigateUrl = ""; } else if (filePath.EndsWith("Eventlog.aspx", StringComparison.InvariantCultureIgnoreCase)) { eventlog.Attributes["class"] = "firstHere"; hyperLinkEventlog.NavigateUrl = ""; } if (this.Request.QueryString["date"] != null) { AddDateQueryString(hyperLinkEventlog); AddDateQueryString(hyperLinkReferrers); AddDateQueryString(hyperlinkAggBugs); AddDateQueryString(hyperlinkClickThroughs); AddDateQueryString(hyperlinkUserClickThroughs); AddDateQueryString(hyperlinkCrosspostReferrers); } }
protected void Page_Load(object sender, System.EventArgs e) { if (SiteSecurity.IsInRole("admin") == false) { Response.Redirect("~/FormatPage.aspx?path=SiteConfig/accessdenied.format.html"); } resmgr = ((System.Resources.ResourceManager)ApplicationResourceTable.Get()); if (!IsPostBack || crosspostSites == null) { LoadSites( ); } BindGrid(); }
protected void Page_Load(object sender, EventArgs e) { SharedBasePage requestPage = this.Page as SharedBasePage; if (SiteSecurity.IsInRole("admin") == false) { Response.Redirect("~/FormatPage.aspx?path=SiteConfig/accessdenied.format.html"); } resmgr = ((ResourceManager)ApplicationResourceTable.Get()); if (!IsPostBack || contentFilters == null) { LoadFilters(); UpdateTestBox(); } BindGrid(); }
protected void Page_Load(object sender, System.EventArgs e) { if (SiteSecurity.IsInRole("admin") == false) { Response.Redirect("~/FormatPage.aspx?path=SiteConfig/accessdenied.format.html"); } resmgr = ((System.Resources.ResourceManager)ApplicationResourceTable.Get()); if (!IsPostBack || Session["newtelligence.DasBlog.Web.EditNavigatorLinksBox.NavigationRoot"] == null) { SharedBasePage requestPage = Page as SharedBasePage; string fileName = Path.Combine(SiteConfig.GetConfigPathFromCurrentContext(), baseFileName); LoadList(fileName); } else { navigationRoot = Session["newtelligence.DasBlog.Web.EditNavigatorLinksBox.NavigationRoot"] as NavigationRoot; } BindGrid(); }
protected void Page_Load(object sender, EventArgs e) { if (SiteSecurity.IsInRole("admin") == false) { Response.Redirect("~/FormatPage.aspx?path=SiteConfig/accessdenied.format.html"); } ID = "EditConfigBox"; SharedBasePage requestPage = Page as SharedBasePage; SiteConfig siteConfig = requestPage.SiteConfig; if (!IsPostBack) { textContact.Text = siteConfig.Contact; textCopyright.Text = siteConfig.Copyright; textPassword.Text = passwordPlaceHolder; textConfirmPassword.Text = passwordPlaceHolder; textFrontPageCategory.Text = siteConfig.FrontPageCategory; textFrontPageDayCount.Text = siteConfig.FrontPageDayCount.ToString(); textFrontPageEntryCount.Text = siteConfig.FrontPageEntryCount.ToString(); textEntriesPerPage.Text = siteConfig.EntriesPerPage.ToString(); textContentLookaheadDays.Text = siteConfig.ContentLookaheadDays.ToString(); textMainMaxDaysInRss.Text = siteConfig.RssDayCount.ToString(); textMainMaxEntriesInRss.Text = siteConfig.RssMainEntryCount.ToString(); textOtherMaxEntriesInRss.Text = siteConfig.RssEntryCount.ToString(); checkAlwaysIncludeContentInRSS.Checked = siteConfig.AlwaysIncludeContentInRSS; checkEnableRSSItemFooter.Checked = siteConfig.EnableRssItemFooters; textRSSItemFooter.Text = siteConfig.RssItemFooter; txtRSSEndPointRewrite.Text = siteConfig.RSSEndPointRewrite; checkPop3Enabled.Checked = siteConfig.EnablePop3; textPop3Interval.Text = siteConfig.Pop3Interval.ToString(); textPop3Server.Text = siteConfig.Pop3Server; textPop3SubjectPrefix.Text = siteConfig.Pop3SubjectPrefix; textPop3Username.Text = siteConfig.Pop3Username; textPop3Password.Text = passwordPlaceHolder; textPop3PasswordRepeat.Text = passwordPlaceHolder; textRoot.Text = siteConfig.Root; textSmtpServer.Text = siteConfig.SmtpServer; textSmtpPort.Text = siteConfig.SmtpPort.ToString(); checkUseSSLForSMTP.Checked = siteConfig.UseSSLForSMTP; textNotificationEmailAddress.Text = siteConfig.NotificationEMailAddress; textSubtitle.Text = siteConfig.Subtitle; textSmtpServer.Text = siteConfig.SmtpServer; checkEnableCoComment.Checked = siteConfig.EnableCoComment; checkComments.Checked = siteConfig.SendCommentsByEmail; checkPingbacks.Checked = siteConfig.SendPingbacksByEmail; checkReferrals.Checked = siteConfig.SendReferralsByEmail; checkPosts.Checked = siteConfig.SendPostsByEmail; checkTrackbacks.Checked = siteConfig.SendTrackbacksByEmail; checkShowCommentCounters.Checked = siteConfig.ShowCommentCount; checkEnableAutoPingback.Checked = siteConfig.EnableAutoPingback; checkEnableBloggerApi.Checked = siteConfig.EnableBloggerApi; checkEnableComments.Checked = siteConfig.EnableComments; checkEnableCommentApi.Checked = siteConfig.EnableCommentApi; checkShowCommentsWhenViewingEntry.Checked = siteConfig.ShowCommentsWhenViewingEntry; checkEnableConfigEditService.Checked = siteConfig.EnableConfigEditService; checkEnableEditService.Checked = siteConfig.EnableEditService; checkEnableAutoSave.Checked = siteConfig.EnableAutoSave; checkEnablePingbackService.Checked = siteConfig.EnablePingbackService; checkEnableTrackbackService.Checked = siteConfig.EnableTrackbackService; checkEnableClickThrough.Checked = siteConfig.EnableClickThrough; checkEnableAggregatorBugging.Checked = siteConfig.EnableAggregatorBugging; checkXssEnabled.Checked = siteConfig.EnableXSSUpstream; textXssEndpoint.Text = siteConfig.XSSUpstreamEndpoint; textXssInterval.Text = siteConfig.XSSUpstreamInterval.ToString(); textXssPassword.Text = passwordPlaceHolder; textXssPasswordRepeat.Text = passwordPlaceHolder; textXssUsername.Text = siteConfig.XSSUpstreamUsername; textXssRssFilename.Text = siteConfig.XSSRSSFilename; checkPop3InlineAttachedPictures.Checked = siteConfig.Pop3InlineAttachedPictures; textPop3AttachedPicturesPictureThumbnailHeight.Text = siteConfig.Pop3InlinedAttachedPicturesThumbHeight.ToString(); mailDeletionAll.Checked = siteConfig.Pop3DeleteAllMessages; mailDeletionProcessed.Checked = !siteConfig.Pop3DeleteAllMessages; logIgnoredEmails.Checked = siteConfig.Pop3LogIgnoredEmails; checkShowItemDescriptionInAggregatedViews.Checked = siteConfig.ShowItemDescriptionInAggregatedViews; checkEnableStartPageCaching.Checked = siteConfig.EnableStartPageCaching; checkEnableBlogrollDescription.Checked = siteConfig.EnableBlogrollDescription; checkEntryTitleAsLink.Checked = siteConfig.EntryTitleAsLink; checkEnableUrlRewriting.Checked = siteConfig.EnableUrlRewriting; checkEnableCrosspost.Checked = siteConfig.EnableCrossposts; checkCategoryAllEntries.Checked = siteConfig.CategoryAllEntries; checkReferralUrlBlacklist.Checked = siteConfig.EnableReferralUrlBlackList; textReferralBlacklist.Text = siteConfig.ReferralUrlBlackList; checkCaptchaEnabled.Checked = siteConfig.EnableCaptcha; checkReferralBlacklist404s.Checked = siteConfig.EnableReferralUrlBlackList404s; textRSSChannelImage.Text = siteConfig.ChannelImageUrl; checkEnableTitlePermaLink.Checked = siteConfig.EnableTitlePermaLink; checkEnableTitlePermaLinkUnique.Checked = siteConfig.EnableTitlePermaLinkUnique; checkEnableTitlePermaLinkSpaces.Checked = siteConfig.EnableTitlePermaLinkSpaces; checkEnableEncryptLoginPassword.Checked = siteConfig.EncryptLoginPassword; checkEnableSmtpAuthentication.Checked = siteConfig.EnableSmtpAuthentication; textSmtpUsername.Text = siteConfig.SmtpUserName; textSmtpPassword.Text = passwordPlaceHolder; textRssLanguage.Text = siteConfig.RssLanguage; checkEnableSearchHighlight.Checked = siteConfig.EnableSearchHighlight; checkEnableEntryReferral.Checked = siteConfig.EnableEntryReferrals; textFeedBurnerName.Text = siteConfig.FeedBurnerName; checkUseFeedScheme.Checked = siteConfig.UseFeedSchemeForSyndication; checkLogBlockedReferrals.Checked = siteConfig.LogBlockedReferrals; //populate the title space replacement options dropDownTitlePermalinkReplacementCharacter.Items.Clear();//in casee someone adds them in the ascx foreach (string s in TitleMapperModule.TitlePermalinkSpaceReplacementOptions) { dropDownTitlePermalinkReplacementCharacter.Items.Add(s); } dropDownTitlePermalinkReplacementCharacter.SelectedValue = siteConfig.TitlePermalinkSpaceReplacement; checkSpamBlockingEnabled.Checked = siteConfig.EnableSpamBlockingService; textSpamBlockingApiKey.Text = siteConfig.SpamBlockingServiceApiKey; optionSpamHandling.SelectedValue = siteConfig.EnableSpamModeration ? SPAM_OPTION_SAVE : SPAM_OPTION_DELETE; // setup the checkbox list to select which tags to allow checkBoxListAllowedTags.DataSource = siteConfig.AllowedTags; checkBoxListAllowedTags.DataTextField = "Name"; checkBoxListAllowedTags.DataValueField = "Name"; // enable comment moderation checkCommentsRequireApproval.Checked = siteConfig.CommentsRequireApproval; // allow html and comments checkAllowHtml.Checked = siteConfig.CommentsAllowHtml; // populate from config - Gravatar GravatarPopulateForm(); // supress email address display checkDisableEmailDisplay.Checked = siteConfig.SupressEmailAddressDisplay; checkEnableCommentDays.Checked = siteConfig.EnableCommentDays; checkAttemptToHtmlTidyContent.Checked = siteConfig.HtmlTidyContent; checkResolveCommenterIP.Checked = siteConfig.ResolveCommenterIP; //if ( siteConfig.EnableCommentDays ) //{ if (siteConfig.DaysCommentsAllowed > 0) { textDaysCommentsAllowed.Text = siteConfig.DaysCommentsAllowed.ToString(); } //} //else //{ // textDaysCommentsAllowed.Text = null; //} // supress email address display checkDisableEmailDisplay.Checked = siteConfig.SupressEmailAddressDisplay; checkEnableCommentDays.Checked = siteConfig.EnableCommentDays; //if ( siteConfig.EnableCommentDays ) //{ if (siteConfig.DaysCommentsAllowed > 0) { textDaysCommentsAllowed.Text = siteConfig.DaysCommentsAllowed.ToString(); } //} //else //{ // textDaysCommentsAllowed.Text = null; //} // email daily report checkDailyReport.Text = resmgr.GetString("text_daily_activity_report"); checkDailyReport.Checked = siteConfig.EnableDailyReportEmail; WindowsTimeZoneCollection timeZones = WindowsTimeZone.TimeZones; foreach (WindowsTimeZone tz in timeZones) { listTimeZones.Items.Add(new ListItem(tz.DisplayName, tz.ZoneIndex.ToString())); } listTimeZones.SelectedValue = siteConfig.DisplayTimeZoneIndex.ToString(); checkUseUTC.Checked = !siteConfig.AdjustDisplayTimeZone; //FIX: hardcoded path ThemeDictionary themes = BlogTheme.Load(SiteUtilities.MapPath("themes")); foreach (BlogTheme theme in themes.Values) { // setting the selected item like this instead of // using listThemes.SelectedValue = siteConfig.Theme; // prevents the page from breaking. ListItem item = new ListItem(theme.Title, theme.Name); if (item.Value == siteConfig.Theme) { item.Selected = true; } listThemes.Items.Add(item); } textTitle.Text = siteConfig.Title; checkBoxListPingServices.DataSource = PingServiceCollection; checkBoxListPingServices.DataTextField = "Hyperlink"; checkBoxListPingServices.DataValueField = "Endpoint"; drpEntryEditControl.Items.Clear(); foreach (string potentialAssembly in Directory.GetFiles(HttpRuntime.BinDirectory, "*.dll")) { try { Assembly a = Assembly.LoadFrom(potentialAssembly); foreach (Type potentialType in a.GetTypes()) { if (potentialType.BaseType == typeof(EditControlAdapter)) { drpEntryEditControl.Items.Add(new ListItem(potentialType.Name, potentialType.AssemblyQualifiedName)); } } } catch (Exception) { //swallow } } //Reasonable default if (string.IsNullOrEmpty(siteConfig.EntryEditControl)) { siteConfig.EntryEditControl = typeof(TinyMCEAdapter).AssemblyQualifiedName; } DataBind(); ListItem li = drpEntryEditControl.Items.FindByText(siteConfig.EntryEditControl); if (li != null) { li.Selected = true; } else { drpEntryEditControl.SelectedIndex = 0; } foreach (PingService ps in siteConfig.PingServices) { checkBoxListPingServices.Items.FindByValue(ps.Endpoint).Selected = true; } foreach (ValidTag tag in siteConfig.AllowedTags) { checkBoxListAllowedTags.Items.FindByValue(tag.Name).Selected = tag.IsAllowed; } //check for Smtp permission if (SecurityManager.IsGranted(new SmtpPermission(SmtpAccess.ConnectToUnrestrictedPort))) { phSmtpTrustWarning.Visible = false; } else { phSmtpTrustWarning.Visible = true; } //check for Socket permission SocketPermission sp; if (String.IsNullOrEmpty(textPop3Server.Text)) { sp = new SocketPermission(PermissionState.Unrestricted); } else { sp = new SocketPermission(NetworkAccess.Connect, TransportType.Tcp, textPop3Server.Text, 110); } if (SecurityManager.IsGranted(sp)) { phPop3TrustWarning.Visible = false; } else { phPop3TrustWarning.Visible = true; } // georss stuff checkEnableGeoRss.Checked = siteConfig.EnableGeoRss; textGoogleMapsApi.Text = siteConfig.GoogleMapsApiKey; textDefaultLatitude.Text = siteConfig.DefaultLatitude.ToString(CultureInfo.InvariantCulture); textDefaultLongitude.Text = siteConfig.DefaultLongitude.ToString(CultureInfo.InvariantCulture); checkEnableGoogleMaps.Checked = siteConfig.EnableGoogleMaps; checkEnableDefaultLatLongForNonGeoCodedPosts.Checked = siteConfig.EnableDefaultLatLongForNonGeoCodedPosts; // OpenId chkAllowOpenIdAdmin.Checked = siteConfig.AllowOpenIdAdmin; chkAllowOpenIdCommenter.Checked = siteConfig.AllowOpenIdComments; chkBypassSpamOpenIdCommenter.Checked = siteConfig.BypassSpamOpenIdComment; SeoMetaTags smt = new SeoMetaTags().GetMetaTags(); txtMetaDescription.Text = smt.MetaDescription; txtMetaKeywords.Text = smt.MetaKeywords; txtTwitterCard.Text = smt.TwitterCard; txtTwitterSite.Text = smt.TwitterSite; txtTwitterCreator.Text = smt.TwitterCreator; txtTwitterImage.Text = smt.TwitterImage; txtFaceBookAdmins.Text = smt.FaceBookAdmins; txtFaceBookAppID.Text = smt.FaceBookAppID; checkAmpEnabled.Checked = siteConfig.AMPPagesEnabled; } // end if !postback //enable list controls that may have been enabled client-side //in 2.0 if they are not enable we won't get there postback data checkBoxListAllowedTags.Enabled = true; dropGravatarRating.Enabled = true; }
protected void Page_PreRender(object sender, System.EventArgs e) { SharedBasePage requestPage = Page as SharedBasePage; Control root = this; HtmlGenericControl entry = new HtmlGenericControl("div"); if (SiteSecurity.GetUserByEmail(comment.AuthorEmail) == null) { entry.Attributes["class"] = "commentBoxStyle"; } else { entry.Attributes["class"] = "commentBoxStyle commentBoxAuthorStyle"; } root.Controls.Add(entry); HtmlGenericControl entryTitle = new HtmlGenericControl("div"); entryTitle.Attributes["class"] = "commentDateStyle"; //Add the unique anchor for each comment HtmlAnchor anchor = new HtmlAnchor(); anchor.Name = comment.EntryId; entryTitle.Controls.Add(anchor); if (requestPage.SiteConfig.AdjustDisplayTimeZone) { entryTitle.Controls.Add(new LiteralControl(requestPage.SiteConfig.GetConfiguredTimeZone().FormatAdjustedUniversalTime(comment.CreatedUtc))); } else { entryTitle.Controls.Add(new LiteralControl(comment.CreatedUtc.ToString("U") + " UTC")); } entry.Controls.Add(entryTitle); HtmlGenericControl entryBody = new HtmlGenericControl("div"); if (SiteSecurity.GetUserByEmail(comment.AuthorEmail) == null) { entryBody.Attributes["class"] = "commentBodyStyle"; } else { entryBody.Attributes["class"] = "commentBodyStyle commentBodyAuthorStyle"; } if (comment.Content != null) { entryBody.Controls.Add(new LiteralControl(Regex.Replace(comment.Content, "\n", "<br />"))); } if (!requestPage.HideAdminTools && SiteSecurity.IsInRole("admin")) { HtmlGenericControl spamStatus = new HtmlGenericControl("div"); spamStatus.Attributes["class"] = "commentSpamStateStyle"; spamStatus.InnerText = ApplicationResourceTable.GetSpamStateDescription(comment.SpamState); entryBody.Controls.Add(spamStatus); } entry.Controls.Add(entryBody); HtmlGenericControl footer = new HtmlGenericControl("div"); footer.Attributes["class"] = "commentBoxFooterStyle"; entry.Controls.Add(footer); if (requestPage.SiteConfig.CommentsAllowGravatar && String.IsNullOrEmpty(comment.AuthorEmail) == false) { string hash = ""; byte[] data, enc; data = Encoding.Default.GetBytes(comment.AuthorEmail.ToLowerInvariant()); using (MD5 md5 = new MD5CryptoServiceProvider()) { enc = md5.TransformFinalBlock(data, 0, data.Length); foreach (byte b in md5.Hash) { hash += Convert.ToString(b, 16).ToLower().PadLeft(2, '0'); } md5.Clear(); } string nogravpath = ""; if (requestPage.SiteConfig.CommentsGravatarNoImgPath != null) { if (requestPage.SiteConfig.CommentsGravatarNoImgPath != "") { if (requestPage.SiteConfig.CommentsGravatarNoImgPath.Substring(0, 4) == "http") { nogravpath = "&default=" + Server.UrlEncode(requestPage.SiteConfig.CommentsGravatarNoImgPath); } else { nogravpath = "&default=" + Server.UrlEncode(requestPage.SiteConfig.Root + requestPage.SiteConfig.CommentsGravatarNoImgPath); } } } if (String.IsNullOrEmpty(requestPage.SiteConfig.CommentsGravatarNoImgPath) == false) { if (requestPage.SiteConfig.CommentsGravatarNoImgPath == "identicon" || requestPage.SiteConfig.CommentsGravatarNoImgPath == "wavatar" || requestPage.SiteConfig.CommentsGravatarNoImgPath == "monsterid" || requestPage.SiteConfig.CommentsGravatarNoImgPath.Substring(0, 4) == "http") { nogravpath = "&default=" + Server.UrlEncode(requestPage.SiteConfig.CommentsGravatarNoImgPath); } else { nogravpath = "&default=" + Server.UrlEncode(requestPage.SiteConfig.Root + requestPage.SiteConfig.CommentsGravatarNoImgPath); } } string gravborder = ""; if (requestPage.SiteConfig.CommentsGravatarBorder != null) { if (requestPage.SiteConfig.CommentsGravatarBorder != "") { gravborder = "&border=" + requestPage.SiteConfig.CommentsGravatarBorder; } } string gravsize = ""; if (requestPage.SiteConfig.CommentsGravatarSize != null) { if (requestPage.SiteConfig.CommentsGravatarSize != "") { gravsize = "&size=" + requestPage.SiteConfig.CommentsGravatarSize; } } string gravrating = ""; if (requestPage.SiteConfig.CommentsGravatarRating != null) { if (requestPage.SiteConfig.CommentsGravatarRating != "") { gravrating = "&rating=" + requestPage.SiteConfig.CommentsGravatarRating; } } HtmlGenericControl entryGRAVATAR = new HtmlGenericControl("span"); entryGRAVATAR.Attributes["class"] = "commentGravatarBlock"; entryGRAVATAR.InnerHtml = "<img class=\"commentGravatar\" src=\"http://www.gravatar.com/avatar.php?gravatar_id=" + hash + gravrating + gravsize + nogravpath + gravborder + "\"/>"; footer.Controls.Add(entryGRAVATAR); } string authorLink = null; if (comment.AuthorHomepage != null && comment.AuthorHomepage.Length > 0) { authorLink = FixUrl(comment.AuthorHomepage); } else if (comment.AuthorEmail != null && comment.AuthorEmail.Length > 0) { if (!requestPage.SiteConfig.SupressEmailAddressDisplay) { authorLink = "mailto:" + SiteUtilities.SpamBlocker(comment.AuthorEmail); } } if (authorLink != null) { HyperLink link = new HyperLink(); link.Attributes["class"] = "commentPermalinkStyle"; link.NavigateUrl = authorLink; link.Text = comment.Author; link.Attributes.Add("rel", "nofollow"); footer.Controls.Add(link); if (comment.OpenId) { System.Web.UI.WebControls.Image i = new System.Web.UI.WebControls.Image(); i.ImageUrl = "~/images/openid-icon-small.gif"; i.CssClass = "commentOpenId"; link.Controls.Add(i); Literal l = new Literal(); l.Text = comment.Author; link.Controls.Add(l); } } else { Label l = new Label(); l.Attributes["class"] = "commentPermalinkStyle"; l.Text = comment.Author; footer.Controls.Add(l); } if (!requestPage.SiteConfig.SupressEmailAddressDisplay) { if (comment.AuthorEmail != null && comment.AuthorEmail.Length > 0) { footer.Controls.Add(new LiteralControl(" | ")); HtmlGenericControl mailto = new HtmlGenericControl("span"); footer.Controls.Add(mailto); HyperLink link = new HyperLink(); link.CssClass = "commentMailToStyle"; link.NavigateUrl = "mailto:" + SiteUtilities.SpamBlocker(comment.AuthorEmail); link.Text = SiteUtilities.SpamBlocker(comment.AuthorEmail); mailto.Controls.Add(link); } } if (!requestPage.HideAdminTools && SiteSecurity.IsInRole("admin")) { if (!string.IsNullOrEmpty(comment.AuthorIPAddress)) { try { if (requestPage.SiteConfig.ResolveCommenterIP == true) { System.Net.IPHostEntry hostInfo = System.Net.Dns.GetHostEntry(comment.AuthorIPAddress); footer.Controls.Add( new LiteralControl(" (" + comment.AuthorIPAddress + " " + hostInfo.HostName + ") ")); } else { footer.Controls.Add(new LiteralControl(" (" + comment.AuthorIPAddress + ") ")); } } catch { footer.Controls.Add(new LiteralControl(" (" + comment.AuthorIPAddress + ") ")); } } footer.Controls.Add(new LiteralControl(" ")); // create delete hyperlink HyperLink deleteHl = new HyperLink(); deleteHl.CssClass = "deleteLinkStyle"; System.Web.UI.WebControls.Image img = new System.Web.UI.WebControls.Image(); img.CssClass = "deleteLinkImageStyle"; img.ImageUrl = new Uri(new Uri(SiteUtilities.GetBaseUrl(requestPage.SiteConfig)), requestPage.GetThemedImageUrl("deletebutton")).ToString(); img.BorderWidth = 0; deleteHl.Controls.Add(img); deleteHl.NavigateUrl = String.Format("javascript:deleteComment(\"{0}\", \"{1}\", \"{2}\")", Comment.TargetEntryId, Comment.EntryId, Comment.Author == null ? String.Empty : Comment.Author.Replace("\"", "\\\"")); ResourceManager resmgr = resmgr = ApplicationResourceTable.Get(); if (!Page.ClientScript.IsClientScriptBlockRegistered(this.GetType(), "deleteCommentScript")) { // add the javascript to allow deletion of the comment string scriptString = "<script type=\"text/javascript\" language=\"JavaScript\">\n"; scriptString += "function deleteComment(entryId, commentId, commentFrom)\n"; scriptString += "{\n"; scriptString += String.Format(" if(confirm(\"{0} \\n\\n\" + commentFrom))\n", resmgr.GetString("text_delete_confirm")); scriptString += " {\n"; scriptString += " location.href=\"deleteItem.ashx?entryid=\" + entryId + \"&commentId=\" + commentId\n"; scriptString += " }\n"; scriptString += "}\n"; scriptString += "</script>"; Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "deleteCommentScript", scriptString); } footer.Controls.Add(deleteHl); // create approve hyperlink, when a comment is not public or if its marked as spam if ((!Comment.IsPublic) || (Comment.SpamState == SpamState.Spam)) { HyperLink approveHl = new HyperLink(); approveHl.CssClass = "approveLinkStyle"; System.Web.UI.WebControls.Image okImg = new System.Web.UI.WebControls.Image(); okImg.CssClass = "approveImageStyle"; okImg.ImageUrl = new Uri(new Uri(SiteUtilities.GetBaseUrl(requestPage.SiteConfig)), requestPage.GetThemedImageUrl("okbutton-list")).ToString(); okImg.BorderWidth = 0; approveHl.Controls.Add(okImg); approveHl.NavigateUrl = String.Format("javascript:approveComment(\"{0}\", \"{1}\")", Comment.TargetEntryId, Comment.EntryId); if (!Page.ClientScript.IsClientScriptBlockRegistered(this.GetType(), "approveCommentScript")) { string approveScript = "<script type=\"text/javascript\" language=\"JavaScript\">\n"; approveScript += "function approveComment(entryId, commentId)\n"; approveScript += "{\n"; approveScript += " location.href=\"approveItem.ashx?entryid=\" + entryId + \"&commentId=\" + commentId\n"; approveScript += "}\n"; approveScript += "</script>"; Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "approveCommentScript", approveScript); } footer.Controls.Add(approveHl); } ISpamBlockingService spamBlockingService = requestPage.SiteConfig.SpamBlockingService; if ((spamBlockingService != null) && (comment.SpamState != SpamState.Spam)) { HyperLink reportSpamLink = new HyperLink(); reportSpamLink.CssClass = "approveLinkStyle"; System.Web.UI.WebControls.Image spamImg = new System.Web.UI.WebControls.Image(); spamImg.CssClass = "approveImageStyle"; spamImg.ImageUrl = new Uri(new Uri(SiteUtilities.GetBaseUrl(requestPage.SiteConfig)), requestPage.GetThemedImageUrl("reportspambutton")).ToString(); spamImg.BorderWidth = 0; reportSpamLink.Controls.Add(spamImg); reportSpamLink.NavigateUrl = String.Format("javascript:reportComment(\"{0}\", \"{1}\", \"{2}\")", Comment.TargetEntryId, Comment.EntryId, Comment.Author == null ? String.Empty : Comment.Author.Replace("\"", "\\\"")); string reportScript = "<script type=\"text/javascript\" language=\"JavaScript\">\n"; reportScript += "function reportComment(entryId, commentId, commentFrom)\n"; reportScript += "{\n"; reportScript += String.Format(" if(confirm(\"{0} \\n\\n\" + commentFrom))\n", resmgr.GetString("text_reportspam_confirm")); reportScript += " {\n"; reportScript += " location.href=\"deleteItem.ashx?report=true&entryid=\" + entryId + \"&commentId=\" + commentId\n"; reportScript += " }\n"; reportScript += "}\n"; reportScript += "</script>"; if (!Page.ClientScript.IsClientScriptBlockRegistered(this.GetType(), "reportCommentScript")) { Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "reportCommentScript", reportScript); } footer.Controls.Add(reportSpamLink); } } }
/// <summary> /// Shortcut for determining a valid contributor to the blog...currently only users in the "admin" role /// or the "contributor" role are supported. /// </summary> public static bool IsValidContributor() { return(SiteSecurity.IsInRole("admin") || SiteSecurity.IsInRole("contributor")); }
protected void Page_Load(object sender, System.EventArgs e) { siteConfig = SiteConfig.GetSiteConfig(); resmgr = ((System.Resources.ResourceManager)ApplicationResourceTable.Get()); //set the current page <li> tag to here string filePath = this.Request.FilePath; if (filePath.EndsWith("EditCrossPostSites.aspx", StringComparison.InvariantCultureIgnoreCase)) { editCrossPostSites.Attributes["class"] = "here"; hyperLinkEditCrossPostSites.NavigateUrl = ""; } else if (filePath.EndsWith("EditNavigatorLinks.aspx", StringComparison.InvariantCultureIgnoreCase)) { editNavigatorLinks.Attributes["class"] = "here"; hyperLinkEditNavigatorLinks.NavigateUrl = ""; } else if (filePath.EndsWith("EditBlogRoll.aspx", StringComparison.InvariantCultureIgnoreCase)) { editBlogRoll.Attributes["class"] = "here"; hyperLinkEditBlogRoll.NavigateUrl = ""; } else if (filePath.EndsWith("EditContentFilters.aspx", StringComparison.InvariantCultureIgnoreCase)) { editContentFilters.Attributes["class"] = "here"; hyperLinkEditContentFilters.NavigateUrl = ""; } else if (filePath.EndsWith("EditConfig.aspx", StringComparison.InvariantCultureIgnoreCase)) { editConfig.Attributes["class"] = "here"; hyperLinkEditConfig.NavigateUrl = ""; } else if (filePath.EndsWith("Referrers.aspx", StringComparison.InvariantCultureIgnoreCase) || filePath.EndsWith("Eventlog.aspx", StringComparison.InvariantCultureIgnoreCase) || filePath.EndsWith("AggBugs.aspx", StringComparison.InvariantCultureIgnoreCase) || filePath.EndsWith("ClickThroughs.aspx", StringComparison.InvariantCultureIgnoreCase)) { activity.Attributes["class"] = "here"; hyperLinkActivity.NavigateUrl = ""; } else if (filePath.EndsWith("EditEntry.aspx", StringComparison.InvariantCultureIgnoreCase)) { editEntry.Attributes["class"] = "firstHere"; hyperLinkEditEntry.NavigateUrl = ""; } else if (filePath.EndsWith("EditUser.aspx", StringComparison.InvariantCultureIgnoreCase)) { editUser.Attributes["class"] = "here"; hyperLinkEditUser.NavigateUrl = ""; } // The only tab that should be visible for a contributor is the // "Add Entry" and "User Settings" tab if (SiteSecurity.IsInRole("contributor")) { this.editConfig.Visible = false; this.editCrossPostSites.Visible = false; this.editContentFilters.Visible = false; this.editBlogRoll.Visible = false; this.editNavigatorLinks.Visible = false; this.activity.Visible = false; } DataBind(); }