public static function preCompress(Ajde_Resource_Local_Compressor $compressor) { // Check type as this function can be called from Ajde_Event binding to // abstract Ajde_Resource_Local_Compressor class in Ajde_Resource_Local_Compressor::saveCache() if ($compressor->getType() == Ajde_Resource::TYPE_STYLESHEET) { $compressor->setContents(self::clean($compressor->getContents())); } }
private function _compileScript() { // Register models Ajde_Model::register('browser'); // Get browsers $browsers = new BrowserCollection(); $browsers->orderBy("sort"); $browsers->load(); $json = $browsers->getJSON(); // Compile browsers.js $browsersJsSrc = file_get_contents(MODULE_DIR . 'umb/res/js/browsers.src.js'); $browsersJs = str_replace("'###JSONSTRINGHERE###'", $json, $browsersJsSrc); file_put_contents(MODULE_DIR . 'umb/res/js/browsers.js', $browsersJs); // Init compressed resource /* @var $compressor Ajde_Resource_Local_Compressor_Js */ $compressor = Ajde_Resource_Local_Compressor::fromType(Ajde_Resource::TYPE_JAVASCRIPT); // Sources for script $sources = array(new Ajde_Resource_Local(Ajde_Resource::TYPE_JAVASCRIPT, MODULE_DIR . 'umb/', 'umb'), new Ajde_Resource_Local(Ajde_Resource::TYPE_JAVASCRIPT, MODULE_DIR . 'umb/', 'browsers'), new Ajde_Resource_Local(Ajde_Resource::TYPE_JAVASCRIPT, MODULE_DIR . 'umb/', 'detect'), new Ajde_Resource_Local(Ajde_Resource::TYPE_JAVASCRIPT, MODULE_DIR . 'umb/', 'status'), new Ajde_Resource_Local(Ajde_Resource::TYPE_JAVASCRIPT, MODULE_DIR . 'umb/', 'widget')); // Add to compressor foreach ($sources as $source) { /* @var $source Ajde_Resource */ $compressor->addResource($source); } // Process and get compressed script $resource = $compressor->process(); $js = $resource->getContents(); // Write file_put_contents('umb.js', $js); }
public function renderCompressedResources(array $types = array('*')) { // Reset compressors $this->_compressors = array(); $linkCode = array(self::RESOURCE_POSITION_FIRST => '', self::RESOURCE_POSITION_DEFAULT => '', self::RESOURCE_POSITION_LAST => ''); foreach ($this->getResources() as $resource) { /* @var $resource Ajde_Resource */ if (current($types) == '*' || in_array($resource->getType(), $types)) { if ($resource instanceof Ajde_Resource_Local && !$resource->hasNotEmpty('arguments')) { if (!isset($this->_compressors[$resource->getType()])) { $this->_compressors[$resource->getType()] = Ajde_Resource_Local_Compressor::fromType($resource->getType()); } $compressor = $this->_compressors[$resource->getType()]; /* @var $compressor Ajde_Resource_Local_Compressor */ $compressor->addResource($resource); } else { $linkCode[$resource->getPosition()] .= $resource->getLinkCode() . PHP_EOL; } } } foreach ($this->_compressors as $compressor) { $resource = $compressor->process(); $linkCode[self::RESOURCE_POSITION_DEFAULT] .= $resource->getLinkCode() . PHP_EOL; } return $linkCode[self::RESOURCE_POSITION_FIRST] . $linkCode[self::RESOURCE_POSITION_DEFAULT] . $linkCode[self::RESOURCE_POSITION_LAST]; }
public function __construct() { $this->setType(Ajde_Resource::TYPE_STYLESHEET); parent::__construct(); }
public function __construct() { $this->setType(Ajde_Resource::TYPE_JAVASCRIPT); parent::__construct(); }