Allow users to view assigned Ring Groups

This commit is contained in:
FusionPBX 2023-09-22 17:13:47 -06:00 committed by GitHub
parent b0a2f3340a
commit 30e9cd66c2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 35 additions and 8 deletions

View File

@ -96,12 +96,25 @@
//get filtered ring group count
if (!empty($search)) {
$sql = "select count(*) from v_ring_groups where true ";
if (empty($_GET['show']) || $_GET['show'] != "all" || !permission_exists('ring_group_all')) {
$sql .= "and domain_uuid = :domain_uuid ";
if ($show == "all" && permission_exists('ring_group_all')) {
$sql = "select count(*) from v_ring_groups ";
$sql .= "where true ";
}
elseif (permission_exists('ring_group_domain') || permission_exists('ring_group_all')) {
$sql = "select count(*) from v_ring_groups ";
$sql .= "where domain_uuid = :domain_uuid ";
$parameters['domain_uuid'] = $domain_uuid;
}
if (isset($search)) {
else {
$sql = "select count(*) ";
$sql .= "from v_ring_groups as r, v_ring_group_users as u ";
$sql .= "where r.domain_uuid = :domain_uuid ";
$sql .= "and r.ring_group_uuid = u.ring_group_uuid ";
$sql .= "and u.user_uuid = :user_uuid ";
$parameters['domain_uuid'] = $domain_uuid;
$parameters['user_uuid'] = $_SESSION['user_uuid'];
}
if (!empty($search)) {
$sql .= "and (";
$sql .= "lower(ring_group_name) like :search ";
$sql .= "or lower(ring_group_extension) like :search ";
@ -126,12 +139,26 @@
$offset = $rows_per_page * $page;
//get the list
$sql = "select * from v_ring_groups where true ";
if ($show != "all" || !permission_exists('ring_group_all')) {
$sql .= "and domain_uuid = :domain_uuid ";
if ($show == "all" && permission_exists('ring_group_all')) {
$sql = "select * from v_ring_groups ";
$sql .= "where true ";
}
elseif (permission_exists('ring_group_domain') || permission_exists('ring_group_all')) {
$sql = "select * from v_ring_groups ";
$sql .= "where domain_uuid = :domain_uuid ";
$parameters['domain_uuid'] = $domain_uuid;
}
if (isset($search)) {
else {
$sql = "select r.ring_group_uuid, r.ring_group_name, r.ring_group_extension, r.ring_group_strategy, ";
$sql .= "r.ring_group_forward_destination, r.ring_group_forward_enabled, r.ring_group_description ";
$sql .= "from v_ring_groups as r, v_ring_group_users as u ";
$sql .= "where r.domain_uuid = :domain_uuid ";
$sql .= "and r.ring_group_uuid = u.ring_group_uuid ";
$sql .= "and u.user_uuid = :user_uuid ";
$parameters['domain_uuid'] = $domain_uuid;
$parameters['user_uuid'] = $_SESSION['user_uuid'];
}
if (!empty($search)) {
$sql .= "and (";
$sql .= "lower(ring_group_name) like :search ";
$sql .= "or lower(ring_group_extension) like :search ";