0byt3m1n1
Path:
/
data
/
applications
/
aps.bak
/
sugarcrm
/
6.5.16-25
/
standard
/
htdocs
/
jssource
/
[
Home
]
File: jsmin.php
<?php class SugarMin { /** * jsParser will take javascript source code and minify it. * * Note: There is a lot of redundant code since both passes * operate similarly but with slight differences. It will probably * be a good idea to refactor the code at a later point when it is stable. * * JSParser will perform 3 passes on the code. Pass 1 takes care of single * line and mult-line comments. Pass 2 performs some sanitation on each of the lines * and pass 3 works on stripping out unnecessary spaces. * * @param string $js * @param string $currentOptions * @return void */ private function __construct($text, $compression) { $this->text = trim($text)."\n"; $this->compression = $compression; } /** * Entry point function to minify javascript. * * @param string $js Javascript source code as a string. * @param string $compression Compression option. {light, deep}. * @return string $output Output javascript code as a string. */ static public function minify($js, $compression = 'light') { try { $me = new SugarMin($js, $compression); $output = $me->jsParser(); return $output; } catch (Exception $e) { // Exception handling is left up to the implementer. throw $e; } } protected function jsParser() { require_once('jssource/Minifier.php'); return Minifier::minify($this->text); } }