]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
PostgreSQL - a few more query compatibility issues (submitted by oxygene)
authorCiaranG <ciaran@ciarang.com>
Wed, 11 Mar 2009 23:41:30 +0000 (23:41 +0000)
committerCiaranG <ciaran@ciarang.com>
Wed, 11 Mar 2009 23:46:23 +0000 (23:46 +0000)
actions/peopletag.php
actions/sup.php
classes/Notice.php

index 6b1e34f1ab47db2b1c2aa4d2f273171233ed23a2..5add75485808d08f704fa6dfa73faa34593605d6 100644 (file)
@@ -119,7 +119,7 @@ class PeopletagAction extends Action
                 'FROM profile JOIN profile_tag ' .
                 'ON profile.id = profile_tag.tagger ' .
                 'WHERE profile_tag.tagger = profile_tag.tagged ' .
-                'AND tag = "%s" ' .
+                "AND tag = '%s' " .
                 'ORDER BY profile_tag.modified DESC%s';
 
         $profile->query(sprintf($qry, $this->tag, $lim));
index f4b1cda230ef3776370aeb09217c548df11b7835..8ef9207facce41d02ac44d00ce771ec38df39720 100644 (file)
@@ -65,7 +65,9 @@ class SupAction extends Action
 
         $notice->query('SELECT profile_id, max(id) AS max_id ' .
                        'FROM notice ' .
-                       'WHERE created > (now() - ' . $seconds . ') ' .
+                        ((common_config('db','type') == 'pgsql') ?
+                       'WHERE extract(epoch from created) > (extract(epoch from now()) - ' . $seconds . ') ' :
+                       'WHERE created > (now() - ' . $seconds . ') ' ) .
                        'GROUP BY profile_id');
 
         $updates = array();
index 1e3b330f26e68217b55776dd286a9022dd82e64a..3087e39a78cf7be40bff84a453280799597625ad 100644 (file)
@@ -232,7 +232,11 @@ class Notice extends Memcached_DataObject
         $notice = new Notice();
         $notice->profile_id = $profile_id;
         $notice->content = $content;
-        $notice->whereAdd('now() - created < ' . common_config('site', 'dupelimit'));
+        if (common_config('db','type') == 'pgsql')
+            $notice->whereAdd('extract(epoch from now() - created) < ' . common_config('site', 'dupelimit'));
+        else
+            $notice->whereAdd('now() - created < ' . common_config('site', 'dupelimit'));
+
         $cnt = $notice->count();
         return ($cnt == 0);
     }