--- pathauto_user.inc 2006-09-29 23:56:42.000000000 +0400
+++ pathauto_user.inc 2006-09-30 02:25:45.000000000 +0400
@@ -16,7 +16,7 @@
t('[uid]') => t('The id number of the user.')
);
$settings['bulkname'] = t('Bulk update user paths');
- $settings['bulkdescr'] = t('Generate aliases for all existing user account pages which do not already have aliases.');
+ $settings['bulkdescr'] = t('Generate aliases for all existing user account pages which do not already have aliases.
Note: It also generate aliases for user settings pages, for user contact and tracker pages if these modules are turned on.');
return (object) $settings;
default:
break;
@@ -48,30 +48,6 @@
}
/**
- * Implementation of hook_pathauto() for user-tracker aliases
- */
-function tracker_pathauto($op) {
- switch ($op) {
- case 'settings':
- $settings = array();
- $settings['module'] = 'tracker';
- $settings['groupheader'] = t('User-tracker path settings');
- $settings['patterndescr'] = t('Pattern for user-tracker page paths');
- $settings['patterndefault'] = t('user/[user]/track');
- $settings['placeholders'] = array(
- t('[user]') => t('The name of the user.'),
- t('[uid]') => t('The id number of the user.')
- );
- $settings['supportsfeeds'] = 'feed';
- $settings['bulkname'] = t('Bulk update user-tracker paths');
- $settings['bulkdescr'] = t('Generate aliases for all existing user-tracker pages which do not already have aliases.');
- return (object) $settings;
- default:
- break;
- }
-}
-
-/**
* Implementation of hook_user() for users, trackers, and blogs
*/
function pathauto_user($op, &$edit, &$user, $category=FALSE) {
@@ -88,14 +64,17 @@
$placeholders[t('[uid]')] = $user->uid;
$src = 'user/'.$user->uid;
$alias = pathauto_create_alias('user', $op, $placeholders, $src);
+ path_set_alias($src.'/edit', $alias.'/edit');
+ if (module_exist('contact')) {
+ path_set_alias($src.'/contact', $alias.'/contact');
+ }
+ if (module_exist('tracker')) {
+ path_set_alias($src.'/track', $alias.'/track');
+ }
if (module_exist('blog')) {
$src = 'blog/'.$user->uid;
$alias = pathauto_create_alias('blog', $op, $placeholders, $src);
}
- if (module_exist('tracker')) {
- $src = 'user/'.$user->uid.'/track';
- $alias = pathauto_create_alias('tracker', $op, $placeholders, $src);
- }
}
break;
case 'delete':
@@ -105,12 +84,12 @@
*/
$user = (object) $user;
path_set_alias('user/'.$user->uid);
+ path_set_alias('user/'.$user->uid.'/edit');
+ path_set_alias('user/'.$user->uid.'/contact');
+ path_set_alias('user/'.$user->uid.'/track');
if (module_exist('blog')) {
path_set_alias('blog/'.$user->uid);
}
- if (module_exist('tracker')) {
- path_set_alias('user/'.$user->uid.'/track');
- }
break;
default:
break;
@@ -131,9 +110,22 @@
$placeholders[t('[user]')] = pathauto_cleanstring($user->name);
$placeholders[t('[uid]')] = $user->uid;
$src = 'user/'.$user->uid;
+ path_set_alias($src.'/edit');
+ path_set_alias($src.'/contact');
+ path_set_alias($src.'/track');
if ($alias = pathauto_create_alias('user', 'bulkupdate', $placeholders, $src)) {
$count++;
}
+ path_set_alias($src.'/edit', $alias.'/edit');
+ $count++;
+ if (module_exist('contact')) {
+ path_set_alias($src.'/contact', $alias.'/contact');
+ $count++;
+ }
+ if (module_exist('tracker')) {
+ path_set_alias($src.'/track', $alias.'/track');
+ $count++;
+ }
$user = db_fetch_object($result);
}
@@ -166,29 +158,4 @@
"Bulk update of user blogs completed, one alias generated.",
"Bulk update of user blogs completed, %count aliases generated."));
}
-
-// Generate aliases for all tracker pages without aliases
-function tracker_pathauto_bulkupdate() {
- $query = 'SELECT uid,name,src,dst FROM {users} '.
- "LEFT JOIN {url_alias} ON CONCAT('user/', uid) = src ".
- 'WHERE uid > 0';
- $result = db_query($query);
- $user = db_fetch_object($result);
-
- $count = 0;
- $placeholders = array();
- while ($user) {
- $placeholders[t('[user]')] = pathauto_cleanstring($user->name);
- $placeholders[t('[uid]')] = $user->uid;
- $src = 'user/'.$user->uid.'/track';
- if ($alias = pathauto_create_alias('tracker', 'bulkupdate', $placeholders, $src)) {
- $count++;
- }
- $user = db_fetch_object($result);
- }
-
- drupal_set_message(format_plural($count,
- "Bulk update of user tracker pages completed, one alias generated.",
- "Bulk update of user tracker pages completed, %count aliases generated."));
-}
-
+?>