From 3da348fff0c4ec6879d15449dfa575f949fdc762 Mon Sep 17 00:00:00 2001 From: Alexey Melnichuk Date: Wed, 22 Jul 2015 13:20:51 +0400 Subject: [PATCH] Change. Use `require "resources.functions.config"` to load config file. Change. Move `script_dir` definition into config file. --- core/databases/app_defaults.php | 41 ++++++++++++++----- resources/install/scripts/app.lua | 4 +- .../resources/scripts/start_recording.lua | 4 +- .../app/fax/resources/scripts/hangup_rx.lua | 4 +- .../install/scripts/app/provision/index.lua | 5 --- .../ring_groups/resources/scripts/confirm.lua | 2 +- .../app/voicemail/resources/scripts/mwi.lua | 4 +- resources/install/scripts/call_flow.lua | 4 +- .../install/scripts/call_flow_monitor.lua | 4 +- resources/install/scripts/call_forward.lua | 4 +- resources/install/scripts/cidlookup.lua | 4 +- .../install/scripts/destination_caller_id.lua | 4 +- resources/install/scripts/dial_string.lua | 4 +- resources/install/scripts/directory.lua | 9 +--- .../scripts/disa.callback.loopback.lua | 4 +- resources/install/scripts/disa.callback.lua | 4 +- resources/install/scripts/disa.plus.lua | 4 +- resources/install/scripts/do_not_disturb.lua | 4 +- resources/install/scripts/eavesdrop.lua | 4 +- resources/install/scripts/extension_queue.lua | 4 +- resources/install/scripts/fax_retry.lua | 4 +- resources/install/scripts/follow_me.lua | 4 +- resources/install/scripts/intercept.lua | 4 +- resources/install/scripts/intercept_group.lua | 4 +- resources/install/scripts/ivr_menu.lua | 4 +- resources/install/scripts/park.lua | 4 +- resources/install/scripts/park_monitor.lua | 4 +- resources/install/scripts/recordings.lua | 4 +- .../scripts/resources/functions/config.lua | 20 +++++++-- resources/install/scripts/streamfile.lua | 4 +- .../conf/autoload_configs/lua.conf.xml | 2 +- 31 files changed, 75 insertions(+), 104 deletions(-) diff --git a/core/databases/app_defaults.php b/core/databases/app_defaults.php index 7c40fae423..dfd247334e 100644 --- a/core/databases/app_defaults.php +++ b/core/databases/app_defaults.php @@ -24,6 +24,22 @@ Mark J Crane */ +global $IS_WINDOWS; + +if ($IS_WINDOWS == null) { + if (stristr(PHP_OS, 'WIN')) { $IS_WINDOWS = true; } else { $IS_WINDOWS = false; } +} + +if (!function_exists('correct_path')) { + function correct_path($p) { + global $IS_WINDOWS; + if ($IS_WINDOWS) { + return str_replace('/', '\\', $p); + } + return $p; + } +} + //proccess this only one time if ($domains_processed == 1) { @@ -113,28 +129,31 @@ if ($domains_processed == 1) { $tmp = "\n"; $tmp .= "--set the variables\n"; if (strlen($_SESSION['switch']['sounds']['dir']) > 0) { - $tmp .= " sounds_dir = [[".$_SESSION['switch']['sounds']['dir']."]];\n"; + $tmp .= correct_path(" sounds_dir = [[".$_SESSION['switch']['sounds']['dir']."]];\n"); } if (strlen($_SESSION['switch']['db']['dir']) > 0) { - $tmp .= " database_dir = [[".$_SESSION['switch']['db']['dir']."]];\n"; + $tmp .= correct_path(" database_dir = [[".$_SESSION['switch']['db']['dir']."]];\n"); } if (strlen($_SESSION['switch']['recordings']['dir']) > 0) { - $tmp .= " recordings_dir = [[".$recordings_dir."]];\n"; + $tmp .= correct_path(" recordings_dir = [[".$recordings_dir."]];\n"); } if (strlen($_SESSION['switch']['storage']['dir']) > 0) { - $tmp .= " storage_dir = [[".$_SESSION['switch']['storage']['dir']."]];\n"; + $tmp .= correct_path(" storage_dir = [[".$_SESSION['switch']['storage']['dir']."]];\n"); } if (strlen($_SESSION['switch']['voicemail']['dir']) > 0) { - $tmp .= " voicemail_dir = [[".$_SESSION['switch']['voicemail']['dir']."]];\n"; + $tmp .= correct_path(" voicemail_dir = [[".$_SESSION['switch']['voicemail']['dir']."]];\n"); } - $tmp .= " php_dir = [[".PHP_BINDIR."]];\n"; + if (strlen($_SESSION['switch']['scripts']['dir']) > 0) { + $tmp .= correct_path(" scripts_dir = [[".$_SESSION['switch']['scripts']['dir']."]];\n"); + } + $tmp .= correct_path(" php_dir = [[".PHP_BINDIR."]];\n"); if (substr(strtoupper(PHP_OS), 0, 3) == "WIN") { $tmp .= " php_bin = \"php.exe\";\n"; } else { $tmp .= " php_bin = \"php\";\n"; } - $tmp .= " document_root = [[".$_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."]];\n"; + $tmp .= correct_path(" document_root = [[".$_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."]];\n"); $tmp .= "\n"; if ((strlen($db_type) > 0) || (strlen($dsn_name) > 0)) { @@ -142,7 +161,7 @@ if ($domains_processed == 1) { $tmp .= " database = {}\n"; $tmp .= " database[\"type\"] = \"".$db_type."\";\n"; $tmp .= " database[\"name\"] = \"".$db_name."\";\n"; - $tmp .= " database[\"path\"] = \"".$db_path."\";\n"; + $tmp .= correct_path(" database[\"path\"] = [[".$db_path."]];\n"); if (strlen($dsn_name) > 0) { $tmp .= " database[\"system\"] = \"odbc://".$dsn_name.":".$dsn_username.":".$dsn_password."\";\n"; @@ -166,19 +185,19 @@ if ($domains_processed == 1) { $tmp .= "--additional info\n"; $tmp .= " domain_count = ".count($_SESSION["domains"]).";\n"; - $tmp .= " temp_dir = [[".$_SESSION['server']['temp']['dir']."]];\n"; + $tmp .= correct_path(" temp_dir = [[".$_SESSION['server']['temp']['dir']."]];\n"); if (isset($_SESSION['domain']['dial_string']['text'])) { $tmp .= " dial_string = \"".$_SESSION['domain']['dial_string']['text']."\";\n"; } $tmp .= "\n"; $tmp .= "--include local.lua\n"; - $tmp .= " dofile(scripts_dir..\"/resources/functions/file_exists.lua\");\n"; + $tmp .= " require(\"resources.functions.file_exists\");\n"; $tmp .= " if (file_exists(\"/etc/fusionpbx/local.lua\")) then\n"; $tmp .= " dofile(\"/etc/fusionpbx/local.lua\");\n"; $tmp .= " elseif (file_exists(\"/usr/local/etc/fusionpbx/local.lua\")) then\n"; $tmp .= " dofile(\"/usr/local/etc/fusionpbx/local.lua\");\n"; $tmp .= " elseif (file_exists(scripts_dir..\"/resources/local.lua\")) then\n"; - $tmp .= " dofile(scripts_dir..\"/resources/local.lua\");\n"; + $tmp .= " require(\"resources.local\");\n"; $tmp .= " end\n"; fwrite($fout, $tmp); unset($tmp); diff --git a/resources/install/scripts/app.lua b/resources/install/scripts/app.lua index 4d6f0c4361..6f90a8b836 100644 --- a/resources/install/scripts/app.lua +++ b/resources/install/scripts/app.lua @@ -25,9 +25,7 @@ --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --get the argv values script_name = argv[0]; diff --git a/resources/install/scripts/app/conference_center/resources/scripts/start_recording.lua b/resources/install/scripts/app/conference_center/resources/scripts/start_recording.lua index b2a9da42c6..018f60a92f 100644 --- a/resources/install/scripts/app/conference_center/resources/scripts/start_recording.lua +++ b/resources/install/scripts/app/conference_center/resources/scripts/start_recording.lua @@ -1,7 +1,5 @@ --get the scripts directory and include the config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --additional includes dofile(scripts_dir.."/resources/functions/file_exists.lua"); diff --git a/resources/install/scripts/app/fax/resources/scripts/hangup_rx.lua b/resources/install/scripts/app/fax/resources/scripts/hangup_rx.lua index e7e623d2d9..1d2e158291 100644 --- a/resources/install/scripts/app/fax/resources/scripts/hangup_rx.lua +++ b/resources/install/scripts/app/fax/resources/scripts/hangup_rx.lua @@ -26,9 +26,7 @@ api = freeswitch.API(); --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database dofile(scripts_dir.."/resources/functions/database_handle.lua"); diff --git a/resources/install/scripts/app/provision/index.lua b/resources/install/scripts/app/provision/index.lua index f0b910f3b7..7d4b9a6468 100644 --- a/resources/install/scripts/app/provision/index.lua +++ b/resources/install/scripts/app/provision/index.lua @@ -44,11 +44,6 @@ tries = 0; profile = "internal"; ---include config.lua - --scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - --dofile(scripts_dir.."/resources/functions/config.lua"); - --dofile(config()); - --connect to the database dofile(scripts_dir.."/resources/functions/database_handle.lua"); dbh = database_handle('system'); diff --git a/resources/install/scripts/app/ring_groups/resources/scripts/confirm.lua b/resources/install/scripts/app/ring_groups/resources/scripts/confirm.lua index b934862092..9af1d1e470 100644 --- a/resources/install/scripts/app/ring_groups/resources/scripts/confirm.lua +++ b/resources/install/scripts/app/ring_groups/resources/scripts/confirm.lua @@ -23,7 +23,7 @@ -- Mark J Crane --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); + require "resources.functions.config"; --set variables max_tries = "3"; diff --git a/resources/install/scripts/app/voicemail/resources/scripts/mwi.lua b/resources/install/scripts/app/voicemail/resources/scripts/mwi.lua index be241cc5d8..71a5366518 100644 --- a/resources/install/scripts/app/voicemail/resources/scripts/mwi.lua +++ b/resources/install/scripts/app/voicemail/resources/scripts/mwi.lua @@ -24,9 +24,7 @@ -- POSSIBILITY OF SUCH DAMAGE. --include the lua script - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --define general settings sleep = 300; diff --git a/resources/install/scripts/call_flow.lua b/resources/install/scripts/call_flow.lua index ee62ed61a6..08ed304b6d 100644 --- a/resources/install/scripts/call_flow.lua +++ b/resources/install/scripts/call_flow.lua @@ -29,9 +29,7 @@ digit_timeout = "5000"; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database dofile(scripts_dir.."/resources/functions/database_handle.lua"); diff --git a/resources/install/scripts/call_flow_monitor.lua b/resources/install/scripts/call_flow_monitor.lua index c6cff6aa04..9203d2fc91 100644 --- a/resources/install/scripts/call_flow_monitor.lua +++ b/resources/install/scripts/call_flow_monitor.lua @@ -32,9 +32,7 @@ debug["sql"] = false; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --general functions dofile(scripts_dir.."/resources/functions/file_exists.lua"); diff --git a/resources/install/scripts/call_forward.lua b/resources/install/scripts/call_forward.lua index 2269b3df85..3340129f61 100644 --- a/resources/install/scripts/call_forward.lua +++ b/resources/install/scripts/call_forward.lua @@ -51,9 +51,7 @@ api = freeswitch.API(); --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --check if the session is ready if (session:ready()) then diff --git a/resources/install/scripts/cidlookup.lua b/resources/install/scripts/cidlookup.lua index 338b12928d..f932d18077 100644 --- a/resources/install/scripts/cidlookup.lua +++ b/resources/install/scripts/cidlookup.lua @@ -79,9 +79,7 @@ end; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --check if the session is ready diff --git a/resources/install/scripts/destination_caller_id.lua b/resources/install/scripts/destination_caller_id.lua index 89742740ad..5a22ac71f7 100644 --- a/resources/install/scripts/destination_caller_id.lua +++ b/resources/install/scripts/destination_caller_id.lua @@ -25,9 +25,7 @@ -- POSSIBILITY OF SUCH DAMAGE. --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database dofile(scripts_dir.."/resources/functions/database_handle.lua"); diff --git a/resources/install/scripts/dial_string.lua b/resources/install/scripts/dial_string.lua index b4a7a2f522..6470426af9 100644 --- a/resources/install/scripts/dial_string.lua +++ b/resources/install/scripts/dial_string.lua @@ -34,9 +34,7 @@ db_extension_uuid = ""; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database dofile(scripts_dir.."/resources/functions/database_handle.lua"); diff --git a/resources/install/scripts/directory.lua b/resources/install/scripts/directory.lua index c987e13ff9..762dfd6dc5 100644 --- a/resources/install/scripts/directory.lua +++ b/resources/install/scripts/directory.lua @@ -34,14 +34,7 @@ search_count = 0; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); - ---include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database dofile(scripts_dir.."/resources/functions/database_handle.lua"); diff --git a/resources/install/scripts/disa.callback.loopback.lua b/resources/install/scripts/disa.callback.loopback.lua index 00b00d46fa..11627d1233 100644 --- a/resources/install/scripts/disa.callback.loopback.lua +++ b/resources/install/scripts/disa.callback.loopback.lua @@ -27,9 +27,7 @@ debug["sql"] = true; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database dofile(scripts_dir.."/resources/functions/database_handle.lua"); diff --git a/resources/install/scripts/disa.callback.lua b/resources/install/scripts/disa.callback.lua index 121da756a1..b809d0649a 100644 --- a/resources/install/scripts/disa.callback.lua +++ b/resources/install/scripts/disa.callback.lua @@ -27,9 +27,7 @@ debug["sql"] = false; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database dofile(scripts_dir.."/resources/functions/database_handle.lua"); diff --git a/resources/install/scripts/disa.plus.lua b/resources/install/scripts/disa.plus.lua index 5d8e3963d5..266d96854a 100644 --- a/resources/install/scripts/disa.plus.lua +++ b/resources/install/scripts/disa.plus.lua @@ -31,9 +31,7 @@ digit_timeout = "5000"; debug["sql"] = true; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database dofile(scripts_dir.."/resources/functions/database_handle.lua"); diff --git a/resources/install/scripts/do_not_disturb.lua b/resources/install/scripts/do_not_disturb.lua index 9b7666b156..2cc2dc486a 100644 --- a/resources/install/scripts/do_not_disturb.lua +++ b/resources/install/scripts/do_not_disturb.lua @@ -51,9 +51,7 @@ api = freeswitch.API(); --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --check if the session is ready if ( session:ready() ) then diff --git a/resources/install/scripts/eavesdrop.lua b/resources/install/scripts/eavesdrop.lua index bebaa6cb34..45e50e930d 100644 --- a/resources/install/scripts/eavesdrop.lua +++ b/resources/install/scripts/eavesdrop.lua @@ -28,9 +28,7 @@ digit_timeout = "5000"; extension = argv[1]; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --add the file_exists function dofile(scripts_dir.."/resources/functions/file_exists.lua"); diff --git a/resources/install/scripts/extension_queue.lua b/resources/install/scripts/extension_queue.lua index db83c14017..4c73818863 100644 --- a/resources/install/scripts/extension_queue.lua +++ b/resources/install/scripts/extension_queue.lua @@ -24,9 +24,7 @@ -- Riccardo Granchi --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database dofile(scripts_dir.."/resources/functions/database_handle.lua"); diff --git a/resources/install/scripts/fax_retry.lua b/resources/install/scripts/fax_retry.lua index e4d4d12ef7..6fff79ff2f 100644 --- a/resources/install/scripts/fax_retry.lua +++ b/resources/install/scripts/fax_retry.lua @@ -31,9 +31,7 @@ api = freeswitch.API(); --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database dofile(scripts_dir.."/resources/functions/database_handle.lua"); diff --git a/resources/install/scripts/follow_me.lua b/resources/install/scripts/follow_me.lua index 5485093413..b3f59cde20 100644 --- a/resources/install/scripts/follow_me.lua +++ b/resources/install/scripts/follow_me.lua @@ -51,9 +51,7 @@ api = freeswitch.API(); --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --check if the session is ready if ( session:ready() ) then diff --git a/resources/install/scripts/intercept.lua b/resources/install/scripts/intercept.lua index 419813c0cc..aea2741aec 100644 --- a/resources/install/scripts/intercept.lua +++ b/resources/install/scripts/intercept.lua @@ -32,9 +32,7 @@ debug["sql"] = false; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database if (file_exists(database_dir.."/core.db")) then diff --git a/resources/install/scripts/intercept_group.lua b/resources/install/scripts/intercept_group.lua index 13a82e70df..d81234f4ac 100644 --- a/resources/install/scripts/intercept_group.lua +++ b/resources/install/scripts/intercept_group.lua @@ -31,9 +31,7 @@ debug["sql"] = false; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --add the function dofile(scripts_dir.."/resources/functions/explode.lua"); diff --git a/resources/install/scripts/ivr_menu.lua b/resources/install/scripts/ivr_menu.lua index 19a3cb04db..583ca3682f 100644 --- a/resources/install/scripts/ivr_menu.lua +++ b/resources/install/scripts/ivr_menu.lua @@ -32,9 +32,7 @@ debug["tries"] = false; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database dofile(scripts_dir.."/resources/functions/database_handle.lua"); diff --git a/resources/install/scripts/park.lua b/resources/install/scripts/park.lua index 42b47ce423..77118a4be2 100644 --- a/resources/install/scripts/park.lua +++ b/resources/install/scripts/park.lua @@ -15,9 +15,7 @@ --action lua park.lua --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database --dbh = freeswitch.Dbh("core:core"); -- when using sqlite diff --git a/resources/install/scripts/park_monitor.lua b/resources/install/scripts/park_monitor.lua index e7b0a7a455..495c4a93ac 100644 --- a/resources/install/scripts/park_monitor.lua +++ b/resources/install/scripts/park_monitor.lua @@ -29,9 +29,7 @@ --then send presence terminate, and delete from the database --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database --dbh = freeswitch.Dbh("core:core"); -- when using sqlite diff --git a/resources/install/scripts/recordings.lua b/resources/install/scripts/recordings.lua index ecc1d4f1a0..ae5aebb751 100644 --- a/resources/install/scripts/recordings.lua +++ b/resources/install/scripts/recordings.lua @@ -34,9 +34,7 @@ recording_prefix = ""; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database dofile(scripts_dir.."/resources/functions/database_handle.lua"); diff --git a/resources/install/scripts/resources/functions/config.lua b/resources/install/scripts/resources/functions/config.lua index c43b0c0f00..70dcb0efe7 100644 --- a/resources/install/scripts/resources/functions/config.lua +++ b/resources/install/scripts/resources/functions/config.lua @@ -1,12 +1,26 @@ +-- add file_exists function + require "resources.functions.file_exists"; + --find and return path to the config.lua function config() - dofile(scripts_dir.."/resources/functions/file_exists.lua"); if (file_exists("/etc/fusionpbx/config.lua")) then return "/etc/fusionpbx/config.lua"; elseif (file_exists("/usr/local/etc/fusionpbx/config.lua")) then return "/usr/local/etc/fusionpbx/config.lua"; else - return scripts_dir.."/resources/config.lua"; + return "resources.config"; end - end \ No newline at end of file + end + +-- load config + function load_config() + local cfg = config() + if cfg:sub(1,1) == '//' then + dofile(cfg) + else + require(cfg) + end + end + + load_config() diff --git a/resources/install/scripts/streamfile.lua b/resources/install/scripts/streamfile.lua index 377974dae7..079a64f283 100644 --- a/resources/install/scripts/streamfile.lua +++ b/resources/install/scripts/streamfile.lua @@ -3,9 +3,7 @@ file_name = argv[1]; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database dofile(scripts_dir.."/resources/functions/database_handle.lua"); diff --git a/resources/templates/conf/autoload_configs/lua.conf.xml b/resources/templates/conf/autoload_configs/lua.conf.xml index a608494467..f485269a9c 100644 --- a/resources/templates/conf/autoload_configs/lua.conf.xml +++ b/resources/templates/conf/autoload_configs/lua.conf.xml @@ -13,8 +13,8 @@ These entries will be pre-pended to the LUA_PATH environment variable --> - +