You are here

function views_url_alias_node_rebuild in Views URL alias 7

Same name and namespace in other branches
  1. 8 views_url_alias_node.module \views_url_alias_node_rebuild()
  2. 6 views_url_alias_node.module \views_url_alias_node_rebuild()

Rebuild view_url_alias_node table.

This function typically only needs to be called when this module is installed.

2 calls to views_url_alias_node_rebuild()
views_url_alias_node_admin_submit in ./views_url_alias_node.admin.inc
Submit callback for Views URL Alias admin form.
views_url_alias_node_enable in ./views_url_alias_node.install
Implements hook_enable().

File

./views_url_alias_node.module, line 136
Allows node-related Views to be filtered by path aliases.

Code

function views_url_alias_node_rebuild() {

  // Purge view_url_alias_node table.
  db_truncate('views_url_alias_node')
    ->execute();

  // Build select query for insert.
  $query = db_select('url_alias', 'ua');
  $query
    ->join('node', 'n', "CONCAT('node/', n.nid) = ua.source");
  $query
    ->fields('n', array(
    'nid',
  ))
    ->fields('ua', array(
    'alias',
  ));

  // Populate view_url_alias_node table.
  db_insert('views_url_alias_node')
    ->from($query)
    ->execute();

  // Display message
  drupal_set_message(t('The %table table has been successfully rebuilt.', array(
    '%table' => 'views_url_alias_node',
  )));
}