From 4807e0b5702530c6020c8a566a3fd30e8b5abe58 Mon Sep 17 00:00:00 2001 From: Andrew Querol Date: Mon, 28 Dec 2020 21:25:10 -0600 Subject: [PATCH 1/3] Remove the toggle dropdown in favor of three separate toggle buttons --- app/calls/calls.php | 28 ++++------------------------ 1 file changed, 4 insertions(+), 24 deletions(-) diff --git a/app/calls/calls.php b/app/calls/calls.php index cbfe56b6df..08dd04cb82 100644 --- a/app/calls/calls.php +++ b/app/calls/calls.php @@ -194,16 +194,6 @@ } require_once "resources/header.php"; -//javascript for toggle select box - echo "\n"; - //show the content if ($is_included) { echo "
\n"; @@ -222,20 +212,10 @@ echo "
\n"; if ($extensions) { - echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle','onclick'=>"toggle_select(); this.blur();"]); + echo button::create(['type'=>'button','label'=>$text['label-call_forward'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle_cfwd','onclick'=>"list_action_set('toggle_call_forward'); modal_open('modal-toggle','btn_toggle');"]); + echo button::create(['type'=>'button','label'=>$text['label-follow_me'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle_follow','onclick'=>"list_action_set('toggle_follow_me'); modal_open('modal-toggle','btn_toggle');"]); + echo button::create(['type'=>'button','label'=>$text['label-dnd'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle_dnd','onclick'=>"list_action_set('toggle_do_not_disturb'); modal_open('modal-toggle','btn_toggle');"]); } - echo ""; if ($_GET['show'] !== 'all' && permission_exists('call_forward_all')) { echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'link'=>'?show=all'.($params ? '&'.implode('&', $params) : null)]); } @@ -255,7 +235,7 @@ echo "
\n"; if ($extensions) { - echo modal::create(['id'=>'modal-toggle','type'=>'toggle','actions'=>button::create(['type'=>'button','label'=>$text['button-continue'],'icon'=>'check','id'=>'btn_toggle','style'=>'float: right; margin-left: 15px;','collapse'=>'never','onclick'=>"modal_close(); list_action_set('toggle_' + document.getElementById('call_control_feature').options[document.getElementById('call_control_feature').selectedIndex].value); list_form_submit('form_list');"])]); + echo modal::create(['id'=>'modal-toggle','type'=>'toggle','actions'=>button::create(['type'=>'button','label'=>$text['button-continue'],'icon'=>'check','id'=>'btn_toggle','style'=>'float: right; margin-left: 15px;','collapse'=>'never','onclick'=>"modal_close(); list_form_submit('form_list');"])]); } echo $text['description-call_routing']."\n"; From d7c7f4f1a53ab9b2aaae8935cd5ebffc3a2419c1 Mon Sep 17 00:00:00 2001 From: Andrew Querol Date: Mon, 28 Dec 2020 21:53:04 -0600 Subject: [PATCH 2/3] Do not collapse toggle buttons so they do not loose meaning on small screens/mobile devices. --- app/calls/calls.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/calls/calls.php b/app/calls/calls.php index 08dd04cb82..dc9d2a0f11 100644 --- a/app/calls/calls.php +++ b/app/calls/calls.php @@ -212,9 +212,9 @@ echo "
\n"; if ($extensions) { - echo button::create(['type'=>'button','label'=>$text['label-call_forward'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle_cfwd','onclick'=>"list_action_set('toggle_call_forward'); modal_open('modal-toggle','btn_toggle');"]); - echo button::create(['type'=>'button','label'=>$text['label-follow_me'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle_follow','onclick'=>"list_action_set('toggle_follow_me'); modal_open('modal-toggle','btn_toggle');"]); - echo button::create(['type'=>'button','label'=>$text['label-dnd'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle_dnd','onclick'=>"list_action_set('toggle_do_not_disturb'); modal_open('modal-toggle','btn_toggle');"]); + echo button::create(['type'=>'button','label'=>$text['label-call_forward'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'collapse'=>false,'name'=>'btn_toggle_cfwd','onclick'=>"list_action_set('toggle_call_forward'); modal_open('modal-toggle','btn_toggle');"]); + echo button::create(['type'=>'button','label'=>$text['label-follow_me'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'collapse'=>false,'name'=>'btn_toggle_follow','onclick'=>"list_action_set('toggle_follow_me'); modal_open('modal-toggle','btn_toggle');"]); + echo button::create(['type'=>'button','label'=>$text['label-dnd'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'collapse'=>false,'name'=>'btn_toggle_dnd','onclick'=>"list_action_set('toggle_do_not_disturb'); modal_open('modal-toggle','btn_toggle');"]); } if ($_GET['show'] !== 'all' && permission_exists('call_forward_all')) { echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'link'=>'?show=all'.($params ? '&'.implode('&', $params) : null)]); From 492cbbde14bc9c6bcc5a685582a52348d95b8f78 Mon Sep 17 00:00:00 2001 From: Andrew Querol Date: Mon, 28 Dec 2020 22:17:05 -0600 Subject: [PATCH 3/3] Re-add permission check per button toggle button. --- app/calls/calls.php | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/app/calls/calls.php b/app/calls/calls.php index dc9d2a0f11..ff66f5bcbf 100644 --- a/app/calls/calls.php +++ b/app/calls/calls.php @@ -212,11 +212,17 @@ echo "
\n"; if ($extensions) { - echo button::create(['type'=>'button','label'=>$text['label-call_forward'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'collapse'=>false,'name'=>'btn_toggle_cfwd','onclick'=>"list_action_set('toggle_call_forward'); modal_open('modal-toggle','btn_toggle');"]); - echo button::create(['type'=>'button','label'=>$text['label-follow_me'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'collapse'=>false,'name'=>'btn_toggle_follow','onclick'=>"list_action_set('toggle_follow_me'); modal_open('modal-toggle','btn_toggle');"]); - echo button::create(['type'=>'button','label'=>$text['label-dnd'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'collapse'=>false,'name'=>'btn_toggle_dnd','onclick'=>"list_action_set('toggle_do_not_disturb'); modal_open('modal-toggle','btn_toggle');"]); + if (permission_exists('call_forward')) { + echo button::create(['type' => 'button', 'label' => $text['label-call_forward'], 'icon' => $_SESSION['theme']['button_icon_toggle'], 'collapse' => false, 'name' => 'btn_toggle_cfwd', 'onclick' => "list_action_set('toggle_call_forward'); modal_open('modal-toggle','btn_toggle');"]); + } + if (permission_exists('follow_me')) { + echo button::create(['type' => 'button', 'label' => $text['label-follow_me'], 'icon' => $_SESSION['theme']['button_icon_toggle'], 'collapse' => false, 'name' => 'btn_toggle_follow', 'onclick' => "list_action_set('toggle_follow_me'); modal_open('modal-toggle','btn_toggle');"]); + } + if (permission_exists('do_not_disturb')) { + echo button::create(['type' => 'button', 'label' => $text['label-dnd'], 'icon' => $_SESSION['theme']['button_icon_toggle'], 'collapse' => false, 'name' => 'btn_toggle_dnd', 'onclick' => "list_action_set('toggle_do_not_disturb'); modal_open('modal-toggle','btn_toggle');"]); + } } - if ($_GET['show'] !== 'all' && permission_exists('call_forward_all')) { + if ($_GET['show'] !== 'all' && permission_exists('call_forward_all')) { echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'link'=>'?show=all'.($params ? '&'.implode('&', $params) : null)]); } echo "