示例#1
0
        public ActionResult FormMetadata()
        {
            IControlGroup fd = MyFormMetadata.GetMetadata();

            var rs = JsonConvert.SerializeObject(fd, new JsonSerializerSettings
            {
                NullValueHandling = NullValueHandling.Ignore
            });

            return(Content(rs, "application/json"));
        }
示例#2
0
        public ActionResult Save(MyFormData data)
        {
            IControlGroup fd = MyFormMetadata.GetMetadata();

            MkoForms.Validators.ControlGroupValidator.Validate(data, fd);


            var r = new FormSaveReply();

            if (data.lastName == "Fail")
            {
                r.isFailure      = true;
                r.failureMessage = "Nie udało się zapisać zmian, błąd na żądanie użytkownika.";
            }
            else if (data.lastName == "Error")
            {
                r.isError = true;
                r.errors  = new string[] { "Wartość jest niewystarczająca.", "Podane wartości są bez sensu!" };

                r.propertyErrors = new Dictionary <string, object>();
                r.propertyErrors["notifyViaMail"]        = "In %s you must allow notifying by mail";
                r.propertyErrors["extraPerson.lastName"] = "In %s the name seems suspicious.";
                r.propertyErrors["recipients.0"]         = "W polu %s wartość jest brzydka.";
                r.propertyErrors["contacts.0.firstName"] = new string[] { "W polu %s mamy pierwszy błąd.", "W polu %s mamy też błąd kolejny" };

                int    lastIndex = data.contacts.Length - 1;
                string path      = string.Format("contacts.{0}.lastName", lastIndex);
                r.propertyErrors[path] = "In %s we have an error added dynamically";
            }
            else
            {
                r.isSuccess = true;
            }


            var rs = JsonConvert.SerializeObject(r, new JsonSerializerSettings
            {
                NullValueHandling = NullValueHandling.Ignore
            });

            return(Content(rs, "application/json"));
        }