Select a discesa delle lingue come fare?

2 contenuti / 0 new
Ultimo contenuto
Select a discesa delle lingue come fare?

Ciao a tutti, smanetto il codice di Drupal 6 da un po ma oggi non mi riesce di trovare il codice per popolare una select a discesa dei linguaggi, in locale.module ho trovato questo che visualizza i link:

<?php
 $path
= drupal_is_front_page() ? '<front>' : $_GET['q'];
   
$languages = language_list('enabled');
   
$links = array();
    foreach (
$languages[1] as $language) {
     
$links[$language->language] = array(
       
'href'       => $path,
       
'title'      => $language->native,
       
'language'   => $language,
       
'attributes' => array('class' => 'language-link'),
      );
      <
strong>$options[$path] = $language->native;   <<<<<<<<<<<<< non funziona</strong>
    }
   
drupal_alter('translation_link', $links, $path);
   
$block['subject'] = t('Languages');
   
$block['content'] = theme('links', $links, array());
    return
$block;
?>

Ma io vorrei:

<?php
 $form
['changelang'] = array(
 
'#type' => 'select',
 
'#title' => t('Change lang'),
 
'#attributes' => array('onChange' => 'top.location.href=this.options[this.selectedIndex].value'),
 
'#options' => $options,
);
?>

Sapete come impostare l'array $options ?

[Risolto] A chi interessa la soluzione è questa:

<?php
//init select language
 
global $language;
 
$path = drupal_is_front_page() ? '<front>' : $_GET['q'];
 
$languages = language_list('enabled');
  foreach (
$languages[1] as $lang_item) {
   
$options[$lang_item->language] = array(
     
'href'       => $path,
     
'title'      => $lang_item->native,
     
'language'   => $lang_item,
    );
  }
 
drupal_alter('translation_link', $options, $path);
  foreach (
$options as $lang_option) {
    if (!empty(
$lang_option['language']->domain)) {
     
$path = check_url(url($lang_option['language']->domain . url($lang_option['href'], array('language' => $lang_option['language'])), array('language' => $lang_option['language'], 'external' => TRUE)));
    } else {
     
$path = check_url(url($lang_option['href'], array('language' => $lang_option['language'], 'absolute' => TRUE)));
    }
   
$select_options[$path] = $lang_option['title'];
  }
 
$form['lang_dropdown_select'] = array(
   
'#type' => 'select',
   
'#default_value' => $selected_option,
   
'#options' => $select_options,
   
'#attributes' => array('onChange' => 'top.location.href=this.options[this.selectedIndex].value'),
  );
 
//finish select language
return $form;
?>

Ciao