Commit 052b7a4993127097aa7f840e35605e6dbf588f1f

Authored by Lucas D'Avila
1 parent 8b7a1c0e
Exists in master

Otimizado cache assets css e js.

ieducar/lib/Portabilis/View/Helper/Application.php
... ... @@ -82,7 +82,7 @@ class Portabilis_View_Helper_Application extends CoreExt_View_Helper_Abstract {
82 82 * @param array ou string $files Lista de scripts a serem carregados.
83 83 * @return null
84 84 */
85   - public static function loadJavascript($viewInstance, $files, $expireCacheDateFormat = 'dmY') {
  85 + public static function loadJavascript($viewInstance, $files, $appendAssetsVersionParam = true) {
86 86 if (! is_array($files))
87 87 $files = array($files);
88 88  
... ... @@ -91,9 +91,8 @@ class Portabilis_View_Helper_Application extends CoreExt_View_Helper_Abstract {
91 91 if (! in_array($file, self::$javascriptsLoaded)) {
92 92 self::$javascriptsLoaded[] = $file;
93 93  
94   - // cache controll
95   - $file .= '?assets_version=' . Portabilis_Assets_Version::VERSION;
96   - $file .= $expireCacheDateFormat ? '&timestamp=' . date($expireCacheDateFormat) : '';
  94 + if ($appendAssetsVersionParam)
  95 + $file .= '?assets_version=' . Portabilis_Assets_Version::VERSION;
97 96  
98 97 $viewInstance->appendOutput("<script type='text/javascript' src='$file'></script>");
99 98 }
... ... @@ -112,7 +111,7 @@ class Portabilis_View_Helper_Application extends CoreExt_View_Helper_Abstract {
112 111 * @param array ou string $files Lista de estilos a serem carregados.
113 112 * @return null
114 113 */
115   - public static function loadStylesheet($viewInstance, $files, $expireCacheDateFormat = 'dmY') {
  114 + public static function loadStylesheet($viewInstance, $files, $appendAssetsVersionParam = true) {
116 115 if (! is_array($files))
117 116 $files = array($files);
118 117  
... ... @@ -121,9 +120,8 @@ class Portabilis_View_Helper_Application extends CoreExt_View_Helper_Abstract {
121 120 if (! in_array($file, self::$stylesheetsLoaded)) {
122 121 self::$stylesheetsLoaded[] = $file;
123 122  
124   - // cache controll
125   - $file .= '?assets_version=' . Portabilis_Assets_Version::VERSION;
126   - $file .= $expireCacheDateFormat ? '&timestamp=' . date($expireCacheDateFormat) : '';
  123 + if ($appendAssetsVersionParam)
  124 + $file .= '?assets_version=' . Portabilis_Assets_Version::VERSION;
127 125  
128 126 $viewInstance->appendOutput("<link type='text/css' rel='stylesheet' href='$file'></script>");
129 127 }
... ... @@ -183,4 +181,17 @@ class Portabilis_View_Helper_Application extends CoreExt_View_Helper_Abstract {
183 181 // ui-autocomplete fixup
184 182 self::embedStylesheet($viewInstance, ".ui-autocomplete { font-size: 11px; }");
185 183 }
  184 +
  185 + public static function loadChosenLib($viewInstance) {
  186 + self::loadStylesheet($viewInstance, '/modules/Portabilis/Assets/Plugins/Chosen/chosen.css', false);
  187 + self::loadJavascript($viewInstance, '/modules/Portabilis/Assets/Plugins/Chosen/chosen.jquery.min.js', false);
  188 + }
  189 +
  190 + public static function loadAjaxChosenLib($viewInstance) {
  191 + // AjaxChosen requires this fixup, see https://github.com/meltingice/ajax-chosen
  192 + $fixupCss = ".chzn-container .chzn-results .group-result { display: list-item; }";
  193 + Portabilis_View_Helper_Application::embedStylesheet($viewInstance, $fixupCss);
  194 +
  195 + self::loadJavascript($viewInstance, '/modules/Portabilis/Assets/Plugins/AjaxChosen/ajax-chosen.min.js', false);
  196 + }
186 197 }
... ...
ieducar/lib/Portabilis/View/Helper/Input/MultipleSearch.php
... ... @@ -81,12 +81,10 @@ class Portabilis_View_Helper_Input_MultipleSearch extends Portabilis_View_Helper
81 81  
82 82  
83 83 protected function loadAssets() {
84   - $cssFile = '/modules/Portabilis/Assets/Plugins/Chosen/chosen.css';
85   - Portabilis_View_Helper_Application::loadStylesheet($this->viewInstance, $cssFile);
  84 + Portabilis_View_Helper_Application::loadChosenLib($this->viewInstance);
86 85  
87   - $jsFiles = array('/modules/Portabilis/Assets/Plugins/Chosen/chosen.jquery.min.js',
88   - '/modules/Portabilis/Assets/Javascripts/Frontend/Inputs/MultipleSearch.js');
89   - Portabilis_View_Helper_Application::loadJavascript($this->viewInstance, $jsFiles);
  86 + $jsFile = '/modules/Portabilis/Assets/Javascripts/Frontend/Inputs/MultipleSearch.js';
  87 + Portabilis_View_Helper_Application::loadJavascript($this->viewInstance, $jsFile);
90 88 }
91 89  
92 90  
... ...
ieducar/lib/Portabilis/View/Helper/Input/MultipleSearchAjax.php
... ... @@ -81,18 +81,11 @@ class Portabilis_View_Helper_Input_MultipleSearchAjax extends Portabilis_View_He
81 81  
82 82  
83 83 protected function loadAssets() {
84   - $cssFile = '/modules/Portabilis/Assets/Plugins/Chosen/chosen.css';
85   - Portabilis_View_Helper_Application::loadStylesheet($this->viewInstance, $cssFile);
  84 + Portabilis_View_Helper_Application::loadChosenLib($this->viewInstance);
  85 + Portabilis_View_Helper_Application::loadAjaxChosenLib($this->viewInstance);
86 86  
87   - // AjaxChosen requires this fixup, see https://github.com/meltingice/ajax-chosen
88   - $fixupCss = ".chzn-container .chzn-results .group-result { display: list-item; }";
89   - Portabilis_View_Helper_Application::embedStylesheet($this->viewInstance, $fixupCss);
90   -
91   -
92   - $jsFiles = array('/modules/Portabilis/Assets/Plugins/Chosen/chosen.jquery.min.js',
93   - '/modules/Portabilis/Assets/Plugins/AjaxChosen/ajax-chosen.min.js',
94   - '/modules/Portabilis/Assets/Javascripts/Frontend/Inputs/MultipleSearchAjax.js');
95   - Portabilis_View_Helper_Application::loadJavascript($this->viewInstance, $jsFiles);
  87 + $jsFile = '/modules/Portabilis/Assets/Javascripts/Frontend/Inputs/MultipleSearchAjax.js';
  88 + Portabilis_View_Helper_Application::loadJavascript($this->viewInstance, $jsFile);
96 89 }
97 90  
98 91  
... ...