|
@@ -17,7 +17,7 @@
|
|
|
|
|
|
The Initial Developer of the Original Code is
|
|
The Initial Developer of the Original Code is
|
|
Mark J Crane <[email protected]>
|
|
Mark J Crane <[email protected]>
|
|
- Portions created by the Initial Developer are Copyright (C) 2008-2016
|
|
|
|
|
|
+ Portions created by the Initial Developer are Copyright (C) 2008-2021
|
|
the Initial Developer. All Rights Reserved.
|
|
the Initial Developer. All Rights Reserved.
|
|
|
|
|
|
Contributor(s):
|
|
Contributor(s):
|
|
@@ -426,54 +426,34 @@ if (!class_exists('domains')) {
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
- * add the default settings to the session array
|
|
|
|
|
|
+ * add default, domain and user settings to the session array
|
|
*/
|
|
*/
|
|
public function set() {
|
|
public function set() {
|
|
|
|
|
|
- //connect to the database if not connected
|
|
|
|
- if (!$this->db) {
|
|
|
|
- require_once "resources/classes/database.php";
|
|
|
|
- $database = new database;
|
|
|
|
- $database->connect();
|
|
|
|
- $this->db = $database->db;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- //set the PDO error mode
|
|
|
|
- $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
|
|
|
-
|
|
|
|
//get previous domains settings
|
|
//get previous domains settings
|
|
- if (strlen($_SESSION["previous_domain_uuid"]) > 0) {
|
|
|
|
|
|
+ if (is_uuid($_SESSION["previous_domain_uuid"])) {
|
|
$sql = "select * from v_domain_settings ";
|
|
$sql = "select * from v_domain_settings ";
|
|
- $sql .= "where domain_uuid = '" . $_SESSION["previous_domain_uuid"] . "' ";
|
|
|
|
|
|
+ $sql .= "where domain_uuid = :previous_domain_uuid ";
|
|
$sql .= "and domain_setting_enabled = 'true' ";
|
|
$sql .= "and domain_setting_enabled = 'true' ";
|
|
- try {
|
|
|
|
- $prep_statement = $this->db->prepare($sql . " order by domain_setting_order asc ");
|
|
|
|
- $prep_statement->execute();
|
|
|
|
- }
|
|
|
|
- catch(PDOException $e) {
|
|
|
|
- $prep_statement = $this->db->prepare($sql);
|
|
|
|
- $prep_statement->execute();
|
|
|
|
- }
|
|
|
|
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
|
|
|
|
- //unset previous domain settings
|
|
|
|
|
|
+ $sql .= " order by domain_setting_order asc ";
|
|
|
|
+ $parameters['previous_domain_uuid'] = $_SESSION["previous_domain_uuid"];
|
|
|
|
+ $database = new database;
|
|
|
|
+ $result = $database->select($sql, $parameters, 'all');
|
|
|
|
+ unset($sql, $parameters);
|
|
|
|
+
|
|
|
|
+ //unset previous domain settings
|
|
foreach ($result as $row) {
|
|
foreach ($result as $row) {
|
|
unset($_SESSION[$row['domain_setting_category']]);
|
|
unset($_SESSION[$row['domain_setting_category']]);
|
|
}
|
|
}
|
|
unset($_SESSION["previous_domain_uuid"]);
|
|
unset($_SESSION["previous_domain_uuid"]);
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
|
|
//get the default settings
|
|
//get the default settings
|
|
$sql = "select * from v_default_settings ";
|
|
$sql = "select * from v_default_settings ";
|
|
- try {
|
|
|
|
- $prep_statement = $this->db->prepare($sql . " order by default_setting_order asc ");
|
|
|
|
- $prep_statement->execute();
|
|
|
|
- }
|
|
|
|
- catch(PDOException $e) {
|
|
|
|
- $prep_statement = $this->db->prepare($sql);
|
|
|
|
- $prep_statement->execute();
|
|
|
|
- }
|
|
|
|
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
|
|
|
|
|
|
+ $sql .= "order by default_setting_order asc ";
|
|
|
|
+ $database = new database;
|
|
|
|
+ $result = $database->select($sql, null, 'all');
|
|
|
|
+ unset($sql, $parameters);
|
|
//unset all settings
|
|
//unset all settings
|
|
foreach ($result as $row) {
|
|
foreach ($result as $row) {
|
|
if ($row['default_setting_category'] != 'user') { //skip off-limit categories
|
|
if ($row['default_setting_category'] != 'user') { //skip off-limit categories
|
|
@@ -507,19 +487,23 @@ if (!class_exists('domains')) {
|
|
}
|
|
}
|
|
|
|
|
|
//get the domains settings
|
|
//get the domains settings
|
|
- if (strlen($_SESSION["domain_uuid"]) > 0) {
|
|
|
|
|
|
+ if (file_exists($_SERVER["PROJECT_ROOT"]."/app/domains/app_config.php")) {
|
|
|
|
+ require_once "app/domains/resources/settings.php";
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //get the domains settings
|
|
|
|
+ if (is_uuid($_SESSION["domain_uuid"])) {
|
|
|
|
+
|
|
|
|
+ //get settings from the database
|
|
$sql = "select * from v_domain_settings ";
|
|
$sql = "select * from v_domain_settings ";
|
|
- $sql .= "where domain_uuid = '" . $_SESSION["domain_uuid"] . "' ";
|
|
|
|
|
|
+ $sql .= "where domain_uuid = :domain_uuid ";
|
|
$sql .= "and domain_setting_enabled = 'true' ";
|
|
$sql .= "and domain_setting_enabled = 'true' ";
|
|
- try {
|
|
|
|
- $prep_statement = $this->db->prepare($sql . " order by domain_setting_order asc ");
|
|
|
|
- $prep_statement->execute();
|
|
|
|
- }
|
|
|
|
- catch(PDOException $e) {
|
|
|
|
- $prep_statement = $this->db->prepare($sql);
|
|
|
|
- $prep_statement->execute();
|
|
|
|
- }
|
|
|
|
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
|
|
|
|
|
|
+ $sql .= " order by domain_setting_order asc ";
|
|
|
|
+ $parameters['domain_uuid'] = $_SESSION["domain_uuid"];
|
|
|
|
+ $database = new database;
|
|
|
|
+ $result = $database->select($sql, $parameters, 'all');
|
|
|
|
+ unset($sql, $parameters);
|
|
|
|
+
|
|
//unset the arrays that domains are overriding
|
|
//unset the arrays that domains are overriding
|
|
foreach ($result as $row) {
|
|
foreach ($result as $row) {
|
|
$name = $row['domain_setting_name'];
|
|
$name = $row['domain_setting_name'];
|
|
@@ -554,21 +538,18 @@ if (!class_exists('domains')) {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
//get the user settings
|
|
//get the user settings
|
|
- if (array_key_exists("domain_uuid",$_SESSION) and array_key_exists("user_uuid",$_SESSION) and strlen($_SESSION["domain_uuid"]) > 0 && strlen($_SESSION["user_uuid"]) > 0) {
|
|
|
|
|
|
+ if (array_key_exists("domain_uuid",$_SESSION) && array_key_exists("user_uuid",$_SESSION) && is_uuid($_SESSION["domain_uuid"])) {
|
|
$sql = "select * from v_user_settings ";
|
|
$sql = "select * from v_user_settings ";
|
|
- $sql .= "where domain_uuid = '" . $_SESSION["domain_uuid"] . "' ";
|
|
|
|
- $sql .= "and user_uuid = '" . $_SESSION["user_uuid"] . "' ";
|
|
|
|
- try {
|
|
|
|
- $prep_statement = $this->db->prepare($sql . " order by user_setting_order asc ");
|
|
|
|
- $prep_statement->execute();
|
|
|
|
- }
|
|
|
|
- catch(PDOException $e) {
|
|
|
|
- $prep_statement = $this->db->prepare($sql);
|
|
|
|
- $prep_statement->execute();
|
|
|
|
- }
|
|
|
|
- if ($prep_statement) {
|
|
|
|
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
|
|
|
|
|
|
+ $sql .= "where domain_uuid = :domain_uuid ";
|
|
|
|
+ $sql .= "and user_uuid = :user_uuid ";
|
|
|
|
+ $sql .= " order by user_setting_order asc ";
|
|
|
|
+ $parameters['domain_uuid'] = $_SESSION["domain_uuid"];
|
|
|
|
+ $parameters['user_uuid'] = $_SESSION["user_uuid"];
|
|
|
|
+ $database = new database;
|
|
|
|
+ $result = $database->select($sql, $parameters, 'all');
|
|
|
|
+ if (is_array($result)) {
|
|
foreach ($result as $row) {
|
|
foreach ($result as $row) {
|
|
if ($row['user_setting_enabled'] == 'true') {
|
|
if ($row['user_setting_enabled'] == 'true') {
|
|
$name = $row['user_setting_name'];
|
|
$name = $row['user_setting_name'];
|
|
@@ -599,9 +580,6 @@ if (!class_exists('domains')) {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- //set the PDO error mode
|
|
|
|
- $this->db->setAttribute(PDO::ATTR_ERRMODE, '');
|
|
|
|
-
|
|
|
|
//set the values from the session variables
|
|
//set the values from the session variables
|
|
if (strlen($_SESSION['domain']['time_zone']['name']) > 0) {
|
|
if (strlen($_SESSION['domain']['time_zone']['name']) > 0) {
|
|
//server time zone
|
|
//server time zone
|
|
@@ -614,7 +592,6 @@ if (!class_exists('domains')) {
|
|
|
|
|
|
//set the context
|
|
//set the context
|
|
$_SESSION["context"] = $_SESSION["domain_name"];
|
|
$_SESSION["context"] = $_SESSION["domain_name"];
|
|
-
|
|
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -624,7 +601,6 @@ if (!class_exists('domains')) {
|
|
|
|
|
|
//connect to the database if not connected
|
|
//connect to the database if not connected
|
|
if (!$this->db) {
|
|
if (!$this->db) {
|
|
- require_once "resources/classes/database.php";
|
|
|
|
$database = new database;
|
|
$database = new database;
|
|
$database->connect();
|
|
$database->connect();
|
|
$this->db = $database->db;
|
|
$this->db = $database->db;
|
|
@@ -667,41 +643,39 @@ if (!class_exists('domains')) {
|
|
|
|
|
|
//get the domains
|
|
//get the domains
|
|
$sql = "select * from v_domains ";
|
|
$sql = "select * from v_domains ";
|
|
- $prep_statement = $this->db->prepare($sql);
|
|
|
|
- $prep_statement->execute();
|
|
|
|
- $domains = $prep_statement->fetchAll(PDO::FETCH_NAMED);
|
|
|
|
- unset($prep_statement);
|
|
|
|
|
|
+ $database = new database;
|
|
|
|
+ $domains = $database->select($sql, null, 'all');
|
|
|
|
+ unset($sql, $parameters);
|
|
|
|
|
|
//get the domain_settings
|
|
//get the domain_settings
|
|
$sql = "select * from v_domain_settings ";
|
|
$sql = "select * from v_domain_settings ";
|
|
$sql .= "where domain_setting_enabled = 'true' ";
|
|
$sql .= "where domain_setting_enabled = 'true' ";
|
|
- $prep_statement = $this->db->prepare($sql);
|
|
|
|
- $prep_statement->execute();
|
|
|
|
- $domain_settings = $prep_statement->fetchAll(PDO::FETCH_NAMED);
|
|
|
|
- unset($prep_statement);
|
|
|
|
|
|
+ $database = new database;
|
|
|
|
+ $domain_settings = $database->select($sql, null, 'all');
|
|
|
|
+ unset($sql, $parameters);
|
|
|
|
|
|
//get the default settings
|
|
//get the default settings
|
|
$sql = "select * from v_default_settings ";
|
|
$sql = "select * from v_default_settings ";
|
|
$sql .= "where default_setting_enabled = 'true' ";
|
|
$sql .= "where default_setting_enabled = 'true' ";
|
|
- $prep_statement = $this->db->prepare($sql);
|
|
|
|
- $prep_statement->execute();
|
|
|
|
- $database_default_settings = $prep_statement->fetchAll(PDO::FETCH_NAMED);
|
|
|
|
- unset($prep_statement);
|
|
|
|
-
|
|
|
|
|
|
+ $database = new database;
|
|
|
|
+ $database_default_settings = $database->select($sql, null, 'all');
|
|
|
|
+ unset($sql, $parameters);
|
|
|
|
|
|
//get the domain_uuid
|
|
//get the domain_uuid
|
|
- foreach($domains as $row) {
|
|
|
|
- if (count($domains) == 1) {
|
|
|
|
- $_SESSION["domain_uuid"] = $row["domain_uuid"];
|
|
|
|
- $_SESSION["domain_name"] = $row['domain_name'];
|
|
|
|
- }
|
|
|
|
- else {
|
|
|
|
- if (lower_case($row['domain_name']) == lower_case($domain_array[0]) || lower_case($row['domain_name']) == lower_case('www.'.$domain_array[0])) {
|
|
|
|
|
|
+ if (is_array($domains)) {
|
|
|
|
+ foreach($domains as $row) {
|
|
|
|
+ if (count($domains) == 1) {
|
|
$_SESSION["domain_uuid"] = $row["domain_uuid"];
|
|
$_SESSION["domain_uuid"] = $row["domain_uuid"];
|
|
$_SESSION["domain_name"] = $row['domain_name'];
|
|
$_SESSION["domain_name"] = $row['domain_name'];
|
|
}
|
|
}
|
|
- $_SESSION['domains'][$row['domain_uuid']]['domain_uuid'] = $row['domain_uuid'];
|
|
|
|
- $_SESSION['domains'][$row['domain_uuid']]['domain_name'] = $row['domain_name'];
|
|
|
|
|
|
+ else {
|
|
|
|
+ if (lower_case($row['domain_name']) == lower_case($domain_array[0]) || lower_case($row['domain_name']) == lower_case('www.'.$domain_array[0])) {
|
|
|
|
+ $_SESSION["domain_uuid"] = $row["domain_uuid"];
|
|
|
|
+ $_SESSION["domain_name"] = $row['domain_name'];
|
|
|
|
+ }
|
|
|
|
+ $_SESSION['domains'][$row['domain_uuid']]['domain_uuid'] = $row['domain_uuid'];
|
|
|
|
+ $_SESSION['domains'][$row['domain_uuid']]['domain_name'] = $row['domain_name'];
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -785,14 +759,6 @@ if (!class_exists('domains')) {
|
|
*/
|
|
*/
|
|
public function settings() {
|
|
public function settings() {
|
|
|
|
|
|
- //connect to the database if not connected
|
|
|
|
- if (!$this->db) {
|
|
|
|
- require_once "resources/classes/database.php";
|
|
|
|
- $database = new database;
|
|
|
|
- $database->connect();
|
|
|
|
- $this->db = $database->db;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
//get the list of installed apps from the core and mod directories
|
|
//get the list of installed apps from the core and mod directories
|
|
$config_list = glob($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/*/*/app_config.php");
|
|
$config_list = glob($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/*/*/app_config.php");
|
|
$x=0;
|
|
$x=0;
|
|
@@ -814,10 +780,9 @@ if (!class_exists('domains')) {
|
|
//get an array of the default settings
|
|
//get an array of the default settings
|
|
$sql = "select * from v_default_settings ";
|
|
$sql = "select * from v_default_settings ";
|
|
$sql .= "order by default_setting_category asc, default_setting_subcategory asc";
|
|
$sql .= "order by default_setting_category asc, default_setting_subcategory asc";
|
|
- $prep_statement = $this->db->prepare($sql);
|
|
|
|
- $prep_statement->execute();
|
|
|
|
- $default_settings = $prep_statement->fetchAll(PDO::FETCH_NAMED);
|
|
|
|
- unset ($prep_statement, $sql);
|
|
|
|
|
|
+ $database = new database;
|
|
|
|
+ $default_settings = $database->select($sql, null, 'all');
|
|
|
|
+ unset($sql);
|
|
|
|
|
|
//named array
|
|
//named array
|
|
foreach ($default_settings as $row) {
|
|
foreach ($default_settings as $row) {
|
|
@@ -842,13 +807,15 @@ if (!class_exists('domains')) {
|
|
if ($app_uuid == null) {
|
|
if ($app_uuid == null) {
|
|
$sql = "update v_default_settings set ";
|
|
$sql = "update v_default_settings set ";
|
|
if ($default_setting_uuid != $row['default_setting_uuid']) {
|
|
if ($default_setting_uuid != $row['default_setting_uuid']) {
|
|
- $sql .= "default_setting_uuid = '".$row['default_setting_uuid']."', ";
|
|
|
|
|
|
+ $sql .= "default_setting_uuid = :default_setting_uuid, ";
|
|
}
|
|
}
|
|
- $sql .= "app_uuid = '".$row['app_uuid']."' ";
|
|
|
|
- $sql .= "where default_setting_uuid = '".$row['default_setting_uuid']."';";
|
|
|
|
- //echo $category." ".$subcategory." ".$name." ".$app_uuid."\n";
|
|
|
|
- //echo $sql."\n";
|
|
|
|
- $this->db->exec(check_sql($sql));
|
|
|
|
|
|
+ $sql .= "app_uuid = :app_uuid ";
|
|
|
|
+ $sql .= "where default_setting_uuid = :default_setting_uuid';";
|
|
|
|
+ $parameters['default_setting_uuid'] = $row['default_setting_uuid'];
|
|
|
|
+ $parameters['app_uuid'] = $row['app_uuid'];
|
|
|
|
+ $database = new database;
|
|
|
|
+ $default_settings = $database->select($sql, $parameters, 'all');
|
|
|
|
+ unset($sql, $parameters);
|
|
//echo "\n";
|
|
//echo "\n";
|
|
}
|
|
}
|
|
|
|
|
|
@@ -878,21 +845,32 @@ if (!class_exists('domains')) {
|
|
$sql .= "default_setting_description ";
|
|
$sql .= "default_setting_description ";
|
|
$sql .= ") values \n";
|
|
$sql .= ") values \n";
|
|
$sql .= "(";
|
|
$sql .= "(";
|
|
- $sql .= "'".check_str($row['default_setting_uuid'])."', ";
|
|
|
|
- $sql .= "'".check_str($row['default_setting_category'])."', ";
|
|
|
|
- $sql .= "'".check_str($row['default_setting_subcategory'])."', ";
|
|
|
|
- $sql .= "'".check_str($row['default_setting_name'])."', ";
|
|
|
|
- $sql .= "'".check_str($row['default_setting_value'])."', ";
|
|
|
|
|
|
+ $sql .= ":default_setting_uuid, ";
|
|
|
|
+ $sql .= ":default_setting_category, ";
|
|
|
|
+ $sql .= ":default_setting_subcategory, ";
|
|
|
|
+ $sql .= ":default_setting_name, ";
|
|
|
|
+ $sql .= ":default_setting_value, ";
|
|
if ($row['default_setting_order']) {
|
|
if ($row['default_setting_order']) {
|
|
- $sql .= "'".check_str($row['default_setting_order'])."', ";
|
|
|
|
|
|
+ $sql .= ":default_setting_order, ";
|
|
}
|
|
}
|
|
- $sql .= "'".check_str($row['default_setting_enabled'])."', ";
|
|
|
|
- $sql .= "'".check_str($row['default_setting_description'])."' ";
|
|
|
|
|
|
+ $sql .= ":default_setting_enabled, ";
|
|
|
|
+ $sql .= ":default_setting_description ";
|
|
$sql .= ");";
|
|
$sql .= ");";
|
|
- //echo $sql."\n";
|
|
|
|
- $this->db->exec(check_sql($sql));
|
|
|
|
- unset($array);
|
|
|
|
|
|
+ $parameters['default_setting_uuid'] = $row['default_setting_uuid'];
|
|
|
|
+ $parameters['default_setting_category'] = $row['default_setting_category'];
|
|
|
|
+ $parameters['default_setting_subcategory'] = $row['default_setting_subcategory'];
|
|
|
|
+ $parameters['default_setting_name'] = $row['default_setting_name'];
|
|
|
|
+ $parameters['default_setting_value'] = $row['default_setting_value'];
|
|
|
|
+ if ($row['default_setting_order']) {
|
|
|
|
+ $parameters['default_setting_order'] = $row['default_setting_order'];
|
|
|
|
+ }
|
|
|
|
+ $parameters['default_setting_enabled'] = $row['default_setting_enabled'];
|
|
|
|
+ $parameters['default_setting_description'] = $row['default_setting_description'];
|
|
|
|
+ $database = new database;
|
|
|
|
+ $default_settings = $database->select($sql, $parameters, 'all');
|
|
|
|
+ unset($sql, $parameters);
|
|
}
|
|
}
|
|
|
|
+ unset($array);
|
|
}
|
|
}
|
|
} //end settings method
|
|
} //end settings method
|
|
}
|
|
}
|