/// <summary>
        /// Adds the specified advertising platform.
        /// </summary>
        /// <param name="advertisingCampaign">The advertising campaign.</param>
        /// <returns></returns>
        public tbl_AdvertisingCampaign Add(tbl_AdvertisingCampaign advertisingCampaign)
        {
            advertisingCampaign.ID = Guid.NewGuid();

            _dataContext.tbl_AdvertisingCampaign.AddObject(advertisingCampaign);

            _dataContext.SaveChanges();

            return(advertisingCampaign);
        }
        public tbl_AdvertisingCampaign SelectByTitleAndCreate(Guid siteId, string title)
        {
            var advertisingCampaign = SelectByTitle(siteId, title);

            if (advertisingCampaign == null)
            {
                advertisingCampaign = new tbl_AdvertisingCampaign {
                    SiteID = siteId
                };
                advertisingCampaign.Title = advertisingCampaign.Code = title;
                Add(advertisingCampaign);
            }
            return(advertisingCampaign);
        }
Esempio n. 3
0
        /// <summary>
        /// Saves this instance.
        /// </summary>
        public bool Save()
        {
            if (!access.Write)
            {
                return(false);
            }

            var contact = _dataManager.Contact.SelectById(SiteId, ContactId) ?? new tbl_Contact();

            if (contact.UserFullName != txtUserFullName.Text || !contact.IsNameChecked)
            {
                var nameChecker = new NameChecker(ConfigurationManager.AppSettings["ADONETConnectionString"]);
                var nameCheck   = nameChecker.CheckName(txtUserFullName.Text, NameCheckerFormat.FIO, Correction.Correct);
                if (!string.IsNullOrEmpty(nameCheck))
                {
                    contact.UserFullName  = nameCheck;
                    contact.Surname       = nameChecker.Surname;
                    contact.Name          = nameChecker.Name;
                    contact.Patronymic    = nameChecker.Patronymic;
                    contact.IsNameChecked = nameChecker.IsNameCorrect;
                }
                else
                {
                    contact.UserFullName  = txtUserFullName.Text;
                    contact.Name          = string.Empty;
                    contact.Surname       = string.Empty;
                    contact.Patronymic    = string.Empty;
                    contact.IsNameChecked = false;
                }
            }
            else
            {
                contact.IsNameChecked = imgbtnOk.Visible;
            }

            contact.ContactTypeID = ddlContactType.SelectedValue != string.Empty ? (Guid?)Guid.Parse(ddlContactType.SelectedValue) : null;
            contact.StatusID      = _dataManager.Status.SelectDefault(CurrentUser.Instance.SiteID).ID;
            contact.OwnerID       = ucOwner.SelectedValue;
            contact.CompanyID     = ucCompany.SelectedValue;
            contact.JobTitle      = txtJobTitle.Text;
            contact.ContactFunctionInCompanyID = ddlFunctionInCompany.SelectedValue != string.Empty ? (Guid?)Guid.Parse(ddlFunctionInCompany.SelectedValue) : null;
            contact.ContactJobLevelID          = ddlJobLevel.SelectedValue != string.Empty ? (Guid?)Guid.Parse(ddlJobLevel.SelectedValue) : null;
            contact.Phone                 = txtPhone.Text;
            contact.CellularPhone         = txtCellularPhone.Text;
            contact.CellularPhoneStatusID = int.Parse(ddlCellularPhoneStatus.SelectedValue);
            contact.Email                 = txtEmail.Text;
            if (ddlEmailStatus.SelectedValue.ToInt() != (int)EmailStatus.Banned ||
                CurrentUser.Instance.AccessLevelID == (int)AccessLevel.SystemAdministrator || CurrentUser.Instance.AccessLevelID == (int)AccessLevel.Administrator)
            {
                contact.EmailStatusID = int.Parse(ddlEmailStatus.SelectedValue);
            }
            contact.AddressID = ucPostalAddress.Save();
            contact.RefferID  = ucReffer.SelectedValue;
            contact.Comment   = txtComment.Text;

            if (rdpBirthday.SelectedDate != null)
            {
                contact.BirthDate = rdpBirthday.SelectedDate;
            }

            if (dcbAdvertisingPlatform.SelectedIdNullable.HasValue)
            {
                contact.AdvertisingPlatformID = dcbAdvertisingPlatform.SelectedIdNullable;
            }
            else if (!string.IsNullOrEmpty(dcbAdvertisingPlatform.Text) && !string.Equals(dcbAdvertisingPlatform.EmptyItemText, dcbAdvertisingPlatform.Text, StringComparison.OrdinalIgnoreCase))
            {
                var advertisingPlatform = _dataManager.AdvertisingPlatform.SelectByTitle(CurrentUser.Instance.SiteID, dcbAdvertisingPlatform.Text);
                if (advertisingPlatform == null)
                {
                    advertisingPlatform = new tbl_AdvertisingPlatform {
                        SiteID = CurrentUser.Instance.SiteID
                    };
                    advertisingPlatform.Code = advertisingPlatform.Title = dcbAdvertisingPlatform.Text;
                    _dataManager.AdvertisingPlatform.Add(advertisingPlatform);
                }
                contact.AdvertisingPlatformID = advertisingPlatform.ID;
            }

            if (dcbAdvertisingCampaign.SelectedIdNullable.HasValue)
            {
                contact.AdvertisingCampaignID = dcbAdvertisingCampaign.SelectedIdNullable;
            }
            else if (!string.IsNullOrEmpty(dcbAdvertisingCampaign.Text) && !string.Equals(dcbAdvertisingCampaign.EmptyItemText, dcbAdvertisingCampaign.Text, StringComparison.OrdinalIgnoreCase))
            {
                var advertisingCampaign = _dataManager.AdvertisingCampaign.SelectByTitle(CurrentUser.Instance.SiteID, dcbAdvertisingCampaign.Text);
                if (advertisingCampaign == null)
                {
                    advertisingCampaign = new tbl_AdvertisingCampaign {
                        SiteID = CurrentUser.Instance.SiteID
                    };
                    advertisingCampaign.Code = advertisingCampaign.Title = dcbAdvertisingCampaign.Text;
                    _dataManager.AdvertisingCampaign.Add(advertisingCampaign);
                }
                contact.AdvertisingCampaignID = advertisingCampaign.ID;
            }

            if (dcbAdvertisingType.SelectedIdNullable.HasValue)
            {
                contact.AdvertisingTypeID = dcbAdvertisingType.SelectedIdNullable;
            }
            else if (!string.IsNullOrEmpty(dcbAdvertisingType.Text) && !string.Equals(dcbAdvertisingType.EmptyItemText, dcbAdvertisingType.Text, StringComparison.OrdinalIgnoreCase))
            {
                var advertisingType = _dataManager.AdvertisingType.SelectByTitle(CurrentUser.Instance.SiteID, dcbAdvertisingType.Text);
                if (advertisingType == null)
                {
                    advertisingType = new tbl_AdvertisingType {
                        SiteID = CurrentUser.Instance.SiteID
                    };
                    advertisingType.Code = advertisingType.Title = dcbAdvertisingType.Text;
                    _dataManager.AdvertisingType.Add(advertisingType);
                }
                contact.AdvertisingTypeID = advertisingType.ID;
            }

            if (contact.ID == Guid.Empty)
            {
                contact.SiteID    = SiteId;
                contact.RefferURL = string.Empty;
                contact.UserIP    = string.Empty;
                contact.OwnerID   = CurrentUser.Instance.ContactID;
                _dataManager.Contact.Add(contact);

                ContactId = contact.ID;
            }
            else
            {
                _dataManager.Contact.Update(contact);
            }

            if (!ucCompany.SelectedValue.HasValue && !string.IsNullOrEmpty(ucCompany.Text))
            {
                Session["UpdatedContactId"] = contact.ID;
                Session["CompanyTitle"]     = ucCompany.Text;

                RadWindowManager1.RadConfirm("Создать новую компанию?", "confirmCallBackFn", 400, 100, null, "Создание компании");

                return(false);
            }

            return(true);
        }
Esempio n. 4
0
        /// <summary>
        /// Updates the sources.
        /// </summary>
        private void UpdateSources()
        {
            Server.ScriptTimeout = 12000;

            var dataManager = new DataManager();
            var contacts    =
                dataManager.Contact.SelectAll().Where(
                    o =>
                    !o.AdvertisingCampaignID.HasValue && !o.AdvertisingPlatformID.HasValue &&
                    !o.AdvertisingTypeID.HasValue).ToList();

            foreach (var contact in contacts)
            {
                var firstSession = dataManager.ContactSessions.SelectFirstSession(contact.SiteID, contact.ID);
                if (firstSession == null)
                {
                    continue;
                }

                if (string.IsNullOrEmpty(firstSession.EnterPointUrl))
                {
                    continue;
                }

                var result = SessionSource.Select(firstSession.EnterPointUrl, contact.RefferURL);
                if (result != null)
                {
                    if (!string.IsNullOrEmpty(result.AdvertisingCampaign))
                    {
                        var advertisingCampaign = dataManager.AdvertisingCampaign.SelectByTitle(contact.SiteID, result.AdvertisingCampaign);
                        if (advertisingCampaign == null)
                        {
                            advertisingCampaign = new tbl_AdvertisingCampaign {
                                SiteID = contact.SiteID
                            };
                            advertisingCampaign.Title = advertisingCampaign.Code = result.AdvertisingCampaign;
                            dataManager.AdvertisingCampaign.Add(advertisingCampaign);
                        }

                        contact.AdvertisingCampaignID      = advertisingCampaign.ID;
                        firstSession.AdvertisingCampaignID = advertisingCampaign.ID;
                    }

                    if (!string.IsNullOrEmpty(result.AdvertisingPlatform))
                    {
                        var advertisingPlatform = dataManager.AdvertisingPlatform.SelectByTitle(contact.SiteID, result.AdvertisingPlatform);
                        if (advertisingPlatform == null)
                        {
                            advertisingPlatform        = new tbl_AdvertisingPlatform();
                            advertisingPlatform.SiteID = contact.SiteID;
                            advertisingPlatform.Title  = advertisingPlatform.Code = result.AdvertisingPlatform;
                            dataManager.AdvertisingPlatform.Add(advertisingPlatform);
                        }

                        contact.AdvertisingPlatformID      = advertisingPlatform.ID;
                        firstSession.AdvertisingPlatformID = advertisingPlatform.ID;
                    }


                    if (!string.IsNullOrEmpty(result.AdvertisingType))
                    {
                        var advertisingType = dataManager.AdvertisingType.SelectByTitle(contact.SiteID, result.AdvertisingType);
                        if (advertisingType == null)
                        {
                            advertisingType        = new tbl_AdvertisingType();
                            advertisingType.SiteID = contact.SiteID;
                            advertisingType.Title  = advertisingType.Code = result.AdvertisingType;
                            advertisingType.AdvertisingTypeCategoryID = 1;
                            dataManager.AdvertisingType.Add(advertisingType);
                        }

                        contact.AdvertisingTypeID      = advertisingType.ID;
                        firstSession.AdvertisingTypeID = advertisingType.ID;
                    }

                    contact.CameFromURL      = result.CameFromUrl;
                    firstSession.Content     = result.Content;
                    firstSession.Keywords    = result.Keywords;
                    firstSession.CameFromURL = result.CameFromUrl;

                    dataManager.Contact.Update(contact);
                    dataManager.ContactSessions.Update(firstSession);
                }
            }
        }
Esempio n. 5
0
        /// <summary>
        /// Saves this instance.
        /// </summary>
        public bool Save()
        {
            if (!access.Write)
            {
                return(false);
            }

            var contact = _dataManager.Contact.SelectById(SiteId, ContactId) ?? new tbl_Contact();

            if (contact.UserFullName != txtUserFullName.Text || !contact.IsNameChecked)
            {
                var nameChecker = new NameChecker(ConfigurationManager.AppSettings["ADONETConnectionString"]);
                var nameCheck   = nameChecker.CheckName(txtUserFullName.Text, NameCheckerFormat.FIO, Correction.Correct);
                if (!string.IsNullOrEmpty(nameCheck))
                {
                    contact.UserFullName  = nameCheck;
                    contact.Surname       = nameChecker.Surname;
                    contact.Name          = nameChecker.Name;
                    contact.Patronymic    = nameChecker.Patronymic;
                    contact.IsNameChecked = nameChecker.IsNameCorrect;
                }
                else
                {
                    contact.UserFullName  = txtUserFullName.Text;
                    contact.Name          = string.Empty;
                    contact.Surname       = string.Empty;
                    contact.Patronymic    = string.Empty;
                    contact.IsNameChecked = false;
                }
            }
            else
            {
                contact.IsNameChecked = imgbtnOk.Visible;
            }

            //contact.ContactTypeID = ddlContactType.SelectedValue != string.Empty ? (Guid?)Guid.Parse(ddlContactType.SelectedValue) : null;
            contact.StatusID  = _dataManager.Status.SelectDefault(SiteId).ID;
            contact.OwnerID   = ucOwner.SelectedValue;
            contact.CompanyID = ucCompany.SelectedValue;
            contact.JobTitle  = txtJobTitle.Text;
            //contact.ContactFunctionInCompanyID = ddlFunctionInCompany.SelectedValue != string.Empty ? (Guid?)Guid.Parse(ddlFunctionInCompany.SelectedValue) : null;
            //contact.ContactJobLevelID = ddlJobLevel.SelectedValue != string.Empty ? (Guid?)Guid.Parse(ddlJobLevel.SelectedValue) : null;
            contact.Phone         = txtPhone.Text;
            contact.CellularPhone = txtCellularPhone.Text;
            //contact.CellularPhoneStatusID = int.Parse(ddlCellularPhoneStatus.SelectedValue);
            contact.Email = txtEmail.Text;


            //contact.EmailStatusID = int.Parse(ddlEmailStatus.SelectedValue);
            contact.AddressID = ucPostalAddress.Save();
            contact.RefferID  = ucReffer.SelectedValue;

            if (rdpBirthday.SelectedDate != null)
            {
                contact.BirthDate = rdpBirthday.SelectedDate;
            }

            if (dcbAdvertisingPlatform.SelectedIdNullable.HasValue)
            {
                contact.AdvertisingPlatformID = dcbAdvertisingPlatform.SelectedIdNullable;
            }
            else if (!string.IsNullOrEmpty(dcbAdvertisingPlatform.Text) && !string.Equals(dcbAdvertisingPlatform.EmptyItemText, dcbAdvertisingPlatform.Text, StringComparison.OrdinalIgnoreCase))
            {
                var advertisingPlatform = _dataManager.AdvertisingPlatform.SelectByTitle(CurrentUser.Instance.SiteID, dcbAdvertisingPlatform.Text);
                if (advertisingPlatform == null)
                {
                    advertisingPlatform = new tbl_AdvertisingPlatform {
                        SiteID = CurrentUser.Instance.SiteID
                    };
                    advertisingPlatform.Code = advertisingPlatform.Title = dcbAdvertisingPlatform.Text;
                    _dataManager.AdvertisingPlatform.Add(advertisingPlatform);
                }
                contact.AdvertisingPlatformID = advertisingPlatform.ID;
            }

            if (dcbAdvertisingCampaign.SelectedIdNullable.HasValue)
            {
                contact.AdvertisingCampaignID = dcbAdvertisingCampaign.SelectedIdNullable;
            }
            else if (!string.IsNullOrEmpty(dcbAdvertisingCampaign.Text) && !string.Equals(dcbAdvertisingCampaign.EmptyItemText, dcbAdvertisingCampaign.Text, StringComparison.OrdinalIgnoreCase))
            {
                var advertisingCampaign = _dataManager.AdvertisingCampaign.SelectByTitle(CurrentUser.Instance.SiteID, dcbAdvertisingCampaign.Text);
                if (advertisingCampaign == null)
                {
                    advertisingCampaign = new tbl_AdvertisingCampaign {
                        SiteID = CurrentUser.Instance.SiteID
                    };
                    advertisingCampaign.Code = advertisingCampaign.Title = dcbAdvertisingCampaign.Text;
                    _dataManager.AdvertisingCampaign.Add(advertisingCampaign);
                }
                contact.AdvertisingCampaignID = advertisingCampaign.ID;
            }

            if (dcbAdvertisingType.SelectedIdNullable.HasValue)
            {
                contact.AdvertisingTypeID = dcbAdvertisingType.SelectedIdNullable;
            }
            else if (!string.IsNullOrEmpty(dcbAdvertisingType.Text) && !string.Equals(dcbAdvertisingType.EmptyItemText, dcbAdvertisingType.Text, StringComparison.OrdinalIgnoreCase))
            {
                var advertisingType = _dataManager.AdvertisingType.SelectByTitle(CurrentUser.Instance.SiteID, dcbAdvertisingType.Text);
                if (advertisingType == null)
                {
                    advertisingType = new tbl_AdvertisingType {
                        SiteID = CurrentUser.Instance.SiteID
                    };
                    advertisingType.Code = advertisingType.Title = dcbAdvertisingType.Text;
                    _dataManager.AdvertisingType.Add(advertisingType);
                }
                contact.AdvertisingTypeID = advertisingType.ID;
            }

            if (contact.ID == Guid.Empty)
            {
                contact.SiteID    = SiteId;
                contact.RefferURL = string.Empty;
                contact.UserIP    = string.Empty;
                contact.OwnerID   = CurrentUser.Instance.ContactID;
                _dataManager.Contact.Add(contact);

                ContactId = contact.ID;
            }
            else
            {
                _dataManager.Contact.Update(contact);
            }

            if (!ucCompany.SelectedValue.HasValue && !string.IsNullOrEmpty(ucCompany.Text))
            {
                var company = new tbl_Company
                {
                    ID        = Guid.NewGuid(),
                    CreatedAt = DateTime.Now,
                    SiteID    = CurrentUser.Instance.SiteID,
                    Name      = ucCompany.Text,
                    StatusID  = _dataManager.Status.SelectDefault(CurrentUser.Instance.SiteID).ID
                };
                _dataManager.Company.Add(company);

                contact.CompanyID = company.ID;
                _dataManager.Contact.Update(contact);
            }
            SaveCommuncation(ContactId, (int)CommunicationType.Web, txtWeb.Text);
            SaveCommuncation(ContactId, (int)CommunicationType.Facebook, txtFacebook.Text);
            SaveCommuncation(ContactId, (int)CommunicationType.VKontakte, txtVKontakte.Text);
            SaveCommuncation(ContactId, (int)CommunicationType.Twitter, txtTwitter.Text);

            return(true);
        }