X-Git-Url: http://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2Findex.php;h=f3b822942e8b98b4a046b8e341585b95fc8faf28;hb=909fee961d443a8d7191f223b85b45a50745b926;hp=2b04597f118be250ac76fa6536a20c88d66711d8;hpb=4fc44e9a6f4f15b3d86cfb378d7a8d73cffe0844;p=brisk.git
diff --git a/web/index.php b/web/index.php
index 2b04597..f3b8229 100644
--- a/web/index.php
+++ b/web/index.php
@@ -2,7 +2,7 @@
/*
* brisk - index.php
*
- * Copyright (C) 2006-2009 Matteo Nastasi
+ * Copyright (C) 2006-2011 Matteo Nastasi
* mailto: nastasi@alternativeoutput.it
* matteo.nastasi@milug.org
* web: http://www.alternativeoutput.it
@@ -20,16 +20,161 @@
* not, write to the Free Software Foundation, Inc, 59 Temple Place -
* Suite 330, Boston, MA 02111-1307, USA.
*
- * $Id$
- *
*/
+$G_base = "";
+
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.') );
+
+$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.'),
+ '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.'),
+ 'standing' => array('it' => 'Giocatori in piedi',
+ 'en' => 'Standing players'),
+ 'headline' => array('it' => 'briscola chiamata in salsa ajax',
+ 'en' => 'declaration briscola in ajax sauce (Beta)'),
+ 'wellcome' => 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'),
+ '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)',
+ 'en' => '(if something don\'t work
try to reload the current page with Ctrl + F5)'),
+ 'regwarn' => array('it' => '
Il nickname che stai usando è già registrato,
se il suo proprietario si autentificherà
verrai rinominato d\'ufficio come ghostN.',
+ 'en' => '
The nickname you are using it\'s already registered,
if its proprietary authenticates
you will named ghostN.'),
+ 'btn_rettabs' => array('it' => 'torna ai tavoli',
+ 'en' => 'back to tables'),
+ 'btn_exit' => array('it' => 'Esco.',
+ 'en' => 'Exit.'),
+ 'tit_tabl' => array('it' => 'Tavolo ',
+ 'en' => 'Table '),
+ 'tit_stat' => array('it' => 'imposta lo stato del tuo utente',
+ 'en' => 'set the status of the user'),
+ 'stat_desc' => array('it' => 'stato',
+ 'en' => 'mode' ),
+ 'st_norm_desc' => array('it' => 'normale',
+ 'en' => 'normal'),
+ 'st_paus_desc' => array('it' => 'pausa',
+ 'en' => 'pause'),
+ 'st_out_desc' => array('it' => 'fuori',
+ 'en' => 'out'),
+ 'st_dog_desc' => array('it' => 'cane',
+ 'en' => 'dog'),
+ 'st_food_desc' => array('it' => 'cibo',
+ 'en' => 'food'),
+ 'st_work_desc' => array('it' => 'lavoro',
+ 'en' => 'work'),
+ 'st_smok_desc' => array('it' => 'sigaretta',
+ 'en' => 'smoke'),
+ 'st_pres_desc' => array('it' => 'presente',
+ 'en' => 'present'),
+ 'st_rabb_desc' => array('it' => 'coniglio',
+ 'en' => 'rabbit'),
+ 'st_socc_desc' => array('it' => 'calcio',
+ 'en' => 'soccer'),
+ 'st_baby_desc' => array('it' => 'pupo',
+ 'en' => 'baby'),
+ 'st_mop_desc' => array('it' => 'pulizie',
+ 'en' => 'mop'),
+
+ 'tit_ticker' => array('it' => 'scrivi un invito al tavolo e clicca',
+ 'en' => 'write an invitation at the table and click'),
+ 'itm_warr' => array('it' => 'garantisci',
+ 'en' => 'guarantee'),
+ 'warr_desc' => array('it' => 'garantisci per un tuo conoscente',
+ 'en' => 'guarantee for a friend'),
+ 'tit_warr' => array('it' => 'Garantisci per un tuo conoscente.',
+ 'en' => 'Guarantee for a friend.'),
+ 'itm_list' => array('it' => 'ascolta',
+ 'en' => 'listen'),
+ 'list_desc' => array('it' => 'imposta le regole di ascolto',
+ 'en' => 'set the listen rules'),
+ 'tit_listall' => array('it' => 'tutti',
+ 'en' => 'everybody'),
+ 'listall_desc' => array('it' => 'leggi tutti i messaggi di tutti gli utenti collegati',
+ 'en' => 'listen all messages from each user connected'),
+ 'tit_listaut' => array('it' => 'solo autenticati',
+ 'en' => 'only authorized'),
+ 'tit_listisol' => array('it' => 'isolamento',
+ 'en' => 'isolation'),
+ 'listaut_desc' => array('it' => 'leggi soltanto i messaggi degli utenti con password',
+ 'en' => 'listen messages only from authenticated users'),
+ 'listisol_desc'=> array('it' => 'visualizza Brisk come se fosse solo per utenti con password',
+ 'en' => 'show Brisk like an authenticated user only site'),
+ 'tit_splash' => array('it' => 'splash',
+ 'en' => 'splash'),
+ 'splash_desc' => array('it' => 'attiva la finestra di splash',
+ 'en' => 'show the splash window'),
+ 'tit_help' => array('it' => 'informazioni utili su Brisk',
+ 'en' => 'usefull information about Brisk'),
+ 'itm_help' => array('it' => 'aiuto',
+ 'en' => 'help'),
+ 'tit_hpage' => array('it' => 'homepage del progetto',
+ 'en' => 'project homepage (ita)'),
+ 'tit_what' => array('it' => 'di cosa si tratta',
+ 'en' => 'what is the project'),
+ 'itm_what' => array('it' => 'cos\'è',
+ 'en' => 'what is it'),
+ 'url_rules' => array('it' => 'http://it.wikipedia.org/wiki/Briscola#Gioco_a_5',
+ 'en' => 'http://it.wikipedia.org/wiki/Briscola#Gioco_a_5&EN=true'),
+ 'itm_rules' => array('it' => 'regole',
+ 'en' => 'rules'),
+ 'tit_rules' => array('it' => 'come si gioca',
+ 'en' => 'how to play'),
+ 'tit_shot' => array('it' => 'screenshots dell\'applicazione',
+ 'en' => 'screenshots of the web-application'),
+ 'tit_comp' => array('it' => 'compatibilità con i browser',
+ 'en' => 'browsers compatibility'),
+ 'itm_comp' => array('it' => 'compatibilità',
+ 'en' => 'compatibility'),
+ 'tit_src' => array('it' => 'sorgenti dell\'applicazione web',
+ 'en' => 'sources of the web-application'),
+ 'itm_src' => array('it' => 'sorgenti',
+ 'en' => 'sources'),
+ 'tit_ml' => array('it' => 'come iscriversi alla mailing list',
+ 'en' => 'how to subscribe the mailing list'),
+ 'itm_ml' => array('it' => 'mailing list',
+ 'en' => 'mailing list'),
+ 'tit_pro' => array('it' => 'come fare pubblicità a Brisk!',
+ 'en' => 'how to spread Brisk!'),
+ 'itm_pro' => array('it' => 'propaganda',
+ 'en' => 'propaganda'),
+ 'tit_mail' => array('it' => 'contatti',
+ 'en' => 'contacts'),
+ 'itm_mail' => array('it' => 'contatti',
+ 'en' => 'contacts'),
+ 'tit_cla' => array('it' => 'classifiche degli utenti',
+ 'en' => 'user\'s placings'),
+ 'itm_cla' => array('it' => 'classifiche',
+ 'en' => 'placings'),
+ 'tit_rmap' => array('it' => 'prossime funzionalità implementate',
+ 'en' => 'roadmap of next functionalities'),
+ 'itm_rmap' => array('it' => 'roadmap',
+ 'en' => 'roadmap'),
+ 'tit_meet' => array('it' => 'foto dei raduni di briskisti (serve Facebook)',
+ 'en' => 'photos of brisk meetings'),
+ 'itm_meet' => array('it' => 'BriskMeeting',
+ 'en' => 'BriskMeeting'),
+ 'tit_mesg' => array('it' => 'manda un messaggio o una segnalazione all\'amministratore del sito',
+ 'en' => 'send a message or a signalling to the administrator' ),
+ 'mesgtoadm_tit'=> array('it' => 'Invia un messaggio o una segnalazione all\'amministratore:',
+ '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.')
+ );
// Use of proxies isn't allowed.
if (!$G_is_local && is_proxy())
@@ -68,8 +213,15 @@ function poll_dom() {
return '';
}
+function carousel_top()
+{
+ $rn = rand(1, 3);
+ return (sprintf('', $rn));
+}
+
function main()
{
+ 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;
@@ -83,155 +235,180 @@ function main()
$ACTION = "login";
if (isset($BRISK_SHOWHTML) == FALSE) {
- $is_table = FALSE;
- $sem = Room::lock_data();
- log_main("lock Room");
- $room = &Room::load_data();
- $curtime = time();
-
- /* Actions */
-
- if (validate_sess($sess)) {
- log_main("pre garbage_manager UNO");
- $room->garbage_manager(TRUE);
- log_main("post garbage_manager");
- if (($user = &$room->get_user($sess, &$idx)) != FALSE) {
- log_main("user stat: ".$user->stat);
- if ($user->stat == "table") {
- if (Room::save_data(&$room) == FALSE) {
- echo "ERRORE SALVATAGGIO\n";
- exit;
- }
- log_main("unlock Room");
- Room::unlock_data($sem);
- setcookie("table_token", $user->table_token, $curtime + 31536000);
- setcookie("table_idx", $user->table, $curtime + 31536000);
- header ("Location: briskin5/index.php");
- exit;
- }
- $ACTION = "room";
- }
-
- if (Room::save_data(&$room) == FALSE) {
- echo "ERRORE SALVATAGGIO\n";
- exit;
+ $is_table = FALSE;
+ $sem = Room::lock_data(TRUE);
+ log_main("lock Room");
+ if (($room = Room::load_data()) == FALSE) {
+ log_crit("load_data failed");
+ exit();
}
- }
-
- if ($ACTION == "login" && isset($name)) {
+ $curtime = time();
- log_main("pre garbage_manager DUE");
-
- if (isset($pass_private) == FALSE) {
- $pass_private = FALSE;
- }
-
- $room->garbage_manager(TRUE);
- /* try login */
- if (($user = &$room->add_user(&$sess, &$idx, $name, $pass_private, $_SERVER['REMOTE_ADDR'])) != FALSE) {
- $ACTION = "room";
- if ($idx < 0) {
- $idx = -$idx - 1;
- $is_login = TRUE;
- }
-
- log_legal($curtime, $user, "STAT:LOGIN", '');
-
- // recovery lost game
- if ($user->stat == "table") {
- if (Room::save_data(&$room) == FALSE) {
- echo "ERRORE SALVATAGGIO\n";
- exit;
- }
- log_main("unlock Room");
- Room::unlock_data($sem);
- setcookie("table_token", $user->table_token, $curtime + 31536000);
- setcookie("table_idx", $user->table, $curtime + 31536000);
- header ("Location: briskin5/index.php");
- exit;
- }
-
-
- // setcookie ("sess", "", time() + 180);
- $room->standup_update(&$user);
-
- if (Room::save_data(&$room) == FALSE) {
- echo "ERRORE SALVATAGGIO\n";
- exit;
- }
+ /* Actions */
+
+ if (validate_sess($sess)) {
+ log_main("pre garbage_manager UNO");
+ $room->garbage_manager(TRUE);
+ log_main("post garbage_manager");
+ if (($user = &$room->get_user($sess, &$idx)) != FALSE) {
+ log_main("user stat: ".$user->stat);
+ if ($user->stat == "table") {
+ if (Room::save_data(&$room) == FALSE) {
+ echo "ERRORE SALVATAGGIO\n";
+ exit;
+ }
+ log_main("unlock Room");
+ Room::unlock_data($sem);
+ setcookie("table_token", $user->table_token, $curtime + 31536000);
+ setcookie("table_idx", $user->table, $curtime + 31536000);
+ header ("Location: briskin5/index.php");
+ exit;
+ }
+ $ACTION = "room";
+ }
+
+ if (Room::save_data(&$room) == FALSE) {
+ echo "ERRORE SALVATAGGIO\n";
+ exit;
+ }
}
- 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 .= '
';
- $tables .= ' Tavolo '.$i.' ';
- $tables .= sprintf('', $i);
- $tables .= sprintf('', $i);
- $tables .= ' | '."\n";
- if ($ii % 4 == 3)
- $tables .= '
';
- $standup .= ' ';
- /* MLANG: "Giocatori in piedi", "Come ottenere user e password" */
- // $standup .= ' Giocatori in piedi - Come ottenere user e password - ';
- $standup .= 'Giocatori in piedi ';
-
- $standup .= sprintf('');
- $standup .= '';
- $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 .= ' |
'.($G_is_local ? '' :
-'
'
-).' |
-'.($G_with_topbanner ? '
|
-
-'.($G_is_local ? '' :
-'';
+ $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 = '
'.$banner_top_left.' |
+'.(($G_with_topbanner || $G_with_donors) ? '
donatori |
+
+'.$banner_top_right.' |