| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 | <?php/** * @file * Support for the Pathauto module. *//** * Field handler. */class MigratePathautoHandler extends MigrateDestinationHandler {  public function __construct() {    $this->registerTypes(array('node', 'user', 'taxonomy_term'));  }  /**   * Make the destination field visible.   */  public function fields() {    if (module_exists('pathauto')) {      return array(        'pathauto' =>          t('Pathauto: Perform aliasing (set to 0 to prevent alias generation during migration'),      );    }    else {      return array();    }  }  public function prepare($entity, stdClass $row) {    if (isset($entity->pathauto)) {      if (!isset($entity->path)) {        $entity->path = array();      }      elseif (is_string($entity->path)) {        // If MigratePathEntityHandler->prepare() hasn't run yet, support        // the alias (set as $entity->path as a string) being formatted properly        // in the path alias array.        $path = $entity->path;        $entity->path = array();        $entity->path['alias'] = $path;      }      $entity->path['pathauto'] = $entity->pathauto;      if (!isset($entity->path['alias'])) {        $entity->path['alias'] = '';      }      unset($entity->pathauto);    }  }}
 |