//Главный пост public void OriginalClick(DateTime date, bool isOriginal) { var apod = MainApodObjectOperations.Get(date); if (apod != null) { Post_Id.Value = apod.Id.ToString(); day.InnerText = apod.Date().ToString("dd"); mounth.InnerText = apod.Date().ToString("MMM", CultureInfo.GetCultureInfo("ru-ru")); years.InnerText = apod.Date().ToString("yyyy"); title.InnerText = apod.Title; Text.InnerText = isOriginal ? apod.Explanation : apod.ExplanationRu; if (apod.MediaType != "image") { video.Attributes["src"] = ApodHelper.CutVideoUrl(apod.Url); Picture.Visible = false; } else { Picture.Attributes["src"] = apod.Url; video.Visible = false; } //увеличиваем количество просмотров apod.ViewsCount++; MainApodObjectOperations.Update(apod); AddPostComments(apod); } }
protected void Page_Load(object sender, EventArgs e) { var today = ApodHelper.TodayDate(); //массивы разметки var arrayImage = new[] { sliderImage1, sliderImage2, sliderImage3 }; var arrayReferenceSlider = new[] { referenceSlider1, referenceSlider2, referenceSlider3 }; var arrayTitleImage = new[] { TitleImage1, TitleImage2, TitleImage3 }; var arrayDesctipt = new[] { DsrImage1, DsrImage2, DsrImage3 }; //Заполняем слайдер 3 изображениями -сегодня-вчера-позавчера for (int i = 0; i < 3; i++) { var date = today.AddDays(-i).Date; arrayImage[i].Attributes["src"] = ApodEmployment.GetImageUrl(date); arrayReferenceSlider[i].Attributes["href"] = ReferenceDetailPage + date.ToString("yyyy-MM-dd"); arrayTitleImage[i].InnerText = ApodEmployment.GetTitleApod(date); arrayDesctipt[i].InnerText = date.ToString("dd.MM.yyyy"); } //Популярные публикации var mostPopularList = ApodEmployment.GetMostPopularOnHome(); var arrayMostPopular = new[] { MostPopular, MostPopular2 }; var arrayMostPopular2Date = new[] { MostPopularDate, MostPopular2Date }; for (int i = 0; i < 2; i++) { arrayMostPopular[i].Attributes["href"] = ReferenceDetailPage + mostPopularList.ElementAt(i).Value.ToString("yyyy-MM-dd"); arrayMostPopular[i].InnerText = mostPopularList.ElementAt(i).Key; arrayMostPopular2Date[i].InnerText = mostPopularList.ElementAt(i).Value.ToString("dddd, d MMMM yyyy г.", CultureInfo.GetCultureInfo("ru-ru")); } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { var dateStr = Request.Params["date"]; var original = Request.Params["original"]; var isOriginal = false; Boolean.TryParse(original, out isOriginal); var date = ApodHelper.TodayDate(); if (!string.IsNullOrEmpty(dateStr)) { DateTime.TryParse(dateStr, out date); } //ссылка на оригинал this.referece = string.Format("ApodDetail.aspx?date={0}&original=", date.ToString("yyyy-MM-dd")); //Основной пост OriginalClick(date, isOriginal); //Заполяем панель популярных постов MostPopular(); //Заполняем панель "Случайного" контента RadmomeContent(); } }
private void SetDates() { //Устанавливаем даты var minDateStr = Request.Params["minDate"]; var maxDateStr = Request.Params["maxDate"]; var archiveDateSrt = Request.Params["archiveDate"]; if (!string.IsNullOrEmpty(archiveDateSrt)) { try { var archiveDate = ParseDateTime(archiveDateSrt); if (archiveDate != new DateTime()) { _ArchiveDate = new DateTime(archiveDate.Year, archiveDate.Month, 1); if (string.IsNullOrEmpty(minDateStr) && string.IsNullOrEmpty(maxDateStr)) { SetMaxArchiveDate(archiveDate); _MinDate = _MaxDate.AddDays(-_CountBlogPost); return; } } } catch (Exception) { } } try { _MaxDate = ParseDateTime(maxDateStr); } catch (Exception) { if (_ArchiveDate != new DateTime()) { SetMaxArchiveDate(_ArchiveDate); } _MaxDate = ApodHelper.TodayDate(); } try { _MinDate = ParseDateTime(minDateStr); } catch (Exception) { _MinDate = _MaxDate.AddDays(-_CountBlogPost); } }
/// <summary> /// Основное хранилище публикаций /// </summary> public void MainPostStore() { //Посты var listApods = ApodEmployment.GetApodsUnderDate(_MinDate, _CountBlogPost, _ArchiveDate); foreach (var apod in listApods) { var commentsCount = MainApodObjectOperations.GetCountComments(apod); string HTMLPoststring = string.Format("<div class=\"clear10\"></div>" + " <div class=\"post-box\">" + //дата " <div class=\"date-box alignleft_block\"> <div> <div></div>" + " <span class=\"line1\">{0}</span>" + "<span class=\"line2\">{1}</span>" + "<span class=\"line3\">{2}</span> </div></div>" + //заголовок "<h1 class=\"alignleft_block margin-left-20 post-title heading\">{3}</h1>" + //контент "<div class=\"alignleft_block post-content margin-left-20 margin_top10\">" + "{6} <div class=\"clear10\"></div>" + //Описание "<p>{4}</p></div><div class=\"clear10\"></div>" + //ссылка на публикацию "<a href=\"ApodDetail.aspx?date={5}\" class=\"alignright_block button\">Открыть публикацию</a>" + "<div class=\"clear20\"></div>" + "<div class=\"info-bar alignleft_block\"> <span class=\"tags\">Количество просмотров: {7}</span>" + "<span class=\"comments\">({8}) Комментариев </span> </div> </div>", apod.Date().ToString("dd"), apod.Date().ToString("MMM", CultureInfo.GetCultureInfo("ru-ru")), apod.Date().ToString("yyyy"), apod.Title, apod.ExplanationRu.Length > 255 ? apod.ExplanationRu.Substring(0, 255) + "..." : apod.ExplanationRu, apod.Date().ToString("yyyy-MM-dd"), apod.MediaType.Equals("video") ? string.Format( "<iframe src=\"{0}\" width=\"570\" height=\"360\" frameborder=\"0\" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe> ", ApodHelper.CutVideoUrl(apod.Url)) : string.Format("<img src=\"{0}\" width=\"570\" height=\"270\" alt=\"\" />", apod.Url), apod.ViewsCount, commentsCount); postStore.Controls.Add(new LiteralControl(HTMLPoststring)); } _MinDate = listApods.Count > 0? listApods.Last().Date() : _MinDate; _MaxDate = listApods.Count > 0 ? listApods.First().Date() : _MaxDate; //навигация var nextMaxDate = _MinDate.Date.AddDays(-1); var nextMinDate = nextMaxDate.AddDays(-_CountBlogPost); var prevMaxDate = _MaxDate.Date.AddDays(_CountBlogPost + 1); var prevMinDate = prevMaxDate.AddDays(-_CountBlogPost); var maximumAllowableDate = _ArchiveDate == new DateTime() ? ApodHelper.TodayDate() : new DateTime(_ArchiveDate.Year, _ArchiveDate.Month, DateTime.DaysInMonth(_ArchiveDate.Year, _ArchiveDate.Month)); var buttonPoststring = string.Format("<div class=\"clear10\"></div><div class=\"paging-wrapper blog gray-frame\">{0}{1}</div>{2}", prevMinDate < maximumAllowableDate || (prevMinDate > maximumAllowableDate && _MaxDate < maximumAllowableDate) ? string.Format( "<a href=\"Blog.aspx?minDate={0}&maxDate={1}{2}\" ><span class=\"next\"> </span></a>", prevMinDate.ToString("yyyyMMdd"), (prevMinDate > maximumAllowableDate && _MaxDate <= maximumAllowableDate)? maximumAllowableDate.ToString("yyyyMMdd") : prevMaxDate.ToString("yyyyMMdd"), _ArchiveDate != new DateTime() ? "&archiveDate=" + _ArchiveDate.ToString("yyyyMMdd") : "") : "", nextMinDate >= _ArchiveDate || (nextMinDate <_ArchiveDate && _MinDate> _ArchiveDate) ? string.Format( " <a href=\"Blog.aspx?minDate={0}&maxDate={1}{2}\"><span class=\"prev\"> </span></a> ", (nextMinDate < _ArchiveDate && _MinDate >= _ArchiveDate)? _ArchiveDate.ToString("yyyyMMdd"): nextMinDate.ToString("yyyyMMdd"), nextMaxDate.ToString("yyyyMMdd"), _ArchiveDate != new DateTime() ? "&archiveDate=" + _ArchiveDate.ToString("yyyyMMdd") : "") : "", _ArchiveDate != new DateTime() ? "<div class=\"clear10\"></div><div class=\"info-bar alignleft_block\"><a href=\"Blog.aspx\"> Сбросить фильтр </a></div>" : ""); postStore.Controls.Add(new LiteralControl(buttonPoststring)); }