BUGFIX: better default for selecting players in a new game
[e-DoKo.git] / include / output.php
index dd2e5355fcf04e357cc4ba9f63c3e8c665d1cfbb..9564b823cbc121f0a7c896587a7cba9eb0e1e188 100644 (file)
@@ -28,6 +28,10 @@ function output_ask_for_new_game($playerA,$playerB,$playerC,$playerD,$oldgameid)
 
 function output_form_for_new_game($names)
 {
+  $copy_names = $names; /* local copy, so that we can delete names from it
+                        * after we selected them to make sure that each name
+                        * only shows up once
+                        */
 ?>
   <form action="index.php?action=new" method="post">
     <h2> Select players (Remember: you need to be one of the players) </h2>
@@ -35,13 +39,27 @@ function output_form_for_new_game($names)
    <div class="table">
      <img class="table" src="pics/table.png" alt="table" />
 <?php
-    /* ask for player names */
-    $i=0;
+  /* ask for player names */
+  $i=0;
+  /* delete players name, since he will be on position D anyway */
+  unset($copy_names[array_search($_SESSION["name"],$copy_names)]);
+
+  srand((float) microtime() * 10000000);
   foreach( array("PlayerA","PlayerB","PlayerC","PlayerD") as $player)
     {
-      srand((float) microtime() * 10000000);
-      $randkey = array_rand($names);
-      $rand = $names[$randkey];
+      /* pick 3 names at random and put the players name on position D*/
+      if($i<3)
+       {
+         $randkey = array_rand($copy_names);
+         $rand = $copy_names[$randkey];
+         /* delete this name from the list of possible names */
+         unset($copy_names[$randkey]);
+       }
+      else
+       {
+         $rand = $_SESSION["name"];
+       }
+
       echo  "     <div class=\"table".$i."\">\n";
       $i++;
       echo "       <select name=\"$player\" size=\"1\">  \n";
@@ -75,8 +93,8 @@ function output_form_for_new_game($names)
         </li>
         <li> <input type="radio" name="schweinchen" value="second" />
              first one normal, second one becomes highest (call during the game) </li>
-        <li> <input type="radio" name="schweinchen" value="secondaftercall"  disabled="disabled" />
-             second one become highest only in case re/contra was announced (not working yet)
+        <li> <input type="radio" name="schweinchen" value="secondaftercall" />
+             second one become highest only in case re/contra was announced
         </li>
       </ul>
       <p> Call Re/Contra, etc.: </p>
@@ -221,11 +239,18 @@ function output_check_for_sickness($me,$mycards)
   return;
 }
 
-function output_form_calls($me)
+function output_form_calls($me,$myparty)
 {
   if( can_call(120,$me) )
-    echo " re/contra (120):".
-      " <input type=\"radio\" name=\"call\" value=\"120\" /> <br />";
+    {
+    if($myparty=='re')
+      echo "re (120):";
+    else if ($myparty=='contra')
+      echo "contra (120):";
+    else
+      echo " re/contra (120):";
+    echo " <input type=\"radio\" name=\"call\" value=\"120\" /> <br />";
+    }
   if( can_call(90,$me) )
     echo " 90:".
       " <input type=\"radio\" name=\"call\" value=\"90\" /> <br />";
@@ -270,48 +295,12 @@ function output_header()
      <title>e-Doko</title>
      <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type" />
      <link rel="shortcut icon" type="image/x-icon" href="pics/edoko-favicon.png" />
-     <link rel="stylesheet" type="text/css" href="css/standard013.css" />
-     <script type="text/javascript">
-       var current=0;
-       function hl(num) {
-         if(document.getElementById){
-          var i;
-          for(i=0;i<14;i++){
-            if(document.getElementById("trick"+i))
-              document.getElementById("trick"+i).style.display = 'none';
-          }
-          document.getElementById("trick"+num).style.display = 'block';
-          current=num;
-        }
-       }
-       function high_last(){
-        if(document.getElementById){
-          var i;
-          for(i=13;i>=0;i--) {
-            if(document.getElementById("trick"+i))
-              {
-                hl(i);
-                current=i;
-                break;
-              }
-          }
-        }
-       }
-       function hl_next()
-        {
-          if(document.getElementById("trick"+(current+1)))
-            hl(current+1);
-        }
-       function hl_prev()
-        {
-          if(document.getElementById("trick"+(current-1)))
-            hl(current-1);
-        }
-     </script>
+     <link rel="stylesheet" type="text/css" href="css/standard017.css" />
+     <script type="text/javascript" src="include/game.js"> </script>
   </head>
 <body onload="high_last();">
 <div class="header">
-<h1> Welcome to E-Doko <sup style="color:#888;">(beta)</sup> </h1>
+<h1> Welcome to E-Doko </h1>
 </div>
 <?php
 
@@ -447,5 +436,5 @@ function output_user_notes($userid,$gameid,$userstatus)
 
   return;
 }
-    
+
 ?>
\ No newline at end of file