You are here

function apachesolr_multilingual_schema_generator_form in Apache Solr Multilingual 6.2

Same name and namespace in other branches
  1. 6 apachesolr_multilingual.schema_generator.inc \apachesolr_multilingual_schema_generator_form()

Implements hook_form().

Parameters

unknown_type $form_state:

Return value

unknown_type

2 string references to 'apachesolr_multilingual_schema_generator_form'
apachesolr_multilingual_menu in ./apachesolr_multilingual.module
Implements hook_menu().
apachesolr_multilingual_textfile_form_alter in apachesolr_multilingual_textfile/apachesolr_multilingual_textfile.module

File

./apachesolr_multilingual.schema_generator.inc, line 26
Schema generator for multilingual search

Code

function apachesolr_multilingual_schema_generator_form($form_state) {
  $active_languages = locale_language_list();
  $selected_languages = variable_get('apachesolr_multilingual_languages', array());
  $language_count = 0;
  foreach ($selected_languages as $lang) {
    if ($lang) {
      $language_count++;
    }
  }
  if ($language_count < 1) {
    $form['info'] = array(
      '#type' => 'item',
      '#value' => t('No language selected! You have to !link at least one language.', array(
        '!link' => l(t('select'), 'admin/settings/apachesolr/multilingual'),
      )),
    );
  }
  else {
    $form['schema_file_select'] = array(
      '#type' => 'checkboxes',
      '#title' => t('Selected languages'),
      '#options' => $active_languages,
      '#disabled' => TRUE,
      '#default_value' => $selected_languages,
      '#description' => t('Current selected languages to be handled by multilingual search. You can add or remove languages !link.', array(
        '!link' => l(t('here'), 'admin/settings/apachesolr/multilingual'),
      )),
    );
  }
  if ($language_count > 0) {
    if ($language_count == 1) {
      $form['set1'] = array(
        '#type' => 'fieldset',
        '#title' => t('Unique (Non-English) Language Configuration Download'),
        '#weight' => 1,
        '#collapsible' => FALSE,
        '#collapsed' => FALSE,
      );
      $form['set1']['submit'] = array(
        '#type' => 'submit',
        '#name' => 'b1',
        '#value' => t('Download !file', array(
          '!file' => 'schema.xml',
        )),
        '#validate' => array(
          'apachesolr_multilingual_schema_generator_form_unique_language_validate',
        ),
      );
      $form['set1']['submitsc'] = array(
        '#type' => 'submit',
        '#name' => 'sc1',
        '#value' => t('Download !file', array(
          '!file' => 'solrconfig.xml',
        )),
        '#validate' => array(
          'apachesolr_multilingual_schema_generator_form_unique_language_validate',
        ),
      );
    }
    $form['set2'] = array(
      '#type' => 'fieldset',
      '#title' => t('Multilingual Configuration Download'),
      '#weight' => 2,
      '#collapsible' => FALSE,
      '#collapsed' => FALSE,
    );
    $form['set2']['submit'] = array(
      '#type' => 'submit',
      '#name' => 'b2',
      '#value' => t('Download !file', array(
        '!file' => 'schema.xml',
      )),
      '#validate' => array(
        'apachesolr_multilingual_schema_generator_form_multilingual_validate',
      ),
    );
    $form['set2']['submitsc'] = array(
      '#type' => 'submit',
      '#name' => 'sc2',
      '#value' => t('Download !file', array(
        '!file' => 'solrconfig.xml',
      )),
      '#validate' => array(
        'apachesolr_multilingual_schema_generator_form_multilingual_validate',
      ),
    );
  }
  $form['#submit'] = array(
    'apachesolr_multilingual_schema_generator_form_submit',
  );
  return $form;
}