protected void Page_Load(object sender, EventArgs e) { AccountInfo account = EditedObject as AccountInfo; AuthorizeReadRequest(account); IDataComConfiguration configuration = DataComHelper.GetConfiguration(AccountSiteID); if (configuration.GetToken() == null) { ShowWarning(GetString("datacom.notoken"), null, null); } else { try { if (!String.IsNullOrEmpty(CompanyHiddenField.Value)) { JsonSerializer serializer = new JsonSerializer(); Company freshCompany = serializer.Unserialize <Company>(CompanyHiddenField.Value); if (Company == null || Company.CompanyId != freshCompany.CompanyId) { CompanyForm.MergeHint = true; } Company = freshCompany; } if (Company == null) { AccountInfo accountInfo = EditedObject as AccountInfo; CompanyIdentity identity = DataComHelper.CreateCompanyIdentity(accountInfo); DataComClient client = DataComHelper.CreateClient(configuration); ICompanyProvider provider = DataComHelper.CreateCompanyProvider(client, configuration); CompanyFinder finder = DataComHelper.CreateCompanyFinder(provider); CompanyFilter filterHint = null; Company match = finder.Find(identity, out filterHint); if (match != null) { ShowInformation(GetString("datacom.companymatch")); Company = match; CompanyForm.MergeHint = true; } else { ShowInformation(GetString("datacom.nocompanymatch")); } Filter = filterHint; } InitializeHeaderActions(); InitializeDataComForm(); } catch (Exception exception) { HandleException(exception); } } }
private static ErrorList ValidateCompany(Company entity) { ErrorList errors = new ErrorList(); if (StringUtils.IsBlank(entity.Name)) { errors.Add("name is required"); } if (StringUtils.IsBlank(entity.Domain)) { errors.Add("domain is required"); } else { const string pattern = @"[a-z0-9-\.]+"; if (Regex.Match(entity.Domain, pattern, RegexOptions.IgnoreCase).Value != entity.Domain) { errors.Add("Invalid e-mail domain"); } else { CompanyFinder finder = new CompanyFinder { Domain = entity.Domain }; Company ac = Company.FindOne(finder); if (!ac.IsNull) { if (entity.IsNew) { errors.Add("A company with that email domain already exists"); } if (!entity.CompanyId.Equals(ac.CompanyId)) { errors.Add("A company with that email domain already exists"); } } } } if (entity.BrandListLoaded && entity.BrandList.Count == 0) { errors.Add("at least one brand must be selected"); } return(errors); }
protected override void BindGrid(int page) { CompanyFinder finder = new CompanyFinder(); finder.SortExpressions.AddRange(Grid.GetSortExpressions()); EntityList <Company> data = Company.FindMany(finder, page - 1, PageSize); Grid.DataSource = data; Grid.DataBind(); Grid.Visible = (data.Count > 0); NoResultsPanel.Visible = (data.Count == 0); UpdatePagingControls(data.PagingInfo); }
protected void Page_Load(object sender, EventArgs e) { IDataComConfiguration configuration = DataComHelper.GetConfiguration(AccountSiteID); // Do not check login if it's a CallBack - search button was pressed (see CreateSearchActionClientScript method) if (!RequestHelper.IsCallback()) { bool validCredential = false; try { validCredential = CheckCredential(); } catch (Exception ex) { HandleException(ex); return; } if (!validCredential) { URLHelper.Redirect(LoginPageUrl); } } try { if (!String.IsNullOrEmpty(CompanyHiddenField.Value)) { JsonSerializer serializer = new JsonSerializer(); Company freshCompany = serializer.Unserialize <Company>(CompanyHiddenField.Value); if (Company == null || Company.CompanyId != freshCompany.CompanyId) { CompanyForm.MergeHint = true; } Company = freshCompany; } AccountInfo accountInfo = EditedObject as AccountInfo; CompanyIdentity identity = DataComHelper.CreateCompanyIdentity(accountInfo); Filter = identity.CreateFilter(); // Do not search for company if it's a CallBack - search button was pressed (see CreateSearchActionClientScript method) if (Company == null && !RequestHelper.IsCallback()) { DataComClient client = DataComHelper.CreateClient(); ICompanyProvider provider = DataComHelper.CreateCompanyProvider(client, configuration); CompanyFinder finder = DataComHelper.CreateCompanyFinder(provider); CompanyFilter filterHint = null; Company match = finder.Find(identity, out filterHint); if (match != null) { ShowInformation(GetString("datacom.companymatch")); Company = match; CompanyForm.MergeHint = true; } else { ShowInformation(GetString("datacom.nocompanymatch")); } } InitializeHeaderActions(); InitializeDataComForm(); } catch (Exception exception) { HandleException(exception); } }