/**
  * Optimize website by aggregating css and js
  *
  */
 public function process($sHtml)
 {
     JCH_DEBUG ? JchPlatformProfiler::start('Process', TRUE) : null;
     JCH_DEBUG ? JchPlatformProfiler::start('LoadClass') : null;
     loadJchOptimizeClass(array('JchOptimizeBase', 'JchOptimizeParser', 'JchOptimizeFileRetriever', 'JchOptimizeLinkBuilder', 'JchOptimizeHelper'));
     JCH_DEBUG ? JchPlatformProfiler::stop('LoadClass', TRUE) : null;
     try {
         $oParser = new JchOptimizeParser($this->params, $sHtml, JchOptimizeFileRetriever::getInstance());
         $oLinkBuilder = new JchOptimizeLinkBuilder($oParser);
         $oLinkBuilder->insertJchLinks();
         $oParser->runCookieLessDomain();
         $oParser->lazyLoadImages();
         $this->params->set('isXhtml', $oLinkBuilder->isXhtml());
         $this->params->set('isHtml5', $oParser->isHtml5());
         $sOptimizedHtml = JchOptimizeHelper::minifyHtml($oParser->getHtml(), $this->params);
     } catch (Exception $ex) {
         JchOptimizeLogger::log($ex->getMessage(), $this->params);
         $sOptimizedHtml = $sHtml;
     }
     spl_autoload_unregister('loadJchOptimizeClass');
     JCH_DEBUG ? JchPlatformProfiler::stop('Process', TRUE) : null;
     JCH_DEBUG ? JchPlatformProfiler::attachProfiler($sOptimizedHtml) : null;
     if (version_compare(PHP_VERSION, '7', '>=')) {
         ini_set('pcre.jit', $this->jit);
     }
     return $sOptimizedHtml;
 }
Ejemplo n.º 2
0
        /**
         * Optimize website by aggregating css and js
         *
         */
        public function process($sHtml)
        {
                JCH_DEBUG ? JchPlatformProfiler::mark('beforeProcess plgSystem (JCH Optimize)') : null;

                loadJchOptimizeClass(array('JchOptimizeBase', 'JchOptimizeParser', 'JchOptimizeFileRetriever', 
                        'JchOptimizeLinkBuilder', 'JchOptimizeHelper'));
                
                JCH_DEBUG ? JchPlatformProfiler::mark('afterLoadClass plgSystem (JCH Optimize)') : null;
                
                try
                {
                        $oParser = new JchOptimizeParser($this->params, $sHtml, JchOptimizeFileRetriever::getInstance());

                        $oLinkBuilder = new JchOptimizeLinkBuilder($oParser);
                        $oLinkBuilder->insertJchLinks();

                        $sOptimizedHtml = JchOptimizeHelper::minifyHtml($oParser->getHtml(), $this->params);
                }
                catch (Exception $ex)
                {
                        JchOptimizeLogger::log($ex->getMessage(), $this->params);

                        $sOptimizedHtml = $sHtml;
                }

                spl_autoload_unregister('loadJchOptimizeClass');

                JCH_DEBUG ? JchPlatformProfiler::mark('afterProcess plgSystem (JCH Optimize)') : null;

                return $sOptimizedHtml;
        }
Ejemplo n.º 3
0
 /**
  * Optimize website by aggregating css and js
  *
  */
 public function process()
 {
     global $_PROFILER, $oParams;
     JCH_DEBUG ? $_PROFILER->mark('beforeProcess plgSystem (JCH Optimize)') : null;
     $sHtml = JResponse::getBody();
     try {
         $oParser = new JchOptimizeParser($oParams, $sHtml);
         $oLinkBuilder = new JchOptimizeLinkBuilder($oParams, $oParser);
         $oLinkBuilder->insertJchLinks();
         $this->sSearchArea = $oParser->getSearchArea();
         $sHtml = $this->minifyHtml($oParser->getHtml());
     } catch (Exception $ex) {
         if ($oParams->get('log', 0)) {
             JchOptimizeLogger::log($ex->getMessage());
         }
     }
     JResponse::setBody($sHtml);
     spl_autoload_unregister('loadJchOptimizeClass');
     JCH_DEBUG ? $_PROFILER->mark('afterProcess plgSystem (JCH Optimize)') : null;
 }
Ejemplo n.º 4
0
 /**
  * Optimize website by aggregating css and js
  *
  */
 public function process($sHtml)
 {
     JCH_DEBUG ? JchPlatformProfiler::start('Process', TRUE) : null;
     JCH_DEBUG ? JchPlatformProfiler::start('LoadClass') : null;
     loadJchOptimizeClass(array('JchOptimizeBase', 'JchOptimizeParser', 'JchOptimizeFileRetriever', 'JchOptimizeLinkBuilder', 'JchOptimizeHelper'));
     JCH_DEBUG ? JchPlatformProfiler::stop('LoadClass', TRUE) : null;
     try {
         $oParser = new JchOptimizeParser($this->params, $sHtml, JchOptimizeFileRetriever::getInstance());
         $oLinkBuilder = new JchOptimizeLinkBuilder($oParser);
         $oLinkBuilder->insertJchLinks();
         $this->params->set('xhtml', $oLinkBuilder->isXhtml());
         $sOptimizedHtml = JchOptimizeHelper::minifyHtml($oParser->getHtml(), $this->params);
     } catch (Exception $ex) {
         JchOptimizeLogger::log($ex->getMessage(), $this->params);
         $sOptimizedHtml = $sHtml;
     }
     spl_autoload_unregister('loadJchOptimizeClass');
     JCH_DEBUG ? JchPlatformProfiler::stop('Process', TRUE) : null;
     JCH_DEBUG ? JchPlatformProfiler::attachProfiler($sOptimizedHtml) : null;
     return $sOptimizedHtml;
 }
Ejemplo n.º 5
0
 /**
  * 
  * @param type $oParams
  * @return type
  */
 protected function getLinks($oParams)
 {
     $oLinkBuilder = new JchOptimizeLinkBuilder($oParams);
     $sId = md5('getLinks' . serialize($oParams->get('jchmenu') . $oParams->get('pro_searchBody')));
     $aFunction = array($this, 'processLinks');
     $aLinks = $oLinkBuilder->loadCache($aFunction, FALSE, $sId);
     return $aLinks;
 }