summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2007-09-04 14:37:48 +0000
committerDries Buytaert <dries@buytaert.net>2007-09-04 14:37:48 +0000
commit957997516d2b7c0391fe71a84d8e9aa4bb984495 (patch)
treea50a6e9de1eba31692bb681eaed26eed38d490ce
parent7a0d380f84402c7b62ab67e6627e3cb994be4265 (diff)
downloadbrdo-957997516d2b7c0391fe71a84d8e9aa4bb984495.tar.gz
brdo-957997516d2b7c0391fe71a84d8e9aa4bb984495.tar.bz2
- Patch #172765 by webchick and chx: path 'user' returns 403
-rw-r--r--modules/user/user.module22
1 files changed, 19 insertions, 3 deletions
diff --git a/modules/user/user.module b/modules/user/user.module
index 5c598bcf5..22c872af7 100644
--- a/modules/user/user.module
+++ b/modules/user/user.module
@@ -890,9 +890,8 @@ function user_menu() {
// Registration and login pages.
$items['user'] = array(
'title' => 'Log in',
- 'page callback' => 'drupal_get_form',
- 'page arguments' => array('user_login'),
- 'access callback' => 'user_is_anonymous',
+ 'page callback' => 'user_page',
+ 'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
@@ -1130,6 +1129,23 @@ function user_set_authmaps($account, $authmaps) {
}
}
+/**
+ * Access callback for path /user.
+ *
+ * Displays user profile if user is logged in, or login form for anonymous
+ * users.
+ */
+function user_page() {
+ global $user;
+ if ($user->uid) {
+ $_GET['q'] = 'user/'. $user->uid;
+ return menu_execute_active_handler();
+ }
+ else {
+ return drupal_get_form('user_login');
+ }
+}
+
function user_login(&$form_state, $msg = '') {
global $user;