$Settings['vercheck']!=2) {
$Settings['vercheck'] = 2; }
if(!isset($Settings['start_date'])) {
- $Settings['start_date'] = GMTimeStamp(); }
+ $Settings['start_date'] = $utccurtime->getTimestamp(); }
if(!isset($Settings['SQLThemes'])) {
$Settings['SQLThemes'] = 'off'; }
if($Settings['SQLThemes']!="on"&&
<?php
require($SettDir['admin'].'table.php');
if($_GET['act']=="delsessions"&&$GroupInfo['ViewDBInfo']=="yes") {
-$time = GMTimeStamp() - ini_get("session.gc_maxlifetime");
+$time = $utccurtime->getTimestamp() - ini_get("session.gc_maxlifetime");
//$sqlg = sql_pre_query('DELETE FROM \"'.$Settings['sqltable'].'sessions\" WHERE \"expires\" < UNIX_TIMESTAMP();', array(null));
$sqlgc = sql_pre_query("DELETE FROM \"".$Settings['sqltable']."sessions\" WHERE \"expires\" < %i", array($time));
sql_query($sqlgc,$SQLStat);
"\$Settings['TestReferer'] = ".null_string($Settings['TestReferer']).";\n".
"\$Settings['DefaultTheme'] = ".null_string($Settings['DefaultTheme']).";\n".
"\$Settings['DefaultTimeZone'] = ".null_string($Settings['DefaultTimeZone']).";\n".
-"\$Settings['DefaultDST'] = ".null_string($Settings['DefaultDST']).";\n".
"\$Settings['start_date'] = ".null_string($Settings['start_date']).";\n".
"\$Settings['idb_time_format'] = ".null_string($Settings['idb_time_format']).";\n".
"\$Settings['idb_date_format'] = ".null_string($Settings['idb_date_format']).";\n".
</div>
<?php } ftp_close($conn_id); }
if($_GET['act']=="resyncthemes"&&$GroupInfo['ViewDBInfo']=="yes"&&$Settings['SQLThemes']=="on") {
-$time = GMTimeStamp() - ini_get("session.gc_maxlifetime");
+$time = $utccurtime->getTimestamp() - ini_get("session.gc_maxlifetime");
//$sqlg = sql_pre_query('DELETE FROM \"'.$Settings['sqltable'].'sessions\" WHERE \"expires\" < UNIX_TIMESTAMP();', array(null));
if($Settings['sqltype']=="mysql"||
$Settings['sqltype']=="mysqli"||
</div>
<?php } if($_GET['act']=="settings"&&$_POST['update']!="now") {
$admincptitle = " ".$ThemeSet['TitleDivider']." Settings Manager";
-$ts_array = explode(":",$Settings['DefaultTimeZone']);
-if(count($ts_array)!=2) {
- if(!isset($ts_array[0])) { $ts_array[0] = "0"; }
- if(!isset($ts_array[1])) { $ts_array[1] = "00"; }
- $Settings['DefaultTimeZone'] = $ts_array[0].":".$ts_array[1]; }
-if(!is_numeric($ts_array[0])) { $ts_array[0] = "0"; }
-if(!is_numeric($ts_array[1])) { $ts_array[1] = "00"; }
-if($ts_array[1]<0) { $ts_array[1] = "00"; $Settings['DefaultTimeZone'] = $ts_array[0].":".$ts_array[1]; }
-$tsa = array("offset" => $Settings['DefaultTimeZone'], "hour" => $ts_array[0], "minute" => $ts_array[1]);
$mguerys = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."groups\" WHERE (\"Name\"<>'%s') ORDER BY \"id\" ASC", array("Admin"));
$mgresults=sql_query($mguerys,$SQLStat);
$mnum=sql_num_rows($mgresults);
$AdminCheckURL = url_maker($exfile['admin'],$Settings['file_ext'],"act=vercheck&vercheck=newtype&redirect=on",$Settings['qstr'],$Settings['qsep'],$prexqstr['admin'],$exqstr['admin']); }
$AddChkURL = null;
if(isset($_GET['menu'])&&$_GET['menu']=="main") { $AddChkURL = "&menu=main"; }
+// http://www.tutorialspoint.com/php/php_function_timezone_identifiers_list.htm
+$timezone_identifiers = DateTimeZone::listIdentifiers();
+//$timezone_identifiers = timezone_identifiers_list();
+$zonelist['africa'] = array();
+$zonelist['america'] = array();
+$zonelist['antarctica'] = array();
+$zonelist['asia'] = array();
+$zonelist['atlantic'] = array();
+$zonelist['australia'] = array();
+$zonelist['europe'] = array();
+$zonelist['indian'] = array();
+$zonelist['pacific'] = array();
+$zonelist['etcetera'] = array();
+for ($i=0; $i < count($timezone_identifiers); $i++) {
+ $zonelookup = explode("/", $timezone_identifiers[$i]);
+ if(count($zonelookup)==1) { array_push($zonelist['etcetera'], array($timezone_identifiers[$i], $timezone_identifiers[$i])); }
+ if(count($zonelookup)>1) {
+ if($zonelookup[0]=="Africa") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['africa'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['africa'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="America") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['america'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['america'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Antarctica") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['antarctica'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['antarctica'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Asia") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['asia'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['asia'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Atlantic") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['atlantic'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['atlantic'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Australia") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['australia'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['australia'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Europe") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['europe'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['europe'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Indian") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['indian'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['indian'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Pacific") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['pacific'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['pacific'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ }
+}
+
+$deftzstarttime = new DateTime();
+$deftzstarttime->setTimestamp($Settings['start_date']);
+$deftzstarttime->setTimezone($deftz);
+$utctzstarttime = new DateTime();
+$utctzstarttime->setTimestamp($Settings['start_date']);
+$utctzstarttime->setTimezone($utctz);
+$servtzstarttime = new DateTime();
+$servtzstarttime->setTimestamp($Settings['start_date']);
+$servtzstarttime->setTimezone($servtz);
+$usertzstarttime = new DateTime();
+$usertzstarttime->setTimestamp($Settings['start_date']);
+$usertzstarttime->setTimezone($usertz);
?>
<div class="TableMenuBorder">
<?php if($ThemeSet['TableStyle']=="div") { ?>
<table style="text-align: left;">
<tr>
<td style="width: 50%;"><span class="TextBoxLabel" title="Using User Time Zone">[User TimeZone] Install Date:</span></td>
- <td style="width: 50%;"><?php echo GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$Settings['start_date'],$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']); ?></td>
-</tr><?php if($_SESSION['UserTimeZone']!=$Settings['DefaultTimeZone']||
- $_SESSION['UserDST']!=$Settings['DefaultDST']) { ?><tr>
+ <td style="width: 50%;"><?php echo $usertzstarttime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']); ?></td>
+</tr><?php if($_SESSION['UserTimeZone']!=$Settings['DefaultTimeZone']) { ?><tr>
<td style="width: 50%;"><span class="TextBoxLabel" title="Using Board Time Zone">[Board TimeZone] Install Date:</span></td>
- <td style="width: 50%;"><?php echo GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$Settings['start_date'],$Settings['DefaultTimeZone'],0,$Settings['DefaultDST']); ?></td>
+ <td style="width: 50%;"><?php echo $deftzstarttime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']); ?></td>
</tr><?php } if($GroupInfo['ViewDBInfo']=="yes") {
?><tr style="text-align: left;">
<td style="width: 50%;"><span class="TextBoxLabel">Forum Software Version:</span></td>
</select></td>
</tr><tr style="text-align: left;">
<td style="width: 50%;"><label class="TextBoxLabel" for="YourOffSet">Your TimeZone:</label></td>
- <td style="width: 50%;"><select id="YourOffSet" name="YourOffSet" class="TextBox"><?php
-$myofftime = $tsa['hour']; $mydstime = "off";
-$plusi = 1; $minusi = 12;
-$plusnum = 15; $minusnum = 0;
-while ($minusi > $minusnum) {
-if($myofftime==-$minusi) {
-echo "<option selected=\"selected\" value=\"-".$minusi."\">GMT - ".$minusi.":00 hours</option>\n"; }
-if($myofftime!=-$minusi) {
-echo "<option value=\"-".$minusi."\">GMT - ".$minusi.":00 hours</option>\n"; }
---$minusi; }
-if($myofftime==0) { ?>
-<option selected="selected" value="0">GMT +/- 0:00 hours</option>
-<?php } if($myofftime!=0) { ?>
-<option value="0">GMT +/- 0:00 hours</option>
-<?php }
-while ($plusi < $plusnum) {
-if($myofftime==$plusi) {
-echo "<option selected=\"selected\" value=\"".$plusi."\">GMT + ".$plusi.":00 hours</option>\n"; }
-if($myofftime!=$plusi) {
-echo "<option value=\"".$plusi."\">GMT + ".$plusi.":00 hours</option>\n"; }
-++$plusi; }
-?></select></td>
-</tr><tr style="text-align: left;">
- <td style="width: 50%;"><label class="TextBoxLabel" for="MinOffSet">Minute OffSet:</label></td>
- <td style="width: 50%;"><select id="MinOffSet" name="MinOffSet" class="TextBox"><?php
-$mini = 0; $minnum = 60; $mymin = $tsa['minute'];
-while ($mini < $minnum) {
-if(strlen($mini)==2) { $showmin = $mini; }
-if(strlen($mini)==1) { $showmin = "0".$mini; }
-if($mini==$mymin) {
-echo "\n<option selected=\"selected\" value=\"".$showmin."\">0:".$showmin." minutes</option>\n"; }
-if($mini!=$mymin) {
-echo "<option value=\"".$showmin."\">0:".$showmin." minutes</option>\n"; }
-++$mini; }
-?></select></td>
-</tr><tr style="text-align: left;">
- <td style="width: 50%;"><label class="TextBoxLabel" for="DST">Is <span title="Daylight Savings Time">DST</span> / <span title="Summer Time">ST</span> on or off:</label></td>
- <td style="width: 50%;"><select id="DST" name="DST" class="TextBox"><?php echo "\n" ?>
-<option<?php if($Settings['DefaultDST']=="off") { echo " selected=\"selected\""; } ?> value="off">off</option>
-<option<?php if($Settings['DefaultDST']=="on") { echo " selected=\"selected\""; } ?> value="on">on</option>
+ <td style="width: 50%;"><select id="YourOffSet" name="YourOffSet" class="TextBox">
+<optgroup label="Africa">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['africa']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['africa'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['africa'][$i][1]."\">".str_replace("_", " ", $zonelist['africa'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="America">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['america']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['america'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['america'][$i][1]."\">".str_replace("_", " ", $zonelist['america'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Antarctica">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['antarctica']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['antarctica'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['antarctica'][$i][1]."\">".str_replace("_", " ", $zonelist['antarctica'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Asia">
+<?php
+for ($i=0; $i < count($zonelist['asia']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['asia'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['asia'][$i][1]."\">".str_replace("_", " ", $zonelist['asia'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Atlantic">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['atlantic']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['atlantic'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['atlantic'][$i][1]."\">".str_replace("_", " ", $zonelist['atlantic'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Australia">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['australia']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['australia'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['australia'][$i][1]."\">".str_replace("_", " ", $zonelist['australia'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Europe">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['europe']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['europe'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['europe'][$i][1]."\">".str_replace("_", " ", $zonelist['europe'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Indian">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['indian']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['indian'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['indian'][$i][1]."\">".str_replace("_", " ", $zonelist['indian'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Pacific">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['pacific']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['pacific'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['pacific'][$i][1]."\">".str_replace("_", " ", $zonelist['pacific'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Etcetera">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['etcetera']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['etcetera'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['etcetera'][$i][1]."\">".str_replace("_", " ", $zonelist['etcetera'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
</select></td>
</tr><tr style="text-align: left;">
<td style="width: 50%;"><label class="TextBoxLabel" for="DefaultTheme">Default Theme:</label></td>
"\$Settings['AdminValidate'] = ".null_string($_POST['AdminValidate']).";\n".
"\$Settings['TestReferer'] = ".null_string($_POST['TestReferer']).";\n".
"\$Settings['DefaultTheme'] = ".null_string($_POST['DefaultTheme']).";\n".
-"\$Settings['DefaultTimeZone'] = ".null_string($_POST['YourOffSet'].":".$_POST['MinOffSet']).";\n".
-"\$Settings['DefaultDST'] = ".null_string($_POST['DST']).";\n".
+"\$Settings['DefaultTimeZone'] = ".null_string($_POST['YourOffSet']).";\n".
"\$Settings['start_date'] = ".null_string($Settings['start_date']).";\n".
"\$Settings['idb_time_format'] = ".null_string($Settings['idb_time_format']).";\n".
"\$Settings['idb_date_format'] = ".null_string($Settings['idb_date_format']).";\n".
"\$Settings['TestReferer'] = ".null_string($Settings['TestReferer']).";\n".
"\$Settings['DefaultTheme'] = ".null_string($Settings['DefaultTheme']).";\n".
"\$Settings['DefaultTimeZone'] = ".null_string($Settings['DefaultTimeZone']).";\n".
-"\$Settings['DefaultDST'] = ".null_string($Settings['DefaultDST']).";\n".
"\$Settings['start_date'] = ".null_string($Settings['start_date']).";\n".
"\$Settings['idb_time_format'] = ".null_string($Settings['idb_time_format']).";\n".
"\$Settings['idb_date_format'] = ".null_string($Settings['idb_date_format']).";\n".
"\$Settings['TestReferer'] = ".null_string($Settings['TestReferer']).";\n".
"\$Settings['DefaultTheme'] = ".null_string($Settings['DefaultTheme']).";\n".
"\$Settings['DefaultTimeZone'] = ".null_string($Settings['DefaultTimeZone']).";\n".
-"\$Settings['DefaultDST'] = ".null_string($Settings['DefaultDST']).";\n".
"\$Settings['start_date'] = ".null_string($Settings['start_date']).";\n".
"\$Settings['idb_time_format'] = ".null_string($Settings['idb_time_format']).";\n".
"\$Settings['idb_date_format'] = ".null_string($Settings['idb_date_format']).";\n".
$EditMem['WarnLevel']=sql_result($result,0,"WarnLevel");
$EditMem['BanTime']=sql_result($result,0,"BanTime");
if($EditMem['BanTime']!=""&&$EditMem['BanTime']>1) {
-$BanMonth=GMTimeChange("m",$EditMem['BanTime'],0,0,"off");
-$BanDay=GMTimeChange("d",$EditMem['BanTime'],0,0,"off");
-$BanYear=GMTimeChange("Y",$EditMem['BanTime'],0,0,"off");
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($EditMem['BanTime']);
+$tmpusrcurtime->setTimezone($utctz);
+$BanMonth=$tmpusrcurtime->format("m");
+$BanDay=$tmpusrcurtime->format("d");
+$BanYear=$tmpusrcurtime->format("Y");
$EditMem['BanTime'] = $BanMonth."/".$BanDay."/".$BanYear; }
$EditMem['Interests']=sql_result($result,0,"Interests");
$EditMem['Signature']=sql_result($result,0,"Signature");
if(pre_strlen($BirthExpl[1])=="1") { $BirthExpl[1] = "0".$BirthExpl[1]; }
if(pre_strlen($BirthExpl[0])=="2"&&pre_strlen($BirthExpl[1])=="2"&&pre_strlen($BirthExpl[2])=="4") {
$BirthIn = mktime(12,12,12,$BirthExpl[0],$BirthExpl[1],$BirthExpl[2]);
- $BirthMonth=GMTimeChange("m",$BirthIn,0,0,"off");
- $BirthDay=GMTimeChange("d",$BirthIn,0,0,"off");
- $BirthYear=GMTimeChange("Y",$BirthIn,0,0,"off");
+ $tmpusrcurtime = new DateTime();
+ $tmpusrcurtime->setTimestamp($BirthIn);
+ $tmpusrcurtime->setTimezone($utctz);
+ $BirthMonth=$tmpusrcurtime->format("m");
+ $BirthDay=$tmpusrcurtime->format("d");
+ $BirthYear=$tmpusrcurtime->format("Y");
$_POST['MemBanTime'] = $BirthIn; }
if(pre_strlen($BirthExpl[0])!="2"||pre_strlen($BirthExpl[1])!="2"||pre_strlen($BirthExpl[2])!="4") {
$_POST['MemBanTime'] = "0"; $BirthMonth="0"; $BirthDay="0"; $BirthYear="0"; } }
$sqldump .= "-- ".$iDBHome."support/\n";
$sqldump .= "--\n";
$sqldump .= "-- Host: ".$Settings['sqlhost']."\n";
-$sqldump .= "-- Generation Time: ".GMTimeGet('F d, Y \a\t h:i A',$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'])."\n";
+$sqldump .= "-- Generation Time: ".$usercurtime->format('F d, Y \a\t h:i A')."\n";
$sqldump .= "-- Server version: ".sql_server_info($SQLStat)."\n";
$sqldump .= "-- PHP Version: ".phpversion()."\n\n";
$sqldump .= "SET SESSION SQL_MODE='ANSI_QUOTES,NO_AUTO_VALUE_ON_ZERO';\n\n";
$sqldump .= "-- ".$iDBHome."support/\n";
$sqldump .= "--\n";
$sqldump .= "-- Host: ".$Settings['sqlhost']."\n";
-$sqldump .= "-- Generation Time: ".GMTimeGet('F d, Y \a\t h:i A',$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'])."\n";
+$sqldump .= "-- Generation Time: ".$usercurtime->format('F d, Y \a\t h:i A')."\n";
$sqldump .= "-- Server version: ".sql_server_info($SQLStat)."\n";
$sqldump .= "-- PHP Version: ".phpversion()."\n\n";
$sqldump .= "--\n";
$sqldump .= "-- version ".$VerInfo['iDB_Ver_SVN']."\n";
$sqldump .= "-- ".$iDBHome."support/\n";
$sqldump .= "--\n";
-$sqldump .= "-- Generation Time: ".GMTimeGet('F d, Y \a\t h:i A',$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'])."\n";
+$sqldump .= "-- Generation Time: ".$usercurtime->format('F d, Y \a\t h:i A')."\n";
$sqldump .= "-- SQLite Server version: ".sql_server_info($SQLStat)."\n";
$sqldump .= "-- PHP Version: ".phpversion()."\n\n";
$sqldump .= "--\n";
$_SESSION['PreViewingTitle'] = "Viewing";
$_SESSION['ViewingTitle'] = "Calendar";
$_SESSION['ExtraData'] = "currentact:view; currentcategoryid:0; currentforumid:0; currenttopicid:0; currentmessageid:0; currenteventid:0; currentmemberid:0;";
+$calcurtime = new DateTime();
+$calcurtime->setTimestamp($defcurtime->getTimestamp());
+$calcurtime->setTimezone($usertz);
if(!isset($_GET['HighligtDay'])) { $_GET['HighligtDay'] = null; }
if(!isset($_GET['calmadd'])) { $_GET['calmadd'] = 0; }
if(!is_numeric($_GET['calmadd'])) { $_GET['calmadd'] = 0; }
if((!isset($_GET['calmonth']) && !isset($_GET['calyear'])) &&
isset($_GET['caldate']) && strlen($_GET['caldate'])==2) {
-$_GET['caldate'] = $_GET['caldate'].GMTimeGet("Y",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$calmounthaddd); }
+$_GET['caldate'] = $_GET['caldate'].$calcurtime->format("Y"); }
if((!isset($_GET['calmonth']) && !isset($_GET['calyear'])) &&
isset($_GET['caldate']) && strlen($_GET['caldate'])==6) {
preg_match_all("/([0-9]{2})([0-9]{4})/is", $_GET['caldate'], $datecheck);
if((isset($_GET['calmonth']) && isset($_GET['calyear'])) &&
(strlen($_GET['calmonth'])==2&&strlen($_GET['calyear'])==4) ) {
$year1 = date("Y", strtotime($_GET['calyear']."-".$_GET['calmonth']."-01"));
-$year2 = date("Y", GMTimeStamp());
+$year2 = date("Y", $utccurtime->getTimestamp());
$month1 = date("m", strtotime($_GET['calyear']."-".$_GET['calmonth']."-01"));
-$month2 = date("m", GMTimeStamp());
+$month2 = date("m", $utccurtime->getTimestamp());
$redirdate = ((($year2 - $year1) * 12) + ($month2 - $month1)) * -1;
$_GET['calmadd'] = $redirdate; }
$nextcalm = $_GET['calmadd'] + 1;
$backcalm = $_GET['calmadd'] - 1;
$calmcount = abs($_GET['calmadd']);
-$getcurmonth = GMTimeGet("m",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
-$getcuryear = GMTimeGet("y",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$getcurmonth = $usercurtime->format("m");
+$getcuryear = $usercurtime->format("y");
$getcurtmsp = mktime(0, 0, 0, $getcmonth, 1, $getcyear);
$getnextmsp = mktime(0, 0, 0, ($getcurmonth + $nextcalm), 1, $getcuryear);
$nexmonthnum = date("m", $getnextmsp);
$tmpcalcount = 1;
if($_GET['calmadd']>0) {
while($tmpcalcount <= $calmcount) {
-$tmpdaystart = GMTimeGet("d",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$tmpcalmadd);
-$tmpdaycount = GMTimeGet("t",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$tmpcalmadd);
+$calcurtime->setTimestamp($defcurtime->getTimestamp()+$tmpcalmadd);
+$tmpdaystart = $calcurtime->format("d");
+$tmpdaycount = $calcurtime->format("t");
if($tmpdaystart>=1) { $tmpcalmnum += ($tmpdaycount - $tmpdaystart) + 1; }
if($tmpdaystart<1) { $tmpcalmnum += $tmpdaycount; }
$tmpcalmadd = $tmpcalmnum * $dayconv['day'];
$calmounthaddd = $tmpcalmadd; }
if($_GET['calmadd']<0) {
while($tmpcalcount <= $calmcount) {
-$tmpdaystart = GMTimeGet("d",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$tmpcalmadd);
-$tmpdaycount = GMTimeGet("t",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$tmpcalmadd);
+$calcurtime->setTimestamp($defcurtime->getTimestamp()+$tmpcalmadd);
+$tmpdaystart = $calcurtime->format("d");
+$tmpdaycount = $calcurtime->format("t");
if($tmpdaystart>=1) { $tmpcalmnum -= $tmpdaystart + 1; }
if($tmpdaystart<1) { $tmpcalmnum -= $tmpdaycount; }
$tmpcalmadd = $tmpcalmnum * $dayconv['day'];
++$tmpcalcount; }
$calmounthaddd = $tmpcalmadd; }
// Extra month stuff
-$MyRealMonthNum1 = GMTimeGet("m",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
-$MyRealYear = GMTimeGet("Y",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$MyRealMonthNum1 = $usercurtime->format("m");
+$MyRealYear = $usercurtime->format("Y");
// Count the Days in this month
-$MyTimeStamp = GMTimeStamp() + $calmounthaddd;
-$CountDays = GMTimeGet("t",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$calmounthaddd);
-$MyDay = GMTimeGet("j",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$calmounthaddd);
-$MyDay2 = GMTimeGet("jS",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$calmounthaddd);
-$MyDayNum = GMTimeGet("d",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$calmounthaddd);
-$MyDayName = GMTimeGet("l",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$calmounthaddd);
-$MyYear = GMTimeGet("Y",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$calmounthaddd);
-$MyYear2 = GMTimeGet("y",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$calmounthaddd);
-$MyMonth = GMTimeGet("m",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$calmounthaddd);
+$MyTimeStamp = $utccurtime->getTimestamp() + $calmounthaddd;
+$calcurtime->setTimestamp($defcurtime->getTimestamp()+$calmounthaddd);
+$CountDays = $calcurtime->format("t");
+$MyDay = $calcurtime->format("j");
+$MyDay2 = $calcurtime->format("jS");
+$MyDayNum = $calcurtime->format("d");
+$MyDayName = $calcurtime->format("l");
+$MyYear = $calcurtime->format("Y");
+$MyYear2 = $calcurtime->format("y");
+$MyMonth = $calcurtime->format("m");
$MyTimeStamp1 = mktime(0,0,0,$MyMonth,1,$MyYear);
$MyTimeStamp2 = mktime(23,59,59,$MyMonth,$CountDays,$MyYear);
-$MyMonthName = GMTimeGet("F",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$calmounthaddd);
-$MyMonthNum1 = GMTimeGet("m",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$calmounthaddd);
-$MyMonthNum2 = GMTimeGet("n",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST'],$calmounthaddd);
+$MyMonthName = $calcurtime->format("F");
+$MyMonthNum1 = $calcurtime->format("m");
+$MyMonthNum2 = $calcurtime->format("n");
$FirstDayThisMonth = date("w", mktime(0, 0, 0, $MyMonth, 1, $MyYear));
$EventsName = array();
$query = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."events\" WHERE (\"EventMonth\">=%i AND \"EventYear\"<%i AND \"EventYearEnd\">=%i) OR (\"EventMonth\"<=%i AND \"EventMonthEnd\">=%i AND \"EventYearEnd\">=%i) OR (\"EventMonth\"<=%i AND \"EventMonthEnd\"<=%i AND \"EventYear\"<=%i AND \"EventYearEnd\">%i)", array($MyMonth,$MyYear,$MyYear,$MyMonth,$MyMonth,$MyYear,$MyMonth,$MyMonth,$MyYear,$MyYear));
$EventText=sql_result($result,$is,"EventText");
$EventStart=sql_result($result,$is,"TimeStamp");
$EventEnd=sql_result($result,$is,"TimeStampEnd");
+$eventstartcurtime = new DateTime();
+$eventstartcurtime->setTimestamp($EventStart);
+$eventstartcurtime->setTimezone($usertz);
+$eventendcurtime = new DateTime();
+$eventendcurtime->setTimestamp($EventEnd);
+$eventendcurtime->setTimezone($usertz);
//$EventMonth=sql_result($result,$is,"EventMonth");
-$EventMonth=GMTimeChange("m",$EventStart,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$EventMonth=$eventstartcurtime->format("m");
//$EventMonthEnd=sql_result($result,$is,"EventMonthEnd");
-$EventMonthEnd=GMTimeChange("m",$EventEnd,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$EventMonthEnd=$eventendcurtime->format("m");
//$EventDay=sql_result($result,$is,"EventDay");
-$EventDay=GMTimeChange("j",$EventStart,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$EventDay=$eventstartcurtime->format("j");
//$EventDayEnd=sql_result($result,$is,"EventDayEnd");
-$EventDayEnd=GMTimeChange("j",$EventEnd,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$EventDayEnd=$eventendcurtime->format("j");
//$EventYear=sql_result($result,$is,"EventYear");
-$EventYear=GMTimeChange("Y",$EventStart,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$EventYear=$eventstartcurtime->format("Y");
//$EventYearEnd=sql_result($result,$is,"EventYearEnd");
-$EventYearEnd=GMTimeChange("Y",$EventEnd,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$EventYearEnd=$eventendcurtime->format("Y");
if($EventMonthEnd!=$MyMonth) { $EventDayEnd = $CountDays; }
if($EventMonth<$MyMonth) { $EventDay = 1; }
$oldeventname=$EventName;
$UsersID=sql_result($glrresult,0,"UserID");
$GuestsName=sql_result($glrresult,0,"GuestName");
$TimeStamp=sql_result($glrresult,0,"TimeStamp");
-$TimeStamp=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$TimeStamp,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($TimeStamp);
+$tmpusrcurtime->setTimezone($usertz);
+$TimeStamp=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
sql_free_result($glrresult); }
$PreUsersName = GetUserName($UsersID,$Settings['sqltable'],$SQLStat);
if($PreUsersName['Name']===null) { $UsersID = -1;
exit(); }
if(!isset($_GET['time'])) { $_GET['time'] = true; }
if($_GET['time']=="show"||$_GET['time']==true) {
-if($_SESSION['UserDST']=="on") { $MyDST = $checktimea['hour']+1; }
-if($_SESSION['UserDST']=="off") { $MyDST = $checktimea['hour']; }
-if($MyDST>=0) { $TimeSign = "+"; }
-if($MyDST<0) { $TimeSign = "-"; $MyDST = abs($MyDST); }
-$MyDST = $MyDST.":".$checktimea['minute'];
-$MyTimeNow = GMTimeGet($_SESSION['iDBTimeFormat'],$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
-$MyFullTimeNow = GMTimeGet($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$MyDST = $usercurtime->format("P");
+$MyTimeNow = $usercurtime->format($_SESSION['iDBTimeFormat']);
+$MyFullTimeNow = $usercurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
$endpagevar=$endpagevar."<br />The time now is <span class=\"ctimenow\" title=\"".$MyFullTimeNow."\">".$MyTimeNow."</span> ".$ThemeSet['LineDivider']." All times are UTC ".$TimeSign." ".$MyDST; }
function execution_time($starttime) {
list($uetime, $etime) = explode(" ", microtime());
$EventText=sql_result($result,$is,"EventText");
$EventStart=sql_result($result,$is,"TimeStamp");
$EventEnd=sql_result($result,$is,"TimeStampEnd");
-$EventStart = GMTimeChange($_SESSION['iDBDateFormat'],$EventStart,null);
-$EventEnd = GMTimeChange($_SESSION['iDBDateFormat'],$EventEnd,null);
+$eventstartcurtime = new DateTime();
+$eventstartcurtime->setTimestamp($EventStart);
+$eventstartcurtime->setTimezone($usertz);
+$EventStart = $eventstartcurtime->format($_SESSION['iDBDateFormat']);
+$eventendcurtime = new DateTime();
+$eventendcurtime->setTimestamp($EventEnd);
+$eventendcurtime->setTimezone($usertz);
+$EventEnd = $eventendcurtime->format($_SESSION['iDBDateFormat']);
$ipshow = "two";
$_SESSION['ViewingPage'] = url_maker(null,"no+ext","act=view&id=".$_GET['id'],"&","=",$prexqstr['event'],$exqstr['event']);
if($Settings['file_ext']!="no+ext"&&$Settings['file_ext']!="no ext") {
$PreUserCanUseBBags = "no"; }
sql_free_result($memreresult);
$User1Joined=sql_result($reresult,$rei,"Joined");
-$User1Joined=GMTimeChange($_SESSION['iDBDateFormat'],$User1Joined,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($User1Joined);
+$tmpusrcurtime->setTimezone($usertz);
+$User1Joined=$tmpusrcurtime->format($_SESSION['iDBDateFormat']);
$User1GroupID=sql_result($reresult,$rei,"GroupID");
$gquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."groups\" WHERE \"id\"=%i LIMIT 1", array($User1GroupID));
$gresult=sql_query($gquery,$SQLStat);
<?php } if ($Error!="Yes") {
$TimeSIn = mktime(0,0,0,$TimeIn[0],$TimeIn[1],$TimeIn[2]);
$TimeSOut = mktime(23,59,59,$TimeOut[0],$TimeOut[1],$TimeOut[2]);
-$EventMonth=GMTimeChange("m",$TimeSIn,0,0,"off");
-$EventMonthEnd=GMTimeChange("m",$TimeSOut,0,0,"off");
-$EventDay=GMTimeChange("d",$TimeSIn,0,0,"off");
-$EventDayEnd=GMTimeChange("d",$TimeSOut,0,0,"off");
-$EventYear=GMTimeChange("Y",$TimeSIn,0,0,"off");
-$EventYearEnd=GMTimeChange("Y",$TimeSOut,0,0,"off");
+$eventstartcurtime = new DateTime();
+$eventstartcurtime->setTimestamp($TimeSIn);
+$eventstartcurtime->setTimezone($utctz);
+$eventendcurtime = new DateTime();
+$eventendcurtime->setTimestamp($TimeSOut);
+$eventendcurtime->setTimezone($utctz);
+$EventMonth=$eventstartcurtime->format("m");
+$EventMonthEnd=$eventendcurtime->format("m");
+$EventDay=$eventstartcurtime->format("d");
+$EventDayEnd=$eventendcurtime->format("d");
+$EventYear=$eventstartcurtime->format("Y");
+$EventYearEnd=$eventendcurtime->format("Y");
$User1ID=$MyUserID;
$User1IP=$_SERVER['REMOTE_ADDR'];
if($_SESSION['UserGroup']==$Settings['GuestGroup']) { $User1Name = $_POST['GuestName']; }
$UsersID=sql_result($glrresult,0,"UserID");
$GuestsName=sql_result($glrresult,0,"GuestName");
$TimeStamp=sql_result($glrresult,0,"TimeStamp");
-$TimeStamp=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$TimeStamp,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($TimeStamp);
+$tmpusrcurtime->setTimezone($usertz);
+$TimeStamp=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
sql_free_result($glrresult); }
$PreUsersName = GetUserName($UsersID,$Settings['sqltable'],$SQLStat);
if($PreUsersName['Name']===null) { $UsersID = -1;
$MyMessagesPerPage=sql_result($resultchkusr,0,"MessagesPerPage");
$Settings['max_memlist'] = $MyMessagesPerPage;
$Settings['max_pmlist'] = $MyMessagesPerPage;
-$ChkUsrDST=sql_result($resultchkusr,0,"DST");
$svrquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."groups\" WHERE \"id\"=%i LIMIT 1", array($ChkUsrGroup));
$svrgresultkgb=sql_query($svrquery,$SQLStat);
$ChkUsrGroup=sql_result($svrgresultkgb,0,"Name");
$ChkUsrBanTime=sql_result($resultchkusr,0,"BanTime");
-$ChkUsrGMTime = GMTimeStamp();
+$ChkUsrGMTime = $utccurtime->getTimestamp();
if($ChkUsrBanTime!=0&&$ChkUsrBanTime!=null) {
if($ChkUsrBanTime>=$ChkUsrGMTime) { $BanError = "yes"; }
if($ChkUsrBanTime<0) { $BanError = "yes"; } }
$_SESSION['UserID']=$ChkUsrID;
$_SESSION['UserIP']=$_SERVER['REMOTE_ADDR'];
$_SESSION['UserTimeZone']=$ChkUsrTimeZone;
+$usertz = new DateTimeZone($_SESSION['UserTimeZone']);
+$usercurtime->setTimestamp($defcurtime->getTimestamp());
+$usercurtime->setTimezone($usertz);
$_SESSION['iDBDateFormat']=$ChkUsrDateFormat;
$_SESSION['iDBTimeFormat']=$ChkUsrTimeFormat;
$_SESSION['UserGroup']=$ChkUsrGroup;
$_SESSION['UserGroupID']=$ChkUsrGroupID;
-$_SESSION['UserDST']=$ChkUsrDST;
$_SESSION['UserPass']=$ChkUsrPass;
$_SESSION['LastPostTime'] = $ChkUsrLastPostTime; } }
if($numchkusr<=0||$numchkusr>1||$BanError=="yes") { session_unset();
if($cookieDomain==null) {
-setcookie("MemberName", null, GMTimeStamp() - 3600, $cbasedir);
-setcookie("UserID", null, GMTimeStamp() - 3600, $cbasedir);
-setcookie("SessPass", null, GMTimeStamp() - 3600, $cbasedir);
-setcookie(session_name(), "", GMTimeStamp() - 3600, $cbasedir); }
+setcookie("MemberName", null, $utccurtime->getTimestamp() - 3600, $cbasedir);
+setcookie("UserID", null, $utccurtime->getTimestamp() - 3600, $cbasedir);
+setcookie("SessPass", null, $utccurtime->getTimestamp() - 3600, $cbasedir);
+setcookie(session_name(), "", $utccurtime->getTimestamp() - 3600, $cbasedir); }
if($cookieDomain!=null) {
if($cookieSecure===true) {
-setcookie("MemberName", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain, 1);
-setcookie("UserID", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain, 1);
-setcookie("SessPass", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain, 1);
-setcookie(session_name(), "", GMTimeStamp() - 3600, $cbasedir, $cookieDomain, 1); }
+setcookie("MemberName", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain, 1);
+setcookie("UserID", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain, 1);
+setcookie("SessPass", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain, 1);
+setcookie(session_name(), "", $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain, 1); }
if($cookieSecure===false) {
-setcookie("MemberName", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain);
-setcookie("UserID", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain);
-setcookie("SessPass", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain);
-setcookie(session_name(), "", GMTimeStamp() - 3600, $cbasedir, $cookieDomain); } }
+setcookie("MemberName", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain);
+setcookie("UserID", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain);
+setcookie("SessPass", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain);
+setcookie(session_name(), "", $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain); } }
unset($_COOKIE[session_name()]);
$_SESSION = array(); session_unset(); session_destroy();
redirect("location",$rbasedir.url_maker($exfile['member'],$Settings['file_ext'],"act=login",$Settings['qstr'],$Settings['qsep'],$prexqstr['member'],$exqstr['member'],false)); sql_free_result($resultchkusr); sql_free_result($svrgresultkgb);
//Update karma and group upgrade on post count or karma count.
if($_SESSION['UserID']!=0) { $BoostTotal = null;
$KarmaExp = explode("&",$Settings['KarmaBoostDays']);
-$KarmaNow = GMTimeGet("md",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$KarmaNow = $usercurtime->format("md");
$kupdate = false;
if(in_array($KarmaNow,$KarmaExp)) {
$KarmaNum = count($KarmaExp);
++$Karmai; } }
if($kupdate===false) {
$Settings['KarmaBoostDays'] = $KarmaExp[0]; }
-$NewKarmaUpdate = GMTimeGet("Ymd",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
-$ThisYearUpdate = GMTimeGet("Y",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$NewKarmaUpdate = $usercurtime->format("Ymd");
+$ThisYearUpdate = $usercurtime->format("Y");
if($MyKarmaUpdate<$NewKarmaUpdate&&$MyPostCountChk>0) {
$KarmaBoostDay = $Settings['KarmaBoostDays'];
$KBoostPercent = explode("|",$Settings['KBoostPercent']);
$MyEditTime=sql_result($result,$i,"LastUpdate");
$MyEditUserID=sql_result($result,$i,"EditUser");
$MyEditUserName=sql_result($result,$i,"EditUserName");
-$MyTimeStamp=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$MyTimeStamp,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($MyTimeStamp);
+$tmpusrcurtime->setTimezone($usertz);
+$MyTimeStamp=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
$MyPost=sql_result($result,$i,"Post");
$MyDescription=sql_result($result,$i,"Description");
$requery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."members\" WHERE \"id\"=%i LIMIT 1", array($MyUserID));
$PreUserCanUseBBags = "no"; }
sql_free_result($memreresult);
$User1Joined=sql_result($reresult,$rei,"Joined");
-$User1Joined=GMTimeChange($_SESSION['iDBDateFormat'],$User1Joined,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($User1Joined);
+$tmpusrcurtime->setTimezone($usertz);
+$User1Joined=$tmpusrcurtime->format($_SESSION['iDBDateFormat']);
$User1GroupID=sql_result($reresult,$rei,"GroupID");
$gquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."groups\" WHERE \"id\"=%i LIMIT 1", array($User1GroupID));
$gresult=sql_query($gquery,$SQLStat);
$EditUserName = $EditUserNamePrefix.$EditUserName; }
if(isset($GroupNameSuffix)&&$GroupNameSuffix!=null) {
$EditUserName = $EditUserName.$EditUserNameSuffix; }
- $MyEditTime = GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$MyEditTime,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+ $tmpusrcurtime = new DateTime();
+ $tmpusrcurtime->setTimestamp($MyEditTime);
+ $tmpusrcurtime->setTimezone($usertz);
+ $MyEditTime = $tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
$MySubPost = "<div class=\"EditReply\"><br />This post has been edited by <b>".$EditUserName."</b> on ".$MyEditTime."</div>"; }
if($MyEditTime!=$MyTimeStamp&&$MyEditUserID!=0&&$MyEditUserID!=$MyUserID) {
$requery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."members\" WHERE \"id\"=%i LIMIT 1", array($MyUserID));
$User1Email=sql_result($reresult,$rei,"Email");
$User1Title=sql_result($reresult,$rei,"Title");
$User1Joined=sql_result($reresult,$rei,"Joined");
-$User1Joined=GMTimeChange($_SESSION['iDBDateFormat'],$User1Joined,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($User1Joined);
+$tmpusrcurtime->setTimezone($usertz);
+$User1Joined=$tmpusrcurtime->format($_SESSION['iDBDateFormat']);
$User1Hidden=sql_result($reresult,$rei,"HiddenMember");
$User1GroupID=sql_result($reresult,$rei,"GroupID");
$gquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."groups\" WHERE \"id\"=%i LIMIT 1", array($User1GroupID));
$UsersID=sql_result($result,$i,"UserID");
$GuestsName=sql_result($result,$i,"GuestName");
$TheTime=sql_result($result,$i,"TimeStamp");
-$TheTime=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$TheTime,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($TheTime);
+$tmpusrcurtime->setTimezone($usertz);
+$TheTime=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
$NumReply=sql_result($result,$i,"NumReply");
$NumberPosts=$NumReply + 1;
$prepagelist = null;
$query = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."members\" WHERE \"GroupID\"=%i AND \"GroupID\"<>%i AND \"id\">=0 ".$orderlist." ".$SQLimit, array($_GET['groupid'],$GGroup,$PageLimit,$Settings['max_memlist']));
$rnquery = sql_pre_query("SELECT COUNT(*) FROM \"".$Settings['sqltable']."members\" WHERE \"GroupID\"=%i AND \"GroupID\"<>%i AND \"id\">=0", array($_GET['groupid'],$GGroup)); } }
if($_GET['act']=="getactive") {
-$active_month = GMTimeGet("m",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
-$active_day = GMTimeGet("d",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
-$active_year = GMTimeGet("Y",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$active_month = $usercurtime->format("m");
+$active_day = $usercurtime->format("d");
+$active_year = $usercurtime->format("Y");
$active_start = mktime(0,0,0,$active_month,$active_day,$active_year);
$active_end = mktime(23,59,59,$active_month,$active_day,$active_year);
if($_GET['groupid']==null) {
$MemList['Interests']=sql_result($result,$i,"Interests");
$MemList['Title']=sql_result($result,$i,"Title");
$MemList['Joined']=sql_result($result,$i,"Joined");
-$MemList['Joined']=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$MemList['Joined'],$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($MemList['Joined']);
+$tmpusrcurtime->setTimezone($usertz);
+$MemList['Joined']=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
$MemList['LastActive']=sql_result($result,$i,"LastActive");
-$MemList['LastActive']=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$MemList['LastActive'],$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($MemList['LastActive']);
+$tmpusrcurtime->setTimezone($usertz);
+$MemList['LastActive']=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
$MemList['Website']=sql_result($result,$i,"Website");
if($MemList['Website']=="http://") {
$MemList['Website'] = $Settings['idburl']; }
$MemList['PostCount']=sql_result($result,$i,"PostCount");
$MemList['Karma']=sql_result($result,$i,"Karma");
$MemList['TimeZone']=sql_result($result,$i,"TimeZone");
-$MemList['DST']=sql_result($result,$i,"DST");
$MemList['IP']=sql_result($result,$i,"IP");
$gquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."groups\" WHERE \"id\"=%i LIMIT 1", array($MemList['GroupID']));
$gresult=sql_query($gquery,$SQLStat);
$PageLimit = $nums - $Settings['max_memlist'];
if($PageLimit<0) { $PageLimit = 0; }
$i=0;
-$uolcuttime = GMTimeStamp();
+$uolcuttime = $utccurtime->getTimestamp();
$uoltime = $uolcuttime - ini_get("session.gc_maxlifetime");
if($_GET['list']=="members") {
$query = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."sessions\" WHERE \"expires\" >= %i AND \"serialized_data\" NOT LIKE '%s' ORDER BY \"expires\" DESC ".$SQLimit, array($uoltime,"%UserGroup|s:".strlen($Settings['GuestGroup']).":\"".$Settings['GuestGroup']."\";%",$PageLimit,$Settings['max_memlist']));
$session_user_agent=sql_result($result,$i,"user_agent");
$session_ip_address=sql_result($result,$i,"ip_address");
$session_expires=sql_result($result,$i,"expires");
-$session_expires = GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$session_expires,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($session_expires);
+$tmpusrcurtime->setTimezone($usertz);
+$session_expires = $tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
if(isset($UserSessInfo)) { $UserSessInfo = null; }
//$UserSessInfo = unserialize_session($session_data);
$UserSessInfo = unserialize($serialized_data);
$ViewSessMem['HiddenMember']=sql_result($sess_result,$sess_i,"HiddenMember");
$ViewSessMem['WarnLevel']=sql_result($sess_result,$sess_i,"WarnLevel");
$ViewSessMem['Joined']=sql_result($sess_result,$sess_i,"Joined");
-$ViewSessMem['Joined']=GMTimeChange("M j Y, ".$_SESSION['iDBTimeFormat'],$ViewSessMem['Joined'],$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($ViewSessMem['Joined']);
+$tmpusrcurtime->setTimezone($usertz);
+$ViewSessMem['Joined']=$tmpusrcurtime->format("M j Y, ".$_SESSION['iDBTimeFormat']);
$ViewSessMem['LastActive']=sql_result($sess_result,$sess_i,"LastActive");
-$ViewSessMem['LastActive']=GMTimeChange("M j Y, ".$_SESSION['iDBTimeFormat'],$ViewSessMem['LastActive'],$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($ViewSessMem['LastActive']);
+$tmpusrcurtime->setTimezone($usertz);
+$ViewSessMem['LastActive']=$tmpusrcurtime->format("M j Y, ".$_SESSION['iDBTimeFormat']);
$ViewSessMem['Website']=sql_result($sess_result,$sess_i,"Website");
if($ViewSessMem['Website']=="http://") {
$ViewSessMem['Website'] = $Settings['idburl']; }
$ViewSessMem['PostCount']=sql_result($sess_result,$sess_i,"PostCount");
$ViewSessMem['Karma']=sql_result($sess_result,$sess_i,"Karma");
$ViewSessMem['TimeZone']=sql_result($sess_result,$sess_i,"TimeZone");
-$ViewSessMem['DST']=sql_result($sess_result,$sess_i,"DST");
$ViewSessMem['IP']=sql_result($sess_result,$sess_i,"IP");
$gsess_query = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."groups\" WHERE \"id\"=%i LIMIT 1", array($ViewSessMem['GroupID']));
$gsess_result=sql_query($gsess_query,$SQLStat);
$ViewMem['Interests']=sql_result($result,$i,"Interests");
$ViewMem['Title']=sql_result($result,$i,"Title");
$ViewMem['Joined']=sql_result($result,$i,"Joined");
-$ViewMem['Joined']=GMTimeChange("M j Y, ".$_SESSION['iDBTimeFormat'],$ViewMem['Joined'],$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($ViewMem['Joined']);
+$tmpusrcurtime->setTimezone($usertz);
+$ViewMem['Joined']=$tmpusrcurtime->format("M j Y, ".$_SESSION['iDBTimeFormat']);
$ViewMem['LastActive']=sql_result($result,$i,"LastActive");
-$ViewMem['LastActive']=GMTimeChange("M j Y, ".$_SESSION['iDBTimeFormat'],$ViewMem['LastActive'],$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($ViewMem['LastActive']);
+$tmpusrcurtime->setTimezone($usertz);
+$ViewMem['LastActive']=$tmpusrcurtime->format("M j Y, ".$_SESSION['iDBTimeFormat']);
$ViewMem['Website']=sql_result($result,$i,"Website");
if($ViewMem['Website']=="http://") {
$ViewMem['Website'] = $Settings['idburl']; }
$ViewMem['PostCount']=sql_result($result,$i,"PostCount");
$ViewMem['Karma']=sql_result($result,$i,"Karma");
$ViewMem['TimeZone']=sql_result($result,$i,"TimeZone");
-$ViewMem['DST']=sql_result($result,$i,"DST");
+$viewmemcurtime = new DateTime();
+$viewmemcurtime->setTimezone($ViewMem['TimeZone']);
$ViewMem['IP']=sql_result($result,$i,"IP");
$lquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."levels\" WHERE \"id\"=%i LIMIT 1", array($ViewMem['LevelID']));
$lresult=sql_query($lquery,$SQLStat);
User Level: <?php echo $ViewMem['Level']; ?><br />
User Joined: <?php echo $ViewMem['Joined']; ?><br />
Last Active: <?php echo $ViewMem['LastActive']; ?><br />
- User Time: <?php echo GMTimeGet("M j Y, ".$_SESSION['iDBTimeFormat'],$ViewMem['TimeZone'],0,$ViewMem['DST']); ?><br />
+ User Time: <?php echo $viewmemcurtime->format("M j Y, ".$_SESSION['iDBTimeFormat']); ?><br />
User Website: <a href="<?php echo $ViewMem['Website']; ?>"<?php echo $opennew; ?>>Website</a><br />
Post Count: <?php echo $ViewMem['PostCount']; ?><br />
Karma: <?php echo $ViewMem['Karma']; ?><br />
if($_GET['act']=="logout") {
session_unset();
if($cookieDomain==null) {
-setcookie("MemberName", null, GMTimeStamp() - 3600, $cbasedir);
-setcookie("UserID", null, GMTimeStamp() - 3600, $cbasedir);
-setcookie("SessPass", null, GMTimeStamp() - 3600, $cbasedir);
-setcookie(session_name(), "", GMTimeStamp() - 3600, $cbasedir); }
+setcookie("MemberName", null, $utccurtime->getTimestamp() - 3600, $cbasedir);
+setcookie("UserID", null, $utccurtime->getTimestamp() - 3600, $cbasedir);
+setcookie("SessPass", null, $utccurtime->getTimestamp() - 3600, $cbasedir);
+setcookie(session_name(), "", $utccurtime->getTimestamp() - 3600, $cbasedir); }
if($cookieDomain!=null) {
if($cookieSecure===true) {
-setcookie("MemberName", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain, 1);
-setcookie("UserID", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain, 1);
-setcookie("SessPass", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain, 1);
-setcookie(session_name(), "", GMTimeStamp() - 3600, $cbasedir, $cookieDomain, 1); }
+setcookie("MemberName", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain, 1);
+setcookie("UserID", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain, 1);
+setcookie("SessPass", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain, 1);
+setcookie(session_name(), "", $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain, 1); }
if($cookieSecure===false) {
-setcookie("MemberName", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain);
-setcookie("UserID", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain);
-setcookie("SessPass", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain);
-setcookie(session_name(), "", GMTimeStamp() - 3600, $cbasedir, $cookieDomain); } }
+setcookie("MemberName", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain);
+setcookie("UserID", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain);
+setcookie("SessPass", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain);
+setcookie(session_name(), "", $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain); } }
unset($_COOKIE[session_name()]);
$_SESSION = array();
//session_unset();
//session_destroy();
$temp_user_ip = $_SERVER['REMOTE_ADDR'];
-$exptime = GMTimeStamp() - ini_get("session.gc_maxlifetime");
+$exptime = $utccurtime->getTimestamp() - ini_get("session.gc_maxlifetime");
sql_query(sql_pre_query("DELETE FROM \"".$Settings['sqltable']."sessions\" WHERE \"expires\" < %i OR ip_address='%s'", array($exptime,$temp_user_ip)),$SQLStat);
redirect("location",$rbasedir.url_maker($exfile['member'],$Settings['file_ext'],"act=login",$Settings['qstr'],$Settings['qsep'],$prexqstr['member'],$exqstr['member'],false));
ob_clean(); header("Content-Type: text/plain; charset=".$Settings['charset']); $urlstatus = 302;
$YourGroupIDM=$YourGroupM;
$YourLastPostTime=sql_result($resultlog,$i,"LastPostTime");
$YourBanTime=sql_result($resultlog,$i,"BanTime");
-$CGMTime = GMTimeStamp();
+$CGMTime = $utccurtime->getTimestamp();
if($YourBanTime!=0&&$YourBanTime!=null) {
if($YourBanTime>=$CGMTime) { $BanError = "yes"; }
if($YourBanTime<0) { $BanError = "yes"; } }
$YourGroupM=sql_result($gresult,0,"Name");
sql_free_result($gresult);
$YourTimeZoneM=sql_result($resultlog,$i,"TimeZone");
-$YourDSTM=sql_result($resultlog,$i,"DST");
$JoinedDate=sql_result($resultlog,$i,"Joined");
$UseTheme=sql_result($resultlog,$i,"UseTheme");
$NewHashSalt = salt_hmac();
$NewPassword = b64e_hmac($_POST['userpass'],$JoinedPass,$NewHashSalt,"gost"); }
if($Settings['use_hashtype']=="joaat") { $iDBHash = "iDBHJOAAT";
$NewPassword = b64e_hmac($_POST['userpass'],$JoinedPass,$NewHashSalt,"joaat"); }
-$NewDay=GMTimeStamp();
+$NewDay=$utccurtime->getTimestamp();
$NewIP=$_SERVER['REMOTE_ADDR'];
if($BanError!="yes") {
$queryup = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"UserPassword\"='%s',\"HashType\"='%s',\"LastActive\"=%i,\"IP\"='%s',\"Salt\"='%s' WHERE \"id\"=%i", array($NewPassword,$iDBHash,$NewDay,$NewIP,$NewHashSalt,$YourIDM));
$_SESSION['UserID']=$YourIDM;
$_SESSION['UserIP']=$_SERVER['REMOTE_ADDR'];
$_SESSION['UserTimeZone']=$YourTimeZoneM;
+$usertz = new DateTimeZone($_SESSION['UserTimeZone']);
+$usercurtime->setTimestamp($defcurtime->getTimestamp());
+$usercurtime->setTimezone($usertz);
$_SESSION['UserGroup']=$YourGroupM;
$_SESSION['UserGroupID']=$YourGroupIDM;
-$_SESSION['UserDST']=$YourDSTM;
$_SESSION['UserPass']=$NewPassword;
$_SESSION['LastPostTime'] = $YourLastPostTime;
$_SESSION['DBName']=$Settings['sqldb'];
$_SESSION['ExtraData'] = "currentact:".$_GET['act']."; currentcategoryid:0; currentforumid:0; currenttopicid:0; currentmessageid:0; currenteventid:0; currentmemberid:0;";
$UFID = rand_uuid("rand");
$_SESSION['UserFormID'] = $UFID;
+// http://www.tutorialspoint.com/php/php_function_timezone_identifiers_list.htm
+$timezone_identifiers = DateTimeZone::listIdentifiers();
+//$timezone_identifiers = timezone_identifiers_list();
+$zonelist['africa'] = array();
+$zonelist['america'] = array();
+$zonelist['antarctica'] = array();
+$zonelist['asia'] = array();
+$zonelist['atlantic'] = array();
+$zonelist['australia'] = array();
+$zonelist['europe'] = array();
+$zonelist['indian'] = array();
+$zonelist['pacific'] = array();
+$zonelist['etcetera'] = array();
+for ($i=0; $i < count($timezone_identifiers); $i++) {
+ $zonelookup = explode("/", $timezone_identifiers[$i]);
+ if(count($zonelookup)==1) { array_push($zonelist['etcetera'], array($timezone_identifiers[$i], $timezone_identifiers[$i])); }
+ if(count($zonelookup)>1) {
+ if($zonelookup[0]=="Africa") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['africa'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['africa'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="America") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['america'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['america'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Antarctica") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['antarctica'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['antarctica'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Asia") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['asia'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['asia'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Atlantic") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['atlantic'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['atlantic'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Australia") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['australia'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['australia'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Europe") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['europe'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['europe'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Indian") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['indian'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['indian'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Pacific") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['pacific'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['pacific'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ }
+}
?>
<div class="NavLinks"><?php echo $ThemeSet['NavLinkIcon']; ?><a href="<?php echo url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>"><?php echo $Settings['board_name']; ?></a><?php echo $ThemeSet['NavLinkDivider']; ?><a href="<?php echo url_maker($exfile['member'],$Settings['file_ext'],"act=signup",$Settings['qstr'],$Settings['qsep'],$prexqstr['member'],$exqstr['member']); ?>">Signup</a></div>
<div class="DivNavLinks"> </div>
<td style="width: 70%;"><input type="text" class="TextBox" name="Email" size="20" id="Email" /></td>
</tr><tr>
<td style="width: 30%;"><label class="TextBoxLabel" for="YourOffSet">Your TimeZone:</label></td>
- <td style="width: 70%;"><select id="YourOffSet" name="YourOffSet" class="TextBox"><?php
-$tsa_mem = explode(":",$Settings['DefaultTimeZone']);
-$TimeZoneArray = array("offset" => $Settings['DefaultTimeZone'], "hour" => $tsa_mem[0], "minute" => $tsa_mem[1]);
-$plusi = 1; $minusi = 12;
-$plusnum = 15; $minusnum = 0;
-while ($minusi > $minusnum) {
-if($TimeZoneArray['hour']==-$minusi) {
-echo "<option selected=\"selected\" value=\"-".$minusi."\">UTC - ".$minusi.":00 hours</option>\n"; }
-if($TimeZoneArray['hour']!=-$minusi) {
-echo "<option value=\"-".$minusi."\">UTC - ".$minusi.":00 hours</option>\n"; }
---$minusi; }
-if($TimeZoneArray['hour']==0) { ?>
-<option selected="selected" value="0">UTC +/- 0:00 hours</option>
-<?php } if($TimeZoneArray['hour']!=0) { ?>
-<option value="0">UTC +/- 0:00 hours</option>
-<?php }
-while ($plusi < $plusnum) {
-if($TimeZoneArray['hour']==$plusi) {
-echo "<option selected=\"selected\" value=\"".$plusi."\">UTC + ".$plusi.":00 hours</option>\n"; }
-if($TimeZoneArray['hour']!=$plusi) {
-echo "<option value=\"".$plusi."\">UTC + ".$plusi.":00 hours</option>\n"; }
-++$plusi; }
-?></select></td>
-</tr><tr>
- <td style="width: 50%;"><label class="TextBoxLabel" for="MinOffSet">Minute OffSet:</label></td>
- <td style="width: 50%;"><select id="MinOffSet" name="MinOffSet" class="TextBox"><?php
-$mini = 0; $minnum = 60;
-while ($mini < $minnum) {
-if(strlen($mini)==2) { $showmin = $mini; }
-if(strlen($mini)==1) { $showmin = "0".$mini; }
-if($mini==$TimeZoneArray['minute']) {
-echo "\n<option selected=\"selected\" value=\"".$showmin."\">0:".$showmin." minutes</option>\n"; }
-if($mini!=$TimeZoneArray['minute']) {
-echo "<option value=\"".$showmin."\">0:".$showmin." minutes</option>\n"; }
-++$mini; }
-?></select></td>
-</tr><tr>
- <td style="width: 30%;"><label class="TextBoxLabel" for="DST">Is <span title="Daylight Savings Time">DST</span> / <span title="Summer Time">ST</span> on or off:</label></td>
- <td style="width: 70%;"><select id="DST" name="DST" class="TextBox"><?php echo "\n" ?>
-<?php if($Settings['DefaultDST']=="off"||$Settings['DefaultDST']!="on") { ?>
-<option selected="selected" value="off">off</option><?php echo "\n" ?><option value="on">on</option>
-<?php } if($Settings['DefaultDST']=="on") { ?>
-<option selected="selected" value="on">on</option><?php echo "\n" ?><option value="off">off</option>
-<?php } echo "\n" ?></select></td>
+ <td style="width: 70%;"><select id="YourOffSet" name="YourOffSet" class="TextBox">
+<optgroup label="Africa">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['africa']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['africa'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['africa'][$i][1]."\">".str_replace("_", " ", $zonelist['africa'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="America">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['america']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['america'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['america'][$i][1]."\">".str_replace("_", " ", $zonelist['america'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Antarctica">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['antarctica']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['antarctica'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['antarctica'][$i][1]."\">".str_replace("_", " ", $zonelist['antarctica'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Asia">
+<?php
+for ($i=0; $i < count($zonelist['asia']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['asia'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['asia'][$i][1]."\">".str_replace("_", " ", $zonelist['asia'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Atlantic">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['atlantic']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['atlantic'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['atlantic'][$i][1]."\">".str_replace("_", " ", $zonelist['atlantic'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Australia">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['australia']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['australia'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['australia'][$i][1]."\">".str_replace("_", " ", $zonelist['australia'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Europe">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['europe']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['europe'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['europe'][$i][1]."\">".str_replace("_", " ", $zonelist['europe'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Indian">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['indian']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['indian'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['indian'][$i][1]."\">".str_replace("_", " ", $zonelist['indian'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Pacific">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['pacific']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['pacific'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['pacific'][$i][1]."\">".str_replace("_", " ", $zonelist['pacific'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Etcetera">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['etcetera']); $i++) {
+ if($Settings['DefaultTimeZone']==$zonelist['etcetera'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['etcetera'][$i][1]."\">".str_replace("_", " ", $zonelist['etcetera'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+</select></td>
</tr><tr>
<td style="width: 30%;"><label class="TextBoxLabel" for="YourGender">Your Gender:</label></td>
<td style="width: 70%;"><select id="YourGender" name="YourGender" class="TextBox">
<?php } if ($Error!="Yes") {
$_POST['UserIP'] = $_SERVER['REMOTE_ADDR'];
$_POST['Group'] = $Settings['MemberGroup'];
-$_POST['Joined'] = GMTimeStamp(); $_POST['LastActive'] = GMTimeStamp();
+$_POST['Joined'] = $utccurtime->getTimestamp(); $_POST['LastActive'] = $utccurtime->getTimestamp();
$_POST['Signature'] = ""; $_POST['Interests'] = "";
$_POST['Title'] = ""; $_POST['PostCount'] = "0";
if(!isset($Settings['AdminValidate'])) { $Settings['AdminValidate'] = "off"; }
$_POST['Interests'] = remove_spaces($_POST['Interests']);
$_POST['Title'] = remove_spaces($_POST['Title']);
$_POST['Email'] = remove_spaces($_POST['Email']);
-if(!is_numeric($_POST['YourOffSet'])) { $_POST['YourOffSet'] = "0"; }
-if($_POST['YourOffSet']>12) { $_POST['YourOffSet'] = "12"; }
-if($_POST['YourOffSet']<-12) { $_POST['YourOffSet'] = "-12"; }
-if(!is_numeric($_POST['MinOffSet'])) { $_POST['MinOffSet'] = "00"; }
-if($_POST['MinOffSet']>59) { $_POST['MinOffSet'] = "59"; }
-if($_POST['MinOffSet']<0) { $_POST['MinOffSet'] = "00"; }
-$_POST['YourOffSet'] = $_POST['YourOffSet'].":".$_POST['MinOffSet'];
-$query = sql_pre_query("INSERT INTO \"".$Settings['sqltable']."members\" (\"Name\", \"UserPassword\", \"HashType\", \"Email\", \"GroupID\", \"LevelID\", \"Validated\", \"HiddenMember\", \"WarnLevel\", \"Interests\", \"Title\", \"Joined\", \"LastActive\", \"LastPostTime\", \"BanTime\", \"BirthDay\", \"BirthMonth\", \"BirthYear\", \"Signature\", \"Notes\", \"Avatar\", \"AvatarSize\", \"Website\", \"Gender\", \"PostCount\", \"Karma\", \"KarmaUpdate\", \"RepliesPerPage\", \"TopicsPerPage\", \"MessagesPerPage\", \"TimeZone\", \"DateFormat\", \"TimeFormat\", \"DST\", \"UseTheme\", \"IP\", \"Salt\") VALUES\n".
-"('%s', '%s', '%s', '%s', '%s', '1', '%s', '%s', %i, '%s', '%s', %i, %i, '0', '0', '0', '0', '0', '%s', '%s', '%s', '%s', '%s', '%s', %i, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '%s', '%s', '%s')", array($Name,$NewPassword,$iDBHash,$_POST['Email'],$yourgroup,$ValidateStats,$HideMe,"0",$_POST['Interests'],$_POST['Title'],$_POST['Joined'],$_POST['LastActive'],$NewSignature,'Your Notes',$Avatar,"100x100",$Website,$_POST['YourGender'],$_POST['PostCount'],$_POST['YourOffSet'],$Settings['idb_date_format'],$Settings['idb_time_format'],$_POST['DST'],$Settings['DefaultTheme'],$_POST['UserIP'],$HashSalt));
+$query = sql_pre_query("INSERT INTO \"".$Settings['sqltable']."members\" (\"Name\", \"UserPassword\", \"HashType\", \"Email\", \"GroupID\", \"LevelID\", \"Validated\", \"HiddenMember\", \"WarnLevel\", \"Interests\", \"Title\", \"Joined\", \"LastActive\", \"LastPostTime\", \"BanTime\", \"BirthDay\", \"BirthMonth\", \"BirthYear\", \"Signature\", \"Notes\", \"Avatar\", \"AvatarSize\", \"Website\", \"Gender\", \"PostCount\", \"Karma\", \"KarmaUpdate\", \"RepliesPerPage\", \"TopicsPerPage\", \"MessagesPerPage\", \"TimeZone\", \"DateFormat\", \"TimeFormat\", \"UseTheme\", \"IP\", \"Salt\") VALUES\n".
+"('%s', '%s', '%s', '%s', '%s', '1', '%s', '%s', %i, '%s', '%s', %i, %i, '0', '0', '0', '0', '0', '%s', '%s', '%s', '%s', '%s', '%s', %i, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '%s', '%s')", array($Name,$NewPassword,$iDBHash,$_POST['Email'],$yourgroup,$ValidateStats,$HideMe,"0",$_POST['Interests'],$_POST['Title'],$_POST['Joined'],$_POST['LastActive'],$NewSignature,'Your Notes',$Avatar,"100x100",$Website,$_POST['YourGender'],$_POST['PostCount'],$_POST['YourOffSet'],$Settings['idb_date_format'],$Settings['idb_time_format'],$Settings['DefaultTheme'],$_POST['UserIP'],$HashSalt));
sql_query($query,$SQLStat);
$yourid = sql_get_next_id($Settings['sqltable'],"members",$SQLStat);
$idquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."members\" WHERE \"Name\"='%s' AND \"UserPassword\"='%s' AND \"Email\"='%s' AND \"IP\"='%s' AND \"Salt\"='%s' LIMIT 1", array($Name,$NewPassword,$_POST['Email'],$_POST['UserIP'],$HashSalt));
$gresult=sql_query($gquery,$SQLStat);
$YourGroupMr=sql_result($gresult,0,"Name");
sql_free_result($gresult);
-$YourTimeZoneMr=sql_result($resultlogr,$ir,"TimeZone");
-$YourDSTMr=sql_result($resultlogr,$ir,"DST"); }
+$YourTimeZoneMr=sql_result($resultlogr,$ir,"TimeZone"); }
sql_free_result($resultlogr);
session_regenerate_id(true);
$_SESSION['Loggedin']=true;
$_SESSION['UserID']=$YourIDMr;
$_SESSION['UserIP']=$_SERVER['REMOTE_ADDR'];
$_SESSION['UserTimeZone']=$YourTimeZoneMr;
-$_SESSION['UserDST']=$YourDSTMr;
+$usertz = new DateTimeZone($_SESSION['UserTimeZone']);
+$usercurtime->setTimestamp($defcurtime->getTimestamp());
+$usercurtime->setTimezone($usertz);
$_SESSION['UserGroup']=$YourGroupMr;
$_SESSION['UserGroupID']=$YourGroupIDMr;
$_SESSION['UserPass']=$NewPassword;
$MessageName=sql_result($result,$i,"MessageTitle");
$MessageDesc=sql_result($result,$i,"Description");
$DateSend=sql_result($result,$i,"DateSend");
-$DateSend=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$DateSend,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($DateSend);
+$tmpusrcurtime->setTimezone($usertz);
+$DateSend=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
$MessageStat=sql_result($result,$i,"Read");
if($SenderName=="Guest") { $SenderName=$PMGuest;
if($SenderName==null) { $SenderName="Guest"; } }
$MessageName=sql_result($result,$i,"MessageTitle");
$MessageDesc=sql_result($result,$i,"Description");
$DateSend=sql_result($result,$i,"DateSend");
-$DateSend=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$DateSend,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($DateSend);
+$tmpusrcurtime->setTimezone($usertz);
+$DateSend=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
$MessageStat=sql_result($result,$i,"Read");
if($SenderName=="Guest") { $SenderName=$PMGuest;
if($SenderName==null) { $SenderName="Guest"; } }
$PMGuest=sql_result($result,$is,"GuestName");
$MessageName=sql_result($result,$is,"MessageTitle");
$DateSend=sql_result($result,$is,"DateSend");
-$DateSend=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$DateSend,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($DateSend);
+$tmpusrcurtime->setTimezone($usertz);
+$DateSend=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
$MessageText=sql_result($result,$is,"MessageText");
$MessageDesc=sql_result($result,$is,"Description");
$ipshow = "two";
$PreUserCanUseBBags = "no"; }
sql_free_result($memreresult);
$User1Joined=sql_result($reresult,$rei,"Joined");
-$User1Joined=GMTimeChange($_SESSION['iDBDateFormat'],$User1Joined,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($User1Joined);
+$tmpusrcurtime->setTimezone($usertz);
+$User1Joined=$tmpusrcurtime->format($_SESSION['iDBDateFormat']);
$User1LevelID=sql_result($reresult,$rei,"LevelID");
$lquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."levels\" WHERE \"id\"=%i LIMIT 1", array($User1LevelID));
$lresult=sql_query($lquery,$SQLStat);
<br />Click <a href="<?php echo url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>">here</a> to goto index page.<br />
</span><br /></td>
</tr>
-<?php } if ($Error!="Yes") { $LastActive = GMTimeStamp();
+<?php } if ($Error!="Yes") { $LastActive = $utccurtime->getTimestamp();
if($_SESSION['UserGroup']==$Settings['GuestGroup']) { $User1Name = $_POST['GuestName']; }
if($_SESSION['UserGroup']!=$Settings['GuestGroup']) { $User1Name = $_SESSION['MemberName']; }
$User1IP=$_SERVER['REMOTE_ADDR'];
function bbcode_urldecode($matches) {
return urldecode($matches[1]); }
function bbcode_date_time($matches) {
- return GMTimeGet($matches[1],$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']); }
+ return $usercurtime->format($matches[1]); }
function bbcode_random($matches) {
if(!isset($matches[2])) {
return rand(0,$matches[1]); }
return $matches[0]; } }
function bbcode_parser($text) {
global $Settings;
+$usertz = new DateTimeZone($_SESSION['UserTimeZone']);
+$usercurtime = new DateTime();
+$usercurtime->setTimezone($usertz);
$text = preg_replace("/\[EmbedVideo\="([A-Za-z0-9\.\-_]+)"\]([A-Za-z0-9\.\-_]+)\[\/EmbedVideo\]/is", "[\\1]\\2[/\\1]", $text);
$text = preg_replace("/\[EmbedVideo\=([A-Za-z0-9\.\-_]+)\]([A-Za-z0-9\.\-_]+)\[\/EmbedVideo\]/is", "[\\1]\\2[/\\1]", $text);
$text = preg_replace("/\[EmbedMusic\="([A-Za-z0-9\.\-_]+)"\]([A-Za-z0-9\.\-_]+)\[\/EmbedMusic\]/is", "[\\1]\\2[/\\1]", $text);
$text = preg_replace("/\{BoardName\}/is", $Settings['board_name'], $text);
$text = preg_replace("/\{BoardURL\}/is", $Settings['idburl'], $text);
$text = preg_replace("/\{WebSiteURL\}/is", $Settings['weburl'], $text);
-$text = preg_replace("/\[DATE\]/is", GMTimeGet('M j Y',$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']), $text);
-//$text = preg_replace("/\[DATE\=(.*?)\]/is", GMTimeGet("${1}",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']), $text);
-$text = preg_replace("/\[TIME\]/is", GMTimeGet('g:i a',$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']), $text);
-//$text = preg_replace("/\[TIME\=(.*?)\]/is", GMTimeGet("${1}",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']), $text);
+$text = preg_replace("/\[DATE\]/is", $usercurtime->format('M j Y'), $text);
+//$text = preg_replace("/\[DATE\=(.*?)\]/is", $usercurtime->format("${1}"), $text);
+$text = preg_replace("/\[TIME\]/is", $usercurtime->format('g:i a'), $text);
+//$text = preg_replace("/\[TIME\=(.*?)\]/is", $usercurtime->format("${1}"), $text);
$text = preg_replace_callback("/\[DATE\="(.*?)"\]/is", "bbcode_date_time", $text);
$text = preg_replace_callback("/\[TIME\="(.*?)"\]/is", "bbcode_date_time", $text);
$text = preg_replace_callback("/\[DATE\=(.*?)\]/is", "bbcode_date_time", $text);
$text = preg_replace_callback("/\[TIME\=(.*?)\]/is", "bbcode_date_time", $text);
-$text = preg_replace("/\{DATE\}/is", GMTimeGet('g:i a',$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']), $text);
-//$text = preg_replace("/\{DATE\=(.*?)\}/is", GMTimeGet("${1}",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']), $text);
-$text = preg_replace("/\{TIME\}/is", GMTimeGet('M j Y',$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']), $text);
-//$text = preg_replace("/\{TIME\=(.*?)\}/is", GMTimeGet("${1}",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']), $text);
+$text = preg_replace("/\{DATE\}/is", $usercurtime->format('g:i a'), $text);
+//$text = preg_replace("/\{DATE\=(.*?)\}/is", $usercurtime->format("${1}"), $text);
+$text = preg_replace("/\{TIME\}/is", $usercurtime->format('M j Y'), $text);
+//$text = preg_replace("/\{TIME\=(.*?)\}/is", $usercurtime->format("${1}"), $text);
$text = preg_replace_callback("/\{DATE\="(.*?)\"\}/is", "bbcode_date_time", $text);
$text = preg_replace_callback("/\{TIME\="(.*?)\"\}/is", "bbcode_date_time", $text);
$text = preg_replace_callback("/\[RAND\="([\-]?[0-9]+)"\]/is", "bbcode_random", $text);
if($Settings['DefaultTheme']==null) {
$Settings['DefaultTheme'] = "iDB"; }
if($Settings['DefaultTimeZone']==null) {
- $Settings['DefaultTimeZone'] = SeverOffSet(null); }
-if($Settings['DefaultDST']!="on"&&
- $Settings['DefaultDST']!="off") {
- $Settings['DefaultDST'] = "off"; }
+ $Settings['DefaultTimeZone'] = date_default_timezone_get(); }
if(!isset($Settings['use_captcha'])) {
$Settings['use_captcha'] = "off"; }
if($Settings['use_captcha']!="on"&&
$PreAmIHidden = GetUserName($_SESSION['UserID'],$Settings['sqltable'],$SQLStat);
$AmIHidden = $PreAmIHidden['Hidden']; }
// Hide me from everyone! >_> ^_^ <_<
-$NavBarCurMonth = GMTimeGet("m",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
-$NavBarCurYear = GMTimeGet("Y",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$NavBarCurMonth = $usercurtime->format("m");
+$NavBarCurYear = $usercurtime->format("Y");
$NavBarCurDate = $NavBarCurMonth.$NavBarCurYear;
?>
<div class="NavBorder">
$YourLastPostTime=sql_result($resultlog2,0,"LastPostTime");
$YourBanTime=sql_result($resultlog2,0,"BanTime");
sql_free_result($resultlog2);
-$CGMTime = GMTimeStamp();
+$CGMTime = $utccurtime->getTimestamp();
if($YourBanTime!=0&&$YourBanTime!=null) {
if($YourBanTime>=$CGMTime) { $BanError = "yes"; }
if($YourBanTime<0) { $BanError = "yes"; } }
-$NewDay=GMTimeStamp();
+$NewDay=$utccurtime->getTimestamp();
$NewIP=$_SERVER['REMOTE_ADDR'];
if($BanError!="yes") {
$queryup = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"LastActive\"=%i,\"IP\"='%s' WHERE \"id\"=%i", array($NewDay,$NewIP,$YourIDAM));
gzip_page($Settings['use_gzip'],$GZipEncode['Type']); session_write_close(); die();*/
} } if($numlog2<=0||$numlog2>1||$BanError=="yes") { session_unset();
if($cookieDomain==null) {
-setcookie("MemberName", null, GMTimeStamp() - 3600, $cbasedir);
-setcookie("UserID", null, GMTimeStamp() - 3600, $cbasedir);
-setcookie("SessPass", null, GMTimeStamp() - 3600, $cbasedir);
-setcookie(session_name(), "", GMTimeStamp() - 3600, $cbasedir); }
+setcookie("MemberName", null, $utccurtime->getTimestamp() - 3600, $cbasedir);
+setcookie("UserID", null, $utccurtime->getTimestamp() - 3600, $cbasedir);
+setcookie("SessPass", null, $utccurtime->getTimestamp() - 3600, $cbasedir);
+setcookie(session_name(), "", $utccurtime->getTimestamp() - 3600, $cbasedir); }
if($cookieDomain!=null) {
if($cookieSecure===true) {
-setcookie("MemberName", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain, 1);
-setcookie("UserID", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain, 1);
-setcookie("SessPass", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain, 1);
-setcookie(session_name(), "", GMTimeStamp() - 3600, $cbasedir, $cookieDomain, 1); }
+setcookie("MemberName", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain, 1);
+setcookie("UserID", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain, 1);
+setcookie("SessPass", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain, 1);
+setcookie(session_name(), "", $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain, 1); }
if($cookieSecure===false) {
-setcookie("MemberName", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain);
-setcookie("UserID", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain);
-setcookie("SessPass", null, GMTimeStamp() - 3600, $cbasedir, $cookieDomain);
-setcookie(session_name(), "", GMTimeStamp() - 3600, $cbasedir, $cookieDomain); } }
+setcookie("MemberName", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain);
+setcookie("UserID", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain);
+setcookie("SessPass", null, $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain);
+setcookie(session_name(), "", $utccurtime->getTimestamp() - 3600, $cbasedir, $cookieDomain); } }
unset($_COOKIE[session_name()]);
$_SESSION = array(); //session_unset(); session_destroy();
$temp_user_ip = $_SERVER['REMOTE_ADDR'];
-$exptime = GMTimeStamp() - ini_get("session.gc_maxlifetime");
+$exptime = $utccurtime->getTimestamp() - ini_get("session.gc_maxlifetime");
sql_query(sql_pre_query("DELETE FROM \"".$Settings['sqltable']."sessions\" WHERE \"expires\" < %i OR ip_address='%s'", array($exptime,$temp_user_ip)),$SQLStat);
redirect("location",$rbasedir.url_maker($exfile['member'],$Settings['file_ext'],"act=login",$Settings['qstr'],$Settings['qsep'],$prexqstr['member'],$exqstr['member'],false)); sql_free_result($resultlog2); sql_free_result($gresult);
ob_clean(); header("Content-Type: text/plain; charset=".$Settings['charset']); $urlstatus = 302;
if($CaseInsensitive=="yes"&&$WholeWord!="yes") {
$_POST['NotePad'] = preg_replace("/".$Filter."/i", $Replace, $_POST['NotePad']); }
++$katarzynas; } sql_free_result($katarzynart);
- $NewDay=GMTimeStamp();
+ $NewDay=$utccurtime->getTimestamp();
$NewIP=$_SERVER['REMOTE_ADDR'];
$querynewskin = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"Notes\"='%s',\"LastActive\"=%i,\"IP\"='%s' WHERE \"id\"=%i", array($_POST['NotePad'],$NewDay,$NewIP,$_SESSION['UserID']));
sql_query($querynewskin,$SQLStat); } } }
if($CaseInsensitive=="yes"&&$WholeWord!="yes") {
$_POST['Signature'] = preg_replace("/".$Filter."/i", $Replace, $_POST['Signature']); }
++$katarzynas; } sql_free_result($katarzynart);
- $NewDay=GMTimeStamp();
+ $NewDay=$utccurtime->getTimestamp();
$NewIP=$_SERVER['REMOTE_ADDR'];
$querynewskin = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"Signature\"='%s',\"LastActive\"=%i,\"IP\"='%s' WHERE \"id\"=%i", array($_POST['Signature'],$NewDay,$NewIP,$_SESSION['UserID']));
sql_query($querynewskin,$SQLStat); } } }
if($_POST['AvatarSizeH']>=100) { $_POST['AvatarSizeH']=100; }
$fullavatarsize = $_POST['AvatarSizeW']."x".$_POST['AvatarSizeH'];
$_POST['Avatar'] = htmlentities($_POST['Avatar'], ENT_QUOTES, $Settings['charset']);
- $NewDay=GMTimeStamp();
+ $NewDay=$utccurtime->getTimestamp();
$NewIP=$_SERVER['REMOTE_ADDR'];
$_POST['Avatar'] = remove_spaces($_POST['Avatar']);
$querynewskin = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"Avatar\"='%s',\"AvatarSize\"='%s',\"LastActive\"=%i,\"IP\"='%s' WHERE \"id\"=%i", array($_POST['Avatar'],$fullavatarsize,$NewDay,$NewIP,$_SESSION['UserID']));
$User1DateFormat = htmlspecialchars($User1DateFormat, ENT_QUOTES, $Settings['charset']);
$User1TimeFormat=sql_result($result,$i,"TimeFormat");
$User1TimeFormat= htmlspecialchars($User1TimeFormat, ENT_QUOTES, $Settings['charset']);
-$tsa_mem = explode(":",$User1TimeZone);
-$TimeZoneArray = array("offset" => $User1TimeZone, "hour" => $tsa_mem[0], "minute" => $tsa_mem[1]);
-$User1DST=sql_result($result,$i,"DST");
$settingsact = url_maker($exfile['profile'],$Settings['file_ext'],"act=settings",$Settings['qstr'],$Settings['qsep'],$prexqstr['profile'],$exqstr['profile']);
-$profiletitle = " ".$ThemeSet['TitleDivider']." Board Settings"; ?>
+$profiletitle = " ".$ThemeSet['TitleDivider']." Board Settings";
+// http://www.tutorialspoint.com/php/php_function_timezone_identifiers_list.htm
+$timezone_identifiers = DateTimeZone::listIdentifiers();
+//$timezone_identifiers = timezone_identifiers_list();
+$zonelist['africa'] = array();
+$zonelist['america'] = array();
+$zonelist['antarctica'] = array();
+$zonelist['asia'] = array();
+$zonelist['atlantic'] = array();
+$zonelist['australia'] = array();
+$zonelist['europe'] = array();
+$zonelist['indian'] = array();
+$zonelist['pacific'] = array();
+$zonelist['etcetera'] = array();
+for ($i=0; $i < count($timezone_identifiers); $i++) {
+ $zonelookup = explode("/", $timezone_identifiers[$i]);
+ if(count($zonelookup)==1) { array_push($zonelist['etcetera'], array($timezone_identifiers[$i], $timezone_identifiers[$i])); }
+ if(count($zonelookup)>1) {
+ if($zonelookup[0]=="Africa") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['africa'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['africa'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="America") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['america'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['america'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Antarctica") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['antarctica'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['antarctica'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Asia") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['asia'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['asia'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Atlantic") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['atlantic'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['atlantic'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Australia") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['australia'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['australia'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Europe") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['europe'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['europe'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Indian") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['indian'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['indian'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Pacific") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['pacific'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['pacific'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ }
+}
+?>
<div class="TableMenuBorder">
<?php if($ThemeSet['TableStyle']=="div") { ?>
<div class="TableMenuRow1">
<tr style="text-align: left;">
<td style="width: 40%;"><label class="TextBoxLabel" for="YourOffSet">Your TimeZone:</label></td>
<td style="width: 60%;"><select id="YourOffSet" name="YourOffSet" class="TextBox">
+<optgroup label="Africa">
<?php
-$plusi = 1; $minusi = 12;
-$plusnum = 15; $minusnum = 0;
-while ($minusi > $minusnum) {
-if($TimeZoneArray['hour']==-$minusi) {
-echo "<option selected=\"selected\" value=\"-".$minusi."\">UTC - ".$minusi.":00 hours</option>\n"; }
-if($TimeZoneArray['hour']!=-$minusi) {
-echo "<option value=\"-".$minusi."\">UTC - ".$minusi.":00 hours</option>\n"; }
---$minusi; }
-if($TimeZoneArray['hour']==0) { ?>
-<option selected="selected" value="0">UTC +/- 0:00 hours</option>
-<?php } if($TimeZoneArray['hour']!=0) { ?>
-<option value="0">UTC +/- 0:00 hours</option>
-<?php }
-while ($plusi < $plusnum) {
-if($TimeZoneArray['hour']==$plusi) {
-echo "<option selected=\"selected\" value=\"".$plusi."\">UTC + ".$plusi.":00 hours</option>\n"; }
-if($TimeZoneArray['hour']!=$plusi) {
-echo "<option value=\"".$plusi."\">UTC + ".$plusi.":00 hours</option>\n"; }
-++$plusi; }
-?></select></td>
-</tr><tr style="text-align: left;">
- <td style="width: 40%;"><label class="TextBoxLabel" for="MinOffSet">Minute OffSet:</label></td>
- <td style="width: 60%;"><select id="MinOffSet" name="MinOffSet" class="TextBox">
-<option selected="selected" value="<?php echo $TimeZoneArray['minute']; ?>">Old Value (<?php echo "0:".$TimeZoneArray['minute']." minutes"; ?>)</option>
+$optsel="";
+for ($i=0; $i < count($zonelist['africa']); $i++) {
+ if($User1TimeZone==$zonelist['africa'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['africa'][$i][1]."\">".str_replace("_", " ", $zonelist['africa'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="America">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['america']); $i++) {
+ if($User1TimeZone==$zonelist['america'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['america'][$i][1]."\">".str_replace("_", " ", $zonelist['america'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Antarctica">
<?php
-$mini = 0; $minnum = 60;
-while ($mini < $minnum) {
-if(strlen($mini)==2) { $showmin = $mini; }
-if(strlen($mini)==1) { $showmin = "0".$mini; }
-echo "<option value=\"".$showmin."\">0:".$showmin." minutes</option>\n";
-++$mini; }
-?></select></td>
+$optsel="";
+for ($i=0; $i < count($zonelist['antarctica']); $i++) {
+ if($User1TimeZone==$zonelist['antarctica'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['antarctica'][$i][1]."\">".str_replace("_", " ", $zonelist['antarctica'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Asia">
+<?php
+for ($i=0; $i < count($zonelist['asia']); $i++) {
+ if($User1TimeZone==$zonelist['asia'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['asia'][$i][1]."\">".str_replace("_", " ", $zonelist['asia'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Atlantic">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['atlantic']); $i++) {
+ if($User1TimeZone==$zonelist['atlantic'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['atlantic'][$i][1]."\">".str_replace("_", " ", $zonelist['atlantic'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Australia">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['australia']); $i++) {
+ if($User1TimeZone==$zonelist['australia'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['australia'][$i][1]."\">".str_replace("_", " ", $zonelist['australia'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Europe">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['europe']); $i++) {
+ if($User1TimeZone==$zonelist['europe'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['europe'][$i][1]."\">".str_replace("_", " ", $zonelist['europe'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Indian">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['indian']); $i++) {
+ if($User1TimeZone==$zonelist['indian'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['indian'][$i][1]."\">".str_replace("_", " ", $zonelist['indian'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Pacific">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['pacific']); $i++) {
+ if($User1TimeZone==$zonelist['pacific'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['pacific'][$i][1]."\">".str_replace("_", " ", $zonelist['pacific'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Etcetera">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['etcetera']); $i++) {
+ if($User1TimeZone==$zonelist['etcetera'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['etcetera'][$i][1]."\">".str_replace("_", " ", $zonelist['etcetera'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+</select></td>
</tr><tr style="text-align: left;">
<td style="width: 40%;"><label class="TextBoxLabel" for="iDBTimeFormat">Insert time format string:</label></td>
<td style="width: 60%;"><input type="text" class="TextBox" name="iDBTimeFormat" id="iDBTimeFormat" value="<?php echo $User1DateFormat; ?>" /></td>
<option value="30">35</option>
<option value="30">40</option>
</select></td>
-</tr><tr style="text-align: left;">
- <td style="width: 40%;"><label class="TextBoxLabel" for="DST">Is <span title="Daylight Savings Time">DST</span> / <span title="Summer Time">ST</span> on or off:</label></td>
- <td style="width: 60%;"><select id="DST" name="DST" class="TextBox"><?php echo "\n" ?>
-<?php if($User1DST=="off"||$User1DST!="on") { ?>
-<option selected="selected" value="off">off</option><?php echo "\n" ?><option value="on">on</option>
-<?php } if($User1DST=="on") { ?>
-<option selected="selected" value="on">on</option><?php echo "\n" ?><option value="off">off</option>
-<?php } echo "\n" ?></select></td>
</tr></table>
<table style="text-align: left;">
<tr style="text-align: left;">
if($_POST['update']=="now") {
if($_POST['act']=="settings"&&
$_SESSION['UserGroup']!=$Settings['GuestGroup']) {
- $NewDay=GMTimeStamp();
+ $NewDay=$utccurtime->getTimestamp();
$NewIP=$_SERVER['REMOTE_ADDR'];
- if(!is_numeric($_POST['YourOffSet'])) { $_POST['YourOffSet'] = "0"; }
- if(!is_numeric($_POST['MinOffSet'])) { $_POST['MinOffSet'] = "00"; }
- if($_POST['MinOffSet']<0) { $_POST['MinOffSet'] = "00"; }
- $_POST['YourOffSet'] = $_POST['YourOffSet'].":".$_POST['MinOffSet'];
$_SESSION['UserTimeZone'] = $_POST['YourOffSet'];
- $_SESSION['UserDST'] = $_POST['DST'];
+ $usertz = new DateTimeZone($_SESSION['UserTimeZone']);
+ $usercurtime->setTimezone($usertz);
if(!is_numeric($_POST['RepliesPerPage'])) { $_POST['RepliesPerPage'] = "10"; }
if(!is_numeric($_POST['TopicsPerPage'])) { $_POST['TopicsPerPage'] = "10"; }
if(!is_numeric($_POST['MessagesPerPage'])) { $_POST['MessagesPerPage'] = "10"; }
$_POST['iDBTimeFormat'] = convert_strftime($_POST['iDBTimeFormat']);
$_POST['iDBDateFormat'] = convert_strftime($_POST['iDBDateFormat']);
- $querynewskin = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"UseTheme\"='%s',\"TimeZone\"='%s',\"DateFormat\"='%s',\"TimeFormat\"='%s',\"DST\"='%s',\"LastActive\"=%i,\"RepliesPerPage\"=%i,\"TopicsPerPage\"=%i,\"MessagesPerPage\"=%i,\"IP\"='%s' WHERE \"id\"=%i", array(chack_themes($_POST['skin']),$_POST['YourOffSet'],$_POST['iDBTimeFormat'],$_POST['iDBDateFormat'],$_POST['DST'],$NewDay,$_POST['RepliesPerPage'],$_POST['TopicsPerPage'],$_POST['MessagesPerPage'],$NewIP,$_SESSION['UserID']));
+ $querynewskin = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"UseTheme\"='%s',\"TimeZone\"='%s',\"DateFormat\"='%s',\"TimeFormat\"='%s',\"LastActive\"=%i,\"RepliesPerPage\"=%i,\"TopicsPerPage\"=%i,\"MessagesPerPage\"=%i,\"IP\"='%s' WHERE \"id\"=%i", array(chack_themes($_POST['skin']),$_POST['YourOffSet'],$_POST['iDBTimeFormat'],$_POST['iDBDateFormat'],$NewDay,$_POST['RepliesPerPage'],$_POST['TopicsPerPage'],$_POST['MessagesPerPage'],$NewIP,$_SESSION['UserID']));
sql_query($querynewskin,$SQLStat); } } }
if($_GET['act']=="profile") {
if($_POST['update']!="now") {
checkdate($BirthMonth,$BirthDay,$BirthYear)===false) {
$BirthMonth = "MM"; $BirthDay = "DD"; $BirthYear = "YYYY"; }
$User1Birthday = $BirthMonth."/".$BirthDay."/".$BirthYear; }
-$tsa_mem = explode(":",$User1TimeZone);
-$TimeZoneArray = array("offset" => $User1TimeZone, "hour" => $tsa_mem[0], "minute" => $tsa_mem[1]);
-$User1DST=sql_result($result,$i,"DST");
$profileact = url_maker($exfile['profile'],$Settings['file_ext'],"act=profile",$Settings['qstr'],$Settings['qsep'],$prexqstr['profile'],$exqstr['profile']);
$profiletitle = " ".$ThemeSet['TitleDivider']." Profile Editor";
+// http://www.tutorialspoint.com/php/php_function_timezone_identifiers_list.htm
+$timezone_identifiers = DateTimeZone::listIdentifiers();
+//$timezone_identifiers = timezone_identifiers_list();
+$zonelist['africa'] = array();
+$zonelist['america'] = array();
+$zonelist['antarctica'] = array();
+$zonelist['asia'] = array();
+$zonelist['atlantic'] = array();
+$zonelist['australia'] = array();
+$zonelist['europe'] = array();
+$zonelist['indian'] = array();
+$zonelist['pacific'] = array();
+$zonelist['etcetera'] = array();
+for ($i=0; $i < count($timezone_identifiers); $i++) {
+ $zonelookup = explode("/", $timezone_identifiers[$i]);
+ if(count($zonelookup)==1) { array_push($zonelist['etcetera'], array($timezone_identifiers[$i], $timezone_identifiers[$i])); }
+ if(count($zonelookup)>1) {
+ if($zonelookup[0]=="Africa") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['africa'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['africa'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="America") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['america'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['america'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Antarctica") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['antarctica'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['antarctica'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Asia") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['asia'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['asia'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Atlantic") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['atlantic'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['atlantic'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Australia") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['australia'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['australia'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Europe") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['europe'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['europe'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Indian") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['indian'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['indian'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Pacific") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['pacific'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['pacific'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ }
+}
?>
<div class="TableMenuBorder">
<?php if($ThemeSet['TableStyle']=="div") { ?>
</tr><tr style="text-align: left;">
<td style="width: 40%;"><label class="TextBoxLabel" for="YourOffSet">Your TimeZone:</label></td>
<td style="width: 60%;"><select id="YourOffSet" name="YourOffSet" class="TextBox">
-<option selected="selected" value="<?php echo $TimeZoneArray['hour']; ?>">Old Value (<?php echo $TimeZoneArray['hour'].":00 hours"; ?>)</option>
+<optgroup label="Africa">
<?php
-$plusi = 1; $minusi = 12;
-$plusnum = 15; $minusnum = 0;
-while ($minusi > $minusnum) {
-echo "<option value=\"-".$minusi."\">GMT - ".$minusi.":00 hours</option>\n";
---$minusi; }
+$optsel="";
+for ($i=0; $i < count($zonelist['africa']); $i++) {
+ if($User1TimeZone==$zonelist['africa'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['africa'][$i][1]."\">".str_replace("_", " ", $zonelist['africa'][$i][0])."</option>\n";
+ $optsel=""; }
?>
-<option value="0">GMT +/- 0:00 hours</option>
+</optgroup>
+<optgroup label="America">
<?php
-while ($plusi < $plusnum) {
-echo "<option value=\"".$plusi."\">GMT + ".$plusi.":00 hours</option>\n";
-++$plusi; }
-?></select></td>
-</tr><tr style="text-align: left;">
- <td style="width: 40%;"><label class="TextBoxLabel" for="MinOffSet">Minute OffSet:</label></td>
- <td style="width: 60%;"><select id="MinOffSet" name="MinOffSet" class="TextBox">
-<option selected="selected" value="<?php echo $TimeZoneArray['minute']; ?>">Old Value (<?php echo "0:".$TimeZoneArray['minute']." minutes"; ?>)</option>
+$optsel="";
+for ($i=0; $i < count($zonelist['america']); $i++) {
+ if($User1TimeZone==$zonelist['america'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['america'][$i][1]."\">".str_replace("_", " ", $zonelist['america'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Antarctica">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['antarctica']); $i++) {
+ if($User1TimeZone==$zonelist['antarctica'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['antarctica'][$i][1]."\">".str_replace("_", " ", $zonelist['antarctica'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Asia">
<?php
-$mini = 0; $minnum = 60;
-while ($mini < $minnum) {
-if(strlen($mini)==2) { $showmin = $mini; }
-if(strlen($mini)==1) { $showmin = "0".$mini; }
-echo "<option value=\"".$showmin."\">0:".$showmin." minutes</option>\n";
-++$mini; }
-?></select></td>
+for ($i=0; $i < count($zonelist['asia']); $i++) {
+ if($User1TimeZone==$zonelist['asia'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['asia'][$i][1]."\">".str_replace("_", " ", $zonelist['asia'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Atlantic">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['atlantic']); $i++) {
+ if($User1TimeZone==$zonelist['atlantic'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['atlantic'][$i][1]."\">".str_replace("_", " ", $zonelist['atlantic'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Australia">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['australia']); $i++) {
+ if($User1TimeZone==$zonelist['australia'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['australia'][$i][1]."\">".str_replace("_", " ", $zonelist['australia'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Europe">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['europe']); $i++) {
+ if($User1TimeZone==$zonelist['europe'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['europe'][$i][1]."\">".str_replace("_", " ", $zonelist['europe'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Indian">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['indian']); $i++) {
+ if($User1TimeZone==$zonelist['indian'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['indian'][$i][1]."\">".str_replace("_", " ", $zonelist['indian'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Pacific">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['pacific']); $i++) {
+ if($User1TimeZone==$zonelist['pacific'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['pacific'][$i][1]."\">".str_replace("_", " ", $zonelist['pacific'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Etcetera">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['etcetera']); $i++) {
+ if($User1TimeZone==$zonelist['etcetera'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['etcetera'][$i][1]."\">".str_replace("_", " ", $zonelist['etcetera'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+</select></td>
</tr><tr style="text-align: left;">
<td style="width: 40%;"><label class="TextBoxLabel" for="iDBTimeFormat">Insert time format string:</label></td>
<td style="width: 60%;"><input type="text" class="TextBox" name="iDBTimeFormat" id="iDBTimeFormat" value="<?php echo $User1DateFormat; ?>" /></td>
<option value="25">25</option>
<option value="30">30</option>
</select></td>
-</tr><tr style="text-align: left;">
- <td style="width: 40%;"><label class="TextBoxLabel" for="DST">Is <span title="Daylight Savings Time">DST</span> / <span title="Summer Time">ST</span> on or off:</label></td>
- <td style="width: 60%;"><select id="DST" name="DST" class="TextBox"><?php echo "\n" ?>
-<?php if($User1DST=="off"||$User1DST!="on") { ?>
-<option selected="selected" value="off">off</option><?php echo "\n" ?><option value="on">on</option>
-<?php } if($User1DST=="on") { ?>
-<option selected="selected" value="on">on</option><?php echo "\n" ?><option value="off">off</option>
-<?php } echo "\n" ?></select></td>
</tr></table>
<table style="text-align: left;">
<tr style="text-align: left;">
if(pre_strlen($BirthExpl[1])=="1") { $BirthExpl[1] = "0".$BirthExpl[1]; }
if(pre_strlen($BirthExpl[0])=="2"&&pre_strlen($BirthExpl[1])=="2"&&pre_strlen($BirthExpl[2])=="4") {
$BirthIn = mktime(12,12,12,$BirthExpl[0],$BirthExpl[1],$BirthExpl[2]);
- $BirthMonth=GMTimeChange("m",$BirthIn,0,0,"off");
- $BirthDay=GMTimeChange("d",$BirthIn,0,0,"off");
- $BirthYear=GMTimeChange("Y",$BirthIn,0,0,"off"); }
+ $eventendcurtime = new DateTime();
+ $eventendcurtime->setTimestamp($BirthIn);
+ $eventendcurtime->setTimezone($utctz);
+ $BirthMonth=$tmpusrcurtime->format("m");
+ $BirthDay=$tmpusrcurtime->format("d");
+ $BirthYear=$tmpusrcurtime->format("Y"); }
if(pre_strlen($BirthExpl[0])!="2"||pre_strlen($BirthExpl[1])!="2"||pre_strlen($BirthExpl[2])!="4") {
$BirthMonth="0"; $BirthDay="0"; $BirthYear="0"; } }
if (!is_numeric($BirthExpl[0])||!is_numeric($BirthExpl[1])||!is_numeric($BirthExpl[2])) {
$BirthMonth="0"; $BirthDay="0"; $BirthYear="0"; }
if(count($BirthExpl)!="3") { $BirthMonth="0"; $BirthDay="0"; $BirthYear="0"; } }
if($_POST['EventDay']==null) { $BirthMonth="0"; $BirthDay="0"; $BirthYear="0"; }
- if(!is_numeric($_POST['YourOffSet'])) { $_POST['YourOffSet'] = "0"; }
- if(!is_numeric($_POST['MinOffSet'])) { $_POST['MinOffSet'] = "00"; }
- if($_POST['MinOffSet']<0) { $_POST['MinOffSet'] = "00"; }
- $_POST['YourOffSet'] = $_POST['YourOffSet'].":".$_POST['MinOffSet'];
$_SESSION['UserTimeZone'] = $_POST['YourOffSet'];
- $_SESSION['UserDST'] = $_POST['DST'];
- $NewDay=GMTimeStamp();
+ $usertz = new DateTimeZone($_SESSION['UserTimeZone']);
+ $usercurtime->setTimezone($usertz);
+ $NewDay=$utccurtime->getTimestamp();
$NewIP=$_SERVER['REMOTE_ADDR'];
$_POST['Website'] = urlcheck($_POST['Website']);
$_POST['iDBTimeFormat'] = convert_strftime($_POST['iDBTimeFormat']);
$_POST['iDBDateFormat'] = convert_strftime($_POST['iDBDateFormat']);
- $querynewprofile = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"Interests\"='%s',\"Title\"='%s',\"Website\"='%s',\"TimeZone\"='%s',\"DateFormat\"='%s',\"TimeFormat\"='%s',\"Gender\"='%s',\"DST\"='%s',\"LastActive\"=%i,\"BirthMonth\"=%i,\"BirthDay\"=%i,\"BirthYear\"=%i,\"RepliesPerPage\"=%i,\"TopicsPerPage\"=%i,\"MessagesPerPage\"=%i,\"IP\"='%s' WHERE \"id\"=%i", array($_POST['Interests'],$_POST['Title'],$_POST['Website'],$_POST['YourOffSet'],$_POST['iDBTimeFormat'],$_POST['iDBDateFormat'],$_POST['YourGender'],$_POST['DST'],$NewDay,$BirthMonth,$BirthDay,$BirthYear,$_POST['RepliesPerPage'],$_POST['TopicsPerPage'],$_POST['MessagesPerPage'],$NewIP,$_SESSION['UserID']));
+ $querynewprofile = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"Interests\"='%s',\"Title\"='%s',\"Website\"='%s',\"TimeZone\"='%s',\"DateFormat\"='%s',\"TimeFormat\"='%s',\"Gender\"='%s',\"LastActive\"=%i,\"BirthMonth\"=%i,\"BirthDay\"=%i,\"BirthYear\"=%i,\"RepliesPerPage\"=%i,\"TopicsPerPage\"=%i,\"MessagesPerPage\"=%i,\"IP\"='%s' WHERE \"id\"=%i", array($_POST['Interests'],$_POST['Title'],$_POST['Website'],$_POST['YourOffSet'],$_POST['iDBTimeFormat'],$_POST['iDBDateFormat'],$_POST['YourGender'],$NewDay,$BirthMonth,$BirthDay,$BirthYear,$_POST['RepliesPerPage'],$_POST['TopicsPerPage'],$_POST['MessagesPerPage'],$NewIP,$_SESSION['UserID']));
sql_query($querynewprofile,$SQLStat); } } }
if($_GET['act']=="userinfo") {
if($_POST['update']!="now") {
$NewIP=$_SERVER['REMOTE_ADDR'];
if($Error!="Yes") {
if($_POST['Password']!="") {
- $NewSalt = salt_hmac(); $NewDay = GMTimeStamp();
+ $NewSalt = salt_hmac(); $NewDay = $utccurtime->getTimestamp();
if($Settings['use_hashtype']=="md2") { $iDBHash = "iDBH2";
$NewPassword = b64e_hmac($_POST['Password'],$OldJoined,$NewSalt,"md2"); }
if($Settings['use_hashtype']=="md4") { $iDBHash = "iDBH4";
$MyEditTime=sql_result($result,$i,"LastUpdate");
$MyEditUserID=sql_result($result,$i,"EditUser");
$MyEditUserName=sql_result($result,$i,"EditUserName");
-$MyTimeStamp=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$MyTimeStamp,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($MyTimeStamp);
+$tmpusrcurtime->setTimezone($usertz);
+$MyTimeStamp=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
$MyPost=sql_result($result,$i,"Post");
$MyDescription=sql_result($result,$i,"Description");
$requery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."members\" WHERE \"id\"=%i LIMIT 1", array($MyUserID));
$PreUserCanUseBBags = "no"; }
sql_free_result($memreresult);
$User1Joined=sql_result($reresult,$rei,"Joined");
-$User1Joined=GMTimeChange($_SESSION['iDBDateFormat'],$User1Joined,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($User1Joined);
+$tmpusrcurtime->setTimezone($usertz);
+$User1Joined=$tmpusrcurtime->format($_SESSION['iDBDateFormat']);
$User1Hidden=sql_result($reresult,$rei,"HiddenMember");
$User1LevelID=sql_result($reresult,$rei,"LevelID");
$lquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."levels\" WHERE \"id\"=%i LIMIT 1", array($User1LevelID));
$EditUserName = $EditUserNamePrefix.$EditUserName; }
if(isset($GroupNameSuffix)&&$GroupNameSuffix!=null) {
$EditUserName = $EditUserName.$EditUserNameSuffix; }
- $MyEditTime = GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$MyEditTime,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+ $tmpusrcurtime = new DateTime();
+ $tmpusrcurtime->setTimestamp($MyEditTime);
+ $tmpusrcurtime->setTimezone($usertz);
+ $MyEditTime = $tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
$MySubPost = "<div class=\"EditReply\"><br />This post has been edited by <b>".$EditUserName."</b> on ".$MyEditTime."</div>"; }
if($User1CanUseBBags1=="yes") { $MyPost = bbcode_parser($MyPost); }
if($User1CanExecPHP=="no") {
</table></div>
<div class="DivReplies"> </div>
<?php ++$i; } sql_free_result($result); }
-if((GMTimeStamp()<$_SESSION['LastPostTime']&&$_SESSION['LastPostTime']!=0)&&
+if(($utccurtime->getTimestamp()<$_SESSION['LastPostTime']&&$_SESSION['LastPostTime']!=0)&&
($_GET['act']=="create"||$_GET['act']=="edit"||$_GET['act']=="makereply"||$_GET['act']=="editreply")) {
$_GET['act'] = "view"; $_POST['act'] = null;
redirect("refresh",$rbasedir.url_maker($exfile['topic'],$Settings['file_ext'],"act=view&id=".$_GET['id']."&page=".$_GET['page'],$Settings['qstr'],$Settings['qsep'],$prexqstr['topic'],$exqstr['topic'],FALSE),"3"); ?>
<br />Click <a href="<?php echo url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>">here</a> to goto index page.<br />
</span><br /></td>
</tr>
-<?php } if ($Error!="Yes") { $LastActive = GMTimeStamp();
+<?php } if ($Error!="Yes") { $LastActive = $utccurtime->getTimestamp();
$gnrquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."forums\" WHERE \"id\"=%i".$ForumIgnoreList2." LIMIT 1", array($TopicForumID));
$gnrresult=sql_query($gnrquery,$SQLStat); $gnrnum=sql_num_rows($gnrresult);
$NumberPosts=sql_result($gnrresult,0,"NumPosts");
"(%i, %i, %i, %i, '%s', %i, %i, 0, '', '%s', '%s', '%s', '0')", array($TopicID,$TopicForumID,$TopicCatID,$User1ID,$User1Name,$LastActive,$LastActive,$_POST['ReplyPost'],$_POST['ReplyDesc'],$User1IP));
sql_query($query,$SQLStat);
$postid = sql_get_next_id($Settings['sqltable'],"posts",$SQLStat);
-$_SESSION['LastPostTime'] = GMTimeStamp() + $GroupInfo['FloodControl'];
+$_SESSION['LastPostTime'] = $utccurtime->getTimestamp() + $GroupInfo['FloodControl'];
if($User1ID!=0&&$User1ID!=-1) {
$queryupd = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"LastActive\"=%i,\"IP\"='%s',\"PostCount\"=%i,\"LastPostTime\"=%i WHERE \"id\"=%i", array($LastActive,$User1IP,$NewPostCount,$_SESSION['LastPostTime'],$User1ID));
sql_query($queryupd,$SQLStat); }
<br />Click <a href="<?php echo url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>">here</a> to goto index page.<br />
</span><br /></td>
</tr>
-<?php } if ($Error!="Yes") { $LastActive = GMTimeStamp();
+<?php } if ($Error!="Yes") { $LastActive = $utccurtime->getTimestamp();
$requery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."members\" WHERE \"id\"=%i LIMIT 1", array($_SESSION['UserID']));
$reresult=sql_query($requery,$SQLStat);
$renum=sql_num_rows($reresult);
++$rei; }
sql_free_result($reresult);
$EditUserIP=$_SERVER['REMOTE_ADDR'];
-$_SESSION['LastPostTime'] = GMTimeStamp() + $GroupInfo['FloodControl'];
+$_SESSION['LastPostTime'] = $utccurtime->getTimestamp() + $GroupInfo['FloodControl'];
if($_SESSION['UserID']!=0&&$_SESSION['UserID']!=-1) {
$queryupd = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"LastActive\"=%i,\"IP\"='%s',\"LastPostTime\"=%i WHERE \"id\"=%i", array($LastActive,$EditUserIP,$_SESSION['LastPostTime'],$_SESSION['UserID']));
sql_query($queryupd,$SQLStat); }
</table></div>
<div<?php echo $fps; ?>id="MkFastReply" class="MkFastReply"> </div>
<?php }
-$uviewlcuttime = GMTimeStamp();
+$uviewlcuttime = $utccurtime->getTimestamp();
$uviewltime = $uviewlcuttime - ini_get("session.gc_maxlifetime");
$uviewlquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."sessions\" WHERE \"expires\" >= %i AND \"session_id\"<>'%s' AND \"serialized_data\" LIKE '%s' ORDER BY \"expires\" DESC", array($uviewltime, session_id(), "%currenttopicid:".$TopicID.";%"));
$uviewlresult=sql_query($uviewlquery,$SQLStat);
if(isset($GroupNameSuffix)&&$GroupNameSuffix!=null) {
$UsersName = $UsersName.$GroupNameSuffix; }
$TheTime=sql_result($result,$i,"TimeStamp");
-$AtomTime=GMTimeChange("Y-m-d\TH:i:s\Z",$TheTime,0);
-//$OldRSSTime=GMTimeChange("Y-m-d\TH:i:s+0:00",$TheTime,0);
+$atomcurtime = new DateTime();
+$atomcurtime->setTimestamp($TheTime);
+$atomcurtime->setTimezone($utctz);
+$AtomTime=$atomcurtime->format("Y-m-d\TH:i:s\Z");
+//$OldRSSTime=$atomcurtime->format("Y-m-d\TH:i:s+0:00");
$OldRSSTime=$AtomTime;
-$TheTime=GMTimeChange("D, j M Y G:i:s \G\M\T",$TheTime,0);
+$TheTime=$atomcurtime->format("D, j M Y G:i:s \G\M\T");
$TopicName=sql_result($result,$i,"TopicName");
$ForumDescription=sql_result($result,$i,"Description");
if(isset($PermissionInfo['CanViewForum'][$ForumID])&&
$query = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."topics\" WHERE \"TopicName\" LIKE '%s' AND \"GuestName\"='%s'".$ForumIgnoreList4." ORDER BY \"LastUpdate\" DESC ".$SQLimit, array($_GET['search'],$_GET['msearch'],$PageLimit,$Settings['max_topics']));
$rnquery = sql_pre_query("SELECT COUNT(*) FROM \"".$Settings['sqltable']."topics\" WHERE \"TopicName\" LIKE '%s' AND \"GuestName\"='%s'".$ForumIgnoreList4."", array($_GET['search'],$_GET['msearch'])); } } }
if($_GET['type']=="getactive") {
-$active_month = GMTimeGet("m",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
-$active_day = GMTimeGet("d",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
-$active_year = GMTimeGet("Y",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$active_month = $usercurtime->format("m");
+$active_day = $usercurtime->format("d");
+$active_year = $usercurtime->format("Y");
$active_start = mktime(0,0,0,$active_month,$active_day,$active_year);
$active_end = mktime(23,59,59,$active_month,$active_day,$active_year);
$query = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."topics\" WHERE (\"TimeStamp\">=%i AND \"TimeStamp\"<=%i) OR (\"LastUpdate\">=%i AND \"LastUpdate\"<=%i)".$ForumIgnoreList4." ORDER BY \"LastUpdate\" DESC ".$SQLimit, array($active_start,$active_end,$active_start,$active_end,$PageLimit,$Settings['max_topics']));
$UsersID=sql_result($result,$i,"UserID");
$GuestsName=sql_result($result,$i,"GuestName");
$TheTime=sql_result($result,$i,"TimeStamp");
-$TheTime=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$TheTime,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($TheTime);
+$tmpusrcurtime->setTimezone($usertz);
+$TheTime=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
$NumReply=sql_result($result,$i,"NumReply");
$NumberPosts=$NumReply + 1;
$prepagelist = null;
$UsersID1=sql_result($glrresult,0,"UserID");
$GuestsName1=sql_result($glrresult,0,"GuestName");
$TimeStamp1=sql_result($glrresult,0,"TimeStamp");
-$TimeStamp1=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$TimeStamp1,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($TimeStamp1);
+$tmpusrcurtime->setTimezone($usertz);
+$TimeStamp1=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
$PreUsersName1 = GetUserName($UsersID1,$Settings['sqltable'],$SQLStat);
if($PreUsersName1['Name']===null) { $UsersID1 = -1;
$PreUsersName1 = GetUserName($UsersID1,$Settings['sqltable'],$SQLStat); }
<div class="NavLinks"><?php echo $ThemeSet['NavLinkIcon']; ?><a href="<?php echo url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>"><?php echo $Settings['board_name']; ?></a><?php echo $ThemeSet['NavLinkDivider']; ?><a href="<?php echo url_maker($exfile['index'],$Settings['file_ext'],"act=stats",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>#bstats">Board Statistics</a></div>
<div class="DivNavLinks"> </div>
<?php }
-$uolcuttime = GMTimeStamp();
+$uolcuttime = $utccurtime->getTimestamp();
$uoltime = $uolcuttime - ini_get("session.gc_maxlifetime");
$uolquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."sessions\" WHERE \"expires\" >= %i ORDER BY \"expires\" DESC", array($uoltime));
$uolresult=sql_query($uolquery,$SQLStat);
if($GroupInfo['CanViewIPAddress']=="yes") {
$NewestMemTitle = " title=\"".$NewestMem['IP']."\"";
$NewestMemExtraIP = " (<a title=\"".$NewestMem['IP']."\" onclick=\"window.open(this.href);return false;\" href=\"".sprintf($IPCheckURL,$NewestMem['IP'])."\">".$NewestMem['IP']."</a>)"; }
-$bdMonthChCk = GMTimeGet("m",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
-$bdDayChCk = GMTimeGet("d",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$bdMonthChCk = $usercurtime->format("m");
+$bdDayChCk = $usercurtime->format("d");
if($Settings['AdminValidate']=="on") {
$bdquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."members\" WHERE \"BirthDay\"=%i AND \"BirthMonth\"=%i AND \"HiddenMember\"='no' AND \"Validated\"='yes' AND \"GroupID\"<>%i ORDER BY \"id\"", array($bdDayChCk,$bdMonthChCk,$Settings['ValidateGroup'])); }
if($Settings['AdminValidate']!="on") {
$birthday['Name']=sql_result($bdresult,$bdi,"Name");
$birthday['IP']=sql_result($bdresult,$bdi,"IP");
$birthday['BirthYear']=sql_result($bdresult,$bdi,"BirthYear");
-$bdThisYear = GMTimeGet("Y",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$bdThisYear = $usercurtime->format("Y");
$birthday['Age'] = $bdThisYear - $birthday['BirthYear'];
$bdMemTitle = null;
if($GroupInfo['HasAdminCP']=="yes") {
if($bdi==$bdmemberz) { $bdstring = $bdstring.$bdMemURL." (<span style=\"font-weight: bold;\" title=\"".$birthday['Name']." is ".$birthday['Age']." years old\">".$birthday['Age']."</span>)"; }
++$bdi; }
sql_free_result($bdresult);
-$active_month = GMTimeGet("m",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
-$active_day = GMTimeGet("d",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
-$active_year = GMTimeGet("Y",$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$active_month = $usercurtime->format("m");
+$active_day = $usercurtime->format("d");
+$active_year = $usercurtime->format("Y");
$active_start = mktime(0,0,0,$active_month,$active_day,$active_year);
$active_end = mktime(23,59,59,$active_month,$active_day,$active_year);
$tdMembersOnline = null;
$tdMemList['Name']=sql_result($tdresult,$tdi,"Name");
$tdMemList['IP']=sql_result($tdresult,$tdi,"IP");
$tdMemList['LastActive']=sql_result($tdresult,$tdi,"LastActive");
-$tdMemList['LastActive']=GMTimeChange("M j Y, ".$_SESSION['iDBTimeFormat'],$tdMemList['LastActive'],$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($tdMemList['LastActive']);
+$tmpusrcurtime->setTimezone($usertz);
+$tdMemList['LastActive']=$tmpusrcurtime->format("M j Y, ".$_SESSION['iDBTimeFormat']);
if($tdi>0) { $tdMembersOnline .= ", "; }
$tdMembersOnline .= "<a title=\"".$tdMemList['Name']." was last active at ".$tdMemList['LastActive']."\" href=\"".url_maker($exfile['member'],$Settings['file_ext'],"act=view&id=".$tdMemList['ID'],$Settings['qstr'],$Settings['qsep'],$prexqstr['member'],$exqstr['member'])."\">".$tdMemList['Name']."</a>";
if($GroupInfo['CanViewIPAddress']=="yes") {
$UsersID=sql_result($glrresult,0,"UserID");
$GuestsName=sql_result($glrresult,0,"GuestName");
$TimeStamp=sql_result($glrresult,0,"TimeStamp");
-$TimeStamp=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$TimeStamp,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($TimeStamp);
+$tmpusrcurtime->setTimezone($usertz);
+$TimeStamp=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
sql_free_result($glrresult); }
$PreUsersName = GetUserName($UsersID,$Settings['sqltable'],$SQLStat);
if($PreUsersName['Name']===null) { $UsersID = -1;
$UsersID=sql_result($glrresult,0,"UserID");
$GuestsName=sql_result($glrresult,0,"GuestName");
$TimeStamp=sql_result($glrresult,0,"TimeStamp");
-$TimeStamp=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$TimeStamp,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($TimeStamp);
+$tmpusrcurtime->setTimezone($usertz);
+$TimeStamp=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
sql_free_result($glrresult); }
$PreUsersName = GetUserName($UsersID,$Settings['sqltable'],$SQLStat);
if($PreUsersName['Name']===null) { $UsersID = -1;
$ForumCheck = "skip";
if($CanHaveTopics!="yes") {
$ForumName = $SForumName; $ForumID = $SForumID; $InSubForum = $SFInSubForum;
-$uviewlcuttime = GMTimeStamp();
+$uviewlcuttime = $utccurtime->getTimestamp();
$uviewltime = $uviewlcuttime - ini_get("session.gc_maxlifetime");
if($InSubForum==0) {
$uviewlquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."sessions\" WHERE \"expires\" >= %i AND \"session_id\"<>'%s' AND (\"serialized_data\" LIKE '%s' OR \"serialized_data\" LIKE '%s') ORDER BY \"expires\" DESC", array($uviewltime, session_id(), "%currentforumid:0,".$ForumID.";%", "%currentforumid:".$ForumID.",%")); }
$UsersID=sql_result($result,$i,"UserID");
$GuestsName=sql_result($result,$i,"GuestName");
$TheTime=sql_result($result,$i,"TimeStamp");
-$TheTime=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$TheTime,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($TheTime);
+$tmpusrcurtime->setTimezone($usertz);
+$TheTime=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']);
$NumReply=sql_result($result,$i,"NumReply");
$NumberPosts=$NumReply + 1;
$prepagelist = null;
$UsersHidden1 = $PreUsersName1['Hidden'];
$GuestsName1=sql_result($glrresult,0,"GuestName");
$TimeStamp1=sql_result($glrresult,0,"TimeStamp");
-$TimeStamp1=GMTimeChange($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat'],$TimeStamp1,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']); }
+$tmpusrcurtime = new DateTime();
+$tmpusrcurtime->setTimestamp($TimeStamp1);
+$tmpusrcurtime->setTimezone($usertz);
+$TimeStamp1=$tmpusrcurtime->format($_SESSION['iDBDateFormat'].", ".$_SESSION['iDBTimeFormat']); }
$NumPages = null; $NumRPosts = $NumReply + 1;
if(!isset($Settings['max_posts'])) { $Settings['max_posts'] = 10; }
if($NumRPosts>$Settings['max_posts']) {
<div class="DivTopics"> </div>
<?php
sql_free_result($result); }
-if((GMTimeStamp()<$_SESSION['LastPostTime']&&$_SESSION['LastPostTime']!=0)&&($_GET['act']=="create"||$_GET['act']=="maketopic")) {
+if(($utccurtime->getTimestamp()<$_SESSION['LastPostTime']&&$_SESSION['LastPostTime']!=0)&&($_GET['act']=="create"||$_GET['act']=="maketopic")) {
$_GET['act'] = "view"; $_POST['act'] = null;
redirect("refresh",$rbasedir.url_maker($exfile['forum'],$Settings['file_ext'],"act=view&id=".$ForumID."&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['forum'],$exqstr['forum'],FALSE),"3"); ?>
<div class="Table1Border">
<br />Click <a href="<?php echo url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>">here</a> to goto index page.<br />
</span><br /></td>
</tr>
-<?php } if ($Error!="Yes") { $LastActive = GMTimeStamp();
+<?php } if ($Error!="Yes") { $LastActive = $utccurtime->getTimestamp();
$requery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."members\" WHERE \"id\"=%i LIMIT 1", array($MyUserID));
$reresult=sql_query($requery,$SQLStat);
$renum=sql_num_rows($reresult);
"(".$topicid.", %i, %i, %i, '%s', %i, %i, 0, '', '%s', '%s', '%s', '0')", array($ForumID,$ForumCatID,$User1ID,$User1Name,$LastActive,$LastActive,$_POST['TopicPost'],$_POST['TopicDesc'],$User1IP));
sql_query($query,$SQLStat);
$postid = sql_get_next_id($Settings['sqltable'],"posts",$SQLStat);
-$_SESSION['LastPostTime'] = GMTimeStamp() + $GroupInfo['FloodControl'];
+$_SESSION['LastPostTime'] = $utccurtime->getTimestamp() + $GroupInfo['FloodControl'];
if($User1ID!=0&&$User1ID!=-1) {
$queryupd = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"LastActive\"=%i,\"IP\"='%s',\"PostCount\"=%i,\"LastPostTime\"=%i WHERE \"id\"=%i", array($LastActive,$User1IP,$NewPostCount,$_SESSION['LastPostTime'],$User1ID));
sql_query($queryupd,$SQLStat); }
<?php /*<div class="DivPageLinks"> </div>*/ ?>
<div class="DivTable2"> </div>
<?php }
-$uviewlcuttime = GMTimeStamp();
+$uviewlcuttime = $utccurtime->getTimestamp();
$uviewltime = $uviewlcuttime - ini_get("session.gc_maxlifetime");
if($InSubForum==0) {
$uviewlquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."sessions\" WHERE \"expires\" >= %i AND \"session_id\"<>'%s' AND (\"serialized_data\" LIKE '%s' OR \"serialized_data\" LIKE '%s') ORDER BY \"expires\" DESC", array($uviewltime, session_id(), "%currentforumid:0,".$ForumID.";%", "%currentforumid:".$ForumID.",%")); }
Copyright 2004-2014 iDB Support - http://idb.berlios.de/
Copyright 2004-2014 Game Maker 2k - http://gamemaker2k.org/
- $FileInfo: versioninfo.php - Last Update: 08/15/2015 SVN 795 - Author: cooldude2k $
+ $FileInfo: versioninfo.php - Last Update: 08/18/2015 SVN 796 - Author: cooldude2k $
*/
$File3Name = basename($_SERVER['SCRIPT_NAME']);
if ($File3Name=="versioninfo.php"||$File3Name=="/versioninfo.php") {
return $return_var; }
// Version number and date stuff. :P
$VER1[0] = 0; $VER1[1] = 4; $VER1[2] = 8; $VERFull[1] = $VER1[0].".".$VER1[1].".".$VER1[2];
-$VER2[0] = "Alpha"; $VER2[1] = "Al"; $VER2[2] = "SVN"; $SubVerN = 795;
-$SVNDay[0] = 8; $SVNDay[1] = 15; $SVNDay[2] = 2015; $SVNDay[3] = $SVNDay[0]."/".$SVNDay[1]."/".$SVNDay[2];
+$VER2[0] = "Alpha"; $VER2[1] = "Al"; $VER2[2] = "SVN"; $SubVerN = 796;
+$SVNDay[0] = 8; $SVNDay[1] = 18; $SVNDay[2] = 2015; $SVNDay[3] = $SVNDay[0]."/".$SVNDay[1]."/".$SVNDay[2];
$AltName = "DF2k"; $AltName2 = "DF2k"; $RName = "iDB"; $SFName = "IntDB";
$RFullName = "Internet Discussion Boards"; $AltFullName = "Discussion Forums 2k"; $AltGM2k = "DF2k Team";
$VerCheckName = "iDB"; $AltVerCheckName = "DF2k"; $AltiDBHome = "http://df2k.gamemaker2k.org/";
@error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);
/* Get rid of session id in urls */
if(!in_array("ini_set", $disfunc)) {
-@ini_set("date.timezone","UTC");
@ini_set("default_mimetype","text/html");
@ini_set("zlib.output_compression", false);
@ini_set("zlib.output_compression_level", -1);
/* Change session hash type here */
@ini_set("session.hash_function", 1);
@ini_set("session.hash_bits_per_character", 6); }
-if(function_exists("date_default_timezone_set")) {
- @date_default_timezone_set("UTC"); }
if(file_exists('extrasettings.php')) {
require_once('extrasettings.php'); }
if(file_exists('extendsettings.php')) {
require_once('extendsettings.php'); }
+$deftz = new DateTimeZone(date_default_timezone_get());
+$defcurtime = new DateTime();
+$defcurtime->setTimezone($deftz);
+$utctz = new DateTimeZone("UTC");
+$utccurtime = new DateTime();
+$utccurtime->setTimestamp($defcurtime->getTimestamp());
+$utccurtime->setTimezone($utctz);
+$servcurtime = new DateTime();
+$servcurtime->setTimestamp($defcurtime->getTimestamp());
+$usercurtime = new DateTime();
+$usercurtime->setTimestamp($defcurtime->getTimestamp());
/* Do not change anything below this line unless you know what you are doing */
if(!isset($Settings['clean_ob'])) { $Settings['clean_ob'] = "off"; }
function idb_output_handler($buffer) { return $buffer; }
$disfunc = @preg_replace("/([\\s+|\\t+|\\n+|\\r+|\\0+|\\x0B+])/i", "", $disfunc);
if($disfunc!="ini_set") { $disfunc = explode(",",$disfunc); }
if($disfunc=="ini_set") { $disfunc = array("ini_set"); }
-if(!in_array("ini_set", $disfunc)) {
- @ini_set("date.timezone","UTC"); }
-if(function_exists("date_default_timezone_set")) {
- @date_default_timezone_set("UTC"); }
+$servtz = new DateTimeZone($_POST['YourOffSet']);
+$servcurtime->setTimezone($servtz);
+$usertz = new DateTimeZone($_POST['YourOffSet']);
+$usercurtime->setTimezone($usertz);
?>
<tr class="TableRow3" style="text-align: center;">
<td class="TableColumn3" colspan="2">
session_cache_limiter("private, no-cache, no-store, must-revalidate, pre-check=0, post-check=0, max-age=0");
header("Cache-Control: private, no-cache, no-store, must-revalidate, pre-check=0, post-check=0, max-age=0");
header("Pragma: private, no-cache, no-store, must-revalidate, pre-check=0, post-check=0, max-age=0");
-header("Date: ".gmdate("D, d M Y H:i:s")." GMT");
-header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
-header("Expires: ".gmdate("D, d M Y H:i:s")." GMT");
+header("Date: ".$utccurtime->format("D, d M Y H:i:s")." GMT");
+header("Last-Modified: ".$utccurtime->format("D, d M Y H:i:s")." GMT");
+header("Expires: ".$utccurtime->format("D, d M Y H:i:s")." GMT");
session_start();
//@register_shutdown_function("session_write_close");
if (pre_strlen($_POST['AdminPasswords'])<"3") { $Error="Yes";
$_POST['BoardURL'] = htmlentities($_POST['BoardURL'], ENT_QUOTES, $Settings['charset']);
$_POST['BoardURL'] = remove_spaces($_POST['BoardURL']);
$_POST['BoardURL'] = addslashes($_POST['BoardURL']);
-$YourDate = GMTimeStamp();
+$YourDate = $utccurtime->getTimestamp();
$YourEditDate = $YourDate + $dayconv['minute'];
$GSalt = salt_hmac(); $YourSalt = salt_hmac();
/* Fix The User Info for iDB */
echo "<br />".sql_errorno($SQLStat)."\n"; }
if ($Error!="Yes") {
$ServerUUID = rand_uuid("rand");
-if(!is_numeric($_POST['YourOffSet'])) { $_POST['YourOffSet'] = "0"; }
-if(!is_numeric($_POST['MinOffSet'])) { $_POST['MinOffSet'] = "00"; }
-if($_POST['MinOffSet']<0) { $_POST['MinOffSet'] = "00"; }
-$YourOffSet = $_POST['YourOffSet'].":".$_POST['MinOffSet'];
-$AdminDST = $_POST['DST'];
-$MyDay = GMTimeGet("d",$YourOffSet,0,$AdminDST);
-$MyMonth = GMTimeGet("m",$YourOffSet,0,$AdminDST);
-$MyYear = GMTimeGet("Y",$YourOffSet,0,$AdminDST);
+$MyDay = $usercurtime->format("d");
+$MyMonth = $usercurtime->format("m");
+$MyYear = $usercurtime->format("Y");
$MyYear10 = $MyYear+10;
$YourDateEnd = $YourDate;
-$EventMonth = GMTimeChange("m",$YourDate,0,0,"off");
-$EventMonthEnd = GMTimeChange("m",$YourDateEnd,0,0,"off");
-$EventDay = GMTimeChange("d",$YourDate,0,0,"off");
-$EventDayEnd = GMTimeChange("d",$YourDateEnd,0,0,"off");
-$EventYear = GMTimeChange("Y",$YourDate,0,0,"off");
-$EventYearEnd = GMTimeChange("Y",$YourDateEnd,0,0,"off");
+$EventMonth = $utccurtime->format("m");
+$EventMonthEnd = $utccurtime->format("m");
+$EventDay = $utccurtime->format("d");
+$EventDayEnd = $utccurtime->format("d");
+$EventYear = $utccurtime->format("Y");
+$EventYearEnd = $utccurtime->format("Y");
$KarmaBoostDay = $EventMonth.$EventDay;
$Settings['idb_time_format'] = "g:i A";
if(!isset($_POST['iDBTimeFormat'])) {
$UserIP = $_SERVER['REMOTE_ADDR'];
$PostCount = 2;
$Email = "admin@".$_SERVER['HTTP_HOST'];
-$AdminTime = $_POST['YourOffSet'].":".$_POST['MinOffSet'];
$GEmail = "guest@".$_SERVER['HTTP_HOST'];
$grand = rand(6,16); $i = 0; $gpass = "";
while ($i < $grand) {
"\$Settings['AdminValidate'] = 'off';\n".
"\$Settings['TestReferer'] = '".$_POST['TestReferer']."';\n".
"\$Settings['DefaultTheme'] = '".$_POST['DefaultTheme']."';\n".
-"\$Settings['DefaultTimeZone'] = '".$AdminTime."';\n".
-"\$Settings['DefaultDST'] = '".$AdminDST."';\n".
+"\$Settings['DefaultTimeZone'] = '".$_POST['YourOffSet']."';\n".
"\$Settings['start_date'] = ".$YourDate.";\n".
"\$Settings['idb_time_format'] = '".$Settings['idb_time_format']."';\n".
"\$Settings['idb_date_format'] = '".$Settings['idb_date_format']."';\n".
header("Cache-Control: private, no-cache, no-store, must-revalidate, pre-check=0, post-check=0, max-age=0");
header("Pragma: private, no-cache, no-store, must-revalidate, pre-check=0, post-check=0, max-age=0");
-header("Date: ".gmdate("D, d M Y H:i:s")." GMT");
-header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
-header("Expires: ".gmdate("D, d M Y H:i:s")." GMT");
+header("Date: ".$utccurtime->format("D, d M Y H:i:s")." GMT");
+header("Last-Modified: ".$utccurtime->format("D, d M Y H:i:s")." GMT");
+header("Expires: ".$utccurtime->format("D, d M Y H:i:s")." GMT");
output_reset_rewrite_vars();
if(!isset($SettDir['inc'])) { $SettDir['inc'] = "inc/"; }
if(!isset($SettDir['misc'])) { $SettDir['misc'] = "inc/misc/"; }
$fp = fopen("./settingsbak.php","w+");
fwrite($fp, $BoardSettings);
fclose($fp);
+// http://www.tutorialspoint.com/php/php_function_timezone_identifiers_list.htm
+$timezone_identifiers = DateTimeZone::listIdentifiers();
+//$timezone_identifiers = timezone_identifiers_list();
+$zonelist['africa'] = array();
+$zonelist['america'] = array();
+$zonelist['antarctica'] = array();
+$zonelist['asia'] = array();
+$zonelist['atlantic'] = array();
+$zonelist['australia'] = array();
+$zonelist['europe'] = array();
+$zonelist['indian'] = array();
+$zonelist['pacific'] = array();
+$zonelist['etcetera'] = array();
+for ($i=0; $i < count($timezone_identifiers); $i++) {
+ $zonelookup = explode("/", $timezone_identifiers[$i]);
+ if(count($zonelookup)==1) { array_push($zonelist['etcetera'], array($timezone_identifiers[$i], $timezone_identifiers[$i])); }
+ if(count($zonelookup)>1) {
+ if($zonelookup[0]=="Africa") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['africa'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['africa'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="America") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['america'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['america'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Antarctica") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['antarctica'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['antarctica'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Asia") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['asia'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['asia'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Atlantic") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['atlantic'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['atlantic'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Australia") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['australia'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['australia'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Europe") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['europe'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['europe'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Indian") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['indian'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['indian'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ if($zonelookup[0]=="Pacific") {
+ if(count($zonelookup)==2) {
+ array_push($zonelist['pacific'], array($zonelookup[1], $timezone_identifiers[$i])); }
+ if(count($zonelookup)==3) {
+ array_push($zonelist['pacific'], array($zonelookup[2].", ".$zonelookup[1], $timezone_identifiers[$i])); } }
+ }
+}
?>
<form style="display: inline;" method="post" id="install" action="install.php?act=Part4">
<table style="text-align: left;">
</select></td>
</tr><tr>
<td style="width: 50%;"><label class="TextBoxLabel" for="YourOffSet">Your TimeZone:</label></td>
- <td style="width: 50%;"><select id="YourOffSet" name="YourOffSet" class="TextBox"><?php
-if(date("I")!=1) { $myofftime = SeverOffSet(); $mydstime = "off"; }
-if(date("I")==1) { $myofftime = SeverOffSet()-1; $mydstime = "on"; }
-$plusi = 1; $minusi = 12;
-$plusnum = 15; $minusnum = 0;
-while ($minusi > $minusnum) {
-if($myofftime==-$minusi) {
-echo "<option selected=\"selected\" value=\"-".$minusi."\">UTC - ".$minusi.":00 hours</option>\n"; }
-if($myofftime!=-$minusi) {
-echo "<option value=\"-".$minusi."\">UTC - ".$minusi.":00 hours</option>\n"; }
---$minusi; }
-if($myofftime==0) { ?>
-<option selected="selected" value="0">UTC +/- 0:00 hours</option>
-<?php } if($myofftime!=0) { ?>
-<option value="0">UTC +/- 0:00 hours</option>
-<?php }
-while ($plusi < $plusnum) {
-if($myofftime==$plusi) {
-echo "<option selected=\"selected\" value=\"".$plusi."\">UTC + ".$plusi.":00 hours</option>\n"; }
-if($myofftime!=$plusi) {
-echo "<option value=\"".$plusi."\">UTC + ".$plusi.":00 hours</option>\n"; }
-++$plusi; }
-?></select></td>
-</tr><tr>
- <td style="width: 50%;"><label class="TextBoxLabel" for="MinOffSet">Minute OffSet:</label></td>
- <td style="width: 50%;"><select id="MinOffSet" name="MinOffSet" class="TextBox"><?php
-$mini = 0; $minnum = 60;
-while ($mini < $minnum) {
-if(strlen($mini)==2) { $showmin = $mini; }
-if(strlen($mini)==1) { $showmin = "0".$mini; }
-if($mini==0) {
-echo "\n<option selected=\"selected\" value=\"".$showmin."\">0:".$showmin." minutes</option>\n"; }
-if($mini!=0) {
-echo "<option value=\"".$showmin."\">0:".$showmin." minutes</option>\n"; }
-++$mini; }
-?></select></td>
-</tr><tr>
- <td style="width: 50%;"><label class="TextBoxLabel" for="DST">Is <span title="Daylight Savings Time">DST</span> / <span title="Summer Time">ST</span> on or off:</label></td>
- <td style="width: 50%;"><select id="DST" name="DST" class="TextBox"><?php echo "\n" ?>
-<?php if($mydstime=="off"||$mydstime!="on") { ?>
-<option selected="selected" value="off">off</option><?php echo "\n" ?><option value="on">on</option>
-<?php } if($mydstime=="on") { ?>
-<option selected="selected" value="on">on</option><?php echo "\n" ?><option value="off">off</option>
-<?php } echo "\n" ?></select></td>
+ <td style="width: 50%;"><select id="YourOffSet" name="YourOffSet" class="TextBox">
+<optgroup label="Africa">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['africa']); $i++) {
+ if(date_default_timezone_get()==$zonelist['africa'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['africa'][$i][1]."\">".str_replace("_", " ", $zonelist['africa'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="America">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['america']); $i++) {
+ if(date_default_timezone_get()==$zonelist['america'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['america'][$i][1]."\">".str_replace("_", " ", $zonelist['america'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Antarctica">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['antarctica']); $i++) {
+ if(date_default_timezone_get()==$zonelist['antarctica'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['antarctica'][$i][1]."\">".str_replace("_", " ", $zonelist['antarctica'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Asia">
+<?php
+for ($i=0; $i < count($zonelist['asia']); $i++) {
+ if(date_default_timezone_get()==$zonelist['asia'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['asia'][$i][1]."\">".str_replace("_", " ", $zonelist['asia'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Atlantic">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['atlantic']); $i++) {
+ if(date_default_timezone_get()==$zonelist['atlantic'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['atlantic'][$i][1]."\">".str_replace("_", " ", $zonelist['atlantic'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Australia">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['australia']); $i++) {
+ if(date_default_timezone_get()==$zonelist['australia'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['australia'][$i][1]."\">".str_replace("_", " ", $zonelist['australia'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Europe">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['europe']); $i++) {
+ if(date_default_timezone_get()==$zonelist['europe'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['europe'][$i][1]."\">".str_replace("_", " ", $zonelist['europe'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Indian">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['indian']); $i++) {
+ if(date_default_timezone_get()==$zonelist['indian'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['indian'][$i][1]."\">".str_replace("_", " ", $zonelist['indian'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Pacific">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['pacific']); $i++) {
+ if(date_default_timezone_get()==$zonelist['pacific'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['pacific'][$i][1]."\">".str_replace("_", " ", $zonelist['pacific'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+<optgroup label="Etcetera">
+<?php
+$optsel="";
+for ($i=0; $i < count($zonelist['etcetera']); $i++) {
+ if(date_default_timezone_get()==$zonelist['etcetera'][$i][1]) { $optsel = " selected=\"selected\""; }
+ echo "<option".$optsel." value=\"".$zonelist['etcetera'][$i][1]."\">".str_replace("_", " ", $zonelist['etcetera'][$i][0])."</option>\n";
+ $optsel=""; }
+?>
+</optgroup>
+</select></td>
</tr><tr>
<td style="width: 50%;"><label class="TextBoxLabel" for="iDBTimeFormat">Insert time format string:</label></td>
<td style="width: 50%;"><input type="text" class="TextBox" name="iDBTimeFormat" size="20" id="iDBTimeFormat" value="<?php echo "g:i A"; ?>" /></td>
$query=sql_pre_query("CREATE TABLE \"".$_POST['tableprefix']."members\" (\n".
" \"id\" INTEGER AUTO_INCREMENT PRIMARY KEY,\n".
" \"Name\" VARCHAR(150) NOT NULL default '' UNIQUE,\n".
-" \"UserPassword\" VARCHAR(250) NOT NULL default '',\n".
+" \"UserPassword\" VARCHAR(256) NOT NULL default '',\n".
" \"HashType\" VARCHAR(50) NOT NULL default '',\n".
" \"Email\" VARCHAR(256) NOT NULL default '' UNIQUE,\n".
" \"GroupID\" INTEGER NOT NULL default '0',\n".
" \"RepliesPerPage\" INTEGER NOT NULL default '0',\n".
" \"TopicsPerPage\" INTEGER NOT NULL default '0',\n".
" \"MessagesPerPage\" INTEGER NOT NULL default '0',\n".
-" \"TimeZone\" VARCHAR(5) NOT NULL default '0',\n".
+" \"TimeZone\" VARCHAR(256) NOT NULL default '0',\n".
" \"DateFormat\" VARCHAR(15) NOT NULL default '0',\n".
" \"TimeFormat\" VARCHAR(15) NOT NULL default '0',\n".
-" \"DST\" VARCHAR(5) NOT NULL default '0',\n".
" \"UseTheme\" VARCHAR(32) NOT NULL default '0',\n".
" \"IP\" VARCHAR(50) NOT NULL default '',\n".
" \"Salt\" VARCHAR(50) NOT NULL default ''\n".
");", array(null));
sql_query($query,$SQLStat);
-$query = sql_pre_query("INSERT INTO \"".$_POST['tableprefix']."members\" (\"id\", \"Name\", \"UserPassword\", \"HashType\", \"Email\", \"GroupID\", \"LevelID\", \"Validated\", \"HiddenMember\", \"WarnLevel\", \"Interests\", \"Title\", \"Joined\", \"LastActive\", \"LastPostTime\", \"BanTime\", \"BirthDay\", \"BirthMonth\", \"BirthYear\", \"Signature\", \"Notes\", \"Avatar\", \"AvatarSize\", \"Website\", \"Gender\", \"PostCount\", \"Karma\", \"KarmaUpdate\", \"RepliesPerPage\", \"TopicsPerPage\", \"MessagesPerPage\", \"TimeZone\", \"DateFormat\", \"TimeFormat\", \"DST\", \"UseTheme\", \"IP\", \"Salt\") VALUES\n".
-"(-1, 'Guest', '%s', 'GuestPassword', '%s', 4, -1, 'no', 'yes', 0, 'Guest Account', 'Guest', %i, %i, '0', '0', '0', '0', '0', '', 'Your Notes', 'http://', '100x100', '%s', 'UnKnow', 1, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '%s', '127.0.0.1', '%s'),\n".
-"(1, '%s', '%s', '".$iDBHashType."', '%s', 1, 1, 'yes', 'no', 0, '%s', 'Admin', %i, %i, '0', '0', '0', '0', '0', '%s', 'Your Notes', '%s', '100x100', '%s', 'UnKnow', 0, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '%s', '%s', '%s');", array($GuestPassword,$GEmail,$YourDate,$YourDate,$YourWebsite,$AdminTime,$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$AdminDST,$_POST['DefaultTheme'],$GSalt,$_POST['AdminUser'],$NewPassword,$_POST['AdminEmail'],$Interests,$YourDate,$YourDate,$NewSignature,$Avatar,$YourWebsite,$AdminTime,$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$AdminDST,$_POST['DefaultTheme'],$UserIP,$YourSalt));
+$query = sql_pre_query("INSERT INTO \"".$_POST['tableprefix']."members\" (\"id\", \"Name\", \"UserPassword\", \"HashType\", \"Email\", \"GroupID\", \"LevelID\", \"Validated\", \"HiddenMember\", \"WarnLevel\", \"Interests\", \"Title\", \"Joined\", \"LastActive\", \"LastPostTime\", \"BanTime\", \"BirthDay\", \"BirthMonth\", \"BirthYear\", \"Signature\", \"Notes\", \"Avatar\", \"AvatarSize\", \"Website\", \"Gender\", \"PostCount\", \"Karma\", \"KarmaUpdate\", \"RepliesPerPage\", \"TopicsPerPage\", \"MessagesPerPage\", \"TimeZone\", \"DateFormat\", \"TimeFormat\", \"UseTheme\", \"IP\", \"Salt\") VALUES\n".
+"(-1, 'Guest', '%s', 'GuestPassword', '%s', 4, -1, 'no', 'yes', 0, 'Guest Account', 'Guest', %i, %i, '0', '0', '0', '0', '0', '', 'Your Notes', 'http://', '100x100', '%s', 'UnKnow', 1, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '127.0.0.1', '%s'),\n".
+"(1, '%s', '%s', '".$iDBHashType."', '%s', 1, 1, 'yes', 'no', 0, '%s', 'Admin', %i, %i, '0', '0', '0', '0', '0', '%s', 'Your Notes', '%s', '100x100', '%s', 'UnKnow', 0, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '%s', '%s');", array($GuestPassword,$GEmail,$YourDate,$YourDate,$YourWebsite,$_POST['YourOffSet'],$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$_POST['DefaultTheme'],$GSalt,$_POST['AdminUser'],$NewPassword,$_POST['AdminEmail'],$Interests,$YourDate,$YourDate,$NewSignature,$Avatar,$YourWebsite,$_POST['YourOffSet'],$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$_POST['DefaultTheme'],$UserIP,$YourSalt));
sql_query($query,$SQLStat);
$query=sql_pre_query("CREATE TABLE \"".$_POST['tableprefix']."mempermissions\" (\n".
" \"id\" INTEGER AUTO_INCREMENT PRIMARY KEY,\n".
$query=sql_pre_query("CREATE TABLE IF NOT EXISTS \"".$_POST['tableprefix']."members\" (\n".
" \"id\" int(15) NOT NULL auto_increment,\n".
" \"Name\" varchar(150) COLLATE ".$Settings['sql_collate']." NOT NULL default '',\n".
-" \"UserPassword\" varchar(250) COLLATE ".$Settings['sql_collate']." NOT NULL default '',\n".
+" \"UserPassword\" varchar(256) COLLATE ".$Settings['sql_collate']." NOT NULL default '',\n".
" \"HashType\" varchar(50) COLLATE ".$Settings['sql_collate']." NOT NULL default '',\n".
" \"Email\" varchar(256) COLLATE ".$Settings['sql_collate']." NOT NULL default '',\n".
" \"GroupID\" int(15) NOT NULL default '0',\n".
" \"RepliesPerPage\" int(5) NOT NULL default '0',\n".
" \"TopicsPerPage\" int(5) NOT NULL default '0',\n".
" \"MessagesPerPage\" int(5) NOT NULL default '0',\n".
-" \"TimeZone\" varchar(5) COLLATE ".$Settings['sql_collate']." NOT NULL default '0',\n".
+" \"TimeZone\" varchar(256) COLLATE ".$Settings['sql_collate']." NOT NULL default '0',\n".
" \"DateFormat\" varchar(15) COLLATE ".$Settings['sql_collate']." NOT NULL default '0',\n".
" \"TimeFormat\" varchar(15) COLLATE ".$Settings['sql_collate']." NOT NULL default '0',\n".
-" \"DST\" varchar(5) COLLATE ".$Settings['sql_collate']." NOT NULL default '0',\n".
" \"UseTheme\" varchar(32) COLLATE ".$Settings['sql_collate']." NOT NULL default '0',\n".
" \"IP\" varchar(50) COLLATE ".$Settings['sql_collate']." NOT NULL default '',\n".
" \"Salt\" varchar(50) COLLATE ".$Settings['sql_collate']." NOT NULL default '',\n".
" UNIQUE KEY \"Email\" (\"Email\")\n".
") ENGINE=".$SQLStorageEngine." DEFAULT CHARSET=".$Settings['sql_charset']." COLLATE=".$Settings['sql_collate'].";", array(null));
sql_query($query,$SQLStat);
-$query = sql_pre_query("INSERT INTO \"".$_POST['tableprefix']."members\" (\"id\", \"Name\", \"UserPassword\", \"HashType\", \"Email\", \"GroupID\", \"LevelID\", \"Validated\", \"HiddenMember\", \"WarnLevel\", \"Interests\", \"Title\", \"Joined\", \"LastActive\", \"LastPostTime\", \"BanTime\", \"BirthDay\", \"BirthMonth\", \"BirthYear\", \"Signature\", \"Notes\", \"Avatar\", \"AvatarSize\", \"Website\", \"Gender\", \"PostCount\", \"Karma\", \"KarmaUpdate\", \"RepliesPerPage\", \"TopicsPerPage\", \"MessagesPerPage\", \"TimeZone\", \"DateFormat\", \"TimeFormat\", \"DST\", \"UseTheme\", \"IP\", \"Salt\") VALUES\n".
-"(-1, 'Guest', '%s', 'GuestPassword', '%s', 4, -1, 'no', 'yes', 0, 'Guest Account', 'Guest', %i, %i, '0', '0', '0', '0', '0', '', 'Your Notes', 'http://', '100x100', '%s', 'UnKnow', 1, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '%s', '127.0.0.1', '%s'),\n".
-"(1, '%s', '%s', '".$iDBHashType."', '%s', 1, 1, 'yes', 'no', 0, '%s', 'Admin', %i, %i, '0', '0', '0', '0', '0', '%s', 'Your Notes', '%s', '100x100', '%s', 'UnKnow', 0, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '%s', '%s', '%s');", array($GuestPassword,$GEmail,$YourDate,$YourDate,$YourWebsite,$AdminTime,$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$AdminDST,$_POST['DefaultTheme'],$GSalt,$_POST['AdminUser'],$NewPassword,$_POST['AdminEmail'],$Interests,$YourDate,$YourDate,$NewSignature,$Avatar,$YourWebsite,$AdminTime,$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$AdminDST,$_POST['DefaultTheme'],$UserIP,$YourSalt));
+$query = sql_pre_query("INSERT INTO \"".$_POST['tableprefix']."members\" (\"id\", \"Name\", \"UserPassword\", \"HashType\", \"Email\", \"GroupID\", \"LevelID\", \"Validated\", \"HiddenMember\", \"WarnLevel\", \"Interests\", \"Title\", \"Joined\", \"LastActive\", \"LastPostTime\", \"BanTime\", \"BirthDay\", \"BirthMonth\", \"BirthYear\", \"Signature\", \"Notes\", \"Avatar\", \"AvatarSize\", \"Website\", \"Gender\", \"PostCount\", \"Karma\", \"KarmaUpdate\", \"RepliesPerPage\", \"TopicsPerPage\", \"MessagesPerPage\", \"TimeZone\", \"DateFormat\", \"TimeFormat\", \"UseTheme\", \"IP\", \"Salt\") VALUES\n".
+"(-1, 'Guest', '%s', 'GuestPassword', '%s', 4, -1, 'no', 'yes', 0, 'Guest Account', 'Guest', %i, %i, '0', '0', '0', '0', '0', '', 'Your Notes', 'http://', '100x100', '%s', 'UnKnow', 1, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '127.0.0.1', '%s'),\n".
+"(1, '%s', '%s', '".$iDBHashType."', '%s', 1, 1, 'yes', 'no', 0, '%s', 'Admin', %i, %i, '0', '0', '0', '0', '0', '%s', 'Your Notes', '%s', '100x100', '%s', 'UnKnow', 0, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '%s', '%s');", array($GuestPassword,$GEmail,$YourDate,$YourDate,$YourWebsite,$_POST['YourOffSet'],$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$_POST['DefaultTheme'],$GSalt,$_POST['AdminUser'],$NewPassword,$_POST['AdminEmail'],$Interests,$YourDate,$YourDate,$NewSignature,$Avatar,$YourWebsite,$_POST['YourOffSet'],$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$_POST['DefaultTheme'],$UserIP,$YourSalt));
sql_query($query,$SQLStat);
$query=sql_pre_query("CREATE TABLE IF NOT EXISTS \"".$_POST['tableprefix']."mempermissions\" (\n".
" \"id\" int(15) NOT NULL auto_increment,\n".
$query=sql_pre_query("CREATE TABLE \"".$_POST['tableprefix']."members\" (\n".
" \"id\" SERIAL PRIMARY KEY NOT NULL,\n".
" \"Name\" varchar(150) NOT NULL default '',\n".
-" \"UserPassword\" varchar(250) NOT NULL default '',\n".
+" \"UserPassword\" varchar(256) NOT NULL default '',\n".
" \"HashType\" varchar(50) NOT NULL default '',\n".
" \"Email\" varchar(256) NOT NULL default '',\n".
" \"GroupID\" numeric(15) NOT NULL default '0',\n".
" \"RepliesPerPage\" numeric(5) NOT NULL default '0',\n".
" \"TopicsPerPage\" numeric(5) NOT NULL default '0',\n".
" \"MessagesPerPage\" numeric(5) NOT NULL default '0',\n".
-" \"TimeZone\" varchar(5) NOT NULL default '0',\n".
+" \"TimeZone\" varchar(256) NOT NULL default '0',\n".
" \"DateFormat\" VARCHAR(15) NOT NULL default '0',\n".
" \"TimeFormat\" VARCHAR(15) NOT NULL default '0',\n".
-" \"DST\" varchar(5) NOT NULL default '0',\n".
" \"UseTheme\" varchar(32) NOT NULL default '0',\n".
" \"IP\" varchar(50) NOT NULL default '',\n".
" \"Salt\" varchar(50) NOT NULL default '',\n".
" UNIQUE (\"Email\")\n".
");", array(null));
sql_query($query,$SQLStat);
-$query = sql_pre_query("INSERT INTO \"".$_POST['tableprefix']."members\" (\"id\", \"Name\", \"UserPassword\", \"HashType\", \"Email\", \"GroupID\", \"LevelID\", \"Validated\", \"HiddenMember\", \"WarnLevel\", \"Interests\", \"Title\", \"Joined\", \"LastActive\", \"LastPostTime\", \"BanTime\", \"BirthDay\", \"BirthMonth\", \"BirthYear\", \"Signature\", \"Notes\", \"Avatar\", \"AvatarSize\", \"Website\", \"Gender\", \"PostCount\", \"Karma\", \"KarmaUpdate\", \"RepliesPerPage\", \"TopicsPerPage\", \"MessagesPerPage\", \"TimeZone\", \"DateFormat\", \"TimeFormat\", \"DST\", \"UseTheme\", \"IP\", \"Salt\") VALUES\n".
-"(-1, 'Guest', '%s', 'GuestPassword', '%s', 4, -1, 'no', 'yes', 0, 'Guest Account', 'Guest', %i, %i, '0', '0', '0', '0', '0', '', 'Your Notes', 'http://', '100x100', '%s', 'UnKnow', 1, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '%s', '127.0.0.1', '%s'),\n".
-"(1, '%s', '%s', '".$iDBHashType."', '%s', 1, 1, 'yes', 'no', 0, '%s', 'Admin', %i, %i, '0', '0', '0', '0', '0', '%s', 'Your Notes', '%s', '100x100', '%s', 'UnKnow', 0, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '%s', '%s', '%s');", array($GuestPassword,$GEmail,$YourDate,$YourDate,$YourWebsite,$AdminTime,$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$AdminDST,$_POST['DefaultTheme'],$GSalt,$_POST['AdminUser'],$NewPassword,$_POST['AdminEmail'],$Interests,$YourDate,$YourDate,$NewSignature,$Avatar,$YourWebsite,$AdminTime,$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$AdminDST,$_POST['DefaultTheme'],$UserIP,$YourSalt));
+$query = sql_pre_query("INSERT INTO \"".$_POST['tableprefix']."members\" (\"id\", \"Name\", \"UserPassword\", \"HashType\", \"Email\", \"GroupID\", \"LevelID\", \"Validated\", \"HiddenMember\", \"WarnLevel\", \"Interests\", \"Title\", \"Joined\", \"LastActive\", \"LastPostTime\", \"BanTime\", \"BirthDay\", \"BirthMonth\", \"BirthYear\", \"Signature\", \"Notes\", \"Avatar\", \"AvatarSize\", \"Website\", \"Gender\", \"PostCount\", \"Karma\", \"KarmaUpdate\", \"RepliesPerPage\", \"TopicsPerPage\", \"MessagesPerPage\", \"TimeZone\", \"DateFormat\", \"TimeFormat\", \"UseTheme\", \"IP\", \"Salt\") VALUES\n".
+"(-1, 'Guest', '%s', 'GuestPassword', '%s', 4, -1, 'no', 'yes', 0, 'Guest Account', 'Guest', %i, %i, '0', '0', '0', '0', '0', '', 'Your Notes', 'http://', '100x100', '%s', 'UnKnow', 1, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '127.0.0.1', '%s'),\n".
+"(1, '%s', '%s', '".$iDBHashType."', '%s', 1, 1, 'yes', 'no', 0, '%s', 'Admin', %i, %i, '0', '0', '0', '0', '0', '%s', 'Your Notes', '%s', '100x100', '%s', 'UnKnow', 0, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '%s', '%s');", array($GuestPassword,$GEmail,$YourDate,$YourDate,$YourWebsite,$_POST['YourOffSet'],$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$_POST['DefaultTheme'],$GSalt,$_POST['AdminUser'],$NewPassword,$_POST['AdminEmail'],$Interests,$YourDate,$YourDate,$NewSignature,$Avatar,$YourWebsite,$_POST['YourOffSet'],$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$_POST['DefaultTheme'],$UserIP,$YourSalt));
sql_query($query,$SQLStat);
$query=sql_pre_query("CREATE TABLE \"".$_POST['tableprefix']."mempermissions\" (\n".
" \"id\" SERIAL PRIMARY KEY NOT NULL,\n".
$query=sql_pre_query("CREATE TABLE \"".$_POST['tableprefix']."members\" (\n".
" \"id\" INTEGER PRIMARY KEY NOT NULL,\n".
" \"Name\" VARCHAR(150) UNIQUE NOT NULL default '',\n".
-" \"UserPassword\" VARCHAR(250) NOT NULL default '',\n".
+" \"UserPassword\" VARCHAR(256) NOT NULL default '',\n".
" \"HashType\" VARCHAR(50) NOT NULL default '',\n".
" \"Email\" VARCHAR(256) UNIQUE NOT NULL default '',\n".
" \"GroupID\" INTEGER NOT NULL default '0',\n".
" \"RepliesPerPage\" INTEGER NOT NULL default '0',\n".
" \"TopicsPerPage\" INTEGER NOT NULL default '0',\n".
" \"MessagesPerPage\" INTEGER NOT NULL default '0',\n".
-" \"TimeZone\" VARCHAR(5) NOT NULL default '0',\n".
+" \"TimeZone\" VARCHAR(256) NOT NULL default '0',\n".
" \"DateFormat\" VARCHAR(15) NOT NULL default '0',\n".
" \"TimeFormat\" VARCHAR(15) NOT NULL default '0',\n".
-" \"DST\" VARCHAR(5) NOT NULL default '0',\n".
" \"UseTheme\" VARCHAR(32) NOT NULL default '0',\n".
" \"IP\" VARCHAR(50) NOT NULL default '',\n".
" \"Salt\" VARCHAR(50) NOT NULL default ''\n".
");", array(null));
sql_query($query,$SQLStat);
-$query = sql_pre_query("INSERT INTO \"".$_POST['tableprefix']."members\" (\"id\", \"Name\", \"UserPassword\", \"HashType\", \"Email\", \"GroupID\", \"LevelID\", \"Validated\", \"HiddenMember\", \"WarnLevel\", \"Interests\", \"Title\", \"Joined\", \"LastActive\", \"LastPostTime\", \"BanTime\", \"BirthDay\", \"BirthMonth\", \"BirthYear\", \"Signature\", \"Notes\", \"Avatar\", \"AvatarSize\", \"Website\", \"Gender\", \"PostCount\", \"Karma\", \"KarmaUpdate\", \"RepliesPerPage\", \"TopicsPerPage\", \"MessagesPerPage\", \"TimeZone\", \"DateFormat\", \"TimeFormat\", \"DST\", \"UseTheme\", \"IP\", \"Salt\") VALUES\n".
-"(-1, 'Guest', '%s', 'GuestPassword', '%s', 4, -1, 'no', 'yes', 0, 'Guest Account', 'Guest', %i, %i, '0', '0', '0', '0', '0', '', 'Your Notes', 'http://', '100x100', '%s', 'UnKnow', 1, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '%s', '127.0.0.1', '%s');", array($GuestPassword,$GEmail,$YourDate,$YourDate,$YourWebsite,$AdminTime,$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$AdminDST,$_POST['DefaultTheme'],$GSalt));
+$query = sql_pre_query("INSERT INTO \"".$_POST['tableprefix']."members\" (\"id\", \"Name\", \"UserPassword\", \"HashType\", \"Email\", \"GroupID\", \"LevelID\", \"Validated\", \"HiddenMember\", \"WarnLevel\", \"Interests\", \"Title\", \"Joined\", \"LastActive\", \"LastPostTime\", \"BanTime\", \"BirthDay\", \"BirthMonth\", \"BirthYear\", \"Signature\", \"Notes\", \"Avatar\", \"AvatarSize\", \"Website\", \"Gender\", \"PostCount\", \"Karma\", \"KarmaUpdate\", \"RepliesPerPage\", \"TopicsPerPage\", \"MessagesPerPage\", \"TimeZone\", \"DateFormat\", \"TimeFormat\", \"UseTheme\", \"IP\", \"Salt\") VALUES\n".
+"(-1, 'Guest', '%s', 'GuestPassword', '%s', 4, -1, 'no', 'yes', 0, 'Guest Account', 'Guest', %i, %i, '0', '0', '0', '0', '0', '', 'Your Notes', 'http://', '100x100', '%s', 'UnKnow', 1, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '127.0.0.1', '%s');", array($GuestPassword,$GEmail,$YourDate,$YourDate,$YourWebsite,$_POST['YourOffSet'],$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$_POST['DefaultTheme'],$GSalt));
sql_query($query,$SQLStat);
-$query = sql_pre_query("INSERT INTO \"".$_POST['tableprefix']."members\" (\"id\", \"Name\", \"UserPassword\", \"HashType\", \"Email\", \"GroupID\", \"Validated\", \"HiddenMember\", \"WarnLevel\", \"Interests\", \"Title\", \"Joined\", \"LastActive\", \"LastPostTime\", \"BanTime\", \"BirthDay\", \"BirthMonth\", \"BirthYear\", \"Signature\", \"Notes\", \"Avatar\", \"AvatarSize\", \"Website\", \"Gender\", \"PostCount\", \"Karma\", \"KarmaUpdate\", \"RepliesPerPage\", \"TopicsPerPage\", \"MessagesPerPage\", \"TimeZone\", \"DateFormat\", \"TimeFormat\", \"DST\", \"UseTheme\", \"IP\", \"Salt\") VALUES\n".
-"(1, '%s', '%s', '".$iDBHashType."', '%s', 1, 1, 'yes', 'no', 0, '%s', 'Admin', %i, %i, '0', '0', '0', '0', '0', '%s', 'Your Notes', '%s', '100x100', '%s', 'UnKnow', 0, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '%s', '%s', '%s');", array($_POST['AdminUser'],$NewPassword,$_POST['AdminEmail'],$Interests,$YourDate,$YourDate,$NewSignature,$Avatar,$YourWebsite,$AdminTime,$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$AdminDST,$_POST['DefaultTheme'],$UserIP,$YourSalt));
+$query = sql_pre_query("INSERT INTO \"".$_POST['tableprefix']."members\" (\"id\", \"Name\", \"UserPassword\", \"HashType\", \"Email\", \"GroupID\", \"Validated\", \"HiddenMember\", \"WarnLevel\", \"Interests\", \"Title\", \"Joined\", \"LastActive\", \"LastPostTime\", \"BanTime\", \"BirthDay\", \"BirthMonth\", \"BirthYear\", \"Signature\", \"Notes\", \"Avatar\", \"AvatarSize\", \"Website\", \"Gender\", \"PostCount\", \"Karma\", \"KarmaUpdate\", \"RepliesPerPage\", \"TopicsPerPage\", \"MessagesPerPage\", \"TimeZone\", \"DateFormat\", \"TimeFormat\", \"UseTheme\", \"IP\", \"Salt\") VALUES\n".
+"(1, '%s', '%s', '".$iDBHashType."', '%s', 1, 1, 'yes', 'no', 0, '%s', 'Admin', %i, %i, '0', '0', '0', '0', '0', '%s', 'Your Notes', '%s', '100x100', '%s', 'UnKnow', 0, 0, 0, 10, 10, 10, '%s', '%s', '%s', '%s', '%s', '%s');", array($_POST['AdminUser'],$NewPassword,$_POST['AdminEmail'],$Interests,$YourDate,$YourDate,$NewSignature,$Avatar,$YourWebsite,$_POST['YourOffSet'],$_POST['iDBDateFormat'],$_POST['iDBTimeFormat'],$_POST['DefaultTheme'],$UserIP,$YourSalt));
sql_query($query,$SQLStat);
$query=sql_pre_query("CREATE TABLE \"".$_POST['tableprefix']."mempermissions\" (\n".
" \"id\" INTEGER PRIMARY KEY NOT NULL,\n".
if(file_exists("install.php")) { header('Location: install.php'); die(); }
if(!file_exists("install.php")) { header("Content-Type: text/plain; charset=UTF-8");
echo "403 Error: Sorry could not find install.php\nTry uploading files again and if that dose not work try download iDB again."; die(); } }
-if(isset($Settings['sqldb'])&&
- function_exists("date_default_timezone_set")) {
- @date_default_timezone_set("UTC"); }
+if(isset($Settings['sqldb'])) {
+ $deftz = new DateTimeZone(date_default_timezone_get());
+ $defcurtime = new DateTime();
+ $defcurtime->setTimezone($deftz);
+ $utctz = new DateTimeZone("UTC");
+ $utccurtime = new DateTime();
+ $utccurtime->setTimestamp($defcurtime->getTimestamp());
+ $utccurtime->setTimezone($utctz);
+ $servtz = new DateTimeZone($Settings['DefaultTimeZone']);
+ $servcurtime = new DateTime();
+ $servcurtime->setTimestamp($defcurtime->getTimestamp());
+ $servcurtime->setTimezone($servtz);
+ $usercurtime = new DateTime();
+ $usercurtime->setTimestamp($defcurtime->getTimestamp()); }
if(!isset($Settings['sqlhost'])) { $Settings['sqlhost'] = "localhost"; }
if($Settings['fixpathinfo']=="on") {
$_SERVER['PATH_INFO'] = $_SERVER['ORIG_PATH_INFO'];
$MkIndexFile = $exfile['index'].$Settings['file_ext']; }
if($Settings['file_ext']=="no+ext"||$Settings['file_ext']=="no ext") {
$MkIndexFile = $exfile['index']; }
-$temp_session_data = "ViewingPage|s:9:\"?act=view\";ViewingFile|s:".strlen($MkIndexFile).":\"".$MkIndexFile."\";PreViewingTitle|s:7:\"Viewing\";ViewingTitle|s:11:\"Board index\";UserID|s:1:\"0\";UserIP|s:".strlen($_SERVER['REMOTE_ADDR']).":\"".$_SERVER['REMOTE_ADDR']."\";UserGroup|s:".strlen($Settings['GuestGroup']).":\"".$Settings['GuestGroup']."\";UserGroupID|s:1:\"4\";UserTimeZone|s:".strlen($Settings['DefaultTimeZone']).":\"".$Settings['DefaultTimeZone']."\";UserDST|s:".strlen($Settings['DefaultDST']).":\"".$Settings['DefaultDST']."\";";
+$temp_session_data = "ViewingPage|s:9:\"?act=view\";ViewingFile|s:".strlen($MkIndexFile).":\"".$MkIndexFile."\";PreViewingTitle|s:7:\"Viewing\";ViewingTitle|s:11:\"Board index\";UserID|s:1:\"0\";UserIP|s:".strlen($_SERVER['REMOTE_ADDR']).":\"".$_SERVER['REMOTE_ADDR']."\";UserGroup|s:".strlen($Settings['GuestGroup']).":\"".$Settings['GuestGroup']."\";UserGroupID|s:1:\"4\";UserTimeZone|s:".strlen($Settings['DefaultTimeZone']).":\"".$Settings['DefaultTimeZone']."\";";
$alt_temp_session_data['ViewingPage'] = "?act=view";
$alt_temp_session_data['ViewingFile'] = $MkIndexFile;
$alt_temp_session_data['PreViewingTitle'] = "Viewing";
$alt_temp_session_data['UserIP'] = $_SERVER['REMOTE_ADDR'];
$alt_temp_session_data['UserGroupID'] = "4";
$alt_temp_session_data['UserTimeZone'] = $Settings['DefaultTimeZone'];
-$alt_temp_session_data['UserDST'] = $Settings['DefaultDST'];
$alttemp_session_data = serialize($alt_temp_session_data);
$alt_temp_session_data = $alttemp_session_data;
$alttemp_session_data = null;
$result = sql_query(sql_pre_query("SELECT * FROM \"".$sqltable."sessions\" WHERE \"session_id\" = '%s'", array($id)),$SQLStat);
if (!sql_num_rows($result)) {
sql_query(sql_pre_query("DELETE FROM \"".$sqltable."sessions\" WHERE \"session_id\"<>'%s' AND \"ip_address\"='%s' AND \"user_agent\"='%s'", array($id,$temp_user_ip,$temp_user_agent)),$SQLStat);
-$time = GMTimeStamp();
+$utctz = new DateTimeZone("UTC");
+$utccurtime = new DateTime();
+$utccurtime->setTimezone($utctz);
+$time = $utccurtime->getTimestamp();
sql_query(sql_pre_query("INSERT INTO \"".$sqltable."sessions\" (\"session_id\", \"session_data\", \"serialized_data\", \"user_agent\", \"ip_address\", \"expires\") VALUES\n".
"('%s', '%s', '%s', '%s', '%s', %i)", array($id,$temp_session_data,$alt_temp_session_data,$temp_user_agent,$temp_user_ip,$time)),$SQLStat);
return '';
} else {
-$time = GMTimeStamp();
+$utctz = new DateTimeZone("UTC");
+$utccurtime = new DateTime();
+$utccurtime->setTimezone($utctz);
+$time = $utccurtime->getTimestamp();
$predata = sql_num_rows($result);
$data = "";
if($predata > 0) {
//Session Write Function
function sql_session_write($id,$data) {
global $sqltable,$SQLStat,$SQLSType,$temp_user_ip,$temp_user_agent;
-$time = GMTimeStamp();
+$utctz = new DateTimeZone("UTC");
+$utccurtime = new DateTime();
+$utccurtime->setTimezone($utctz);
+$time = $utccurtime->getTimestamp();
$rs = sql_query(sql_pre_query("UPDATE \"".$sqltable."sessions\" SET \"session_data\"='%s',\"serialized_data\"='%s',\"user_agent\"='%s',\"ip_address\"='%s',\"expires\"=%i WHERE \"session_id\"='%s'", array($data,serialize($_SESSION),$temp_user_agent,$temp_user_ip,$time,$id)),$SQLStat);
return true; }
//Session Destroy Function
//Session Garbage Collection Function
function sql_session_gc($maxlifetime) {
global $sqltable,$SQLStat;
-$time = GMTimeStamp() - $maxlifetime;
+$utctz = new DateTimeZone("UTC");
+$utccurtime = new DateTime();
+$utccurtime->setTimezone($utctz);
+$time = $utccurtime->getTimestamp() - $maxlifetime;
//sql_query(sql_pre_query('DELETE FROM \"'.$sqltable.'sessions\" WHERE \"expires\" < UNIX_TIMESTAMP();', array(null)),$SQLStat);
sql_query(sql_pre_query("DELETE FROM \"".$sqltable."sessions\" WHERE \"expires\" < %i", array($time)),$SQLStat);
return true; }
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Expires: ".gmdate("D, d M Y H:i:s")." GMT");
if(!isset($_COOKIE[$Settings['sqltable']."sess"])) {
-$exptime = GMTimeStamp() - ini_get("session.gc_maxlifetime");
+$exptime = $utccurtime->getTimestamp() - ini_get("session.gc_maxlifetime");
sql_query(sql_pre_query("DELETE FROM \"".$Settings['sqltable']."sessions\" WHERE \"expires\" < %i OR \"ip_address\"='%s' AND \"user_agent\"='%s'", array($exptime,$temp_user_ip,$temp_user_agent)),$SQLStat); }
if(!isset($_SESSION['CheckCookie'])) {
if(isset($_COOKIE['SessPass'])&&isset($_COOKIE['MemberName'])) {
if(isset($Settings['DefaultTimeZone'])) {
$_SESSION['UserTimeZone'] = $Settings['DefaultTimeZone'];
if(!isset($Settings['DefaultTimeZone'])) {
- $_SESSION['UserTimeZone'] = SeverOffSet().":00"; } } }
-$checktime = explode(":",$_SESSION['UserTimeZone']);
-if(count($checktime)!=2) {
- if(!isset($checktime[0])) { $checktime[0] = "0"; }
- if(!isset($checktime[1])) { $checktime[1] = "00"; }
- $_SESSION['UserTimeZone'] = $checktime[0].":".$checktime[1]; }
-if(!is_numeric($checktime[0])) { $checktime[0] = "0"; }
-if(!is_numeric($checktime[1])) { $checktime[1] = "00"; }
-if($checktime[1]<0) { $checktime[1] = "00"; $_SESSION['UserTimeZone'] = $checktime[0].":".$checktime[1]; }
-$checktimea = array("offset" => $_SESSION['UserTimeZone'], "hour" => $checktime[0], "minute" => $checktime[1]);
-if(!isset($_SESSION['UserDST'])) { $_SESSION['UserDST'] = null; }
-if($_SESSION['UserDST']==null) {
-if($Settings['DefaultDST']=="off") {
- $_SESSION['UserDST'] = "off"; }
-if($Settings['DefaultDST']=="on") {
- $_SESSION['UserDST'] = "on"; } }
+ $_SESSION['UserTimeZone'] = date_default_timezone_get(); } } }
+$usertz = new DateTimeZone($_SESSION['UserTimeZone']);
+$usercurtime->setTimestamp($defcurtime->getTimestamp());
+$usercurtime->setTimezone($usertz);
// Guest Stuff
if(isset($_SESSION['MemberName'])||
isset($_COOKIE['MemberName'])) {
$_GET['theme']=$Settings['DefaultTheme']; $_SESSION['Theme']=$Settings['DefaultTheme']; }
if (file_exists($SettDir['themes'].$_GET['theme']."/settings.php")) {
if($_SESSION['UserGroup']!=$Settings['GuestGroup']) {
-$NewDay=GMTimeStamp();
+$NewDay=$utccurtime->getTimestamp();
$qnewskin = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"UseTheme\"='%s',\"LastActive\"='%s' WHERE \"id\"=%i", array($_GET['theme'],$NewDay,$_SESSION['UserID']));
sql_query($qnewskin,$SQLStat); }
/* The file Theme Exists */ }
$_SESSION['Theme'] = chack_themes($_SESSION['Theme']);
if($_SESSION['UserGroup']!=$Settings['GuestGroup']) {
if($OldTheme!=$_SESSION['Theme']) {
-$NewDay=GMTimeStamp();
+$NewDay=$utccurtime->getTimestamp();
$qnewskin = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"UseTheme\"='%s',\"LastActive\"='%s' WHERE \"id\"=%i", array($_SESSION['Theme'],$NewDay,$_SESSION['UserID']));
sql_query($qnewskin,$SQLStat); } }
$_GET['theme']=$_SESSION['Theme']; }
$_GET['theme'] = $Settings['DefaultTheme'];
$_SESSION['Theme'] = $Settings['DefaultTheme'];
if($_SESSION['UserGroup']!=$Settings['GuestGroup']) {
-$NewDay=GMTimeStamp();
+$NewDay=$utccurtime->getTimestamp();
$qnewskin = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"UseTheme\"='%s',\"LastActive\"='%s' WHERE \"id\"=%i", array($_SESSION['Theme'],$NewDay,$_SESSION['UserID']));
sql_query($qnewskin,$SQLStat); }
$themequery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."themes\" WHERE \"Name\"='%s'", array($_GET['theme']));
if($_SESSION['Theme']!=null) {
$_GET['theme'] = $_SESSION['Theme']; } }
if($_SESSION['UserGroup']!=$Settings['GuestGroup']) {
-$NewDay=GMTimeStamp();
+$NewDay=$utccurtime->getTimestamp();
$qnewskin = sql_pre_query("UPDATE \"".$Settings['sqltable']."members\" SET \"UseTheme\"='%s',\"LastActive\"='%s' WHERE \"id\"=%i", array($_GET['theme'],$NewDay,$_SESSION['UserID']));
sql_query($qnewskin,$SQLStat); } }
require($SettDir['inc'].'sqlthemes.php');