Beispiel #1
0
        public ActionResult ReloadLikeDislikePartial(string Id)
        {
            var newsId    = Convert.ToInt64(new Md5Ecryption().DecryptPrimaryKey(Id, true));
            var newsModel = new NewsDataFactory().GetNewsById(newsId);

            return(PartialView("_LikeOrDislikePartial", newsModel));
        }
Beispiel #2
0
        public ActionResult About()
        {
            var generalNews =
                new NewsDataFactory().GetTopFiveMostRecentNewsByCategory(NewsCategoryEnum.General.ToString());

            return(View(generalNews));
        }
Beispiel #3
0
        public ActionResult ReloadCompleteView(string Id)
        {
            var newsId    = Convert.ToInt64(new Md5Ecryption().DecryptPrimaryKey(Id, true));
            var newsModel = new NewsDataFactory().GetNewsById(newsId);

            return(PartialView("Comment", newsModel));
        }
Beispiel #4
0
        // GET: News
        public ActionResult Index()
        {
            var news      = new NewsDataFactory().GetAllNews();
            var newsOrder = news.OrderByDescending(n => n.DateCreated);

            return(View(newsOrder));
        }
Beispiel #5
0
        public ActionResult ViewNewsDetails(string Id)
        {
            var newsId = Convert.ToInt64(new Md5Ecryption().DecryptPrimaryKey(Id, true));

            if (ModelState.IsValid)
            {
                var news       = new NewsDataFactory().GetNewsById(Convert.ToInt64(newsId));
                var newsUpdate = _db.News.Find(newsId);
                newsUpdate.NewsView         = newsUpdate.NewsView + 1;
                _db.Entry(newsUpdate).State = EntityState.Modified;
                _db.SaveChanges();
                return(View("ViewNewsDetails", news));
            }
            var newsToRedirect = _db.News.Find(newsId);

            return(View(newsToRedirect));
        }
Beispiel #6
0
        public ActionResult LikeOrDislikeANews(long Id, string actionType)
        {
            NewsStatus status = new NewsStatus();

            if (ModelState.IsValid)
            {
                var loggedinuser = Session["bhuinfologgedinuser"] as AppUser;
                var newsModel    = new NewsDataFactory().GetNewsById(Id);
                var news         = _db.News.Find(Id);
                if (actionType == NewsActionType.Like.ToString())
                {
                    news.Likes    = news.Likes + 1;
                    status.NewsId = news.NewsId;
                    if (loggedinuser != null)
                    {
                        status.LoggedInUserId = loggedinuser.AppUserId;
                    }
                    status.Status = NewsActionType.Like.ToString();
                }
                else if (actionType == NewsActionType.Dislike.ToString())
                {
                    news.Dislikes = news.Dislikes + 1;
                    status.NewsId = news.NewsId;
                    if (loggedinuser != null)
                    {
                        status.LoggedInUserId = loggedinuser.AppUserId;
                    }
                    status.Status = NewsActionType.Dislike.ToString();
                }
                _db.Entry(news).State = EntityState.Modified;
                _db.SaveChanges();
                _dbe.NewsStatuses.Add(status);
                _dbe.SaveChanges();
                return(PartialView("_LikeOrDislikePartial", newsModel));
            }
            var newsToRedirect = _db.News.Find(Id);

            return(View("ViewNewsDetails", newsToRedirect));
        }
Beispiel #7
0
        public ActionResult Index()
        {
            var news = new NewsDataFactory().GetTopNthMostRecentNews(5);

            return(View(news));
        }
Beispiel #8
0
        public ActionResult GeneralNews()
        {
            var news = new NewsDataFactory().GetTopNthMostRecentNews(5);

            return(View("General", news));
        }
Beispiel #9
0
        public ActionResult FashionNews()
        {
            var news = new NewsDataFactory().GetTopNthMostRecentNews(5);

            return(View("Fashion", news));
        }
Beispiel #10
0
        public ActionResult SportsNews()
        {
            var news = new NewsDataFactory().GetTopNthMostRecentNews(5);

            return(View("Sports", news));
        }
Beispiel #11
0
        public ActionResult LikeOrDislikeANews(long Id, string actionType)
        {
            var        loggedinuser = Session["bhuinfologgedinuser"] as AppUser;
            bool       checkLike    = false;
            bool       checkDislike = false;
            NewsStatus status       = new NewsStatus();

            if (ModelState.IsValid)
            {
                var allNewsStatus = _dbe.NewsStatuses.ToList();
                if (loggedinuser != null)
                {
                    var checkLikeNewsStatus =
                        allNewsStatus.SingleOrDefault(
                            n =>
                            n.LoggedInUserId == loggedinuser.AppUserId &&
                            n.Status == NewsActionType.Like.ToString() && n.NewsId == Id);
                    var checkDisLikeNewsStatus =
                        allNewsStatus.SingleOrDefault(
                            n =>
                            n.LoggedInUserId == loggedinuser.AppUserId &&
                            n.Status == NewsActionType.Dislike.ToString() && n.NewsId == Id);

                    var newsModel = new NewsDataFactory().GetNewsById(Id);
                    var news      = _db.News.Find(Id);
                    //compare for like status
                    if (actionType == NewsActionType.Like.ToString() && checkLikeNewsStatus != null)
                    {
                    }
                    if (actionType == NewsActionType.Like.ToString() && (checkLikeNewsStatus == null && checkDisLikeNewsStatus == null))
                    {
                        news.Likes            = news.Likes + 1;
                        status.NewsId         = news.NewsId;
                        status.LoggedInUserId = loggedinuser.AppUserId;
                        status.Status         = NewsActionType.Like.ToString();
                    }
                    if (actionType == NewsActionType.Dislike.ToString() && checkLikeNewsStatus != null)
                    {
                        news.Dislikes         = news.Dislikes + 1;
                        news.Likes            = news.Likes - 1;
                        status.NewsId         = news.NewsId;
                        status.LoggedInUserId = loggedinuser.AppUserId;
                        status.Status         = NewsActionType.Dislike.ToString();
                        checkDislike          = true;
                    }
                    if (actionType == NewsActionType.Dislike.ToString() && (checkLikeNewsStatus == null && checkDisLikeNewsStatus == null))
                    {
                        news.Dislikes         = news.Dislikes + 1;
                        status.NewsId         = news.NewsId;
                        status.LoggedInUserId = loggedinuser.AppUserId;
                        status.Status         = NewsActionType.Dislike.ToString();
                    }


                    //compare for dislike status
                    if (actionType == NewsActionType.Like.ToString() && checkDisLikeNewsStatus != null)
                    {
                        news.Dislikes         = news.Dislikes - 1;
                        news.Likes            = news.Likes + 1;
                        status.NewsId         = news.NewsId;
                        status.LoggedInUserId = loggedinuser.AppUserId;
                        status.Status         = NewsActionType.Like.ToString();
                        checkLike             = true;
                    }
                    if (actionType == NewsActionType.Dislike.ToString() && checkDisLikeNewsStatus != null)
                    {
                    }
                    if (checkDislike)
                    {
                        _dbe.NewsStatuses.Remove(checkLikeNewsStatus);
                        _dbe.SaveChanges();
                    }
                    if (checkLike)
                    {
                        _dbe.NewsStatuses.Remove(checkDisLikeNewsStatus);
                        _dbe.SaveChanges();
                    }

                    _db.Entry(news).State = EntityState.Modified;
                    _db.SaveChanges();
                    _dbe.NewsStatuses.Add(status);
                    _dbe.SaveChanges();
                    return(PartialView("_LikeOrDislikePartial", newsModel));
                }
            }
            var newsToRedirect = _db.News.Find(Id);

            return(View("ViewNewsDetails", newsToRedirect));
        }