public ActionResult Create()
        {
            var model = new LegalBasisViewModel();

            model.documentTypeID = (int)Helper.DocumentTypes.BaseLegal;
            return(View(model));
        }
        public ActionResult Edit(LegalBasisViewModel model)
        {
            if (ModelState.IsValid)
            {
                string   filePath = "";
                bool     replaced = false;
                Document d        = db.Documents.Find(model.docId);
                if (model.Document != null)
                {
                    if (model.Document.FileName != null)
                    {
                        var documents = Directory.GetFiles(Server.MapPath("~/Uploads"));
                        if (documents.Contains(model.url))
                        {
                            FileInfo old = new FileInfo(model.url);
                            if (model.Document.ContentLength != (int)old.Length)
                            {
                                filePath = model.Document.FileName;
                                System.IO.File.Delete(Path.Combine(Server.MapPath("~/Uploads"), model.url));
                                replaced = true;
                                model.Document.SaveAs(Path.Combine(Server.MapPath("~/Uploads"), filePath));
                                d.url = replaced ? filePath : model.url;
                            }
                        }
                        else
                        {
                            int newID = d.ID;
                            filePath = newID + "$$" + Path.GetFileName(model.Document.FileName);
                            model.Document.SaveAs(Path.Combine(Server.MapPath("~/Uploads"), filePath));
                            d.url = filePath;
                        }
                    }
                }

                if (model.Document == null || model.Document.FileName == null)
                {
                    System.IO.File.Delete(Path.Combine(Server.MapPath("~/Uploads"), model.url));
                    d.url = "";
                }

                d.title       = model.name;
                d.companyID   = (int)db.Users.Find(d.createUser).companyID;
                d.description = model.description;
                d.url         = (d.url == null) ? "" : d.url;

                db.Entry(d).State = System.Data.EntityState.Modified;

                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(model));
        }
        public ActionResult Edit(int id)
        {
            var model = db.Documents.Find(id);

            LegalBasisViewModel m = new LegalBasisViewModel();

            m.name           = model.title;
            m.description    = model.description;
            m.url            = model.url;
            m.docId          = model.ID;
            m.createUser     = model.createUser;
            m.companyID      = model.companyID;
            m.documentTypeID = model.documentTypeID;
            return(View(m));
        }
        public ActionResult Create(LegalBasisViewModel model)
        {
            if (ModelState.IsValid)
            {
                var      docGUID  = Guid.NewGuid();
                string   filePath = "";
                Document d        = new Document();
                if (model.Document != null)
                {
                    if (model.Document.FileName != null)
                    {
                        docGUID = Guid.NewGuid();
                        var last  = db.Documents.OrderByDescending(id => id.ID).FirstOrDefault();
                        int newID = 0;
                        if (last != null)
                        {
                            newID = last.ID + 1;
                        }
                        filePath = newID + "$$" + Path.GetFileName(model.Document.FileName);
                        model.Document.SaveAs(Path.Combine(Server.MapPath("~/Uploads"), filePath));
                    }
                }
                d.createUser     = WebSecurity.CurrentUserId;
                d.title          = model.name;
                d.companyID      = (int)db.Users.Find(WebSecurity.CurrentUserId).companyID;
                d.description    = model.description;
                d.documentText   = "";
                d.EDT            = 0;
                d.documentTypeID = db.DocumentTypes.FirstOrDefault(dt => dt.name == "Base Legal").ID;
                d.url            = filePath;
                d.statusID       = 1;

                db.Documents.Add(d);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            return(View(model));
        }