diff --git a/apps/files/ajax/upload.php b/apps/files/ajax/upload.php
index 0920bf62109..2c1be428e84 100644
--- a/apps/files/ajax/upload.php
+++ b/apps/files/ajax/upload.php
@@ -110,30 +110,35 @@ if (strpos($dir, '..') === false) {
|| (isset($_POST['resolution']) && $_POST['resolution']==='replace')
) {
// upload and overwrite file
- if (is_uploaded_file($files['tmp_name'][$i]) and \OC\Files\Filesystem::fromTmpFile($files['tmp_name'][$i], $target)) {
-
- // updated max file size after upload
- $storageStats = \OCA\Files\Helper::buildFileStorageStatistics($dir);
-
- $meta = \OC\Files\Filesystem::getFileInfo($target);
- if ($meta === false) {
- $error = $l->t('Upload failed. Could not get file info.');
+ try
+ {
+ if (is_uploaded_file($files['tmp_name'][$i]) and \OC\Files\Filesystem::fromTmpFile($files['tmp_name'][$i], $target)) {
+
+ // updated max file size after upload
+ $storageStats = \OCA\Files\Helper::buildFileStorageStatistics($dir);
+
+ $meta = \OC\Files\Filesystem::getFileInfo($target);
+ if ($meta === false) {
+ $error = $l->t('Upload failed. Could not get file info.');
+ } else {
+ $result[] = array('status' => 'success',
+ 'mime' => $meta['mimetype'],
+ 'mtime' => $meta['mtime'],
+ 'size' => $meta['size'],
+ 'id' => $meta['fileid'],
+ 'name' => basename($target),
+ 'originalname' => $files['tmp_name'][$i],
+ 'uploadMaxFilesize' => $maxUploadFileSize,
+ 'maxHumanFilesize' => $maxHumanFileSize,
+ 'permissions' => $meta['permissions'] & OCP\PERMISSION_READ
+ );
+ }
+
} else {
- $result[] = array('status' => 'success',
- 'mime' => $meta['mimetype'],
- 'mtime' => $meta['mtime'],
- 'size' => $meta['size'],
- 'id' => $meta['fileid'],
- 'name' => basename($target),
- 'originalname' => $files['tmp_name'][$i],
- 'uploadMaxFilesize' => $maxUploadFileSize,
- 'maxHumanFilesize' => $maxHumanFileSize,
- 'permissions' => $meta['permissions'],
- );
+ $error = $l->t('Upload failed. Could not find uploaded file');
}
-
- } else {
- $error = $l->t('Upload failed. Could not find uploaded file');
+ } catch(Exception $ex) {
+ $error = $ex->getMessage();
}
} else {
@@ -151,7 +156,7 @@ if (strpos($dir, '..') === false) {
'originalname' => $files['tmp_name'][$i],
'uploadMaxFilesize' => $maxUploadFileSize,
'maxHumanFilesize' => $maxHumanFileSize,
- 'permissions' => $meta['permissions'],
+ 'permissions' => $meta['permissions'] & OCP\PERMISSION_READ
);
}
}
@@ -164,5 +169,5 @@ if ($error === false) {
OCP\JSON::encodedPrint($result);
exit();
} else {
- OCP\JSON::error(array('data' => array_merge(array('message' => $error), $storageStats)));
+ OCP\JSON::error(array(array('data' => array_merge(array('message' => $error), $storageStats))));
}
diff --git a/apps/files/css/files.css b/apps/files/css/files.css
index cbf34279f54..ac2a243f2b4 100644
--- a/apps/files/css/files.css
+++ b/apps/files/css/files.css
@@ -105,8 +105,6 @@ table th#headerDate, table td.date {
box-sizing: border-box;
position: relative;
min-width: 11em;
- display: block;
- height: 51px;
}
/* Multiselect bar */
@@ -161,8 +159,6 @@ table td.filename .nametext, .uploadtext, .modified { float:left; padding:.3em 0
}
.modified {
position: relative;
- top: 11px;
- left: 5px;
}
/* TODO fix usability bug (accidental file/folder selection) */
@@ -178,6 +174,9 @@ table td.filename .nametext {
table td.filename .uploadtext { font-weight:normal; margin-left:.5em; }
table td.filename form { font-size:.85em; margin-left:3em; margin-right:3em; }
+.ie8 input[type="checkbox"]{
+ padding: 0;
+}
/* File checkboxes */
#fileList tr td.filename>input[type="checkbox"]:first-child {
@@ -240,22 +239,12 @@ table td.filename form { font-size:.85em; margin-left:3em; margin-right:3em; }
top: 14px;
right: 0;
}
-#fileList tr:hover .fileactions { /* background to distinguish when overlaying with file names */
- background-color: rgba(240,240,240,0.898);
- box-shadow: -5px 0 7px rgba(240,240,240,0.898);
-}
-#fileList tr.selected:hover .fileactions, #fileList tr.mouseOver .fileactions { /* slightly darker color for selected rows */
- background-color: rgba(230,230,230,.9);
- box-shadow: -5px 0 7px rgba(230,230,230,.9);
-}
#fileList img.move2trash { display:inline; margin:-.5em 0; padding:1em .5em 1em .5em !important; float:right; }
#fileList a.action.delete {
position: absolute;
right: 0;
- top: 0;
- margin: 0;
- padding: 15px 14px 19px !important;
+ padding: 9px 14px 19px !important;
}
a.action>img { max-height:16px; max-width:16px; vertical-align:text-bottom; }
diff --git a/apps/files/js/file-upload.js b/apps/files/js/file-upload.js
index f1ef485fc3d..c03e9037cec 100644
--- a/apps/files/js/file-upload.js
+++ b/apps/files/js/file-upload.js
@@ -345,7 +345,7 @@ $(document).ready(function() {
} else if (result[0].status !== 'success') {
//delete data.jqXHR;
data.textStatus = 'servererror';
- data.errorThrown = result.data.message; // error message has been translated on server
+ data.errorThrown = result[0].data.message; // error message has been translated on server
var fu = $(this).data('blueimp-fileupload') || $(this).data('fileupload');
fu._trigger('fail', e, data);
}
@@ -523,8 +523,10 @@ $(document).ready(function() {
function(result){
if (result.status == 'success') {
var date=new Date();
- FileList.addFile(name,0,date,false,hidden);
- var tr=$('tr').filterAttr('data-file',name);
+ // TODO: ideally addFile should be able to receive
+ // all attributes and set them automatically,
+ // and also auto-load the preview
+ var tr = FileList.addFile(name,0,date,false,hidden);
tr.attr('data-size',result.data.size);
tr.attr('data-mime',result.data.mime);
tr.attr('data-id', result.data.id);
@@ -533,6 +535,7 @@ $(document).ready(function() {
lazyLoadPreview(path, result.data.mime, function(previewpath){
tr.find('td.filename').attr('style','background-image:url('+previewpath+')');
});
+ FileActions.display(tr.find('td.filename'));
} else {
OC.dialogs.alert(result.data.message, t('core', 'Error'));
}
diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js
index a9297996778..e7edd2cf388 100644
--- a/apps/files/js/filelist.js
+++ b/apps/files/js/filelist.js
@@ -677,6 +677,7 @@ var FileList={
};
$(document).ready(function(){
+ var isPublic = !!$('#isPublic').val();
// handle upload events
var file_upload_start = $('#file_upload_start');
@@ -684,28 +685,32 @@ $(document).ready(function(){
file_upload_start.on('fileuploaddrop', function(e, data) {
OC.Upload.log('filelist handle fileuploaddrop', e, data);
- var dropTarget = $(e.originalEvent.target).closest('tr');
- if(dropTarget && dropTarget.data('type') === 'dir') { // drag&drop upload to folder
+ var dropTarget = $(e.originalEvent.target).closest('tr, .crumb');
+ if(dropTarget && (dropTarget.data('type') === 'dir' || dropTarget.hasClass('crumb'))) { // drag&drop upload to folder
// remember as context
data.context = dropTarget;
var dir = dropTarget.data('file');
+ // if from file list, need to prepend parent dir
+ if (dir){
+ var parentDir = $('#dir').val() || '/';
+ if (parentDir[parentDir.length - 1] != '/'){
+ parentDir += '/';
+ }
+ dir = parentDir + dir;
+ }
+ else{
+ // read full path from crumb
+ dir = dropTarget.data('dir') || '/';
+ }
// update folder in form
data.formData = function(form) {
- var formArray = form.serializeArray();
- // array index 0 contains the max files size
- // array index 1 contains the request token
- // array index 2 contains the directory
- var parentDir = formArray[2]['value'];
- if (parentDir === '/') {
- formArray[2]['value'] += dir;
- } else {
- formArray[2]['value'] += '/' + dir;
- }
-
- return formArray;
+ return [
+ {name: 'dir', value: dir},
+ {name: 'requesttoken', value: oc_requesttoken}
+ ];
};
}
@@ -783,6 +788,10 @@ $(document).ready(function(){
data.context.find('td.filesize').text(humanFileSize(size));
} else {
+ // only append new file if dragged onto current dir's crumb (last)
+ if (data.context && data.context.hasClass('crumb') && !data.context.hasClass('last')){
+ return;
+ }
// add as stand-alone row to filelist
var size=t('files', 'Pending');
@@ -924,29 +933,32 @@ $(document).ready(function(){
return (params && params.dir) || '/';
}
- // fallback to hashchange when no history support
- if (!window.history.pushState){
- $(window).on('hashchange', function(){
- FileList.changeDirectory(parseCurrentDirFromUrl(), false);
- });
- }
- window.onpopstate = function(e){
- var targetDir;
- if (e.state && e.state.dir){
- targetDir = e.state.dir;
- }
- else{
- // read from URL
- targetDir = parseCurrentDirFromUrl();
+ // disable ajax/history API for public app (TODO: until it gets ported)
+ if (!isPublic){
+ // fallback to hashchange when no history support
+ if (!window.history.pushState){
+ $(window).on('hashchange', function(){
+ FileList.changeDirectory(parseCurrentDirFromUrl(), false);
+ });
}
- if (targetDir){
- FileList.changeDirectory(targetDir, false);
+ window.onpopstate = function(e){
+ var targetDir;
+ if (e.state && e.state.dir){
+ targetDir = e.state.dir;
+ }
+ else{
+ // read from URL
+ targetDir = parseCurrentDirFromUrl();
+ }
+ if (targetDir){
+ FileList.changeDirectory(targetDir, false);
+ }
}
- }
- if (parseInt($('#ajaxLoad').val(), 10) === 1){
- // need to initially switch the dir to the one from the hash (IE8)
- FileList.changeDirectory(parseCurrentDirFromUrl(), false, true);
+ if (parseInt($('#ajaxLoad').val(), 10) === 1){
+ // need to initially switch the dir to the one from the hash (IE8)
+ FileList.changeDirectory(parseCurrentDirFromUrl(), false, true);
+ }
}
FileList.createFileSummary();
diff --git a/apps/files/js/files.js b/apps/files/js/files.js
index 37b66858840..a35ed4add8c 100644
--- a/apps/files/js/files.js
+++ b/apps/files/js/files.js
@@ -703,7 +703,12 @@ function checkTrashStatus() {
}
function onClickBreadcrumb(e){
- var $el = $(e.target).closest('.crumb');
- e.preventDefault();
- FileList.changeDirectory(decodeURIComponent($el.data('dir')));
+ var $el = $(e.target).closest('.crumb'),
+ $targetDir = $el.data('dir');
+ isPublic = !!$('#isPublic').val();
+
+ if ($targetDir !== undefined && !isPublic){
+ e.preventDefault();
+ FileList.changeDirectory(decodeURIComponent($targetDir));
+ }
}
diff --git a/apps/files/l10n/cs_CZ.php b/apps/files/l10n/cs_CZ.php
index f1e54ee5fc3..6750afddde8 100644
--- a/apps/files/l10n/cs_CZ.php
+++ b/apps/files/l10n/cs_CZ.php
@@ -13,10 +13,14 @@ $TRANSLATIONS = array(
"Missing a temporary folder" => "Chybí adresář pro dočasné soubory",
"Failed to write to disk" => "Zápis na disk selhal",
"Not enough storage available" => "Nedostatek dostupného úložného prostoru",
+"Upload failed. Could not get file info." => "Nahrávání selhalo. Nepodařilo se získat informace o souboru.",
+"Upload failed. Could not find uploaded file" => "Nahrávání selhalo. Nepodařilo se nalézt nahraný soubor.",
"Invalid directory." => "Neplatný adresář",
"Files" => "Soubory",
+"Unable to upload {filename} as it is a directory or has 0 bytes" => "Nelze nahrát soubor {filename}, protože je to buď adresář nebo má velikost 0 bytů",
"Not enough space available" => "Nedostatek volného místa",
"Upload cancelled." => "Odesílání zrušeno.",
+"Could not get result from server." => "Nepodařilo se získat výsledek ze serveru.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Probíhá odesílání souboru. Opuštění stránky způsobí zrušení nahrávání.",
"URL cannot be empty." => "URL nemůže být prázdná.",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Název složky nelze použít. Použití názvu 'Shared' je ownCloudem rezervováno",
@@ -40,6 +44,8 @@ $TRANSLATIONS = array(
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Neplatný název, znaky '\\', '/', '<', '>', ':', '\"', '|', '?' a '*' nejsou povoleny.",
"Your storage is full, files can not be updated or synced anymore!" => "Vaše úložiště je plné, nelze aktualizovat ani synchronizovat soubory.",
"Your storage is almost full ({usedSpacePercent}%)" => "Vaše úložiště je téměř plné ({usedSpacePercent}%)",
+"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" => "Aplikace pro šifrování je zapnuta, ale vaše klíče nejsou inicializované. Prosím odhlaste se a znovu přihlaste",
+"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." => "Chybný soukromý klíč pro šifrovací aplikaci. Aktualizujte prosím heslo svého soukromého klíče ve vašem osobním nastavení, abyste znovu získali přístup k vašim zašifrovaným souborům.",
"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Šifrování bylo vypnuto, vaše soubory jsou však stále zašifrované. Běžte prosím do osobního nastavení, kde soubory odšifrujete.",
"Your download is being prepared. This might take some time if the files are big." => "Vaše soubory ke stažení se připravují. Pokud jsou velké, může to chvíli trvat.",
"Error moving file" => "Chyba při přesunu souboru",
diff --git a/apps/files/l10n/en_GB.php b/apps/files/l10n/en_GB.php
index c747555e40b..96a4be20b5c 100644
--- a/apps/files/l10n/en_GB.php
+++ b/apps/files/l10n/en_GB.php
@@ -44,6 +44,8 @@ $TRANSLATIONS = array(
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Invalid name: '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed.",
"Your storage is full, files can not be updated or synced anymore!" => "Your storage is full, files can not be updated or synced anymore!",
"Your storage is almost full ({usedSpacePercent}%)" => "Your storage is almost full ({usedSpacePercent}%)",
+"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" => "Encryption App is enabled but your keys are not initialised, please log-out and log-in again",
+"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." => "Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files.",
"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files.",
"Your download is being prepared. This might take some time if the files are big." => "Your download is being prepared. This might take some time if the files are big.",
"Error moving file" => "Error moving file",
diff --git a/apps/files/l10n/es.php b/apps/files/l10n/es.php
index bfed4b22276..b7091fe544d 100644
--- a/apps/files/l10n/es.php
+++ b/apps/files/l10n/es.php
@@ -44,6 +44,8 @@ $TRANSLATIONS = array(
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nombre Invalido, \"\\\", \"/\", \"<\", \">\", \":\", \"\", \"|\" \"?\" y \"*\" no están permitidos ",
"Your storage is full, files can not be updated or synced anymore!" => "Su almacenamiento está lleno, ¡no se pueden actualizar o sincronizar más!",
"Your storage is almost full ({usedSpacePercent}%)" => "Su almacenamiento está casi lleno ({usedSpacePercent}%)",
+"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" => "Encryption App está habilitada pero tus claves no han sido inicializadas, por favor, cierra la sesión y vuelva a iniciarla de nuevo.",
+"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." => "La clave privada no es válida para Encryption App. Por favor, actualiza la contraseña de tu clave privada en tus ajustes personales para recuperar el acceso a tus archivos encriptados.",
"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "El cifrado ha sido deshabilitado pero tus archivos permanecen cifrados. Por favor, ve a tus ajustes personales para descifrar tus archivos.",
"Your download is being prepared. This might take some time if the files are big." => "Su descarga está siendo preparada. Esto puede tardar algún tiempo si los archivos son grandes.",
"Error moving file" => "Error moviendo archivo",
diff --git a/apps/files/l10n/et_EE.php b/apps/files/l10n/et_EE.php
index cb637d849b3..d25b737037f 100644
--- a/apps/files/l10n/et_EE.php
+++ b/apps/files/l10n/et_EE.php
@@ -17,6 +17,7 @@ $TRANSLATIONS = array(
"Upload failed. Could not find uploaded file" => "Üleslaadimine ebaõnnestus. Üleslaetud faili ei leitud",
"Invalid directory." => "Vigane kaust.",
"Files" => "Failid",
+"Unable to upload {filename} as it is a directory or has 0 bytes" => "Ei saa üles laadida {filename}, kuna see on kataloog või selle suurus on 0 baiti",
"Not enough space available" => "Pole piisavalt ruumi",
"Upload cancelled." => "Üleslaadimine tühistati.",
"Could not get result from server." => "Serverist ei saadud tulemusi",
@@ -43,6 +44,8 @@ $TRANSLATIONS = array(
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Vigane nimi, '\\', '/', '<', '>', ':', '\"', '|', '?' ja '*' pole lubatud.",
"Your storage is full, files can not be updated or synced anymore!" => "Sinu andmemaht on täis! Faile ei uuendata ega sünkroniseerita!",
"Your storage is almost full ({usedSpacePercent}%)" => "Su andmemaht on peaaegu täis ({usedSpacePercent}%)",
+"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" => "Krüpteerimisrakend on lubatud, kuid võtmeid pole lähtestatud. Palun logi välja ning uuesti sisse.",
+"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." => "Vigane Krüpteerimisrakendi privaatvõti . Palun uuenda oma privaatse võtme parool oma personaasete seadete all taastamaks ligipääsu oma krüpteeritud failidele.",
"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Krüpteering on keelatud, kuid sinu failid on endiselt krüpteeritud. Palun vaata oma personaalseid seadeid oma failide dekrüpteerimiseks.",
"Your download is being prepared. This might take some time if the files are big." => "Valmistatakse allalaadimist. See võib võtta veidi aega, kui on tegu suurte failidega. ",
"Error moving file" => "Viga faili eemaldamisel",
diff --git a/apps/files/l10n/fr.php b/apps/files/l10n/fr.php
index 03505a2a269..ca1ed09ef3d 100644
--- a/apps/files/l10n/fr.php
+++ b/apps/files/l10n/fr.php
@@ -44,6 +44,8 @@ $TRANSLATIONS = array(
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nom invalide, les caractères '\\', '/', '<', '>', ':', '\"', '|', '?' et '*' ne sont pas autorisés.",
"Your storage is full, files can not be updated or synced anymore!" => "Votre espage de stockage est plein, les fichiers ne peuvent plus être téléversés ou synchronisés !",
"Your storage is almost full ({usedSpacePercent}%)" => "Votre espace de stockage est presque plein ({usedSpacePercent}%)",
+"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" => "L'application de chiffrement est activée mais vos clés ne sont pas initialisées, veuillez vous déconnecter et ensuite vous reconnecter.",
+"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." => "Votre clef privée pour l'application de chiffrement est invalide ! Veuillez mettre à jour le mot de passe de votre clef privée dans vos paramètres personnels pour récupérer l'accès à vos fichiers chiffrés.",
"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Le chiffrement était désactivé mais vos fichiers sont toujours chiffrés. Veuillez vous rendre sur vos Paramètres personnels pour déchiffrer vos fichiers.",
"Your download is being prepared. This might take some time if the files are big." => "Votre téléchargement est cours de préparation. Ceci peut nécessiter un certain temps si les fichiers sont volumineux.",
"Error moving file" => "Erreur lors du déplacement du fichier",
diff --git a/apps/files/l10n/ja_JP.php b/apps/files/l10n/ja_JP.php
index 07ee96f1eb6..180f0260478 100644
--- a/apps/files/l10n/ja_JP.php
+++ b/apps/files/l10n/ja_JP.php
@@ -44,6 +44,8 @@ $TRANSLATIONS = array(
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "無効な名前、'\\', '/', '<', '>', ':', '\"', '|', '?', '*' は使用できません。",
"Your storage is full, files can not be updated or synced anymore!" => "あなたのストレージは一杯です。ファイルの更新と同期はもうできません!",
"Your storage is almost full ({usedSpacePercent}%)" => "あなたのストレージはほぼ一杯です({usedSpacePercent}%)",
+"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" => "暗号化アプリは有効ですが、あなたの暗号化キーは初期化されていません。ログアウトした後に、再度ログインしてください",
+"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." => "暗号化アプリの無効なプライベートキーです。あなたの暗号化されたファイルへアクセスするために、個人設定からプライベートキーのパスワードを更新してください。",
"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "暗号化の機能は無効化されましたが、ファイルはすでに暗号化されています。個人設定からファイルを複合を行ってください。",
"Your download is being prepared. This might take some time if the files are big." => "ダウンロードの準備中です。ファイルサイズが大きい場合は少し時間がかかるかもしれません。",
"Error moving file" => "ファイルの移動エラー",
diff --git a/apps/files/l10n/nl.php b/apps/files/l10n/nl.php
index 65ad5265237..5e2a752b974 100644
--- a/apps/files/l10n/nl.php
+++ b/apps/files/l10n/nl.php
@@ -13,10 +13,14 @@ $TRANSLATIONS = array(
"Missing a temporary folder" => "Er ontbreekt een tijdelijke map",
"Failed to write to disk" => "Schrijven naar schijf mislukt",
"Not enough storage available" => "Niet genoeg opslagruimte beschikbaar",
+"Upload failed. Could not get file info." => "Upload mislukt, Kon geen bestandsinfo krijgen.",
+"Upload failed. Could not find uploaded file" => "Upload mislukt. Kon ge-uploade bestand niet vinden",
"Invalid directory." => "Ongeldige directory.",
"Files" => "Bestanden",
+"Unable to upload {filename} as it is a directory or has 0 bytes" => "Kan {filename} niet uploaden omdat het een map is of 0 bytes groot is",
"Not enough space available" => "Niet genoeg ruimte beschikbaar",
"Upload cancelled." => "Uploaden geannuleerd.",
+"Could not get result from server." => "Kon het resultaat van de server niet terugkrijgen.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Bestandsupload is bezig. Wanneer de pagina nu verlaten wordt, stopt de upload.",
"URL cannot be empty." => "URL kan niet leeg zijn.",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Ongeldige mapnaam. Gebruik van 'Gedeeld' is voorbehouden aan Owncloud zelf",
@@ -40,8 +44,11 @@ $TRANSLATIONS = array(
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Onjuiste naam; '\\', '/', '<', '>', ':', '\"', '|', '?' en '*' zijn niet toegestaan.",
"Your storage is full, files can not be updated or synced anymore!" => "Uw opslagruimte zit vol, Bestanden kunnen niet meer worden ge-upload of gesynchroniseerd!",
"Your storage is almost full ({usedSpacePercent}%)" => "Uw opslagruimte zit bijna vol ({usedSpacePercent}%)",
+"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" => "Crypto app is geactiveerd, maar uw sleutels werden niet geïnitialiseerd. Log uit en log daarna opnieuw in.",
+"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." => "Ongeldige privésleutel voor crypto app. Werk het privésleutel wachtwoord bij in uw persoonlijke instellingen om opnieuw toegang te krijgen tot uw versleutelde bestanden.",
"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Encryptie is uitgeschakeld maar uw bestanden zijn nog steeds versleuteld. Ga naar uw persoonlijke instellingen om uw bestanden te decoderen.",
"Your download is being prepared. This might take some time if the files are big." => "Uw download wordt voorbereid. Dit kan enige tijd duren bij grote bestanden.",
+"Error moving file" => "Fout bij verplaatsen bestand",
"Name" => "Naam",
"Size" => "Grootte",
"Modified" => "Aangepast",
diff --git a/apps/files/l10n/pt_PT.php b/apps/files/l10n/pt_PT.php
index f6d61fc9873..342cab2bf4e 100644
--- a/apps/files/l10n/pt_PT.php
+++ b/apps/files/l10n/pt_PT.php
@@ -13,10 +13,12 @@ $TRANSLATIONS = array(
"Missing a temporary folder" => "Está a faltar a pasta temporária",
"Failed to write to disk" => "Falhou a escrita no disco",
"Not enough storage available" => "Não há espaço suficiente em disco",
+"Upload failed. Could not get file info." => "O carregamento falhou. Não foi possível obter a informação do ficheiro.",
"Invalid directory." => "Directório Inválido",
"Files" => "Ficheiros",
"Not enough space available" => "Espaço em disco insuficiente!",
"Upload cancelled." => "Envio cancelado.",
+"Could not get result from server." => "Não foi possível obter o resultado do servidor.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Envio de ficheiro em progresso. Irá cancelar o envio se sair da página agora.",
"URL cannot be empty." => "O URL não pode estar vazio.",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Nome da pasta inválido. Palavra 'Shared' é reservado pela ownCloud",
@@ -42,6 +44,7 @@ $TRANSLATIONS = array(
"Your storage is almost full ({usedSpacePercent}%)" => "O seu espaço de armazenamento está quase cheiro ({usedSpacePercent}%)",
"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "A encriptação foi desactivada mas os seus ficheiros continuam encriptados. Por favor consulte as suas definições pessoais para desencriptar os ficheiros.",
"Your download is being prepared. This might take some time if the files are big." => "O seu download está a ser preparado. Este processo pode demorar algum tempo se os ficheiros forem grandes.",
+"Error moving file" => "Erro ao mover o ficheiro",
"Name" => "Nome",
"Size" => "Tamanho",
"Modified" => "Modificado",
diff --git a/apps/files/l10n/sv.php b/apps/files/l10n/sv.php
index 208dcd4ea12..32267ea2e71 100644
--- a/apps/files/l10n/sv.php
+++ b/apps/files/l10n/sv.php
@@ -13,10 +13,14 @@ $TRANSLATIONS = array(
"Missing a temporary folder" => "En temporär mapp saknas",
"Failed to write to disk" => "Misslyckades spara till disk",
"Not enough storage available" => "Inte tillräckligt med lagringsutrymme tillgängligt",
+"Upload failed. Could not get file info." => "Uppladdning misslyckades. Gick inte att hämta filinformation.",
+"Upload failed. Could not find uploaded file" => "Uppladdning misslyckades. Kunde inte hitta den uppladdade filen",
"Invalid directory." => "Felaktig mapp.",
"Files" => "Filer",
+"Unable to upload {filename} as it is a directory or has 0 bytes" => "Kan inte ladda upp {filename} eftersom den antingen är en mapp eller har 0 bytes.",
"Not enough space available" => "Inte tillräckligt med utrymme tillgängligt",
"Upload cancelled." => "Uppladdning avbruten.",
+"Could not get result from server." => "Gick inte att hämta resultat från server.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Filuppladdning pågår. Lämnar du sidan så avbryts uppladdningen.",
"URL cannot be empty." => "URL kan inte vara tom.",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Ogiltigt mappnamn. Användning av 'Shared' är reserverad av ownCloud",
@@ -40,8 +44,11 @@ $TRANSLATIONS = array(
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ogiltigt namn, '\\', '/', '<', '>', ':', '\"', '|', '?' och '*' är inte tillåtet.",
"Your storage is full, files can not be updated or synced anymore!" => "Ditt lagringsutrymme är fullt, filer kan inte längre uppdateras eller synkroniseras!",
"Your storage is almost full ({usedSpacePercent}%)" => "Ditt lagringsutrymme är nästan fullt ({usedSpacePercent}%)",
+"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" => "Krypteringsprogrammet är aktiverat men dina nycklar är inte initierade. Vänligen logga ut och in igen",
+"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." => "Ogiltig privat nyckel i krypteringsprogrammet. Vänligen uppdatera lösenordet till din privata nyckel under dina personliga inställningar för att återfå tillgång till dina krypterade filer.",
"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Kryptering inaktiverades men dina filer är fortfarande krypterade. Vänligen gå till sidan för dina personliga inställningar för att dekryptera dina filer.",
"Your download is being prepared. This might take some time if the files are big." => "Din nedladdning förbereds. Det kan ta tid om det är stora filer.",
+"Error moving file" => "Fel uppstod vid flyttning av fil",
"Name" => "Namn",
"Size" => "Storlek",
"Modified" => "Ändrad",
diff --git a/apps/files/l10n/tr.php b/apps/files/l10n/tr.php
index 8cb05e16ace..09c38abfcf0 100644
--- a/apps/files/l10n/tr.php
+++ b/apps/files/l10n/tr.php
@@ -13,10 +13,14 @@ $TRANSLATIONS = array(
"Missing a temporary folder" => "Geçici dizin eksik",
"Failed to write to disk" => "Diske yazılamadı",
"Not enough storage available" => "Yeterli disk alanı yok",
+"Upload failed. Could not get file info." => "Yükleme başarısız. Dosya bilgisi alınamadı.",
+"Upload failed. Could not find uploaded file" => "Yükleme başarısız. Yüklenen dosya bulunamadı",
"Invalid directory." => "Geçersiz dizin.",
"Files" => "Dosyalar",
+"Unable to upload {filename} as it is a directory or has 0 bytes" => "Bir dizin veya 0 bayt olduğundan {filename} yüklenemedi",
"Not enough space available" => "Yeterli disk alanı yok",
"Upload cancelled." => "Yükleme iptal edildi.",
+"Could not get result from server." => "Sunucudan sonuç alınamadı.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Dosya yükleme işlemi sürüyor. Şimdi sayfadan ayrılırsanız işleminiz iptal olur.",
"URL cannot be empty." => "URL boş olamaz.",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Geçersiz dizin adı. 'Shared' dizin ismi kullanımı ownCloud tarafından rezerve edilmiştir.",
@@ -33,14 +37,18 @@ $TRANSLATIONS = array(
"undo" => "geri al",
"_%n folder_::_%n folders_" => array("%n dizin","%n dizin"),
"_%n file_::_%n files_" => array("%n dosya","%n dosya"),
+"{dirs} and {files}" => "{dirs} ve {files}",
"_Uploading %n file_::_Uploading %n files_" => array("%n dosya yükleniyor","%n dosya yükleniyor"),
"'.' is an invalid file name." => "'.' geçersiz dosya adı.",
"File name cannot be empty." => "Dosya adı boş olamaz.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Geçersiz isim, '\\', '/', '<', '>', ':', '\"', '|', '?' ve '*' karakterlerine izin verilmemektedir.",
"Your storage is full, files can not be updated or synced anymore!" => "Depolama alanınız dolu, artık dosyalar güncellenmeyecek yada senkronizasyon edilmeyecek.",
"Your storage is almost full ({usedSpacePercent}%)" => "Depolama alanınız neredeyse dolu ({usedSpacePercent}%)",
+"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" => "Şifreleme Uygulaması etkin ancak anahtarlarınız başlatılmamış. Lütfen oturumu kapatıp yeniden açın",
+"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." => "Şifreleme Uygulaması için geçersiz özel anahtar. Lütfen şifreli dosyalarınıza erişimi tekrar kazanabilmek için kişisel ayarlarınızdan özel anahtar parolanızı güncelleyin.",
"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Şifreleme işlemi durduruldu ancak dosyalarınız şifreli. Dosyalarınızın şifresini kaldırmak için lütfen kişisel ayarlar kısmına geçiniz.",
"Your download is being prepared. This might take some time if the files are big." => "İndirmeniz hazırlanıyor. Dosya büyük ise biraz zaman alabilir.",
+"Error moving file" => "Dosya taşıma hatası",
"Name" => "İsim",
"Size" => "Boyut",
"Modified" => "Değiştirilme",
diff --git a/apps/files/templates/index.php b/apps/files/templates/index.php
index 5e7ad41b0f0..32a59f1e1a6 100644
--- a/apps/files/templates/index.php
+++ b/apps/files/templates/index.php
@@ -1,4 +1,3 @@
-
@@ -108,6 +107,7 @@
+
diff --git a/apps/files/templates/part.list.php b/apps/files/templates/part.list.php
index 0679da334de..a6d2e44f34f 100644
--- a/apps/files/templates/part.list.php
+++ b/apps/files/templates/part.list.php
@@ -36,7 +36,7 @@ $totalsize = 0; ?>
-
+
diff --git a/apps/files_encryption/files/error.php b/apps/files_encryption/files/error.php
index ac0c0269164..61574edf509 100644
--- a/apps/files_encryption/files/error.php
+++ b/apps/files_encryption/files/error.php
@@ -5,26 +5,39 @@ if (!isset($_)) { //also provide standalone error page
$l = OC_L10N::get('files_encryption');
- if (isset($_GET['i']) && $_GET['i'] === '0') {
- $errorMsg = $l->t('Encryption app not initialized! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialize the encryption app.');
- $init = '0';
+ if (isset($_GET['errorCode'])) {
+ $errorCode = $_GET['errorCode'];
+ switch ($errorCode) {
+ case \OCA\Encryption\Crypt::ENCRYPTION_NOT_INITIALIZED_ERROR:
+ $errorMsg = $l->t('Encryption app not initialized! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialize the encryption app.');
+ break;
+ case \OCA\Encryption\Crypt::ENCRYPTION_PRIVATE_KEY_NOT_VALID_ERROR:
+ $errorMsg = $l->t('Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files.');
+ break;
+ case \OCA\Encryption\Crypt::ENCRYPTION_NO_SHARE_KEY_FOUND:
+ $errorMsg = $l->t('Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you.');
+ break;
+ default:
+ $errorMsg = $l->t("Unknown error please check your system settings or contact your administrator");
+ break;
+ }
} else {
- $errorMsg = $l->t('Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files.');
- $init = '1';
+ $errorCode = \OCA\Encryption\Crypt::ENCRYPTION_UNKNOWN_ERROR;
+ $errorMsg = $l->t("Unknown error please check your system settings or contact your administrator");
}
if (isset($_GET['p']) && $_GET['p'] === '1') {
- header('HTTP/1.0 404 ' . $errorMsg);
+ header('HTTP/1.0 403 ' . $errorMsg);
}
// check if ajax request
if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
\OCP\JSON::error(array('data' => array('message' => $errorMsg)));
} else {
- header('HTTP/1.0 404 ' . $errorMsg);
+ header('HTTP/1.0 403 ' . $errorMsg);
$tmpl = new OC_Template('files_encryption', 'invalid_private_key', 'guest');
$tmpl->assign('message', $errorMsg);
- $tmpl->assign('init', $init);
+ $tmpl->assign('errorCode', $errorCode);
$tmpl->printPage();
}
diff --git a/apps/files_encryption/hooks/hooks.php b/apps/files_encryption/hooks/hooks.php
index 2df860a8e57..d9a76becf25 100644
--- a/apps/files_encryption/hooks/hooks.php
+++ b/apps/files_encryption/hooks/hooks.php
@@ -92,8 +92,6 @@ class Hooks {
}
// Encrypt existing user files:
- // This serves to upgrade old versions of the encryption
- // app (see appinfo/spec.txt)
if (
$util->encryptAll('/' . $params['uid'] . '/' . 'files', $session->getLegacyKey(), $params['password'])
) {
diff --git a/apps/files_encryption/l10n/cs_CZ.php b/apps/files_encryption/l10n/cs_CZ.php
index 32645322630..9d37a8d7b0d 100644
--- a/apps/files_encryption/l10n/cs_CZ.php
+++ b/apps/files_encryption/l10n/cs_CZ.php
@@ -8,20 +8,26 @@ $TRANSLATIONS = array(
"Could not change the password. Maybe the old password was not correct." => "Změna hesla se nezdařila. Pravděpodobně nebylo stávající heslo zadáno správně.",
"Private key password successfully updated." => "Heslo soukromého klíče úspěšně aktualizováno.",
"Could not update the private key password. Maybe the old password was not correct." => "Nelze aktualizovat heslo soukromého klíče. Možná nebylo staré heslo správně.",
+"Encryption app not initialized! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialize the encryption app." => "Aplikace pro šifrování není inicializována! Je možné, že aplikace byla znovu aktivována během vašeho přihlášení. Zkuste se prosím odhlásit a znovu přihlásit pro provedení inicializace šifrovací aplikace.",
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Váš soukromý klíč není platný! Pravděpodobně bylo heslo změněno vně systému ownCloud (např. ve vašem firemním adresáři). Heslo vašeho soukromého klíče můžete změnit ve svém osobním nastavení pro obnovení přístupu k vašim zašifrovaným souborům.",
+"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." => "Tento soubor se nepodařilo dešifrovat, pravděpodobně je sdílený. Požádejte prosím majitele souboru, aby jej s vámi znovu sdílel.",
+"Unknown error please check your system settings or contact your administrator" => "Neznámá chyba, zkontrolujte vaše systémová nastavení nebo kontaktujte vašeho správce",
"Missing requirements." => "Nesplněné závislosti.",
"Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled." => "Ujistěte se prosím, že máte nainstalované PHP 5.3.3 nebo novější a že máte povolené a správně nakonfigurované OpenSSL včetně jeho rozšíření pro PHP. Prozatím byla aplikace pro šifrování vypnuta.",
"Following users are not set up for encryption:" => "Následující uživatelé nemají nastavené šifrování:",
"Saving..." => "Ukládám...",
+"Go directly to your " => "Běžte přímo do vašeho",
"personal settings" => "osobní nastavení",
"Encryption" => "Šifrování",
"Enable recovery key (allow to recover users files in case of password loss):" => "Povolit klíč pro obnovu (umožňuje obnovu uživatelských souborů v případě ztráty hesla)",
"Recovery key password" => "Heslo klíče pro obnovu",
+"Repeat Recovery key password" => "Zopakujte heslo klíče pro obnovu",
"Enabled" => "Povoleno",
"Disabled" => "Zakázáno",
"Change recovery key password:" => "Změna hesla klíče pro obnovu:",
"Old Recovery key password" => "Původní heslo klíče pro obnovu",
"New Recovery key password" => "Nové heslo klíče pro obnovu",
+"Repeat New Recovery key password" => "Zopakujte nové heslo klíče pro obnovu",
"Change Password" => "Změnit heslo",
"Your private key password no longer match your log-in password:" => "Heslo vašeho soukromého klíče se již neshoduje s vaším přihlašovacím heslem:",
"Set your old private key password to your current log-in password." => "Změňte heslo vaše soukromého klíče na stejné jako vaše přihlašovací heslo.",
diff --git a/apps/files_encryption/l10n/de.php b/apps/files_encryption/l10n/de.php
index 93a715d3417..a7f8dd7fe6c 100644
--- a/apps/files_encryption/l10n/de.php
+++ b/apps/files_encryption/l10n/de.php
@@ -8,20 +8,26 @@ $TRANSLATIONS = array(
"Could not change the password. Maybe the old password was not correct." => "Das Passwort konnte nicht geändert werden. Vielleicht war das alte Passwort falsch.",
"Private key password successfully updated." => "Passwort des privaten Schlüssels erfolgreich aktualisiert",
"Could not update the private key password. Maybe the old password was not correct." => "Das Passwort des privaten Schlüssels konnte nicht aktualisiert werden. Eventuell war das alte Passwort falsch.",
+"Encryption app not initialized! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialize the encryption app." => "Verschlüsselung-App ist nicht initialisiert! Vielleicht wurde die Verschlüsselung-App in der aktuellen Sitzung reaktiviert. Bitte versuche Dich ab- und wieder anzumelden, um die Verschlüsselung-App zu initialisieren.",
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Dein privater Schlüssel ist ungültig. Möglicher Weise wurde von außerhalb Dein Passwort geändert (z.B. in deinem gemeinsamen Verzeichnis). Du kannst das Passwort deines privaten Schlüssels in den persönlichen Einstellungen aktualisieren, um wieder an deine Dateien zu gelangen.",
+"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." => "Die Datei kann nicht entschlüsselt werden, da die Datei möglicherweise eine geteilte Datei ist. Bitte frage den Datei-Besitzer, dass er die Datei nochmals mit Dir teilt.",
+"Unknown error please check your system settings or contact your administrator" => "Unbekannter Fehler, bitte prüfe Deine Systemeinstellungen oder kontaktiere Deinen Administrator",
"Missing requirements." => "Fehlende Vorraussetzungen",
"Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled." => "Bitte stelle sicher, dass PHP 5.3.3 oder neuer installiert und das OpenSSL zusammen mit der PHP-Erweiterung aktiviert und richtig konfiguriert ist. Zur Zeit ist die Verschlüsselungs-App deaktiviert.",
"Following users are not set up for encryption:" => "Für folgende Nutzer ist keine Verschlüsselung eingerichtet:",
"Saving..." => "Speichern...",
+"Go directly to your " => "Direkt wechseln zu Deinem",
"personal settings" => "Private Einstellungen",
"Encryption" => "Verschlüsselung",
"Enable recovery key (allow to recover users files in case of password loss):" => "Wiederherstellungsschlüssel aktivieren (ermöglicht das Wiederherstellen von Dateien, falls das Passwort vergessen wurde):",
"Recovery key password" => "Wiederherstellungsschlüssel-Passwort",
+"Repeat Recovery key password" => "Schlüssel-Passwort zur Wiederherstellung wiederholen",
"Enabled" => "Aktiviert",
"Disabled" => "Deaktiviert",
"Change recovery key password:" => "Wiederherstellungsschlüssel-Passwort ändern:",
"Old Recovery key password" => "Altes Wiederherstellungsschlüssel-Passwort",
"New Recovery key password" => "Neues Wiederherstellungsschlüssel-Passwort",
+"Repeat New Recovery key password" => "Neues Schlüssel-Passwort zur Wiederherstellung wiederholen",
"Change Password" => "Passwort ändern",
"Your private key password no longer match your log-in password:" => "Ihr Passwort für ihren privaten Schlüssel stimmt nicht mehr mit ihrem Loginpasswort überein.",
"Set your old private key password to your current log-in password." => "Setzen Sie ihr altes Passwort für ihren privaten Schlüssel auf ihr aktuelles Login-Passwort",
diff --git a/apps/files_encryption/l10n/de_DE.php b/apps/files_encryption/l10n/de_DE.php
index 79fdbe995e9..c267cc751af 100644
--- a/apps/files_encryption/l10n/de_DE.php
+++ b/apps/files_encryption/l10n/de_DE.php
@@ -8,20 +8,26 @@ $TRANSLATIONS = array(
"Could not change the password. Maybe the old password was not correct." => "Das Passwort konnte nicht geändert werden. Vielleicht war das alte Passwort nicht richtig.",
"Private key password successfully updated." => "Das Passwort des privaten Schlüssels wurde erfolgreich aktualisiert.",
"Could not update the private key password. Maybe the old password was not correct." => "Das Passwort des privaten Schlüssels konnte nicht aktualisiert werden. Vielleicht war das alte Passwort nicht richtig.",
+"Encryption app not initialized! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialize the encryption app." => "Verschlüsselung-App ist nicht initialisiert! Vielleicht wurde die Verschlüsselung-App in der aktuellen Sitzung reaktiviert. Bitte versuchen Sie sich ab- und wieder anzumelden, um die Verschlüsselung-App zu initialisieren.",
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Ihr privater Schlüssel ist ungültig. Möglicher Weise wurde von außerhalb Ihr Passwort geändert (z.B. in Ihrem gemeinsamen Verzeichnis). Sie können das Passwort Ihres privaten Schlüssels in den persönlichen Einstellungen aktualisieren, um wieder an Ihre Dateien zu gelangen.",
+"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." => "Die Datei kann nicht entschlüsselt werden, da die Datei möglicherweise eine geteilte Datei ist. Bitte fragen Sie den Datei-Besitzer, dass er die Datei nochmals mit Ihnen teilt.",
+"Unknown error please check your system settings or contact your administrator" => "Unbekannter Fehler, bitte prüfen Sie die Systemeinstellungen oder kontaktieren Sie Ihren Administrator",
"Missing requirements." => "Fehlende Voraussetzungen",
"Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled." => "Bitte stellen Sie sicher, dass PHP 5.3.3 oder neuer installiert und das OpenSSL zusammen mit der PHP-Erweiterung aktiviert und richtig konfiguriert ist. Zur Zeit ist die Verschlüsselungs-App deaktiviert.",
"Following users are not set up for encryption:" => "Für folgende Nutzer ist keine Verschlüsselung eingerichtet:",
"Saving..." => "Speichern...",
+"Go directly to your " => "Direkt wechseln zu Ihrem",
"personal settings" => "Persönliche Einstellungen",
"Encryption" => "Verschlüsselung",
"Enable recovery key (allow to recover users files in case of password loss):" => "Aktivieren Sie den Wiederherstellungsschlüssel (erlaubt die Wiederherstellung des Zugangs zu den Benutzerdateien, wenn das Passwort verloren geht).",
"Recovery key password" => "Wiederherstellungschlüsselpasswort",
+"Repeat Recovery key password" => "Schlüssel-Passwort zur Wiederherstellung wiederholen",
"Enabled" => "Aktiviert",
"Disabled" => "Deaktiviert",
"Change recovery key password:" => "Wiederherstellungsschlüsselpasswort ändern",
"Old Recovery key password" => "Altes Wiederherstellungsschlüsselpasswort",
"New Recovery key password" => "Neues Wiederherstellungsschlüsselpasswort ",
+"Repeat New Recovery key password" => "Neues Schlüssel-Passwort zur Wiederherstellung wiederholen",
"Change Password" => "Passwort ändern",
"Your private key password no longer match your log-in password:" => "Das Privatschlüsselpasswort darf nicht länger mit den Login-Passwort übereinstimmen.",
"Set your old private key password to your current log-in password." => "Setzen Sie Ihr altes Privatschlüsselpasswort auf Ihr aktuelles LogIn-Passwort.",
diff --git a/apps/files_encryption/l10n/en_GB.php b/apps/files_encryption/l10n/en_GB.php
index d2bfdfa9ea4..1ff3e1dad0b 100644
--- a/apps/files_encryption/l10n/en_GB.php
+++ b/apps/files_encryption/l10n/en_GB.php
@@ -8,22 +8,28 @@ $TRANSLATIONS = array(
"Could not change the password. Maybe the old password was not correct." => "Could not change the password. Maybe the old password was incorrect.",
"Private key password successfully updated." => "Private key password updated successfully.",
"Could not update the private key password. Maybe the old password was not correct." => "Could not update the private key password. Maybe the old password was not correct.",
+"Encryption app not initialized! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialize the encryption app." => "Encryption app not initialised! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialise the encryption app.",
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files.",
+"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." => "Cannot decrypt this file, which is probably a shared file. Please ask the file owner to reshare the file with you.",
+"Unknown error please check your system settings or contact your administrator" => "Unknown error. Please check your system settings or contact your administrator",
"Missing requirements." => "Missing requirements.",
"Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled." => "Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled.",
"Following users are not set up for encryption:" => "Following users are not set up for encryption:",
"Saving..." => "Saving...",
+"Go directly to your " => "Go directly to your ",
"personal settings" => "personal settings",
"Encryption" => "Encryption",
"Enable recovery key (allow to recover users files in case of password loss):" => "Enable recovery key (allow to recover users files in case of password loss):",
"Recovery key password" => "Recovery key password",
+"Repeat Recovery key password" => "Repeat recovery key password",
"Enabled" => "Enabled",
"Disabled" => "Disabled",
"Change recovery key password:" => "Change recovery key password:",
-"Old Recovery key password" => "Old Recovery key password",
-"New Recovery key password" => "New Recovery key password",
+"Old Recovery key password" => "Old recovery key password",
+"New Recovery key password" => "New recovery key password",
+"Repeat New Recovery key password" => "Repeat new recovery key password",
"Change Password" => "Change Password",
-"Your private key password no longer match your log-in password:" => "Your private key password no longer match your login password:",
+"Your private key password no longer match your log-in password:" => "Your private key password no longer matches your login password:",
"Set your old private key password to your current log-in password." => "Set your old private key password to your current login password.",
" If you don't remember your old password you can ask your administrator to recover your files." => " If you don't remember your old password you can ask your administrator to recover your files.",
"Old log-in password" => "Old login password",
diff --git a/apps/files_encryption/l10n/es.php b/apps/files_encryption/l10n/es.php
index 138d51b09be..2e3c7c58163 100644
--- a/apps/files_encryption/l10n/es.php
+++ b/apps/files_encryption/l10n/es.php
@@ -8,6 +8,7 @@ $TRANSLATIONS = array(
"Could not change the password. Maybe the old password was not correct." => "No se pudo cambiar la contraseña. Compruebe que la contraseña actual sea correcta.",
"Private key password successfully updated." => "Contraseña de clave privada actualizada con éxito.",
"Could not update the private key password. Maybe the old password was not correct." => "No se pudo cambiar la contraseña. Puede que la contraseña antigua no sea correcta.",
+"Encryption app not initialized! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialize the encryption app." => "¡Encryption App no está inicializada!. Quizás la aplicación fue reiniciada durante tu sesión. Por favor, cierra la sesión y vuelva a iniciarla para intentar inicializar la Encryption App.",
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "¡Su clave privada no es válida! Tal vez su contraseña ha sido cambiada desde fuera. Puede actualizar su clave privada en sus opciones personales para recuperar el acceso a sus ficheros.",
"Missing requirements." => "Requisitos incompletos.",
"Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled." => "Por favor, asegúrese de que PHP 5.3.3 o posterior está instalado y que la extensión OpenSSL de PHP está habilitada y configurada correctamente. Por el momento, la aplicación de cifrado ha sido deshabilitada.",
diff --git a/apps/files_encryption/l10n/et_EE.php b/apps/files_encryption/l10n/et_EE.php
index 0c9234d3a51..79349722c1f 100644
--- a/apps/files_encryption/l10n/et_EE.php
+++ b/apps/files_encryption/l10n/et_EE.php
@@ -8,20 +8,26 @@ $TRANSLATIONS = array(
"Could not change the password. Maybe the old password was not correct." => "Ei suutnud vahetada parooli. Võib-olla on vana parool valesti sisestatud.",
"Private key password successfully updated." => "Privaatse võtme parool edukalt uuendatud.",
"Could not update the private key password. Maybe the old password was not correct." => "Ei suutnud uuendada privaatse võtme parooli. Võib-olla polnud vana parool õige.",
+"Encryption app not initialized! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialize the encryption app." => "Krüpteerimise rakend pole käivitatud. Võib-olla krüpteerimise rakend taaskäivitati sinu sessiooni kestel. Palun proovi logida välja ning uuesti sisse käivitamaks krüpteerimise rakendit.",
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Sinu privaatne võti pole toimiv! Tõenäoliselt on sinu parool muutunud väljaspool ownCloud süsteemi (näiteks ettevõtte keskhaldus). Sa saad uuendada oma privaatse võtme parooli seadete all taastamaks ligipääsu oma krüpteeritud failidele.",
+"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." => "Sa ei saa seda faili dekrüpteerida, see on tõenäoliselt jagatud fail. Palun lase omanikul seda faili sinuga uuesti jagada.",
+"Unknown error please check your system settings or contact your administrator" => "Tundmatu tõrge. Palun kontrolli süsteemi seadeid või võta ühendust oma süsteemi administraatoriga",
"Missing requirements." => "Nõutavad on puudu.",
"Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled." => "Palun veendu, et on paigaldatud PHP 5.3.3 või uuem ning PHP OpenSSL laiendus on lubatud ning seadistatud korrektselt. Hetkel krüpteerimise rakendus on peatatud.",
"Following users are not set up for encryption:" => "Järgmised kasutajad pole seadistatud krüpteeringuks:",
"Saving..." => "Salvestamine...",
+"Go directly to your " => "Liigu otse oma",
"personal settings" => "isiklikes seadetes",
"Encryption" => "Krüpteerimine",
"Enable recovery key (allow to recover users files in case of password loss):" => "Luba taastevõti (võimada kasutaja failide taastamine parooli kaotuse puhul):",
"Recovery key password" => "Taastevõtme parool",
+"Repeat Recovery key password" => "Korda taastevõtme parooli",
"Enabled" => "Sisse lülitatud",
"Disabled" => "Väljalülitatud",
"Change recovery key password:" => "Muuda taastevõtme parooli:",
"Old Recovery key password" => "Vana taastevõtme parool",
"New Recovery key password" => "Uus taastevõtme parool",
+"Repeat New Recovery key password" => "Korda uut taastevõtme parooli",
"Change Password" => "Muuda parooli",
"Your private key password no longer match your log-in password:" => "Sinu privaatse võtme parool ei ühti enam sinu sisselogimise parooliga:",
"Set your old private key password to your current log-in password." => "Pane oma vana privaatvõtme parooliks oma praegune sisselogimise parool.",
diff --git a/apps/files_encryption/l10n/fr.php b/apps/files_encryption/l10n/fr.php
index b222aa10e4b..2988995c885 100644
--- a/apps/files_encryption/l10n/fr.php
+++ b/apps/files_encryption/l10n/fr.php
@@ -8,20 +8,26 @@ $TRANSLATIONS = array(
"Could not change the password. Maybe the old password was not correct." => "Ne peut pas changer le mot de passe. L'ancien mot de passe est peut-être incorrect.",
"Private key password successfully updated." => "Mot de passe de la clé privé mis à jour avec succès.",
"Could not update the private key password. Maybe the old password was not correct." => "Impossible de mettre à jour le mot de passe de la clé privé. Peut-être que l'ancien mot de passe n'était pas correcte.",
+"Encryption app not initialized! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialize the encryption app." => "L'application de chiffrement n'est pas initialisée ! Peut-être que cette application a été réactivée pendant votre session. Veuillez essayer de vous déconnecter et ensuite de vous reconnecter pour initialiser l'application de chiffrement.",
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Votre clé de sécurité privée n'est pas valide! Il est probable que votre mot de passe ait été changé sans passer par le système ownCloud (par éxemple: le serveur de votre entreprise). Ain d'avoir à nouveau accès à vos fichiers cryptés, vous pouvez mettre à jour votre clé de sécurité privée dans les paramètres personnels de votre compte.",
+"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." => "Impossible de déchiffrer ce fichier, il s'agit probablement d'un fichier partagé. Veuillez demander au propriétaire de ce fichier de le repartager avec vous.",
+"Unknown error please check your system settings or contact your administrator" => "Erreur inconnue. Veuillez vérifier vos paramètres système ou contacter votre administrateur.",
"Missing requirements." => "Système minimum requis non respecté.",
"Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled." => "Veuillez vous assurer qu'une version de PHP 5.3.3 ou supérieure est installée et qu'OpenSSL et son extension PHP sont activés et configurés correctement. En attendant, l'application de chiffrement été désactivée.",
"Following users are not set up for encryption:" => "Les utilisateurs suivants ne sont pas configurés pour le chiffrement :",
"Saving..." => "Enregistrement...",
+"Go directly to your " => "Allez directement à votre",
"personal settings" => "paramètres personnel",
"Encryption" => "Chiffrement",
"Enable recovery key (allow to recover users files in case of password loss):" => "Activer la clef de récupération (permet de récupérer les fichiers des utilisateurs en cas de perte de mot de passe).",
"Recovery key password" => "Mot de passe de la clef de récupération",
+"Repeat Recovery key password" => "Répétez le mot de passe de la clé de récupération",
"Enabled" => "Activer",
"Disabled" => "Désactiver",
"Change recovery key password:" => "Modifier le mot de passe de la clef de récupération :",
"Old Recovery key password" => "Ancien mot de passe de la clef de récupération",
"New Recovery key password" => "Nouveau mot de passe de la clef de récupération",
+"Repeat New Recovery key password" => "Répétez le nouveau mot de passe de la clé de récupération",
"Change Password" => "Changer de mot de passe",
"Your private key password no longer match your log-in password:" => "Le mot de passe de votre clef privée ne correspond plus à votre mot de passe de connexion :",
"Set your old private key password to your current log-in password." => "Configurez le mot de passe de votre ancienne clef privée avec votre mot de passe courant de connexion. ",
diff --git a/apps/files_encryption/l10n/it.php b/apps/files_encryption/l10n/it.php
index f45dbe7c734..c93afa15729 100644
--- a/apps/files_encryption/l10n/it.php
+++ b/apps/files_encryption/l10n/it.php
@@ -13,15 +13,18 @@ $TRANSLATIONS = array(
"Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled." => "Assicurati che sia installato PHP 5.3.3 o versioni successive e che l'estensione OpenSSL di PHP sia abilitata e configurata correttamente. Per ora, l'applicazione di cifratura è disabilitata.",
"Following users are not set up for encryption:" => "I seguenti utenti non sono configurati per la cifratura:",
"Saving..." => "Salvataggio in corso...",
+"Go directly to your " => "Passa direttamente a",
"personal settings" => "impostazioni personali",
"Encryption" => "Cifratura",
"Enable recovery key (allow to recover users files in case of password loss):" => "Abilita la chiave di recupero (permette di recuperare i file utenti in caso di perdita della password):",
"Recovery key password" => "Password della chiave di recupero",
+"Repeat Recovery key password" => "Ripeti la password della chiave di recupero",
"Enabled" => "Abilitata",
"Disabled" => "Disabilitata",
"Change recovery key password:" => "Cambia la password della chiave di recupero:",
"Old Recovery key password" => "Vecchia password della chiave di recupero",
"New Recovery key password" => "Nuova password della chiave di recupero",
+"Repeat New Recovery key password" => "Ripeti la nuova password della chiave di recupero",
"Change Password" => "Modifica password",
"Your private key password no longer match your log-in password:" => "La password della chiave privata non corrisponde più alla password di accesso:",
"Set your old private key password to your current log-in password." => "Imposta la vecchia password della chiave privata sull'attuale password di accesso.",
diff --git a/apps/files_encryption/l10n/nl.php b/apps/files_encryption/l10n/nl.php
index 511120856a0..86d56e40315 100644
--- a/apps/files_encryption/l10n/nl.php
+++ b/apps/files_encryption/l10n/nl.php
@@ -8,20 +8,24 @@ $TRANSLATIONS = array(
"Could not change the password. Maybe the old password was not correct." => "Kon wachtwoord niet wijzigen. Wellicht oude wachtwoord niet juist ingevoerd.",
"Private key password successfully updated." => "Privésleutel succesvol bijgewerkt.",
"Could not update the private key password. Maybe the old password was not correct." => "Kon het wachtwoord van de privésleutel niet wijzigen. Misschien was het oude wachtwoord onjuist.",
+"Encryption app not initialized! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialize the encryption app." => "Crypto app niet geïnitialiseerd. Misschien werd de crypto app geheractiveerd tijdens de sessie. Log uit en log daarna opnieuw in om de crypto app te initialiseren.",
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Uw privésleutel is niet geldig! Misschien was uw wachtwoord van buitenaf gewijzigd. U kunt het wachtwoord van uw privésleutel aanpassen in uw persoonlijke instellingen om toegang tot uw versleutelde bestanden te vergaren.",
"Missing requirements." => "Missende benodigdheden.",
"Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled." => "Wees er zeker van dat PHP5.3.3 of nieuwer is geïstalleerd en dat de OpenSSL PHP extensie is ingeschakeld en correct geconfigureerd. De versleutel-app is voorlopig uitgeschakeld.",
"Following users are not set up for encryption:" => "De volgende gebruikers hebben geen configuratie voor encryptie:",
"Saving..." => "Opslaan",
+"Go directly to your " => "Ga meteen naar uw",
"personal settings" => "persoonlijke instellingen",
"Encryption" => "Versleuteling",
"Enable recovery key (allow to recover users files in case of password loss):" => "Activeren herstelsleutel (maakt het mogelijk om gebruikersbestanden terug te halen in geval van verlies van het wachtwoord):",
"Recovery key password" => "Wachtwoord herstelsleulel",
+"Repeat Recovery key password" => "Herhaal het herstelsleutel wachtwoord",
"Enabled" => "Geactiveerd",
"Disabled" => "Gedeactiveerd",
"Change recovery key password:" => "Wijzig wachtwoord herstelsleutel:",
"Old Recovery key password" => "Oude wachtwoord herstelsleutel",
"New Recovery key password" => "Nieuwe wachtwoord herstelsleutel",
+"Repeat New Recovery key password" => "Herhaal het nieuwe herstelsleutel wachtwoord",
"Change Password" => "Wijzigen wachtwoord",
"Your private key password no longer match your log-in password:" => "Het wachtwoord van uw privésleutel komt niet meer overeen met uw inlogwachtwoord:",
"Set your old private key password to your current log-in password." => "Stel het wachtwoord van uw oude privésleutel in op uw huidige inlogwachtwoord.",
diff --git a/apps/files_encryption/l10n/pl.php b/apps/files_encryption/l10n/pl.php
index 4eb1ca00dda..b448aaef148 100644
--- a/apps/files_encryption/l10n/pl.php
+++ b/apps/files_encryption/l10n/pl.php
@@ -8,20 +8,24 @@ $TRANSLATIONS = array(
"Could not change the password. Maybe the old password was not correct." => "Nie można zmienić hasła. Może stare hasło nie było poprawne.",
"Private key password successfully updated." => "Pomyślnie zaktualizowano hasło klucza prywatnego.",
"Could not update the private key password. Maybe the old password was not correct." => "Nie można zmienić prywatnego hasła. Może stare hasło nie było poprawne.",
+"Encryption app not initialized! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialize the encryption app." => "Szyfrowanie aplikacja nie została zainicjowane! Może szyfrowanie aplikacji zostało ponownie włączone podczas tej sesji. Spróbuj się wylogować i zalogować ponownie aby zainicjować szyfrowanie aplikacji.",
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Klucz prywatny nie jest ważny! Prawdopodobnie Twoje hasło zostało zmienione poza systemem ownCloud (np. w katalogu firmy). Aby odzyskać dostęp do zaszyfrowanych plików można zaktualizować hasło klucza prywatnego w ustawieniach osobistych.",
"Missing requirements." => "Brak wymagań.",
"Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled." => "Proszę upewnić się, że PHP 5.3.3 lub nowszy jest zainstalowany i że OpenSSL oraz rozszerzenie PHP jest włączone i poprawnie skonfigurowane. Obecnie szyfrowanie aplikacji zostało wyłączone.",
"Following users are not set up for encryption:" => "Następujący użytkownicy nie mają skonfigurowanego szyfrowania:",
"Saving..." => "Zapisywanie...",
+"Go directly to your " => "Przejdź bezpośrednio do",
"personal settings" => "Ustawienia osobiste",
"Encryption" => "Szyfrowanie",
"Enable recovery key (allow to recover users files in case of password loss):" => "Włączhasło klucza odzyskiwania (pozwala odzyskać pliki użytkowników w przypadku utraty hasła):",
"Recovery key password" => "Hasło klucza odzyskiwania",
+"Repeat Recovery key password" => "Powtórz hasło klucza odzyskiwania",
"Enabled" => "Włączone",
"Disabled" => "Wyłączone",
"Change recovery key password:" => "Zmień hasło klucza odzyskiwania",
"Old Recovery key password" => "Stare hasło klucza odzyskiwania",
"New Recovery key password" => "Nowe hasło klucza odzyskiwania",
+"Repeat New Recovery key password" => "Powtórz nowe hasło klucza odzyskiwania",
"Change Password" => "Zmień hasło",
"Your private key password no longer match your log-in password:" => "Hasło klucza prywatnego nie pasuje do hasła logowania:",
"Set your old private key password to your current log-in password." => "Podaj swoje stare prywatne hasło aby ustawić nowe",
diff --git a/apps/files_encryption/l10n/pt_BR.php b/apps/files_encryption/l10n/pt_BR.php
index c6abb1952d2..4539696b460 100644
--- a/apps/files_encryption/l10n/pt_BR.php
+++ b/apps/files_encryption/l10n/pt_BR.php
@@ -10,6 +10,8 @@ $TRANSLATIONS = array(
"Could not update the private key password. Maybe the old password was not correct." => "Não foi possível atualizar a senha de chave privada. Talvez a senha antiga esteja incorreta.",
"Encryption app not initialized! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialize the encryption app." => "Aplicativo de criptografia não foi inicializado! Talvez o aplicativo de criptografia tenha sido reativado durante essa sessão. Por favor, tente fazer logoff e login novamente para inicializar o aplicativo de criptografia.",
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Sua chave privada não é válida! Provavelmente sua senha foi alterada fora do sistema ownCloud (por exemplo, seu diretório corporativo). Você pode atualizar sua senha de chave privada em suas configurações pessoais para recuperar o acesso a seus arquivos criptografados.",
+"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." => "Este arquivo não pode ser decriptado, provavelmente este é um arquivo compartilhado. Poe favoe peça ao dono do arquivo para compartilha-lo com você.",
+"Unknown error please check your system settings or contact your administrator" => "Erro desconhecido, por favor verifique suas configurações ou faça contato com o administrador",
"Missing requirements." => "Requisitos não encontrados.",
"Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled." => "Por favor, certifique-se que o PHP 5.3.3 ou mais recente está instalado e que a extensão PHP OpenSSL está habilitado e configurado corretamente. Por enquanto, o aplicativo de criptografia foi desativado.",
"Following users are not set up for encryption:" => "Seguintes usuários não estão configurados para criptografia:",
diff --git a/apps/files_encryption/l10n/pt_PT.php b/apps/files_encryption/l10n/pt_PT.php
index 53335ab7297..788e102dd67 100644
--- a/apps/files_encryption/l10n/pt_PT.php
+++ b/apps/files_encryption/l10n/pt_PT.php
@@ -9,6 +9,7 @@ $TRANSLATIONS = array(
"Could not update the private key password. Maybe the old password was not correct." => "Não foi possível alterar a chave. Possivelmente a password antiga não está correcta.",
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Chave privada não é válida! Provavelmente senha foi alterada fora do sistema ownCloud (exemplo, o diretório corporativo). Pode atualizar password da chave privada em configurações personalizadas para recuperar o acesso aos seus arquivos encriptados.",
"Missing requirements." => "Faltam alguns requisitos.",
+"Following users are not set up for encryption:" => "Os utilizadores seguintes não estão marcados para cifragem:",
"Saving..." => "A guardar...",
"personal settings" => "configurações personalizadas ",
"Encryption" => "Encriptação",
diff --git a/apps/files_encryption/l10n/sv.php b/apps/files_encryption/l10n/sv.php
index d425111cf03..f806c3cc3e6 100644
--- a/apps/files_encryption/l10n/sv.php
+++ b/apps/files_encryption/l10n/sv.php
@@ -6,29 +6,33 @@ $TRANSLATIONS = array(
"Could not disable recovery key. Please check your recovery key password!" => "Kunde inte inaktivera återställningsnyckeln. Vänligen kontrollera ditt lösenord för återställningsnyckeln!",
"Password successfully changed." => "Ändringen av lösenordet lyckades.",
"Could not change the password. Maybe the old password was not correct." => "Kunde inte ändra lösenordet. Kanske det gamla lösenordet inte var rätt.",
-"Private key password successfully updated." => "Den privata lösenordsnyckeln uppdaterades utan problem.",
-"Could not update the private key password. Maybe the old password was not correct." => "Kunde inte uppdatera den privata lösenordsnyckeln. Kanske var det gamla lösenordet fel.",
-"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Din privata lösenordsnyckel är inte giltig! Troligen har ditt lösenord ändrats utanför ownCloud (t.ex. i företagets katalogtjänst). Du kan uppdatera den privata lösenordsnyckeln under dina personliga inställningar för att återfå tillgång till dina filer.",
+"Private key password successfully updated." => "Den privata nyckelns lösenord uppdaterades utan problem.",
+"Could not update the private key password. Maybe the old password was not correct." => "Kunde inte uppdatera lösenordet för den privata nyckeln. Kanske var det gamla lösenordet fel.",
+"Encryption app not initialized! Maybe the encryption app was re-enabled during your session. Please try to log out and log back in to initialize the encryption app." => "Krypteringsprogrammet kunde inte initieras! Möjligen blev krypteringsprogrammet återaktiverad under din session. Försök med att logga ut och in igen för att initiera krypteringsprogrammet.",
+"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Lösenordet för din privata nyckel är inte giltig! Troligen har ditt lösenord ändrats utanför ownCloud (t.ex. i företagets katalogtjänst). Du kan uppdatera lösenordet för den privata nyckeln under dina personliga inställningar för att återfå tillgång till dina filer.",
"Missing requirements." => "Krav som saknas",
"Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled." => "Kontrollera att PHP 5.3.3 eller senare är installerad och att tillägget OpenSSL PHP är aktiverad och korrekt konfigurerad. Kryptering är tillsvidare inaktiverad.",
"Following users are not set up for encryption:" => "Följande användare har inte aktiverat kryptering:",
"Saving..." => "Sparar...",
+"Go directly to your " => "Gå direkt till din",
"personal settings" => "personliga inställningar",
"Encryption" => "Kryptering",
-"Enable recovery key (allow to recover users files in case of password loss):" => "Aktivera lösenordsnyckel (för att kunna återfå användarens filer vid glömt eller förlorat lösenord):",
-"Recovery key password" => "Lösenordsnyckel",
+"Enable recovery key (allow to recover users files in case of password loss):" => "Aktivera återställningsnyckel (för att kunna återfå användarens filer vid glömt eller förlorat lösenord):",
+"Recovery key password" => "Lösenord för återställningsnyckel",
+"Repeat Recovery key password" => "Upprepa återställningsnyckelns lösenord",
"Enabled" => "Aktiverad",
"Disabled" => "Inaktiverad",
-"Change recovery key password:" => "Ändra lösenordsnyckel:",
-"Old Recovery key password" => "Gammal lösenordsnyckel",
-"New Recovery key password" => "Ny lösenordsnyckel",
+"Change recovery key password:" => "Ändra lösenord för återställningsnyckel:",
+"Old Recovery key password" => "Gammalt lösenord för återställningsnyckel",
+"New Recovery key password" => "Nytt lösenord för återställningsnyckel",
+"Repeat New Recovery key password" => "Upprepa lösenord för ny återställningsnyckel",
"Change Password" => "Byt lösenord",
-"Your private key password no longer match your log-in password:" => "Din privata lösenordsnyckel stämmer inte längre överrens med ditt inloggningslösenord:",
-"Set your old private key password to your current log-in password." => "Ställ in din gamla privata lösenordsnyckel till ditt aktuella inloggningslösenord.",
+"Your private key password no longer match your log-in password:" => "Lösenordet till din privata nyckel stämmer inte längre överens med ditt inloggningslösenord:",
+"Set your old private key password to your current log-in password." => "Använd din gamla privata nyckels lösenord som ditt aktuella inloggningslösenord.",
" If you don't remember your old password you can ask your administrator to recover your files." => "Om du inte kommer ihåg ditt gamla lösenord kan du be din administratör att återställa dina filer.",
"Old log-in password" => "Gammalt inloggningslösenord",
"Current log-in password" => "Nuvarande inloggningslösenord",
-"Update Private Key Password" => "Uppdatera den privata lösenordsnyckeln",
+"Update Private Key Password" => "Uppdatera lösenordet för din privata nyckel",
"Enable password recovery:" => "Aktivera lösenordsåterställning",
"Enabling this option will allow you to reobtain access to your encrypted files in case of password loss" => "Genom att aktivera detta alternativ kommer du kunna återfå tillgång till dina krypterade filer om du skulle förlora/glömma ditt lösenord",
"File recovery settings updated" => "Inställningarna för filåterställning har uppdaterats",
diff --git a/apps/files_encryption/lib/crypt.php b/apps/files_encryption/lib/crypt.php
index c009718160a..9155d238c77 100755
--- a/apps/files_encryption/lib/crypt.php
+++ b/apps/files_encryption/lib/crypt.php
@@ -33,6 +33,12 @@ require_once __DIR__ . '/../3rdparty/Crypt_Blowfish/Blowfish.php';
class Crypt {
+ const ENCRYPTION_UNKNOWN_ERROR = -1;
+ const ENCRYPTION_NOT_INITIALIZED_ERROR = 1;
+ const ENCRYPTION_PRIVATE_KEY_NOT_VALID_ERROR = 2;
+ const ENCRYPTION_NO_SHARE_KEY_FOUND = 3;
+
+
/**
* @brief return encryption mode client or server side encryption
* @param string $user name (use system wide setting if name=null)
@@ -183,8 +189,8 @@ class Crypt {
// Fetch all file metadata from DB
$metadata = \OC\Files\Filesystem::getFileInfo($relPath, '');
- // If a file is flagged with encryption in DB, but isn't a
- // valid content + IV combination, it's probably using the
+ // If a file is flagged with encryption in DB, but isn't a
+ // valid content + IV combination, it's probably using the
// legacy encryption system
if (isset($metadata['encrypted'])
&& $metadata['encrypted'] === true
@@ -388,7 +394,7 @@ class Crypt {
*/
public static function multiKeyEncrypt($plainContent, array $publicKeys) {
- // openssl_seal returns false without errors if $plainContent
+ // openssl_seal returns false without errors if $plainContent
// is empty, so trigger our own error
if (empty($plainContent)) {
@@ -405,7 +411,7 @@ class Crypt {
$i = 0;
- // Ensure each shareKey is labelled with its
+ // Ensure each shareKey is labelled with its
// corresponding userId
foreach ($publicKeys as $userId => $publicKey) {
@@ -476,7 +482,7 @@ class Crypt {
}
- // We encode the iv purely for string manipulation
+ // We encode the iv purely for string manipulation
// purposes - it gets decoded before use
$iv = base64_encode($random);
diff --git a/apps/files_encryption/lib/helper.php b/apps/files_encryption/lib/helper.php
index ebfc00157f7..a754f9f28c4 100755
--- a/apps/files_encryption/lib/helper.php
+++ b/apps/files_encryption/lib/helper.php
@@ -235,16 +235,28 @@ class Helper {
/**
* @brief redirect to a error page
*/
- public static function redirectToErrorPage($session) {
-
- $init = $session->getInitialized();
+ public static function redirectToErrorPage($session, $errorCode = null) {
+
+ if ($errorCode === null) {
+ $init = $session->getInitialized();
+ switch ($init) {
+ case \OCA\Encryption\Session::INIT_EXECUTED:
+ $errorCode = \OCA\Encryption\Crypt::ENCRYPTION_PRIVATE_KEY_NOT_VALID_ERROR;
+ break;
+ case \OCA\Encryption\Session::NOT_INITIALIZED:
+ $errorCode = \OCA\Encryption\Crypt::ENCRYPTION_NOT_INITIALIZED_ERROR;
+ break;
+ default:
+ $errorCode = \OCA\Encryption\Crypt::ENCRYPTION_UNKNOWN_ERROR;
+ }
+ }
$location = \OC_Helper::linkToAbsolute('apps/files_encryption/files', 'error.php');
$post = 0;
if(count($_POST) > 0) {
$post = 1;
}
- header('Location: ' . $location . '?p=' . $post . '&i=' . $init);
+ header('Location: ' . $location . '?p=' . $post . '&errorCode=' . $errorCode);
exit();
}
diff --git a/apps/files_encryption/lib/proxy.php b/apps/files_encryption/lib/proxy.php
index 6f630c83a3f..6dc5c9ce1b8 100644
--- a/apps/files_encryption/lib/proxy.php
+++ b/apps/files_encryption/lib/proxy.php
@@ -38,8 +38,6 @@ class Proxy extends \OC_FileProxy {
private static $blackList = null; //mimetypes blacklisted from encryption
- private static $enableEncryption = null;
-
/**
* Check if a file requires encryption
* @param string $path
@@ -49,46 +47,23 @@ class Proxy extends \OC_FileProxy {
*/
private static function shouldEncrypt($path) {
- if (is_null(self::$enableEncryption)) {
- if (
- \OCP\App::isEnabled('files_encryption') === true
- && Crypt::mode() === 'server'
- ) {
-
- self::$enableEncryption = true;
-
- } else {
-
- self::$enableEncryption = false;
-
- }
-
- }
-
- if (!self::$enableEncryption) {
-
+ if (\OCP\App::isEnabled('files_encryption') === false || Crypt::mode() !== 'server' ||
+ strpos($path, '/' . \OCP\User::getUser() . '/files') !== 0) {
return false;
-
}
if (is_null(self::$blackList)) {
-
self::$blackList = explode(',', \OCP\Config::getAppValue('files_encryption', 'type_blacklist', ''));
-
}
if (Crypt::isCatfileContent($path)) {
-
return true;
-
}
$extension = substr($path, strrpos($path, '.') + 1);
if (array_search($extension, self::$blackList) === false) {
-
return true;
-
}
return false;
@@ -342,6 +317,16 @@ class Proxy extends \OC_FileProxy {
$view = new \OC_FilesystemView('/');
+ $userId = \OCP\User::getUser();
+ $util = new Util($view, $userId);
+
+ // if encryption is no longer enabled or if the files aren't migrated yet
+ // we return the default file size
+ if(!\OCP\App::isEnabled('files_encryption') ||
+ $util->getMigrationStatus() !== Util::MIGRATION_COMPLETED) {
+ return $size;
+ }
+
// if path is a folder do nothing
if ($view->is_dir($path)) {
return $size;
@@ -363,6 +348,15 @@ class Proxy extends \OC_FileProxy {
// if file is encrypted return real file size
if (is_array($fileInfo) && $fileInfo['encrypted'] === true) {
+ // try to fix unencrypted file size if it doesn't look plausible
+ if ((int)$fileInfo['size'] > 0 && (int)$fileInfo['unencrypted_size'] === 0 ) {
+ $fixSize = $util->getFileSize($path);
+ $fileInfo['unencrypted_size'] = $fixSize;
+ // put file info if not .part file
+ if (!Keymanager::isPartialFilePath($relativePath)) {
+ $view->putFileInfo($path, $fileInfo);
+ }
+ }
$size = $fileInfo['unencrypted_size'];
} else {
// self healing if file was removed from file cache
@@ -370,8 +364,6 @@ class Proxy extends \OC_FileProxy {
$fileInfo = array();
}
- $userId = \OCP\User::getUser();
- $util = new Util($view, $userId);
$fixSize = $util->getFileSize($path);
if ($fixSize > 0) {
$size = $fixSize;
diff --git a/apps/files_encryption/lib/stream.php b/apps/files_encryption/lib/stream.php
index 02955bb064e..5ce5caf80ce 100644
--- a/apps/files_encryption/lib/stream.php
+++ b/apps/files_encryption/lib/stream.php
@@ -254,16 +254,20 @@ class Stream {
// If a keyfile already exists
if ($this->encKeyfile) {
+ $shareKey = Keymanager::getShareKey($this->rootView, $this->userId, $this->relPath);
+
// if there is no valid private key return false
if ($this->privateKey === false) {
-
// if private key is not valid redirect user to a error page
- \OCA\Encryption\Helper::redirectToErrorPage();
-
+ \OCA\Encryption\Helper::redirectToErrorPage($this->session);
return false;
}
- $shareKey = Keymanager::getShareKey($this->rootView, $this->userId, $this->relPath);
+ if ($shareKey === false) {
+ // if no share key is available redirect user to a error page
+ \OCA\Encryption\Helper::redirectToErrorPage($this->session, \OCA\Encryption\Crypt::ENCRYPTION_NO_SHARE_KEY_FOUND);
+ return false;
+ }
$this->plainKey = Crypt::multiKeyDecrypt($this->encKeyfile, $shareKey, $this->privateKey);
@@ -506,9 +510,10 @@ class Stream {
// Get all users sharing the file includes current user
$uniqueUserIds = $util->getSharingUsersArray($sharingEnabled, $this->relPath, $this->userId);
+ $checkedUserIds = $util->filterShareReadyUsers($uniqueUserIds);
// Fetch public keys for all sharing users
- $publicKeys = Keymanager::getPublicKeys($this->rootView, $uniqueUserIds);
+ $publicKeys = Keymanager::getPublicKeys($this->rootView, $checkedUserIds['ready']);
// Encrypt enc key for all sharing users
$this->encKeyfiles = Crypt::multiKeyEncrypt($this->plainKey, $publicKeys);
diff --git a/apps/files_encryption/templates/invalid_private_key.php b/apps/files_encryption/templates/invalid_private_key.php
index 9af65f831b4..a3cae60b1da 100644
--- a/apps/files_encryption/templates/invalid_private_key.php
+++ b/apps/files_encryption/templates/invalid_private_key.php
@@ -4,7 +4,7 @@
-
+
p($l->t('Go directly to your ')); ?> t('personal settings')); ?>.
diff --git a/apps/files_encryption/templates/settings-admin.php b/apps/files_encryption/templates/settings-admin.php
index 3a6adc09f4b..231a68b6a58 100644
--- a/apps/files_encryption/templates/settings-admin.php
+++ b/apps/files_encryption/templates/settings-admin.php
@@ -1,10 +1,7 @@