diff options
author | Arun Persaud <arun@nubati.net> | 2007-11-08 20:58:20 +0100 |
---|---|---|
committer | Arun Persaud <arun@nubati.net> | 2007-11-08 22:46:49 +0100 |
commit | 9732aef914603924915bde24684f322843ead085 (patch) | |
tree | ba79089c9ecdae62752e396fa911c22fb913f5ab | |
parent | a5684ef10fbd20dd335b99a0d53555498842268a (diff) | |
download | e-DoKo-9732aef914603924915bde24684f322843ead085.tar.gz e-DoKo-9732aef914603924915bde24684f322843ead085.tar.bz2 e-DoKo-9732aef914603924915bde24684f322843ead085.zip |
NEW FEATURE: addicted people can turn of a lot of the email spam and just check online
all emails saying: it's your turn can be turned off now by a user preference
-rw-r--r-- | db.php | 74 | ||||
-rw-r--r-- | index.php | 20 | ||||
-rw-r--r-- | output.php | 7 |
3 files changed, 85 insertions, 16 deletions
@@ -792,20 +792,68 @@ function DB_get_PREF($myid) { global $PREF; - $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"; + /* Cardset */ + $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"; - return; + /* Email */ + $result = mysql_query("SELECT value FROM User_Prefs". + " WHERE user_id='$myid' AND pref_key='email'" ); + $r = mysql_fetch_array($result,MYSQL_NUM); + if($r) + { + if($r[0]=="emailaddict") + $PREF["email"]="emailaddict"; + else + $PREF["email"]="emailnonaddict"; + } + else + $PREF["email"]="emailnonaddict"; + + return; +} + +function DB_get_email_pref_by_hash($hash) +{ + $result = mysql_query("SELECT value FROM Hand". + " LEFT JOIN User_Prefs ON Hand.user_id=User_Prefs.user_id". + " WHERE hash='$hash' AND pref_key='email'" ); + $r = mysql_fetch_array($result,MYSQL_NUM); + if($r) + { + if($r[0]=="emailaddict") + return "emailaddict"; + else + return "emailnonaddict"; + } + else + return "emailnonaddict"; +} + +function DB_get_email_pref_by_uid($uid) +{ + $result = mysql_query("SELECT value FROM User_Prefs ". + " WHERE user_id='$uid' AND pref_key='email'" ); + $r = mysql_fetch_array($result,MYSQL_NUM); + if($r) + { + if($r[0]=="emailaddict") + return "emailaddict"; + else + return "emailnonaddict"; + } + else + return "emailnonaddict"; } function DB_get_unused_randomnumbers($userstr) @@ -1048,7 +1048,7 @@ else if(myisset("me")) $who = DB_get_userid_by_email($email); DB_set_player_by_gameid($gameid,$who); - if($hash!=$me) + if($hash!=$me && DB_get_email_pref_by_hash($hash)!="emailaddict") { /* email startplayer) */ $message = "It's your turn now in game ".DB_format_gameid($gameid).".\n". @@ -1441,7 +1441,8 @@ else if(myisset("me")) $message = "A card has been played in game ".DB_format_gameid($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 in game ".DB_format_gameid($gameid),$message); + if( DB_get_email_pref_by_uid($who)!="emailaddict" ) + mymail($email,$EmailName."a card has been played in game ".DB_format_gameid($gameid),$message); } else /* send out final email */ { @@ -1603,7 +1604,8 @@ else if(myisset("me")) $hash = DB_get_hash_from_gameid_and_userid($gameid,$user); $link = "Use this link to have a look at game ".DB_format_gameid($gameid).": ".$host."?me=".$hash."\n\n" ; - mymail($To,$EmailName."game over (game ".DB_format_gameid($gameid).") part 2(2)",$link); + if( DB_get_email_pref_by_uid($user) != "emailaddict" ) + mymail($To,$EmailName."game over (game ".DB_format_gameid($gameid).") part 2(2)",$link); } } } @@ -1910,6 +1912,18 @@ else if( myisset("email","password") || isset($_SESSION["name"]) ) DB_quote_smart($setpref).")"); echo "Ok, changed you preferences for the cards.\n"; break; + case "emailaddict": + case "emailnonaddict": + $result = mysql_query("SELECT * from User_Prefs". + " WHERE user_id='$myid' AND pref_key='email'" ); + if( mysql_fetch_array($result,MYSQL_NUM)) + $result = mysql_query("UPDATE User_Prefs SET value=".DB_quote_smart($setpref). + " WHERE user_id='$myid' AND pref_key='email'" ); + else + $result = mysql_query("INSERT INTO User_Prefs VALUES(NULL,'$myid','email',". + DB_quote_smart($setpref).")"); + echo "Ok, changed you preferences for sending out emails.\n"; + break; } } else if(myisset("passwd")) @@ -10,11 +10,18 @@ function output_user_settings() echo "<h4> Settings </h4>\n"; echo "<a href=\"index.php?passwd=ask\">change password</a><br />"; + echo "<h5> Card set </h5>\n"; if( $PREF["cardset"] == "english" ) echo "<a href=\"index.php?setpref=germancards\">use german cards</a><br />"; else echo "<a href=\"index.php?setpref=englishcards\">use english cards</a> <br />"; + echo "<h5> Email </h5>\n"; + if( $PREF["email"] == "emailaddict" ) + echo "<a href=\"index.php?setpref=emailnonaddict\">I'm not addicted (emails for each move)</a><br />"; + else + echo "<a href=\"index.php?setpref=emailaddict\">Addicted (minimal amount of emails)</a> <br />"; + echo "</div>\n"; return; |