You are here

function ip_login_block in IP Login 6.2

Implementation of hook_block().

Makes simple a 'Log in by IP' link available for those not wanting to use the overridden 'User Login' block.

File

./ip_login.module, line 221
Allow user login by IP addresses, ranges or wildcards.

Code

function ip_login_block($op = 'list', $delta = 0, $edit = array()) {
  if ($op == 'list') {
    $blocks = array();
    $blocks[0] = array(
      'info' => t('Log in by IP link'),
      'cache' => BLOCK_NO_CACHE,
    );
    return $blocks;
  }
  elseif ($op == 'view') {

    // only show for anonymous users who can log in
    global $user;
    if ($user->uid > 0 || !ip_login_is_possible()) {
      return;
    }
    if ($delta != '0') {
      return;
    }

    // build simple block
    // @todo should be a hook_theme call
    $link_text = t(variable_get('ip_login_link_login_block', 'Log in automatically'));
    $markup = '<div class="ip-login-available"><span class="ip-login-link">';
    $markup .= l($link_text, ATTEMPT_IP_LOGIN, array(
      'query' => array(
        'ip_login_override_pages' => 'yes',
      ),
    ));
    $markup .= '</span></div>';
    $block = array(
      'subject' => t('Automatic login'),
      'content' => $markup,
    );
    return $block;
  }
}