Alive Developer
Alive Developer

Reputation: 1022

Magento widget available types

I'm developing a widget with Magento. I followed instructions HERE with success. Now i would like to change the behaviour of the backend widget insertion. In particular I would like to change the type of some inputs, from actual multiselect to something else (i'd like to have a file upload).

the code that does this is:

<parameters>
  <enabled_services>
    <label>Enabled Services</label>
    <visible>1</visible>
    <required>1</required>
    <type>multiselect</type>
    <source_model>widgettwo/services</source_model>
  </enabled_services>
</parameters>

So, instead of multiselect, i'd like to have something else. Where can I find a list of all available types?. Is there a guide somewhere?

Upvotes: 0

Views: 4959

Answers (1)

seanbreeden
seanbreeden

Reputation: 6097

In the tutorial you cite above it tells you the types.

From: http://www.magentocommerce.com/knowledge-base/entry/tutorial-creating-a-magento-widget-part-2

            <!-- Option type -->
            <type>select</type>
            <!--
                It can be either one of the simple form element types, e.g.:
                    <type>text</type>
                    <type>select</type>
                    <type>multiselect</type>
                    <type>label</type>
                ...

                or it can define a renderer which will be used to create
                this configuration field in the edit form.
                Renderer is supposed to be a block reference
                in 'block_group/block_path' format, e.g.:
                    <type>mymodule/some_custom_block</type>
            -->

            <!-- Source values for drop-downs and multiselects -->

            <!--
                There are two possible ways to define a set of available values.
                The first way is to specify the list of available values right here:
            -->
            <values>
                <one translate="label">
                    <value>1</value>
                    <label>One</label>
                </one>
                <two translate="label">
                    <value>2</value>
                    <label>Two</label>
                </two>
                <three translate="label">
                    <value>3</value>
                    <label>Three</label>
                </three>
            </values>

            <!--
                The second way is to specify the source model,
                which must have toOptionArray() public method available.
                The method should return an array of values and labels
                in the following format:
                    array(
                        array('value' => 'value1', 'label' => 'Label 1'),
                        array('value' => 'value2', 'label' => 'Label 2'),
                        array('value' => 'value2', 'label' => 'Label 3'),
                    );
                Source model name is specified in usual
                'model_group/model_path' format, e.g.:
            -->
            <source_model>adminhtml/system_config_source_yesno</source_model>

            <!-- Additional helper block to be created on the edit form page, optional -->
            <helper_block>
                <!-- Helper block reference in regular 'block_group/block_path' format -->
                <type>module/block_type</type>

                <!-- Arguments for the block constructor, optional  -->
                <data>
                    <value1>Value1</value1>
                    <value2>Value1</value2>
                    <value3>
                        <one>One</one>
                        <two>Two</two>
                    </value3>
                </data>
            </helper_block>

            <!--
                Here is the full example of helper block definition
                from catalog module widgets:

                <helper_block>
                    <type>adminhtml/catalog_product_widget_chooser</type>
                    <data>
                        <button translate="open">
                            <open>Select Product...</open>
                        </button>
                    </data>
                </helper_block>

            -->
        </first_option>

This StackExchange question may answer the upload part of your question: Images in Magento widgets

Upvotes: 2

Related Questions