Got rid of a few db-queries for getting the right timezone. The timezone was also set after the timefunction was called and therefore the timezone didn't have any effect.
`fullname` varchar(64) default NULL,
`email` varchar(64) default NULL,
`password` varchar(32) default NULL,
- `timezone` tinyint(2) default NULL,
+ `timezone` varchar(64) default 'Europe/London',
`last_login` timestamp NOT NULL default '0000-00-00 00:00:00',
UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
return;
}
-function return_timezone($offset)
-{
- switch($offset)
- {
- case '1':
- $zone = "Europe/Berlin";
- break;
- case '-8':
- $zone = "America/Vancouver";
- break;
- case '13':
- $zone = "Pacific/Auckland";
- break;
- default:
- $zone = "Europe/London";
- }
-
- return $zone;
-}
-
function have_suit($cards,$c)
{
global $CARDS;
" Hand.sickness as sickness, ".
" Hand.point_call, ".
" User.last_login, ".
- " Hand.hash ".
+ " Hand.hash, ".
+ " User.timezone ".
"FROM Hand ".
"LEFT JOIN User ON User.id=Hand.user_id ".
"WHERE Hand.game_id='".$gameid."' ".
$party = $r[3];
$sickness = $r[4];
$call = $r[5];
- $lastlogin = strtotime($r[6]);
$hash = $r[7];
+ $timezone = $r[8];
+ date_default_timezone_set($timezone);
+ $timenow = strtotime(date("Y-m-d H:i:s"));
+ $lastlogin = strtotime($r[6]);
- $offset = DB_get_user_timezone($user);
- $zone = return_timezone($offset);
- date_default_timezone_set($zone);
echo " <div class=\"table".($pos-1)."\">\n";
if(!$debug)
}
echo " <br />\n";
- echo " <span title=\"".date("Y-m-d H:i:s")."\">local time</span>\n";
+ echo " <span title=\"".date("Y-m-d H:i:s",$timenow). "\">local time</span>\n";
echo " <span title=\"".date("Y-m-d H:i:s",$lastlogin)."\">last login</span>\n";
echo " </div>\n";
$seq = $r[2];
$trick = $r[3];
$comment = $r[4];
- $timeplayed = strtotime($r[5]);
$user = $r[6];
- $offset = DB_get_user_timezone($user);
- $zone = return_timezone($offset);
- date_default_timezone_set($zone);
-
/* check if first schweinchen has been played */
if( $GAME["schweinchen"] && ($r[0] == 19 || $r[0] == 20) )
$GAME["schweinchen"]++;
}
else /* output default user page */
{
- $time = DB_get_user_timestamp($myid);
- $unixtime = strtotime($time);
-
- $offset = DB_get_user_timezone($myid);
- $zone = return_timezone($offset);
- date_default_timezone_set($zone);
-
$myname = DB_get_name_by_email($email);
$_SESSION["name"] = $myname;
- if(isset($_SESSION["name"]))
- output_status($_SESSION["name"]);
-
/* display links to settings */
output_user_settings();
- echo "<div class=\"lastlogin\">last login: ".date("r",$unixtime)."</div>";
-
DB_update_user_timestamp($myid);
display_user_menu();
echo "$done games have been completed on this server. Average time of a game: $avgtime days</p>";
?>
- <p> Please <a href="register.php">register</a>, in case you haven't done that yet <br />
+ <p> Please <a href="register.php">register</a>, in case you have not done that yet <br />
or login with you email-address or name and password here:
</p>
<form action="index.php" method="post">
<div class="header">
<h1> Welcome to E-Doko <sup style="color:#888;">(beta)</sup> </h1>
</div>
-<div class="main">
<?php
+ if(isset($_SESSION["name"]))
+ {
+ $name = $_SESSION["name"];
+
+ /* logout info */
+ echo "<div class=\"status\">\n";
+ echo $name;
+ echo " <a href=\"index.php?logout=1\">logout</a>\n";
+ echo "</div>";
+
+ /* last logon time */
+ $myid = DB_get_userid_by_name($name);
+ $zone = DB_get_user_timezone($myid);
+ date_default_timezone_set($zone);
+
+ $time = DB_get_user_timestamp($myid);
+ $unixtime = strtotime($time);
+
+ echo "<div class=\"lastlogin\">last login: ".date("r",$unixtime)."</div>";
+ };
+
+ echo "<div class=\"main\">";
return;
}
function output_status($name)
{
- echo "<div class=\"status\">\n";
- echo $name;
- echo " <a href=\"index.php?logout=1\">logout</a>\n";
- echo "</div>";
return;
}
<td><label for="Rtimezone">Timezone:</label></td>
<td>
<select id="Rtimezone" name="Rtimezone" size="1">
- <option value="1">Berlin</option>
- <option value="-8">Berkeley</option>
- <option value="13">Wellington</option>
+ <option value="Europe/London">Berlin</option>
+ <option value="Europe/Berlin">Berlin</option>
+ <option value="America/Vancouver">Berkeley</option>
+ <option value="Pacific/Auckland">Wellington</option>
</select>
(If your timezone is not listed, just select whatever you want and email the admin your correct time zone.)
</td>
{
DB_get_PREF($myid);
- $time = DB_get_user_timestamp($myid);
- $unixtime = strtotime($time);
-
- $offset = DB_get_user_timezone($myid);
- $zone = return_timezone($offset);
- date_default_timezone_set($zone);
-
- output_status($name);
-
- echo "<div class=\"lastlogin\">last login: ".date("r",$unixtime)."</div>";
-
DB_update_user_timestamp($myid);
display_user_menu();