Beispiel #1
0
 public ActionResult AddNewRss(AddRssModel model)
 {
     try
     {
         if (string.IsNullOrEmpty(model.Rss))
         {
             return Json(new { error = ViewResource.SharedStrings.CantBeEmpty });
         }
         if (DbHelper.FindRss("Url", model.Rss).Count != 0)
         {
             return Json(new { error = ViewResource.SharedStrings.AlreadyExists });
         }
         var rss = new RssItem(model.Rss);
         dbHelper.Configure();
         var dbRss = new DbRss {Url = model.Rss, Title = rss.Channel.Title};
         DbHelper.InsertRss(dbRss);
         return Json(new { url = Url.Action("Index", "Home") });
     }
     catch (Exception)
     {
         return Json(new { error = ViewResource.SharedStrings.CheckCorrect } );
     }
 }
Beispiel #2
0
        private RssItem GetRandomRss()
        {
            dbHelper.Configure();
            IList<DbRss> allRss = DbHelper.GetAllRss();
            if ((allRss == null) || (allRss.Count == 0))
            {
                return null;
            }

            var rand = new Random();
            int index = rand.Next(allRss.Count);

            CurrentRss = allRss[index].IdRss;
            var rss = new RssItem(allRss[index].Url);

            return rss;
        }
Beispiel #3
0
        public ActionResult Index(string value, string opendRss)
        {
            try
            {
                var user = CheckInputUser();
                RssItem rss;

                ViewData["Message"] = ViewResource.SharedStrings.Welcome + ", " + user + "!";

                int counter = 0;
                if (UsersController.CurrentUser == null)
                {
                    if (string.IsNullOrEmpty(opendRss))
                    {
                        rss = GetRandomRss();

                        var allRss = DbHelper.GetAllRss();

                        if ((allRss != null) && (allRss.Count != 0))
                        {
                            foreach (var dbRss in allRss)
                            {
                                ViewData["AllRssTitle" + counter] = dbRss.Title;
                                ViewData["AllRssUrl" + counter] = dbRss.Url;
                                counter++;
                            }
                            ViewData["AllCounter"] = counter;
                        }
                    }
                    else
                    {
                        rss = new RssItem(opendRss);
                        CurrentRss = DbHelper.FindRss("Url", opendRss)[0].IdRss;
                    }
                }
                else
                {
                    dbHelper.Configure();
                    if (string.IsNullOrEmpty(opendRss))
                    {
                        var allUserRss = DbHelper.GetAllUserRss(UsersController.CurrentUser.Id);

                        if ((allUserRss != null) && (allUserRss.Count != 0))
                        {
                            foreach (var dbRss in
                                allUserRss.Select(idRss => DbHelper.FindRss("IdRss", idRss)).Where(
                                    dbRss => ((dbRss != null) && (dbRss.Count != 0)) && (dbRss[0] != null)))
                            {
                                ViewData["RssTitle" + counter] = dbRss[0].Title;
                                ViewData["RssUrl" + counter] = dbRss[0].Url;
                                counter++;
                            }
                            ViewData["Counter"] = counter;
                        }

                        var allRss = DbHelper.GetAllRss();
                        counter = 0;

                        if ((allRss != null) && (allRss.Count != 0))
                        {
                            foreach (var dbRss in allRss)
                            {
                                ViewData["AllRssTitle" + counter] = dbRss.Title;
                                ViewData["AllRssUrl" + counter] = dbRss.Url;
                                counter++;
                            }
                            ViewData["AllCounter"] = counter;
                        }
                        return View();
                    }
                    rss = new RssItem(opendRss);
                    CurrentRss = DbHelper.FindRss("Url", opendRss)[0].IdRss;
                }

                if (rss == null)
                {
                    return View();
                }

                counter = 0;
                if (!string.IsNullOrEmpty(rss.ImageChanel.ImgUrl))
                {
                    ViewData["Img"] = rss.ImageChanel.ImgUrl;
                }
                ViewData["Title"] = rss.Channel.Title;
                ViewData["Link"] = rss.Channel.Link;
                ViewData["Copy"] = rss.Channel.Copyright;
                foreach (var article in rss.Articles)
                {
                    ViewData["ItemTitle" + counter] = article.Title;
                    ViewData["Description" + counter] = article.Description;
                    ViewData["PubDate" + counter] = article.PubDate;
                    ViewData["Url" + counter] = article.Link;
                    counter++;
                }
                ViewData["Counter"] = counter;

                if (value != null)
                {
                    ViewData["Suc"] = value;
                }
            }
            catch (Exception e)
            {
                ViewData["Error"] = e.Message;
            }
            return View();
        }