MDL-90 moodlelib: Introducing get_cache_flag() - gets a row from cache_flags table
authormartinlanghoff <martinlanghoff>
Wed, 27 Feb 2008 02:57:33 +0000 (02:57 +0000)
committermartinlanghoff <martinlanghoff>
Wed, 27 Feb 2008 02:57:33 +0000 (02:57 +0000)
Useful if you intend to use cache_flags as a session
table. (Oops! Did I reveal my cunning plans?)

lib/moodlelib.php

index 66c37bff8127d8823f22bd298f4bfa150b9a1ec8..8ffddb5a7ac0a92469575bbc951a51c37313b386 100644 (file)
@@ -770,6 +770,27 @@ function get_cache_flags($type, $changedsince=NULL) {
     return $cf;
 }
 
+/**
+ * Get volatile flags
+ *
+ * @param string $type
+ * @param string $name
+ * @param int    $changedsince
+ * @return records array
+ *
+ */
+function get_cache_flag($type, $name, $changedsince=NULL) {
+
+    $type = addslashes($type);
+    $name = addslashes($name);
+
+    $sqlwhere = 'flagtype=\'' . $type . '\' AND name=\'' . $name . '\' AND expiry >= ' . time();
+    if ($changedsince !== NULL) {
+        $changedsince = (int)$changedsince;
+        $sqlwhere .= ' AND timemodified > ' . $changedsince;
+    }
+    return get_field_select('cache_flags', 'value', $sqlwhere);
+}
 
 /**
  * Set a volatile flag