public ActionResult SaveEventSettings(Models.ManageEventViewModel input)
        {
            if ((input != null) && (TryValidateModel(input)) && (ModelState.IsValid))
            {
                var x1 = Repository.ConfigurationItemRepository.Save(input.SmtpServer);
                var x2 = Repository.ConfigurationItemRepository.Save(input.SmtpLoginUser);
                var x3 = Repository.ConfigurationItemRepository.Save(input.SmtpLoginPassword);
                var x4 = Repository.ConfigurationItemRepository.Save(input.SendFromEmailAddress);
                return(Json(new
                {
                    success = true,
                    message = string.Format("Settings saved.", "model")
                }));
                //return PartialView("_EventDetails", (Models.ManageEventViewModel)input);
            }

            // set the "error status code" that will redisplay the modal
            //Response.StatusCode = 400;
            // and return the edit form, that will be displayed as a
            // modal again - including the modelstate errors!

            return(Json(new
            {
                success = false,
                message = string.Format("Settings not saved.", "model")
            }));
        }
        public ActionResult Events()
        {
            var    v           = new Models.ManageEventViewModel();
            string _moduleName = Repository.SchoolEvent.ModuleName;// "Events";

            v.SmtpServer           = Repository.ConfigurationItemRepository.GetUniqueItem(_moduleName, "SmtpServer");
            v.SmtpLoginUser        = Repository.ConfigurationItemRepository.GetUniqueItem(_moduleName, "SmtpLoginUser");
            v.SmtpLoginPassword    = Repository.ConfigurationItemRepository.GetUniqueItem(_moduleName, "SmtpLoginPassword");
            v.SendFromEmailAddress = Repository.ConfigurationItemRepository.GetUniqueItem(_moduleName, "SendFromEmailAddress");
            //v.Audiences = Repository.Audience.GetAudienceSelectItems();
            return(View(v));
        }
 public ActionResult EventDetails(long?id)
 {
     if (id == null)
     {
         var sevent = Repository.SchoolEvent.Get(0);
         var model  = new Models.ManageEventViewModel();
         model.SchoolEvent = sevent;
         model.Audiences   = Repository.Audience.GetAudienceSelectItems();
         return(PartialView("_EventDetails", model));
     }
     else
     {
         long newId  = id ?? default(long);
         var  sevent = Repository.SchoolEvent.Get(newId);
         var  model  = new Models.ManageEventViewModel();
         model.SchoolEvent = sevent;
         model.Audiences   = Repository.Audience.GetAudienceSelectItems();
         return(PartialView("_EventDetails", model));
     }
 }
        public ActionResult SaveEvent(Models.ManageEventViewModel input)
        {
            try
            {
                if ((input != null) && (input.SchoolEvent != null) && (TryValidateModel(input)) && (ModelState.IsValid))
                {
                    // save changes, return new data row
                    // status code is something in 200-range
                    bool notify = input.NotifyVolunteersUpdate;
                    var  x      = Repository.SchoolEvent.Save(input.SchoolEvent, notify, input.CustomMessageUpdate);
                    return(Json(new
                    {
                        success = true,
                        message = string.Format("Event saved.", "model")
                    }));
                    //return PartialView("_EventDetails", (Models.ManageEventViewModel)input);
                }

                // set the "error status code" that will redisplay the modal
                //Response.StatusCode = 400;
                // and return the edit form, that will be displayed as a
                // modal again - including the modelstate errors!

                return(Json(new
                {
                    success = false,
                    message = string.Format("Event not saved.", "model"),
                    content = this.RenderPartialViewToString("_EventDetails", (Models.ManageEventViewModel)input)
                }));
                //return PartialView("_EventDetails", (Models.ManageEventViewModel)input);
            }catch (Exception ex)
            {
                return(Json(new
                {
                    success = false,
                    message = string.Format("Event not saved.", "model"),
                    content = ex.Message,
                    inputVal = input
                }));
            }
        }