//[HttpGet] //public ActionResult Video() //{ // return View(); //} //[HttpPost] //public ActionResult Video(AddVideoViewModel vm) //{ // if (ModelState.IsValid) // { // Entry entry = new Entry // { // AccountId = GetSUD(), // Active = 1, // Content = vm.Content ?? "", // Created = DateTime.Now, // TypeId = (int)EntryTypeEnum.Link, // MediaURL = vm.MediaURL, // SourceURL = vm.SourceURL ?? "", // Title = vm.Title // }; // Rep.AddEntry(entry); // Rep.Save(); // return RedirectToAction("Access", "Add", entry); // } // return View(vm); //} // ACCESS /// <summary> /// Define access for this entry. /// </summary> /// <param name="entry"></param> /// <returns></returns> public ActionResult Access(Entry entry) { // retrieve list of friends using claims and facebook sdk var friends = GetFriendInfo(); // retrieve list of groups through repository var groups = Rep.GetGroupsByOwnerId(GetSUDInt()); var gr = new List<AccessGroupViewModel>(); foreach (var group in groups) { AccessGroupViewModel gvm = new AccessGroupViewModel { Group = group }; gr.Add(gvm); } AccessViewModel vm = new AccessViewModel { EntryId = entry.Id, AccessList = friends.Result.OrderBy(e => e.Name), Groups = gr }; return View(vm); }
public void UpdateEntry(Entry entry) { Entry original = GetEntryById(entry.Id); context.Entry(original).CurrentValues.SetValues(entry); Save(); }
/// <summary> /// Check the current user is either author or authorized viewer of the entry in question. /// </summary> /// <param name="entry">Entry </param> /// <returns></returns> public bool CheckAccess(Entry entry) { string userid = GetSUD(); // If author if (entry.AccountId == userid || entry.EntryAccesses.Select(e => e.AccountId).Contains(userid)) return true; return false; }
public ActionResult Edit(Entry entry) { if (!CheckAuthor(entry.AccountId)) return View("NoAccess"); if (ModelState.IsValid) { entry.Updated = DateTime.Now; } return View("Edit", entry); }
public ActionResult Image(AddImageViewModel vm) { if (ModelState.IsValid) { var genpath = "~/Content/uploads/"; // Save Image to System string picture = System.IO.Path.GetFileName(vm.Image.FileName); string path = System.IO.Path.Combine(Server.MapPath(genpath), picture ?? ""); // file is uploaded vm.Image.SaveAs(path); //using (MemoryStream ms = new MemoryStream()) //{ // vm.Image.InputStream.CopyTo(ms); // byte[] array = ms.GetBuffer(); //} Entry entry = new Entry { AccountId = GetSUD(), Active = 1, Content = vm.Content, Created = DateTime.Now, TypeId = (int)EntryTypeEnum.Image, MediaURL = picture, SourceURL = vm.SourceURL ?? "", Title = vm.Title }; Rep.AddEntry(entry); Rep.Save(); return RedirectToAction("Access", "Add", entry); } return View(vm); }
public void AddEntry(Entry entry) { context.Entries.Add(entry); }
/// <summary> /// Displays the requested post /// </summary> /// <param name="entry"></param> /// <returns>ViewPost View</returns> public ActionResult ViewPost(Entry entry) { // Check the current user has access to this post as author or viewer if (!CheckAccess(entry)) return View("NoAccess"); PostViewModel vm = new PostViewModel { Entry = entry, Author = CheckAuthor(entry.AccountId), ViewType = Enum.GetName(typeof(EntryTypeEnum), entry.TypeId) }; return View(vm); }
public ActionResult Text(AddTextViewModel vm) { if (ModelState.IsValid) { Entry entry = new Entry { AccountId = GetSUD(), Active = 1, Content = vm.Content ?? "", Created = DateTime.Now, TypeId = (int)EntryTypeEnum.Text, SourceURL = vm.SourceURL ?? "", Title = vm.Title }; Rep.AddEntry(entry); Rep.Save(); return RedirectToAction("Access", "Add", entry); } return View(vm); }
public ActionResult Image(AddImageViewModel vm) { if (ModelState.IsValid) { var genpath = "~/Content/uploads/"; // Save Image to System string picture = System.IO.Path.GetFileName(vm.Image.FileName); // check image has a valid extension if (CheckValidImage(picture)) { string path = System.IO.Path.Combine(Server.MapPath(genpath), picture ?? ""); // file is uploaded vm.Image.SaveAs(path); // Crate new Entry Entry entry = new Entry { AccountId = GetSUD(), Active = 1, Content = vm.Content, Created = DateTime.Now, TypeId = (int)EntryTypeEnum.Image, MediaURL = picture, SourceURL = vm.SourceURL ?? "", Title = vm.Title }; Rep.AddEntry(entry); Rep.Save(); // return next stage of adding entry: defining access to post return RedirectToAction("Access", "Add", entry); } } return View(vm); }
public ActionResult ViewPost(Entry entry) { string viewType = Enum.GetName(typeof(EntryTypeEnum), entry.TypeId); return View(viewType, entry); }
// ACCESS /// <summary> /// Define access for this entry. /// </summary> /// <param name="entry"></param> /// <returns></returns> public ActionResult Access(Entry entry) { var friends = GetFriendInfo(); AccessViewModel vm = new AccessViewModel { EntryId = entry.Id, AccessList = friends.Result }; return View(vm); }