From 4845a85685c3d9cb02334dd78a008f58b0b98c10 Mon Sep 17 00:00:00 2001 From: nikrou Date: Tue, 6 Jul 2010 12:17:37 +0000 Subject: Bug 1766 fixed : [PostgreSQL] unkown database function UNIX_TIMESTAMP() Add a new function pwg_db_date_to_ts() to calculate a timestamp from a date Merge from trunk git-svn-id: http://piwigo.org/svn/branches/2.1@6667 68402e56-0260-453c-a942-63ccdbb3a9ee --- include/dblayer/functions_mysql.inc.php | 5 +++++ include/dblayer/functions_pdo-sqlite.inc.php | 5 +++++ include/dblayer/functions_pgsql.inc.php | 5 +++++ include/dblayer/functions_sqlite.inc.php | 5 +++++ include/functions_session.inc.php | 2 +- 5 files changed, 21 insertions(+), 1 deletion(-) diff --git a/include/dblayer/functions_mysql.inc.php b/include/dblayer/functions_mysql.inc.php index aa56e1f98..7eb659409 100644 --- a/include/dblayer/functions_mysql.inc.php +++ b/include/dblayer/functions_mysql.inc.php @@ -636,6 +636,11 @@ function pwg_db_get_weekday($date) return 'WEEKDAY('.$date.')'; } +function pwg_db_date_to_ts($date) +{ + return 'UNIX_TIMESTAMP('.$date.')'; +} + // my_error returns (or send to standard output) the message concerning the // error occured for the last mysql query. function my_error($header, $die) diff --git a/include/dblayer/functions_pdo-sqlite.inc.php b/include/dblayer/functions_pdo-sqlite.inc.php index ce02af55c..f50bcc1dc 100644 --- a/include/dblayer/functions_pdo-sqlite.inc.php +++ b/include/dblayer/functions_pdo-sqlite.inc.php @@ -550,6 +550,11 @@ function pwg_db_get_weekday($date) return 'strftime(\'%w\',date('.$date.',\'-1 DAY\'))'; } +function pwg_db_date_to_ts($date) +{ + return 'UNIX_TIMESTAMP('.$date.')'; +} + // my_error returns (or send to standard output) the message concerning the // error occured for the last mysql query. function my_error($header, $die) diff --git a/include/dblayer/functions_pgsql.inc.php b/include/dblayer/functions_pgsql.inc.php index 598a699f5..3766d7cc6 100644 --- a/include/dblayer/functions_pgsql.inc.php +++ b/include/dblayer/functions_pgsql.inc.php @@ -596,6 +596,11 @@ function pwg_db_get_weekday($date) return 'EXTRACT(ISODOW FROM '.$date.')::INTEGER - 1'; } +function pwg_db_date_to_ts($date) +{ + return 'EXTRACT(EPOCH FROM '.$date.')'; +} + // my_error returns (or send to standard output) the message concerning the // error occured for the last pgsql query. function my_error($header, $die) diff --git a/include/dblayer/functions_sqlite.inc.php b/include/dblayer/functions_sqlite.inc.php index 109f5f21d..c12116355 100644 --- a/include/dblayer/functions_sqlite.inc.php +++ b/include/dblayer/functions_sqlite.inc.php @@ -561,6 +561,11 @@ function pwg_db_get_weekday($date) return 'strftime(\'%w\',date('.$date.',\'-1 DAY\'))'; } +function pwg_db_date_to_ts($date) +{ + return 'UNIX_TIMESTAMP('.$date.')'; +} + // my_error returns (or send to standard output) the message concerning the // error occured for the last mysql query. function my_error($header, $die) diff --git a/include/functions_session.inc.php b/include/functions_session.inc.php index 1c01f98ab..f8c3a4c58 100644 --- a/include/functions_session.inc.php +++ b/include/functions_session.inc.php @@ -175,7 +175,7 @@ function pwg_session_gc() $query = ' DELETE FROM '.SESSIONS_TABLE.' - WHERE UNIX_TIMESTAMP(NOW()) - UNIX_TIMESTAMP(expiration) > ' + WHERE '.pwg_db_date_to_ts('NOW()').' - '.pwg_db_date_to_ts('expiration').' > ' .$conf['session_length'].' ;'; pwg_query($query); -- cgit v1.2.3