Exemplo n.º 1
0
 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; }
 }
Exemplo n.º 2
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();
        }
Exemplo n.º 3
0
        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();
        }