Actions

API15

JHTMLBehavior/modal

From Joomla! Documentation

< API15:JHTMLBehavior
Revision as of 12:22, 12 May 2013 by JoomlaWikiBot (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Replacement filing cabinet.png
This Namespace has been archived - Please Do Not Edit or Create Pages in this namespace. Pages contain information for a Joomla! version which is no longer supported. It exists only as a historical reference, will not be improved and its content may be incomplete.

[<! removed edit link to red link >]

<! removed transcluded page call, red link never existed >

Contents

Syntax

modal($selector='a.modal', $params=array())
Parameter Name Default Value Description
$selector 'a.modal'
$params array()

Defined in

libraries/joomla/html/html/behavior.php

Importing

jimport( 'joomla.html.html.behavior' );

Source Body

function modal($selector='a.modal', $params = array())
{
        static $modals;
        static $included;
 
        $document =& JFactory::getDocument();
 
        // Load the necessary files if they haven't yet been loaded
        if (!isset($included)) {
 
                // Load the javascript and css
                JHTML::script('modal.js');
                JHTML::stylesheet('modal.css');
 
                $included = true;
        }
 
        if (!isset($modals)) {
                $modals = array();
        }
 
        $sig = md5(serialize(array($selector,$params)));
        if (isset($modals[$sig]) && ($modals[$sig])) {
                return;
        }
 
        // Setup options object
        $opt['ajaxOptions']     = (isset($params['ajaxOptions']) && (is_array($params['ajaxOptions']))) ? $params['ajaxOptions'] : null;
        $opt['size']            = (isset($params['size']) && (is_array($params['size']))) ? $params['size'] : null;
        $opt['onOpen']          = (isset($params['onOpen'])) ? $params['onOpen'] : null;
        $opt['onClose']         = (isset($params['onClose'])) ? $params['onClose'] : null;
        $opt['onUpdate']        = (isset($params['onUpdate'])) ? $params['onUpdate'] : null;
        $opt['onResize']        = (isset($params['onResize'])) ? $params['onResize'] : null;
        $opt['onMove']          = (isset($params['onMove'])) ? $params['onMove'] : null;
        $opt['onShow']          = (isset($params['onShow'])) ? $params['onShow'] : null;
        $opt['onHide']          = (isset($params['onHide'])) ? $params['onHide'] : null;
 
        $options = JHTMLBehavior::_getJSObject($opt);
 
        // Attach modal behavior to document
        $document->addScriptDeclaration("
        window.addEvent('domready', function() {
 
                SqueezeBox.initialize(".$options.");
 
                $$('".$selector."').each(function(el) {
                        el.addEvent('click', function(e) {
                                new Event(e).stop();
                                SqueezeBox.fromElement(el);
                        });
                });
        });");
 
        // Set static array
        $modals[$sig] = true;
        return;
}

[<! removed edit link to red link >] <! removed transcluded page call, red link never existed >

Examples

<CodeExamplesForm />