Beispiel #1
0
        public static void PersistFormTemplate(OpenFormGraphManager _manager, string _json)
        {
            if (_json != null)
            {
                FormTemplate jFormTemplate = JsonConvert.DeserializeObject <FormTemplate>(_json);

                FormRecord form = null;

                if (!string.IsNullOrEmpty(jFormTemplate.Guid))
                {
                    Guid guid;
                    if (Guid.TryParse(jFormTemplate.Guid, out guid))
                    {
                        form = _manager.GetFormRecord(guid);
                    }
                }

                if (form == null)
                {
                    form = new FormRecord
                    {
                        Active     = true,
                        IsTemplate = true
                    };
                }

                form.Description    = jFormTemplate.Description;
                form.FormSubject    = jFormTemplate.FormSubject;
                form.Name           = jFormTemplate.Name;
                form.SuperclassGuid = jFormTemplate.SuperclassGuid;

                _manager.Persist(form);
            }
        }
Beispiel #2
0
        public static string GetFormTemplate(OpenFormGraphManager _manager, Guid _formTemplateGuid)
        {
            FormRecord formRecord = _manager.GetFormRecord(_formTemplateGuid);

            if (formRecord != null)
            {
                FormTemplate jFormTemplate = new FormTemplate(formRecord);

                return(JsonConvert.SerializeObject(jFormTemplate));
            }


            return(null);
        }
        /// <summary>
        /// Adds fields to the Kweb list.
        /// </summary>
        /// <param name="data">User input from Form model.</param>
        /// <returns>Returns either successful or unsuccessful depending on whether the data writes to Kweb.</returns>
        public bool Add(Form data)
        {
            var fields = new Fields
            {
                // Personal Information
                new Field("Title", data.LastName + ", " + data.FirstName),
                new Field("FirstName", data.FirstName),
                new Field("LastName", data.LastName),
                new Field("Email", data.Email),
                new Field("IsPotentialStudent", Convert.ToBoolean(data.IsPotentialStudent) ? "Yes" : "No"),

                // Kind of Program
                new Field("ProgramOfInterest", data.ProgramOfInterest),
                new Field("SwitchTechFields", Convert.ToBoolean(data.SwitchTechFields) ? "Yes" : "No"),
                new Field("HighestEdLevel", data.HighestEdLevel),

                // How Soon to Start
                new Field("StartNow", Convert.ToBoolean(data.StartNow) ? "Yes" : "No"),
            };

            // Interests
            foreach (var question in data.InterestQuestions)
            {
                fields.Add(new Field(question.Name, question.Answer));
            }

            var formRecord = new FormRecord
            {
                SiteUrl  = this.site,
                ListName = this.listName,
                Fields   = fields
            };

            try
            {
                IKWebGateway gateway = new KWebGateway(this.gatewayDbConnStr);
                gateway.AddItem(formRecord);
                return(true);
            }
            catch (Exception ex)
            {
                this.log.Error(ex, "AddItem failed, site: {0}, list: {1}, fields: {2}", this.site, this.listName, string.Join(", ", fields.Select(m => m.Name + ":" + m.Value).ToArray()));
                return(false);
            }
        }
        public void Persist(FormRecord _formRecord)
        {
            FormRecordDAO dao = new FormRecordDAO(MongoDB);

            dao.Persist(_formRecord);
        }