summaryrefslogtreecommitdiffstats
path: root/apps/user_ldap/ajax
diff options
context:
space:
mode:
authorArthur Schiwon <blizzz@owncloud.com>2012-07-26 18:10:53 +0200
committerArthur Schiwon <blizzz@owncloud.com>2012-07-26 18:11:12 +0200
commit6fbed6a5881c83f14777a4881996ac6d760bb251 (patch)
tree4965fb120345a78428039a0186f550465fde949f /apps/user_ldap/ajax
parentd26f87e738314db7820f39f74f42865ff20f7bd7 (diff)
downloadnextcloud-server-6fbed6a5881c83f14777a4881996ac6d760bb251.tar.gz
nextcloud-server-6fbed6a5881c83f14777a4881996ac6d760bb251.zip
LDAP: add Test Configuration functionality in the settings
Diffstat (limited to 'apps/user_ldap/ajax')
-rw-r--r--apps/user_ldap/ajax/testConfiguration.php39
1 files changed, 39 insertions, 0 deletions
diff --git a/apps/user_ldap/ajax/testConfiguration.php b/apps/user_ldap/ajax/testConfiguration.php
new file mode 100644
index 00000000000..a82f7e4c17b
--- /dev/null
+++ b/apps/user_ldap/ajax/testConfiguration.php
@@ -0,0 +1,39 @@
+<?php
+
+/**
+ * ownCloud - user_ldap
+ *
+ * @author Arthur Schiwon
+ * @copyright 2012 Arthur Schiwon blizzz@owncloud.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/>.
+ *
+ */
+
+// Check user and app status
+OCP\JSON::checkAdminUser();
+OCP\JSON::checkAppEnabled('user_ldap');
+OCP\JSON::callCheck();
+
+$connection = new \OCA\user_ldap\lib\Connection(null);
+if($connection->setConfiguration($_POST)) {
+ //Configuration is okay
+ if($connection->bind()) {
+ OCP\JSON::success(array('message' => 'The configuration is valid and the connection could be established!'));
+ } else {
+ OCP\JSON::error(array('message' => 'The configuration is valid, but the Bind failed. Please check the server settings and credentials.'));
+ }
+} else {
+ OCP\JSON::error(array('message' => 'The configuration is invalid. Please look in the ownCloud log for further details.'));
+}