Se ina una form es. taxonomy_form_vocabulary vi è un pulsante che al click usa una funzione del
genere
function taxonomy_menu_vocab_submit($form, &$form_state) {
....
$vid = $form_state['values']['vid'];
$form_state['values']['taxonomy_menu']['vocab_parent']);
....
}
Se creo un mio modulo che in un'altra form richiama la stessa funzione
function mymodule_form_alter(&$form, $form_state, $form_id)
{
form['#submit'][] = 'richiama_la_submit';
}
function richiama_la_submit() {
taxonomy_menu_vocab_submit($x, $y) ;
}
Come posso fare in modo che il parametro $y sia esattamente lo stesso della prima form
taxonomy_form_vocabulary ?
Il problema è che mi trovo in un'altra form e la prima è chiusa;
quindi il php della prima non ha inviato nulla;
non so se esiste una funzione drupal o php che consenta di caricare il $form_state di una form chiusa
e quindi da un'altra form
Ciao,
l'hook submit che tu chiami
function taxonomy_menu_vocab_submit($form, &$form_state) {
invia i dati da un form $form, &$form_state appunto
l'hook form_alter non serve nel tuo caso perchè lavorerebbe all'iterno del suo modulo
quella che tu chiamo function richiama_la_submit() { è impossibile perchè come ti scrivo sopra l'hook submit invia i dati dal suo form impostato in altra funzione
quindi facciamo chiarezza: nella tua funzione inserita nel tuo modulo peschi i dati che ti occorrono ed è tutto!
Penso che il mio ragionamento sia corretto. Ciao
non ho capito cosa devi fare ma credo che al posto di
$form['#submit'][] = 'richiama_la_submit';
puoi usare
$form['#submit'] = array('richiama_la_submit');
e dovresti avere $form e $form_state non modificate, ma dipende dal modulo, alcuni moduli modificano form_state in validate, cioè fanno validazione e modifica, per esempio taxonony lo fa quando inserisci un nuovo termine: inserisce il termine nel db e sostituisce il campo con il tid inserito. Al momento non ho capito cosa fa taxonomy_menu nella form di cui parli, però potresti controllare cosa fa il validate per sicurezza.
@anv
Fammi saper come è andata, sono curiosa...