X-Git-Url: https://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2Fcommons.js;h=70859fe9e9d62850230b3d19bfc2908e2457b5d2;hb=54faeacf123066d257566a533da7107c8425785f;hp=f564eea0e3c63240143d437dd55057677e3001c8;hpb=614b8793291647f99233c7528d64942494f1cb0f;p=brisk.git diff --git a/web/commons.js b/web/commons.js index f564eea..70859fe 100644 --- a/web/commons.js +++ b/web/commons.js @@ -1,7 +1,7 @@ /* * brisk - commons.js * - * Copyright (C) 2006-2008 Matteo Nastasi + * Copyright (C) 2006-2011 Matteo Nastasi * mailto: nastasi@alternativeoutput.it * matteo.nastasi@milug.org * web: http://www.alternativeoutput.it @@ -19,12 +19,10 @@ * not, write to the Free Software Foundation, Inc, 59 Temple Place - * Suite 330, Boston, MA 02111-1307, USA. * - * $Id$ - * */ var PLAYERS_N = 3; -var EXIT_BAN_TIME = 900; +var EXIT_BAN_TIME = 3600; var cookiepath = "/brisk/"; var mlang_commons = { 'imgload_a' : { 'it' : 'Immagine caricate ', @@ -252,6 +250,12 @@ function send_mesg(mesg) // alert("xhr_wr: "+xhr_wr+" is_conn: "+is_conn); xhr_wr.open('GET', 'index_wr.php?'+(is_conn ? 'sess='+sess+'&' : '')+'mesg='+mesg, (is_conn ? true : false)); xhr_wr.onreadystatechange = function() { return; }; + if (typeof(console) == 'object') { + if (typeof(console.log) == 'function') { + var ldate = new Date(); + console.log(ldate.getTime()+':MESG:'+mesg); + } + } xhr_wr.send(null); if (!is_conn) { @@ -261,6 +265,10 @@ function send_mesg(mesg) } } +/* + request to server + server_request([arg0=arg1[, arg2=arg3[, ...]]]) + */ function server_request() { var xhr_wr = createXMLHttpRequest(); @@ -332,9 +340,9 @@ function act_wakeup() send_mesg("wakeup"); } -function act_splash(date) +function act_splash() { - send_mesg("splash|"+date); + send_mesg("splash"); } function act_help() @@ -417,7 +425,7 @@ function postact_logout() { // alert("postact_logout"); try { - xhr_rd.abort(); + hstm.abort(); } catch (e) {} // eraseCookie("sess"); @@ -558,6 +566,11 @@ slowimg.prototype = { } } +function div_show(div) +{ + div.style.top = parseInt((document.body.clientHeight - parseInt(getStyle(div,"height", "height"))) / 2) + document.body.scrollTop; + div.style.visibility = "visible"; +} function notify_ex(st, text, tout, butt, w, h, is_opa, block_time) { @@ -640,7 +653,7 @@ notify_ex.prototype = { clo: null, clodiv: null, butt: null, - tblkid: null, + tblkid: null, unblock: function() { @@ -752,6 +765,30 @@ var chatt_lines_n = 0; var CHATT_MAXLINES = 40; +function user_decorator(user) +{ + var name; + var flags = user[0]; + if ((flags & 0x03) != 0) + name = ""+user[1]+""; + else + name = user[1]; + + return (name); +} + +function user_dec_and_state(el) +{ + var content = ""; + var val_el; + + content = user_decorator(el); + content += state_add(el[0]); + + return (content); +} + + /* PRO CHATT */ function chatt_sub(dt,data,str) { @@ -759,39 +796,34 @@ function chatt_sub(dt,data,str) var name; var flags; var isauth; - - flags = data[0]; - if (flags & 0x02) - name = ""+data[1]+""; - else - name = data[1]; - // alert ($("txt").scrollTop + parseInt(getStyle($("txt"),"height", "height")) - $("txt").scrollHeight); - - if ($("txt").scrollTop + parseInt(getStyle($("txt"),"height", "height")) - $("txt").scrollHeight >= 0) - must_scroll = true; - - // alert("ARRIVA NAME: "+ name + " STR:"+str); - if (chatt_lines_n == CHATT_MAXLINES) { - $("txt").innerHTML = ""; - for (i = 0 ; i < (CHATT_MAXLINES - 1) ; i++) { - chatt_lines[i] = chatt_lines[i+1]; - $("txt").innerHTML += chatt_lines[i]; + var bolder = [ (data[0] | 1), data[1] ]; + name = user_decorator(bolder); + + if ($("txt").scrollTop + parseInt(getStyle($("txt"),"height", "height")) - $("txt").scrollHeight >= 0) + must_scroll = true; + + // alert("ARRIVA NAME: "+ name + " STR:"+str); + if (chatt_lines_n == CHATT_MAXLINES) { + $("txt").innerHTML = ""; + for (i = 0 ; i < (CHATT_MAXLINES - 1) ; i++) { + chatt_lines[i] = chatt_lines[i+1]; + $("txt").innerHTML += chatt_lines[i]; + } + chatt_lines[i] = dt+name+": "+str+ "
"; + $("txt").innerHTML += chatt_lines[i]; } - chatt_lines[i] = dt+""+name+" "+str+ "
"; - $("txt").innerHTML += chatt_lines[i]; - } - else { - chatt_lines[chatt_lines_n] = dt+""+name+" "+str+ "
"; - $("txt").innerHTML += chatt_lines[chatt_lines_n]; - chatt_lines_n++; - } - // $("txt").innerHTML; - + else { + chatt_lines[chatt_lines_n] = dt+name+": "+str+ "
"; + $("txt").innerHTML += chatt_lines[chatt_lines_n]; + chatt_lines_n++; + } + // $("txt").innerHTML; - if (must_scroll) { - $("txt").scrollTop = 10000000; - } - // alert("scTOP "+$("txt").scrollTop+" scHEIGHT: "+$("txt").scrollHeight+" HEIGHT: "+getStyle($("txt"),"height", "height") ); + + if (must_scroll) { + $("txt").scrollTop = 10000000; + } + // alert("scTOP "+$("txt").scrollTop+" scHEIGHT: "+$("txt").scrollHeight+" HEIGHT: "+getStyle($("txt"),"height", "height") ); } /* @@ -822,54 +854,20 @@ function eraseCookie(name) { createCookie(name,"",-1); } -var onunload_times = 0; - - function onbeforeunload_cb () { return(""); } -function onunload_cb_old () { - var u = 0; - - // if (nonunload == true) - // return true; - - if (onunload_times == 0) { - // MLANG " Vuoi veramente abbandonare la briscola ?\n(clicca annulla o cancel se vuoi ricaricare la briscola)" - var res = window.confirm(mlang_commons['brileav'][g_lang]); - if (res == true) { - the_end = true; - act_shutdown(); - // while (1) - // u++; - } - else { - try { - document.location.href = self.location; // = self.location; - // alert ("passiamo di qui"+self.location); - return (false); - } catch (e) { - // MLANG "Ripristino della briscola fallito, per non perdere la sessione ricaricare la pagina manualmente." - alert(mlang_commons['brireco'][g_lang]); - } - } - onunload_times++; - } - - return(false); -} - function onunload_cb () { - the_end = true; + if (typeof(hstm) != "undefined") + hstm.the_end = true; act_shutdown(); return(false); } - function room_checkspace(emme,tables,inpe) { nome = ""; @@ -1022,3 +1020,42 @@ function formsub_hilite(obj) addEvent(obj, "blur", function () { this.className = 'input_sub'; }); } +// return the value of the radio button that is checked +// return an empty string if none are checked, or +// there are no radio buttons +function get_checked_value(radioObj) { + if(!radioObj) + return ""; + var radioLength = radioObj.length; + if(radioLength == undefined) + if(radioObj.checked) + return radioObj.value; + else + return ""; + for(var i = 0; i < radioLength; i++) { + if(radioObj[i].checked) { + return radioObj[i].value; + } + } + return ""; +} + +// set the radio button with the given value as being checked +// do nothing if there are no radio buttons +// if the given value does not exist, all the radio buttons +// are reset to unchecked +function set_checked_value(radioObj, newValue) { + if(!radioObj) + return; + var radioLength = radioObj.length; + if(radioLength == undefined) { + radioObj.checked = (radioObj.value == newValue.toString()); + return; + } + for(var i = 0; i < radioLength; i++) { + radioObj[i].checked = false; + if(radioObj[i].value == newValue.toString()) { + radioObj[i].checked = true; + } + } +}