You are here

function farm_movement_update_7000 in farmOS 7

Create new movement field collection.

File

modules/farm/farm_movement/farm_movement.install, line 10
Code for farm movement installation/updates.

Code

function farm_movement_update_7000(&$sandbox) {

  // Revert this module's field_base and field_instance components
  features_revert(array(
    'farm_movement' => array(
      'field_base',
      'field_instance',
    ),
  ));

  // Flush all caches.
  drupal_flush_all_caches();

  // Create the movement log type, if it doesn't exist. This may happen during
  // an upgrade from beta12 to beta13, because we are removing the farm_movement
  // log type definition from this module, but we still need to migrate data
  // from it.
  $log_type = log_type_load('farm_movement');
  if (empty($log_type)) {
    $farm_movement = new LogType();
    $farm_movement->type = 'farm_movement';
    $farm_movement->label = 'Movement (deprecated)';
    $farm_movement->name_pattern = 'Move [log:field-farm-asset] to [log:field-farm-move-to]';
    $farm_movement->name_edit = 0;
    $farm_movement->done = 1;
    $farm_movement
      ->save();
  }

  // Create the field_farm_movement field instance, if it doesn't exist (for the
  // same reason described above).
  $instance = field_info_instance('log', 'field_farm_movement', 'farm_movement');
  if (empty($instance)) {
    $instance = array(
      'field_name' => 'field_farm_movement',
      'entity_type' => 'log',
      'bundle' => 'farm_movement',
      'label' => 'Movement',
    );
    field_create_instance($instance);
  }
}