All pastes #620577 Raw Edit

Mine

public text v1 · immutable
·published 2007-07-15 16:19 UTC
rendered paste body
<?php

function auto_teaser_nodeapi($node, $op) {
  if ($op == 'insert' || $op == 'update') {
    $new_node = node_build_content(drupal_clone($node), TRUE, FALSE);
    $new_node->teaser = drupal_render($new_node->content);
    node_invoke_nodeapi($new_node, 'alter', TRUE, FALSE);
    db_query("UPDATE {node_revisions} SET teaser = '%s' WHERE vid = %d", $new_node->teaser, $new_node->vid);
  }
}

function auto_teaser_views_tables() {
  $tables['nr'] = array(
    'name' => 'node_revisions',
    'join' => array(
      'type' => 'inner',
      'left' => array(
        'table' => 'node',
        'field' => 'vid',
      ),
      'right' => array(
        'field' => 'vid',
      ),
    ),
    'fields' => array(
      'teaser' => array(
        'name' => t('Story: Teaser'),
        'help' => t('Short version of the story'),
      ),
    ),
  );
  return $tables;
}