Добрый день !
Есть такая проблема.
Вывожу несколько одинаковых форм на странице.
Каждая форма генерируется одной и той же функцией
То есть я для каждой формы вызываю drupal_get_form с уникальным id -
test_draft_view_form_1, test_draft_view_form_2 etc
$output = '';
$items = test_get_drafts();
foreach($items as $item){
$panes[] = array(
'id' => 'draft_form_'.$item['draft_item_id'],
'title' => t('Default draft form'),
'enabled' => TRUE,
'weight' => $item['draft_item_id'],
'body' => !is_null($item['products']) ? '<div id="draft-form-pane">'. drupal_get_form('test_draft_view_form_'.$item['draft_item_id'], $item['products'], $item['draft_item_id']) .'</div>': '',
);
$output .= $panes;
}
return $panes;
}
а затем переопределяю функцию создания формы в hook_forms
Далее в функции создания формы я прописываю тему test_draft_view_form
$form['drafts'] = array(
'#id' => 'Draft '.$draft_id,
'#type' => 'tapir_table',
'#tree' => TRUE,
'#theme'=> 'test_draft_view_form',
);
и создаю соответственно функцию темы theme_test_draft_view_form
При выводе тема вызывается, но в нее передается несуществующая форма -
то есть видимо оно пытается найти форму test_draft_view_form ,
а у меня имеются формы test_draft_view_form_1, test_draft_view_form_2 и тд...
Каким образом можно еще темизировать одинаковые формы с различными ID одной функцией темы ?
Заранее спасибо !