Index: pathauto.admin.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/pathauto/pathauto.admin.inc,v
retrieving revision 1.20
diff -u -p -r1.20 pathauto.admin.inc
--- pathauto.admin.inc	13 Sep 2008 08:54:06 -0000	1.20
+++ pathauto.admin.inc	3 Jul 2009 18:41:01 -0000
@@ -94,16 +94,7 @@ function pathauto_admin_settings() {
     '#description' => t('Maximum number of objects of a given type which should be aliased during a bulk update. The default is 50 and the recommended number depends on the speed of your server. If bulk updates "time out" or result in a "white screen" then reduce the number.'),
   );
 
-  $actions = array(
-    t('Do nothing. Leave the old alias intact.'),
-    t('Create a new alias. Leave the existing alias functioning.'),
-    t('Create a new alias. Delete the old alias.'),
-  );
-
-  if (function_exists('path_redirect_save')) {
-    $actions[] = t('Create a new alias. Redirect from old alias.');
-  }
-  elseif (variable_get('pathauto_update_action', PATHAUTO_UPDATE_ACTION_DELETE) == PATHAUTO_UPDATE_ACTION_REDIRECT) {
+  if (!module_exists('path_redirect') && variable_get('pathauto_update_action', PATHAUTO_UPDATE_ACTION_DELETE) == PATHAUTO_UPDATE_ACTION_REDIRECT) {
     // the redirect action is selected, but path_redirect is not enabled
     // let's set the variable back to the default
     variable_set('pathauto_update_action', PATHAUTO_UPDATE_ACTION_DELETE);
@@ -113,8 +104,14 @@ function pathauto_admin_settings() {
     '#type' => 'radios',
     '#title' => t('Update action'),
     '#default_value' => variable_get('pathauto_update_action', PATHAUTO_UPDATE_ACTION_DELETE),
-    '#options' => $actions,
+    '#options' => array(
+      PATHAUTO_UPDATE_ACTION_NO_NEW => t('Do nothing. Leave the old alias intact.'),
+      PATHAUTO_UPDATE_ACTION_LEAVE => t('Create a new alias. Leave the existing alias functioning.'),
+      PATHAUTO_UPDATE_ACTION_DELETE => t('Create a new alias. Delete the old alias.'),
+      PATHAUTO_UPDATE_ACTION_REDIRECT => t('Create a new alias. Redirect from old alias.'),
+    ),
     '#description' => t('What should Pathauto do when updating an existing content item which already has an alias?'),
+    '#process' => array('expand_radios', 'pathauto_process_update_action'),
   );
 
   $disable_transliteration = FALSE;
@@ -306,6 +303,17 @@ function pathauto_admin_settings() {
 }
 
 /**
+ * Disable the redirect update option if the path_redirect module is disabled.
+ */
+function pathauto_process_update_action($element) {
+  if (!module_exists('path_redirect')) {
+    $element[PATHAUTO_UPDATE_ACTION_REDIRECT]['#disabled'] = TRUE;
+    $element[PATHAUTO_UPDATE_ACTION_REDIRECT]['#title'] .= ' ' . t('This option requires the <a href="@path-redirect">Path redirect module</a>.', array('@path-redirect' => 'http://drupal.org/project/path_redirect'));
+  }
+  return $element;
+}
+
+/**
  * Helper function for pathauto_admin_settings().
  *
  * See if they are using all -raw tokens available
Index: pathauto.info
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/pathauto/pathauto.info,v
retrieving revision 1.5
diff -u -p -r1.5 pathauto.info
--- pathauto.info	21 Mar 2009 00:24:28 -0000	1.5
+++ pathauto.info	3 Jul 2009 18:41:02 -0000
@@ -3,5 +3,5 @@ name = Pathauto
 description = Provides a mechanism for modules to automatically generate aliases for the content they manage.
 dependencies[] = path
 dependencies[] = token
-suggests[] = path_redirect
+recommends[] = path_redirect
 core = 6.x
