aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files_encryption/ajax
diff options
context:
space:
mode:
authorSam Tuke <samtuke@owncloud.com>2013-05-01 19:18:31 +0200
committerSam Tuke <samtuke@owncloud.com>2013-05-01 19:21:01 +0200
commitba29147e34a22142c4bfd2afa3f5b9f1e6efcd63 (patch)
tree643e10cc813c815253c78d4ab6650c42a8986c91 /apps/files_encryption/ajax
parentd3db4ee103903e97ec2cfb8430b14699f1f6e8ae (diff)
downloadnextcloud-server-ba29147e34a22142c4bfd2afa3f5b9f1e6efcd63.tar.gz
nextcloud-server-ba29147e34a22142c4bfd2afa3f5b9f1e6efcd63.zip
Fixed recoveryadmin settings in user and admin settings pages (js, templates, ajax)
Renamed recovery methods in Util{} for clarity Added note about bug causing slow page load and redundant keypair generation recoveryAdmin functionality not yet complete
Diffstat (limited to 'apps/files_encryption/ajax')
-rw-r--r--apps/files_encryption/ajax/adminrecovery.php27
-rw-r--r--apps/files_encryption/ajax/userrecovery.php9
2 files changed, 24 insertions, 12 deletions
diff --git a/apps/files_encryption/ajax/adminrecovery.php b/apps/files_encryption/ajax/adminrecovery.php
index cec0cd4ddda..157fc8f313c 100644
--- a/apps/files_encryption/ajax/adminrecovery.php
+++ b/apps/files_encryption/ajax/adminrecovery.php
@@ -17,11 +17,12 @@ use OCA\Encryption;
$return = $doSetup = false;
+// Enable recoveryAdmin
if (
isset( $_POST['adminEnableRecovery'] )
- && $_POST['adminEnableRecovery'] == 1
- && isset( $_POST['recoveryPassword'] )
- && ! empty ( $_POST['recoveryPassword'] )
+ && 1 == $_POST['adminEnableRecovery']
+// && isset( $_POST['recoveryPassword'] )
+// && ! empty ( $_POST['recoveryPassword'] )
) {
// TODO: Let the admin set this themselves
@@ -29,7 +30,7 @@ if (
// If desired recoveryAdmin UID is already in use
if ( ! \OC_User::userExists( $recoveryAdminUid ) ) {
-
+
// Create new recoveryAdmin user
\OC_User::createUser( $recoveryAdminUid, $_POST['recoveryPassword'] );
@@ -55,11 +56,11 @@ if (
}
- // If recoveryAdmin has passed other checks
+ // Setup recoveryAdmin user for encryption
if ( $doSetup ) {
$view = new \OC_FilesystemView( '/' );
- $util = new Util( $view, $recoveryAdminUid );
+ $util = new \OCA\Encryption\Util( $view, $recoveryAdminUid );
// Ensure recoveryAdmin is ready for encryption (has usable keypair etc.)
$util->setupServerSide( $_POST['recoveryPassword'] );
@@ -71,6 +72,20 @@ if (
}
+ // Set recoveryAdmin as enabled
+ OC_Appconfig::setValue( 'files_encryption', 'recoveryAdminEnabled', 1 );
+
+// Disable recoveryAdmin
+} elseif (
+ isset( $_POST['adminEnableRecovery'] )
+ && 0 == $_POST['adminEnableRecovery']
+) {
+
+ // Set recoveryAdmin as enabled
+ OC_Appconfig::setValue( 'files_encryption', 'recoveryAdminEnabled', 0 );
+
+ $return = true;
+
}
($return) ? OC_JSON::success() : OC_JSON::error(); \ No newline at end of file
diff --git a/apps/files_encryption/ajax/userrecovery.php b/apps/files_encryption/ajax/userrecovery.php
index 56c18f7ad5b..f72be3181ef 100644
--- a/apps/files_encryption/ajax/userrecovery.php
+++ b/apps/files_encryption/ajax/userrecovery.php
@@ -13,21 +13,18 @@ use OCA\Encryption;
\OCP\JSON::checkLoggedIn();
\OCP\JSON::checkAppEnabled( 'files_encryption' );
-\OCP\JSON::callCheck();
if (
isset( $_POST['userEnableRecovery'] )
+ && ( 0 == $_POST['userEnableRecovery'] || 1 == $_POST['userEnableRecovery'] )
) {
- // Ensure preference is an integer
- $recoveryEnabled = intval( $_POST['userEnableRecovery'] );
-
$userId = \OCP\USER::getUser();
$view = new \OC_FilesystemView( '/' );
- $util = new Util( $view, $userId );
+ $util = new \OCA\Encryption\Util( $view, $userId );
// Save recovery preference to DB
- $result = $util->setRecovery( $recoveryEnabled );
+ $result = $util->setRecoveryForUser( $_POST['userEnableRecovery'] );
if ( $result ) {