From a4b176cf58bd8bf5297bb7d01ab9f40d9cf5e180 Mon Sep 17 00:00:00 2001 From: Nate Jones Date: Fri, 5 Sep 2014 02:58:47 +0000 Subject: [PATCH] Fax Server: Hide Contacts select box if no Contacts with a fax number exist. Order Contacts by name (company, first, last, nick) in select box, cleaned up code a bit. --- app/fax/fax_send.php | 109 +++++++++++++++++++++++-------------------- 1 file changed, 59 insertions(+), 50 deletions(-) diff --git a/app/fax/fax_send.php b/app/fax/fax_send.php index 0ea2002ab1..217e5ef802 100644 --- a/app/fax/fax_send.php +++ b/app/fax/fax_send.php @@ -245,6 +245,14 @@ else { $pdf -> setPrintFooter(false); $pdf -> SetMargins(0, 0, 0, true); +/* Works to get the bad PDF into a good (sort of) PDF, but don't have a dynamic method to obtain the correct page size first, so is a guess. */ +// chdir($dir_fax_temp); +// exec("gs -q -sDEVICE=tiffg3 -r204x196 -g1687x2291 -dNOPAUSE -sOutputFile=".$fax_name."_converted.tif -- ".$fax_name.".pdf -c quit"); +// exec("mv ".$dir_fax_temp.'/'.$fax_name.".pdf ".$dir_fax_temp.'/'.$fax_name."_uploaded.pdf"); +// exec("libreoffice --headless --convert-to pdf --outdir ".$dir_fax_temp." ".$dir_fax_temp.'/'.$fax_name.'_converted.tif'); +// echo "Done"; +// exit; + $page_count = 0; if (is_array($pdf_files) && sizeof($pdf_files) > 0) { //determine total pages @@ -602,8 +610,30 @@ else { //show the header require_once "resources/header.php"; -//fax extension form +//javascript to toggle input/select boxes + echo ""; + +//fax extension form echo "
\n"; echo "\n"; echo "\n"; @@ -654,34 +684,6 @@ else { echo " ".$text['label-fax-recipient']."\n"; echo "\n"; echo "\n";
\n"; - -//javascript to toggle input/select boxes - echo ""; - ?> - - \n"; - echo " \n"; $sql = "select "; $sql .= "c.contact_organization, "; $sql .= "c.contact_name_given, "; @@ -698,34 +700,41 @@ else { $sql .= "cp.phone_type = 'fax' and "; $sql .= "cp.phone_number is not null and "; $sql .= "cp.phone_number <> '' "; - $sql .= "order by "; - $sql .= "c.contact_organization asc, "; - $sql .= "c.contact_name_given asc, "; - $sql .= "c.contact_name_family asc "; - echo $sql; $prep_statement = $db->prepare(check_sql($sql)); $prep_statement -> execute(); - $result_e = $prep_statement -> fetchAll(PDO::FETCH_NAMED); - foreach ($result_e as &$row) { - if ($row['contact_organization'] != '') { - $contact_option_label = $row['contact_organization']; + $result = $prep_statement -> fetchAll(PDO::FETCH_NAMED); + $result_count = count($result); + if ($result_count > 0) { + foreach ($result as &$row) { + if ($row['contact_organization'] != '') { + $contact_option_label = $row['contact_organization']; + } + if ($row['contact_name_given'] != '' || $row['contact_name_family'] != '' || $row['contact_nickname'] != '') { + $contact_option_label .= ($row['contact_organization'] != '') ? "," : null; + $contact_option_label .= ($row['contact_name_given'] != '') ? (($row['contact_organization'] != '') ? " " : null).$row['contact_name_given'] : null; + $contact_option_label .= ($row['contact_name_family'] != '') ? (($row['contact_organization'] != '' || $row['contact_name_given'] != '') ? " " : null).$row['contact_name_family'] : null; + $contact_option_label .= ($row['contact_nickname'] != '') ? (($row['contact_organization'] != '' || $row['contact_name_given'] != '' || $row['contact_name_family'] != '') ? " (".$row['contact_nickname'].")" : $row['contact_nickname']) : null; + } + $contact_option_value_recipient = $contact_option_label; + $contact_option_value_faxnumber = $row['phone_number']; + $contact_option_label .= ":  ".format_phone($row['phone_number']); + $contact_labels[] = $contact_option_label; + $contact_values[] = $contact_option_value_faxnumber."|".$contact_option_value_recipient; + unset($contact_option_label); } - if ($row['contact_name_given'] != '' || $row['contact_name_family'] != '' || $row['contact_nickname'] != '') { - $contact_option_label .= ($row['contact_organization'] != '') ? "," : null; - $contact_option_label .= ($row['contact_name_given'] != '') ? " ".$row['contact_name_given'] : null; - $contact_option_label .= ($row['contact_name_family'] != '') ? " ".$row['contact_name_family'] : null; - $contact_option_label .= ($row['contact_nickname'] != '') ? " (".$row['contact_nickname'].")" : null; + asort($contact_labels, SORT_NATURAL); // sort by name(s) + echo " \n"; } unset ($prep_statement); - echo " \n"; echo " \n"; - echo " \n"; + if ($result_count > 0) { + echo " \n"; + } echo "
\n"; echo " ".$text['description-fax-recipient']."\n"; echo "