check if some encrypted files are left after the app was disabled and warn the user

This commit is contained in:
Bjoern Schiessle 2013-08-12 17:25:27 +02:00
parent 0bab8935c9
commit 53bb89824d
6 changed files with 42 additions and 7 deletions

View File

@ -143,5 +143,6 @@ if ($needUpgrade) {
$tmpl->assign('usedSpacePercent', (int)$storageInfo['relative']);
$tmpl->assign('isPublic', false);
$tmpl->assign('publicUploadEnabled', $publicUploadEnabled);
$tmpl->assign("encryptedFiles", \OCP\Util::encryptedFiles());
$tmpl->printPage();
}

View File

@ -81,9 +81,23 @@ Files={
if (usedSpacePercent > 90) {
OC.Notification.show(t('files', 'Your storage is almost full ({usedSpacePercent}%)', {usedSpacePercent: usedSpacePercent}));
}
},
displayEncryptionWarning: function() {
if (!OC.Notification.isHidden()) {
return;
}
var encryptedFiles = $('#encryptedFiles').val();
if (encryptedFiles === '1') {
OC.Notification.show(t('files_encryption', 'Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files.', "www.schiessle.org"));
return;
}
}
};
$(document).ready(function() {
Files.displayEncryptionWarning();
Files.bindKeyboardShortcuts(document, jQuery);
$('#fileList tr').each(function(){
//little hack to set unescape filenames in attribute

View File

@ -121,3 +121,4 @@
<!-- config hints for javascript -->
<input type="hidden" name="allowZipDownload" id="allowZipDownload" value="<?php p($_['allowZipDownload']); ?>" />
<input type="hidden" name="usedSpacePercent" id="usedSpacePercent" value="<?php p($_['usedSpacePercent']); ?>" />
<input type="hidden" name="encryptedFiles" id="encryptedFiles" value="<?php $_['encryptedFiles'] ? p('1') : p('0'); ?>" />

View File

@ -122,6 +122,14 @@ class Util {
return(\OC_Util::formatDate( $timestamp, $dateOnly ));
}
/**
* @brief check if some encrypted files are stored
* @return bool
*/
public static function encryptedFiles() {
return \OC_Util::encryptedFiles();
}
/**
* @brief Creates an absolute url
* @param string $app app

View File

@ -312,6 +312,23 @@ class OC_Util {
return $errors;
}
/**
* @brief check if there are still some encrypted files stored
* @return boolean
*/
public static function encryptedFiles() {
//check if encryption was enabled in the past
$encryptedFiles = false;
if (OC_App::isEnabled('files_encryption') === false) {
$view = new OC\Files\View('/' . OCP\User::getUser());
if ($view->file_exists('/files_encryption/keyfiles')) {
$encryptedFiles = true;
}
}
return $encryptedFiles;
}
/**
* Check for correct file permissions of data directory
* @return array arrays with error messages and hints

View File

@ -25,13 +25,7 @@ $userLang=OC_Preferences::getValue( OC_User::getUser(), 'core', 'lang', OC_L10N:
$languageCodes=OC_L10N::findAvailableLanguages();
//check if encryption was enabled in the past
$enableDecryptAll = false;
if (OC_App::isEnabled('files_encryption') === false) {
$view = new OC\Files\View('/'.OCP\User::getUser());
if($view->file_exists('/files_encryption/keyfiles')) {
$enableDecryptAll = true;
}
}
$enableDecryptAll = OC_Util::encryptedFiles();
// array of common languages
$commonlangcodes = array(