You are here

farm_equipment.install in farmOS 7

Farm equipment install file.

File

modules/farm/farm_equipment/farm_equipment.install
View source
<?php

/**
 * @file
 * Farm equipment install file.
 */

/**
 * Implements hook_update_dependencies().
 */
function farm_equipment_update_dependencies() {

  // Update 7002 (add new movement field to maintenance logs) depends on
  // farm_movement_update_7000().
  $dependencies['farm_equipment'][7002] = array(
    'farm_movement' => 7000,
  );
  return $dependencies;
}

/**
 * Migrate Equipment Description field to plain Description field (from farm_fields).
 */
function farm_equipment_update_7000(&$sandbox) {

  // Revert this module's field_instance Features component.
  features_revert(array(
    'farm_equipment' => array(
      'field_instance',
    ),
  ));

  // If the new description field database tables exist...
  if (db_table_exists('field_data_field_farm_description') && db_table_exists('field_revision_field_farm_description')) {

    // Copy all descriptions from the old database tables to the new ones.
    db_query('INSERT INTO {field_data_field_farm_description} SELECT * FROM {field_data_field_farm_equipment_description}');
    db_query('INSERT INTO {field_revision_field_farm_description} SELECT * FROM {field_revision_field_farm_equipment_description}');

    // Delete the old field.
    $field = field_info_instance('farm_asset', 'field_farm_equipment_description', 'equipment');
    field_delete_instance($field);
  }
}

/**
 * Migrate equipment reference field to new asset reference field.
 */
function farm_equipment_update_7001(&$sandbox) {

  // Revert this module's field_instance Features component.
  features_revert(array(
    'farm_equipment' => array(
      'field_instance',
    ),
  ));

  // Copy all field data from the old database tables to the new ones.
  db_query("INSERT INTO {field_data_field_farm_asset} (SELECT * FROM {field_data_field_farm_equipment} WHERE entity_type = 'log' AND bundle = 'farm_maintenance')");
  db_query("INSERT INTO {field_revision_field_farm_asset} (SELECT * FROM {field_revision_field_farm_equipment} WHERE entity_type = 'log' AND bundle = 'farm_maintenance')");

  // Delete the old equipment reference field.
  $field = field_info_instance('log', 'field_farm_equipment', 'farm_maintenance');
  field_delete_instance($field);
}

/**
 * Add new movement field to maintenance logs.
 */
function farm_equipment_update_7002(&$sandbox) {
  features_revert(array(
    'farm_equipment' => array(
      'field_instance',
    ),
  ));
}

/**
 * Add new equipment fields: manufacturer, model, serial number.
 */
function farm_equipment_update_7003(&$sandbox) {
  features_revert(array(
    'farm_equipment' => array(
      'field_base',
      'field_instance',
    ),
  ));
}

Functions

Namesort descending Description
farm_equipment_update_7000 Migrate Equipment Description field to plain Description field (from farm_fields).
farm_equipment_update_7001 Migrate equipment reference field to new asset reference field.
farm_equipment_update_7002 Add new movement field to maintenance logs.
farm_equipment_update_7003 Add new equipment fields: manufacturer, model, serial number.
farm_equipment_update_dependencies Implements hook_update_dependencies().