summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2002-11-09 21:46:54 +0000
committerDries Buytaert <dries@buytaert.net>2002-11-09 21:46:54 +0000
commit51f4b91e5123e3e50e139821a0ce1e0f0ea5b31d (patch)
treec0d5ac83c5ee3b7a4868dc3965731c4a3bd06cf2
parent6ba38a7eebf0182072a2c1b9c40dedcaf1405db6 (diff)
downloadbrdo-51f4b91e5123e3e50e139821a0ce1e0f0ea5b31d.tar.gz
brdo-51f4b91e5123e3e50e139821a0ce1e0f0ea5b31d.tar.bz2
* User patch by Natrak:
- Moved the Drupal login XML-RPC API to drupal.module. - DA logins are now assigned the proper role.
-rw-r--r--modules/drupal.module17
-rw-r--r--modules/drupal/drupal.module17
-rw-r--r--modules/user.module22
-rw-r--r--modules/user/user.module22
4 files changed, 34 insertions, 44 deletions
diff --git a/modules/drupal.module b/modules/drupal.module
index c945a06ab..01d47a1cc 100644
--- a/modules/drupal.module
+++ b/modules/drupal.module
@@ -95,7 +95,7 @@ function drupal_directory_page() {
}
function drupal_xmlrpc() {
- return array("drupal.site.ping" => array("function" => "drupal_directory_ping"));
+ return array("drupal.site.ping" => array("function" => "drupal_directory_ping"), "drupal.login" => array("function" => "drupal_login"));
}
function drupal_notify($server) {
@@ -149,6 +149,21 @@ function drupal_page() {
$theme->footer();
}
+function drupal_login($arguments) {
+ // an XML-RPC method called by external clients (usually other Drupal instances)
+ $argument = $arguments->getparam(0);
+ $username = $argument->scalarval();
+ $argument = $arguments->getparam(1);
+ $password = $argument->scalarval();
+
+ if ($user = user_load(array(name => "$username", "pass" => $password, "status" => 1))) {
+ return new xmlrpcresp(new xmlrpcval($user->uid, "int"));
+ }
+ else {
+ return new xmlrpcresp(new xmlrpcval(0, "int"));
+ }
+}
+
function drupal_auth_help() {
$site = variable_get("site_name", "this web site");
diff --git a/modules/drupal/drupal.module b/modules/drupal/drupal.module
index c945a06ab..01d47a1cc 100644
--- a/modules/drupal/drupal.module
+++ b/modules/drupal/drupal.module
@@ -95,7 +95,7 @@ function drupal_directory_page() {
}
function drupal_xmlrpc() {
- return array("drupal.site.ping" => array("function" => "drupal_directory_ping"));
+ return array("drupal.site.ping" => array("function" => "drupal_directory_ping"), "drupal.login" => array("function" => "drupal_login"));
}
function drupal_notify($server) {
@@ -149,6 +149,21 @@ function drupal_page() {
$theme->footer();
}
+function drupal_login($arguments) {
+ // an XML-RPC method called by external clients (usually other Drupal instances)
+ $argument = $arguments->getparam(0);
+ $username = $argument->scalarval();
+ $argument = $arguments->getparam(1);
+ $password = $argument->scalarval();
+
+ if ($user = user_load(array(name => "$username", "pass" => $password, "status" => 1))) {
+ return new xmlrpcresp(new xmlrpcval($user->uid, "int"));
+ }
+ else {
+ return new xmlrpcresp(new xmlrpcval(0, "int"));
+ }
+}
+
function drupal_auth_help() {
$site = variable_get("site_name", "this web site");
diff --git a/modules/user.module b/modules/user.module
index d51974d34..a3df52c55 100644
--- a/modules/user.module
+++ b/modules/user.module
@@ -399,26 +399,6 @@ function user_link($type) {
return $links ? $links : array();
}
-function drupal_login($arguments) {
- // an XML-RPC method called by external clients (usually other Drupal instances)
- $argument = $arguments->getparam(0);
- $username = $argument->scalarval();
- $argument = $arguments->getparam(1);
- $password = $argument->scalarval();
-
- if ($user = user_load(array(name => "$username", "pass" => $password, "status" => 1))) {
- return new xmlrpcresp(new xmlrpcval($user->uid, "int"));
- }
- else {
- return new xmlrpcresp(new xmlrpcval(0, "int"));
- }
-}
-
-
-function user_xmlrpc() {
- return array("drupal.login" => array("function" => "drupal_login"));
-}
-
/*** Authentication methods ************************************************/
function user_get_authname($account, $module) {
@@ -542,7 +522,7 @@ function user_login($edit = array(), $msg = "") {
if (module_invoke($module, "auth", $name, $pass, $server)) {
if (variable_get("user_register", 1) == 1 && !user_load(array("name" => "$name@$server"))) { //register this new user
watchdog("user", "new user: $name@$server ($module ID)");
- $user = user_save("", array("name" => "$name@$server", "pass" => user_password(), "init" => "$name@$server", "status" => 1, "authname_$module" => "$name@$server"));
+ $user = user_save("", array("name" => "$name@$server", "pass" => user_password(), "init" => "$name@$server", "status" => 1, "authname_$module" => "$name@$server", "rid" => _user_authenticated_id()));
break;
}
}
diff --git a/modules/user/user.module b/modules/user/user.module
index d51974d34..a3df52c55 100644
--- a/modules/user/user.module
+++ b/modules/user/user.module
@@ -399,26 +399,6 @@ function user_link($type) {
return $links ? $links : array();
}
-function drupal_login($arguments) {
- // an XML-RPC method called by external clients (usually other Drupal instances)
- $argument = $arguments->getparam(0);
- $username = $argument->scalarval();
- $argument = $arguments->getparam(1);
- $password = $argument->scalarval();
-
- if ($user = user_load(array(name => "$username", "pass" => $password, "status" => 1))) {
- return new xmlrpcresp(new xmlrpcval($user->uid, "int"));
- }
- else {
- return new xmlrpcresp(new xmlrpcval(0, "int"));
- }
-}
-
-
-function user_xmlrpc() {
- return array("drupal.login" => array("function" => "drupal_login"));
-}
-
/*** Authentication methods ************************************************/
function user_get_authname($account, $module) {
@@ -542,7 +522,7 @@ function user_login($edit = array(), $msg = "") {
if (module_invoke($module, "auth", $name, $pass, $server)) {
if (variable_get("user_register", 1) == 1 && !user_load(array("name" => "$name@$server"))) { //register this new user
watchdog("user", "new user: $name@$server ($module ID)");
- $user = user_save("", array("name" => "$name@$server", "pass" => user_password(), "init" => "$name@$server", "status" => 1, "authname_$module" => "$name@$server"));
+ $user = user_save("", array("name" => "$name@$server", "pass" => user_password(), "init" => "$name@$server", "status" => 1, "authname_$module" => "$name@$server", "rid" => _user_authenticated_id()));
break;
}
}