Campi Aggiuntivi obbligatori in user profile

3 contenuti / 0 new
Ultimo contenuto
Campi Aggiuntivi obbligatori in user profile

Ciao a tutti, sto diventando matto!! e sicuramente ho perso qualcosa tra le varie guide!!!
Ho 2 campi (per ora ma poi saranno 3) in aggiunta al profilo degli utenti, questi (per ora parliamo di 2) campi nome_passeggero Cognome_passeggero devo avere una funzione del genere:
- se sono vuoti tutti e due non devono essere obbligatori.
- se uno dei due è pieno, l'altro vuoto deve essere obbligatorio

ho provato ad implementare questo

<?php
function validate_passeggeri_user_profile_form_alter(&$form, &$form_state, $form_id) {
switch (
$form_id) {
        case
'user_profile_form':
  global
$user;
 
dpm($form);
$passeggero1 = 0;
if (isset(
$form['#user']->field_nome_passeggero['und'][0]['value'])) {
unset(
$form['field_nome_passeggero']['und'][0]['value']['#default_value']);
 echo
'nome pieno';
++
$passeggero1;
}
if (isset(
$form['#user']->field_cognome_passeggero['und'][0]['value'])) {
unset(
$form['field_cognome_passeggero']['und'][0]['value']['#default_value']);
echo
'cognome pieno';
++
$passeggero1;
 }
if (
$passeggero1 == '0' || $passeggero1 == '2') {
return
$form;
} else {
form_set_error($form, t('Errore'));
}
            break;
    }
}
?>

gli alert di errore funzionano, ma comunque il dato viene salvato nel database (cosa che ovviamente non deve accadere).
Avete qualche consiglio?

Drupal Version:

Si un bellisimo modulo, ma non funziona!!!! ci sono ancora patch aperte, funziona sola la funzione Visibile/ invisibile che già uso. Ecco perchè sto tentando con gli hook