예제 #1
0
        public ActionResult Edit(int id)
        {
            Volunteer volunteer = db.Volunteers.Find(id);

            var volunteerInfoModel = new VolunteerInfoModel(volunteer);

            return(View(volunteerInfoModel));
        }
예제 #2
0
        public ActionResult Create()
        {
            var vol = new VolunteerInfoModel
            {
                UserName = User.Identity.Name,
                RegTime  = DateTime.Now,
            };

            ViewBag.VolunteerOrganizationId = new SelectList(db.Organizations, "Id", "Name");
            return(View(vol));
        }
예제 #3
0
        public ActionResult Edit(VolunteerInfoModel volunteerInfoModel, string returnUrl)
        {
            if (ModelState.IsValid)
            {
                var vol = db.Volunteers.Find(volunteerInfoModel.Id);
                volunteerInfoModel.UpdateVolunteerModel(vol);
                db.SaveChanges();

                if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/") &&
                    !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\"))
                {
                    return(Redirect(returnUrl));
                }
                else
                {
                    return(RedirectToAction("VolunteerHome", "StudentMinistry"));
                }
            }
            return(View(volunteerInfoModel));
        }
예제 #4
0
        public ActionResult Create(VolunteerInfoModel volunteer)
        {
            if (ModelState.IsValid)
            {
                var org = db.Organizations.Find(volunteer.VolunteerOrganizationId);

                if ((org.Groups != null) && (org.Groups.Count > 0))
                {
                    if (volunteer.VolunteerGroupId < 1)
                    {
                        ModelState.AddModelError("", "您所在的志愿者机构采用分组的方式,请选择您所在的小组");
                        return(View(volunteer));
                    }
                    else
                    {
                        var group = db.Groups.Find(volunteer.VolunteerGroupId);
                        if (group.Passcode != volunteer.OrgPasscode)
                        {
                            ModelState.AddModelError("", "Wrong access passcode! If you don't know, please ask your group leader");
                            return(View(volunteer));
                        }
                    }
                }
                else
                {
                    if (org.Passcode != volunteer.OrgPasscode)
                    {
                        ModelState.AddModelError("", "Wrong access passcode! If you don't know, please ask your organization coordinator");
                        return(View(volunteer));
                    }
                }

                var vol = volunteer.GetVolunteerModel();
                vol.UserName = User.Identity.Name;
                db.Volunteers.Add(vol);
                db.SaveChanges();
                return(RedirectToAction("VolunteerHome", "StudentMinistry"));
            }
            ViewBag.VolunteerOrganizationId = new SelectList(db.Organizations, "Id", "Name");
            return(View(volunteer));
        }