You are here

function user_relationships_ui_pending_requested in User Relationships 7

Same name and namespace in other branches
  1. 5.3 user_relationships_ui/user_relationships_ui.forms.inc \user_relationships_ui_pending_requested()
  2. 6 user_relationships_ui/user_relationships_ui.forms.inc \user_relationships_ui_pending_requested()

Approve, Decline, or Cancel confirmation form

2 string references to 'user_relationships_ui_pending_requested'
user_relationships_ui_pending_requested_ajax in user_relationships_ui/user_relationships_ui.forms.inc
Ajax handler function that is utilized to display the form in a popup rather than having the full page reload for the users
user_relationship_elaborations_form_alter in user_relationship_elaborations/user_relationship_elaborations.module
hook_form_alter() to catch the approval form

File

user_relationships_ui/user_relationships_ui.forms.inc, line 168

Code

function user_relationships_ui_pending_requested($form, &$form_state, $action, $account, $relationship) {
  global $user;
  $viewed_id = $account->uid;
  $form['rid'] = array(
    '#type' => 'value',
    '#value' => $relationship->rid,
  );
  $form['action'] = array(
    '#type' => 'value',
    '#value' => $action,
  );
  $form['viewed_id'] = array(
    '#type' => 'value',
    '#value' => $viewed_id,
  );

  // Pick the correct question message: approve and disapprove are requests to
  // current user, cancel is a request from current user.
  switch ($action) {
    case 'approve':
      $confirmation_message = t('Are you sure you want to approve the @rel_name relationship request from !name?', array(
        '@action' => $action,
        '!name' => theme('username', array(
          'account' => user_load($viewed_id == $relationship->requester_id ? $relationship->requestee_id : $relationship->requester_id),
        )),
      ) + user_relationships_type_translations($relationship));
      $action_message = t('Approve relationship');
      $request_url = 'relationships/received';
      break;
    case 'disapprove':
      $confirmation_message = t('Are you sure you want to decline the @rel_name relationship request from !name?', array(
        '@action' => $action,
        '!name' => theme('username', array(
          'account' => user_load($viewed_id == $relationship->requester_id ? $relationship->requestee_id : $relationship->requester_id),
        )),
      ) + user_relationships_type_translations($relationship));
      $action_message = t('Decline relationship');
      $request_url = 'relationships/received';
      break;
    default:
      $confirmation_message = t('Are you sure you want to cancel your @rel_name relationship request to !name?', array(
        '@action' => $action,
        '!name' => theme('username', array(
          'account' => user_load($viewed_id == $relationship->requester_id ? $relationship->requestee_id : $relationship->requester_id),
        )),
      ) + user_relationships_type_translations($relationship));
      $action_message = t('Cancel relationship');
      $request_url = 'relationships/sent';
  }

  // http://drupal.org/node/489954 respect destination param if given.
  if (isset($_GET['destination'])) {
    $dest = $_GET['destination'];
  }
  else {
    $dest = $viewed_id == $user->id ? $request_url : "user/{$viewed_id}/{$request_url}";
  }
  $output = confirm_form($form, $action_message, $dest, $confirmation_message, t('Yes'), t('No'), 'user_relationships_approve_confirm');
  return $output;
}