merge master into storage-wrapper

This commit is contained in:
Robin Appelman 2013-06-07 17:12:16 +02:00
commit f35578ec54
1479 changed files with 47310 additions and 54119 deletions

2
.gitignore vendored
View file

@ -76,4 +76,4 @@ nbproject
data-autotest
/tests/coverage*
/tests/autoconfig*
/tests/autotest*
/tests/autotest*

View file

@ -12,6 +12,7 @@ ErrorDocument 404 /core/templates/404.php
php_value upload_max_filesize 513M
php_value post_max_size 513M
php_value memory_limit 512M
php_value mbstring.func_overload 0
<IfModule env_module>
SetEnv htaccessWorking true
</IfModule>

@ -1 +1 @@
Subproject commit a13af72fbe8983686fc47489a750e60319f68ac2
Subproject commit e312294ef62873df2b8c02e774f9dfe1b7fbc38d

View file

@ -12,11 +12,12 @@ If you have questions about how to use ownCloud, please direct these to the [mai
- Apps:
- [Bookmarks](https://github.com/owncloud/bookmarks/issues)
- [Calendar](https://github.com/owncloud/calendar/issues)
- [Contacts](https://github.com/owncloud/contacts/issues)
- [Mail](https://github.com/owncloud/mail/issues)
- [News](https://github.com/owncloud/news/issues)
- [Notes](https://github.com/owncloud/notes/issues)
- [Shorty](https://github.com/owncloud/shorty/issues)
- [other apps](https://github.com/owncloud/apps/issues) (e.g. Contacts, Pictures, Music, ...)
- [other apps](https://github.com/owncloud/apps/issues) (e.g. Pictures, Music, Tasks, ...)
If your issue appears to be a bug, and hasn't been reported, open a new issue.

View file

@ -15,6 +15,14 @@ $mimetype = isset($_GET['mimetype']) ? $_GET['mimetype'] : '';
// make filelist
$files = array();
// If a type other than directory is requested first load them.
if($mimetype && strpos($mimetype, 'httpd/unix-directory') === false) {
foreach( \OC\Files\Filesystem::getDirectoryContent( $dir, 'httpd/unix-directory' ) as $i ) {
$i["date"] = OCP\Util::formatDate($i["mtime"] );
$i['mimetype_icon'] = $i['type'] == 'dir' ? \mimetype_icon('dir'): \mimetype_icon($i['mimetype']);
$files[] = $i;
}
}
foreach( \OC\Files\Filesystem::getDirectoryContent( $dir, $mimetype ) as $i ) {
$i["date"] = OCP\Util::formatDate($i["mtime"] );
$i['mimetype_icon'] = $i['type'] == 'dir' ? \mimetype_icon('dir'): \mimetype_icon($i['mimetype']);

View file

@ -1,26 +1,41 @@
<?php
// Init owncloud
/**
* ownCloud - Core
*
* @author Morris Jobke
* @copyright 2013 Morris Jobke morris.jobke@gmail.com
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
* License as published by the Free Software Foundation; either
* version 3 of the License, or any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
*
* You should have received a copy of the GNU Affero General Public
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
*/
OCP\JSON::checkLoggedIn();
OCP\JSON::callCheck();
// Get data
$dir = stripslashes($_GET["dir"]);
$file = stripslashes($_GET["file"]);
$newname = stripslashes($_GET["newname"]);
$files = new \OCA\Files\App(
\OC\Files\Filesystem::getView(),
\OC_L10n::get('files')
);
$result = $files->rename(
$_GET["dir"],
$_GET["file"],
$_GET["newname"]
);
$l = OC_L10N::get('files');
if ( $newname !== '.' and ($dir != '' || $file != 'Shared') and $newname !== '.') {
$targetFile = \OC\Files\Filesystem::normalizePath($dir . '/' . $newname);
$sourceFile = \OC\Files\Filesystem::normalizePath($dir . '/' . $file);
if(\OC\Files\Filesystem::rename($sourceFile, $targetFile)) {
OCP\JSON::success(array("data" => array( "dir" => $dir, "file" => $file, "newname" => $newname )));
} else {
OCP\JSON::error(array("data" => array( "message" => $l->t("Unable to rename file") )));
}
}else{
OCP\JSON::error(array("data" => array( "message" => $l->t("Unable to rename file") )));
}
if($result['success'] === true){
OCP\JSON::success(array('data' => $result['data']));
} else {
OCP\JSON::error(array('data' => $result['data']));
}

View file

@ -20,4 +20,4 @@ OC_Search::registerProvider('OC_Search_Provider_File');
\OC_Hook::connect('OC_Filesystem', 'post_delete', '\OC\Files\Cache\Updater', 'deleteHook');
\OC_Hook::connect('OC_Filesystem', 'post_rename', '\OC\Files\Cache\Updater', 'renameHook');
\OC_BackgroundJob_RegularTask::register('\OC\Files\Cache\BackgroundWatcher', 'checkNext');
\OCP\BackgroundJob::addRegularTask('\OC\Files\Cache\BackgroundWatcher', 'checkNext');

View file

@ -5,7 +5,8 @@
/* FILE MENU */
.actions { padding:.3em; height:2em; width: 100%; }
.actions input, .actions button, .actions .button { margin:0; float:left; }
.actions .button a { color: #555; }
.actions .button a:hover, .actions .button a:active { color: #333; }
#new {
height:17px; margin:0 0 0 1em; z-index:1010; float:left;
}
@ -34,6 +35,7 @@
background-image:url('%webroot%/core/img/actions/upload.svg');
background-repeat:no-repeat;
background-position:7px 6px;
opacity:0.65;
}
.file_upload_target { display:none; }
.file_upload_form { display:inline; float:left; margin:0; padding:0; cursor:pointer; overflow:visible; }
@ -148,7 +150,7 @@ a.action>img { max-height:16px; max-width:16px; vertical-align:text-bottom; }
#scanning-message{ top:40%; left:40%; position:absolute; display:none; }
div.crumb a{ padding:0.9em 0 0.7em 0; }
div.crumb a{ padding:0.9em 0 0.7em 0; color:#555; }
table.dragshadow {
width:auto;

View file

@ -191,6 +191,13 @@ var FileList={
td.children('a.name').hide();
td.append(form);
input.focus();
//preselect input
var len = input.val().lastIndexOf('.');
if (len === -1) {
len = input.val().length;
}
input.selectRange(0,len);
form.submit(function(event){
event.stopPropagation();
event.preventDefault();

View file

@ -708,14 +708,14 @@ function scanFiles(force, dir){
var scannerEventSource = new OC.EventSource(OC.filePath('files','ajax','scan.php'),{force:force,dir:dir});
scanFiles.cancel = scannerEventSource.close.bind(scannerEventSource);
scannerEventSource.listen('count',function(count){
console.log(count + 'files scanned')
console.log(count + ' files scanned')
});
scannerEventSource.listen('folder',function(path){
console.log('now scanning ' + path)
});
scannerEventSource.listen('done',function(count){
scanFiles.scanning=false;
console.log('done after ' + count + 'files');
console.log('done after ' + count + ' files');
});
}
scanFiles.scanning=false;

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "فشل في نقل الملف %s - يوجد ملف بنفس هذا الاسم",
"Could not move %s" => "فشل في نقل %s",
"Unable to rename file" => "فشل في اعادة تسمية الملف",
"No file was uploaded. Unknown error" => "لم يتم رفع أي ملف , خطأ غير معروف",
"There is no error, the file uploaded with success" => "تم ترفيع الملفات بنجاح.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "حجم الملف المرفوع تجاوز قيمة upload_max_filesize الموجودة في ملف php.ini ",
@ -45,6 +44,7 @@
"{count} folders" => "{count} مجلدات",
"1 file" => "ملف واحد",
"{count} files" => "{count} ملفات",
"Unable to rename file" => "فشل في اعادة تسمية الملف",
"Upload" => "رفع",
"File handling" => "التعامل مع الملف",
"Maximum upload size" => "الحد الأقصى لحجم الملفات التي يمكن رفعها",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s কে স্থানান্তর করা সম্ভব হলো না - এই নামের ফাইল বিদ্যমান",
"Could not move %s" => "%s কে স্থানান্তর করা সম্ভব হলো না",
"Unable to rename file" => "ফাইলের নাম পরিবর্তন করা সম্ভব হলো না",
"No file was uploaded. Unknown error" => "কোন ফাইল আপলোড করা হয় নি। সমস্যার কারণটি অজ্ঞাত।",
"There is no error, the file uploaded with success" => "কোন সমস্যা হয় নি, ফাইল আপলোড সুসম্পন্ন হয়েছে।",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "আপলোড করা ফাইলটি php.ini তে বর্ণিত upload_max_filesize নির্দেশিত আয়তন অতিক্রম করছেঃ",
@ -40,6 +39,7 @@
"{count} folders" => "{count} টি ফোল্ডার",
"1 file" => "১টি ফাইল",
"{count} files" => "{count} টি ফাইল",
"Unable to rename file" => "ফাইলের নাম পরিবর্তন করা সম্ভব হলো না",
"Upload" => "আপলোড",
"File handling" => "ফাইল হ্যার্ডলিং",
"Maximum upload size" => "আপলোডের সর্বোচ্চ আকার",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "No s'ha pogut moure %s - Ja hi ha un fitxer amb aquest nom",
"Could not move %s" => " No s'ha pogut moure %s",
"Unable to rename file" => "No es pot canviar el nom del fitxer",
"No file was uploaded. Unknown error" => "No s'ha carregat cap fitxer. Error desconegut",
"There is no error, the file uploaded with success" => "No hi ha errors, el fitxer s'ha carregat correctament",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Larxiu que voleu carregar supera el màxim definit en la directiva upload_max_filesize del php.ini:",
@ -47,6 +46,8 @@
"{count} folders" => "{count} carpetes",
"1 file" => "1 fitxer",
"{count} files" => "{count} fitxers",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Nom de carpeta no vàlid. L'ús de 'Shared' està reservat per Owncloud",
"Unable to rename file" => "No es pot canviar el nom del fitxer",
"Upload" => "Puja",
"File handling" => "Gestió de fitxers",
"Maximum upload size" => "Mida màxima de pujada",
@ -56,7 +57,7 @@
"0 is unlimited" => "0 és sense límit",
"Maximum input size for ZIP files" => "Mida màxima d'entrada per fitxers ZIP",
"Save" => "Desa",
"New" => "Nova",
"New" => "Nou",
"Text file" => "Fitxer de text",
"Folder" => "Carpeta",
"From link" => "Des d'enllaç",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Nelze přesunout %s - existuje soubor se stejným názvem",
"Could not move %s" => "Nelze přesunout %s",
"Unable to rename file" => "Nelze přejmenovat soubor",
"No file was uploaded. Unknown error" => "Soubor nebyl odeslán. Neznámá chyba",
"There is no error, the file uploaded with success" => "Soubor byl odeslán úspěšně",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Odesílaný soubor přesahuje velikost upload_max_filesize povolenou v php.ini:",
@ -47,6 +46,8 @@
"{count} folders" => "{count} složky",
"1 file" => "1 soubor",
"{count} files" => "{count} soubory",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Tento název složky nelze použít. Použití názvu 'Shared' je ownCloudem rezervováno",
"Unable to rename file" => "Nelze přejmenovat soubor",
"Upload" => "Odeslat",
"File handling" => "Zacházení se soubory",
"Maximum upload size" => "Maximální velikost pro odesílání",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Methwyd symud %s - Mae ffeil gyda'r enw hwn eisoes yn bodoli",
"Could not move %s" => "Methwyd symud %s",
"Unable to rename file" => "Methu ailenwi ffeil",
"No file was uploaded. Unknown error" => "Ni lwythwyd ffeil i fyny. Gwall anhysbys.",
"There is no error, the file uploaded with success" => "Does dim gwall, llwythodd y ffeil i fyny'n llwyddiannus",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Mae'r ffeil lwythwyd i fyny'n fwy na chyfarwyddeb upload_max_filesize yn php.ini:",
@ -47,6 +46,7 @@
"{count} folders" => "{count} plygell",
"1 file" => "1 ffeil",
"{count} files" => "{count} ffeil",
"Unable to rename file" => "Methu ailenwi ffeil",
"Upload" => "Llwytho i fyny",
"File handling" => "Trafod ffeiliau",
"Maximum upload size" => "Maint mwyaf llwytho i fyny",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Kunne ikke flytte %s - der findes allerede en fil med dette navn",
"Could not move %s" => "Kunne ikke flytte %s",
"Unable to rename file" => "Kunne ikke omdøbe fil",
"No file was uploaded. Unknown error" => "Ingen fil blev uploadet. Ukendt fejl.",
"There is no error, the file uploaded with success" => "Der skete ingen fejl, filen blev succesfuldt uploadet",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Den uploadede fil overstiger upload_max_filesize direktivet i php.ini",
@ -47,6 +46,7 @@
"{count} folders" => "{count} mapper",
"1 file" => "1 fil",
"{count} files" => "{count} filer",
"Unable to rename file" => "Kunne ikke omdøbe fil",
"Upload" => "Upload",
"File handling" => "Filhåndtering",
"Maximum upload size" => "Maksimal upload-størrelse",

View file

@ -1,16 +1,15 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s konnte nicht verschoben werden - eine Datei mit diesem Namen existiert bereits.",
"Could not move %s" => "%s konnte nicht verschoben werden",
"Unable to rename file" => "Die Datei konnte nicht umbenannt werden",
"Could not move %s - File with this name already exists" => "Konnte %s nicht verschieben. Eine Datei mit diesem Namen existiert bereits",
"Could not move %s" => "Konnte %s nicht verschieben",
"No file was uploaded. Unknown error" => "Keine Datei hochgeladen. Unbekannter Fehler",
"There is no error, the file uploaded with success" => "Es ist kein Fehler aufgetreten. Die Datei wurde erfolgreich übertragen.",
"There is no error, the file uploaded with success" => "Es ist kein Fehler aufgetreten. Die Datei wurde erfolgreich hochgeladen.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Die hochgeladene Datei überschreitet die upload_max_filesize Vorgabe in php.ini",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Die Datei ist größer, als die MAX_FILE_SIZE Direktive erlaubt, die im HTML-Formular spezifiziert ist",
"The uploaded file was only partially uploaded" => "Die Datei konnte nur teilweise übertragen werden",
"No file was uploaded" => "Keine Datei konnte übertragen werden.",
"Missing a temporary folder" => "Kein temporärer Ordner vorhanden",
"Failed to write to disk" => "Fehler beim Schreiben auf die Festplatte",
"Not enough storage available" => "Nicht genug Speicherplatz verfügbar",
"Not enough storage available" => "Nicht genug Speicher vorhanden.",
"Invalid directory." => "Ungültiges Verzeichnis.",
"Files" => "Dateien",
"Share" => "Teilen",
@ -20,20 +19,20 @@
"Pending" => "Ausstehend",
"{new_name} already exists" => "{new_name} existiert bereits",
"replace" => "ersetzen",
"suggest name" => "Name vorschlagen",
"suggest name" => "Namen vorschlagen",
"cancel" => "abbrechen",
"replaced {new_name} with {old_name}" => "{old_name} ersetzt durch {new_name}",
"undo" => "rückgängig machen",
"perform delete operation" => "Löschvorgang ausführen",
"1 file uploading" => "Eine Datei wird hoch geladen",
"1 file uploading" => "1 Datei wird hochgeladen",
"files uploading" => "Dateien werden hoch geladen",
"'.' is an invalid file name." => "'.' ist kein gültiger Dateiname.",
"File name cannot be empty." => "Der Dateiname darf nicht leer sein.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ungültiger Name, '\\', '/', '<', '>', ':', '\"', '|', '?' und '*' sind nicht zulässig.",
"Your storage is full, files can not be updated or synced anymore!" => "Ihr Speicherplatz ist voll, Dateien können nicht mehr aktualisiert oder synchronisiert werden!",
"Your storage is almost full ({usedSpacePercent}%)" => "Ihr Speicherplatz ist fast aufgebraucht ({usedSpacePercent}%)",
"Your storage is full, files can not be updated or synced anymore!" => "Dein Speicher ist voll, daher können keine Dateien mehr aktualisiert oder synchronisiert werden!",
"Your storage is almost full ({usedSpacePercent}%)" => "Dein Speicher ist fast voll ({usedSpacePercent}%)",
"Your download is being prepared. This might take some time if the files are big." => "Dein Download wird vorbereitet. Dies kann bei größeren Dateien etwas dauern.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Deine Datei kann nicht hochgeladen werden, da sie entweder ein Verzeichnis oder 0 Bytes groß ist.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Deine Datei kann nicht hochgeladen werden, weil es sich um einen Ordner handelt oder 0 Bytes groß ist.",
"Not enough space available" => "Nicht genug Speicherplatz verfügbar",
"Upload cancelled." => "Upload abgebrochen.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Dateiupload läuft. Wenn Du die Seite jetzt verlässt, wird der Upload abgebrochen.",
@ -47,6 +46,8 @@
"{count} folders" => "{count} Ordner",
"1 file" => "1 Datei",
"{count} files" => "{count} Dateien",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Der Ordnername ist ungültig. Nur ownCloud kann den Ordner \"Shared\" anlegen",
"Unable to rename file" => "Konnte Datei nicht umbenennen",
"Upload" => "Hochladen",
"File handling" => "Dateibehandlung",
"Maximum upload size" => "Maximale Upload-Größe",
@ -62,9 +63,9 @@
"From link" => "Von einem Link",
"Deleted files" => "Gelöschte Dateien",
"Cancel upload" => "Upload abbrechen",
"You dont have write permissions here." => "Du besitzt hier keine Schreib-Berechtigung.",
"You dont have write permissions here." => "Du hast hier keine Schreib-Berechtigung.",
"Nothing in here. Upload something!" => "Alles leer. Lade etwas hoch!",
"Download" => "Download",
"Download" => "Herunterladen",
"Unshare" => "Freigabe aufheben",
"Upload too large" => "Der Upload ist zu groß",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Die Datei überschreitet die Maximalgröße für Uploads auf diesem Server.",

View file

@ -1,14 +1,13 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Konnte %s nicht verschieben. Eine Datei mit diesem Namen existiert bereits",
"Could not move %s" => "Konnte %s nicht verschieben",
"Unable to rename file" => "Konnte Datei nicht umbenennen",
"No file was uploaded. Unknown error" => "Keine Datei hochgeladen. Unbekannter Fehler",
"There is no error, the file uploaded with success" => "Es sind keine Fehler aufgetreten. Die Datei wurde erfolgreich hochgeladen.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Die hochgeladene Datei überschreitet die upload_max_filesize Vorgabe in der php.ini:",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Die Datei ist größer, als die MAX_FILE_SIZE Direktive erlaubt, die im HTML-Formular spezifiziert ist",
"There is no error, the file uploaded with success" => "Es ist kein Fehler aufgetreten. Die Datei wurde erfolgreich hochgeladen.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Die hochgeladene Datei überschreitet die upload_max_filesize Vorgabe in php.ini",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Die Datei ist größer, als die MAX_FILE_SIZE Vorgabe erlaubt, die im HTML-Formular spezifiziert ist",
"The uploaded file was only partially uploaded" => "Die Datei konnte nur teilweise übertragen werden",
"No file was uploaded" => "Keine Datei konnte übertragen werden.",
"Missing a temporary folder" => "Der temporäre Ordner fehlt.",
"Missing a temporary folder" => "Kein temporärer Ordner vorhanden",
"Failed to write to disk" => "Fehler beim Schreiben auf die Festplatte",
"Not enough storage available" => "Nicht genug Speicher vorhanden.",
"Invalid directory." => "Ungültiges Verzeichnis.",
@ -20,33 +19,35 @@
"Pending" => "Ausstehend",
"{new_name} already exists" => "{new_name} existiert bereits",
"replace" => "ersetzen",
"suggest name" => "Einen Namen vorschlagen",
"suggest name" => "Namen vorschlagen",
"cancel" => "abbrechen",
"replaced {new_name} with {old_name}" => "{old_name} wurde ersetzt durch {new_name}",
"undo" => "rückgängig machen",
"perform delete operation" => "führe das Löschen aus",
"perform delete operation" => "Löschvorgang ausführen",
"1 file uploading" => "1 Datei wird hochgeladen",
"files uploading" => "Dateien werden hoch geladen",
"'.' is an invalid file name." => "'.' ist kein gültiger Dateiname.",
"File name cannot be empty." => "Der Dateiname darf nicht leer sein.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ungültiger Name! Die Zeichen '\\', '/', '<', '>', ':', '\"', '|', '?' und '*' sind nicht zulässig.",
"Your storage is full, files can not be updated or synced anymore!" => "Ihr Speicher ist voll. Daher können keine Dateien mehr aktualisiert oder synchronisiert werden!",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ungültiger Name, '\\', '/', '<', '>', ':', '\"', '|', '?' und '*' sind nicht zulässig.",
"Your storage is full, files can not be updated or synced anymore!" => "Ihr Speicher ist voll, daher können keine Dateien mehr aktualisiert oder synchronisiert werden!",
"Your storage is almost full ({usedSpacePercent}%)" => "Ihr Speicher ist fast voll ({usedSpacePercent}%)",
"Your download is being prepared. This might take some time if the files are big." => "Ihr Download wird vorbereitet. Dies kann bei größeren Dateien einen Moment dauern.",
"Your download is being prepared. This might take some time if the files are big." => "Ihr Download wird vorbereitet. Dies kann bei größeren Dateien etwas dauern.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Ihre Datei kann nicht hochgeladen werden, weil es sich um einen Ordner handelt oder 0 Bytes groß ist.",
"Not enough space available" => "Nicht genügend Speicherplatz verfügbar",
"Upload cancelled." => "Upload abgebrochen.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Der Dateiupload läuft. Wenn Sie die Seite jetzt verlassen, wird der Upload abgebrochen.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Dateiupload läuft. Wenn Sie die Seite jetzt verlassen, wird der Upload abgebrochen.",
"URL cannot be empty." => "Die URL darf nicht leer sein.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ungültiger Verzeichnisname. Die Nutzung von \"Shared\" ist ownCloud vorbehalten",
"Error" => "Fehler",
"Name" => "Name",
"Size" => "Größe",
"Modified" => "Bearbeitet",
"Modified" => "Geändert",
"1 folder" => "1 Ordner",
"{count} folders" => "{count} Ordner",
"1 file" => "1 Datei",
"{count} files" => "{count} Dateien",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Ungültiger Ordnername. Die Verwendung von \"Shared\" ist ownCloud vorbehalten.",
"Unable to rename file" => "Konnte Datei nicht umbenennen",
"Upload" => "Hochladen",
"File handling" => "Dateibehandlung",
"Maximum upload size" => "Maximale Upload-Größe",
@ -63,12 +64,12 @@
"Deleted files" => "Gelöschte Dateien",
"Cancel upload" => "Upload abbrechen",
"You dont have write permissions here." => "Sie haben hier keine Schreib-Berechtigungen.",
"Nothing in here. Upload something!" => "Alles leer. Bitte laden Sie etwas hoch!",
"Nothing in here. Upload something!" => "Alles leer. Laden Sie etwas hoch!",
"Download" => "Herunterladen",
"Unshare" => "Freigabe aufheben",
"Upload too large" => "Der Upload ist zu groß",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Die Datei überschreitet die Maximalgröße für Uploads auf diesem Server.",
"Files are being scanned, please wait." => "Dateien werden gescannt, bitte warten.",
"Current scanning" => "Scanne",
"Upgrading filesystem cache..." => "Aktualisiere den Dateisystem-Cache..."
"Upgrading filesystem cache..." => "Dateisystem-Cache wird aktualisiert ..."
);

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Αδυναμία μετακίνησης του %s - υπάρχει ήδη αρχείο με αυτό το όνομα",
"Could not move %s" => "Αδυναμία μετακίνησης του %s",
"Unable to rename file" => "Αδυναμία μετονομασίας αρχείου",
"No file was uploaded. Unknown error" => "Δεν ανέβηκε κάποιο αρχείο. Άγνωστο σφάλμα",
"There is no error, the file uploaded with success" => "Δεν υπάρχει σφάλμα, το αρχείο εστάλει επιτυχώς",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Το αρχείο που εστάλει υπερβαίνει την οδηγία μέγιστου επιτρεπτού μεγέθους \"upload_max_filesize\" του php.ini",
@ -47,6 +46,8 @@
"{count} folders" => "{count} φάκελοι",
"1 file" => "1 αρχείο",
"{count} files" => "{count} αρχεία",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Μη έγκυρο όνομα φακέλου. Η χρήση του 'Κοινόχρηστος' χρησιμοποιείται από το ownCloud",
"Unable to rename file" => "Αδυναμία μετονομασίας αρχείου",
"Upload" => "Μεταφόρτωση",
"File handling" => "Διαχείριση αρχείων",
"Maximum upload size" => "Μέγιστο μέγεθος αποστολής",

View file

@ -0,0 +1,3 @@
<?php $TRANSLATIONS = array(
"Download" => "Download"
);

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Ne eblis movi %s: dosiero kun ĉi tiu nomo jam ekzistas",
"Could not move %s" => "Ne eblis movi %s",
"Unable to rename file" => "Ne eblis alinomigi dosieron",
"No file was uploaded. Unknown error" => "Neniu dosiero alŝutiĝis. Nekonata eraro.",
"There is no error, the file uploaded with success" => "Ne estas eraro, la dosiero alŝutiĝis sukcese.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "La dosiero alŝutita superas la regulon upload_max_filesize el php.ini: ",
@ -42,6 +41,7 @@
"{count} folders" => "{count} dosierujoj",
"1 file" => "1 dosiero",
"{count} files" => "{count} dosierujoj",
"Unable to rename file" => "Ne eblis alinomigi dosieron",
"Upload" => "Alŝuti",
"File handling" => "Dosieradministro",
"Maximum upload size" => "Maksimuma alŝutogrando",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "No se puede mover %s - Ya existe un archivo con ese nombre",
"Could not move %s" => "No se puede mover %s",
"Unable to rename file" => "No se puede renombrar el archivo",
"No file was uploaded. Unknown error" => "No se subió ningún archivo. Error desconocido",
"There is no error, the file uploaded with success" => "No hay ningún error, el archivo se ha subido con éxito",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "El archivo que intentas subir sobrepasa el tamaño definido por la variable upload_max_filesize en php.ini",
@ -27,18 +26,18 @@
"perform delete operation" => "Eliminar",
"1 file uploading" => "subiendo 1 archivo",
"files uploading" => "subiendo archivos",
"'.' is an invalid file name." => "'.' es un nombre de archivo inválido.",
"'.' is an invalid file name." => "'.' no es un nombre de archivo válido.",
"File name cannot be empty." => "El nombre de archivo no puede estar vacío.",
"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 esta lleno, los archivos no pueden ser mas actualizados o sincronizados!",
"Your storage is almost full ({usedSpacePercent}%)" => "Su almacenamiento esta lleno en un ({usedSpacePercent}%)",
"Your download is being prepared. This might take some time if the files are big." => "Tu descarga esta siendo preparada. Esto puede tardar algun tiempo si los archivos son muy grandes.",
"Your storage is full, files can not be updated or synced anymore!" => "Su almacenamiento está lleno, ¡no se pueden actualizar ni sincronizar archivos!",
"Your storage is almost full ({usedSpacePercent}%)" => "Su almacenamiento está casi lleno ({usedSpacePercent}%)",
"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 muy grandes.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Imposible subir su archivo, es un directorio o tiene 0 bytes",
"Not enough space available" => "No hay suficiente espacio disponible",
"Upload cancelled." => "Subida cancelada.",
"File upload is in progress. Leaving the page now will cancel the upload." => "La subida del archivo está en proceso. Salir de la página ahora cancelará la subida.",
"File upload is in progress. Leaving the page now will cancel the upload." => "La subida del archivo está en proceso. Si sale de la página ahora, se cancelará la subida.",
"URL cannot be empty." => "La URL no puede estar vacía.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nombre de carpeta invalido. El uso de \"Shared\" esta reservado para Owncloud",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "El nombre de carpeta no es válido. El uso de \"Shared\" está reservado para Owncloud",
"Error" => "Error",
"Name" => "Nombre",
"Size" => "Tamaño",
@ -47,6 +46,8 @@
"{count} folders" => "{count} carpetas",
"1 file" => "1 archivo",
"{count} files" => "{count} archivos",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Nombre de carpeta invalido. El uso de \"Shared\" esta reservado para ownCloud",
"Unable to rename file" => "No se puede renombrar el archivo",
"Upload" => "Subir",
"File handling" => "Tratamiento de archivos",
"Maximum upload size" => "Tamaño máximo de subida",
@ -65,10 +66,10 @@
"You dont have write permissions here." => "No tienes permisos para escribir aquí.",
"Nothing in here. Upload something!" => "Aquí no hay nada. ¡Sube algo!",
"Download" => "Descargar",
"Unshare" => "No compartir",
"Upload too large" => "bida demasido grande",
"Unshare" => "Dejar de compartir",
"Upload too large" => "Subida demasido grande",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Los archivos que estás intentando subir sobrepasan el tamaño máximo permitido por este servidor.",
"Files are being scanned, please wait." => "Se están escaneando los archivos, por favor espere.",
"Current scanning" => "Ahora escaneando",
"Upgrading filesystem cache..." => "Actualizando cache de archivos de sistema"
"Current scanning" => "Escaneo actual",
"Upgrading filesystem cache..." => "Actualizando caché del sistema de archivos"
);

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "No se pudo mover %s - Un archivo con este nombre ya existe",
"Could not move %s" => "No se pudo mover %s ",
"Unable to rename file" => "No fue posible cambiar el nombre al archivo",
"No file was uploaded. Unknown error" => "El archivo no fue subido. Error desconocido",
"There is no error, the file uploaded with success" => "No hay errores, el archivo fue subido con éxito",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "El archivo que intentás subir excede el tamaño definido por upload_max_filesize en el php.ini:",
@ -47,6 +46,8 @@
"{count} folders" => "{count} directorios",
"1 file" => "1 archivo",
"{count} files" => "{count} archivos",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Nombre de carpeta inválido. El uso de \"Shared\" está reservado por ownCloud",
"Unable to rename file" => "No fue posible cambiar el nombre al archivo",
"Upload" => "Subir",
"File handling" => "Tratamiento de archivos",
"Maximum upload size" => "Tamaño máximo de subida",

View file

@ -1,10 +1,9 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Ei saa liigutada faili %s - samanimeline fail on juba olemas",
"Could not move %s" => "%s liigutamine ebaõnnestus",
"Unable to rename file" => "Faili ümbernimetamine ebaõnnestus",
"No file was uploaded. Unknown error" => "Ühtegi faili ei laetud üles. Tundmatu viga",
"There is no error, the file uploaded with success" => "Ühtegi tõrget polnud, fail on üles laetud",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Üleslaetava faili suurus ületab php.ini poolt määratud upload_max_filesize suuruse",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Üleslaetava faili suurus ületab php.ini poolt määratud upload_max_filesize suuruse:",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Üleslaetud fail ületab MAX_FILE_SIZE suuruse, mis on HTML vormi jaoks määratud",
"The uploaded file was only partially uploaded" => "Fail laeti üles ainult osaliselt",
"No file was uploaded" => "Ühtegi faili ei laetud üles",
@ -25,18 +24,18 @@
"replaced {new_name} with {old_name}" => "asendas nime {old_name} nimega {new_name}",
"undo" => "tagasi",
"perform delete operation" => "teosta kustutamine",
"1 file uploading" => "1 faili üleslaadimisel",
"files uploading" => "failide üleslaadimine",
"1 file uploading" => "1 fail üleslaadimisel",
"files uploading" => "faili üleslaadimisel",
"'.' is an invalid file name." => "'.' on vigane failinimi.",
"File name cannot be empty." => "Faili nimi ei saa olla tühi.",
"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 ja sünkroniseerimist ei toimu!",
"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}%)",
"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. ",
"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. ",
"Unable to upload your file as it is a directory or has 0 bytes" => "Faili ei saa üles laadida, kuna see on kaust või selle suurus on 0 baiti",
"Not enough space available" => "Pole piisavalt ruumi",
"Upload cancelled." => "Üleslaadimine tühistati.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Faili üleslaadimine on töös. Lehelt lahkumine katkestab selle üleslaadimise.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Faili üleslaadimine on töös. Lehelt lahkumine katkestab selle üleslaadimise.",
"URL cannot be empty." => "URL ei saa olla tühi.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Vigane kataloogi nimi. 'Shared' kasutamine on reserveeritud ownCloud poolt.",
"Error" => "Viga",
@ -47,6 +46,8 @@
"{count} folders" => "{count} kausta",
"1 file" => "1 fail",
"{count} files" => "{count} faili",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Vigane kausta nimi. 'Shared' kasutamine on reserveeritud ownCloud poolt.",
"Unable to rename file" => "Faili ümbernimetamine ebaõnnestus",
"Upload" => "Lae üles",
"File handling" => "Failide käsitlemine",
"Maximum upload size" => "Maksimaalne üleslaadimise suurus",
@ -68,7 +69,7 @@
"Unshare" => "Lõpeta jagamine",
"Upload too large" => "Üleslaadimine on liiga suur",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Failid, mida sa proovid üles laadida, ületab serveri poolt üleslaetavatele failidele määratud maksimaalse suuruse.",
"Files are being scanned, please wait." => "Faile skannitakse, palun oota",
"Files are being scanned, please wait." => "Faile skannitakse, palun oota.",
"Current scanning" => "Praegune skannimine",
"Upgrading filesystem cache..." => "Uuendan failisüsteemi puhvrit..."
"Upgrading filesystem cache..." => "Failisüsteemi puhvri uuendamine..."
);

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Ezin da %s mugitu - Izen hau duen fitxategia dagoeneko existitzen da",
"Could not move %s" => "Ezin dira fitxategiak mugitu %s",
"Unable to rename file" => "Ezin izan da fitxategia berrizendatu",
"No file was uploaded. Unknown error" => "Ez da fitxategirik igo. Errore ezezaguna",
"There is no error, the file uploaded with success" => "Ez da errorerik egon, fitxategia ongi igo da",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Igotako fitxategiak php.ini fitxategian ezarritako upload_max_filesize muga gainditu du:",
@ -47,6 +46,7 @@
"{count} folders" => "{count} karpeta",
"1 file" => "fitxategi bat",
"{count} files" => "{count} fitxategi",
"Unable to rename file" => "Ezin izan da fitxategia berrizendatu",
"Upload" => "Igo",
"File handling" => "Fitxategien kudeaketa",
"Maximum upload size" => "Igo daitekeen gehienezko tamaina",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s نمی تواند حرکت کند - در حال حاضر پرونده با این نام وجود دارد. ",
"Could not move %s" => "%s نمی تواند حرکت کند ",
"Unable to rename file" => "قادر به تغییر نام پرونده نیست.",
"No file was uploaded. Unknown error" => "هیچ فایلی آپلود نشد.خطای ناشناس",
"There is no error, the file uploaded with success" => "هیچ خطایی نیست بارگذاری پرونده موفقیت آمیز بود",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "پرونده آپلود شده بیش ازدستور ماکزیمم_حجم فایل_برای آپلود در php.ini استفاده کرده است.",
@ -47,6 +46,7 @@
"{count} folders" => "{ شمار} پوشه ها",
"1 file" => "1 پرونده",
"{count} files" => "{ شمار } فایل ها",
"Unable to rename file" => "قادر به تغییر نام پرونده نیست.",
"Upload" => "بارگزاری",
"File handling" => "اداره پرونده ها",
"Maximum upload size" => "حداکثر اندازه بارگزاری",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Kohteen %s siirto ei onnistunut - Tiedosto samalla nimellä on jo olemassa",
"Could not move %s" => "Kohteen %s siirto ei onnistunut",
"Unable to rename file" => "Tiedoston nimeäminen uudelleen ei onnistunut",
"No file was uploaded. Unknown error" => "Tiedostoa ei lähetetty. Tuntematon virhe",
"There is no error, the file uploaded with success" => "Ei virheitä, tiedosto lähetettiin onnistuneesti",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Lähetetyn tiedoston koko ylittää php.ini-tiedoston upload_max_filesize-säännön:",
@ -43,6 +42,7 @@
"{count} folders" => "{count} kansiota",
"1 file" => "1 tiedosto",
"{count} files" => "{count} tiedostoa",
"Unable to rename file" => "Tiedoston nimeäminen uudelleen ei onnistunut",
"Upload" => "Lähetä",
"File handling" => "Tiedostonhallinta",
"Maximum upload size" => "Lähetettävän tiedoston suurin sallittu koko",

View file

@ -1,12 +1,11 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Impossible de déplacer %s - Un fichier possédant ce nom existe déjà",
"Could not move %s" => "Impossible de déplacer %s",
"Unable to rename file" => "Impossible de renommer le fichier",
"No file was uploaded. Unknown error" => "Aucun fichier n'a été chargé. Erreur inconnue",
"There is no error, the file uploaded with success" => "Il n'y a pas d'erreur, le fichier a été envoyé avec succes.",
"No file was uploaded. Unknown error" => "Aucun fichier n'a été envoyé. Erreur inconnue",
"There is no error, the file uploaded with success" => "Aucune erreur, le fichier a été envoyé avec succès.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Le fichier envoyé dépasse la valeur upload_max_filesize située dans le fichier php.ini:",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Le fichier envoyé dépasse la directive MAX_FILE_SIZE qui est spécifiée dans le formulaire HTML.",
"The uploaded file was only partially uploaded" => "Le fichier envoyé n'a été que partiellement envoyé.",
"The uploaded file was only partially uploaded" => "Le fichier n'a été que partiellement envoyé.",
"No file was uploaded" => "Pas de fichier envoyé.",
"Missing a temporary folder" => "Absence de dossier temporaire.",
"Failed to write to disk" => "Erreur d'écriture sur le disque",
@ -25,17 +24,17 @@
"replaced {new_name} with {old_name}" => "{new_name} a été remplacé par {old_name}",
"undo" => "annuler",
"perform delete operation" => "effectuer l'opération de suppression",
"1 file uploading" => "1 fichier en cours de téléchargement",
"files uploading" => "fichiers en cours de téléchargement",
"1 file uploading" => "1 fichier en cours d'envoi",
"files uploading" => "fichiers en cours d'envoi",
"'.' is an invalid file name." => "'.' n'est pas un nom de fichier valide.",
"File name cannot be empty." => "Le nom de fichier ne peut être vide.",
"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}%)",
"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.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Impossible de téléverser votre fichier dans la mesure où il s'agit d'un répertoire ou d'un fichier de taille nulle",
"Unable to upload your file as it is a directory or has 0 bytes" => "Impossible d'envoyer votre fichier dans la mesure où il s'agit d'un répertoire ou d'un fichier de taille nulle",
"Not enough space available" => "Espace disponible insuffisant",
"Upload cancelled." => "Chargement annulé.",
"Upload cancelled." => "Envoi annulé.",
"File upload is in progress. Leaving the page now will cancel the upload." => "L'envoi du fichier est en cours. Quitter cette page maintenant annulera l'envoi du fichier.",
"URL cannot be empty." => "L'URL ne peut-être vide",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nom de dossier invalide. L'utilisation du mot 'Shared' est réservée à Owncloud",
@ -47,6 +46,8 @@
"{count} folders" => "{count} dossiers",
"1 file" => "1 fichier",
"{count} files" => "{count} fichiers",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Nom de dossier invalide. L'utilisation du mot 'Shared' est réservée à Owncloud",
"Unable to rename file" => "Impossible de renommer le fichier",
"Upload" => "Envoyer",
"File handling" => "Gestion des fichiers",
"Maximum upload size" => "Taille max. d'envoi",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Non se moveu %s - Xa existe un ficheiro con ese nome.",
"Could not move %s" => "Non foi posíbel mover %s",
"Unable to rename file" => "Non é posíbel renomear o ficheiro",
"No file was uploaded. Unknown error" => "Non se enviou ningún ficheiro. Produciuse un erro descoñecido.",
"There is no error, the file uploaded with success" => "Non houbo erros, o ficheiro enviouse correctamente",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "O ficheiro enviado excede a directiva indicada por upload_max_filesize de php.ini:",
@ -47,12 +46,14 @@
"{count} folders" => "{count} cartafoles",
"1 file" => "1 ficheiro",
"{count} files" => "{count} ficheiros",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Nome de cartafol incorrecto. O uso de «Compartido» e «Shared» está reservado para o ownClod",
"Unable to rename file" => "Non é posíbel renomear o ficheiro",
"Upload" => "Enviar",
"File handling" => "Manexo de ficheiro",
"Maximum upload size" => "Tamaño máximo do envío",
"max. possible: " => "máx. posíbel: ",
"Needed for multi-file and folder downloads." => "Precísase para a descarga de varios ficheiros e cartafoles.",
"Enable ZIP-download" => "Habilitar a descarga-ZIP",
"Enable ZIP-download" => "Activar a descarga ZIP",
"0 is unlimited" => "0 significa ilimitado",
"Maximum input size for ZIP files" => "Tamaño máximo de descarga para os ficheiros ZIP",
"Save" => "Gardar",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s áthelyezése nem sikerült - már létezik másik fájl ezzel a névvel",
"Could not move %s" => "Nem sikerült %s áthelyezése",
"Unable to rename file" => "Nem lehet átnevezni a fájlt",
"No file was uploaded. Unknown error" => "Nem történt feltöltés. Ismeretlen hiba",
"There is no error, the file uploaded with success" => "A fájlt sikerült feltölteni",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "A feltöltött fájl mérete meghaladja a php.ini állományban megadott upload_max_filesize paraméter értékét.",
@ -47,6 +46,8 @@
"{count} folders" => "{count} mappa",
"1 file" => "1 fájl",
"{count} files" => "{count} fájl",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Érvénytelen mappanév. A 'Shared' az ownCloud számára fenntartott elnevezés",
"Unable to rename file" => "Nem lehet átnevezni a fájlt",
"Upload" => "Feltöltés",
"File handling" => "Fájlkezelés",
"Maximum upload size" => "Maximális feltölthető fájlméret",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Tidak dapat memindahkan %s - Berkas dengan nama ini sudah ada",
"Could not move %s" => "Tidak dapat memindahkan %s",
"Unable to rename file" => "Tidak dapat mengubah nama berkas",
"No file was uploaded. Unknown error" => "Tidak ada berkas yang diunggah. Galat tidak dikenal.",
"There is no error, the file uploaded with success" => "Tidak ada galat, berkas sukses diunggah",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Berkas yang diunggah melampaui direktif upload_max_filesize pada php.ini",
@ -47,6 +46,7 @@
"{count} folders" => "{count} folder",
"1 file" => "1 berkas",
"{count} files" => "{count} berkas",
"Unable to rename file" => "Tidak dapat mengubah nama berkas",
"Upload" => "Unggah",
"File handling" => "Penanganan berkas",
"Maximum upload size" => "Ukuran pengunggahan maksimum",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Gat ekki fært %s - Skrá með þessu nafni er þegar til",
"Could not move %s" => "Gat ekki fært %s",
"Unable to rename file" => "Gat ekki endurskýrt skrá",
"No file was uploaded. Unknown error" => "Engin skrá var send inn. Óþekkt villa.",
"There is no error, the file uploaded with success" => "Engin villa, innsending heppnaðist",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Innsend skrá er stærri en upload_max stillingin í php.ini:",
@ -40,6 +39,7 @@
"{count} folders" => "{count} möppur",
"1 file" => "1 skrá",
"{count} files" => "{count} skrár",
"Unable to rename file" => "Gat ekki endurskýrt skrá",
"Upload" => "Senda inn",
"File handling" => "Meðhöndlun skrár",
"Maximum upload size" => "Hámarks stærð innsendingar",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Impossibile spostare %s - un file con questo nome esiste già",
"Could not move %s" => "Impossibile spostare %s",
"Unable to rename file" => "Impossibile rinominare il file",
"No file was uploaded. Unknown error" => "Nessun file è stato inviato. Errore sconosciuto",
"There is no error, the file uploaded with success" => "Non ci sono errori, il file è stato caricato correttamente",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Il file caricato supera la direttiva upload_max_filesize in php.ini:",
@ -47,6 +46,8 @@
"{count} folders" => "{count} cartelle",
"1 file" => "1 file",
"{count} files" => "{count} file",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Nome della cartella non valido. L'uso di 'Shared' è riservato a ownCloud",
"Unable to rename file" => "Impossibile rinominare il file",
"Upload" => "Carica",
"File handling" => "Gestione file",
"Maximum upload size" => "Dimensione massima upload",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s を移動できませんでした ― この名前のファイルはすでに存在します",
"Could not move %s" => "%s を移動できませんでした",
"Unable to rename file" => "ファイル名の変更ができません",
"No file was uploaded. Unknown error" => "ファイルは何もアップロードされていません。不明なエラー",
"There is no error, the file uploaded with success" => "エラーはありません。ファイルのアップロードは成功しました",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "アップロードされたファイルはphp.ini の upload_max_filesize に設定されたサイズを超えています:",
@ -47,6 +46,8 @@
"{count} folders" => "{count} フォルダ",
"1 file" => "1 ファイル",
"{count} files" => "{count} ファイル",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "無効なフォルダ名です。'Shared' の利用はownCloudで予約済みです",
"Unable to rename file" => "ファイル名の変更ができません",
"Upload" => "アップロード",
"File handling" => "ファイル操作",
"Maximum upload size" => "最大アップロードサイズ",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s –ის გადატანა ვერ მოხერხდა ფაილი ამ სახელით უკვე არსებობს",
"Could not move %s" => "%s –ის გადატანა ვერ მოხერხდა",
"Unable to rename file" => "ფაილის სახელის გადარქმევა ვერ მოხერხდა",
"No file was uploaded. Unknown error" => "ფაილი არ აიტვირთა. უცნობი შეცდომა",
"There is no error, the file uploaded with success" => "ჭოცდომა არ დაფიქსირდა, ფაილი წარმატებით აიტვირთა",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "ატვირთული ფაილი აჭარბებს upload_max_filesize დირექტივას php.ini ფაილში",
@ -47,6 +46,7 @@
"{count} folders" => "{count} საქაღალდე",
"1 file" => "1 ფაილი",
"{count} files" => "{count} ფაილი",
"Unable to rename file" => "ფაილის სახელის გადარქმევა ვერ მოხერხდა",
"Upload" => "ატვირთვა",
"File handling" => "ფაილის დამუშავება",
"Maximum upload size" => "მაქსიმუმ ატვირთის ზომა",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s 항목을 이동시키지 못하였음 - 파일 이름이 이미 존재함",
"Could not move %s" => "%s 항목을 이딩시키지 못하였음",
"Unable to rename file" => "파일 이름바꾸기 할 수 없음",
"No file was uploaded. Unknown error" => "파일이 업로드되지 않았습니다. 알 수 없는 오류입니다",
"There is no error, the file uploaded with success" => "파일 업로드에 성공하였습니다.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "업로드한 파일이 php.ini의 upload_max_filesize보다 큽니다:",
@ -10,9 +9,11 @@
"No file was uploaded" => "파일이 업로드되지 않았음",
"Missing a temporary folder" => "임시 폴더가 없음",
"Failed to write to disk" => "디스크에 쓰지 못했습니다",
"Not enough storage available" => "저장소가 용량이 충분하지 않습니다.",
"Invalid directory." => "올바르지 않은 디렉터리입니다.",
"Files" => "파일",
"Share" => "공유",
"Delete permanently" => "영원히 삭제",
"Delete" => "삭제",
"Rename" => "이름 바꾸기",
"Pending" => "대기 중",
@ -22,7 +23,9 @@
"cancel" => "취소",
"replaced {new_name} with {old_name}" => "{old_name}이(가) {new_name}(으)로 대체됨",
"undo" => "되돌리기",
"perform delete operation" => "삭제 작업중",
"1 file uploading" => "파일 1개 업로드 중",
"files uploading" => "파일 업로드중",
"'.' is an invalid file name." => "'.' 는 올바르지 않은 파일 이름 입니다.",
"File name cannot be empty." => "파일 이름이 비어 있을 수 없습니다.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "폴더 이름이 올바르지 않습니다. 이름에 문자 '\\', '/', '<', '>', ':', '\"', '|', '? ', '*'는 사용할 수 없습니다.",
@ -43,6 +46,7 @@
"{count} folders" => "폴더 {count}개",
"1 file" => "파일 1개",
"{count} files" => "파일 {count}개",
"Unable to rename file" => "파일 이름바꾸기 할 수 없음",
"Upload" => "업로드",
"File handling" => "파일 처리",
"Maximum upload size" => "최대 업로드 크기",
@ -56,7 +60,9 @@
"Text file" => "텍스트 파일",
"Folder" => "폴더",
"From link" => "링크에서",
"Deleted files" => "파일 삭제됨",
"Cancel upload" => "업로드 취소",
"You dont have write permissions here." => "당신은 여기에 쓰기를 할 수 있는 권한이 없습니다.",
"Nothing in here. Upload something!" => "내용이 없습니다. 업로드할 수 있습니다!",
"Download" => "다운로드",
"Unshare" => "공유 해제",

View file

@ -1,12 +1,19 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Nepavyko perkelti %s - failas su tokiu pavadinimu jau egzistuoja",
"Could not move %s" => "Nepavyko perkelti %s",
"No file was uploaded. Unknown error" => "Failai nebuvo įkelti dėl nežinomos priežasties",
"There is no error, the file uploaded with success" => "Failas įkeltas sėkmingai, be klaidų",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Įkeliamas failas yra didesnis nei leidžia upload_max_filesize php.ini faile:",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Įkeliamo failo dydis viršija MAX_FILE_SIZE nustatymą, kuris naudojamas HTML formoje.",
"The uploaded file was only partially uploaded" => "Failas buvo įkeltas tik dalinai",
"No file was uploaded" => "Nebuvo įkeltas joks failas",
"Missing a temporary folder" => "Nėra laikinojo katalogo",
"Failed to write to disk" => "Nepavyko įrašyti į diską",
"Not enough storage available" => "Nepakanka vietos serveryje",
"Invalid directory." => "Neteisingas aplankas",
"Files" => "Failai",
"Share" => "Dalintis",
"Delete permanently" => "Ištrinti negrįžtamai",
"Delete" => "Ištrinti",
"Rename" => "Pervadinti",
"Pending" => "Laukiantis",
@ -16,10 +23,21 @@
"cancel" => "atšaukti",
"replaced {new_name} with {old_name}" => "pakeiskite {new_name} į {old_name}",
"undo" => "anuliuoti",
"perform delete operation" => "ištrinti",
"1 file uploading" => "įkeliamas 1 failas",
"files uploading" => "įkeliami failai",
"'.' is an invalid file name." => "'.' yra neleidžiamas failo pavadinime.",
"File name cannot be empty." => "Failo pavadinimas negali būti tuščias.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Neleistinas pavadinimas, '\\', '/', '<', '>', ':', '\"', '|', '?' ir '*' yra neleidžiami.",
"Your storage is full, files can not be updated or synced anymore!" => "Jūsų visa vieta serveryje užimta",
"Your storage is almost full ({usedSpacePercent}%)" => "Jūsų vieta serveryje beveik visa užimta ({usedSpacePercent}%)",
"Your download is being prepared. This might take some time if the files are big." => "Jūsų atsisiuntimas yra paruošiamas. tai gali užtrukti jei atsisiunčiamas didelis failas.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Neįmanoma įkelti failo - jo dydis gali būti 0 bitų arba tai katalogas",
"Not enough space available" => "Nepakanka vietos",
"Upload cancelled." => "Įkėlimas atšauktas.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Failo įkėlimas pradėtas. Jei paliksite šį puslapį, įkėlimas nutrūks.",
"URL cannot be empty." => "URL negali būti tuščias.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Negalimas aplanko pavadinimas. 'Shared' pavadinimas yra rezervuotas ownCloud",
"Error" => "Klaida",
"Name" => "Pavadinimas",
"Size" => "Dydis",
@ -28,6 +46,8 @@
"{count} folders" => "{count} aplankalai",
"1 file" => "1 failas",
"{count} files" => "{count} failai",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Negalimas aplanko pavadinimas. 'Shared' pavadinimas yra rezervuotas ownCloud",
"Unable to rename file" => "Nepavyko pervadinti failo",
"Upload" => "Įkelti",
"File handling" => "Failų tvarkymas",
"Maximum upload size" => "Maksimalus įkeliamo failo dydis",
@ -40,12 +60,16 @@
"New" => "Naujas",
"Text file" => "Teksto failas",
"Folder" => "Katalogas",
"From link" => "Iš nuorodos",
"Deleted files" => "Ištrinti failai",
"Cancel upload" => "Atšaukti siuntimą",
"You dont have write permissions here." => "Jūs neturite rašymo leidimo.",
"Nothing in here. Upload something!" => "Čia tuščia. Įkelkite ką nors!",
"Download" => "Atsisiųsti",
"Unshare" => "Nebesidalinti",
"Upload too large" => "Įkėlimui failas per didelis",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Bandomų įkelti failų dydis viršija maksimalų, kuris leidžiamas šiame serveryje",
"Files are being scanned, please wait." => "Skenuojami failai, prašome palaukti.",
"Current scanning" => "Šiuo metu skenuojama"
"Current scanning" => "Šiuo metu skenuojama",
"Upgrading filesystem cache..." => "Atnaujinamas sistemos kešavimas..."
);

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Nevarēja pārvietot %s — jau eksistē datne ar tādu nosaukumu",
"Could not move %s" => "Nevarēja pārvietot %s",
"Unable to rename file" => "Nevarēja pārsaukt datni",
"No file was uploaded. Unknown error" => "Netika augšupielādēta neviena datne. Nezināma kļūda",
"There is no error, the file uploaded with success" => "Viss kārtībā, datne augšupielādēta veiksmīga",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Augšupielādētā datne pārsniedz upload_max_filesize norādījumu php.ini datnē:",
@ -46,6 +45,7 @@
"{count} folders" => "{count} mapes",
"1 file" => "1 datne",
"{count} files" => "{count} datnes",
"Unable to rename file" => "Nevarēja pārsaukt datni",
"Upload" => "Augšupielādēt",
"File handling" => "Datņu pārvaldība",
"Maximum upload size" => "Maksimālais datņu augšupielādes apjoms",

View file

@ -1,11 +1,16 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Kan ikke flytte %s - En fil med samme navn finnes allerede",
"Could not move %s" => "Kunne ikke flytte %s",
"No file was uploaded. Unknown error" => "Ingen filer ble lastet opp. Ukjent feil.",
"There is no error, the file uploaded with success" => "Pust ut, ingen feil. Filen ble lastet opp problemfritt",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Filstørrelsen overskrider maksgrensedirektivet upload_max_filesize i php.ini-konfigurasjonen.",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Filen du prøvde å laste opp var større enn grensen satt i MAX_FILE_SIZE i HTML-skjemaet.",
"The uploaded file was only partially uploaded" => "Filen du prøvde å laste opp ble kun delvis lastet opp",
"No file was uploaded" => "Ingen filer ble lastet opp",
"Missing a temporary folder" => "Mangler midlertidig mappe",
"Failed to write to disk" => "Klarte ikke å skrive til disk",
"Not enough storage available" => "Ikke nok lagringsplass",
"Invalid directory." => "Ugyldig katalog.",
"Files" => "Filer",
"Share" => "Del",
"Delete permanently" => "Slett permanent",
@ -18,13 +23,21 @@
"cancel" => "avbryt",
"replaced {new_name} with {old_name}" => "erstatt {new_name} med {old_name}",
"undo" => "angre",
"perform delete operation" => "utfør sletting",
"1 file uploading" => "1 fil lastes opp",
"files uploading" => "filer lastes opp",
"'.' is an invalid file name." => "'.' er et ugyldig filnavn.",
"File name cannot be empty." => "Filnavn kan ikke være tomt.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ugyldig navn, '\\', '/', '<', '>', ':', '\"', '|', '?' og '*' er ikke tillatt.",
"Your storage is full, files can not be updated or synced anymore!" => "Lagringsplass er oppbrukt, filer kan ikke lenger oppdateres eller synkroniseres!",
"Your storage is almost full ({usedSpacePercent}%)" => "Lagringsplass er nesten oppbruker ([usedSpacePercent}%)",
"Your download is being prepared. This might take some time if the files are big." => "Nedlastingen din klargjøres. Hvis filene er store kan dette ta litt tid.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Kan ikke laste opp filen din siden det er en mappe eller den har 0 bytes",
"Not enough space available" => "Ikke nok lagringsplass",
"Upload cancelled." => "Opplasting avbrutt.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Filopplasting pågår. Forlater du siden nå avbrytes opplastingen.",
"URL cannot be empty." => "URL-en kan ikke være tom.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ugyldig mappenavn. Bruk av \"Shared\" er reservert av ownCloud.",
"Error" => "Feil",
"Name" => "Navn",
"Size" => "Størrelse",
@ -33,6 +46,8 @@
"{count} folders" => "{count} mapper",
"1 file" => "1 fil",
"{count} files" => "{count} filer",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Ugyldig mappenavn. Bruk av \"Shared\" er reservert av ownCloud.",
"Unable to rename file" => "Kan ikke gi nytt navn",
"Upload" => "Last opp",
"File handling" => "Filhåndtering",
"Maximum upload size" => "Maksimum opplastingsstørrelse",
@ -46,12 +61,15 @@
"Text file" => "Tekstfil",
"Folder" => "Mappe",
"From link" => "Fra link",
"Deleted files" => "Slettet filer",
"Cancel upload" => "Avbryt opplasting",
"You dont have write permissions here." => "Du har ikke skrivetilgang her.",
"Nothing in here. Upload something!" => "Ingenting her. Last opp noe!",
"Download" => "Last ned",
"Unshare" => "Avslutt deling",
"Upload too large" => "Filen er for stor",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Filene du prøver å laste opp er for store for å laste opp til denne serveren.",
"Files are being scanned, please wait." => "Skanner etter filer, vennligst vent.",
"Current scanning" => "Pågående skanning"
"Current scanning" => "Pågående skanning",
"Upgrading filesystem cache..." => "Oppgraderer filsystemets mellomlager..."
);

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Kon %s niet verplaatsen - Er bestaat al een bestand met deze naam",
"Could not move %s" => "Kon %s niet verplaatsen",
"Unable to rename file" => "Kan bestand niet hernoemen",
"No file was uploaded. Unknown error" => "Er was geen bestand geladen. Onbekende fout",
"There is no error, the file uploaded with success" => "De upload van het bestand is goedgegaan.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Het geüploade bestand overscheidt de upload_max_filesize optie in php.ini:",
@ -47,6 +46,8 @@
"{count} folders" => "{count} mappen",
"1 file" => "1 bestand",
"{count} files" => "{count} bestanden",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Ongeldige mapnaam. Gebruik van 'Gedeeld' is voorbehouden aan Owncloud zelf",
"Unable to rename file" => "Kan bestand niet hernoemen",
"Upload" => "Uploaden",
"File handling" => "Bestand",
"Maximum upload size" => "Maximale bestandsgrootte voor uploads",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Klarte ikkje å flytta %s det finst allereie ei fil med dette namnet",
"Could not move %s" => "Klarte ikkje å flytta %s",
"Unable to rename file" => "Klarte ikkje å endra filnamnet",
"Could not move %s - File with this name already exists" => "Klarte ikkje flytta %s det finst allereie ei fil med dette namnet",
"Could not move %s" => "Klarte ikkje flytta %s",
"No file was uploaded. Unknown error" => "Ingen filer lasta opp. Ukjend feil",
"There is no error, the file uploaded with success" => "Ingen feil, fila vart lasta opp",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Fila du lasta opp er større enn det «upload_max_filesize» i php.ini tillater: ",
@ -9,7 +8,7 @@
"The uploaded file was only partially uploaded" => "Fila vart berre delvis lasta opp",
"No file was uploaded" => "Ingen filer vart lasta opp",
"Missing a temporary folder" => "Manglar ei mellombels mappe",
"Failed to write to disk" => "Klarte ikkje å skriva til disk",
"Failed to write to disk" => "Klarte ikkje skriva til disk",
"Not enough storage available" => "Ikkje nok lagringsplass tilgjengeleg",
"Invalid directory." => "Ugyldig mappe.",
"Files" => "Filer",
@ -33,11 +32,11 @@
"Your storage is full, files can not be updated or synced anymore!" => "Lagringa di er full, kan ikkje lenger oppdatera eller synkronisera!",
"Your storage is almost full ({usedSpacePercent}%)" => "Lagringa di er nesten full ({usedSpacePercent} %)",
"Your download is being prepared. This might take some time if the files are big." => "Gjer klar nedlastinga di. Dette kan ta ei stund viss filene er store.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Klarte ikkje å lasta opp fila sidan ho er ei mappe eller er på 0 byte",
"Unable to upload your file as it is a directory or has 0 bytes" => "Klarte ikkje lasta opp fila sidan ho er ei mappe eller er på 0 byte",
"Not enough space available" => "Ikkje nok lagringsplass tilgjengeleg",
"Upload cancelled." => "Opplasting avbroten.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Fila lastar no opp. Viss du forlèt sida no vil opplastinga bli avbroten.",
"URL cannot be empty." => "URL-en kan ikkje vera tom.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Fila lastar no opp. Viss du forlèt sida no vil opplastinga verta avbroten.",
"URL cannot be empty." => "Nettadressa kan ikkje vera tom.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ugyldig mappenamn. Mappa «Shared» er reservert av ownCloud",
"Error" => "Feil",
"Name" => "Namn",
@ -47,12 +46,14 @@
"{count} folders" => "{count} mapper",
"1 file" => "1 fil",
"{count} files" => "{count} filer",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Ugyldig mappenamn. Mappa «Shared» er reservert av ownCloud",
"Unable to rename file" => "Klarte ikkje endra filnamnet",
"Upload" => "Last opp",
"File handling" => "Filhandtering",
"Maximum upload size" => "Maksimal opplastingsstorleik",
"max. possible: " => "maks. moglege:",
"Needed for multi-file and folder downloads." => "Naudsynt for fleirfils- og mappenedlastingar.",
"Enable ZIP-download" => "Skru på ZIP-nedlasting",
"Needed for multi-file and folder downloads." => "Nødvendig for fleirfils- og mappenedlastingar.",
"Enable ZIP-download" => "S på ZIP-nedlasting",
"0 is unlimited" => "0 er ubegrensa",
"Maximum input size for ZIP files" => "Maksimal storleik for ZIP-filer",
"Save" => "Lagre",
@ -67,7 +68,7 @@
"Download" => "Last ned",
"Unshare" => "Udel",
"Upload too large" => "For stor opplasting",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Filene du prøver å laste opp er større enn maksgrensa til denne tenaren.",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Filene du prøver å lasta opp er større enn maksgrensa til denne tenaren.",
"Files are being scanned, please wait." => "Skannar filer, ver venleg og vent.",
"Current scanning" => "Køyrande skanning",
"Upgrading filesystem cache..." => "Oppgraderer mellomlageret av filsystemet …"

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Nie można było przenieść %s - Plik o takiej nazwie już istnieje",
"Could not move %s" => "Nie można było przenieść %s",
"Unable to rename file" => "Nie można zmienić nazwy pliku",
"No file was uploaded. Unknown error" => "Żaden plik nie został załadowany. Nieznany błąd",
"There is no error, the file uploaded with success" => "Nie było błędów, plik wysłano poprawnie.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Wgrany plik przekracza wartość upload_max_filesize zdefiniowaną w php.ini: ",
@ -47,6 +46,8 @@
"{count} folders" => "Ilość folderów: {count}",
"1 file" => "1 plik",
"{count} files" => "Ilość plików: {count}",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Nieprawidłowa nazwa folderu. Wykorzystanie 'Shared' jest zarezerwowane przez ownCloud",
"Unable to rename file" => "Nie można zmienić nazwy pliku",
"Upload" => "Wyślij",
"File handling" => "Zarządzanie plikami",
"Maximum upload size" => "Maksymalny rozmiar wysyłanego pliku",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Impossível mover %s - Um arquivo com este nome já existe",
"Could not move %s" => "Impossível mover %s",
"Unable to rename file" => "Impossível renomear arquivo",
"No file was uploaded. Unknown error" => "Nenhum arquivo foi enviado. Erro desconhecido",
"There is no error, the file uploaded with success" => "Sem erros, o arquivo foi enviado com sucesso",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "O arquivo enviado excede a diretiva upload_max_filesize no php.ini: ",
@ -47,6 +46,8 @@
"{count} folders" => "{count} pastas",
"1 file" => "1 arquivo",
"{count} files" => "{count} arquivos",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Nome de pasta inválido. O uso do nome 'Compartilhado' é reservado ao ownCloud",
"Unable to rename file" => "Impossível renomear arquivo",
"Upload" => "Upload",
"File handling" => "Tratamento de Arquivo",
"Maximum upload size" => "Tamanho máximo para carregar",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Não foi possível mover o ficheiro %s - Já existe um ficheiro com esse nome",
"Could not move %s" => "Não foi possível move o ficheiro %s",
"Unable to rename file" => "Não foi possível renomear o ficheiro",
"No file was uploaded. Unknown error" => "Nenhum ficheiro foi carregado. Erro desconhecido",
"There is no error, the file uploaded with success" => "Não ocorreram erros, o ficheiro foi submetido com sucesso",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "O ficheiro enviado excede o limite permitido na directiva do php.ini upload_max_filesize",
@ -47,6 +46,8 @@
"{count} folders" => "{count} pastas",
"1 file" => "1 ficheiro",
"{count} files" => "{count} ficheiros",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Nome da pasta inválido. Palavra 'Shared' é reservado pela ownCloud",
"Unable to rename file" => "Não foi possível renomear o ficheiro",
"Upload" => "Carregar",
"File handling" => "Manuseamento de ficheiros",
"Maximum upload size" => "Tamanho máximo de envio",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Nu se poate de mutat %s - Fișier cu acest nume deja există",
"Could not move %s" => "Nu s-a putut muta %s",
"Unable to rename file" => "Nu s-a putut redenumi fișierul",
"No file was uploaded. Unknown error" => "Nici un fișier nu a fost încărcat. Eroare necunoscută",
"There is no error, the file uploaded with success" => "Nu a apărut nici o eroare, fișierul a fost încărcat cu succes",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Fisierul incarcat depaseste upload_max_filesize permisi in php.ini: ",
@ -47,6 +46,7 @@
"{count} folders" => "{count} foldare",
"1 file" => "1 fisier",
"{count} files" => "{count} fisiere",
"Unable to rename file" => "Nu s-a putut redenumi fișierul",
"Upload" => "Încărcare",
"File handling" => "Manipulare fișiere",
"Maximum upload size" => "Dimensiune maximă admisă la încărcare",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Невозможно переместить %s - файл с таким именем уже существует",
"Could not move %s" => "Невозможно переместить %s",
"Unable to rename file" => "Невозможно переименовать файл",
"No file was uploaded. Unknown error" => "Файл не был загружен. Неизвестная ошибка",
"There is no error, the file uploaded with success" => "Файл загружен успешно.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Файл превышает размер установленный upload_max_filesize в php.ini:",
@ -47,6 +46,8 @@
"{count} folders" => "{count} папок",
"1 file" => "1 файл",
"{count} files" => "{count} файлов",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Неправильное имя каталога. Имя 'Shared' зарезервировано.",
"Unable to rename file" => "Невозможно переименовать файл",
"Upload" => "Загрузка",
"File handling" => "Управление файлами",
"Maximum upload size" => "Максимальный размер загружаемого файла",

View file

@ -1,71 +1,16 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Неполучается перенести %s - Файл с таким именем уже существует",
"Could not move %s" => "Неполучается перенести %s ",
"Unable to rename file" => "Невозможно переименовать файл",
"No file was uploaded. Unknown error" => "Файл не был загружен. Неизвестная ошибка",
"There is no error, the file uploaded with success" => "Ошибка отсутствует, файл загружен успешно.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Размер загружаемого файла превышает upload_max_filesize директиву в php.ini:",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Размер загруженного",
"The uploaded file was only partially uploaded" => "Загружаемый файл был загружен частично",
"There is no error, the file uploaded with success" => "Ошибки нет, файл успешно загружен",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Размер загружаемого файла превысил максимально допустимый в директиве MAX_FILE_SIZE, специфицированной в HTML-форме",
"The uploaded file was only partially uploaded" => "Загружаемый файл был загружен лишь частично",
"No file was uploaded" => "Файл не был загружен",
"Missing a temporary folder" => "Отсутствует временная папка",
"Missing a temporary folder" => "Отсутствие временной папки",
"Failed to write to disk" => "Не удалось записать на диск",
"Not enough storage available" => "Недостаточно места в хранилище",
"Invalid directory." => "Неверный каталог.",
"Files" => "Файлы",
"Share" => "Сделать общим",
"Delete permanently" => "Удалить навсегда",
"Delete" => "Удалить",
"Rename" => "Переименовать",
"Pending" => "Ожидающий решения",
"{new_name} already exists" => "{новое_имя} уже существует",
"replace" => "отмена",
"suggest name" => "подобрать название",
"cancel" => "отменить",
"replaced {new_name} with {old_name}" => "заменено {новое_имя} с {старое_имя}",
"undo" => "отменить действие",
"perform delete operation" => "выполняется процесс удаления",
"1 file uploading" => "загрузка 1 файла",
"'.' is an invalid file name." => "'.' является неверным именем файла.",
"File name cannot be empty." => "Имя файла не может быть пустым.",
"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}%)",
"Your download is being prepared. This might take some time if the files are big." => "Идёт подготовка к скачке Вашего файла. Это может занять некоторое время, если фалы большие.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Невозможно загрузить файл,\n так как он имеет нулевой размер или является директорией",
"Not enough space available" => "Не достаточно свободного места",
"Upload cancelled." => "Загрузка отменена",
"File upload is in progress. Leaving the page now will cancel the upload." => "Процесс загрузки файла. Если покинуть страницу сейчас, загрузка будет отменена.",
"URL cannot be empty." => "URL не должен быть пустым.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Неверное имя папки. Использование наименования 'Опубликовано' зарезервировано Owncloud",
"Error" => "Ошибка",
"Name" => "Имя",
"Size" => "Размер",
"Modified" => "Изменен",
"1 folder" => "1 папка",
"{count} folders" => "{количество} папок",
"1 file" => "1 файл",
"{count} files" => "{количество} файлов",
"Upload" => "Загрузить ",
"File handling" => "Работа с файлами",
"Maximum upload size" => "Максимальный размер загружаемого файла",
"max. possible: " => "Максимально возможный",
"Needed for multi-file and folder downloads." => "Необходимо для множественной загрузки.",
"Enable ZIP-download" => "Включение ZIP-загрузки",
"0 is unlimited" => "0 без ограничений",
"Maximum input size for ZIP files" => "Максимальный размер входящих ZIP-файлов ",
"Save" => "Сохранить",
"New" => "Новый",
"Text file" => "Текстовый файл",
"Folder" => "Папка",
"From link" => "По ссылке",
"Cancel upload" => "Отмена загрузки",
"Nothing in here. Upload something!" => "Здесь ничего нет. Загрузите что-нибудь!",
"Download" => "Загрузить",
"Unshare" => "Скрыть",
"Upload too large" => "Загрузка слишком велика",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Размер файлов, которые Вы пытаетесь загрузить, превышает максимально допустимый размер для загрузки на данный сервер.",
"Files are being scanned, please wait." => "Файлы сканируются, пожалуйста, подождите.",
"Current scanning" => "Текущее сканирование",
"Upgrading filesystem cache..." => "Обновление кэша файловой системы... "
"Download" => "Загрузка"
);

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Nie je možné presunúť %s - súbor s týmto menom už existuje",
"Could not move %s" => "Nie je možné presunúť %s",
"Unable to rename file" => "Nemožno premenovať súbor",
"No file was uploaded. Unknown error" => "Žiaden súbor nebol odoslaný. Neznáma chyba",
"There is no error, the file uploaded with success" => "Nenastala žiadna chyba, súbor bol úspešne nahraný",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Nahraný súbor predčil konfiguračnú direktívu upload_max_filesize v súbore php.ini:",
@ -47,6 +46,8 @@
"{count} folders" => "{count} priečinkov",
"1 file" => "1 súbor",
"{count} files" => "{count} súborov",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Neplatný názov priečinka. Názov \"Shared\" je rezervovaný pre ownCloud",
"Unable to rename file" => "Nemožno premenovať súbor",
"Upload" => "Odoslať",
"File handling" => "Nastavenie správania sa k súborom",
"Maximum upload size" => "Maximálna veľkosť odosielaného súboru",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Ni mogoče premakniti %s - datoteka s tem imenom že obstaja",
"Could not move %s" => "Ni mogoče premakniti %s",
"Unable to rename file" => "Ni mogoče preimenovati datoteke",
"No file was uploaded. Unknown error" => "Ni poslane datoteke. Neznana napaka.",
"There is no error, the file uploaded with success" => "Datoteka je uspešno naložena.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Poslana datoteka presega dovoljeno velikost, ki je določena z možnostjo upload_max_filesize v datoteki php.ini:",
@ -47,6 +46,7 @@
"{count} folders" => "{count} map",
"1 file" => "1 datoteka",
"{count} files" => "{count} datotek",
"Unable to rename file" => "Ni mogoče preimenovati datoteke",
"Upload" => "Pošlji",
"File handling" => "Upravljanje z datotekami",
"Maximum upload size" => "Največja velikost za pošiljanja",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s nuk u spostua - Aty ekziston një skedar me të njëjtin emër",
"Could not move %s" => "%s nuk u spostua",
"Unable to rename file" => "Nuk është i mundur riemërtimi i skedarit",
"No file was uploaded. Unknown error" => "Nuk u ngarkua asnjë skedar. Veprim i gabuar i panjohur",
"There is no error, the file uploaded with success" => "Nuk pati veprime të gabuara, skedari u ngarkua me sukses",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Skedari i ngarkuar tejkalon udhëzimin upload_max_filesize tek php.ini:",
@ -47,6 +46,7 @@
"{count} folders" => "{count} dosje",
"1 file" => "1 skedar",
"{count} files" => "{count} skedarë",
"Unable to rename file" => "Nuk është i mundur riemërtimi i skedarit",
"Upload" => "Ngarko",
"File handling" => "Trajtimi i skedarit",
"Maximum upload size" => "Dimensioni maksimal i ngarkimit",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Не могу да преместим %s датотека с овим именом већ постоји",
"Could not move %s" => "Не могу да преместим %s",
"Unable to rename file" => "Не могу да преименујем датотеку",
"No file was uploaded. Unknown error" => "Ниједна датотека није отпремљена услед непознате грешке",
"There is no error, the file uploaded with success" => "Није дошло до грешке. Датотека је успешно отпремљена.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Отпремљена датотека прелази смерницу upload_max_filesize у датотеци php.ini:",
@ -47,6 +46,7 @@
"{count} folders" => "{count} фасцикле/и",
"1 file" => "1 датотека",
"{count} files" => "{count} датотеке/а",
"Unable to rename file" => "Не могу да преименујем датотеку",
"Upload" => "Отпреми",
"File handling" => "Управљање датотекама",
"Maximum upload size" => "Највећа величина датотеке",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Kunde inte flytta %s - Det finns redan en fil med detta namn",
"Could not move %s" => "Kan inte flytta %s",
"Unable to rename file" => "Kan inte byta namn på filen",
"No file was uploaded. Unknown error" => "Ingen fil uppladdad. Okänt fel",
"There is no error, the file uploaded with success" => "Inga fel uppstod. Filen laddades upp utan problem.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Den uppladdade filen överskrider upload_max_filesize direktivet php.ini:",
@ -47,6 +46,8 @@
"{count} folders" => "{count} mappar",
"1 file" => "1 fil",
"{count} files" => "{count} filer",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "Ogiltigt mappnamn. Användning av 'Shared' är reserverad av ownCloud",
"Unable to rename file" => "Kan inte byta namn på filen",
"Upload" => "Ladda upp",
"File handling" => "Filhantering",
"Maximum upload size" => "Maximal storlek att ladda upp",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "ไม่สามารถย้าย %s ได้ - ไฟล์ที่ใช้ชื่อนี้มีอยู่แล้ว",
"Could not move %s" => "ไม่สามารถย้าย %s ได้",
"Unable to rename file" => "ไม่สามารถเปลี่ยนชื่อไฟล์ได้",
"No file was uploaded. Unknown error" => "ยังไม่มีไฟล์ใดที่ถูกอัพโหลด เกิดข้อผิดพลาดที่ไม่ทราบสาเหตุ",
"There is no error, the file uploaded with success" => "ไม่พบข้อผิดพลาดใดๆ, ไฟล์ถูกอัพโหลดเรียบร้อยแล้ว",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "ขนาดไฟล์ที่อัพโหลดมีขนาดเกิน upload_max_filesize ที่ระบุไว้ใน php.ini",
@ -46,6 +45,7 @@
"{count} folders" => "{count} โฟลเดอร์",
"1 file" => "1 ไฟล์",
"{count} files" => "{count} ไฟล์",
"Unable to rename file" => "ไม่สามารถเปลี่ยนชื่อไฟล์ได้",
"Upload" => "อัพโหลด",
"File handling" => "การจัดกาไฟล์",
"Maximum upload size" => "ขนาดไฟล์สูงสุดที่อัพโหลดได้",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s taşınamadı. Bu isimde dosya zaten var.",
"Could not move %s" => "%s taşınamadı",
"Unable to rename file" => "Dosya adı değiştirilemedi",
"No file was uploaded. Unknown error" => "Dosya yüklenmedi. Bilinmeyen hata",
"There is no error, the file uploaded with success" => "Dosya başarıyla yüklendi, hata oluşmadı",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "php.ini dosyasında upload_max_filesize ile belirtilen dosya yükleme sınırııldı.",
@ -47,6 +46,8 @@
"{count} folders" => "{count} dizin",
"1 file" => "1 dosya",
"{count} files" => "{count} dosya",
"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.",
"Unable to rename file" => "Dosya adı değiştirilemedi",
"Upload" => "Yükle",
"File handling" => "Dosya taşıma",
"Maximum upload size" => "Maksimum yükleme boyutu",

44
apps/files/l10n/ug.php Normal file
View file

@ -0,0 +1,44 @@
<?php $TRANSLATIONS = array(
"Could not move %s" => "%s يۆتكىيەلمەيدۇ",
"No file was uploaded. Unknown error" => "ھېچقانداق ھۆججەت يۈكلەنمىدى. يوچۇن خاتالىق",
"No file was uploaded" => "ھېچقانداق ھۆججەت يۈكلەنمىدى",
"Missing a temporary folder" => "ۋاقىتلىق قىسقۇچ كەم.",
"Failed to write to disk" => "دىسكىغا يازالمىدى",
"Not enough storage available" => "يېتەرلىك ساقلاش بوشلۇقى يوق",
"Files" => "ھۆججەتلەر",
"Share" => "ھەمبەھىر",
"Delete permanently" => "مەڭگۈلۈك ئۆچۈر",
"Delete" => "ئۆچۈر",
"Rename" => "ئات ئۆزگەرت",
"Pending" => "كۈتۈۋاتىدۇ",
"{new_name} already exists" => "{new_name} مەۋجۇت",
"replace" => "ئالماشتۇر",
"suggest name" => "تەۋسىيە ئات",
"cancel" => "ۋاز كەچ",
"undo" => "يېنىۋال",
"1 file uploading" => "1 ھۆججەت يۈكلىنىۋاتىدۇ",
"files uploading" => "ھۆججەت يۈكلىنىۋاتىدۇ",
"Not enough space available" => "يېتەرلىك بوشلۇق يوق",
"Upload cancelled." => "يۈكلەشتىن ۋاز كەچتى.",
"File upload is in progress. Leaving the page now will cancel the upload." => "ھۆججەت يۈكلەش مەشغۇلاتى ئېلىپ بېرىلىۋاتىدۇ. Leaving the page now will cancel the upload.",
"Error" => "خاتالىق",
"Name" => "ئاتى",
"Size" => "چوڭلۇقى",
"Modified" => "ئۆزگەرتكەن",
"1 folder" => "1 قىسقۇچ",
"1 file" => "1 ھۆججەت",
"{count} files" => "{count} ھۆججەت",
"Unable to rename file" => "ھۆججەت ئاتىنى ئۆزگەرتكىلى بولمايدۇ",
"Upload" => "يۈكلە",
"Save" => "ساقلا",
"New" => "يېڭى",
"Text file" => "تېكىست ھۆججەت",
"Folder" => "قىسقۇچ",
"Deleted files" => "ئۆچۈرۈلگەن ھۆججەتلەر",
"Cancel upload" => "يۈكلەشتىن ۋاز كەچ",
"Nothing in here. Upload something!" => "بۇ جايدا ھېچنېمە يوق. Upload something!",
"Download" => "چۈشۈر",
"Unshare" => "ھەمبەھىرلىمە",
"Upload too large" => "يۈكلەندىغىنى بەك چوڭ",
"Upgrading filesystem cache..." => "ھۆججەت سىستېما غەملىكىنى يۈكسەلدۈرۈۋاتىدۇ…"
);

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Не вдалося перемістити %s - Файл з таким ім'ям вже існує",
"Could not move %s" => "Не вдалося перемістити %s",
"Unable to rename file" => "Не вдалося перейменувати файл",
"No file was uploaded. Unknown error" => "Не завантажено жодного файлу. Невідома помилка",
"There is no error, the file uploaded with success" => "Файл успішно вивантажено без помилок.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Розмір звантаження перевищує upload_max_filesize параметра в php.ini: ",
@ -47,6 +46,7 @@
"{count} folders" => "{count} папок",
"1 file" => "1 файл",
"{count} files" => "{count} файлів",
"Unable to rename file" => "Не вдалося перейменувати файл",
"Upload" => "Вивантажити",
"File handling" => "Робота з файлами",
"Maximum upload size" => "Максимальний розмір відвантажень",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Không thể di chuyển %s - Đã có tên file này trên hệ thống",
"Could not move %s - File with this name already exists" => "Không thể di chuyển %s - Đã có tên tập tin này trên hệ thống",
"Could not move %s" => "Không thể di chuyển %s",
"Unable to rename file" => "Không thể đổi tên file",
"No file was uploaded. Unknown error" => "Không có tập tin nào được tải lên. Lỗi không xác định",
"There is no error, the file uploaded with success" => "Không có lỗi, các tập tin đã được tải lên thành công",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "The uploaded file exceeds the upload_max_filesize directive in php.ini: ",
@ -34,6 +33,7 @@
"Your storage is almost full ({usedSpacePercent}%)" => "Your storage is almost full ({usedSpacePercent}%)",
"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.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Không thể tải lên tập tin của bạn ,nó như là một thư mục hoặc có 0 byte",
"Not enough space available" => "Không đủ chỗ trống cần thiết",
"Upload cancelled." => "Hủy tải lên",
"File upload is in progress. Leaving the page now will cancel the upload." => "Tập tin tải lên đang được xử lý. Nếu bạn rời khỏi trang bây giờ sẽ hủy quá trình này.",
"URL cannot be empty." => "URL không được để trống.",
@ -46,6 +46,7 @@
"{count} folders" => "{count} thư mục",
"1 file" => "1 tập tin",
"{count} files" => "{count} tập tin",
"Unable to rename file" => "Không thể đổi tên file",
"Upload" => "Tải lên",
"File handling" => "Xử lý tập tin",
"Maximum upload size" => "Kích thước tối đa ",
@ -61,6 +62,7 @@
"From link" => "Từ liên kết",
"Deleted files" => "File đã bị xóa",
"Cancel upload" => "Hủy upload",
"You dont have write permissions here." => "Bạn không có quyền ghi vào đây.",
"Nothing in here. Upload something!" => "Không có gì ở đây .Hãy tải lên một cái gì đó !",
"Download" => "Tải về",
"Unshare" => "Bỏ chia sẻ",
@ -68,5 +70,5 @@
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Các tập tin bạn đang tải lên vượt quá kích thước tối đa cho phép trên máy chủ .",
"Files are being scanned, please wait." => "Tập tin đang được quét ,vui lòng chờ.",
"Current scanning" => "Hiện tại đang quét",
"Upgrading filesystem cache..." => "Upgrading filesystem cache..."
"Upgrading filesystem cache..." => "Đang nâng cấp bộ nhớ đệm cho tập tin hệ thống..."
);

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "无法移动 %s - 同名文件已存在",
"Could not move %s" => "无法移动 %s",
"Unable to rename file" => "无法重命名文件",
"No file was uploaded. Unknown error" => "没有文件被上传。未知错误",
"There is no error, the file uploaded with success" => "文件上传成功,没有错误发生",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "上传文件大小已超过php.ini中upload_max_filesize所规定的值",
@ -47,6 +46,8 @@
"{count} folders" => "{count} 个文件夹",
"1 file" => "1 个文件",
"{count} files" => "{count} 个文件",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "无效的文件夹名。”Shared“ 是 Owncloud 预留的文件夹",
"Unable to rename file" => "无法重命名文件",
"Upload" => "上传",
"File handling" => "文件处理",
"Maximum upload size" => "最大上传大小",

View file

@ -1,7 +1,6 @@
<?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "無法移動 %s - 同名的檔案已經存在",
"Could not move %s" => "無法移動 %s",
"Unable to rename file" => "無法重新命名檔案",
"No file was uploaded. Unknown error" => "沒有檔案被上傳。未知的錯誤。",
"There is no error, the file uploaded with success" => "無錯誤,檔案上傳成功",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "上傳的檔案大小超過 php.ini 當中 upload_max_filesize 參數的設定:",
@ -47,6 +46,8 @@
"{count} folders" => "{count} 個資料夾",
"1 file" => "1 個檔案",
"{count} files" => "{count} 個檔案",
"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "無效的資料夾名稱,'Shared' 的使用被 ownCloud 保留",
"Unable to rename file" => "無法重新命名檔案",
"Upload" => "上傳",
"File handling" => "檔案處理",
"Maximum upload size" => "最大上傳檔案大小",

79
apps/files/lib/app.php Normal file
View file

@ -0,0 +1,79 @@
<?php
/**
* ownCloud - Core
*
* @author Morris Jobke
* @copyright 2013 Morris Jobke morris.jobke@gmail.com
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
* License as published by the Free Software Foundation; either
* version 3 of the License, or any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
*
* You should have received a copy of the GNU Affero General Public
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
*/
namespace OCA\Files;
class App {
private $l10n;
private $view;
public function __construct($view, $l10n) {
$this->view = $view;
$this->l10n = $l10n;
}
/**
* rename a file
*
* @param string $dir
* @param string $oldname
* @param string $newname
* @return array
*/
public function rename($dir, $oldname, $newname) {
$result = array(
'success' => false,
'data' => NULL
);
// rename to "/Shared" is denied
if( $dir === '/' and $newname === 'Shared' ) {
$result['data'] = array(
'message' => $this->l10n->t("Invalid folder name. Usage of 'Shared' is reserved by ownCloud")
);
} elseif(
// rename to "." is denied
$newname !== '.' and
// rename of "/Shared" is denied
!($dir === '/' and $oldname === 'Shared') and
// THEN try to rename
$this->view->rename($dir . '/' . $oldname, $dir . '/' . $newname)
) {
// successful rename
$result['success'] = true;
$result['data'] = array(
'dir' => $dir,
'file' => $oldname,
'newname' => $newname
);
} else {
// rename failed
$result['data'] = array(
'message' => $this->l10n->t('Unable to rename file')
);
}
return $result;
}
}

View file

@ -1,5 +1,5 @@
<?php if(count($_["breadcrumb"])):?>
<div class="crumb">
<div class="crumb" data-dir=''>
<a href="<?php print_unescaped($_['baseURL']); ?>">
<img src="<?php print_unescaped(OCP\image_path('core', 'places/home.svg'));?>" class="svg" />
</a>

View file

@ -0,0 +1,117 @@
<?php
/**
* ownCloud - Core
*
* @author Morris Jobke
* @copyright 2013 Morris Jobke morris.jobke@gmail.com
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
* License as published by the Free Software Foundation; either
* version 3 of the License, or any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
*
* You should have received a copy of the GNU Affero General Public
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
*/
class Test_OC_Files_App_Rename extends \PHPUnit_Framework_TestCase {
function setUp() {
// mock OC_L10n
$l10nMock = $this->getMock('\OC_L10N', array('t'), array(), '', false);
$l10nMock->expects($this->any())
->method('t')
->will($this->returnArgument(0));
$viewMock = $this->getMock('\OC\Files\View', array('rename', 'normalizePath'), array(), '', false);
$viewMock->expects($this->any())
->method('normalizePath')
->will($this->returnArgument(0));
$viewMock->expects($this->any())
->method('rename')
->will($this->returnValue(true));
$this->files = new \OCA\Files\App($viewMock, $l10nMock);
}
/**
* @brief test rename of file/folder named "Shared"
*/
function testRenameSharedFolder() {
$dir = '/';
$oldname = 'Shared';
$newname = 'new_name';
$result = $this->files->rename($dir, $oldname, $newname);
$expected = array(
'success' => false,
'data' => array('message' => 'Unable to rename file')
);
$this->assertEquals($expected, $result);
}
/**
* @brief test rename of file/folder named "Shared"
*/
function testRenameSharedFolderInSubdirectory() {
$dir = '/test';
$oldname = 'Shared';
$newname = 'new_name';
$result = $this->files->rename($dir, $oldname, $newname);
$expected = array(
'success' => true,
'data' => array(
'dir' => $dir,
'file' => $oldname,
'newname' => $newname
)
);
$this->assertEquals($expected, $result);
}
/**
* @brief test rename of file/folder to "Shared"
*/
function testRenameFolderToShared() {
$dir = '/';
$oldname = 'oldname';
$newname = 'Shared';
$result = $this->files->rename($dir, $oldname, $newname);
$expected = array(
'success' => false,
'data' => array('message' => "Invalid folder name. Usage of 'Shared' is reserved by ownCloud")
);
$this->assertEquals($expected, $result);
}
/**
* @brief test rename of file/folder
*/
function testRenameFolder() {
$dir = '/';
$oldname = 'oldname';
$newname = 'newname';
$result = $this->files->rename($dir, $oldname, $newname);
$expected = array(
'success' => true,
'data' => array(
'dir' => $dir,
'file' => $oldname,
'newname' => $newname
)
);
$this->assertEquals($expected, $result);
}
}

View file

@ -0,0 +1,317 @@
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
/**
* Crypt_Blowfish allows for encryption and decryption on the fly using
* the Blowfish algorithm. Crypt_Blowfish does not require the mcrypt
* PHP extension, it uses only PHP.
* Crypt_Blowfish support encryption/decryption with or without a secret key.
*
*
* PHP versions 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @category Encryption
* @package Crypt_Blowfish
* @author Matthew Fonda <mfonda@php.net>
* @copyright 2005 Matthew Fonda
* @license http://www.php.net/license/3_0.txt PHP License 3.0
* @version CVS: $Id: Blowfish.php,v 1.81 2005/05/30 18:40:36 mfonda Exp $
* @link http://pear.php.net/package/Crypt_Blowfish
*/
require_once 'PEAR.php';
/**
*
* Example usage:
* $bf = new Crypt_Blowfish('some secret key!');
* $encrypted = $bf->encrypt('this is some example plain text');
* $plaintext = $bf->decrypt($encrypted);
* echo "plain text: $plaintext";
*
*
* @category Encryption
* @package Crypt_Blowfish
* @author Matthew Fonda <mfonda@php.net>
* @copyright 2005 Matthew Fonda
* @license http://www.php.net/license/3_0.txt PHP License 3.0
* @link http://pear.php.net/package/Crypt_Blowfish
* @version @package_version@
* @access public
*/
class Crypt_Blowfish
{
/**
* P-Array contains 18 32-bit subkeys
*
* @var array
* @access private
*/
var $_P = array();
/**
* Array of four S-Blocks each containing 256 32-bit entries
*
* @var array
* @access private
*/
var $_S = array();
/**
* Mcrypt td resource
*
* @var resource
* @access private
*/
var $_td = null;
/**
* Initialization vector
*
* @var string
* @access private
*/
var $_iv = null;
/**
* Crypt_Blowfish Constructor
* Initializes the Crypt_Blowfish object, and gives a sets
* the secret key
*
* @param string $key
* @access public
*/
function Crypt_Blowfish($key)
{
if (extension_loaded('mcrypt')) {
$this->_td = mcrypt_module_open(MCRYPT_BLOWFISH, '', 'ecb', '');
$this->_iv = mcrypt_create_iv(8, MCRYPT_RAND);
}
$this->setKey($key);
}
/**
* Deprecated isReady method
*
* @return bool
* @access public
* @deprecated
*/
function isReady()
{
return true;
}
/**
* Deprecated init method - init is now a private
* method and has been replaced with _init
*
* @return bool
* @access public
* @deprecated
* @see Crypt_Blowfish::_init()
*/
function init()
{
$this->_init();
}
/**
* Initializes the Crypt_Blowfish object
*
* @access private
*/
function _init()
{
$defaults = new Crypt_Blowfish_DefaultKey();
$this->_P = $defaults->P;
$this->_S = $defaults->S;
}
/**
* Enciphers a single 64 bit block
*
* @param int &$Xl
* @param int &$Xr
* @access private
*/
function _encipher(&$Xl, &$Xr)
{
for ($i = 0; $i < 16; $i++) {
$temp = $Xl ^ $this->_P[$i];
$Xl = ((($this->_S[0][($temp>>24) & 255] +
$this->_S[1][($temp>>16) & 255]) ^
$this->_S[2][($temp>>8) & 255]) +
$this->_S[3][$temp & 255]) ^ $Xr;
$Xr = $temp;
}
$Xr = $Xl ^ $this->_P[16];
$Xl = $temp ^ $this->_P[17];
}
/**
* Deciphers a single 64 bit block
*
* @param int &$Xl
* @param int &$Xr
* @access private
*/
function _decipher(&$Xl, &$Xr)
{
for ($i = 17; $i > 1; $i--) {
$temp = $Xl ^ $this->_P[$i];
$Xl = ((($this->_S[0][($temp>>24) & 255] +
$this->_S[1][($temp>>16) & 255]) ^
$this->_S[2][($temp>>8) & 255]) +
$this->_S[3][$temp & 255]) ^ $Xr;
$Xr = $temp;
}
$Xr = $Xl ^ $this->_P[1];
$Xl = $temp ^ $this->_P[0];
}
/**
* Encrypts a string
*
* @param string $plainText
* @return string Returns cipher text on success, PEAR_Error on failure
* @access public
*/
function encrypt($plainText)
{
if (!is_string($plainText)) {
PEAR::raiseError('Plain text must be a string', 0, PEAR_ERROR_DIE);
}
if (extension_loaded('mcrypt')) {
return mcrypt_generic($this->_td, $plainText);
}
$cipherText = '';
$len = strlen($plainText);
$plainText .= str_repeat(chr(0),(8 - ($len%8))%8);
for ($i = 0; $i < $len; $i += 8) {
list(,$Xl,$Xr) = unpack("N2",substr($plainText,$i,8));
$this->_encipher($Xl, $Xr);
$cipherText .= pack("N2", $Xl, $Xr);
}
return $cipherText;
}
/**
* Decrypts an encrypted string
*
* @param string $cipherText
* @return string Returns plain text on success, PEAR_Error on failure
* @access public
*/
function decrypt($cipherText)
{
if (!is_string($cipherText)) {
PEAR::raiseError('Cipher text must be a string', 1, PEAR_ERROR_DIE);
}
if (extension_loaded('mcrypt')) {
return mdecrypt_generic($this->_td, $cipherText);
}
$plainText = '';
$len = strlen($cipherText);
$cipherText .= str_repeat(chr(0),(8 - ($len%8))%8);
for ($i = 0; $i < $len; $i += 8) {
list(,$Xl,$Xr) = unpack("N2",substr($cipherText,$i,8));
$this->_decipher($Xl, $Xr);
$plainText .= pack("N2", $Xl, $Xr);
}
return $plainText;
}
/**
* Sets the secret key
* The key must be non-zero, and less than or equal to
* 56 characters in length.
*
* @param string $key
* @return bool Returns true on success, PEAR_Error on failure
* @access public
*/
function setKey($key)
{
if (!is_string($key)) {
PEAR::raiseError('Key must be a string', 2, PEAR_ERROR_DIE);
}
$len = strlen($key);
if ($len > 56 || $len == 0) {
PEAR::raiseError('Key must be less than 56 characters and non-zero. Supplied key length: ' . $len, 3, PEAR_ERROR_DIE);
}
if (extension_loaded('mcrypt')) {
mcrypt_generic_init($this->_td, $key, $this->_iv);
return true;
}
require_once 'Blowfish/DefaultKey.php';
$this->_init();
$k = 0;
$data = 0;
$datal = 0;
$datar = 0;
for ($i = 0; $i < 18; $i++) {
$data = 0;
for ($j = 4; $j > 0; $j--) {
$data = $data << 8 | ord($key{$k});
$k = ($k+1) % $len;
}
$this->_P[$i] ^= $data;
}
for ($i = 0; $i <= 16; $i += 2) {
$this->_encipher($datal, $datar);
$this->_P[$i] = $datal;
$this->_P[$i+1] = $datar;
}
for ($i = 0; $i < 256; $i += 2) {
$this->_encipher($datal, $datar);
$this->_S[0][$i] = $datal;
$this->_S[0][$i+1] = $datar;
}
for ($i = 0; $i < 256; $i += 2) {
$this->_encipher($datal, $datar);
$this->_S[1][$i] = $datal;
$this->_S[1][$i+1] = $datar;
}
for ($i = 0; $i < 256; $i += 2) {
$this->_encipher($datal, $datar);
$this->_S[2][$i] = $datal;
$this->_S[2][$i+1] = $datar;
}
for ($i = 0; $i < 256; $i += 2) {
$this->_encipher($datal, $datar);
$this->_S[3][$i] = $datal;
$this->_S[3][$i+1] = $datar;
}
return true;
}
}
?>

View file

@ -0,0 +1,327 @@
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
/**
* Crypt_Blowfish allows for encryption and decryption on the fly using
* the Blowfish algorithm. Crypt_Blowfish does not require the mcrypt
* PHP extension, it uses only PHP.
* Crypt_Blowfish support encryption/decryption with or without a secret key.
*
*
* PHP versions 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt. If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @category Encryption
* @package Crypt_Blowfish
* @author Matthew Fonda <mfonda@php.net>
* @copyright 2005 Matthew Fonda
* @license http://www.php.net/license/3_0.txt PHP License 3.0
* @version CVS: $Id: DefaultKey.php,v 1.81 2005/05/30 18:40:37 mfonda Exp $
* @link http://pear.php.net/package/Crypt_Blowfish
*/
/**
* Class containing default key
*
* @category Encryption
* @package Crypt_Blowfish
* @author Matthew Fonda <mfonda@php.net>
* @copyright 2005 Matthew Fonda
* @license http://www.php.net/license/3_0.txt PHP License 3.0
* @link http://pear.php.net/package/Crypt_Blowfish
* @version @package_version@
* @access public
*/
class Crypt_Blowfish_DefaultKey
{
var $P = array();
var $S = array();
function Crypt_Blowfish_DefaultKey()
{
$this->P = array(
0x243F6A88, 0x85A308D3, 0x13198A2E, 0x03707344,
0xA4093822, 0x299F31D0, 0x082EFA98, 0xEC4E6C89,
0x452821E6, 0x38D01377, 0xBE5466CF, 0x34E90C6C,
0xC0AC29B7, 0xC97C50DD, 0x3F84D5B5, 0xB5470917,
0x9216D5D9, 0x8979FB1B
);
$this->S = array(
array(
0xD1310BA6, 0x98DFB5AC, 0x2FFD72DB, 0xD01ADFB7,
0xB8E1AFED, 0x6A267E96, 0xBA7C9045, 0xF12C7F99,
0x24A19947, 0xB3916CF7, 0x0801F2E2, 0x858EFC16,
0x636920D8, 0x71574E69, 0xA458FEA3, 0xF4933D7E,
0x0D95748F, 0x728EB658, 0x718BCD58, 0x82154AEE,
0x7B54A41D, 0xC25A59B5, 0x9C30D539, 0x2AF26013,
0xC5D1B023, 0x286085F0, 0xCA417918, 0xB8DB38EF,
0x8E79DCB0, 0x603A180E, 0x6C9E0E8B, 0xB01E8A3E,
0xD71577C1, 0xBD314B27, 0x78AF2FDA, 0x55605C60,
0xE65525F3, 0xAA55AB94, 0x57489862, 0x63E81440,
0x55CA396A, 0x2AAB10B6, 0xB4CC5C34, 0x1141E8CE,
0xA15486AF, 0x7C72E993, 0xB3EE1411, 0x636FBC2A,
0x2BA9C55D, 0x741831F6, 0xCE5C3E16, 0x9B87931E,
0xAFD6BA33, 0x6C24CF5C, 0x7A325381, 0x28958677,
0x3B8F4898, 0x6B4BB9AF, 0xC4BFE81B, 0x66282193,
0x61D809CC, 0xFB21A991, 0x487CAC60, 0x5DEC8032,
0xEF845D5D, 0xE98575B1, 0xDC262302, 0xEB651B88,
0x23893E81, 0xD396ACC5, 0x0F6D6FF3, 0x83F44239,
0x2E0B4482, 0xA4842004, 0x69C8F04A, 0x9E1F9B5E,
0x21C66842, 0xF6E96C9A, 0x670C9C61, 0xABD388F0,
0x6A51A0D2, 0xD8542F68, 0x960FA728, 0xAB5133A3,
0x6EEF0B6C, 0x137A3BE4, 0xBA3BF050, 0x7EFB2A98,
0xA1F1651D, 0x39AF0176, 0x66CA593E, 0x82430E88,
0x8CEE8619, 0x456F9FB4, 0x7D84A5C3, 0x3B8B5EBE,
0xE06F75D8, 0x85C12073, 0x401A449F, 0x56C16AA6,
0x4ED3AA62, 0x363F7706, 0x1BFEDF72, 0x429B023D,
0x37D0D724, 0xD00A1248, 0xDB0FEAD3, 0x49F1C09B,
0x075372C9, 0x80991B7B, 0x25D479D8, 0xF6E8DEF7,
0xE3FE501A, 0xB6794C3B, 0x976CE0BD, 0x04C006BA,
0xC1A94FB6, 0x409F60C4, 0x5E5C9EC2, 0x196A2463,
0x68FB6FAF, 0x3E6C53B5, 0x1339B2EB, 0x3B52EC6F,
0x6DFC511F, 0x9B30952C, 0xCC814544, 0xAF5EBD09,
0xBEE3D004, 0xDE334AFD, 0x660F2807, 0x192E4BB3,
0xC0CBA857, 0x45C8740F, 0xD20B5F39, 0xB9D3FBDB,
0x5579C0BD, 0x1A60320A, 0xD6A100C6, 0x402C7279,
0x679F25FE, 0xFB1FA3CC, 0x8EA5E9F8, 0xDB3222F8,
0x3C7516DF, 0xFD616B15, 0x2F501EC8, 0xAD0552AB,
0x323DB5FA, 0xFD238760, 0x53317B48, 0x3E00DF82,
0x9E5C57BB, 0xCA6F8CA0, 0x1A87562E, 0xDF1769DB,
0xD542A8F6, 0x287EFFC3, 0xAC6732C6, 0x8C4F5573,
0x695B27B0, 0xBBCA58C8, 0xE1FFA35D, 0xB8F011A0,
0x10FA3D98, 0xFD2183B8, 0x4AFCB56C, 0x2DD1D35B,
0x9A53E479, 0xB6F84565, 0xD28E49BC, 0x4BFB9790,
0xE1DDF2DA, 0xA4CB7E33, 0x62FB1341, 0xCEE4C6E8,
0xEF20CADA, 0x36774C01, 0xD07E9EFE, 0x2BF11FB4,
0x95DBDA4D, 0xAE909198, 0xEAAD8E71, 0x6B93D5A0,
0xD08ED1D0, 0xAFC725E0, 0x8E3C5B2F, 0x8E7594B7,
0x8FF6E2FB, 0xF2122B64, 0x8888B812, 0x900DF01C,
0x4FAD5EA0, 0x688FC31C, 0xD1CFF191, 0xB3A8C1AD,
0x2F2F2218, 0xBE0E1777, 0xEA752DFE, 0x8B021FA1,
0xE5A0CC0F, 0xB56F74E8, 0x18ACF3D6, 0xCE89E299,
0xB4A84FE0, 0xFD13E0B7, 0x7CC43B81, 0xD2ADA8D9,
0x165FA266, 0x80957705, 0x93CC7314, 0x211A1477,
0xE6AD2065, 0x77B5FA86, 0xC75442F5, 0xFB9D35CF,
0xEBCDAF0C, 0x7B3E89A0, 0xD6411BD3, 0xAE1E7E49,
0x00250E2D, 0x2071B35E, 0x226800BB, 0x57B8E0AF,
0x2464369B, 0xF009B91E, 0x5563911D, 0x59DFA6AA,
0x78C14389, 0xD95A537F, 0x207D5BA2, 0x02E5B9C5,
0x83260376, 0x6295CFA9, 0x11C81968, 0x4E734A41,
0xB3472DCA, 0x7B14A94A, 0x1B510052, 0x9A532915,
0xD60F573F, 0xBC9BC6E4, 0x2B60A476, 0x81E67400,
0x08BA6FB5, 0x571BE91F, 0xF296EC6B, 0x2A0DD915,
0xB6636521, 0xE7B9F9B6, 0xFF34052E, 0xC5855664,
0x53B02D5D, 0xA99F8FA1, 0x08BA4799, 0x6E85076A
),
array(
0x4B7A70E9, 0xB5B32944, 0xDB75092E, 0xC4192623,
0xAD6EA6B0, 0x49A7DF7D, 0x9CEE60B8, 0x8FEDB266,
0xECAA8C71, 0x699A17FF, 0x5664526C, 0xC2B19EE1,
0x193602A5, 0x75094C29, 0xA0591340, 0xE4183A3E,
0x3F54989A, 0x5B429D65, 0x6B8FE4D6, 0x99F73FD6,
0xA1D29C07, 0xEFE830F5, 0x4D2D38E6, 0xF0255DC1,
0x4CDD2086, 0x8470EB26, 0x6382E9C6, 0x021ECC5E,
0x09686B3F, 0x3EBAEFC9, 0x3C971814, 0x6B6A70A1,
0x687F3584, 0x52A0E286, 0xB79C5305, 0xAA500737,
0x3E07841C, 0x7FDEAE5C, 0x8E7D44EC, 0x5716F2B8,
0xB03ADA37, 0xF0500C0D, 0xF01C1F04, 0x0200B3FF,
0xAE0CF51A, 0x3CB574B2, 0x25837A58, 0xDC0921BD,
0xD19113F9, 0x7CA92FF6, 0x94324773, 0x22F54701,
0x3AE5E581, 0x37C2DADC, 0xC8B57634, 0x9AF3DDA7,
0xA9446146, 0x0FD0030E, 0xECC8C73E, 0xA4751E41,
0xE238CD99, 0x3BEA0E2F, 0x3280BBA1, 0x183EB331,
0x4E548B38, 0x4F6DB908, 0x6F420D03, 0xF60A04BF,
0x2CB81290, 0x24977C79, 0x5679B072, 0xBCAF89AF,
0xDE9A771F, 0xD9930810, 0xB38BAE12, 0xDCCF3F2E,
0x5512721F, 0x2E6B7124, 0x501ADDE6, 0x9F84CD87,
0x7A584718, 0x7408DA17, 0xBC9F9ABC, 0xE94B7D8C,
0xEC7AEC3A, 0xDB851DFA, 0x63094366, 0xC464C3D2,
0xEF1C1847, 0x3215D908, 0xDD433B37, 0x24C2BA16,
0x12A14D43, 0x2A65C451, 0x50940002, 0x133AE4DD,
0x71DFF89E, 0x10314E55, 0x81AC77D6, 0x5F11199B,
0x043556F1, 0xD7A3C76B, 0x3C11183B, 0x5924A509,
0xF28FE6ED, 0x97F1FBFA, 0x9EBABF2C, 0x1E153C6E,
0x86E34570, 0xEAE96FB1, 0x860E5E0A, 0x5A3E2AB3,
0x771FE71C, 0x4E3D06FA, 0x2965DCB9, 0x99E71D0F,
0x803E89D6, 0x5266C825, 0x2E4CC978, 0x9C10B36A,
0xC6150EBA, 0x94E2EA78, 0xA5FC3C53, 0x1E0A2DF4,
0xF2F74EA7, 0x361D2B3D, 0x1939260F, 0x19C27960,
0x5223A708, 0xF71312B6, 0xEBADFE6E, 0xEAC31F66,
0xE3BC4595, 0xA67BC883, 0xB17F37D1, 0x018CFF28,
0xC332DDEF, 0xBE6C5AA5, 0x65582185, 0x68AB9802,
0xEECEA50F, 0xDB2F953B, 0x2AEF7DAD, 0x5B6E2F84,
0x1521B628, 0x29076170, 0xECDD4775, 0x619F1510,
0x13CCA830, 0xEB61BD96, 0x0334FE1E, 0xAA0363CF,
0xB5735C90, 0x4C70A239, 0xD59E9E0B, 0xCBAADE14,
0xEECC86BC, 0x60622CA7, 0x9CAB5CAB, 0xB2F3846E,
0x648B1EAF, 0x19BDF0CA, 0xA02369B9, 0x655ABB50,
0x40685A32, 0x3C2AB4B3, 0x319EE9D5, 0xC021B8F7,
0x9B540B19, 0x875FA099, 0x95F7997E, 0x623D7DA8,
0xF837889A, 0x97E32D77, 0x11ED935F, 0x16681281,
0x0E358829, 0xC7E61FD6, 0x96DEDFA1, 0x7858BA99,
0x57F584A5, 0x1B227263, 0x9B83C3FF, 0x1AC24696,
0xCDB30AEB, 0x532E3054, 0x8FD948E4, 0x6DBC3128,
0x58EBF2EF, 0x34C6FFEA, 0xFE28ED61, 0xEE7C3C73,
0x5D4A14D9, 0xE864B7E3, 0x42105D14, 0x203E13E0,
0x45EEE2B6, 0xA3AAABEA, 0xDB6C4F15, 0xFACB4FD0,
0xC742F442, 0xEF6ABBB5, 0x654F3B1D, 0x41CD2105,
0xD81E799E, 0x86854DC7, 0xE44B476A, 0x3D816250,
0xCF62A1F2, 0x5B8D2646, 0xFC8883A0, 0xC1C7B6A3,
0x7F1524C3, 0x69CB7492, 0x47848A0B, 0x5692B285,
0x095BBF00, 0xAD19489D, 0x1462B174, 0x23820E00,
0x58428D2A, 0x0C55F5EA, 0x1DADF43E, 0x233F7061,
0x3372F092, 0x8D937E41, 0xD65FECF1, 0x6C223BDB,
0x7CDE3759, 0xCBEE7460, 0x4085F2A7, 0xCE77326E,
0xA6078084, 0x19F8509E, 0xE8EFD855, 0x61D99735,
0xA969A7AA, 0xC50C06C2, 0x5A04ABFC, 0x800BCADC,
0x9E447A2E, 0xC3453484, 0xFDD56705, 0x0E1E9EC9,
0xDB73DBD3, 0x105588CD, 0x675FDA79, 0xE3674340,
0xC5C43465, 0x713E38D8, 0x3D28F89E, 0xF16DFF20,
0x153E21E7, 0x8FB03D4A, 0xE6E39F2B, 0xDB83ADF7
),
array(
0xE93D5A68, 0x948140F7, 0xF64C261C, 0x94692934,
0x411520F7, 0x7602D4F7, 0xBCF46B2E, 0xD4A20068,
0xD4082471, 0x3320F46A, 0x43B7D4B7, 0x500061AF,
0x1E39F62E, 0x97244546, 0x14214F74, 0xBF8B8840,
0x4D95FC1D, 0x96B591AF, 0x70F4DDD3, 0x66A02F45,
0xBFBC09EC, 0x03BD9785, 0x7FAC6DD0, 0x31CB8504,
0x96EB27B3, 0x55FD3941, 0xDA2547E6, 0xABCA0A9A,
0x28507825, 0x530429F4, 0x0A2C86DA, 0xE9B66DFB,
0x68DC1462, 0xD7486900, 0x680EC0A4, 0x27A18DEE,
0x4F3FFEA2, 0xE887AD8C, 0xB58CE006, 0x7AF4D6B6,
0xAACE1E7C, 0xD3375FEC, 0xCE78A399, 0x406B2A42,
0x20FE9E35, 0xD9F385B9, 0xEE39D7AB, 0x3B124E8B,
0x1DC9FAF7, 0x4B6D1856, 0x26A36631, 0xEAE397B2,
0x3A6EFA74, 0xDD5B4332, 0x6841E7F7, 0xCA7820FB,
0xFB0AF54E, 0xD8FEB397, 0x454056AC, 0xBA489527,
0x55533A3A, 0x20838D87, 0xFE6BA9B7, 0xD096954B,
0x55A867BC, 0xA1159A58, 0xCCA92963, 0x99E1DB33,
0xA62A4A56, 0x3F3125F9, 0x5EF47E1C, 0x9029317C,
0xFDF8E802, 0x04272F70, 0x80BB155C, 0x05282CE3,
0x95C11548, 0xE4C66D22, 0x48C1133F, 0xC70F86DC,
0x07F9C9EE, 0x41041F0F, 0x404779A4, 0x5D886E17,
0x325F51EB, 0xD59BC0D1, 0xF2BCC18F, 0x41113564,
0x257B7834, 0x602A9C60, 0xDFF8E8A3, 0x1F636C1B,
0x0E12B4C2, 0x02E1329E, 0xAF664FD1, 0xCAD18115,
0x6B2395E0, 0x333E92E1, 0x3B240B62, 0xEEBEB922,
0x85B2A20E, 0xE6BA0D99, 0xDE720C8C, 0x2DA2F728,
0xD0127845, 0x95B794FD, 0x647D0862, 0xE7CCF5F0,
0x5449A36F, 0x877D48FA, 0xC39DFD27, 0xF33E8D1E,
0x0A476341, 0x992EFF74, 0x3A6F6EAB, 0xF4F8FD37,
0xA812DC60, 0xA1EBDDF8, 0x991BE14C, 0xDB6E6B0D,
0xC67B5510, 0x6D672C37, 0x2765D43B, 0xDCD0E804,
0xF1290DC7, 0xCC00FFA3, 0xB5390F92, 0x690FED0B,
0x667B9FFB, 0xCEDB7D9C, 0xA091CF0B, 0xD9155EA3,
0xBB132F88, 0x515BAD24, 0x7B9479BF, 0x763BD6EB,
0x37392EB3, 0xCC115979, 0x8026E297, 0xF42E312D,
0x6842ADA7, 0xC66A2B3B, 0x12754CCC, 0x782EF11C,
0x6A124237, 0xB79251E7, 0x06A1BBE6, 0x4BFB6350,
0x1A6B1018, 0x11CAEDFA, 0x3D25BDD8, 0xE2E1C3C9,
0x44421659, 0x0A121386, 0xD90CEC6E, 0xD5ABEA2A,
0x64AF674E, 0xDA86A85F, 0xBEBFE988, 0x64E4C3FE,
0x9DBC8057, 0xF0F7C086, 0x60787BF8, 0x6003604D,
0xD1FD8346, 0xF6381FB0, 0x7745AE04, 0xD736FCCC,
0x83426B33, 0xF01EAB71, 0xB0804187, 0x3C005E5F,
0x77A057BE, 0xBDE8AE24, 0x55464299, 0xBF582E61,
0x4E58F48F, 0xF2DDFDA2, 0xF474EF38, 0x8789BDC2,
0x5366F9C3, 0xC8B38E74, 0xB475F255, 0x46FCD9B9,
0x7AEB2661, 0x8B1DDF84, 0x846A0E79, 0x915F95E2,
0x466E598E, 0x20B45770, 0x8CD55591, 0xC902DE4C,
0xB90BACE1, 0xBB8205D0, 0x11A86248, 0x7574A99E,
0xB77F19B6, 0xE0A9DC09, 0x662D09A1, 0xC4324633,
0xE85A1F02, 0x09F0BE8C, 0x4A99A025, 0x1D6EFE10,
0x1AB93D1D, 0x0BA5A4DF, 0xA186F20F, 0x2868F169,
0xDCB7DA83, 0x573906FE, 0xA1E2CE9B, 0x4FCD7F52,
0x50115E01, 0xA70683FA, 0xA002B5C4, 0x0DE6D027,
0x9AF88C27, 0x773F8641, 0xC3604C06, 0x61A806B5,
0xF0177A28, 0xC0F586E0, 0x006058AA, 0x30DC7D62,
0x11E69ED7, 0x2338EA63, 0x53C2DD94, 0xC2C21634,
0xBBCBEE56, 0x90BCB6DE, 0xEBFC7DA1, 0xCE591D76,
0x6F05E409, 0x4B7C0188, 0x39720A3D, 0x7C927C24,
0x86E3725F, 0x724D9DB9, 0x1AC15BB4, 0xD39EB8FC,
0xED545578, 0x08FCA5B5, 0xD83D7CD3, 0x4DAD0FC4,
0x1E50EF5E, 0xB161E6F8, 0xA28514D9, 0x6C51133C,
0x6FD5C7E7, 0x56E14EC4, 0x362ABFCE, 0xDDC6C837,
0xD79A3234, 0x92638212, 0x670EFA8E, 0x406000E0
),
array(
0x3A39CE37, 0xD3FAF5CF, 0xABC27737, 0x5AC52D1B,
0x5CB0679E, 0x4FA33742, 0xD3822740, 0x99BC9BBE,
0xD5118E9D, 0xBF0F7315, 0xD62D1C7E, 0xC700C47B,
0xB78C1B6B, 0x21A19045, 0xB26EB1BE, 0x6A366EB4,
0x5748AB2F, 0xBC946E79, 0xC6A376D2, 0x6549C2C8,
0x530FF8EE, 0x468DDE7D, 0xD5730A1D, 0x4CD04DC6,
0x2939BBDB, 0xA9BA4650, 0xAC9526E8, 0xBE5EE304,
0xA1FAD5F0, 0x6A2D519A, 0x63EF8CE2, 0x9A86EE22,
0xC089C2B8, 0x43242EF6, 0xA51E03AA, 0x9CF2D0A4,
0x83C061BA, 0x9BE96A4D, 0x8FE51550, 0xBA645BD6,
0x2826A2F9, 0xA73A3AE1, 0x4BA99586, 0xEF5562E9,
0xC72FEFD3, 0xF752F7DA, 0x3F046F69, 0x77FA0A59,
0x80E4A915, 0x87B08601, 0x9B09E6AD, 0x3B3EE593,
0xE990FD5A, 0x9E34D797, 0x2CF0B7D9, 0x022B8B51,
0x96D5AC3A, 0x017DA67D, 0xD1CF3ED6, 0x7C7D2D28,
0x1F9F25CF, 0xADF2B89B, 0x5AD6B472, 0x5A88F54C,
0xE029AC71, 0xE019A5E6, 0x47B0ACFD, 0xED93FA9B,
0xE8D3C48D, 0x283B57CC, 0xF8D56629, 0x79132E28,
0x785F0191, 0xED756055, 0xF7960E44, 0xE3D35E8C,
0x15056DD4, 0x88F46DBA, 0x03A16125, 0x0564F0BD,
0xC3EB9E15, 0x3C9057A2, 0x97271AEC, 0xA93A072A,
0x1B3F6D9B, 0x1E6321F5, 0xF59C66FB, 0x26DCF319,
0x7533D928, 0xB155FDF5, 0x03563482, 0x8ABA3CBB,
0x28517711, 0xC20AD9F8, 0xABCC5167, 0xCCAD925F,
0x4DE81751, 0x3830DC8E, 0x379D5862, 0x9320F991,
0xEA7A90C2, 0xFB3E7BCE, 0x5121CE64, 0x774FBE32,
0xA8B6E37E, 0xC3293D46, 0x48DE5369, 0x6413E680,
0xA2AE0810, 0xDD6DB224, 0x69852DFD, 0x09072166,
0xB39A460A, 0x6445C0DD, 0x586CDECF, 0x1C20C8AE,
0x5BBEF7DD, 0x1B588D40, 0xCCD2017F, 0x6BB4E3BB,
0xDDA26A7E, 0x3A59FF45, 0x3E350A44, 0xBCB4CDD5,
0x72EACEA8, 0xFA6484BB, 0x8D6612AE, 0xBF3C6F47,
0xD29BE463, 0x542F5D9E, 0xAEC2771B, 0xF64E6370,
0x740E0D8D, 0xE75B1357, 0xF8721671, 0xAF537D5D,
0x4040CB08, 0x4EB4E2CC, 0x34D2466A, 0x0115AF84,
0xE1B00428, 0x95983A1D, 0x06B89FB4, 0xCE6EA048,
0x6F3F3B82, 0x3520AB82, 0x011A1D4B, 0x277227F8,
0x611560B1, 0xE7933FDC, 0xBB3A792B, 0x344525BD,
0xA08839E1, 0x51CE794B, 0x2F32C9B7, 0xA01FBAC9,
0xE01CC87E, 0xBCC7D1F6, 0xCF0111C3, 0xA1E8AAC7,
0x1A908749, 0xD44FBD9A, 0xD0DADECB, 0xD50ADA38,
0x0339C32A, 0xC6913667, 0x8DF9317C, 0xE0B12B4F,
0xF79E59B7, 0x43F5BB3A, 0xF2D519FF, 0x27D9459C,
0xBF97222C, 0x15E6FC2A, 0x0F91FC71, 0x9B941525,
0xFAE59361, 0xCEB69CEB, 0xC2A86459, 0x12BAA8D1,
0xB6C1075E, 0xE3056A0C, 0x10D25065, 0xCB03A442,
0xE0EC6E0E, 0x1698DB3B, 0x4C98A0BE, 0x3278E964,
0x9F1F9532, 0xE0D392DF, 0xD3A0342B, 0x8971F21E,
0x1B0A7441, 0x4BA3348C, 0xC5BE7120, 0xC37632D8,
0xDF359F8D, 0x9B992F2E, 0xE60B6F47, 0x0FE3F11D,
0xE54CDA54, 0x1EDAD891, 0xCE6279CF, 0xCD3E7E6F,
0x1618B166, 0xFD2C1D05, 0x848FD2C5, 0xF6FB2299,
0xF523F357, 0xA6327623, 0x93A83531, 0x56CCCD02,
0xACF08162, 0x5A75EBB5, 0x6E163697, 0x88D273CC,
0xDE966292, 0x81B949D0, 0x4C50901B, 0x71C65614,
0xE6C6C7BD, 0x327A140A, 0x45E1D006, 0xC3F27B9A,
0xC9AA53FD, 0x62A80F00, 0xBB25BFE2, 0x35BDD2F6,
0x71126905, 0xB2040222, 0xB6CBCF7C, 0xCD769C2B,
0x53113EC0, 0x1640E3D3, 0x38ABBD60, 0x2547ADF0,
0xBA38209C, 0xF746CE76, 0x77AFA1C5, 0x20756060,
0x85CBFE4E, 0x8AE88DD8, 0x7AAAF9B0, 0x4CF9AA7E,
0x1948C25C, 0x02FB8A8C, 0x01C36AE4, 0xD6EBE1F9,
0x90D4F869, 0xA65CDEA0, 0x3F09252D, 0xC208E69F,
0xB74E6132, 0xCE77E25B, 0x578FDFE3, 0x3AC372E6
)
);
}
}
?>

View file

@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2013, Sam Tuke <samtuke@owncloud.com>
* This file is licensed under the Affero General Public License version 3 or later.
* See the COPYING-README file.
*
* @brief Script to handle admin settings for encrypted key recovery
*/
use OCA\Encryption;
\OCP\JSON::checkAdminUser();
\OCP\JSON::checkAppEnabled('files_encryption');
\OCP\JSON::callCheck();
$l = OC_L10N::get('files_encryption');
$return = false;
// Enable recoveryAdmin
$recoveryKeyId = OC_Appconfig::getValue('files_encryption', 'recoveryKeyId');
if (isset($_POST['adminEnableRecovery']) && $_POST['adminEnableRecovery'] === '1') {
$return = \OCA\Encryption\Helper::adminEnableRecovery($recoveryKeyId, $_POST['recoveryPassword']);
// Return success or failure
if ($return) {
\OCP\JSON::success(array('data' => array('message' => $l->t('Recovery key successfully enabled'))));
} else {
\OCP\JSON::error(array(
'data' => array(
'message' => $l->t(
'Could not enable recovery key. Please check your recovery key password!')
)
));
}
// Disable recoveryAdmin
} elseif (
isset($_POST['adminEnableRecovery'])
&& '0' === $_POST['adminEnableRecovery']
) {
$return = \OCA\Encryption\Helper::adminDisableRecovery($_POST['recoveryPassword']);
// Return success or failure
if ($return) {
\OCP\JSON::success(array('data' => array('message' => $l->t('Recovery key successfully disabled'))));
} else {
\OCP\JSON::error(array(
'data' => array(
'message' => $l->t(
'Could not disable recovery key. Please check your recovery key password!')
)
));
}
}

View file

@ -0,0 +1,52 @@
<?php
/**
* Copyright (c) 2013, Bjoern Schiessle <schiessle@owncloud.com>
* This file is licensed under the Affero General Public License version 3 or later.
* See the COPYING-README file.
*
* @brief Script to change recovery key password
*
*/
use OCA\Encryption;
\OCP\JSON::checkAdminUser();
\OCP\JSON::checkAppEnabled('files_encryption');
\OCP\JSON::callCheck();
$l = OC_L10N::get('core');
$return = false;
$oldPassword = $_POST['oldPassword'];
$newPassword = $_POST['newPassword'];
$util = new \OCA\Encryption\Util(new \OC_FilesystemView('/'), \OCP\User::getUser());
$result = $util->checkRecoveryPassword($oldPassword);
if ($result) {
$keyId = $util->getRecoveryKeyId();
$keyPath = '/owncloud_private_key/' . $keyId . '.private.key';
$view = new \OC\Files\View('/');
$proxyStatus = \OC_FileProxy::$enabled;
\OC_FileProxy::$enabled = false;
$encryptedRecoveryKey = $view->file_get_contents($keyPath);
$decryptedRecoveryKey = \OCA\Encryption\Crypt::symmetricDecryptFileContent($encryptedRecoveryKey, $oldPassword);
$encryptedRecoveryKey = \OCA\Encryption\Crypt::symmetricEncryptFileContent($decryptedRecoveryKey, $newPassword);
$view->file_put_contents($keyPath, $encryptedRecoveryKey);
\OC_FileProxy::$enabled = $proxyStatus;
$return = true;
}
// success or failure
if ($return) {
\OCP\JSON::success(array('data' => array('message' => $l->t('Password successfully changed.'))));
} else {
\OCP\JSON::error(array('data' => array('message' => $l->t('Could not change the password. Maybe the old password was not correct.'))));
}

View file

@ -0,0 +1,41 @@
<?php
/**
* Copyright (c) 2013, Sam Tuke <samtuke@owncloud.com>
* This file is licensed under the Affero General Public License version 3 or later.
* See the COPYING-README file.
*
* @brief Script to handle admin settings for encrypted key recovery
*/
use OCA\Encryption;
\OCP\JSON::checkLoggedIn();
\OCP\JSON::checkAppEnabled('files_encryption');
\OCP\JSON::callCheck();
if (
isset($_POST['userEnableRecovery'])
&& (0 == $_POST['userEnableRecovery'] || '1' === $_POST['userEnableRecovery'])
) {
$userId = \OCP\USER::getUser();
$view = new \OC_FilesystemView('/');
$util = new \OCA\Encryption\Util($view, $userId);
// Save recovery preference to DB
$return = $util->setRecoveryForUser($_POST['userEnableRecovery']);
if ($_POST['userEnableRecovery'] === '1') {
$util->addRecoveryKeys();
} else {
$util->removeRecoveryKeys();
}
} else {
$return = false;
}
// Return success or failure
($return) ? \OCP\JSON::success() : \OCP\JSON::error();

View file

@ -8,42 +8,50 @@ OC::$CLASSPATH['OCA\Encryption\Stream'] = 'files_encryption/lib/stream.php';
OC::$CLASSPATH['OCA\Encryption\Proxy'] = 'files_encryption/lib/proxy.php';
OC::$CLASSPATH['OCA\Encryption\Session'] = 'files_encryption/lib/session.php';
OC::$CLASSPATH['OCA\Encryption\Capabilities'] = 'files_encryption/lib/capabilities.php';
OC::$CLASSPATH['OCA\Encryption\Helper'] = 'files_encryption/lib/helper.php';
OC_FileProxy::register( new OCA\Encryption\Proxy() );
OC_FileProxy::register(new OCA\Encryption\Proxy());
// User-related hooks
OCP\Util::connectHook( 'OC_User', 'post_login', 'OCA\Encryption\Hooks', 'login' );
OCP\Util::connectHook( 'OC_User', 'pre_setPassword', 'OCA\Encryption\Hooks', 'setPassphrase' );
// User related hooks
OCA\Encryption\Helper::registerUserHooks();
// Sharing-related hooks
OCP\Util::connectHook( 'OCP\Share', 'post_shared', 'OCA\Encryption\Hooks', 'postShared' );
OCP\Util::connectHook( 'OCP\Share', 'pre_unshare', 'OCA\Encryption\Hooks', 'preUnshare' );
OCP\Util::connectHook( 'OCP\Share', 'pre_unshareAll', 'OCA\Encryption\Hooks', 'preUnshareAll' );
// Sharing related hooks
OCA\Encryption\Helper::registerShareHooks();
// Webdav-related hooks
OCP\Util::connectHook( 'OC_Webdav_Properties', 'update', 'OCA\Encryption\Hooks', 'updateKeyfile' );
// Filesystem related hooks
OCA\Encryption\Helper::registerFilesystemHooks();
stream_wrapper_register( 'crypt', 'OCA\Encryption\Stream' );
stream_wrapper_register('crypt', 'OCA\Encryption\Stream');
$session = new OCA\Encryption\Session();
// check if we are logged in
if (OCP\User::isLoggedIn()) {
if (
! $session->getPrivateKey( \OCP\USER::getUser() )
&& OCP\User::isLoggedIn()
&& OCA\Encryption\Crypt::mode() == 'server'
) {
// ensure filesystem is loaded
if(!\OC\Files\Filesystem::$loaded) {
\OC_Util::setupFS();
}
// Force the user to log-in again if the encryption key isn't unlocked
// (happens when a user is logged in before the encryption app is
// enabled)
OCP\User::logout();
header( "Location: " . OC::$WEBROOT.'/' );
exit();
$view = new OC_FilesystemView('/');
$session = new \OCA\Encryption\Session($view);
// check if user has a private key
if (
!$session->getPrivateKey(\OCP\USER::getUser())
&& OCA\Encryption\Crypt::mode() === 'server'
) {
// Force the user to log-in again if the encryption key isn't unlocked
// (happens when a user is logged in before the encryption app is
// enabled)
OCP\User::logout();
header("Location: " . OC::$WEBROOT . '/');
exit();
}
}
// Register settings scripts
OCP\App::registerAdmin( 'files_encryption', 'settings' );
OCP\App::registerPersonal( 'files_encryption', 'settings-personal' );
OCP\App::registerAdmin('files_encryption', 'settings-admin');
OCP\App::registerPersonal('files_encryption', 'settings-personal');

View file

@ -18,6 +18,21 @@
<type>text</type>
<notnull>true</notnull>
<length>64</length>
<comments>What client-side / server-side configuration is used</comments>
</field>
<field>
<name>recovery_enabled</name>
<type>integer</type>
<notnull>true</notnull>
<default>0</default>
<comments>Whether encryption key recovery is enabled</comments>
</field>
<field>
<name>migration_status</name>
<type>integer</type>
<notnull>true</notnull>
<default>0</default>
<comments>Whether encryption migration has been performed</comments>
</field>
</declaration>
</table>

View file

@ -2,9 +2,9 @@
<info>
<id>files_encryption</id>
<name>Encryption</name>
<description>Server side encryption of files. Warning: You will lose your data if you enable this App and forget your password. Encryption is not yet compatible with LDAP.</description>
<description>WARNING: This is a preview release of the new ownCloud 5 encryption system. Testing and feedback is very welcome but don't use this in production yet. Encryption is not yet compatible with LDAP.</description>
<licence>AGPL</licence>
<author>Sam Tuke</author>
<author>Sam Tuke, Bjoern Schiessle, Florin Peter</author>
<require>4</require>
<shipped>true</shipped>
<types>

View file

@ -9,6 +9,57 @@ Encrypted files
[encrypted data string][delimiter][IV][padding]
[anhAAjAmcGXqj1X9g==][00iv00][MSHU5N5gECP7aAg7][xx] (square braces added)
- Directory structure:
- Encrypted user data (catfiles) are stored in the usual /data/user/files dir
- Keyfiles are stored in /data/user/files_encryption/keyfiles
- Sharekey are stored in /data/user/files_encryption/share-files
- File extensions:
- Catfiles have to keep the file extension of the original file, pre-encryption
- Keyfiles use .keyfile
- Sharekeys have .shareKey
Shared files
------------
Shared files have a centrally stored catfile and keyfile, and one sharekey for
each user that shares it.
When sharing is used, a different encryption method is used to encrypt the
keyfile (openssl_seal). Although shared files have a keyfile, its contents
use a different format therefore.
Each time a shared file is edited or deleted, all sharekeys for users sharing
that file must have their sharekeys changed also. The keyfile and catfile
however need only changing in the owners files, as there is only one copy of
these.
Publicly shared files (public links)
------------------------------------
Files shared via public links use a separate system user account called 'ownCloud'. All public files are shared to that user's public key, and the private key is used to access the files when the public link is used in browser.
This means that files shared via public links are accessible only to users who know the shared URL, or to admins who know the 'ownCloud' user password.
Lost password recovery
----------------------
In order to enable users to read their encrypted files in the event of a password loss/reset scenario, administrators can choose to enable a 'recoveryAdmin' account. This is a user that all user files will automatically be shared to of the option is enabled. This allows the recoveryAdmin user to generate new keyfiles for the user. By default the UID of the recoveryAdmin is 'recoveryAdmin'.
OC_FilesystemView
-----------------
files_encryption deals extensively with paths and the filesystem. In order to minimise bugs, it makes calls to filesystem methods in a consistent way: OC_FilesystemView{} objects always use '/' as their root, and specify paths each time particular methods are called. e.g. do this:
$view->file_exists( 'path/to/file' );
Not:
$view->chroot( 'path/to' );
$view->file_exists( 'file' );
Using this convention means that $view objects are more predictable and less likely to break. Problems with paths are the #1 cause of bugs in this app, and consistent $view handling is an important way to prevent them.
Notes
-----
@ -16,4 +67,11 @@ Notes
- The user passphrase is required in order to set up or upgrade the app. New
keypair generation, and the re-encryption of legacy encrypted files requires
it. Therefore an appinfo/update.php script cannot be used, and upgrade logic
is handled in the login hook listener.
is handled in the login hook listener. Therefore each time the user logs in
their files are scanned to detect unencrypted and legacy encrypted files, and
they are (re)encrypted as necessary. This may present a performance issue; we
need to monitor this.
- When files are saved to ownCloud via WebDAV, a .part file extension is used so
that the file isn't cached before the upload has been completed. .part files
are not compatible with files_encrytion's key management system however, so
we have to always sanitise such paths manually before using them.

View file

@ -1 +1 @@
0.3
0.4

View file

@ -0,0 +1,10 @@
/* Copyright (c) 2013, Sam Tuke, <samtuke@owncloud.com>
This file is licensed under the Affero General Public License version 3 or later.
See the COPYING-README file. */
#encryptAllError
, #encryptAllSuccess
, #recoveryEnabledError
, #recoveryEnabledSuccess {
display: none;
}

View file

@ -23,10 +23,11 @@
namespace OCA\Encryption;
use OC\Files\Filesystem;
/**
* Class for hook specific logic
*/
class Hooks {
// TODO: use passphrase for encrypting private key that is separate to
@ -36,156 +37,489 @@ class Hooks {
* @brief Startup encryption backend upon user login
* @note This method should never be called for users using client side encryption
*/
public static function login( $params ) {
public static function login($params) {
// Manually initialise Filesystem{} singleton with correct
// fake root path, in order to avoid fatal webdav errors
\OC\Files\Filesystem::init( $params['uid'], $params['uid'] . '/' . 'files' . '/' );
$view = new \OC_FilesystemView( '/' );
// NOTE: disabled because this give errors on webdav!
//\OC\Files\Filesystem::init( $params['uid'], '/' . 'files' . '/' );
$util = new Util( $view, $params['uid'] );
// Check files_encryption infrastructure is ready for action
if ( ! $util->ready() ) {
\OC_Log::write( 'Encryption library', 'User account "' . $params['uid'] . '" is not ready for encryption; configuration started', \OC_Log::DEBUG );
return $util->setupServerSide( $params['password'] );
$view = new \OC_FilesystemView('/');
// ensure filesystem is loaded
if(!\OC\Files\Filesystem::$loaded) {
\OC_Util::setupFS($params['uid']);
}
\OC_FileProxy::$enabled = false;
$encryptedKey = Keymanager::getPrivateKey( $view, $params['uid'] );
\OC_FileProxy::$enabled = true;
$privateKey = Crypt::symmetricDecryptFileContent( $encryptedKey, $params['password'] );
$session = new Session();
$session->setPrivateKey( $privateKey, $params['uid'] );
$view1 = new \OC_FilesystemView( '/' . $params['uid'] );
// Set legacy encryption key if it exists, to support
// depreciated encryption system
if (
$view1->file_exists( 'encryption.key' )
&& $encLegacyKey = $view1->file_get_contents( 'encryption.key' )
) {
$plainLegacyKey = Crypt::legacyDecrypt( $encLegacyKey, $params['password'] );
$session->setLegacyKey( $plainLegacyKey );
$util = new Util($view, $params['uid']);
// setup user, if user not ready force relogin
if (Helper::setupUser($util, $params['password']) === false) {
return false;
}
$publicKey = Keymanager::getPublicKey( $view, $params['uid'] );
// Encrypt existing user files:
// This serves to upgrade old versions of the encryption
// app (see appinfo/spec.txt)
if (
$util->encryptAll( $publicKey, '/' . $params['uid'] . '/' . 'files', $session->getLegacyKey(), $params['password'] )
) {
\OC_Log::write(
'Encryption library', 'Encryption of existing files belonging to "' . $params['uid'] . '" started at login'
, \OC_Log::INFO
);
$encryptedKey = Keymanager::getPrivateKey($view, $params['uid']);
$privateKey = Crypt::symmetricDecryptFileContent($encryptedKey, $params['password']);
$session = new \OCA\Encryption\Session($view);
$session->setPrivateKey($privateKey, $params['uid']);
// Check if first-run file migration has already been performed
$migrationCompleted = $util->getMigrationStatus();
// If migration not yet done
if (!$migrationCompleted) {
$userView = new \OC_FilesystemView('/' . $params['uid']);
// Set legacy encryption key if it exists, to support
// depreciated encryption system
if (
$userView->file_exists('encryption.key')
&& $encLegacyKey = $userView->file_get_contents('encryption.key')
) {
$plainLegacyKey = Crypt::legacyBlockDecrypt($encLegacyKey, $params['password']);
$session->setLegacyKey($plainLegacyKey);
}
// 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'])
) {
\OC_Log::write(
'Encryption library', 'Encryption of existing files belonging to "' . $params['uid'] . '" completed'
, \OC_Log::INFO
);
}
// Register successful migration in DB
$util->setMigrationStatus(1);
}
return true;
}
/**
* @brief setup encryption backend upon user created
* @note This method should never be called for users using client side encryption
*/
public static function postCreateUser($params) {
$view = new \OC_FilesystemView('/');
$util = new Util($view, $params['uid']);
Helper::setupUser($util, $params['password']);
}
/**
* @brief cleanup encryption backend upon user deleted
* @note This method should never be called for users using client side encryption
*/
public static function postDeleteUser($params) {
$view = new \OC_FilesystemView('/');
// cleanup public key
$publicKey = '/public-keys/' . $params['uid'] . '.public.key';
// Disable encryption proxy to prevent recursive calls
$proxyStatus = \OC_FileProxy::$enabled;
\OC_FileProxy::$enabled = false;
$view->unlink($publicKey);
\OC_FileProxy::$enabled = $proxyStatus;
}
/**
* @brief Change a user's encryption passphrase
* @param array $params keys: uid, password
*/
public static function setPassphrase( $params ) {
public static function setPassphrase($params) {
// Only attempt to change passphrase if server-side encryption
// is in use (client-side encryption does not have access to
// the necessary keys)
if ( Crypt::mode() == 'server' ) {
$session = new Session();
// Get existing decrypted private key
$privateKey = $session->getPrivateKey();
// Encrypt private key with new user pwd as passphrase
$encryptedPrivateKey = Crypt::symmetricEncryptFileContent( $privateKey, $params['password'] );
// Save private key
Keymanager::setPrivateKey( $encryptedPrivateKey );
// NOTE: Session does not need to be updated as the
// private key has not changed, only the passphrase
// used to decrypt it has changed
}
}
/**
* @brief update the encryption key of the file uploaded by the client
*/
public static function updateKeyfile( $params ) {
if ( Crypt::mode() == 'client' ) {
if ( isset( $params['properties']['key'] ) ) {
$view = new \OC_FilesystemView( '/' );
$userId = \OCP\User::getUser();
Keymanager::setFileKey( $view, $params['path'], $userId, $params['properties']['key'] );
} else {
\OC_Log::write(
'Encryption library', "Client side encryption is enabled but the client doesn't provide a encryption key for the file!"
, \OC_Log::ERROR
);
error_log( "Client side encryption is enabled but the client doesn't provide an encryption key for the file!" );
if (Crypt::mode() === 'server') {
if ($params['uid'] === \OCP\User::getUser()) {
$view = new \OC_FilesystemView('/');
$session = new \OCA\Encryption\Session($view);
// Get existing decrypted private key
$privateKey = $session->getPrivateKey();
// Encrypt private key with new user pwd as passphrase
$encryptedPrivateKey = Crypt::symmetricEncryptFileContent($privateKey, $params['password']);
// Save private key
Keymanager::setPrivateKey($encryptedPrivateKey);
// NOTE: Session does not need to be updated as the
// private key has not changed, only the passphrase
// used to decrypt it has changed
} else { // admin changed the password for a different user, create new keys and reencrypt file keys
$user = $params['uid'];
$recoveryPassword = $params['recoveryPassword'];
$newUserPassword = $params['password'];
$view = new \OC_FilesystemView('/');
// make sure that the users home is mounted
\OC\Files\Filesystem::initMountPoints($user);
$keypair = Crypt::createKeypair();
// Disable encryption proxy to prevent recursive calls
$proxyStatus = \OC_FileProxy::$enabled;
\OC_FileProxy::$enabled = false;
// Save public key
$view->file_put_contents('/public-keys/' . $user . '.public.key', $keypair['publicKey']);
// Encrypt private key empty passphrase
$encryptedPrivateKey = Crypt::symmetricEncryptFileContent($keypair['privateKey'], $newUserPassword);
// Save private key
$view->file_put_contents(
'/' . $user . '/files_encryption/' . $user . '.private.key', $encryptedPrivateKey);
if ($recoveryPassword) { // if recovery key is set we can re-encrypt the key files
$util = new Util($view, $user);
$util->recoverUsersFiles($recoveryPassword);
}
\OC_FileProxy::$enabled = $proxyStatus;
}
}
}
/**
* @brief
/*
* @brief check if files can be encrypted to every user.
*/
public static function postShared( $params ) {
}
/**
* @brief
* @param $params
*/
public static function preUnshare( $params ) {
// Delete existing catfile
// Generate new catfile and env keys
// Save env keys to user folders
public static function preShared($params) {
$users = array();
$view = new \OC\Files\View('/public-keys/');
switch ($params['shareType']) {
case \OCP\Share::SHARE_TYPE_USER:
$users[] = $params['shareWith'];
break;
case \OCP\Share::SHARE_TYPE_GROUP:
$users = \OC_Group::usersInGroup($params['shareWith']);
break;
}
$error = false;
foreach ($users as $user) {
if (!$view->file_exists($user . '.public.key')) {
$error = true;
break;
}
}
if ($error) // Set flag var 'run' to notify emitting
// script that hook execution failed
{
$params['run']->run = false;
}
// TODO: Make sure files_sharing provides user
// feedback on failed share
}
/**
* @brief
* @brief
*/
public static function preUnshareAll( $params ) {
trigger_error( "preUnshareAll" );
public static function postShared($params) {
// NOTE: $params has keys:
// [itemType] => file
// itemSource -> int, filecache file ID
// [parent] =>
// [itemTarget] => /13
// shareWith -> string, uid of user being shared to
// fileTarget -> path of file being shared
// uidOwner -> owner of the original file being shared
// [shareType] => 0
// [shareWith] => test1
// [uidOwner] => admin
// [permissions] => 17
// [fileSource] => 13
// [fileTarget] => /test8
// [id] => 10
// [token] =>
// [run] => whether emitting script should continue to run
// TODO: Should other kinds of item be encrypted too?
if ($params['itemType'] === 'file' || $params['itemType'] === 'folder') {
$view = new \OC_FilesystemView('/');
$session = new \OCA\Encryption\Session($view);
$userId = \OCP\User::getUser();
$util = new Util($view, $userId);
$path = $util->fileIdToPath($params['itemSource']);
$share = $util->getParentFromShare($params['id']);
//if parent is set, then this is a re-share action
if ($share['parent'] !== null) {
// get the parent from current share
$parent = $util->getShareParent($params['parent']);
// if parent is file the it is an 1:1 share
if ($parent['item_type'] === 'file') {
// prefix path with Shared
$path = '/Shared' . $parent['file_target'];
} else {
// NOTE: parent is folder but shared was a file!
// we try to rebuild the missing path
// some examples we face here
// user1 share folder1 with user2 folder1 has
// the following structure
// /folder1/subfolder1/subsubfolder1/somefile.txt
// user2 re-share subfolder2 with user3
// user3 re-share somefile.txt user4
// so our path should be
// /Shared/subfolder1/subsubfolder1/somefile.txt
// while user3 is sharing
if ($params['itemType'] === 'file') {
// get target path
$targetPath = $util->fileIdToPath($params['fileSource']);
$targetPathSplit = array_reverse(explode('/', $targetPath));
// init values
$path = '';
$sharedPart = ltrim($parent['file_target'], '/');
// rebuild path
foreach ($targetPathSplit as $pathPart) {
if ($pathPart !== $sharedPart) {
$path = '/' . $pathPart . $path;
} else {
break;
}
}
// prefix path with Shared
$path = '/Shared' . $parent['file_target'] . $path;
} else {
// prefix path with Shared
$path = '/Shared' . $parent['file_target'] . $params['fileTarget'];
}
}
}
$sharingEnabled = \OCP\Share::isEnabled();
// get the path including mount point only if not a shared folder
if(strncmp($path, '/Shared' , strlen('/Shared') !== 0)) {
// get path including the the storage mount point
$path = $util->getPathWithMountPoint($params['itemSource']);
}
// if a folder was shared, get a list of all (sub-)folders
if ($params['itemType'] === 'folder') {
$allFiles = $util->getAllFiles($path);
} else {
$allFiles = array($path);
}
foreach ($allFiles as $path) {
$usersSharing = $util->getSharingUsersArray($sharingEnabled, $path);
$util->setSharedFileKeyfiles($session, $usersSharing, $path);
}
}
}
/**
* @brief
*/
public static function postUnshare($params) {
// NOTE: $params has keys:
// [itemType] => file
// [itemSource] => 13
// [shareType] => 0
// [shareWith] => test1
// [itemParent] =>
if ($params['itemType'] === 'file' || $params['itemType'] === 'folder') {
$view = new \OC_FilesystemView('/');
$userId = \OCP\User::getUser();
$util = new Util($view, $userId);
$path = $util->fileIdToPath($params['itemSource']);
// check if this is a re-share
if ($params['itemParent']) {
// get the parent from current share
$parent = $util->getShareParent($params['itemParent']);
// get target path
$targetPath = $util->fileIdToPath($params['itemSource']);
$targetPathSplit = array_reverse(explode('/', $targetPath));
// init values
$path = '';
$sharedPart = ltrim($parent['file_target'], '/');
// rebuild path
foreach ($targetPathSplit as $pathPart) {
if ($pathPart !== $sharedPart) {
$path = '/' . $pathPart . $path;
} else {
break;
}
}
// prefix path with Shared
$path = '/Shared' . $parent['file_target'] . $path;
}
// for group shares get a list of the group members
if ($params['shareType'] === \OCP\Share::SHARE_TYPE_GROUP) {
$userIds = \OC_Group::usersInGroup($params['shareWith']);
} else {
if ($params['shareType'] === \OCP\Share::SHARE_TYPE_LINK) {
$userIds = array($util->getPublicShareKeyId());
} else {
$userIds = array($params['shareWith']);
}
}
// get the path including mount point only if not a shared folder
if(strncmp($path, '/Shared' , strlen('/Shared') !== 0)) {
// get path including the the storage mount point
$path = $util->getPathWithMountPoint($params['itemSource']);
}
// if we unshare a folder we need a list of all (sub-)files
if ($params['itemType'] === 'folder') {
$allFiles = $util->getAllFiles( $path );
} else {
$allFiles = array($path);
}
foreach ($allFiles as $path) {
// check if the user still has access to the file, otherwise delete share key
$sharingUsers = $util->getSharingUsersArray(true, $path);
// Unshare every user who no longer has access to the file
$delUsers = array_diff($userIds, $sharingUsers);
// delete share key
Keymanager::delShareKey($view, $delUsers, $path);
}
}
}
/**
* @brief after a file is renamed, rename its keyfile and share-keys also fix the file size and fix also the sharing
* @param array with oldpath and newpath
*
* This function is connected to the rename signal of OC_Filesystem and adjust the name and location
* of the stored versions along the actual file
*/
public static function postRename($params) {
// Disable encryption proxy to prevent recursive calls
$proxyStatus = \OC_FileProxy::$enabled;
\OC_FileProxy::$enabled = false;
$view = new \OC_FilesystemView('/');
$session = new \OCA\Encryption\Session($view);
$userId = \OCP\User::getUser();
$util = new Util($view, $userId);
// Format paths to be relative to user files dir
$oldKeyfilePath = \OC\Files\Filesystem::normalizePath(
$userId . '/' . 'files_encryption' . '/' . 'keyfiles' . '/' . $params['oldpath']);
$newKeyfilePath = \OC\Files\Filesystem::normalizePath(
$userId . '/' . 'files_encryption' . '/' . 'keyfiles' . '/' . $params['newpath']);
// add key ext if this is not an folder
if (!$view->is_dir($oldKeyfilePath)) {
$oldKeyfilePath .= '.key';
$newKeyfilePath .= '.key';
// handle share-keys
$localKeyPath = $view->getLocalFile($userId . '/files_encryption/share-keys/' . $params['oldpath']);
$matches = glob(preg_quote($localKeyPath) . '*.shareKey');
foreach ($matches as $src) {
$dst = \OC\Files\Filesystem::normalizePath(str_replace($params['oldpath'], $params['newpath'], $src));
// create destination folder if not exists
if (!file_exists(dirname($dst))) {
mkdir(dirname($dst), 0750, true);
}
rename($src, $dst);
}
} else {
// handle share-keys folders
$oldShareKeyfilePath = \OC\Files\Filesystem::normalizePath(
$userId . '/' . 'files_encryption' . '/' . 'share-keys' . '/' . $params['oldpath']);
$newShareKeyfilePath = \OC\Files\Filesystem::normalizePath(
$userId . '/' . 'files_encryption' . '/' . 'share-keys' . '/' . $params['newpath']);
// create destination folder if not exists
if (!$view->file_exists(dirname($newShareKeyfilePath))) {
$view->mkdir(dirname($newShareKeyfilePath), 0750, true);
}
$view->rename($oldShareKeyfilePath, $newShareKeyfilePath);
}
// Rename keyfile so it isn't orphaned
if ($view->file_exists($oldKeyfilePath)) {
// create destination folder if not exists
if (!$view->file_exists(dirname($newKeyfilePath))) {
$view->mkdir(dirname($newKeyfilePath), 0750, true);
}
$view->rename($oldKeyfilePath, $newKeyfilePath);
}
// build the path to the file
$newPath = '/' . $userId . '/files' . $params['newpath'];
$newPathRelative = $params['newpath'];
if ($util->fixFileSize($newPath)) {
// get sharing app state
$sharingEnabled = \OCP\Share::isEnabled();
// get users
$usersSharing = $util->getSharingUsersArray($sharingEnabled, $newPathRelative);
// update sharing-keys
$util->setSharedFileKeyfiles($session, $usersSharing, $newPathRelative);
}
\OC_FileProxy::$enabled = $proxyStatus;
}
}

View file

@ -0,0 +1,102 @@
/**
* Copyright (c) 2013, Sam Tuke <samtuke@owncloud.com>, Robin Appelman
* <icewind1991@gmail.com>
* This file is licensed under the Affero General Public License version 3 or later.
* See the COPYING-README file.
*/
OC.msg={
startSaving:function(selector){
$(selector)
.html( t('settings', 'Saving...') )
.removeClass('success')
.removeClass('error')
.stop(true, true)
.show();
},
finishedSaving:function(selector, data){
if( data.status === "success" ){
$(selector).html( data.data.message )
.addClass('success')
.stop(true, true)
.delay(3000)
.fadeOut(900);
}else{
$(selector).html( data.data.message ).addClass('error');
}
}
};
$(document).ready(function(){
// Trigger ajax on recoveryAdmin status change
var enabledStatus = $('#adminEnableRecovery').val();
$('input:password[name="recoveryPassword"]').keyup(function(event) {
var recoveryPassword = $( '#recoveryPassword' ).val();
var checkedButton = $('input:radio[name="adminEnableRecovery"]:checked').val();
var uncheckedValue = (1+parseInt(checkedButton)) % 2;
if (recoveryPassword != '' ) {
$('input:radio[name="adminEnableRecovery"][value="'+uncheckedValue.toString()+'"]').removeAttr("disabled");
} else {
$('input:radio[name="adminEnableRecovery"][value="'+uncheckedValue.toString()+'"]').attr("disabled", "true");
}
});
$( 'input:radio[name="adminEnableRecovery"]' ).change(
function() {
var recoveryStatus = $( this ).val();
var oldStatus = (1+parseInt(recoveryStatus)) % 2;
var recoveryPassword = $( '#recoveryPassword' ).val();
$.post(
OC.filePath( 'files_encryption', 'ajax', 'adminrecovery.php' )
, { adminEnableRecovery: recoveryStatus, recoveryPassword: recoveryPassword }
, function( result ) {
if (result.status === "error") {
OC.Notification.show(t('admin', result.data.message));
$('input:radio[name="adminEnableRecovery"][value="'+oldStatus.toString()+'"]').attr("checked", "true");
} else {
OC.Notification.hide();
if (recoveryStatus === "0") {
$('button:button[name="submitChangeRecoveryKey"]').attr("disabled", "true");
$('input:password[name="changeRecoveryPassword"]').attr("disabled", "true");
$('input:password[name="changeRecoveryPassword"]').val("");
} else {
$('input:password[name="changeRecoveryPassword"]').removeAttr("disabled");
}
}
}
);
}
);
// change recovery password
$('input:password[name="changeRecoveryPassword"]').keyup(function(event) {
var oldRecoveryPassword = $('input:password[id="oldRecoveryPassword"]').val();
var newRecoveryPassword = $('input:password[id="newRecoveryPassword"]').val();
if (newRecoveryPassword != '' && oldRecoveryPassword != '' ) {
$('button:button[name="submitChangeRecoveryKey"]').removeAttr("disabled");
} else {
$('button:button[name="submitChangeRecoveryKey"]').attr("disabled", "true");
}
});
$('button:button[name="submitChangeRecoveryKey"]').click(function() {
var oldRecoveryPassword = $('input:password[id="oldRecoveryPassword"]').val();
var newRecoveryPassword = $('input:password[id="newRecoveryPassword"]').val();
OC.msg.startSaving('#encryption .msg');
$.post(
OC.filePath( 'files_encryption', 'ajax', 'changeRecoveryPassword.php' )
, { oldPassword: oldRecoveryPassword, newPassword: newRecoveryPassword }
, function( data ) {
if (data.status == "error") {
OC.msg.finishedSaving('#encryption .msg', data);
} else {
OC.msg.finishedSaving('#encryption .msg', data);
}
}
);
});
});

View file

@ -0,0 +1,60 @@
/**
* Copyright (c) 2013, Sam Tuke <samtuke@owncloud.com>
* This file is licensed under the Affero General Public License version 3 or later.
* See the COPYING-README file.
*/
$(document).ready(function(){
// Trigger ajax on recoveryAdmin status change
$( 'input:radio[name="userEnableRecovery"]' ).change(
function() {
// Hide feedback messages in case they're already visible
$('#recoveryEnabledSuccess').hide();
$('#recoveryEnabledError').hide();
var recoveryStatus = $( this ).val();
$.post(
OC.filePath( 'files_encryption', 'ajax', 'userrecovery.php' )
, { userEnableRecovery: recoveryStatus }
, function( data ) {
if ( data.status == "success" ) {
$('#recoveryEnabledSuccess').show();
} else {
$('#recoveryEnabledError').show();
}
}
);
// Ensure page is not reloaded on form submit
return false;
}
);
$("#encryptAll").click(
function(){
// Hide feedback messages in case they're already visible
$('#encryptAllSuccess').hide();
$('#encryptAllError').hide();
var userPassword = $( '#userPassword' ).val();
var encryptAll = $( '#encryptAll' ).val();
$.post(
OC.filePath( 'files_encryption', 'ajax', 'encryptall.php' )
, { encryptAll: encryptAll, userPassword: userPassword }
, function( data ) {
if ( data.status == "success" ) {
$('#encryptAllSuccess').show();
} else {
$('#encryptAllError').show();
}
}
);
// Ensure page is not reloaded on form submit
return false;
}
);
});

View file

@ -1,19 +0,0 @@
/**
* Copyright (c) 2011, Robin Appelman <icewind1991@gmail.com>
* This file is licensed under the Affero General Public License version 3 or later.
* See the COPYING-README file.
*/
$(document).ready(function(){
$('#encryption_blacklist').multiSelect({
oncheck:blackListChange,
onuncheck:blackListChange,
createText:'...'
});
function blackListChange(){
var blackList=$('#encryption_blacklist').val().join(',');
OC.AppConfig.setValue('files_encryption','type_blacklist',blackList);
}
})

View file

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array(
"Encryption" => "التشفير",
"File encryption is enabled." => "تشفير الملفات فعال.",
"The following file types will not be encrypted:" => "الملفات الاتية لن يتم تشفيرها:",
"Exclude the following file types from encryption:" => "إستثناء أنواع الملفات الاتية من التشفير: ",
"None" => "لا شيء"
"Saving..." => "جاري الحفظ...",
"Encryption" => "التشفير"
);

View file

@ -1,4 +1,4 @@
<?php $TRANSLATIONS = array(
"Encryption" => "Криптиране",
"None" => "Няма"
"Saving..." => "Записване...",
"Encryption" => "Криптиране"
);

View file

@ -1,4 +1,4 @@
<?php $TRANSLATIONS = array(
"Encryption" => "সংকেতায়ন",
"None" => "কোনটিই নয়"
"Saving..." => "সংরক্ষণ করা হচ্ছে..",
"Encryption" => "সংকেতায়ন"
);

View file

@ -1,7 +1,22 @@
<?php $TRANSLATIONS = array(
"Recovery key successfully enabled" => "La clau de recuperació s'ha activat",
"Could not enable recovery key. Please check your recovery key password!" => "No s'ha pogut activar la clau de recuperació. Comproveu contrasenya de la clau de recuperació!",
"Recovery key successfully disabled" => "La clau de recuperació s'ha descativat",
"Could not disable recovery key. Please check your recovery key password!" => "No s'ha pogut desactivar la calu de recuperació. Comproveu la contrasenya de la clau de recuperació!",
"Password successfully changed." => "La contrasenya s'ha canviat.",
"Could not change the password. Maybe the old password was not correct." => "No s'ha pogut canviar la contrasenya. Potser la contrasenya anterior no era correcta.",
"Saving..." => "Desant...",
"Encryption" => "Xifrat",
"File encryption is enabled." => "El xifrat de fitxers està activat.",
"The following file types will not be encrypted:" => "Els tipus de fitxers següents no es xifraran:",
"Exclude the following file types from encryption:" => "Exclou els tipus de fitxers següents del xifratge:",
"None" => "Cap"
"Enable encryption passwords recovery key (allow sharing to recovery key):" => "Activa la clau de recuperació de contrasenya (permet compartir la clau de recuperació):",
"Recovery account password" => "Contrasenya de recuperació del compte",
"Enabled" => "Activat",
"Disabled" => "Desactivat",
"Change encryption passwords recovery key:" => "Canvia la clau de recuperació de la contrasenya:",
"Old Recovery account password" => "Contrasenya de recuperació anterior",
"New Recovery account password" => "Nova contrasenya de recuperació de compte",
"Change Password" => "Canvia la contrasenya",
"Enable password recovery by sharing all files with your administrator:" => "Activa la recuperació de contrasenya compartint tots els fitxers amb l'administrador:",
"Enabling this option will allow you to reobtain access to your encrypted files if your password is lost" => "Activant aquesta opció us permetrà obtenir de nou accés als fitxers encriptats si perdeu la contrasenya",
"File recovery settings updated" => "S'han actualitzat els arranjaments de recuperació de fitxers",
"Could not update file recovery" => "No s'ha pogut actualitzar la recuperació de fitxers"
);

View file

@ -1,7 +1,22 @@
<?php $TRANSLATIONS = array(
"Recovery key successfully enabled" => "Záchranný klíč byl úspěšně povolen",
"Could not enable recovery key. Please check your recovery key password!" => "Nepodařilo se povolit záchranný klíč. Zkontrolujte prosím vaše heslo záchranného klíče!",
"Recovery key successfully disabled" => "Záchranný klíč byl úspěšně zakázán",
"Could not disable recovery key. Please check your recovery key password!" => "Nepodařilo se zakázat záchranný klíč. Zkontrolujte prosím vaše heslo záchranného klíče!",
"Password successfully changed." => "Heslo bylo úspěšně změněno.",
"Could not change the password. Maybe the old password was not correct." => "Heslo se nepodařilo změnit. Pravděpodobně nebylo stávající heslo zadáno správně.",
"Saving..." => "Ukládám...",
"Encryption" => "Šifrování",
"File encryption is enabled." => "Šifrování je povoleno.",
"The following file types will not be encrypted:" => "Následující typy souborů nebudou šifrovány:",
"Exclude the following file types from encryption:" => "Vyjmout následující typy souborů ze šifrování:",
"None" => "Žádné"
"Enable encryption passwords recovery key (allow sharing to recovery key):" => "Povolit šifrování hesel záchranným klíčem (povolí sdílený záchranný klíč):",
"Recovery account password" => "Heslo pro obnovu účtu",
"Enabled" => "Povolit",
"Disabled" => "Zakázat",
"Change encryption passwords recovery key:" => "Změnit šifrovací hesla záchranného klíče",
"Old Recovery account password" => "Stávající heslo pro obnovu účtu",
"New Recovery account password" => "Nové heslo pro obnovu účtu",
"Change Password" => "Změnit heslo",
"Enable password recovery by sharing all files with your administrator:" => "Povolit obnovu hesla sdílením všech souborů s vaším administrátorem:",
"Enabling this option will allow you to reobtain access to your encrypted files if your password is lost" => "Povolení této volby vám umožní získat přístup k vašim zašifrovaným souborům pokud ztratíte heslo",
"File recovery settings updated" => "Možnosti obnovy souboru upraveny",
"Could not update file recovery" => "Nepodařilo se změnit možnosti obnovy souboru"
);

View file

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array(
"Encryption" => "Amgryptiad",
"File encryption is enabled." => "Galluogwyd amgryptio ffeiliau.",
"The following file types will not be encrypted:" => "Ni fydd ffeiliau o'r math yma'n cael eu hamgryptio:",
"Exclude the following file types from encryption:" => "Eithrio'r mathau canlynol o ffeiliau rhag cael eu hamgryptio:",
"None" => "Dim"
"Saving..." => "Yn cadw...",
"Encryption" => "Amgryptiad"
);

View file

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array(
"Encryption" => "Kryptering",
"File encryption is enabled." => "Fil kryptering aktiveret.",
"The following file types will not be encrypted:" => "De følgende filtyper vil ikke blive krypteret:",
"Exclude the following file types from encryption:" => "Ekskluder de følgende fil typer fra kryptering:",
"None" => "Ingen"
"Saving..." => "Gemmer...",
"Encryption" => "Kryptering"
);

View file

@ -1,7 +1,17 @@
<?php $TRANSLATIONS = array(
"Recovery key successfully enabled" => "Wiederherstellungsschlüssel wurde erfolgreich aktiviert",
"Could not enable recovery key. Please check your recovery key password!" => "Der Wiederherstellungsschlüssel konnte nicht aktiviert werden. Überprüfen Sie Ihr Wiederherstellungspasswort!",
"Recovery key successfully disabled" => "Wiederherstellungsschlüssel deaktiviert.",
"Could not disable recovery key. Please check your recovery key password!" => "Der Wiederherstellungsschlüssel konnte nicht deaktiviert werden. Überprüfen Sie Ihr Wiederherstellungspasswort!",
"Password successfully changed." => "Dein Passwort wurde geändert.",
"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.",
"Saving..." => "Speichern...",
"Encryption" => "Verschlüsselung",
"File encryption is enabled." => "Dateiverschlüsselung ist aktiviert",
"The following file types will not be encrypted:" => "Die folgenden Dateitypen werden nicht verschlüsselt:",
"Exclude the following file types from encryption:" => "Schließe die folgenden Dateitypen von der Verschlüsselung aus:",
"None" => "Nichts"
"Recovery account password" => "Password zurücksetzen",
"Enabled" => "Aktiviert",
"Disabled" => "Deaktiviert",
"Change encryption passwords recovery key:" => "Wiederherstellungsschlüssel für Passwörter ändern:",
"Change Password" => "Passwort ändern",
"Enabling this option will allow you to reobtain access to your encrypted files if your password is lost" => "Wenn Sie diese Einstellung aktivieren, können Sie auch im Falle des Verlustes Ihres Passworts auf verschlüsselte Dateien zugreifen",
"File recovery settings updated" => "Einstellungen zur Wiederherstellung von Dateien wurden aktualisiert"
);

View file

@ -1,7 +1,20 @@
<?php $TRANSLATIONS = array(
"Recovery key successfully enabled" => "Der Wiederherstellungsschlüssel wurde erfolgreich aktiviert.",
"Could not enable recovery key. Please check your recovery key password!" => "Der Wiederherstellungsschlüssel konnte nicht aktiviert werden. Bitte überprüfen Sie das Passwort für den Wiederherstellungsschlüssel!",
"Recovery key successfully disabled" => "Der Wiederherstellungsschlüssel wurde erfolgreich deaktiviert.",
"Could not disable recovery key. Please check your recovery key password!" => "Der Wiederherstellungsschlüssel konnte nicht deaktiviert werden. Bitte überprüfen Sie das Passwort für den Wiederherstellungsschlüssel!",
"Password successfully changed." => "Das Passwort wurde erfolgreich geändert.",
"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.",
"Saving..." => "Speichern...",
"Encryption" => "Verschlüsselung",
"File encryption is enabled." => "Datei-Verschlüsselung ist aktiviert",
"The following file types will not be encrypted:" => "Die folgenden Dateitypen werden nicht verschlüsselt:",
"Exclude the following file types from encryption:" => "Die folgenden Dateitypen von der Verschlüsselung ausnehmen:",
"None" => "Nichts"
"Recovery account password" => "Account-Passwort wiederherstellen",
"Enabled" => "Aktiviert",
"Disabled" => "Deaktiviert",
"Old Recovery account password" => "Altes Passwort für die Account-Wiederherstellung",
"New Recovery account password" => "Neues Passwort für die Account-Wiederherstellung",
"Change Password" => "Passwort ändern",
"Enable password recovery by sharing all files with your administrator:" => "Aktiviere die Wiederherstellung deines Passwortes durch das Teilen aller Dateien mit dem Administrator:",
"Enabling this option will allow you to reobtain access to your encrypted files if your password is lost" => "Durch die Aktivierung dieser Option haben Sie die Möglichkeit, wieder auf Ihre verschlüsselten Dateien zugreifen zu können, wenn Sie Ihr Passwort verloren haben.",
"File recovery settings updated" => "Die Einstellungen für die Dateiwiederherstellung wurden aktualisiert.",
"Could not update file recovery" => "Die Dateiwiederherstellung konnte nicht aktualisiert werden."
);

View file

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array(
"Encryption" => "Κρυπτογράφηση",
"File encryption is enabled." => "Η κρυπτογράφηση αρχείων είναι ενεργή.",
"The following file types will not be encrypted:" => "Οι παρακάτω τύποι αρχείων δεν θα κρυπτογραφηθούν:",
"Exclude the following file types from encryption:" => "Εξαίρεση των παρακάτω τύπων αρχείων από την κρυπτογράφηση:",
"None" => "Τίποτα"
"Saving..." => "Γίνεται αποθήκευση...",
"Encryption" => "Κρυπτογράφηση"
);

View file

@ -1,4 +1,4 @@
<?php $TRANSLATIONS = array(
"Encryption" => "Ĉifrado",
"None" => "Nenio"
"Saving..." => "Konservante...",
"Encryption" => "Ĉifrado"
);

View file

@ -1,7 +1,22 @@
<?php $TRANSLATIONS = array(
"Recovery key successfully enabled" => "Se ha habilitado la recuperación de archivos",
"Could not enable recovery key. Please check your recovery key password!" => "No se pudo habilitar la clave de recuperación. Por favor compruebe su contraseña.",
"Recovery key successfully disabled" => "Clave de recuperación deshabilitada",
"Could not disable recovery key. Please check your recovery key password!" => "No se pudo deshabilitar la clave de recuperación. Por favor compruebe su contraseña!",
"Password successfully changed." => "Su contraseña ha sido cambiada",
"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.",
"Saving..." => "Guardando...",
"Encryption" => "Cifrado",
"File encryption is enabled." => "La encriptacion de archivo esta activada.",
"The following file types will not be encrypted:" => "Los siguientes tipos de archivo no seran encriptados:",
"Exclude the following file types from encryption:" => "Excluir los siguientes tipos de archivo de la encriptacion:",
"None" => "Ninguno"
"Enable encryption passwords recovery key (allow sharing to recovery key):" => "Habilitar clave de recuperación de contraseñas ():",
"Recovery account password" => "Recuperar contraseña",
"Enabled" => "Habilitar",
"Disabled" => "Deshabilitado",
"Change encryption passwords recovery key:" => "Cambiar clave de cifrado de contraseñas:",
"Old Recovery account password" => "Contraseña de recuperación actual",
"New Recovery account password" => "Contraseña de recuperación nueva",
"Change Password" => "Cambiar contraseña",
"Enable password recovery by sharing all files with your administrator:" => "Habilitar recuperación de contraseña compartiendo todos los archivos con su administrador",
"Enabling this option will allow you to reobtain access to your encrypted files if your password is lost" => "Habilitar esta opción para poder acceder a sus archivos cifrados si pierde su contraseña",
"File recovery settings updated" => "Opciones de recuperación de archivos actualizada",
"Could not update file recovery" => "No se pudo actualizar la recuperación de archivos"
);

View file

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array(
"Encryption" => "Encriptación",
"File encryption is enabled." => "La encriptación de archivos no está habilitada",
"The following file types will not be encrypted:" => "Los siguientes tipos de archivos no serán encriptados",
"Exclude the following file types from encryption:" => "Excluir los siguientes tipos de archivos de encriptación:",
"None" => "Ninguno"
"Saving..." => "Guardando...",
"Encryption" => "Encriptación"
);

View file

@ -1,7 +1,22 @@
<?php $TRANSLATIONS = array(
"Recovery key successfully enabled" => "Taastevõtme lubamine õnnestus",
"Could not enable recovery key. Please check your recovery key password!" => "Ei suutnud lubada taastevõtit. Palun kontrolli oma taastevõtme parooli!",
"Recovery key successfully disabled" => "Taastevõtme keelamine õnnestus",
"Could not disable recovery key. Please check your recovery key password!" => "Ei suuda keelata taastevõtit. Palun kontrolli oma taastevõtme parooli!",
"Password successfully changed." => "Parool edukalt vahetatud.",
"Could not change the password. Maybe the old password was not correct." => "Ei suutnud vahetada parooli. Võib-olla on vana parool valesti sisestatud.",
"Saving..." => "Salvestamine...",
"Encryption" => "Krüpteerimine",
"File encryption is enabled." => "Faili krüpteerimine on sisse lülitatud.",
"The following file types will not be encrypted:" => "Järgnevaid failitüüpe ei krüpteerita:",
"Exclude the following file types from encryption:" => "Järgnevaid failitüüpe ei krüpteerita:",
"None" => "Pole"
"Enable encryption passwords recovery key (allow sharing to recovery key):" => "Luba krüpteerimise paroolide taastevõti (võimalda parooli jagamine taastevõtmesse):",
"Recovery account password" => "Konto taasteparool",
"Enabled" => "Sisse lülitatud",
"Disabled" => "Väljalülitatud",
"Change encryption passwords recovery key:" => "Muuda taaste võtme krüpteerimise paroole:",
"Old Recovery account password" => "Konto vana taaste parool",
"New Recovery account password" => "Konto uus taasteparool",
"Change Password" => "Muuda parooli",
"Enable password recovery by sharing all files with your administrator:" => "Luba parooli taaste jagades kõik failid administraatoriga:",
"Enabling this option will allow you to reobtain access to your encrypted files if your password is lost" => "Valiku lubamine võimaldab taastada ligipääsu krüpteeritud failidele kui parool on kadunud",
"File recovery settings updated" => "Faili taaste seaded uuendatud",
"Could not update file recovery" => "Ei suuda uuendada taastefaili"
);

View file

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array(
"Encryption" => "Enkriptazioa",
"File encryption is enabled." => "Fitxategien enkriptazioa gaituta dago.",
"The following file types will not be encrypted:" => "Hurrengo fitxategi motak ez dira enkriptatuko:",
"Exclude the following file types from encryption:" => "Baztertu hurrengo fitxategi motak enkriptatzetik:",
"None" => "Ezer"
"Saving..." => "Gordetzen...",
"Encryption" => "Enkriptazioa"
);

View file

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array(
"Encryption" => "رمزگذاری",
"File encryption is enabled." => "رمزنگاری فایلها فعال شد.",
"The following file types will not be encrypted:" => "فایلهای زیر رمزنگاری نخواهند شد:",
"Exclude the following file types from encryption:" => "فایلهای زیر از رمزنگاری نادیده گرفته می شوند:",
"None" => "هیچ‌کدام"
"Saving..." => "در حال ذخیره سازی...",
"Encryption" => "رمزگذاری"
);

View file

@ -1,7 +1,9 @@
<?php $TRANSLATIONS = array(
"Password successfully changed." => "Salasana vaihdettiin onnistuneesti.",
"Could not change the password. Maybe the old password was not correct." => "Salasanan vaihto epäonnistui. Kenties vanha salasana oli väärin.",
"Saving..." => "Tallennetaan...",
"Encryption" => "Salaus",
"File encryption is enabled." => "Tiedostojen salaus on käytössä.",
"The following file types will not be encrypted:" => "Seuraavia tiedostotyyppejä ei salata:",
"Exclude the following file types from encryption:" => "Älä salaa seuravia tiedostotyyppejä:",
"None" => "Ei mitään"
"Enabled" => "Käytössä",
"Disabled" => "Ei käytössä",
"Change Password" => "Vaihda salasana"
);

View file

@ -1,7 +1,22 @@
<?php $TRANSLATIONS = array(
"Recovery key successfully enabled" => "Clé de récupération activée avec succès",
"Could not enable recovery key. Please check your recovery key password!" => "Ne peut pas activer la clé de récupération. s'il vous plait vérifiez votre mot de passe de clé de récupération!",
"Recovery key successfully disabled" => "Clé de récupération désactivée avc succès",
"Could not disable recovery key. Please check your recovery key password!" => "Ne peut pas désactiver la clé de récupération. S'il vous plait vérifiez votre mot de passe de clé de récupération!",
"Password successfully changed." => "Mot de passe changé avec succès ",
"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.",
"Saving..." => "Enregistrement...",
"Encryption" => "Chiffrement",
"File encryption is enabled." => "Le chiffrement des fichiers est activé",
"The following file types will not be encrypted:" => "Les fichiers de types suivants ne seront pas chiffrés :",
"Exclude the following file types from encryption:" => "Ne pas chiffrer les fichiers dont les types sont les suivants :",
"None" => "Aucun"
"Enable encryption passwords recovery key (allow sharing to recovery key):" => "Activer la clé de récupération par mots de passe de cryptage (autoriser le partage de la clé de récupération) ",
"Recovery account password" => "Rétablissement du compte mot de passe ",
"Enabled" => "Activer",
"Disabled" => "Désactiver",
"Change encryption passwords recovery key:" => "Changer les mots de passe de cryptage par la clé de récupération",
"Old Recovery account password" => "Ancien compte de récupération de mots de passe",
"New Recovery account password" => "Nouveau compte de récupération de mots de passe",
"Change Password" => "Changer de mot de passe",
"Enable password recovery by sharing all files with your administrator:" => "Activer la récupération des mots de passe en partageant les fichiers avec votre administrateur:",
"Enabling this option will allow you to reobtain access to your encrypted files if your password is lost" => "En activant cette option cela vous autorisera à récupérer votre accès aux fichiers cryptés si votre mot de passe est perdu",
"File recovery settings updated" => "Mise à jour des paramètres de récupération de fichiers ",
"Could not update file recovery" => "Ne peut pas remettre à jour les fichiers de récupération"
);

View file

@ -1,7 +1,22 @@
<?php $TRANSLATIONS = array(
"Recovery key successfully enabled" => "Activada satisfactoriamente a chave de recuperación",
"Could not enable recovery key. Please check your recovery key password!" => "Non foi posíbel activar a chave de recuperación. Comprobe o contrasinal da chave de recuperación!",
"Recovery key successfully disabled" => "Desactivada satisfactoriamente a chave de recuperación",
"Could not disable recovery key. Please check your recovery key password!" => "Non foi posíbel desactivar a chave de recuperación. Comprobe o contrasinal da chave de recuperación!",
"Password successfully changed." => "O contrasinal foi cambiado satisfactoriamente",
"Could not change the password. Maybe the old password was not correct." => "Non foi posíbel cambiar o contrasinal. Probabelmente o contrasinal antigo non é o correcto.",
"Saving..." => "Gardando...",
"Encryption" => "Cifrado",
"File encryption is enabled." => "O cifrado de ficheiros está activado",
"The following file types will not be encrypted:" => "Os seguintes tipos de ficheiros non van seren cifrados:",
"Exclude the following file types from encryption:" => "Excluír os seguintes tipos de ficheiros do cifrado:",
"None" => "Ningún"
"Enable encryption passwords recovery key (allow sharing to recovery key):" => "Activar a chave de recuperación do cifrado de contrasinais (permite compartir a chave de recuperación):",
"Recovery account password" => "Recuperación do contrasinal da conta",
"Enabled" => "Activado",
"Disabled" => "Desactivado",
"Change encryption passwords recovery key:" => "Cambiar a chave de la recuperación do cifrado de contrasinais:",
"Old Recovery account password" => "Antigo contrasinal de recuperación da conta",
"New Recovery account password" => "Novo contrasinal de recuperación da conta",
"Change Password" => "Cambiar o contrasinal",
"Enable password recovery by sharing all files with your administrator:" => "Activar a recuperación de contrasinais compartindo todos os ficheiros co administrador:",
"Enabling this option will allow you to reobtain access to your encrypted files if your password is lost" => "Ao activar esta opción permitiráselle volver a obter acceso aos ficheiros cifrados se perde o contrasinal",
"File recovery settings updated" => "Actualizouse o ficheiro de axustes de recuperación",
"Could not update file recovery" => "Non foi posíbel actualizar o ficheiro de recuperación"
);

View file

@ -1,4 +1,4 @@
<?php $TRANSLATIONS = array(
"Encryption" => "הצפנה",
"None" => "כלום"
"Saving..." => "שמירה…",
"Encryption" => "הצפנה"
);

View file

@ -0,0 +1,3 @@
<?php $TRANSLATIONS = array(
"Saving..." => "Spremanje..."
);

View file

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array(
"Encryption" => "Titkosítás",
"File encryption is enabled." => "Az állományok titkosítása be van kapcsolva.",
"The following file types will not be encrypted:" => "A következő fájltípusok nem kerülnek titkosításra:",
"Exclude the following file types from encryption:" => "Zárjuk ki a titkosításból a következő fájltípusokat:",
"None" => "Egyik sem"
"Saving..." => "Mentés...",
"Encryption" => "Titkosítás"
);

View file

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array(
"Encryption" => "Enkripsi",
"File encryption is enabled." => "Enkripsi berkas aktif.",
"The following file types will not be encrypted:" => "Tipe berkas berikut tidak akan dienkripsi:",
"Exclude the following file types from encryption:" => "Kecualikan tipe berkas berikut dari enkripsi:",
"None" => "Tidak ada"
"Saving..." => "Menyimpan...",
"Encryption" => "Enkripsi"
);

Some files were not shown because too many files have changed in this diff Show more