diff --git a/app/contacts/app_languages.php b/app/contacts/app_languages.php index 1ce4da9b3c..8c23aa4aed 100644 --- a/app/contacts/app_languages.php +++ b/app/contacts/app_languages.php @@ -415,6 +415,27 @@ $text['label-address_tools']['pt-pt'] = "Ferramentas"; $text['label-address_tools']['fr-fr'] = "Outils"; + // contact extensions + $text['label-contact_extensions']['en-us'] = "Extensions"; + $text['label-contact_extensions']['es-cl'] = "Extensións"; + $text['label-contact_extensions']['pt-pt'] = "Extensões"; + $text['label-contact_extensions']['fr-fr'] = "Extensions"; + + $text['label-extension']['en-us'] = "Extension"; + $text['label-extension']['es-cl'] = "Extensión"; + $text['label-extension']['pt-pt'] = "Extensão"; + $text['label-extension']['fr-fr'] = "Extension"; + + $text['label-enabled']['en-us'] = "Enabled"; + $text['label-enabled']['es-cl'] = "Activado"; + $text['label-enabled']['pt-pt'] = "Habilitada"; + $text['label-enabled']['fr-fr'] = "Actif"; + + $text['label-description']['en-us'] = "Description"; + $text['label-description']['es-cl'] = "Descripción"; + $text['label-description']['pt-pt'] = "Descrição"; + $text['label-description']['fr-fr'] = "Description"; + // contact notes $text['title-contact_notes-add']['en-us'] = "Contact Note Add"; $text['title-contact_notes-add']['es-cl'] = "Agregar Nota de Contacto"; diff --git a/app/contacts/contact_edit.php b/app/contacts/contact_edit.php index b70f6c29ea..30188fe593 100644 --- a/app/contacts/contact_edit.php +++ b/app/contacts/contact_edit.php @@ -541,6 +541,7 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) { //echo "

\n"; require "contact_phones.php"; require "contact_addresses.php"; + require "contact_extensions.php"; require "contact_notes.php"; echo "\n"; } diff --git a/app/contacts/contact_extensions.php b/app/contacts/contact_extensions.php new file mode 100644 index 0000000000..a6124a390f --- /dev/null +++ b/app/contacts/contact_extensions.php @@ -0,0 +1,164 @@ + + Portions created by the Initial Developer are Copyright (C) 2008-2012 + the Initial Developer. All Rights Reserved. + + Contributor(s): + Mark J Crane +*/ +require_once "root.php"; +require_once "resources/require.php"; +require_once "resources/check_auth.php"; +if (permission_exists('contact_view')) { + //access granted +} +else { + echo "access denied"; + exit; +} + +//require_once "resources/header.php"; +require_once "resources/paging.php"; + +//get variables used to control the order + if (isset($_GET["order_by"])) { + $order_by = check_str($_GET["order_by"]); + $order = check_str($_GET["order"]); + } + +//javascript function: send_cmd + echo "\n"; + +//show the content + + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "
".$text['label-contact_extensions']." 
\n"; + + //prepare to page the results + $sql = "select count(*) as num_rows "; + $sql .= " from v_extensions e, v_extension_users eu, v_users u "; + $sql .= " where e.extension_uuid = eu.extension_uuid "; + $sql .= " and u.user_uuid = eu.user_uuid "; + $sql .= " and e.domain_uuid = '$domain_uuid' "; + $sql .= " and u.contact_uuid = '$contact_uuid' "; + $prep_statement = $db->prepare($sql); + if ($prep_statement) { + $prep_statement->execute(); + $row = $prep_statement->fetch(PDO::FETCH_ASSOC); + if ($row['num_rows'] > 0) { + $num_rows = $row['num_rows']; + } + else { + $num_rows = '0'; + } + } + + //prepare to page the results + $rows_per_page = 10; + $param = ""; + $page = $_GET['page']; + if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; } + list($paging_controls, $rows_per_page, $var_3) = paging($num_rows, $param, $rows_per_page); + $offset = $rows_per_page * $page; + + //get the extension list + $sql = "select e.extension_uuid, e.extension, e.enabled, e.description "; + $sql .= " from v_extensions e, v_extension_users eu, v_users u "; + $sql .= " where e.extension_uuid = eu.extension_uuid "; + $sql .= " and u.user_uuid = eu.user_uuid "; + $sql .= " and e.domain_uuid = '$domain_uuid' "; + $sql .= " and u.contact_uuid = '$contact_uuid' "; + + if (strlen($order_by)> 0) { $sql .= "order by $order_by $order "; } + $sql .= " limit $rows_per_page offset $offset "; + $prep_statement = $db->prepare(check_sql($sql)); + $prep_statement->execute(); + $result = $prep_statement->fetchAll(PDO::FETCH_NAMED); + $result_count = count($result); + unset ($prep_statement, $sql); + + $c = 0; + $row_style["0"] = "row_style0"; + $row_style["1"] = "row_style1"; + + echo "
\n"; + echo "\n"; + echo "\n"; + echo th_order_by('extension', $text['label-extension'], $order_by, $order); + echo th_order_by('enabled', $text['label-enabled'], $order_by, $order); + echo th_order_by('phone_description', $text['label-description'], $order_by, $order); + echo "\n"; + echo "\n"; + if ($result_count > 0) { + foreach($result as $row) { + echo "\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo "\n"; + if ($c==0) { $c=1; } else { $c=0; } + } //end foreach + unset($sql, $result, $row_count); + } //end if results + + echo "\n"; + echo "\n"; + echo "\n"; + + echo "
"; + if (permission_exists('extension_add')) { + echo " $v_link_label_add\n"; + } + echo "
".$row['extension']." ".$row['enabled']." ".$row['description']." "; + echo "$v_link_label_edit"; + echo "$v_link_label_delete"; + echo "
\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo "
 $paging_controls"; + if (permission_exists('extension_add')) { + echo " $v_link_label_add\n"; + } + echo "
\n"; + echo "
"; + echo "
"; + +?>