From aa32a6a55d3b275acc91aee2df03fbe3dd0814c8 Mon Sep 17 00:00:00 2001 From: Andreas Piening Date: Mon, 1 Feb 2010 05:27:18 +0000 Subject: [PATCH] MINOR: substituted proprietary SQL datetime operation --- code/BlogTree.php | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/code/BlogTree.php b/code/BlogTree.php index 16da62f..d6b81e3 100644 --- a/code/BlogTree.php +++ b/code/BlogTree.php @@ -159,14 +159,22 @@ class BlogTree extends Page { if(strpos($date, '-')) { $year = (int) substr($date, 0, strpos($date, '-')); $month = (int) substr($date, strpos($date, '-') + 1); - + if($year && $month) { - $dateCheck = "AND MONTH(\"BlogEntry\".\"Date\") = '$month' AND YEAR(\"BlogEntry\".\"Date\") = '$year'"; + if(method_exists(DB::getConn(), 'formattedDatetimeClause')) { + $dateCheck = 'AND ' . DB::getConn()->formattedDatetimeClause('"BlogEntry"."Date"', '%m') . " * 1 = $month AND " . DB::getConn()->formattedDatetimeClause('"BlogEntry"."Date"', '%Y') . " = '$year'"; + } else { + $dateCheck = "AND MONTH(\"BlogEntry\".\"Date\") = '$month' AND YEAR(\"BlogEntry\".\"Date\") = '$year'"; + } } } else { $year = (int) $date; if($year) { - $dateCheck = "AND YEAR(\"BlogEntry\".\"Date\") = '$year'"; + if(method_exists(DB::getConn(), 'formattedDatetimeClause')) { + $dateCheck = "AND " . DB::getConn()->formattedDatetimeClause('"BlogEntry"."Date"', '%Y') . " = '$year'"; + } else { + $dateCheck = "AND YEAR(\"BlogEntry\".\"Date\") = '$year'"; + } } } }