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 functions.inc and added the $_SCRIPT->sets... When I view source after the page is displayed, I do not see a reference to either.

Guidance?

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

        $_SCRIPTS->setJavaScriptLibrary('jquery');
 


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.

Tom

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.

Ben

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 function.inc and the code below to my index.php. All appears to be in order.
PHP Formatted Code

// MAIN
    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
https://www.geeklog.net/forum/viewtopic.php?showtopic=93575