You are here

function pm_block_user_list in Privatemsg 6.2

Same name and namespace in other branches
  1. 7.2 pm_block_user/pm_block_user.pages.inc \pm_block_user_list()
  2. 7 pm_block_user/pm_block_user.pages.inc \pm_block_user_list()

Formbuilder function to build a simple form to block users.

1 string reference to 'pm_block_user_list'
pm_block_user_menu in pm_block_user/pm_block_user.module
Implements hook_menu().

File

pm_block_user/pm_block_user.pages.inc, line 74
User menu callbacks for pm_block_user.module.

Code

function pm_block_user_list() {
  global $user;
  $form['new'] = array(
    '#type' => 'fieldset',
    '#title' => t('Block a user'),
  );
  $form['new']['name'] = array(
    '#type' => 'textfield',
    '#title' => t('Username'),
    '#autocomplete_path' => 'messages/user/autocomplete',
    '#description' => t('Separate multiple names with commas.'),
    '#required' => TRUE,
  );
  $form['new']['submit'] = array(
    '#type' => 'submit',
    '#value' => t('Block user'),
    '#validate' => array(
      'pm_block_user_block_validate',
    ),
    '#submit' => array(
      'pm_block_user_block_submit',
    ),
  );
  $header = array(
    array(
      'data' => t('Username'),
      'field' => 'u.name',
      'sort' => 'asc',
    ),
    array(
      'data' => t('Operations'),
    ),
  );
  $result = pager_query('SELECT * FROM {pm_block_user} pmb INNER JOIN {users} u ON (u.uid = pmb.author) WHERE pmb.recipient = %d ' . tablesort_sql($header), 20, 0, NULL, $user->uid);
  $rows = array();
  while ($row = db_fetch_object($result)) {
    $rows[] = array(
      theme('username', privatemsg_user_load($row->author)),
      l(t('unblock'), 'messages/block/' . $row->author, array(
        'query' => drupal_get_destination(),
      )),
    );
  }
  $form['#header'] = $header;
  $form['#rows'] = $rows;
  return $form;
}