diff --git a/Makefile b/Makefile index 96afca0..388133a 100644 --- a/Makefile +++ b/Makefile @@ -31,7 +31,18 @@ clean: bindata.go: client client/* rm -fr ./clientpack - php ./clientpack.php + cp -r ./client ./clientpack + sed -i -re 's~//IIFEMODE:~~g' clientpack/dcwebui.js + uglifyjs clientpack/dcwebui.js -o clientpack/dcwebui.min.js -c -m + lessc --clean-css clientpack/dcwebui.css clientpack/dcwebui.min.css + #php ./clientpack.php + ./minipack clientpack/index.htm css dcwebui.css clientpack/dcwebui.min.css + ./minipack clientpack/index.htm js dcwebui.js clientpack/dcwebui.min.js + ./minipack clientpack/index.htm js socket.io-1.7.2.js clientpack/socket.io-1.7.2.js + html-minifier --collapse-whitespace -o clientpack/index.min.htm clientpack/index.htm + mv clientpack/index.min.htm clientpack/index.htm + rm ./clientpack/*.js + rm ./clientpack/*.css go-bindata -nomemcopy -prefix clientpack clientpack $(BINNAME).exe: bindata.go *.go diff --git a/clientpack.php b/clientpack.php deleted file mode 100755 index 4fb9379..0000000 --- a/clientpack.php +++ /dev/null @@ -1,60 +0,0 @@ -#!/usr/bin/php -]+dcwebui.css[^>]*>~', function() { return ''; }, $html_content); - -// Embed JS into HTML file - -$html_content = preg_replace_callback('~]+dcwebui.js[^>]*>~', function() { return ''; }, $html_content); - -// Embed socketio into HTML file - -define('SIO_NAME', 'socket.io-1.7.2.js'); -$html_content = preg_replace_callback('~]+'.SIO_NAME.'[^>]*>~', function() { return ''; }, $html_content); - -// Minify the combined file - -file_put_contents('clientpack/index.htm', $html_content); - -`html-minifier --collapse-whitespace -o clientpack/index.min.htm clientpack/index.htm`; - -// Clean up files - -unlink('clientpack/index.htm'); -unlink('clientpack/dcwebui.js'); -unlink('clientpack/dcwebui.min.js'); -unlink('clientpack/dcwebui.css'); -unlink('clientpack/dcwebui.min.css'); -unlink('clientpack/'.SIO_NAME); -rename('clientpack/index.min.htm', 'clientpack/index.htm'); diff --git a/minipack b/minipack new file mode 100755 index 0000000..5ffd65e --- /dev/null +++ b/minipack @@ -0,0 +1,23 @@ +#!/usr/bin/php + ['script', 'script'], + 'css' => ['link', 'style'], + ]; + + $html_content = preg_replace_callback( + '~<'. $modes[$mode][0] .'[^>]+'.$find.'[^>]*>~', + function() use ($modes, $mode, $sourcefile) { + return '<'. $modes[$mode][1] . '>'.file_get_contents($sourcefile).''; + }, + $html_content + ); + + file_put_contents($filename, $html_content); +} + +embed($_SERVER['argv'][1], $_SERVER['argv'][2], $_SERVER['argv'][3], $_SERVER['argv'][4]);