Esempio n. 1
0
        public ActionResult Update(SiteTopic model, IEnumerable <HttpPostedFileBase> FileUp)
        {
            if (string.IsNullOrEmpty(model.Name))
            {
                return(JsonError("Please enter topic name"));
            }

            // generate seo name
            string random = "";

            do
            {
                if (string.IsNullOrEmpty(model.SystemName))
                {
                    model.SystemName = model.Name + random;
                    model.SystemName = model.SystemName.ToSeoUrl();
                }
                else
                {
                    model.SystemName = model.SystemName.ToSeoUrl();
                }

                // check exist
                if (Db.Count <SiteTopic>(m => m.SystemName == model.SystemName && m.Id != model.Id) == 0)
                {
                    break;
                }

                random           = "_" + random.GenerateRandomText(3);
                model.SystemName = "";
            } while (0 < 1);

            SiteTopic current_item = new SiteTopic();

            if (model.Id > 0)
            {
                var z = Db.Where <SiteTopic>(m => m.Id == model.Id);
                if (z.Count == 0)
                {
                    // the ID is not exist
                    return(JsonError("Please dont try to hack us"));
                }
                else
                {
                    current_item = z.First();
                }
            }
            else
            {
                // generate systemname to avoid duplication
                var can_use = false;
                while (!can_use)
                {
                    var x = Db.Where <SiteTopic>(m => m.SystemName == model.SystemName).FirstOrDefault();
                    if (x == null)
                    {
                        can_use = true;
                        break;
                    }
                    else
                    {
                        model.SystemName += new Random().Next(0, 9);
                    }
                }
            }

            if (model.Id == 0)
            {
                model.CreatedOn = DateTime.Now;
                model.CreatedBy = AuthenticatedUserID;
            }
            else
            {
                model.CreatedOn = current_item.CreatedOn;
                model.CreatedBy = current_item.CreatedBy;
            }

            if (model.Id == 0)
            {
                Db.Insert <SiteTopic>(model);
                return(JsonSuccess("", "Topic added"));
            }
            else
            {
                Db.Update <SiteTopic>(model);
                return(JsonSuccess("", "Topic updated"));
            }
        }
Esempio n. 2
0
        public ActionResult Add()
        {
            SiteTopic model = new SiteTopic();

            return(View(model));
        }