From 880dfb2e715a3770de56fb525f5c90d28a6ccb4c Mon Sep 17 00:00:00 2001 From: Arun Persaud Date: Sat, 10 May 2008 12:15:35 -0700 Subject: NEW FEATURE: new settings page, user can now change timezone rewrote the settings page, timezone can now be changed, the user menu shows up on the left on the pref page. Added a link to the pref-page in the left menu. Signed-off-by: Arun Persaud --- include/user.php | 211 ++++++++++++++++++------------------------------------- 1 file changed, 67 insertions(+), 144 deletions(-) (limited to 'include/user.php') diff --git a/include/user.php b/include/user.php index 00426aa..7e8ef9e 100644 --- a/include/user.php +++ b/include/user.php @@ -84,7 +84,6 @@ if(myisset("forgot")) else { /* normal user page */ - /* verify password and email */ if(strlen($password)!=32) $password = md5($password); @@ -103,162 +102,86 @@ if(myisset("forgot")) $PREF = DB_get_PREF($myid); - /* does the user want to change some preferences? */ - if(myisset("setpref")) + DB_update_user_timestamp($myid); + + display_user_menu(); + + /* display all games the user has played */ + echo "
"; + echo "

These are all your games:

\n"; + echo "

Session:
\n"; + echo " p = pre-game phase "; + echo "P = game in progess "; + echo "F = game finished
"; + echo "

\n"; + + $output = array(); + $result = DB_query("SELECT Hand.hash,Hand.game_id,Game.mod_date,Game.player,Game.status from Hand". + " LEFT JOIN Game ON Game.id=Hand.game_id". + " WHERE user_id='$myid'". + " ORDER BY Game.session,Game.create_date" ); + $gamenrold = -1; + echo "\n \n \n
\n"; + while( $r = DB_fetch_array($result)) { - $setpref=$_REQUEST["setpref"]; - switch($setpref) + $game = DB_format_gameid($r[1]); + $gamenr = (int) $game; + if($gamenrold < $gamenr) { - case "germancards": - case "englishcards": - $result = DB_query("SELECT * from User_Prefs". - " WHERE user_id='$myid' AND pref_key='cardset'" ); - if( DB_fetch_array($result)) - $result = DB_query("UPDATE User_Prefs SET value=".DB_quote_smart($setpref). - " WHERE user_id='$myid' AND pref_key='cardset'" ); - else - $result = DB_query("INSERT INTO User_Prefs VALUES(NULL,'$myid','cardset',". - DB_quote_smart($setpref).")"); - echo "Ok, changed you preferences for the cards.\n"; - break; - case "emailaddict": - case "emailnonaddict": - $result = DB_query("SELECT * from User_Prefs". - " WHERE user_id='$myid' AND pref_key='email'" ); - if( DB_fetch_array($result)) - $result = DB_query("UPDATE User_Prefs SET value=".DB_quote_smart($setpref). - " WHERE user_id='$myid' AND pref_key='email'" ); + if($gamenrold!=-1) + echo "
$gamenr: "; else - $result = DB_query("INSERT INTO User_Prefs VALUES(NULL,'$myid','email',". - DB_quote_smart($setpref).")"); - echo "Ok, changed you preferences for sending out emails.\n"; - break; + echo "$gamenr: "; + $gamenrold = $gamenr; } - } - /* user wants to change his password or request a temporary one */ - else if(myisset("passwd")) - { - if( $_REQUEST["passwd"]=="ask" ) + if($r[4]=='pre') { - /* reset password form*/ - output_password_recovery($email,$password); + echo "\n p "; + } - else if($_REQUEST["passwd"]=="set") + else if ($r[4]=='gameover') + echo "\n F "; + else { - /* reset password */ - $ok = 1; - - /* check if old password matches */ - $oldpasswd = md5($_REQUEST["password0"]); - if(!( ($password == $oldpasswd) || DB_check_recovery_passwords($oldpasswd,$email) )) - $ok = -1; - /* check if new passwords are types the same twice */ - if($_REQUEST["password1"] != $_REQUEST["password2"] ) - $ok = -2; - - switch($ok) - { - case '-2': - echo "The new passwords don't match.
"; - break; - case '-1': - echo "The old password is not correct.
"; - break; - case '1': - echo "Changed the password.
"; - DB_query("UPDATE User SET password='".md5($_REQUEST["password1"]). - "' WHERE id=".DB_quote_smart($myid)); - break; - } - /* set password */ + echo "\n P "; } - } - else /* output default user page */ - { - /* display links to settings */ - output_user_settings(); - - DB_update_user_timestamp($myid); - - display_user_menu(); - - /* display all games the user has played */ - echo "
"; - echo "

These are all your games:

\n"; - echo "

Session:
\n"; - echo " p = pre-game phase "; - echo "P = game in progess "; - echo "F = game finished
"; - echo "

\n"; - - $output = array(); - $result = DB_query("SELECT Hand.hash,Hand.game_id,Game.mod_date,Game.player,Game.status from Hand". - " LEFT JOIN Game ON Game.id=Hand.game_id". - " WHERE user_id='$myid'". - " ORDER BY Game.session,Game.create_date" ); - $gamenrold = -1; - echo "\n \n \n
\n"; - while( $r = DB_fetch_array($result)) + if($r[4] != 'gameover') { - $game = DB_format_gameid($r[1]); - $gamenr = (int) $game; - if($gamenrold < $gamenr) - { - if($gamenrold!=-1) - echo "
$gamenr: "; - else - echo "$gamenr: "; - $gamenrold = $gamenr; - } - if($r[4]=='pre') - { - echo "\n p "; - - } - else if ($r[4]=='gameover') - echo "\n F "; + echo "\n "; + if($r[3]==$myid || !$r[3]) + echo "(it's your turn)\n"; else { - echo "\n P "; - } - if($r[4] != 'gameover') - { - echo "\n "; - if($r[3]==$myid || !$r[3]) - echo "(it's your turn)\n"; - else - { - $name = DB_get_name('userid',$r[3]); - $gameid = $r[1]; - if(DB_get_reminder($r[3],$gameid)==0) - if(time()-strtotime($r[2]) > 60*60*24*7) - echo "". - "Send a reminder."; - echo "(it's $name's turn)\n"; - }; - if(time()-strtotime($r[2]) > 60*60*24*30) - echo "". - "Cancel?". - " (clicking here is final and can't be restored)"; - - } + $name = DB_get_name('userid',$r[3]); + $gameid = $r[1]; + if(DB_get_reminder($r[3],$gameid)==0) + if(time()-strtotime($r[2]) > 60*60*24*7) + echo "". + "Send a reminder."; + echo "(it's $name's turn)\n"; + }; + if(time()-strtotime($r[2]) > 60*60*24*30) + echo "". + "Cancel?". + " (clicking here is final and can't be restored)"; + } - echo "
\n"; - - /* display last 5 users that have signed up to e-DoKo */ - $names = DB_get_names_of_new_logins(5); - echo "

New Players:

\n

\n"; - echo implode(", ",$names).",...\n"; - echo "

\n"; - - /* display last 5 users that logged on */ - $names = DB_get_names_of_last_logins(5); - echo "

Players last logged in:

\n

\n"; - echo implode(", ",$names).",...\n"; - echo "

\n"; - - echo "
\n"; } + echo "
\n"; + + /* display last 5 users that have signed up to e-DoKo */ + $names = DB_get_names_of_new_logins(5); + echo "

New Players:

\n

\n"; + echo implode(", ",$names).",...\n"; + echo "

\n"; + + /* display last 5 users that logged on */ + $names = DB_get_names_of_last_logins(5); + echo "

Players last logged in:

\n

\n"; + echo implode(", ",$names).",...\n"; + echo "

\n"; + + echo "
\n"; } else { -- cgit v1.2.3-18-g5258