コード例 #1
0
    /// <summary>
    /// Stores data and raises OnSaved event.
    /// </summary>
    public void SaveData()
    {
        // Clear old values
        mFields = new SearchSettings();
        Changed = false;

        // Create new SearchSettingInfos
        foreach (ColumnDefinition column in mAttributes)
        {
            SearchSettingsInfo ssiOld = null;

            // Return old data to compare changes
            if (mInfos != null)
            {
                DataRow[] dr = mInfos.Tables[0].Select("name = '" + column.ColumnName + "'");
                if ((dr.Length > 0) && (mSearchSettings != null))
                {
                    ssiOld = mSearchSettings.GetSettingsInfo((string)dr[0]["id"]);
                }
            }

            var name       = column.ColumnName;
            var content    = false;
            var searchable = false;
            var tokenized  = false;
            var fieldname  = string.Empty;

            CMSCheckBox chk = (CMSCheckBox)pnlContent.FindControl(name + SearchSettings.CONTENT);
            if (chk != null)
            {
                content = chk.Checked;
            }
            chk = (CMSCheckBox)pnlContent.FindControl(name + SearchSettings.SEARCHABLE);
            if (chk != null)
            {
                searchable = chk.Checked;
            }
            chk = (CMSCheckBox)pnlContent.FindControl(name + SearchSettings.TOKENIZED);
            if (chk != null)
            {
                tokenized = chk.Checked;
            }
            TextBox txt = (TextBox)pnlContent.FindControl(name + SearchSettings.IFIELDNAME);
            if (txt != null)
            {
                fieldname = txt.Text;
            }

            bool fieldChanged;
            var  ssi = SearchHelper.CreateSearchSettings(name, content, searchable, tokenized, fieldname, ssiOld, out fieldChanged);

            if (fieldChanged)
            {
                Changed = true;
            }

            mFields.SetSettingsInfo(ssi);
        }

        // Store values to DB
        if (mDci != null)
        {
            mDci.ClassSearchSettings = mFields.GetData();
            DataClassInfoProvider.SetDataClassInfo(mDci);
        }

        if (DisplaySaved)
        {
            ShowChangesSaved();
        }
        RaiseOnSaved();
    }
コード例 #2
0
    /// <summary>
    /// Stores data and raises OnSaved event.
    /// </summary>
    public void SaveData()
    {
        // Clear old values
        mFields = new SearchSettings();
        Changed = false;

        // Create new SearchSettingInfos
        foreach (ColumnDefinition column in mAttributes)
        {
            SearchSettingsInfo ssiOld = null;

            // Return old data to compare changes
            if (mInfos != null)
            {
                DataRow[] dr = mInfos.Tables[0].Select("name = '" + column.ColumnName + "'");
                if ((dr.Length > 0) && (mSearchSettings != null))
                {
                    ssiOld = mSearchSettings.GetSettingsInfo((string)dr[0]["id"]);
                }
            }

            var  name       = column.ColumnName;
            bool content    = (pnlContent.FindControl(name + SearchSettings.CONTENT) as CMSCheckBox)?.Checked ?? false;
            bool searchable = (pnlContent.FindControl(name + SearchSettings.SEARCHABLE) as CMSCheckBox)?.Checked ?? false;
            bool tokenized  = (pnlContent.FindControl(name + SearchSettings.TOKENIZED) as CMSCheckBox)?.Checked ?? false;

            bool azureContent     = (pnlContent.FindControl(name + AzureSearchFieldFlags.CONTENT) as CMSCheckBox)?.Checked ?? false;
            bool azureRetrievable = (pnlContent.FindControl(name + AzureSearchFieldFlags.RETRIEVABLE) as CMSCheckBox)?.Checked ?? false;
            bool azureSearchable  = (pnlContent.FindControl(name + AzureSearchFieldFlags.SEARCHABLE) as CMSCheckBox)?.Checked ?? false;

            bool azureFacetable  = (pnlContent.FindControl(name + AzureSearchFieldFlags.FACETABLE) as CMSCheckBox)?.Checked ?? false;
            bool azureFilterable = (pnlContent.FindControl(name + AzureSearchFieldFlags.FILTERABLE) as CMSCheckBox)?.Checked ?? false;
            bool azureSortable   = (pnlContent.FindControl(name + AzureSearchFieldFlags.SORTABLE) as CMSCheckBox)?.Checked ?? false;

            TextBox txt       = pnlContent.FindControl(name + SearchSettings.IFIELDNAME) as TextBox;
            string  fieldname = txt != null ? txt.Text : String.Empty;

            bool fieldChanged;

            var flags = new Dictionary <string, bool>(StringComparer.OrdinalIgnoreCase);

            flags.Add(SearchSettings.CONTENT, content);
            flags.Add(SearchSettings.SEARCHABLE, searchable);
            flags.Add(SearchSettings.TOKENIZED, tokenized);

            if (DisplayAzureFields)
            {
                flags.Add(AzureSearchFieldFlags.CONTENT, azureContent);
                flags.Add(AzureSearchFieldFlags.RETRIEVABLE, azureRetrievable);
                flags.Add(AzureSearchFieldFlags.SEARCHABLE, azureSearchable);

                flags.Add(AzureSearchFieldFlags.FACETABLE, azureFacetable);
                flags.Add(AzureSearchFieldFlags.SORTABLE, azureSortable);
                flags.Add(AzureSearchFieldFlags.FILTERABLE, azureFilterable);
            }

            var ssi = SearchHelper.CreateSearchSettings(name, flags, fieldname, ssiOld, out fieldChanged);

            if (fieldChanged)
            {
                Changed = true;
            }

            mFields.SetSettingsInfo(ssi);
        }

        // Store values to DB
        if (mDci != null)
        {
            mDci.ClassSearchSettings = mFields.GetData();
            DataClassInfoProvider.SetDataClassInfo(mDci);
        }

        if (DisplaySaved)
        {
            ShowChangesSaved();
        }
        RaiseOnSaved();
    }
コード例 #3
0
    /// <summary>
    /// Stores data and raises OnSaved event.
    /// </summary>
    public void SaveData()
    {
        // Clear old values
        mFields = new SearchSettings();
        Changed = false;

        // Create new SearchSettingInfos
        foreach (ColumnDefinition column in mAttributes)
        {
            SearchSettingsInfo ssiOld = null;

            // Return old data to compare changes
            if (mInfos != null)
            {
                DataRow[] dr = mInfos.Tables[0].Select("name = '" + column.ColumnName + "'");
                if ((dr.Length > 0) && (mSearchSettings != null))
                {
                    ssiOld = mSearchSettings.GetSettingsInfo((string)dr[0]["id"]);
                }
            }

            var name = column.ColumnName;
            var content = false;
            var searchable = false;
            var tokenized = false;
            var fieldname = string.Empty;

            CMSCheckBox chk = (CMSCheckBox)pnlContent.FindControl(name + SearchSettings.CONTENT);
            if (chk != null)
            {
                content = chk.Checked;
            }
            chk = (CMSCheckBox)pnlContent.FindControl(name + SearchSettings.SEARCHABLE);
            if (chk != null)
            {
                searchable = chk.Checked;
            }
            chk = (CMSCheckBox)pnlContent.FindControl(name + SearchSettings.TOKENIZED);
            if (chk != null)
            {
                tokenized = chk.Checked;
            }
            TextBox txt = (TextBox)pnlContent.FindControl(name + SearchSettings.IFIELDNAME);
            if (txt != null)
            {
                fieldname = txt.Text;
            }

            bool fieldChanged;
            var ssi = SearchHelper.CreateSearchSettings(name, content, searchable, tokenized, fieldname, ssiOld, out fieldChanged);

            if (fieldChanged)
            {
                Changed = true;
            }

            mFields.SetSettingsInfo(ssi);
        }

        // Store values to DB
        if (mDci != null)
        {
            mDci.ClassSearchSettings = mFields.GetData();
            DataClassInfoProvider.SetDataClassInfo(mDci);
        }

        if (DisplaySaved)
        {
            ShowChangesSaved();
        }
        RaiseOnSaved();
    }
コード例 #4
0
    /// <summary>
    /// Stores data and raises OnSaved event.
    /// </summary>
    public void SaveData()
    {
        // Clear old values
        fields = new SearchSettings();
        SearchSettingsInfo ssi;
        CheckBox           chk;
        TextBox            txt;

        changed = false;

        // Create new SearchSettingInfos
        foreach (object[] item in attributes)
        {
            object[] obj = item;
            ssi = new SearchSettingsInfo();
            SearchSettingsInfo ssiOld = null;
            ssi.ID   = Guid.NewGuid();
            ssi.Name = obj[0].ToString();

            // Return old data to compare changes
            if (infos != null)
            {
                DataRow[] dr = infos.Tables[0].Select("name = '" + (string)obj[0] + "'");
                if ((dr != null) && (dr.Length > 0) && (ss != null))
                {
                    ssiOld = ss.GetSettingsInfo((string)dr[0]["id"]);
                }
            }

            // Store 'Content' value
            chk = (CheckBox)pnlContent.FindControl(obj[0] + CONTENT);
            if (chk != null)
            {
                // Check change
                if ((ssiOld != null) && (ssiOld.Content != chk.Checked))
                {
                    changed = true;
                }

                ssi.Content = chk.Checked;
            }

            // Store 'Searchable' value
            chk = (CheckBox)pnlContent.FindControl(obj[0] + SEARCHABLE);
            if (chk != null)
            {
                // Check change
                if ((ssiOld != null) && (ssiOld.Searchable != chk.Checked))
                {
                    changed = true;
                }

                ssi.Searchable = chk.Checked;
            }

            // Store 'Tokenized' value
            chk = (CheckBox)pnlContent.FindControl(obj[0] + TOKENIZED);
            if (chk != null)
            {
                // Check change
                if ((ssiOld != null) && (ssiOld.Tokenized != chk.Checked))
                {
                    changed = true;
                }

                ssi.Tokenized = chk.Checked;
            }

            // Store 'iFieldname' value
            txt = (TextBox)pnlContent.FindControl(obj[0] + IFIELDNAME);
            if (txt != null)
            {
                string fieldname = ValidationHelper.GetCodeName(txt.Text.Trim(), null, null);
                if (fieldname.Length > 200)
                {
                    fieldname = fieldname.Substring(0, 200);
                }
                if (!String.IsNullOrEmpty(fieldname))
                {
                    // Check change
                    if ((ssiOld != null) && (ssiOld.FieldName != fieldname))
                    {
                        changed = true;
                    }

                    ssi.FieldName = fieldname;
                }
            }

            fields.SetSettingsInfo(ssi);
        }

        // Store values to DB
        if (dci != null)
        {
            dci.ClassSearchSettings = fields.GetData();
            DataClassInfoProvider.SetDataClass(dci);
        }

        if (DisplaySaved)
        {
            ShowChangesSaved();
        }
        RaiseOnSaved();
    }
コード例 #5
0
    /// <summary>
    /// Stores data and raises OnSaved event.
    /// </summary>
    public void SaveData()
    {
        // Clear old values
        fields = new SearchSettings();
        SearchSettingsInfo ssi;
        CheckBox chk;
        TextBox txt;
        changed = false;

        // Create new SearchSettingInfos
        foreach (object[] item in attributes)
        {
            object[] obj = item;
            ssi = new SearchSettingsInfo();
            SearchSettingsInfo ssiOld = null;
            ssi.ID = Guid.NewGuid();
            ssi.Name = obj[0].ToString();

            // Return old data to compare changes
            if (infos != null)
            {
                DataRow[] dr = infos.Tables[0].Select("name = '" + (string)obj[0] + "'");
                if ((dr != null) && (dr.Length > 0) && (ss != null))
                {
                    ssiOld = ss.GetSettingsInfo((string)dr[0]["id"]);
                }
            }

            // Store 'Content' value
            chk = (CheckBox)pnlContent.FindControl(obj[0] + CONTENT);
            if (chk != null)
            {
                // Check change
                if ((ssiOld != null) && (ssiOld.Content != chk.Checked))
                {
                    changed = true;
                }

                ssi.Content = chk.Checked;
            }

            // Store 'Searchable' value
            chk = (CheckBox)pnlContent.FindControl(obj[0] + SEARCHABLE);
            if (chk != null)
            {
                // Check change
                if ((ssiOld != null) && (ssiOld.Searchable != chk.Checked))
                {
                    changed = true;
                }

                ssi.Searchable = chk.Checked;
            }

            // Store 'Tokenized' value
            chk = (CheckBox)pnlContent.FindControl(obj[0] + TOKENIZED);
            if (chk != null)
            {
                // Check change
                if ((ssiOld != null) && (ssiOld.Tokenized != chk.Checked))
                {
                    changed = true;
                }

                ssi.Tokenized = chk.Checked;
            }

            // Store 'iFieldname' value
            txt = (TextBox)pnlContent.FindControl(obj[0] + IFIELDNAME);
            if (txt != null)
            {
                string fieldname = ValidationHelper.GetCodeName(txt.Text.Trim(), null, null);
                if (fieldname.Length > 200)
                {
                    fieldname = fieldname.Substring(0, 200);
                }
                if (!String.IsNullOrEmpty(fieldname))
                {
                    // Check change
                    if ((ssiOld != null) && (ssiOld.FieldName != fieldname))
                    {
                        changed = true;
                    }

                    ssi.FieldName = fieldname;
                }
            }

            fields.SetSettingsInfo(ssi);
        }

        // Store values to DB
        if (dci != null)
        {
            dci.ClassSearchSettings = fields.GetData();
            DataClassInfoProvider.SetDataClass(dci);
        }

        if (DisplaySaved)
        {
            ShowChangesSaved();
        }
        RaiseOnSaved();
    }