You are here

function gallery_assist_rebuild_aliases in Gallery Assist 6

1 call to gallery_assist_rebuild_aliases()
gallery_assist_form_submit in ./gallery_assist.module
Prepare some input keys for save.

File

./gallery_assist.module, line 1659
Drupal content type with gallery functionality.

Code

function gallery_assist_rebuild_aliases($node, $input) {
  if ($input['pathauto_perform_alias'] == 1) {
    module_load_include('inc', 'pathauto', 'pathauto');
    $result = db_query("SELECT p.pid, p.aid, t.ptitle FROM {gallery_assist_item} p, {gallery_assist_translated} t WHERE p.pid = t.pid AND  p.nid = %d", $node->nid);
    while ($r = db_fetch_array($result)) {
      if (empty($r['ptitle'])) {
        $ptitle = $r['pid'];
      }
      else {
        $ptitle = $r['ptitle'];
      }
      $title = drupal_get_path_alias("node/{$node->nid}");
      $ptitle = pathauto_cleanstring($ptitle);
      $node_path = drupal_get_path_alias("node/{$node->nid}");
      $path = array(
        'dst' => "{$title}/{$ptitle}-{$r['pid']}",
        'language' => $node->language,
        'src' => "node/{$node->nid}/{$r['pid']}",
      );
      if ($r['aid'] > 0) {
        $path['pid'] = $r['aid'];
        drupal_write_record('url_alias', $path, 'pid');
      }
      else {
        if (isset($path['pid'])) {
          unset($path['pid']);
        }
        drupal_write_record('url_alias', $path);
        $new_aid = db_last_insert_id($table, $field);
        $gai = array(
          'pid' => $r['pid'],
          'aid' => $new_aid,
        );
        drupal_write_record('gallery_assist_item', $gai, 'pid');
      }
    }
  }
  else {
    if ($input['ga_rebuild_items_alias'] == 1) {
      module_load_include('inc', 'pathauto', 'pathauto');
      $result = db_query("SELECT p.pid, p.aid, t.ptitle FROM {gallery_assist_item} p, {gallery_assist_translated} t WHERE p.pid = t.pid AND  p.nid = %d", $node->nid);
      while ($r = db_fetch_array($result)) {
        if (empty($r['ptitle'])) {
          $ptitle = $r['pid'];
        }
        else {
          $ptitle = $r['ptitle'];
        }
        if (!empty($node->path)) {
          $title = $node->path;
        }
        else {
          $title = "node/{$node->nid}";
        }
        $ptitle = pathauto_cleanstring($ptitle);
        $node_path = drupal_get_path_alias("node/{$node->nid}");
        $path = array(
          'dst' => "{$title}/{$ptitle}-{$r['pid']}",
          'language' => $node->language,
          'src' => "node/{$node->nid}/{$r['pid']}",
        );
        if ($r['aid'] > 0) {
          $path['pid'] = $r['aid'];
          drupal_write_record('url_alias', $path, 'pid');
        }
        else {
          if (isset($path['pid'])) {
            unset($path['pid']);
          }
          drupal_write_record('url_alias', $path);
          $new_aid = db_last_insert_id($table, $field);
          $gai = array(
            'pid' => $r['pid'],
            'aid' => $new_aid,
          );
          drupal_write_record('gallery_assist_item', $gai, 'pid');
        }
      }
    }
  }
}