march_list functionality is complete!
authorArt Cancro <ajc@citadel.org>
Fri, 26 Apr 2019 18:42:55 +0000 (14:42 -0400)
committerArt Cancro <ajc@citadel.org>
Fri, 26 Apr 2019 18:42:55 +0000 (14:42 -0400)
webcit-ng/room_functions.c
webcit-ng/static/js/main.js

index 4f8b231e28d662fed396bd3ff9261d85ad9d80da..77e1c76c305cc00faaa7c48683642d8a7b9b0540 100644 (file)
@@ -502,8 +502,8 @@ void room_list(struct http_transaction *h, struct ctdlsession *c)
                JsonObjectAppend(jr, NewJsonPlainString(HKEY("name"), roomname, -1));
 
                int ra = extract_int(buf, 5);
                JsonObjectAppend(jr, NewJsonPlainString(HKEY("name"), roomname, -1));
 
                int ra = extract_int(buf, 5);
-               JsonObjectAppend(jr, NewJsonBool(HKEY("known"), (ra && UA_KNOWN)));
-               JsonObjectAppend(jr, NewJsonBool(HKEY("hasnewmsgs"), (ra && UA_HASNEWMSGS)));
+               JsonObjectAppend(jr, NewJsonBool(HKEY("known"), (ra & UA_KNOWN)));
+               JsonObjectAppend(jr, NewJsonBool(HKEY("hasnewmsgs"), (ra & UA_HASNEWMSGS)));
 
                int floor = extract_int(buf, 2);
                JsonObjectAppend(jr, NewJsonNumber(HKEY("floor"), floor));
 
                int floor = extract_int(buf, 2);
                JsonObjectAppend(jr, NewJsonNumber(HKEY("floor"), floor));
index 7226f334aad138163ec35b352481a52984efe706..cea3df2bde11240d943bb6378e203619aea66025 100644 (file)
@@ -1,5 +1,5 @@
 //
 //
-// Copyright (c) 2016-2018 by the citadel.org team
+// Copyright (c) 2016-2019 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 version 3.
 //
 // This program is open source software; you can redistribute it and/or modify
 // it under the terms of the GNU General Public License version 3.
@@ -209,14 +209,13 @@ function gotoroom_2(data) {
 // Goto next room with unread messages
 //
 function gotonext() {
 // Goto next room with unread messages
 //
 function gotonext() {
-       console.log("march list contains " + march_list.length );
        if (march_list.length == 0) {
        if (march_list.length == 0) {
-               load_new_march_list();          // we will recurse back here. make sure length isn't still 0 if no new rooms
+               load_new_march_list();          // we will recurse back here
        }
        else {
                next_room = march_list[0].name;
                march_list.splice(0, 1);
        }
        else {
                next_room = march_list[0].name;
                march_list.splice(0, 1);
-               console.log("going to " + next_room);
+               console.log("going to " + next_room + " , " + march_list.length + " rooms remaining in march list");
                gotoroom(next_room);
        }
 }
                gotoroom(next_room);
        }
 }
@@ -231,7 +230,7 @@ function load_new_march_list() {
                if ((this.readyState === 4) && ((this.status / 100) == 2)) {
                        march_list = (JSON.parse(this.responseText));
                        march_list = march_list.filter(function(room) {
                if ((this.readyState === 4) && ((this.status / 100) == 2)) {
                        march_list = (JSON.parse(this.responseText));
                        march_list = march_list.filter(function(room) {
-                               return room.hasnewmsgs == true;
+                               return room.hasnewmsgs;
                        });
                        march_list = march_list.sort(function(a,b) {
                                if (a.floor != b.floor) {
                        });
                        march_list = march_list.sort(function(a,b) {
                                if (a.floor != b.floor) {
@@ -242,6 +241,7 @@ function load_new_march_list() {
                                }
                                return(a.name < b.name);
                        });
                                }
                                return(a.name < b.name);
                        });
+                       march_list.push({name:"_BASEROOM_",known:true,hasnewmsgs:true,floor:0});
                        gotonext();
                }
        };
                        gotonext();
                }
        };