You are here

changed_fields_extended_field_comparator.module in Changed Fields API 7.2

Extended field comparator usage example.

File

examples/changed_fields_extended_field_comparator/changed_fields_extended_field_comparator.module
View source
<?php

/**
 * @file
 * Extended field comparator usage example.
 */

/**
 * Implements hook_node_presave().
 */
function changed_fields_extended_field_comparator_node_presave($node) {

  // Enlist node types with their fields for watching.
  $notifySettings = array(
    'article' => array(
      'title',
      'body',
      'custom_field',
    ),
  );

  // Create CFNodeSubject object that will check node fields by your ExtendedFieldComparator.
  // See includes/changed_fields_extended_field_comparator.field_comparator.inc file.
  $nodeSubject = new CFNodeSubject($node, $notifySettings, new ExtendedFieldComparator());

  // Add your observer object to CFNodeSubject.
  // See includes/changed_fields_extended_field_comparator.observer.inc file.
  $nodeSubject
    ->addObserver(new ExtendedFieldComparatorObserver('test_observer'));

  // Check if node fields have been changed.
  $nodeSubject
    ->checkNodeFields();
}