Example #1
0
        public static Menu_SiteContent AddContent(int menuid, int contentid, int websiteID)
        {
            CurtDevDataContext db = new CurtDevDataContext();
            Menu_SiteContent menuitem = new Menu_SiteContent {
                menuID = menuid,
                contentID = contentid,
                menuSort = (db.Menu_SiteContents.Where(x => x.menuID == menuid).Where(x => x.parentID == null).Count()) + 1,
                linkTarget = false
            };

            db.Menu_SiteContents.InsertOnSubmit(menuitem);
            db.SubmitChanges();
            return menuitem;
        }
Example #2
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();
        }
Example #3
0
        public ActionResult AddLink(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("Menus");
            }

            #region Form Submission
            try {
                if (Request.Form["btnSave"] != null) {

                    // Save form values
                    string name = (Request.Form["link_name"] != null) ? Request.Form["link_name"] : "";
                    string value = (Request.Form["link_value"] != null) ? Request.Form["link_value"] : "";
                    bool linkTarget = (Request.Form["link_target"] == null) ? false : true;

                    // Validate the form fields
                    if (name.Length == 0) throw new Exception("Link name is required.");
                    if (value.Length == 0) throw new Exception("Link value is required.");

                    // Create the new customer and save
                    Menu_SiteContent new_item = new Menu_SiteContent {
                        menuID = m.menuID,
                        menuTitle = name,
                        menuLink = value,
                        menuSort = (db.Menu_SiteContents.Where(x => x.menuID == m.menuID).Where(x => x.parentID == null).Count()) + 1,
                        linkTarget = linkTarget
                    };

                    db.Menu_SiteContents.InsertOnSubmit(new_item);
                    db.SubmitChanges();
                    return RedirectToRoute("ContentMenu", new { id = id });
                }
            } catch (Exception e) {
                error = e.Message;
            }
            #endregion

            ViewBag.error = error;
            ViewBag.menuID = id;

            return View();
        }