]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - classes/File_to_post.php
Only serve tagprofile HTML if we aren't POSTing via ajax
[quix0rs-gnu-social.git] / classes / File_to_post.php
index 95ac660f47972b29091184e171f0b6896488d345..b3c44d4a224f3a982c468922a050c666c0a0698a 100644 (file)
@@ -52,6 +52,7 @@ class File_to_post extends Managed_DataObject
                 'file_to_post_post_id_fkey' => array('notice', array('post_id' => 'id')),
             ),
             'indexes' => array(
+                'file_id_idx' => array('file_id'),
                 'post_id_idx' => array('post_id'),
             ),
         );
@@ -84,17 +85,30 @@ class File_to_post extends Managed_DataObject
         }
     }
 
-    function pkeyGet($kv)
+    static function getNoticeIDsByFile(File $file)
     {
-        return Memcached_DataObject::pkeyGet('File_to_post', $kv);
+        $f2p = new File_to_post();
+
+        $f2p->selectAdd();
+        $f2p->selectAdd('post_id');
+
+        $f2p->file_id = $file->id;
+
+        $ids = array();
+
+        if (!$f2p->find()) {
+            throw new NoResultException($f2p);
+        }
+
+        return $f2p->fetchAll('post_id');
     }
 
-    function delete()
+    function delete($useWhere=false)
     {
         $f = File::getKV('id', $this->file_id);
-        if (!empty($f)) {
+        if ($f instanceof File) {
             $f->blowCache();
         }
-        return parent::delete();
+        return parent::delete($useWhere);
     }
 }