You are here

function farm_soil_compost_temperature_form_submit in farmOS 7

Submit function for compost temperature quick form.

File

modules/farm/farm_soil/farm_soil_compost/farm_soil_compost.farm_quick.inc, line 111
Farm soil compost quick forms.

Code

function farm_soil_compost_temperature_form_submit($form, &$form_state) {

  // The log type will be an observation.
  $log_type = 'farm_observation';

  // Load the selected asset and get the name.
  $asset = farm_asset_load($form_state['values']['asset']);
  $asset_name = htmlspecialchars(entity_label('farm_asset', $asset));

  // Set log name.
  $log_name = t('@asset temperature: @value @unit', array(
    '@asset' => $asset_name,
    '@value' => $form_state['values']['value'],
    '@unit' => $form_state['values']['unit'],
  ));

  // Assemble an array of measurements.
  $measurements = array(
    array(
      'measure' => 'temperature',
      'value' => $form_state['values']['value'],
      'units' => $form_state['values']['unit'],
      'label' => '',
    ),
  );

  // Create a new farm quantity log.
  $log = farm_quantity_log_create($log_type, $log_name, REQUEST_TIME, TRUE, array(
    $asset,
  ), $measurements);

  // Link the log to the quick form.
  farm_quick_entity_link('farm_soil_compost_temperature_form', 'log', $log);
}