/// <summary> /// Adds the specified advertising platform. /// </summary> /// <param name="advertisingPlatform">The advertising platform.</param> /// <returns></returns> public tbl_AdvertisingPlatform Add(tbl_AdvertisingPlatform advertisingPlatform) { advertisingPlatform.ID = Guid.NewGuid(); _dataContext.tbl_AdvertisingPlatform.AddObject(advertisingPlatform); _dataContext.SaveChanges(); return(advertisingPlatform); }
/// <summary> /// Selects the by title and create. /// </summary> /// <param name="siteId">The site id.</param> /// <param name="title">The title.</param> /// <returns></returns> public tbl_AdvertisingPlatform SelectByTitleAndCreate(Guid siteId, string title) { var advertisingPlatform = SelectByTitle(siteId, title); if (advertisingPlatform == null) { advertisingPlatform = new tbl_AdvertisingPlatform { SiteID = siteId }; advertisingPlatform.Title = advertisingPlatform.Code = title; Add(advertisingPlatform); } return(advertisingPlatform); }
/// <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); }
/// <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); } } }
/// <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); }