X-Git-Url: http://mop.ddnsfree.com/gitweb/?p=brisk.git;a=blobdiff_plain;f=web%2Findex.php;h=12972e939f021ca40f89a185d0db08fc92bfe556;hp=feaa28e4b95bc90ab3bcfd1390af3da7015ddb92;hb=19cfa94e8731ace1ea643d295e1ec57f383952de;hpb=8dae4c3ee7fdb23c9780191e7e51343553033a93 diff --git a/web/index.php b/web/index.php index feaa28e..12972e9 100644 --- a/web/index.php +++ b/web/index.php @@ -2,7 +2,7 @@ /* * brisk - index.php * - * Copyright (C) 2006-2012 Matteo Nastasi + * Copyright (C) 2006-2015 Matteo Nastasi * mailto: nastasi@alternativeoutput.it * matteo.nastasi@milug.org * web: http://www.alternativeoutput.it @@ -22,26 +22,45 @@ * */ +require_once("Obj/user.phh"); require_once("Obj/brisk.phh"); require_once("Obj/auth.phh"); -require_once("Obj/proxyscan.phh"); -$mlang_room = array( 'userpasserr' => array('it' => 'Utente e/o password errati.', - 'en' => 'Wrong user and/or password.'), - 'userpassmust' => array('it' => 'Il nickname deve contenere almeno una lettera o una cifra.', - 'en' => 'The nickname have to contain at least one letter or one number.'), +$mlang_room = array( 'userpassuse' => array('it' => 'Il tuo nickname è già in uso.', + 'en' => 'Your nickname is already in use.'), 'userpassend' => array('it' => 'Spiacenti, non ci sono più posti liberi. Riprova più tardi.', 'en' => 'We are sorry, there aren\'t free place. Try again later.'), - 'userpassuse' => array('it' => 'Il tuo nickname è già in uso.', - 'en' => 'Your nickname is already in use.'), + 'userpassmust' => array('it' => 'Il nickname deve contenere almeno una lettera o una cifra.', + 'en' => 'The nickname have to contain at least one letter or one number.'), + 'userpasserr' => array('it' => 'Utente e/o password errati.', + 'en' => 'Wrong user and/or password.'), + 'userpassban' => array('it' => 'Il tuo indirizzo IP è stato bannato perché precedentemente utilizzato da qualche molestatore.', + 'en' => 'Your IP address is banned because trolling activity was detected from it.'), 'standing' => array('it' => 'Giocatori in piedi', 'en' => 'Standing players'), 'headline' => array('it' => 'briscola chiamata in salsa ajax', 'en' => 'declaration briscola in ajax sauce (Beta)'), - 'welcome' => array('it' => 'Digita il tuo nickname per accedere ai tavoli della briscola', - 'en' => 'Enter your nickname to access to the tables of briscola'), - 'btn_enter' => array('it' => 'entra', - 'en' => 'enter'), + 'welcome' => array('it' => 'Digita il tuo nickname per accedere ai tavoli della briscola.', + 'en' => 'Enter your nickname to access to the tables of briscola.'), + 'reas_unkn' => array('it' => 'Logout per motivi sconosciuti.', + 'en' => 'Logout with unknown reason.'), + 'reas_lout' => array('it' => 'Orevoire.', + 'en' => 'EN Orevoire.'), + 'reas_tout' => array('it' => 'Abbiamo perso le tue tracce, quindi ti abbiamo disconnesso.', + 'en' => 'EN Abbiamo perso le tue tracce, quindi ti abbiamo disconnesso.'), + 'reas_ttot' => array('it' => 'Abbiamo perso le tue tracce mentre stavi giocando, quindi ti abbiamo disconnesso.', + 'en' => 'EN Abbiamo perso le tue tracce mentre stavi giocando, quindi ti abbiamo disconnesso.'), + 'reas_anon' => array('it' => 'L\' accesso attraverso sistemi di anonimizzazione non è consentito.', + 'en' => 'EN L\' accesso attraverso sistemi di anonimizzazione non è consentito.'), + 'reas_prox' => array('it' => 'L\' accesso attraverso proxy non è consentito, se lo usi solo tu e pochi altri utenti comunica il suo indirizzo IP all\' amministratore per aggiungerlo alle eccezioni.', + 'en' => 'EN L\' accesso attraverso proxy non è consentito, se lo usi solo tu e pochi altri utenti comunica il suo indirizzo IP all\' amministratore per aggiungerlo alle eccezioni.'), + 'reas_anot' => array('it' => 'La tua sessione è stata assegnata ad un altro browser.', + 'en' => 'EN La tua sessione è stata assegnata ad un altro browser.'), + 'reas_cloud' => array('it' => 'La connessione dai computer di una cloud non è ammessa.', + 'en' => 'Connection from cloud computers is not allowed.'), + + 'btn_enter' => array('it' => 'Entra.', + 'en' => 'Enter.'), 'passwarn' => array('it' => 'Se non hai ancora una password, lascia il campo in bianco ed entra.', 'en' => 'If you don\'t have a password, leave blank the field and enter.'), 'browwarn' => array('it' => 'Se qualcosa non funziona prova a ricaricare la pagina con Ctrl + F5

Se non riesci più ad entrare nel nuovo Brisk e prima ci riuscivi potrebbe essere un problema di antivirus,
guarda la pagina sugli antivirus per maggiori informazioni su come configurarlo.

Se ancora non funziona nulla contatta l\'amministratore del sito.', @@ -52,12 +71,14 @@ $mlang_room = array( 'userpasserr' => array('it' => 'Utente e/o password errati 'en' => 'back to tables'), 'btn_exit' => array('it' => 'Esco.', 'en' => 'Exit.'), - 'btn_prefs_save' => array('it' => 'Salva.', + 'btn_save' => array('it' => 'Salva.', 'en' => 'Save.'), - 'btn_prefs_reset' => array('it' => 'Annulla.', + 'btn_reset' => array('it' => 'Annulla.', 'en' => 'Reset.'), - 'btn_prefs_close' => array('it' => 'Chiudi.', + 'btn_close' => array('it' => 'Chiudi.', 'en' => 'Close.'), + 'btn_send' => array('it' => 'Invia.', + 'en' => 'Send.'), 'tit_tabl' => array('it' => 'Tavolo ', 'en' => 'Table '), 'tit_stat' => array('it' => 'imposta lo stato del tuo utente', @@ -181,6 +202,10 @@ $mlang_room = array( 'userpasserr' => array('it' => 'Utente e/o password errati 'en' => 'contacts'), 'itm_mail' => array('it' => 'contatti', 'en' => 'contacts'), + 'tit_cook' => array('it' => 'policy sui cookie', + 'en' => 'cookie policy'), + 'itm_cook' => array('it' => 'cookie', + 'en' => 'cookie'), 'tit_cla' => array('it' => 'classifiche degli utenti', 'en' => 'user\'s placings'), 'itm_cla' => array('it' => 'classifiche', @@ -203,21 +228,28 @@ $mlang_room = array( 'userpasserr' => array('it' => 'Utente e/o password errati 'en' => 'Send a message to the administrator:'), 'mesgtoadm_sub'=> array('it' => 'soggetto:', 'en' => 'subject:'), - 'btn_send' => array('it' => 'Invia.', - 'en' => 'Send.'), - 'btn_close' => array('it' => 'Chiudi.', - 'en' => 'Close.') + 'info_login' => array('it' => 'Utente:', + 'en' => 'User:'), + 'info_state' => array('it' => 'Stato:', + 'en' => 'State:'), + 'info_guar' => array('it' => 'Garante:', + 'en' => 'Guarantee:'), + 'info_match' => array('it' => 'Partite:', + 'en' => 'Matches:'), + 'info_game' => array('it' => 'Mani:', + 'en' => 'Hands:'), + 'info_frie' => array('it' => 'Conoscenza:', + 'en' => 'Friendship:'), ); - - require_once("briskin5/Obj/briskin5.phh"); -function poll_dom() { - GLOBAL $G_with_poll, $G_poll_title, $G_poll_entries; +function poll_dom() +{ + GLOBAL $G_with_poll, $G_poll_title, $G_poll_entries; - if ($G_with_poll) { - $ret = sprintf('
+ if ($G_with_poll) { + $ret = sprintf('
@@ -225,32 +257,100 @@ function poll_dom() { %s

', $G_poll_title); - for ($i = 0 ; $i < count($G_poll_entries) ; $i++) { - $ret .= sprintf('%s

', $G_poll_entries[$i]['id'], - $G_poll_entries[$i]['cont']); - } - $ret .= sprintf('
+ for ($i = 0 ; $i < count($G_poll_entries) ; $i++) { + $ret .= sprintf('%s

', $G_poll_entries[$i]['id'], + $G_poll_entries[$i]['cont']); + } + $ret .= sprintf('
'); - return ($ret); - } - else - return ''; + return ($ret); + } + else + return ''; +} + +function sidebanners_init($sidebanner_idx) +{ + for ($i = 0 ; $i < count($sidebanner_idx) ; $i++) { + printf(" sidebanner_init(%d);\n", $i); + } } -function index_main(&$brisk, $transp_type, &$header_out, $remote_addr_full, $get, $post, $cookie) +function sidebanners_render($sidebanner, $sidebanner_idx) +{ + $sb_n = count($sidebanner_idx); + if ($sb_n == 0) { + return; + } + + if ($sb_n == 1) { + printf("

"); + } + + for ($i = 0 ; $i < $sb_n ; $i++) { + $idx = $sidebanner_idx[$i]; + $sb = $sidebanner[$idx]; + if (!array_key_exists('link', $sb) + || !array_key_exists('title', $sb) + || !array_key_exists('icon_big', $sb)) { + continue; + } + $sb_type = (array_key_exists('type', $sb) ? $sb['type'] : 'meeting'); + if (array_key_exists('icon', $sb)) { + $sb_icon = $sb['icon']; + } + else { + if ($sb_type == 'meeting') { + if ($sb_n < 3) { + $sb_icon = 'img/brisk_meeting60.gif'; + } + else { + $sb_icon = 'img/brisk_meeting35.gif'; + } + } + else { + // no standard icon for other type of events please add them + continue; + } + } + $sb_dx = (array_key_exists('dx', $sb) ? $sb['dx'] : 100); + $sb_dy = (array_key_exists('dy', $sb) ? $sb['dy'] : -230); + + printf('
', $i); + printf('', $sb['link']); + printf('%s
', $tit, $tit); + printf("\n"); + + $ib_class = ""; + if (array_key_exists('icon_big_class', $sb)) { + $ib_class = $sb['icon_big_class']; + } + + printf('', $ib_class, $i, $sb['icon_big']); + printf("\n"); + } +} + +function index_main(&$brisk, $transp_type, $header, &$header_out, $remote_addr_full, $get, $post, $cookie) { GLOBAL $G_with_donors, $G_donors_cur, $G_donors_all; GLOBAL $G_with_topbanner, $G_topbanner, $G_is_local; - GLOBAL $G_with_sidebanner, $G_sidebanner; - GLOBAL $G_with_sidebanner2, $G_sidebanner2; + GLOBAL $G_sidebanner, $G_sidebanner_idx; GLOBAL $G_with_poll; GLOBAL $G_lang, $G_lng, $mlang_room; - GLOBAL $BRISK_SHOWHTML, $BRISK_DEBUG, $_SERVER; + GLOBAL $BRISK_SHOWHTML, $BRISK_DEBUG, $_SERVER, $_COOKIE; if (($sess = gpcs_var('sess', $get, $post, $cookie)) === FALSE) $sess = ""; if (($name = gpcs_var('name', $get, $post, $cookie)) === FALSE) unset($name); + else + log_step("LOGIN: $name"); + if (($pass_private = gpcs_var('pass_private', $get, $post, $cookie)) === FALSE) unset ($pass_private); if (($table_idx = gpcs_var('table_idx', $get, $post, $cookie)) === FALSE) @@ -258,243 +358,268 @@ function index_main(&$brisk, $transp_type, &$header_out, $remote_addr_full, $get if (($table_token = gpcs_var('table_idx', $get, $post, $cookie)) === FALSE) unset ($table_token); + // default values + $_cookie_law_3party = 'true'; + if (isset($cookie['_cookie_law_3party'])) + $_cookie_law_3party = $cookie['_cookie_law_3party']; + $remote_addr = addrtoipv4($remote_addr_full); - // Use of proxies isn't allowed. - if (!$G_is_local && is_proxy($remote_addr)) { - return FALSE; + $is_login = FALSE; + $body = ""; + $tables = ""; + $standup = ""; + $ACTION = "login"; + $last_msg = ""; + $banned = FALSE; + + if (isset($BRISK_SHOWHTML) == FALSE) { + $is_table = FALSE; + log_main("lock Brisk"); + $curtime = time(); + + /* Actions */ + if (($ghost_sess = $brisk->ghost_sess->pop($sess)) != FALSE) { + switch ($ghost_sess->reas) { + case GHOST_SESS_REAS_LOUT: + $last_msg = $mlang_room['reas_lout'][$G_lang]; + break; + case GHOST_SESS_REAS_ANOT: + $last_msg = $mlang_room['reas_anot'][$G_lang]; + break; + case GHOST_SESS_REAS_TOUT: + $last_msg = $mlang_room['reas_tout'][$G_lang]; + break; + case GHOST_SESS_REAS_TTOT: + $last_msg = $mlang_room['reas_ttot'][$G_lang]; + break; + case GHOST_SESS_REAS_ANON: + $last_msg = $mlang_room['reas_anon'][$G_lang]; + break; + case GHOST_SESS_REAS_PROX: + $last_msg = $mlang_room['reas_prox'][$G_lang]; + break; + default: + $last_msg = $mlang_room['reas_unkn'][$G_lang]; + break; + } + } + if ($brisk->cloud_check($remote_addr)) { + // TODO: find a way to add a nonblocking sleep(5) here + $banned = TRUE; + $last_msg = $mlang_room['reas_cloud'][$G_lang]; + } + + + if (validate_sess($sess)) { + log_main("pre garbage_manager UNO"); + $brisk->garbage_manager(TRUE); + log_main("post garbage_manager"); + if (($user = &$brisk->get_user($sess, &$idx)) != FALSE) { + if ($user->the_end == FALSE) { + $brisk->sess_cur_set($user->sess); + log_main("user stat: ".$user->stat); + if ($user->stat == "table") { + $cookies = new Cookies(); + $cookies->add("table_token", $user->table_token, $curtime + 31536000); + $cookies->add("table_idx", $user->table, $curtime + 31536000); + $header_out['cookies'] = $cookies; + $header_out['Location'] = "briskin5/index.php"; + return TRUE; + } + $ACTION = "room"; + } + } + } + if (!$banned && $ACTION == "login" && isset($name)) { + log_main("pre garbage_manager DUE"); + + if (isset($pass_private) == FALSE || $pass_private == "") { + $pass_private = FALSE; + + if ($brisk->ban_check($remote_addr)) { + // TODO: find a way to add a nonblocking sleep(5) here + $banned = TRUE; + $idx = -4; + } + } + + $brisk->garbage_manager(TRUE); + /* try login */ + + if ($banned == FALSE && + ($user = $brisk->add_user(&$sess, &$idx, $name, $pass_private, + $remote_addr, $header, $cookie)) != FALSE) { + $brisk->sess_cur_set($user->sess); + $ACTION = "room"; + if ($idx < 0) { + $idx = -$idx - 1; + $is_login = TRUE; + } + + log_legal($curtime, $remote_addr, $user, "STAT:LOGIN", ''); + + // recovery lost game + if ($user->stat == "table") { + $cookies = new Cookies(); + $cookies->add("table_token", $user->table_token, $curtime + 31536000); + $cookies->add("table_idx", $user->table, $curtime + 31536000); + $header_out['cookies'] = $cookies; + $header_out['Location'] = "briskin5/index.php"; + return TRUE; + } + } + else { + fprintf(STDERR, "POST CHECK QUI\n"); + /* Login Rendering */ + switch($idx) { + case -4: + $sfx = 'ban'; + break; + case -3: + $sfx = 'err'; + break; + case -2: + $sfx = 'must'; + break; + case -1: + $sfx = 'end'; + break; + default: + $sfx = 'use'; + } + + $body .= '
'.$mlang_room['userpass'.$sfx][$G_lang].'
'; + } + } + } + /* Rendering. */ + + if ($BRISK_SHOWHTML == "debugtable") { + $ACTION = "room"; + } + else if ($BRISK_SHOWHTML == "debuglogin") { + $ACTION = "login"; + } + + if ($ACTION == "room") { + $tables .= '
'; + $tables .= ''; + for ($ii = 0 ; $ii < TABLES_N ; $ii++) { + if ($user->is_auth() && !$user->is_appr()) + $i = $ii; + else + $i = TABLES_N - $ii - 1; + + if ($ii % 4 == 0) { + $tables .= ''; + } + if (TRUE || !($user->flags & USER_FLAG_ISOLAUTH) || $ii < TABLES_AUTH_N) { + $tables .= ''."\n"; + } + if ($ii % 4 == 3) { + $tables .= ''; + } + } + $tables .= '
'; + + $tables .= '
'.$mlang_room['tit_tabl'][$G_lang].$i.'
'; + $tables .= sprintf('
', $i); + $tables .= sprintf('
', $i); + $tables .= '
'; + $tables .= '
'; + + $standup .= '
'; + $standup .= '
'; + /* MLANG: "Giocatori in piedi" */ + // $standup .= '
Giocatori in piedi - Come ottenere user e password -
'; + $standup .= '
'.$mlang_room['standing'][$G_lang].'
'; + + $standup .= sprintf('
'); + // MLANG Esco. + $standup .= '
'; + $standup .= '
'; + } + + $altout_sponsor_arr = array( array ( 'id' => 'btn_altout', + 'url' => 'http://www.alternativeoutput.it', + 'content' => 'img/altout80x15.png', + 'content_big' => 'img/logotxt_banner.png'), + array ( 'id' => 'btn_virtualsky', + 'url' => 'http://virtualsky.alternativeoutput.it', + 'content' => 'img/virtualsky80x15a.gif', + 'content_big' => 'img/virtualsky_big.png'), + array ( 'id' => 'btn_dynamica', + 'url' => 'http://www.dynamica.it', + 'content' => 'img/dynamica.png', + 'content_big' => 'img/dynamica_big.png') + ); + + $altout_support_arr = array( array ( 'id' => 'btn_brichi', + 'url' => 'http://www.briscolachiamata.it', + 'content' => 'img/brichi.png', + 'content_big' => 'img/brichi_big.png'), + array ( 'id' => 'btn_foroli', + 'url' => 'http://www.forumolimpia.it', + 'content' => 'img/forumolimpia.gif', + 'content_big' => 'img/forumolimpia_big.png' ), + array ( 'id'=> 'btn_niini', + 'url' => 'http://www.niinivirta.it', + 'content' => 'img/niinivirta.png', + 'content_big' => 'img/niinivirta_big.png') ); + + + + $altout_support = ""; + $altout_support_big = ""; + for ($i = 0 ; $i < 4 ; $i++) { + $ii = ($i < 3 ? $i : 0); + + $altout_support .= sprintf('
'."\n", + $i * 20, $altout_support_arr[$ii]['url'], + $altout_support_arr[$ii]['id'], $altout_support_arr[$ii]['content']); + + $altout_support_big .= sprintf('', + $altout_support_arr[$ii]['id'], $altout_support_arr[$ii]['content_big']); + } + + + // seed with microseconds since last "whole" second + // srand ((double) microtime() * 1000000); + // $randval = rand(0,count($altout_sponsor_arr)-1); + $altout_sponsor = ""; + $altout_sponsor_big = ""; + for ($i = 0 ; $i < 4 ; $i++) { + $ii = ($i < 3 ? $i : 0); + + $altout_sponsor .= sprintf('
'."\n", + $i * 20, $altout_sponsor_arr[$ii]['url'], + $altout_sponsor_arr[$ii]['id'], $altout_sponsor_arr[$ii]['content']); + + $altout_sponsor_big .= sprintf('', + $altout_sponsor_arr[$ii]['id'], $altout_sponsor_arr[$ii]['content_big']); } - $is_login = FALSE; - $body = ""; - $tables = ""; - $standup = ""; - $ACTION = "login"; - - if (isset($BRISK_SHOWHTML) == FALSE) { - $is_table = FALSE; - log_main("lock Brisk"); - $curtime = time(); - - /* Actions */ - - if (validate_sess($sess)) { - log_main("pre garbage_manager UNO"); - $brisk->garbage_manager(TRUE); - log_main("post garbage_manager"); - if (($user = &$brisk->get_user($sess, &$idx)) != FALSE) { - $brisk->sess_cur_set($user->sess); - log_main("user stat: ".$user->stat); - if ($user->stat == "table") { - $cookies = new Cookies(); - $cookies->add("table_token", $user->table_token, $curtime + 31536000); - $cookies->add("table_idx", $user->table, $curtime + 31536000); - $header_out['cookies'] = $cookies; - $header_out['Location'] = "briskin5/index.php"; - return TRUE; - } - $ACTION = "room"; - } - } - - if ($ACTION == "login" && isset($name)) { - log_main("pre garbage_manager DUE"); - - if (isset($pass_private) == FALSE || $pass_private == "") { - $pass_private = FALSE; - - $banned = FALSE; - if ($brisk->ban_check($remote_addr)) { - // TODO: find a way to add a nonblocking sleep(5) here - $banned = TRUE; - $idx = -1; - } - } - - $brisk->garbage_manager(TRUE); - /* try login */ - - if ($banned == FALSE && - ($user = $brisk->add_user(&$sess, &$idx, $name, $pass_private, $remote_addr, $cookie)) != FALSE) { - $brisk->sess_cur_set($user->sess); - $ACTION = "room"; - if ($idx < 0) { - $idx = -$idx - 1; - $is_login = TRUE; - } - - log_legal($curtime, $remote_addr, $user, "STAT:LOGIN", ''); - - // recovery lost game - if ($user->stat == "table") { - $cookies = new Cookies(); - $cookies->add("table_token", $user->table_token, $curtime + 31536000); - $cookies->add("table_idx", $user->table, $curtime + 31536000); - $header_out['cookies'] = $cookies; - $header_out['Location'] = "briskin5/index.php"; - return TRUE; - } - - // setcookie ("sess", "", time() + 180); - $brisk->standup_update(&$user); - } - else { - /* Login Rendering */ - /* MLANG: "Utente e/o password errati.", "Il nickname deve contenere almeno una lettera o una cifra.", "Spiacenti, non ci sono più posti liberi. Riprova più tardi.", "Il tuo nickname è già in uso." */ - /* - if ($idx == -3) - $body .= '
'.$mlang_room['userpasserr'][$G_lang].'
'; - else if ($idx == -2) - // $body .= '
Il nickname deve contenere almeno una lettera o una cifra.
'; - $body .= '
'.$mlang_room['userpassmust'][$G_lang].'
'; - else if ($idx == -1) - // $body .= '
Spiacenti, non ci sono più posti liberi. Riprova più tardi.
'; - $body .= '
'.$mlang_room['userpassend'][$G_lang].'
'; - else - // $body .= '
Il tuo nickname è già in uso.
'; - $body .= '
'.$mlang_room['userpassuse'][$G_lang].'
'; - */ - - if ($idx == -3) - $sfx = 'err'; - else if ($idx == -2) - $sfx = 'must'; - else if ($idx == -1) - $sfx = 'end'; - else - $sfx = 'use'; - - $body .= '
'.$mlang_room['userpass'.$sfx][$G_lang].'
'; - } - } - } - /* Rendering. */ - - if ($BRISK_SHOWHTML == "debugtable") { - $ACTION = "room"; - } - else if ($BRISK_SHOWHTML == "debuglogin") { - $ACTION = "login"; - } - - if ($ACTION == "room") { - $tables .= '
'; - $tables .= ''; - for ($ii = 0 ; $ii < TABLES_N ; $ii++) { - if ($user->flags & USER_FLAG_AUTH) - $i = $ii; - else - $i = TABLES_N - $ii - 1; - - if ($ii % 4 == 0) { - $tables .= ''; - } - if (TRUE || !($user->flags & USER_FLAG_ISOLAUTH) || $ii < TABLES_AUTH_N) { - $tables .= ''."\n"; - } - if ($ii % 4 == 3) { - $tables .= ''; - } - } - $tables .= '
'; - - $tables .= '
'.$mlang_room['tit_tabl'][$G_lang].$i.'
'; - $tables .= sprintf('
', $i); - $tables .= sprintf('
', $i); - $tables .= '
'; - $tables .= '
'; - - $standup .= '
'; - $standup .= '
'; - /* MLANG: "Giocatori in piedi" */ - // $standup .= '
Giocatori in piedi - Come ottenere user e password -
'; - $standup .= '
'.$mlang_room['standing'][$G_lang].'
'; - - $standup .= sprintf('
'); - // MLANG Esco. - $standup .= '
'; - $standup .= '
'; - } - - $altout_sponsor_arr = array( array ( 'id' => 'btn_altout', - 'url' => 'http://www.alternativeoutput.it', - 'content' => 'img/altout80x15.png', - 'content_big' => 'img/logotxt_banner.png'), - array ( 'id' => 'btn_virtualsky', - 'url' => 'http://virtualsky.alternativeoutput.it', - 'content' => 'img/virtualsky80x15a.gif', - 'content_big' => 'img/virtualsky_big.png'), - array ( 'id' => 'btn_dynamica', - 'url' => 'http://www.dynamica.it', - 'content' => 'img/dynamica.png', - 'content_big' => 'img/dynamica_big.png') - ); - - $altout_support_arr = array( array ( 'id' => 'btn_brichi', - 'url' => 'http://www.briscolachiamata.it', - 'content' => 'img/brichi.png', - 'content_big' => 'img/brichi_big.png'), - array ( 'id' => 'btn_foroli', - 'url' => 'http://www.forumolimpia.it', - 'content' => 'img/forumolimpia.gif', - 'content_big' => 'img/forumolimpia_big.png' ), - array ( 'id'=> 'btn_niini', - 'url' => 'http://www.niinivirta.it', - 'content' => 'img/niinivirta.png', - 'content_big' => 'img/niinivirta_big.png') ); - - - - $altout_support = ""; - $altout_support_big = ""; - for ($i = 0 ; $i < 4 ; $i++) { - $ii = ($i < 3 ? $i : 0); - - $altout_support .= sprintf('
', - $i * 20, $altout_support_arr[$ii]['url'], - $altout_support_arr[$ii]['id'], $altout_support_arr[$ii]['content']); - - $altout_support_big .= sprintf('', - $altout_support_arr[$ii]['id'], $altout_support_arr[$ii]['content_big']); - } - - - // seed with microseconds since last "whole" second - // srand ((double) microtime() * 1000000); - // $randval = rand(0,count($altout_sponsor_arr)-1); - $altout_sponsor = ""; - $altout_sponsor_big = ""; - for ($i = 0 ; $i < 4 ; $i++) { - $ii = ($i < 3 ? $i : 0); - - $altout_sponsor .= sprintf('
', - $i * 20, $altout_sponsor_arr[$ii]['url'], - $altout_sponsor_arr[$ii]['id'], $altout_sponsor_arr[$ii]['content']); - - $altout_sponsor_big .= sprintf('', - $altout_sponsor_arr[$ii]['id'], $altout_sponsor_arr[$ii]['content_big']); - } - - - - /* NOTE: Brisk donate or donate fake if local */ - if (!$G_is_local) - $brisk_donate = file_get_contents(FTOK_PATH."/brisk_donate.txt"); - else - $brisk_donate = '
BRISK_DONATE
'; - - if ($brisk_donate == FALSE) - $brisk_donate = ""; - - - /* MLANG: "briscola chiamata in salsa ajax", */ - - mt_srand(make_seed()); - if (!$G_is_local) { - $rn = rand(0, 1); - - if ($rn == 0) { - $banner_top_left = ' -'; - $banner_top_right = carousel_top(); - } - else { - $banner_top_left = carousel_top(); - $banner_top_right = ' -'; - } - } - else { // !$G_is_local - $banner_top_left = carousel_top(); - $banner_top_right = carousel_top(); - } - - $brisk_header_form = '
+'; + } + } + else { // !$G_is_local + $banner_top_left = carousel_top(); + $banner_top_right = carousel_top(); + } + + $brisk_header_form = '
'; -/* MLANG: ALL THE VERTICAL MENU */ - $brisk_vertical_menu = ' + /* MLANG: ALL THE VERTICAL MENU */ + $brisk_vertical_menu = '
@@ -568,45 +689,49 @@ google_color_url = "000000"; '.$mlang_room['itm_help'][$G_lang].'
-homepage
-'.$mlang_room['itm_what'][$G_lang].'
-'.$mlang_room['itm_rules'][$G_lang].'
-screenshoots
-'.$mlang_room['itm_comp'][$G_lang].'
-'.$mlang_room['itm_src'][$G_lang].'
-'.$mlang_room['itm_ml'][$G_lang].'
-'.$mlang_room['itm_pro'][$G_lang].'
about
-'.$mlang_room['itm_mail'][$G_lang].'
+'.$mlang_room['itm_cook'][$G_lang].'

@@ -888,154 +1014,166 @@ supported by:
+ + - + else + $("proflashext").innerHTML = ""; + $("nameid").focus(); +} +//--> +
- -\n"); - printf($brisk_vertical_menu, '', ''); - - if ($G_with_sidebanner xor $G_with_sidebanner2) { - printf("

"); - } - - if ($G_with_sidebanner) { - printf("%s", $G_sidebanner); - } - + } + printf($brisk_header_form); + printf("
\n"); + printf($brisk_vertical_menu, '', ''); - if ($G_with_sidebanner2) { - printf("%s", $G_sidebanner2); - } - printf(""); -?> + sidebanners_render($G_sidebanner, $G_sidebanner_idx); + printf(""); +?> -
-
-


+ echo "$body"; +?> +
+
+
+
+
-

-
- - - - - - - - -

-

+

+
+ + + + + + + + +

+ +

+ +

+ +


-
-



-



-



-



-



+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+    
+
+
+ + + } + else if ($ACTION == 'room') { + $header_out['Content-type'] = "text/html; charset=\"utf-8\""; +?> Brisk + + @@ -1046,15 +1184,19 @@ echo "$body"; ?> + + - +//--> + @@ -1152,40 +1286,26 @@ if ($is_login) { ?> -
\n"); - printf($brisk_vertical_menu, '', $brisk_donate); - - - if ($G_with_sidebanner xor $G_with_sidebanner2) { - printf("

"); - } - - if ($G_with_sidebanner) { - printf("%s", $G_sidebanner); - } - + } + printf($brisk_header_form); + printf("
\n"); + printf($brisk_vertical_menu, '', $brisk_donate); - if ($G_with_sidebanner2) { - printf("%s", $G_sidebanner2); - } + sidebanners_render($G_sidebanner, $G_sidebanner_idx); - printf(""); + printf(""); ?> sess"; ?>">
- +
- +
-
+
Chat
@@ -1203,7 +1323,7 @@ if ($is_login) {
- +

@@ -1221,7 +1341,7 @@ if ($is_login) { type="submit" onclick="this.form.elements['realsub'].value = 'invia';" class="button">      " +"" type="submit" class="button" onclick="this.form.elements['realsub'].value = 'chiudi';">
@@ -1241,8 +1361,8 @@ type="submit" class="button" onclick="this.form.elements['realsub'].value = 'chi -       - +       +
@@ -1257,6 +1377,79 @@ type="submit" class="button" onclick="this.form.elements['realsub'].value = 'chi
+ + +
- - - + + +
+