X-Git-Url: http://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2Froom.js;h=e3f08b026ddfb22403122f76013505bd226acd61;hb=e05b72f2d772b765dd9bd54098cd2c4efbb7b06b;hp=82e6fcc1fac0e1e592bbcce3191c72b183dd04c8;hpb=b65dddf6cb8fdc5a98719ed170ca38c2059b362c;p=brisk.git
diff --git a/web/room.js b/web/room.js
index 82e6fcc..e3f08b0 100644
--- a/web/room.js
+++ b/web/room.js
@@ -24,20 +24,20 @@
/*
- data = [ [ flags, name ], ... ]
+ data = [ [ flags, flags_vlt, name ], ... ]
*/
-function state_add(flags)
+function state_add(flags, flags_vlt, comp)
{
var content = "", supercont = "";
var st, superst, name = "", supername = "", supersfx = "";
var tit = "", supertit = "";
- if ((flags & 0xf00) != 0) {
- st = flags & 0xf00;
+ if ((flags_vlt & 0xf00) != 0) {
+ st = flags_vlt & 0xf00;
// MLANG 4,12,16,20,24,28
switch (st) {
case 0x100:
@@ -113,14 +113,19 @@ function state_add(flags)
switch (superst) {
case 0x20000:
- supername = "superuser"+supersfx+".png";
+ if (comp != null) {
+ supername = "suprend.php?comp="+comp+"&sfx="+supersfx;
+ }
+ else {
+ supername = "img/superuser"+supersfx+".png";
+ }
supertit = (g_lang == 'en' ? "Brisk Supporter" : "Brisk Supporter");
break;
}
}
if (supername != "") {
- content += ' ';
+ content += ' ';
}
if (name != "") {
@@ -258,6 +263,9 @@ function j_stand_tdcont(el)
return (user_dec_and_state(el));
}
+/*
+ ddata = [ [ , , , ], ... ]
+ */
function j_stand_cont(ddata)
{
var i, ii;
@@ -271,7 +279,7 @@ function j_stand_cont(ddata)
data = new Array();
for (i = 0, ii = 0 ; ii < ddata.length ; ii++) {
- if ((ddata[ii][0] & 0x02) == 0) {
+ if ((ddata[ii][BSK_USER_FLAGS] & 0x02) == 0) {
continue;
}
data[i++] = ddata[ii];
@@ -280,9 +288,11 @@ function j_stand_cont(ddata)
else
data = ddata;
+ // WARNING:
+ //
+ // managing update needs this branch (for few users and the else!!)
+ //
if (standup_data_old == null || data.length < 4) {
- // if (standup_data_old == null) {
-
content = '';
for (i = 0 ; i < data.length ; i++) {
if ((i % 4) == 0)
@@ -300,18 +310,6 @@ function j_stand_cont(ddata)
$("standup").innerHTML = content;
- // console.log("inizio");
- // for (i = 0 , curtag = table_walk($("standup")) ; curtag != null ; curtag = table_walk(curtag), i++ ) {
- // console.log("inloop["+i+"]: "+curtag.tagName+" ID: "+curtag.id);
- // }
- // console.log("fine "+i);
-
- // walktable($("standup"), nextag);
- // console.log($("standup").firstChild);
- // console.log($("standup").firstChild.firstChild.firstChild.firstChild);
-
- // log_walk($("standup"));
-
standup_data_old = data;
}
else {
@@ -331,7 +329,7 @@ function j_stand_cont(ddata)
// find removed entries
for (i = 0 ; i < standup_data_old.length ; i++) {
for (e = 0 ; e < data.length ; e++) {
- if (standup_data_old[i][1] == data[e][1]) {
+ if (standup_data_old[i][BSK_USER_NICK] == data[e][BSK_USER_NICK]) {
break;
}
}
@@ -341,7 +339,10 @@ function j_stand_cont(ddata)
}
else {
/* modified entries */
- if (standup_data_old[i][0] != data[e][0]) {
+ if (standup_data_old[i][BSK_USER_FLAGS] != data[e][BSK_USER_FLAGS] ||
+ standup_data_old[i][BSK_USER_FLGVL] != data[e][BSK_USER_FLGVL] ||
+ standup_data_old[i].length != data[e].length ||
+ (data[e].length == 4 && standup_data_old[i][BSK_USER_SCOL] != data[e][BSK_USER_SCOL])) {
arr_mod[idx_mod_n] = data[e];
idx_mod[idx_mod_n++] = i;
}
@@ -352,12 +353,12 @@ function j_stand_cont(ddata)
// find new entries
for (e = 0 ; e < data.length ; e++) {
for (i = 0 ; i < standup_data_old.length ; i++) {
- if (data[e][1] == standup_data_old[i][1] ) {
+ if (data[e][BSK_USER_NICK] == standup_data_old[i][BSK_USER_NICK] ) {
break;
}
}
if (i == standup_data_old.length) {
- // console.log("ADD: "+data[e][1]);
+ // console.log("ADD: "+data[e][BSK_USER_NICK]);
arr_add[idx_add_n] = data[e];
map_add[idx_add_n++] = e;
}
@@ -414,7 +415,7 @@ function j_stand_cont(ddata)
// console.log("fineloop");
for (i ; i_add < idx_add_n ; i_add++, i++) {
- // console.log("ADD: "+i+" arr_add: "+ arr_add[i_add][1]);
+ // console.log("ADD: "+i+" arr_add: "+ arr_add[i_add][BSK_USER_NICK]);
td = document.createElement("td");
td.className = "room_standup";
td.id = map_add[i_add];
@@ -444,8 +445,6 @@ function j_tab_cont(table_idx, data)
var content = '';
for (i = 0 ; i < data.length ; i++) {
- // content += user_decorator(data[i]);
- // content += state_add(data[i][0]);
content += j_stand_tdcont(data[i]);
content += '
';