public ActionResult PartnerDocumentsEdit(int id)
        {
            PartnerDocument documentInDb = _context.PartnerDocuments.Where(x => x.document_id == id).FirstOrDefault();

            if (documentInDb == null)
            {
                ModelState.AddModelError("", "Not found.");
                return(View("DocumentForm", documentInDb));
            }

            PartnerDocumentFormViewModel viewModel = new PartnerDocumentFormViewModel
            {
                document_id = documentInDb.document_id,
                DocTypes    = ManageDependancyData.DocumentTypes(),
                type        = documentInDb.type,
                name        = documentInDb.name,
                number      = documentInDb.number,
                birthdate   = documentInDb.birthdate,
                address     = documentInDb.address,
                partner_id  = int.Parse(Session["PartnerId"].ToString()),
                Title       = "Edit Document"
            };

            return(View("DocumentForm", viewModel));
        }
        public ActionResult PartnerDocumentsDelete(int id)
        {
            PartnerDocument documentInDb = _context.PartnerDocuments.Where(x => x.document_id == id).FirstOrDefault();

            if (documentInDb == null)
            {
                ModelState.AddModelError("", "Not found.");
                return(View("DocumentForm", documentInDb));
            }

            _context.PartnerDocuments.Remove(documentInDb);
            _context.SaveChanges();

            return(RedirectToAction("PartnerDocumentsIndex",
                                    new { partner_id = int.Parse(Session["PartnerId"].ToString()) }));
        }
        public ActionResult PartnerDocumentsSave(PartnerDocumentFormViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(View("DocumentForm", viewModel));
            }

            if (viewModel.document_id == 0)
            {
                PartnerDocument document = new PartnerDocument
                {
                    type       = viewModel.type,
                    name       = viewModel.name,
                    number     = viewModel.number,
                    birthdate  = viewModel.birthdate,
                    address    = viewModel.address,
                    partner_id = int.Parse(Session["PartnerId"].ToString())
                };

                _context.PartnerDocuments.Add(document);
                _context.SaveChanges();
            }
            else
            {
                PartnerDocument documentInDb = _context.PartnerDocuments.Where(x => x.document_id == viewModel.document_id).FirstOrDefault();

                if (documentInDb == null)
                {
                    ModelState.AddModelError("", "Bad request.");
                    return(View("DocumentForm", viewModel));
                }

                documentInDb.type      = viewModel.type;
                documentInDb.name      = viewModel.name;
                documentInDb.number    = viewModel.number;
                documentInDb.birthdate = viewModel.birthdate;
                documentInDb.address   = viewModel.address;

                _context.Entry(documentInDb).State = System.Data.Entity.EntityState.Modified;
                _context.SaveChanges();
            }

            return(RedirectToAction("PartnerDocumentsIndex",
                                    new { partner_id = int.Parse(Session["PartnerId"].ToString()) }));
        }