createButton : function()

in xf/ui/xf.ui.popup.js [190:242]


        createButton : function (buttonDescr)  {
            var jQButton = $('<button></button>'),
                attrs = {};

            attrs['id'] = buttonDescr.id || XF.utils.uniqueID();
            attrs['class'] = buttonDescr['class'] || '';
            attrs['name'] = buttonDescr.name || attrs.id;
            buttonDescr.small = buttonDescr.small || '';

            jQButton.html(buttonDescr.text);

            //Set button's attributes
            // Icon
            if (buttonDescr.icon && buttonDescr.icon !== '') {
                attrs['data-icon'] = buttonDescr.icon;
            }

            // Icon position
            if (buttonDescr.iconpos && buttonDescr.iconpos !== '') {
                attrs['data-iconpos'] = buttonDescr.iconpos;
            }

            // Button size
            if (buttonDescr.small && buttonDescr.small !== '') {
                attrs['data-small'] = buttonDescr.small;
            }

            // Button appearance 
            if (buttonDescr.appearance && buttonDescr.appearance !== '') {
                attrs['data-appearance'] = buttonDescr.appearance;
            }

            // Button is special or not
            if (buttonDescr.special && buttonDescr.special !== '') {
                attrs['data-special'] = buttonDescr.special;
            }

            // Button is 'alert' or not
            if (buttonDescr.alert && buttonDescr.alert !== '') {
                attrs['data-alert'] = buttonDescr.alert;
            }

            jQButton.attr(attrs);

            // Set function for button pressed
            if (_.isFunction(buttonDescr.handler)) {
                jQButton.on('tap', buttonDescr.handler);
            }

            XF.ui.button.render(jQButton[0]);

            return jQButton;
        }