]> code.citadel.org Git - citadel.git/blobdiff - webcit/pushemail.c
* Fix user push email config
[citadel.git] / webcit / pushemail.c
index 60cb62f6ef44a6af50e25b61276cd6a2f605bac0..5c55ddc390224c2ae53f7cf32b01acd04f28ab5e 100644 (file)
@@ -11,8 +11,6 @@ void display_pushemail(void) {
        int is_funambol = 0;
        char mobnum[20];
 
-       svput("BOXTITLE", WCS_STRING, _("Push email and SMS settings"));
-       
        /* Find any existing settings*/
        if (goto_config_room() == 0) {
                int msgnum = 0;
@@ -27,13 +25,13 @@ void display_pushemail(void) {
                        
                }
                if (msgnum > 0L) {
-               serv_printf("MSG0 %ld", msgnum);
+               serv_printf("MSG0 %d", msgnum);
                serv_getln(buf, sizeof buf);
                if (buf[0] == '1') {
+                       int i =0;
                        while (serv_getln(buf, sizeof buf),
                                (strcmp(buf, "text") && strcmp(buf, "000"))) {
                        }
-                       int i =0;
                        if (!strcmp(buf, "text")) {
                                while (serv_getln(buf, sizeof buf), strcmp(buf, "000")) { 
                                        if (strncasecmp(buf, "none", 4) == 0) {
@@ -51,6 +49,11 @@ void display_pushemail(void) {
                        }
                }
                }
+               // TODO: do in a saner fashion. 
+               svput("PUSH_NONE", WCS_STRING, " "); // defaults
+               svput("PUSH_TEXT", WCS_STRING, " ");
+               svput("PUSH_FNBL", WCS_STRING, " ");
+               svput("SMSNUM", WCS_STRING, " ");
        if (is_none) {
                svput("PUSH_NONE", WCS_STRING, "checked=\"checked\"");
        } else if (is_pager) {
@@ -59,13 +62,13 @@ void display_pushemail(void) {
        } else if (is_funambol) {
                svput("PUSH_FNBL", WCS_STRING, "checked=\"checked\"");
        }
-       serv_printf("GOTO %s", WC->wc_roomname);
+       serv_printf("GOTO %s", ChrPtr(WC->wc_roomname));
        serv_getln(buf, sizeof  buf);
        }
-output_headers(1, 1, 2, 0, 0, 0);
-do_template("pushemail");
-//do_template("endbox");
-wDumpContent(1);
+       output_headers(1, 1, 2, 0, 0, 0);
+       do_template("pushemail", NULL);
+/*do_template("endbox"); */
+       wDumpContent(1);
 }
 
 void save_pushemail(void) {
@@ -91,7 +94,7 @@ void save_pushemail(void) {
        }
 
        if (msgnum > 0L) {
-               serv_printf("DELE %ld", msgnum);
+               serv_printf("DELE %d", msgnum);
                serv_getln(buf, sizeof buf);
        }
 
@@ -107,7 +110,15 @@ void save_pushemail(void) {
        }
 
        /** Go back to the room we're supposed to be in */
-       serv_printf("GOTO %s", WC->wc_roomname);
+       serv_printf("GOTO %s", ChrPtr(WC->wc_roomname));
        serv_getln(buf, sizeof buf);
        http_redirect("display_pushemail");
 }
+
+void 
+InitModule_PUSHMAIL
+(void)
+{
+       WebcitAddUrlHandler(HKEY("display_pushemail"), display_pushemail, 0);
+       WebcitAddUrlHandler(HKEY("save_pushemail"), save_pushemail, 0);
+}