--- libs/sqwebmail/folder.c.orig 2025-05-12 00:23:26 UTC +++ libs/sqwebmail/folder.c @@ -251,6 +251,18 @@ static int groupmove(const char *folder, const char *f return (maildir_msgmovefile(folder, file, cgi("moveto"), pos)); } +static int groupmark(const char *folder, const char *file, size_t pos) +{ + maildir_msgmarkfile(folder, file, pos); + return (0); +} + +static int groupunmark(const char *folder, const char *file, size_t pos) +{ + maildir_msgunmarkfile(folder, file, pos); + return (0); +} + static const char *do_folder_delmsgs(const char *dir, size_t pos) { int rc=0; @@ -320,6 +332,16 @@ static const char *do_folder_delmsgs(const char *dir, rc=group_movedel( dir, &groupmove ); maildir_savefoldermsgs(dir); } + else if (*cgi("cmdmark")) + { + rc=group_movedel( dir, &groupmark ); + maildir_savefoldermsgs(dir); + } + else if (*cgi("cmdunmark")) + { + rc=group_movedel( dir, &groupunmark ); + maildir_savefoldermsgs(dir); + } maildir_cleanup(); @@ -505,7 +527,7 @@ unsigned long *last_message_searched_ptr=NULL; folder_navigate(dir, pos, highend, morebefore, moreafter, last_message_searched_ptr); - printf("\n", + printf("
%s %s%s%s%s
\n", getarg("NUM"), getarg("DATE"), (strncmp(dir, INBOX "." SENT, sizeof(INBOX)+sizeof(SENT)-1) && @@ -526,9 +548,9 @@ unsigned long *last_message_searched_ptr=NULL; if (found) { - puts(""); - puts(""); - puts(""); + puts(""); + puts("
%s   %s%s%s%s

 "); + puts("

 "); puts("