+
/*
* Displays the "Summary Page"
*
- * Copyright (c) 1996-2011 by the citadel.org team
+ * Copyright (c) 1996-2021 by the citadel.org team
*
* This program is open source software. You can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 3 of the
- * License, or (at your option) any later version.
+ * modify it under the terms of the GNU General Public License, version 3.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "webcit.h"
wc_printf("%s", buf);
}
-void tmplput_output_date(StrBuf *Target, WCTemplputParams *TP)
-{
+void tmplput_output_date(StrBuf * Target, WCTemplputParams * TP) {
struct tm tm;
time_t now;
char buf[128];
number_of_rooms_to_check = num_tokens(rooms_to_check, '|');
- if (number_of_rooms_to_check == 0) return;
+ if (number_of_rooms_to_check == 0)
+ return;
wc_printf("<table border=\"0\" width=\"100%%\">\n");
- for (i=0; i<number_of_rooms_to_check; ++i) {
+ for (i = 0; i < number_of_rooms_to_check; ++i) {
extract_token(room, rooms_to_check, i, '|', sizeof room);
serv_printf("GOTO %s", room);
urlescputs(room);
wc_printf("\">");
escputs(room);
- wc_printf("</a></td><td>%d/%d</td></tr>\n",
- extract_int(&buf[4], 1),
- extract_int(&buf[4], 2)
- );
+ wc_printf("</a></td><td>%d/%d</td></tr>\n", extract_int(&buf[4], 1), extract_int(&buf[4], 2)
+ );
}
}
wc_printf("</table>\n");
long HKLen;
void *vMsg;
message_summary *Msg;
- wcsession *WCC = WC;
StrBuf *Buf;
SharedMessageStatus Stat;
gotoroom(Buf);
FreeStrBuf(&Buf);
- if (WCC->CurRoom.view != VIEW_TASKS) {
+ if (WC->CurRoom.view != VIEW_TASKS) {
num_msgs = 0;
}
else {
- num_msgs = load_msg_ptrs("MSGS ALL", &Stat, NULL);
+ num_msgs = load_msg_ptrs("MSGS ALL", NULL, NULL, &Stat, NULL, NULL, NULL, NULL, 0);
}
if (num_msgs > 0) {
- at = GetNewHashPos(WCC->summ, 0);
- while (GetNextHashPos(WCC->summ, at, &HKLen, &HashKey, &vMsg)) {
- Msg = (message_summary*) vMsg;
+ at = GetNewHashPos(WC->summ, 0);
+ while (GetNextHashPos(WC->summ, at, &HKLen, &HashKey, &vMsg)) {
+ Msg = (message_summary *) vMsg;
tasks_LoadMsgFromServer(NULL, NULL, Msg, 0, 0);
}
DeleteHashPos(&at);
*/
void calendar_section(void) {
char cmd[SIZ];
+ char filter[SIZ];
int num_msgs = 0;
HashPos *at;
const char *HashKey;
long HKLen;
void *vMsg;
message_summary *Msg;
- wcsession *WCC = WC;
StrBuf *Buf;
void *v = NULL;
SharedMessageStatus Stat;
Stat.maxload = 10000;
Stat.lowest_found = (-1);
Stat.highest_found = (-1);
-
+
Buf = NewStrBufPlain(HKEY("_CALENDAR_"));
gotoroom(Buf);
FreeStrBuf(&Buf);
- if ( (WC->CurRoom.view != VIEW_CALENDAR) && (WC->CurRoom.view != VIEW_CALBRIEF) ) {
+ if ((WC->CurRoom.view != VIEW_CALENDAR) && (WC->CurRoom.view != VIEW_CALBRIEF)) {
num_msgs = 0;
}
else {
- num_msgs = load_msg_ptrs("MSGS ALL", &Stat, NULL);
+ num_msgs = load_msg_ptrs("MSGS ALL", NULL, NULL, &Stat, NULL, NULL, NULL, NULL, 0);
}
- calendar_GetParamsGetServerCall(&Stat,
- &v,
- readnew,
- cmd,
- sizeof(cmd));
+ calendar_GetParamsGetServerCall(&Stat, &v, readnew, cmd, sizeof(cmd), filter, sizeof(filter));
+
if (num_msgs > 0) {
- at = GetNewHashPos(WCC->summ, 0);
- while (GetNextHashPos(WCC->summ, at, &HKLen, &HashKey, &vMsg)) {
- Msg = (message_summary*) vMsg;
+ at = GetNewHashPos(WC->summ, 0);
+ while (GetNextHashPos(WC->summ, at, &HKLen, &HashKey, &vMsg)) {
+ Msg = (message_summary *) vMsg;
calendar_LoadMsgFromServer(NULL, &v, Msg, 0, 0);
}
DeleteHashPos(&at);
__calendar_Cleanup(&v);
}
-void tmplput_new_messages_section(StrBuf *Target, WCTemplputParams *TP) {
+void tmplput_new_messages_section(StrBuf * Target, WCTemplputParams * TP) {
new_messages_section();
}
-void tmplput_tasks_section(StrBuf *Target, WCTemplputParams *TP) {
+void tmplput_tasks_section(StrBuf * Target, WCTemplputParams * TP) {
tasks_section();
}
-void tmplput_calendar_section(StrBuf *Target, WCTemplputParams *TP) {
+void tmplput_calendar_section(StrBuf * Target, WCTemplputParams * TP) {
calendar_section();
}
-void
-InitModule_SUMMARY
-(void)
-{
- RegisterNamespace("TIME:NOW", 0, 0, tmplput_output_date, NULL, CTX_NONE);
- RegisterNamespace("SUMMARY:NEWMESSAGES_SELECTION", 0, 0, tmplput_new_messages_section, NULL, CTX_NONE);
- RegisterNamespace("SUMMARY:TASKSSECTION", 0, 0, tmplput_tasks_section, NULL, CTX_NONE);
- RegisterNamespace("SUMMARY:CALENDAR_SECTION", 0, 0, tmplput_calendar_section, NULL, CTX_NONE);
+/*
+ * summary page
+ */
+void display_summary_page(void) {
+ output_headers(1, 1, 1, 0, 0, 0);
+ do_template("summary_page");
+ wDumpContent(1);
+}
+
+
+void InitModule_SUMMARY(void) {
+ RegisterNamespace("TIME:NOW", 0, 0, tmplput_output_date, NULL, CTX_NONE);
+ WebcitAddUrlHandler(HKEY("summary"), "", 0, display_summary_page, ANONYMOUS);
WebcitAddUrlHandler(HKEY("new_messages_html"), "", 0, new_messages_section, AJAX);
WebcitAddUrlHandler(HKEY("tasks_inner_html"), "", 0, tasks_section, AJAX);
WebcitAddUrlHandler(HKEY("calendar_inner_html"), "", 0, calendar_section, AJAX);
-
}
-