public ActionResult TopList() { TopListModel model = new TopListModel(); using (ZavrsniEFentities db = new ZavrsniEFentities()) { var mostViewedPages = (from p in db.Page where p.IDprivacy == 3 orderby p.PageView ascending select p).Take(5).ToList(); var topRatedPages = db.PageReview .GroupBy(r => r.IDpage) .Select(p => new TopPag() { Page = p.FirstOrDefault().IDpage, Avg = p.Average(r => r.Mark), TopPageName = p.FirstOrDefault().Page.name }) .OrderByDescending(x => x.Avg) .Take(10) .ToList(); var topRatedPublicPages = (from t in topRatedPages join p in db.Page on t.Page equals p.IDpage where p.IDprivacy == 3 select t).ToList(); model.topPages = mostViewedPages; model.topRatedPages = topRatedPublicPages; } return(View(model)); }
public async Task <ActionResult> Edit(UserEditModel model) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { if (ModelState.IsValid) { string username = User.Identity.GetUserName(); // Get the userprofile User user = db.User.FirstOrDefault(u => u.Username.Equals(username)); // Update fields user.FirstName = model.FirstName; user.LastName = model.LastName; user.Email = model.Email; if (Request["CityDropDown"].Any()) { var citySel = Request["CityDropDown"]; user.IDcityFrom = Convert.ToInt32(citySel); } db.Entry(user).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index", "Home")); // or whatever } return(View(model)); } }
public ActionResult Cities() { using (ZavrsniEFentities db = new ZavrsniEFentities()) { var allCities = (from c in db.City orderby c.CityName select c).Include(c => c.Country).ToList(); var availableCountries = (from c in db.Country orderby c.CountryName select c).ToList(); var locTypes = (from l in db.LocationType orderby l.Name select l).ToList(); var model = new CityCountryListModel() { Cities = allCities, LocationType = new SelectList(locTypes, "ID", "Name") }; model.Country = new SelectList(availableCountries, "ID", "CountryName"); return(View(model)); } }
public ActionResult Details(int IDgroup) { GroupDetailsModel model = new GroupDetailsModel(); using (ZavrsniEFentities db = new ZavrsniEFentities()) { var groupQuery = (from g in db.Group where g.IDgroup == IDgroup select g).Include(g => g.GroupType); model.GroupType = groupQuery.FirstOrDefault().GroupType.Name; model.Name = groupQuery.FirstOrDefault().Name; model.IDgroup = IDgroup; var membersQuery = (from b in db.BelongsToGroup where b.IDgroup == IDgroup select b).Include(b => b.User).ToList(); model.Members = membersQuery; var otherUsers = (from u in db.User select u).Except(from b in db.BelongsToGroup join s in db.User on b.IDuser equals s.IDuser where b.IDgroup == IDgroup select s).ToList(); model.MembersNotInList = new SelectList(otherUsers, "IDuser", "Username"); } return(View(model)); }
public async Task <ActionResult> Add(AddNewGroupModel model) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { var username = User.Identity.GetUserName(); var user = db.User.FirstOrDefault(u => u.Username.Equals(username)); var newGroup = db.Group.Create(); if (Request["GroupTypeDropDown"].Any()) { var groupTypeSel = Request["GroupTypeDropDown"]; var gt = Convert.ToInt32(groupTypeSel); newGroup.IDgroupType = gt; } newGroup.Name = model.Name; newGroup.IDgroupOwner = user.IDuser; db.Group.Add(newGroup); db.SaveChanges(); var authorToGroup = db.BelongsToGroup.Create(); authorToGroup.IDgroup = newGroup.IDgroup; authorToGroup.IDuser = user.IDuser; authorToGroup.TimeChanged = DateTime.Now; db.BelongsToGroup.Add(authorToGroup); db.SaveChanges(); return(RedirectToAction("Index", "Group")); } }
public ActionResult Edit(int IDpage, string username) { EditPageModel model = new EditPageModel(); model.Username = username; using (ZavrsniEFentities db = new ZavrsniEFentities()) { model.IDpage = IDpage; var selPage = db.Page.FirstOrDefault(u => u.IDpage.Equals(IDpage)); var query = (from p in db.Privacy orderby p.Description select p).ToList(); model.PageTitle = selPage.name; model.Privacy = new SelectList(query, "IDprivacy", "description", selPage.IDprivacy); var tagList = (from t in db.PageTag join a in db.Tag on t.IDtag equals a.ID where t.IDpage == IDpage orderby a.name select t).Include(t => t.Tag).ToList(); model.TagList = tagList; var contribList = (from c in db.Contributor join u in db.User on c.IDuser equals u.IDuser orderby u.Username where c.IDpage == IDpage select c).Include(c => c.User).ToList(); model.ContributorList = contribList; } return(View(model)); }
public ActionResult Index(int page = 1, int pageSize = 20) { HomeContentModel model = new HomeContentModel(); using (ZavrsniEFentities db = new ZavrsniEFentities()) { if (Request.IsAuthenticated) { var currentUser = User.Identity.GetUserName(); var user = db.User.FirstOrDefault(u => u.Username.Equals(currentUser)); var groupContents = (from g in db.Group join b in db.BelongsToGroup on g.IDgroup equals b.IDgroup join u in db.User on b.IDuser equals u.IDuser join c in db.Content on u.IDuser equals c.IDauthor where g.IDgroupOwner == user.IDuser && g.IDgroup != 1 && g.IDgroup == b.IDgroup && c.IsCopied == false orderby c.TimeChanged descending select c).Include(c => c.User); model.contents = new PagedList <Content>(groupContents, page, pageSize); } var allContents = (from c in db.Content orderby c.TimeChanged descending where c.IsCopied == false select c).Include(c => c.ContentType).Include(c => c.User); model.contentsGuest = new PagedList <Content>(allContents, page, pageSize); return(View(model)); } }
public async Task <ActionResult> Index(HomeContentModel model, int page = 1, int pageSize = 20) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { return(RedirectToAction("Search", new { keyword = model.keyword, page = page, pageSize = pageSize })); } }
public async Task <ActionResult> ViewDetails(int IDpage, string username, PageDetailModel model) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { var currentUser = User.Identity.GetUserName(); var user = db.User.FirstOrDefault(u => u.Username.Equals(username)); var current = db.User.FirstOrDefault(u => u.Username.Equals(currentUser)); var reviewExists = (from p in db.PageReview where p.IDpage == IDpage && p.IDreviewer == current.IDuser select p).ToList(); if (reviewExists.Any()) { var selReview = db.PageReview.Find(IDpage, current.IDuser); selReview.Mark = model.Grade; db.Entry(selReview).State = EntityState.Modified; db.SaveChanges(); } if (!reviewExists.Any()) { var selReview = db.PageReview.Create(); selReview.IDpage = IDpage; selReview.IDreviewer = current.IDuser; selReview.Mark = model.Grade; db.PageReview.Add(selReview); db.SaveChanges(); } } return(RedirectToAction("Details", new { IDpage = IDpage, Username = username })); }
public async Task <ActionResult> NewPage(string username, NewPageModel model) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { var user = db.User.FirstOrDefault(u => u.Username.Equals(username)); var newPage = db.Page.Create(); newPage.name = model.PageTitle; if (Request["PrivacyDropDown"].Any()) { var privSel = Request["PrivacyDropDown"]; var privacy = Convert.ToInt32(privSel); newPage.IDprivacy = privacy; } else { return(RedirectToAction("NewPage", new { Username = username })); } newPage.CreatedAt = DateTime.Now; newPage.PageView = 0; db.Page.Add(newPage); db.SaveChanges(); var newContributor = db.Contributor.Create(); newContributor.IDpage = newPage.IDpage; newContributor.IDuser = user.IDuser; newContributor.IsAuthor = true; db.Contributor.Add(newContributor); db.SaveChanges(); return(RedirectToAction("Index", new { Username = username })); } }
public ActionResult Insert(string username) { AddNewContentModel model = new AddNewContentModel(); using (ZavrsniEFentities db = new ZavrsniEFentities()) { var user = db.User.FirstOrDefault(u => u.Username.Equals(username)); var query1 = (from p in db.Page join c in db.Contributor on p.IDpage equals c.IDpage where c.IDuser == user.IDuser orderby p.name select p).ToList(); model.Page = new SelectList(query1, "IDpage", "name"); var query2 = (from p in db.ContentType orderby p.Description select p).ToList(); model.ContentType = new SelectList(query2, "ID", "Description"); var query3 = (from c in db.City orderby c.CityName select c).ToList(); model.Location = new SelectList(query3, "IDcity", "CityName"); model.Username = username; } return(View(model)); }
public ActionResult ViewContent(string username, int page = 1, int pageSize = 16) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { var currentUser = User.Identity.GetUserName(); var user = db.User.FirstOrDefault(u => u.Username.Equals(username)); var allContents = (from c in db.Content where c.IDauthor == user.IDuser && c.IsCopied == false orderby c.TimeChanged descending select c).Include(c => c.ContentType); var test = allContents.Count(); if (test > 160) { pageSize = 24; } var model = new IndexContentModel() { contents = new PagedList <Content>(allContents, page, pageSize), Username = username }; return(View(model)); } }
public async Task <ActionResult> Login(LoginViewModel model, string returnUrl) { if (!ModelState.IsValid) { return(View(model)); } // This doesn't count login failures towards account lockout // To enable password failures to trigger account lockout, change to shouldLockout: true using (ZavrsniEFentities entities = new ZavrsniEFentities()) { string username = model.Username; string pass = model.Password; bool userValid = entities.User.Any(user => user.Username == username && user.Password == pass); if (userValid) { FormsAuthentication.SetAuthCookie(username, false); var FormsAuthCookie = Response.Cookies[FormsAuthentication.FormsCookieName]; var ExistingTicket = FormsAuthentication.Decrypt(FormsAuthCookie.Value).Name; if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/")) { return(RedirectToLocal(returnUrl)); } else { return(RedirectToAction("Index", "Home")); } } else { ModelState.AddModelError("", "The user name or password provided is incorrect."); } } /*var result = await SignInManager.PasswordSignInAsync(model.Username, model.Password, model.RememberMe, shouldLockout: false); * switch (result) * { * case SignInStatus.Success: * return RedirectToLocal(returnUrl); * case SignInStatus.LockedOut: * return View("Lockout"); * case SignInStatus.RequiresVerification: * return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe }); * case SignInStatus.Failure: * default: * ModelState.AddModelError("", "Invalid login attempt."); * return View(model); * }*/ return(View(model)); }
public async Task <ActionResult> DeleteContentConfirm(int IDpage, int IDcontent, string username) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { var contentDelete = db.ContentPage.Find(IDcontent, IDpage); db.ContentPage.Remove(contentDelete); db.SaveChanges(); } return(RedirectToAction("Details", new { IDpage = IDpage })); }
public ActionResult Add() { using (ZavrsniEFentities db = new ZavrsniEFentities()) { AddNewGroupModel model = new AddNewGroupModel(); var groupTypes = (from g in db.GroupType orderby g.Name select g).ToList(); model.GroupType = new SelectList(groupTypes, "ID", "Name"); return(View(model)); } }
public ActionResult NewPage(string username) { NewPageModel model = new NewPageModel(); using (ZavrsniEFentities db = new ZavrsniEFentities()) { var query = (from p in db.Privacy select p).ToList(); model.Privacy = new SelectList(query, "IDprivacy", "description"); model.Username = username; return(View(model)); } }
public async Task <ActionResult> DeletePage(int IDpage, string username) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { var page = db.Page.FirstOrDefault(u => u.IDpage.Equals(IDpage)); var pageDelete = db.Page.Find(IDpage); db.Page.Remove(pageDelete); db.SaveChanges(); } return(RedirectToAction("Index", new { Username = username })); }
public async Task <ActionResult> DeleteConfirm(int IDcontent, string username) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { var cont = db.Content.FirstOrDefault(u => u.IDcontent.Equals(IDcontent)); var contentDelete = db.Content.Find(IDcontent); db.Content.Remove(contentDelete); db.SaveChanges(); } return(RedirectToAction("ViewContent", new { Username = username })); }
public ActionResult DeleteContributor(int IDpage, int IDuser, string username) { UsernameModel model = new UsernameModel(); model.Username = username; using (ZavrsniEFentities db = new ZavrsniEFentities()) { var contributorDelete = db.Contributor.Find(IDpage, IDuser); db.Contributor.Remove(contributorDelete); db.SaveChanges(); } return(RedirectToAction("Edit", new { IDpage = IDpage, Username = username })); }
public ActionResult Register() { RegisterViewModel model = new RegisterViewModel(); using (ZavrsniEFentities db = new ZavrsniEFentities()) { var query = (from c in db.City orderby c.CityName select c).ToList(); model.CityList = new SelectList(query, "IDcity", "CityName"); } return(View(model)); }
public ActionResult DeleteTag(int IDpage, int IDtag, string username) { UsernameModel model = new UsernameModel(); model.Username = username; using (ZavrsniEFentities db = new ZavrsniEFentities()) { var tagDelete = db.PageTag.Find(IDtag, IDpage); db.PageTag.Remove(tagDelete); db.SaveChanges(); } return(RedirectToAction("Edit", new { IDpage = IDpage, Username = username })); }
public ActionResult DeleteLocation(int IDlocation, int IDcontent, string username) { UsernameModel model = new UsernameModel(); model.Username = username; using (ZavrsniEFentities db = new ZavrsniEFentities()) { var deleteLocationContent = db.LocationContent.Find(IDlocation, IDcontent); db.LocationContent.Remove(deleteLocationContent); db.SaveChanges(); } return(RedirectToAction("Edit", new { IDcontent = IDcontent, Username = username })); }
public async Task <ActionResult> DeleteConfirm(int IDgroup) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { if (IDgroup == 1) { return(RedirectToAction("Index", "Group")); } var groupDelete = db.Group.Find(IDgroup); db.Group.Remove(groupDelete); db.SaveChanges(); } return(RedirectToAction("Index", "Group")); }
public ActionResult Search(string keyword, int page = 1, int pageSize = 20) { SearchModel model = new SearchModel(); using (ZavrsniEFentities db = new ZavrsniEFentities()) { var searchResults = (from c in db.Content where c.Text.ToLower().Contains(keyword.ToLower()) || c.Title.ToLower().Contains(keyword.ToLower()) orderby c.TimeChanged descending select c); model.results = new PagedList <Content>(searchResults, page, pageSize); } return(View(model)); }
public ActionResult Edit(int IDgroup) { GroupEditDetailsModel model = new GroupEditDetailsModel(); using (ZavrsniEFentities db = new ZavrsniEFentities()) { var queryType = db.Group.FirstOrDefault(u => u.IDgroup.Equals(IDgroup)); var query = (from g in db.GroupType select g).ToList(); model.GroupType = new SelectList(query, "ID", "Name", queryType.IDgroupType); model.IDgroup = IDgroup; model.Name = queryType.Name; } return(View(model)); }
public ActionResult DeleteMember(int IDgroup, int IDuser) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { if (IDgroup == 1) { return(RedirectToAction("Index", "Group")); } var groupMemberDelete = db.BelongsToGroup.Find(IDgroup, IDuser); db.BelongsToGroup.Remove(groupMemberDelete); db.SaveChanges(); } return(RedirectToAction("Details", new { IDgroup = IDgroup })); }
public async Task <ActionResult> ShowDetails(int IDcontent, string username, ContentDetails model) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { var currentUser = User.Identity.GetUserName(); var cont = db.Content.FirstOrDefault(u => u.IDcontent.Equals(IDcontent)); var usernameAuthor = db.User.FirstOrDefault(u => u.IDuser.Equals(cont.IDauthor)); var usernameCurrent = db.User.FirstOrDefault(u => u.Username.Equals(currentUser)); if (Request["PageDropDown"].Any()) { var contCopy = db.Content.Create(); contCopy.IDcontentType = cont.IDcontentType; contCopy.IDauthor = usernameCurrent.IDuser; contCopy.Text = cont.Text; contCopy.Title = cont.Title; contCopy.IsCopied = true; contCopy.IDeditor = usernameCurrent.IDuser; contCopy.TimeChanged = DateTime.Now; db.Content.Add(contCopy); db.SaveChanges(); var contCopyLoc = (from l in db.LocationContent where l.IDcontent == cont.IDcontent select l.IDlocation).ToList(); foreach (var a in contCopyLoc) { var contLoc = db.LocationContent.Create(); contLoc.IDlocation = a; contLoc.IDcontent = contCopy.IDcontent; contLoc.TimeChanged = DateTime.Now; db.LocationContent.Add(contLoc); db.SaveChanges(); } var contPage = db.ContentPage.Create(); contPage.IDcontent = contCopy.IDcontent; contPage.IDuser = usernameCurrent.IDuser; var pageSel = Request["PageDropDown"]; contPage.IDpage = Convert.ToInt32(pageSel); db.ContentPage.Add(contPage); db.SaveChanges(); } } return(RedirectToAction("Details", new { IDcontent = IDcontent, Username = username })); }
// GET: Page public ActionResult Index(string username) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { var currentUser = User.Identity.GetUserName(); var user = db.User.FirstOrDefault(u => u.Username.Equals(username)); var current = db.User.FirstOrDefault(u => u.Username.Equals(currentUser)); var allPages = (from p in db.Page join c in db.Contributor on p.IDpage equals c.IDpage where c.IDuser == user.IDuser //&& c.IsAuthor select p).Include(p => p.User1).Include(p => p.Contributor); var isContributor = (from a in allPages join c in db.Contributor on a.IDpage equals c.IDpage join u in db.User on c.IDuser equals u.IDuser where c.IDuser == current.IDuser select a).Include(a => a.User).Include(a => a.Contributor).ToList(); var pagesPublic = (from a in allPages join c in db.Contributor on a.IDpage equals c.IDpage where a.IDprivacy >= 2 select a).Except(from a in allPages join c in db.Contributor on a.IDpage equals c.IDpage where c.IDuser == current.IDuser select a).Include(a => a.User).Include(a => a.Contributor).ToList(); var isGroupMember = (from g in db.Group join b in db.BelongsToGroup on g.IDgroup equals b.IDgroup where g.IDgroupOwner == user.IDuser && b.IDuser == current.IDuser && g.IDgroup > 1 select b).ToList(); var model = new IndexPageModel() { pages = isContributor, Username = username, pagesPublic = pagesPublic, IsMember = isGroupMember.Any() }; return(View(model)); } }
public async Task <ActionResult> Index(GroupListModel model, int page = 1, int pageSize = 20) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { var currentUser = User.Identity.GetUserName(); var user = db.User.FirstOrDefault(u => u.Username.Equals(currentUser)); var groups = (from u in db.Group where u.IDgroupOwner == user.IDuser || u.IDgroupOwner == null orderby u.Name select u).Include(u => u.GroupType).Include(u => u.User); model.GroupList = new PagedList <Group>(groups, page, pageSize); return(View(model)); } }
public ActionResult Delete(int IDcontent, string username) { using (ZavrsniEFentities db = new ZavrsniEFentities()) { var query = db.Content.FirstOrDefault(u => u.IDcontent.Equals(IDcontent)); var user = db.User.FirstOrDefault(u => u.Username.Equals(username)); if (query.IDauthor != user.IDuser) { return(RedirectToAction("Index", "Home")); } } UsernameModel model = new UsernameModel(); model.Username = username; return(View(model)); }