public ActionResult SubmitLikeDislike(int videoId, bool isLike) { if (!User.Identity.IsAuthenticated) { return(Json(new { message = "redirect" }, JsonRequestBehavior.AllowGet)); } using (treca_aplikacija_model db = new treca_aplikacija_model()) { UserViewModel user = ApplicationUtils.FindUserByUsername(User.Identity.GetApplicationUserUsername()); try { ApplicationUtils.RemoveLikeDislike(true, videoId, user.users_id); } catch (Exception) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } video_like_dislike newVld = new video_like_dislike(); newVld.users_id = (byte)user.users_id; newVld.video_id = (byte)videoId; newVld.is_like = isLike == true ? true : false; db.video_like_dislike.Add(newVld); db.SaveChanges(); } return(Json(new { Success = true }, JsonRequestBehavior.AllowGet)); }
public ActionResult Create(string Content, int videoId) { if (User.Identity.IsAuthenticated == false) { return(Json(new { message = "redirect" }, JsonRequestBehavior.AllowGet)); } treca_aplikacija_model db = new treca_aplikacija_model(); comment comment = new comment(); comment.comment_video_id = (byte)videoId; string LoggedInUserName = User.Identity.GetApplicationUserUsername(); foreach (var x in db.users) { if (x.user_username.Equals(LoggedInUserName)) { comment.comment_user_id = x.users_id; } } comment.comment_created = DateTime.Now; comment.comment_content = Content; db.comments.Add(comment); db.SaveChanges(); //? UserViewModel CommentOwner = ApplicationUtils.CreateUserViewModelDTO(db.users.Find(comment.comment_user_id)); CommentViewModel Comment = ApplicationUtils.CreateCommentViewModelDTO(db.comments.Find(comment.comment_id)); return(Json(new { User = CommentOwner, Comment = Comment }, JsonRequestBehavior.AllowGet)); }
public ActionResult Create() { treca_aplikacija_model db = new treca_aplikacija_model(); ViewBag.video_user_id = new SelectList(db.users, "users_id", "user_username"); return(View()); }
public ActionResult DeleteConfirmed(byte id) { using (treca_aplikacija_model db = new treca_aplikacija_model()) { video video = db.videos.Find(id); List <video_like_dislike> vld = db.video_like_dislike.Where(x => x.video_id == id).ToList(); foreach (var x in vld) { db.video_like_dislike.Remove(x); db.SaveChanges(); } List <comment> vc = db.comments.Where(x => x.comment_video_id == id).ToList(); foreach (var x in vc) { db.comments.Remove(x); db.SaveChanges(); } db.videos.Remove(video); db.SaveChanges(); return(RedirectToAction("Index")); } }
public ActionResult Edit(string username) { if (!User.Identity.GetApplicationUserUsername().Equals(username) || User.IsInRole("Admin")) { return(RedirectToAction("Unauthorized", "Account")); } using (treca_aplikacija_model db = new treca_aplikacija_model()) { //string loggedInUser = User.Identity.GetApplicationUserUsername(); foreach (var x in db.users.ToList()) { if (x.user_username.Equals(username)) { EditAccoutViewModel eavm = new EditAccoutViewModel(); var user = UserManager.FindByEmail(x.user_email); eavm.Id = user.Id; eavm.Username = x.user_username; eavm.Password = x.user_password; eavm.ConfirmPassword = x.user_password; eavm.OldPassword = x.user_password; eavm.Email = x.user_email; return(View(eavm)); } } } return(View()); }
public static void RemoveLikeDislike(bool isVideo, int entityId, int userId) { using (treca_aplikacija_model db = new treca_aplikacija_model()) { if (isVideo) { foreach (var vid in db.video_like_dislike.ToList()) { if (vid.video_id == entityId && vid.users_id == userId) { db.video_like_dislike.Remove(vid); db.SaveChanges(); } } } else { foreach (var com in db.comment_like_dislike.ToList()) { if (com.comment_id == entityId && com.users_id == userId) { db.comment_like_dislike.Remove(com); db.SaveChanges(); } } } } }
public ActionResult DeleteConfirmed(string username) { //Delete applicationUser //Delete databaserUser Debug.WriteLine(username); int userId = ApplicationUtils.FindUserByUsername(username).users_id; string loggedInUserUsername = User.Identity.GetApplicationUserUsername(); if (loggedInUserUsername.Equals(username)) { AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie); UserManager.Delete(UserManager.FindByEmail((ApplicationUtils.FindUserByUsername(username)).user_email)); } using (treca_aplikacija_model db = new treca_aplikacija_model()) { db.Database.ExecuteSqlCommand("DELETE FROM comment_like_dislike WHERE users_id = {0}", userId); db.Database.ExecuteSqlCommand("DELETE FROM video_like_dislike WHERE users_id = {0}", userId); db.Database.ExecuteSqlCommand("DELETE FROM users_role WHERE users_id = {0}", userId); db.Database.ExecuteSqlCommand("DELETE FROM users_following WHERE user_following = {0} or user_followed = {1}", userId, userId); db.Database.ExecuteSqlCommand("DELETE FROM comment WHERE comment_user_id = {0}", userId); db.Database.ExecuteSqlCommand("DELETE FROM comment WHERE comment_video_id IN (SELECT video_id FROM video WHERE video_user_id = {0})", userId); //db.Database.ExecuteSqlCommand("DELETE FROM comment WHERE video_id = SELEC", userId); db.Database.ExecuteSqlCommand("DELETE FROM video WHERE video_user_id = {0}", userId); db.Database.ExecuteSqlCommand("DELETE FROM users WHERE users_id = {0}", userId); } return(RedirectToAction("Index", "Video")); }
public ActionResult Unban(int id) { using (treca_aplikacija_model db = new treca_aplikacija_model()) { video v = db.videos.Find(id); v.video_banned = false; db.SaveChanges(); return(Json(new { message = "success" }, JsonRequestBehavior.AllowGet)); } }
public ActionResult AddView(int id) { using (treca_aplikacija_model db = new treca_aplikacija_model()) { video v = db.videos.Find(id); v.video_views = (byte)((int)v.video_views + 1); db.SaveChanges(); return(Json(new { message = "success" }, JsonRequestBehavior.AllowGet)); } }
public ActionResult BanConfirmed(int id) { using (treca_aplikacija_model db = new treca_aplikacija_model()) { video v = db.videos.Find(id); v.video_banned = true; db.SaveChanges(); return(RedirectToAction("Index", "Video")); } }
public ActionResult Create(video videoModel) { if (!User.Identity.IsAuthenticated) { return(RedirectToAction("Login", "Account")); } using (treca_aplikacija_model db = new treca_aplikacija_model()) { int NewVideoId = db.videos.Count() > 0 ? db.videos.ToList().Last().video_id + 1 : 0; string Extension = Path.GetExtension(videoModel.ImageFile.FileName); string FileName = NewVideoId.ToString() + Extension; //Spliting embed tag string[] UrlStrings = videoModel.video_url.Split(' '); foreach (string s in UrlStrings) { Debug.WriteLine("Url string " + s); if (s.Contains("src")) { videoModel.video_url = s.Substring(5, s.Length - 6); } } //Assigning video icon videoModel.video_icon = FileName; //Saving video thumbnail FileName = Path.Combine(Server.MapPath("~/Content/VideoImages/"), FileName); videoModel.ImageFile.SaveAs(FileName); //Asigning user string LoggedInUserName = User.Identity.GetApplicationUserUsername(); foreach (var x in db.users) { if (x.user_username.Equals(LoggedInUserName)) { videoModel.video_user_id = x.users_id; } } //Assigning 'created' videoModel.video_created = DateTime.Now; db.videos.Add(videoModel); db.SaveChanges(); } ModelState.Clear(); return(RedirectToAction("Index", "Video")); }
protected override void Dispose(bool disposing) { using (treca_aplikacija_model db = new treca_aplikacija_model()) { if (disposing) { db.Dispose(); } base.Dispose(disposing); } }
//[Authorize(Roles = "Admin")] public ActionResult Ban(int id) { if (User.IsInRole("Regular")) { return(RedirectToAction("Unauthorized", "Account")); } using (treca_aplikacija_model db = new treca_aplikacija_model()) { return(View(ApplicationUtils.CreateVideoViewModel(db.videos.Find(id)))); } }
public static UserViewModel FindUserByUsername(string username) { using (treca_aplikacija_model db = new treca_aplikacija_model()) { foreach (var user in db.users) { if (user.user_username.Equals(username)) { return(CreateUserViewModelDTO(user)); } } } return(null); }
public ActionResult Unban(string userName) { using (treca_aplikacija_model db = new treca_aplikacija_model()) { foreach (var x in db.users.ToList()) { if (x.user_username.Equals(userName)) { x.user_banned = false; db.SaveChanges(); return(Json(new { message = "success" }, JsonRequestBehavior.AllowGet)); } } return(null); } }
public ActionResult Delete(byte?id) { using (treca_aplikacija_model db = new treca_aplikacija_model()) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } video video = db.videos.Find(id); if (video == null) { return(HttpNotFound()); } return(View(ApplicationUtils.CreateVideoViewModel(video))); } }
public ActionResult BanConfirmed(string userName) { using (treca_aplikacija_model db = new treca_aplikacija_model()) { foreach (var x in db.users.ToList()) { if (x.user_username.Equals(userName)) { x.user_banned = true; db.SaveChanges(); return(RedirectToAction("Index", "Video")); } } return(View()); } }
//private treca_aplikacija_model db = new treca_aplikacija_model(); // GET: Video public ActionResult Index(string SearchParam) { using (treca_aplikacija_model db = new treca_aplikacija_model()) { if (SearchParam == null) { var videos = db.videos.Include(v => v.user).Include(v => v.comments); return(View(ApplicationUtils.CreateVideoViewModels(videos.ToList()))); } else { var videos = db.videos.Include(v => v.user).Include(v => v.comments).Where(x => x.video_name.Contains(SearchParam)); return(View(ApplicationUtils.CreateVideoViewModels(videos.ToList()))); } } }
public ActionResult RemoveLikeDislike(int videoId) { using (treca_aplikacija_model db = new treca_aplikacija_model()) { UserViewModel user = ApplicationUtils.FindUserByUsername(User.Identity.GetApplicationUserUsername()); try { ApplicationUtils.RemoveLikeDislike(true, videoId, user.users_id); } catch (Exception) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } } return(Json(new { Success = true }, JsonRequestBehavior.AllowGet)); }
public ActionResult Edit(byte?id) { using (treca_aplikacija_model db = new treca_aplikacija_model()) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } video video = db.videos.Find(id); if (video == null) { return(HttpNotFound()); } ViewBag.video_user_id = new SelectList(db.users, "users_id", "user_username", video.video_user_id); return(View(video)); } }
public ActionResult Delete(string username) { if (!User.IsInRole("Admin")) { return(RedirectToAction("Unauthorized", "Account")); } using (treca_aplikacija_model db = new treca_aplikacija_model()) { foreach (var x in db.users.ToList()) { if (x.user_username.Equals(username)) { return(View(ApplicationUtils.CreateUserViewModelDTO(x))); } } } return(null); }
public async Task <ActionResult> Register(RegisterViewModel model) { if (ModelState.IsValid) { //Model 3 treca_aplikacija_model db = new treca_aplikacija_model(); var newUser = new user(); newUser.user_email = model.Email; newUser.user_username = model.Username; newUser.user_password = model.Password; newUser.user_created = DateTime.Now; newUser.user_icon = "Avatar.png"; db.users.Add(newUser); db.SaveChanges(); //Model 3 auth var user = new ApplicationUser { UserName = model.Email, Email = model.Email, ApplicationUserUsername = model.Username }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { var user1 = User.Identity; var userManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(new ApplicationDbContext())); userManager.AddToRole(user.Id, "Regular"); //userManager.AddToRole(user1.GetUserId(), "Admin"); await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false); return(RedirectToAction("Index", "Video")); } AddErrors(result); } // If we got this far, something failed, redisplay form return(View(model)); }
public ActionResult Administrator(string query, bool isUser) { List <Object> retVal = new List <Object>(); using (treca_aplikacija_model db = new treca_aplikacija_model()) { if (isUser) { foreach (var x in db.users.Where(x => x.user_username.Contains(query)).ToList()) { retVal.Add(ApplicationUtils.CreateUserViewModelDTO(x)); } } else { foreach (var x in db.videos.Where(x => x.video_name.Contains(query)).ToList()) { retVal.Add(ApplicationUtils.CreateVideoViewModel(x)); } } return(Json(new { returnValues = retVal }, JsonRequestBehavior.AllowGet)); } }
public ActionResult Edit(video videoViewModel) { using (treca_aplikacija_model db = new treca_aplikacija_model()) { video oldVideo = db.videos.Find(videoViewModel.video_id); if (videoViewModel.video_url != null) { //Spliting embed tag string[] UrlStrings = videoViewModel.video_url.Split(' '); foreach (string s in UrlStrings) { Debug.WriteLine("Url string " + s); if (s.Contains("src")) { oldVideo.video_url = s.Substring(5, s.Length - 6); } } } if (videoViewModel.ImageFile != null) { string Extension = Path.GetExtension(videoViewModel.ImageFile.FileName); string FileName = videoViewModel.video_id.ToString() + Extension; string rootPath = Server.MapPath("~"); Debug.WriteLine("Root path" + rootPath); System.IO.File.Delete(rootPath + "/Content/VideoImages/" + oldVideo.video_icon); //Assigning video icon oldVideo.video_icon = FileName; //Saving video thumbnail FileName = Path.Combine(Server.MapPath("~/Content/VideoImages/"), FileName); videoViewModel.ImageFile.SaveAs(FileName); } if (videoViewModel.video_name != null) { oldVideo.video_name = videoViewModel.video_name; } if (videoViewModel.video_description != null) { oldVideo.video_description = videoViewModel.video_description; } if (videoViewModel.video_comments_allowed) { oldVideo.video_comments_allowed = true; } else { oldVideo.video_comments_allowed = false; } if (ModelState.IsValid) { db.Entry(oldVideo).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.video_user_id = new SelectList(db.users, "users_id", "user_username", videoViewModel.video_user_id); return(View(videoViewModel)); } }
public ActionResult Edit(EditAccoutViewModel model) { if (!ModelState.IsValid) { return(View(model)); } //ApplicationUser var user = UserManager.FindById(model.Id); Debug.WriteLine("Korisnik" + user.ToString()); //for database user var oldUsername = user.ApplicationUserUsername; Debug.WriteLine("Staro korisnicko : " + oldUsername); //Database user using (treca_aplikacija_model db = new treca_aplikacija_model()) { foreach (var x in db.users.ToList()) { if (x.user_username.Equals(oldUsername)) { x.user_username = model.Username; x.user_email = model.Email; x.user_password = model.Password; //Image sex if (model.ImageFile != null) { string Extension = Path.GetExtension(model.ImageFile.FileName); string FileName = x.users_id.ToString() + Extension; string rootPath = Server.MapPath("~"); if (x.user_icon != null) { System.IO.File.Delete(rootPath + "/Content/UserPhotos/" + x.user_icon); } //Assigning video icon x.user_icon = FileName; //Saving video thumbnail FileName = Path.Combine(Server.MapPath("~/Content/UserPhotos/"), FileName); model.ImageFile.SaveAs(FileName); } } } db.SaveChanges(); } //Applicationuser user.ApplicationUserUsername = model.Username; UserManager.SetEmail(model.Id, model.Email); user.UserName = model.Email; UserManager.ChangePassword(model.Id, model.OldPassword, model.Password); if (model.Role != null) { if (model.Role.Equals("Admin")) { UserManager.AddToRole(model.Id, "Admin"); } else { UserManager.RemoveFromRole(model.Id, "Admin"); } } else { UserManager.AddToRole(model.Id, "Regular"); } UserManager.Update(user); if (User.Identity.GetUserId().Equals(model.Id)) { AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie); return(RedirectToAction("Login", "Account", new { returnUrl = "/Video/Index" })); } else { return(View()); } }
// GET: Video/Details/5 // GET: Video/Details/5?page=x&sort=y public ActionResult Details(byte?id, int?page = 1, string sort = "Created", bool initial = true) { if (!initial) { ViewBag.Scroll = true; } else { ViewBag.Scroll = false; } ViewBag.CurrentCommentPage = page; ViewBag.CurrentCommentSortParam = sort; if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } treca_aplikacija_model db = new treca_aplikacija_model(); video video = db.videos.Find(id); if (video == null) { return(HttpNotFound()); } UserViewModel user = ApplicationUtils.FindUserByUsername(User.Identity.GetApplicationUserUsername()); if (user != null) { foreach (var x in db.video_like_dislike) { if (x.users_id == user.users_id && x.video_id == video.video_id) { ViewBag.LikeDislikeEntity = x; } } ViewBag.UserCommentLikeDislike = db.comment_like_dislike.Where(x => x.users_id == user.users_id && x.comment.comment_video_id == id).ToList(); } //Initial pagination int numOfComments = video.comments.Count(); int paginationNumber = 0; if (numOfComments > 5) { paginationNumber = (numOfComments / 5) + 1; } else { paginationNumber = 1; } ViewBag.CommentPagination = paginationNumber; //Pagination and sort param List <comment> comments = new List <comment>(); if (sort.Equals("Created")) { comments = video.comments.OrderByDescending(x => x.comment_created).ToList(); } else { foreach (var x in video.comments) { x.comment_rating = x.comment_like_dislike.Where(z => z.is_like).Count() - x.comment_like_dislike.Where(z => !z.is_like).Count(); Debug.WriteLine("Comment content:" + x.comment_content + "Assigned rating: " + x.comment_rating); } comments = video.comments.OrderByDescending(x => x.comment_rating).ToList(); } if (page == 1) { try { comments = comments.GetRange(0, 5); } catch { comments = comments.GetRange(0, comments.Count()); } } else { try { // comments = comments.GetRange((((int)page - 1) * 5), 5); } catch (ArgumentException) { Debug.WriteLine(video.comments.ToList().Count()); comments = comments.GetRange((((int)page - 1) * 5), comments.Count() / 5); } } video.comments = comments; return(View(ApplicationUtils.CreateVideoViewModel(video))); }
public ActionResult Filter(string userFilter, string lowDateFilter, string highDateFilter) { Debug.WriteLine("UserF: " + userFilter); Debug.WriteLine("LowDF: " + lowDateFilter); Debug.WriteLine("HighF: " + highDateFilter); treca_aplikacija_model db = new treca_aplikacija_model(); List <VideoViewModel> videosDTO = new List <VideoViewModel>(); if (userFilter == null && lowDateFilter == null & highDateFilter == null) { return(Json(new { message = "Everyting is null" }, JsonRequestBehavior.AllowGet)); } else { List <VideoViewModel> videos = new List <VideoViewModel>(); if (userFilter != null) { foreach (var x in db.videos.Include(v => v.user).Where(x => x.user.user_username.Equals(userFilter)).ToList()) { videos.Add(ApplicationUtils.CreateVideoViewModel(x)); } //videos += db.videos.Include(v => v.user).Include(v => v.comments).Where(x => x.user.user_username.Contains(userFilter)).ToList(); } if (lowDateFilter != null && highDateFilter != null) { foreach (var x in db.videos.Include(v => v.user).ToList()) { if (x.video_created > DateTime.Parse(lowDateFilter) && x.video_created < DateTime.Parse(highDateFilter)) { videos.Add(ApplicationUtils.CreateVideoViewModel(x)); } } //videos += db.videos.Include(v => v.user).Include(v => v.comments).Where(x => x.video_created > Convert.ToDateTime(lowDateFilter) && x.video_created < Convert.ToDateTime(highDateFilter) ).ToList(); } else { if (lowDateFilter != null) { foreach (var x in db.videos.Include(v => v.user).ToList()) { if (x.video_created > DateTime.Parse(lowDateFilter)) { videos.Add(ApplicationUtils.CreateVideoViewModel(x)); } } //List<video> videos = db.videos.Include(v => v.user).Include(v => v.comments).Where(x => x.video_created > Convert.ToDateTime(lowDateFilter)).ToList(); } else if (highDateFilter != null) { foreach (var x in db.videos.Include(v => v.user).ToList()) { if (x.video_created < DateTime.Parse(highDateFilter)) { videos.Add(ApplicationUtils.CreateVideoViewModel(x)); } } //List<video> videos = db.videos.Include(v => v.user).Include(v => v.comments).Where(x => x.video_created > Convert.ToDateTime(lowDateFilter)).ToList(); } } return(Json(new { Videos = videos.Distinct().ToList() }, JsonRequestBehavior.AllowGet)); } }