X-Git-Url: https://git.nubati.net/cgi-bin/gitweb.cgi?p=e-DoKo.git;a=blobdiff_plain;f=include%2Ffunctions.php;h=044c6c718c286e3c97cf5b358ac89d34ba337d1c;hp=f693abc38ad018b83d82e027d919a59b40fac388;hb=0bb6975e8b766bfe5dfd150285d8dc06b3a2832d;hpb=c3f011c01dbab0d02321859a03d91dc88a7b560b
diff --git a/include/functions.php b/include/functions.php
index f693abc..044c6c7 100644
--- a/include/functions.php
+++ b/include/functions.php
@@ -329,17 +329,22 @@ function check_wedding($cards)
return 0;
}
-function count_trump($cards)
+function count_trump($cards,$status='pregame')
{
global $RULES;
$trump = 0;
- /* count each trump, including the foxes */
+ /* count each trump, including the foxes, since this is used to determine poverty status */
foreach($cards as $c)
if( (int)($c) <27)
$trump++;
+ /* In case we really want to know the amount of trump, we can use the status variable.
+ * This is needed for example to figure out what icon to display on the table in case of
+ * trump given back in poverty */
+ if($status=='all') return $trump;
+
/* normally foxes don't count as trump, so we substract them here
* in case someone has schweinchen, one or two of them should count as trump
* though, so we need to add one trump for those cases */
@@ -727,7 +732,7 @@ function can_call($what,$hash)
function display_table ()
{
- global $gameid, $GT, $debug,$INDEX,$defaulttimezone;
+ global $gameid, $GT, $debug,$INDEX,$defaulttimezone,$session;
global $RULES,$GAME,$gametype;
$result = DB_query("SELECT User.fullname as name,".
@@ -777,7 +782,7 @@ function display_table ()
{
$userhash = DB_get_hash_from_gameid_and_userid($gameid,$user);
$cards = DB_get_all_hand($userhash);
- $trumpNR = count_trump($cards);
+ $trumpNR = count_trump($cards,'all');
if($trumpNR)
echo " ";
else
@@ -792,7 +797,7 @@ function display_table ()
{
$userhash = DB_get_hash_from_gameid_and_userid($gameid,$user);
$cards = DB_get_all_hand($userhash);
- $trumpNR = count_trump($cards);
+ $trumpNR = count_trump($cards,'all');
if($trumpNR)
echo " ";
else
@@ -805,7 +810,7 @@ function display_table ()
{
$userhash = DB_get_hash_from_gameid_and_userid($gameid,$user);
$cards = DB_get_all_hand($userhash);
- $trumpNR = count_trump($cards);
+ $trumpNR = count_trump($cards,'all');
if($trumpNR)
echo " ";
else
@@ -863,8 +868,8 @@ function display_table ()
}
echo "
\n";
- echo " local time\n";
- echo " last login\n";
+ echo " time info\n";
echo " \n";
}
@@ -939,11 +944,12 @@ function generate_score_table($session)
foreach($gameids as $gameid)
{
$re_score = DB_get_score_by_gameid($gameid);
+ $gametype = DB_get_gametype_by_gameid($gameid);
foreach($player as $id=>$points)
{
$party = DB_get_party_by_gameid_and_userid($gameid,$id);
if($party == "re")
- if(DB_get_gametype_by_gameid($gameid)=="solo")
+ if($gametype=="solo")
$player[$id] += 3*$re_score;
else
$player[$id] += $re_score;
@@ -953,7 +959,7 @@ function generate_score_table($session)
$score[$i]['gameid'] = $gameid ;
$score[$i]['players'] = $player;
$score[$i]['points'] = abs($re_score);
- $score[$i]['solo'] = (DB_get_gametype_by_gameid($gameid)=="solo");
+ $score[$i]['solo'] = ($gametype=="solo");
$i++;
}
@@ -982,12 +988,14 @@ function generate_global_score_table()
foreach($gameids as $gameid)
{
$re_score = DB_get_score_by_gameid($gameid);
+ $gametype = DB_get_gametype_by_gameid($gameid);
+
/* TODO: this shouldn't loop over all players, just the 4 players that are in the game */
foreach($player as $key=>$pl)
{
$party = DB_get_party_by_gameid_and_userid($gameid,$pl['id']);
if($party == "re")
- if(DB_get_gametype_by_gameid($gameid)=="solo")
+ if($gametype=="solo")
$player[$key]['points'] += 3*$re_score;
else
$player[$key]['points'] += $re_score;
@@ -1070,39 +1078,60 @@ function format_score_table_html($score,$userid)
if(sizeof($score)==0)
return "";
- $output = "
No | "; + $header = ""; + $header.= " \n|||||||
---|---|---|---|---|---|---|---|
No | "; + foreach($score[0]['players'] as $id=>$points) + { + $name = DB_get_name('userid',$id); /*TODO*/ + $header.= "".substr($name,0,2)." | "; + } + $header.="P | \n|||||
No | "; foreach($score[0]['players'] as $id=>$points) { $name = DB_get_name('userid',$id); /*TODO*/ - $output.= "".substr($name,0,2)." | "; + $footer.= "".substr($name,0,2)." | "; } - $output.="P | \nP | \n \n \n"; + /* body */ + $body = ""; + $body.= " \n"; $i=0; foreach($score as $game) { $i++; - $output.="|||
$i | "; + $body.="$i | "; else - $output.="$i | "; + $body.="$i | "; foreach($game['players'] as $id=>$points) - $output.="".$points." | "; - $output.="".$game['points']; + $body.=" | ".$points." | "; + $body.="".$game['points']; /* check for solo */ if($game['solo']) - $output.= " S"; - $output.=" |