You are here

function imageblock_block in Image Block 6

Implements hook_block().

File

./imageblock.module, line 53
imageblock.module Primarily Drupal hooks.

Code

function imageblock_block($op = 'list', $delta = 0, $edit = array()) {
  switch ($op) {
    case 'list':
      $blocks = array();
      $result = db_query('SELECT bid, info FROM {imageblock} ORDER BY info');
      while ($block = db_fetch_object($result)) {
        $blocks[$block->bid]['info'] = $block->info;

        // Not worth caching.
        $blocks[$block->bid]['cache'] = BLOCK_NO_CACHE;
      }
      return $blocks;
    case 'configure':
      $box = array(
        'format' => FILTER_FORMAT_DEFAULT,
      );
      if ($delta) {
        $box = imageblock_get($delta);
      }
      $form = array();
      if (filter_access($box['format'])) {
        $form += block_box_form($box);
      }
      imageblock_configure_form($form, $box);
      return $form;
    case 'save':
      imageblock_save($edit, $delta);
      break;
    case 'view':
      $block = db_fetch_object(db_query('SELECT body, format, fid, data FROM {imageblock} WHERE bid = %d', $delta));
      $data['content'] = theme('imageblock_block', $block);
      return $data;
  }
}