Esempio n. 1
0
    private void LoadFilter(IDeDupJobProcess job, bool initialize)
    {
        if (job.MatchDuplicateProvider == null)
        {
            return;
        }
        if ((chklstFilters.Items.Count <= 0) || initialize)
        {
            chklstFilters.Items.Clear();
            foreach (MatchPropertyFilterMap propertyFilter in job.MatchDuplicateProvider.GetFilters())
            {
                ListItem item = new ListItem();
                // If resource does not exist then use the XML value. Item is prefixed with "Filter" to better identify resource items
                object resourceValue = GetLocalResourceObject("Filter." + propertyFilter.PropertyName);
                item.Text = resourceValue != null && resourceValue.ToString() != ""
                                ? resourceValue.ToString()
                                : propertyFilter.DisplayName;

                if (propertyFilter.Required)
                {
                    // Required folders are selected and disabled by default
                    item.Value    = propertyFilter.PropertyName;
                    item.Selected = true;
                    item.Enabled  = false;
                }
                else
                {
                    item.Value    = propertyFilter.PropertyName;
                    item.Selected = propertyFilter.Enabled;
                    item.Enabled  = true;
                }
                chklstFilters.Items.Add(item);
            }
        }
        else
        {
            foreach (ListItem item in chklstFilters.Items)
            {
                MatchPropertyFilterMap propertyFilter = job.MatchDuplicateProvider.GetPropertyFilter(item.Value);
                item.Enabled = true;
                if (propertyFilter == null)
                {
                    continue;
                }
                if (propertyFilter.Required)
                {
                    item.Selected = true;
                    item.Enabled  = false;
                }
                else if ((!item.Enabled) || (!propertyFilter.Enabled))
                {
                    item.Selected = false;
                }
            }
        }
    }
    private void InitializeView()
    {
        ImportManager importManager = Page.Session["importManager"] as ImportManager;

        if (importManager == null)
        {
            return;
        }
        importManager.Options.CheckForDuplicates = chkCheckForDups.Checked;
        if (Mode.Value == "")
        {
            Mode.Value = "Initialized";
            chkFindDupsInFile.Checked = importManager.Configuration.AdvancedOptions.IndexAfterInsert;
        }
        else
        {
            importManager.Configuration.AdvancedOptions.IndexAfterInsert = chkFindDupsInFile.Checked;
        }

        if (chklstFilters.Items.Count <= 0)
        {
            if (importManager.DuplicateProvider == null)
            {
                importManager.DuplicateProvider = new LeadDuplicateProvider();
            }
            LeadDuplicateProvider duplicateProvider = (LeadDuplicateProvider)importManager.DuplicateProvider;
            foreach (MatchPropertyFilterMap propertyFilter in duplicateProvider.GetFilters())
            {
                ListItem item = new ListItem();
                //If resource does not exist then use the xml value. Item is prefixed with "Filter" to better identify resource items
                item.Text = GetLocalResourceObject("Filter." + propertyFilter.PropertyName) != null &&
                            GetLocalResourceObject("Filter." + propertyFilter.PropertyName).ToString() != ""
                                ? GetLocalResourceObject("Filter." + propertyFilter.PropertyName).ToString()
                                : propertyFilter.DisplayName;

                item.Value    = propertyFilter.PropertyName;
                item.Selected = propertyFilter.Enabled;
                item.Enabled  = IsFilterMapped(importManager, propertyFilter.PropertyName);
                chklstFilters.Items.Add(item);
            }
        }
        else
        {
            LeadDuplicateProvider duplicateProvider = (LeadDuplicateProvider)importManager.DuplicateProvider;
            if (duplicateProvider != null)
            {
                foreach (ListItem item in chklstFilters.Items)
                {
                    item.Enabled = IsFilterMapped(importManager, item.Value);
                    MatchPropertyFilterMap propertyFilter = duplicateProvider.GetPropertyFilter(item.Value);
                    if (propertyFilter != null && ((!item.Enabled) || (!propertyFilter.Enabled)))
                    {
                        item.Selected = false;
                    }
                }
            }
            else
            {
                foreach (ListItem item in chklstFilters.Items)
                {
                    item.Enabled = false;
                }
            }
        }
    }