X-Git-Url: https://git.nubati.net/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=index.php;h=1db07ce06bc033677d817052623054d74cbd4b1d;hb=9c5af0e78797d2c5c2e3bbf2439bb7b88fc32cdf;hp=06205023096e422c38841610073ae41b00ec9219;hpb=31fc4a1397b4ffb1c172df7389ca993c52760a32;p=e-DoKo.git
diff --git a/index.php b/index.php
index 0620502..1db07ce 100644
--- a/index.php
+++ b/index.php
@@ -1,9 +1,6 @@
\n";
echo "perhaps the game has been cancled, check by login in here.";
output_footer();
+ DB_close();
exit();
}
@@ -216,6 +216,7 @@ else if(myisset("me"))
echo "Can't find you in the database, please check the url. \n";
echo "perhaps the game has been cancled, check by login in here.";
output_footer();
+ DB_close();
exit();
}
@@ -228,20 +229,11 @@ else if(myisset("me"))
$mystatus = DB_get_status_by_hash($me);
$mypos = DB_get_pos_by_hash($me);
$myhand = DB_get_handid_by_hash($me);
+ $session = DB_get_session_by_gameid($gameid);
/* get prefs and save them */
- $result = mysql_query("SELECT value from User_Prefs".
- " WHERE user_id='$myid' AND pref_key='cardset'" );
- $r = mysql_fetch_array($result,MYSQL_NUM);
- if($r)
- {
- if($r[0]=="germancards" && (time()-strtotime( "2009-12-31 23:59:59")<0) ) /* licence only valid until then */
- $PREF["cardset"]="altenburg";
- else
- $PREF["cardset"]="english";
- }
- else
- $PREF["cardset"]="english";
+ DB_get_PREF($myid);
+ /* end set pref */
/* get rule set for this game */
@@ -252,7 +244,9 @@ else if(myisset("me"))
$RULES["dullen"] = $r[2];
$RULES["schweinchen"] = $r[3];
-
+ $RULES["call"] = $r[4];
+
+
/* get some infos about the game */
$gametype = DB_get_gametype_by_gameid($gameid);
$gamestatus = DB_get_game_status_by_gameid($gameid);
@@ -272,7 +266,27 @@ else if(myisset("me"))
echo "Rules: \n";
echo "10ofhearts : ".$r[2]." \n";
echo "schweinchen: ".$r[3]." \n";
+ echo "call: ".$r[4]." \n";
echo "\n";
+
+ /* output extra division in case this game is part of a session */
+ if($session)
+ {
+ echo "
\n".
+ "This game is part of session $session: \n";
+ $hashes = DB_get_hashes_by_session($session,$myid);
+ $i = 1;
+ foreach($hashes as $hash)
+ {
+ if($hash == $me)
+ echo "$i ";
+ else
+ echo "$i ";
+ $i++;
+ }
+ echo "
\n";
+ }
+
/* does anyone have both foxes */
$GAME["schweinchen"]=0;
@@ -342,7 +356,7 @@ else if(myisset("me"))
display_card($card,$PREF["cardset"]);
echo "\n";
- check_for_sickness($me,$mycards);
+ output_check_for_sickness($me,$mycards);
/* move on to the next stage*/
DB_set_hand_status_by_hash($me,'check');
@@ -408,34 +422,35 @@ else if(myisset("me"))
" is playing solo, this game will be canceled. \n";
DB_set_sickness_by_hash($me,"nines");
}
- }
-
- echo " Ok, done with checking, please go to the next step of the setup. ";
-
- /* move on to the next stage*/
- DB_set_hand_status_by_hash($me,'poverty');
-
- /* check if everyone has reached this stage, send out email */
- $userids = DB_get_all_userid_by_gameid($gameid);
- $ok=1;
- foreach($userids as $user)
- {
- $userstat = DB_get_hand_status_by_userid_and_gameid($user,$gameid);
- if($userstat!='poverty' && $userstat!='play')
- $ok=0;
- };
- if($ok)
- foreach($userids as $user)
- {
- $To = DB_get_email_by_userid($user);
- $userhash =DB_get_hash_from_gameid_and_userid($gameid,$user);
- if($userhash!=$me)
+
+ echo " Ok, done with checking, please go to the next step of the setup. ";
+
+ /* move on to the next stage*/
+ DB_set_hand_status_by_hash($me,'poverty');
+
+ /* check if everyone has reached this stage, send out email */
+ $userids = DB_get_all_userid_by_gameid($gameid);
+ $ok = 1;
+ foreach($userids as $user)
+ {
+ $userstat = DB_get_hand_status_by_userid_and_gameid($user,$gameid);
+ if($userstat!='poverty' && $userstat!='play')
+ $ok = 0;
+ };
+ if($ok)
+ foreach($userids as $user)
{
- $message = "Everyone finish the questionary in game $gameid, please visit this link now to continue: \n".
- " ".$host."?me=".$userhash."\n\n" ;
- mymail($To,$EmailName." finished setup",$message);
- }
- };
+ $To = DB_get_email_by_userid($user);
+ $userhash = DB_get_hash_from_gameid_and_userid($gameid,$user);
+ if($userhash != $me)
+ {
+ $message = "Everyone finish the questionary in game $gameid, ".
+ "please visit this link now to continue: \n".
+ " ".$host."?me=".$userhash."\n\n" ;
+ mymail($To,$EmailName." finished setup in game $gameid",$message);
+ }
+ };
+ };
break;
@@ -449,18 +464,20 @@ else if(myisset("me"))
/* check if everyone has reached this stage */
$userids = DB_get_all_userid_by_gameid($gameid);
- $ok=1;
+ $ok = 1;
foreach($userids as $user)
{
$userstat = DB_get_hand_status_by_userid_and_gameid($user,$gameid);
if($userstat!='poverty' && $userstat!='play')
- $ok=0;
+ $ok = 0;
};
if(!$ok)
{
echo "This step can only be handled after everyone finished the last step. ".
- "Seems like this is not the case, so you need to wait a bit... you will get an email once that is the case, please use the link in that email to continue the game. ";
+ "Seems like this is not the case, so you need to wait a bit... ".
+ "you will get an email once that is the case, please use the link in ".
+ "that email to continue the game. ";
}
else
{
@@ -472,15 +489,13 @@ else if(myisset("me"))
$startplayer = DB_get_startplayer_by_gameid($gameid);
/* check for different sickness and just output a general info */
-
-
- $nines = 0;
+ $nines = 0;
$poverty = 0;
$wedding = 0;
- $solo = 0;
+ $solo = 0;
foreach($userids as $user)
{
- $name = DB_get_name_by_userid($user);
+ $name = DB_get_name_by_userid($user);
$usersick = DB_get_sickness_by_userid_and_gameid($user,$gameid);
if($usersick == 'nines')
{
@@ -507,7 +522,6 @@ else if(myisset("me"))
/* now check which sickness comes first and set the gametype to it */
- /* gamestatus == normal, => cancel game */
if($gametype == "solo")
{
/* do nothing */
@@ -535,13 +549,14 @@ else if(myisset("me"))
echo "The game has been canceled because ".DB_get_name_by_userid($nines).
" has five or more nines and nobody is playing solo.\n";
output_footer();
+ DB_close();
exit();
}
- else if($poverty==1)
+ else if($poverty==1) /* one person has poverty */
{
DB_set_gametype_by_gameid($gameid,"poverty");
$gametype = "poverty";
- $who=DB_get_sickness_by_gameid($gameid);
+ $who = DB_get_sickness_by_gameid($gameid);
if(!$who)
{
$firstsick = DB_get_sickness_by_pos_and_gameid(1,$gameid);
@@ -551,11 +566,11 @@ else if(myisset("me"))
DB_set_sickness_by_gameid($gameid,1); /* who needs to be asked first */
}
}
- else if($poverty==2)
+ else if($poverty==2) /* two people have poverty */
{
DB_set_gametype_by_gameid($gameid,"dpoverty");
$gametype = "dpoverty";
- $who=DB_get_sickness_by_gameid($gameid);
+ $who = DB_get_sickness_by_gameid($gameid);
if(!$who)
{
$firstsick = DB_get_sickness_by_pos_and_gameid(1,$gameid);
@@ -697,10 +712,11 @@ else if(myisset("me"))
{
$To = DB_get_email_by_pos_and_gameid($who,$gameid);
$userhash = DB_get_hash_from_game_and_pos($gameid,$who);
-
+ DB_set_player_by_gameid($gameid,$who);
+
$message = "Someone has poverty, it's your turn to decide, if you want to take the trump. Please visit:".
" ".$host."?me=".$userhash."\n\n" ;
- mymail($To,$EmailName." poverty",$message);
+ mymail($To,$EmailName." poverty (game $gameid)",$message);
}
/* this user is done */
@@ -776,10 +792,12 @@ else if(myisset("me"))
{
$To = DB_get_email_by_pos_and_gameid($who,$gameid);
$userhash = DB_get_hash_from_game_and_pos($gameid,$who);
-
- $message = "Someone has poverty, it's your turn to decide, if you want to take the trump. Please visit:".
- " ".$host."?me=".$userhash."\n\n" ;
- mymail($To,$EmailName." poverty",$message);
+ DB_set_player_by_gameid($gameid,$who);
+
+ $message = "Someone has poverty, it's your turn to decide, ".
+ "if you want to take the trump. Please visit:".
+ " ".$host."?me=".$userhash."\n\n" ;
+ mymail($To,$EmailName." poverty (game $gameid)",$message);
}
}
@@ -791,13 +809,13 @@ else if(myisset("me"))
DB_set_hand_status_by_hash($hash,'play');
/* set party to re, unless we had dpoverty, in that case check if we need to set re/contra*/
- $re_set=0;
+ $re_set = 0;
foreach($userids as $user)
{
- $userhash =DB_get_hash_from_gameid_and_userid($gameid,$user);
- $party=DB_get_party_by_hash($userhash);
+ $userhash = DB_get_hash_from_gameid_and_userid($gameid,$user);
+ $party = DB_get_party_by_hash($userhash);
if($party=="re")
- $re_set=1;
+ $re_set = 1;
}
if($re_set)
{
@@ -808,7 +826,7 @@ else if(myisset("me"))
{
foreach($userids as $user)
{
- $userhash =DB_get_hash_from_gameid_and_userid($gameid,$user);
+ $userhash = DB_get_hash_from_gameid_and_userid($gameid,$user);
if($userhash==$hash||$userhash==$me)
DB_set_party_by_hash($userhash,"re");
else
@@ -842,22 +860,21 @@ else if(myisset("me"))
{
foreach($userids as $user)
{
- $name = DB_get_name_by_userid($user);
+ $name = DB_get_name_by_userid($user);
$usersick = DB_get_sickness_by_userid_and_gameid($user,$gameid);
if($usersick=="poverty")
{
- $hash =DB_get_hash_from_gameid_and_userid($gameid,$user);
- $cards=DB_get_hand($hash);
- $nrtrump=count_trump($cards);
+ $hash = DB_get_hash_from_gameid_and_userid($gameid,$user);
+ $cards = DB_get_hand($hash);
+ $nrtrump = count_trump($cards);
/* count trump */
if($nrtrump<4)
echo "Player $name has $nrtrump trump. Do you want to take them?".
"yes ";
}
}
- echo "I don't want to take any trump: ".
- "yes ";
+ echo "No,way I take those trump... ";
echo "Your cards are: \n";
$mycards = DB_get_hand($me);
@@ -875,13 +892,7 @@ else if(myisset("me"))
else
echo "it's not your turn yet to decide if you want to take the trump or not.";
}
- /*
- * yes, display number of trump and user's hand, ask if he wants to take it
- * no, set whom-to-ask to next player, email next player, cancle game if no next player
- * yes -> link to new page:display all cards, ask for N return cards
- * set re/contra
- *
- */
+
};
}
/* check if no one wanted to take trump, in that case the gamesickness would be set to 5 or 50 */
@@ -903,14 +914,15 @@ else if(myisset("me"))
echo "
Game $gameid has been cancled.
";
output_footer();
+ DB_close();
exit();
}
/* check if all players are ready to play */
- $ok=1;
+ $ok = 1;
foreach($userids as $user)
if(DB_get_hand_status_by_userid_and_gameid($user,$gameid)!='play')
- $ok=0;
+ $ok = 0;
if($ok)
{
@@ -921,13 +933,15 @@ else if(myisset("me"))
$startplayer = DB_get_startplayer_by_gameid($gameid);
$email = DB_get_email_by_pos_and_gameid($startplayer,$gameid);
$hash = DB_get_hash_from_game_and_pos($gameid,$startplayer);
+ $who = DB_get_userid_by_email($email);
+ DB_set_player_by_gameid($gameid,$who);
if($hash!=$me)
{
/* email startplayer) */
$message = "It's your turn now in game $gameid.\n".
"Use this link to play a card: ".$host."?me=".$hash."\n\n" ;
- mymail($email,$EmailName."ready, set, go... ",$message);
+ mymail($email,$EmailName."ready, set, go... (game $gameid) ",$message);
}
else
echo " Please, start the game. ";
@@ -949,14 +963,14 @@ else if(myisset("me"))
*/
$gametype = DB_get_gametype_by_gameid($gameid);
- $GT = $gametype;
+ $GT = $gametype;
if($gametype=="solo")
{
$gametype = DB_get_solo_by_gameid($gameid);
- $GT = $gametype." ".$GT;
+ $GT = $gametype." ".$GT;
}
else
- $gametype="normal";
+ $gametype = "normal";
set_gametype($gametype); /* this sets the $CARDS variable */
@@ -976,7 +990,8 @@ else if(myisset("me"))
/* has the game started? No, then just wait here...*/
if($gamestatus == 'pre')
{
- echo "You finished the setup, but not everyone else finished it...so you need to wait for the others. Just wait for the an email... ";
+ echo "You finished the setup, but not everyone else finished it... ".
+ "so you need to wait for the others. Just wait for the an email... ";
break; /* not sure this works... the idea is that you can
* only play a card after everyone is ready to play */
}
@@ -987,7 +1002,9 @@ else if(myisset("me"))
" User.id, ".
" Hand.party as party, ".
" Hand.sickness as sickness, ".
- " Hand.point_call ".
+ " Hand.point_call, ".
+ " User.last_login, ".
+ " Hand.hash ".
"FROM Hand ".
"LEFT JOIN User ON User.id=Hand.user_id ".
"WHERE Hand.game_id='".$gameid."' ".
@@ -1001,31 +1018,62 @@ else if(myisset("me"))
$pos = $r[1];
$user = $r[2];
$party = $r[3];
- $sickness= $r[4];
- $call = $r[5];
-
+ $sickness = $r[4];
+ $call = $r[5];
+ $lastlogin = strtotime($r[6]);
+ $hash = $r[7];
+
$offset = DB_get_user_timezone($user);
$zone = return_timezone($offset);
date_default_timezone_set($zone);
echo " \n";
- echo " $name ";
+ if(!$debug)
+ echo " $name \n";
+ else
+ {
+ echo "$name\n";
+ }
/* add hints for poverty, wedding, solo, etc */
if($GT=="poverty" && $party=="re")
if($sickness=="poverty")
- echo "(poverty <)";
+ {
+ $userhash = DB_get_hash_from_gameid_and_userid($gameid,$user);
+ $cards = DB_get_all_hand($userhash);
+ $trumpNR = count_trump($cards);
+ if($trumpNR)
+ echo "(poverty < trump back)";
+ else
+ echo "(poverty <)";
+ }
else
echo "(poverty >)";
if($GT=="dpoverty")
if($party=="re")
if($sickness=="poverty")
- echo "(poverty A <)";
+ {
+ $userhash = DB_get_hash_from_gameid_and_userid($gameid,$user);
+ $cards = DB_get_all_hand($userhash);
+ $trumpNR = count_trump($cards);
+ if($trumpNR)
+ echo "(poverty A < trump back)";
+ else
+ echo "(poverty A <)";
+ }
else
echo "(poverty A >)";
else
if($sickness=="poverty")
- echo "(poverty B <)";
+ {
+ $userhash = DB_get_hash_from_gameid_and_userid($gameid,$user);
+ $cards = DB_get_all_hand($userhash);
+ $trumpNR = count_trump($cards);
+ if($trumpNR)
+ echo "(poverty B < trump back)";
+ else
+ echo "(poverty B <)";
+ }
else
echo "(poverty B >)";
@@ -1034,12 +1082,17 @@ else if(myisset("me"))
echo "(wedding +)";
else
echo "(wedding)";
+
+ if(ereg("solo",$GT) && $party=="re")
+ echo "($GT)";
+
/* add point calls */
if($call!=NULL)
echo " $party $call ";
echo " \n";
- echo " local time: ".date("Y-m-d H:i:s")."\n";
+ echo " local time: ".date("Y-m-d H:i:s")." \n";
+ echo " last login: ".date("Y-m-d H:i:s",$lastlogin)." \n";
echo " \n";
}
@@ -1050,7 +1103,9 @@ else if(myisset("me"))
" Hand.position as position,".
" Play.sequence as sequence, ".
" Trick.id, ".
- " Comment.comment ".
+ " Comment.comment, ".
+ " Play.create_date, ".
+ " Hand.user_id ".
"FROM Trick ".
"LEFT JOIN Play ON Trick.id=Play.trick_id ".
"LEFT JOIN Hand_Card ON Play.hand_card_id=Hand_Card.id ".
@@ -1058,8 +1113,7 @@ else if(myisset("me"))
"LEFT JOIN Comment ON Play.id=Comment.play_id ".
"WHERE Trick.game_id='".$gameid."' ".
"ORDER BY Trick.id,sequence ASC");
- $trickNR = 1;
-
+ $trickNR = 1;
$lasttrick = DB_get_max_trickid($gameid);
$play = array(); /* needed to calculate winner later */
@@ -1076,7 +1130,13 @@ else if(myisset("me"))
$seq = $r[2];
$trick = $r[3];
$comment = $r[4];
-
+ $timeplayed = strtotime($r[5]);
+ $user = $r[6];
+
+ $offset = DB_get_user_timezone($user);
+ $zone = return_timezone($offset);
+ date_default_timezone_set($zone);
+
/* check if first schweinchen has been played */
if($r[0] == 19 || $r[0] == 20 )
$GAME["schweinchen"]++;
@@ -1134,14 +1194,14 @@ else if(myisset("me"))
/* whos turn is it? */
if($seq==4)
{
- $winner = get_winner($play,$gametype); /* returns the position */
- $next = $winner;
+ $winner = get_winner($play,$gametype); /* returns the position */
+ $next = $winner;
$firstcard = ""; /* new trick, no first card */
}
else
{
$next = $pos+1;
- if($next==5) $next=1;
+ if($next==5) $next = 1;
}
/* my turn?, display cards as links, ask for comments*/
@@ -1167,25 +1227,24 @@ else if(myisset("me"))
{
$comment = "";
- /* mark card as played */
- mysql_query("UPDATE Hand_Card SET played='true' WHERE hand_id='$handid' AND card_id=".
- DB_quote_smart($card));
-
/* update Game timestamp */
DB_update_game_timestamp($gameid);
- /* check if a call was made */
- if(myisset("call120") && $_REQUEST["call120"] == "yes")
+ /* check if a call was made, must do this before we set the card status to played */
+ if(myisset("call120") && $_REQUEST["call120"] == "yes" && can_call(120,$me))
$result = mysql_query("UPDATE Hand SET point_call='120' WHERE hash='$me' ");
- if(myisset("call90") && $_REQUEST["call90"] == "yes")
+ if(myisset("call90") && $_REQUEST["call90"] == "yes" && can_call(90,$me))
$result = mysql_query("UPDATE Hand SET point_call='90' WHERE hash='$me' ");
- if(myisset("call60") && $_REQUEST["call60"] == "yes")
+ if(myisset("call60") && $_REQUEST["call60"] == "yes" && can_call(60,$me))
$result = mysql_query("UPDATE Hand SET point_call='60' WHERE hash='$me' ");
- if(myisset("call30") && $_REQUEST["call30"] == "yes")
+ if(myisset("call30") && $_REQUEST["call30"] == "yes" && can_call(30,$me))
$result = mysql_query("UPDATE Hand SET point_call='30' WHERE hash='$me' ");
- if(myisset("call0") && $_REQUEST["call0"] == "yes")
+ if(myisset("call0") && $_REQUEST["call0"] == "yes" && can_call(0,$me))
$result = mysql_query("UPDATE Hand SET point_call='0' WHERE hash='$me' ");
+ /* mark card as played */
+ mysql_query("UPDATE Hand_Card SET played='true' WHERE hand_id='$handid' AND card_id=".
+ DB_quote_smart($card));
/* check for schweinchen */
//echo "schweinchen = ".$GAME["schweinchen"]." --$card- ";
@@ -1294,29 +1353,42 @@ else if(myisset("me"))
/* email all players */
/* individual score */
- $result = mysql_query("SELECT fullname, SUM(score), Hand.party FROM Score".
- " LEFT JOIN Hand ON Hand.id=hand_id".
+ $result = mysql_query("SELECT fullname, IFNULL(SUM(score),0), Hand.party FROM Hand".
+ " LEFT JOIN Score ON Hand.id=Score.hand_id".
" LEFT JOIN User ON Hand.user_id=User.id".
" WHERE Hand.game_id=$gameid".
" GROUP BY fullname" );
- $message = "The game is over. Thanks for playing :)\n";
+ $message = "The game is over. Thanks for playing :)\n";
+ $message .= "Final score:\n";
while( $r = mysql_fetch_array($result,MYSQL_NUM))
- $message .= " FINAL SCORE: ".$r[0]."(".$r[2].") ".$r[1]."\n";
- $message .= "\nIf your not in the list above your score is zero...\n\n";
+ $message .= " ".$r[0]."(".$r[2].") ".$r[1]."\n";
- $result = mysql_query("SELECT Hand.party, SUM(score) FROM Score".
- " LEFT JOIN Hand ON Hand.id=hand_id".
+ $result = mysql_query("SELECT Hand.party, IFNULL(SUM(score),0) FROM Hand".
+ " LEFT JOIN Score ON Hand.id=Score.hand_id".
" LEFT JOIN User ON Hand.user_id=User.id".
" WHERE Hand.game_id=$gameid".
" GROUP BY Hand.party" );
- $message .= "\n";
+ $message .= "\nTotals:\n";
while( $r = mysql_fetch_array($result,MYSQL_NUM))
- $message .= " FINAL SCORE: ".$r[0]." ".$r[1]."\n";
+ $message .= " ".$r[0]." ".$r[1]."\n";
+
+ /* send out final email */
+ $all = array();
+
+ foreach($userids as $user)
+ $all[] = DB_get_email_by_userid($user);
+ $TO = implode(",",$all);
+
+ $help = "\n\n (you can use reply all on this email to reach all the players.)\n";
+ mymail($To,$EmailName."game over (game $gameid) part 1(2)",$message.$help);
foreach($userids as $user)
{
- $To = DB_get_email_by_userid($user);
- mymail($To,$EmailName."game over (game $gameid)",$message);
+ $To = DB_get_email_by_userid($user);
+ $hash = DB_get_hash_from_gameid_and_userid($gameid,$user);
+
+ $link = "Use this link to have a look at game $gameid: ".$host."?me=".$hash."\n\n" ;
+ mymail($To,$EmailName."game over (game $gameid) part 2(2)",$link);
}
}
@@ -1356,11 +1428,13 @@ else if(myisset("me"))
/* email next player */
$next_hash = DB_get_hash_from_game_and_pos($gameid,$next);
$email = DB_get_email_by_hash($next_hash);
-
+ $who = DB_get_userid_by_email($email);
+ DB_set_player_by_gameid($gameid,$who);
+
$message = "A card has been played in game $gameid.\n\n".
"It's your turn now.\n".
"Use this link to play a card: ".$host."?me=".$next_hash."\n\n" ;
- mymail($email,$EmailName."a card has been played",$message);
+ mymail($email,$EmailName."a card has been played in game $gameid",$message);
}
}
else
@@ -1410,7 +1484,9 @@ else if(myisset("me"))
" ";
if( can_call(0,$me) )
echo " 0:".
- " ";
+ " ".
+ " no call:".
+ " ";
echo " \nA short comments:\n";
echo "\n";
@@ -1430,10 +1506,28 @@ else if(myisset("me"))
echo "Your cards were: \n";
foreach($oldcards as $card)
display_card($card,$PREF["cardset"]);
+
+ $userids = DB_get_all_userid_by_gameid($gameid);
+ foreach($userids as $user)
+ {
+ $userhash = DB_get_hash_from_gameid_and_userid($gameid,$user);
+
+ if($userhash!=$me)
+ {
+ echo " ";
+
+ $name = DB_get_name_by_userid($user);
+ $oldcards = DB_get_all_hand($userhash);
+ $oldcards = mysort($oldcards,$gametype);
+ echo "$name's cards were: \n";
+ foreach($oldcards as $card)
+ display_card($card,$PREF["cardset"]);
+ }
+ }
}
echo "\n";
- /* check if we need to set status to 'gameover' is done during playing of the card */
+ /* if the game is over do some extra stuff, therefore exit the swtich statement if we are still playing*/
if($mystatus=='play')
break;
/* the following happens only when the gamestatus is 'gameover' */
@@ -1446,29 +1540,34 @@ else if(myisset("me"))
{
echo "the game is over now... \n";
- $result = mysql_query("SELECT fullname, SUM(score), Hand.party FROM Score".
- " LEFT JOIN Hand ON Hand.id=hand_id".
+ $result = mysql_query("SELECT fullname, IFNULL(SUM(score),0), Hand.party FROM Hand".
+ " LEFT JOIN Score ON Hand.id=Score.hand_id".
" LEFT JOIN User ON Hand.user_id=User.id".
" WHERE Hand.game_id=$gameid".
" GROUP BY fullname" );
+ echo "Final Score: \n".
+ "
\n";;
while( $r = mysql_fetch_array($result,MYSQL_NUM))
- echo " FINAL SCORE: ".$r[0]."(".$r[2].") ".$r[1]." ";
-
- $result = mysql_query("SELECT Hand.party, SUM(score) FROM Score".
- " LEFT JOIN Hand ON Hand.id=hand_id".
+ echo "
".$r[0]."
(".$r[2].")
".$r[1]."
";
+ echo "
\n";
+
+ $result = mysql_query("SELECT Hand.party, IFNULL(SUM(score),0) FROM Hand".
+ " LEFT JOIN Score ON Hand.id=Score.hand_id".
" LEFT JOIN User ON Hand.user_id=User.id".
" WHERE Hand.game_id=$gameid".
" GROUP BY Hand.party" );
+ echo "Totals: \n".
+ "
\n";
$session = DB_get_session_by_gameid($gameid);
$result = mysql_query("SELECT id,create_date FROM Game".
" WHERE session=$session".
" ORDER BY create_date DESC".
" LIMIT 1");
- $r=-1;
+ $r = -1;
if($result)
$r = mysql_fetch_array($result,MYSQL_NUM);
@@ -1484,6 +1583,7 @@ else if(myisset("me"))
echo "error in testing the status";
}
output_footer();
+ DB_close();
exit();
}
/* user status page */
@@ -1492,14 +1592,15 @@ else if(myisset("me"))
/* test id and password, should really be done in one step */
$email = $_REQUEST["email"];
$password = $_REQUEST["password"];
+
if(myisset("forgot"))
{
- $ok=1;
+ $ok = 1;
$uid = DB_get_userid_by_email($email);
if(!$uid)
- $ok=0;
+ $ok = 0;
if($ok)
{
@@ -1521,13 +1622,15 @@ else if(myisset("me"))
if(strlen($password)!=32)
$password = md5($password);
- $ok=1;
+ $ok = 1;
$uid = DB_get_userid_by_email_and_password($email,$password);
if(!$uid)
- $ok=0;
+ $ok = 0;
if($ok)
{
+ DB_get_PREF($uid);
+
if(myisset("setpref"))
{
$setpref=$_REQUEST["setpref"];
@@ -1562,13 +1665,48 @@ else if(myisset("me"))
DB_update_user_timestamp($uid);
- echo "
these are the games you are playing in: \n";
- $result = mysql_query("SELECT Hand.hash,Hand.game_id,Game.mod_date from Hand".
+ echo "
These are your games that haven't started yet: \n";
+ $result = mysql_query("SELECT Hand.hash,Hand.game_id,Game.mod_date,Game.player from Hand".
" LEFT JOIN Game On Hand.game_id=Game.id".
- " WHERE Hand.user_id='$uid' AND Game.status<>'gameover'" );
+ " WHERE Hand.user_id='$uid' AND Game.status='pre'" );
while( $r = mysql_fetch_array($result,MYSQL_NUM))
{
echo "game #".$r[1]." ";
+ if($r[3])
+ {
+ if($r[3]==$uid)
+ echo "(it's your turn)\n";
+ else
+ {
+ $name = DB_get_name_by_userid($r[3]);
+ echo "(it's $name's turn)\n";
+ };
+ }
+ if(time()-strtotime($r[2]) > 60*60*24*30)
+ echo " The game has been running for over a month.".
+ " Do you want to cancel it? yes".
+ " (clicking here is final and can't be restored)";
+ echo " ";
+ }
+ echo "
\n";
+
+ echo "
These are the games you are playing in: \n";
+ $result = mysql_query("SELECT Hand.hash,Hand.game_id,Game.mod_date,Game.player from Hand".
+ " LEFT JOIN Game On Hand.game_id=Game.id".
+ " WHERE Hand.user_id='$uid' AND Game.status='play'" );
+ while( $r = mysql_fetch_array($result,MYSQL_NUM))
+ {
+ echo "game #".$r[1]." ";
+ if($r[3])
+ {
+ if($r[3]==$uid)
+ echo "(it's your turn)\n";
+ else
+ {
+ $name = DB_get_name_by_userid($r[3]);
+ echo "(it's $name's turn)\n";
+ };
+ }
if(time()-strtotime($r[2]) > 60*60*24*30)
echo " The game has been running for over a month.".
" Do you want to cancel it? yes".
@@ -1578,16 +1716,16 @@ else if(myisset("me"))
echo "
\n";
- echo "
and these are your games that are already done: Game: \n";
+ echo "
And these are your games that are already done: Game: \n";
+ $output = array();
$result = mysql_query("SELECT hash,game_id from Hand WHERE user_id='$uid' AND status='gameover'" );
while( $r = mysql_fetch_array($result,MYSQL_NUM))
- echo "#".$r[1]." , ";
- echo "