]> code.citadel.org Git - citadel.git/blobdiff - webcit/addressbook_popup.c
In addition to all available address book rooms, the address
[citadel.git] / webcit / addressbook_popup.c
index 6d479b3f0e9f03ed669ee8cdb089da85bc07672a..41753f33e1eba6e70185c850f3a9642a74524cd1 100644 (file)
@@ -22,7 +22,16 @@ void display_address_book_middle_div(void) {
        wprintf("<td align=left><img src=\"static/viewcontacts_32x.gif\"></td>");
        wprintf("<td align=center>");
 
-       wprintf("<form><select class=\"address_book_popup_title\" size=1>");
+       wprintf("<form>"
+               "<select class=\"address_book_popup_title\" size=1 id=\"which_addr_book\" "
+               " onChange=\"PopulateAddressBookInnerDiv($('which_addr_book').value,'%s')\">",
+               bstr("target_input")
+       );
+
+       wprintf("<option value=\"__LOCAL_USERS__\">");
+       escputs(serv_info.serv_humannode);
+       wprintf("</option>\n");
+
        serv_puts("LKRA");
        serv_getln(buf, sizeof buf);
        if (buf[0] == '1') while(serv_getln(buf, sizeof buf), strcmp(buf, "000")) {
@@ -43,6 +52,12 @@ void display_address_book_middle_div(void) {
                "><img src=\"static/closewindow.gif\">");
        wprintf("</td></tr></table>");
 
+       wprintf("<script type=\"text/javascript\">"
+               "PopulateAddressBookInnerDiv($('which_addr_book').value,'%s');"
+               "</script>\n",
+               bstr("target_input")
+       );
+
        end_ajax_response();
 }
 
@@ -51,19 +66,56 @@ void display_address_book_middle_div(void) {
 /**
  * \brief Address book popup results
  */
-void display_address_book_inner_div(void) {
-       int i;
+void display_address_book_inner_div() {
+       char buf[256];
+       char username[256];
 
        begin_ajax_response();
 
-       wprintf("<div align=center><form>"
-               "<select name=\"whichaddr\" size=\"15\">\n");
+       wprintf("<div align=center><form onSubmit=\"return false;\">"
+               "<select name=\"whichaddr\" id=\"whichaddr\" size=\"15\">\n");
+
+       if (!strcasecmp(bstr("which_addr_book"), "__LOCAL_USERS__")) {
+               serv_puts("LIST");
+               serv_getln(buf, sizeof buf);
+               if (buf[0] == '1') while(serv_getln(buf, sizeof buf), strcmp(buf, "000")) {
+                       extract_token(username, buf, 0, '|', sizeof username);
+                       wprintf("<option value=\"");
+                       escputs(username);
+                       wprintf("\">");
+                       escputs(username);
+                       wprintf("</option>\n");
+               }
+       }
 
-       for (i=0; i<100; ++i) {
-               wprintf("<option>Contact %d &lt;contact%d@example.com&gt;</option>\n", i, i);
+       else {
+               serv_printf("GOTO %s", bstr("which_addr_book"));
+               serv_getln(buf, sizeof buf);
+               serv_puts("DVCA");
+               serv_getln(buf, sizeof buf);
+               if (buf[0] == '1') while(serv_getln(buf, sizeof buf), strcmp(buf, "000")) {
+                       wprintf("<option value=\"");
+                       escputs(buf);
+                       wprintf("\">");
+                       escputs(buf);
+                       wprintf("</option>\n");
+               }
        }
 
-       wprintf("</select></form></div>\n");
+       wprintf("</select>\n");
+
+       wprintf("<INPUT TYPE=\"submit\" NAME=\"select_button\" VALUE=\"%s\" ", _("Select"));
+       wprintf("onClick=\"if ($('%s').value.length > 0) { $('%s').value = $('%s').value + ', '; } $('%s').value=$('%s').value + $('whichaddr').value;\">",
+               bstr("target_input"),
+               bstr("target_input"),
+               bstr("target_input"),
+               bstr("target_input"),
+               bstr("target_input")
+       );
+       wprintf("<INPUT TYPE=\"submit\" NAME=\"close_button\" VALUE=\"%s\" ", _("Close window"));
+       wprintf("onclick=\"javascript:$('address_book_popup').style.display='none';\">");
+
+       wprintf("</form></div>\n");
 
        end_ajax_response();
 }