tra('jQuery'), 'documentation' => 'PluginJQ', 'description' => tra('Add jQuery JavaScript code'), 'prefs' => [ 'wikiplugin_jq' ], 'body' => tra('JavaScript code'), 'validate' => 'all', 'filter' => 'none', 'iconname' => 'code', 'introduced' => 3, 'params' => [ 'notonready' => [ 'required' => false, 'name' => tra('Not On Ready'), 'description' => tra('Do not execute on document ready (execute inline)'), 'since' => '3.0', ], 'nojquery' => [ 'required' => false, 'name' => tra('No JavaScript'), 'description' => tra('Optional markup for when JavaScript is off'), 'since' => '3.0', ], 'lang' => [ 'required' => false, 'name' => tra('Language'), 'description' => tra('Language to apply JQuery to'), 'since' => '13.0', ], ] ]; } function wikiplugin_jq($data, $params) { global $prefs; $headerlib = TikiLib::lib('header'); extract($params, EXTR_SKIP); $nojquery = isset($nojquery) ? $nojquery : tr(''); if ($prefs['javascript_enabled'] != 'y') { return $nojquery; } $notonready = isset($notonready) ? $notonready : false; if (! empty($lang) && $lang != $prefs['language']) { return; } // Need to manually decode greater than and less than (not sure if we want to decode all HTML entities $data = str_replace('<', '<', $data); $data = str_replace('>', '>', $data); if (! $notonready) { $headerlib->add_jq_onready($data); } else { $headerlib->add_js($data); } return ''; }