From 470cfd7fe8ea97b476eb4ca4fb430eae2ffae669 Mon Sep 17 00:00:00 2001 From: Silvio Rhatto Date: Thu, 6 Oct 2011 17:18:53 -0300 Subject: Coding muamba_reject() --- muamba.business.inc | 39 ++++++++++++++++++++++++++++++++++----- 1 file changed, 34 insertions(+), 5 deletions(-) (limited to 'muamba.business.inc') diff --git a/muamba.business.inc b/muamba.business.inc index cd9dc5d..9d17f92 100644 --- a/muamba.business.inc +++ b/muamba.business.inc @@ -127,7 +127,10 @@ function muamba_request($nid) { return t('The item owner has blocked you from asking this item.'); } - // TODO: check if the item is available + // Check if the item is available + if (!muamba_check_availability($nid)) { + return t('Item not available'); + } // Check if user already requested the item if (muamba_check_user_request($nid, $user->uid)) { @@ -175,7 +178,7 @@ function muamba_accept($mid) { global $user; $mid = (int) $mid; $transaction = muamba_get_transaction($mid); - $node = node_load($transaction->nid); + $node = node_load($transaction['nid']); // Access check if (!muamba_has_management_access($node)) { @@ -183,7 +186,7 @@ function muamba_accept($mid) { } // Status check - if ($transaction->status != MUAMBA_REQUESTED) { + if ($transaction['status'] != MUAMBA_REQUESTED) { drupal_not_found(); } @@ -207,10 +210,36 @@ function muamba_accept($mid) { * * @param $mid * Transaction id. - * - * @todo */ function muamba_reject($mid) { + global $user; + $mid = (int) $mid; + $transaction = muamba_get_transaction($mid); + $node = node_load($transaction['nid']); + + // Access check + if (!muamba_has_management_access($node)) { + drupal_not_found(); + } + + // Status check + if ($transaction['status'] != MUAMBA_REQUESTED) { + drupal_not_found(); + } + + // Update database + $update = db_update('muamba') + ->fields(array( + 'status' => MUAMBA_REJECTED, + )) + ->condition('mid', $mid, '=') + ->execute(); + + // Notify item owner + $message = theme('muamba_reject_message', array('transaction' => $transaction)); + $reply = privatemsg_reply($transaction['thread_id'], $message); + + return t('Rejected item request.'); } /** -- cgit v1.2.3