- Issue #1877338 by plopesc: convert language admin form to new #type 'table'.
parent
5c7f2d7a66
commit
fbfaa3a4bc
|
@ -19,17 +19,20 @@ function language_admin_overview_form($form, &$form_state) {
|
||||||
$form['languages'] = array(
|
$form['languages'] = array(
|
||||||
'#languages' => $languages,
|
'#languages' => $languages,
|
||||||
'#language_default' => $default,
|
'#language_default' => $default,
|
||||||
'#tree' => TRUE,
|
'#type' => 'table',
|
||||||
'#header' => array(
|
'#header' => array(
|
||||||
t('Name'),
|
t('Name'),
|
||||||
t('Default'),
|
t('Default'),
|
||||||
t('Weight'),
|
t('Weight'),
|
||||||
t('Operations'),
|
t('Operations'),
|
||||||
),
|
),
|
||||||
'#theme' => 'language_admin_overview_form_table',
|
'#tabledrag' => array(
|
||||||
|
array('order', 'sibling', 'language-order-weight'),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
foreach ($languages as $langcode => $language) {
|
foreach ($languages as $langcode => $language) {
|
||||||
|
$form['languages'][$langcode]['#attributes']['class'][] = 'draggable';
|
||||||
$form['languages'][$langcode]['#weight'] = $language->weight;
|
$form['languages'][$langcode]['#weight'] = $language->weight;
|
||||||
$title = check_plain($language->name);
|
$title = check_plain($language->name);
|
||||||
$description = '';
|
$description = '';
|
||||||
|
@ -98,43 +101,6 @@ function language_admin_overview_form($form, &$form_state) {
|
||||||
return $form;
|
return $form;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Returns HTML for the language overview form.
|
|
||||||
*
|
|
||||||
* @param $variables
|
|
||||||
* An associative array containing:
|
|
||||||
* - form: A render element representing the form.
|
|
||||||
*
|
|
||||||
* @ingroup themeable
|
|
||||||
*/
|
|
||||||
function theme_language_admin_overview_form_table($variables) {
|
|
||||||
$form = $variables['form'];
|
|
||||||
|
|
||||||
$rows = array();
|
|
||||||
foreach (element_children($form, TRUE) as $langcode) {
|
|
||||||
$element = &$form[$langcode];
|
|
||||||
$row = array(
|
|
||||||
'class' => array('draggable'),
|
|
||||||
);
|
|
||||||
foreach (element_children($element, TRUE) as $column) {
|
|
||||||
$cell = &$element[$column];
|
|
||||||
$row['data'][] = drupal_render($cell);
|
|
||||||
}
|
|
||||||
$rows[] = $row;
|
|
||||||
}
|
|
||||||
|
|
||||||
$output = theme('table', array(
|
|
||||||
'header' => $form['#header'],
|
|
||||||
'rows' => $rows,
|
|
||||||
'attributes' => array('id' => 'language-order'),
|
|
||||||
));
|
|
||||||
$output .= drupal_render_children($form);
|
|
||||||
|
|
||||||
drupal_add_tabledrag('language-order', 'order', 'sibling', 'language-order-weight');
|
|
||||||
|
|
||||||
return $output;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Process language overview form submissions, updating existing languages.
|
* Process language overview form submissions, updating existing languages.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -188,10 +188,6 @@ function language_permission() {
|
||||||
*/
|
*/
|
||||||
function language_theme() {
|
function language_theme() {
|
||||||
return array(
|
return array(
|
||||||
'language_admin_overview_form_table' => array(
|
|
||||||
'render element' => 'form',
|
|
||||||
'file' => 'language.admin.inc',
|
|
||||||
),
|
|
||||||
'language_negotiation_configure_form' => array(
|
'language_negotiation_configure_form' => array(
|
||||||
'render element' => 'form',
|
'render element' => 'form',
|
||||||
),
|
),
|
||||||
|
|
Loading…
Reference in New Issue