Index: modules/simpletest/tests/actions.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/simpletest/tests/actions.test,v
retrieving revision 1.11
diff -u -p -r1.11 actions.test
--- modules/simpletest/tests/actions.test	10 Nov 2009 17:27:53 -0000	1.11
+++ modules/simpletest/tests/actions.test	8 Dec 2009 13:17:40 -0000
@@ -19,17 +19,17 @@ class ActionsConfigurationTestCase exten
     $user = $this->drupalCreateUser(array('administer actions'));
     $this->drupalLogin($user);
 
-    // Make a POST request to admin/config/system/actions/manage.
+    // Make a POST request to admin/config/workflow/actions/manage.
     $edit = array();
     $edit['action'] = md5('system_goto_action');
-    $this->drupalPost('admin/config/system/actions/manage', $edit, t('Create'));
+    $this->drupalPost('admin/config/workflow/actions/manage', $edit, t('Create'));
 
     // Make a POST request to the individual action configuration page.
     $edit = array();
     $action_label = $this->randomName();
     $edit['actions_label'] = $action_label;
     $edit['url'] = 'admin';
-    $this->drupalPost('admin/config/system/actions/configure/' . md5('system_goto_action'), $edit, t('Save'));
+    $this->drupalPost('admin/config/workflow/actions/configure/' . md5('system_goto_action'), $edit, t('Save'));
 
     // Make sure that the new complex action was saved properly.
     $this->assertText(t('The action has been successfully saved.'), t("Make sure we get a confirmation that we've successfully saved the complex action."));
@@ -37,7 +37,7 @@ class ActionsConfigurationTestCase exten
 
     // Make another POST request to the action edit page.
     $this->clickLink(t('configure'));
-    preg_match('|admin/config/system/actions/configure/(\d+)|', $this->getUrl(), $matches);
+    preg_match('|admin/config/workflow/actions/configure/(\d+)|', $this->getUrl(), $matches);
     $aid = $matches[1];
     $edit = array();
     $new_action_label = $this->randomName();
@@ -53,11 +53,11 @@ class ActionsConfigurationTestCase exten
     // Make sure that deletions work properly.
     $this->clickLink(t('delete'));
     $edit = array();
-    $this->drupalPost("admin/config/system/actions/delete/$aid", $edit, t('Delete'));
+    $this->drupalPost("admin/config/workflow/actions/delete/$aid", $edit, t('Delete'));
 
     // Make sure that the action was actually deleted.
     $this->assertRaw(t('Action %action was deleted', array('%action' => $new_action_label)), t('Make sure that we get a delete confirmation message.'));
-    $this->drupalGet('admin/config/system/actions/manage');
+    $this->drupalGet('admin/config/workflow/actions/manage');
     $this->assertNoText($new_action_label, t("Make sure the action label does not appear on the overview page after we've deleted the action."));
     $exists = db_query('SELECT aid FROM {actions} WHERE callback = :callback', array(':callback' => 'drupal_goto_action'))->fetchField();
     $this->assertFalse($exists, t('Make sure the action is gone from the database after being deleted.'));
Index: modules/system/system.admin.inc
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.admin.inc,v
retrieving revision 1.234
diff -u -p -r1.234 system.admin.inc
--- modules/system/system.admin.inc	8 Dec 2009 06:39:34 -0000	1.234
+++ modules/system/system.admin.inc	8 Dec 2009 13:17:49 -0000
@@ -2779,8 +2779,8 @@ function system_actions_manage() {
     $row[] = array(
       array('data' => $action->type),
       array('data' => $action->label),
-      array('data' => $action->parameters ? l(t('configure'), "admin/config/system/actions/configure/$action->aid") : ''),
-      array('data' => $action->parameters ? l(t('delete'), "admin/config/system/actions/delete/$action->aid") : '')
+      array('data' => $action->parameters ? l(t('configure'), "admin/config/workflow/actions/configure/$action->aid") : ''),
+      array('data' => $action->parameters ? l(t('delete'), "admin/config/workflow/actions/delete/$action->aid") : '')
     );
   }
 
@@ -2840,7 +2840,7 @@ function system_actions_manage_form($for
  */
 function system_actions_manage_form_submit($form, &$form_state) {
   if ($form_state['values']['action']) {
-    $form_state['redirect'] = 'admin/config/system/actions/configure/' . $form_state['values']['action'];
+    $form_state['redirect'] = 'admin/config/workflow/actions/configure/' . $form_state['values']['action'];
   }
 }
 
@@ -2864,7 +2864,7 @@ function system_actions_manage_form_subm
  */
 function system_actions_configure($form, &$form_state, $action = NULL) {
   if ($action === NULL) {
-    drupal_goto('admin/config/system/actions');
+    drupal_goto('admin/config/workflow/actions');
   }
 
   $actions_map = actions_actions_map(actions_list());
@@ -2956,7 +2956,7 @@ function system_actions_configure_submit
   actions_save($function, $form_state['values']['actions_type'], $params, $form_state['values']['actions_label'], $aid);
   drupal_set_message(t('The action has been successfully saved.'));
 
-  $form_state['redirect'] = 'admin/config/system/actions/manage';
+  $form_state['redirect'] = 'admin/config/workflow/actions/manage';
 }
 
 /**
@@ -2972,7 +2972,7 @@ function system_actions_delete_form($for
   );
   return confirm_form($form,
     t('Are you sure you want to delete the action %action?', array('%action' => $action->label)),
-    'admin/config/system/actions/manage',
+    'admin/config/workflow/actions/manage',
     t('This cannot be undone.'),
     t('Delete'),
     t('Cancel')
@@ -2991,7 +2991,7 @@ function system_actions_delete_form_subm
   $label = check_plain($action->label);
   watchdog('user', 'Deleted action %aid (%action)', array('%aid' => $aid, '%action' => $label));
   drupal_set_message(t('Action %action was deleted', array('%action' => $label)));
-  $form_state['redirect'] = 'admin/config/system/actions/manage';
+  $form_state['redirect'] = 'admin/config/workflow/actions/manage';
 }
 
 /**
@@ -3011,5 +3011,5 @@ function system_action_delete_orphans_po
  */
 function system_actions_remove_orphans() {
   actions_synchronize(TRUE);
-  drupal_goto('admin/config/system/actions/manage');
+  drupal_goto('admin/config/workflow/actions/manage');
 }
Index: modules/system/system.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.module,v
retrieving revision 1.857
diff -u -p -r1.857 system.module
--- modules/system/system.module	6 Dec 2009 01:00:27 -0000	1.857
+++ modules/system/system.module	8 Dec 2009 13:17:54 -0000
@@ -80,7 +80,7 @@ function system_help($path, $arg) {
       $output .= '<dt>' . t('Configuring basic site settings') . '</dt>';
       $output .= '<dd>' . t('The System module also handles basic configuration options for your site, including <a href="@date-time-settings">Date and time settings</a>, <a href="@file-system">File system settings</a>, <a href="@clean-url">Clean URL support</a>, <a href="@site-info">Site name and other information</a>, and a <a href="@maintenance-mode">Maintenance mode</a> for taking your site temporarily offline.', array('@date-time-settings' => url('admin/config/regional/date-time'), '@file-system' => url('admin/config/media/file-system'), '@clean-url' => url('admin/config/search/clean-urls'), '@site-info' => url('admin/config/system/site-information'), '@maintenance-mode' => url('admin/config/development/maintenance'))) . '</dd>';
       $output .= '<dt>' . t('Configuring actions') . '</dt>';
-      $output .= '<dd>' . t('Actions are individual tasks that the system can do, such as unpublishing a piece of content or banning a user. Modules, such as the <a href="@trigger-help">Trigger module</a>, can fire these actions when certain system events happen; for example, when a new post is added or when a user logs in. Modules may also provide additional actions. Visit the <a href="@actions">Actions page</a> to configure actions.', array('@trigger-help' => url('admin/help/trigger'), '@actions' => url('admin/config/system/actions'))) . '</dd>';
+      $output .= '<dd>' . t('Actions are individual tasks that the system can do, such as unpublishing a piece of content or banning a user. Modules, such as the <a href="@trigger-help">Trigger module</a>, can fire these actions when certain system events happen; for example, when a new post is added or when a user logs in. Modules may also provide additional actions. Visit the <a href="@actions">Actions page</a> to configure actions.', array('@trigger-help' => url('admin/help/trigger'), '@actions' => url('admin/config/workflow/actions'))) . '</dd>';
       $output .= '</dl>';
       return $output;
     case 'admin/by-module':
@@ -120,15 +120,15 @@ function system_help($path, $arg) {
       if ($user->uid == 1) {
         return '<p>' . t('If you are upgrading to a newer version of Drupal or upgrading contributed modules or themes you may need to run !update-php.', array('!update-php' => l('update.php', 'update.php'))) . '</p>';
       }
-    case 'admin/config/system/actions':
-    case 'admin/config/system/actions/manage':
+    case 'admin/config/workflow/actions':
+    case 'admin/config/workflow/actions/manage':
       $output = '';
       $output .= '<p>' . t('There are two types of actions: simple and advanced. Simple actions do not require any additional configuration, and are listed here automatically. Advanced actions can do more than simple actions; for example, send an e-mail to a specified address, or check for certain words within a piece of content. These actions need to be created and configured first before they may be used. To create an advanced action, select the action from the drop-down list in the advanced action section below and click the <em>Create</em> button.') . '</p>';
       if (module_exists('trigger')) {
         $output .= '<p>' . t('You may proceed to the <a href="@url">Triggers</a> page to assign these actions to system events.', array('@url' => url('admin/structure/trigger'))) . '</p>';
       }
       return $output;
-    case 'admin/config/system/actions/configure':
+    case 'admin/config/workflow/actions/configure':
       return t('An advanced action offers additional configuration options which may be filled out below. Changing the <em>Description</em> field is recommended, in order to better identify the precise action taking place. This description will be displayed in modules such as the Trigger module when assigning actions to system events, so it is best if it is as descriptive as possible (for example, "Send e-mail to Moderation Team" rather than simply "Send e-mail").');
     case 'admin/config/people/ip-blocking':
       return '<p>' . t('IP addresses listed here are blocked from your site before any modules are loaded. You may add IP addresses to the list, or delete existing entries.') . '</p>';
@@ -580,6 +580,7 @@ function system_menu() {
     'access arguments' => array('access administration pages'),
     'file' => 'system.admin.inc',
   );
+
   // Appearance.
   $items['admin/appearance'] = array(
     'title' => 'Appearance',
@@ -692,15 +693,22 @@ function system_menu() {
     'file' => 'system.admin.inc',
   );
 
-  // Actions.
-  $items['admin/config/system/actions'] = array(
+  // Workflow.
+  $items['admin/config/workflow'] = array(
+    'title' => 'Workflow',
+    'description' => 'Editorial workflow and automation tools.',
+    'page callback' => 'system_admin_menu_block_page',
+    'access arguments' => array('access administration pages'),
+    'file' => 'system.admin.inc',
+  );
+  $items['admin/config/workflow/actions'] = array(
     'title' => 'Actions',
     'description' => 'Manage the actions defined for your site.',
     'access arguments' => array('administer actions'),
     'page callback' => 'system_actions_manage',
     'file' => 'system.admin.inc',
   );
-  $items['admin/config/system/actions/manage'] = array(
+  $items['admin/config/workflow/actions/manage'] = array(
     'title' => 'Manage actions',
     'description' => 'Manage the actions defined for your site.',
     'page callback' => 'system_actions_manage',
@@ -708,7 +716,7 @@ function system_menu() {
     'weight' => -2,
     'file' => 'system.admin.inc',
   );
-  $items['admin/config/system/actions/configure'] = array(
+  $items['admin/config/workflow/actions/configure'] = array(
     'title' => 'Configure an advanced action',
     'page callback' => 'drupal_get_form',
     'page arguments' => array('system_actions_configure'),
@@ -716,7 +724,7 @@ function system_menu() {
     'type' => MENU_CALLBACK,
     'file' => 'system.admin.inc',
   );
-  $items['admin/config/system/actions/delete/%actions'] = array(
+  $items['admin/config/workflow/actions/delete/%actions'] = array(
     'title' => 'Delete action',
     'description' => 'Delete an action.',
     'page callback' => 'drupal_get_form',
@@ -725,7 +733,7 @@ function system_menu() {
     'type' => MENU_CALLBACK,
     'file' => 'system.admin.inc',
   );
-  $items['admin/config/system/actions/orphan'] = array(
+  $items['admin/config/workflow/actions/orphan'] = array(
     'title' => 'Remove orphans',
     'page callback' => 'system_actions_remove_orphans',
     'access arguments' => array('administer actions'),
@@ -935,6 +943,7 @@ function system_menu() {
     'file' => 'system.admin.inc',
   );
 
+  // Search.
   $items['admin/config/search'] = array(
     'title' => 'Search and metadata',
     'description' => 'Local site search, metadata and SEO.',
@@ -958,6 +967,8 @@ function system_menu() {
     'type' => MENU_CALLBACK,
     'file' => 'system.admin.inc',
   );
+
+  // Content authoring.
   $items['admin/config/content'] = array(
     'title' => 'Content authoring',
     'description' => 'Settings related to formatting and authoring content.',
Index: modules/trigger/trigger.admin.inc
===================================================================
RCS file: /cvs/drupal/drupal/modules/trigger/trigger.admin.inc,v
retrieving revision 1.21
diff -u -p -r1.21 trigger.admin.inc
--- modules/trigger/trigger.admin.inc	6 Nov 2009 03:59:06 -0000	1.21
+++ modules/trigger/trigger.admin.inc	8 Dec 2009 13:17:59 -0000
@@ -177,7 +177,7 @@ function trigger_assign_form($form, $for
   }
   else {
     $form[$hook]['none'] = array(
-      '#markup' => t('No actions available for this trigger. <a href="@link">Add action</a>.', array('@link' => url('admin/config/system/actions/manage')))
+      '#markup' => t('No actions available for this trigger. <a href="@link">Add action</a>.', array('@link' => url('admin/config/workflow/actions/manage')))
     );
   }
   return $form;
Index: modules/trigger/trigger.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/trigger/trigger.module,v
retrieving revision 1.56
diff -u -p -r1.56 trigger.module
--- modules/trigger/trigger.module	6 Dec 2009 18:46:13 -0000	1.56
+++ modules/trigger/trigger.module	8 Dec 2009 13:17:59 -0000
@@ -11,7 +11,7 @@
  * Implements hook_help().
  */
 function trigger_help($path, $arg) {
-  $explanation = '<p>' . t('Triggers are system events, such as when new content is added or when a user logs in. The trigger module associates these triggers with actions (functional tasks), such as unpublishing content or e-mailing an administrator. The <a href="@url">Actions settings page</a> contains a list of existing actions and provides the ability to create and configure additional actions.', array('@url' => url('admin/config/system/actions'))) . '</p>';
+  $explanation = '<p>' . t('Triggers are system events, such as when new content is added or when a user logs in. The trigger module associates these triggers with actions (functional tasks), such as unpublishing content or e-mailing an administrator. The <a href="@url">Actions settings page</a> contains a list of existing actions and provides the ability to create and configure additional actions.', array('@url' => url('admin/config/workflow/actions'))) . '</p>';
   switch ($path) {
     case 'admin/structure/trigger/comment':
       return $explanation . '<p>' . t('Below you can assign actions to run when certain comment-related triggers happen. For example, you could promote a post to the front page when a comment is added.') . '</p>';
@@ -31,7 +31,7 @@ function trigger_help($path, $arg) {
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Configuring triggers') . '</dt>';
-      $output .= '<dd>' . t('The combination of actions and triggers can perform many useful tasks, such as e-mailing an administrator if a user account is deleted, or automatically unpublishing comments that contain certain words. By default, there are five <em>contexts</em> of events (Comments, Content, Cron, Taxonomy, and Users), but more may be added by additional modules. Users with the appropriate permissions can configure triggers on the <a href="@triggers-page">Triggers configuration page</a>, and actions on the <a href="@actions-page">Actions configuration page</a>.', array('@triggers-page' => url('admin/structure/trigger'), '@actions-page' => url('admin/config/system/actions'))) . '</dd>';
+      $output .= '<dd>' . t('The combination of actions and triggers can perform many useful tasks, such as e-mailing an administrator if a user account is deleted, or automatically unpublishing comments that contain certain words. By default, there are five <em>contexts</em> of events (Comments, Content, Cron, Taxonomy, and Users), but more may be added by additional modules. Users with the appropriate permissions can configure triggers on the <a href="@triggers-page">Triggers configuration page</a>, and actions on the <a href="@actions-page">Actions configuration page</a>.', array('@triggers-page' => url('admin/structure/trigger'), '@actions-page' => url('admin/config/workflow/actions'))) . '</dd>';
       $output .= '</dl>';
       return $output;
   }
Index: modules/trigger/trigger.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/trigger/trigger.test,v
retrieving revision 1.22
diff -u -p -r1.22 trigger.test
--- modules/trigger/trigger.test	2 Dec 2009 19:26:22 -0000	1.22
+++ modules/trigger/trigger.test	8 Dec 2009 13:17:59 -0000
@@ -150,7 +150,7 @@ class TriggerCronTestCase extends Drupal
       'actions_label' => $action_label,
       'subject' => $action_label,
     );
-    $this->drupalPost('admin/config/system/actions/configure/' . $hash, $edit, t('Save'));
+    $this->drupalPost('admin/config/workflow/actions/configure/' . $hash, $edit, t('Save'));
     $aid = db_query('SELECT aid FROM {actions} WHERE callback = :callback', array(':callback' => 'trigger_test_system_cron_conf_action'))->fetchField();
     // $aid is likely 3 but if we add more uses for the sequences table in
     // core it might break, so it is easier to get the value from the database.
@@ -163,7 +163,7 @@ class TriggerCronTestCase extends Drupal
       'actions_label' => $action_label,
       'subject' => $action_label,
     );
-    $this->drupalPost('admin/config/system/actions/configure/' . $hash, $edit, t('Save'));
+    $this->drupalPost('admin/config/workflow/actions/configure/' . $hash, $edit, t('Save'));
     $edit = array('aid' => md5($aid + 1));
     $this->drupalPost('admin/structure/trigger/system', $edit, t('Assign'));
 
