From faba9b36cb20a6d73f657f835b19e746c5ab7488 Mon Sep 17 00:00:00 2001 From: Pierre HUBERT Date: Sat, 26 Jan 2019 16:46:36 +0100 Subject: [PATCH] Fix build system. --- assets/js/components/calls/callWindow.js | 4 +- assets/js/components/calls/controller.js | 2 +- assets/js/components/calls/currentList.js | 4 +- .../components/conversations/chatWindows.js | 2 +- builder | 58 ++++++++++++++----- system/config/dev.config.php | 6 +- system/system.php | 4 ++ 7 files changed, 57 insertions(+), 23 deletions(-) diff --git a/assets/js/components/calls/callWindow.js b/assets/js/components/calls/callWindow.js index 51c7fca7..4b40ea66 100644 --- a/assets/js/components/calls/callWindow.js +++ b/assets/js/components/calls/callWindow.js @@ -694,7 +694,7 @@ ComunicWeb.components.calls.callWindow = { call.signalClient.sendSignal(member.user_call_id, JSON.stringify(data)); }); - peer.on("message", message => { + peer.on("message", function(message){ console.log("Message from remote peer: " + message); }); @@ -788,7 +788,7 @@ ComunicWeb.components.calls.callWindow = { /** * @type {HTMLVideoElement} */ - let video = createElem2({ + var video = createElem2({ appendTo: call.window.videosTarget, type: "video" }); diff --git a/assets/js/components/calls/controller.js b/assets/js/components/calls/controller.js index 91a40f86..8ac9477a 100644 --- a/assets/js/components/calls/controller.js +++ b/assets/js/components/calls/controller.js @@ -94,7 +94,7 @@ ComunicWeb.components.calls.controller = { * * @return Cached calls configuration */ - getConfig() { + getConfig: function() { return ComunicWeb.components.calls.__config; }, diff --git a/assets/js/components/calls/currentList.js b/assets/js/components/calls/currentList.js index 483cbd5a..9f4863a4 100644 --- a/assets/js/components/calls/currentList.js +++ b/assets/js/components/calls/currentList.js @@ -42,7 +42,7 @@ ComunicWeb.components.calls.currentList = { * @param {number} id The ID of the call to add */ addCallToList: function(id){ - let list = this.getCurrentCallsList(); + var list = this.getCurrentCallsList(); if(!list.includes(""+id)) list.push(id); @@ -57,7 +57,7 @@ ComunicWeb.components.calls.currentList = { */ removeCallFromList: function(id){ - let list = this.getCurrentCallsList(); + var list = this.getCurrentCallsList(); while(list.includes(""+id)) list.splice(list.indexOf(""+id), 1); diff --git a/assets/js/components/conversations/chatWindows.js b/assets/js/components/conversations/chatWindows.js index c4494620..37b183dc 100644 --- a/assets/js/components/conversations/chatWindows.js +++ b/assets/js/components/conversations/chatWindows.js @@ -586,7 +586,7 @@ ComunicWeb.components.conversations.chatWindows = { //for conversation of two people //Add the call button - let button = createElem2({ + var button = createElem2({ insertBefore: conversation.box.boxTools.firstChild, type: "button", class: "btn btn-box-tool", diff --git a/builder b/builder index c03af7bc..402eb058 100755 --- a/builder +++ b/builder @@ -63,11 +63,12 @@ function files_to_file(array $files, string $target) : bool { /** * Copy an array of files into a specific target file using uglifyJS * + * @param string $begin_path The begining of each path * @param array $files The name of the source file * @param string $target The target file * @return bool TRUE in case of success / FALSE in case of failure */ -function js_files_to_file(array $files, string $target){ +function js_files_to_file(string $begin_path, array $files, string $target){ $source = ""; @@ -77,17 +78,46 @@ function js_files_to_file(array $files, string $target){ foreach($files as $file){ - //Compress file - notice("Parsing with UGLIFYJS: ".$file); - exec("/usr/bin/uglifyjs '".$file."' -c -o ".TEMP_FILE, $output, $exit_code); - - //Get the content of the file - $source .= "\n".file_get_contents(TEMP_FILE); + $uglifyjs = true; - if($exit_code != 0){ - notice("An error (".$exit_code.") occured while parsing file ".$file, TRUE); - exit(10); + //Check if file entry is an array or a string + if(is_string($file)) + $file = $begin_path.$file; + + //It is an array + else if(is_array($file)) { + + //Check if we have special information for uglifyjs + if(isset($file["uglifyjs"])) + $uglifyjs = $file["uglifyjs"]; + + $file = $begin_path.$file["path"]; } + + //Else the kind of entry is not supported + else + throw new Exception("Excepted string or array, got something else for javascript entry!"); + + //Compress file + if($uglifyjs){ + notice("Parsing with UGLIFYJS: ".$file); + exec("/usr/bin/uglifyjs '".$file."' -c -o ".TEMP_FILE, $output, $exit_code); + + //Get the content of the file + $source .= "\n".file_get_contents(TEMP_FILE); + + if($exit_code != 0){ + notice("An error (".$exit_code.") occured while parsing file ".$file, TRUE); + exit(10); + } + + } + + //Else we take the file as is + else + $source .= "\n".file_get_contents($file); + + } //Delete the temp file @@ -192,9 +222,8 @@ files_to_file($thirdPartyDebugFiles, $targetThirdPartyCSS); //3rd party JS notice("Third Party JS"); -$thirdPartyDebugFiles = array_put_begining($path_debug_assets, $debug::THIRD_PARTY_JS); $targetThirdPartyJS = $path_release_assets.$release::THIRD_PARTY_JS; -js_files_to_file($thirdPartyDebugFiles, $targetThirdPartyJS); +js_files_to_file($path_debug_assets, $debug::THIRD_PARTY_JS, $targetThirdPartyJS); //App CSS notice("App CSS"); @@ -204,9 +233,8 @@ files_to_file($appDebugFiles, $targetAppCSS); //App JS notice("App JS"); -$appDebugFiles = array_put_begining($path_debug_assets, $debug::APP_JS); $targetAppJS = $path_release_assets.$release::APP_JS; -js_files_to_file($appDebugFiles, $targetAppJS); +js_files_to_file($path_debug_assets, $debug::APP_JS, $targetAppJS); //Make some adpations on third party files @@ -231,6 +259,8 @@ rcopy($path_debug_assets."3rdparty/adminLTE/plugins/iCheck/flat/icheck-flat-imgs rcopy($path_debug_assets."img/", $path_release_assets."img/"); rcopy($path_debug_assets."templates/", $path_release_assets."templates/"); +//Copy songs +rcopy($path_debug_assets."audio/", $path_release_assets."audio/"); //Copy dark theme rcopy($path_debug_assets."css/dark_theme.css", $path_release_assets."css/dark_theme.css"); diff --git a/system/config/dev.config.php b/system/config/dev.config.php index a208003a..a2cb329d 100644 --- a/system/config/dev.config.php +++ b/system/config/dev.config.php @@ -161,8 +161,8 @@ class Dev { "3rdparty/js-bbcode-parser/bbcode-parser.js", //Simple peer - "3rdparty/simplepeer/simplepeer.min.js", - "3rdparty/SignalExchangerClient/SignalExchangerClient.js" + array("path" => "3rdparty/simplepeer/simplepeer.min.js", "uglifyjs" => false), + array("path" => "3rdparty/SignalExchangerClient/SignalExchangerClient.js", "uglifyjs" => false) ); /** @@ -320,7 +320,7 @@ class Dev { "js/common/formChecker.js", "js/common/date.js", "js/common/system.js", - "js/common/songPlayer.js", + array("path" => "js/common/songPlayer.js", "uglifyjs" => false), //Languages "js/langs/en.inc.js", diff --git a/system/system.php b/system/system.php index a2666115..c399d3db 100644 --- a/system/system.php +++ b/system/system.php @@ -134,6 +134,10 @@ function src_inc_list_js(string $assets_url, array $files) : string { //Process the list of files foreach($files as $file){ + + if(is_array($file)) + $file = $file["path"]; + $source .= src_inc_js($assets_url.$file)."\n\t\t"; }