]> code.citadel.org Git - citadel.git/blobdiff - citadel/user_ops.c
* Every user gets a Trash folder. Clients can also use _TRASH_
[citadel.git] / citadel / user_ops.c
index 9f9588238fa82c0003e09b55e427cde86196ab20..1fb0936e629a818857b1cfc6cfdd58a5e9a0c7eb 100644 (file)
@@ -489,6 +489,7 @@ void session_startup(void)
         */
        create_room(MAILROOM, 4, "", 0, 1, 0, VIEW_MAILBOX);
        create_room(SENTITEMS, 4, "", 0, 1, 0, VIEW_MAILBOX);
+       create_room(USERTRASHROOM, 4, "", 0, 1, 0, VIEW_MAILBOX);
 
        /* Run any startup routines registered by loadable modules */
        PerformSessionHooks(EVT_LOGIN);
@@ -756,11 +757,23 @@ int purge_user(char pname[])
        cdb_delete(CDB_USERS, usernamekey, strlen(usernamekey));
 
        /* remove the user's bio file */
-       snprintf(filename, sizeof filename, "./bio/%ld", usbuf.usernum);
+       snprintf(filename, sizeof filename, 
+#ifndef HAVE_DATA_DIR
+                        "."
+#else
+                        DATA_DIR
+#endif
+                        "/bio/%ld", usbuf.usernum);
        unlink(filename);
 
        /* remove the user's picture */
-       snprintf(filename, sizeof filename, "./userpics/%ld.gif", usbuf.usernum);
+       snprintf(filename, sizeof filename, 
+#ifndef HAVE_DATA_DIR
+                        "."
+#else
+                        DATA_DIR
+#endif
+                        "/userpics/%ld.gif", usbuf.usernum);
        unlink(filename);
 
        return (0);
@@ -1099,7 +1112,8 @@ void cmd_seen(char *argbuf) {
        target_msgnum = extract_long(argbuf, 0);
        target_setting = extract_int(argbuf, 1);
 
-       CtdlSetSeen(target_msgnum, target_setting, ctdlsetseen_seen, NULL, NULL);
+       CtdlSetSeen(&target_msgnum, 1, target_setting,
+                       ctdlsetseen_seen, NULL, NULL);
        cprintf("%d OK\n", CIT_OK);
 }
 
@@ -1358,7 +1372,7 @@ void ListThisUser(struct ctdluser *usbuf, void *data)
        char *searchstring;
 
        searchstring = (char *)data;
-       if (bmstrstr(usbuf->fullname, searchstring, strncasecmp) == NULL) {
+       if (bmstrcasestr(usbuf->fullname, searchstring) == NULL) {
                return;
        }