You are here

function lang_dropdown_block_form in Language Switcher Dropdown 6

Generates block settings form

1 call to lang_dropdown_block_form()
lang_dropdown_block in ./lang_dropdown.module
Implements hook_block().

File

./lang_dropdown.module, line 195

Code

function lang_dropdown_block_form() {
  $settings = _lang_dropdown_get_settings();
  $form = array();
  $form['lang_dropdown'] = array(
    '#type' => 'fieldset',
    '#title' => t('Language switcher dropdown settings'),
    '#weight' => 10,
    '#collapsible' => TRUE,
    '#collapsed' => FALSE,
  );
  $form['lang_dropdown']['showall'] = array(
    '#type' => 'checkbox',
    '#title' => t('Show all enabled languages'),
    '#description' => t('Show all languages in the switcher no matter if there is a translation for the node or not. For languages without translation the switcher will redirect to homepage.'),
    '#default_value' => $settings['showall'],
  );
  $form['lang_dropdown']['js_widget'] = array(
    '#type' => 'checkbox',
    '#title' => t('Output as JavaScript widget instead of HTML <em>select</em> element.'),
    '#description' => t('This option is amazing with <a href="!href">Language icons</a> module.', array(
      '!href' => 'http://drupal.org/project/languageicons',
    )),
    '#default_value' => $settings['js_widget'],
  );
  $form['lang_dropdown']['width'] = array(
    '#type' => 'textfield',
    '#title' => t('Width of dropdown element'),
    '#size' => 5,
    '#maxlength' => 3,
    '#required' => TRUE,
    '#field_suffix' => 'px',
    '#default_value' => $settings['js_widget_settings']['width'],
  );
  $form['lang_dropdown']['wrapper'] = array(
    '#prefix' => '<div class="clear-block" id="lang-dropdown-js-widget-settings-wrapper">',
    '#suffix' => '</div>',
  );
  $num_rows = array(
    2,
    3,
    4,
    5,
    6,
    7,
    8,
    9,
    10,
  );
  $form['lang_dropdown']['wrapper']['visible_rows'] = array(
    '#type' => 'select',
    '#title' => t('Number of visible rows'),
    '#options' => array_combine($num_rows, $num_rows),
    '#default_value' => $settings['js_widget_settings']['visible_rows'],
  );
  $form['lang_dropdown']['wrapper']['row_height'] = array(
    '#type' => 'textfield',
    '#title' => t('Row height'),
    '#size' => 5,
    '#maxlength' => 3,
    '#required' => TRUE,
    '#field_suffix' => 'px',
    '#default_value' => $settings['js_widget_settings']['row_height'],
  );
  $form['lang_dropdown']['wrapper']['animation'] = array(
    '#type' => 'select',
    '#title' => t('Animation style for dropdown'),
    '#options' => array(
      'slideDown' => t('Slide down'),
      'fadeIn' => t('Fade in'),
    ),
    '#default_value' => $settings['js_widget_settings']['animation'],
  );
  $form['lang_dropdown']['languageicons'] = array(
    '#type' => 'fieldset',
    '#title' => t('Language icons settings'),
    '#weight' => 10,
    '#collapsible' => TRUE,
    '#collapsed' => TRUE,
  );
  if (module_exists('languageicons')) {
    $form['lang_dropdown']['languageicons']['flag_position'] = array(
      '#type' => 'select',
      '#title' => t('Position of the flag'),
      '#options' => array(
        0 => t('Before'),
        1 => t('After'),
      ),
      '#default_value' => $settings['languageicons']['flag_position'],
    );
  }
  else {
    $form['lang_dropdown']['languageicons']['#description'] = t('Enable <a href="!href">Language icons</a> to enhance the Language dropdown widget.', array(
      '!href' => 'http://drupal.org/project/languageicons',
    ));
  }
  return $form;
}