diff options
author | arun <arun@nubati.net> | 2006-11-23 08:58:14 +0000 |
---|---|---|
committer | arun <arun> | 2006-11-23 08:58:14 +0000 |
commit | 81d298869d56d991ba3551b1b1413d3ca195eb86 (patch) | |
tree | c8159b6a776cdcc8169e7c706f7428e6c8c72b6b | |
parent | a9e90053fdcfb99066cd7d1d51fb2b78abf3fd61 (diff) | |
download | e-DoKo-81d298869d56d991ba3551b1b1413d3ca195eb86.tar.gz e-DoKo-81d298869d56d991ba3551b1b1413d3ca195eb86.tar.bz2 e-DoKo-81d298869d56d991ba3551b1b1413d3ca195eb86.zip |
players can now make comments, added <div> to some sections and a css file
-rw-r--r-- | index.php | 102 | ||||
-rw-r--r-- | standard.css | 29 |
2 files changed, 108 insertions, 23 deletions
@@ -16,7 +16,7 @@ $host = "http://doko.nubati.net/index.php"; $wiki = "http://wiki.nubati.net/index.php?title=EmailDoko"; -$debug = 0; +$debug = 1; /* * end config @@ -31,7 +31,7 @@ function mymail($To,$Subject,$message) if($debug) { str_replace("\n","<br />",$message); - echo "<br>To: $To<br>Subject: $Subject <br>$message<br>"; + echo "<br />To: $To<br />Subject: $Subject <br />$message<br />\n"; } else mail($To,$Subject,$message); @@ -46,7 +46,7 @@ function parse_status() $game["solo-who"] = -1; $game["solo-what"] = "todo"; $game["wedding"] = -1; - $game["poverty"] = -1; + $game["poverty"] = ""; $game["nines"] = -1; $game["startplayer"] = 0; @@ -61,14 +61,31 @@ function parse_status() $player[$tmp[0]]["option"] = $tmp[3]; $player[$tmp[0]]["points"] = $tmp[4]; $player[$tmp[0]]["cards"] = $tmp[5]; - if(ereg("s",$tmp[3])) $game["init"]++; - if(ereg("P",$tmp[3])) $game["poverty"] = $i; - if(ereg("N",$tmp[3])) $game["nines"] = $i; - if(ereg("W",$tmp[3])) $game["wedding"] = $i; - if(ereg("[OSQJCAH]",$tmp[3]) && ($game["solo-who"]<0) ) + if(ereg("s",$tmp[3])) $game["init"]++; /* how many players are ready? */ + if(ereg("P",$tmp[3])) $game["poverty"].= $i; /* players with poverty, could be two, so use a string */ + if(ereg("N",$tmp[3])) $game["nines"] = $i; /* the player with too many nines, only one possible */ + if(ereg("W",$tmp[3])) $game["wedding"] = $i; /* the player with the wedding, also only one possible */ + if(ereg("([OSQJCAH])",$tmp[3],$match) && ($game["solo-who"]<0) ) { $game["solo-who"] = $i; $game["startplayer"] = $i; + switch($match[1]) + { + case "O": + $game["solo-what"] = "No Trump"; + case "S": + $game["solo-what"] = "Trump"; + case "Q": + $game["solo-what"] = "Queen"; + case "J": + $game["solo-what"] = "Jack"; + case "C": + $game["solo-what"] = "Club"; + case "A": + $game["solo-what"] = "Spade"; + case "H": + $game["solo-what"] = "Heart"; + } } } @@ -306,9 +323,9 @@ function display_card($card) function display_link_card($card,$me) { if( $card/2 - (int)($card/2) == 0.5) - echo "<a href=\"index.php?me=$me&card=$card\"><img src=\"cards/".$card.".png\" height=\"100\" alt=\"".card_to_name($card)."\" /></a>\n"; + echo "<a href=\"index.php?me=$me&card=$card\"><img src=\"cards/".$card.".png\" height=\"100\" alt=\"".card_to_name($card)."\" /></a>\n"; else - echo "<a href=\"index.php?me=$me&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&card=$card\"><img src=\"cards/".($card-1).".png\" height=\"100\" alt=\"".card_to_name($card-1)."\" /></a>\n"; return; } @@ -377,6 +394,8 @@ function save_status() 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"; + $history=array(); /* check for status file and read it, if possible */ @@ -435,7 +454,7 @@ if( isset($_REQUEST["PlayerA"]) && else die("no random file"); - $randomNR = explode( ":", $random[1] ); + $randomNR = explode( ":", $random[2] ); /* write initial status into file */ $output = fopen("status.txt","w"); @@ -581,7 +600,7 @@ if(sizeof($lines)<2) $mycards = explode(";",$allcards); sort($mycards); - echo "your cards are <br>\n"; + echo "your cards are <br />\n"; foreach($mycards as $card) { display_card($card); @@ -728,14 +747,15 @@ if(sizeof($lines)<2) if($game["init"]==4) { /* check for sickness*/ - /***** someone has 5 nines and no one is playing solo=> cance5Al game */ + /***** someone has 5 nines and no one is playing solo=> cancel game */ if($game["nines"]>=0 && $game["solo-who"]<0) { $message = $player[$hash[$game["poverty"]]]["nines"]." has more than 4 nines. Game aborted!\n"; for($i=0;$i<4;$i++) { mymail($player[$hash[$i]]["email"],"[DoKo-debug] the game has been canceled",$message); - } + }; + $output = fopen("status.txt","w"); if($output) fclose($output); @@ -748,7 +768,7 @@ if(sizeof($lines)<2) { if(!isset($_REQUEST["recovery"])) { - echo "a game is in progress, but you are not playing.<br />\n"; + echo "A game is in progress and kibitzing is not allowed. Sorry!.<br />\n"; echo "In case you are playing, but lost your email or can't access the game anymore, please input your email here:<br />\n"; ?> <form action="index.php" method="post"> @@ -781,7 +801,7 @@ if(sizeof($lines)<2) { /* $me is set */ $me = $_REQUEST["me"]; - echo "game in progress and you are in it<br />\n"; + /* output if we are playing a solo or a wedding */ if($game["solo-who"]>=0) echo $player[$hash[$game["solo-who"]]]["name"]." is playing a ".$game["solo-what"]." solo!<br />\n"; else if($game["wedding"]>=0) @@ -796,17 +816,28 @@ if(sizeof($lines)<2) $last=-2; /* found old trick, display it */ + echo "<div class=\"trick\">\n"; for($i=0;$i<sizeof($trick)-1;$i++) { - $card=$trick[$i]; + $card = $trick[$i]; if(ereg("->",$card)) { $tmp = explode("->",$card); - echo $player[$hash[$tmp[0]]]["name"]." played "; + + if(strlen($tmp[2])>0) + echo "<div class=\"card comment\">"; + else + echo "<div class=\"card\">"; + echo $player[$hash[$tmp[0]]]["name"]." played <br />"; display_card($tmp[1]); - $last=$tmp[0]; + /* check for comment */ + if(strlen($tmp[2])>0) + echo "<div class=\"comment\">".$tmp[2]."</div>\n"; + $last = $tmp[0]; + echo "</div>\n"; } } + echo "</div>\n"; } /* figure out who needs to play next */ @@ -856,9 +887,19 @@ if(sizeof($lines)<2) } save_status(); - echo " you played "; + echo "<div class=\"card\">"; + echo " you played <br />"; display_card($card); - + echo "</div>\n"; + + ?> +<br clear="both" /> +<form action="index.php" method="post"> + A short comment:<input name="comment" type="text" size="30" maxlength="50" /> + <input type="hidden" name="me" value="<?php echo $me; ?>" /> + <input type="submit" value="submit comment" /> +</form> +<?php /* send out email to players who want/need to get informed */ for($i=0;$i<4;$i++) { @@ -875,7 +916,7 @@ if(sizeof($lines)<2) $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"]]]." is playing a ".$game["solo-what"]." solo!\n"; + $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); @@ -890,6 +931,20 @@ if(sizeof($lines)<2) } } /* end if card is set */ + else if(isset($_REQUEST["comment"])) + { + $comment = $_REQUEST["comment"]; + $tmp = explode(":",$history[sizeof($history)-1]); + $tmp2 = explode("->",$tmp[sizeof($tmp)-2]); + + $comment = str_replace(":","",$comment); + + if(sizeof($tmp2)<=2) + $tmp[sizeof($tmp)-2] .= "->".$comment; + $history[sizeof($history)-1]=join(":",$tmp); + + save_status(); + } else if(isset($_REQUEST["win"]) && strlen($history[sizeof($history)-1])>3) { $win=$_REQUEST["win"]; @@ -950,6 +1005,7 @@ 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 ) { @@ -960,7 +1016,7 @@ who won? echo "<p class=\"mycards\">\n"; /* is it our turn? */ - if($hash[$next]==$me) + if($hash[$next]==$me && !isset($_REQUEST["card"])) { echo "ITS YOUR TURN <br />\n"; echo "your cards are: <br />\n"; diff --git a/standard.css b/standard.css new file mode 100644 index 0000000..ff055c8 --- /dev/null +++ b/standard.css @@ -0,0 +1,29 @@ +.trick +{ + //border: 1px solid green; + clear:both; +} + +.trick div div +{ + position: absolute; + width: 65px; + background-color: red; + display: none; +} + +.trick div +{ + float:left; + margin-bottom:10px; +} + +.trick div:hover div +{ + display:block; +} + +.comment +{ + background-color:green; +}
\ No newline at end of file |