You are here

function views_handler_field_user_relationships_status_link::render in User Relationships 7

Same name and namespace in other branches
  1. 6 user_relationship_views/views_handler_field_user_relationships_status_link.inc \views_handler_field_user_relationships_status_link::render()

Render the field.

Parameters

array $values: The values retrieved from the database.

Overrides views_handler_field::render

File

user_relationship_views/views_handler_field_user_relationships_status_link.inc, line 22
User Relationships Views integration. Show column with link to change approval status.

Class

views_handler_field_user_relationships_status_link
@file User Relationships Views integration. Show column with link to change approval status.

Code

function render($values) {
  global $user;

  //Do not show to guests or users without permission to have relationships.
  if (!$user->uid) {
    return;
  }

  //Requests for me to add or remove.
  if ($values->{$this->aliases['requestee_id']} === $user->uid) {

    //Remove the request.
    if ($values->{$this->aliases['approved']}) {
      return theme('user_relationships_remove_link', array(
        'uid' => $values->{$this->aliases['requestee_id']},
        'rid' => $values->{$this->aliases['rid']},
      ));
    }
    else {
      return theme('user_relationships_pending_request_approve_link', array(
        'uid' => $values->{$this->aliases['requestee_id']},
        'rid' => $values->{$this->aliases['rid']},
      )) . ' | ' . theme('user_relationships_pending_request_disapprove_link', array(
        'uid' => $values->{$this->aliases['requestee_id']},
        'rid' => $values->{$this->aliases['rid']},
      ));
    }
  }

  //Requests by me.
  if ($values->{$this->aliases['requester_id']} === $user->uid) {
    if ($values->{$this->aliases['approved']}) {
      return theme('user_relationships_remove_link', array(
        'uid' => $values->{$this->aliases['requester_id']},
        'rid' => $values->{$this->aliases['rid']},
      ));
    }
    else {
      return theme('user_relationships_pending_request_cancel_link', array(
        'uid' => $values->{$this->aliases['requester_id']},
        'rid' => $values->{$this->aliases['rid']},
      ));
    }
  }
}