mirror of
https://github.com/owncloudarchive/contacts.git
synced 2024-12-01 13:24:10 +01:00
74 lines
1.9 KiB
PHP
74 lines
1.9 KiB
PHP
<?php
|
|
/**
|
|
* @author Nicolas Mora
|
|
* @copyright 2014 Nicolas Mora (mail@babelouest.org)
|
|
* This file is licensed under the Affero General Public License version 3 or
|
|
* later.
|
|
* See the COPYING-README file.
|
|
*/
|
|
|
|
namespace OCA\Contacts\Controller;
|
|
|
|
use OCA\Contacts\App,
|
|
OCA\Contacts\JSONResponse,
|
|
OCA\Contacts\Utils\JSONSerializer,
|
|
OCA\Contacts\Controller,
|
|
OCP\AppFramework\Http;
|
|
|
|
/**
|
|
* Controller class For Address Books
|
|
*/
|
|
class BackendController extends Controller {
|
|
|
|
/**
|
|
* @NoAdminRequired
|
|
* @NoCSRFRequired
|
|
*/
|
|
public function getConnectors() {
|
|
$response = new JSONResponse();
|
|
$prefix = "backend_ldap_";
|
|
$suffix = "_connector.xml";
|
|
$path = __DIR__ . "/../../formats/";
|
|
$files = scandir($path);
|
|
$formats = array();
|
|
foreach ($files as $file) {
|
|
if (!strncmp($file, $prefix, strlen($prefix)) && substr($file, - strlen($suffix)) === $suffix) {
|
|
if (file_exists($path.$file)) {
|
|
$format = simplexml_load_file ( $path.$file );
|
|
if ($format) {
|
|
if (isset($format['name'])) {
|
|
$formatId = substr($file, strlen($prefix), - strlen($suffix));
|
|
$formats[] = array('id' => $formatId, 'name' => (string)$format['name'], 'xml' => $format->asXML());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return $response->setData($formats);
|
|
}
|
|
|
|
/**
|
|
* @NoAdminRequired
|
|
* @NoCSRFRequired
|
|
*/
|
|
public function enableBackend() {
|
|
$response = new JSONResponse();
|
|
$params = $this->request->urlParams;
|
|
$backend = $params['backend'];
|
|
$enable = $params['enable'];
|
|
return $response->setData(\OCP\Config::setAppValue('contacts', 'backend_'.$backend, $enable));
|
|
}
|
|
/**
|
|
* @NoAdminRequired
|
|
* @NoCSRFRequired
|
|
*/
|
|
public function backendStatus() {
|
|
$response = new JSONResponse();
|
|
$params = $this->request->urlParams;
|
|
$backend = $params['backend'];
|
|
$enabled = \OCP\Config::getAppValue('contacts', 'backend_'.$backend, "false");
|
|
return $response->setData($enabled);
|
|
}
|
|
}
|
|
|