public static int CopyRevision(int id = 0) { try { CurtDevDataContext db = new CurtDevDataContext(); SiteContentRevision revision = db.SiteContentRevisions.Where(x => x.revisionID == id).First<SiteContentRevision>(); SiteContentRevision revcopy = new SiteContentRevision { active = false, createdOn = DateTime.Now, content_text = revision.content_text, contentID = revision.contentID }; db.SiteContentRevisions.InsertOnSubmit(revcopy); db.SubmitChanges(); return revcopy.contentID; } catch { return 0; } }
public ActionResult EditContent(int id = 0, int revisionID = 0) { int websiteID = ViewBag.websiteID ?? 0; if (websiteID == 0) { return RedirectToAction("Index"); } string error = ""; CurtDevDataContext db = new CurtDevDataContext(); SiteContent content = db.SiteContents.Where(x => x.contentID == id && x.websiteID.Equals(websiteID)).FirstOrDefault<SiteContent>(); if (content == null || content.contentID == 0) { return RedirectToAction("Contents"); } #region Form Submission if (Request.Form.Count > 0) { try { // Save form values string title = (Request.Form["page_title"] != null) ? Request.Form["page_title"] : ""; bool requireAuthentication = (Request.Form["requireAuthentication"] != null) ? true : false; // Validate the form fields if (title.Length == 0) throw new Exception("Page Title is required."); // Create the new customer and save content.page_title = title; content.keywords = Request.Form["keywords"]; content.meta_description = Request.Form["meta_description"]; content.meta_title = Request.Form["meta_title"]; content.canonical = (Request.Form["canonical"].Trim() != "") ? Request.Form["canonical"].Trim() : null; content.slug = UDF.GenerateSlug(title); if (Request.Form["publish"] == null) { content.published = false; } else { content.published = Convert.ToBoolean(Request.Form["publish"]); } content.lastModified = DateTime.Now; content.requireAuthentication = requireAuthentication; SiteContentRevision revision = new SiteContentRevision(); try { revision = db.SiteContentRevisions.Where(x => x.contentID == content.contentID) .Where(x => x.revisionID == revisionID).First<SiteContentRevision>(); } catch { revision = db.SiteContentRevisions.Where(x => x.contentID == content.contentID) .Where(x => x.active == true).First<SiteContentRevision>(); } revision.content_text = Request.Form["page_content"]; db.SubmitChanges(); ViewBag.message = "Content Page Updated Successfully!"; } catch (Exception e) { error = e.Message; } } #endregion ViewBag.error = error; ViewBag.content = SiteContentModel.GetPage(id); ; ViewBag.revisionID = revisionID; return View(); }
public ActionResult AddContent(int id = 0) { int websiteID = ViewBag.websiteID ?? 0; if (websiteID == 0) { return RedirectToAction("Index"); } string error = ""; CurtDevDataContext db = new CurtDevDataContext(); Menu m = db.Menus.Where(x => x.menuID.Equals(id) && x.websiteID.Equals(websiteID)).FirstOrDefault<Menu>(); if (m == null || m.menuID == 0) { return RedirectToAction("Contents"); } #region Form Submission if (Request.Form.Count > 0) { try { // Save form values string title = (Request.Form["page_title"] != null) ? Request.Form["page_title"] : ""; bool addtomenu = (Request.Form["addtomenu"] != null) ? true : false; bool requireAuthentication = (Request.Form["requireAuthentication"] != null) ? true : false; // Validate the form fields if (title.Length == 0) throw new Exception("Page Title is required."); // Create the new customer and save SiteContent new_page = new SiteContent { page_title = title, keywords = Request.Form["keywords"], meta_description = Request.Form["meta_description"], meta_title = Request.Form["meta_title"], canonical = (Request.Form["canonical"].Trim() != "") ? Request.Form["canonical"].Trim() : null, published = Convert.ToBoolean(Request.Form["publish"]), createdDate = DateTime.Now, lastModified = DateTime.Now, active = true, isPrimary = false, slug = UDF.GenerateSlug(title), requireAuthentication = requireAuthentication, websiteID = websiteID }; db.SiteContents.InsertOnSubmit(new_page); db.SubmitChanges(); SiteContentRevision revision = new SiteContentRevision { content_text = Request.Form["page_content"], contentID = new_page.contentID, active = true, createdOn = DateTime.Now }; if (addtomenu) { Menu_SiteContent menuitem = new Menu_SiteContent { menuID = m.menuID, contentID = new_page.contentID, menuSort = (db.Menu_SiteContents.Where(x => x.menuID == m.menuID).Where(x => x.parentID == null).Count()) + 1, linkTarget = false }; db.Menu_SiteContents.InsertOnSubmit(menuitem); } db.SiteContentRevisions.InsertOnSubmit(revision); db.SubmitChanges(); return RedirectToRoute("ContentMenu", new { id = id }); } catch (Exception e) { error = e.Message; } } #endregion ViewBag.error = error; ViewBag.menuID = id; return View(); }