rabbit user mode added, room refresh after isolation mode leaved refactored
[brisk.git] / web / room.js
index e8b19ea..46f8612 100644 (file)
    
 */
 
+var l_list_all = 0x00;
+var l_list_auth = 0x01;
+var l_list_isol = 0x02;
+
 function state_add(flags)
 {
     var content = "";
@@ -65,6 +69,10 @@ function state_add(flags)
             name = "st_eye.png";
             tit = (g_lang == 'en' ? "I'm here!" : "sono presente!");
             break;
+        case 0x800:
+            name = "st_rabbit.png";
+            tit = (g_lang == 'en' ? "Rabbit time" : "sono a spasso col coniglio");
+            break;
         default:
             break;
         }
@@ -222,13 +230,28 @@ function j_stand_tdcont(el)
     return (content);
 }
 
-function j_stand_cont(data)
+function j_stand_cont(ddata)
 {
-    var i;
+    var i, ii;
     var content;
     var st = 0, name = "";
     var curtag, nextag;
 
+    var data;
+
+    if (g_listen & l_list_isol) {
+        data = new Array();
+
+        for (i = 0, ii = 0 ; ii < ddata.length ; ii++) {
+            if ((ddata[ii][0] & 0x02) == 0) {
+                continue;
+            }
+            data[i++] = ddata[ii];
+        }
+    }
+    else
+        data = ddata;
+
     if (standup_data_old == null || data.length < 4) {
     // if (standup_data_old == null) {
         
@@ -243,6 +266,8 @@ function j_stand_cont(data)
             if ((i % 4) == 3)
                 content += '</tr>';
         }
+        if ((i % 4) < 3)
+            content += '</tr>';
         content += '</table>';
         
         $("standup").innerHTML = content;
@@ -653,20 +678,73 @@ function j_pollbox(form)
 
 
 
-function list_set(what, setco, info)
+function list_set(what, is_update, info)
 {
+    // console.log(what);
+    var i;
+    var relo = false;
+    var old_st = readCookie("CO_list");
+    
     if (what == 'auth') {
         $('list_auth').style.color = 'red';
+        $('list_isol').style.color = 'black';
         $('list_all').style.color = 'black';
+        if (old_st == 'isolation')
+            relo = true;
+        g_listen = l_list_auth;
+    }
+    else if (what == 'isolation') {
+        $('list_auth').style.color = 'black';
+        $('list_isol').style.color = 'red';
+        $('list_all').style.color = 'black';
+        if (old_st != 'isolation')
+            relo = true;
+        g_listen = l_list_isol;
     }
     else {
         $('list_auth').style.color = 'black';
+        $('list_isol').style.color = 'black';
         $('list_all').style.color = 'red';
+        if (old_st == 'isolation')
+            relo = true;
+        g_listen = l_list_all;
     }
+
+    set_checked_value($('ra_listen_auth'), what);
+    set_checked_value($('ra_listen_isol'), what);
+    set_checked_value($('ra_listen_all'),  what);
+
     $('list_info').innerHTML = info;
-    if (setco) {
+    if (is_update) {
         createCookie("CO_list", what, 24*365, cookiepath);
     }
+
+
+    if (relo || !is_update) {
+        for (i = g_tables_auth_n ; i < g_tables_n ; i++) {
+            
+            if (i % 4 == 0) {
+                $('tr_noauth'+i).style.display = (what == 'isolation' ? 'none' : '');
+            }
+            
+            $('td_noauth'+i).style.display = (what == 'isolation' ? 'none' : '');
+        }
+        if (what == 'isolation') {
+            tra.hide_noauth();
+        }
+        else {
+            tra.show_noauth();
+        }
+            
+        if (false) {
+            // ricalculation of standup area
+            if (standup_data_old != null) {
+                standup_data = standup_data_old;
+                standup_data_old = null;
+                j_stand_cont(standup_data);
+            }
+        }
+    }
 }
 
 function sideslide(domobj, height, step)