Index: pageroute.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/pageroute/pageroute.module,v
retrieving revision 1.71.2.7
diff -u -r1.71.2.7 pageroute.module
@@ -78,21 +78,21 @@
  * Implementation of pageroute_show_route()
  * Init route object and return current form
  */
-function pageroute_init_route($prid, $page_name = NULL, $uid = NULL, $nid = NULL) {
+function pagerouteInitRoute($prid, $page_name = NULL, $uid = NULL, $nid = NULL) {
   $args = array();
-  
+
   if (is_numeric($uid)) {
     $args['uid'] = $uid;
   }
-  
+
   if (is_numeric($nid)) {
     $args['nid'] = $nid;
   }
 
-  $route = &pageroute_route::load($prid); 
+  $route = &PagerouteRoute::load($prid); 
   $route->start($page_name);
   $route->args = &$args;
-  
+
   return $route;
 }
 
@@ -106,7 +106,7 @@
     $form_state['storage']['create'] = TRUE;
     return;
   }
- 
+
   if (!isset($form_state['storage']['route'])) {   // first call
     $func_args = func_get_args();
 
@@ -114,29 +114,29 @@
       $func_args[$i] = NULL;
     }
 
-    $route = &pageroute_init_route($func_args[1], $func_args[2], $func_args[3], $func_args[4]);
+    $route = &pagerouteInitRoute($func_args[1], $func_args[2], $func_args[3], $func_args[4]);
     $form_state['storage']['route'] = &$route;
   }
   else {
     $route = &$form_state['storage']['route'];
-  }  
+  }
 
   unset($form_state['values']);
 
   $args = &$route->args;
 
-  if (!$route->page_data_current) {
+  if (!$route->pageDataCurrent) {
     return;
   }
 
-  $page_data = &$route->page_data_current;
+  $page_data = &$route->pageDataCurrent;
   $page_name = $page_data->name;
-  
+
   $path = drupal_get_path('module', 'pageroute') .'/pageroute.css';
   drupal_add_css($path, 'module', 'all', FALSE);
-    
+
   if (isset($form_state['target'])) {
-    $route->set_suggested_page($form_state['target']);
+    $route->setSuggestedPage($form_state['target']);
 
     $uid = isset($args['uid']) ? $args['uid'] : NULL;
     $nid = isset($args['nid']) ? $args['nid'] : NULL;
@@ -146,14 +146,14 @@
       rules_invoke_event('pageroute_used', $route, $user, $uid, $nid);
     }      
     module_invoke_all('pageroute_used',  $route, $user, $uid, $nid);
-   
-    $page_data = &$route->page_data_current;
-    $page_name = $page_data->name;      
-         
+
+    $page_data = &$route->pageDataCurrent;
+    $page_name = $page_data->name;
+
     if ($route->options['tabs'] == PAGEROUTE_MENU_TABS) {
-     
+
       $url = '';
-      
+
       if ($args) {
         if (isset($args['uid'])) {
           $url = $url . $args['uid'];
@@ -162,7 +162,7 @@
           $url = $url .'/'. $args['nid'];
         }
       }
-        
+
       if (isset($page_data->options['no_tab']) && $page_data->options['no_tab']) {
         menu_set_active_item($route->path .'//'. $url);
       }
@@ -170,20 +170,20 @@
         menu_set_active_item($route->path .'/'. $page_data->name .'/'. $url);
       }
     }
-  }  
-  
+  }
+
   $form = array();
-    
+
   drupal_set_title(check_plain($page_data->title));
 
   // loads the page variable with a page object
-  $route->set_form($form, $page_data, $page, $form_state, $args);
+  $route->setForm($form, $page_data, $page, $form_state, $args);
 
   if (!isset($args['hide_pageroute_buttons'])) {
     $args['hide_pageroute_buttons'] = FALSE;
   }
 
-  pageroute_decorate($form, $page_data, $args['hide_pageroute_buttons']);
+  pagerouteDecorate($form, $page_data, $args['hide_pageroute_buttons']);
 
   $form['#theme_saved'] = isset($form['#theme']) ? $form['#theme'] : array();
   $form['#theme'] = 'pageroute_embedded_form_reuse';
@@ -204,22 +204,21 @@
   if (!$form_state['submitted']) {
     return $form;
   }
-   
+
   if (isset($form_state['page'])) {
     $page = &$form_state['page'];
   }
   else {
-    
-    $page = &pageroute_page::get_object($form_state['storage']['route']->page_data_current);
+    $page = &PageroutePage::getObject($form_state['storage']['route']->pageDataCurrent);
     $form_state['page'] = &$page;
   }
-    
+
   $options = $page->options;
   $button = $form_state['clicked_button'];
-  
+
   if (!isset($button['#tab-button'])) {  // not a tab-like submit button
     switch ($button['#value']) {
-      case $options['cancel']:  
+      case $options['cancel']:
         $form['#validated'] = TRUE;
         $form['#post'] = array();
         pageroute_cancel($form, $form_state);
@@ -228,10 +227,10 @@
       case $options['back']:
         $class = get_class($page);
         // add default submit handler
-        $function = 'get_default_submit_handler';
+        $function = 'getDefaultSubmitHandler';
         pageroute_insert_handlers($form_state['submit_handlers'], call_user_func(array($class, $function), $form));
         // add default validate handler
-        $function = 'get_default_validate_handler';
+        $function = 'getDefaultValidateHandler';
         pageroute_insert_handlers($form_state['validate_handlers'], call_user_func(array($class, $function), $form));
       default:
         $form_state['submit_handlers'][] = 'pageroute_page_form_submit_prepare_target';
@@ -241,16 +240,16 @@
   else {  // tab-like submit button
     $class = get_class($page);
     // add default submit handler
-    $function = 'get_default_submit_handler';
+    $function = 'getDefaultSubmitHandler';
     pageroute_insert_handlers($form_state['submit_handlers'], call_user_func(array($class, $function), $form));
     // add default validate handler
-    $function = 'get_default_validate_handler';
+    $function = 'getDefaultValidateHandler';
     pageroute_insert_handlers($form_state['validate_handlers'], call_user_func(array($class, $function), $form));
   }
 
   // in case validate fails
   $form_state['target'] = PAGEROUTE_CURRENT;
-  
+
   return $form;
 }
 
@@ -277,7 +276,7 @@
   $page = &$form_state['page'];
   $args = &$page->route->args;
 
-  $function = 'form_submitted';
+  $function = 'formSubmitted';
   $page->$function($form_state);
 
   if (!isset($form_state['values']['page_op'])) {
@@ -308,17 +307,17 @@
   $route = &$form_state['storage']['route'];
 
   // no page access -> try redirect
-  if (!$route->check_page_access($page->name, $form_state['target'])) {
+  if (!$route->checkPageAccess($page->name, $form_state['target'])) {
     unset($form_state['storage']);
     $form_state['rebuild'] = FALSE;
     
     if ($route->options['redirect_path']) {
-      drupal_redirect_form($form, pageroute_get_redirect_path($page));
+      drupal_redirect_form($form, pagerouteGetRedirectPath($page));
       return;
     }
     
     drupal_not_found();
-    pageroute_exit_now();
+    pagerouteExitNow();
     return;  
   }
 
@@ -334,7 +333,7 @@
   $route = &$page->route;
   
   $form_state['target'] = PAGEROUTE_CURRENT;
-  $route->set_suggested_page($form_state['clicked_button']['#tab-button']);
+  $route->setSuggestedPage($form_state['clicked_button']['#tab-button']);
 
   $form_state['rebuild'] = TRUE;
 }
@@ -346,7 +345,7 @@
 function pageroute_access($prid) {
   global $user;
     
-  $route = pageroute_route::load($prid);
+  $route = PagerouteRoute::load($prid);
   
   return isset($route->options['access']['allowed_roles']) && array_intersect(array_keys($user->roles), $route->options['access']['allowed_roles']) ? TRUE : FALSE;
 }
@@ -360,11 +359,11 @@
 
   $form_state['target'] = $page->get_cancel_target();
   
-  if (!$route->check_page_access($page->name, $form_state['target'])) {
+  if (!$route->checkPageAccess($page->name, $form_state['target'])) {
     if ($route->options['redirect_path']) {
       unset($form_state['storage']);
       $form_state['rebuild'] = FALSE;
-      drupal_redirect_form($form, pageroute_get_redirect_path($page));
+      drupal_redirect_form($form, pagerouteGetRedirectPath($page));
       return;
     }  
   }
@@ -375,9 +374,9 @@
 /**
  * Clears the drupal messages, if configured and the current page doesn't prevent it
  */
-function pageroute_clear_messages($page) {
+function pagerouteClearMessages($page) {
   if ($page->route->options['no_messages']) {
-    $options = pageroute_invoke($page, 'options');
+    $options = pagerouteInvoke($page, 'options');
     $options = (isset($options)) ? $options : $page->options;
     if (!isset($options['show_messages']) || !$options['show_messages']) {
       unset($_SESSION['messages']['status']);
@@ -389,7 +388,7 @@
  * Get a list of all pageroute page types.
  * @param $op One of list, base, or all.
  */
-function pageroute_get_types($op = NULL) {
+function pagerouteGetTypes($op = NULL) {
   static $options, $module_types;
 
   if (!isset($type_list)) {
@@ -398,8 +397,8 @@
     foreach ($page_types as $module => $type_ids) {
       $module_path = drupal_get_path('module', $module);
       foreach ($type_ids as $type_id => $file) {
-        pageroute_include_page_file(NULL, $module_path, $file);
-        $page_class = $module .'_page_'. $type_id;
+        pagerouteIncludePageFile(NULL, $module_path, $file);
+        $page_class = $module . 'Page' . $type_id;
         $type = call_user_func(array($page_class, 'info'));
         
         $module_types[$module][$type_id]['name'] = $type['name'];
@@ -433,7 +432,7 @@
       'view' => 'pageroute.page_view',
       'add' => 'pageroute.page_add',
       'edit' => 'pageroute.page_edit',
-      'user_edit' => 'pageroute.page_user_edit',
+      'useredit' => 'pageroute.page_useredit',
       'manage' => 'pageroute.page_manage',
     ),
   );
@@ -446,10 +445,10 @@
  * @param $op
  *  The operation that should be invoked
  */
-function pageroute_invoke($page_data, $op, $arg1 = NULL) {
+function pagerouteInvoke($page_data, $op, $arg1 = NULL) {
 
   // Include needed type!
-  pageroute_include_page_type($page_data->module, $page_data->type);
+  pagerouteIncludePageType($page_data->module, $page_data->type);
   
   // try to call a static class function
   $class = $page_data->module .'_page_'. $page_data->type;
@@ -469,13 +468,13 @@
 /**
  * Determines the redirect path, to which the user will be routed after the pageroute
  */
-function pageroute_get_redirect_path(&$page) {
+function pagerouteGetRedirectPath(&$page) {
   $route = &$page->route;
   
   if (!empty($route->options['redirect_path'])) {
     return strtr($route->options['redirect_path'], array(
       '!nid' => intval($page->options['nid']),
-      '!uid' => intval(pageroute_page_get_uid($page)),
+      '!uid' => intval(pageroutePageGetUid($page)),
     ));
   }
   if ($nid = $page->options['nid']) {
@@ -492,7 +491,7 @@
   return '<front>';
 }
 
-function pageroute_get_page_path(&$page, $args = NULL) {
+function pagerouteGetPagePath(&$page, $args = NULL) {
   $path = $page->route->path .'/'. $page->name .'/';
   
   if ($args['uid']) {
@@ -517,7 +516,7 @@
  *   pageroute is used for not the active user. If the access check fails, the active user's uid
  *   will be returned.
  */
-function pageroute_page_get_uid($page, $permission = FALSE) {
+function pageroutePageGetUid($page, $permission = FALSE) {
   global $user;
   $uid = isset($page->route->uid) ? $page->route->uid : NULL;
   if (is_numeric($uid) && $uid) {
@@ -534,23 +533,20 @@
 /**
  * Add tabs, buttons and other necessary properties to the form.
  */
-function pageroute_decorate(&$form, &$page, $no_pageroute_buttons = NULL, $button_name = 'page_op') {
-
-dprint_r($no_pageroute_buttons);
-
-  pageroute_add_tabs($form, $page->route);  
+function pagerouteDecorate(&$form, &$page, $no_pageroute_buttons = NULL, $button_name = 'page_op') {
+  pagerouteAddTabs($form, $page->route);  
   if (!$no_pageroute_buttons || $no_pageroute_buttons == FALSE) {
-    pageroute_add_buttons($form, $page, $button_name);
+    pagerouteAddButtons($form, $page, $button_name);
   }
 }
 
 /**
  * Add the pageroute buttons to a given form.
  */
-function pageroute_add_buttons(&$form, &$page, $button_name = 'page_op') {
+function pagerouteAddButtons(&$form, &$page, $button_name = 'page_op') {
 
   //get the right options first
-  $options = pageroute_invoke($page, 'options');
+  $options = pagerouteInvoke($page, 'options');
   $options = (isset($options)) ? $options : $page->options;
 
   $form_buttons = array();
@@ -605,7 +601,7 @@
 /**
  * Add the pageroute tabs to a given form.
  */
-function pageroute_add_tabs(&$form, &$route)  {
+function pagerouteAddTabs(&$form, &$route)  {
 
   if ($route->options['tabs'] != PAGEROUTE_BUTTON_TABS) {
     return;
@@ -621,7 +617,7 @@
         '#tab-button' => $tabpage->name,
         '#submit' => array('pageroute_page_tab_submit')
       );
-      if (!$route->check_page_access($tabpage->name)) {
+      if (!$route->checkPageAccess($tabpage->name)) {
         $form_tabs[$tabpage->name]['#attributes'] = array('class' => 'distant');
         $form_tabs[$tabpage->name]['#disabled']   = TRUE;        
       }
@@ -689,7 +685,7 @@
 }
 
 function theme_pageroute_admin_bottom($route) {
-  $page = &$route->page_data_current;
+  $page = &$route->pageDataCurrent;
   
   return array(
     'admin' => array(
@@ -721,7 +717,7 @@
   return drupal_render($elements);
 }
 
-function pageroute_include_page_file($module, $module_path = NULL, $file) {
+function pagerouteIncludePageFile($module, $module_path = NULL, $file) {
   if ($module_path) {
     include_once($module_path .'/'. $file .'.inc');
   }
@@ -730,8 +726,8 @@
   }
 }
 
-function pageroute_include_page_type($module, $type) {
-  $types = pageroute_get_types();
+function pagerouteIncludePageType($module, $type) {
+  $types = pagerouteGetTypes();
 
   $file = $types[$module][$type]['file'];
 
@@ -741,7 +737,15 @@
 /**
  * Exits properly by invoking hook_exit before exiting
  */
-function pageroute_exit_now() {
+function pagerouteExitNow() {
   module_invoke_all('exit');
   exit;
 }
+
+/**
+ * Helper function to retrieve a page class
+ */
+function pagerouteGetPageClass($module, $type) {
+  $page_class = $module . 'Page' . $type;
+  return $page_class;
+}  
Index: pageroute_ui.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/pageroute/pageroute_ui.module,v
retrieving revision 1.36.2.6
diff -u -r1.36.2.6 pageroute_ui.module
--- pageroute_ui.module	26 Mar 2009 14:18:58 -0000	1.36.2.6
+++ pageroute_ui.module	3 Aug 2009 10:18:14 -0000
@@ -217,7 +217,7 @@
   
   $header = array(t('Name'), t('Title'), t('Type'), t('Weight'), array('data' => t('Operations'), 'colspan' => '2'));
   
-  $module_types = pageroute_get_types();
+  $module_types = pagerouteGetTypes();
 
   $rows = array();
   while ($page_data = db_fetch_object($result)) {
@@ -317,7 +317,7 @@
   $output .= '<h2>Page types</h2>';
   $output .= '<p>'. t('Each page has a page type which sets the behaviour of the page. All modules can contribute further page types.') .'</p>';
 
-  $module_types = pageroute_get_types();
+  $module_types = pagerouteGetTypes();
 
   foreach ($module_types as $module => $types) {
     foreach ($types as $type => $typeinfo) {
Index: pageroute_ui.forms.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/pageroute/pageroute_ui.forms.inc,v
retrieving revision 1.1.2.6
diff -u -r1.1.2.6 pageroute_ui.forms.inc
--- pageroute_ui.forms.inc	26 Mar 2009 13:53:36 -0000	1.1.2.6
+++ pageroute_ui.forms.inc	3 Aug 2009 10:18:13 -0000
@@ -28,7 +28,6 @@
       0 => t('Don\'t show any tabs'),
       PAGEROUTE_MENU_TABS => t('Use the common drupal menu tabs'),
       PAGEROUTE_BUTTON_TABS => t('Show submit-like tab buttons above the page content'),
-//      PAGEROUTE_HINT_TABS => t('Show tabs that cannot be clicked')
     ),
     '#default_value' => isset($route->options['tabs']) ? $route->options['tabs'] : 0,
     '#description' => t('Note that the commom drupal menu tabs won\'t save the actual form, if they are used. Also any arguments appended to the URL will be lost. They are in particular useful for pageroutes, which focus on displaying content.'),
@@ -118,10 +117,9 @@
   $record->options = serialize($form_state['values']['options']);
 
   if (!isset($form_state['values']['route']->new)) {
-    
-  // notice!
+  	// notice!
     $_REQUEST['destination'] = str_replace($form_state['values']['route']->path, $record->path, $_REQUEST['destination']);
-    
+
     $record->prid = $form_state['values']['route']->prid;
     drupal_write_record('pageroute_routes', $record, array('prid'));
   }
@@ -135,7 +133,6 @@
 }
 
 function pageroute_ui_route_delete_confirm(&$form_state, $prid) {
-
   if (is_numeric($prid)) {
     $route = db_fetch_object(db_query("SELECT * FROM {pageroute_routes} WHERE prid = %d", $prid));
     $route->options = unserialize($route->options);
@@ -169,7 +166,7 @@
   $page_data = NULL;
 
   if (is_numeric($prid)) {
-    $route = pageroute_route::load($prid);
+    $route = PagerouteRoute::load($prid);
   }
    
   if (!isset($route)) {
@@ -192,7 +189,7 @@
   }
   else if ($page_name) {
     $route->start($page_name);
-    $page_data = &$route->page_data_current;
+    $page_data = &$route->pageDataCurrent;
     
     if (!isset($page_data)) {
       drupal_not_found();
@@ -221,8 +218,8 @@
   }
   
   $page->route = $route;
-  $page_class = $module .'_page_'. $type;
-  pageroute_include_page_type($module, $type);
+  pagerouteIncludePageType($module, $type);
+  $page_class = pagerouteGetPageClass($module, $type);
   $help = call_user_func(array($page_class, 'help'));  
 
   $form['module'] = array(
@@ -393,7 +390,7 @@
  * Shows a form for choosing the inital type of the page
  */
 function pageroute_ui_page_add_type(&$form_state, $prid) {
-  $options = pageroute_get_types('options');
+  $options = pagerouteGetTypes('options');
 
   $form['type'] = array(
     '#type' => 'radios',
@@ -423,9 +420,9 @@
 
 
 function pageroute_ui_page_delete_confirm(&$form_state, $prid, $page_name) {
-  $route = pageroute_route::load($prid);
+  $route = PagerouteRoute::load($prid);
   
-  $page = $route->pages[$route->page_index[$page_name]];
+  $page = $route->pages[$route->pageIndex[$page_name]];
   
   if (!$page) {
     drupal_not_found();
@@ -515,7 +512,7 @@
   $form = array();
 
   include_once(drupal_get_path('module', 'pageroute') .'/pageroute.route.inc');
-  $route = pageroute_route::load($prid);
+  $route = PagerouteRoute::load($prid);
   unset($route->prid);
 
   foreach ($route->pages as &$page) {
Index: pageroute.page_view.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/pageroute/pageroute.page_view.inc,v
retrieving revision 1.1.2.6
diff -u -r1.1.2.6 pageroute.page_view.inc
--- pageroute.page_view.inc	26 Mar 2009 13:53:36 -0000	1.1.2.6
+++ pageroute.page_view.inc	3 Aug 2009 10:18:13 -0000
@@ -9,11 +9,11 @@
 
 include_once(drupal_get_path('module', 'pageroute') .'/pageroute.page.inc');
 
-class pageroute_page_view extends pageroute_page {  
+class PageroutePageView extends PageroutePage {  
   /**
    * Returns the page display for the configured node
    */
-  public function set_form(&$form, &$form_state, &$args) {
+  public function setForm(&$form, &$form_state, &$args) {
     
     if ($this->options['nid'] == 0) {
       $this->options['nid'] = $args['nid'];
@@ -33,14 +33,14 @@
       }
       else if (db_result(db_query('SELECT nid FROM {node} WHERE nid = %d', $this->options['nid']))) {
         drupal_access_denied();
-        pageroute_exit_now();
+        pagerouteExitNow();
       }
     }
     drupal_not_found();
-    pageroute_exit_now();
+    pagerouteExitNow();
   }
   
-  public static function ui($page, &$form) {
+  public function ui($page, &$form) {
     $form['options']['nid'] = array(
       '#type' => 'textfield',
       '#title' => t('Node ID'),
@@ -59,11 +59,11 @@
     return array('name' => t('Node display'));
   }
   
-  public function get_cancel_target() {
+  public function getCancelTarget() {
     return PAGEROUTE_FORWARD;
   }
   
-  public function set_up() {
+  public function setUp() {
     include_once(drupal_get_path('module', 'node') .'/node.pages.inc');
   }
-}
+}
\ No newline at end of file
Index: pageroute.page_manage.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/pageroute/pageroute.page_manage.inc,v
retrieving revision 1.1.2.6
diff -u -r1.1.2.6 pageroute.page_manage.inc
--- pageroute.page_manage.inc	26 Mar 2009 13:53:36 -0000	1.1.2.6
+++ pageroute.page_manage.inc	3 Aug 2009 10:18:13 -0000
@@ -10,12 +10,12 @@
 include_once(drupal_get_path('module', 'pageroute') .'/pageroute.page_add.inc');
 include_once(drupal_get_path('module', 'pageroute') .'/pageroute.page_edit.inc');
 
-class pageroute_page_manage extends pageroute_page {  
+class PageroutePageManage extends PageroutePage {  
   /**
    * Shows a node management page for the given content type
    * It determines itself what has to be displayed (overview, add/edit/delete form).
    */
-  public function set_form(&$form, &$form_state, &$args) {
+  public function setForm(&$form, &$form_state, &$args) {
 
     if (!isset($args['todo']['action'])) {
         $args['todo']['action'] = 'default';
@@ -25,7 +25,7 @@
       case t('Add'):
         $args['hide_pageroute_buttons'] = TRUE;      
         $args['default_target'] = PAGEROUTE_CURRENT;        
-        pageroute_page_add::set_node_add_form($form, $form_state, $this);
+        PageroutePageAdd::setNodeAddForm($form, $form_state, $this);
         break;
 
       case t('Edit'):
@@ -34,7 +34,7 @@
         $args['nid'] = $args['todo']['target'];
         $node = isset($form_state['node']) ? $form_state['node'] : NULL;
 
-        pageroute_page_edit::set_node_edit_form($form, $form_state, $this, $args, $node);
+        PageroutePageEdit::setNodeEditForm($form, $form_state, $this, $args, $node);
         break;
 
       case t('Delete'):
@@ -42,7 +42,7 @@
         $args['default_target'] = PAGEROUTE_CURRENT;
         if (!is_numeric($args['todo']['target']) || !($node = node_load($args['todo']['target']))) {
           drupal_not_found();
-          pageroute_exit_now();
+          pagerouteExitNow();
         }
 
         $form += pageroute_node_delete_confirm($node, $form, $this, $args);
@@ -52,19 +52,19 @@
       default:
         $args['default_target'] = PAGEROUTE_CURRENT;
         $args['hide_pageroute_buttons'] = FALSE;
-        $form += array('pageroute-manage' => pageroute_page_manage::pageroute_page_manage_overview($form_state, $this, $this->options['content-type']));
+        $form += array('pageroute-manage' => PageroutePageManage::pageroutePageManageOverview($form_state, $this, $this->options['content-type']));
     }
   }
 
   /**
    * Shows the overview of node management page
    */
-  public static function pageroute_page_manage_overview($form_state, $page, $content_type) {    
+  public static function pageroutePageManageOverview($form_state, $page, $content_type) {    
     $result = db_query(db_rewrite_sql("
       SELECT n.nid FROM {node} n
       WHERE n.type = '%s' AND n.uid = %d AND n.status > 0
       ORDER BY n.created
-    "), $content_type, pageroute_page_get_uid($page));
+    "), $content_type, pageroutePageGetUid($page));
 
     $i = 1; $output = '';
     while ($row = db_fetch_object($result)) {
@@ -95,7 +95,7 @@
         $form['target']['#value'] = PAGEROUTE_FORWARD;
         //re-add the buttons with the new settings
         unset($form['buttons']);
-        pageroute_add_buttons($form, $page, 'page_op');
+        pagerouteAddButtons($form, $page, 'page_op');
         return pageroute_page_add($route, $page, $form);
       }
       $types = node_get_types('names');
@@ -116,7 +116,7 @@
     return $form;
   }
 
-  public static function ui($page, &$form) {
+  public function ui($page, &$form) {
     $form['options']['cancel']['#access'] = FALSE;
     $form['options']['content-type'] = array(
       '#type' => 'select',
@@ -236,11 +236,11 @@
     return array('name' => t('Node managment'));
   }
   
-  public function get_cancel_target() {
+  public function getCancelTarget() {
     return PAGEROUTE_CURRENT;
   }
   
-  public static function form_submitted(&$form_state) {
+  public function formSubmitted(&$form_state) {
 
     $todo = NULL;
     $args = &$form_state['storage']['route']->args;
@@ -268,7 +268,7 @@
     $args['todo'] = $todo;
   }
   
-  public function set_up() {
+  public function setUp() {
     include_once(drupal_get_path('module', 'node') .'/node.pages.inc');
   }  
 }
@@ -338,4 +338,4 @@
     '#children' => '<p>'. t('There is no @type.', array('@type' => $type_name)) .'</p>',
   );
   return $fieldset;
-}
+}
\ No newline at end of file
Index: pageroute.route.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/pageroute/pageroute.route.inc,v
retrieving revision 1.1.2.6
diff -u -r1.1.2.6 pageroute.route.inc
--- pageroute.route.inc	26 Mar 2009 13:53:36 -0000	1.1.2.6
+++ pageroute.route.inc	3 Aug 2009 10:18:13 -0000
@@ -6,16 +6,17 @@
  * Route
  */
  
-class pageroute_route {
+class PagerouteRoute {
 
-  var $prid;
-  var $options;
-  var $pages;
-  var $page_index;
-  var $page_access;
-  var $path;
+  public $prid;
+  public $options;
+  public $pages;
+  public $pageIndex;
+  public $pageAccess;
+  public $path;
+  public $pageDataCurrent;
 
-  public function pageroute_route($route_data) {  
+  public function PagerouteRoute($route_data) {  
     $this->prid = $route_data->prid;
     $this->path = $route_data->path;
     $this->options = $route_data->options;
@@ -25,10 +26,10 @@
       $page->route = &$this;
     }
     
-    $this->page_index = $route_data->page_index;
-    $this->page_access = $route_data->page_access;
+    $this->pageIndex = $route_data->pageIndex;
+    $this->pageAccess = $route_data->pageAccess;
 
-    $this->page_data_current = NULL;
+    $this->pageDataCurrent = NULL;
     $this->page_data_previous = NULL;
   }
 
@@ -48,7 +49,7 @@
       $route_data = $allroutes_data[$prid];
     }
     else {
-      $route_data = pageroute_route::load_from_database($prid);
+      $route_data = PagerouteRoute::loadFromDatabase($prid);
 
       if (!$route_data) {
         return FALSE;
@@ -60,7 +61,7 @@
       cache_set('pageroute', $allroutes);
     }      
     
-    $route = new pageroute_route($route_data);
+    $route = new PagerouteRoute($route_data);
     
     drupal_alter('pageroute', $route);
 
@@ -70,7 +71,7 @@
   /*
    * Load a route from the database
    */
-  private static function load_from_database($prid) {
+  private static function loadFromDatabase($prid) {
     
     $result = db_query("SELECT * FROM {pageroute_routes} WHERE prid = %d", $prid);
 
@@ -86,16 +87,16 @@
 
     $index = 0;
     $route_data->pages = array();
-    $route_data->page_index = array();
-    $route_data->page_access = array();
+    $route_data->pageIndex = array();
+    $route_data->pageAccess = array();
     
     while ($page = db_fetch_object($result)) {
       $page->options = unserialize($page->options);
     
       if (isset($page->options['activated']) && !$page->options['activated']) {
-        //add deactivated pages to the page_index, but don't give them an index
+        //add deactivated pages to the pageIndex, but don't give them an index
         //so this pages are reachable, but we won't route to them
-        $route_data->page_index[$page->name] = FALSE;
+        $route_data->pageIndex[$page->name] = FALSE;
         continue;
       }
  
@@ -103,7 +104,7 @@
       if ($route_data->options['tabs'] && isset($page->options['no_tab']) && $page->options['no_tab']) {
         $route_data->pages[$index]->no_tab = TRUE;
       }
-      $route_data->page_index[$page->name] = $index;
+      $route_data->pageIndex[$page->name] = $index;
       $index++;
     }
     
@@ -115,34 +116,34 @@
    * Default page if no page was specified or access denied to specified page
    * else specified page
    */
-  public function set_suggested_page($target = PAGEROUTE_CURRENT) {
-    $page = &$this->page_data_current;
+  public function setSuggestedPage($target = PAGEROUTE_CURRENT) {
+    $page = &$this->pageDataCurrent;
     
     if ($page) {  
-      $page_next = &$this->get_page($page->name, $target);    
+      $page_next = &$this->getPage($page->name, $target);    
 
       if ($page_next) {
-        if (empty($this->page_access) || $this->page_access[$page_next->name]) {
-          $this->page_data_previous = &$this->page_data_current;
-          $this->page_data_current = &$page_next;
+        if (empty($this->pageAccess) || $this->pageAccess[$page_next->name]) {
+          $this->page_data_previous = &$this->pageDataCurrent;
+          $this->pageDataCurrent = &$page_next;
         }
       }
     }
     else {
-      $this->page_data_previous = &$this->page_data_current;
-      $this->page_data_current = &$this->get_default_page();
+      $this->page_data_previous = &$this->pageDataCurrent;
+      $this->pageDataCurrent = &$this->getDefaultPage();
     }
     
-    return $this->page_data_current;
+    return $this->pageDataCurrent;
   }
 
   /*
    * Get default page:
    * First page that is accessable
    */
-  private function get_default_page() {
+  private function getDefaultPage() {
     foreach ($this->pages as $page) {
-      if (empty($this->page_access) || $this->page_access[$page->name]) {
+      if (empty($this->pageAccess) || $this->pageAccess[$page->name]) {
         return $page;
       }
     }
@@ -151,15 +152,15 @@
   /*
   * Checks if this is a valid page and if access to the page shall be granted
   */
-  public function check_page_access($page_name, $target = PAGEROUTE_CURRENT) {
+  public function checkPageAccess($page_name, $target = PAGEROUTE_CURRENT) {
     if ($target == PAGEROUTE_CURRENT) {
-      return !isset($this->page_access[$page_name]) || $this->page_access[$page_name];
+      return !isset($this->pageAccess[$page_name]) || $this->pageAccess[$page_name];
     }
     
     $access = FALSE;
     
     do {
-      $page = $this->get_page($page_name, $target);
+      $page = $this->getPage($page_name, $target);
          
       if (!$page) {
         break;
@@ -167,7 +168,7 @@
           
       $page_name = $page->name;
       
-      $access = !isset($this->page_access[$page_name]) || $this->page_access[$page_name];
+      $access = !isset($this->pageAccess[$page_name]) || $this->pageAccess[$page_name];
       
     } while ($access == FALSE);
     
@@ -181,34 +182,34 @@
   /*
    * Build and return the form for the current page
    */
-  public function set_form(&$form, &$page_data, &$page, &$form_state, &$args) {       
+  public function setForm(&$form, &$page_data, &$page, &$form_state, &$args) {       
     // Include needed type!
-    $page = pageroute_page::get_object($page_data);
+    $page = PageroutePage::getObject($page_data);
 
     if (!$page) {
       return FALSE;
     }  
 
-    $page->set_form($form, $form_state, $args);
-    $page->configure_form($form);
+    $page->setForm($form, $form_state, $args);
+    $page->configureForm($form);
   }
 
   public function start($page_name) {
     if ($page_name) {
-      $this->page_data_current = &$this->get_page($page_name);
+      $this->pageDataCurrent = &$this->getPage($page_name);
     }
     else {
-      $this->page_data_current = &$this->get_default_page();
+      $this->pageDataCurrent = &$this->getDefaultPage();
     }
   }
 
-  private function get_page($page_name, $target = PAGEROUTE_CURRENT) {
+  private function getPage($page_name, $target = PAGEROUTE_CURRENT) {
 
-    if (!isset($this->page_index[$page_name])) {
+    if (!isset($this->pageIndex[$page_name])) {
       return FALSE;
     }   
 
-    $index = $this->page_index[$page_name];
+    $index = $this->pageIndex[$page_name];
 
     switch ($target) {
       case PAGEROUTE_BACK:
@@ -220,4 +221,4 @@
         return $this->pages[$index];
     }
   }
-}
+}
\ No newline at end of file
Index: pageroute.page.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/pageroute/pageroute.page.inc,v
retrieving revision 1.1.2.6
diff -u -r1.1.2.6 pageroute.page.inc
--- pageroute.page.inc	26 Mar 2009 13:53:36 -0000	1.1.2.6
+++ pageroute.page.inc	3 Aug 2009 10:18:12 -0000
@@ -6,7 +6,7 @@
  * Page base type
  */
  
-abstract class pageroute_page {
+abstract class PageroutePage {
   var $title;
   var $options;
   var $route;
@@ -21,14 +21,14 @@
    * @return
    *    The form to display.
    */  
-  abstract public function set_form(&$form, &$form_state, &$args);
+  abstract public function setForm(&$form, &$form_state, &$args);
   
   /**
    *  Include stuff your page type needs.
    */  
-  abstract public function set_up();
+  abstract public function setUp();
   
-  public function pageroute_page($page) {
+  public function PageroutePage($page) {
     $this->load($page);
   }
 
@@ -53,7 +53,7 @@
    *    PAGEROUTE_FORWARD: go to next page
    *    PAGEROUTE_BACK: go to previous page
    */  
-  public function get_cancel_target() {
+  public function getCancelTarget() {
     return PAGEROUTE_CURRENT;
   }
   
@@ -62,18 +62,14 @@
    * @return
    *   New page object
    */
-  public static function get_object($page_data) {
+  public static function getObject($page_data) {
     $type = $page_data->type;
-    $bases = pageroute_get_types('base');   
-    
-    // Include needed type!
-    include_once(drupal_get_path('module', $page_data->module) .'/'. $page_data->module .'.page_'. $page_data->type .'.inc');
-  
-    $page_class = $page_data->module .'_page_'. $page_data->type;
+    $bases = pagerouteGetTypes('base');   
     
+  	pagerouteIncludePageType($module, $type);
+    $page_class = pagerouteGetPageClass($page_data->module, $page_data->type);
     $page = new $page_class($page_data);
-    
-    $page->set_up();
+    $page->setUp();
   
     return $page;
   }
@@ -84,7 +80,7 @@
    * @param $delete
    *    Wheter the "delete checkbox" should be added.
    */
-  public static function node_ui($page, &$form, $delete = TRUE) {
+  public function nodeUI($page, &$form, $delete = TRUE) {
     $form['options']['preview'] = array(
       '#type' => 'checkbox',
       '#title' => t('Display preview button'),
@@ -110,7 +106,7 @@
   /**
    * Configure the form
    */
-  public function configure_form(&$form) {
+  public function configureForm(&$form) {
     if (isset($this->options['preview']) && !$this->options['preview']) {
       unset($form['buttons']['preview']);
     }
@@ -132,7 +128,7 @@
    *    PAGEROUTE_BACK: go to previous page
    *  To customize get_form(...) set $args['todo'] ( = $form_state['storage']['args']['todo']).
    */  
-  public static function form_submitted(&$form_state) { }
+  public function formSubmitted(&$form_state) { }
   
   /**
    * Describes the page type.
@@ -148,6 +144,6 @@
    */  
   public abstract static function help();
 
-  public static function get_default_submit_handler($form) { }
-  public static function get_default_validate_handler($form) { }
-}
+  public static function getDefaultSubmitHandler($form) { }
+  public static function getDefaultValidateHandler($form) { }
+}
\ No newline at end of file
Index: pageroute.page_edit.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/pageroute/pageroute.page_edit.inc,v
retrieving revision 1.1.2.6
diff -u -r1.1.2.6 pageroute.page_edit.inc
--- pageroute.page_edit.inc	26 Mar 2009 13:53:36 -0000	1.1.2.6
+++ pageroute.page_edit.inc	3 Aug 2009 10:18:12 -0000
@@ -9,18 +9,17 @@
 include_once(drupal_get_path('module', 'pageroute') .'/pageroute.page.inc');
 include_once(drupal_get_path('module', 'pageroute') .'/pageroute.page_add.inc');
 
-class pageroute_page_edit extends pageroute_page {
-
-  function set_form(&$form, &$form_state, &$args) {
+class PageroutePageEdit extends PageroutePage {
 
+  function setForm(&$form, &$form_state, &$args) {
       $args['hide_pageroute_buttons'] = FALSE;
       $args['default_target'] = PAGEROUTE_CURRENT;
 
       $node = isset($form_state['node']) ? $form_state['node'] : NULL;
 
-      pageroute_page_edit::set_node_edit_form($form, $form_state, $this, $args, $node);
+      $this->setNodeEditForm($form, $form_state, $this, $args, $node);
   }
-      
+
   /*
    * Returns the node edit form for the configured node type or the give node id
    * 
@@ -28,21 +27,20 @@
    *   This allows reusing this function from other pages, e.g. the node management page. If nothing is
    *   given the function will use $nid page argument
    */
-  public static function set_node_edit_form(&$form, &$form_state, &$page, &$args, $node = NULL) {
-
+  public static function setNodeEditForm(&$form, &$form_state, &$page, &$args, $node = NULL) {
     if (!$node) {    
       ($args && isset($args['nid'])) ? $nid = $args['nid'] : $nid = $page->options['nid'];
-        
+
       if (empty($nid) && $page->options['content-type']) {
-        pageroute_page_add::set_node_add_form($form, $form_state, $page);
+        PageroutePageAdd::setNodeAddForm($form, $form_state, $page);
         return;
       }
       else if (!is_numeric($nid) || !($node = node_load($nid)) ) {        
         drupal_not_found();
-        pageroute_exit_now();
+        pagerouteExitNow();
       }
     }
-    
+
     $type = isset($page->options['content-type']) ? $page->options['content-type'] : $node->type;
 
     if (isset($args['todo']['action']) &&  $args['todo']['action'] == t('Delete')) {
@@ -57,12 +55,11 @@
     }
     else {
       drupal_access_denied();
-      pageroute_exit_now();
+      pagerouteExitNow();
     }
   }
 
-  public static function ui($page, &$form) {
-    
+  public function ui($page, &$form) {
     $form['options']['content-type'] = array(
       '#type' => 'select',
       '#title' => t('Content type for new nodes'),
@@ -70,24 +67,24 @@
       '#default_value' => $page->options['content-type'],
       '#weight' => 2,
       '#description' => t('If there is no node id in the URL, a node add form 
-for this content-type will be displayed. Leave it empty to show the Page Not Found error instead.'),
+			for this content-type will be displayed. Leave it empty to show the Page Not Found error instead.'),
     );
 
-    pageroute_page::node_ui($page, $form, TRUE);
+    parent::nodeUI($page, $form, TRUE);
   }
 
   public static function help() {
     return t('A page of this type will present a common node editing form of a configurable content-type. It will edit the node with the id taken from the first argument of the pageroute. Furthermore this type can be configured to show a node adding form of a specific content-type if the node id argument is missing. So you can build a pageroute that manages the creation and editing of nodes of the same type.');
   }
-  
+
   public static function info() {
     return array('name' => t('Node editing form'));
   }
-  
-  public static function form_submitted(&$form_state) {
+
+  public function formSubmitted(&$form_state) {
     $todo = NULL;
     $args = &$form_state['storage']['route']->args;
-  
+
     switch ($form_state['clicked_button']['#value']) {
       case t('Delete'):
         if (is_numeric($form_state['clicked_button']['#name'])) {
@@ -103,19 +100,19 @@
         $args['default_target'] = PAGEROUTE_FORWARD;
         break;
     }
-     
+
     $args['todo'] = $todo;
   }
-  
-  public function get_cancel_target() {
+
+  public function getCancelTarget() {
     return PAGEROUTE_FORWARD;
   }
-  
-  public function set_up() {
+
+  public function setUp() {
     include_once(drupal_get_path('module', 'node') .'/node.pages.inc');
   }
 
-  public static function get_default_submit_handler($form) {
+  public static function getDefaultSubmitHandler($form) {
     return $form['buttons']['submit']['#submit'];
   }
 }
@@ -123,7 +120,7 @@
 /*
  * Provide an extra delete page to keep control about the destination parameter.
  */
-function pageroute_node_delete_confirm($node, $form, &$page, &$args) {
+function pagerouteNodeDeleteConfirm($node, $form, &$page, &$args) {
   if (node_access('delete', $node)) {
 
     $form = array();
@@ -131,19 +128,19 @@
 
     $form = confirm_form($form,
       t('Are you sure you want to delete %title?', array('%title' => $node->title)),
-      pageroute_get_page_path($page, $args),
+      pagerouteGetPagePath($page, $args),
       t('This action cannot be undone.'), t('Delete'), t('Cancel')
     );
-        
-    $form['actions']['submit']['#submit'][] = 'pageroute_node_delete_confirm_submit';
+
+    $form['actions']['submit']['#submit'][] = 'pagerouteNodeDeleteConfirmSubmit';
 
     return $form;
   }
   drupal_access_denied();
-  pageroute_exit_now();
+  pagerouteExitNow();
 }
 
-function pageroute_node_delete_confirm_submit($form, &$form_state) {
+function pagerouteNodeDeleteConfirmSubmit($form, &$form_state) {
   $form_state['target'] = PAGEROUTE_CURRENT;
 
   if ($form_state['values']['confirm']) {
Index: pageroute.page_add.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/pageroute/pageroute.page_add.inc,v
retrieving revision 1.1.2.6
diff -u -r1.1.2.6 pageroute.page_add.inc
--- pageroute.page_add.inc	26 Mar 2009 13:53:36 -0000	1.1.2.6
+++ pageroute.page_add.inc	3 Aug 2009 10:18:12 -0000
@@ -8,24 +8,24 @@
 
 include_once(drupal_get_path('module', 'pageroute') .'/pageroute.page.inc');
 
-class pageroute_page_add extends pageroute_page {  
+class PageroutePageAdd extends PageroutePage {  
   /*
    * Returns the node adding form for the configured node type
    */
-  function set_form(&$form, &$form_state, &$args) {
+  function setForm(&$form, &$form_state, &$args) {
   
     $args['hide_pageroute_buttons'] = FALSE;
     $args['default_target'] = PAGEROUTE_FORWARD;
     
-    pageroute_page_add::set_node_add_form($form, $form_state, $this);
+    PageroutePageAdd::setNodeAddForm($form, $form_state, $this);
   }
   
-  public static function set_node_add_form(&$form, &$form_state, &$page) {
+  public static function setNodeAddForm(&$form, &$form_state, &$page) {
     $type = $page->options['content-type'];
 
     // If a node type has been specified, validate its existence.
     if (node_access('create', $type)) {
-      $account = user_load(array('uid' => pageroute_page_get_uid($this, 'administer nodes')));
+      $account = user_load(array('uid' => pageroutePageGetUid($this, 'administer nodes')));
 
       // Initialize settings:
       $node = array('uid' => $account->uid, 'name' => $account->name, 'type' => $type);
@@ -35,11 +35,11 @@
     }
     else {
       drupal_access_denied();
-      pageroute_exit_now();
+      pagerouteExitNow();
     }
   }
 
-  public static function ui($page, &$form) {
+  public function ui($page, &$form) {
     $form['options']['content-type'] = array(
       '#type' => 'select',
       '#title' => t('Content type'),
@@ -52,7 +52,7 @@
       //we default to show the cancel button on add node forms
       $form['options']['cancel']['#default_value'] = t('Cancel');
     }
-    pageroute_page::node_ui($page, $form, FALSE);
+    parent::nodeUI($page, $form, FALSE);
   }
 
   public static function help() {
@@ -63,12 +63,11 @@
     return array('name' => t('Node adding form'));
   }
   
-  public function get_cancel_target() {
+  public function getCancelTarget() {
     return PAGEROUTE_FORWARD;
   }
   
-  public static function form_submitted(&$form_state) {
-  
+  public function formSubmitted(&$form_state) {
     switch ($form_state['clicked_button']['#value']) {
       case t('Preview'):
         $form_state['storage']['args']['default_target'] = PAGEROUTE_CURRENT;
@@ -76,11 +75,11 @@
     }
   }
   
-  public function set_up() {
+  public function setUp() {
     include_once(drupal_get_path('module', 'node') .'/node.pages.inc');
   }
 
-  public static function get_default_submit_handler($form) {
+  public static function getDefaultSubmitHandler($form) {
     return $form['buttons']['submit']['#submit'];
   }
 }
Index: pageroute.page_useredit.inc
===================================================================
RCS file: pageroute.page_useredit.inc
diff -N pageroute.page_useredit.inc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ pageroute.page_useredit.inc	1 Jan 1970 00:00:00 -0000
@@ -0,0 +1,125 @@
+<?php
+// $Id: pageroute.page_user_edit.inc,v 1.1.2.6 2009/03/26 13:53:36 tauran Exp $
+
+/**
+ * @file
+ * Page user edit type
+ */
+
+include_once(drupal_get_path('module', 'pageroute') .'/pageroute.page.inc');
+
+class PageroutePageUserEdit extends PageroutePage {  
+
+  public function setForm(&$form, &$form_state, &$args) {
+   
+    if ($args && isset($args['uid'])) {
+      $account = user_load(array('uid' => $args['uid']));
+    }
+    else {    
+      $account = user_load(array('uid' => pageroutePageGetUid($this, 'administer users')));
+    }
+    
+    if (!$account->uid) {
+      drupal_not_found();
+      pagerouteExitNow();
+    }
+
+    if (isset($args['todo']['action']) && $args['todo']['action'] == t('Delete')) {
+      $args['hide_pageroute_buttons'] = TRUE;
+      $form += pageroute_node_delete_confirm($account, $form, $page, $args);
+      return;
+    }
+    
+    $args['hide_pageroute_buttons'] = FALSE;
+    $args['default_target'] = PAGEROUTE_FORWARD;
+
+    $this->options += array('category' =>'account');
+
+    $form += drupal_retrieve_form('user_profile_form', $form_state, $account, $this->options['category']);
+    drupal_prepare_form('user_edit_form', $form, $form_state);
+  }
+
+  public function ui($page, &$form) {
+    $categories = array();
+    foreach (_user_categories(false) as $category) {
+      $categories[$category['name']] = $category['title'];
+    }
+    $form['options']['category'] = array(
+      '#type' => 'select',
+      '#title' => t('Category'),
+      '#description' => t('The form of the chosen category will be used for this page.'),
+      '#required' => TRUE,
+      '#default_value' => isset($page->options['category']) ? $page->options['category'] : '',
+      '#weight' => 2,
+      '#options' => $categories,
+    );
+  }
+
+  public static function help() {
+    return t('A page of this type will present users\' account editing page inside a pageroute. By giving a user id as second pageroute argument it\'s also possible for administrators to edit another users\' account. By choosing another category it could also be used to integrate a drupal user profile into a pageroute.<br />!warn This page type is still experimental. If you consider using it, make sure you \'ve read !link before!', 
+      array('!warn' => '<strong>'. t('Warning!') .'</strong>', '!link' => l(t('this issue'), 'http://drupal.org/node/128045')));   
+  }
+  
+  public static function info() {
+    return array('name' => t('User editing form'));
+  }
+  
+  public function formSubmitted(&$form_state) {
+    $todo = NULL;
+    $args = &$form_state['storage']['route']->args;
+  
+    if ($form_state['clicked_button']['#value'] == t('Delete')) {
+        if (is_numeric($form_state['clicked_button']['#name'])) {
+          $target = $form_state['clicked_button']['#name'];
+        }
+        else {
+          $target = $args['todo']['target'];
+        }
+
+        $todo = array('action' => $form_state['clicked_button']['#value'], 'target' => $target);
+    }
+    
+    return $todo;
+  }
+  
+  public function setUp() {
+    include_once(drupal_get_path('module', 'user') .'/user.pages.inc');
+  }
+}
+
+/*
+ * Provide an extra delete page to keep control about the destination parameter.
+ */
+function pagerouteUserDeleteConfirm($user, $form, &$page, $args = NULL) {
+  if (user_access('delete', $user)) {
+
+    $form = array();
+    $form['uid'] = array('#type' => 'value', '#value' => $user->uid);
+
+    $form = confirm_form($form,
+      t('Are you sure you want to delete %name?', array('%name' => $user->name)),
+      pagerouteGetPagePath($page, $args),
+      t('This action cannot be undone.'), t('Delete'), t('Cancel')
+    );
+    
+    $form['actions']['submit']['#submit'][] = 'pagerouteUserDeleteConfirm_submit';
+
+    return $form;
+  }
+  drupal_access_denied();
+  pagerouteExitNow();
+}
+
+function pagerouteUserDeleteConfirmSubmit($form, &$form_state) {
+  $form_state['target'] = PAGEROUTE_CURRENT;
+
+  if ($form_state['values']['confirm']) {
+    user_delete($form_state['values']['uid']);
+  }
+  
+  $form_state['rebuild'] = TRUE;
+  unset($form_state['values']['target']);
+  unset($form_state['button_clicked']);
+  unset($form_state['args']['todo']);
+  unset($form_state['todo']);
+}
