[geeklog-cvs] geeklog: directory works
geeklog-cvs at lists.geeklog.net
geeklog-cvs at lists.geeklog.net
Tue Jan 26 15:53:39 EST 2010
changeset 7631:36a990997aa1
url: http://project.geeklog.net/cgi-bin/hgwebdir.cgi/geeklog/rev/36a990997aa1
user: stan <yankees26an at gmail.com>
date: Mon Jul 13 13:45:55 2009 -0400
description:
directory works
diffstat:
public_html/directory.php | 29 +++++++++++++++++++++++------
1 files changed, 23 insertions(+), 6 deletions(-)
diffs (83 lines):
diff -r 3a0a7fddcaa3 -r 36a990997aa1 public_html/directory.php
--- a/public_html/directory.php Sun Jul 12 18:14:00 2009 -0400
+++ b/public_html/directory.php Mon Jul 13 13:45:55 2009 -0400
@@ -165,7 +165,7 @@
*/
function DIR_navBar ($topic, $year, $month = 0)
{
- global $_CONF, $_TABLES, $LANG05, $LANG_DIR;
+ global $_CONF, $_TABLES, $LANG05, $LANG_DIR,$_DB_dbms;
$retval = '';
@@ -189,7 +189,8 @@
}
}
- $result = DB_query ("SELECT MIN(YEAR(date)) AS year FROM {$_TABLES['stories']}");
+ if($_DB_dbms=='pgsql'){$result = DB_query ("SELECT EXTRACT(Year from date) AS year FROM {$_TABLES['stories']}");}
+ else{$result = DB_query ("SELECT MIN(YEAR(date)) AS year FROM {$_TABLES['stories']}"); }
$A = DB_fetchArray ($result);
if ($prevyear < $A['year']) {
$prevyear = 0;
@@ -266,11 +267,20 @@
$lastday = DIR_lastDayOfMonth ($month, $year);
$end = sprintf ('%04d-%02d-%02d 23:59:59', $year, $month, $lastday);
- $sql = "SELECT sid,title,UNIX_TIMESTAMP(date) AS day,DATE_FORMAT(date, '%e') AS mday FROM {$_TABLES['stories']} WHERE (date >= '$start') AND (date <= '$end') AND (draft_flag = 0) AND (date <= NOW())";
- if ($topic != 'all') {
- $sql .= " AND (tid = '$topic')";
+ $sql = array();
+ $sql['mysql'] = "SELECT sid,title,UNIX_TIMESTAMP(date) AS day,DATE_FORMAT(date, '%e') AS mday FROM {$_TABLES['stories']} WHERE (date >= '$start') AND (date <= '$end') AND (draft_flag = 0) AND (date <= NOW())";
+ $sql['mssql'] = "SELECT sid,title,UNIX_TIMESTAMP(date) AS day,DATE_FORMAT(date, '%e') AS mday FROM {$_TABLES['stories']} WHERE (date >= '$start') AND (date <= '$end') AND (draft_flag = 0) AND (date <= NOW())";
+ $sql['pgsql'] = "SELECT sid,title,UNIX_TIMESTAMP(date) AS day,EXTRACT(day from date) AS mday FROM {$_TABLES['stories']} WHERE (date >= '$start') AND (date <= '$end') AND (draft_flag = 0) AND (date <= NOW())";
+ if ($topic != 'all') {
+ $sql['mysql'] .= " AND (tid = '$topic')";
+ $sql['mssql'] .= " AND (tid = '$topic')";
+ $sql['pgsql'] .= " AND (tid = '$topic')";
}
- $sql .= COM_getTopicSql ('AND') . COM_getPermSql ('AND')
+ $sql['mysql'] .= COM_getTopicSql ('AND') . COM_getPermSql ('AND')
+ . COM_getLangSQL ('sid', 'AND') . " ORDER BY date ASC";
+ $sql['mssql'] .= COM_getTopicSql ('AND') . COM_getPermSql ('AND')
+ . COM_getLangSQL ('sid', 'AND') . " ORDER BY date ASC";
+ $sql['pgsql'] .= COM_getTopicSql ('AND') . COM_getPermSql ('AND')
. COM_getLangSQL ('sid', 'AND') . " ORDER BY date ASC";
$result = DB_query ($sql);
@@ -345,18 +355,23 @@
$monthsql = array();
$monthsql['mysql'] = "SELECT DISTINCT MONTH(date) AS month,COUNT(*) AS count FROM {$_TABLES['stories']} WHERE (date >= '$start') AND (date <= '$end') AND (draft_flag = 0) AND (date <= NOW())";
$monthsql['mssql'] = "SELECT MONTH(date) AS month,COUNT(sid) AS count FROM {$_TABLES['stories']} WHERE (date >= '$start') AND (date <= '$end') AND (draft_flag = 0) AND (date <= NOW())";
+ $monthsql['pgsql'] = "SELECT EXTRACT(Month from date) AS month,COUNT(sid) AS count FROM {$_TABLES['stories']} WHERE (date >= '$start') AND (date <= '$end') AND (draft_flag = 0) AND (date <= NOW())";
if ($topic != 'all') {
$monthsql['mysql'] .= " AND (tid = '$topic')";
$monthsql['mssql'] .= " AND (tid = '$topic')";
+ $monthsql['pgsql'] .= " AND (tid = '$topic')";
}
$monthsql['mysql'] .= COM_getTopicSql ('AND') . COM_getPermSql ('AND')
. COM_getLangSQL ('sid', 'AND');
$monthsql['mssql'] .= COM_getTopicSql ('AND') . COM_getPermSql ('AND')
. COM_getLangSQL ('sid', 'AND');
+ $monthsql['pgsql'] .= COM_getTopicSql ('AND') . COM_getPermSql ('AND')
+ . COM_getLangSQL ('sid', 'AND');
$msql = array();
$msql['mysql'] = $monthsql['mysql'] . " GROUP BY MONTH(date) ORDER BY date ASC";
$msql['mssql'] = $monthsql['mssql'] . " GROUP BY MONTH(date) ORDER BY month(date) ASC";
+ $msql['pgsql'] = $monthsql['pgsql'] . " GROUP BY month,date ORDER BY DATE ASC";
$mresult = DB_query ($msql);
$nummonths = DB_numRows ($mresult);
@@ -433,9 +448,11 @@
$yearsql = array();
$yearsql['mysql'] = "SELECT DISTINCT YEAR(date) AS year,date FROM {$_TABLES['stories']} WHERE (draft_flag = 0) AND (date <= NOW())" . COM_getTopicSql ('AND') . COM_getPermSql ('AND') . COM_getLangSQL ('sid', 'AND');
$yearsql['mssql'] = "SELECT YEAR(date) AS year FROM {$_TABLES['stories']} WHERE (draft_flag = 0) AND (date <= NOW())" . COM_getTopicSql ('AND') . COM_getPermSql ('AND') . COM_getLangSQL ('sid', 'AND');
+ $yearsql['pgsql'] = "SELECT EXTRACT( YEAR from date) AS year FROM {$_TABLES['stories']} WHERE (draft_flag = 0) AND (date <= NOW())" . COM_getTopicSql ('AND') . COM_getPermSql ('AND') . COM_getLangSQL ('sid', 'AND');
$ysql = array();
$ysql['mysql'] = $yearsql['mysql'] . " GROUP BY YEAR(date) ORDER BY date DESC";
$ysql['mssql'] = $yearsql['mssql'] . " GROUP BY YEAR(date) ORDER BY YEAR(date) DESC";
+ $ysql['pgsql'] = $yearsql['pgsql'] . " GROUP BY year,date ORDER BY year DESC";
$yresult = DB_query ($ysql);
$numyears = DB_numRows ($yresult);
More information about the geeklog-cvs
mailing list