Update default_setting_edit.php

This commit is contained in:
FusionPBX
2017-12-15 17:20:17 -07:00
committed by GitHub
parent 1ebfb51133
commit f6ae5e1a85
+114 -123
View File
@@ -23,16 +23,20 @@
Contributor(s): Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com> Mark J Crane <markjcrane@fusionpbx.com>
*/ */
require_once "root.php";
require_once "resources/require.php"; //includes
require_once "resources/check_auth.php"; require_once "root.php";
if (permission_exists('default_setting_add') || permission_exists('default_setting_edit')) { require_once "resources/require.php";
//access granted require_once "resources/check_auth.php";
}
else { //check permissions
echo "access denied"; if (permission_exists('default_setting_add') || permission_exists('default_setting_edit')) {
exit; //access granted
} }
else {
echo "access denied";
exit;
}
//add multi-lingual support //add multi-lingual support
$language = new text; $language = new text;
@@ -59,131 +63,117 @@ else {
$default_setting_description = check_str($_POST["default_setting_description"]); $default_setting_description = check_str($_POST["default_setting_description"]);
} }
if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) { //process the http post
if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
$msg = ''; //set the default_setting_uuid
if ($action == "update") { if ($action == "update") {
$default_setting_uuid = check_str($_POST["default_setting_uuid"]); $default_setting_uuid = check_str($_POST["default_setting_uuid"]);
} }
else {
//check for all required data $default_setting_uuid = uuid();
if (strlen($default_setting_category) == 0) { $msg .= $text['message-required'].$text['label-category']."<br>\n"; }
if (strlen($default_setting_subcategory) == 0) { $msg .= $text['message-required'].$text['label-subcategory']."<br>\n"; }
if (strlen($default_setting_name) == 0) { $msg .= $text['message-required'].$text['label-type']."<br>\n"; }
//if (strlen($default_setting_value) == 0) { $msg .= $text['message-required'].$text['label-value']."<br>\n"; }
if (strlen($default_setting_order) == 0) { $msg .= $text['message-required'].$text['label-order']."<br>\n"; }
if (strlen($default_setting_enabled) == 0) { $msg .= $text['message-required'].$text['label-enabled']."<br>\n"; }
//if (strlen($default_setting_description) == 0) { $msg .= $text['message-required'].$text['label-description']."<br>\n"; }
if (strlen($msg) > 0 && strlen($_POST["persistformvar"]) == 0) {
require_once "resources/header.php";
require_once "resources/persist_form_var.php";
echo "<div align='center'>\n";
echo "<table><tr><td>\n";
echo $msg."<br />";
echo "</td></tr></table>\n";
persistformvar($_POST);
echo "</div>\n";
require_once "resources/footer.php";
return;
}
//add or update the database
if ($_POST["persistformvar"] != "true") {
// fix null
$default_setting_order = ($default_setting_order != '') ? $default_setting_order : 'null';
//update switch timezone variables
if ($default_setting_category == "domain" && $default_setting_subcategory == "time_zone" && $default_setting_name == "name" ) {
//get the action
$sql = "select * from v_vars ";
$sql .= "where var_name = 'timezone' ";
$prep_statement = $db->prepare(check_sql($sql));
$prep_statement->execute();
$result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
$var_action = "add";
foreach ($result as $row) {
$var_action = "update";
}
unset ($prep_statement);
//update the timezone
if ($var_action == "update") {
$sql = "update v_vars ";
$sql .= "set var_value = '".$default_setting_value."' ";
$sql .= "where var_name = 'timezone' ";
}
else {
$sql = "insert into v_vars ";
$sql .= "(var_uuid, var_name, var_value, var_cat, var_enabled) ";
$sql .= "values ('".uuid()."', 'timezone', '$default_setting_value', 'Defaults', 'true'); ";
}
$db->query($sql);
unset($sql);
//synchronize the configuration
save_var_xml();
} }
if ($action == "add" && permission_exists('default_setting_add')) { //check for all required data
$sql = "insert into v_default_settings "; $msg = '';
$sql .= "("; if (strlen($default_setting_category) == 0) { $msg .= $text['message-required'].$text['label-category']."<br>\n"; }
$sql .= "default_setting_uuid, "; if (strlen($default_setting_subcategory) == 0) { $msg .= $text['message-required'].$text['label-subcategory']."<br>\n"; }
$sql .= "default_setting_category, "; if (strlen($default_setting_name) == 0) { $msg .= $text['message-required'].$text['label-type']."<br>\n"; }
$sql .= "default_setting_subcategory, "; //if (strlen($default_setting_value) == 0) { $msg .= $text['message-required'].$text['label-value']."<br>\n"; }
$sql .= "default_setting_name, "; if (strlen($default_setting_order) == 0) { $msg .= $text['message-required'].$text['label-order']."<br>\n"; }
$sql .= "default_setting_value, "; if (strlen($default_setting_enabled) == 0) { $msg .= $text['message-required'].$text['label-enabled']."<br>\n"; }
$sql .= "default_setting_order, "; //if (strlen($default_setting_description) == 0) { $msg .= $text['message-required'].$text['label-description']."<br>\n"; }
$sql .= "default_setting_enabled, "; if (strlen($msg) > 0 && strlen($_POST["persistformvar"]) == 0) {
$sql .= "default_setting_description "; require_once "resources/header.php";
$sql .= ")"; require_once "resources/persist_form_var.php";
$sql .= "values "; echo "<div align='center'>\n";
$sql .= "("; echo "<table><tr><td>\n";
$sql .= "'".uuid()."', "; echo $msg."<br />";
$sql .= "'$default_setting_category', "; echo "</td></tr></table>\n";
$sql .= "'$default_setting_subcategory', "; persistformvar($_POST);
$sql .= "'$default_setting_name', "; echo "</div>\n";
$sql .= "'$default_setting_value', "; require_once "resources/footer.php";
$sql .= "$default_setting_order, ";
$sql .= "'$default_setting_enabled', ";
$sql .= "'$default_setting_description' ";
$sql .= ")";
$db->exec(check_sql($sql));
unset($sql);
messages::add($text['message-add']);
header("Location: default_settings.php".(($search != '') ? "?search=".$search : null)."#".$default_setting_category);
return; return;
} //if ($action == "add") }
if ($action == "update" && permission_exists('default_setting_edit')) { //add or update the database
$sql = "update v_default_settings set "; if ($_POST["persistformvar"] != "true") {
$sql .= "default_setting_category = '$default_setting_category', "; // fix null
$sql .= "default_setting_subcategory = '$default_setting_subcategory', "; $default_setting_order = ($default_setting_order != '') ? $default_setting_order : 'null';
$sql .= "default_setting_name = '$default_setting_name', ";
$sql .= "default_setting_value = '$default_setting_value', ";
$sql .= "default_setting_order = $default_setting_order, ";
$sql .= "default_setting_enabled = '$default_setting_enabled', ";
$sql .= "default_setting_description = '$default_setting_description' ";
$sql .= "where default_setting_uuid = '$default_setting_uuid'";
$db->exec(check_sql($sql));
unset($sql);
messages::add($text['message-update']); //update switch timezone variables
header("Location: default_settings.php".(($search != '') ? "?search=".$search : null)."#".$default_setting_category); if ($default_setting_category == "domain" && $default_setting_subcategory == "time_zone" && $default_setting_name == "name" ) {
return; //get the action
} //if ($action == "update") $sql = "select * from v_vars ";
} //if ($_POST["persistformvar"] != "true") $sql .= "where var_name = 'timezone' ";
} //(count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) $prep_statement = $db->prepare(check_sql($sql));
$prep_statement->execute();
$result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
$var_action = "add";
foreach ($result as $row) {
$var_action = "update";
}
unset ($prep_statement);
//update the timezone
if ($var_action == "update") {
$sql = "update v_vars ";
$sql .= "set var_value = '".$default_setting_value."' ";
$sql .= "where var_name = 'timezone' ";
}
else {
$sql = "insert into v_vars ";
$sql .= "(var_uuid, var_name, var_value, var_cat, var_enabled) ";
$sql .= "values ('".uuid()."', 'timezone', '$default_setting_value', 'Defaults', 'true'); ";
}
$db->query($sql);
unset($sql);
//synchronize the configuration
save_var_xml();
}
//build the array of data
$x = 0;
$array['default_settings'][$x]['default_setting_uuid'] = $default_setting_uuid;
$array['default_settings'][$x]['default_setting_category'] = $default_setting_category;
$array['default_settings'][$x]['default_setting_subcategory'] = $default_setting_subcategory;
$array['default_settings'][$x]['default_setting_name'] = $default_setting_name;
$array['default_settings'][$x]['default_setting_value'] = $default_setting_value;
$array['default_settings'][$x]['default_setting_order'] = $default_setting_order;
$array['default_settings'][$x]['default_setting_enabled'] = $default_setting_enabled;
$array['default_settings'][$x]['default_setting_description'] = $default_setting_description;
//save to the data
$database = new database;
$database->app_name = 'default_settings';
$database->app_uuid = '2c2453c0-1bea-4475-9f44-4d969650de09';
$database->save($array);
$message = $database->message;
//set the message and redirect the user
if ($action == "add" && permission_exists('default_setting_add')) {
messages::add($text['message-add']);
header("Location: default_settings.php".(($search != '') ? "?search=".$search : null)."#".$default_setting_category);
return;
}
if ($action == "update" && permission_exists('default_setting_edit')) {
messages::add($text['message-update']);
header("Location: default_settings.php".(($search != '') ? "?search=".$search : null)."#".$default_setting_category);
return;
}
} //if ($_POST["persistformvar"] != "true")
} //(count($_POST)>0 && strlen($_POST["persistformvar"]) == 0)
//pre-populate the form //pre-populate the form
if (count($_GET)>0 && $_POST["persistformvar"] != "true") { if (count($_GET) > 0 && $_POST["persistformvar"] != "true") {
$default_setting_uuid = check_str($_GET["id"]); $default_setting_uuid = check_str($_GET["id"]);
$sql = "select * from v_default_settings "; $sql = "select * from v_default_settings ";
$sql .= "where default_setting_uuid = '$default_setting_uuid' "; $sql .= "where default_setting_uuid = '$default_setting_uuid' ";
$prep_statement = $db->prepare(check_sql($sql)); $prep_statement = $db->prepare(check_sql($sql));
$prep_statement->execute(); $prep_statement->execute();
$result = $prep_statement->fetchAll(PDO::FETCH_NAMED); $default_settings = $prep_statement->fetchAll(PDO::FETCH_NAMED);
foreach ($result as &$row) { foreach ($default_settings as &$row) {
$default_setting_category = $row["default_setting_category"]; $default_setting_category = $row["default_setting_category"];
$default_setting_subcategory = $row["default_setting_subcategory"]; $default_setting_subcategory = $row["default_setting_subcategory"];
$default_setting_name = $row["default_setting_name"]; $default_setting_name = $row["default_setting_name"];
@@ -668,4 +658,5 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
//include the footer //include the footer
require_once "resources/footer.php"; require_once "resources/footer.php";
?>
?>