source: sipes/modules_contrib/cck/modules/nodereference/nodereference.rules.inc @ dafc8d8

stableversion-3.0
Last change on this file since dafc8d8 was dafc8d8, checked in by José Gregorio Puentes <jpuentes@…>, 8 años ago

se actualizo el modulo

  • Propiedad mode establecida a 100755
File size: 1.7 KB
Línea 
1<?php
2
3/**
4 * @file
5 * Provides additional rules support for nodereference fields.
6 */
7
8/**
9 * Implementation of hook_rules_action_info().
10 */
11function nodereference_rules_action_info() {
12  $info = array();
13  $info['nodereference_rules_action_load'] = array(
14    'label' => t('Load a referenced node'),
15    'arguments' => array(
16      'node' => array(
17        'type' => 'node',
18        'label' => t('Content containing the node reference field'),
19      ),
20    ),
21    'new variables' => array(
22      'referenced_node' => array(
23        'type' => 'node',
24        'label' => t('Referenced content'),
25      ),
26    ),
27    'module' => 'CCK',
28    'help' => t('Note that if the field has multiple values, only the first content node will be loaded.'),
29  );
30  return $info;
31}
32
33function nodereference_rules_action_load($node, $settings) {
34  if ($nid = $node->{$settings['field']}[0]['nid']) {
35    return array('referenced_node' => node_load(array('nid' => $nid)));
36  }
37}
38
39function nodereference_rules_action_load_form($settings, &$form) {
40  $settings += array('field' => '');
41  $options = content_rules_get_field_names_by_type('nodereference');
42  $form['settings']['field'] = array(
43    '#type' => 'select',
44    '#title' => t('Field'),
45    '#default_value' => $settings['field'],
46    '#options' => $options,
47    '#required' => TRUE,
48    '#disabled' => empty($options),
49    '#description' => empty($options) ? t('There are no nodereference fields defined.') : '',
50  );
51}
52
53/**
54 * Helps upgrading from the workflow-ng action
55 * "workflow_ng_action_load_referenced_node" to the equivalent rules action.
56 */
57function workflow_ng_action_load_referenced_node_upgrade(&$element) {
58  $element['#name'] = 'nodereference_rules_action_load';
59}
Nota: Vea TracBrowser para ayuda de uso del navegador del repositorio.