]> code.citadel.org Git - citadel.git/blobdiff - webcit/who.c
* fix Nullpointer Access in msgescputs
[citadel.git] / webcit / who.c
index 47f152aa77320df5a99d8d150aeb80e7dc532272..0cffbebde0dbebe3c87ff1cb70d68167c86c69c7 100644 (file)
@@ -167,7 +167,7 @@ void who_inner_div(void) {
 
                        /* (link to page this user) */
                        wprintf("<td width=\"5%%\"><a href=\"display_page?recp=");
-                       urlescputs(ChrPtr(User->UserName));
+                       UrlescPutStrBuf(User->UserName);
                        wprintf("\">"
                                "<img align=\"middle\" "
                                "src=\"static/citadelchat_24x.gif\" "
@@ -198,28 +198,28 @@ void who_inner_div(void) {
 
                        /* username (link to user bio/photo page) */
                        wprintf("<a href=\"showuser?who=");
-                       urlescputs(ChrPtr(User->UserName));
+                       UrlescPutStrBuf(User->UserName);
                        wprintf("\">");
-                       escputs(ChrPtr(User->UserName));
+                       StrEscPuts(User->UserName);
                        if (User->SessionCount > 1)
                                wprintf(" [%d] ", User->SessionCount);
                        wprintf("</a>");
 
                        /* room */
                        wprintf("</td>\n\t<td>");
-                       escputs(ChrPtr(User->Room));
+                       StrEscPuts(User->Room);
                        if (StrLength(User->RealRoom) > 0) {
                                wprintf("<br /><i>");
-                               escputs(User->RealRoom);
+                               StrEscPuts(User->RealRoom);
                                wprintf("</i>");
                        }
                        wprintf("</td>\n\t<td class=\"host_col\">");
 
                        /* hostname */
-                       escputs(ChrPtr(User->Host));
+                       StrEscPuts(User->Host);
                        if (StrLength(User->RealHost) > 0) {
                                wprintf("<br /><i>");
-                               escputs(User->RealHost);
+                               StrEscPuts(User->RealHost);
                                wprintf("</i>");
                        }
                        wprintf("</td>\n</tr>");
@@ -426,9 +426,9 @@ void wholist_section(void) {
                                        wprintf("activeuser");
                                }
                                wprintf("\"><a href=\"showuser?who=");
-                               urlescputs(ChrPtr(User->UserName));
+                               UrlescPutStrBuf(User->UserName);
                                wprintf("\">");
-                               escputs(ChrPtr(User->UserName));
+                               StrEscPuts(User->UserName);
                                wprintf("</a></li>");
                        }
                }
@@ -471,11 +471,12 @@ void WholistSubst(StrBuf *TemplBuffer, void *vContext)
        SVPutBuf("WHO:HOST", User->Host, 1);
        SVPutBuf("WHO:REALROOM", User->RealRoom, 1);
        SVPutBuf("WHO:REALHOST", User->RealHost, 1);
-       svprintf(HKEY("WHO:LASTACTIVE"), WCS_STRING, "%ld", User->LastActive);
-       svprintf(HKEY("WHO:SESSION"), WCS_STRING, "%d", User->Session);
-       svprintf(HKEY("WHO:IDLE"), WCS_STRING, "%s", (User->Idle)? "Idle":"Active");
-       svprintf(HKEY("WHO:NSESSIONS"), WCS_STRING, "%d", User->SessionCount);
-       
+       svputlong("WHO:LASTACTIVE", User->LastActive);
+       ///svputlong("WHO:IDLESINCE",(now - User->LastActive) / 60);//// todo
+       svputlong("WHO:SESSION", User->Session);
+       svputlong("WHO:IDLE", User->Idle);
+       svputlong("WHO:NSESSIONS", User->SessionCount);
+       svputlong("WHO:ISME", (User->Session == WC->ctdl_pid));
 }
 
 void DeleteWholistHash(HashList *KillMe)