|
@@ -17,7 +17,7 @@
|
|
|
|
|
|
The Initial Developer of the Original Code is
|
|
The Initial Developer of the Original Code is
|
|
Mark J Crane <[email protected]>
|
|
Mark J Crane <[email protected]>
|
|
- Portions created by the Initial Developer are Copyright (C) 2008-2019
|
|
|
|
|
|
+ Portions created by the Initial Developer are Copyright (C) 2008-2020
|
|
the Initial Developer. All Rights Reserved.
|
|
the Initial Developer. All Rights Reserved.
|
|
|
|
|
|
Contributor(s):
|
|
Contributor(s):
|
|
@@ -49,102 +49,97 @@
|
|
$contact_phones = $database->select($sql, $parameters, 'all');
|
|
$contact_phones = $database->select($sql, $parameters, 'all');
|
|
unset($sql, $parameters);
|
|
unset($sql, $parameters);
|
|
|
|
|
|
-//javascript function: send_cmd
|
|
|
|
- echo "<script type=\"text/javascript\">\n";
|
|
|
|
- echo "function send_cmd(url) {\n";
|
|
|
|
- echo " if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari\n";
|
|
|
|
- echo " xmlhttp=new XMLHttpRequest();\n";
|
|
|
|
- echo " }\n";
|
|
|
|
- echo " else {// code for IE6, IE5\n";
|
|
|
|
- echo " xmlhttp=new ActiveXObject(\"Microsoft.XMLHTTP\");\n";
|
|
|
|
- echo " }\n";
|
|
|
|
- echo " xmlhttp.open(\"GET\",url,true);\n";
|
|
|
|
- echo " xmlhttp.send(null);\n";
|
|
|
|
- echo " document.getElementById('cmd_reponse').innerHTML=xmlhttp.responseText;\n";
|
|
|
|
- echo "}\n";
|
|
|
|
- echo "</script>\n";
|
|
|
|
-
|
|
|
|
-//show the content
|
|
|
|
- echo "<div class='action_bar sub shrink'>\n";
|
|
|
|
- echo " <div class='heading'><b>".$text['label-phone_numbers']."</b></div>\n";
|
|
|
|
- echo " <div class='actions'>\n";
|
|
|
|
- /*
|
|
|
|
- if (permission_exists('contact_phone_add')) {
|
|
|
|
- echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'collapse'=>'hide-sm-dn','link'=>'contact_phone_edit.php?contact_uuid='.urlencode($_GET['id'])]);
|
|
|
|
- }
|
|
|
|
- if (permission_exists('contact_phone_delete') && $contact_phones) {
|
|
|
|
- echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'collapse'=>'hide-sm-dn','onclick'=>"if (confirm('".$text['confirm-delete']."')) { list_action_set('delete'); list_form_submit('form_list'); } else { this.blur(); return false; }"]);
|
|
|
|
- }
|
|
|
|
- */
|
|
|
|
- echo " </div>\n";
|
|
|
|
- echo " <div style='clear: both;'></div>\n";
|
|
|
|
- echo "</div>\n";
|
|
|
|
-
|
|
|
|
- echo "<table class='list'>\n";
|
|
|
|
- echo "<tr class='list-header'>\n";
|
|
|
|
- if (permission_exists('contact_phone_delete')) {
|
|
|
|
- echo " <th class='checkbox'>\n";
|
|
|
|
- echo " <input type='checkbox' id='checkbox_all_phones' name='checkbox_all' onclick=\"list_all_toggle('phones');\" ".($contact_phones ?: "style='visibility: hidden;'").">\n";
|
|
|
|
- echo " </th>\n";
|
|
|
|
- }
|
|
|
|
- echo "<th class='pct-15'>".$text['label-phone_label']."</th>\n";
|
|
|
|
- echo "<th>".$text['label-phone_number']."</th>\n";
|
|
|
|
- echo "<th>".$text['label-phone_type']."</th>\n";
|
|
|
|
- echo "<th>".$text['label-phone_tools']."</th>\n";
|
|
|
|
- echo "<th class='hide-md-dn'>".$text['label-phone_description']."</th>\n";
|
|
|
|
- if (permission_exists('contact_phone_edit') && $_SESSION['theme']['list_row_edit_button']['boolean'] == 'true') {
|
|
|
|
- echo " <td class='action-button'> </td>\n";
|
|
|
|
- }
|
|
|
|
- echo "</tr>\n";
|
|
|
|
-
|
|
|
|
|
|
+//show if exists
|
|
if (is_array($contact_phones) && @sizeof($contact_phones) != 0) {
|
|
if (is_array($contact_phones) && @sizeof($contact_phones) != 0) {
|
|
- $x = 0;
|
|
|
|
- foreach ($contact_phones as $row) {
|
|
|
|
- if (permission_exists('contact_phone_edit')) {
|
|
|
|
- $list_row_url = "contact_phone_edit.php?contact_uuid=".urlencode($row['contact_uuid'])."&id=".urlencode($row['contact_phone_uuid']);
|
|
|
|
- }
|
|
|
|
- echo "<tr class='list-row' href='".$list_row_url."'>\n";
|
|
|
|
|
|
+
|
|
|
|
+ //javascript function: send_cmd
|
|
|
|
+ echo "<script type=\"text/javascript\">\n";
|
|
|
|
+ echo "function send_cmd(url) {\n";
|
|
|
|
+ echo " if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari\n";
|
|
|
|
+ echo " xmlhttp=new XMLHttpRequest();\n";
|
|
|
|
+ echo " }\n";
|
|
|
|
+ echo " else {// code for IE6, IE5\n";
|
|
|
|
+ echo " xmlhttp=new ActiveXObject(\"Microsoft.XMLHTTP\");\n";
|
|
|
|
+ echo " }\n";
|
|
|
|
+ echo " xmlhttp.open(\"GET\",url,true);\n";
|
|
|
|
+ echo " xmlhttp.send(null);\n";
|
|
|
|
+ echo " document.getElementById('cmd_reponse').innerHTML=xmlhttp.responseText;\n";
|
|
|
|
+ echo "}\n";
|
|
|
|
+ echo "</script>\n";
|
|
|
|
+
|
|
|
|
+ //show the content
|
|
|
|
+ echo "<div class='action_bar sub shrink'>\n";
|
|
|
|
+ echo " <div class='heading'><b>".$text['label-phone_numbers']."</b></div>\n";
|
|
|
|
+ echo " <div style='clear: both;'></div>\n";
|
|
|
|
+ echo "</div>\n";
|
|
|
|
+
|
|
|
|
+ echo "<table class='list'>\n";
|
|
|
|
+ echo "<tr class='list-header'>\n";
|
|
if (permission_exists('contact_phone_delete')) {
|
|
if (permission_exists('contact_phone_delete')) {
|
|
- echo " <td class='checkbox'>\n";
|
|
|
|
- echo " <input type='checkbox' name='contact_phones[$x][checked]' id='checkbox_".$x."' class='checkbox_phones' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all_phones').checked = false; }\">\n";
|
|
|
|
- echo " <input type='hidden' name='contact_phones[$x][uuid]' value='".escape($row['contact_phone_uuid'])."' />\n";
|
|
|
|
- echo " </td>\n";
|
|
|
|
- }
|
|
|
|
- echo " <td>".($row['phone_label'] == strtolower($row['phone_label']) ? ucwords($row['phone_label']) : $row['phone_label'])." ".($row['phone_primary'] ? " <i class='fas fa-star fa-xs' style='float: right; margin-top: 0.5em; margin-right: -0.5em;' title=\"".$text['label-primary']."\"></i>" : null)."</td>\n";
|
|
|
|
- echo " <td class='no-link'>\n";
|
|
|
|
- echo button::create(['type'=>'button','class'=>'link','label'=>escape(format_phone($row['phone_number'])),'title'=>$text['label-click_to_call'],'onclick'=>"send_cmd('".PROJECT_PATH."/app/click_to_call/click_to_call.php?src_cid_name=".urlencode($row['phone_number'])."&src_cid_number=".urlencode($row['phone_number'])."&dest_cid_name=".urlencode($_SESSION['user']['extension'][0]['outbound_caller_id_name'])."&dest_cid_number=".urlencode($_SESSION['user']['extension'][0]['outbound_caller_id_number'])."&src=".urlencode($_SESSION['user']['extension'][0]['user'])."&dest=".urlencode($row['phone_number'])."&rec=false&ringback=us-ring&auto_answer=true');"]);
|
|
|
|
- echo " </td>\n";
|
|
|
|
- echo " <td class='no-wrap'>\n";
|
|
|
|
- if ($row['phone_type_voice']) { $phone_types[] = "<i class='fas fa-phone fa-fw' style='margin-right: 3px;' title=\"".$text['label-voice']."\"></i>"; }
|
|
|
|
- if ($row['phone_type_fax']) { $phone_types[] = "<i class='fas fa-fax fa-fw' style='margin-right: 3px;' title=\"".$text['label-fax']."\"></i>"; }
|
|
|
|
- if ($row['phone_type_video']) { $phone_types[] = "<i class='fas fa-video fa-fw' style='margin-right: 3px;' title=\"".$text['label-video']."\"></i>"; }
|
|
|
|
- if ($row['phone_type_text']) { $phone_types[] = "<i class='fas fa-sms fa-fw' style='margin-right: 3px;' title=\"".$text['label-text']."\"></i>"; }
|
|
|
|
- if (is_array($phone_types)) {
|
|
|
|
- echo " ".implode(" ", $phone_types)."\n";
|
|
|
|
|
|
+ echo " <th class='checkbox'>\n";
|
|
|
|
+ echo " <input type='checkbox' id='checkbox_all_phones' name='checkbox_all' onclick=\"edit_all_toggle('phones');\" ".($contact_phones ?: "style='visibility: hidden;'").">\n";
|
|
|
|
+ echo " </th>\n";
|
|
}
|
|
}
|
|
- unset($phone_types);
|
|
|
|
- echo " </td>\n";
|
|
|
|
- echo " <td class='no-link no-wrap'>\n";
|
|
|
|
- echo " <a href='../xml_cdr/xml_cdr.php?caller_id_number=".urlencode($row['phone_number'])."'>".$text['button-cdr']."</a>";
|
|
|
|
- if ($row['phone_type_voice']) {
|
|
|
|
- echo " <span class='hide-sm-dn'>\n";
|
|
|
|
- echo button::create(['type'=>'button','class'=>'link','label'=>$text['label-phone_call'],'title'=>$text['label-click_to_call'],'onclick'=>"send_cmd('".PROJECT_PATH."/app/click_to_call/click_to_call.php?src_cid_name=".urlencode($row['phone_number'])."&src_cid_number=".urlencode($row['phone_number'])."&dest_cid_name=".urlencode($_SESSION['user']['extension'][0]['outbound_caller_id_name'])."&dest_cid_number=".urlencode($_SESSION['user']['extension'][0]['outbound_caller_id_number'])."&src=".urlencode($_SESSION['user']['extension'][0]['user'])."&dest=".urlencode($row['phone_number'])."&rec=false&ringback=us-ring&auto_answer=true');"]);
|
|
|
|
- echo "</span>";
|
|
|
|
- }
|
|
|
|
- echo " </td>\n";
|
|
|
|
- echo " <td class='description overflow hide-md-dn'>".escape($row['phone_description'])." </td>\n";
|
|
|
|
|
|
+ echo "<th class='pct-15'>".$text['label-phone_label']."</th>\n";
|
|
|
|
+ echo "<th>".$text['label-phone_number']."</th>\n";
|
|
|
|
+ echo "<th>".$text['label-phone_type']."</th>\n";
|
|
|
|
+ echo "<th>".$text['label-phone_tools']."</th>\n";
|
|
|
|
+ echo "<th class='hide-md-dn'>".$text['label-phone_description']."</th>\n";
|
|
if (permission_exists('contact_phone_edit') && $_SESSION['theme']['list_row_edit_button']['boolean'] == 'true') {
|
|
if (permission_exists('contact_phone_edit') && $_SESSION['theme']['list_row_edit_button']['boolean'] == 'true') {
|
|
- echo " <td class='action-button'>\n";
|
|
|
|
- echo button::create(['type'=>'button','title'=>$text['button-edit'],'icon'=>$_SESSION['theme']['button_icon_edit'],'link'=>$list_row_url]);
|
|
|
|
- echo " </td>\n";
|
|
|
|
|
|
+ echo " <td class='action-button'> </td>\n";
|
|
}
|
|
}
|
|
echo "</tr>\n";
|
|
echo "</tr>\n";
|
|
- $x++;
|
|
|
|
- }
|
|
|
|
- unset($contact_phones);
|
|
|
|
- }
|
|
|
|
|
|
|
|
- echo "</table>\n";
|
|
|
|
- echo "<br />\n";
|
|
|
|
|
|
+ if (is_array($contact_phones) && @sizeof($contact_phones) != 0) {
|
|
|
|
+ $x = 0;
|
|
|
|
+ foreach ($contact_phones as $row) {
|
|
|
|
+ if (permission_exists('contact_phone_edit')) {
|
|
|
|
+ $list_row_url = "contact_phone_edit.php?contact_uuid=".urlencode($row['contact_uuid'])."&id=".urlencode($row['contact_phone_uuid']);
|
|
|
|
+ }
|
|
|
|
+ echo "<tr class='list-row' href='".$list_row_url."'>\n";
|
|
|
|
+ if (permission_exists('contact_phone_delete')) {
|
|
|
|
+ echo " <td class='checkbox'>\n";
|
|
|
|
+ echo " <input type='checkbox' name='contact_phones[$x][checked]' id='checkbox_".$x."' class='chk_delete checkbox_phones' value='true' onclick=\"edit_delete_action('phones');\">\n";
|
|
|
|
+ echo " <input type='hidden' name='contact_phones[$x][uuid]' value='".escape($row['contact_phone_uuid'])."' />\n";
|
|
|
|
+ echo " </td>\n";
|
|
|
|
+ }
|
|
|
|
+ echo " <td>".($row['phone_label'] == strtolower($row['phone_label']) ? ucwords($row['phone_label']) : $row['phone_label'])." ".($row['phone_primary'] ? " <i class='fas fa-star fa-xs' style='float: right; margin-top: 0.5em; margin-right: -0.5em;' title=\"".$text['label-primary']."\"></i>" : null)."</td>\n";
|
|
|
|
+ echo " <td class='no-link'>\n";
|
|
|
|
+ echo button::create(['type'=>'button','class'=>'link','label'=>escape(format_phone($row['phone_number'])),'title'=>$text['label-click_to_call'],'onclick'=>"send_cmd('".PROJECT_PATH."/app/click_to_call/click_to_call.php?src_cid_name=".urlencode($row['phone_number'])."&src_cid_number=".urlencode($row['phone_number'])."&dest_cid_name=".urlencode($_SESSION['user']['extension'][0]['outbound_caller_id_name'])."&dest_cid_number=".urlencode($_SESSION['user']['extension'][0]['outbound_caller_id_number'])."&src=".urlencode($_SESSION['user']['extension'][0]['user'])."&dest=".urlencode($row['phone_number'])."&rec=false&ringback=us-ring&auto_answer=true');"]);
|
|
|
|
+ echo " </td>\n";
|
|
|
|
+ echo " <td class='no-wrap'>\n";
|
|
|
|
+ if ($row['phone_type_voice']) { $phone_types[] = "<i class='fas fa-phone fa-fw' style='margin-right: 3px;' title=\"".$text['label-voice']."\"></i>"; }
|
|
|
|
+ if ($row['phone_type_fax']) { $phone_types[] = "<i class='fas fa-fax fa-fw' style='margin-right: 3px;' title=\"".$text['label-fax']."\"></i>"; }
|
|
|
|
+ if ($row['phone_type_video']) { $phone_types[] = "<i class='fas fa-video fa-fw' style='margin-right: 3px;' title=\"".$text['label-video']."\"></i>"; }
|
|
|
|
+ if ($row['phone_type_text']) { $phone_types[] = "<i class='fas fa-sms fa-fw' style='margin-right: 3px;' title=\"".$text['label-text']."\"></i>"; }
|
|
|
|
+ if (is_array($phone_types)) {
|
|
|
|
+ echo " ".implode(" ", $phone_types)."\n";
|
|
|
|
+ }
|
|
|
|
+ unset($phone_types);
|
|
|
|
+ echo " </td>\n";
|
|
|
|
+ echo " <td class='no-link no-wrap'>\n";
|
|
|
|
+ echo " <a href='../xml_cdr/xml_cdr.php?caller_id_number=".urlencode($row['phone_number'])."'>".$text['button-cdr']."</a>";
|
|
|
|
+ if ($row['phone_type_voice']) {
|
|
|
|
+ echo " <span class='hide-sm-dn'>\n";
|
|
|
|
+ echo button::create(['type'=>'button','class'=>'link','label'=>$text['label-phone_call'],'title'=>$text['label-click_to_call'],'onclick'=>"send_cmd('".PROJECT_PATH."/app/click_to_call/click_to_call.php?src_cid_name=".urlencode($row['phone_number'])."&src_cid_number=".urlencode($row['phone_number'])."&dest_cid_name=".urlencode($_SESSION['user']['extension'][0]['outbound_caller_id_name'])."&dest_cid_number=".urlencode($_SESSION['user']['extension'][0]['outbound_caller_id_number'])."&src=".urlencode($_SESSION['user']['extension'][0]['user'])."&dest=".urlencode($row['phone_number'])."&rec=false&ringback=us-ring&auto_answer=true');"]);
|
|
|
|
+ echo "</span>";
|
|
|
|
+ }
|
|
|
|
+ echo " </td>\n";
|
|
|
|
+ echo " <td class='description overflow hide-md-dn'>".escape($row['phone_description'])." </td>\n";
|
|
|
|
+ if (permission_exists('contact_phone_edit') && $_SESSION['theme']['list_row_edit_button']['boolean'] == 'true') {
|
|
|
|
+ echo " <td class='action-button'>\n";
|
|
|
|
+ echo button::create(['type'=>'button','title'=>$text['button-edit'],'icon'=>$_SESSION['theme']['button_icon_edit'],'link'=>$list_row_url]);
|
|
|
|
+ echo " </td>\n";
|
|
|
|
+ }
|
|
|
|
+ echo "</tr>\n";
|
|
|
|
+ $x++;
|
|
|
|
+ }
|
|
|
|
+ unset($contact_phones);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ echo "</table>\n";
|
|
|
|
+ echo "<br />\n";
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
|
|
?>
|
|
?>
|