diff --git a/core/default_settings/app_languages.php b/core/default_settings/app_languages.php index bdbae608a2..1e713b45a8 100644 --- a/core/default_settings/app_languages.php +++ b/core/default_settings/app_languages.php @@ -213,6 +213,11 @@ $text['message-copy_failed']['pt-pt'] = "Nenhuma configuração marcada ou domínio inválido"; $text['message-copy_failed']['fr-fr'] = "Pas de paramètres enregistrés ou domaine non valide"; + $text['message-delete_failed']['en-us'] = "No Settings Checked"; + $text['message-delete_failed']['es-cl'] = "No hay ajustes facturado"; + $text['message-delete_failed']['pt-pt'] = "Nenhuma configuração marcada"; + $text['message-delete_failed']['fr-fr'] = "Pas de paramètres enregistrés"; + $text['message-required']['en-us'] = "Please provide: "; $text['message-required']['es-cl'] = "Por favor indique: "; $text['message-required']['pt-pt'] = "Por favor indique: "; diff --git a/core/default_settings/default_setting_delete.php b/core/default_settings/default_setting_delete.php deleted file mode 100644 index 929ae2370e..0000000000 --- a/core/default_settings/default_setting_delete.php +++ /dev/null @@ -1,60 +0,0 @@ - - Portions created by the Initial Developer are Copyright (C) 2008-2012 - the Initial Developer. All Rights Reserved. - - Contributor(s): - Mark J Crane -*/ -require_once "root.php"; -require_once "resources/require.php"; -require_once "resources/check_auth.php"; -if (permission_exists('default_setting_delete')) { - //access granted -} -else { - echo "access denied"; - exit; -} - -//add multi-lingual support - require_once "app_languages.php"; - foreach($text as $key => $value) { - $text[$key] = $value[$_SESSION['domain']['language']['code']]; - } - -if (count($_GET)>0) { - $id = check_str($_GET["id"]); -} - -if (strlen($id)>0) { - //delete default_setting - $sql = "delete from v_default_settings "; - $sql .= "where default_setting_uuid = '$id' "; - $prep_statement = $db->prepare(check_sql($sql)); - $prep_statement->execute(); - unset($sql); -} - -$_SESSION["message"] = $text['message-delete']; -header("Location: default_settings.php"); -return; - -?> \ No newline at end of file diff --git a/core/default_settings/default_settings.php b/core/default_settings/default_settings.php index 4cf024ff91..d8aaf2aedb 100644 --- a/core/default_settings/default_settings.php +++ b/core/default_settings/default_settings.php @@ -41,126 +41,157 @@ else { } //get posted values, if any -if (sizeof($_POST) > 0) { +if (sizeof($_REQUEST) > 0) { - $target_domain_uuid = check_str($_POST["target_domain_uuid"]); - $default_setting_uuids = $_POST["default_setting_uuids"]; + $action = check_str($_REQUEST["action"]); + $default_setting_uuids = $_REQUEST["id"]; - if ($target_domain_uuid != '' && sizeof($default_setting_uuids) > 0) { + if ($action == 'copy' && permission_exists('domain_setting_add')) { - $settings_copied = 0; + $target_domain_uuid = check_str($_POST["target_domain_uuid"]); - foreach ($default_setting_uuids as $default_setting_uuid) { + if ($target_domain_uuid != '' && sizeof($default_setting_uuids) > 0) { - // get default setting from db - $sql = "select * from v_default_settings "; - $sql .= "where default_setting_uuid = '".$default_setting_uuid."' "; - $prep_statement = $db->prepare(check_sql($sql)); - $prep_statement->execute(); - $result = $prep_statement->fetchAll(PDO::FETCH_NAMED); - foreach ($result as &$row) { - $default_setting_category = $row["default_setting_category"]; - $default_setting_subcategory = $row["default_setting_subcategory"]; - $default_setting_name = $row["default_setting_name"]; - $default_setting_value = $row["default_setting_value"]; - $default_setting_order = $row["default_setting_order"]; - $default_setting_enabled = $row["default_setting_enabled"]; - $default_setting_description = $row["default_setting_description"]; - break; //limit to 1 row - } - unset ($prep_statement); + $settings_copied = 0; - // check if exists - $sql = "select domain_setting_uuid from v_domain_settings "; - $sql .= "where domain_uuid = '".$target_domain_uuid."' "; - $sql .= "and domain_setting_category = '".$default_setting_category."' "; - $sql .= "and domain_setting_subcategory = '".$default_setting_subcategory."' "; - $sql .= "and domain_setting_name = '".$default_setting_name."' "; - $sql .= "and domain_setting_name <> 'array' "; - $prep_statement = $db->prepare(check_sql($sql)); - $prep_statement->execute(); - $result = $prep_statement->fetchAll(PDO::FETCH_NAMED); - if (sizeof($result) > 0) { + foreach ($default_setting_uuids as $default_setting_uuid) { + + // get default setting from db + $sql = "select * from v_default_settings "; + $sql .= "where default_setting_uuid = '".$default_setting_uuid."' "; + $prep_statement = $db->prepare(check_sql($sql)); + $prep_statement->execute(); + $result = $prep_statement->fetchAll(PDO::FETCH_NAMED); foreach ($result as &$row) { - $target_domain_setting_uuid = $row["domain_setting_uuid"]; - break; + $default_setting_category = $row["default_setting_category"]; + $default_setting_subcategory = $row["default_setting_subcategory"]; + $default_setting_name = $row["default_setting_name"]; + $default_setting_value = $row["default_setting_value"]; + $default_setting_order = $row["default_setting_order"]; + $default_setting_enabled = $row["default_setting_enabled"]; + $default_setting_description = $row["default_setting_description"]; + break; //limit to 1 row } - $action = "update"; - } - else { - $action = "add"; - } - unset ($prep_statement); + unset ($prep_statement); - // fix null - $default_setting_order = ($default_setting_order != '') ? $default_setting_order : 'null'; - - if ($action == "add" && permission_exists("domain_select") && permission_exists("domain_setting_add") && count($_SESSION['domains']) > 1) { - - // insert for target domain - $sql = "insert into v_domain_settings "; - $sql .= "("; - $sql .= "domain_uuid, "; - $sql .= "domain_setting_uuid, "; - $sql .= "domain_setting_category, "; - $sql .= "domain_setting_subcategory, "; - $sql .= "domain_setting_name, "; - $sql .= "domain_setting_value, "; - $sql .= "domain_setting_order, "; - $sql .= "domain_setting_enabled, "; - $sql .= "domain_setting_description "; - $sql .= ")"; - $sql .= "values "; - $sql .= "("; - $sql .= "'".$target_domain_uuid."', "; - $sql .= "'".uuid()."', "; - $sql .= "'".$default_setting_category."', "; - $sql .= "'".$default_setting_subcategory."', "; - $sql .= "'".$default_setting_name."', "; - $sql .= "'".$default_setting_value."', "; - $sql .= " ".$default_setting_order." , "; - $sql .= "'".$default_setting_enabled."', "; - $sql .= "'".$default_setting_description."' "; - $sql .= ")"; - $db->exec(check_sql($sql)); - unset($sql); - - $settings_copied++; - - } // add - - if ($action == "update" && permission_exists('domain_setting_edit')) { - - $sql = "update v_domain_settings set "; - $sql .= "domain_setting_category = '".$default_setting_category."', "; - $sql .= "domain_setting_subcategory = '".$default_setting_subcategory."', "; - $sql .= "domain_setting_name = '".$default_setting_name."', "; - $sql .= "domain_setting_value = '".$default_setting_value."', "; - $sql .= "domain_setting_order = ".$default_setting_order.", "; - $sql .= "domain_setting_enabled = '".$default_setting_enabled."', "; - $sql .= "domain_setting_description = '".$default_setting_description."' "; + // check if exists + $sql = "select domain_setting_uuid from v_domain_settings "; $sql .= "where domain_uuid = '".$target_domain_uuid."' "; - $sql .= "and domain_setting_uuid = '".$target_domain_setting_uuid."' "; - $db->exec(check_sql($sql)); + $sql .= "and domain_setting_category = '".$default_setting_category."' "; + $sql .= "and domain_setting_subcategory = '".$default_setting_subcategory."' "; + $sql .= "and domain_setting_name = '".$default_setting_name."' "; + $sql .= "and domain_setting_name <> 'array' "; + $prep_statement = $db->prepare(check_sql($sql)); + $prep_statement->execute(); + $result = $prep_statement->fetchAll(PDO::FETCH_NAMED); + if (sizeof($result) > 0) { + foreach ($result as &$row) { + $target_domain_setting_uuid = $row["domain_setting_uuid"]; + break; + } + $action = "update"; + } + else { + $action = "add"; + } + unset ($prep_statement); + + // fix null + $default_setting_order = ($default_setting_order != '') ? $default_setting_order : 'null'; + + if ($action == "add" && permission_exists("domain_select") && permission_exists("domain_setting_add") && count($_SESSION['domains']) > 1) { + + // insert for target domain + $sql = "insert into v_domain_settings "; + $sql .= "("; + $sql .= "domain_uuid, "; + $sql .= "domain_setting_uuid, "; + $sql .= "domain_setting_category, "; + $sql .= "domain_setting_subcategory, "; + $sql .= "domain_setting_name, "; + $sql .= "domain_setting_value, "; + $sql .= "domain_setting_order, "; + $sql .= "domain_setting_enabled, "; + $sql .= "domain_setting_description "; + $sql .= ")"; + $sql .= "values "; + $sql .= "("; + $sql .= "'".$target_domain_uuid."', "; + $sql .= "'".uuid()."', "; + $sql .= "'".$default_setting_category."', "; + $sql .= "'".$default_setting_subcategory."', "; + $sql .= "'".$default_setting_name."', "; + $sql .= "'".$default_setting_value."', "; + $sql .= " ".$default_setting_order." , "; + $sql .= "'".$default_setting_enabled."', "; + $sql .= "'".$default_setting_description."' "; + $sql .= ")"; + $db->exec(check_sql($sql)); + unset($sql); + + $settings_copied++; + + } // add + + if ($action == "update" && permission_exists('domain_setting_edit')) { + + $sql = "update v_domain_settings set "; + $sql .= "domain_setting_category = '".$default_setting_category."', "; + $sql .= "domain_setting_subcategory = '".$default_setting_subcategory."', "; + $sql .= "domain_setting_name = '".$default_setting_name."', "; + $sql .= "domain_setting_value = '".$default_setting_value."', "; + $sql .= "domain_setting_order = ".$default_setting_order.", "; + $sql .= "domain_setting_enabled = '".$default_setting_enabled."', "; + $sql .= "domain_setting_description = '".$default_setting_description."' "; + $sql .= "where domain_uuid = '".$target_domain_uuid."' "; + $sql .= "and domain_setting_uuid = '".$target_domain_setting_uuid."' "; + $db->exec(check_sql($sql)); + unset($sql); + + $settings_copied++; + + } // update + + } // foreach + + // set message + $_SESSION["message"] = $text['message-copy'].": ".$settings_copied; + + } + else { + // set message + $_SESSION["message"] = $text['message-copy_failed']; + } + + header("Location: default_settings.php"); + exit; + + } + + if ($action == 'delete' && permission_exists('default_setting_delete')) { + + if (sizeof($default_setting_uuids) > 0) { + foreach ($default_setting_uuids as $default_setting_uuid) { + //delete default_setting(s) + $sql = "delete from v_default_settings "; + $sql .= "where default_setting_uuid = '".$default_setting_uuid."' "; + $prep_statement = $db->prepare(check_sql($sql)); + $prep_statement->execute(); unset($sql); + } - $settings_copied++; + // set message + $_SESSION["message"] = $text['message-delete'].": ".sizeof($default_setting_uuids); + } + else { + // set message + $_SESSION["message"] = $text['message-delete_failed']; + } - } // update - - } // foreach - - // set message - $_SESSION["message"] = $text['message-copy'].": ".$settings_copied; + header("Location: default_settings.php"); + exit; } - else { - // set message - $_SESSION["message"] = $text['message-copy_failed']; - } - - header("Location: default_settings.php"); - exit; } // post @@ -180,6 +211,7 @@ if (permission_exists("domain_select") && permission_exists("domain_setting_add" echo "