diff options
author | Arun Persaud <arun@nubati.net> | 2008-03-11 22:21:09 -0700 |
---|---|---|
committer | Arun Persaud <arun@nubati.net> | 2008-03-11 22:21:09 -0700 |
commit | 3eb71d1ca10d4dc4b06ef84eaa410862ce8d7df9 (patch) | |
tree | 38c8b54eedd2f71864c20faa2d4403511f8eba4d | |
parent | cdee8a3e86f57ac0ace7fad8612b0b809b9d08a4 (diff) | |
download | e-DoKo-3eb71d1ca10d4dc4b06ef84eaa410862ce8d7df9.tar.gz e-DoKo-3eb71d1ca10d4dc4b06ef84eaa410862ce8d7df9.tar.bz2 e-DoKo-3eb71d1ca10d4dc4b06ef84eaa410862ce8d7df9.zip |
NEW FEATURE: Ability to add personal notes for each game
In case a player is involed in too many games it can get quite confusing with
whom your playing, etc. so now the player can add notes on the side that only
show up on his/her screen.
Signed-off-by: Arun Persaud <arun@nubati.net>
-rw-r--r-- | create_database.sql | 24 | ||||
-rw-r--r-- | css/standard.css | 19 | ||||
-rw-r--r-- | db.php | 21 | ||||
-rw-r--r-- | index.php | 26 |
4 files changed, 89 insertions, 1 deletions
diff --git a/create_database.sql b/create_database.sql index e863f53..4c74191 100644 --- a/create_database.sql +++ b/create_database.sql @@ -63,6 +63,30 @@ UNLOCK TABLES; /*!40000 ALTER TABLE `Comment` ENABLE KEYS */; -- +-- Table structure for table `Notes` +-- + +DROP TABLE IF EXISTS `Notes`; +CREATE TABLE `Notes` ( + `mod_date` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, + `create_date` timestamp NOT NULL default '0000-00-00 00:00:00', + `id` int(11) NOT NULL auto_increment, + `user_id` int(11) default NULL, + `game_id` int(11) default NULL, + `comment` text, + UNIQUE KEY `id` (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +-- +-- Dumping data for table `Notes` +-- + +/*!40000 ALTER TABLE `Notes` DISABLE KEYS */; +LOCK TABLES `Notes` WRITE; +UNLOCK TABLES; +/*!40000 ALTER TABLE `Notes` ENABLE KEYS */; + +-- -- Table structure for table `Game` -- diff --git a/css/standard.css b/css/standard.css index 0a0fc10..1766d6a 100644 --- a/css/standard.css +++ b/css/standard.css @@ -361,6 +361,25 @@ ul.tricks li div div span.comment span{ background-color: #eee; } +.notes { + position:absolute; + top:27em; + left:0; + margin:1em; + margin-top:0em; + margin-left:0em; + + width: 12em; + + border-top: 2px solid gray; + border-right: 2px solid gray; + border-bottom: 2px solid gray; + + padding:0.3em; + + background-color: #efefef; +} + .user { margin-left:25%;margin-right:25%; } .over { @@ -641,6 +641,27 @@ function DB_insert_comment($comment,$playid,$userid) return; } +function DB_insert_note($comment,$gameid,$userid) +{ + mysql_query("INSERT INTO Notes VALUES (NULL,NULL,NULL,$userid,$gameid, ".DB_quote_smart($comment).")"); + + return; +} + +function DB_get_notes_by_userid_and_gameid($userid,$gameid) +{ + $notes = array(); + + $result = mysql_query("SELECT comment FROM Notes WHERE user_id=".DB_quote_smart($userid) . + " AND game_id=".DB_quote_smart($gameid)); + + while($r = mysql_fetch_array($result,MYSQL_NUM)) + $notes[] = $r[0]; + + return $notes; +} + + function DB_get_gametype_by_gameid($id) { $result = mysql_query("SELECT type FROM Game WHERE id=".DB_quote_smart($id)); @@ -1179,6 +1179,16 @@ else if(myisset("me")) DB_insert_comment($comment,$playid,$myid); }; + /* handle notes in case player didn't play a card, allow notes only during a game */ + if( (!myisset("card") && $mystatus=='play') ) + if(myisset("note")) + { + $note = $_REQUEST["note"]; + + if($note != "") + DB_insert_note($note,$gameid,$myid); + }; + /* get everything relevant to display the tricks */ $result = mysql_query("SELECT Hand_Card.card_id as card,". " Hand.position as position,". @@ -1477,6 +1487,14 @@ else if(myisset("me")) DB_insert_comment($comment,$playid,$myid); }; + /* check for note */ + if(myisset("note")) + { + $note = $_REQUEST["note"]; + if($note != "") + DB_insert_note($note,$gameid,$myid); + }; + /* display played card */ $pos = DB_get_pos_by_hash($me); if($sequence==1) @@ -1837,6 +1855,13 @@ else if(myisset("me")) echo "</ul>\n"; /* end ul tricks*/ + echo "<div class=\"notes\"> Personal notes: <br />\n"; + $notes = DB_get_notes_by_userid_and_gameid($myid,$gameid); + foreach($notes as $note) + echo "$note <hr \>\n"; + echo "Insert note:<input name=\"note\" type=\"text\" size=\"15\" maxlength=\"100\" />\n"; + echo "</div> \n"; + $mycards = DB_get_hand($me); $mycards = mysort($mycards,$gametype); echo "<div class=\"mycards\">\n"; @@ -2014,7 +2039,6 @@ else if(myisset("me")) echo "</div>\n"; - echo "</form>\n"; output_footer(); DB_close(); |