You are here

function lang_dropdown_block in Language Switcher Dropdown 6

Implements hook_block().

File

./lang_dropdown.module, line 19

Code

function lang_dropdown_block($op = 'list', $delta = 0, $edit = array()) {
  if ($op == 'list') {
    $blocks[0] = array(
      'info' => t('Language switcher dropdown'),
      'cache' => BLOCK_NO_CACHE,
    );
    return $blocks;
  }
  elseif ($op == 'view' && variable_get('language_count', 1) > 1 && variable_get('language_negotiation', LANGUAGE_NEGOTIATION_NONE) != LANGUAGE_NEGOTIATION_NONE && $delta == 0) {
    switch ($delta) {
      case 0:
        $block = array(
          'subject' => t('Languages'),
          'content' => drupal_get_form('lang_dropdown_form'),
        );
        break;
    }
    return $block;
  }
  elseif ($op == 'configure' && $delta == 0) {
    drupal_add_js(drupal_get_path('module', 'lang_dropdown') . '/lang_dropdown.admin.js');
    return lang_dropdown_block_form();
  }
  elseif ($op == 'save' && $delta == 0) {
    $lang_dropdown_settings = array(
      'showall' => $edit['showall'],
      'js_widget' => $edit['js_widget'],
      'js_widget_settings' => array(
        'visible_rows' => $edit['visible_rows'],
        'row_height' => $edit['row_height'],
        'width' => $edit['width'],
        'animation' => $edit['animation'],
      ),
      'languageicons' => array(),
    );
    if (module_exists('languageicons')) {
      $lang_dropdown_settings['languageicons']['flag_position'] = $edit['flag_position'];
    }
    variable_set('lang_dropdown', $lang_dropdown_settings);
  }
}