Ciao!
Sto lavorando con I18n (Internationalization) e ho attivo un modulo "custom" che aggiunge il pulsante "Reset" ai filtri esposti e che ricarica la pagina stessa.
function form_alterations_01_form_alter(&$form, $form_state, $form_id) {
if ($form_id == 'views_exposed_form') {
$exposed_views = array('mia_view_01_ita', 'mia_view_01_eng');
if (in_array($form_state['view']->name, $exposed_views)) {
$current_display = $form_state['view']->current_display;
$form['reset'] = array(
'#type' => 'markup',
'#value' => '<input class="form-button" type="Reset"
value="Reset" onClick="javascript:window.location=\'/content/mio_nodo_ita'.
$form_state['view']->display[$current_display]->
display_options['path'] .'\';" />',
);
}
}
}
?>
Come si è visto, il pulsante "Reset" fa il refresh della pagina ricaricandola...
Bene, ho questo codice (implementato da "ziobudda" e ottimizzato da "John@verona") che vorrei adattare per farsì che, se mi trovo nella pagina ITA mi ricarica questa pagina e, vice-versa in ENG... (...devo risolvere questa cosa altrimenti se l'utente si trova nell'interfaccia ENG, al click del pulsante "Reset" viene indirizzato alla stessa pagina ma quella in italiano [in questo caso] insomma, io devo poter riuscire a separare/gestire le 2 situazioni...)
<?php
global $language;
if ($language->language == 'it') {
print "HTML Italiano...";
}
else {
print "HTML English...";
}
?>
...ho pensato di aggiungerlo nell'area di imput del form in questo modo ma mi da errore (pagina bianca con il solito errore di sintassi PHP...)
function form_alterations_01_form_alter(&$form, $form_state, $form_id) {
if ($form_id == 'views_exposed_form') {
$exposed_views = array('mia_view_01_ita', 'mia_view_01_eng');
if (in_array($form_state['view']->name, $exposed_views)) {
$current_display = $form_state['view']->current_display;
$form['reset'] = array(
'#type' => 'markup',
'#value' => '<?php
global $language;
if ($language->language == 'it') {
print "<input class="form-button" type="Re-Imposta"
value="Reset" onClick="javascript:window.location=\'/content/mio_nodo_ita'.
$form_state['view']->display[$current_display]->
display_options['path'] .'\';" />";
}
else {
print "<input class="form-button" type="Reset"
value="Reset" onClick="javascript:window.location=\'/content/mio_nodo_eng'.
$form_state['view']->display[$current_display]->
display_options['path'] .'\';" />";
}
?>',
);
}
}
}
?>
Sicuramente l'errore sta nel fatto che il codice aggiunto alla funzione è progettato per "ospitare" solo HTML (oppure, i marcatori non vanno bene lì...) e allora, come fare per farlo funzionare in PHP, anche se non è questa la "sede didattica" di PHP? ...e chiedo scusa.
P.S. Nell'array ho messo tutte le Views sia quelle per per l'inglese che per l'italiano ma non credo sia questo il problema, oppure si?
Grazie per un eventuale risposta
Ciao
Kipper