From 14f1b90bf8f45e3cf391945f42e85c19556b77c7 Mon Sep 17 00:00:00 2001 From: pallo Date: Wed, 28 Jun 2000 12:57:37 +0000 Subject: [PATCH] Ported new functions in javascript addressbook to the pure HTML version. git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@565 7612ce4b-ef26-0410-bec9-ea0150e637f0 --- src/addrbook_search_html.php | 225 +++++++++++++++++++++++++---------- 1 file changed, 159 insertions(+), 66 deletions(-) diff --git a/src/addrbook_search_html.php b/src/addrbook_search_html.php index f4654b52..11bc94e1 100644 --- a/src/addrbook_search_html.php +++ b/src/addrbook_search_html.php @@ -2,8 +2,13 @@ /** ** addrbook_search.php ** - ** Handle addressbook searching with pure html. This file is included from compose.php + ** Handle addressbook searching with pure html. + ** This file is included from compose.php ** + ** NOTE: A lot of this code is similar to the code in + ** addrbook_search.html -- If you change one, change + ** the other one too! + ** **/ session_start(); @@ -30,8 +35,75 @@ include("../src/load_prefs.php"); + // Insert hidden data + function addr_insert_hidden() { + global $body, $subject, $send_to, $send_to_cc, $send_to_bcc; + printf("\n", + htmlspecialchars($body)); + printf("\n", + htmlspecialchars($subject)); + printf("\n", + htmlspecialchars($send_to)); + printf("\n", + htmlspecialchars($send_to_cc)); + printf("\n", + htmlspecialchars($send_to_bcc)); + } + + + // List search results + function addr_display_result($res, $includesource = true) { + global $color, $PHP_SELF; + + if(sizeof($res) <= 0) return; + + printf('
'."\n", + $PHP_SELF); + addr_insert_hidden(); + $line = 0; + + print ""; + printf("\n"; + + while(list($key, $row) = each($res)) { + printf("\n"; + $line++; + } + printf('', + 4 + ($includesource ? 1 : 0), + _("Use Addresses")); + print "
 ". + " %s %s". + " %s", + _("Name"), _("E-mail"), _("Info")); + + if($includesource) + printf(" %s", _("Source")); + + print "
". + " To". + " Cc ". + " %s  ". + "%s". + " %s ", + ($line % 2) ? " bgcolor=\"$color[0]\"" : "", + htmlspecialchars($row["email"]), htmlspecialchars($row["email"]), + $row["name"], $row["email"], $row["label"]); + if($includesource) + printf(" %s", $row["source"]); + + print "
"; + print ''; + print "
"; + } + + // --- End functions --- + displayPageHeader($color, "None"); - //
+ + // Initialize addressbook + $abook = addressbook_init(); $body = stripslashes($body); $send_to = stripslashes($send_to); @@ -39,77 +111,98 @@ $send_to_bcc = stripslashes($send_to_bcc); $subject = stripslashes($subject); - echo "\n"; - echo " \n"; - echo "
\n"; - echo _("Address Book Search"); - echo "
\n"; - - - echo "
"; - echo ""; - echo _("Enter your search criteria:") . "
"; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo ""; - echo "
"; - - if(!empty($query)) { - $abook = addressbook_init(); - $res = $abook->s_search($query); + + // Header + print "\n"; + printf('', + $color[0], _("Address Book Search")); + print "
%s
\n"; + + // Search form + print "
\n"; + printf('
'."\n", + $PHP_SELF); + print "\n"; + printf("
\n"); + printf(" %s\n", _("Search for")); + printf(" \n", + htmlspecialchars($addrquery)); + + // List all backends to allow the user to choose where to search + if($abook->numbackends > 1) { + printf("%s \n"); + } else { + printf("\n"); + } + printf("", + _("Search")); + printf(" | \n", + _("List all")); + printf("
\n"); + addr_insert_hidden(); + print "
"; + print "
"; + // End search form + + // Show personal addressbook + if(!isset($addrquery) || !empty($listall)) { + + if($backend != -1 || !isset($addrquery)) { + if(!isset($addrquery)) + $backend = $abook->localbackend; + + //printf("

%s

\n", $abook->backends[$backend]->sname); + + $res = $abook->list_addr($backend); + + if(is_array($res)) { + addr_display_result($res, false); + } else { + printf("

"._("Unable to list addresses from %s"). + "

\n", $abook->backends[$backend]->sname); + } + + } else { + $res = $abook->list_addr(); + addr_display_result($res, true); + } + + } else + + // Do the search + if(!empty($addrquery) && empty($listall)) { + + if($backend == -1) { + $res = $abook->s_search($addrquery); + } else { + $res = $abook->s_search($addrquery, $backend); + } if(!is_array($res)) { - printf("


%s:
%s

\n\n", - _("Your search failed with the following error(s)"), - $abook->error); - exit; + printf("


%s:
%s

\n\n", + _("Your search failed with the following error(s)"), + $abook->error); + exit; } if(sizeof($res) == 0) { - printf("


%s.

\n\n", - _("No persons matching your search was found")); - exit; + printf("


%s.

\n\n", + _("No persons matching your search was found")); + exit; } - // List search results - $line = 0; - print ""; - printf("\n", - _("Name"), _("E-mail"), _("Info"), _("Source")); - - ?> - - "; - echo " "; - echo " "; - echo " "; - echo " "; - - while(list($key, $row) = each($res)) { - printf("\n", - ($line % 2) ? " bgcolor=\"$color[0]\"" : "", $row["email"], - $row["email"], $row["name"], $row["email"], - $row["label"], $row["source"]); - $line++; - } - print "
 ". - " %s %s". - " %s". - " %s
". - " To". - " Cc ". - " %s  ". - "%s". - " %s  %s
"; - echo ""; - echo "
"; - echo ""; + addr_display_result($res); } ?> -- 2.25.1