X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Faddrbook_search_html.php;h=9cdf82a9117fa2def492f898742fdac89fe5b84c;hb=40fdd290db395b24d6a6ccc4be08d83c37816b55;hp=5ef9a06edb3a92e36402a190f2289e6190639f84;hpb=c1e15177efc56cd1eb885787df0f4bcac53ea7dc;p=squirrelmail.git diff --git a/src/addrbook_search_html.php b/src/addrbook_search_html.php index 5ef9a06e..9cdf82a9 100644 --- a/src/addrbook_search_html.php +++ b/src/addrbook_search_html.php @@ -2,84 +2,216 @@ /** ** addrbook_search.php ** - ** Handle addressbook searching with pure html. This file is included from compose.php + ** Copyright (c) 1999-2000 The SquirrelMail development team + ** Licensed under the GNU GPL. For full terms see the file COPYING. ** + ** 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! + ** + ** $Id$ **/ - session_start(); - - if (!isset($config_php)) - include("../config/config.php"); - if (!isset($strings_php)) - include("../functions/strings.php"); - if (!isset($page_header_php)) - include("../functions/page_header.php"); - if (!isset($imap_php)) - include("../functions/imap.php"); - if (!isset($date_php)) - include("../functions/date.php"); - if (!isset($mime_php)) - include("../functions/mime.php"); - if (!isset($smtp_php)) - include("../functions/smtp.php"); - if (!isset($display_messages_php)) - include("../functions/display_messages.php"); - if (!isset($addressbook_php)) - include("../functions/addressbook.php"); - - include("../src/load_prefs.php"); - - - echo "\n"; - displayPageHeader($color, "None"); - //
- - echo "
"; - echo ""; - echo " "; - echo " "; - echo ""; - echo "
"; - - if(!empty($query)) { - $abook = addressbook_init(); - $res = $abook->s_search($query); + include('../src/validate.php'); + include('../functions/date.php'); + include('../functions/smtp.php'); + include('../functions/display_messages.php'); + include('../functions/addressbook.php'); + include('../functions/plugin.php'); - if(!is_array($res)) { - printf("


%s:
%s

\n\n", - _("Your search failed with the following error(s)"), - $abook->error); - exit; + // Insert hidden data + function addr_insert_hidden() { + global $body, $subject, $send_to, $send_to_cc, $send_to_bcc, $mailbox, + $identity; + + echo '' . "\n"; + echo '' . "\n"; + echo '' . "\n"; + echo "' . "\n"; + echo "' . "\n"; + echo "' . "\n"; + echo "\n"; + echo "\n"; + } + + + // List search results + function addr_display_result($res, $includesource = true) { + global $color, $PHP_SELF; + + if(sizeof($res) <= 0) return; + + echo '
\n"; + echo ''; + echo "\n"; + addr_insert_hidden(); + $line = 0; + + print ""; + printf("\n"; + + foreach ($res as $row) { + echo ''; + echo ''; + echo ''; + if($includesource) + echo ''; + echo "\n"; + $line ++; } + printf('', + 4 + ($includesource ? 1 : 0), + _("Use Addresses")); + print '
 ". + " %s %s". + " %s", + _("Name"), _("E-mail"), _("Info")); + + if($includesource) + printf(" %s", _("Source")); + + print "
'; + echo ' To '; + echo ' Cc '; + echo ' Bcc '; + echo ' ' . $row['name'] . '  ' . $row['email'] . '  ' . $row['label'] . '  ' . $row['source'] . ' 
'; + print ''; + print '
'; + } - if(sizeof($res) == 0) { - printf("


%s.

\n\n", - _("No persons matching your search was found")); - exit; + // --- End functions --- + + global $mailbox; + displayPageHeader($color, $mailbox); + + // Initialize addressbook + $abook = addressbook_init(); + +?> + +
+ +
+
+
+ +\n"; + print "\n"; + print "
\n"; + printf('
'."\n", $PHP_SELF); + print "
\n"; + printf(" %s\n", _("Search for")); + addr_insert_hidden(); + if (! isset($addrquery)) + $addrquery = ''; + printf(" \n", + htmlspecialchars($addrquery)); + + // List all backends to allow the user to choose where to search + if(!isset($backend)) $backend = ""; + if($abook->numbackends > 1) { + printf("%s \n"; + } else { + print "\n"; + } + printf("", + _("Search")); + printf(" | \n", + _("List all")); + print '
'; + + print "
\n"; + addr_insert_hidden(); + print ""; + do_hook('addrbook_html_search_below'); + // End search form + + // Show personal addressbook + if($addrquery == '' || !empty($listall)) { + + if(! isset($backend) || $backend != -1 || $addrquery == '') { + if($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); } + exit; - // List search results - $line = 0; - print ""; - printf("\n", - _("Name"), _("E-mail"), _("Info"), _("Source")); - - while(list($key, $row) = each($res)) { - printf("\n", - ($line % 2) ? " bgcolor=\"$color[0]\"" : "", $row["email"], - $row["email"], $row["name"], $row["email"], $row["email"], - $row["label"], $row["source"]); - $line++; + } 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); + } else if(sizeof($res) == 0) { + printf("


%s.

\n\n", + _("No persons matching your search was found")); + } else { + addr_display_result($res); } - print "
 ". - " %s %s". - " %s". - " %s
". - "To | ". - "Cc". - " %s  ". - "%s ". - " %s  %s
"; } + if ($addrquery == '' || sizeof($res) == 0) { + printf('
'."\n", $PHP_SELF); + addr_insert_hidden(); + printf("\n", _("Return")); + print '
'; + print '
'; + } + ?> +