From 39a31432ba31963afa5c9e93412713fcb581e756 Mon Sep 17 00:00:00 2001 From: reliberate Date: Thu, 3 Mar 2016 19:01:58 -0700 Subject: [PATCH 1/3] User Dashboard: Minor layout optimizations. Follow Me: Added search and minimized paging controls. Extensions: Added minimized paging controls. --- app/calls/calls.php | 76 +- app/extensions/extensions.php | 69 +- app/ring_groups/ring_group_forward.php | 47 +- core/user_settings/app_languages.php | 1325 ++++++++++++------------ core/user_settings/user_dashboard.php | 75 +- resources/paging.php | 86 +- 6 files changed, 860 insertions(+), 818 deletions(-) diff --git a/app/calls/calls.php b/app/calls/calls.php index 7a98dc09e9..4504fbfe99 100644 --- a/app/calls/calls.php +++ b/app/calls/calls.php @@ -38,6 +38,15 @@ else { $order_by = check_str($_GET["order_by"]); $order = check_str($_GET["order"]); +//handle search term + $search = check_str($_GET["search"]); + if (strlen($search) > 0) { + $sql_mod = "and ( "; + $sql_mod .= "extension like '%".$search."%' "; + $sql_mod .= "or description like '%".$search."%' "; + $sql_mod .= ") "; + } + //add multi-lingual support $language = new text; $text = $language->get($_SESSION['domain']['language']['code'], 'app/calls'); @@ -46,18 +55,6 @@ else { require_once "resources/header.php"; require_once "resources/paging.php"; - if ($is_included != "true") { - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo "
".$text['title']."
\n"; - echo " ".$text['description-2']."\n"; - echo " ".$text['description-3']." \n"; - echo "
\n"; - echo "
"; - } - $sql = "select * from v_extensions "; $sql .= "where domain_uuid = '$domain_uuid' "; $sql .= "and enabled = 'true' "; @@ -77,6 +74,7 @@ else { $sql .= "and extension = 'disabled' "; } } + $sql .= $sql_mod; //add search mod from above if (strlen($order_by)> 0) { $sql .= "order by $order_by $order "; } @@ -89,10 +87,19 @@ else { $num_rows = count($result); unset ($prep_statement, $result, $sql); - $rows_per_page = 150; - $param = ""; + if ($is_included == 'true') { + $rows_per_page = 10; + if ($num_rows > 10) { + echo "\n"; + } + } + else { + $rows_per_page = 150; + } + $param = "&search=".$search; $page = $_GET['page']; if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; } + list($paging_controls_mini, $rows_per_page, $var_3) = paging($num_rows, $param, $rows_per_page, true); list($paging_controls, $rows_per_page, $var_3) = paging($num_rows, $param, $rows_per_page); $offset = $rows_per_page * $page; @@ -115,6 +122,7 @@ else { $sql .= "and extension = 'disabled' "; } } + $sql .= $sql_mod; //add search mod from above if (strlen($order_by)> 0) { $sql .= "order by $order_by $order "; } @@ -132,6 +140,27 @@ else { $row_style["0"] = "row_style0"; $row_style["1"] = "row_style1"; + if ($is_included != "true") { + echo "\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo "
".$text['title']."
\n"; + echo " ".$text['description-2']."\n"; + echo " ".$text['description-3']."\n"; + echo "
\n"; + echo " "; + echo " "; + if ($paging_controls_mini != '') { + echo "".$paging_controls_mini."\n"; + } + echo "
\n"; + echo "
"; + } + echo "\n"; echo "\n"; echo "\n"; @@ -157,20 +186,13 @@ else { unset($sql, $result, $row_count); } //end if results - if (strlen($paging_controls) > 0) { - echo "\n"; - echo "\n"; - echo "\n"; - } echo "
".$text['table-extension']."
\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo "
 $paging_controls
\n"; - echo "
"; - echo "

"; + echo "
"; + + if (strlen($paging_controls) > 0 && ($is_included != "true")) { + echo "
".$paging_controls."
\n"; + echo "

\n"; + } if ($is_included != "true") { require_once "resources/footer.php"; diff --git a/app/extensions/extensions.php b/app/extensions/extensions.php index 15619513ae..17f79ca5d7 100644 --- a/app/extensions/extensions.php +++ b/app/extensions/extensions.php @@ -45,6 +45,18 @@ else { $order = check_str($_GET["order"]); } +//handle search term + $search = check_str($_GET["search"]); + if (strlen($search) > 0) { + $sql_mod = "and ( "; + $sql_mod .= "extension like '%".$search."%' "; + $sql_mod .= "or call_group like '%".$search."%' "; + $sql_mod .= "or user_context like '%".$search."%' "; + $sql_mod .= "or enabled like '%".$search."%' "; + $sql_mod .= "or description like '%".$search."%' "; + $sql_mod .= ") "; + } + require_once "resources/header.php"; $document['title'] = $text['title-extensions']; @@ -61,15 +73,7 @@ require_once "resources/paging.php"; unset($prep_statement, $row); //get the number of extensions (reuse $sql from above) - if (strlen($search) > 0) { - $sql .= "and ("; - $sql .= " extension like '%".$search."%' "; - $sql .= " or call_group like '%".$search."%' "; - $sql .= " or user_context like '%".$search."%' "; - $sql .= " or enabled like '%".$search."%' "; - $sql .= " or description like '%".$search."%' "; - $sql .= ") "; - } + $sql .= $sql_mod; //add search mod from above $prep_statement = $db->prepare(check_sql($sql)); if ($prep_statement) { $prep_statement->execute(); @@ -85,24 +89,17 @@ require_once "resources/paging.php"; //prepare to page the results $rows_per_page = 150; - $param = ""; + $param = "&search=".$search; if (!isset($_GET['page'])) { $_GET['page'] = 0; } $_GET['page'] = check_str($_GET['page']); - list($paging_controls, $rows_per_page, $var_3) = paging($num_rows, $param, $rows_per_page); + list($paging_controls_mini, $rows_per_page, $var_3) = paging($num_rows, $param, $rows_per_page, true); //top + list($paging_controls, $rows_per_page, $var_3) = paging($num_rows, $param, $rows_per_page); //bottom $offset = $rows_per_page * $_GET['page']; //get the extensions $sql = "select * from v_extensions "; $sql .= "where domain_uuid = '$domain_uuid' "; - if (strlen($search) > 0) { - $sql .= "and ("; - $sql .= " extension like '%".$search."%' "; - $sql .= " or call_group like '%".$search."%' "; - $sql .= " or user_context like '%".$search."%' "; - $sql .= " or enabled like '%".$search."%' "; - $sql .= " or description like '%".$search."%' "; - $sql .= ") "; - } + $sql .= $sql_mod; //add search mod from above if (isset($order_by)) { $sql .= "order by $order_by $order "; } @@ -118,16 +115,19 @@ require_once "resources/paging.php"; //show the content echo "\n"; echo " \n"; - echo " \n"; echo " \n"; - echo " \n"; echo " \n"; echo " \n"; @@ -186,26 +186,23 @@ require_once "resources/paging.php"; unset($sql, $extensions, $row_count); } //end if results - echo "\n"; - echo "\n"; - echo "\n"; echo "
".$text['header-extensions']." (".$num_rows.")
\n"; + echo "
".$text['header-extensions']." (".$num_rows.")
\n"; echo " ".$text['description-extensions']."\n"; echo "
\n"; + echo " \n"; if (if_group("superadmin")) { - echo " \n"; + echo " \n"; } echo " "; echo " "; + if ($paging_controls_mini != '') { + echo "".$paging_controls_mini."\n"; + } echo "
\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; + echo " \n"; + echo " \n"; } } - echo " \n"; - echo " \n"; - echo "
 $paging_controls\n"; if (permission_exists('extension_add')) { if ($_SESSION['limit']['extensions']['numeric'] == '' || ($_SESSION['limit']['extensions']['numeric'] != '' && $total_extensions < $_SESSION['limit']['extensions']['numeric'])) { + echo "
\n"; echo " ".$v_link_label_add."\n"; + echo "
\n"; - echo "
"; - echo "

"; + + if (strlen($paging_controls) > 0) { + echo "
".$paging_controls."
\n"; + } + + echo "

\n"; //show the footer require_once "resources/footer.php"; diff --git a/app/ring_groups/ring_group_forward.php b/app/ring_groups/ring_group_forward.php index b04816015a..d68f397432 100644 --- a/app/ring_groups/ring_group_forward.php +++ b/app/ring_groups/ring_group_forward.php @@ -89,7 +89,15 @@ require_once "resources/paging.php"; } //prepare to page the results - $rows_per_page = 10; + if ($is_included == 'true') { + $rows_per_page = 10; + if ($num_rows > 10) { + echo "\n"; + } + } + else { + $rows_per_page = 150; + } $param = ""; $page = $_GET['page']; if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; } @@ -126,30 +134,21 @@ require_once "resources/paging.php"; $row_style["0"] = "row_style0"; $row_style["1"] = "row_style1"; - echo "\n"; + echo "
\n"; echo "\n"; - echo th_order_by('ring_group_extension', $text['label-ring-group-extension'], $order_by, $order); - //echo th_order_by('ring_group_context', 'Context', $order_by, $order); - //echo th_order_by('ring_group_strategy', 'Strategy', $order_by, $order); - //echo th_order_by('ring_group_timeout_app', 'Timeout App', $order_by, $order); - //echo th_order_by('ring_group_timeout_data', 'Timeout Data', $order_by, $order); - //echo th_order_by('ring_group_enabled', $text['label-enabled'], $order_by, $order); - echo ""; echo th_order_by('ring_group_name', $text['label-name'], $order_by, $order); + echo th_order_by('ring_group_extension', $text['label-extension'], $order_by, $order); + echo ""; echo th_order_by('ring_group_description', $text['label-description'], $order_by, $order); echo "\n"; if ($result_count > 0) { foreach($result as $row) { - echo "\n"; + $tr_link = "href='".PROJECT_PATH."/app/ring_groups/ring_group_forward_edit.php?id=".$row['ring_group_uuid']."&return_url=".urlencode($_SERVER['PHP_SELF'])."'"; + echo "\n"; + echo " \n"; echo " \n"; - //echo " \n"; - //echo " \n"; - //echo " \n"; - //echo " \n"; - //echo " \n"; echo " \n"; - echo " \n"; echo " \n"; echo "\n"; if ($c==0) { $c=1; } else { $c=0; } @@ -158,21 +157,11 @@ require_once "resources/paging.php"; } //end if results echo "\n"; - echo "\n"; - echo "\n"; - echo "
".$text['label-tools']."".$text['label-tools']."
".$row['ring_group_name']." ".$row['ring_group_extension']." ".$row['ring_group_context']." ".$row['ring_group_strategy']." ".$row['ring_group_timeout_app']." ".$row['ring_group_timeout_data']." ".$row['ring_group_enabled']." ".$text['link-call-forward']."".$row['ring_group_name']." ".$row['ring_group_description']." 
\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo "
 $paging_controls\n"; - echo "  
\n"; - echo "
"; echo "

"; + + echo "
".$paging_controls."
\n"; + echo ""; //include the footer diff --git a/core/user_settings/app_languages.php b/core/user_settings/app_languages.php index 3a83043028..ea9e255f62 100644 --- a/core/user_settings/app_languages.php +++ b/core/user_settings/app_languages.php @@ -1,647 +1,680 @@ - \ No newline at end of file diff --git a/core/user_settings/user_dashboard.php b/core/user_settings/user_dashboard.php index 282fe09e5d..110548abcc 100644 --- a/core/user_settings/user_dashboard.php +++ b/core/user_settings/user_dashboard.php @@ -66,9 +66,21 @@ require_once "resources/header.php"; $document['title'] = $text['title-user_dashboard']; - echo "".$text['header-user_dashboard']."
"; - echo $text['description-user_dashboard']; - + echo "\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo "
"; + echo " ".$text['header-user_dashboard']."
"; + echo " ".$text['description-user_dashboard']; + echo "
\n"; + echo " ".$_SESSION["username"].""; + if (file_exists($_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/app/voicemails/voicemail_messages.php")) { + echo " "; + } + echo "
\n"; + echo "

"; //display login message if (if_group("superadmin") && $_SESSION['login']['message']['text'] != '') { @@ -76,52 +88,43 @@ echo "
".$text['login-message_attention']."  ".$_SESSION['login']['message']['text']."  (".$text['login-message_dismiss'].")
"; } -//start the user table - echo "
"; - echo "
"; - echo "\n"; - echo "\n"; - echo " \n"; - echo "\n"; - echo "\n"; - echo " \n"; - echo " \n"; - echo "\n"; + /* + $text['title-user-settings'] + $text['label-username'] + $text['label-voicemail'] + */ -//voicemail - if (file_exists($_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/app/voicemails/voicemail_messages.php")) { - echo "\n"; - echo " \n"; - echo " \n"; - echo "\n"; - } - -//end the table - echo "
".$text['title-user-settings']."  
\n"; - echo " ".$text['label-username']."\n"; - echo " \n"; - echo " ".$_SESSION["username"]." \n"; - echo "
\n"; - echo " ".$text['label-voicemail']."\n"; - echo " \n"; - echo " ".$text['label-view-messages']." \n"; - echo "
\n"; - echo "
\n"; - echo "
\n"; - -//call forward, follow me and dnd +//call routing if (file_exists($_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/app/calls/calls.php")) { if (permission_exists('follow_me') || permission_exists('call_forward') || permission_exists('do_not_disturb')) { $is_included = "true"; + echo "\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo "
".$text['header-call_routing']."

\n"; require_once "app/calls/calls.php"; + echo "
\n"; } } +//reload language values + $language = new text; + $text = $language->get(); + //ring group forward if (file_exists($_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/app/ring_groups/ring_group_forward.php")) { if (permission_exists('ring_group_forward')) { //ring_group_forward $is_included = "true"; + echo "\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo "
".$text['header-ring_groups']."

\n"; require_once "app/ring_groups/ring_group_forward.php"; + echo "
\n"; } } diff --git a/resources/paging.php b/resources/paging.php index 646712016d..8a747460c5 100644 --- a/resources/paging.php +++ b/resources/paging.php @@ -58,73 +58,71 @@ function paging($num_rows, $param, $rows_per_page, $mini = false) { } if ($pagenum > 0) { - //echo "currently middepage
"; $page = $pagenum - 1; - $prev = "\n"; - $first = "\n"; + $prev = "\n"; + $first = "\n"; } else { - //echo "currently on the first page
"; - $prev = "\n"; - //$first = "\n"; + $prev = "\n"; } if (($pagenum + 1) < $maxpage) { - //echo "middle page
"; $page = $pagenum + 1; - $next = "\n"; - $last = "\n"; + $next = "\n"; + $last = "\n"; } else { - //echo "last page
"; - $last = "\n"; - $next = "\n"; - //$last = "\n"; + $last = "\n"; + $next = "\n"; } $returnearray = array(); + $code = ''; if ($maxpage > 1) { - //$returnearray[] = $first . $prev ." Page $pagenum of $maxpage " . $next . $last; - $returnearray[] = "
".$prev.((!$mini) ? "     ".$maxpage."    " : null).$next."
\n". - "\n"; + "\n"; + //determine size + $code = ($mini) ? $prev.$next."\n".$script : "
".$prev."     ".$maxpage."    ".$next."
\n".$script; + //add to array + $returnearray[] = $code; } else { $returnearray[] = ""; From c6b3b3c619190f983945e38764a4b7efa993c10b Mon Sep 17 00:00:00 2001 From: reliberate Date: Thu, 3 Mar 2016 19:12:16 -0700 Subject: [PATCH 2/3] User Dashboard: Remove comment, unnecessary language strings. --- core/user_settings/app_languages.php | 28 --------------------------- core/user_settings/user_dashboard.php | 6 ------ 2 files changed, 34 deletions(-) diff --git a/core/user_settings/app_languages.php b/core/user_settings/app_languages.php index ea9e255f62..24e6932823 100644 --- a/core/user_settings/app_languages.php +++ b/core/user_settings/app_languages.php @@ -14,20 +14,6 @@ $text['title-user_dashboard']['ro'] = "Panou control utilizator"; $text['title-user_dashboard']['fa'] = ""; $text['title-user_dashboard']['ar-eg'] = "الصفحه الرئيسيه للمستخدم"; -$text['title-user-settings']['en-us'] = "User Information"; -$text['title-user-settings']['es-cl'] = "Información de Usuario"; -$text['title-user-settings']['pt-pt'] = "Informação do Utilizador"; -$text['title-user-settings']['fr-fr'] = "Informations de l'usager"; -$text['title-user-settings']['pt-br'] = "Informação do Usuário"; -$text['title-user-settings']['pl'] = "Informacje o użytkowniku"; -$text['title-user-settings']['he'] = "פרטי משתמש"; -$text['title-user-settings']['uk'] = "Інформація про користувача"; -$text['title-user-settings']['sv-se'] = "Användarinformation"; -$text['title-user-settings']['de-at'] = "Benutzerinformationen"; -$text['title-user-settings']['ro'] = "Informații utilizator"; -$text['title-user-settings']['fa'] = ""; -$text['title-user-settings']['ar-eg'] = "بيانات المستخدم"; - $text['title']['en-us'] = "Account Settings"; $text['title']['es-cl'] = "Configuración de Cuenta"; $text['title']['pt-pt'] = "Configurações de Conta"; @@ -196,20 +182,6 @@ $text['login-message_attention']['ro'] = "Atenție!"; $text['login-message_attention']['fa'] = ""; $text['login-message_attention']['ar-eg'] = "برجاء الملاحظة"; -$text['label-voicemail']['en-us'] = "Voicemail"; -$text['label-voicemail']['es-cl'] = "Correo de Voz"; -$text['label-voicemail']['pt-pt'] = "Correio de Voz"; -$text['label-voicemail']['fr-fr'] = "Messagerie vocale"; -$text['label-voicemail']['pt-br'] = "Correio de Voz"; -$text['label-voicemail']['pl'] = "Poczta głosowa"; -$text['label-voicemail']['he'] = "תיבה קולית"; -$text['label-voicemail']['uk'] = "Голосова пошта"; -$text['label-voicemail']['sv-se'] = "Röstbrevlåda"; -$text['label-voicemail']['de-at'] = "Sprachnachricht"; -$text['label-voicemail']['ro'] = "Mesagerie vocală"; -$text['label-voicemail']['fa'] = ""; -$text['label-voicemail']['ar-eg'] = "البريد الصوتي"; - $text['label-username']['en-us'] = "Username"; $text['label-username']['es-cl'] = "Nombre de Usuario"; $text['label-username']['pt-pt'] = "Nome de Utilizador"; diff --git a/core/user_settings/user_dashboard.php b/core/user_settings/user_dashboard.php index 110548abcc..ae692eb104 100644 --- a/core/user_settings/user_dashboard.php +++ b/core/user_settings/user_dashboard.php @@ -88,12 +88,6 @@ echo ""; } - /* - $text['title-user-settings'] - $text['label-username'] - $text['label-voicemail'] - */ - //call routing if (file_exists($_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/app/calls/calls.php")) { if (permission_exists('follow_me') || permission_exists('call_forward') || permission_exists('do_not_disturb')) { From 073c0e998a3d98624e0829bd4e347fab93739fc8 Mon Sep 17 00:00:00 2001 From: reliberate Date: Thu, 3 Mar 2016 19:35:14 -0700 Subject: [PATCH 3/3] User Dashboard: Tweak user settings link and voicemail button. --- core/user_settings/app_languages.php | 20 ++++++++++---------- core/user_settings/user_dashboard.php | 4 ++-- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/core/user_settings/app_languages.php b/core/user_settings/app_languages.php index 24e6932823..b383532d35 100644 --- a/core/user_settings/app_languages.php +++ b/core/user_settings/app_languages.php @@ -627,16 +627,16 @@ $text['check-available-ondemand-status']['ro'] = "Disponibil (la cerere)"; $text['check-available-ondemand-status']['fa'] = ""; $text['check-available-ondemand-status']['ar-eg'] = "(متاح ( تحت الطلب"; -$text['button-voicemail_messages']['en-us'] = "Voicemail Messages"; -$text['button-voicemail_messages']['es-cl'] = "Mensajes de correo de voz"; -$text['button-voicemail_messages']['pt-pt'] = "Mensagens de Correio de Voz"; -$text['button-voicemail_messages']['fr-fr'] = "Messages vocaux"; -$text['button-voicemail_messages']['pt-br'] = "Mensagem de correio de voz"; -$text['button-voicemail_messages']['pl'] = "Wiadomości poczty głosowej"; -$text['button-voicemail_messages']['sv-se'] = "Röstbrevlåda Meddelanden"; -$text['button-voicemail_messages']['uk'] = "Повідомлення голосової пошти"; -$text['button-voicemail_messages']['de-at'] = "Mailbox Nachrichten"; -$text['button-voicemail_messages']['he'] = "הודעות תא קולי"; +$text['button-voicemail']['en-us'] = "Voicemail"; +$text['button-voicemail']['es-cl'] = "Correo de Voz"; +$text['button-voicemail']['pt-pt'] = "Correio de Voz"; +$text['button-voicemail']['fr-fr'] = "Messagerie Vocale"; +$text['button-voicemail']['pt-br'] = "Correio de voz"; +$text['button-voicemail']['pl'] = "Poczta głosowa"; +$text['button-voicemail']['sv-se'] = "Röstbrevlåda"; +$text['button-voicemail']['uk'] = "Голосова пошта"; +$text['button-voicemail']['de-at'] = "Mailbox"; +$text['button-voicemail']['he'] = "תא קולי"; $text['button-view_all']['en-us'] = "View All"; $text['button-view_all']['es-cl'] = "Mostrar Todos"; diff --git a/core/user_settings/user_dashboard.php b/core/user_settings/user_dashboard.php index ae692eb104..24d50ada42 100644 --- a/core/user_settings/user_dashboard.php +++ b/core/user_settings/user_dashboard.php @@ -73,9 +73,9 @@ echo " ".$text['description-user_dashboard']; echo " \n"; echo " \n"; - echo " ".$_SESSION["username"].""; + echo " "; if (file_exists($_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/app/voicemails/voicemail_messages.php")) { - echo " "; + echo " "; } echo " \n"; echo " \n";