muamba_status)) { return muamba_statuses($values->muamba_status); } } } /** * Filter by transaction status */ class views_handler_filter_muamba_status extends views_handler_filter_in_operator { function get_value_options() { if (!isset($this->value_options)) { $this->value_title = t('Transaction status'); $this->value_options = muamba_statuses(); } } } /** * Field handler for muamba transaction status. */ class views_handler_field_muamba_available extends views_handler_field { /** * Implements views_handler_field#query(). * * @see views_php_views_pre_execute() */ function query() { // Provide an field alias but don't actually alter the query. $this->field_alias = 'views_muamba_available_' . $this->position; } /** * Renders the field. */ function render($values) { global $user; $available = muamba_check_availability($values->nid); if ($values->users_node_uid == $user->uid) { return t('You own the item'); } elseif (!$available) { $transaction = muamba_current_transactions($values->nid, $user->uid); if ($transaction['uid'] == $user->uid) { return t('You requested'); } else { return t('No'); } } return t('Yes'); } } /** * Field handler for muamba transaction status. * * @todo */ class views_handler_field_muamba_actions extends views_handler_field { /** * Implements views_handler_field#query(). * * @see views_php_views_pre_execute() */ function query() { // Provide an field alias but don't actually alter the query. $this->field_alias = 'views_muamba_actions_' . $this->position; } /** * Renders the field. * * @todo */ function render($values) { dpm($values); return "TODO"; } }