filename typo
[squirrelmail.git] / templates / util_addressbook.php
index 3c2c5d62c881d39a6e58d1ce3ab18751e4a5f386..214dbdc958054b5f07f69537132a0705c18d7b22 100644 (file)
@@ -4,59 +4,14 @@
  *
  * Functions to make working with address books easier
  * 
- * @copyright © 1999-2007 The SquirrelMail Project Team
+ * @copyright 1999-2014 The SquirrelMail Project Team
  * @license http://opensource.org/licenses/gpl-license.php GNU Public License
  * @version $Id$
  * @package squirrelmail
  * @subpackage templates
  */
 
-/**
- * Display a column header with sort buttons
- * 
- * @param string $field which field to display
- * @author Steve Brown
- * @since 1.5.2
- */
-function addAbookSort ($field) {
-    global $abook_sort_order;
-    
-    switch ($field) {
-        case 'nickname':
-            $str = _("Nickname");
-            $alt = _("sort by nickname");
-            $down = 0;
-            $up = 1;
-            $has_sort = true;
-            break;
-        case 'fullname':
-            $str = _("Name");
-            $alt = _("sort by name");
-            $down = 2;
-            $up = 3;
-            $has_sort = true;
-            break;
-        case 'email':
-            $str = _("E-mail");
-            $alt = _("sort by email");
-            $down = 4;
-            $up = 5;
-            $has_sort = true;
-            break;
-        case 'info':
-            $str = _("Info");
-            $alt = _("sort by info");
-            $down = 6;
-            $up = 7;
-            $has_sort = true;
-            break;
-        default:
-            return 'BAD SORT FIELD GIVEN: "'.$field.'"';
-    }
-    
-    return $str . ($has_sort ? show_abook_sort_button($abook_sort_order, $alt, $down, $up) : '');
-}
-
+//FIXME: the functions in this file should be reviewed and moved to functions/template/abook_util.php and this file should be removed
 /**
  * Create a link to compose an email to the email address given.
  * 
@@ -66,8 +21,8 @@ function addAbookSort ($field) {
  */
 function composeLink ($row) {
     return makeComposeLink('src/compose.php?send_to=' .
-                           rawurlencode($row['FullAddress']),
-                           htmlspecialchars($row['Email']));
+                           rawurlencode($row['RawFullAddress']),
+                           sm_encode_html_special_chars($row['Email']));
 }
 
 /**
@@ -86,16 +41,17 @@ function formatAddressList ($addresses) {
     $contacts = array();
     while(list($undef,$row) = each($addresses)) {
         $contact = array (
-                            'FirstName'     => htmlspecialchars($row['firstname']),
-                            'LastName'      => htmlspecialchars($row['lastname']),
-                            'FullName'      => htmlspecialchars($row['name']),
-                            'NickName'      => htmlspecialchars($row['nickname']),
-                            'Email'         => htmlspecialchars($row['email']),
-                            'FullAddress'   => htmlspecialchars(AddressBook::full_address($row)),
-                            'Info'          => htmlspecialchars($row['label']),
-                            'Extra'         => (isset($row['extra']) ? $row['extra'] : NULL),
-                            'Source'        => htmlspecialchars($row['source']),
-                            'JSEmail'       => htmlspecialchars(addcslashes(AddressBook::full_address($row), "'"), ENT_QUOTES),
+                            'FirstName'      => sm_encode_html_special_chars($row['firstname']),
+                            'LastName'       => sm_encode_html_special_chars($row['lastname']),
+                            'FullName'       => sm_encode_html_special_chars($row['name']),
+                            'NickName'       => sm_encode_html_special_chars($row['nickname']),
+                            'Email'          => sm_encode_html_special_chars($row['email']),
+                            'FullAddress'    => sm_encode_html_special_chars(AddressBook::full_address($row)),
+                            'RawFullAddress' => AddressBook::full_address($row),
+                            'Info'           => sm_encode_html_special_chars($row['label']),
+                            'Extra'          => (isset($row['extra']) ? $row['extra'] : NULL),
+                            'Source'         => sm_encode_html_special_chars($row['source']),
+                            'JSEmail'        => sm_encode_html_special_chars(addcslashes(AddressBook::full_address($row), "'"), ENT_QUOTES),
                          );
         $contacts[] = $contact;
     }
@@ -167,6 +123,16 @@ function insert_javascript() {
         }
     }
 
+    function CheckAll(ch) {
+        var chkObj = "";
+        for (var i = 0; i < document.addressbook.elements.length; i++) {
+            chkObj = document.addressbook.elements[i];
+            if (chkObj.type == "checkbox" && chkObj.name.substr(0,16) == "send_to_search[" + ch) {
+                chkObj.checked = !(chkObj.checked);
+            }
+        }
+    }
+
 // --></script>
 <?php
 } /* End of included JavaScript */
@@ -185,9 +151,11 @@ function getBackends () {
     $backends['-1'] = _("All address books");
     $ret = $abook->get_backend_list();
     while (list($undef,$v) = each($ret)) {
+        if ($v->btype == 'local' && !$v->listing) {
+            continue;
+        }
         $backends[$v->bnum] = $v->sname;
     }
     
     return $backends;
 }
-?>
\ No newline at end of file