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=5be9eac4d1b7f26b69581634c2bbe25fff01d25c;hpb=ee01d2e98b1e7ff67640d27f88b6467ed6e87be4;p=brisk.git diff --git a/web/Obj/brisk.phh b/web/Obj/brisk.phh index 5be9eac..34e08b0 100644 --- a/web/Obj/brisk.phh +++ b/web/Obj/brisk.phh @@ -292,6 +292,11 @@ function eschtml($s) return htmlentities($s); } +function esclfhtml($s) +{ + return str_replace("\n", "
\n", htmlentities($s)); +} + function langtolng($lang) { @@ -596,6 +601,7 @@ 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 @@ -635,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; @@ -671,6 +678,7 @@ class User { { GLOBAL $G_false; + $this->code = $from->code; $this->name = $from->name; $this->sess = $from->sess; $this->ip = $from->ip; @@ -732,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; @@ -774,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."]"); @@ -925,7 +938,7 @@ class Room { function garbage_manager($force) { - GLOBAL $G_lang, $mlang_brisk; + GLOBAL $G_lang, $mlang_brisk, $G_base; $ismod = FALSE; @@ -936,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++) { @@ -1425,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 @@ -1614,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); } @@ -1770,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]; @@ -1867,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; @@ -1878,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); @@ -1890,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; @@ -1905,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 ? */ @@ -1951,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) { @@ -1993,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)) { @@ -2052,7 +2069,7 @@ class Room { $real_idx = $idx; if ($login_exists) $idx = -($idx + 1); - log_main(sprintf("TROVATO LIBERO A [%d] sess [%s] name [%s] count [%d] [%s]", $idx, $sess, $name_new, count($this->user),$this->user[$real_idx]->name)); + 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); @@ -2543,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() {