X-Git-Url: http://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2Fbriskin5%2Fstat-day.php;h=11289ccca44490926982152f1894f3142f3dc3d9;hb=ef7ec88c07a56a9ef3a24c63a7e64ddfcdc830ad;hp=71e8fc8eaa24400f356ddcfabd6f559f5182b948;hpb=6f7adfc43f2ce4ad8dcf616a58a8edaf3d6c5c42;p=brisk.git diff --git a/web/briskin5/stat-day.php b/web/briskin5/stat-day.php index 71e8fc8..11289cc 100644 --- a/web/briskin5/stat-day.php +++ b/web/briskin5/stat-day.php @@ -238,6 +238,7 @@ function main_pgsql($from, $to) $ret = FALSE; $fpexp = FALSE; + // log_crit("stat-day: BEGIN"); do { if (($fpexp = @fopen(LEGAL_PATH."/explain.log", 'w')) == FALSE) { log_crit("stat-day: open explain failed"); @@ -267,6 +268,7 @@ function main_pgsql($from, $to) printf("Number of tournaments: %d\n", $trn_n); for ($t = 0 ; $t < $trn_n ; $t++) { + // log_crit("stat-day: LOOP t"); $trn_obj = pg_fetch_object($trn_pg, $t); $tmt_sql = sprintf("SELECT m.code AS code, m.mazzo_next as minus_one_is_old FROM %sbin5_matches AS m, %sbin5_games AS g, %sbin5_tournaments as t WHERE t.code = m.tcode AND m.code = g.mcode AND t.code = %d AND g.tstamp >= '%s' AND g.tstamp < '%s' GROUP BY m.code, minus_one_is_old ORDER BY m.code, minus_one_is_old DESC;", @@ -294,11 +296,12 @@ function main_pgsql($from, $to) fprintf($fpexp, "

%s

", $mlang_stat_day[$trn_obj->name][$G_lang]); for ($m = 0 ; $m < $tmt_n ; $m++) { + // log_crit("stat-day: LOOP m"); fprintf($fpexp, "
"); $tmt_obj = pg_fetch_object($tmt_pg, $m); if (($users = $bdb->users_get($tmt_obj->code, TRUE, ($tmt_obj->minus_one_is_old > -1))) == FALSE) { - log_crit("%s: users_get failed", __FUNCTION__); + log_crit(sprintf("stat_day: users_get failed %d", $tmt_obj->code)); break; } @@ -310,6 +313,7 @@ function main_pgsql($from, $to) } for ($u = 0 ; $u < count($users) ; $u++) { + // log_crit("stat-day: LOOP u"); if ($u == 0) { fprintf($fpexp, "

Codice: %d (%s - %s), Tavolo: %s

\n", $tmt_obj->code, $users[$u]['first'], $users[$u]['last'], $users[$u]['tidx']); fprintf($fpexp, "\n"); @@ -401,7 +405,7 @@ function main_pgsql($from, $to) fprintf($fpexp, "<%s class='%s'>%d", ($tmt_obj->minus_one_is_old == -1 ? "td" : "th"), - $cla_nam, $pts, + $cla_nam, pow(2,$gam_obj->mult) * $pts, ($tmt_obj->minus_one_is_old == -1 ? "td" : "th")); } if ($tmt_obj->minus_one_is_old != -1) { @@ -422,8 +426,15 @@ function main_pgsql($from, $to) // LISTA DEI TOTALI fprintf($fpexp, ""); for ($u = 0 ; $u < BIN5_PLAYERS_N ; $u++) { + // NOTE: this part must be revisited when we move to multiple game rules + // probably removing the sum and adding another nested iteration on games. $tot_sql = sprintf(" -SELECT SUM(p.pts) AS pts FROM %sbin5_matches AS m, %sbin5_games AS g, %sbin5_points AS p, %susers AS u WHERE m.code = g.mcode AND g.code = p.gcode AND u.code = p.ucode AND m.code = %d AND u.code = %d", $G_dbpfx, $G_dbpfx, $G_dbpfx, $G_dbpfx, +SELECT sum(p.pts * (2^g.mult)) AS pts + FROM %sbin5_matches AS m, %sbin5_games AS g, %sbin5_points AS p, %susers AS u + WHERE m.code = g.mcode AND g.code = p.gcode AND u.code = p.ucode + AND ( (u.type & (CAST (X'00ff0000' as integer))) <> (CAST (X'00800000' as integer)) ) + AND m.code = %d AND u.code = %d", + $G_dbpfx, $G_dbpfx, $G_dbpfx, $G_dbpfx, $tmt_obj->code, $users[$u]['code']); if (($tot_pg = pg_query($bdb->dbconn->db(), $tot_sql)) == FALSE ) { break; @@ -436,11 +447,15 @@ SELECT SUM(p.pts) AS pts FROM %sbin5_matches AS m, %sbin5_games AS g, %sbin5_poi } fprintf($fpexp, "
\n"); } - if ($m < $tmt_n) + if ($m < $tmt_n) { + log_crit("stat-day: m < tmt_n"); break; + } } - if ($t < $trn_n) + if ($t < $trn_n) { + log_crit("stat-day: t < trn_n"); break; + } $ret = (TRUE); } while (0); @@ -454,8 +469,6 @@ SELECT SUM(p.pts) AS pts FROM %sbin5_matches AS m, %sbin5_games AS g, %sbin5_poi return ($ret); } -// echo "QUIr\n"; -// exit(123); function main() { GLOBAL $G_lang, $G_dbasetype, $G_alarm_passwd, $pazz, $from, $to;