Whats wrong with using the state of the art tool here, that is designed to handle assets? https://github.com/markstory/asset_compress
Am Donnerstag, 9. Januar 2014 23:05:45 UTC+1 schrieb CrotchFrog: > > Every so often I find it necessary to overwrite certain styles or > implement styles or js functionality specific to certain pages in my app. > For some projects my app application-wide stylesheets and js can get really > big really fast and I find it more manageable to break them down into > smaller files and only call them when needed. I put together a really > simple Asset Helper that replaces my Html->css and Html->script and > incorporates the assets based on controller/actions. The comment was made > recently that it was a really bad idea and would create issues as the app > grows larger and traffic to the app increases. They didn't elaborate on the > comment so now it leaves me wondering. > > I can't see where it would create any issues to speak of. My css and js > directories contain a fair amount of files but is still extremely small by > comparison so I don't really see any type of significant performance hit. > Am I overlooking something here? > > // AssetHelper.php > > App::uses('AppHelper', 'View/Helper'); > App::uses('Folder', 'Utility'); > > Class AssetHelper extends AppHelper{ > > public $helpers = array('Html'); > > public function css($css_array = null){ > > $css = new Folder(WWW_ROOT . 'css'); > $css_files = $css->find('.*\.css'); > > if ($this->params['controller'] == 'pages'){ > $file = "pages_{$this->params['pass'][0]}"; > } else { > $file = > $this->params['controller'].'_'.$this->params['action']; > } > > if (in_array($file.'.css', $css_files)){ > array_push($css_array, $file); > } > > return $this->Html->css($css_array); > } > > public function js($js_array = null){ > > $js = new Folder(WWW_ROOT . 'js'); > $js_files = $js->find('.*\.js'); > > if ($this->params['controller'] == 'pages'){ > $file = "pages_{$this->params['pass'][0]}"; > } else { > $file = > $this->params['controller'].'_'.$this->params['action']; > } > > if (in_array($file.'.js', $js_files)){ > array_push($js_array, $file); > } > > return $this->Html->script($js_array); > } > > } > -- Like Us on FaceBook https://www.facebook.com/CakePHP Find us on Twitter http://twitter.com/CakePHP --- You received this message because you are subscribed to the Google Groups "CakePHP" group. To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscr...@googlegroups.com. To post to this group, send email to cake-php@googlegroups.com. Visit this group at http://groups.google.com/group/cake-php. For more options, visit https://groups.google.com/groups/opt_out.