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")); } }
public ActionResult Add() { SiteTopic model = new SiteTopic(); return(View(model)); }