aboutsummaryrefslogtreecommitdiff
path: root/muamba.db.inc
diff options
context:
space:
mode:
authorSilvio Rhatto <rhatto@riseup.net>2011-09-26 18:35:52 -0300
committerSilvio Rhatto <rhatto@riseup.net>2011-09-26 18:35:52 -0300
commitcfadf58b293e7c6c030184a8f2bd1d93688fe85a (patch)
tree6b575e956f198abbbad668fd8e61f896dc3d655f /muamba.db.inc
parent554b31a26576d3d1d0da8c91cc000202962403e2 (diff)
downloadmuamba-cfadf58b293e7c6c030184a8f2bd1d93688fe85a.tar.gz
muamba-cfadf58b293e7c6c030184a8f2bd1d93688fe85a.tar.bz2
Adding custom file for db functions
Diffstat (limited to 'muamba.db.inc')
-rw-r--r--muamba.db.inc72
1 files changed, 72 insertions, 0 deletions
diff --git a/muamba.db.inc b/muamba.db.inc
new file mode 100644
index 0000000..a8bf8b9
--- /dev/null
+++ b/muamba.db.inc
@@ -0,0 +1,72 @@
+<?php
+
+/**
+ * @fils
+ * Database functions.
+ */
+
+/**
+ * Check if user already requested an item.
+ *
+ * @param $nid
+ * Item nid.
+ *
+ * @param $uid
+ * Requester user nid.
+ *
+ * @return
+ * TRUE if user already requested an item, FALSE otherwise.
+ */
+function muamba_check_user_request($nid, $uid) {
+ $nid = (int) $nid;
+ $uid = (int) $uid;
+
+ $query = db_select('muamba', 'm');
+
+ $query
+ ->condition('m.nid', $nid, '=')
+ ->condition('m.uid', $uid, '=')
+ ->condition('m.status', MUAMBA_REQUESTED, '=');
+
+ $result = $query->countQuery()->execute()->fetchField();
+
+ if ($result > 0) {
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+/**
+ * Get the requests sent or received.
+ *
+ * @param $uid
+ * Requester user uid.
+ */
+function muamba_get_transactions($uid, $type = 'sent', $status = MUAMBA_REQUESTED) {
+ $uid = (int) $uid;
+ $query = db_select('muamba', 'm');
+
+ if ($type == 'sent') {
+ $query
+ ->condition('m.uid', $uid, '=')
+ ->condition('m.status', $status, '=')
+ ->fields('m', array('mid', 'uid', 'owner', 'thread_id'));
+ }
+ else {
+ $query
+ ->condition('m.owner', $uid, '=')
+ ->condition('m.status', $status, '=')
+ ->fields('m', array('mid', 'uid', 'owner', 'thread_id'));
+ }
+
+ $rows = array();
+ $results = $query->execute()->fetchAll();
+
+ // Sanitize the data before handing it off to the theme layer.
+ foreach ($results as $entry) {
+ $rows[] = array_map('check_plain', (array) $entry);
+ }
+
+ return $rows;
+}