/** * printJs method * * @param mixed $sizeLimit null * @return void * @access protected */ function _printJs($sizeLimit = null) { foreach ($this->__jsViewStack as $package => $files) { if (isset($this->__jsStack[$package])) { $this->__jsStack[$package] = Set::merge($this->__jsStack[$package], $this->__jsViewStack[$package]); } else { $this->__jsStack[$package] = $this->__jsViewStack[$package]; } } $this->__jsViewStack = array(); if (!$this->__jsStack) { $return = $this->__scripts; $this->__scripts = ''; return $return; } if ($sizeLimit === true) { if (!isset($this->__RequestHandler)) { App::import('Component', 'RequestHandler'); $this->__RequestHandler = new RequestHandlerComponent(); } if ($this->__RequestHandler->isMobile()) { $sizeLimit = 25 * 1024; } } if (isset($this->__jsStack['jquery'])) { $this->__jsStack = array_merge(array('jquery' => $this->__jsStack['jquery']), $this->__jsStack); } $urls = MiCompressor::url($this->__jsStack, array('type' => 'js', 'sizeLimit' => $sizeLimit)); $this->__jsStack = array('default' => array()); $return = array(); foreach ((array) $urls as $url) { $url = str_replace($this->webroot, '/', $this->url($url)); $return[] = $this->Html->script($url); } $return[] = $this->__scripts . $this->__scriptsView; $this->__scripts = $this->__scriptsView = ''; return "\r" . implode("\r", $return) . "\r"; }