public override void Process()
        {
            CommonInfo common = base.ParseCommonInfo();

            StringBuilder keys = new StringBuilder();
            StringBuilder values = new StringBuilder();

            foreach (String key in base.FormFields.Keys)
            {
                if (base.IsValidField(key))
                {
                    if (!key.Equals("filename"))
                    {
                        keys.Append(key).Append(FIELD_SEPARATOR);
                        values.Append(base.GetField(key)).Append(FIELD_SEPARATOR);
                    }
                }
            }

            CmsForm form = new CmsForm();
            form.Guid = System.Guid.NewGuid().ToString();
            form.SubscriptionId = CurrentSite.Guid.Value;
            form.DownloadedFile = common.Filename;
            form.Email = common.Email;
            form.IpAddress = common.IpAddress;
            form.RawCampaigns = common.Campaigns;
            form.FormUrl = common.Resource;
            form.Inserted = UtcDateTime.Now;
            form._FormKeys = keys.ToString();
            form._FormValues = values.ToString();

            FormManager.Instance.Save(form);
        }
Esempio n. 2
0
        public void Save(CmsForm form)
        {
            if (form.Guid == null)
                form.Guid = System.Guid.NewGuid().ToString();

            CmsFormDao dao = new CmsFormDao();
            using (Transaction tx = new Transaction())
            {
                dao.Save<CmsForm>(form);
                tx.Commit();
            }
        }
        private void InsertDatabaseLead()
        {
            StringBuilder keys = new StringBuilder();
            StringBuilder values = new StringBuilder();

            keys.Append("from-number").Append(CmsForm.FieldSeparator);
            values.Append(base.CallFromNumber).Append(CmsForm.FieldSeparator);

            keys.Append("from-city").Append(CmsForm.FieldSeparator);
            values.Append(base.CallFromCity).Append(CmsForm.FieldSeparator);

            keys.Append("from-state").Append(CmsForm.FieldSeparator);
            values.Append(base.CallFromState).Append(CmsForm.FieldSeparator);

            keys.Append("from-zip").Append(CmsForm.FieldSeparator);
            values.Append(base.CallFromZip).Append(CmsForm.FieldSeparator);

            keys.Append("from-name").Append(CmsForm.FieldSeparator);
            values.Append(base.CallName).Append(CmsForm.FieldSeparator);

            //First, track that a lead has come in from this phone number
            CmsForm form = new CmsForm();
            form.Guid = System.Guid.NewGuid().ToString();
            form.SubscriptionId = base.GetAssociatedPhoneNumber().SubscriptionId;
            form.DownloadedFile = DefaultValue;
            form.Email = DefaultValue;
            form.IpAddress = DefaultValue;
            form.RawCampaigns = base.GetAssociatedCampaign().TrackingCode;
            form.FormUrl = DefaultValue;
            form.Inserted = UtcDateTime.Now;
            form.IsPhoneLead = true;

            form._FormKeys = keys.ToString();
            form._FormValues = values.ToString();
            FormManager.Instance.Save(form);
        }