function _entityform_type_settings_elements in Entityform 7.2
Create Form elements that are shared between EntityformType add/edit form and EntityformType default settings form This allows default settings to set for most form settings.
Parameters
$entityform_type:
$op:
Return value
array Form elements
2 calls to _entityform_type_settings_elements()
- entityform_settings in ./
entityform_type.admin.inc - Entityform global setting form
- entityform_type_form in ./
entityform_type.admin.inc - Generates the entityform type editing form.
File
- ./
entityform_type.admin.inc, line 324 - Entityform type editing UI.
Code
function _entityform_type_settings_elements($entityform_type, $op) {
$default_value_message = $op != 'defaults' ? ' ' . ENTITYFORM_TYPE_DEFAULT_PROP_TEXT : '';
$labels = $entityform_type
->getLabelsForTranslation();
//****************DRAFT FIELDSET SETTINGS *********************//
$form['data']['draft_set'] = array(
'#type' => 'fieldset',
'#title' => t('Draft settings'),
'#collapsible' => TRUE,
'#group' => 'additional_settings',
'#weight' => 60,
);
$form['data']['draft_set']['draftable'] = array(
'#type' => 'checkbox',
'#title' => t('Draftable'),
'#default_value' => !empty($entityform_type->data['draftable']),
'#description' => t('Should users be able to save a draft of this form?'),
);
$form['data']['draft_set']['draft_redirect_path'] = array(
'#type' => 'textfield',
'#title' => $labels['draft_redirect_path'],
'#default_value' => empty($entityform_type->data['draft_redirect_path']) ? '' : $entityform_type->data['draft_redirect_path'],
'#description' => t('What relative path should the user be redirected to on draft submission? Leave blank for default action.'),
);
$form['data']['draft_set']['draft_button_text'] = array(
'#type' => 'textfield',
'#title' => $labels['draft_button_text'],
'#default_value' => empty($entityform_type->data['draft_button_text']) ? '' : $entityform_type->data['draft_button_text'],
'#description' => t('Text to use for draft save button.') . $default_value_message,
);
$form['data']['draft_set']['draft_save_text'] = array(
'#type' => 'text_format',
'#title' => $labels['draft_save_text'],
'#default_value' => empty($entityform_type->data['draft_save_text']['value']) ? '' : $entityform_type->data['draft_save_text']['value'],
'#format' => empty($entityform_type->data['draft_save_text']['format']) ? NULL : $entityform_type->data['draft_save_text']['format'],
'#description' => t('This text will be displayed to the user when the form is saved as a draft.') . $default_value_message,
);
// @todo Any need for this sit now Rules removed??
//****************FORM OVERRIDE FIELDSET SETTINGS *********************//
// New elements must also be added to EntityformTypeController->get_default_text_values().
$form['data']['formoverride_set'] = array(
'#type' => 'fieldset',
'#title' => t('Form overrides'),
'#collapsible' => TRUE,
'#group' => 'additional_settings',
'#weight' => 120,
);
$form['data']['formoverride_set']['submit_button_text'] = array(
'#type' => 'textfield',
'#title' => $labels['submit_button_text'],
'#default_value' => empty($entityform_type->data['submit_button_text']) ? '' : $entityform_type->data['submit_button_text'],
'#description' => t('Text to use for submit button.') . $default_value_message,
);
$form['data']['formoverride_set']['submit_confirm_msg'] = array(
'#type' => 'textfield',
'#title' => $labels['submit_confirm_msg'],
'#default_value' => empty($entityform_type->data['submit_confirm_msg']) ? '' : $entityform_type->data['submit_confirm_msg'],
'#description' => t('Text to use for Submission Confirmation.') . $default_value_message,
);
$form['data']['formoverride_set']['your_submissions'] = array(
'#type' => 'textfield',
'#title' => $labels['your_submissions'],
'#default_value' => empty($entityform_type->data['your_submissions']) ? '' : $entityform_type->data['your_submissions'],
'#description' => t('Text to use for "Your Submissions".') . $default_value_message,
);
$form['data']['formoverride_set']['disallow_resubmit_msg'] = array(
'#type' => 'textfield',
'#title' => $labels['disallow_resubmit_msg'],
'#default_value' => empty($entityform_type->data['disallow_resubmit_msg']) ? '' : $entityform_type->data['disallow_resubmit_msg'],
'#description' => t('Text to use for "Your already submitted this form".') . $default_value_message,
);
$form['data']['formoverride_set']['delete_confirm_msg'] = array(
'#type' => 'textfield',
'#title' => $labels['delete_confirm_msg'],
'#default_value' => empty($entityform_type->data['delete_confirm_msg']) ? '' : $entityform_type->data['delete_confirm_msg'],
'#description' => t('Text to use for "Delete Confirmation".') . $default_value_message,
);
$form['data']['formoverride_set']['page_title_view'] = array(
'#type' => 'textfield',
'#title' => $labels['page_title_view'],
'#default_value' => empty($entityform_type->data['page_title_view']) ? '' : $entityform_type->data['page_title_view'],
'#description' => t('Text to use for page title of submission view.') . $default_value_message,
);
//****************SUBMISSION PAGE FIELDSET SETTINGS *********************//
$form['data']['submission_page_set'] = array(
'#type' => 'fieldset',
'#title' => t('Submission page settings'),
'#collapsible' => TRUE,
'#group' => 'additional_settings',
'#weight' => 20,
);
$form['data']['submission_page_set']['preview_page'] = array(
'#type' => 'checkbox',
'#title' => t('Preview Page'),
'#default_value' => empty($entityform_type->data['preview_page']) ? 0 : $entityform_type->data['preview_page'],
'#description' => t('Show a Preview page.'),
);
$form['data']['submission_page_set']['submission_page_title'] = array(
'#type' => 'textfield',
'#title' => $labels['submission_page_title'],
'#default_value' => empty($entityform_type->data['submission_page_title']) ? '' : $entityform_type->data['submission_page_title'],
'#description' => t('Page title for correct submission.') . $default_value_message,
);
$form['data']['submission_page_set']['submission_text'] = array(
'#type' => 'text_format',
'#title' => $labels['submission_text'],
'#default_value' => empty($entityform_type->data['submission_text']['value']) ? '' : $entityform_type->data['submission_text']['value'],
'#format' => empty($entityform_type->data['submission_text']['format']) ? NULL : $entityform_type->data['submission_text']['format'],
'#description' => t('This text will be displayed to the user when a correct form is submitted.') . $default_value_message,
);
$form['data']['submission_page_set']['submission_show_submitted'] = array(
'#type' => 'checkbox',
'#title' => t('Show submission information'),
'#default_value' => !empty($entityform_type->data['submission_show_submitted']),
'#description' => t('Show submitted data on submission page?'),
);
//****************SUBMISSION VIEWS FIELDSET SETTINGS *********************//
// Let Each entityform use a different View for viewing Submission
$form['data']['submissions_set'] = array(
'#type' => 'fieldset',
'#title' => t('Submissions views'),
'#collapsible' => TRUE,
'#group' => 'additional_settings',
'#weight' => 40,
);
$view_options = _entityform_get_entityform_views_options();
if ($op != 'defaults') {
$view_options['default'] = t('Use Default');
}
$user_view_options = $view_options;
$user_view_options[''] = t('None');
$submission_view = $entityform_type->data['submissions_view'];
$user_submission_view = isset($entityform_type->data['user_submissions_view']) ? $entityform_type->data['user_submissions_view'] : '';
$parts = explode(':', $submission_view);
$submission_view = $parts[0];
if ($op == 'defaults') {
//If selected Views are no longer available select defaults.
if (!array_key_exists($submission_view, $view_options)) {
$submission_view = 'entityforms';
}
if (!array_key_exists($user_submission_view, $user_view_options)) {
$submission_view = 'user_entityforms';
}
}
$form['data']['submissions_set']['submissions_view'] = array(
'#type' => 'select',
'#title' => t('View for submissions reports'),
'#description' => t('Select the View that should be used Submission reports.'),
'#default_value' => $submission_view,
'#options' => $view_options,
);
$user_view_description = 'Select the View that should be used to show users their previous submissions.';
$user_view_description .= ' If "None" is selected then the users will not see a previous submissions link.';
$form['data']['submissions_set']['user_submissions_view'] = array(
'#type' => 'select',
'#title' => t('View for current user\'s submissions'),
'#description' => t($user_view_description),
'#default_value' => $user_submission_view,
'#options' => $user_view_options,
);
$form['entityform_default_submission_view']['#options'] = _entityform_get_entityform_views_options();
//****************ACCESS FIELDSET SETTINGS *********************//
$form['data']['access_set'] = array(
'#type' => 'fieldset',
'#title' => t('Access settings'),
'#collapsible' => TRUE,
'#group' => 'additional_settings',
'#weight' => -50,
);
$form['data']['access_set']['form_status'] = array(
'#type' => 'select',
'#title' => t('Form status'),
'#options' => array(
ENTITYFORM_STATUS_OPEN => t('Open for new submissions'),
ENTITYFORM_STATUS_CLOSED => t('Closed for new form submissions'),
),
'#default_value' => empty($entityform_type->data['form_status']) ? 'open' : $entityform_type->data['form_status'],
'#description' => t('Can users submit this form? Open means the users can submit this form. Closed means the user can not submit the form.'),
);
$form['data']['access_set']['roles'] = array(
'#type' => 'checkboxes',
'#title' => t('Roles'),
'#options' => user_roles(),
'#default_value' => empty($entityform_type->data['roles']) ? array() : $entityform_type->data['roles'],
'#description' => t('Please select the Role(s) that can submit this form.'),
'#required' => TRUE,
'#multiple' => TRUE,
);
$form['data']['access_set']['resubmit_action'] = array(
'#type' => 'select',
'#title' => t('Resubmit action'),
'#options' => array(
'new' => t('Allow new submission'),
'old' => t('Edit old submission'),
'disallow' => t("Don't allow"),
'confirm' => t('Goto Confirm page'),
),
'#default_value' => empty($entityform_type->data['resubmit_action']) ? 'new' : $entityform_type->data['resubmit_action'],
'#description' => t('Action to take if logged in user has already submitted form.'),
);
return $form;
}