X-Git-Url: http://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2FObj%2Fbrisk.phh;h=34e08b03e5f03993b3c097536036dbbed7ce15df;hb=refs%2Ftags%2F3.2.1;hp=0b6f6cf39b5345db9cdbfb06123ed4fb585163a4;hpb=fa82ba0deaaab26b5b9efe37c392a34cbec50a66;p=brisk.git diff --git a/web/Obj/brisk.phh b/web/Obj/brisk.phh index 0b6f6cf..34e08b0 100644 --- a/web/Obj/brisk.phh +++ b/web/Obj/brisk.phh @@ -129,12 +129,12 @@ $G_false = FALSE; $G_lng = langtolng($G_lang); $G_all_points = array( 11,10,4,3,2, 0,0,0,0,0 ); -$G_brisk_version = "2.4.2 - trusty"; +$G_brisk_version = "2.5.0"; /* MLANG: ALL THE INFO STRINGS IN brisk.phh */ -$root_wellarr = array( 'it' => array ( 'Brisk (Ver. '.$G_brisk_version.'), NOVITA\': nuovo calcolo dei punteggi (doppio oltre i 70, triplo oltre gli 80 etc...), più informazioni al tavolo.', +$root_wellarr = array( 'it' => array ( 'Brisk (Ver. '.$G_brisk_version.'), NOVITA\': informazioni al tavolo sul chiamante, nuovo stato di supporter del sito.', 'Se vuoi iscriverti alla Mailing List, cliccala!' ), - 'en' => array ( 'Brisk (Ver. '.$G_brisk_version.'), NEWS: new method to calculate points (double after 70, triple after 80 and so on ...), more info at the table.', + 'en' => array ( 'Brisk (Ver. '.$G_brisk_version.'), NEWS: caller information on the table, new supporter status.', 'If you want to subscribe our Mailing List, click it!' ) ); $G_room_help = array( 'it' => ' @@ -277,6 +277,26 @@ Copyright 2006-2009 Matteo Nasta
version '.$G_brisk_version.'

Copyright 2006-2009
Matteo Nastasi (aka mop)

'); +$escinp_from = array( "\"" ); +$escinp_to = array( """ ); + +function escinput($s) +{ + GLOBAL $escinp_from, $escinp_to; + + return str_replace($escinp_from, $escinp_to, $s); +} + +function eschtml($s) +{ + return htmlentities($s); +} + +function esclfhtml($s) +{ + return str_replace("\n", "
\n", htmlentities($s)); +} + function langtolng($lang) { @@ -573,11 +593,15 @@ define(USER_FLAG_S_MOP, 0xb00); // done define(USER_FLAG_S_ALL, 0xf00); // done /* type of user normal, supporter etc ... */ -define(USER_FLAG_TY_ALL, 0xf0000); // done -define(USER_FLAG_TY_NORM, 0x10000); // done -define(USER_FLAG_TY_SUPER, 0x20000); // done +define(USER_FLAG_TY_ALL, 0xff0000); // done +define(USER_FLAG_TY_NORM, 0x010000); // done +define(USER_FLAG_TY_SUPER, 0x020000); // done +// ... other usefull status ... +define(USER_FLAG_TY_SUSPEND, 0x400000); // done +define(USER_FLAG_TY_DISABLE, 0x800000); // done class User { + var $code; // authentication code var $name; // name of the user var $sess; // session of the user var $ip; // ip of the user @@ -617,6 +641,7 @@ class User { if (($thiz =& new User()) == FALSE) return ($G_false); + $thiz->code = -1; $thiz->name = $name; $thiz->sess = $sess; $thiz->ip = $ip; @@ -653,6 +678,7 @@ class User { { GLOBAL $G_false; + $this->code = $from->code; $this->name = $from->name; $this->sess = $from->sess; $this->ip = $from->ip; @@ -714,6 +740,7 @@ class User { if (($thiz =& new User()) == FALSE) return ($G_false); + $thiz->code = $from->code; $thiz->name = $from->name; $thiz->sess = $from->sess; $thiz->ip = $from->ip; @@ -756,6 +783,10 @@ class User { return ($thiz); } + + function code_get() { + return ($this->code); + } function stat_set($stat) { log_main("sess: [".$this->sess. "] NEW STAT: [".$stat."]"); @@ -907,7 +938,7 @@ class Room { function garbage_manager($force) { - GLOBAL $G_lang, $mlang_brisk; + GLOBAL $G_lang, $mlang_brisk, $G_base; $ismod = FALSE; @@ -918,7 +949,7 @@ class Room { if ($force || $this->garbage_timeout < $curtime) { // FIXME BRISK4: include for each kind of table - require_once("briskin5/Obj/briskin5.phh"); + require_once("${G_base}briskin5/Obj/briskin5.phh"); // Before all align times with table timeout for ($table_idx = 0 ; $table_idx < TABLES_N ; $table_idx++) { @@ -1407,7 +1438,7 @@ class Room { function chatt_send(&$user, $mesg) { - GLOBAL $G_alarm_passwd, $mlang_brisk, $G_lang; + GLOBAL $G_base, $G_alarm_passwd, $mlang_brisk, $G_lang; $only_you = FALSE; // common settings @@ -1596,9 +1627,10 @@ class Room { $user->name = $name_new; // OK - nick changed /* se nome gia' in uso, segnala cosa potrebbe capitare */ if (($user->flags & USER_FLAG_AUTH) == 0) { - $userdb = new LoginDB(); + $bdb = new BriskDB(); + $bdb->users_load(); /* MLANG: "Il nickname \'%s\' è già registrato, se il suo proprietario si autentificherà verrai rinominato d\'ufficio come ghostN." */ - if ($userdb->login_exists($name_new)) { + if ($bdb->login_exists($name_new)) { $prestr = sprintf($mlang_brisk['nickjust'][$G_lang], xcape($name_new)); $to_user .= sprintf('chatt_sub("%s", [2, "%s"],"%s");', $dt, NICKSERV, $prestr); } @@ -1752,7 +1784,7 @@ class Room { if ($to_tabl) { // FIXME BRISK4: include for each kind of table - require_once("briskin5/Obj/briskin5.phh"); + require_once("${G_base}briskin5/Obj/briskin5.phh"); // Before all align times with table timeout for ($table_idx = 0 ; $table_idx < TABLES_N ; $table_idx++) { $table_cur =& $this->table[$table_idx]; @@ -1849,7 +1881,7 @@ class Room { function &add_user(&$sess, &$idx, $name, $pass, $ip) { - GLOBAL $G_false, $CO_list; + GLOBAL $G_base, $G_false, $CO_list; $idx = 0; @@ -1860,7 +1892,8 @@ class Room { $ghost_auth = FALSE; $idx = -1; $idfree = -1; - + $code = FALSE; + if (($name_new = validate_name($name)) == FALSE) { $idx = -2; return ($G_false); @@ -1872,14 +1905,15 @@ class Room { /* if pass != FALSE verify the login with pass */ log_auth("XXX", "auth1"); - $userdb = new LoginDB(); + $bdb = new BriskDB(); + $bdb->users_load(); if ($pass != FALSE) { log_auth("XXX", "auth2"); - $authenticate = $userdb->login_verify($name_new, $pass); + $authenticate = $bdb->login_verify($name_new, $pass, $code); log_auth("XXX", "authenticate: ".($authenticate != FALSE ? "TRUE" : "FALSE")); if ($authenticate != FALSE) { - $user_type = $authenticate->typeget(); + $user_type = $authenticate->type_get(); } else { $idx = -3; @@ -1887,7 +1921,7 @@ class Room { } } else { - $login_exists = $userdb->login_exists($name_new); + $login_exists = $bdb->login_exists($name_new); } for ($i = 0 ; $i < MAX_PLAYERS ; $i++) { /* free user ? */ @@ -1933,7 +1967,7 @@ class Room { $table_idx = $ghost_user->table; if ($ghost_user->stat == "table" && $this->table[$table_idx]->player_n == PLAYERS_N) { // FIXME BRISK4: include for each kind of table - require_once("briskin5/Obj/briskin5.phh"); + require_once("${G_base}briskin5/Obj/briskin5.phh"); if (($brisem = Briskin5::lock_data($table_idx)) != FALSE) { if (($bri = &Briskin5::load_data($table_idx)) != FALSE) { if ($bri->the_end != TRUE) { @@ -1975,6 +2009,7 @@ class Room { if ($authenticate != FALSE) { + $this->user[$idx]->code = $authenticate->code_get(); $this->user[$idx]->flags |= USER_FLAG_LISTAUTH; if (isset($CO_list)) { @@ -2031,11 +2066,13 @@ class Room { } } // if ($ghost > -1) { - log_main(sprintf("TROVATO LIBERO A [%d] sess [%s] name [%s]", $idx, $sess, $name_new)); $real_idx = $idx; if ($login_exists) $idx = -($idx + 1); - return ($this->user[$real_idx]); + log_main(sprintf("TROVATO LIBERO A [%d] sess [%s] name [%s] count [%d] name [%s] code [%s]", $idx, $sess, $name_new, count($this->user),$this->user[$real_idx]->name, $this->user[$real_idx]->code)); + + $ret = $this->user[$real_idx]; + return ($ret); } return ($G_false); @@ -2523,21 +2560,6 @@ function log_legal($curtime, &$user, $where, $mesg) } } -function log_points($curtime, &$user, $where, $mesg) -{ - GLOBAL $_SERVER; - - if (($fp = @fopen(LEGAL_PATH."/points.log", 'a')) != FALSE) { - /* Unix time | session | nickname | IP | where was | mesg */ - fwrite($fp, sprintf("%ld|%s|%s|%s|%s|%s|%s|\n", $curtime, $user->sess, - ($user->flags & USER_FLAG_AUTH ? 'A' : 'N'), - $user->name, $_SERVER['REMOTE_ADDR'], $where , $mesg)); - fclose($fp); - } -} - - - function lock_banlist() {