I am using a ctools content type plugins to render a custom form that will have only one submit button.
The submitbutton will switch an eck entity field (boolean) from 0 to 1 and back (if pressed again, of course).
I have defined my ctools content type plugin, form (with ajax callback) and a submit handler
When i tested it with a hook_menu path, all was fine and it worked.
Since i have put it in a ctools content type, no luck.
Any help would be very much appreciated!
Ps: What would be the best place to put my database logic? The submit handler?
Thanks a million!
$plugin = array(
'single' => TRUE,
'title' => t('Project isClient'),
'description' => t('Project isClient AJAX plugin'),
'category' => t('Project'),
'render callback' => 'project_isclient_ajax',
'defaults' => array(),
);
function project_isclient_ajax() {
$pane = new stdClass();
$pane->title = t('Project isClient');
$pane->content = drupal_get_form('project_isclient_form');
return $pane;
}
function project_isclient_form($form, &$form_state) {
return array(
'submit' => array(
'#type' => 'submit',
'#value' => t('Subscribe'),
'#ajax' => array(
'callback' => 'project_isclient_ajax_submit',
'wrapper' => 'project-isclient-form',
'method' => 'replace',
'effect' => 'fade',
),
),
);
}
/**
* Ajax callback function.
*/
function project_isclient_ajax_submit($form, $form_state) {
// Dummy/dumb validation for demo purpose.
return 'works!';
}
A little after posting this, i found AJAX calls in CTools Content Type Plugin? which states that ctools handles ajax forms differently. I checked using blocks, and this appears to be correct. In a block my callback works.