Example #1
0
 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);
 }
Example #3
0
 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];
 }
Example #4
0
File: Css.php Project: nabble/ajde
 public function __construct()
 {
     $this->setType(Ajde_Resource::TYPE_STYLESHEET);
     parent::__construct();
 }
Example #5
0
 public function __construct()
 {
     $this->setType(Ajde_Resource::TYPE_JAVASCRIPT);
     parent::__construct();
 }