/*
* brisk - room.js
*
- * Copyright (C) 2006-2009 Matteo Nastasi
+ * Copyright (C) 2006-2012 Matteo Nastasi
* mailto: nastasi@alternativeoutput.it
* matteo.nastasi@milug.org
* web: http://www.alternativeoutput.it
/*
+
data = [ [ flags, name ], ... ]
*/
+
var l_list_all = 0x00;
var l_list_auth = 0x01;
var l_list_isol = 0x02;
+function client_prefs()
+{
+}
+
+client_prefs.prototype = {
+ listen: -1
+}
+
function state_add(flags)
{
- var content = "";
- var st, name = "";
- var tit = "";
+ var content = "", supercont = "";
+ var st, superst, name = "", supername = "", supersfx = "";
+ var tit = "", supertit = "";
+
if ((flags & 0xf00) != 0) {
st = flags & 0xf00;
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;
+ case 0x900:
+ name = "st_soccer.png";
+ tit = (g_lang == 'en' ? "Soccer time" : "c'è la partita!!");
+ break;
+ case 0xa00:
+ name = "st_baby.png";
+ tit = (g_lang == 'en' ? "Children time" : "ho il pupo da accudire");
+ break;
+ case 0xb00:
+ name = "st_mop.png";
+ tit = (g_lang == 'en' ? "Mop time" : "sto rassettando");
+ break;
+ case 0xc00:
+ name = "st_babbo.png";
+ tit = (g_lang == 'en' ? "Sto dando i regali" : "sto dando i regali");
+ break;
+ case 0xd00:
+ name = "st_renna.png";
+ tit = (g_lang == 'en' ? "in giro per regali" : "in giro per regali");
+ break;
+ case 0xe00:
+ name = "st_pupaz.png";
+ tit = (g_lang == 'en' ? "Neve a gogò" : "neve a gogò");
+ break;
+ case 0xf00:
+ name = "st_visch.png";
+ tit = (g_lang == 'en' ? "aspettando sotto al vischio" : "aspettando sotto al vischio");
+ break;
default:
break;
}
+ }
+
+ if ((flags & 0xf0000) != 0) {
+ superst = flags & 0xf0000;
if (name != "") {
- content += ' <img title="'+tit+'" class="unbo" src="img/'+name+'">';
+ supersfx = "_side";
+ }
+
+ switch (superst) {
+ case 0x20000:
+ supername = "superuser"+supersfx+".png";
+ supertit = (g_lang == 'en' ? "Brisk Supporter" : "Brisk Supporter");
+ break;
}
}
+ if (supername != "") {
+ content += ' <img title="'+supertit+'" class="inline" src="img/'+supername+'">';
+ }
+
+ if (name != "") {
+ content += ' <img title="'+tit+'" class="inline" src="img/'+name+'">';
+ }
+
return content;
}
function table_add(curtag, td)
{
- var tbody = null, tr;
+ var tbody = null, tr, ct;
do {
// console.log("wt: "+curtag.tagName);
function j_stand_tdcont(el)
{
- var content = "";
-
- if (el[0] & 0x01)
- content += '<b>';
-
- if (el[0] & 0x02)
- content += '<i>';
-
- content += el[1];
-
- if (el[0] & 0x02)
- content += '</i>';
-
- if (el[0] & 0x01)
- content += '</b>';
-
- content += state_add(el[0]);
-
- return (content);
+ return (user_dec_and_state(el));
}
function j_stand_cont(ddata)
if ((i % 4) == 3)
content += '</tr>';
-
- i++;
}
if ((i % 4) < 3)
content += '</tr>';
window.onbeforeunload = null;
window.onunload = null;
// nonunload = true;
- act_logout();
+ act_logout(0);
};
var content = '';
for (i = 0 ; i < data.length ; i++) {
- if (data[i][0] & 0x01)
- content += '<b>';
-
- if (data[i][0] & 0x02)
- content += '<i>';
-
- content += data[i][1];
-
- if (data[i][0] & 0x02)
- content += '</i>';
-
- if (data[i][0] & 0x01)
- content += '</b>';
- content += state_add(data[i][0]);
+ // content += user_decorator(data[i]);
+ // content += state_add(data[i][0]);
+ content += j_stand_tdcont(data[i]);
content += '<br>';
}
return (false);
}
+function prefs_assign(content)
+{
+ var prefs_new;
+ var s;
+
+ s = "prefs_new = " + content;
+ eval(s);
+
+ return (prefs_new);
+}
+
+var prefs_list_idx = new Array( 0x00, 0x01, 0x02 );
+var prefs_list_id = new Array( "all", "auth", "isol" );
+function prefs_apply(prefs_new, is_update, is_volat)
+{
+ var i;
+ var relo = false;
+ if (typeof(g_prefs) == 'undefined')
+ return false;
+
+ /* listen management */
+ if (g_prefs.listen != prefs_new.listen) {
+ for (i = 0 ; i < prefs_list_idx.length ; i++) {
+ set_checked_value($('ra_listen_'+prefs_list_id[i]), prefs_new.listen);
+ if (prefs_new.listen == prefs_list_idx[i]) {
+ if (!is_volat)
+ $('list_'+prefs_list_id[i]).style.color = 'red';
+ $('list_info').innerHTML = mlang_commons['tit_list'][i][g_lang];
+ }
+ else {
+ if (!is_volat)
+ $('list_'+prefs_list_id[i]).style.color = 'black';
+ }
+ }
+
+ relo = true;
+ }
+
+
+ // TO BE ANALYZED !!!
+ // 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 = (prefs_new.listen == l_list_isol ? 'none' : '');
+ }
+
+ $('td_noauth'+i).style.display = (prefs_new.listen == l_list_isol ? 'none' : '');
+ }
+ if (prefs_new.listen == l_list_isol) {
+ 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);
+ }
+ }
+ }
+
+ g_prefs.listen = prefs_new.listen;
+}
+
+function prefs_load(content, is_update, is_volat)
+{
+ var prefs_new;
+
+ if ((prefs_new = prefs_assign(content)) == null)
+ return false;
+
+ return prefs_apply(prefs_new, is_update, is_volat);
+}
+
+function prefs_save()
+{
+ if (typeof(g_prefs) == 'undefined')
+ return false;
+
+ console.log(server_request('mesg', 'prefs', '__POST__', 'prefs', JSON.stringify(g_prefs)));
+ // close the win:
+ // $('preferences').style.visibility = 'hidden';
+}
+
+function prefs_update()
+{
+ var i;
+ var prefs_new;
+ var relo = false;
+
+ if (typeof(g_prefs) == 'undefined')
+ return false;
+
+ prefs_new = new client_prefs();
+
+ /* listen management */
+ for (i = 0 ; i < prefs_list_idx.length ; i++) {
+ prefs_new.listen = get_checked_value($('ra_listen_'+prefs_list_id[i]));
+ if (prefs_new.listen != '')
+ break;
+ }
+
+ /* TODO SAVE TEMPORARY */
+ /* from form to struct */
+ console.log("Prefs_update");
+ prefs_apply(prefs_new, true, true);
+}
function list_set(what, is_update, info)
{
- // console.log(what);
var i;
var relo = false;
var old_st = readCookie("CO_list");
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 (is_update) {
createCookie("CO_list", what, 24*365, cookiepath);
$('td_noauth'+i).style.display = (what == 'isolation' ? 'none' : '');
}
- // ricalculation of standup area
- if (standup_data_old != null) {
- standup_data = standup_data_old;
- standup_data_old = null;
- j_stand_cont(standup_data);
+ 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);
+ }
}
}
}