Exemplo n.º 1
0
        public ActionResult NewsConfiguration(BackEndNewsConfigurationEdit backEndNewsConfigurationEdit)
        {
            NewsConfigurations newsConfigurations = new NewsConfigurations();
            int?result = newsConfigurations.Edit(backEndNewsConfigurationEdit.IsNewsActive,
                                                 backEndNewsConfigurationEdit.NewsPageId,
                                                 backEndNewsConfigurationEdit.NumberOfNewsInSummary,
                                                 backEndNewsConfigurationEdit.IsCommentAutoApproved);

            switch (result)
            {
            case 0:

                ModelState.AddResult(ViewData, ModelStateResult.Success, Resources.Strings.ItemSuccessfullyEdited);
                break;

            case 2:
                ModelState.AddResult(ViewData, ModelStateResult.Error, Resources.Strings.ItemDoesNotExist);
                ViewData.IsFormVisible(false);
                break;

            default:
                ModelState.AddResult(ViewData, ModelStateResult.Error, Resources.Strings.UnexpectedError);
                break;
            }

            return(View(backEndNewsConfigurationEdit));
        }
Exemplo n.º 2
0
        public ActionResult News(BackEndNewsList backEndNewsList)
        {
            News news = new News();

            backEndNewsList.NewsList = news.GetNews(ConfigurationManager.AppSettings["AdminLanguageCode"],
                                                    newsTitle: backEndNewsList.NewsTitle,
                                                    isActive: backEndNewsList.IsActive,
                                                    categoryId: backEndNewsList.CategoryId,
                                                    newsDateFrom: backEndNewsList.NewsDateFrom,
                                                    newsDateTo: backEndNewsList.NewsDateTo);
            if (backEndNewsList.NewsList.IsNull() || backEndNewsList.NewsList.Count == 0)
            {
                ModelState.AddResult(ViewData, ModelStateResult.Error, Resources.Strings.NoDataFound);
            }
            else
            {
                NewsConfiguration newsConfiguration = new NewsConfigurations().GetNewsConfiguration();
                if (newsConfiguration.IsNewsActive && newsConfiguration.NewsPageId.IsNotNull())
                {
                    CmsPages          cmsPages          = new CmsPages();
                    CmsPageActionlink cmsPageActionlink = cmsPages.GetCmsPageActionlink(newsConfiguration.NewsPageId, ConfigurationManager.AppSettings["AdminLanguageCode"]);
                    backEndNewsList.FrontEndUrl = cmsPageActionlink.Url;
                }
            }

            return(View(backEndNewsList));
        }
Exemplo n.º 3
0
        public ActionResult Summary(FrontEndCmsPage page)
        {
            News news = new News();

            NewsConfiguration newsConfiguration = new NewsConfigurations().GetNewsConfiguration();

            FrontEndNews frontEndNews = new FrontEndNews()
            {
                LanguageCode = page.LanguageCode,
                NewsList     = news
                               .GetNews(page.LanguageCode, isActive: true, isCategoryActive: true)
                               .OrderByDescending(i => i.NewsDate)
                               .ToBootstrapPagedList(0, newsConfiguration.NumberOfNewsInSummary),
                FilterCategoryId  = null,
                FilterNewsDate    = null,
                NewsId            = null,
                NewsDate          = null,
                UserName          = null,
                CategoryId        = null,
                CategoryName      = null,
                MainImageFilePath = null,
                NewsTitle         = null,
                NewsContent       = null
            };

            return(View(frontEndNews));
        }
Exemplo n.º 4
0
        private SyndicationFeed GetSyndicationFeed(string langCode)
        {
            Thread.CurrentThread.CurrentUICulture = CultureInfo.CreateSpecificCulture(langCode);

            SyndicationFeed result = new SyndicationFeed();

            NewsConfiguration newsConfiguration = new NewsConfigurations().GetNewsConfiguration();

            if (newsConfiguration.IsNewsActive && newsConfiguration.NewsPageId.IsNotNull())
            {
                CmsPages          cmsPages          = new CmsPages();
                CmsPageActionlink cmsPageActionlink = cmsPages.GetCmsPageActionlink(newsConfiguration.NewsPageId, langCode);

                News news = new News();

                List <SingleNews> newsList = news.GetNews(
                    langCode,
                    isActive: true,
                    isCategoryActive: true
                    ).OrderByDescending(i => i.NewsDate).Take(10).ToList();

                if (newsList.IsNotNull())
                {
                    GlobalConfiguration globalConfiguration = new GlobalConfigurations().GetGlobalConfiguration();

                    result = new SyndicationFeed(
                        Resources.Strings_News.NewsFeedTitle.Replace("{$SiteName}", globalConfiguration.SiteName),
                        Resources.Strings_News.NewsFeedDescription.Replace("{$SiteName}", globalConfiguration.SiteName),
                        Request.Url,
                        Guid.NewGuid().ToString(),
                        DateTime.Now);

                    List <SyndicationItem> items = new List <SyndicationItem>();

                    SyndicationItem item;
                    foreach (SingleNews singleNews in newsList)
                    {
                        item = new SyndicationItem(
                            singleNews.NewsTitle,
                            singleNews.NewsContent.StripHtml().TrimToMaxLength(255, "..."),
                            new Uri(Request.Url.Scheme + "://" + Request.Url.Authority + cmsPageActionlink.Url + singleNews.NewsId + "-" + singleNews.NewsTitle.ToFriendlyUrlDashedString() + "/"),
                            singleNews.NewsId.ToString(),
                            singleNews.NewsDate);
                        items.Add(item);
                    }

                    result.Items = items;
                }
            }

            return(result);
        }
Exemplo n.º 5
0
        public ActionResult NewsConfiguration()
        {
            BackEndNewsConfigurationEdit backEndNewsConfigurationEdit = new BackEndNewsConfigurationEdit();

            NewsConfiguration newsConfiguration = new NewsConfigurations().GetNewsConfiguration();

            if (newsConfiguration.IsNotNull())
            {
                backEndNewsConfigurationEdit.IsNewsActive          = newsConfiguration.IsNewsActive;
                backEndNewsConfigurationEdit.NewsPageId            = newsConfiguration.NewsPageId;
                backEndNewsConfigurationEdit.NumberOfNewsInSummary = newsConfiguration.NumberOfNewsInSummary;
                backEndNewsConfigurationEdit.IsCommentAutoApproved = newsConfiguration.IsCommentAutoApproved;
            }
            else
            {
                ModelState.AddResult(ViewData, ModelStateResult.Error, Resources.Strings.ItemDoesNotExist);
                ViewData.IsFormVisible(false);
            }

            return(View(backEndNewsConfigurationEdit));
        }
Exemplo n.º 6
0
        public ActionResult Index(FrontEndCmsPage page, FrontEndNews frontEndNews)
        {
            News news = new News();

            if (page.Parameter.IsNotEmptyOrWhiteSpace())
            {
                SingleNews singleNews = news.GetSingleNews(page.Parameter.Split('-').FirstOrDefault().ConvertTo <int?>(null, true), page.LanguageCode);

                if (singleNews.IsNotNull())
                {
                    NewsComments newsComments = new NewsComments();

                    frontEndNews.LanguageCode      = page.LanguageCode;
                    frontEndNews.NewsList          = null;
                    frontEndNews.FilterCategoryId  = null;
                    frontEndNews.FilterNewsDate    = null;
                    frontEndNews.NewsId            = singleNews.NewsId;
                    frontEndNews.NewsDate          = singleNews.NewsDate;
                    frontEndNews.UserName          = singleNews.UserName;
                    frontEndNews.CategoryId        = singleNews.CategoryId;
                    frontEndNews.CategoryName      = singleNews.CategoryName;
                    frontEndNews.MainImageFilePath = singleNews.MainImageFilePath;
                    frontEndNews.NewsTitle         = singleNews.NewsTitle;
                    frontEndNews.NewsContent       = singleNews.NewsContent;
                    frontEndNews.NewsCommentList   = (newsComments.IsNotNull() ? newsComments.GetNewsComments(singleNews.NewsId, true) : null);
                }
                else
                {
                    frontEndNews = null;
                }
            }

            if (ModelState.IsValidOrRefresh() && frontEndNews.IsNotNull())
            {
                NewsConfiguration newsConfiguration = new NewsConfigurations().GetNewsConfiguration();

                NewsComments newsComments = new NewsComments();
                int?         result       = newsComments.Add((int)frontEndNews.NewsId,
                                                             newsConfiguration.IsCommentAutoApproved,
                                                             frontEndNews.NewsComment,
                                                             DateTime.Now,
                                                             FrontEndSessions.CurrentSubscription.Email);
                switch (result)
                {
                case 0:
                    ModelState.AddResult(ViewData, ModelStateResult.Success, Resources.Strings_News.CommentAdded);
                    ViewData.IsFormVisible(false);

                    GlobalConfiguration globalConfiguration = new GlobalConfigurations().GetGlobalConfiguration();

                    CultureInfoHelper.ForceBackEndLanguage();

                    string subject = Resources.Strings_News.EmailSubject.Replace("{$Url}", globalConfiguration.DomainName.ToUrl());
                    string body    = Resources.Strings_News.EmailBody
                                     .Replace("{$Url}", globalConfiguration.DomainName.ToUrl())
                                     .Replace("{$subscriptionEmail}", FrontEndSessions.CurrentSubscription.Email)
                                     .Replace("{$comment}", frontEndNews.NewsComment)
                                     .Replace("{$ipAddress}", Request.UserHostAddress);

                    CultureInfoHelper.RestoreFrontEndLanguage();

                    EmailHelper email = new EmailHelper(globalConfiguration.NotificationEmail, globalConfiguration.NotificationEmail, subject, body);
                    email.Send();
                    break;

                default:
                    ModelState.AddResult(ViewData, ModelStateResult.Error, Resources.Strings.UnexpectedError + " (Database)");
                    break;
                }
            }

            return(View(frontEndNews));
        }