Add multi-delete in advanced -> domain settings

This commit is contained in:
Mark Crane
2014-09-21 09:39:32 +00:00
parent e56e600230
commit 1c6a6b15ec
2 changed files with 336 additions and 248 deletions

View File

@@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2012
Portions created by the Initial Developer are Copyright (C) 2008-2014
the Initial Developer. All Rights Reserved.
Contributor(s):
@@ -34,19 +34,60 @@ else {
exit;
}
//require_once "resources/header.php";
require_once "resources/paging.php";
//get variables used to control the order
$order_by = $_GET["order_by"];
$order = $_GET["order"];
//delete domain settings
if (sizeof($_REQUEST) > 0) {
$action = check_str($_REQUEST["action"]);
if ($action == 'delete' && permission_exists('domain_setting_delete')) {
//add multi-lingual support
require_once "app_languages.php";
foreach($text as $key => $value) {
$text[$key] = $value[$_SESSION['domain']['language']['code']];
}
//delete the selected domain settings
$domain_setting_uuids = $_REQUEST["id"];
if (sizeof($domain_setting_uuids) > 0) {
foreach ($domain_setting_uuids as $domain_setting_uuid) {
$sql = "delete from v_domain_settings ";
$sql .= "where domain_setting_uuid = '".$domain_setting_uuid."' ";
$prep_statement = $db->prepare(check_sql($sql));
$prep_statement->execute();
unset($sql);
}
// set message
$_SESSION["message"] = $text['message-delete'].": ".sizeof($domain_setting_uuids);
}
else {
// set message
$_SESSION["message"] = $text['message-delete_failed'];
$_SESSION["message_mood"] = "negative";
}
//redirect the user
header("Location: domain_edit.php?id=".check_str($_REQUEST["domain_uuid"]));
exit;
}
} //REQUEST
//include the paging
require_once "resources/paging.php";
//get the variables
$order_by = check_str($_GET["order_by"]);
$order = check_str($_GET["order"]);
//show the content
echo "<form name='domain_frm' id='domain_frm' method='GET' action='domain_settings.php'>";
echo "<input type='hidden' name='action' id='action' value=''>";
echo "<input type='hidden' name='domain_uuid' value='".$domain_uuid."'>";
echo "<div align='center'>";
echo "<table width='100%' border='0' cellpadding='0' cellspacing='2'>\n";
echo "<tr class='border'>\n";
echo " <td align=\"center\">\n";
//prepare to page the results
$sql = "select count(*) as num_rows from v_domain_settings ";
$sql .= "where domain_uuid = '$domain_uuid' ";
$sql .= "and domain_uuid = '$domain_uuid' ";
if (strlen($order_by)> 0) { $sql .= "order by $order_by $order "; }
$prep_statement = $db->prepare($sql);
if ($prep_statement) {
$prep_statement->execute();
@@ -60,7 +101,7 @@ require_once "resources/paging.php";
}
//prepare to page the results
$rows_per_page = 100;
$rows_per_page = 200;
$param = "";
$page = $_GET['page'];
if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; }
@@ -88,18 +129,18 @@ require_once "resources/paging.php";
$row_style["1"] = "row_style1";
//show the content
echo "<br /><br />";
echo "<div align='center'>\n";
echo "<table class='tr_hover' width='100%' border='0' cellpadding='0' cellspacing='0'>\n";
if ($result_count > 0) {
$previous_category = '';
foreach($result as $row) {
if ($previous_category != $row['domain_setting_category']) {
echo "<tr>";
echo " <td colspan='6' align='left'>\n";
echo "<tr>\n";
echo " <td colspan='7' align='left'>\n";
echo " <br />\n";
echo " <br />\n";
echo " <b>";
echo " <b>\n";
if (strtolower($row['domain_setting_category']) == "cdr") {
echo " CDR";
}
@@ -113,6 +154,12 @@ require_once "resources/paging.php";
echo " </td>\n";
echo "</tr>\n";
echo "<tr>\n";
if ((permission_exists("domain_select")
&& permission_exists("domain_setting_add")
&& count($_SESSION['domains']) > 1) ||
permission_exists('domain_setting_delete')) {
echo "<th style='text-align: center;' style='text-align: center; padding: 3px 0px 0px 0px;'><input type='checkbox' onchange=\"(this.checked) ? check('all','".strtolower($row['domain_setting_category'])."') : check('none','".strtolower($row['domain_setting_category'])."');\"></th>";
}
echo "<th>".$text['label-subcategory']."</th>";
echo "<th>".$text['label-type']."</th>";
echo "<th>".$text['label-value']."</th>";
@@ -120,13 +167,23 @@ require_once "resources/paging.php";
echo "<th>".$text['label-description']."</th>";
echo "<td class='list_control_icons'>";
if (permission_exists('domain_setting_add')) {
echo "<a href='domain_setting_edit.php?domain_uuid=".$_GET['id']."' alt='".$text['button-add']."'>$v_link_label_add</a>";
echo "<a href='domain_setting_edit.php?domain_setting_category=".urlencode($row['domain_setting_category'])."&domain_uuid=".check_str($_GET['id'])."' alt='".$text['button-add']."'>".$v_link_label_add."</a>";
}
if (permission_exists('domain_setting_delete')) {
echo "<a href='javascript:void(0);' onclick=\"if (confirm('".$text['confirm-delete']."')) { document.getElementById('action').value = 'delete'; document.forms.domain_frm.submit(); }\" alt='".$text['button-delete']."'>".$v_link_label_delete."</a>";
}
echo "</td>\n";
echo "</tr>\n";
}
$tr_link = (permission_exists('domain_setting_edit')) ? " href='domain_setting_edit.php?domain_uuid=".$row['domain_uuid']."&id=".$row['domain_setting_uuid']."'" : null;
echo "<tr ".$tr_link.">\n";
if (
(permission_exists("domain_select") && permission_exists("domain_setting_add") && count($_SESSION['domains']) > 1) ||
permission_exists("domain_setting_delete")
) {
echo " <td valign='top' class='".$row_style[$c]." tr_link_void' style='text-align: center; padding: 3px 0px 0px 0px;'><input type='checkbox' name='id[]' id='checkbox_".$row['domain_setting_uuid']."' value='".$row['domain_setting_uuid']."'></td>\n";
$subcat_ids[strtolower($row['domain_setting_category'])][] = 'checkbox_'.$row['domain_setting_uuid'];
}
echo " <td valign='top' class='".$row_style[$c]."'>";
if (permission_exists('domain_setting_edit')) {
echo "<a href='domain_setting_edit.php?domain_uuid=".$row['domain_uuid']."&id=".$row['domain_setting_uuid']."'>".$row['domain_setting_subcategory']."</a>";
@@ -142,8 +199,7 @@ require_once "resources/paging.php";
$subcategory = $row['domain_setting_subcategory'];
$name = $row['domain_setting_name'];
if ($category == "domain" && $subcategory == "menu" && $name == "uuid" ) {
$sql = "";
$sql .= "select * from v_menus ";
$sql = "select * from v_menus ";
$sql .= "where menu_uuid = '".$row['domain_setting_value']."' ";
$sub_prep_statement = $db->prepare(check_sql($sql));
$sub_prep_statement->execute();
@@ -152,13 +208,16 @@ require_once "resources/paging.php";
echo $sub_row["menu_language"]." - ".$sub_row["menu_name"]."\n";
}
}
elseif ($category == "domain" && $subcategory == "template" && $name == "name" ) {
echo " ".ucwords($row['domain_setting_value']);
}
elseif ($category == "email" && $subcategory == "smtp_password" && $name == "var" ) {
echo " ******** &nbsp;\n";
}
elseif ($category == "provision" && $subcategory == "password" && $name == "var" ) {
echo " ******** &nbsp;\n";
} else {
echo $row['domain_setting_value'];
echo " ".substr($row['domain_setting_value'],0,58);
}
echo " &nbsp;\n";
echo " </td>\n";
@@ -169,7 +228,7 @@ require_once "resources/paging.php";
echo "<a href='domain_setting_edit.php?domain_uuid=".$row['domain_uuid']."&id=".$row['domain_setting_uuid']."' alt='".$text['button-edit']."'>$v_link_label_edit</a>";
}
if (permission_exists('domain_setting_delete')) {
echo "<a href='domain_setting_delete.php?domain_uuid=".$row['domain_uuid']."&id=".$row['domain_setting_uuid']."' alt='".$text['button-delete']."' onclick=\"return confirm('".$text['confirm-delete']."')\">$v_link_label_delete</a>";
echo "<a href='domain_settings.php?domain_uuid=".$row['domain_uuid']."&id[]=".$row['domain_setting_uuid']."&action=delete' alt='".$text['button-delete']."' onclick=\"return confirm('".$text['confirm-delete']."')\">$v_link_label_delete</a>";
}
echo " </td>\n";
echo "</tr>\n";
@@ -180,22 +239,61 @@ require_once "resources/paging.php";
} //end if results
echo "<tr>\n";
echo "<td colspan='6' align='left'>\n";
if (
(permission_exists("domain_select") && permission_exists("domain_setting_add") && count($_SESSION['domains']) > 1) ||
permission_exists("domain_delete")
) {
$colspan = 7;
}
else {
$colspan = 6;
}
echo "<td colspan='".$colspan."' align='left'>\n";
echo " <table width='100%' cellpadding='0' cellspacing='0'>\n";
echo " <tr>\n";
echo " <td width='33.3%' nowrap>&nbsp;</td>\n";
echo " <td width='33.3%' align='center' nowrap>$paging_controls</td>\n";
echo " <td class='list_control_icons'>";
if (permission_exists('domain_setting_add')) {
echo "<a href='domain_setting_edit.php?domain_uuid=".$_GET['id']."' alt='".$text['button-add']."'>$v_link_label_add</a>";
echo "<a href='domain_setting_edit.php?domain_uuid=".check_str($_GET['id'])."' alt='".$text['button-add']."'>$v_link_label_add</a>";
}
if (permission_exists('domain_setting_delete')) {
echo "<a href='javascript:void(0);' onclick=\"if (confirm('".$text['confirm-delete']."')) { document.getElementById('action').value = 'delete'; document.getElementById('domain_frm').submit(); }\" alt='".$text['button-delete']."'>".$v_link_label_delete."</a>";
}
echo " </td>\n";
echo " </tr>\n";
echo " </table>\n";
echo "</td>\n";
echo "</tr>\n";
echo "</table>";
echo "</table>";
echo "</div>";
echo "<br /><br />";
echo "<br /><br />";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "</div>";
echo "</form>";
echo "<br /><br />";
// check or uncheck all category checkboxes
if (sizeof($subcat_ids) > 0) {
echo "<script>\n";
echo " function check(what, category) {\n";
foreach ($subcat_ids as $domain_setting_category => $checkbox_ids) {
echo "if (category == '".$domain_setting_category."') {\n";
foreach ($checkbox_ids as $index => $checkbox_id) {
echo "document.getElementById('".$checkbox_id."').checked = (what == 'all') ? true : false;\n";
}
echo "}\n";
}
echo " }\n";
echo "</script>\n";
}
//include the footer
//require_once "resources/footer.php";