From ff4ffc6d546d6d69bedd0018f8fbba40c867e468 Mon Sep 17 00:00:00 2001
From: thomascube <thomas@roundcube.net>
Date: Tue, 10 May 2011 03:08:03 -0400
Subject: [PATCH] Revert r4746 due to timestsamp issues with mysql; deprecate rcube_mdb2::unixtimestamp()
---
program/include/rcube_mdb2.php | 12 +++++-------
program/include/rcube_session.php | 5 ++---
2 files changed, 7 insertions(+), 10 deletions(-)
diff --git a/program/include/rcube_mdb2.php b/program/include/rcube_mdb2.php
index 3658328..a68d1dd 100644
--- a/program/include/rcube_mdb2.php
+++ b/program/include/rcube_mdb2.php
@@ -545,9 +545,12 @@
/**
* Return SQL statement to convert a field value into a unix timestamp
*
+ * This method is deprecated and should not be used anymore due to limitations
+ * of timestamp functions in Mysql (year 2038 problem)
+ *
* @param string $field Field name
* @return string SQL statement to use in query
- * @access public
+ * @deprecated
*/
function unixtimestamp($field)
{
@@ -574,12 +577,7 @@
*/
function fromunixtime($timestamp)
{
- switch ($this->db_provider) {
- case 'mysql':
- return 'FROM_UNIXTIME(' . intval($timestamp) . ')';
- default:
- return date("'Y-m-d H:i:s'", $timestamp);
- }
+ return date("'Y-m-d H:i:s'", $timestamp);
}
diff --git a/program/include/rcube_session.php b/program/include/rcube_session.php
index d3da36f..e4d9a87 100644
--- a/program/include/rcube_session.php
+++ b/program/include/rcube_session.php
@@ -131,12 +131,11 @@
public function db_read($key)
{
$sql_result = $this->db->query(
- sprintf("SELECT vars, ip, %s AS changed FROM %s WHERE sess_id = ?",
- $this->db->unixtimestamp('changed'), get_table_name('session')),
+ "SELECT vars, ip, changed FROM ".get_table_name('session')." WHERE sess_id = ?",
$key);
if ($sql_arr = $this->db->fetch_assoc($sql_result)) {
- $this->changed = $sql_arr['changed'];
+ $this->changed = strtotime($sql_arr['changed']);
$this->ip = $sql_arr['ip'];
$this->vars = base64_decode($sql_arr['vars']);
$this->key = $key;
--
Gitblit v1.9.1