summaryrefslogtreecommitdiffstats
path: root/lib/class/rating.class.php
diff options
context:
space:
mode:
authorPaul Arthur <paul.arthur@flowerysong.com>2013-01-25 21:08:24 -0500
committerPaul Arthur <paul.arthur@flowerysong.com>2013-01-25 21:45:47 -0500
commit1069d54c85149ff1cb51563d6a1fc471695f8b47 (patch)
treee5c22762ef4d6c90dcdb3646a04de26e21ad071c /lib/class/rating.class.php
parentcad1380737f7ffcfa82d46ab3066823435a48a5d (diff)
downloadampache-1069d54c85149ff1cb51563d6a1fc471695f8b47.tar.gz
ampache-1069d54c85149ff1cb51563d6a1fc471695f8b47.tar.bz2
ampache-1069d54c85149ff1cb51563d6a1fc471695f8b47.zip
Move clean functions into their respective classes
Uniformly name them gc()
Diffstat (limited to 'lib/class/rating.class.php')
-rw-r--r--lib/class/rating.class.php11
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/class/rating.class.php b/lib/class/rating.class.php
index 616baad6..0943de2f 100644
--- a/lib/class/rating.class.php
+++ b/lib/class/rating.class.php
@@ -49,6 +49,17 @@ class Rating extends database_object {
} // Constructor
/**
+ * gc
+ *
+ * Remove ratings for items that no longer exist.
+ */
+ public static function gc() {
+ foreach(array('song', 'album', 'artist', 'video') as $object_type) {
+ Dba::write("DELETE FROM `rating` USING `rating` LEFT JOIN `$object_type` ON `$object_type`.`id` = `rating`.`object_type` WHERE `object_type` = '$object_type` AND `$object_type`.`id` IS NULL");
+ }
+ }
+
+ /**
* build_cache
* This attempts to get everything we'll need for this page load in a
* single query, saving on connection overhead