TbHtml::createButton PHP Method

createButton() protected static method

Creates a button the of given type.
protected static createButton ( string $type, string $label, array $htmlOptions ) : string
$type string the button type.
$label string the button label.
$htmlOptions array additional HTML attributes.
return string the button.
    protected static function createButton($type, $label, $htmlOptions)
    {
        $url = TbArray::popValue('url', $htmlOptions, '#');
        $ajaxOptions = TbArray::popValue('ajaxOptions', $htmlOptions, array());
        switch ($type) {
            case self::BUTTON_TYPE_HTML:
                return parent::htmlButton($label, $htmlOptions);
            case self::BUTTON_TYPE_SUBMIT:
                $htmlOptions['type'] = 'submit';
                return parent::htmlButton($label, $htmlOptions);
            case self::BUTTON_TYPE_RESET:
                $htmlOptions['type'] = 'reset';
                return parent::htmlButton($label, $htmlOptions);
            case self::BUTTON_TYPE_IMAGE:
                return parent::imageButton($label, $htmlOptions);
            case self::BUTTON_TYPE_LINKBUTTON:
                return parent::linkButton($label, $htmlOptions);
            case self::BUTTON_TYPE_AJAXLINK:
                return parent::ajaxLink($label, $url, $ajaxOptions, $htmlOptions);
            case self::BUTTON_TYPE_AJAXBUTTON:
                $htmlOptions['ajax'] = $ajaxOptions;
                return parent::htmlButton($label, $htmlOptions);
            case self::BUTTON_TYPE_INPUTBUTTON:
                return parent::button($label, $htmlOptions);
            case self::BUTTON_TYPE_INPUTSUBMIT:
                $htmlOptions['type'] = 'submit';
                return parent::button($label, $htmlOptions);
            case self::BUTTON_TYPE_LINK:
                return self::link($label, $url, $htmlOptions);
            default:
                throw new CException('Invalid button type "' . $type . '".');
        }
    }
TbHtml