Example #1
0
        public ActionResult EditBusiness(BusinessViewModel business, HttpPostedFileBase fileUpload, FormCollection collection)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    DAL.AspNetUserDAL.AspNetUserDatabaseDataService asp = new DAL.AspNetUserDAL.AspNetUserDatabaseDataService();
                    if (business.Email != business.OldEmail && asp.CheckDuplicateEmail(business.Email, business.OldEmail))
                    {
                        throw new ArgumentException("Email must be unique for each account.");
                    }

                    ViewBag.Positions = business.Positions;
                    ViewBag.Fields    = business.Fields;
                    ViewBag.States    = DataSettings.US_STATES;

                    TechCareerFair.DAL.FieldDAL.FieldRepository fr = new TechCareerFair.DAL.FieldDAL.FieldRepository();
                    IEnumerable <field> iFields = fr.SelectAll();
                    List <field>        fields  = iFields.ToList();
                    ViewBag.AllFields = iFields;
                    foreach (field f in fields)
                    {
                        bool isChecked = Convert.ToBoolean(collection[f.Name].Split(',')[0]);

                        if (!business.Fields.Contains(f.Name) && isChecked)
                        {
                            business.Fields.Add(f.Name);
                        }
                        else if (business.Fields.Contains(f.Name) && !isChecked)
                        {
                            business.Fields.Remove(f.Name);
                        }
                    }

                    if (collection["removeImage"] != null && Convert.ToBoolean(collection["removeImage"].Split(',')[0]))
                    {
                        business.Photo = "";
                        if ((System.IO.File.Exists(Server.MapPath("~") + business.Photo)))
                        {
                            System.IO.File.Delete(Server.MapPath("~") + business.Photo);
                        }
                    }

                    if (fileUpload != null)
                    {
                        business.Photo = DAL.DatabaseHelper.UploadFile(DataSettings.BUSINESS_DIRECTORY, fileUpload, Server);
                    }

                    BusinessRepository businessRepository = new BusinessRepository();
                    businessRepository.Update(businessRepository.ToModel(business), Server.MapPath("~"));

                    EditUserViewModel user = new EditUserViewModel();
                    user.Email           = business.Email;
                    user.Password        = business.Password;
                    user.ConfirmPassword = business.Password;

                    EditUser(user, business.OldEmail);

                    return(RedirectToAction("ListBusinesses"));
                }
                catch (ArgumentException e)
                {
                    ViewBag.Error = e.Message;
                    return(View(business));
                }
            }
            else
            {
                return(View(business));
            }
        }
Example #2
0
        public ActionResult EditApplicant(ApplicantViewModel applicant, HttpPostedFileBase fileUpload, FormCollection collection)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    DAL.AspNetUserDAL.AspNetUserDatabaseDataService asp = new DAL.AspNetUserDAL.AspNetUserDatabaseDataService();
                    if (applicant.OldEmail != applicant.Email && asp.CheckDuplicateEmail(applicant.Email, applicant.OldEmail))
                    {
                        throw new ArgumentException("Email must be unique for each account.");
                    }

                    TechCareerFair.DAL.FieldDAL.FieldRepository fr = new TechCareerFair.DAL.FieldDAL.FieldRepository();
                    IEnumerable <field> iFields = fr.SelectAll();
                    List <field>        fields  = iFields.ToList();
                    ViewBag.AllFields = iFields;
                    ViewBag.Fields    = applicant.Fields;
                    foreach (field f in fields)
                    {
                        bool isChecked = Convert.ToBoolean(collection[f.Name].Split(',')[0]);

                        if (!applicant.Fields.Contains(f.Name) && isChecked)
                        {
                            applicant.Fields.Add(f.Name);
                        }
                        else if (applicant.Fields.Contains(f.Name) && !isChecked)
                        {
                            applicant.Fields.Remove(f.Name);
                        }
                    }

                    if (collection["removeResume"] != null && Convert.ToBoolean(collection["removeResume"].Split(',')[0]))
                    {
                        applicant.Resume = "";
                        if ((System.IO.File.Exists(Server.MapPath("~") + applicant.Resume)))
                        {
                            System.IO.File.Delete(Server.MapPath("~") + applicant.Resume);
                        }
                    }

                    if (fileUpload != null)
                    {
                        applicant.Resume = DAL.DatabaseHelper.UploadFile(DataSettings.RESUME_DIRECTORY, fileUpload, Server);
                    }

                    ApplicantRepository applicantRepository = new ApplicantRepository();
                    applicantRepository.Update(applicantRepository.ToModel(applicant), Server.MapPath("~"));

                    EditUserViewModel user = new EditUserViewModel();
                    user.Email           = applicant.Email;
                    user.Password        = applicant.Password;
                    user.ConfirmPassword = applicant.Password;

                    EditUser(user, applicant.OldEmail);

                    return(RedirectToAction("ListApplicants"));
                }
                catch (ArgumentException e)
                {
                    ViewBag.Error = e.Message;
                    return(View(applicant));
                }
            }
            else
            {
                return(View(applicant));
            }
        }