You are here

function _oa_sitemap_update_field in Open Atrium Sitemap 7.2

Helper function to update a specific field. Handles direct node fields, value fields, entity references, taxonomy references

Parameters

$node:

$field:

$value:

$updated: _key

1 call to _oa_sitemap_update_field()
oa_sitemap_update_callback in ./oa_sitemap.module
Ajax Callback for updating fields in a space from the sitemap

File

./oa_sitemap.module, line 155

Code

function _oa_sitemap_update_field($node, $field, $value, &$updated, $value_key = NULL) {
  $lang = LANGUAGE_NONE;
  if (!$value_key) {
    if (empty($node->{$field}) && $value || !empty($node->{$field}) && $node->{$field} != $value) {
      $node->{$field} = $value;
      $updated = TRUE;
    }
  }
  elseif (empty($node->{$field}[$lang][0][$value_key]) && $value || !empty($node->{$field}[$lang][0][$value_key]) && $node->{$field}[$lang][0][$value_key] != $value) {
    $node->{$field}[$lang][0][$value_key] = $value;
    $updated = TRUE;
    if (empty($value)) {
      unset($node->{$field});
    }
    else {
      $node->{$field}[$lang][0][$value_key] = $value;
    }
    $updated = TRUE;
  }
}