Пример #1
0
 /**
  * Internal function to run variable tags
  *
  * @param String $type
  * @param Array $assets
  * @param Array $settings
  * @return String
  */
 protected function _run($type, $assets, $settings = array())
 {
     MinimeePlugin::log(Craft::t('MinimeeVariable::' . $type . '() is being run now.'));
     $minified = minimee()->service->run($type, $assets, $settings);
     if (!$minified) {
         $html = minimee()->service->makeTagsByType($type, $assets);
         return minimee()->service->makeTwigMarkupFromHtml($html);
     }
     $html = minimee()->service->makeTagsByType($type, $minified);
     return minimee()->service->makeTwigMarkupFromHtml($html);
 }
Пример #2
0
 /**
  * Define our filter
  * 
  * @param String $html
  * @param Array $settings
  * @return String
  */
 public function minimeeFilter($html, $settings = array())
 {
     // we need a type to continue
     $type = $this->detectType($html);
     if (!$type) {
         MinimeePlugin::log('Could not determine the type of asset to process.', LogLevel::Warning);
         return minimee()->service->makeTwigMarkupFromHtml($html);
     }
     // we need to find some assets in the HTML
     $assets = $this->pregMatchAssetsByType($type, $html);
     if (!$assets) {
         MinimeePlugin::log('No assets of type ' . $type . ' could be found.', LogLevel::Warning);
         return minimee()->service->makeTwigMarkupFromHtml($html);
     }
     // hand off the rest to our service
     $minified = minimee()->service->run($type, $assets, $settings);
     // false means we failed, so return original markup
     if (!$minified) {
         return minimee()->service->makeTwigMarkupFromHtml($html);
     }
     $minifiedAsTags = minimee()->service->makeTagsByType($type, $minified);
     // return minified tag(s) as Twig Markup
     return minimee()->service->makeTwigMarkupFromHtml($minifiedAsTags);
 }
Пример #3
0
 /**
  * Fetch settings from our plugin / config
  *
  * @return Void
  */
 protected function initPluginSettings()
 {
     $settings = minimee()->plugin->getSettings()->getAttributes();
     // as of v2.0 we can take filesystem configs
     if (version_compare('2.0', craft()->getVersion(), '<=')) {
         $settings = $this->supportLegacyNamesFromConfig($settings);
         foreach ($settings as $attribute => $value) {
             if (craft()->config->exists($attribute, 'minimee')) {
                 $settings[$attribute] = craft()->config->get($attribute, 'minimee');
             }
         }
     }
     $this->setPluginSettings($settings);
     MinimeePlugin::log(Craft::t('Minimee has been initialised.'));
 }
Пример #4
0
 /**
  * Handle backwards-compat for 'cssTagTemplate' and 'jsTagTemplate' setting names.
  * Remove in 1.x release!
  *
  * @param Array $runtimeSettings
  * @return Array
  */
 protected function supportLegacyNamesAtRuntime($runtimeSettings = array())
 {
     foreach ($this->_deprecatedSettingsMap as $oldAttributeName => $newAttributeName) {
         if (array_key_exists($oldAttributeName, $runtimeSettings)) {
             $message = Craft::t('Deprecated runtime setting name: change {oldAttributeName} to {runtimeSettings}.', array('oldAttributeName' => $oldAttributeName, 'runtimeSettings' => $runtimeSettings));
             MinimeePlugin::log($message, LogLevel::Info);
             $runtimeSettings[$newAttributeName] = $runtimeSettings[$oldAttributeName];
             unset($runtimeSettings[$oldAttributeName]);
         }
     }
     return $runtimeSettings;
 }