]> gitweb.fluxo.info Git - drupal/muamba.git/commitdiff
Adding muamba_availability_info()
authorSilvio Rhatto <rhatto@riseup.net>
Tue, 8 Nov 2011 22:20:14 +0000 (20:20 -0200)
committerSilvio Rhatto <rhatto@riseup.net>
Tue, 8 Nov 2011 22:20:14 +0000 (20:20 -0200)
muamba.business.inc
muamba.handlers.inc

index 56a12374f20b07954215366323a4a19cf50d70a2..d7de83484331e7021e520953fd3ec3145f50a752 100644 (file)
@@ -50,6 +50,12 @@ function muamba_actions_available($type = 'sent', $status) {
         );
       break;
 
+    case MUAMBA_REJECTED:
+      $actions = array(
+        MUAMBA_REQUESTED,
+        );
+      break;
+
     default:
       $actions = array();
     }
@@ -399,3 +405,34 @@ function muamba_widget($node, $size = 'small') {
     'size'         => $size,
   ));
 }
+
+/**
+ * Return availability information.
+ *
+ * @param $nid
+ *   Muamba node id.
+ *
+ * @return
+ *   Human-readable availability information.
+ */
+function muamba_availability_info($nid) {
+  global $user;
+  $available = muamba_check_availability($nid);
+  $node      = node_load($nid);
+
+  if ($node->uid == $user->uid) {
+    return t('You own the item');
+  }
+  elseif (!$available) {
+    $transaction = muamba_current_transactions($nid, $user->uid);
+
+    if (isset($transaction['uid']) && $transaction['uid'] == $user->uid) {
+      return t('You requested');
+    }
+    else {
+      return t('No');
+    }
+  }
+
+  return t('Yes');
+}
index 2745130d10b66ba17ab580203a0a0210ebe94507..06c80b13a5dee82f90efa45459146aaff2b59361 100644 (file)
@@ -47,28 +47,13 @@ class views_handler_field_muamba_available extends views_handler_field {
    * Renders the field.
    */
   function render($values) {
-    if (!isset($values->nid)) {
-      return;
-    }
-
-    global $user;
-    $available = muamba_check_availability($values->nid);
-
-    if ($values->users_node_uid == $user->uid) {
-      return t('You own the item');
+    if (isset($values->mid)) {
+      $transaction = muamba_get_transaction($values->mid);
+      return muamba_availability_info($transaction['nid']);
     }
-    elseif (!$available) {
-      $transaction = muamba_current_transactions($values->nid, $user->uid);
-
-      if (isset($transaction['uid']) && $transaction['uid'] == $user->uid) {
-        return t('You requested');
-      }
-      else {
-        return t('No');
-      }
+    elseif (isset($values->nid)) {
+      return muamba_availability_info($values->nid);
     }
-
-    return t('Yes');
   }
 }