summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorHans Bakker <hansmbakker@gmail.com>2011-08-13 21:07:51 +0200
committerHans Bakker <hansmbakker@gmail.com>2011-08-13 21:07:51 +0200
commitbd12bdfe5637a6ee7d97a1174b15778a9f495933 (patch)
treea96e753988473f1c91599ae0cb116e18b1c5c0aa /core
parent6eabee3dfde3a599935b16aef1b108fabae0cdb5 (diff)
downloadnextcloud-server-bd12bdfe5637a6ee7d97a1174b15778a9f495933.tar.gz
nextcloud-server-bd12bdfe5637a6ee7d97a1174b15778a9f495933.zip
Add validateuser.php ajax file returning json data saying whether a user exists and the credentials are correct
Diffstat (limited to 'core')
-rw-r--r--core/ajax/validateuser.php57
1 files changed, 57 insertions, 0 deletions
diff --git a/core/ajax/validateuser.php b/core/ajax/validateuser.php
new file mode 100644
index 00000000000..967a5184a2c
--- /dev/null
+++ b/core/ajax/validateuser.php
@@ -0,0 +1,57 @@
+<?php
+
+/**
+* ownCloud
+*
+* @author Hans Bakker
+* @copyright 2011 Hans Bakker hansmbakker+kde@gmail.com
+*
+* This library is free software; you can redistribute it and/or
+* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
+* License as published by the Free Software Foundation; either
+* version 3 of the License, or any later version.
+*
+* This library is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+*
+* You should have received a copy of the GNU Affero General Public
+* License along with this library. If not, see <http://www.gnu.org/licenses/>.
+*
+*/
+
+header("Content-Type: application/jsonrequest");
+
+$RUNTIME_NOAPPS = TRUE; //no apps, yet
+
+require_once('../../lib/base.php');
+
+$not_installed = !OC_Config::getValue('installed', false);
+
+// First step : check if the server is correctly configured for ownCloud :
+$errors = OC_Util::checkServer();
+if(count($errors) > 0) {
+ echo json_encode(array("user_valid" => "false", "comment" => $errors));
+}
+
+// Setup required :
+elseif($not_installed) {
+ echo json_encode(array("user_valid" => "false", "comment" => "not_installed"));
+
+}
+
+// Someone wants to check a user:
+elseif(isset($_GET["user"]) and isset($_GET["password"])) {
+ if(OC_User::checkPassword($_GET["user"], $_GET["password"]))
+ echo json_encode(array("user_valid" => "true", "comment" => ""));
+ else
+ echo json_encode(array("user_valid" => "false", "comment" => ""));
+}
+
+// For all others cases:
+else {
+ echo json_encode(array("user_valid" => "false", "comment" => "unknown"));
+}
+
+?>