You are here

function _calendar_systems_date_properties_entity_types in Calendar Systems 8

Same name and namespace in other branches
  1. 7 calendar_systems_date_properties/calendar_systems_date_properties.module \_calendar_systems_date_properties_entity_types()
  2. 7.2 calendar_systems_date_properties/calendar_systems_date_properties.module \_calendar_systems_date_properties_entity_types()

Return value

array

6 calls to _calendar_systems_date_properties_entity_types()
calendar_systems_date_properties_entity_presave in calendar_systems_date_properties/calendar_systems_date_properties.module
hook_entity_presave
calendar_systems_date_properties_entity_property_info_alter in calendar_systems_date_properties/calendar_systems_date_properties.module
calendar_systems_date_properties_schema_alter in calendar_systems_date_properties/calendar_systems_date_properties.module
Implements hook_schema_alter().
calendar_systems_date_properties_settings_form in calendar_systems_date_properties/calendar_systems_date_properties.admin.inc
Page callback for calendar_systems_date_properties.
calendar_systems_date_properties_views_data_alter in calendar_systems_date_properties/calendar_systems_date_properties.views.inc

... See full list

File

calendar_systems_date_properties/calendar_systems_date_properties.module, line 173
Contains hook implementations and helpers.

Code

function _calendar_systems_date_properties_entity_types() {

  //static $entity_types;
  $entity_types = NULL;
  if (is_null($entity_types)) {
    $selected_bundles = variable_get('calendar_systems_date_properties_entity_bundles_settings');
    $bundles = field_info_bundles();
    return array();
    $entity_types = array();
    foreach ($bundles as $entity_type => $_bundles) {
      $entity_type_info = entity_get_info($entity_type);
      $entity_types[$entity_type] = $entity_type_info;
      $entity_types[$entity_type]['bundles'] = $_bundles;
      $integrated = FALSE;
      $selected_properties = array();
      if (!empty($_bundles)) {
        foreach ($_bundles as $bundle => $bundle_info) {
          $entity_types[$entity_type]['bundles'][$bundle]['integrated'] = FALSE;
          if (isset($selected_bundles[$entity_type . '.' . $bundle]) && !empty($bundle_info)) {
            if ($selected_bundles[$entity_type . '.' . $bundle]['enabled'] == TRUE) {
              $entity_types[$entity_type]['bundles'][$bundle]['integrated'] = TRUE;
              $integrated = TRUE;
              foreach ($selected_bundles[$entity_type . '.' . $bundle]['properties'] as $property_name => $property) {
                if ($property == 1) {
                  $selected_properties[$property_name] = $property_name;
                }
              }
            }
          }
        }
      }
      $properties = entity_get_property_info($entity_type);
      $entity_types[$entity_type]['properties'] = $properties['properties'];
      $entity_types[$entity_type]['integrated'] = $integrated;
      $entity_types[$entity_type]['selected_properties'] = $selected_properties;

      //if ($integrated) { dsm($entity_type);dsm($entity_types[$entity_type]);dsm(debug_backtrace()); }
    }
  }
  return $entity_types;
}