of trying to move it to the Trash. Requires Citadel server 6.63.
$Id$
+Fri Dec 9 14:40:21 EST 2005 ajc
+* Deleting a message from the Trash folder now actually deletes it instead
+ of trying to move it to the Trash. Requires Citadel server 6.63.
+
Fri Dec 9 13:45:31 EST 2005 ajc
* Slightly more intelligent language detection.
-
-
-
-
void delete_msg(void)
{
long msgid;
output_headers(1, 1, 1, 0, 0, 0);
- serv_printf("MOVE %ld|_TRASH_|0", msgid);
+ if (WC->wc_is_trash) { /* Delete from Trash is a real delete */
+ serv_printf("DELE %ld", msgid);
+ }
+ else { /* Otherwise move it to Trash */
+ serv_printf("MOVE %ld|_TRASH_|0", msgid);
+ }
+
serv_getln(buf, sizeof buf);
wprintf("<EM>%s</EM><br />\n", &buf[4]);
got = fakegot;
}
+ /* The browser needs some information for its own use */
+ wprintf("<script type=\"text/javascript\"> \n"
+ " room_is_trash = %d; \n"
+ "</script>\n",
+ WC->wc_is_trash
+ );
+
/* If the user happens to select the "make this my start page" link,
* we want it to remember the URL as a "/dotskip" one instead of
* a "skip" or "gotonext" or something like that.
WC->wc_floor = extract_int(&buf[4], 10);
WC->wc_view = extract_int(&buf[4], 11);
WC->wc_default_view = extract_int(&buf[4], 12);
+ WC->wc_is_trash = extract_int(&buf[4], 13);
if (WC->is_aide)
WC->is_room_aide = WC->is_aide;
var browserType;
+var room_is_trash = 0;
if (document.layers) {browserType = "nn4"}
if (document.all) {browserType = "ie"}
return false;
}
for (i=0; i<CtdlNumMsgsSelected; ++i) {
- new Ajax.Request(
- 'ajax_servcmd', {
- method: 'post',
- parameters: 'g_cmd=MOVE ' + CtdlMsgsSelected[i] + '|_TRASH_|0',
- onComplete: CtdlClearDeletedMsg(CtdlMsgsSelected[i])
- }
- );
+ if (parseInt(room_is_trash) > 0) {
+ new Ajax.Request(
+ 'ajax_servcmd', {
+ method: 'post',
+ parameters: 'g_cmd=DELE ' + CtdlMsgsSelected[i],
+ onComplete: CtdlClearDeletedMsg(CtdlMsgsSelected[i])
+ }
+ );
+ }
+ else {
+ new Ajax.Request(
+ 'ajax_servcmd', {
+ method: 'post',
+ parameters: 'g_cmd=MOVE ' + CtdlMsgsSelected[i] + '|_TRASH_|0',
+ onComplete: CtdlClearDeletedMsg(CtdlMsgsSelected[i])
+ }
+ );
+ }
}
CtdlNumMsgsSelected = 0;
#define DEVELOPER_ID 0
#define CLIENT_ID 4
#define CLIENT_VERSION 640 /* This version of WebCit */
-#define MINIMUM_CIT_VERSION 661 /* min required Citadel ver. */
+#define MINIMUM_CIT_VERSION 663 /* min required Citadel ver. */
#define DEFAULT_HOST "localhost" /* Default Citadel server */
#define DEFAULT_PORT "504"
#define LB (1) /* Internal escape chars */
unsigned room_flags;
int wc_view;
int wc_default_view;
+ int wc_is_trash;
int wc_floor;
char ugname[128];
long uglsn;