You are here

function textsize_block in Text Size 5

Same name and namespace in other branches
  1. 6 textsize.module \textsize_block()

Implement hook_block().

File

./textsize.module, line 68
Display a text size changer on the page for a better web accessibility.

Code

function textsize_block($op = 'list', $delta = 0) {
  $textsize_cookie_expires = textsize_cookie_expires($mode = 'php');
  $textsize_cookie_domain = variable_get('textsize_cookie_domain', base_path());
  $block_title = textsize_block_title($title = 'title');
  $textsize_normal = variable_get('textsize_normal', 100);
  $textsize_increment = variable_get('textsize_increment', 10);
  $textsize_block_title = variable_get('textsize_block_title', 'text_size');
  if (!isset($_SESSION['textsize'])) {
    $_SESSION['textsize'] = $textsize_normal;
  }
  if (!isset($_COOKIE['textsize'])) {
    setcookie("textsize", $textsize_normal, time() + $textsize_cookie_expires, $textsize_cookie_domain, "");
  }
  if ($op == "list") {
    $block[0]["info"] = $block_title;
    return $block;
  }
  elseif ($op == 'view') {
    if (user_access('access textsize content')) {
      $textsize_block_type = variable_get('textsize_block_type', 'text');
      $block_content = theme('textsize_text');
      switch ($textsize_block_type) {
        case 'text':
          $block_content = theme('textsize_text');
          break;
        case 'image':
          $block_content = theme('textsize_image');
          break;
        case 'select':
          $block_content = drupal_get_form('textsize_form');
          break;
        default:
          $block_content = theme('textsize_text');
      }
      $block['subject'] = $block_title;
      $block['content'] = $block_content;
      return $block;
    }
  }
}