Subject: SCRIPTS class

Posted on: 11/11/11 03:44pm
By: Al262

I am trying to set both a CSS file and include JS file in my plugin. Since it is a plugin, I opened up my and added the $_SCRIPT->sets... When I view source after the page is displayed, I do not see a reference to either.


PHP Formatted Code

* Return <head> items for this plugin
* @return  html for <link>, <script>, <style>...

function plugin_getheadercode_myplug()
    global $_SCRIPTS;
    $headerText  = "\n<!-- Javascript and CSS includes -->\n";
    $_SCRIPTS->setCSSFile('myplug', '/myplug/jquery-lightbox-0.5.css', false);
    $_SCRIPTS->setJavaScriptFile('myplug', '/myplug/jquery-lightbox-0.5.js');
    return $headerText;

Re: SCRIPTS class

Posted on: 12/11/11 03:51pm
By: Laugh

Your code should work though it looks like your lightbox requires jQuery so you should make sure it is loaded as well by adding

PHP Formatted Code


to tell Geeklog to include it if not already added by some other process. Also setJavaScriptFile by default will add the javascript to the footer not the header.


Re: SCRIPTS class

Posted on: 13/11/11 05:59am
By: ::Ben

As sample, you can also look at the code of the jquery plugin or maps plugin.


Re: SCRIPTS class

Posted on: 13/11/11 10:27pm
By: Al262

Thanks for the guidance. I added the $_SCRIPTS->setJavaScriptLibrary('jquery'Wink; to the and the code below to my index.php. All appears to be in order.
PHP Formatted Code

    global $_SCRIPTS;
    $_SCRIPTS->setCSSFile('storygallery', '/storygallery/style.css', false);
    $_SCRIPTS->setJavaScriptFile('storygallery', '/storygallery/jquery.tablesorter.min.js');
        $js  = "\n" . '$(document).ready(function()' . "\n";
        $js .= '{' . "\n";
        $js .= '    $("#storygallery").tablesorter( {sortList: [[0,0], [1,0]]} );' . "\n";
        $js .= '}' . "\n";
        $js .= ');' . "\n";
    $_SCRIPTS->setJavaScript($js, true);
$display .= COM_siteHeader('menu', $LANG_STORYGALLERY_1['plugin_name']);

Geeklog - Forum