function calendar_systems_date_properties_settings_form in Calendar Systems 8
Same name and namespace in other branches
- 7 calendar_systems_date_properties/calendar_systems_date_properties.admin.inc \calendar_systems_date_properties_settings_form()
- 7.2 calendar_systems_date_properties/calendar_systems_date_properties.admin.inc \calendar_systems_date_properties_settings_form()
Page callback for calendar_systems_date_properties.
1 string reference to 'calendar_systems_date_properties_settings_form'
- calendar_systems_date_properties_menu in calendar_systems_date_properties/
calendar_systems_date_properties.module - Implements hook_menu().
File
- calendar_systems_date_properties/
calendar_systems_date_properties.admin.inc, line 11 - Contains administration form callbacks.
Code
function calendar_systems_date_properties_settings_form($form, $form_state) {
$form = array();
$entity_bundles = variable_get('calendar_systems_date_properties_entity_bundles_settings');
$form['additional_settings'] = array(
'#type' => 'vertical_tabs',
);
$form['info'] = array(
'#type' => 'item',
'#weight' => -2,
'#description' => t('You must enable at least one non-gregorian calendar system , return back to this page and save it'),
);
$form['entitites'] = array(
'#type' => 'item',
'#title' => t('Entities'),
//'#collapsible' => FALSE,
//'#group' => 'additional_settings',
//'#tree' => TRUE,
'#weight' => -1,
'#description' => t('Config the entities'),
);
//$var = field_info_instances();
//var_export($var['reply']['blog_comment']);exit;
$entity_types = _calendar_systems_date_properties_entity_types();
// dsm($entity_types);
foreach ($entity_types as $entity_type => $entity_type_info) {
if ($entity_type != 'comment') {
foreach ($entity_type_info['bundles'] as $bundle => $bundle_info) {
$form['entity_bundles']['entity_bundles_' . $entity_type . '|' . $bundle] = array(
'#type' => 'fieldset',
'#title' => t($entity_type_info['label'] . ' -> ' . $bundle_info['label']),
'#collapsible' => FALSE,
'#group' => 'additional_settings',
'#tree' => TRUE,
);
$form['entity_bundles']['entity_bundles_' . $entity_type . '|' . $bundle]['enabled'] = array(
'#type' => 'checkbox',
'#title' => t("Enable"),
'#tree' => TRUE,
'#default_value' => @$entity_bundles[$entity_type . '.' . $bundle]['enabled'],
);
$form['entity_bundles']['entity_bundles_' . $entity_type . '|' . $bundle]['properties'] = array(
'#type' => 'fieldset',
'#title' => t("Properties"),
'#tree' => TRUE,
'#collapsible' => FALSE,
'#collapsed' => FALSE,
);
$properties = entity_get_property_info($entity_type);
foreach ($properties['properties'] as $property_name => $property) {
if (@$property['type'] == 'date') {
$form['entity_bundles']['entity_bundles_' . $entity_type . '|' . $bundle]['properties'][$property_name] = array(
'#type' => 'checkbox',
'#title' => $property['label'],
'#default_value' => @$entity_bundles[$entity_type . '.' . $bundle]['properties'][$property_name],
);
}
}
$form['entity_bundles']['entity_bundles_' . $entity_type . '|' . $bundle]['fields'] = array(
'#type' => 'fieldset',
'#title' => t("Fields"),
'#tree' => TRUE,
'#collapsible' => FALSE,
'#collapsed' => FALSE,
);
$fields = field_info_instances($entity_type, $bundle);
foreach ($fields as $field_name => $field) {
if (@$field['widget']['module'] == 'OOOOOdate') {
$form['entity_bundles']['entity_bundles_' . $entity_type . '|' . $bundle]['fields'][$field_name] = array(
'#type' => 'checkbox',
'#title' => $field['label'],
'#default_value' => @$entity_bundles[$entity_type . '.' . $bundle]['fields'][$field_name],
);
}
}
}
}
}
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Save'),
'#weight' => 50,
);
//$form['#validate'] = 'calendar_systems_date_properties_node_type_form_validate';
$form['#submit'][] = 'calendar_systems_date_properties_settings_form_submit';
return $form;
}