function flexiform_webform_ui_get_clone_form in Flexiform 7
1 string reference to 'flexiform_webform_ui_get_clone_form'
- FlexiformWebformUIController::hook_menu in flexiform_webform/
flexiform_webform.admin.inc - Provides definitions for implementing hook_menu().
File
- flexiform_webform/
flexiform_webform.module, line 329 - Module provides simple webform functionality.
Code
function flexiform_webform_ui_get_clone_form($entity_type, $entity, $op = 'clone', $form_state = array()) {
$form_id = 'flexiform_webform_form';
// Do not use drupal_get_form(), but invoke drupal_build_form() ourself so
// we can prepulate the form state.
$form_state['wrapper_callback'] = 'entity_ui_main_form_defaults';
$form_state['entity_type'] = 'flexiform_webform';
form_load_include($form_state, 'inc', 'entity', 'includes/entity.ui');
$entity = clone $entity;
$entity->id = FALSE;
$entity->cloned_from = $entity->webform;
$entity->webform = FALSE;
$entity->is_new = TRUE;
$entity->status = ENTITY_CUSTOM;
// We don't pass the entity type as first parameter, as the implementing
// module knows the type anyway. However, in order to allow for efficient
// hook_forms() implementiations we append the entity type as last argument,
// which the module implementing the form constructor may safely ignore.
// @see entity_forms()
$form_state['build_info']['args'] = array(
$entity,
$op,
$entity_type,
);
return drupal_build_form($form_id, $form_state);
}