Ejemplo n.º 1
0
    /// <summary>
    /// Loads field types.
    /// </summary>
    /// <param name="type">Control type specifying which field types to load</param>
    public void LoadFieldTypes(FormUserControlTypeEnum type)
    {
        string selectedValue             = drpFieldType.SelectedValue;
        FieldEditorControlsEnum controls = GetDisplayedControls();

        // Clear list
        bool isPrimary = false;

        if (this.FieldInfo != null)
        {
            isPrimary = this.FieldInfo.PrimaryKey;
        }
        drpFieldType.Items.Clear();
        drpFieldType.DataTextField  = "UserControlDisplayName";
        drpFieldType.DataValueField = "UserControlCodeName";
        drpFieldType.DataSource     = FormHelper.GetFieldControlTypesWithUserControls(null, controls, true, isPrimary, type);
        drpFieldType.DataBind();

        // Add trackback controls when editing CMS.BlogPost document type
        if ((controls == FieldEditorControlsEnum.DocumentTypes) && (ClassName.ToLower() == "cms.blogpost"))
        {
            drpFieldType.Items.Add(new ListItem("Trackbacks - pinged URLs", "#uc#trackbackspingedurls"));
            drpFieldType.Items.Add(new ListItem("Trackbacks - not pinged URLs", "#uc#trackbacksnotpingedurls"));
        }

        // And set field value (if set before)
        if (drpFieldType.Items.FindByValue(selectedValue) != null)
        {
            drpFieldType.SelectedValue = selectedValue;
        }
    }
Ejemplo n.º 2
0
    /// <summary>
    /// Fill field types list.
    /// </summary>
    /// <param name="isPrimary">Determines whether the attribute is primary key</param>
    /// <param name="type">Control type</param>
    public void LoadFieldTypes(bool isPrimary, FormUserControlTypeEnum type, bool clearValue)
    {
        FieldEditorControlsEnum controls = GetControls();
        string selectedValue             = drpField.SelectedValue;

        // Clear list
        drpField.Items.Clear();
        drpField.ClearSelection();
        drpField.SelectedValue  = null;
        drpField.DataTextField  = "UserControlDisplayName";
        drpField.DataValueField = "UserControlCodeName";

        DataSet ds = FormHelper.GetFieldControlTypesWithUserControls(this.AttributeType, controls, false, isPrimary, type);

        if ((controls != FieldEditorControlsEnum.DocumentTypes) || (ClassName.ToLower() != "cms.blogpost"))
        {
            List <DataRow> rowList = new List <DataRow>();

            // Find trackback controls when not editing CMS.BlogPost document type
            foreach (DataRow row in ds.Tables[0].Rows)
            {
                string controlCodeName = row[drpField.DataValueField].ToString().ToLowerInvariant();
                if ((controlCodeName == "trackbackspingedurls") || (controlCodeName == "trackbacksnotpingedurls"))
                {
                    rowList.Add(row);
                }
            }

            // Remove trackback controls when not editing CMS.BlogPost document type
            foreach (DataRow row in rowList)
            {
                ds.Tables[0].Rows.Remove(row);
            }
        }

        drpField.DataSource = ds;
        drpField.DataBind();

        // Preselect value
        if ((drpField.Items.FindByValue(selectedValue) != null) && !clearValue)
        {
            drpField.SelectedValue = selectedValue;
        }
    }
Ejemplo n.º 3
0
    /// <summary>
    /// Fill field types list.
    /// </summary>
    /// <param name="isPrimary">Determines whether the attribute is primary key</param>
    /// <param name="type">Control type</param>
    public void LoadFieldTypes(bool isPrimary, FormUserControlTypeEnum type, bool clearValue)
    {
        FieldEditorControlsEnum controls = GetControls();
        string selectedValue = drpField.SelectedValue;

        // Clear list
        drpField.Items.Clear();
        drpField.ClearSelection();
        drpField.SelectedValue = null;
        drpField.DataTextField = "UserControlDisplayName";
        drpField.DataValueField = "UserControlCodeName";

        DataSet ds = FormHelper.GetFieldControlTypesWithUserControls(this.AttributeType, controls, false, isPrimary, type);

        if ((controls != FieldEditorControlsEnum.DocumentTypes) || (ClassName.ToLower() != "cms.blogpost"))
        {
            List<DataRow> rowList = new List<DataRow>();

            // Find trackback controls when not editing CMS.BlogPost document type
            foreach (DataRow row in ds.Tables[0].Rows)
            {
                string controlCodeName = row[drpField.DataValueField].ToString().ToLowerInvariant();
                if ((controlCodeName == "trackbackspingedurls") || (controlCodeName == "trackbacksnotpingedurls"))
                {
                    rowList.Add(row);
                }
            }

            // Remove trackback controls when not editing CMS.BlogPost document type
            foreach (DataRow row in rowList)
            {
                ds.Tables[0].Rows.Remove(row);
            }
        }

        drpField.DataSource = ds;
        drpField.DataBind();

        // Preselect value
        if ((drpField.Items.FindByValue(selectedValue) != null) && !clearValue)
        {
            drpField.SelectedValue = selectedValue;
        }
    }
    /// <summary>
    /// Loads field types.
    /// </summary>
    /// <param name="type">Control type specifying which field types to load</param>
    public void LoadFieldTypes(FormUserControlTypeEnum type)
    {
        string selectedValue = drpFieldType.SelectedValue;
        FieldEditorControlsEnum controls = GetDisplayedControls();

        // Clear list
        bool isPrimary = false;
        if (this.FieldInfo != null)
        {
            isPrimary = this.FieldInfo.PrimaryKey;
        }
        drpFieldType.Items.Clear();
        drpFieldType.DataTextField = "UserControlDisplayName";
        drpFieldType.DataValueField = "UserControlCodeName";
        drpFieldType.DataSource = FormHelper.GetFieldControlTypesWithUserControls(null, controls, true, isPrimary, type);
        drpFieldType.DataBind();

        // Add trackback controls when editing CMS.BlogPost document type
        if ((controls == FieldEditorControlsEnum.DocumentTypes) && (ClassName.ToLower() == "cms.blogpost"))
        {
            drpFieldType.Items.Add(new ListItem("Trackbacks - pinged URLs", "#uc#trackbackspingedurls"));
            drpFieldType.Items.Add(new ListItem("Trackbacks - not pinged URLs", "#uc#trackbacksnotpingedurls"));
        }

        // And set field value (if set before)
        if (drpFieldType.Items.FindByValue(selectedValue) != null)
        {
            drpFieldType.SelectedValue = selectedValue;
        }
    }