parent
bd5189f29f
commit
a307bb285e
@ -1,58 +0,0 @@ |
||||
<?php |
||||
/** |
||||
* @copyright Copyright (c) 2016, ownCloud, Inc. |
||||
* |
||||
* @author Bart Visscher <bartv@thisnet.nl> |
||||
* @author Christopher Schäpers <kondou@ts.unde.re> |
||||
* @author Frank Karlitschek <frank@karlitschek.de> |
||||
* @author Jakob Sack <mail@jakobsack.de> |
||||
* @author Jan-Christoph Borchardt <hey@jancborchardt.net> |
||||
* @author Lukas Reschke <lukas@statuscode.ch> |
||||
* @author Morris Jobke <hey@morrisjobke.de> |
||||
* @author Robin Appelman <robin@icewind.nl> |
||||
* @author Roeland Jago Douma <roeland@famdouma.nl> |
||||
* |
||||
* @license AGPL-3.0 |
||||
* |
||||
* This code is free software: you can redistribute it and/or modify |
||||
* it under the terms of the GNU Affero General Public License, version 3, |
||||
* as published by the Free Software Foundation. |
||||
* |
||||
* 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, version 3, |
||||
* along with this program. If not, see <http://www.gnu.org/licenses/> |
||||
* |
||||
*/ |
||||
|
||||
OC_Util::checkLoggedIn(); |
||||
|
||||
// Load the files we need |
||||
OC_Util::addStyle( "settings", "settings" ); |
||||
\OC::$server->getNavigationManager()->setActiveEntry('help'); |
||||
|
||||
|
||||
if(isset($_GET['mode']) and $_GET['mode'] === 'admin') { |
||||
$url=\OCP\Util::linkToAbsolute( 'core', 'doc/admin/index.html' ); |
||||
$style1=''; |
||||
$style2=' active'; |
||||
}else{ |
||||
$url=\OCP\Util::linkToAbsolute( 'core', 'doc/user/index.html' ); |
||||
$style1=' active'; |
||||
$style2=''; |
||||
} |
||||
|
||||
$url1=\OC::$server->getURLGenerator()->linkToRoute('settings_help').'?mode=user'; |
||||
$url2=\OC::$server->getURLGenerator()->linkToRoute('settings_help').'?mode=admin'; |
||||
|
||||
$tmpl = new OC_Template( "settings", "help", "user" ); |
||||
$tmpl->assign( "admin", OC_User::isAdminUser(OC_User::getUser())); |
||||
$tmpl->assign( "url", $url ); |
||||
$tmpl->assign( "url1", $url1 ); |
||||
$tmpl->assign( "url2", $url2 ); |
||||
$tmpl->assign( "style1", $style1 ); |
||||
$tmpl->assign( "style2", $style2 ); |
||||
$tmpl->printPage(); |
||||
@ -0,0 +1,97 @@ |
||||
<?php |
||||
/** |
||||
* @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net> |
||||
* |
||||
* @author Julius Härtl <jus@bitgrid.net> |
||||
* |
||||
* @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/>. |
||||
* |
||||
*/ |
||||
declare(strict_types=1); |
||||
|
||||
namespace OCA\Settings\Controller; |
||||
|
||||
use OCP\AppFramework\Controller; |
||||
use OCP\AppFramework\Http\ContentSecurityPolicy; |
||||
use OCP\AppFramework\Http\TemplateResponse; |
||||
use OCP\IGroupManager; |
||||
use OCP\INavigationManager; |
||||
use OCP\IRequest; |
||||
use OCP\IURLGenerator; |
||||
use OCP\IUserSession; |
||||
|
||||
class HelpController extends Controller { |
||||
|
||||
/** @var INavigationManager */ |
||||
private $navigationManager; |
||||
/** @var IUserSession */ |
||||
private $urlGenerator; |
||||
/** @var IGroupManager */ |
||||
private $groupManager; |
||||
|
||||
/** @var string */ |
||||
private $userId; |
||||
|
||||
public function __construct( |
||||
string $appName, |
||||
IRequest $request, |
||||
INavigationManager $navigationManager, |
||||
IURLGenerator $urlGenerator, |
||||
string $userId, |
||||
IGroupManager $groupManager |
||||
) { |
||||
parent::__construct($appName, $request); |
||||
$this->navigationManager = $navigationManager; |
||||
$this->urlGenerator = $urlGenerator; |
||||
$this->userId = $userId; |
||||
$this->groupManager = $groupManager; |
||||
} |
||||
|
||||
/** |
||||
* @return TemplateResponse |
||||
* |
||||
* @NoCSRFRequired |
||||
* @NoAdminRequired |
||||
*/ |
||||
public function help(string $mode = 'user'): TemplateResponse { |
||||
$this->navigationManager->setActiveEntry('help'); |
||||
|
||||
if(!isset($mode) || $mode !== 'admin') { |
||||
$mode = 'user'; |
||||
} |
||||
|
||||
$documentationUrl = $this->urlGenerator->getAbsoluteURL( |
||||
$this->urlGenerator->linkTo('core', 'doc/' . $mode . '/index.html') |
||||
); |
||||
|
||||
$urlUserDocs = $this->urlGenerator->linkToRoute('settings.Help.help', ['mode' => 'user']); |
||||
$urlAdminDocs = $this->urlGenerator->linkToRoute('settings.Help.help', ['mode' => 'admin']); |
||||
|
||||
$response = new TemplateResponse('settings', 'help', [ |
||||
'admin' => $this->groupManager->isAdmin($this->userId), |
||||
'url' => $documentationUrl, |
||||
'urlUserDocs' => $urlUserDocs, |
||||
'urlAdminDocs' => $urlAdminDocs, |
||||
'mode' => $mode, |
||||
]); |
||||
$policy = new ContentSecurityPolicy(); |
||||
$policy->addAllowedFrameDomain('\'self\''); |
||||
$response->setContentSecurityPolicy($policy); |
||||
return $response; |
||||
|
||||
} |
||||
|
||||
} |
||||
Loading…
Reference in new issue