]> code.citadel.org Git - citadel.git/blobdiff - webcit/useredit.c
* add new 'Context' Parameter to the template call
[citadel.git] / webcit / useredit.c
index e6625ace28365d2f9e22aee06526947c5adaf89f..f392d3997a420c5ec8f0a46f1ead58a7344575b2 100644 (file)
@@ -36,26 +36,26 @@ void select_user_to_edit(char *message, char *preselect)
 
        wprintf("<table border=0 cellspacing=10><tr valign=top><td>\n");
 
-       svprintf("BOXTITLE", WCS_STRING, _("Add users"));
-       do_template("beginbox");
+       svput("BOXTITLE", WCS_STRING, _("Add users"));
+       do_template("beginbox", NULL);
 
        wprintf(_("To create a new user account, enter the desired "
                "user name in the box below and click 'Create'."));
        wprintf("<br /><br />");
 
         wprintf("<center><form method=\"POST\" action=\"create_user\">\n");
-       wprintf("<input type=\"hidden\" name=\"nonce\" value=\"%ld\">\n", WC->nonce);
+       wprintf("<input type=\"hidden\" name=\"nonce\" value=\"%d\">\n", WC->nonce);
         wprintf(_("New user: "));
         wprintf("<input type=\"text\" name=\"username\"><br />\n"
                "<input type=\"submit\" name=\"create_button\" value=\"%s\">"
                "</form></center>\n", _("Create"));
 
-       do_template("endbox");
+       do_template("endbox", NULL);
 
        wprintf("</td><td>");
 
-       svprintf("BOXTITLE", WCS_STRING, _("Edit or Delete users"));
-       do_template("beginbox");
+       svput("BOXTITLE", WCS_STRING, _("Edit or Delete users"));
+       do_template("beginbox", NULL);
 
        wprintf(_("To edit an existing user account, select the user "
                "name from the list and click 'Edit'."));
@@ -63,7 +63,7 @@ void select_user_to_edit(char *message, char *preselect)
        
         wprintf("<center>"
                "<form method=\"POST\" action=\"display_edituser\">\n");
-       wprintf("<input type=\"hidden\" name=\"nonce\" value=\"%ld\">\n", WC->nonce);
+       wprintf("<input type=\"hidden\" name=\"nonce\" value=\"%d\">\n", WC->nonce);
         wprintf("<select name=\"username\" size=10 style=\"width:100%%\">\n");
         serv_puts("LIST");
         serv_getln(buf, sizeof buf);
@@ -86,7 +86,7 @@ void select_user_to_edit(char *message, char *preselect)
         wprintf("<input type=\"submit\" name=\"delete_button\" value=\"%s\" "
                "onClick=\"return confirm('%s');\">", _("Delete user"), _("Delete this user?"));
         wprintf("</form></center>\n");
-       do_template("endbox");
+       do_template("endbox", NULL);
 
        wprintf("</td></tr></table>\n");
 
@@ -267,12 +267,12 @@ void display_edituser(char *supplied_username, int is_new) {
        lastcall = extract_long(&buf[4], 7);
        purgedays = extract_long(&buf[4], 8);
 
-       if (!IsEmptyStr(bstr("edit_abe_button"))) {
+       if (havebstr("edit_abe_button")) {
                display_edit_address_book_entry(username, usernum);
                return;
        }
 
-       if (!IsEmptyStr(bstr("delete_button"))) {
+       if (havebstr("delete_button")) {
                delete_user(username);
                return;
        }
@@ -296,7 +296,7 @@ void display_edituser(char *supplied_username, int is_new) {
        wprintf("<input type=\"hidden\" name=\"is_new\" value=\"%d\">\n"
                "<input type=\"hidden\" name=\"usernum\" value=\"%ld\">\n",
                is_new, usernum);
-       wprintf("<input type=\"hidden\" name=\"nonce\" value=\"%ld\">\n", WC->nonce);
+       wprintf("<input type=\"hidden\" name=\"nonce\" value=\"%d\">\n", WC->nonce);
 
        wprintf("<input type=\"hidden\" name=\"flags\" value=\"%d\">\n", flags);
 
@@ -407,24 +407,24 @@ void edituser(void) {
        unsigned int flags = 0;
        char *username;
 
-       is_new = atoi(bstr("is_new"));
+       is_new = ibstr("is_new");
        safestrncpy(message, "", sizeof message);
        username = bstr("username");
 
-       if (IsEmptyStr(bstr("ok_button"))) {
+       if (!havebstr("ok_button")) {
                safestrncpy(message, _("Changes were not saved."), sizeof message);
        }
        
        else {
-               flags = atoi(bstr("flags"));
-               if (!strcasecmp(bstr("inetmail"), "yes")) {
+               flags = ibstr("flags");
+               if (yesbstr("inetmail")) {
                        flags |= US_INTERNET;
                }
                else {
                        flags &= ~US_INTERNET ;
                }
 
-               if (bstr("newname") != NULL) if (strcasecmp(bstr("username"), bstr("newname"))) {
+               if ((havebstr("newname")) && (strcasecmp(bstr("username"), bstr("newname")))) {
                        serv_printf("RENU %s|%s", bstr("username"), bstr("newname"));
                        serv_getln(buf, sizeof buf);
                        if (buf[0] != '2') {
@@ -461,7 +461,7 @@ void edituser(void) {
         * the vCard edit screen.
         */
        if (is_new) {
-               display_edit_address_book_entry(username, atol(bstr("usernum")) );
+               display_edit_address_book_entry(username, lbstr("usernum") );
        }
        else {
                select_user_to_edit(message, username);
@@ -529,5 +529,16 @@ void create_user(void) {
 }
 
 
+void _select_user_to_edit(void){select_user_to_edit(NULL, NULL);}
+void _display_edituser(void) {display_edituser(NULL, 0);}
 
+void 
+InitModule_USEREDIT
+(void)
+{
+       WebcitAddUrlHandler(HKEY("select_user_to_edit"), _select_user_to_edit, 0);
+       WebcitAddUrlHandler(HKEY("display_edituser"), _display_edituser, 0);
+       WebcitAddUrlHandler(HKEY("edituser"), edituser, 0);
+       WebcitAddUrlHandler(HKEY("create_user"), create_user, 0);
+}
 /*@}*/