summaryrefslogtreecommitdiffstats
path: root/apps/encryption/settings/settings-personal.php
blob: d1da649e374756e8b0b37730f93db174079ed430 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<?php
/**
 * Copyright (c) 2015 Clark Tomlinson <clark@owncloud.com>
 * This file is licensed under the Affero General Public License version 3 or
 * later.
 * See the COPYING-README file.
 */

// Add CSS stylesheet
\OC_Util::addStyle('encryption', 'settings-personal');

$tmpl = new OCP\Template('encryption', 'settings-personal');
$crypt = new \OCA\Encryption\Crypto\Crypt(
	\OC::$server->getLogger(),
	\OC::$server->getUserSession(),
	\OC::$server->getConfig());
$keymanager = new \OCA\Encryption\KeyManager(
	\OC::$server->getEncryptionKeyStorage(\OCA\Encryption\Crypto\Encryption::ID),
	$crypt,
	\OC::$server->getConfig(),
	\OC::$server->getUserSession(),
	\OC::$server->getSession(),
	\OC::$server->getLogger());

$user = \OCP\User::getUser();

$view = new \OC\Files\View('/');

$util = new \OCA\Encryption\Util(
	new \OC\Files\View(),
	new \OC\Files\Filesystem(),
	$crypt,
	$keymanager,
	\OC::$server->getLogger(),
	\OC::$server->getUserSession(),
	\OC::$server->getConfig());

$session = new \OCA\Files_Encryption\Session($view);
$session = \OC::$server->getSession();

$privateKeySet = $session->get('privateKey') !== false;
// did we tried to initialize the keys for this session?
$initialized = $session->getInitialized();

$recoveryAdminEnabled = \OC::$server->getConfig()->getAppValue('encryption', 'recoveryAdminEnabled');
$recoveryEnabledForUser = $util->recoveryEnabledForUser();

$result = false;

if ($recoveryAdminEnabled || !$privateKeySet) {

	\OCP\Util::addscript('encryption', 'settings-personal');

	$tmpl->assign('recoveryEnabled', $recoveryAdminEnabled);
	$tmpl->assign('recoveryEnabledForUser', $recoveryEnabledForUser);
	$tmpl->assign('privateKeySet', $privateKeySet);
	$tmpl->assign('initialized', $initialized);

	$result = $tmpl->fetchPage();
}

return $result;