function apachesolr_multilingual_textfile_form_alter in Apache Solr Multilingual 6.2
Same name and namespace in other branches
- 6 apachesolr_multilingual_textfile/apachesolr_multilingual_textfile.module \apachesolr_multilingual_textfile_form_alter()
File
- apachesolr_multilingual_textfile/
apachesolr_multilingual_textfile.module, line 211
Code
function apachesolr_multilingual_textfile_form_alter(&$form, &$form_state, $form_id) {
if ($form_id == 'apachesolr_multilingual_textfile_node_form') {
if ($form['#node']->filename && $form['#node']->language) {
unset($form['language']);
$form['language']['#type'] = 'value';
$form['language']['#value'] = $form['#node']->language;
}
}
elseif ($form_id == 'node_type_form') {
if ('apachesolr_multilingual_textfile' == $form['#node_type']->orig_type) {
// set the needed values
$form['workflow']['language_content_type']['#type'] = 'value';
$form['workflow']['language_content_type']['#default_value'] = '1';
// inform the user
$form['workflow']['language_content_type_info']['#type'] = 'radio';
$form['workflow']['language_content_type_info']['#values'] = array(
0 => '0',
1 => '1',
);
$form['workflow']['language_content_type_info']['#checked'] = 'checked';
$form['workflow']['language_content_type_info']["#title"] = t("Multilingual support");
$form['workflow']['language_content_type_info']["#description"] = t("Enabled multilingual support is necessary for this content type");
}
}
elseif ($form_id == 'apachesolr_multilingual_admin_form') {
$form['#submit'][] = 'apachesolr_multilingual_textfile_admin_form_submit';
}
elseif ($form_id == 'apachesolr_multilingual_schema_generator_form') {
$apachesolr_multilingual_filetypes = variable_get('apachesolr_multilingual_filetypes', array(
'stopwords.txt' => 'stopwords.txt',
'synonyms.txt' => 'synonyms.txt',
'protwords.txt' => 'protwords.txt',
'compoundwords.txt' => 'compoundwords.txt',
));
$selected_languages = variable_get('apachesolr_multilingual_languages', array());
$language_count = 0;
foreach ($selected_languages as $lang) {
if ($lang) {
$language_count++;
}
}
if ($language_count > 0) {
$form['#validate'][] = 'apachesolr_multilingual_textfile_form_validate';
if ($language_count == 1) {
$form['set1']['submit_zip'] = array(
'#type' => 'submit',
'#value' => t('Download !file', array(
'!file' => 'apachesolr_unique_language_config.zip',
)),
'#validate' => array_merge($form['set1']['submit']['#validate'], array(
'apachesolr_multilingual_textfile_download_unique_langauge_config_validate',
)),
);
}
$form['set2']['submit_zip'] = array(
'#type' => 'submit',
'#value' => t('Download !file', array(
'!file' => 'apachesolr_multilingual_config.zip',
)),
'#validate' => array_merge($form['set2']['submit']['#validate'], array(
'apachesolr_multilingual_textfile_download_multilingual_config_validate',
)),
);
$form['set3'] = array(
'#type' => 'fieldset',
'#title' => t('Manage Multilingual Configuration Files'),
'#weight' => 7,
'#collapsible' => FALSE,
'#collapsed' => FALSE,
);
$form['set3']['textfiles'] = array(
'#type' => 'item',
'#value' => theme('apachesolr_multilingual_textfile_form_element', $selected_languages),
);
}
}
}