You are here

function calendar_systems_date_properties_entity_property_info_alter 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_property_info_alter()
  2. 7.2 calendar_systems_date_properties/calendar_systems_date_properties.module \calendar_systems_date_properties_entity_property_info_alter()

Parameters

$info:

File

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

Code

function calendar_systems_date_properties_entity_property_info_alter(&$info) {
  $entity_types = _calendar_systems_date_properties_entity_types();
  foreach ($entity_types as $entity_type => $entity_type_info) {
    if (isset($entity_type_info['integrated']) && $entity_type_info['integrated']) {
      $properties =& $info[$entity_type]['properties'];
      foreach ($entity_type_info['properties'] as $property_name => $property) {
        if (isset($entity_type_info['selected_properties'][$property_name])) {
          $calendar_systems = _calendar_systems_date_properties_get_active_calendar_systems();
          foreach ($calendar_systems as $calendar_system) {
            foreach ($calendar_system['parts'] as $calendar_system_part_name => $calendar_system_part) {
              $new_property_label = t($entity_type_info['properties'][$property_name]['label']) . ' ' . t($calendar_system['name']) . ' ' . t($calendar_system_part['label']);
              $new_property_name = $property_name . '_' . $calendar_system['name'] . '_' . $calendar_system_part_name;

              //dsm($new_property_name);
              $properties[$new_property_name] = array(
                'label' => $new_property_label,
                'type' => 'integer',
                //'description' => 'The use whom deleted the content.',

                // This is the schema field you made.
                'schema field' => $new_property_name,
                'getter callback' => 'entity_property_verbatim_get',
                'setter callback' => 'entity_property_verbatim_set',
              );
            }
          }
        }
      }
    }
  }
}