New admin pages

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
pull/8/head
Lukas Reschke 7 years ago
parent ce34dd67ca
commit f304fd4629
No known key found for this signature in database
GPG Key ID: B9F6980CF6E759B1

@ -1,10 +0,0 @@
<?php
namespace OCA\Richdocuments;
use \OCA\Richdocuments\AppInfo\Application;
$app = new Application();
$response = $app->getContainer()->query('\OCA\Richdocuments\Controller\SettingsController')->adminIndex();
return $response->render();

@ -22,8 +22,6 @@
namespace OCA\Richdocuments\AppInfo;
\OCP\App::registerAdmin('richdocuments', 'admin');
//Script for registering file actions
$eventDispatcher = \OC::$server->getEventDispatcher();
$eventDispatcher->addListener(

@ -5,7 +5,7 @@
<description>Collabora Online allows you to to work with all kinds of office documents directly in your browser. This application requires Collabora Cloudsuite to be installed on one of your servers, please read the documentation to learn more about that.</description>
<summary>Edit office documents directly in your browser.</summary>
<licence>AGPL</licence>
<version>1.1.16</version>
<version>1.1.17</version>
<author>Collabora Productivity based on work of Frank Karlitschek, Victor Dubiniuk</author>
<bugs>https://github.com/nextcloud/richdocuments/issues</bugs>
<repository type="git">https://github.com/nextcloud/richdocuments.git</repository>
@ -25,4 +25,8 @@
<screenshot>https://nextcloud.com/wp-content/themes/next/assets/img/features/collabora-app.png</screenshot>
<screenshot>https://nextcloud.com/wp-content/themes/next/assets/img/features/collabora-presentation.png</screenshot>
<screenshot>https://nextcloud.com/wp-content/themes/next/assets/img/features/collabora-spreadsheet.png</screenshot>
<settings>
<admin>\OCA\Richdocuments\Settings\Admin</admin>
<admin-section>OCA\Richdocuments\Settings\Section</admin-section>
</settings>
</info>

@ -55,35 +55,6 @@ class SettingsController extends Controller{
);
}
/**
* @NoCSRFRequired
*/
public function settingsIndex(){
return new TemplateResponse(
$this->appName,
'settings',
'blank'
);
}
/**
* @NoCSRFRequired
*/
public function adminIndex(){
return new TemplateResponse(
$this->appName,
'admin',
[
'wopi_url' => $this->appConfig->getAppValue('wopi_url'),
'edit_groups' => $this->appConfig->getAppValue('edit_groups'),
'doc_format' => $this->appConfig->getAppValue('doc_format'),
'test_wopi_url' => $this->appConfig->getAppValue('test_wopi_url'),
'test_server_groups' => $this->appConfig->getAppValue('test_server_groups')
],
'blank'
);
}
public function setSettings($wopi_url, $edit_groups, $doc_format, $test_wopi_url, $test_server_groups){
$message = $this->l10n->t('Saved');

@ -0,0 +1,74 @@
<?php
/**
* @copyright Copyright (c) 2016 Lukas Reschke <lukas@statuscode.ch>
*
* @author Lukas Reschke <lukas@statuscode.ch>
*
* @license GNU AGPL version 3 or any later version
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program 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 program. If not, see <http://www.gnu.org/licenses/>.
*
*/
namespace OCA\Richdocuments\Settings;
use OCP\AppFramework\Http\TemplateResponse;
use OCP\Defaults;
use OCP\IConfig;
use OCP\IL10N;
use OCP\Settings\ISettings;
class Admin implements ISettings {
/** @var IConfig */
private $config;
/**
* @param IConfig $config
*/
public function __construct(IConfig $config) {
$this->config = $config;
}
/**
* @return TemplateResponse
*/
public function getForm() {
return new TemplateResponse(
'richdocuments',
'admin',
[
'wopi_url' => $this->config->getAppValue('richdocuments', 'wopi_url'),
'edit_groups' => $this->config->getAppValue('richdocuments', 'edit_groups'),
'doc_format' => $this->config->getAppValue('richdocuments', 'doc_format'),
'test_wopi_url' => $this->config->getAppValue('richdocuments', 'test_wopi_url'),
'test_server_groups' => $this->config->getAppValue('richdocuments', 'test_server_groups')
],
'blank'
);
}
/**
* @return string the section ID, e.g. 'sharing'
*/
public function getSection() {
return 'richdocuments';
}
/**
* @return int whether the form should be rather on the top or bottom of
* the admin section. The forms are arranged in ascending order of the
* priority values. It is required to return a value between 0 and 100.
*
* keep the server setting at the top, right after "server settings"
*/
public function getPriority() {
return 0;
}
}

@ -0,0 +1,56 @@
<?php
/**
* @copyright Copyright (c) 2016 Lukas Reschke <lukas@statuscode.ch>
*
* @author Lukas Reschke <lukas@statuscode.ch>
*
* @license GNU AGPL version 3 or any later version
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program 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 program. If not, see <http://www.gnu.org/licenses/>.
*
*/
namespace OCA\Richdocuments\Settings;
use OCP\IL10N;
use OCP\Settings\ISection;
class Section implements ISection {
/** @var IL10N */
private $l;
/**
* @param IL10N $l
*/
public function __construct(IL10N $l) {
$this->l = $l;
}
/**
* {@inheritdoc}
*/
public function getID() {
return 'richdocuments';
}
/**
* {@inheritdoc}
*/
public function getName() {
return $this->l->t('Collabora Online');
}
/**
* {@inheritdoc}
*/
public function getPriority() {
return 75;
}
}
Loading…
Cancel
Save