some more design changes
[e-DoKo.git] / index.php
index 4e890fa60e4da03ccdcd4dbd12e2b20341ba8d56..de9d3820179a8ab386ab40ae11bc5bb35171f716 100644 (file)
--- a/index.php
+++ b/index.php
@@ -16,7 +16,7 @@
 
 $host  = "http://doko.nubati.net/index.php";
 $wiki  = "http://wiki.nubati.net/index.php?title=EmailDoko";
-$debug = 1;
+$debug = 0;
 
 /*
  * end config
@@ -30,7 +30,7 @@ function mymail($To,$Subject,$message)
 
   if($debug)
     {
-      str_replace("\n","<br />",$message);
+      $message = str_replace("\n","<br />",$message);
       echo "<br />To: $To<br />Subject: $Subject <br />$message<br />\n";
     }
   else
@@ -314,18 +314,18 @@ function card_value($card)
 function display_card($card)
 {
   if( $card/2 - (int)($card/2) == 0.5)
-    echo "<img src=\"cards/".$card.".png\" height=\"100\" alt=\"".card_to_name($card)."\" />\n";
+    echo "<img src=\"cards/".$card.".png\"  alt=\"".card_to_name($card)."\" />\n";
   else
-    echo "<img src=\"cards/".($card-1).".png\" height=\"100\" alt=\"".card_to_name($card-1)."\" />\n";
+    echo "<img src=\"cards/".($card-1).".png\"  alt=\"".card_to_name($card-1)."\" />\n";
   return;
 }
 
 function display_link_card($card,$me)
 {
   if( $card/2 - (int)($card/2) == 0.5)
-    echo "<a href=\"index.php?me=$me&amp;card=$card\"><img src=\"cards/".$card.".png\" height=\"100\" alt=\"".card_to_name($card)."\" /></a>\n";
+    echo "<a href=\"index.php?me=$me&amp;card=$card\"><img src=\"cards/".$card.".png\"  alt=\"".card_to_name($card)."\" /></a>\n";
   else
-    echo "<a href=\"index.php?me=$me&amp;card=$card\"><img src=\"cards/".($card-1).".png\" height=\"100\" alt=\"".card_to_name($card-1)."\" /></a>\n";
+    echo "<a href=\"index.php?me=$me&amp;card=$card\"><img src=\"cards/".($card-1).".png\"  alt=\"".card_to_name($card-1)."\" /></a>\n";
   return;
 }
 
@@ -392,9 +392,9 @@ function save_status()
   return;
 }
 
-echo "<p>If you find bugs, please list them in the <a href=\"".$wiki."\">wiki</a></p>\n";
+echo "<p>If you find bugs, please list them in the <a href=\"".$wiki."\">wiki</a>.</p>\n";
        
-echo "<p> Cards that have a <span class=\"comment\"> green </span> background have a comment, which you can access by hovering over the card with your mouse ;)</p>\n";
+echo "<p> Names that are underlined have a comment, which you can access by hovering over the name with your mouse ;)</p>\n";
 
 $history=array();
 
@@ -443,10 +443,10 @@ if( isset($_REQUEST["PlayerA"]) &&
       "If you want to join this game, please follow this link:\n\n".
       " ".$host."?a=";
     
-    mymail($EmailA,"Invite for a game of DoKo","Hello $PlayerA,\n".$message.$hashA);
-    mymail($EmailB,"Invite for a game of DoKo","Hello $PlayerB,\n".$message.$hashB);
-    mymail($EmailC,"Invite for a game of DoKo","Hello $PlayerC,\n".$message.$hashC);
-    mymail($EmailD,"Invite for a game of DoKo","Hello $PlayerD,\n".$message.$hashD);
+    mymail($EmailA,"You are invited to a game of DoKo","Hello $PlayerA,\n".$message.$hashA);
+    mymail($EmailB,"You are invited to a game of DoKo","Hello $PlayerB,\n".$message.$hashB);
+    mymail($EmailC,"You are invited to a game of DoKo","Hello $PlayerC,\n".$message.$hashC);
+    mymail($EmailD,"You are invited to a game of DoKo","Hello $PlayerD,\n".$message.$hashD);
     
     /* read in random.txt */
     if(file_exists("random.txt"))
@@ -489,6 +489,11 @@ if( isset($_REQUEST["PlayerA"]) &&
     else
       echo "can't open file for writing";
   };
+/* reread file */
+if(file_exists("status.txt"))
+  $lines = file("status.txt");
+ else
+   die("no file");
 
 /* test if a game is running, else output everything for a new game */
 if(sizeof($lines)<2)
@@ -607,7 +612,7 @@ if(sizeof($lines)<2)
                   }
                 echo "<br />\n";   
  ?>
- <p>aehm... at the moment please just answer everything with no, still need to implement this</p>                
+ <p>aehm... at the moment poverty is not implented. so I guess you need to play a normal game, even if you have less than 3 turmp :(...sorry</p>                 
  <form action="index.php" method="post">
    
    do you want to play solo? 
@@ -723,8 +728,8 @@ if(sizeof($lines)<2)
                 $player[$c]["option"].="N";
               }
             
-            $message = "you're in. once everyone has filled out the form,".
-              "the game will start and you'll get an eamil on your turn\n";
+            $message = "You're in. Once everyone has filled out the form, ".
+              "the game will start and you'll get an eamil on your turn.\n";
             mymail($player[$c]["email"],"[DoKo-debug] the game will start soon",$message); 
 
             $player[$c]["option"].="s";
@@ -810,13 +815,14 @@ if(sizeof($lines)<2)
             /* show history */
             foreach($history as $play) 
               {
-                echo "<br />\n";
-                
                 $trick = explode(":",$play);
                 
                 $last=-2;
                 /* found old trick, display it */
-                echo "<div class=\"trick\">\n";
+                if(sizeof($trick)==5)
+                  echo "<div class=\"oldtrick background".$play[0]."\"><div class=\"table\">\n";
+                else
+                  echo "<div class=\"trick back".$play[0]."\"><div class=\"table\">\n";
                 for($i=0;$i<sizeof($trick)-1;$i++)
                   {
                     $card = $trick[$i];
@@ -824,20 +830,25 @@ if(sizeof($lines)<2)
                       {
                         $tmp = explode("->",$card);
 
+                        echo "<div class=\"card".$tmp[0]."\">";
+
                         if(strlen($tmp[2])>0)
-                          echo "<div class=\"card comment\">";
+                          echo "<span class=\"comment\">";
                         else
-                          echo "<div class=\"card\">";
-                        echo $player[$hash[$tmp[0]]]["name"]." played <br />";
-                        display_card($tmp[1]);
+                          echo " <span>";
+                        echo $player[$hash[$tmp[0]]]["name"];
                         /* check for comment */
                         if(strlen($tmp[2])>0)
-                          echo "<div class=\"comment\">".$tmp[2]."</div>\n";
+                          echo " <span>".$tmp[2]."</span>";
+                        echo " </span>\n  ";
+       
+                        display_card($tmp[1]);
+
                         $last = $tmp[0];
                         echo "</div>\n";
                       }
                   }
-                echo "</div>\n";
+                echo "</div></div>\n";
               }
             
             /* figure out who needs to play next */
@@ -846,7 +857,7 @@ if(sizeof($lines)<2)
               $next -= 4 ;
             if($last<0)
               {
-                $next=$history[sizeof($history)-1][0];
+                $next = $history[sizeof($history)-1][0];
               }
             
             /* are we trying to play a card? */
@@ -888,7 +899,7 @@ if(sizeof($lines)<2)
                         save_status();
                         
                         echo "<div class=\"card\">";
-                        echo " you played <br />";
+                        echo " you played  <br />";
                         display_card($card);
                         echo "</div>\n";
 
@@ -901,29 +912,36 @@ if(sizeof($lines)<2)
 </form>
 <?php
                         /* send out email to players who want/need to get informed */
-                        for($i=0;$i<4;$i++)
-                          {
-                            $mynext=$next+1; if($mynext>3)$mynext-=4;
-                            if((ereg("c",$player[$hash[$i]]["option"]) || $i==$mynext) && $hash[$i]!=$me)
-                              {
-                                $message = " Hello ".$player[$hash[$i]]["name"].",\n\n";
-                                
-                                if($i==$mynext)
-                                  {
-                                    $message .= "it's your turn  now.\n".
-                                      "Use this link to play a card: ".$host."?me=".$hash[$i]."\n\n" ;
-                                  }
-                                $message .= $player[$me]["name"]." has played the following card ".card_to_name($card)."\n";
-                                
-                                if($game["solo-who"]>=0)
-                                  $message.= $player[$hash[$game["solo-who"]]]["name"]." is playing a ".$game["solo-what"]." solo!\n";
-                                
-                                mymail($player[$hash[$i]]["email"],"[DoKo-debug] a card has been played",$message);
-                                
-                                if($debug)
-                                  echo "<a href=\"index.php?me=".$hash[$mynext]."\"> next player </a> <br />\n";
-                              }
-                          }
+                         /* check if we are in a trick, if trick is done, this needs to be handelt in the
+                         * who-won-the-trick section further down */
+                         $tmp = explode(":",$history[sizeof($history)-1]);
+                        if(sizeof($tmp)<5)
+                          for($i=0;$i<4;$i++)
+                            {
+                              $mynext = $next+1; if($mynext>3)$mynext-=4;
+                              
+                              if((ereg("c",$player[$hash[$i]]["option"]) || $i==$mynext) && $hash[$i]!=$me)
+                                {
+                                  $message = " Hello ".$player[$hash[$i]]["name"].",\n\n";
+                                  
+                                  if($i==$mynext)
+                                    {
+                                      $message .= "it's your turn  now.\n".
+                                        "Use this link to play a card: ".$host."?me=".$hash[$i]."\n\n" ;
+                                    }
+                                  $message .= $player[$me]["name"]." has played the following card ".
+                                    card_to_name($card)."\n";
+                                  
+                                  if($game["solo-who"]>=0)
+                                    $message .= $player[$hash[$game["solo-who"]]]["name"]." is playing a ".
+                                      $game["solo-what"]." solo!\n";
+                                  
+                                  mymail($player[$hash[$i]]["email"],"[DoKo-debug] a card has been played",$message);
+                                  
+                                  if($debug)
+                                    echo "<a href=\"index.php?me=".$hash[$mynext]."\"> next player </a> <br />\n";
+                                }
+                            }
                       }
                     else
                       echo "seems like you don't have that card<br />\n";
@@ -947,10 +965,41 @@ if(sizeof($lines)<2)
               }
             else if(isset($_REQUEST["win"]) && strlen($history[sizeof($history)-1])>3)
               {
-                $win=$_REQUEST["win"];
-                $history[]=$win.":\n";
+                $win       = $_REQUEST["win"];
+                
+                if(strlen($player[$hash[0]]["cards"]))
+                   $history[] = $win.":\n";
+
+                /* email the player who needs to move next*/
+                for($i=0;$i<4;$i++)
+                  {
+                    if((ereg("c",$player[$hash[$i]]["option"]) || $i==$win) )
+                      {
+                        $message = " Hello ".$player[$hash[$i]]["name"].",\n\n";
+                        
+                        if($i == $win)
+                          {
+                            $message .= "You won the last trick,it's your turn  now.\n".
+                              "Use this link to play a card: ".$host."?me=".$hash[$i]."\n\n" ;
+                          }
+                        else
+                          $message .= $player[$hash[$win]]["name"]." has won the last trick\n".
+                            "Use this link to look at the game: ".$host."?me=".$hash[$i]."\n\n" ;
+                        
+                        if($game["solo-who"]>=0)
+                          $message.= $player[$hash[$game["solo-who"]]]["name"]." is playing a ".
+                            $game["solo-what"]." solo!\n";
+                        
+                        mymail($player[$hash[$i]]["email"],"[DoKo-debug] a card has been played",$message);
+                        
+                        if($debug)
+                          echo "<a href=\"index.php?me=".$hash[$win]."\"> next player </a> <br />\n";
+                      }
+                  }
+                
+                
                 /* count points of the last trick */
-                $points=0;
+                $points = 0;
 
                 $tmp = explode(":",$history[sizeof($history)-2]);
                 for($i=0;$i<4;$i++)
@@ -959,7 +1008,7 @@ if(sizeof($lines)<2)
                     $c = $tmp2[1];
                     $points += card_value($c);
                   }
-                $player[$hash[$win]]["points"]+=$points;
+                $player[$hash[$win]]["points"] += $points;
                 echo "<br />\n ".$player[$hash[$win]]["name"]." won: $points Points <br />\n";
                 
                 save_status();
@@ -968,8 +1017,8 @@ if(sizeof($lines)<2)
 
             $tmp = explode(":",$history[sizeof($history)-1]);
 
-            /* check last history entry: end of a trick? ask who won it */
-            if(sizeof($tmp)==5)
+            /* check last history entry: end of a trick? ask who won it, unless it was the last trick */
+            if(sizeof($tmp)==5 && strlen($player[$hash[0]]["cards"]))
               {
                 ?>
 <form action="index.php" method="post">
@@ -1005,7 +1054,6 @@ who won?
                 echo "<br />\n";
               } /* end check for winner */
             
-            echo "<br clear=\"both\">";
             /* do we still have cards? display them */
             if(strlen(trim($player[$me]["cards"]))>0 )
               {
@@ -1016,7 +1064,7 @@ who won?
                 
                 echo "<p class=\"mycards\">\n";
                 /* is it our turn? */
-                if($hash[$next]==$me && !isset($_REQUEST["card"])) 
+                if($hash[$next]==$me && !isset($_REQUEST["card"]) && !isset($_REQUEST["win"])
                   {
                     echo "ITS YOUR TURN   <br />\n";
                     echo "your cards are: <br />\n";