Extension:Javascript
<?php
- Extension:JavascriptTemplate:Php
- - Licenced under LGPL (http://www.gnu.org/copyleft/lesser.html)
- - Author: http://www.organicdesign.co.nz/nad
- - Started: 2007-06-25, see article history
if (!defined('MEDIAWIKI')) die('Not an entry point.');
define('JAVASCRIPT_VERSION','0.0.0, 2007-06-25');
$wgJavascriptFiles = array(); $wgJavascriptScripts = array();
$wgExtensionFunctions[] = 'wfSetupJavascript';
- Build list of files from list, no duplicate names
foreach ($wgJavascriptFiles as $path) { if (is_file($path)) $wgJavascriptFiles[$path] = true; elseif (is_dir($path)) { if ($dir = opendir($path)) { while (false !== ($file = readdir($dir))) $wgJavascriptFiles[$file] = true; closedir($dir); } } }
$wgExtensionCredits['other'][] = array( 'name' => 'Javascript', 'author' => 'User:Nad', 'description' => 'Handles the loading of Javascript files. Scripts loaded: '.join(', ',$wgJavascriptFiles), 'url' => 'http://www.mediawiki.org/wiki/Extension:Javascript', 'version' => JAVASCRIPT_VERSION );
- Notes:
- Load all dirs/files in $wgJavascriptPaths into $wgJavascriptScripts using filename as key
- Other extensions can add to the list if they need to
- After all extenions are loaded and $wgOut is established, add all the script
function wfSetupJavascript() { global $wgOut,$wgJavascriptFiles; foreach (array_keys($wgJavascriptFiles) as $src) $wgOut->addScript("<script type=\"text/javascript\" src=\"$src\"></script>\n"); }
?>