function __construct($area, $joption, $extension, $setup = null, $cont_vars = array()) { require_once dirname(__FILE__) . DIRECTORY_SEPARATOR . 'gcloader.php'; if (phpversion('pdo') !== false and in_array('mysql', PDO::getAvailableDrivers())) { //good, we use PDO \GCore\Libs\Base::setConfig('db_adapter', 'joomla'); } else { \GCore\Libs\Base::setConfig('db_adapter', 'joomla'); } \GCore\C::set('EXTENSIONS_PATHS', array(dirname(__FILE__) . DS . 'admin' . DS . 'extensions' . DS => JPATH_SITE . DS . 'administrator' . DS . 'components' . DS, dirname(__FILE__) . DS . 'extensions' . DS => JPATH_SITE . DS . 'components' . DS)); \GCore\C::set('EXTENSIONS_URLS', array(\JFactory::getURI()->root() . 'libraries/cegcore/admin/extensions/' => \JFactory::getURI()->root() . 'administrator/components/', \JFactory::getURI()->root() . 'libraries/cegcore/extensions/' => \JFactory::getURI()->root() . 'components/')); \GCore\C::set('EXTENSIONS_NAMES', array('chronomigrator' => 'com_chronomigrator', 'chronoforms' => 'com_chronoforms5', 'chronoconnectivity' => 'com_chronoconnectivity5', 'chronoforums' => 'com_chronoforums', 'chronolistings' => 'com_chronolistings', 'chronocommunity' => 'com_chronocommunity', 'chronosearch' => 'com_chronosearch', 'chronocontact' => 'com_chronocontact', $extension => 'com_' . $joption)); //GCore\Libs\Url::$root_ext = array('components', 'com_'.$joption); \GCore\Bootstrap::initialize('joomla', array('component' => 'com_' . $joption, 'ext' => $extension)); $tvout = strlen(\GCore\Libs\Request::data('tvout', null)) > 0 ? \GCore\Libs\Request::data('tvout') : ''; $controller = \GCore\Libs\Request::data('cont', ''); $action = \GCore\Libs\Request::data('act', ''); if (is_callable($setup)) { $return_vars = $setup(); if (!empty($return_vars)) { $cont_vars = array_merge($cont_vars, $return_vars); } } if (isset($cont_vars['controller'])) { $controller = $cont_vars['controller']; } if (isset($cont_vars['action'])) { $action = $cont_vars['action']; } $cont_vars['_app_thread'] = 'gcore'; ob_start(); echo \GCore\Libs\AppJ::call($area, $extension, $controller, $action, $cont_vars); $output = ob_get_clean(); $output = \GCore\C::fix_urls($output); if ($tvout == 'ajax') { echo $output; $mainframe = \JFactory::getApplication(); $mainframe->close(); } else { ob_start(); $toolbar = \GCore\Helpers\Module::render(array('type' => 'toolbar', 'site' => 'admin', 'params' => '')); $messages = \GCore\Libs\AppJ::getSystemMessages(); echo \GCore\Libs\AppJ::getHeader(); if ($toolbar) { echo $toolbar; echo '<div style="clear:both;"></div>'; } echo $messages; //echo \GCore\Libs\AppJ::getHeader(); $system_output = ob_get_clean(); $system_output = \GCore\C::fix_urls($system_output); echo $system_output; echo $output; } }
public static function getHeader() { $doc = \GCore\Libs\Document::getInstance(); static $used; if (!isset($used)) { $used = array(); } $chunks = array(); /*$chunks[] = ' <script type="text/javascript"> if("undefined"==typeof window.jQuery){}else{ var gcore_jQuery_bak = window.jQuery; var gcore_$_bak = window.$; } if("undefined"==typeof gcore_jQuery){}else{ window.jQuery = gcore_jQuery; window.$ = gcore_$; } </script> ';*/ $JDocument = \JFactory::getDocument(); if (!method_exists($JDocument, 'addCustomTag')) { return; } //add css files list foreach ($doc->cssfiles as $k => $cssfile) { if (empty($used['cssfiles'][$k])) { $used['cssfiles'][$k] = true; $cssfile['href'] = \GCore\C::fix_urls($cssfile['href']); $chunks[] = \GCore\Helpers\Html::_concat($cssfile, array_keys($cssfile), '<link ', ' />'); //$JDocument->addStyleSheet(\GCore\C::fix_urls($cssfile['href'])); } } //add css code list foreach ($doc->csscodes as $media => $codes) { $chunks[] = \GCore\Helpers\Html::container('style', implode("\n", $codes), array('type' => 'text/css', 'media' => $media)); //$JDocument->addStyleDeclaration(implode("\n", $codes)); foreach ($doc->csscodes[$media] as $k => $code) { unset($doc->csscodes[$media][$k]); } } //add js files list foreach ($doc->jsfiles as $k => $jsfile) { /*if(strpos($jsfile['src'], 'jquery.js') !== false){ $document = \JFactory::getDocument(); $document->addScript($jsfile['src']); continue; }*/ if (empty($used['jsfiles'][$k])) { $used['jsfiles'][$k] = true; $jsfile['src'] = \GCore\C::fix_urls($jsfile['src']); $chunks[] = \GCore\Helpers\Html::_concat($jsfile, array_keys($jsfile), '<script ', '></script>'); } } //add js code list foreach ($doc->jscodes as $type => $codes) { //$chunks[] = \GCore\Helpers\Html::container('script', implode("\n", $codes), array('type' => $type)); foreach ($doc->jscodes[$type] as $k => $code) { $chunks[] = \GCore\Helpers\Html::container('script', $code, array('type' => $type)); unset($doc->jscodes[$type][$k]); } } foreach ($doc->headertags as $k => $code) { $chunks[] = $code; unset($doc->headertags[$k]); } /*$chunks[] = ' <script type="text/javascript"> if("undefined"==typeof gcore_jQuery){ var gcore_jQuery = window.jQuery; var gcore_$ = window.$; } if("undefined"==typeof gcore_jQuery_bak){}else{ window.jQuery = gcore_jQuery_bak; window.$ = gcore_$_bak; } </script> ';*/ //$header = implode("\n", array_filter($chunks)); foreach ($chunks as $chunk) { if (in_array($chunk, $JDocument->_custom)) { continue; } $JDocument->addCustomTag(\GCore\C::fix_urls($chunk)); } //return implode("\n", array_filter($chunks)); }