/// <summary> /// Creates and returns instance of a <see cref="Core.EditControlAdapter"/> based on the site configuration. /// </summary> /// <returns>An instance of <see cref="Core.EditControlAdapter"/></returns> public static EditControlAdapter CreateEditControl <TDefault>() where TDefault : EditControlAdapter, new() { SiteConfig siteConfig = SiteConfig.GetSiteConfig(); string configuredEditControl = siteConfig.EntryEditControl; Core.EditControlAdapter editControl; Type editControlType; // try the configured control if (TryGetType(configuredEditControl, out editControlType) && TryCreateControl(editControlType, out editControl)) { return(editControl); } // try the requested default if (TryCreateControl(typeof(TDefault), out editControl)) { return(editControl); } // if all else failed, default to the plain textbox, since that doesn't depend on external assemblies. return(new TextBoxAdapter()); }
private void LoadFilters() { SiteConfig siteConfig = SiteConfig.GetSiteConfig(SiteConfig.GetConfigFilePathFromCurrentContext()); contentFilters = new ContentFilterCollection(siteConfig.ContentFilters); checkFilterHtml.Checked = siteConfig.ApplyContentFiltersToWeb; checkFilterRSS.Checked = siteConfig.ApplyContentFiltersToRSS; }
private void AddGoogleMapsApi() { if (!Page.ClientScript.IsClientScriptBlockRegistered(this.GetType(), "GoogleMapsApi")) { System.Text.StringBuilder sb = new StringBuilder(); sb.Append("<script src=\"http://maps.google.com/maps?file=api&v=2&key="); sb.Append(SiteConfig.GetSiteConfig().GoogleMapsApiKey); sb.Append("\" type=\"text/javascript\"></script>"); Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "GoogleMapsApi", sb.ToString()); } }
public SyndicationServiceBase() { InitializeComponent(); if (Context != null) { siteConfig = SiteConfig.GetSiteConfig(); loggingService = LoggingDataServiceFactory.GetService(SiteConfig.GetLogPathFromCurrentContext()); dataService = BlogDataServiceFactory.GetService(SiteConfig.GetContentPathFromCurrentContext(), loggingService); cache = CacheFactory.GetCache(); } }
private void SaveSites( ) { SiteConfig siteConfig = SiteConfig.GetSiteConfig(SiteConfig.GetConfigFilePathFromCurrentContext()); siteConfig.CrosspostSites.Clear(); siteConfig.CrosspostSites.AddRange(crosspostSites); XmlSerializer ser = new XmlSerializer(typeof(SiteConfig)); using (StreamWriter writer = new StreamWriter(SiteConfig.GetConfigFilePathFromCurrentContext())) { ser.Serialize(writer, siteConfig); } }
private void SaveFilters() { SiteConfig siteConfig = SiteConfig.GetSiteConfig(SiteConfig.GetConfigFilePathFromCurrentContext()); siteConfig.ApplyContentFiltersToWeb = checkFilterHtml.Checked; siteConfig.ApplyContentFiltersToRSS = checkFilterRSS.Checked; siteConfig.ContentFilters.Clear(); siteConfig.ContentFilters.AddRange(contentFilters); XmlSerializer ser = new XmlSerializer(typeof(SiteConfig)); using (StreamWriter writer = new StreamWriter(SiteConfig.GetConfigFilePathFromCurrentContext())) { ser.Serialize(writer, siteConfig); } }
private void LoadSites( ) { SiteConfig siteConfig = SiteConfig.GetSiteConfig(SiteConfig.GetConfigFilePathFromCurrentContext()); crosspostSites = new CrosspostSiteCollection(siteConfig.CrosspostSites); // [email protected] 24-MAR-04 // ensure that each allBlogNames property has at // least one entry, namely the blog name foreach (CrosspostSite site in crosspostSites) { if (site.AllBlogNames == null || site.AllBlogNames.Length == 0) { site.AllBlogNames = new string[] { site.BlogName } } ; } }
/// <summary> /// Gets the entries for this month that we will be rendering /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void calendarMonth_PreRender(object sender, EventArgs e) { Control root = contentPlaceHolder; SiteConfig siteConfig = SiteConfig.GetSiteConfig(); string languageFilter = Request.Headers["Accept-Language"]; MonthViewCalendar eventSource = sender as MonthViewCalendar; requestPage = Page as SharedBasePage; // if we adjust for time zones (we don't show everything in UTC), we get the entries // using the configured time zone. eventSource.EntriesThisMonth = new EntryCollection(); if (siteConfig.AdjustDisplayTimeZone) { //Store away these Entries for the DayRender step... eventSource.EntriesThisMonth = requestPage.DataService.GetEntriesForMonth(eventSource.VisibleDate, siteConfig.GetConfiguredTimeZone(), languageFilter); } else { //Store away these Entries for the DayRender step... eventSource.EntriesThisMonth = requestPage.DataService.GetEntriesForMonth(eventSource.VisibleDate, new Util.UTCTimeZone(), languageFilter); } }
protected void Application_Start(Object sender, EventArgs e) { //We clear out the Cache on App Restart... CacheFactory.GetCache().Clear(); ILoggingDataService loggingService = null; loggingService = LoggingDataServiceFactory.GetService(SiteConfig.GetLogPathFromCurrentContext()); loggingService.AddEvent(new EventDataItem(EventCodes.ApplicationStartup, "", "")); SiteConfig siteConfig = SiteConfig.GetSiteConfig(SiteConfig.GetConfigFilePathFromCurrentContext()); //if (siteConfig.EnableReportMailer) { reportMailer = new ReportMailer( SiteConfig.GetConfigFilePathFromCurrentContext(), SiteConfig.GetContentPathFromCurrentContext(), SiteConfig.GetLogPathFromCurrentContext() ); reportMailerThread = new Thread(new ThreadStart(reportMailer.Run)); reportMailerThread.Name = "ReportMailer"; reportMailerThread.IsBackground = true; reportMailerThread.Start(); } if (siteConfig.EnablePop3) { mailToWeblog = new MailToWeblog( SiteConfig.GetConfigFilePathFromCurrentContext(), SiteConfig.GetContentPathFromCurrentContext(), SiteConfig.GetBinariesPathFromCurrentContext(), SiteConfig.GetLogPathFromCurrentContext(), new Uri(new Uri(SiteConfig.GetSiteConfig().Root), SiteConfig.GetSiteConfig().BinariesDirRelative) ); mailToWeblogThread = new Thread(new ThreadStart(mailToWeblog.Run)); mailToWeblogThread.Name = "MailToWeblog"; mailToWeblogThread.IsBackground = true; mailToWeblogThread.Start(); } if (siteConfig.EnableXSSUpstream) { xssUpstreamer = new XSSUpstreamer( SiteConfig.GetConfigFilePathFromCurrentContext(), SiteConfig.GetContentPathFromCurrentContext(), SiteConfig.GetLogPathFromCurrentContext() ); xssUpstreamerThread = new Thread(new ThreadStart(xssUpstreamer.Run)); xssUpstreamerThread.Name = "XSSUpstreamer"; xssUpstreamerThread.IsBackground = true; xssUpstreamerThread.Start(); } /* * if (siteConfig.EnableMovableTypeBlackList) * { * ReferralBlackListFactory.AddBlacklist(new MovableTypeBlacklist(), Path.Combine(SiteConfig.GetConfigPathFromCurrentContext(), "blacklist.txt")); * } */ if (siteConfig.EnableReferralUrlBlackList && siteConfig.ReferralUrlBlackList.Length != 0) { ReferralBlackListFactory.AddBlacklist(new ReferralUrlBlacklist(), siteConfig.ReferralUrlBlackList); } }
private void ClickThroughsBox_PreRender(object sender, EventArgs e) { Control root = contentPlaceHolder; SiteConfig siteConfig = SiteConfig.GetSiteConfig(); ILoggingDataService logService = LoggingDataServiceFactory.GetService(SiteConfig.GetLogPathFromCurrentContext()); IBlogDataService dataService = BlogDataServiceFactory.GetService(SiteConfig.GetContentPathFromCurrentContext(), logService); Dictionary <string, int> clickThroughUrls = new Dictionary <string, int>(); Dictionary <string, int> userAgents = new Dictionary <string, int>(); Dictionary <string, int> userDomains = new Dictionary <string, int>(); // get the user's local time DateTime utcTime = DateTime.UtcNow; DateTime localTime = siteConfig.GetConfiguredTimeZone().ToLocalTime(utcTime); if (Request.QueryString["date"] != null) { try { DateTime popUpTime = DateTime.ParseExact(Request.QueryString["date"], "yyyy-MM-dd", CultureInfo.InvariantCulture); utcTime = new DateTime(popUpTime.Year, popUpTime.Month, popUpTime.Day, utcTime.Hour, utcTime.Minute, utcTime.Second); localTime = new DateTime(popUpTime.Year, popUpTime.Month, popUpTime.Day, localTime.Hour, localTime.Minute, localTime.Second); } catch (FormatException ex) { ErrorTrace.Trace(System.Diagnostics.TraceLevel.Error, ex); } } LogDataItemCollection logItems = new LogDataItemCollection(); logItems.AddRange(logService.GetClickThroughsForDay(localTime)); if (siteConfig.AdjustDisplayTimeZone) { newtelligence.DasBlog.Util.WindowsTimeZone tz = siteConfig.GetConfiguredTimeZone(); TimeSpan ts = tz.GetUtcOffset(DateTime.UtcNow); int offset = ts.Hours; if (offset < 0) { logItems.AddRange(logService.GetClickThroughsForDay(localTime.AddDays(1))); } else { logItems.AddRange(logService.GetClickThroughsForDay(localTime.AddDays(-1))); } } foreach (LogDataItem log in logItems) { bool exclude = false; if (siteConfig.AdjustDisplayTimeZone) { if (siteConfig.GetConfiguredTimeZone().ToLocalTime(log.RequestedUtc).Date != localTime.Date) { exclude = true; } } if (!exclude) { string key = log.UrlRequested + "°" + log.UrlReferrer; if (!clickThroughUrls.ContainsKey(key)) { clickThroughUrls[key] = 0; } clickThroughUrls[key] = clickThroughUrls[key] + 1; if (!userAgents.ContainsKey(log.UserAgent)) { userAgents[log.UserAgent] = 0; } userAgents[log.UserAgent] = userAgents[log.UserAgent] + 1; if (!userDomains.ContainsKey(log.UserDomain)) { userDomains[log.UserDomain] = 0; } userDomains[log.UserDomain] = userDomains[log.UserDomain] + 1; } } root.Controls.Add(BuildStatisticsTable(GenerateSortedItemList(clickThroughUrls), resmgr.GetString("text_activity_click_throughs"), resmgr.GetString("text_activity_clicks"), new StatisticsBuilderCallback(this.BuildClickThroughsRow), dataService)); root.Controls.Add(BuildStatisticsTable(GenerateSortedItemList(userDomains), resmgr.GetString("text_activity_user_domains"), resmgr.GetString("text_activity_hits"), new StatisticsBuilderCallback(this.BuildUserDomainRow), dataService)); root.Controls.Add(BuildStatisticsTable(GenerateSortedItemList(userAgents), resmgr.GetString("text_activity_user_agent"), resmgr.GetString("text_activity_hits"), new StatisticsBuilderCallback(this.BuildAgentsRow), dataService)); DataBind(); }
private void ClickThroughsBox_PreRender(object sender, EventArgs e) { if (_robotDefinition == null) { return; } Control root = contentPlaceHolder; SiteConfig siteConfig = SiteConfig.GetSiteConfig(); ILoggingDataService logService = LoggingDataServiceFactory.GetService(SiteConfig.GetLogPathFromCurrentContext()); IBlogDataService dataService = BlogDataServiceFactory.GetService(SiteConfig.GetContentPathFromCurrentContext(), logService); Dictionary <string, int> clickThroughUrls = new Dictionary <string, int>(); Dictionary <string, int> userAgents = new Dictionary <string, int>(); Dictionary <string, int> userDomains = new Dictionary <string, int>(); DateTime serverTimeUtc = DateTime.Now.ToUniversalTime(); DateTime localTime = siteConfig.GetConfiguredTimeZone().ToLocalTime(serverTimeUtc); if (Request.QueryString["date"] != null) { try { DateTime popUpTime = DateTime.ParseExact(Request.QueryString["date"], "yyyy-MM-dd", CultureInfo.InvariantCulture); localTime = new DateTime(popUpTime.Year, popUpTime.Month, popUpTime.Day); serverTimeUtc = new DateTime(popUpTime.Year, popUpTime.Month, popUpTime.Day, 23, 59, 59).ToUniversalTime(); } catch (FormatException ex) { ErrorTrace.Trace(System.Diagnostics.TraceLevel.Error, ex); } } LogDataItemCollection logItems = new LogDataItemCollection(); logItems.AddRange(logService.GetClickThroughsForDay(serverTimeUtc)); // depending on the offset (positive or negative) we want to grab events in the // next or previos day to account for timezone difference. if (siteConfig.AdjustDisplayTimeZone) { newtelligence.DasBlog.Util.WindowsTimeZone tz = siteConfig.GetConfiguredTimeZone(); TimeSpan ts = tz.GetUtcOffset(DateTime.Now); int offset = ts.Hours; if (serverTimeUtc.Date != serverTimeUtc.AddHours(offset).Date) { logItems.AddRange(logService.GetClickThroughsForDay(serverTimeUtc.AddHours(offset))); } } foreach (LogDataItem log in logItems) { bool exclude = false; if (siteConfig.AdjustDisplayTimeZone) { if (siteConfig.GetConfiguredTimeZone().ToLocalTime(log.RequestedUtc).Date != localTime.Date) { exclude = true; } } if (_robotDefinition.IsRobot(log)) { exclude = true; } if (!exclude) { string key = log.UrlRequested + "°" + log.UrlReferrer; if (!clickThroughUrls.ContainsKey(key)) { clickThroughUrls[key] = 0; } clickThroughUrls[key] = clickThroughUrls[key] + 1; if (!userAgents.ContainsKey(log.UserAgent)) { userAgents[log.UserAgent] = 0; } userAgents[log.UserAgent] = userAgents[log.UserAgent] + 1; // AG User domain added. if (!userDomains.ContainsKey(log.UserDomain)) { userDomains[log.UserDomain] = 0; } userDomains[log.UserDomain] = userDomains[log.UserDomain] + 1; } } root.Controls.Add(BuildStatisticsTable(GenerateSortedItemList(clickThroughUrls), resmgr.GetString("text_activity_click_throughs"), resmgr.GetString("text_activity_clicks"), new StatisticsBuilderCallback(this.BuildClickThroughsRow), dataService)); root.Controls.Add(BuildStatisticsTable(GenerateSortedItemList(userDomains), resmgr.GetString("text_activity_user_domains"), resmgr.GetString("text_activity_hits"), new StatisticsBuilderCallback(this.BuildUserDomainRow), dataService)); root.Controls.Add(BuildStatisticsTable(GenerateSortedItemList(userAgents), resmgr.GetString("text_activity_user_agent"), resmgr.GetString("text_activity_hits"), new StatisticsBuilderCallback(this.BuildAgentsRow), dataService)); DataBind(); }
private void ReferrersBox_PreRender(object sender, EventArgs e) { Control root = contentPlaceHolder; SiteConfig siteConfig = SiteConfig.GetSiteConfig(); ILoggingDataService logService = LoggingDataServiceFactory.GetService(SiteConfig.GetLogPathFromCurrentContext()); string siteRoot = siteConfig.Root.ToUpper(); Dictionary <string, int> referrerUrls = new Dictionary <string, int>(); Dictionary <string, int> userAgents = new Dictionary <string, int>(); Dictionary <string, int> searchUrls = new Dictionary <string, int>(); Dictionary <string, int> userDomains = new Dictionary <string, int>(); // get the user's local time DateTime utcTime = DateTime.UtcNow; DateTime localTime = siteConfig.GetConfiguredTimeZone().ToLocalTime(utcTime); if (Request.QueryString["date"] != null) { try { DateTime popUpTime = DateTime.ParseExact(Request.QueryString["date"], "yyyy-MM-dd", CultureInfo.InvariantCulture); utcTime = new DateTime(popUpTime.Year, popUpTime.Month, popUpTime.Day, utcTime.Hour, utcTime.Minute, utcTime.Second); localTime = new DateTime(popUpTime.Year, popUpTime.Month, popUpTime.Day, localTime.Hour, localTime.Minute, localTime.Second); } catch (FormatException ex) { ErrorTrace.Trace(System.Diagnostics.TraceLevel.Error, ex); } } LogDataItemCollection logItems = new LogDataItemCollection(); logItems.AddRange(logService.GetReferralsForDay(localTime)); if (siteConfig.AdjustDisplayTimeZone) { newtelligence.DasBlog.Util.WindowsTimeZone tz = siteConfig.GetConfiguredTimeZone(); TimeSpan ts = tz.GetUtcOffset(DateTime.UtcNow); int offset = ts.Hours; if (offset < 0) { logItems.AddRange(logService.GetReferralsForDay(localTime.AddDays(1))); } else { logItems.AddRange(logService.GetReferralsForDay(localTime.AddDays(-1))); } } foreach (LogDataItem log in logItems) { bool exclude = false; if (log.UrlReferrer != null) { exclude = log.UrlReferrer.ToUpper().StartsWith(siteRoot); // Let Utils.ParseSearchString decide whether it's a search engine referrer. if (SiteUtilities.ParseSearchString(log.UrlReferrer) != null) { exclude = true; bool addToSearches = true; if (siteConfig.AdjustDisplayTimeZone) { if (siteConfig.GetConfiguredTimeZone().ToLocalTime(log.RequestedUtc).Date != localTime.Date) { addToSearches = false; } } if (addToSearches) { if (!searchUrls.ContainsKey(log.UrlReferrer)) { searchUrls[log.UrlReferrer] = 0; } searchUrls[log.UrlReferrer] = searchUrls[log.UrlReferrer] + 1; } } } if (siteConfig.AdjustDisplayTimeZone) { if (siteConfig.GetConfiguredTimeZone().ToLocalTime(log.RequestedUtc).Date != localTime.Date) { exclude = true; } } if (!exclude) { if (!referrerUrls.ContainsKey(log.UrlReferrer)) { referrerUrls[log.UrlReferrer] = 0; } referrerUrls[log.UrlReferrer] = referrerUrls[log.UrlReferrer] + 1; log.UserAgent = Server.HtmlEncode(log.UserAgent); if (!userAgents.ContainsKey(log.UserAgent)) { userAgents[log.UserAgent] = 0; } userAgents[log.UserAgent] = userAgents[log.UserAgent] + 1; if (!userDomains.ContainsKey(log.UserDomain)) { userDomains[log.UserDomain] = 0; } userDomains[log.UserDomain] = userDomains[log.UserDomain] + 1; } } Table rollupTable = new Table(); rollupTable.CssClass = "statsTableStyle"; TableRow row = new TableRow(); row.CssClass = "statsTableHeaderRowStyle"; row.Cells.Add(new TableCell()); row.Cells.Add(new TableCell()); row.Cells[0].CssClass = "statsTableHeaderColumnStyle"; row.Cells[1].CssClass = "statsTableHeaderNumColumnStyle"; row.Cells[0].Text = resmgr.GetString("text_activity_summary"); row.Cells[1].Text = resmgr.GetString("text_activity_hits"); rollupTable.Rows.Add(row); //SDH: I know this is gross, but I didn't want to totally rewrite this whole thing, I just wanted to get the rollup to work string total = String.Empty; Table internetSearchesTable = BuildStatisticsTable(GenerateSortedSearchStringItemList(searchUrls), resmgr.GetString("text_activity_internet_searches"), resmgr.GetString("text_activity_hits"), new StatisticsBuilderCallback(this.BuildSearchesRow), out total, null); BuildRow(total, rollupTable, resmgr.GetString("text_activity_internet_searches")); Table userDomainsTable = BuildStatisticsTable(GenerateSortedItemList(userDomains), resmgr.GetString("text_activity_user_domains"), resmgr.GetString("text_activity_hits"), new StatisticsBuilderCallback(this.BuildUserDomainRow), out total, null); Table userAgentsTable = BuildStatisticsTable(GenerateSortedItemList(userAgents), resmgr.GetString("text_activity_user_agent"), resmgr.GetString("text_activity_hits"), new StatisticsBuilderCallback(this.BuildAgentsRow), out total, null); Table referrerUrlsTable = BuildStatisticsTable(GenerateSortedItemList(referrerUrls), resmgr.GetString("text_activity_referrer_urls"), resmgr.GetString("text_activity_hits"), new StatisticsBuilderCallback(this.BuildReferrerRow), out total, null); BuildRow(total, rollupTable, resmgr.GetString("text_activity_referrer_urls")); root.Controls.Add(rollupTable); root.Controls.Add(internetSearchesTable); root.Controls.Add(referrerUrlsTable); root.Controls.Add(userDomainsTable); root.Controls.Add(userAgentsTable); //root.Controls.Add(BuildStatisticsTable(GenerateSortedItemList(userAgents), CONSTUSERAGENTSLIST, CONSTHITS, new StatisticsBuilderCallback(this.BuildAgentsRow), out total, null)); DataBind(); }
protected void Page_Load(object sender, EventArgs e) { SharedBasePage requestPage = this.Page as SharedBasePage; siteConfig = SiteConfig.GetSiteConfig(); resmgr = ApplicationResourceTable.Get(); imageUpload.Accept = "image/jpeg,image/gif,image/png"; editControl.Width = Unit.Percentage(99d); editControl.Height = Unit.Pixel(400); editControl.Text = "<p></p>"; // TODO: OmarS need to get rid of this isDHTMLEdit = true; editControl.SetLanguage(CultureInfo.CurrentUICulture.Name); editControl.SetTextDirection(requestPage.ReadingDirection); if (!requestPage.SiteConfig.EnableCrossposts) { gridCrossposts.Visible = false; labelCrosspost.Visible = false; } if (!SiteSecurity.IsValidContributor()) { Response.Redirect("~/FormatPage.aspx?path=SiteConfig/accessdenied.format.html"); } CrosspostInfoCollection crosspostSiteInfo = new CrosspostInfoCollection(); if (!IsPostBack) { foreach (CrosspostSite site in requestPage.SiteConfig.CrosspostSites) { CrosspostInfo ci = new CrosspostInfo(site); ci.TrackingUrlBase = SiteUtilities.GetCrosspostTrackingUrlBase(requestPage.SiteConfig); crosspostSiteInfo.Add(ci); } // set up categories foreach (CategoryCacheEntry category in requestPage.DataService.GetCategories()) { this.categoryList.Items.Add(category.Name); } // get the cultures CultureInfo[] cultures = CultureInfo.GetCultures(CultureTypes.AllCultures); // setup temp store for listitem items, for sorting List <ListItem> cultureList = new List <ListItem>(cultures.Length); foreach (CultureInfo ci in cultures) { string langName = (ci.NativeName != ci.EnglishName) ? ci.NativeName + " / " + ci.EnglishName : ci.NativeName; if (langName.Length > 55) { langName = langName.Substring(0, 55) + "..."; } cultureList.Add(new ListItem(langName, ci.Name)); } // setup the sort culture string rssCulture = requestPage.SiteConfig.RssLanguage; CultureInfo sortCulture; try { sortCulture = (rssCulture != null && rssCulture.Length > 0 ? new CultureInfo(rssCulture) : CultureInfo.CurrentCulture); } catch (ArgumentException) { // default to the culture of the server sortCulture = CultureInfo.CurrentCulture; } // sort the list cultureList.Sort(delegate(ListItem x, ListItem y) { // actual comparison return(String.Compare(x.Text, y.Text, true, sortCulture)); }); // add to the languages listbox ListItem[] cultureListItems = cultureList.ToArray(); listLanguages.Items.AddRange(cultureListItems); listLanguages.SelectedValue = ""; if (requestPage != null && requestPage.WeblogEntryId != "") { Session["newtelligence.DasBlog.Web.EditEntryBox.OriginalReferrer"] = Request.UrlReferrer; Entry entry = requestPage.DataService.GetEntryForEdit(requestPage.WeblogEntryId); if (entry != null) { CurrentEntry = entry; entryTitle.Text = entry.Title; entryAbstract.Text = entry.Description; textDate.SelectedDate = entry.CreatedLocalTime; if (isDHTMLEdit) { editControl.Text = entry.Content; } foreach (string s in entry.GetSplitCategories()) { categoryList.Items.FindByText(s).Selected = true; } this.checkBoxAllowComments.Checked = entry.AllowComments; this.checkBoxPublish.Checked = entry.IsPublic; this.checkBoxSyndicated.Checked = entry.Syndicated; // GeoRSS. this.txtLat.Text = String.Format(CultureInfo.InvariantCulture, "{0}", entry.Latitude); this.txtLong.Text = String.Format(CultureInfo.InvariantCulture, "{0}", entry.Longitude); if (entry.Attachments.Count > 0) { foreach (Attachment enclosure in entry.Attachments) { enclosure.Url = SiteUtilities.GetEnclosureLinkUrl(requestPage.SiteConfig, entry.EntryId, enclosure); } this.enclosureUpload.Visible = false; this.buttonRemove.Visible = true; this.labelEnclosureName.Visible = true; this.labelEnclosureName.Text = entry.Attachments[0].Name; } listLanguages.SelectedValue = entry.Language == null ? "" : entry.Language; // merge the crosspost config with the crosspost data foreach (CrosspostInfo cpi in crosspostSiteInfo) { foreach (Crosspost cp in entry.Crossposts) { if (cp.ProfileName == cpi.Site.ProfileName) { cpi.IsAlreadyPosted = true; cpi.TargetEntryId = cp.TargetEntryId; cpi.Categories = cp.Categories; break; } } } // if the entry is not public yet but opened for editing, then we can setup autosave. // (If the entry was already published publically and then autosave was used, the // entry's status would change to non-public and then no longer be accessible!) if (requestPage.SiteConfig.EnableAutoSave && !entry.IsPublic) { SetupAutoSave(); } if (requestPage.SiteConfig.EnableGoogleMaps) { AddGoogleMapsApi(); } } } else // This is a brand new entry, so setup the AutoSave script if it's enabled. { if (requestPage.SiteConfig.EnableAutoSave) { SetupAutoSave(); } if (requestPage.SiteConfig.EnableGoogleMaps) { AddGoogleMapsApi(); } txtLat.Text = String.Format(CultureInfo.InvariantCulture, "{0}", siteConfig.DefaultLatitude); txtLong.Text = String.Format(CultureInfo.InvariantCulture, "{0}", siteConfig.DefaultLongitude); } gridCrossposts.DataSource = crosspostSiteInfo; DataBind(); } }
private void EventlogBox_PreRender(object sender, EventArgs e) { SiteConfig siteConfig = SiteConfig.GetSiteConfig(); Control root = contentPlaceHolder; ILoggingDataService logService = LoggingDataServiceFactory.GetService(SiteConfig.GetLogPathFromCurrentContext()); Table table = new Table(); table.CssClass = "statsTableStyle"; TableRow row = new TableRow(); row.CssClass = "statsTableHeaderRowStyle"; row.Cells.Add(new TableCell()); row.Cells.Add(new TableCell()); row.Cells.Add(new TableCell()); row.Cells[0].CssClass = "statsTableDateColumnStyle"; row.Cells[1].CssClass = "statsTableNumColumnStyle"; row.Cells[2].CssClass = "statsTableColumnStyle"; row.Cells[0].Text = "<b>" + resmgr.GetString("text_time") + "</b>"; row.Cells[1].Text = "<b>" + resmgr.GetString("text_message_code") + "</b>"; row.Cells[2].Text = "<b>" + resmgr.GetString("text_message_text") + "</b>"; table.Rows.Add(row); // get the user's local time DateTime utcTime = DateTime.UtcNow; DateTime localTime = siteConfig.GetConfiguredTimeZone().ToLocalTime(utcTime); if (Request.QueryString["date"] != null) { try { DateTime popUpTime = DateTime.ParseExact(Request.QueryString["date"], "yyyy-MM-dd", CultureInfo.InvariantCulture); utcTime = new DateTime(popUpTime.Year, popUpTime.Month, popUpTime.Day, utcTime.Hour, utcTime.Minute, utcTime.Second); localTime = new DateTime(popUpTime.Year, popUpTime.Month, popUpTime.Day, localTime.Hour, localTime.Minute, localTime.Second); } catch (FormatException ex) { ErrorTrace.Trace(System.Diagnostics.TraceLevel.Error, ex); } } EventDataItemCollection logItems = new EventDataItemCollection(); logItems.AddRange(logService.GetEventsForDay(localTime)); if (siteConfig.AdjustDisplayTimeZone) { newtelligence.DasBlog.Util.WindowsTimeZone tz = siteConfig.GetConfiguredTimeZone(); TimeSpan ts = tz.GetUtcOffset(DateTime.UtcNow); int offset = ts.Hours; if (offset < 0) { logItems.AddRange(logService.GetEventsForDay(localTime.AddDays(1))); } else { logItems.AddRange(logService.GetEventsForDay(localTime.AddDays(-1))); } } EventDataItem[] sortedLogItems = logItems.ToSortedArray(); foreach (EventDataItem eventItem in sortedLogItems) { if (siteConfig.AdjustDisplayTimeZone) { if (siteConfig.GetConfiguredTimeZone().ToLocalTime(eventItem.EventTimeUtc).Date != localTime.Date) { continue; } } row = new TableRow(); row.CssClass = "statsTableRowStyle"; switch (eventItem.EventCode) { case ((int)EventCodes.Error): case ((int)EventCodes.PingbackServerError): case ((int)EventCodes.PingWeblogsError): case ((int)EventCodes.Pop3ServerError): case ((int)EventCodes.SmtpError): row.CssClass = "statsTableRowStyleError"; break; case ((int)EventCodes.SecurityFailure): row.CssClass = "statsTableRowStyleSecurityFailure"; break; case ((int)EventCodes.TrackbackBlocked): case ((int)EventCodes.ReferralBlocked): case ((int)EventCodes.ItemReferralBlocked): case ((int)EventCodes.CommentBlocked): case ((int)EventCodes.PingbackBlocked): row.CssClass = "statsTableRowStyleBlocked"; break; default: break; } row.Cells.Add(new TableCell()); row.Cells.Add(new TableCell()); row.Cells.Add(new TableCell()); row.Cells[0].CssClass = "statsTableDateColumnStyle"; row.Cells[1].CssClass = "statsTableNumColumnStyle"; row.Cells[2].CssClass = "statsTableColumnStyle"; if (siteConfig.AdjustDisplayTimeZone) { row.Cells[0].Text = siteConfig.GetConfiguredTimeZone().ToLocalTime(eventItem.EventTimeUtc).ToString("yyyy-MM-dd HH:mm:ss tt"); } else { row.Cells[0].Text = eventItem.EventTimeUtc.ToString("yyyy-MM-dd HH:mm:ss tt") + " UTC"; } row.Cells[1].Text = eventItem.EventCode.ToString(); row.Cells[2].Text = eventItem.HtmlMessage; table.Rows.Add(row); } root.Controls.Add(table); DataBind(); }
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(); }