Merge master into oc_preview
This commit is contained in:
commit
f2702ff1ca
|
@ -39,4 +39,4 @@ if (!is_array($files_list)) {
|
||||||
$files_list = array($files);
|
$files_list = array($files);
|
||||||
}
|
}
|
||||||
|
|
||||||
OC_Files::get($dir, $files_list, $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false);
|
OC_Files::get($dir, $files_list, $_SERVER['REQUEST_METHOD'] == 'HEAD');
|
||||||
|
|
|
@ -10,7 +10,7 @@ OCP\JSON::checkLoggedIn();
|
||||||
|
|
||||||
// Load the files
|
// Load the files
|
||||||
$dir = isset( $_GET['dir'] ) ? $_GET['dir'] : '';
|
$dir = isset( $_GET['dir'] ) ? $_GET['dir'] : '';
|
||||||
$doBreadcrumb = isset( $_GET['breadcrumb'] ) ? true : false;
|
$doBreadcrumb = isset($_GET['breadcrumb']);
|
||||||
$data = array();
|
$data = array();
|
||||||
|
|
||||||
// Make breadcrumb
|
// Make breadcrumb
|
||||||
|
|
|
@ -77,6 +77,12 @@ if($source) {
|
||||||
exit();
|
exit();
|
||||||
} else {
|
} else {
|
||||||
$success = false;
|
$success = false;
|
||||||
|
if (!$content) {
|
||||||
|
$templateManager = OC_Helper::getFileTemplateManager();
|
||||||
|
$mimeType = OC_Helper::getMimeType($target);
|
||||||
|
$content = $templateManager->getTemplate($mimeType);
|
||||||
|
}
|
||||||
|
|
||||||
if($content) {
|
if($content) {
|
||||||
$success = \OC\Files\Filesystem::file_put_contents($target, $content);
|
$success = \OC\Files\Filesystem::file_put_contents($target, $content);
|
||||||
} else {
|
} else {
|
||||||
|
@ -87,9 +93,11 @@ if($source) {
|
||||||
$meta = \OC\Files\Filesystem::getFileInfo($target);
|
$meta = \OC\Files\Filesystem::getFileInfo($target);
|
||||||
$id = $meta['fileid'];
|
$id = $meta['fileid'];
|
||||||
$mime = $meta['mimetype'];
|
$mime = $meta['mimetype'];
|
||||||
|
$size = $meta['size'];
|
||||||
OCP\JSON::success(array('data' => array(
|
OCP\JSON::success(array('data' => array(
|
||||||
'id' => $id,
|
'id' => $id,
|
||||||
'mime' => $mime,
|
'mime' => $mime,
|
||||||
|
'size' => $size,
|
||||||
'content' => $content,
|
'content' => $content,
|
||||||
)));
|
)));
|
||||||
exit();
|
exit();
|
||||||
|
|
|
@ -5,11 +5,11 @@ $l = OC_L10N::get('files');
|
||||||
|
|
||||||
OCP\App::registerAdmin('files', 'admin');
|
OCP\App::registerAdmin('files', 'admin');
|
||||||
|
|
||||||
OCP\App::addNavigationEntry( array( "id" => "files_index",
|
OCP\App::addNavigationEntry(array("id" => "files_index",
|
||||||
"order" => 0,
|
"order" => 0,
|
||||||
"href" => OCP\Util::linkTo( "files", "index.php" ),
|
"href" => OCP\Util::linkTo("files", "index.php"),
|
||||||
"icon" => OCP\Util::imagePath( "core", "places/files.svg" ),
|
"icon" => OCP\Util::imagePath("core", "places/files.svg"),
|
||||||
"name" => $l->t("Files") ));
|
"name" => $l->t("Files")));
|
||||||
|
|
||||||
OC_Search::registerProvider('OC_Search_Provider_File');
|
OC_Search::registerProvider('OC_Search_Provider_File');
|
||||||
|
|
||||||
|
@ -21,3 +21,7 @@ OC_Search::registerProvider('OC_Search_Provider_File');
|
||||||
\OC_Hook::connect('OC_Filesystem', 'post_rename', '\OC\Files\Cache\Updater', 'renameHook');
|
\OC_Hook::connect('OC_Filesystem', 'post_rename', '\OC\Files\Cache\Updater', 'renameHook');
|
||||||
|
|
||||||
\OCP\BackgroundJob::addRegularTask('\OC\Files\Cache\BackgroundWatcher', 'checkNext');
|
\OCP\BackgroundJob::addRegularTask('\OC\Files\Cache\BackgroundWatcher', 'checkNext');
|
||||||
|
|
||||||
|
$templateManager = OC_Helper::getFileTemplateManager();
|
||||||
|
$templateManager->registerTemplate('text/html', 'core/templates/filetemplates/template.html');
|
||||||
|
|
||||||
|
|
|
@ -49,12 +49,22 @@
|
||||||
z-index:20; position:relative; cursor:pointer; overflow:hidden;
|
z-index:20; position:relative; cursor:pointer; overflow:hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
#uploadprogresswrapper { float: right; position: relative; }
|
#uploadprogresswrapper {
|
||||||
#uploadprogresswrapper #uploadprogressbar {
|
position: relative;
|
||||||
position:relative; float: right;
|
display: inline;
|
||||||
margin-left: 12px; width:10em; height:1.5em; top:.4em;
|
}
|
||||||
|
#uploadprogressbar {
|
||||||
|
position:relative;
|
||||||
|
float: left;
|
||||||
|
margin-left: 12px;
|
||||||
|
width: 130px;
|
||||||
|
height: 26px;
|
||||||
display:inline-block;
|
display:inline-block;
|
||||||
}
|
}
|
||||||
|
#uploadprogressbar + stop {
|
||||||
|
font-size: 13px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* FILE TABLE */
|
/* FILE TABLE */
|
||||||
|
|
||||||
|
@ -275,14 +285,14 @@ a.action>img { max-height:16px; max-width:16px; vertical-align:text-bottom; }
|
||||||
display:none;
|
display:none;
|
||||||
}
|
}
|
||||||
#fileList tr:hover a.action, #fileList a.action.permanent {
|
#fileList tr:hover a.action, #fileList a.action.permanent {
|
||||||
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=.5)";
|
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
|
||||||
filter: alpha(opacity=.5);
|
filter: alpha(opacity=50);
|
||||||
opacity: .5;
|
opacity: .5;
|
||||||
display:inline;
|
display:inline;
|
||||||
}
|
}
|
||||||
#fileList tr:hover a.action:hover {
|
#fileList tr:hover a.action:hover {
|
||||||
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=1)";
|
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
|
||||||
filter: alpha(opacity=1);
|
filter: alpha(opacity=100);
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
display:inline;
|
display:inline;
|
||||||
}
|
}
|
||||||
|
|
|
@ -151,5 +151,6 @@ if ($needUpgrade) {
|
||||||
$tmpl->assign('usedSpacePercent', (int)$storageInfo['relative']);
|
$tmpl->assign('usedSpacePercent', (int)$storageInfo['relative']);
|
||||||
$tmpl->assign('isPublic', false);
|
$tmpl->assign('isPublic', false);
|
||||||
$tmpl->assign('publicUploadEnabled', $publicUploadEnabled);
|
$tmpl->assign('publicUploadEnabled', $publicUploadEnabled);
|
||||||
|
$tmpl->assign("encryptedFiles", \OCP\Util::encryptedFiles());
|
||||||
$tmpl->printPage();
|
$tmpl->printPage();
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,343 +1,345 @@
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
|
|
||||||
file_upload_param = {
|
file_upload_param = {
|
||||||
dropZone: $('#content'), // restrict dropZone to content div
|
dropZone: $('#content'), // restrict dropZone to content div
|
||||||
//singleFileUploads is on by default, so the data.files array will always have length 1
|
//singleFileUploads is on by default, so the data.files array will always have length 1
|
||||||
add: function(e, data) {
|
add: function(e, data) {
|
||||||
|
|
||||||
if(data.files[0].type === '' && data.files[0].size == 4096)
|
if(data.files[0].type === '' && data.files[0].size == 4096)
|
||||||
{
|
{
|
||||||
data.textStatus = 'dirorzero';
|
data.textStatus = 'dirorzero';
|
||||||
data.errorThrown = t('files','Unable to upload your file as it is a directory or has 0 bytes');
|
data.errorThrown = t('files','Unable to upload your file as it is a directory or has 0 bytes');
|
||||||
var fu = $(this).data('blueimp-fileupload') || $(this).data('fileupload');
|
var fu = $(this).data('blueimp-fileupload') || $(this).data('fileupload');
|
||||||
fu._trigger('fail', e, data);
|
fu._trigger('fail', e, data);
|
||||||
return true; //don't upload this file but go on with next in queue
|
return true; //don't upload this file but go on with next in queue
|
||||||
}
|
|
||||||
|
|
||||||
var totalSize=0;
|
|
||||||
$.each(data.originalFiles, function(i,file){
|
|
||||||
totalSize+=file.size;
|
|
||||||
});
|
|
||||||
|
|
||||||
if(totalSize>$('#max_upload').val()){
|
|
||||||
data.textStatus = 'notenoughspace';
|
|
||||||
data.errorThrown = t('files','Not enough space available');
|
|
||||||
var fu = $(this).data('blueimp-fileupload') || $(this).data('fileupload');
|
|
||||||
fu._trigger('fail', e, data);
|
|
||||||
return false; //don't upload anything
|
|
||||||
}
|
|
||||||
|
|
||||||
// start the actual file upload
|
|
||||||
var jqXHR = data.submit();
|
|
||||||
|
|
||||||
// remember jqXHR to show warning to user when he navigates away but an upload is still in progress
|
|
||||||
if (typeof data.context !== 'undefined' && data.context.data('type') === 'dir') {
|
|
||||||
var dirName = data.context.data('file');
|
|
||||||
if(typeof uploadingFiles[dirName] === 'undefined') {
|
|
||||||
uploadingFiles[dirName] = {};
|
|
||||||
}
|
|
||||||
uploadingFiles[dirName][data.files[0].name] = jqXHR;
|
|
||||||
} else {
|
|
||||||
uploadingFiles[data.files[0].name] = jqXHR;
|
|
||||||
}
|
|
||||||
|
|
||||||
//show cancel button
|
|
||||||
if($('html.lte9').length === 0 && data.dataType !== 'iframe') {
|
|
||||||
$('#uploadprogresswrapper input.stop').show();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
/**
|
|
||||||
* called after the first add, does NOT have the data param
|
|
||||||
* @param e
|
|
||||||
*/
|
|
||||||
start: function(e) {
|
|
||||||
//IE < 10 does not fire the necessary events for the progress bar.
|
|
||||||
if($('html.lte9').length > 0) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$('#uploadprogressbar').progressbar({value:0});
|
|
||||||
$('#uploadprogressbar').fadeIn();
|
|
||||||
},
|
|
||||||
fail: function(e, data) {
|
|
||||||
if (typeof data.textStatus !== 'undefined' && data.textStatus !== 'success' ) {
|
|
||||||
if (data.textStatus === 'abort') {
|
|
||||||
$('#notification').text(t('files', 'Upload cancelled.'));
|
|
||||||
} else {
|
|
||||||
// HTTP connection problem
|
|
||||||
$('#notification').text(data.errorThrown);
|
|
||||||
}
|
|
||||||
$('#notification').fadeIn();
|
|
||||||
//hide notification after 5 sec
|
|
||||||
setTimeout(function() {
|
|
||||||
$('#notification').fadeOut();
|
|
||||||
}, 5000);
|
|
||||||
}
|
|
||||||
delete uploadingFiles[data.files[0].name];
|
|
||||||
},
|
|
||||||
progress: function(e, data) {
|
|
||||||
// TODO: show nice progress bar in file row
|
|
||||||
},
|
|
||||||
progressall: function(e, data) {
|
|
||||||
//IE < 10 does not fire the necessary events for the progress bar.
|
|
||||||
if($('html.lte9').length > 0) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
var progress = (data.loaded/data.total)*100;
|
|
||||||
$('#uploadprogressbar').progressbar('value',progress);
|
|
||||||
},
|
|
||||||
/**
|
|
||||||
* called for every successful upload
|
|
||||||
* @param e
|
|
||||||
* @param data
|
|
||||||
*/
|
|
||||||
done:function(e, data) {
|
|
||||||
// handle different responses (json or body from iframe for ie)
|
|
||||||
var response;
|
|
||||||
if (typeof data.result === 'string') {
|
|
||||||
response = data.result;
|
|
||||||
} else {
|
|
||||||
//fetch response from iframe
|
|
||||||
response = data.result[0].body.innerText;
|
|
||||||
}
|
|
||||||
var result=$.parseJSON(response);
|
|
||||||
|
|
||||||
if(typeof result[0] !== 'undefined' && result[0].status === 'success') {
|
|
||||||
var file = result[0];
|
|
||||||
} else {
|
|
||||||
data.textStatus = 'servererror';
|
|
||||||
data.errorThrown = t('files', result.data.message);
|
|
||||||
var fu = $(this).data('blueimp-fileupload') || $(this).data('fileupload');
|
|
||||||
fu._trigger('fail', e, data);
|
|
||||||
}
|
|
||||||
|
|
||||||
var filename = result[0].originalname;
|
|
||||||
|
|
||||||
// delete jqXHR reference
|
|
||||||
if (typeof data.context !== 'undefined' && data.context.data('type') === 'dir') {
|
|
||||||
var dirName = data.context.data('file');
|
|
||||||
delete uploadingFiles[dirName][filename];
|
|
||||||
if ($.assocArraySize(uploadingFiles[dirName]) == 0) {
|
|
||||||
delete uploadingFiles[dirName];
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
delete uploadingFiles[filename];
|
|
||||||
}
|
|
||||||
|
|
||||||
},
|
|
||||||
/**
|
|
||||||
* called after last upload
|
|
||||||
* @param e
|
|
||||||
* @param data
|
|
||||||
*/
|
|
||||||
stop: function(e, data) {
|
|
||||||
if(data.dataType !== 'iframe') {
|
|
||||||
$('#uploadprogresswrapper input.stop').hide();
|
|
||||||
}
|
|
||||||
|
|
||||||
//IE < 10 does not fire the necessary events for the progress bar.
|
|
||||||
if($('html.lte9').length > 0) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
$('#uploadprogressbar').progressbar('value',100);
|
|
||||||
$('#uploadprogressbar').fadeOut();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
var file_upload_handler = function() {
|
|
||||||
$('#file_upload_start').fileupload(file_upload_param);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if ( document.getElementById('data-upload-form') ) {
|
|
||||||
$(file_upload_handler);
|
|
||||||
}
|
|
||||||
$.assocArraySize = function(obj) {
|
|
||||||
// http://stackoverflow.com/a/6700/11236
|
|
||||||
var size = 0, key;
|
|
||||||
for (key in obj) {
|
|
||||||
if (obj.hasOwnProperty(key)) size++;
|
|
||||||
}
|
|
||||||
return size;
|
|
||||||
};
|
|
||||||
|
|
||||||
// warn user not to leave the page while upload is in progress
|
|
||||||
$(window).bind('beforeunload', function(e) {
|
|
||||||
if ($.assocArraySize(uploadingFiles) > 0)
|
|
||||||
return t('files','File upload is in progress. Leaving the page now will cancel the upload.');
|
|
||||||
});
|
|
||||||
|
|
||||||
//add multiply file upload attribute to all browsers except konqueror (which crashes when it's used)
|
|
||||||
if(navigator.userAgent.search(/konqueror/i)==-1){
|
|
||||||
$('#file_upload_start').attr('multiple','multiple')
|
|
||||||
}
|
|
||||||
|
|
||||||
//if the breadcrumb is to long, start by replacing foldernames with '...' except for the current folder
|
|
||||||
var crumb=$('div.crumb').first();
|
|
||||||
while($('div.controls').height()>40 && crumb.next('div.crumb').length>0){
|
|
||||||
crumb.children('a').text('...');
|
|
||||||
crumb=crumb.next('div.crumb');
|
|
||||||
}
|
|
||||||
//if that isn't enough, start removing items from the breacrumb except for the current folder and it's parent
|
|
||||||
var crumb=$('div.crumb').first();
|
|
||||||
var next=crumb.next('div.crumb');
|
|
||||||
while($('div.controls').height()>40 && next.next('div.crumb').length>0){
|
|
||||||
crumb.remove();
|
|
||||||
crumb=next;
|
|
||||||
next=crumb.next('div.crumb');
|
|
||||||
}
|
|
||||||
//still not enough, start shorting down the current folder name
|
|
||||||
var crumb=$('div.crumb>a').last();
|
|
||||||
while($('div.controls').height()>40 && crumb.text().length>6){
|
|
||||||
var text=crumb.text()
|
|
||||||
text=text.substr(0,text.length-6)+'...';
|
|
||||||
crumb.text(text);
|
|
||||||
}
|
|
||||||
|
|
||||||
$(document).click(function(){
|
|
||||||
$('#new>ul').hide();
|
|
||||||
$('#new').removeClass('active');
|
|
||||||
$('#new li').each(function(i,element){
|
|
||||||
if($(element).children('p').length==0){
|
|
||||||
$(element).children('form').remove();
|
|
||||||
$(element).append('<p>'+$(element).data('text')+'</p>');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
$('#new li').click(function(){
|
|
||||||
if($(this).children('p').length==0){
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
$('#new li').each(function(i,element){
|
|
||||||
if($(element).children('p').length==0){
|
|
||||||
$(element).children('form').remove();
|
|
||||||
$(element).append('<p>'+$(element).data('text')+'</p>');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
var type=$(this).data('type');
|
|
||||||
var text=$(this).children('p').text();
|
|
||||||
$(this).data('text',text);
|
|
||||||
$(this).children('p').remove();
|
|
||||||
var form=$('<form></form>');
|
|
||||||
var input=$('<input type="text">');
|
|
||||||
form.append(input);
|
|
||||||
$(this).append(form);
|
|
||||||
input.focus();
|
|
||||||
form.submit(function(event){
|
|
||||||
event.stopPropagation();
|
|
||||||
event.preventDefault();
|
|
||||||
var newname=input.val();
|
|
||||||
if(type == 'web' && newname.length == 0) {
|
|
||||||
OC.Notification.show(t('files', 'URL cannot be empty.'));
|
|
||||||
return false;
|
|
||||||
} else if (type != 'web' && !Files.isFileNameValid(newname)) {
|
|
||||||
return false;
|
|
||||||
} else if( type == 'folder' && $('#dir').val() == '/' && newname == 'Shared') {
|
|
||||||
OC.Notification.show(t('files','Invalid folder name. Usage of \'Shared\' is reserved by ownCloud'));
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (FileList.lastAction) {
|
|
||||||
FileList.lastAction();
|
|
||||||
}
|
|
||||||
var name = getUniqueName(newname);
|
|
||||||
if (newname != name) {
|
|
||||||
FileList.checkName(name, newname, true);
|
|
||||||
var hidden = true;
|
|
||||||
} else {
|
|
||||||
var hidden = false;
|
|
||||||
}
|
|
||||||
switch(type){
|
|
||||||
case 'file':
|
|
||||||
$.post(
|
|
||||||
OC.filePath('files','ajax','newfile.php'),
|
|
||||||
{dir:$('#dir').val(),filename:name},
|
|
||||||
function(result){
|
|
||||||
if (result.status == 'success') {
|
|
||||||
var date=new Date();
|
|
||||||
FileList.addFile(name,0,date,false,hidden);
|
|
||||||
var tr=$('tr').filterAttr('data-file',name);
|
|
||||||
tr.attr('data-mime',result.data.mime);
|
|
||||||
tr.attr('data-id', result.data.id);
|
|
||||||
getMimeIcon(result.data.mime,function(path){
|
|
||||||
tr.find('td.filename').attr('style','background-image:url('+path+')');
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
OC.dialogs.alert(result.data.message, t('core', 'Error'));
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
);
|
|
||||||
break;
|
|
||||||
case 'folder':
|
|
||||||
$.post(
|
|
||||||
OC.filePath('files','ajax','newfolder.php'),
|
|
||||||
{dir:$('#dir').val(),foldername:name},
|
|
||||||
function(result){
|
|
||||||
if (result.status == 'success') {
|
|
||||||
var date=new Date();
|
|
||||||
FileList.addDir(name,0,date,hidden);
|
|
||||||
var tr=$('tr').filterAttr('data-file',name);
|
|
||||||
tr.attr('data-id', result.data.id);
|
|
||||||
} else {
|
|
||||||
OC.dialogs.alert(result.data.message, t('core', 'Error'));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
);
|
|
||||||
break;
|
|
||||||
case 'web':
|
|
||||||
if(name.substr(0,8)!='https://' && name.substr(0,7)!='http://'){
|
|
||||||
name='http://'+name;
|
|
||||||
}
|
|
||||||
var localName=name;
|
|
||||||
if(localName.substr(localName.length-1,1)=='/'){//strip /
|
|
||||||
localName=localName.substr(0,localName.length-1)
|
|
||||||
}
|
|
||||||
if(localName.indexOf('/')){//use last part of url
|
|
||||||
localName=localName.split('/').pop();
|
|
||||||
} else { //or the domain
|
|
||||||
localName=(localName.match(/:\/\/(.[^\/]+)/)[1]).replace('www.','');
|
|
||||||
}
|
|
||||||
localName = getUniqueName(localName);
|
|
||||||
//IE < 10 does not fire the necessary events for the progress bar.
|
|
||||||
if($('html.lte9').length > 0) {
|
|
||||||
} else {
|
|
||||||
$('#uploadprogressbar').progressbar({value:0});
|
|
||||||
$('#uploadprogressbar').fadeIn();
|
|
||||||
}
|
|
||||||
|
|
||||||
var eventSource=new OC.EventSource(OC.filePath('files','ajax','newfile.php'),{dir:$('#dir').val(),source:name,filename:localName});
|
var totalSize=0;
|
||||||
eventSource.listen('progress',function(progress){
|
$.each(data.originalFiles, function(i,file){
|
||||||
//IE < 10 does not fire the necessary events for the progress bar.
|
totalSize+=file.size;
|
||||||
if($('html.lte9').length > 0) {
|
});
|
||||||
} else {
|
|
||||||
|
if(totalSize>$('#max_upload').val()){
|
||||||
|
data.textStatus = 'notenoughspace';
|
||||||
|
data.errorThrown = t('files','Not enough space available');
|
||||||
|
var fu = $(this).data('blueimp-fileupload') || $(this).data('fileupload');
|
||||||
|
fu._trigger('fail', e, data);
|
||||||
|
return false; //don't upload anything
|
||||||
|
}
|
||||||
|
|
||||||
|
// start the actual file upload
|
||||||
|
var jqXHR = data.submit();
|
||||||
|
|
||||||
|
// remember jqXHR to show warning to user when he navigates away but an upload is still in progress
|
||||||
|
if (typeof data.context !== 'undefined' && data.context.data('type') === 'dir') {
|
||||||
|
var dirName = data.context.data('file');
|
||||||
|
if(typeof uploadingFiles[dirName] === 'undefined') {
|
||||||
|
uploadingFiles[dirName] = {};
|
||||||
|
}
|
||||||
|
uploadingFiles[dirName][data.files[0].name] = jqXHR;
|
||||||
|
} else {
|
||||||
|
uploadingFiles[data.files[0].name] = jqXHR;
|
||||||
|
}
|
||||||
|
|
||||||
|
//show cancel button
|
||||||
|
if($('html.lte9').length === 0 && data.dataType !== 'iframe') {
|
||||||
|
$('#uploadprogresswrapper input.stop').show();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
* called after the first add, does NOT have the data param
|
||||||
|
* @param e
|
||||||
|
*/
|
||||||
|
start: function(e) {
|
||||||
|
//IE < 10 does not fire the necessary events for the progress bar.
|
||||||
|
if($('html.lte9').length > 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$('#uploadprogressbar').progressbar({value:0});
|
||||||
|
$('#uploadprogressbar').fadeIn();
|
||||||
|
},
|
||||||
|
fail: function(e, data) {
|
||||||
|
if (typeof data.textStatus !== 'undefined' && data.textStatus !== 'success' ) {
|
||||||
|
if (data.textStatus === 'abort') {
|
||||||
|
$('#notification').text(t('files', 'Upload cancelled.'));
|
||||||
|
} else {
|
||||||
|
// HTTP connection problem
|
||||||
|
$('#notification').text(data.errorThrown);
|
||||||
|
}
|
||||||
|
$('#notification').fadeIn();
|
||||||
|
//hide notification after 5 sec
|
||||||
|
setTimeout(function() {
|
||||||
|
$('#notification').fadeOut();
|
||||||
|
}, 5000);
|
||||||
|
}
|
||||||
|
delete uploadingFiles[data.files[0].name];
|
||||||
|
},
|
||||||
|
progress: function(e, data) {
|
||||||
|
// TODO: show nice progress bar in file row
|
||||||
|
},
|
||||||
|
progressall: function(e, data) {
|
||||||
|
//IE < 10 does not fire the necessary events for the progress bar.
|
||||||
|
if($('html.lte9').length > 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
var progress = (data.loaded/data.total)*100;
|
||||||
$('#uploadprogressbar').progressbar('value',progress);
|
$('#uploadprogressbar').progressbar('value',progress);
|
||||||
}
|
},
|
||||||
});
|
/**
|
||||||
eventSource.listen('success',function(data){
|
* called for every successful upload
|
||||||
var mime=data.mime;
|
* @param e
|
||||||
var size=data.size;
|
* @param data
|
||||||
var id=data.id;
|
*/
|
||||||
$('#uploadprogressbar').fadeOut();
|
done:function(e, data) {
|
||||||
var date=new Date();
|
// handle different responses (json or body from iframe for ie)
|
||||||
FileList.addFile(localName,size,date,false,hidden);
|
var response;
|
||||||
var tr=$('tr').filterAttr('data-file',localName);
|
if (typeof data.result === 'string') {
|
||||||
tr.data('mime',mime).data('id',id);
|
response = data.result;
|
||||||
tr.attr('data-id', id);
|
} else {
|
||||||
getMimeIcon(mime,function(path){
|
//fetch response from iframe
|
||||||
tr.find('td.filename').attr('style','background-image:url('+path+')');
|
response = data.result[0].body.innerText;
|
||||||
});
|
}
|
||||||
});
|
var result=$.parseJSON(response);
|
||||||
eventSource.listen('error',function(error){
|
|
||||||
$('#uploadprogressbar').fadeOut();
|
if(typeof result[0] !== 'undefined' && result[0].status === 'success') {
|
||||||
alert(error);
|
var file = result[0];
|
||||||
});
|
} else {
|
||||||
break;
|
data.textStatus = 'servererror';
|
||||||
}
|
data.errorThrown = t('files', result.data.message);
|
||||||
var li=form.parent();
|
var fu = $(this).data('blueimp-fileupload') || $(this).data('fileupload');
|
||||||
form.remove();
|
fu._trigger('fail', e, data);
|
||||||
li.append('<p>'+li.data('text')+'</p>');
|
}
|
||||||
$('#new>a').click();
|
|
||||||
|
var filename = result[0].originalname;
|
||||||
|
|
||||||
|
// delete jqXHR reference
|
||||||
|
if (typeof data.context !== 'undefined' && data.context.data('type') === 'dir') {
|
||||||
|
var dirName = data.context.data('file');
|
||||||
|
delete uploadingFiles[dirName][filename];
|
||||||
|
if ($.assocArraySize(uploadingFiles[dirName]) == 0) {
|
||||||
|
delete uploadingFiles[dirName];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
delete uploadingFiles[filename];
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
* called after last upload
|
||||||
|
* @param e
|
||||||
|
* @param data
|
||||||
|
*/
|
||||||
|
stop: function(e, data) {
|
||||||
|
if(data.dataType !== 'iframe') {
|
||||||
|
$('#uploadprogresswrapper input.stop').hide();
|
||||||
|
}
|
||||||
|
|
||||||
|
//IE < 10 does not fire the necessary events for the progress bar.
|
||||||
|
if($('html.lte9').length > 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$('#uploadprogressbar').progressbar('value',100);
|
||||||
|
$('#uploadprogressbar').fadeOut();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var file_upload_handler = function() {
|
||||||
|
$('#file_upload_start').fileupload(file_upload_param);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if ( document.getElementById('data-upload-form') ) {
|
||||||
|
$(file_upload_handler);
|
||||||
|
}
|
||||||
|
$.assocArraySize = function(obj) {
|
||||||
|
// http://stackoverflow.com/a/6700/11236
|
||||||
|
var size = 0, key;
|
||||||
|
for (key in obj) {
|
||||||
|
if (obj.hasOwnProperty(key)) size++;
|
||||||
|
}
|
||||||
|
return size;
|
||||||
|
};
|
||||||
|
|
||||||
|
// warn user not to leave the page while upload is in progress
|
||||||
|
$(window).bind('beforeunload', function(e) {
|
||||||
|
if ($.assocArraySize(uploadingFiles) > 0)
|
||||||
|
return t('files','File upload is in progress. Leaving the page now will cancel the upload.');
|
||||||
|
});
|
||||||
|
|
||||||
|
//add multiply file upload attribute to all browsers except konqueror (which crashes when it's used)
|
||||||
|
if(navigator.userAgent.search(/konqueror/i)==-1){
|
||||||
|
$('#file_upload_start').attr('multiple','multiple')
|
||||||
|
}
|
||||||
|
|
||||||
|
//if the breadcrumb is to long, start by replacing foldernames with '...' except for the current folder
|
||||||
|
var crumb=$('div.crumb').first();
|
||||||
|
while($('div.controls').height()>40 && crumb.next('div.crumb').length>0){
|
||||||
|
crumb.children('a').text('...');
|
||||||
|
crumb=crumb.next('div.crumb');
|
||||||
|
}
|
||||||
|
//if that isn't enough, start removing items from the breacrumb except for the current folder and it's parent
|
||||||
|
var crumb=$('div.crumb').first();
|
||||||
|
var next=crumb.next('div.crumb');
|
||||||
|
while($('div.controls').height()>40 && next.next('div.crumb').length>0){
|
||||||
|
crumb.remove();
|
||||||
|
crumb=next;
|
||||||
|
next=crumb.next('div.crumb');
|
||||||
|
}
|
||||||
|
//still not enough, start shorting down the current folder name
|
||||||
|
var crumb=$('div.crumb>a').last();
|
||||||
|
while($('div.controls').height()>40 && crumb.text().length>6){
|
||||||
|
var text=crumb.text()
|
||||||
|
text=text.substr(0,text.length-6)+'...';
|
||||||
|
crumb.text(text);
|
||||||
|
}
|
||||||
|
|
||||||
|
$(document).click(function(){
|
||||||
|
$('#new>ul').hide();
|
||||||
|
$('#new').removeClass('active');
|
||||||
|
$('#new li').each(function(i,element){
|
||||||
|
if($(element).children('p').length==0){
|
||||||
|
$(element).children('form').remove();
|
||||||
|
$(element).append('<p>'+$(element).data('text')+'</p>');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
$('#new li').click(function(){
|
||||||
|
if($(this).children('p').length==0){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$('#new li').each(function(i,element){
|
||||||
|
if($(element).children('p').length==0){
|
||||||
|
$(element).children('form').remove();
|
||||||
|
$(element).append('<p>'+$(element).data('text')+'</p>');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
var type=$(this).data('type');
|
||||||
|
var text=$(this).children('p').text();
|
||||||
|
$(this).data('text',text);
|
||||||
|
$(this).children('p').remove();
|
||||||
|
var form=$('<form></form>');
|
||||||
|
var input=$('<input type="text">');
|
||||||
|
form.append(input);
|
||||||
|
$(this).append(form);
|
||||||
|
input.focus();
|
||||||
|
form.submit(function(event){
|
||||||
|
event.stopPropagation();
|
||||||
|
event.preventDefault();
|
||||||
|
var newname=input.val();
|
||||||
|
if(type == 'web' && newname.length == 0) {
|
||||||
|
OC.Notification.show(t('files', 'URL cannot be empty.'));
|
||||||
|
return false;
|
||||||
|
} else if (type != 'web' && !Files.isFileNameValid(newname)) {
|
||||||
|
return false;
|
||||||
|
} else if( type == 'folder' && $('#dir').val() == '/' && newname == 'Shared') {
|
||||||
|
OC.Notification.show(t('files','Invalid folder name. Usage of \'Shared\' is reserved by ownCloud'));
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (FileList.lastAction) {
|
||||||
|
FileList.lastAction();
|
||||||
|
}
|
||||||
|
var name = getUniqueName(newname);
|
||||||
|
if (newname != name) {
|
||||||
|
FileList.checkName(name, newname, true);
|
||||||
|
var hidden = true;
|
||||||
|
} else {
|
||||||
|
var hidden = false;
|
||||||
|
}
|
||||||
|
switch(type){
|
||||||
|
case 'file':
|
||||||
|
$.post(
|
||||||
|
OC.filePath('files','ajax','newfile.php'),
|
||||||
|
{dir:$('#dir').val(),filename:name},
|
||||||
|
function(result){
|
||||||
|
if (result.status == 'success') {
|
||||||
|
var date=new Date();
|
||||||
|
FileList.addFile(name,0,date,false,hidden);
|
||||||
|
var tr=$('tr').filterAttr('data-file',name);
|
||||||
|
tr.attr('data-size',result.data.size);
|
||||||
|
tr.attr('data-mime',result.data.mime);
|
||||||
|
tr.attr('data-id', result.data.id);
|
||||||
|
tr.find('.filesize').text(humanFileSize(result.data.size));
|
||||||
|
getMimeIcon(result.data.mime,function(path){
|
||||||
|
tr.find('td.filename').attr('style','background-image:url('+path+')');
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
OC.dialogs.alert(result.data.message, t('core', 'Error'));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
case 'folder':
|
||||||
|
$.post(
|
||||||
|
OC.filePath('files','ajax','newfolder.php'),
|
||||||
|
{dir:$('#dir').val(),foldername:name},
|
||||||
|
function(result){
|
||||||
|
if (result.status == 'success') {
|
||||||
|
var date=new Date();
|
||||||
|
FileList.addDir(name,0,date,hidden);
|
||||||
|
var tr=$('tr').filterAttr('data-file',name);
|
||||||
|
tr.attr('data-id', result.data.id);
|
||||||
|
} else {
|
||||||
|
OC.dialogs.alert(result.data.message, t('core', 'Error'));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
case 'web':
|
||||||
|
if(name.substr(0,8)!='https://' && name.substr(0,7)!='http://'){
|
||||||
|
name='http://'+name;
|
||||||
|
}
|
||||||
|
var localName=name;
|
||||||
|
if(localName.substr(localName.length-1,1)=='/'){//strip /
|
||||||
|
localName=localName.substr(0,localName.length-1)
|
||||||
|
}
|
||||||
|
if(localName.indexOf('/')){//use last part of url
|
||||||
|
localName=localName.split('/').pop();
|
||||||
|
} else { //or the domain
|
||||||
|
localName=(localName.match(/:\/\/(.[^\/]+)/)[1]).replace('www.','');
|
||||||
|
}
|
||||||
|
localName = getUniqueName(localName);
|
||||||
|
//IE < 10 does not fire the necessary events for the progress bar.
|
||||||
|
if($('html.lte9').length > 0) {
|
||||||
|
} else {
|
||||||
|
$('#uploadprogressbar').progressbar({value:0});
|
||||||
|
$('#uploadprogressbar').fadeIn();
|
||||||
|
}
|
||||||
|
|
||||||
|
var eventSource=new OC.EventSource(OC.filePath('files','ajax','newfile.php'),{dir:$('#dir').val(),source:name,filename:localName});
|
||||||
|
eventSource.listen('progress',function(progress){
|
||||||
|
//IE < 10 does not fire the necessary events for the progress bar.
|
||||||
|
if($('html.lte9').length > 0) {
|
||||||
|
} else {
|
||||||
|
$('#uploadprogressbar').progressbar('value',progress);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
eventSource.listen('success',function(data){
|
||||||
|
var mime=data.mime;
|
||||||
|
var size=data.size;
|
||||||
|
var id=data.id;
|
||||||
|
$('#uploadprogressbar').fadeOut();
|
||||||
|
var date=new Date();
|
||||||
|
FileList.addFile(localName,size,date,false,hidden);
|
||||||
|
var tr=$('tr').filterAttr('data-file',localName);
|
||||||
|
tr.data('mime',mime).data('id',id);
|
||||||
|
tr.attr('data-id', id);
|
||||||
|
getMimeIcon(mime,function(path){
|
||||||
|
tr.find('td.filename').attr('style','background-image:url('+path+')');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
eventSource.listen('error',function(error){
|
||||||
|
$('#uploadprogressbar').fadeOut();
|
||||||
|
alert(error);
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
var li=form.parent();
|
||||||
|
form.remove();
|
||||||
|
li.append('<p>'+li.data('text')+'</p>');
|
||||||
|
$('#new>a').click();
|
||||||
|
});
|
||||||
});
|
});
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
|
@ -65,7 +65,7 @@ var FileActions = {
|
||||||
FileActions.currentFile = parent;
|
FileActions.currentFile = parent;
|
||||||
var actions = FileActions.get(FileActions.getCurrentMimeType(), FileActions.getCurrentType(), FileActions.getCurrentPermissions());
|
var actions = FileActions.get(FileActions.getCurrentMimeType(), FileActions.getCurrentType(), FileActions.getCurrentPermissions());
|
||||||
var file = FileActions.getCurrentFile();
|
var file = FileActions.getCurrentFile();
|
||||||
if ($('tr').filterAttr('data-file', file).data('renaming')) {
|
if ($('tr[data-file="'+file+'"]').data('renaming')) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
parent.children('a.name').append('<span class="fileactions" />');
|
parent.children('a.name').append('<span class="fileactions" />');
|
||||||
|
@ -123,14 +123,11 @@ var FileActions = {
|
||||||
img = img(file);
|
img = img(file);
|
||||||
}
|
}
|
||||||
if (typeof trashBinApp !== 'undefined' && trashBinApp) {
|
if (typeof trashBinApp !== 'undefined' && trashBinApp) {
|
||||||
var html = '<a href="#" original-title="' + t('files', 'Delete permanently') + '" class="action delete" />';
|
var html = '<a href="#" original-title="' + t('files', 'Delete permanently') + '" class="action delete delete-icon" />';
|
||||||
} else {
|
} else {
|
||||||
var html = '<a href="#" original-title="' + t('files', 'Delete') + '" class="action delete" />';
|
var html = '<a href="#" class="action delete delete-icon" />';
|
||||||
}
|
}
|
||||||
var element = $(html);
|
var element = $(html);
|
||||||
if (img) {
|
|
||||||
element.append($('<img class ="svg" src="' + img + '"/>'));
|
|
||||||
}
|
|
||||||
element.data('action', actions['Delete']);
|
element.data('action', actions['Delete']);
|
||||||
element.on('click', {a: null, elem: parent, actionFunc: actions['Delete']}, actionHandler);
|
element.on('click', {a: null, elem: parent, actionFunc: actions['Delete']}, actionHandler);
|
||||||
parent.parent().children().last().append(element);
|
parent.parent().children().last().append(element);
|
||||||
|
@ -164,11 +161,12 @@ $(document).ready(function () {
|
||||||
window.location = OC.filePath('files', 'ajax', 'download.php') + '?files=' + encodeURIComponent(filename) + '&dir=' + encodeURIComponent($('#dir').val());
|
window.location = OC.filePath('files', 'ajax', 'download.php') + '?files=' + encodeURIComponent(filename) + '&dir=' + encodeURIComponent($('#dir').val());
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
$('#fileList tr').each(function () {
|
$('#fileList tr').each(function () {
|
||||||
FileActions.display($(this).children('td.filename'));
|
FileActions.display($(this).children('td.filename'));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$('#fileList').trigger(jQuery.Event("fileActionsReady"));
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
FileActions.register('all', 'Delete', OC.PERMISSION_DELETE, function () {
|
FileActions.register('all', 'Delete', OC.PERMISSION_DELETE, function () {
|
||||||
|
|
|
@ -15,7 +15,7 @@ var FileList={
|
||||||
// filename td
|
// filename td
|
||||||
td = $('<td></td>').attr({
|
td = $('<td></td>').attr({
|
||||||
"class": "filename",
|
"class": "filename",
|
||||||
"style": 'background-image:url('+iconurl+')'
|
"style": 'background-image:url('+iconurl+'); background-size: 16px;'
|
||||||
});
|
});
|
||||||
td.append('<input id="select-"'+name+'" type="checkbox" /><label for="select-"'+name+'"></label>');
|
td.append('<input id="select-"'+name+'" type="checkbox" /><label for="select-"'+name+'"></label>');
|
||||||
var link_elem = $('<a></a>').attr({
|
var link_elem = $('<a></a>').attr({
|
||||||
|
@ -372,9 +372,7 @@ var FileList={
|
||||||
}
|
}
|
||||||
for (var i=0; i<files.length; i++) {
|
for (var i=0; i<files.length; i++) {
|
||||||
var deleteAction = $('tr').filterAttr('data-file',files[i]).children("td.date").children(".action.delete");
|
var deleteAction = $('tr').filterAttr('data-file',files[i]).children("td.date").children(".action.delete");
|
||||||
var oldHTML = deleteAction.html();
|
deleteAction.removeClass('delete-icon').addClass('progress-icon');
|
||||||
var newHTML = '<img class="move2trash" data-action="Delete" title="'+t('files', 'perform delete operation')+'" src="'+ OC.imagePath('core', 'loading.gif') +'"></a>';
|
|
||||||
deleteAction.html(newHTML);
|
|
||||||
}
|
}
|
||||||
// Finish any existing actions
|
// Finish any existing actions
|
||||||
if (FileList.lastAction) {
|
if (FileList.lastAction) {
|
||||||
|
@ -396,8 +394,8 @@ var FileList={
|
||||||
checkTrashStatus();
|
checkTrashStatus();
|
||||||
} else {
|
} else {
|
||||||
$.each(files,function(index,file) {
|
$.each(files,function(index,file) {
|
||||||
var deleteAction = $('tr').filterAttr('data-file',file).children("td.date").children(".move2trash");
|
var deleteAction = $('tr').filterAttr('data-file',files[i]).children("td.date").children(".action.delete");
|
||||||
deleteAction.html(oldHTML);
|
deleteAction.removeClass('progress-icon').addClass('delete-icon');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -81,9 +81,23 @@ Files={
|
||||||
if (usedSpacePercent > 90) {
|
if (usedSpacePercent > 90) {
|
||||||
OC.Notification.show(t('files', 'Your storage is almost full ({usedSpacePercent}%)', {usedSpacePercent: usedSpacePercent}));
|
OC.Notification.show(t('files', 'Your storage is almost full ({usedSpacePercent}%)', {usedSpacePercent: usedSpacePercent}));
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
displayEncryptionWarning: function() {
|
||||||
|
|
||||||
|
if (!OC.Notification.isHidden()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var encryptedFiles = $('#encryptedFiles').val();
|
||||||
|
if (encryptedFiles === '1') {
|
||||||
|
OC.Notification.show(t('files_encryption', 'Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files.'));
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
|
Files.displayEncryptionWarning();
|
||||||
Files.bindKeyboardShortcuts(document, jQuery);
|
Files.bindKeyboardShortcuts(document, jQuery);
|
||||||
$('#fileList tr').each(function(){
|
$('#fileList tr').each(function(){
|
||||||
//little hack to set unescape filenames in attribute
|
//little hack to set unescape filenames in attribute
|
||||||
|
@ -365,7 +379,9 @@ $(document).ready(function() {
|
||||||
FileList.addFile(name,0,date,false,hidden);
|
FileList.addFile(name,0,date,false,hidden);
|
||||||
var tr=$('tr').filterAttr('data-file',name);
|
var tr=$('tr').filterAttr('data-file',name);
|
||||||
tr.attr('data-mime',result.data.mime);
|
tr.attr('data-mime',result.data.mime);
|
||||||
|
tr.attr('data-size',result.data.size);
|
||||||
tr.attr('data-id', result.data.id);
|
tr.attr('data-id', result.data.id);
|
||||||
|
tr.find('.filesize').text(humanFileSize(result.data.size));
|
||||||
var path = $('#dir').val() + '/' + name;
|
var path = $('#dir').val() + '/' + name;
|
||||||
lazyLoadPreview(path, result.data.mime, function(previewpath){
|
lazyLoadPreview(path, result.data.mime, function(previewpath){
|
||||||
tr.find('td.filename').attr('style','background-image:url('+previewpath+')');
|
tr.find('td.filename').attr('style','background-image:url('+previewpath+')');
|
||||||
|
|
|
@ -20,7 +20,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "خطأ",
|
"Error" => "خطأ",
|
||||||
"Share" => "شارك",
|
"Share" => "شارك",
|
||||||
"Delete permanently" => "حذف بشكل دائم",
|
"Delete permanently" => "حذف بشكل دائم",
|
||||||
"Delete" => "إلغاء",
|
|
||||||
"Rename" => "إعادة تسميه",
|
"Rename" => "إعادة تسميه",
|
||||||
"Pending" => "قيد الانتظار",
|
"Pending" => "قيد الانتظار",
|
||||||
"{new_name} already exists" => "{new_name} موجود مسبقا",
|
"{new_name} already exists" => "{new_name} موجود مسبقا",
|
||||||
|
@ -29,8 +28,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "إلغاء",
|
"cancel" => "إلغاء",
|
||||||
"replaced {new_name} with {old_name}" => "استبدل {new_name} بـ {old_name}",
|
"replaced {new_name} with {old_name}" => "استبدل {new_name} بـ {old_name}",
|
||||||
"undo" => "تراجع",
|
"undo" => "تراجع",
|
||||||
"perform delete operation" => "جاري تنفيذ عملية الحذف",
|
"_Uploading %n file_::_Uploading %n files_" => array("","","","","",""),
|
||||||
"1 file uploading" => "جاري رفع 1 ملف",
|
|
||||||
"'.' is an invalid file name." => "\".\" اسم ملف غير صحيح.",
|
"'.' is an invalid file name." => "\".\" اسم ملف غير صحيح.",
|
||||||
"File name cannot be empty." => "اسم الملف لا يجوز أن يكون فارغا",
|
"File name cannot be empty." => "اسم الملف لا يجوز أن يكون فارغا",
|
||||||
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "اسم غير صحيح , الرموز '\\', '/', '<', '>', ':', '\"', '|', '?' و \"*\" غير مسموح استخدامها",
|
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "اسم غير صحيح , الرموز '\\', '/', '<', '>', ':', '\"', '|', '?' و \"*\" غير مسموح استخدامها",
|
||||||
|
@ -41,10 +39,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "اسم",
|
"Name" => "اسم",
|
||||||
"Size" => "حجم",
|
"Size" => "حجم",
|
||||||
"Modified" => "معدل",
|
"Modified" => "معدل",
|
||||||
"1 folder" => "مجلد عدد 1",
|
"_%n folder_::_%n folders_" => array("","","","","",""),
|
||||||
"{count} folders" => "{count} مجلدات",
|
"_%n file_::_%n files_" => array("","","","","",""),
|
||||||
"1 file" => "ملف واحد",
|
|
||||||
"{count} files" => "{count} ملفات",
|
|
||||||
"Upload" => "رفع",
|
"Upload" => "رفع",
|
||||||
"File handling" => "التعامل مع الملف",
|
"File handling" => "التعامل مع الملف",
|
||||||
"Maximum upload size" => "الحد الأقصى لحجم الملفات التي يمكن رفعها",
|
"Maximum upload size" => "الحد الأقصى لحجم الملفات التي يمكن رفعها",
|
||||||
|
@ -64,6 +60,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "لا يوجد شيء هنا. إرفع بعض الملفات!",
|
"Nothing in here. Upload something!" => "لا يوجد شيء هنا. إرفع بعض الملفات!",
|
||||||
"Download" => "تحميل",
|
"Download" => "تحميل",
|
||||||
"Unshare" => "إلغاء مشاركة",
|
"Unshare" => "إلغاء مشاركة",
|
||||||
|
"Delete" => "إلغاء",
|
||||||
"Upload too large" => "حجم الترفيع أعلى من المسموح",
|
"Upload too large" => "حجم الترفيع أعلى من المسموح",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "حجم الملفات التي تريد ترفيعها أعلى من المسموح على الخادم.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "حجم الملفات التي تريد ترفيعها أعلى من المسموح على الخادم.",
|
||||||
"Files are being scanned, please wait." => "يرجى الانتظار , جاري فحص الملفات .",
|
"Files are being scanned, please wait." => "يرجى الانتظار , جاري فحص الملفات .",
|
||||||
|
|
|
@ -12,19 +12,17 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Грешка",
|
"Error" => "Грешка",
|
||||||
"Share" => "Споделяне",
|
"Share" => "Споделяне",
|
||||||
"Delete permanently" => "Изтриване завинаги",
|
"Delete permanently" => "Изтриване завинаги",
|
||||||
"Delete" => "Изтриване",
|
|
||||||
"Rename" => "Преименуване",
|
"Rename" => "Преименуване",
|
||||||
"Pending" => "Чакащо",
|
"Pending" => "Чакащо",
|
||||||
"replace" => "препокриване",
|
"replace" => "препокриване",
|
||||||
"cancel" => "отказ",
|
"cancel" => "отказ",
|
||||||
"undo" => "възтановяване",
|
"undo" => "възтановяване",
|
||||||
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"Name" => "Име",
|
"Name" => "Име",
|
||||||
"Size" => "Размер",
|
"Size" => "Размер",
|
||||||
"Modified" => "Променено",
|
"Modified" => "Променено",
|
||||||
"1 folder" => "1 папка",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} папки",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 файл",
|
|
||||||
"{count} files" => "{count} файла",
|
|
||||||
"Upload" => "Качване",
|
"Upload" => "Качване",
|
||||||
"Maximum upload size" => "Максимален размер за качване",
|
"Maximum upload size" => "Максимален размер за качване",
|
||||||
"0 is unlimited" => "Ползвайте 0 за без ограничения",
|
"0 is unlimited" => "Ползвайте 0 за без ограничения",
|
||||||
|
@ -35,6 +33,7 @@ $TRANSLATIONS = array(
|
||||||
"Cancel upload" => "Спри качването",
|
"Cancel upload" => "Спри качването",
|
||||||
"Nothing in here. Upload something!" => "Няма нищо тук. Качете нещо.",
|
"Nothing in here. Upload something!" => "Няма нищо тук. Качете нещо.",
|
||||||
"Download" => "Изтегляне",
|
"Download" => "Изтегляне",
|
||||||
|
"Delete" => "Изтриване",
|
||||||
"Upload too large" => "Файлът който сте избрали за качване е прекалено голям",
|
"Upload too large" => "Файлът който сте избрали за качване е прекалено голям",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Файловете които се опитвате да качите са по-големи от позволеното за сървъра.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Файловете които се опитвате да качите са по-големи от позволеното за сървъра.",
|
||||||
"Files are being scanned, please wait." => "Файловете се претърсват, изчакайте.",
|
"Files are being scanned, please wait." => "Файловете се претърсват, изчакайте.",
|
||||||
|
|
|
@ -19,7 +19,6 @@ $TRANSLATIONS = array(
|
||||||
"URL cannot be empty." => "URL ফাঁকা রাখা যাবে না।",
|
"URL cannot be empty." => "URL ফাঁকা রাখা যাবে না।",
|
||||||
"Error" => "সমস্যা",
|
"Error" => "সমস্যা",
|
||||||
"Share" => "ভাগাভাগি কর",
|
"Share" => "ভাগাভাগি কর",
|
||||||
"Delete" => "মুছে",
|
|
||||||
"Rename" => "পূনঃনামকরণ",
|
"Rename" => "পূনঃনামকরণ",
|
||||||
"Pending" => "মুলতুবি",
|
"Pending" => "মুলতুবি",
|
||||||
"{new_name} already exists" => "{new_name} টি বিদ্যমান",
|
"{new_name} already exists" => "{new_name} টি বিদ্যমান",
|
||||||
|
@ -28,7 +27,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "বাতিল",
|
"cancel" => "বাতিল",
|
||||||
"replaced {new_name} with {old_name}" => "{new_name} কে {old_name} নামে প্রতিস্থাপন করা হয়েছে",
|
"replaced {new_name} with {old_name}" => "{new_name} কে {old_name} নামে প্রতিস্থাপন করা হয়েছে",
|
||||||
"undo" => "ক্রিয়া প্রত্যাহার",
|
"undo" => "ক্রিয়া প্রত্যাহার",
|
||||||
"1 file uploading" => "১টি ফাইল আপলোড করা হচ্ছে",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"'.' is an invalid file name." => "টি একটি অননুমোদিত নাম।",
|
"'.' is an invalid file name." => "টি একটি অননুমোদিত নাম।",
|
||||||
"File name cannot be empty." => "ফাইলের নামটি ফাঁকা রাখা যাবে না।",
|
"File name cannot be empty." => "ফাইলের নামটি ফাঁকা রাখা যাবে না।",
|
||||||
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "নামটি সঠিক নয়, '\\', '/', '<', '>', ':', '\"', '|', '?' এবং '*' অনুমোদিত নয়।",
|
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "নামটি সঠিক নয়, '\\', '/', '<', '>', ':', '\"', '|', '?' এবং '*' অনুমোদিত নয়।",
|
||||||
|
@ -36,10 +35,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "রাম",
|
"Name" => "রাম",
|
||||||
"Size" => "আকার",
|
"Size" => "আকার",
|
||||||
"Modified" => "পরিবর্তিত",
|
"Modified" => "পরিবর্তিত",
|
||||||
"1 folder" => "১টি ফোল্ডার",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} টি ফোল্ডার",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "১টি ফাইল",
|
|
||||||
"{count} files" => "{count} টি ফাইল",
|
|
||||||
"Upload" => "আপলোড",
|
"Upload" => "আপলোড",
|
||||||
"File handling" => "ফাইল হ্যার্ডলিং",
|
"File handling" => "ফাইল হ্যার্ডলিং",
|
||||||
"Maximum upload size" => "আপলোডের সর্বোচ্চ আকার",
|
"Maximum upload size" => "আপলোডের সর্বোচ্চ আকার",
|
||||||
|
@ -57,6 +54,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "এখানে কিছুই নেই। কিছু আপলোড করুন !",
|
"Nothing in here. Upload something!" => "এখানে কিছুই নেই। কিছু আপলোড করুন !",
|
||||||
"Download" => "ডাউনলোড",
|
"Download" => "ডাউনলোড",
|
||||||
"Unshare" => "ভাগাভাগি বাতিল ",
|
"Unshare" => "ভাগাভাগি বাতিল ",
|
||||||
|
"Delete" => "মুছে",
|
||||||
"Upload too large" => "আপলোডের আকারটি অনেক বড়",
|
"Upload too large" => "আপলোডের আকারটি অনেক বড়",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "আপনি এই সার্ভারে আপলোড করার জন্য অনুমোদিত ফাইলের সর্বোচ্চ আকারের চেয়ে বৃহদাকার ফাইল আপলোড করার চেষ্টা করছেন ",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "আপনি এই সার্ভারে আপলোড করার জন্য অনুমোদিত ফাইলের সর্বোচ্চ আকারের চেয়ে বৃহদাকার ফাইল আপলোড করার চেষ্টা করছেন ",
|
||||||
"Files are being scanned, please wait." => "ফাইলগুলো স্ক্যান করা হচ্ছে, দয়া করে অপেক্ষা করুন।",
|
"Files are being scanned, please wait." => "ফাইলগুলো স্ক্যান করা হচ্ছে, দয়া করে অপেক্ষা করুন।",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Error",
|
"Error" => "Error",
|
||||||
"Share" => "Comparteix",
|
"Share" => "Comparteix",
|
||||||
"Delete permanently" => "Esborra permanentment",
|
"Delete permanently" => "Esborra permanentment",
|
||||||
"Delete" => "Esborra",
|
|
||||||
"Rename" => "Reanomena",
|
"Rename" => "Reanomena",
|
||||||
"Pending" => "Pendent",
|
"Pending" => "Pendent",
|
||||||
"{new_name} already exists" => "{new_name} ja existeix",
|
"{new_name} already exists" => "{new_name} ja existeix",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "cancel·la",
|
"cancel" => "cancel·la",
|
||||||
"replaced {new_name} with {old_name}" => "s'ha substituït {old_name} per {new_name}",
|
"replaced {new_name} with {old_name}" => "s'ha substituït {old_name} per {new_name}",
|
||||||
"undo" => "desfés",
|
"undo" => "desfés",
|
||||||
"perform delete operation" => "executa d'operació d'esborrar",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "1 fitxer pujant",
|
|
||||||
"files uploading" => "fitxers pujant",
|
"files uploading" => "fitxers pujant",
|
||||||
"'.' is an invalid file name." => "'.' és un nom no vàlid per un fitxer.",
|
"'.' is an invalid file name." => "'.' és un nom no vàlid per un fitxer.",
|
||||||
"File name cannot be empty." => "El nom del fitxer no pot ser buit.",
|
"File name cannot be empty." => "El nom del fitxer no pot ser buit.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nom",
|
"Name" => "Nom",
|
||||||
"Size" => "Mida",
|
"Size" => "Mida",
|
||||||
"Modified" => "Modificat",
|
"Modified" => "Modificat",
|
||||||
"1 folder" => "1 carpeta",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} carpetes",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 fitxer",
|
|
||||||
"{count} files" => "{count} fitxers",
|
|
||||||
"%s could not be renamed" => "%s no es pot canviar el nom",
|
"%s could not be renamed" => "%s no es pot canviar el nom",
|
||||||
"Upload" => "Puja",
|
"Upload" => "Puja",
|
||||||
"File handling" => "Gestió de fitxers",
|
"File handling" => "Gestió de fitxers",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Res per aquí. Pugeu alguna cosa!",
|
"Nothing in here. Upload something!" => "Res per aquí. Pugeu alguna cosa!",
|
||||||
"Download" => "Baixa",
|
"Download" => "Baixa",
|
||||||
"Unshare" => "Deixa de compartir",
|
"Unshare" => "Deixa de compartir",
|
||||||
|
"Delete" => "Esborra",
|
||||||
"Upload too large" => "La pujada és massa gran",
|
"Upload too large" => "La pujada és massa gran",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Els fitxers que esteu intentant pujar excedeixen la mida màxima de pujada del servidor",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Els fitxers que esteu intentant pujar excedeixen la mida màxima de pujada del servidor",
|
||||||
"Files are being scanned, please wait." => "S'estan escanejant els fitxers, espereu",
|
"Files are being scanned, please wait." => "S'estan escanejant els fitxers, espereu",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Chyba",
|
"Error" => "Chyba",
|
||||||
"Share" => "Sdílet",
|
"Share" => "Sdílet",
|
||||||
"Delete permanently" => "Trvale odstranit",
|
"Delete permanently" => "Trvale odstranit",
|
||||||
"Delete" => "Smazat",
|
|
||||||
"Rename" => "Přejmenovat",
|
"Rename" => "Přejmenovat",
|
||||||
"Pending" => "Nevyřízené",
|
"Pending" => "Nevyřízené",
|
||||||
"{new_name} already exists" => "{new_name} již existuje",
|
"{new_name} already exists" => "{new_name} již existuje",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "zrušit",
|
"cancel" => "zrušit",
|
||||||
"replaced {new_name} with {old_name}" => "nahrazeno {new_name} s {old_name}",
|
"replaced {new_name} with {old_name}" => "nahrazeno {new_name} s {old_name}",
|
||||||
"undo" => "vrátit zpět",
|
"undo" => "vrátit zpět",
|
||||||
"perform delete operation" => "provést smazání",
|
"_Uploading %n file_::_Uploading %n files_" => array("","",""),
|
||||||
"1 file uploading" => "odesílá se 1 soubor",
|
|
||||||
"files uploading" => "soubory se odesílají",
|
"files uploading" => "soubory se odesílají",
|
||||||
"'.' is an invalid file name." => "'.' je neplatným názvem souboru.",
|
"'.' is an invalid file name." => "'.' je neplatným názvem souboru.",
|
||||||
"File name cannot be empty." => "Název souboru nemůže být prázdný řetězec.",
|
"File name cannot be empty." => "Název souboru nemůže být prázdný řetězec.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Název",
|
"Name" => "Název",
|
||||||
"Size" => "Velikost",
|
"Size" => "Velikost",
|
||||||
"Modified" => "Upraveno",
|
"Modified" => "Upraveno",
|
||||||
"1 folder" => "1 složka",
|
"_%n folder_::_%n folders_" => array("","",""),
|
||||||
"{count} folders" => "{count} složek",
|
"_%n file_::_%n files_" => array("","",""),
|
||||||
"1 file" => "1 soubor",
|
|
||||||
"{count} files" => "{count} souborů",
|
|
||||||
"%s could not be renamed" => "%s nemůže být přejmenován",
|
"%s could not be renamed" => "%s nemůže být přejmenován",
|
||||||
"Upload" => "Odeslat",
|
"Upload" => "Odeslat",
|
||||||
"File handling" => "Zacházení se soubory",
|
"File handling" => "Zacházení se soubory",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Žádný obsah. Nahrajte něco.",
|
"Nothing in here. Upload something!" => "Žádný obsah. Nahrajte něco.",
|
||||||
"Download" => "Stáhnout",
|
"Download" => "Stáhnout",
|
||||||
"Unshare" => "Zrušit sdílení",
|
"Unshare" => "Zrušit sdílení",
|
||||||
|
"Delete" => "Smazat",
|
||||||
"Upload too large" => "Odesílaný soubor je příliš velký",
|
"Upload too large" => "Odesílaný soubor je příliš velký",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Soubory, které se snažíte odeslat, překračují limit velikosti odesílání na tomto serveru.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Soubory, které se snažíte odeslat, překračují limit velikosti odesílání na tomto serveru.",
|
||||||
"Files are being scanned, please wait." => "Soubory se prohledávají, prosím čekejte.",
|
"Files are being scanned, please wait." => "Soubory se prohledávají, prosím čekejte.",
|
||||||
|
|
|
@ -21,7 +21,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Gwall",
|
"Error" => "Gwall",
|
||||||
"Share" => "Rhannu",
|
"Share" => "Rhannu",
|
||||||
"Delete permanently" => "Dileu'n barhaol",
|
"Delete permanently" => "Dileu'n barhaol",
|
||||||
"Delete" => "Dileu",
|
|
||||||
"Rename" => "Ailenwi",
|
"Rename" => "Ailenwi",
|
||||||
"Pending" => "I ddod",
|
"Pending" => "I ddod",
|
||||||
"{new_name} already exists" => "{new_name} yn bodoli'n barod",
|
"{new_name} already exists" => "{new_name} yn bodoli'n barod",
|
||||||
|
@ -30,8 +29,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "diddymu",
|
"cancel" => "diddymu",
|
||||||
"replaced {new_name} with {old_name}" => "newidiwyd {new_name} yn lle {old_name}",
|
"replaced {new_name} with {old_name}" => "newidiwyd {new_name} yn lle {old_name}",
|
||||||
"undo" => "dadwneud",
|
"undo" => "dadwneud",
|
||||||
"perform delete operation" => "cyflawni gweithred dileu",
|
"_Uploading %n file_::_Uploading %n files_" => array("","","",""),
|
||||||
"1 file uploading" => "1 ffeil yn llwytho i fyny",
|
|
||||||
"files uploading" => "ffeiliau'n llwytho i fyny",
|
"files uploading" => "ffeiliau'n llwytho i fyny",
|
||||||
"'.' is an invalid file name." => "Mae '.' yn enw ffeil annilys.",
|
"'.' is an invalid file name." => "Mae '.' yn enw ffeil annilys.",
|
||||||
"File name cannot be empty." => "Does dim hawl cael enw ffeil gwag.",
|
"File name cannot be empty." => "Does dim hawl cael enw ffeil gwag.",
|
||||||
|
@ -43,10 +41,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Enw",
|
"Name" => "Enw",
|
||||||
"Size" => "Maint",
|
"Size" => "Maint",
|
||||||
"Modified" => "Addaswyd",
|
"Modified" => "Addaswyd",
|
||||||
"1 folder" => "1 blygell",
|
"_%n folder_::_%n folders_" => array("","","",""),
|
||||||
"{count} folders" => "{count} plygell",
|
"_%n file_::_%n files_" => array("","","",""),
|
||||||
"1 file" => "1 ffeil",
|
|
||||||
"{count} files" => "{count} ffeil",
|
|
||||||
"Upload" => "Llwytho i fyny",
|
"Upload" => "Llwytho i fyny",
|
||||||
"File handling" => "Trafod ffeiliau",
|
"File handling" => "Trafod ffeiliau",
|
||||||
"Maximum upload size" => "Maint mwyaf llwytho i fyny",
|
"Maximum upload size" => "Maint mwyaf llwytho i fyny",
|
||||||
|
@ -66,6 +62,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Does dim byd fan hyn. Llwythwch rhywbeth i fyny!",
|
"Nothing in here. Upload something!" => "Does dim byd fan hyn. Llwythwch rhywbeth i fyny!",
|
||||||
"Download" => "Llwytho i lawr",
|
"Download" => "Llwytho i lawr",
|
||||||
"Unshare" => "Dad-rannu",
|
"Unshare" => "Dad-rannu",
|
||||||
|
"Delete" => "Dileu",
|
||||||
"Upload too large" => "Maint llwytho i fyny'n rhy fawr",
|
"Upload too large" => "Maint llwytho i fyny'n rhy fawr",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Mae'r ffeiliau rydych yn ceisio llwytho i fyny'n fwy na maint mwyaf llwytho ffeiliau i fyny ar y gweinydd hwn.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Mae'r ffeiliau rydych yn ceisio llwytho i fyny'n fwy na maint mwyaf llwytho ffeiliau i fyny ar y gweinydd hwn.",
|
||||||
"Files are being scanned, please wait." => "Arhoswch, mae ffeiliau'n cael eu sganio.",
|
"Files are being scanned, please wait." => "Arhoswch, mae ffeiliau'n cael eu sganio.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Fejl",
|
"Error" => "Fejl",
|
||||||
"Share" => "Del",
|
"Share" => "Del",
|
||||||
"Delete permanently" => "Slet permanent",
|
"Delete permanently" => "Slet permanent",
|
||||||
"Delete" => "Slet",
|
|
||||||
"Rename" => "Omdøb",
|
"Rename" => "Omdøb",
|
||||||
"Pending" => "Afventer",
|
"Pending" => "Afventer",
|
||||||
"{new_name} already exists" => "{new_name} eksisterer allerede",
|
"{new_name} already exists" => "{new_name} eksisterer allerede",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "fortryd",
|
"cancel" => "fortryd",
|
||||||
"replaced {new_name} with {old_name}" => "erstattede {new_name} med {old_name}",
|
"replaced {new_name} with {old_name}" => "erstattede {new_name} med {old_name}",
|
||||||
"undo" => "fortryd",
|
"undo" => "fortryd",
|
||||||
"perform delete operation" => "udfør slet operation",
|
"_Uploading %n file_::_Uploading %n files_" => array("Uploader %n fil","Uploader %n filer"),
|
||||||
"1 file uploading" => "1 fil uploades",
|
|
||||||
"files uploading" => "uploader filer",
|
"files uploading" => "uploader filer",
|
||||||
"'.' is an invalid file name." => "'.' er et ugyldigt filnavn.",
|
"'.' is an invalid file name." => "'.' er et ugyldigt filnavn.",
|
||||||
"File name cannot be empty." => "Filnavnet kan ikke stå tomt.",
|
"File name cannot be empty." => "Filnavnet kan ikke stå tomt.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Navn",
|
"Name" => "Navn",
|
||||||
"Size" => "Størrelse",
|
"Size" => "Størrelse",
|
||||||
"Modified" => "Ændret",
|
"Modified" => "Ændret",
|
||||||
"1 folder" => "1 mappe",
|
"_%n folder_::_%n folders_" => array("%n mappe","%n mapper"),
|
||||||
"{count} folders" => "{count} mapper",
|
"_%n file_::_%n files_" => array("%n fil","%n filer"),
|
||||||
"1 file" => "1 fil",
|
|
||||||
"{count} files" => "{count} filer",
|
|
||||||
"%s could not be renamed" => "%s kunne ikke omdøbes",
|
"%s could not be renamed" => "%s kunne ikke omdøbes",
|
||||||
"Upload" => "Upload",
|
"Upload" => "Upload",
|
||||||
"File handling" => "Filhåndtering",
|
"File handling" => "Filhåndtering",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Her er tomt. Upload noget!",
|
"Nothing in here. Upload something!" => "Her er tomt. Upload noget!",
|
||||||
"Download" => "Download",
|
"Download" => "Download",
|
||||||
"Unshare" => "Fjern deling",
|
"Unshare" => "Fjern deling",
|
||||||
|
"Delete" => "Slet",
|
||||||
"Upload too large" => "Upload er for stor",
|
"Upload too large" => "Upload er for stor",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Filerne, du prøver at uploade, er større end den maksimale størrelse for fil-upload på denne server.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Filerne, du prøver at uploade, er større end den maksimale størrelse for fil-upload på denne server.",
|
||||||
"Files are being scanned, please wait." => "Filerne bliver indlæst, vent venligst.",
|
"Files are being scanned, please wait." => "Filerne bliver indlæst, vent venligst.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Fehler",
|
"Error" => "Fehler",
|
||||||
"Share" => "Teilen",
|
"Share" => "Teilen",
|
||||||
"Delete permanently" => "Endgültig löschen",
|
"Delete permanently" => "Endgültig löschen",
|
||||||
"Delete" => "Löschen",
|
|
||||||
"Rename" => "Umbenennen",
|
"Rename" => "Umbenennen",
|
||||||
"Pending" => "Ausstehend",
|
"Pending" => "Ausstehend",
|
||||||
"{new_name} already exists" => "{new_name} existiert bereits",
|
"{new_name} already exists" => "{new_name} existiert bereits",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "abbrechen",
|
"cancel" => "abbrechen",
|
||||||
"replaced {new_name} with {old_name}" => "{old_name} ersetzt durch {new_name}",
|
"replaced {new_name} with {old_name}" => "{old_name} ersetzt durch {new_name}",
|
||||||
"undo" => "rückgängig machen",
|
"undo" => "rückgängig machen",
|
||||||
"perform delete operation" => "Löschvorgang ausführen",
|
"_Uploading %n file_::_Uploading %n files_" => array("%n Datei wird hochgeladen","%n Dateien werden hochgeladen"),
|
||||||
"1 file uploading" => "1 Datei wird hochgeladen",
|
|
||||||
"files uploading" => "Dateien werden hoch geladen",
|
"files uploading" => "Dateien werden hoch geladen",
|
||||||
"'.' is an invalid file name." => "'.' ist kein gültiger Dateiname.",
|
"'.' is an invalid file name." => "'.' ist kein gültiger Dateiname.",
|
||||||
"File name cannot be empty." => "Der Dateiname darf nicht leer sein.",
|
"File name cannot be empty." => "Der Dateiname darf nicht leer sein.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Name",
|
"Name" => "Name",
|
||||||
"Size" => "Größe",
|
"Size" => "Größe",
|
||||||
"Modified" => "Geändert",
|
"Modified" => "Geändert",
|
||||||
"1 folder" => "1 Ordner",
|
"_%n folder_::_%n folders_" => array("%n Ordner","%n Ordner"),
|
||||||
"{count} folders" => "{count} Ordner",
|
"_%n file_::_%n files_" => array("%n Datei","%n Dateien"),
|
||||||
"1 file" => "1 Datei",
|
|
||||||
"{count} files" => "{count} Dateien",
|
|
||||||
"%s could not be renamed" => "%s konnte nicht umbenannt werden",
|
"%s could not be renamed" => "%s konnte nicht umbenannt werden",
|
||||||
"Upload" => "Hochladen",
|
"Upload" => "Hochladen",
|
||||||
"File handling" => "Dateibehandlung",
|
"File handling" => "Dateibehandlung",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Alles leer. Lade etwas hoch!",
|
"Nothing in here. Upload something!" => "Alles leer. Lade etwas hoch!",
|
||||||
"Download" => "Herunterladen",
|
"Download" => "Herunterladen",
|
||||||
"Unshare" => "Freigabe aufheben",
|
"Unshare" => "Freigabe aufheben",
|
||||||
|
"Delete" => "Löschen",
|
||||||
"Upload too large" => "Der Upload ist zu groß",
|
"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.",
|
"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.",
|
"Files are being scanned, please wait." => "Dateien werden gescannt, bitte warten.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Fehler",
|
"Error" => "Fehler",
|
||||||
"Share" => "Teilen",
|
"Share" => "Teilen",
|
||||||
"Delete permanently" => "Endgültig löschen",
|
"Delete permanently" => "Endgültig löschen",
|
||||||
"Delete" => "Löschen",
|
|
||||||
"Rename" => "Umbenennen",
|
"Rename" => "Umbenennen",
|
||||||
"Pending" => "Ausstehend",
|
"Pending" => "Ausstehend",
|
||||||
"{new_name} already exists" => "{new_name} existiert bereits",
|
"{new_name} already exists" => "{new_name} existiert bereits",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "abbrechen",
|
"cancel" => "abbrechen",
|
||||||
"replaced {new_name} with {old_name}" => "{old_name} wurde ersetzt durch {new_name}",
|
"replaced {new_name} with {old_name}" => "{old_name} wurde ersetzt durch {new_name}",
|
||||||
"undo" => "rückgängig machen",
|
"undo" => "rückgängig machen",
|
||||||
"perform delete operation" => "Löschvorgang ausführen",
|
"_Uploading %n file_::_Uploading %n files_" => array("%n Datei wird hoch geladen","%n Dateien werden hoch geladen"),
|
||||||
"1 file uploading" => "1 Datei wird hochgeladen",
|
|
||||||
"files uploading" => "Dateien werden hoch geladen",
|
"files uploading" => "Dateien werden hoch geladen",
|
||||||
"'.' is an invalid file name." => "'.' ist kein gültiger Dateiname.",
|
"'.' is an invalid file name." => "'.' ist kein gültiger Dateiname.",
|
||||||
"File name cannot be empty." => "Der Dateiname darf nicht leer sein.",
|
"File name cannot be empty." => "Der Dateiname darf nicht leer sein.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Name",
|
"Name" => "Name",
|
||||||
"Size" => "Größe",
|
"Size" => "Größe",
|
||||||
"Modified" => "Geändert",
|
"Modified" => "Geändert",
|
||||||
"1 folder" => "1 Ordner",
|
"_%n folder_::_%n folders_" => array("%n Ordner","%n Ordner"),
|
||||||
"{count} folders" => "{count} Ordner",
|
"_%n file_::_%n files_" => array("%n Datei","%n Dateien"),
|
||||||
"1 file" => "1 Datei",
|
|
||||||
"{count} files" => "{count} Dateien",
|
|
||||||
"%s could not be renamed" => "%s konnte nicht umbenannt werden",
|
"%s could not be renamed" => "%s konnte nicht umbenannt werden",
|
||||||
"Upload" => "Hochladen",
|
"Upload" => "Hochladen",
|
||||||
"File handling" => "Dateibehandlung",
|
"File handling" => "Dateibehandlung",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Alles leer. Laden Sie etwas hoch!",
|
"Nothing in here. Upload something!" => "Alles leer. Laden Sie etwas hoch!",
|
||||||
"Download" => "Herunterladen",
|
"Download" => "Herunterladen",
|
||||||
"Unshare" => "Freigabe aufheben",
|
"Unshare" => "Freigabe aufheben",
|
||||||
|
"Delete" => "Löschen",
|
||||||
"Upload too large" => "Der Upload ist zu groß",
|
"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.",
|
"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.",
|
"Files are being scanned, please wait." => "Dateien werden gescannt, bitte warten.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Σφάλμα",
|
"Error" => "Σφάλμα",
|
||||||
"Share" => "Διαμοιρασμός",
|
"Share" => "Διαμοιρασμός",
|
||||||
"Delete permanently" => "Μόνιμη διαγραφή",
|
"Delete permanently" => "Μόνιμη διαγραφή",
|
||||||
"Delete" => "Διαγραφή",
|
|
||||||
"Rename" => "Μετονομασία",
|
"Rename" => "Μετονομασία",
|
||||||
"Pending" => "Εκκρεμεί",
|
"Pending" => "Εκκρεμεί",
|
||||||
"{new_name} already exists" => "{new_name} υπάρχει ήδη",
|
"{new_name} already exists" => "{new_name} υπάρχει ήδη",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "ακύρωση",
|
"cancel" => "ακύρωση",
|
||||||
"replaced {new_name} with {old_name}" => "αντικαταστάθηκε το {new_name} με {old_name}",
|
"replaced {new_name} with {old_name}" => "αντικαταστάθηκε το {new_name} με {old_name}",
|
||||||
"undo" => "αναίρεση",
|
"undo" => "αναίρεση",
|
||||||
"perform delete operation" => "εκτέλεση της διαδικασίας διαγραφής",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "1 αρχείο ανεβαίνει",
|
|
||||||
"files uploading" => "αρχεία ανεβαίνουν",
|
"files uploading" => "αρχεία ανεβαίνουν",
|
||||||
"'.' is an invalid file name." => "'.' είναι μη έγκυρο όνομα αρχείου.",
|
"'.' is an invalid file name." => "'.' είναι μη έγκυρο όνομα αρχείου.",
|
||||||
"File name cannot be empty." => "Το όνομα αρχείου δεν μπορεί να είναι κενό.",
|
"File name cannot be empty." => "Το όνομα αρχείου δεν μπορεί να είναι κενό.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Όνομα",
|
"Name" => "Όνομα",
|
||||||
"Size" => "Μέγεθος",
|
"Size" => "Μέγεθος",
|
||||||
"Modified" => "Τροποποιήθηκε",
|
"Modified" => "Τροποποιήθηκε",
|
||||||
"1 folder" => "1 φάκελος",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} φάκελοι",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 αρχείο",
|
|
||||||
"{count} files" => "{count} αρχεία",
|
|
||||||
"%s could not be renamed" => "Αδυναμία μετονομασίας του %s",
|
"%s could not be renamed" => "Αδυναμία μετονομασίας του %s",
|
||||||
"Upload" => "Μεταφόρτωση",
|
"Upload" => "Μεταφόρτωση",
|
||||||
"File handling" => "Διαχείριση αρχείων",
|
"File handling" => "Διαχείριση αρχείων",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Δεν υπάρχει τίποτα εδώ. Ανεβάστε κάτι!",
|
"Nothing in here. Upload something!" => "Δεν υπάρχει τίποτα εδώ. Ανεβάστε κάτι!",
|
||||||
"Download" => "Λήψη",
|
"Download" => "Λήψη",
|
||||||
"Unshare" => "Σταμάτημα διαμοιρασμού",
|
"Unshare" => "Σταμάτημα διαμοιρασμού",
|
||||||
|
"Delete" => "Διαγραφή",
|
||||||
"Upload too large" => "Πολύ μεγάλο αρχείο προς αποστολή",
|
"Upload too large" => "Πολύ μεγάλο αρχείο προς αποστολή",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Τα αρχεία που προσπαθείτε να ανεβάσετε υπερβαίνουν το μέγιστο μέγεθος αποστολής αρχείων σε αυτόν τον διακομιστή.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Τα αρχεία που προσπαθείτε να ανεβάσετε υπερβαίνουν το μέγιστο μέγεθος αποστολής αρχείων σε αυτόν τον διακομιστή.",
|
||||||
"Files are being scanned, please wait." => "Τα αρχεία σαρώνονται, παρακαλώ περιμένετε.",
|
"Files are being scanned, please wait." => "Τα αρχεία σαρώνονται, παρακαλώ περιμένετε.",
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
<?php
|
<?php
|
||||||
$TRANSLATIONS = array(
|
$TRANSLATIONS = array(
|
||||||
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"Download" => "Download"
|
"Download" => "Download"
|
||||||
);
|
);
|
||||||
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
||||||
|
|
|
@ -22,7 +22,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Eraro",
|
"Error" => "Eraro",
|
||||||
"Share" => "Kunhavigi",
|
"Share" => "Kunhavigi",
|
||||||
"Delete permanently" => "Forigi por ĉiam",
|
"Delete permanently" => "Forigi por ĉiam",
|
||||||
"Delete" => "Forigi",
|
|
||||||
"Rename" => "Alinomigi",
|
"Rename" => "Alinomigi",
|
||||||
"Pending" => "Traktotaj",
|
"Pending" => "Traktotaj",
|
||||||
"{new_name} already exists" => "{new_name} jam ekzistas",
|
"{new_name} already exists" => "{new_name} jam ekzistas",
|
||||||
|
@ -31,8 +30,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "nuligi",
|
"cancel" => "nuligi",
|
||||||
"replaced {new_name} with {old_name}" => "anstataŭiĝis {new_name} per {old_name}",
|
"replaced {new_name} with {old_name}" => "anstataŭiĝis {new_name} per {old_name}",
|
||||||
"undo" => "malfari",
|
"undo" => "malfari",
|
||||||
"perform delete operation" => "plenumi forigan operacion",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "1 dosiero estas alŝutata",
|
|
||||||
"files uploading" => "dosieroj estas alŝutataj",
|
"files uploading" => "dosieroj estas alŝutataj",
|
||||||
"'.' is an invalid file name." => "'.' ne estas valida dosiernomo.",
|
"'.' is an invalid file name." => "'.' ne estas valida dosiernomo.",
|
||||||
"File name cannot be empty." => "Dosiernomo devas ne malpleni.",
|
"File name cannot be empty." => "Dosiernomo devas ne malpleni.",
|
||||||
|
@ -44,10 +42,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nomo",
|
"Name" => "Nomo",
|
||||||
"Size" => "Grando",
|
"Size" => "Grando",
|
||||||
"Modified" => "Modifita",
|
"Modified" => "Modifita",
|
||||||
"1 folder" => "1 dosierujo",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} dosierujoj",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 dosiero",
|
|
||||||
"{count} files" => "{count} dosierujoj",
|
|
||||||
"Upload" => "Alŝuti",
|
"Upload" => "Alŝuti",
|
||||||
"File handling" => "Dosieradministro",
|
"File handling" => "Dosieradministro",
|
||||||
"Maximum upload size" => "Maksimuma alŝutogrando",
|
"Maximum upload size" => "Maksimuma alŝutogrando",
|
||||||
|
@ -67,6 +63,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Nenio estas ĉi tie. Alŝutu ion!",
|
"Nothing in here. Upload something!" => "Nenio estas ĉi tie. Alŝutu ion!",
|
||||||
"Download" => "Elŝuti",
|
"Download" => "Elŝuti",
|
||||||
"Unshare" => "Malkunhavigi",
|
"Unshare" => "Malkunhavigi",
|
||||||
|
"Delete" => "Forigi",
|
||||||
"Upload too large" => "Alŝuto tro larĝa",
|
"Upload too large" => "Alŝuto tro larĝa",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "La dosieroj, kiujn vi provas alŝuti, transpasas la maksimuman grandon por dosieralŝutoj en ĉi tiu servilo.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "La dosieroj, kiujn vi provas alŝuti, transpasas la maksimuman grandon por dosieralŝutoj en ĉi tiu servilo.",
|
||||||
"Files are being scanned, please wait." => "Dosieroj estas skanataj, bonvolu atendi.",
|
"Files are being scanned, please wait." => "Dosieroj estas skanataj, bonvolu atendi.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Error",
|
"Error" => "Error",
|
||||||
"Share" => "Compartir",
|
"Share" => "Compartir",
|
||||||
"Delete permanently" => "Eliminar permanentemente",
|
"Delete permanently" => "Eliminar permanentemente",
|
||||||
"Delete" => "Eliminar",
|
|
||||||
"Rename" => "Renombrar",
|
"Rename" => "Renombrar",
|
||||||
"Pending" => "Pendiente",
|
"Pending" => "Pendiente",
|
||||||
"{new_name} already exists" => "{new_name} ya existe",
|
"{new_name} already exists" => "{new_name} ya existe",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "cancelar",
|
"cancel" => "cancelar",
|
||||||
"replaced {new_name} with {old_name}" => "reemplazado {new_name} con {old_name}",
|
"replaced {new_name} with {old_name}" => "reemplazado {new_name} con {old_name}",
|
||||||
"undo" => "deshacer",
|
"undo" => "deshacer",
|
||||||
"perform delete operation" => "Realizar operación de borrado",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "subiendo 1 archivo",
|
|
||||||
"files uploading" => "subiendo archivos",
|
"files uploading" => "subiendo archivos",
|
||||||
"'.' is an invalid file name." => "'.' no es un nombre de archivo vá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.",
|
"File name cannot be empty." => "El nombre de archivo no puede estar vacío.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nombre",
|
"Name" => "Nombre",
|
||||||
"Size" => "Tamaño",
|
"Size" => "Tamaño",
|
||||||
"Modified" => "Modificado",
|
"Modified" => "Modificado",
|
||||||
"1 folder" => "1 carpeta",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} carpetas",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 archivo",
|
|
||||||
"{count} files" => "{count} archivos",
|
|
||||||
"%s could not be renamed" => "%s no se pudo renombrar",
|
"%s could not be renamed" => "%s no se pudo renombrar",
|
||||||
"Upload" => "Subir",
|
"Upload" => "Subir",
|
||||||
"File handling" => "Manejo de archivos",
|
"File handling" => "Manejo de archivos",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "No hay nada aquí. ¡Suba algo!",
|
"Nothing in here. Upload something!" => "No hay nada aquí. ¡Suba algo!",
|
||||||
"Download" => "Descargar",
|
"Download" => "Descargar",
|
||||||
"Unshare" => "Dejar de compartir",
|
"Unshare" => "Dejar de compartir",
|
||||||
|
"Delete" => "Eliminar",
|
||||||
"Upload too large" => "Subida demasido grande",
|
"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 en este servidor.",
|
"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 en este servidor.",
|
||||||
"Files are being scanned, please wait." => "Los archivos están siendo escaneados, por favor espere.",
|
"Files are being scanned, please wait." => "Los archivos están siendo escaneados, por favor espere.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Error",
|
"Error" => "Error",
|
||||||
"Share" => "Compartir",
|
"Share" => "Compartir",
|
||||||
"Delete permanently" => "Borrar permanentemente",
|
"Delete permanently" => "Borrar permanentemente",
|
||||||
"Delete" => "Borrar",
|
|
||||||
"Rename" => "Cambiar nombre",
|
"Rename" => "Cambiar nombre",
|
||||||
"Pending" => "Pendientes",
|
"Pending" => "Pendientes",
|
||||||
"{new_name} already exists" => "{new_name} ya existe",
|
"{new_name} already exists" => "{new_name} ya existe",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "cancelar",
|
"cancel" => "cancelar",
|
||||||
"replaced {new_name} with {old_name}" => "se reemplazó {new_name} con {old_name}",
|
"replaced {new_name} with {old_name}" => "se reemplazó {new_name} con {old_name}",
|
||||||
"undo" => "deshacer",
|
"undo" => "deshacer",
|
||||||
"perform delete operation" => "Llevar a cabo borrado",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "Subiendo 1 archivo",
|
|
||||||
"files uploading" => "Subiendo archivos",
|
"files uploading" => "Subiendo archivos",
|
||||||
"'.' is an invalid file name." => "'.' es un nombre de archivo inválido.",
|
"'.' is an invalid file name." => "'.' es un nombre de archivo inválido.",
|
||||||
"File name cannot be empty." => "El nombre del archivo no puede quedar vacío.",
|
"File name cannot be empty." => "El nombre del archivo no puede quedar vacío.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nombre",
|
"Name" => "Nombre",
|
||||||
"Size" => "Tamaño",
|
"Size" => "Tamaño",
|
||||||
"Modified" => "Modificado",
|
"Modified" => "Modificado",
|
||||||
"1 folder" => "1 directorio",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} directorios",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 archivo",
|
|
||||||
"{count} files" => "{count} archivos",
|
|
||||||
"%s could not be renamed" => "No se pudo renombrar %s",
|
"%s could not be renamed" => "No se pudo renombrar %s",
|
||||||
"Upload" => "Subir",
|
"Upload" => "Subir",
|
||||||
"File handling" => "Tratamiento de archivos",
|
"File handling" => "Tratamiento de archivos",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "No hay nada. ¡Subí contenido!",
|
"Nothing in here. Upload something!" => "No hay nada. ¡Subí contenido!",
|
||||||
"Download" => "Descargar",
|
"Download" => "Descargar",
|
||||||
"Unshare" => "Dejar de compartir",
|
"Unshare" => "Dejar de compartir",
|
||||||
|
"Delete" => "Borrar",
|
||||||
"Upload too large" => "El tamaño del archivo que querés subir es demasiado grande",
|
"Upload too large" => "El tamaño del archivo que querés subir es demasiado grande",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Los archivos que intentás subir sobrepasan el tamaño máximo ",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Los archivos que intentás subir sobrepasan el tamaño máximo ",
|
||||||
"Files are being scanned, please wait." => "Se están escaneando los archivos, por favor esperá.",
|
"Files are being scanned, please wait." => "Se están escaneando los archivos, por favor esperá.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Viga",
|
"Error" => "Viga",
|
||||||
"Share" => "Jaga",
|
"Share" => "Jaga",
|
||||||
"Delete permanently" => "Kustuta jäädavalt",
|
"Delete permanently" => "Kustuta jäädavalt",
|
||||||
"Delete" => "Kustuta",
|
|
||||||
"Rename" => "Nimeta ümber",
|
"Rename" => "Nimeta ümber",
|
||||||
"Pending" => "Ootel",
|
"Pending" => "Ootel",
|
||||||
"{new_name} already exists" => "{new_name} on juba olemas",
|
"{new_name} already exists" => "{new_name} on juba olemas",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "loobu",
|
"cancel" => "loobu",
|
||||||
"replaced {new_name} with {old_name}" => "asendas nime {old_name} nimega {new_name}",
|
"replaced {new_name} with {old_name}" => "asendas nime {old_name} nimega {new_name}",
|
||||||
"undo" => "tagasi",
|
"undo" => "tagasi",
|
||||||
"perform delete operation" => "teosta kustutamine",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "1 fail üleslaadimisel",
|
|
||||||
"files uploading" => "faili üleslaadimisel",
|
"files uploading" => "faili üleslaadimisel",
|
||||||
"'.' is an invalid file name." => "'.' on vigane failinimi.",
|
"'.' is an invalid file name." => "'.' on vigane failinimi.",
|
||||||
"File name cannot be empty." => "Faili nimi ei saa olla tühi.",
|
"File name cannot be empty." => "Faili nimi ei saa olla tühi.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nimi",
|
"Name" => "Nimi",
|
||||||
"Size" => "Suurus",
|
"Size" => "Suurus",
|
||||||
"Modified" => "Muudetud",
|
"Modified" => "Muudetud",
|
||||||
"1 folder" => "1 kaust",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} kausta",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 fail",
|
|
||||||
"{count} files" => "{count} faili",
|
|
||||||
"%s could not be renamed" => "%s ümbernimetamine ebaõnnestus",
|
"%s could not be renamed" => "%s ümbernimetamine ebaõnnestus",
|
||||||
"Upload" => "Lae üles",
|
"Upload" => "Lae üles",
|
||||||
"File handling" => "Failide käsitlemine",
|
"File handling" => "Failide käsitlemine",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Siin pole midagi. Lae midagi üles!",
|
"Nothing in here. Upload something!" => "Siin pole midagi. Lae midagi üles!",
|
||||||
"Download" => "Lae alla",
|
"Download" => "Lae alla",
|
||||||
"Unshare" => "Lõpeta jagamine",
|
"Unshare" => "Lõpeta jagamine",
|
||||||
|
"Delete" => "Kustuta",
|
||||||
"Upload too large" => "Üleslaadimine on liiga suur",
|
"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.",
|
"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.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Errorea",
|
"Error" => "Errorea",
|
||||||
"Share" => "Elkarbanatu",
|
"Share" => "Elkarbanatu",
|
||||||
"Delete permanently" => "Ezabatu betirako",
|
"Delete permanently" => "Ezabatu betirako",
|
||||||
"Delete" => "Ezabatu",
|
|
||||||
"Rename" => "Berrizendatu",
|
"Rename" => "Berrizendatu",
|
||||||
"Pending" => "Zain",
|
"Pending" => "Zain",
|
||||||
"{new_name} already exists" => "{new_name} dagoeneko existitzen da",
|
"{new_name} already exists" => "{new_name} dagoeneko existitzen da",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "ezeztatu",
|
"cancel" => "ezeztatu",
|
||||||
"replaced {new_name} with {old_name}" => " {new_name}-k {old_name} ordezkatu du",
|
"replaced {new_name} with {old_name}" => " {new_name}-k {old_name} ordezkatu du",
|
||||||
"undo" => "desegin",
|
"undo" => "desegin",
|
||||||
"perform delete operation" => "Ezabatu",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "fitxategi 1 igotzen",
|
|
||||||
"files uploading" => "fitxategiak igotzen",
|
"files uploading" => "fitxategiak igotzen",
|
||||||
"'.' is an invalid file name." => "'.' ez da fitxategi izen baliogarria.",
|
"'.' is an invalid file name." => "'.' ez da fitxategi izen baliogarria.",
|
||||||
"File name cannot be empty." => "Fitxategi izena ezin da hutsa izan.",
|
"File name cannot be empty." => "Fitxategi izena ezin da hutsa izan.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Izena",
|
"Name" => "Izena",
|
||||||
"Size" => "Tamaina",
|
"Size" => "Tamaina",
|
||||||
"Modified" => "Aldatuta",
|
"Modified" => "Aldatuta",
|
||||||
"1 folder" => "karpeta bat",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} karpeta",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "fitxategi bat",
|
|
||||||
"{count} files" => "{count} fitxategi",
|
|
||||||
"%s could not be renamed" => "%s ezin da berrizendatu",
|
"%s could not be renamed" => "%s ezin da berrizendatu",
|
||||||
"Upload" => "Igo",
|
"Upload" => "Igo",
|
||||||
"File handling" => "Fitxategien kudeaketa",
|
"File handling" => "Fitxategien kudeaketa",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Ez dago ezer. Igo zerbait!",
|
"Nothing in here. Upload something!" => "Ez dago ezer. Igo zerbait!",
|
||||||
"Download" => "Deskargatu",
|
"Download" => "Deskargatu",
|
||||||
"Unshare" => "Ez elkarbanatu",
|
"Unshare" => "Ez elkarbanatu",
|
||||||
|
"Delete" => "Ezabatu",
|
||||||
"Upload too large" => "Igoera handiegia da",
|
"Upload too large" => "Igoera handiegia da",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Igotzen saiatzen ari zaren fitxategiak zerbitzari honek igotzeko onartzen duena baino handiagoak dira.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Igotzen saiatzen ari zaren fitxategiak zerbitzari honek igotzeko onartzen duena baino handiagoak dira.",
|
||||||
"Files are being scanned, please wait." => "Fitxategiak eskaneatzen ari da, itxoin mezedez.",
|
"Files are being scanned, please wait." => "Fitxategiak eskaneatzen ari da, itxoin mezedez.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "خطا",
|
"Error" => "خطا",
|
||||||
"Share" => "اشتراکگذاری",
|
"Share" => "اشتراکگذاری",
|
||||||
"Delete permanently" => "حذف قطعی",
|
"Delete permanently" => "حذف قطعی",
|
||||||
"Delete" => "حذف",
|
|
||||||
"Rename" => "تغییرنام",
|
"Rename" => "تغییرنام",
|
||||||
"Pending" => "در انتظار",
|
"Pending" => "در انتظار",
|
||||||
"{new_name} already exists" => "{نام _جدید} در حال حاضر وجود دارد.",
|
"{new_name} already exists" => "{نام _جدید} در حال حاضر وجود دارد.",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "لغو",
|
"cancel" => "لغو",
|
||||||
"replaced {new_name} with {old_name}" => "{نام_جدید} با { نام_قدیمی} جایگزین شد.",
|
"replaced {new_name} with {old_name}" => "{نام_جدید} با { نام_قدیمی} جایگزین شد.",
|
||||||
"undo" => "بازگشت",
|
"undo" => "بازگشت",
|
||||||
"perform delete operation" => "انجام عمل حذف",
|
"_Uploading %n file_::_Uploading %n files_" => array(""),
|
||||||
"1 file uploading" => "1 پرونده آپلود شد.",
|
|
||||||
"files uploading" => "بارگذاری فایل ها",
|
"files uploading" => "بارگذاری فایل ها",
|
||||||
"'.' is an invalid file name." => "'.' یک نام پرونده نامعتبر است.",
|
"'.' is an invalid file name." => "'.' یک نام پرونده نامعتبر است.",
|
||||||
"File name cannot be empty." => "نام پرونده نمی تواند خالی باشد.",
|
"File name cannot be empty." => "نام پرونده نمی تواند خالی باشد.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "نام",
|
"Name" => "نام",
|
||||||
"Size" => "اندازه",
|
"Size" => "اندازه",
|
||||||
"Modified" => "تاریخ",
|
"Modified" => "تاریخ",
|
||||||
"1 folder" => "1 پوشه",
|
"_%n folder_::_%n folders_" => array(""),
|
||||||
"{count} folders" => "{ شمار} پوشه ها",
|
"_%n file_::_%n files_" => array(""),
|
||||||
"1 file" => "1 پرونده",
|
|
||||||
"{count} files" => "{ شمار } فایل ها",
|
|
||||||
"%s could not be renamed" => "%s نمیتواند تغییر نام دهد.",
|
"%s could not be renamed" => "%s نمیتواند تغییر نام دهد.",
|
||||||
"Upload" => "بارگزاری",
|
"Upload" => "بارگزاری",
|
||||||
"File handling" => "اداره پرونده ها",
|
"File handling" => "اداره پرونده ها",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "اینجا هیچ چیز نیست.",
|
"Nothing in here. Upload something!" => "اینجا هیچ چیز نیست.",
|
||||||
"Download" => "دانلود",
|
"Download" => "دانلود",
|
||||||
"Unshare" => "لغو اشتراک",
|
"Unshare" => "لغو اشتراک",
|
||||||
|
"Delete" => "حذف",
|
||||||
"Upload too large" => "سایز فایل برای آپلود زیاد است(م.تنظیمات در php.ini)",
|
"Upload too large" => "سایز فایل برای آپلود زیاد است(م.تنظیمات در php.ini)",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "فایلها بیش از حد تعیین شده در این سرور هستند\nمترجم:با تغییر فایل php,ini میتوان این محدودیت را برطرف کرد",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "فایلها بیش از حد تعیین شده در این سرور هستند\nمترجم:با تغییر فایل php,ini میتوان این محدودیت را برطرف کرد",
|
||||||
"Files are being scanned, please wait." => "پرونده ها در حال بازرسی هستند لطفا صبر کنید",
|
"Files are being scanned, please wait." => "پرونده ها در حال بازرسی هستند لطفا صبر کنید",
|
||||||
|
|
|
@ -21,7 +21,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Virhe",
|
"Error" => "Virhe",
|
||||||
"Share" => "Jaa",
|
"Share" => "Jaa",
|
||||||
"Delete permanently" => "Poista pysyvästi",
|
"Delete permanently" => "Poista pysyvästi",
|
||||||
"Delete" => "Poista",
|
|
||||||
"Rename" => "Nimeä uudelleen",
|
"Rename" => "Nimeä uudelleen",
|
||||||
"Pending" => "Odottaa",
|
"Pending" => "Odottaa",
|
||||||
"{new_name} already exists" => "{new_name} on jo olemassa",
|
"{new_name} already exists" => "{new_name} on jo olemassa",
|
||||||
|
@ -29,7 +28,7 @@ $TRANSLATIONS = array(
|
||||||
"suggest name" => "ehdota nimeä",
|
"suggest name" => "ehdota nimeä",
|
||||||
"cancel" => "peru",
|
"cancel" => "peru",
|
||||||
"undo" => "kumoa",
|
"undo" => "kumoa",
|
||||||
"perform delete operation" => "suorita poistotoiminto",
|
"_Uploading %n file_::_Uploading %n files_" => array("Lähetetään %n tiedosto","Lähetetään %n tiedostoa"),
|
||||||
"'.' is an invalid file name." => "'.' on virheellinen nimi tiedostolle.",
|
"'.' is an invalid file name." => "'.' on virheellinen nimi tiedostolle.",
|
||||||
"File name cannot be empty." => "Tiedoston nimi ei voi olla tyhjä.",
|
"File name cannot be empty." => "Tiedoston nimi ei voi olla tyhjä.",
|
||||||
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Virheellinen nimi, merkit '\\', '/', '<', '>', ':', '\"', '|', '?' ja '*' eivät ole sallittuja.",
|
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Virheellinen nimi, merkit '\\', '/', '<', '>', ':', '\"', '|', '?' ja '*' eivät ole sallittuja.",
|
||||||
|
@ -39,10 +38,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nimi",
|
"Name" => "Nimi",
|
||||||
"Size" => "Koko",
|
"Size" => "Koko",
|
||||||
"Modified" => "Muokattu",
|
"Modified" => "Muokattu",
|
||||||
"1 folder" => "1 kansio",
|
"_%n folder_::_%n folders_" => array("%n kansio","%n kansiota"),
|
||||||
"{count} folders" => "{count} kansiota",
|
"_%n file_::_%n files_" => array("%n tiedosto","%n tiedostoa"),
|
||||||
"1 file" => "1 tiedosto",
|
|
||||||
"{count} files" => "{count} tiedostoa",
|
|
||||||
"Upload" => "Lähetä",
|
"Upload" => "Lähetä",
|
||||||
"File handling" => "Tiedostonhallinta",
|
"File handling" => "Tiedostonhallinta",
|
||||||
"Maximum upload size" => "Lähetettävän tiedoston suurin sallittu koko",
|
"Maximum upload size" => "Lähetettävän tiedoston suurin sallittu koko",
|
||||||
|
@ -62,6 +59,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Täällä ei ole mitään. Lähetä tänne jotakin!",
|
"Nothing in here. Upload something!" => "Täällä ei ole mitään. Lähetä tänne jotakin!",
|
||||||
"Download" => "Lataa",
|
"Download" => "Lataa",
|
||||||
"Unshare" => "Peru jakaminen",
|
"Unshare" => "Peru jakaminen",
|
||||||
|
"Delete" => "Poista",
|
||||||
"Upload too large" => "Lähetettävä tiedosto on liian suuri",
|
"Upload too large" => "Lähetettävä tiedosto on liian suuri",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Lähetettäväksi valitsemasi tiedostot ylittävät palvelimen salliman tiedostokoon rajan.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Lähetettäväksi valitsemasi tiedostot ylittävät palvelimen salliman tiedostokoon rajan.",
|
||||||
"Files are being scanned, please wait." => "Tiedostoja tarkistetaan, odota hetki.",
|
"Files are being scanned, please wait." => "Tiedostoja tarkistetaan, odota hetki.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Erreur",
|
"Error" => "Erreur",
|
||||||
"Share" => "Partager",
|
"Share" => "Partager",
|
||||||
"Delete permanently" => "Supprimer de façon définitive",
|
"Delete permanently" => "Supprimer de façon définitive",
|
||||||
"Delete" => "Supprimer",
|
|
||||||
"Rename" => "Renommer",
|
"Rename" => "Renommer",
|
||||||
"Pending" => "En attente",
|
"Pending" => "En attente",
|
||||||
"{new_name} already exists" => "{new_name} existe déjà",
|
"{new_name} already exists" => "{new_name} existe déjà",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "annuler",
|
"cancel" => "annuler",
|
||||||
"replaced {new_name} with {old_name}" => "{new_name} a été remplacé par {old_name}",
|
"replaced {new_name} with {old_name}" => "{new_name} a été remplacé par {old_name}",
|
||||||
"undo" => "annuler",
|
"undo" => "annuler",
|
||||||
"perform delete operation" => "effectuer l'opération de suppression",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "1 fichier en cours d'envoi",
|
|
||||||
"files uploading" => "fichiers en cours d'envoi",
|
"files uploading" => "fichiers en cours d'envoi",
|
||||||
"'.' is an invalid file name." => "'.' n'est pas un nom de fichier valide.",
|
"'.' 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.",
|
"File name cannot be empty." => "Le nom de fichier ne peut être vide.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nom",
|
"Name" => "Nom",
|
||||||
"Size" => "Taille",
|
"Size" => "Taille",
|
||||||
"Modified" => "Modifié",
|
"Modified" => "Modifié",
|
||||||
"1 folder" => "1 dossier",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} dossiers",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 fichier",
|
|
||||||
"{count} files" => "{count} fichiers",
|
|
||||||
"%s could not be renamed" => "%s ne peut être renommé",
|
"%s could not be renamed" => "%s ne peut être renommé",
|
||||||
"Upload" => "Envoyer",
|
"Upload" => "Envoyer",
|
||||||
"File handling" => "Gestion des fichiers",
|
"File handling" => "Gestion des fichiers",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Il n'y a rien ici ! Envoyez donc quelque chose :)",
|
"Nothing in here. Upload something!" => "Il n'y a rien ici ! Envoyez donc quelque chose :)",
|
||||||
"Download" => "Télécharger",
|
"Download" => "Télécharger",
|
||||||
"Unshare" => "Ne plus partager",
|
"Unshare" => "Ne plus partager",
|
||||||
|
"Delete" => "Supprimer",
|
||||||
"Upload too large" => "Téléversement trop volumineux",
|
"Upload too large" => "Téléversement trop volumineux",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Les fichiers que vous essayez d'envoyer dépassent la taille maximale permise par ce serveur.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Les fichiers que vous essayez d'envoyer dépassent la taille maximale permise par ce serveur.",
|
||||||
"Files are being scanned, please wait." => "Les fichiers sont en cours d'analyse, veuillez patienter.",
|
"Files are being scanned, please wait." => "Les fichiers sont en cours d'analyse, veuillez patienter.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Erro",
|
"Error" => "Erro",
|
||||||
"Share" => "Compartir",
|
"Share" => "Compartir",
|
||||||
"Delete permanently" => "Eliminar permanentemente",
|
"Delete permanently" => "Eliminar permanentemente",
|
||||||
"Delete" => "Eliminar",
|
|
||||||
"Rename" => "Renomear",
|
"Rename" => "Renomear",
|
||||||
"Pending" => "Pendentes",
|
"Pending" => "Pendentes",
|
||||||
"{new_name} already exists" => "Xa existe un {new_name}",
|
"{new_name} already exists" => "Xa existe un {new_name}",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "cancelar",
|
"cancel" => "cancelar",
|
||||||
"replaced {new_name} with {old_name}" => "substituír {new_name} por {old_name}",
|
"replaced {new_name} with {old_name}" => "substituír {new_name} por {old_name}",
|
||||||
"undo" => "desfacer",
|
"undo" => "desfacer",
|
||||||
"perform delete operation" => "realizar a operación de eliminación",
|
"_Uploading %n file_::_Uploading %n files_" => array("Cargando %n ficheiro","Cargando %n ficheiros"),
|
||||||
"1 file uploading" => "Enviándose 1 ficheiro",
|
|
||||||
"files uploading" => "ficheiros enviándose",
|
"files uploading" => "ficheiros enviándose",
|
||||||
"'.' is an invalid file name." => "«.» é un nome de ficheiro incorrecto",
|
"'.' is an invalid file name." => "«.» é un nome de ficheiro incorrecto",
|
||||||
"File name cannot be empty." => "O nome de ficheiro non pode estar baleiro",
|
"File name cannot be empty." => "O nome de ficheiro non pode estar baleiro",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nome",
|
"Name" => "Nome",
|
||||||
"Size" => "Tamaño",
|
"Size" => "Tamaño",
|
||||||
"Modified" => "Modificado",
|
"Modified" => "Modificado",
|
||||||
"1 folder" => "1 cartafol",
|
"_%n folder_::_%n folders_" => array("%n cartafol","%n cartafoles"),
|
||||||
"{count} folders" => "{count} cartafoles",
|
"_%n file_::_%n files_" => array("%n ficheiro","%n ficheiros"),
|
||||||
"1 file" => "1 ficheiro",
|
|
||||||
"{count} files" => "{count} ficheiros",
|
|
||||||
"%s could not be renamed" => "%s non pode cambiar de nome",
|
"%s could not be renamed" => "%s non pode cambiar de nome",
|
||||||
"Upload" => "Enviar",
|
"Upload" => "Enviar",
|
||||||
"File handling" => "Manexo de ficheiro",
|
"File handling" => "Manexo de ficheiro",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Aquí non hai nada. Envíe algo.",
|
"Nothing in here. Upload something!" => "Aquí non hai nada. Envíe algo.",
|
||||||
"Download" => "Descargar",
|
"Download" => "Descargar",
|
||||||
"Unshare" => "Deixar de compartir",
|
"Unshare" => "Deixar de compartir",
|
||||||
|
"Delete" => "Eliminar",
|
||||||
"Upload too large" => "Envío demasiado grande",
|
"Upload too large" => "Envío demasiado grande",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Os ficheiros que tenta enviar exceden do tamaño máximo permitido neste servidor",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Os ficheiros que tenta enviar exceden do tamaño máximo permitido neste servidor",
|
||||||
"Files are being scanned, please wait." => "Estanse analizando os ficheiros. Agarde.",
|
"Files are being scanned, please wait." => "Estanse analizando os ficheiros. Agarde.",
|
||||||
|
|
|
@ -20,7 +20,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "שגיאה",
|
"Error" => "שגיאה",
|
||||||
"Share" => "שתף",
|
"Share" => "שתף",
|
||||||
"Delete permanently" => "מחק לצמיתות",
|
"Delete permanently" => "מחק לצמיתות",
|
||||||
"Delete" => "מחיקה",
|
|
||||||
"Rename" => "שינוי שם",
|
"Rename" => "שינוי שם",
|
||||||
"Pending" => "ממתין",
|
"Pending" => "ממתין",
|
||||||
"{new_name} already exists" => "{new_name} כבר קיים",
|
"{new_name} already exists" => "{new_name} כבר קיים",
|
||||||
|
@ -29,17 +28,14 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "ביטול",
|
"cancel" => "ביטול",
|
||||||
"replaced {new_name} with {old_name}" => "{new_name} הוחלף ב־{old_name}",
|
"replaced {new_name} with {old_name}" => "{new_name} הוחלף ב־{old_name}",
|
||||||
"undo" => "ביטול",
|
"undo" => "ביטול",
|
||||||
"perform delete operation" => "ביצוע פעולת מחיקה",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "קובץ אחד נשלח",
|
|
||||||
"files uploading" => "קבצים בהעלאה",
|
"files uploading" => "קבצים בהעלאה",
|
||||||
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "השם שגוי, אסור להשתמש בתווים '\\', '/', '<', '>', ':', '\"', '|', '?' ו־'*'.",
|
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "השם שגוי, אסור להשתמש בתווים '\\', '/', '<', '>', ':', '\"', '|', '?' ו־'*'.",
|
||||||
"Name" => "שם",
|
"Name" => "שם",
|
||||||
"Size" => "גודל",
|
"Size" => "גודל",
|
||||||
"Modified" => "זמן שינוי",
|
"Modified" => "זמן שינוי",
|
||||||
"1 folder" => "תיקייה אחת",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} תיקיות",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "קובץ אחד",
|
|
||||||
"{count} files" => "{count} קבצים",
|
|
||||||
"Upload" => "העלאה",
|
"Upload" => "העלאה",
|
||||||
"File handling" => "טיפול בקבצים",
|
"File handling" => "טיפול בקבצים",
|
||||||
"Maximum upload size" => "גודל העלאה מקסימלי",
|
"Maximum upload size" => "גודל העלאה מקסימלי",
|
||||||
|
@ -57,6 +53,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "אין כאן שום דבר. אולי ברצונך להעלות משהו?",
|
"Nothing in here. Upload something!" => "אין כאן שום דבר. אולי ברצונך להעלות משהו?",
|
||||||
"Download" => "הורדה",
|
"Download" => "הורדה",
|
||||||
"Unshare" => "הסר שיתוף",
|
"Unshare" => "הסר שיתוף",
|
||||||
|
"Delete" => "מחיקה",
|
||||||
"Upload too large" => "העלאה גדולה מידי",
|
"Upload too large" => "העלאה גדולה מידי",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "הקבצים שניסית להעלות חרגו מהגודל המקסימלי להעלאת קבצים על שרת זה.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "הקבצים שניסית להעלות חרגו מהגודל המקסימלי להעלאת קבצים על שרת זה.",
|
||||||
"Files are being scanned, please wait." => "הקבצים נסרקים, נא להמתין.",
|
"Files are being scanned, please wait." => "הקבצים נסרקים, נא להמתין.",
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
$TRANSLATIONS = array(
|
$TRANSLATIONS = array(
|
||||||
"Error" => "त्रुटि",
|
"Error" => "त्रुटि",
|
||||||
"Share" => "साझा करें",
|
"Share" => "साझा करें",
|
||||||
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"Save" => "सहेजें"
|
"Save" => "सहेजें"
|
||||||
);
|
);
|
||||||
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
||||||
|
|
|
@ -12,18 +12,19 @@ $TRANSLATIONS = array(
|
||||||
"File upload is in progress. Leaving the page now will cancel the upload." => "Učitavanje datoteke. Napuštanjem stranice će prekinuti učitavanje.",
|
"File upload is in progress. Leaving the page now will cancel the upload." => "Učitavanje datoteke. Napuštanjem stranice će prekinuti učitavanje.",
|
||||||
"Error" => "Greška",
|
"Error" => "Greška",
|
||||||
"Share" => "Podijeli",
|
"Share" => "Podijeli",
|
||||||
"Delete" => "Obriši",
|
|
||||||
"Rename" => "Promjeni ime",
|
"Rename" => "Promjeni ime",
|
||||||
"Pending" => "U tijeku",
|
"Pending" => "U tijeku",
|
||||||
"replace" => "zamjeni",
|
"replace" => "zamjeni",
|
||||||
"suggest name" => "predloži ime",
|
"suggest name" => "predloži ime",
|
||||||
"cancel" => "odustani",
|
"cancel" => "odustani",
|
||||||
"undo" => "vrati",
|
"undo" => "vrati",
|
||||||
"1 file uploading" => "1 datoteka se učitava",
|
"_Uploading %n file_::_Uploading %n files_" => array("","",""),
|
||||||
"files uploading" => "datoteke se učitavaju",
|
"files uploading" => "datoteke se učitavaju",
|
||||||
"Name" => "Ime",
|
"Name" => "Ime",
|
||||||
"Size" => "Veličina",
|
"Size" => "Veličina",
|
||||||
"Modified" => "Zadnja promjena",
|
"Modified" => "Zadnja promjena",
|
||||||
|
"_%n folder_::_%n folders_" => array("","",""),
|
||||||
|
"_%n file_::_%n files_" => array("","",""),
|
||||||
"Upload" => "Učitaj",
|
"Upload" => "Učitaj",
|
||||||
"File handling" => "datoteka za rukovanje",
|
"File handling" => "datoteka za rukovanje",
|
||||||
"Maximum upload size" => "Maksimalna veličina prijenosa",
|
"Maximum upload size" => "Maksimalna veličina prijenosa",
|
||||||
|
@ -40,6 +41,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Nema ničega u ovoj mapi. Pošalji nešto!",
|
"Nothing in here. Upload something!" => "Nema ničega u ovoj mapi. Pošalji nešto!",
|
||||||
"Download" => "Preuzimanje",
|
"Download" => "Preuzimanje",
|
||||||
"Unshare" => "Makni djeljenje",
|
"Unshare" => "Makni djeljenje",
|
||||||
|
"Delete" => "Obriši",
|
||||||
"Upload too large" => "Prijenos je preobiman",
|
"Upload too large" => "Prijenos je preobiman",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Datoteke koje pokušavate prenijeti prelaze maksimalnu veličinu za prijenos datoteka na ovom poslužitelju.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Datoteke koje pokušavate prenijeti prelaze maksimalnu veličinu za prijenos datoteka na ovom poslužitelju.",
|
||||||
"Files are being scanned, please wait." => "Datoteke se skeniraju, molimo pričekajte.",
|
"Files are being scanned, please wait." => "Datoteke se skeniraju, molimo pričekajte.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Hiba",
|
"Error" => "Hiba",
|
||||||
"Share" => "Megosztás",
|
"Share" => "Megosztás",
|
||||||
"Delete permanently" => "Végleges törlés",
|
"Delete permanently" => "Végleges törlés",
|
||||||
"Delete" => "Törlés",
|
|
||||||
"Rename" => "Átnevezés",
|
"Rename" => "Átnevezés",
|
||||||
"Pending" => "Folyamatban",
|
"Pending" => "Folyamatban",
|
||||||
"{new_name} already exists" => "{new_name} már létezik",
|
"{new_name} already exists" => "{new_name} már létezik",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "mégse",
|
"cancel" => "mégse",
|
||||||
"replaced {new_name} with {old_name}" => "{new_name} fájlt kicseréltük ezzel: {old_name}",
|
"replaced {new_name} with {old_name}" => "{new_name} fájlt kicseréltük ezzel: {old_name}",
|
||||||
"undo" => "visszavonás",
|
"undo" => "visszavonás",
|
||||||
"perform delete operation" => "a törlés végrehajtása",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "1 fájl töltődik föl",
|
|
||||||
"files uploading" => "fájl töltődik föl",
|
"files uploading" => "fájl töltődik föl",
|
||||||
"'.' is an invalid file name." => "'.' fájlnév érvénytelen.",
|
"'.' is an invalid file name." => "'.' fájlnév érvénytelen.",
|
||||||
"File name cannot be empty." => "A fájlnév nem lehet semmi.",
|
"File name cannot be empty." => "A fájlnév nem lehet semmi.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Név",
|
"Name" => "Név",
|
||||||
"Size" => "Méret",
|
"Size" => "Méret",
|
||||||
"Modified" => "Módosítva",
|
"Modified" => "Módosítva",
|
||||||
"1 folder" => "1 mappa",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} mappa",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 fájl",
|
|
||||||
"{count} files" => "{count} fájl",
|
|
||||||
"%s could not be renamed" => "%s átnevezése nem sikerült",
|
"%s could not be renamed" => "%s átnevezése nem sikerült",
|
||||||
"Upload" => "Feltöltés",
|
"Upload" => "Feltöltés",
|
||||||
"File handling" => "Fájlkezelés",
|
"File handling" => "Fájlkezelés",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Itt nincs semmi. Töltsön fel valamit!",
|
"Nothing in here. Upload something!" => "Itt nincs semmi. Töltsön fel valamit!",
|
||||||
"Download" => "Letöltés",
|
"Download" => "Letöltés",
|
||||||
"Unshare" => "A megosztás visszavonása",
|
"Unshare" => "A megosztás visszavonása",
|
||||||
|
"Delete" => "Törlés",
|
||||||
"Upload too large" => "A feltöltés túl nagy",
|
"Upload too large" => "A feltöltés túl nagy",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "A feltöltendő állományok mérete meghaladja a kiszolgálón megengedett maximális méretet.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "A feltöltendő állományok mérete meghaladja a kiszolgálón megengedett maximális méretet.",
|
||||||
"Files are being scanned, please wait." => "A fájllista ellenőrzése zajlik, kis türelmet!",
|
"Files are being scanned, please wait." => "A fájllista ellenőrzése zajlik, kis türelmet!",
|
||||||
|
|
|
@ -1,7 +1,10 @@
|
||||||
<?php
|
<?php
|
||||||
$TRANSLATIONS = array(
|
$TRANSLATIONS = array(
|
||||||
"Delete" => "Ջնջել",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"Save" => "Պահպանել",
|
"Save" => "Պահպանել",
|
||||||
"Download" => "Բեռնել"
|
"Download" => "Բեռնել",
|
||||||
|
"Delete" => "Ջնջել"
|
||||||
);
|
);
|
||||||
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
||||||
|
|
|
@ -6,10 +6,12 @@ $TRANSLATIONS = array(
|
||||||
"Files" => "Files",
|
"Files" => "Files",
|
||||||
"Error" => "Error",
|
"Error" => "Error",
|
||||||
"Share" => "Compartir",
|
"Share" => "Compartir",
|
||||||
"Delete" => "Deler",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"Name" => "Nomine",
|
"Name" => "Nomine",
|
||||||
"Size" => "Dimension",
|
"Size" => "Dimension",
|
||||||
"Modified" => "Modificate",
|
"Modified" => "Modificate",
|
||||||
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"Upload" => "Incargar",
|
"Upload" => "Incargar",
|
||||||
"Maximum upload size" => "Dimension maxime de incargamento",
|
"Maximum upload size" => "Dimension maxime de incargamento",
|
||||||
"Save" => "Salveguardar",
|
"Save" => "Salveguardar",
|
||||||
|
@ -18,6 +20,7 @@ $TRANSLATIONS = array(
|
||||||
"Folder" => "Dossier",
|
"Folder" => "Dossier",
|
||||||
"Nothing in here. Upload something!" => "Nihil hic. Incarga alcun cosa!",
|
"Nothing in here. Upload something!" => "Nihil hic. Incarga alcun cosa!",
|
||||||
"Download" => "Discargar",
|
"Download" => "Discargar",
|
||||||
|
"Delete" => "Deler",
|
||||||
"Upload too large" => "Incargamento troppo longe"
|
"Upload too large" => "Incargamento troppo longe"
|
||||||
);
|
);
|
||||||
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
||||||
|
|
|
@ -21,7 +21,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Galat",
|
"Error" => "Galat",
|
||||||
"Share" => "Bagikan",
|
"Share" => "Bagikan",
|
||||||
"Delete permanently" => "Hapus secara permanen",
|
"Delete permanently" => "Hapus secara permanen",
|
||||||
"Delete" => "Hapus",
|
|
||||||
"Rename" => "Ubah nama",
|
"Rename" => "Ubah nama",
|
||||||
"Pending" => "Menunggu",
|
"Pending" => "Menunggu",
|
||||||
"{new_name} already exists" => "{new_name} sudah ada",
|
"{new_name} already exists" => "{new_name} sudah ada",
|
||||||
|
@ -30,8 +29,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "batalkan",
|
"cancel" => "batalkan",
|
||||||
"replaced {new_name} with {old_name}" => "mengganti {new_name} dengan {old_name}",
|
"replaced {new_name} with {old_name}" => "mengganti {new_name} dengan {old_name}",
|
||||||
"undo" => "urungkan",
|
"undo" => "urungkan",
|
||||||
"perform delete operation" => "Lakukan operasi penghapusan",
|
"_Uploading %n file_::_Uploading %n files_" => array(""),
|
||||||
"1 file uploading" => "1 berkas diunggah",
|
|
||||||
"files uploading" => "berkas diunggah",
|
"files uploading" => "berkas diunggah",
|
||||||
"'.' is an invalid file name." => "'.' bukan nama berkas yang valid.",
|
"'.' is an invalid file name." => "'.' bukan nama berkas yang valid.",
|
||||||
"File name cannot be empty." => "Nama berkas tidak boleh kosong.",
|
"File name cannot be empty." => "Nama berkas tidak boleh kosong.",
|
||||||
|
@ -43,10 +41,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nama",
|
"Name" => "Nama",
|
||||||
"Size" => "Ukuran",
|
"Size" => "Ukuran",
|
||||||
"Modified" => "Dimodifikasi",
|
"Modified" => "Dimodifikasi",
|
||||||
"1 folder" => "1 folder",
|
"_%n folder_::_%n folders_" => array(""),
|
||||||
"{count} folders" => "{count} folder",
|
"_%n file_::_%n files_" => array(""),
|
||||||
"1 file" => "1 berkas",
|
|
||||||
"{count} files" => "{count} berkas",
|
|
||||||
"Upload" => "Unggah",
|
"Upload" => "Unggah",
|
||||||
"File handling" => "Penanganan berkas",
|
"File handling" => "Penanganan berkas",
|
||||||
"Maximum upload size" => "Ukuran pengunggahan maksimum",
|
"Maximum upload size" => "Ukuran pengunggahan maksimum",
|
||||||
|
@ -66,6 +62,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Tidak ada apa-apa di sini. Unggah sesuatu!",
|
"Nothing in here. Upload something!" => "Tidak ada apa-apa di sini. Unggah sesuatu!",
|
||||||
"Download" => "Unduh",
|
"Download" => "Unduh",
|
||||||
"Unshare" => "Batalkan berbagi",
|
"Unshare" => "Batalkan berbagi",
|
||||||
|
"Delete" => "Hapus",
|
||||||
"Upload too large" => "Yang diunggah terlalu besar",
|
"Upload too large" => "Yang diunggah terlalu besar",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Berkas yang dicoba untuk diunggah melebihi ukuran maksimum pengunggahan berkas di server ini.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Berkas yang dicoba untuk diunggah melebihi ukuran maksimum pengunggahan berkas di server ini.",
|
||||||
"Files are being scanned, please wait." => "Berkas sedang dipindai, silakan tunggu.",
|
"Files are being scanned, please wait." => "Berkas sedang dipindai, silakan tunggu.",
|
||||||
|
|
|
@ -19,7 +19,6 @@ $TRANSLATIONS = array(
|
||||||
"URL cannot be empty." => "Vefslóð má ekki vera tóm.",
|
"URL cannot be empty." => "Vefslóð má ekki vera tóm.",
|
||||||
"Error" => "Villa",
|
"Error" => "Villa",
|
||||||
"Share" => "Deila",
|
"Share" => "Deila",
|
||||||
"Delete" => "Eyða",
|
|
||||||
"Rename" => "Endurskýra",
|
"Rename" => "Endurskýra",
|
||||||
"Pending" => "Bíður",
|
"Pending" => "Bíður",
|
||||||
"{new_name} already exists" => "{new_name} er þegar til",
|
"{new_name} already exists" => "{new_name} er þegar til",
|
||||||
|
@ -28,7 +27,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "hætta við",
|
"cancel" => "hætta við",
|
||||||
"replaced {new_name} with {old_name}" => "yfirskrifaði {new_name} með {old_name}",
|
"replaced {new_name} with {old_name}" => "yfirskrifaði {new_name} með {old_name}",
|
||||||
"undo" => "afturkalla",
|
"undo" => "afturkalla",
|
||||||
"1 file uploading" => "1 skrá innsend",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"'.' is an invalid file name." => "'.' er ekki leyfilegt nafn.",
|
"'.' is an invalid file name." => "'.' er ekki leyfilegt nafn.",
|
||||||
"File name cannot be empty." => "Nafn skráar má ekki vera tómt",
|
"File name cannot be empty." => "Nafn skráar má ekki vera tómt",
|
||||||
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ógilt nafn, táknin '\\', '/', '<', '>', ':', '\"', '|', '?' og '*' eru ekki leyfð.",
|
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ógilt nafn, táknin '\\', '/', '<', '>', ':', '\"', '|', '?' og '*' eru ekki leyfð.",
|
||||||
|
@ -36,10 +35,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nafn",
|
"Name" => "Nafn",
|
||||||
"Size" => "Stærð",
|
"Size" => "Stærð",
|
||||||
"Modified" => "Breytt",
|
"Modified" => "Breytt",
|
||||||
"1 folder" => "1 mappa",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} möppur",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 skrá",
|
|
||||||
"{count} files" => "{count} skrár",
|
|
||||||
"Upload" => "Senda inn",
|
"Upload" => "Senda inn",
|
||||||
"File handling" => "Meðhöndlun skrár",
|
"File handling" => "Meðhöndlun skrár",
|
||||||
"Maximum upload size" => "Hámarks stærð innsendingar",
|
"Maximum upload size" => "Hámarks stærð innsendingar",
|
||||||
|
@ -57,6 +54,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Ekkert hér. Settu eitthvað inn!",
|
"Nothing in here. Upload something!" => "Ekkert hér. Settu eitthvað inn!",
|
||||||
"Download" => "Niðurhal",
|
"Download" => "Niðurhal",
|
||||||
"Unshare" => "Hætta deilingu",
|
"Unshare" => "Hætta deilingu",
|
||||||
|
"Delete" => "Eyða",
|
||||||
"Upload too large" => "Innsend skrá er of stór",
|
"Upload too large" => "Innsend skrá er of stór",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Skrárnar sem þú ert að senda inn eru stærri en hámarks innsendingarstærð á þessum netþjóni.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Skrárnar sem þú ert að senda inn eru stærri en hámarks innsendingarstærð á þessum netþjóni.",
|
||||||
"Files are being scanned, please wait." => "Verið er að skima skrár, vinsamlegast hinkraðu.",
|
"Files are being scanned, please wait." => "Verið er að skima skrár, vinsamlegast hinkraðu.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Errore",
|
"Error" => "Errore",
|
||||||
"Share" => "Condividi",
|
"Share" => "Condividi",
|
||||||
"Delete permanently" => "Elimina definitivamente",
|
"Delete permanently" => "Elimina definitivamente",
|
||||||
"Delete" => "Elimina",
|
|
||||||
"Rename" => "Rinomina",
|
"Rename" => "Rinomina",
|
||||||
"Pending" => "In corso",
|
"Pending" => "In corso",
|
||||||
"{new_name} already exists" => "{new_name} esiste già",
|
"{new_name} already exists" => "{new_name} esiste già",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "annulla",
|
"cancel" => "annulla",
|
||||||
"replaced {new_name} with {old_name}" => "sostituito {new_name} con {old_name}",
|
"replaced {new_name} with {old_name}" => "sostituito {new_name} con {old_name}",
|
||||||
"undo" => "annulla",
|
"undo" => "annulla",
|
||||||
"perform delete operation" => "esegui l'operazione di eliminazione",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "1 file in fase di caricamento",
|
|
||||||
"files uploading" => "caricamento file",
|
"files uploading" => "caricamento file",
|
||||||
"'.' is an invalid file name." => "'.' non è un nome file valido.",
|
"'.' is an invalid file name." => "'.' non è un nome file valido.",
|
||||||
"File name cannot be empty." => "Il nome del file non può essere vuoto.",
|
"File name cannot be empty." => "Il nome del file non può essere vuoto.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nome",
|
"Name" => "Nome",
|
||||||
"Size" => "Dimensione",
|
"Size" => "Dimensione",
|
||||||
"Modified" => "Modificato",
|
"Modified" => "Modificato",
|
||||||
"1 folder" => "1 cartella",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} cartelle",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 file",
|
|
||||||
"{count} files" => "{count} file",
|
|
||||||
"%s could not be renamed" => "%s non può essere rinominato",
|
"%s could not be renamed" => "%s non può essere rinominato",
|
||||||
"Upload" => "Carica",
|
"Upload" => "Carica",
|
||||||
"File handling" => "Gestione file",
|
"File handling" => "Gestione file",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Non c'è niente qui. Carica qualcosa!",
|
"Nothing in here. Upload something!" => "Non c'è niente qui. Carica qualcosa!",
|
||||||
"Download" => "Scarica",
|
"Download" => "Scarica",
|
||||||
"Unshare" => "Rimuovi condivisione",
|
"Unshare" => "Rimuovi condivisione",
|
||||||
|
"Delete" => "Elimina",
|
||||||
"Upload too large" => "Caricamento troppo grande",
|
"Upload too large" => "Caricamento troppo grande",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "I file che stai provando a caricare superano la dimensione massima consentita su questo server.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "I file che stai provando a caricare superano la dimensione massima consentita su questo server.",
|
||||||
"Files are being scanned, please wait." => "Scansione dei file in corso, attendi",
|
"Files are being scanned, please wait." => "Scansione dei file in corso, attendi",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "エラー",
|
"Error" => "エラー",
|
||||||
"Share" => "共有",
|
"Share" => "共有",
|
||||||
"Delete permanently" => "完全に削除する",
|
"Delete permanently" => "完全に削除する",
|
||||||
"Delete" => "削除",
|
|
||||||
"Rename" => "名前の変更",
|
"Rename" => "名前の変更",
|
||||||
"Pending" => "中断",
|
"Pending" => "中断",
|
||||||
"{new_name} already exists" => "{new_name} はすでに存在しています",
|
"{new_name} already exists" => "{new_name} はすでに存在しています",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "キャンセル",
|
"cancel" => "キャンセル",
|
||||||
"replaced {new_name} with {old_name}" => "{old_name} を {new_name} に置換",
|
"replaced {new_name} with {old_name}" => "{old_name} を {new_name} に置換",
|
||||||
"undo" => "元に戻す",
|
"undo" => "元に戻す",
|
||||||
"perform delete operation" => "削除を実行",
|
"_Uploading %n file_::_Uploading %n files_" => array(""),
|
||||||
"1 file uploading" => "ファイルを1つアップロード中",
|
|
||||||
"files uploading" => "ファイルをアップロード中",
|
"files uploading" => "ファイルをアップロード中",
|
||||||
"'.' is an invalid file name." => "'.' は無効なファイル名です。",
|
"'.' is an invalid file name." => "'.' は無効なファイル名です。",
|
||||||
"File name cannot be empty." => "ファイル名を空にすることはできません。",
|
"File name cannot be empty." => "ファイル名を空にすることはできません。",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "名前",
|
"Name" => "名前",
|
||||||
"Size" => "サイズ",
|
"Size" => "サイズ",
|
||||||
"Modified" => "変更",
|
"Modified" => "変更",
|
||||||
"1 folder" => "1 フォルダ",
|
"_%n folder_::_%n folders_" => array("%n個のフォルダ"),
|
||||||
"{count} folders" => "{count} フォルダ",
|
"_%n file_::_%n files_" => array("%n個のファイル"),
|
||||||
"1 file" => "1 ファイル",
|
|
||||||
"{count} files" => "{count} ファイル",
|
|
||||||
"%s could not be renamed" => "%sの名前を変更できませんでした",
|
"%s could not be renamed" => "%sの名前を変更できませんでした",
|
||||||
"Upload" => "アップロード",
|
"Upload" => "アップロード",
|
||||||
"File handling" => "ファイル操作",
|
"File handling" => "ファイル操作",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "ここには何もありません。何かアップロードしてください。",
|
"Nothing in here. Upload something!" => "ここには何もありません。何かアップロードしてください。",
|
||||||
"Download" => "ダウンロード",
|
"Download" => "ダウンロード",
|
||||||
"Unshare" => "共有解除",
|
"Unshare" => "共有解除",
|
||||||
|
"Delete" => "削除",
|
||||||
"Upload too large" => "アップロードには大きすぎます。",
|
"Upload too large" => "アップロードには大きすぎます。",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "アップロードしようとしているファイルは、サーバで規定された最大サイズを超えています。",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "アップロードしようとしているファイルは、サーバで規定された最大サイズを超えています。",
|
||||||
"Files are being scanned, please wait." => "ファイルをスキャンしています、しばらくお待ちください。",
|
"Files are being scanned, please wait." => "ファイルをスキャンしています、しばらくお待ちください。",
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
<?php
|
<?php
|
||||||
$TRANSLATIONS = array(
|
$TRANSLATIONS = array(
|
||||||
"Files" => "ფაილები",
|
"Files" => "ფაილები",
|
||||||
|
"_Uploading %n file_::_Uploading %n files_" => array(""),
|
||||||
|
"_%n folder_::_%n folders_" => array(""),
|
||||||
|
"_%n file_::_%n files_" => array(""),
|
||||||
"Download" => "გადმოწერა"
|
"Download" => "გადმოწერა"
|
||||||
);
|
);
|
||||||
$PLURAL_FORMS = "nplurals=1; plural=0;";
|
$PLURAL_FORMS = "nplurals=1; plural=0;";
|
||||||
|
|
|
@ -21,7 +21,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "შეცდომა",
|
"Error" => "შეცდომა",
|
||||||
"Share" => "გაზიარება",
|
"Share" => "გაზიარება",
|
||||||
"Delete permanently" => "სრულად წაშლა",
|
"Delete permanently" => "სრულად წაშლა",
|
||||||
"Delete" => "წაშლა",
|
|
||||||
"Rename" => "გადარქმევა",
|
"Rename" => "გადარქმევა",
|
||||||
"Pending" => "მოცდის რეჟიმში",
|
"Pending" => "მოცდის რეჟიმში",
|
||||||
"{new_name} already exists" => "{new_name} უკვე არსებობს",
|
"{new_name} already exists" => "{new_name} უკვე არსებობს",
|
||||||
|
@ -30,8 +29,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "უარყოფა",
|
"cancel" => "უარყოფა",
|
||||||
"replaced {new_name} with {old_name}" => "{new_name} შეცვლილია {old_name}–ით",
|
"replaced {new_name} with {old_name}" => "{new_name} შეცვლილია {old_name}–ით",
|
||||||
"undo" => "დაბრუნება",
|
"undo" => "დაბრუნება",
|
||||||
"perform delete operation" => "მიმდინარეობს წაშლის ოპერაცია",
|
"_Uploading %n file_::_Uploading %n files_" => array(""),
|
||||||
"1 file uploading" => "1 ფაილის ატვირთვა",
|
|
||||||
"files uploading" => "ფაილები იტვირთება",
|
"files uploading" => "ფაილები იტვირთება",
|
||||||
"'.' is an invalid file name." => "'.' არის დაუშვებელი ფაილის სახელი.",
|
"'.' is an invalid file name." => "'.' არის დაუშვებელი ფაილის სახელი.",
|
||||||
"File name cannot be empty." => "ფაილის სახელი არ შეიძლება იყოს ცარიელი.",
|
"File name cannot be empty." => "ფაილის სახელი არ შეიძლება იყოს ცარიელი.",
|
||||||
|
@ -43,10 +41,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "სახელი",
|
"Name" => "სახელი",
|
||||||
"Size" => "ზომა",
|
"Size" => "ზომა",
|
||||||
"Modified" => "შეცვლილია",
|
"Modified" => "შეცვლილია",
|
||||||
"1 folder" => "1 საქაღალდე",
|
"_%n folder_::_%n folders_" => array(""),
|
||||||
"{count} folders" => "{count} საქაღალდე",
|
"_%n file_::_%n files_" => array(""),
|
||||||
"1 file" => "1 ფაილი",
|
|
||||||
"{count} files" => "{count} ფაილი",
|
|
||||||
"Upload" => "ატვირთვა",
|
"Upload" => "ატვირთვა",
|
||||||
"File handling" => "ფაილის დამუშავება",
|
"File handling" => "ფაილის დამუშავება",
|
||||||
"Maximum upload size" => "მაქსიმუმ ატვირთის ზომა",
|
"Maximum upload size" => "მაქსიმუმ ატვირთის ზომა",
|
||||||
|
@ -66,6 +62,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "აქ არაფერი არ არის. ატვირთე რამე!",
|
"Nothing in here. Upload something!" => "აქ არაფერი არ არის. ატვირთე რამე!",
|
||||||
"Download" => "ჩამოტვირთვა",
|
"Download" => "ჩამოტვირთვა",
|
||||||
"Unshare" => "გაუზიარებადი",
|
"Unshare" => "გაუზიარებადი",
|
||||||
|
"Delete" => "წაშლა",
|
||||||
"Upload too large" => "ასატვირთი ფაილი ძალიან დიდია",
|
"Upload too large" => "ასატვირთი ფაილი ძალიან დიდია",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "ფაილის ზომა რომლის ატვირთვასაც თქვენ აპირებთ, აჭარბებს სერვერზე დაშვებულ მაქსიმუმს.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "ფაილის ზომა რომლის ატვირთვასაც თქვენ აპირებთ, აჭარბებს სერვერზე დაშვებულ მაქსიმუმს.",
|
||||||
"Files are being scanned, please wait." => "მიმდინარეობს ფაილების სკანირება, გთხოვთ დაელოდოთ.",
|
"Files are being scanned, please wait." => "მიმდინარეობს ფაილების სკანირება, გთხოვთ დაელოდოთ.",
|
||||||
|
|
|
@ -21,7 +21,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "오류",
|
"Error" => "오류",
|
||||||
"Share" => "공유",
|
"Share" => "공유",
|
||||||
"Delete permanently" => "영원히 삭제",
|
"Delete permanently" => "영원히 삭제",
|
||||||
"Delete" => "삭제",
|
|
||||||
"Rename" => "이름 바꾸기",
|
"Rename" => "이름 바꾸기",
|
||||||
"Pending" => "대기 중",
|
"Pending" => "대기 중",
|
||||||
"{new_name} already exists" => "{new_name}이(가) 이미 존재함",
|
"{new_name} already exists" => "{new_name}이(가) 이미 존재함",
|
||||||
|
@ -30,8 +29,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "취소",
|
"cancel" => "취소",
|
||||||
"replaced {new_name} with {old_name}" => "{old_name}이(가) {new_name}(으)로 대체됨",
|
"replaced {new_name} with {old_name}" => "{old_name}이(가) {new_name}(으)로 대체됨",
|
||||||
"undo" => "되돌리기",
|
"undo" => "되돌리기",
|
||||||
"perform delete operation" => "삭제 작업중",
|
"_Uploading %n file_::_Uploading %n files_" => array(""),
|
||||||
"1 file uploading" => "파일 1개 업로드 중",
|
|
||||||
"files uploading" => "파일 업로드중",
|
"files uploading" => "파일 업로드중",
|
||||||
"'.' is an invalid file name." => "'.' 는 올바르지 않은 파일 이름 입니다.",
|
"'.' is an invalid file name." => "'.' 는 올바르지 않은 파일 이름 입니다.",
|
||||||
"File name cannot be empty." => "파일 이름이 비어 있을 수 없습니다.",
|
"File name cannot be empty." => "파일 이름이 비어 있을 수 없습니다.",
|
||||||
|
@ -43,10 +41,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "이름",
|
"Name" => "이름",
|
||||||
"Size" => "크기",
|
"Size" => "크기",
|
||||||
"Modified" => "수정됨",
|
"Modified" => "수정됨",
|
||||||
"1 folder" => "폴더 1개",
|
"_%n folder_::_%n folders_" => array(""),
|
||||||
"{count} folders" => "폴더 {count}개",
|
"_%n file_::_%n files_" => array(""),
|
||||||
"1 file" => "파일 1개",
|
|
||||||
"{count} files" => "파일 {count}개",
|
|
||||||
"Upload" => "업로드",
|
"Upload" => "업로드",
|
||||||
"File handling" => "파일 처리",
|
"File handling" => "파일 처리",
|
||||||
"Maximum upload size" => "최대 업로드 크기",
|
"Maximum upload size" => "최대 업로드 크기",
|
||||||
|
@ -66,6 +62,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "내용이 없습니다. 업로드할 수 있습니다!",
|
"Nothing in here. Upload something!" => "내용이 없습니다. 업로드할 수 있습니다!",
|
||||||
"Download" => "다운로드",
|
"Download" => "다운로드",
|
||||||
"Unshare" => "공유 해제",
|
"Unshare" => "공유 해제",
|
||||||
|
"Delete" => "삭제",
|
||||||
"Upload too large" => "업로드한 파일이 너무 큼",
|
"Upload too large" => "업로드한 파일이 너무 큼",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "이 파일이 서버에서 허용하는 최대 업로드 가능 용량보다 큽니다.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "이 파일이 서버에서 허용하는 최대 업로드 가능 용량보다 큽니다.",
|
||||||
"Files are being scanned, please wait." => "파일을 검색하고 있습니다. 기다려 주십시오.",
|
"Files are being scanned, please wait." => "파일을 검색하고 있습니다. 기다려 주십시오.",
|
||||||
|
|
|
@ -2,7 +2,10 @@
|
||||||
$TRANSLATIONS = array(
|
$TRANSLATIONS = array(
|
||||||
"URL cannot be empty." => "ناونیشانی بهستهر نابێت بهتاڵ بێت.",
|
"URL cannot be empty." => "ناونیشانی بهستهر نابێت بهتاڵ بێت.",
|
||||||
"Error" => "ههڵه",
|
"Error" => "ههڵه",
|
||||||
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"Name" => "ناو",
|
"Name" => "ناو",
|
||||||
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"Upload" => "بارکردن",
|
"Upload" => "بارکردن",
|
||||||
"Save" => "پاشکهوتکردن",
|
"Save" => "پاشکهوتکردن",
|
||||||
"Folder" => "بوخچه",
|
"Folder" => "بوخچه",
|
||||||
|
|
|
@ -12,13 +12,15 @@ $TRANSLATIONS = array(
|
||||||
"File upload is in progress. Leaving the page now will cancel the upload." => "File Upload am gaang. Wann's de des Säit verléiss gëtt den Upload ofgebrach.",
|
"File upload is in progress. Leaving the page now will cancel the upload." => "File Upload am gaang. Wann's de des Säit verléiss gëtt den Upload ofgebrach.",
|
||||||
"Error" => "Fehler",
|
"Error" => "Fehler",
|
||||||
"Share" => "Deelen",
|
"Share" => "Deelen",
|
||||||
"Delete" => "Läschen",
|
|
||||||
"replace" => "ersetzen",
|
"replace" => "ersetzen",
|
||||||
"cancel" => "ofbriechen",
|
"cancel" => "ofbriechen",
|
||||||
"undo" => "réckgängeg man",
|
"undo" => "réckgängeg man",
|
||||||
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"Name" => "Numm",
|
"Name" => "Numm",
|
||||||
"Size" => "Gréisst",
|
"Size" => "Gréisst",
|
||||||
"Modified" => "Geännert",
|
"Modified" => "Geännert",
|
||||||
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"Upload" => "Eroplueden",
|
"Upload" => "Eroplueden",
|
||||||
"File handling" => "Fichier handling",
|
"File handling" => "Fichier handling",
|
||||||
"Maximum upload size" => "Maximum Upload Gréisst ",
|
"Maximum upload size" => "Maximum Upload Gréisst ",
|
||||||
|
@ -35,6 +37,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Hei ass näischt. Lued eppes rop!",
|
"Nothing in here. Upload something!" => "Hei ass näischt. Lued eppes rop!",
|
||||||
"Download" => "Download",
|
"Download" => "Download",
|
||||||
"Unshare" => "Net méi deelen",
|
"Unshare" => "Net méi deelen",
|
||||||
|
"Delete" => "Läschen",
|
||||||
"Upload too large" => "Upload ze grouss",
|
"Upload too large" => "Upload ze grouss",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Déi Dateien déi Dir probéiert erop ze lueden sinn méi grouss wei déi Maximal Gréisst déi op dësem Server erlaabt ass.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Déi Dateien déi Dir probéiert erop ze lueden sinn méi grouss wei déi Maximal Gréisst déi op dësem Server erlaabt ass.",
|
||||||
"Files are being scanned, please wait." => "Fichieren gi gescannt, war weg.",
|
"Files are being scanned, please wait." => "Fichieren gi gescannt, war weg.",
|
||||||
|
|
|
@ -22,7 +22,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Klaida",
|
"Error" => "Klaida",
|
||||||
"Share" => "Dalintis",
|
"Share" => "Dalintis",
|
||||||
"Delete permanently" => "Ištrinti negrįžtamai",
|
"Delete permanently" => "Ištrinti negrįžtamai",
|
||||||
"Delete" => "Ištrinti",
|
|
||||||
"Rename" => "Pervadinti",
|
"Rename" => "Pervadinti",
|
||||||
"Pending" => "Laukiantis",
|
"Pending" => "Laukiantis",
|
||||||
"{new_name} already exists" => "{new_name} jau egzistuoja",
|
"{new_name} already exists" => "{new_name} jau egzistuoja",
|
||||||
|
@ -31,8 +30,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "atšaukti",
|
"cancel" => "atšaukti",
|
||||||
"replaced {new_name} with {old_name}" => "pakeiskite {new_name} į {old_name}",
|
"replaced {new_name} with {old_name}" => "pakeiskite {new_name} į {old_name}",
|
||||||
"undo" => "anuliuoti",
|
"undo" => "anuliuoti",
|
||||||
"perform delete operation" => "ištrinti",
|
"_Uploading %n file_::_Uploading %n files_" => array("","",""),
|
||||||
"1 file uploading" => "įkeliamas 1 failas",
|
|
||||||
"files uploading" => "įkeliami failai",
|
"files uploading" => "įkeliami failai",
|
||||||
"'.' is an invalid file name." => "'.' yra neleidžiamas failo pavadinime.",
|
"'.' is an invalid file name." => "'.' yra neleidžiamas failo pavadinime.",
|
||||||
"File name cannot be empty." => "Failo pavadinimas negali būti tuščias.",
|
"File name cannot be empty." => "Failo pavadinimas negali būti tuščias.",
|
||||||
|
@ -44,10 +42,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Pavadinimas",
|
"Name" => "Pavadinimas",
|
||||||
"Size" => "Dydis",
|
"Size" => "Dydis",
|
||||||
"Modified" => "Pakeista",
|
"Modified" => "Pakeista",
|
||||||
"1 folder" => "1 aplankalas",
|
"_%n folder_::_%n folders_" => array("","",""),
|
||||||
"{count} folders" => "{count} aplankalai",
|
"_%n file_::_%n files_" => array("","",""),
|
||||||
"1 file" => "1 failas",
|
|
||||||
"{count} files" => "{count} failai",
|
|
||||||
"Upload" => "Įkelti",
|
"Upload" => "Įkelti",
|
||||||
"File handling" => "Failų tvarkymas",
|
"File handling" => "Failų tvarkymas",
|
||||||
"Maximum upload size" => "Maksimalus įkeliamo failo dydis",
|
"Maximum upload size" => "Maksimalus įkeliamo failo dydis",
|
||||||
|
@ -67,6 +63,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Čia tuščia. Įkelkite ką nors!",
|
"Nothing in here. Upload something!" => "Čia tuščia. Įkelkite ką nors!",
|
||||||
"Download" => "Atsisiųsti",
|
"Download" => "Atsisiųsti",
|
||||||
"Unshare" => "Nebesidalinti",
|
"Unshare" => "Nebesidalinti",
|
||||||
|
"Delete" => "Ištrinti",
|
||||||
"Upload too large" => "Įkėlimui failas per didelis",
|
"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",
|
"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.",
|
"Files are being scanned, please wait." => "Skenuojami failai, prašome palaukti.",
|
||||||
|
|
|
@ -21,7 +21,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Kļūda",
|
"Error" => "Kļūda",
|
||||||
"Share" => "Dalīties",
|
"Share" => "Dalīties",
|
||||||
"Delete permanently" => "Dzēst pavisam",
|
"Delete permanently" => "Dzēst pavisam",
|
||||||
"Delete" => "Dzēst",
|
|
||||||
"Rename" => "Pārsaukt",
|
"Rename" => "Pārsaukt",
|
||||||
"Pending" => "Gaida savu kārtu",
|
"Pending" => "Gaida savu kārtu",
|
||||||
"{new_name} already exists" => "{new_name} jau eksistē",
|
"{new_name} already exists" => "{new_name} jau eksistē",
|
||||||
|
@ -30,8 +29,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "atcelt",
|
"cancel" => "atcelt",
|
||||||
"replaced {new_name} with {old_name}" => "aizvietoja {new_name} ar {old_name}",
|
"replaced {new_name} with {old_name}" => "aizvietoja {new_name} ar {old_name}",
|
||||||
"undo" => "atsaukt",
|
"undo" => "atsaukt",
|
||||||
"perform delete operation" => "veikt dzēšanas darbību",
|
"_Uploading %n file_::_Uploading %n files_" => array("","",""),
|
||||||
"1 file uploading" => "Augšupielādē 1 datni",
|
|
||||||
"'.' is an invalid file name." => "'.' ir nederīgs datnes nosaukums.",
|
"'.' is an invalid file name." => "'.' ir nederīgs datnes nosaukums.",
|
||||||
"File name cannot be empty." => "Datnes nosaukums nevar būt tukšs.",
|
"File name cannot be empty." => "Datnes nosaukums nevar būt tukšs.",
|
||||||
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nederīgs nosaukums, nav atļauti '\\', '/', '<', '>', ':', '\"', '|', '?' un '*'.",
|
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nederīgs nosaukums, nav atļauti '\\', '/', '<', '>', ':', '\"', '|', '?' un '*'.",
|
||||||
|
@ -42,10 +40,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nosaukums",
|
"Name" => "Nosaukums",
|
||||||
"Size" => "Izmērs",
|
"Size" => "Izmērs",
|
||||||
"Modified" => "Mainīts",
|
"Modified" => "Mainīts",
|
||||||
"1 folder" => "1 mape",
|
"_%n folder_::_%n folders_" => array("","",""),
|
||||||
"{count} folders" => "{count} mapes",
|
"_%n file_::_%n files_" => array("","",""),
|
||||||
"1 file" => "1 datne",
|
|
||||||
"{count} files" => "{count} datnes",
|
|
||||||
"Upload" => "Augšupielādēt",
|
"Upload" => "Augšupielādēt",
|
||||||
"File handling" => "Datņu pārvaldība",
|
"File handling" => "Datņu pārvaldība",
|
||||||
"Maximum upload size" => "Maksimālais datņu augšupielādes apjoms",
|
"Maximum upload size" => "Maksimālais datņu augšupielādes apjoms",
|
||||||
|
@ -65,6 +61,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Te vēl nekas nav. Rīkojies, sāc augšupielādēt!",
|
"Nothing in here. Upload something!" => "Te vēl nekas nav. Rīkojies, sāc augšupielādēt!",
|
||||||
"Download" => "Lejupielādēt",
|
"Download" => "Lejupielādēt",
|
||||||
"Unshare" => "Pārtraukt dalīšanos",
|
"Unshare" => "Pārtraukt dalīšanos",
|
||||||
|
"Delete" => "Dzēst",
|
||||||
"Upload too large" => "Datne ir par lielu, lai to augšupielādētu",
|
"Upload too large" => "Datne ir par lielu, lai to augšupielādētu",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Augšupielādējamās datnes pārsniedz servera pieļaujamo datņu augšupielādes apjomu",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Augšupielādējamās datnes pārsniedz servera pieļaujamo datņu augšupielādes apjomu",
|
||||||
"Files are being scanned, please wait." => "Datnes šobrīd tiek caurskatītas, lūdzu, uzgaidiet.",
|
"Files are being scanned, please wait." => "Datnes šobrīd tiek caurskatītas, lūdzu, uzgaidiet.",
|
||||||
|
|
|
@ -15,7 +15,6 @@ $TRANSLATIONS = array(
|
||||||
"URL cannot be empty." => "Адресата неможе да биде празна.",
|
"URL cannot be empty." => "Адресата неможе да биде празна.",
|
||||||
"Error" => "Грешка",
|
"Error" => "Грешка",
|
||||||
"Share" => "Сподели",
|
"Share" => "Сподели",
|
||||||
"Delete" => "Избриши",
|
|
||||||
"Rename" => "Преименувај",
|
"Rename" => "Преименувај",
|
||||||
"Pending" => "Чека",
|
"Pending" => "Чека",
|
||||||
"{new_name} already exists" => "{new_name} веќе постои",
|
"{new_name} already exists" => "{new_name} веќе постои",
|
||||||
|
@ -24,15 +23,13 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "откажи",
|
"cancel" => "откажи",
|
||||||
"replaced {new_name} with {old_name}" => "заменета {new_name} со {old_name}",
|
"replaced {new_name} with {old_name}" => "заменета {new_name} со {old_name}",
|
||||||
"undo" => "врати",
|
"undo" => "врати",
|
||||||
"1 file uploading" => "1 датотека се подига",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Неправилно име. , '\\', '/', '<', '>', ':', '\"', '|', '?' и '*' не се дозволени.",
|
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Неправилно име. , '\\', '/', '<', '>', ':', '\"', '|', '?' и '*' не се дозволени.",
|
||||||
"Name" => "Име",
|
"Name" => "Име",
|
||||||
"Size" => "Големина",
|
"Size" => "Големина",
|
||||||
"Modified" => "Променето",
|
"Modified" => "Променето",
|
||||||
"1 folder" => "1 папка",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} папки",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 датотека",
|
|
||||||
"{count} files" => "{count} датотеки",
|
|
||||||
"Upload" => "Подигни",
|
"Upload" => "Подигни",
|
||||||
"File handling" => "Ракување со датотеки",
|
"File handling" => "Ракување со датотеки",
|
||||||
"Maximum upload size" => "Максимална големина за подигање",
|
"Maximum upload size" => "Максимална големина за подигање",
|
||||||
|
@ -50,6 +47,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Тука нема ништо. Снимете нешто!",
|
"Nothing in here. Upload something!" => "Тука нема ништо. Снимете нешто!",
|
||||||
"Download" => "Преземи",
|
"Download" => "Преземи",
|
||||||
"Unshare" => "Не споделувај",
|
"Unshare" => "Не споделувај",
|
||||||
|
"Delete" => "Избриши",
|
||||||
"Upload too large" => "Фајлот кој се вчитува е преголем",
|
"Upload too large" => "Фајлот кој се вчитува е преголем",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Датотеките кои се обидувате да ги подигнете ја надминуваат максималната големина за подигнување датотеки на овој сервер.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Датотеките кои се обидувате да ги подигнете ја надминуваат максималната големина за подигнување датотеки на овој сервер.",
|
||||||
"Files are being scanned, please wait." => "Се скенираат датотеки, ве молам почекајте.",
|
"Files are being scanned, please wait." => "Се скенираат датотеки, ве молам почекајте.",
|
||||||
|
|
|
@ -12,13 +12,15 @@ $TRANSLATIONS = array(
|
||||||
"Upload cancelled." => "Muatnaik dibatalkan.",
|
"Upload cancelled." => "Muatnaik dibatalkan.",
|
||||||
"Error" => "Ralat",
|
"Error" => "Ralat",
|
||||||
"Share" => "Kongsi",
|
"Share" => "Kongsi",
|
||||||
"Delete" => "Padam",
|
|
||||||
"Pending" => "Dalam proses",
|
"Pending" => "Dalam proses",
|
||||||
"replace" => "ganti",
|
"replace" => "ganti",
|
||||||
"cancel" => "Batal",
|
"cancel" => "Batal",
|
||||||
|
"_Uploading %n file_::_Uploading %n files_" => array(""),
|
||||||
"Name" => "Nama",
|
"Name" => "Nama",
|
||||||
"Size" => "Saiz",
|
"Size" => "Saiz",
|
||||||
"Modified" => "Dimodifikasi",
|
"Modified" => "Dimodifikasi",
|
||||||
|
"_%n folder_::_%n folders_" => array(""),
|
||||||
|
"_%n file_::_%n files_" => array(""),
|
||||||
"Upload" => "Muat naik",
|
"Upload" => "Muat naik",
|
||||||
"File handling" => "Pengendalian fail",
|
"File handling" => "Pengendalian fail",
|
||||||
"Maximum upload size" => "Saiz maksimum muat naik",
|
"Maximum upload size" => "Saiz maksimum muat naik",
|
||||||
|
@ -34,6 +36,7 @@ $TRANSLATIONS = array(
|
||||||
"Cancel upload" => "Batal muat naik",
|
"Cancel upload" => "Batal muat naik",
|
||||||
"Nothing in here. Upload something!" => "Tiada apa-apa di sini. Muat naik sesuatu!",
|
"Nothing in here. Upload something!" => "Tiada apa-apa di sini. Muat naik sesuatu!",
|
||||||
"Download" => "Muat turun",
|
"Download" => "Muat turun",
|
||||||
|
"Delete" => "Padam",
|
||||||
"Upload too large" => "Muatnaik terlalu besar",
|
"Upload too large" => "Muatnaik terlalu besar",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Fail yang cuba dimuat naik melebihi saiz maksimum fail upload server",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Fail yang cuba dimuat naik melebihi saiz maksimum fail upload server",
|
||||||
"Files are being scanned, please wait." => "Fail sedang diimbas, harap bersabar.",
|
"Files are being scanned, please wait." => "Fail sedang diimbas, harap bersabar.",
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
<?php
|
<?php
|
||||||
$TRANSLATIONS = array(
|
$TRANSLATIONS = array(
|
||||||
"Files" => "ဖိုင်များ",
|
"Files" => "ဖိုင်များ",
|
||||||
|
"_Uploading %n file_::_Uploading %n files_" => array(""),
|
||||||
|
"_%n folder_::_%n folders_" => array(""),
|
||||||
|
"_%n file_::_%n files_" => array(""),
|
||||||
"Download" => "ဒေါင်းလုတ်"
|
"Download" => "ဒေါင်းလုတ်"
|
||||||
);
|
);
|
||||||
$PLURAL_FORMS = "nplurals=1; plural=0;";
|
$PLURAL_FORMS = "nplurals=1; plural=0;";
|
||||||
|
|
|
@ -23,7 +23,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Feil",
|
"Error" => "Feil",
|
||||||
"Share" => "Del",
|
"Share" => "Del",
|
||||||
"Delete permanently" => "Slett permanent",
|
"Delete permanently" => "Slett permanent",
|
||||||
"Delete" => "Slett",
|
|
||||||
"Rename" => "Omdøp",
|
"Rename" => "Omdøp",
|
||||||
"Pending" => "Ventende",
|
"Pending" => "Ventende",
|
||||||
"{new_name} already exists" => "{new_name} finnes allerede",
|
"{new_name} already exists" => "{new_name} finnes allerede",
|
||||||
|
@ -32,8 +31,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "avbryt",
|
"cancel" => "avbryt",
|
||||||
"replaced {new_name} with {old_name}" => "erstatt {new_name} med {old_name}",
|
"replaced {new_name} with {old_name}" => "erstatt {new_name} med {old_name}",
|
||||||
"undo" => "angre",
|
"undo" => "angre",
|
||||||
"perform delete operation" => "utfør sletting",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "1 fil lastes opp",
|
|
||||||
"files uploading" => "filer lastes opp",
|
"files uploading" => "filer lastes opp",
|
||||||
"'.' is an invalid file name." => "'.' er et ugyldig filnavn.",
|
"'.' is an invalid file name." => "'.' er et ugyldig filnavn.",
|
||||||
"File name cannot be empty." => "Filnavn kan ikke være tomt.",
|
"File name cannot be empty." => "Filnavn kan ikke være tomt.",
|
||||||
|
@ -45,10 +43,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Navn",
|
"Name" => "Navn",
|
||||||
"Size" => "Størrelse",
|
"Size" => "Størrelse",
|
||||||
"Modified" => "Endret",
|
"Modified" => "Endret",
|
||||||
"1 folder" => "1 mappe",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} mapper",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 fil",
|
|
||||||
"{count} files" => "{count} filer",
|
|
||||||
"Upload" => "Last opp",
|
"Upload" => "Last opp",
|
||||||
"File handling" => "Filhåndtering",
|
"File handling" => "Filhåndtering",
|
||||||
"Maximum upload size" => "Maksimum opplastingsstørrelse",
|
"Maximum upload size" => "Maksimum opplastingsstørrelse",
|
||||||
|
@ -68,6 +64,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Ingenting her. Last opp noe!",
|
"Nothing in here. Upload something!" => "Ingenting her. Last opp noe!",
|
||||||
"Download" => "Last ned",
|
"Download" => "Last ned",
|
||||||
"Unshare" => "Avslutt deling",
|
"Unshare" => "Avslutt deling",
|
||||||
|
"Delete" => "Slett",
|
||||||
"Upload too large" => "Filen er for stor",
|
"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.",
|
"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.",
|
"Files are being scanned, please wait." => "Skanner etter filer, vennligst vent.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Fout",
|
"Error" => "Fout",
|
||||||
"Share" => "Delen",
|
"Share" => "Delen",
|
||||||
"Delete permanently" => "Verwijder definitief",
|
"Delete permanently" => "Verwijder definitief",
|
||||||
"Delete" => "Verwijder",
|
|
||||||
"Rename" => "Hernoem",
|
"Rename" => "Hernoem",
|
||||||
"Pending" => "In behandeling",
|
"Pending" => "In behandeling",
|
||||||
"{new_name} already exists" => "{new_name} bestaat al",
|
"{new_name} already exists" => "{new_name} bestaat al",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "annuleren",
|
"cancel" => "annuleren",
|
||||||
"replaced {new_name} with {old_name}" => "verving {new_name} met {old_name}",
|
"replaced {new_name} with {old_name}" => "verving {new_name} met {old_name}",
|
||||||
"undo" => "ongedaan maken",
|
"undo" => "ongedaan maken",
|
||||||
"perform delete operation" => "uitvoeren verwijderactie",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "1 bestand wordt ge-upload",
|
|
||||||
"files uploading" => "bestanden aan het uploaden",
|
"files uploading" => "bestanden aan het uploaden",
|
||||||
"'.' is an invalid file name." => "'.' is een ongeldige bestandsnaam.",
|
"'.' is an invalid file name." => "'.' is een ongeldige bestandsnaam.",
|
||||||
"File name cannot be empty." => "Bestandsnaam kan niet leeg zijn.",
|
"File name cannot be empty." => "Bestandsnaam kan niet leeg zijn.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Naam",
|
"Name" => "Naam",
|
||||||
"Size" => "Grootte",
|
"Size" => "Grootte",
|
||||||
"Modified" => "Aangepast",
|
"Modified" => "Aangepast",
|
||||||
"1 folder" => "1 map",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} mappen",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 bestand",
|
|
||||||
"{count} files" => "{count} bestanden",
|
|
||||||
"%s could not be renamed" => "%s kon niet worden hernoemd",
|
"%s could not be renamed" => "%s kon niet worden hernoemd",
|
||||||
"Upload" => "Uploaden",
|
"Upload" => "Uploaden",
|
||||||
"File handling" => "Bestand",
|
"File handling" => "Bestand",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Er bevindt zich hier niets. Upload een bestand!",
|
"Nothing in here. Upload something!" => "Er bevindt zich hier niets. Upload een bestand!",
|
||||||
"Download" => "Downloaden",
|
"Download" => "Downloaden",
|
||||||
"Unshare" => "Stop met delen",
|
"Unshare" => "Stop met delen",
|
||||||
|
"Delete" => "Verwijder",
|
||||||
"Upload too large" => "Upload is te groot",
|
"Upload too large" => "Upload is te groot",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "De bestanden die u probeert te uploaden zijn groter dan de maximaal toegestane bestandsgrootte voor deze server.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "De bestanden die u probeert te uploaden zijn groter dan de maximaal toegestane bestandsgrootte voor deze server.",
|
||||||
"Files are being scanned, please wait." => "Bestanden worden gescand, even wachten.",
|
"Files are being scanned, please wait." => "Bestanden worden gescand, even wachten.",
|
||||||
|
|
|
@ -22,7 +22,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Feil",
|
"Error" => "Feil",
|
||||||
"Share" => "Del",
|
"Share" => "Del",
|
||||||
"Delete permanently" => "Slett for godt",
|
"Delete permanently" => "Slett for godt",
|
||||||
"Delete" => "Slett",
|
|
||||||
"Rename" => "Endra namn",
|
"Rename" => "Endra namn",
|
||||||
"Pending" => "Under vegs",
|
"Pending" => "Under vegs",
|
||||||
"{new_name} already exists" => "{new_name} finst allereie",
|
"{new_name} already exists" => "{new_name} finst allereie",
|
||||||
|
@ -31,8 +30,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "avbryt",
|
"cancel" => "avbryt",
|
||||||
"replaced {new_name} with {old_name}" => "bytte ut {new_name} med {old_name}",
|
"replaced {new_name} with {old_name}" => "bytte ut {new_name} med {old_name}",
|
||||||
"undo" => "angre",
|
"undo" => "angre",
|
||||||
"perform delete operation" => "utfør sletting",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "1 fil lastar opp",
|
|
||||||
"files uploading" => "filer lastar opp",
|
"files uploading" => "filer lastar opp",
|
||||||
"'.' is an invalid file name." => "«.» er eit ugyldig filnamn.",
|
"'.' is an invalid file name." => "«.» er eit ugyldig filnamn.",
|
||||||
"File name cannot be empty." => "Filnamnet kan ikkje vera tomt.",
|
"File name cannot be empty." => "Filnamnet kan ikkje vera tomt.",
|
||||||
|
@ -44,10 +42,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Namn",
|
"Name" => "Namn",
|
||||||
"Size" => "Storleik",
|
"Size" => "Storleik",
|
||||||
"Modified" => "Endra",
|
"Modified" => "Endra",
|
||||||
"1 folder" => "1 mappe",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} mapper",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 fil",
|
|
||||||
"{count} files" => "{count} filer",
|
|
||||||
"Upload" => "Last opp",
|
"Upload" => "Last opp",
|
||||||
"File handling" => "Filhandtering",
|
"File handling" => "Filhandtering",
|
||||||
"Maximum upload size" => "Maksimal opplastingsstorleik",
|
"Maximum upload size" => "Maksimal opplastingsstorleik",
|
||||||
|
@ -67,6 +63,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Ingenting her. Last noko opp!",
|
"Nothing in here. Upload something!" => "Ingenting her. Last noko opp!",
|
||||||
"Download" => "Last ned",
|
"Download" => "Last ned",
|
||||||
"Unshare" => "Udel",
|
"Unshare" => "Udel",
|
||||||
|
"Delete" => "Slett",
|
||||||
"Upload too large" => "For stor opplasting",
|
"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 å lasta 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.",
|
"Files are being scanned, please wait." => "Skannar filer, ver venleg og vent.",
|
||||||
|
|
|
@ -12,18 +12,19 @@ $TRANSLATIONS = array(
|
||||||
"File upload is in progress. Leaving the page now will cancel the upload." => "Un amontcargar es a se far. Daissar aquesta pagina ara tamparà lo cargament. ",
|
"File upload is in progress. Leaving the page now will cancel the upload." => "Un amontcargar es a se far. Daissar aquesta pagina ara tamparà lo cargament. ",
|
||||||
"Error" => "Error",
|
"Error" => "Error",
|
||||||
"Share" => "Parteja",
|
"Share" => "Parteja",
|
||||||
"Delete" => "Escafa",
|
|
||||||
"Rename" => "Torna nomenar",
|
"Rename" => "Torna nomenar",
|
||||||
"Pending" => "Al esperar",
|
"Pending" => "Al esperar",
|
||||||
"replace" => "remplaça",
|
"replace" => "remplaça",
|
||||||
"suggest name" => "nom prepausat",
|
"suggest name" => "nom prepausat",
|
||||||
"cancel" => "anulla",
|
"cancel" => "anulla",
|
||||||
"undo" => "defar",
|
"undo" => "defar",
|
||||||
"1 file uploading" => "1 fichièr al amontcargar",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"files uploading" => "fichièrs al amontcargar",
|
"files uploading" => "fichièrs al amontcargar",
|
||||||
"Name" => "Nom",
|
"Name" => "Nom",
|
||||||
"Size" => "Talha",
|
"Size" => "Talha",
|
||||||
"Modified" => "Modificat",
|
"Modified" => "Modificat",
|
||||||
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"Upload" => "Amontcarga",
|
"Upload" => "Amontcarga",
|
||||||
"File handling" => "Manejament de fichièr",
|
"File handling" => "Manejament de fichièr",
|
||||||
"Maximum upload size" => "Talha maximum d'amontcargament",
|
"Maximum upload size" => "Talha maximum d'amontcargament",
|
||||||
|
@ -40,6 +41,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Pas res dedins. Amontcarga qualquaren",
|
"Nothing in here. Upload something!" => "Pas res dedins. Amontcarga qualquaren",
|
||||||
"Download" => "Avalcarga",
|
"Download" => "Avalcarga",
|
||||||
"Unshare" => "Pas partejador",
|
"Unshare" => "Pas partejador",
|
||||||
|
"Delete" => "Escafa",
|
||||||
"Upload too large" => "Amontcargament tròp gròs",
|
"Upload too large" => "Amontcargament tròp gròs",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Los fichièrs que sias a amontcargar son tròp pesucs per la talha maxi pel servidor.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Los fichièrs que sias a amontcargar son tròp pesucs per la talha maxi pel servidor.",
|
||||||
"Files are being scanned, please wait." => "Los fiichièrs son a èsser explorats, ",
|
"Files are being scanned, please wait." => "Los fiichièrs son a èsser explorats, ",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Błąd",
|
"Error" => "Błąd",
|
||||||
"Share" => "Udostępnij",
|
"Share" => "Udostępnij",
|
||||||
"Delete permanently" => "Trwale usuń",
|
"Delete permanently" => "Trwale usuń",
|
||||||
"Delete" => "Usuń",
|
|
||||||
"Rename" => "Zmień nazwę",
|
"Rename" => "Zmień nazwę",
|
||||||
"Pending" => "Oczekujące",
|
"Pending" => "Oczekujące",
|
||||||
"{new_name} already exists" => "{new_name} już istnieje",
|
"{new_name} already exists" => "{new_name} już istnieje",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "anuluj",
|
"cancel" => "anuluj",
|
||||||
"replaced {new_name} with {old_name}" => "zastąpiono {new_name} przez {old_name}",
|
"replaced {new_name} with {old_name}" => "zastąpiono {new_name} przez {old_name}",
|
||||||
"undo" => "cofnij",
|
"undo" => "cofnij",
|
||||||
"perform delete operation" => "wykonaj operację usunięcia",
|
"_Uploading %n file_::_Uploading %n files_" => array("","",""),
|
||||||
"1 file uploading" => "1 plik wczytywany",
|
|
||||||
"files uploading" => "pliki wczytane",
|
"files uploading" => "pliki wczytane",
|
||||||
"'.' is an invalid file name." => "„.” jest nieprawidłową nazwą pliku.",
|
"'.' is an invalid file name." => "„.” jest nieprawidłową nazwą pliku.",
|
||||||
"File name cannot be empty." => "Nazwa pliku nie może być pusta.",
|
"File name cannot be empty." => "Nazwa pliku nie może być pusta.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nazwa",
|
"Name" => "Nazwa",
|
||||||
"Size" => "Rozmiar",
|
"Size" => "Rozmiar",
|
||||||
"Modified" => "Modyfikacja",
|
"Modified" => "Modyfikacja",
|
||||||
"1 folder" => "1 folder",
|
"_%n folder_::_%n folders_" => array("","",""),
|
||||||
"{count} folders" => "Ilość folderów: {count}",
|
"_%n file_::_%n files_" => array("","",""),
|
||||||
"1 file" => "1 plik",
|
|
||||||
"{count} files" => "Ilość plików: {count}",
|
|
||||||
"%s could not be renamed" => "%s nie można zmienić nazwy",
|
"%s could not be renamed" => "%s nie można zmienić nazwy",
|
||||||
"Upload" => "Wyślij",
|
"Upload" => "Wyślij",
|
||||||
"File handling" => "Zarządzanie plikami",
|
"File handling" => "Zarządzanie plikami",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Pusto. Wyślij coś!",
|
"Nothing in here. Upload something!" => "Pusto. Wyślij coś!",
|
||||||
"Download" => "Pobierz",
|
"Download" => "Pobierz",
|
||||||
"Unshare" => "Zatrzymaj współdzielenie",
|
"Unshare" => "Zatrzymaj współdzielenie",
|
||||||
|
"Delete" => "Usuń",
|
||||||
"Upload too large" => "Ładowany plik jest za duży",
|
"Upload too large" => "Ładowany plik jest za duży",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Pliki, które próbujesz przesłać, przekraczają maksymalną dopuszczalną wielkość.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Pliki, które próbujesz przesłać, przekraczają maksymalną dopuszczalną wielkość.",
|
||||||
"Files are being scanned, please wait." => "Skanowanie plików, proszę czekać.",
|
"Files are being scanned, please wait." => "Skanowanie plików, proszę czekać.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Erro",
|
"Error" => "Erro",
|
||||||
"Share" => "Compartilhar",
|
"Share" => "Compartilhar",
|
||||||
"Delete permanently" => "Excluir permanentemente",
|
"Delete permanently" => "Excluir permanentemente",
|
||||||
"Delete" => "Excluir",
|
|
||||||
"Rename" => "Renomear",
|
"Rename" => "Renomear",
|
||||||
"Pending" => "Pendente",
|
"Pending" => "Pendente",
|
||||||
"{new_name} already exists" => "{new_name} já existe",
|
"{new_name} already exists" => "{new_name} já existe",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "cancelar",
|
"cancel" => "cancelar",
|
||||||
"replaced {new_name} with {old_name}" => "Substituído {old_name} por {new_name} ",
|
"replaced {new_name} with {old_name}" => "Substituído {old_name} por {new_name} ",
|
||||||
"undo" => "desfazer",
|
"undo" => "desfazer",
|
||||||
"perform delete operation" => "realizar operação de exclusão",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "enviando 1 arquivo",
|
|
||||||
"files uploading" => "enviando arquivos",
|
"files uploading" => "enviando arquivos",
|
||||||
"'.' is an invalid file name." => "'.' é um nome de arquivo inválido.",
|
"'.' is an invalid file name." => "'.' é um nome de arquivo inválido.",
|
||||||
"File name cannot be empty." => "O nome do arquivo não pode estar vazio.",
|
"File name cannot be empty." => "O nome do arquivo não pode estar vazio.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nome",
|
"Name" => "Nome",
|
||||||
"Size" => "Tamanho",
|
"Size" => "Tamanho",
|
||||||
"Modified" => "Modificado",
|
"Modified" => "Modificado",
|
||||||
"1 folder" => "1 pasta",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} pastas",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 arquivo",
|
|
||||||
"{count} files" => "{count} arquivos",
|
|
||||||
"%s could not be renamed" => "%s não pode ser renomeado",
|
"%s could not be renamed" => "%s não pode ser renomeado",
|
||||||
"Upload" => "Upload",
|
"Upload" => "Upload",
|
||||||
"File handling" => "Tratamento de Arquivo",
|
"File handling" => "Tratamento de Arquivo",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Nada aqui.Carrege alguma coisa!",
|
"Nothing in here. Upload something!" => "Nada aqui.Carrege alguma coisa!",
|
||||||
"Download" => "Baixar",
|
"Download" => "Baixar",
|
||||||
"Unshare" => "Descompartilhar",
|
"Unshare" => "Descompartilhar",
|
||||||
|
"Delete" => "Excluir",
|
||||||
"Upload too large" => "Upload muito grande",
|
"Upload too large" => "Upload muito grande",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Os arquivos que você está tentando carregar excedeu o tamanho máximo para arquivos no servidor.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Os arquivos que você está tentando carregar excedeu o tamanho máximo para arquivos no servidor.",
|
||||||
"Files are being scanned, please wait." => "Arquivos sendo escaneados, por favor aguarde.",
|
"Files are being scanned, please wait." => "Arquivos sendo escaneados, por favor aguarde.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Erro",
|
"Error" => "Erro",
|
||||||
"Share" => "Partilhar",
|
"Share" => "Partilhar",
|
||||||
"Delete permanently" => "Eliminar permanentemente",
|
"Delete permanently" => "Eliminar permanentemente",
|
||||||
"Delete" => "Eliminar",
|
|
||||||
"Rename" => "Renomear",
|
"Rename" => "Renomear",
|
||||||
"Pending" => "Pendente",
|
"Pending" => "Pendente",
|
||||||
"{new_name} already exists" => "O nome {new_name} já existe",
|
"{new_name} already exists" => "O nome {new_name} já existe",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "cancelar",
|
"cancel" => "cancelar",
|
||||||
"replaced {new_name} with {old_name}" => "substituido {new_name} por {old_name}",
|
"replaced {new_name} with {old_name}" => "substituido {new_name} por {old_name}",
|
||||||
"undo" => "desfazer",
|
"undo" => "desfazer",
|
||||||
"perform delete operation" => "Executar a tarefa de apagar",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "A enviar 1 ficheiro",
|
|
||||||
"files uploading" => "A enviar os ficheiros",
|
"files uploading" => "A enviar os ficheiros",
|
||||||
"'.' is an invalid file name." => "'.' não é um nome de ficheiro válido!",
|
"'.' is an invalid file name." => "'.' não é um nome de ficheiro válido!",
|
||||||
"File name cannot be empty." => "O nome do ficheiro não pode estar vazio.",
|
"File name cannot be empty." => "O nome do ficheiro não pode estar vazio.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nome",
|
"Name" => "Nome",
|
||||||
"Size" => "Tamanho",
|
"Size" => "Tamanho",
|
||||||
"Modified" => "Modificado",
|
"Modified" => "Modificado",
|
||||||
"1 folder" => "1 pasta",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} pastas",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 ficheiro",
|
|
||||||
"{count} files" => "{count} ficheiros",
|
|
||||||
"%s could not be renamed" => "%s não pode ser renomeada",
|
"%s could not be renamed" => "%s não pode ser renomeada",
|
||||||
"Upload" => "Carregar",
|
"Upload" => "Carregar",
|
||||||
"File handling" => "Manuseamento de ficheiros",
|
"File handling" => "Manuseamento de ficheiros",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Vazio. Envie alguma coisa!",
|
"Nothing in here. Upload something!" => "Vazio. Envie alguma coisa!",
|
||||||
"Download" => "Transferir",
|
"Download" => "Transferir",
|
||||||
"Unshare" => "Deixar de partilhar",
|
"Unshare" => "Deixar de partilhar",
|
||||||
|
"Delete" => "Eliminar",
|
||||||
"Upload too large" => "Upload muito grande",
|
"Upload too large" => "Upload muito grande",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Os ficheiro que está a tentar enviar excedem o tamanho máximo de envio neste servidor.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Os ficheiro que está a tentar enviar excedem o tamanho máximo de envio neste servidor.",
|
||||||
"Files are being scanned, please wait." => "Os ficheiros estão a ser analisados, por favor aguarde.",
|
"Files are being scanned, please wait." => "Os ficheiros estão a ser analisados, por favor aguarde.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Eroare",
|
"Error" => "Eroare",
|
||||||
"Share" => "Partajează",
|
"Share" => "Partajează",
|
||||||
"Delete permanently" => "Stergere permanenta",
|
"Delete permanently" => "Stergere permanenta",
|
||||||
"Delete" => "Șterge",
|
|
||||||
"Rename" => "Redenumire",
|
"Rename" => "Redenumire",
|
||||||
"Pending" => "În așteptare",
|
"Pending" => "În așteptare",
|
||||||
"{new_name} already exists" => "{new_name} deja exista",
|
"{new_name} already exists" => "{new_name} deja exista",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "anulare",
|
"cancel" => "anulare",
|
||||||
"replaced {new_name} with {old_name}" => "{new_name} inlocuit cu {old_name}",
|
"replaced {new_name} with {old_name}" => "{new_name} inlocuit cu {old_name}",
|
||||||
"undo" => "Anulează ultima acțiune",
|
"undo" => "Anulează ultima acțiune",
|
||||||
"perform delete operation" => "efectueaza operatiunea de stergere",
|
"_Uploading %n file_::_Uploading %n files_" => array("","",""),
|
||||||
"1 file uploading" => "un fișier se încarcă",
|
|
||||||
"files uploading" => "fișiere se încarcă",
|
"files uploading" => "fișiere se încarcă",
|
||||||
"'.' is an invalid file name." => "'.' este un nume invalid de fișier.",
|
"'.' is an invalid file name." => "'.' este un nume invalid de fișier.",
|
||||||
"File name cannot be empty." => "Numele fișierului nu poate rămâne gol.",
|
"File name cannot be empty." => "Numele fișierului nu poate rămâne gol.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Nume",
|
"Name" => "Nume",
|
||||||
"Size" => "Dimensiune",
|
"Size" => "Dimensiune",
|
||||||
"Modified" => "Modificat",
|
"Modified" => "Modificat",
|
||||||
"1 folder" => "1 folder",
|
"_%n folder_::_%n folders_" => array("","",""),
|
||||||
"{count} folders" => "{count} foldare",
|
"_%n file_::_%n files_" => array("","",""),
|
||||||
"1 file" => "1 fisier",
|
|
||||||
"{count} files" => "{count} fisiere",
|
|
||||||
"%s could not be renamed" => "%s nu a putut fi redenumit",
|
"%s could not be renamed" => "%s nu a putut fi redenumit",
|
||||||
"Upload" => "Încărcare",
|
"Upload" => "Încărcare",
|
||||||
"File handling" => "Manipulare fișiere",
|
"File handling" => "Manipulare fișiere",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Nimic aici. Încarcă ceva!",
|
"Nothing in here. Upload something!" => "Nimic aici. Încarcă ceva!",
|
||||||
"Download" => "Descarcă",
|
"Download" => "Descarcă",
|
||||||
"Unshare" => "Anulare partajare",
|
"Unshare" => "Anulare partajare",
|
||||||
|
"Delete" => "Șterge",
|
||||||
"Upload too large" => "Fișierul încărcat este prea mare",
|
"Upload too large" => "Fișierul încărcat este prea mare",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Fișierul care l-ai încărcat a depășită limita maximă admisă la încărcare pe acest server.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Fișierul care l-ai încărcat a depășită limita maximă admisă la încărcare pe acest server.",
|
||||||
"Files are being scanned, please wait." => "Fișierele sunt scanate, te rog așteptă.",
|
"Files are being scanned, please wait." => "Fișierele sunt scanate, te rog așteptă.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Ошибка",
|
"Error" => "Ошибка",
|
||||||
"Share" => "Открыть доступ",
|
"Share" => "Открыть доступ",
|
||||||
"Delete permanently" => "Удалено навсегда",
|
"Delete permanently" => "Удалено навсегда",
|
||||||
"Delete" => "Удалить",
|
|
||||||
"Rename" => "Переименовать",
|
"Rename" => "Переименовать",
|
||||||
"Pending" => "Ожидание",
|
"Pending" => "Ожидание",
|
||||||
"{new_name} already exists" => "{new_name} уже существует",
|
"{new_name} already exists" => "{new_name} уже существует",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "отмена",
|
"cancel" => "отмена",
|
||||||
"replaced {new_name} with {old_name}" => "заменено {new_name} на {old_name}",
|
"replaced {new_name} with {old_name}" => "заменено {new_name} на {old_name}",
|
||||||
"undo" => "отмена",
|
"undo" => "отмена",
|
||||||
"perform delete operation" => "выполнить операцию удаления",
|
"_Uploading %n file_::_Uploading %n files_" => array("","",""),
|
||||||
"1 file uploading" => "загружается 1 файл",
|
|
||||||
"files uploading" => "файлы загружаются",
|
"files uploading" => "файлы загружаются",
|
||||||
"'.' is an invalid file name." => "'.' - неправильное имя файла.",
|
"'.' is an invalid file name." => "'.' - неправильное имя файла.",
|
||||||
"File name cannot be empty." => "Имя файла не может быть пустым.",
|
"File name cannot be empty." => "Имя файла не может быть пустым.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Имя",
|
"Name" => "Имя",
|
||||||
"Size" => "Размер",
|
"Size" => "Размер",
|
||||||
"Modified" => "Изменён",
|
"Modified" => "Изменён",
|
||||||
"1 folder" => "1 папка",
|
"_%n folder_::_%n folders_" => array("","",""),
|
||||||
"{count} folders" => "{count} папок",
|
"_%n file_::_%n files_" => array("","",""),
|
||||||
"1 file" => "1 файл",
|
|
||||||
"{count} files" => "{count} файлов",
|
|
||||||
"%s could not be renamed" => "%s не может быть переименован",
|
"%s could not be renamed" => "%s не может быть переименован",
|
||||||
"Upload" => "Загрузка",
|
"Upload" => "Загрузка",
|
||||||
"File handling" => "Управление файлами",
|
"File handling" => "Управление файлами",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Здесь ничего нет. Загрузите что-нибудь!",
|
"Nothing in here. Upload something!" => "Здесь ничего нет. Загрузите что-нибудь!",
|
||||||
"Download" => "Скачать",
|
"Download" => "Скачать",
|
||||||
"Unshare" => "Закрыть общий доступ",
|
"Unshare" => "Закрыть общий доступ",
|
||||||
|
"Delete" => "Удалить",
|
||||||
"Upload too large" => "Файл слишком велик",
|
"Upload too large" => "Файл слишком велик",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Файлы, которые вы пытаетесь загрузить, превышают лимит для файлов на этом сервере.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Файлы, которые вы пытаетесь загрузить, превышают лимит для файлов на этом сервере.",
|
||||||
"Files are being scanned, please wait." => "Подождите, файлы сканируются.",
|
"Files are being scanned, please wait." => "Подождите, файлы сканируются.",
|
||||||
|
|
|
@ -1,18 +0,0 @@
|
||||||
<?php
|
|
||||||
$TRANSLATIONS = array(
|
|
||||||
"No file was uploaded. Unknown error" => "Файл не был загружен. Неизвестная ошибка",
|
|
||||||
"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" => "Отсутствие временной папки",
|
|
||||||
"Failed to write to disk" => "Не удалось записать на диск",
|
|
||||||
"Not enough storage available" => "Недостаточно места в хранилище",
|
|
||||||
"Share" => "Сделать общим",
|
|
||||||
"Delete" => "Удалить",
|
|
||||||
"Error" => "Ошибка",
|
|
||||||
"Name" => "Имя",
|
|
||||||
"Save" => "Сохранить",
|
|
||||||
"Download" => "Загрузка"
|
|
||||||
);
|
|
||||||
$PLURAL_FORMS = "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);";
|
|
|
@ -13,18 +13,17 @@ $TRANSLATIONS = array(
|
||||||
"URL cannot be empty." => "යොමුව හිස් විය නොහැක",
|
"URL cannot be empty." => "යොමුව හිස් විය නොහැක",
|
||||||
"Error" => "දෝෂයක්",
|
"Error" => "දෝෂයක්",
|
||||||
"Share" => "බෙදා හදා ගන්න",
|
"Share" => "බෙදා හදා ගන්න",
|
||||||
"Delete" => "මකා දමන්න",
|
|
||||||
"Rename" => "නැවත නම් කරන්න",
|
"Rename" => "නැවත නම් කරන්න",
|
||||||
"replace" => "ප්රතිස්ථාපනය කරන්න",
|
"replace" => "ප්රතිස්ථාපනය කරන්න",
|
||||||
"suggest name" => "නමක් යෝජනා කරන්න",
|
"suggest name" => "නමක් යෝජනා කරන්න",
|
||||||
"cancel" => "අත් හරින්න",
|
"cancel" => "අත් හරින්න",
|
||||||
"undo" => "නිෂ්ප්රභ කරන්න",
|
"undo" => "නිෂ්ප්රභ කරන්න",
|
||||||
"1 file uploading" => "1 ගොනුවක් උඩගත කෙරේ",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"Name" => "නම",
|
"Name" => "නම",
|
||||||
"Size" => "ප්රමාණය",
|
"Size" => "ප්රමාණය",
|
||||||
"Modified" => "වෙනස් කළ",
|
"Modified" => "වෙනස් කළ",
|
||||||
"1 folder" => "1 ෆොල්ඩරයක්",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"1 file" => "1 ගොනුවක්",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"Upload" => "උඩුගත කරන්න",
|
"Upload" => "උඩුගත කරන්න",
|
||||||
"File handling" => "ගොනු පරිහරණය",
|
"File handling" => "ගොනු පරිහරණය",
|
||||||
"Maximum upload size" => "උඩුගත කිරීමක උපරිම ප්රමාණය",
|
"Maximum upload size" => "උඩුගත කිරීමක උපරිම ප්රමාණය",
|
||||||
|
@ -42,6 +41,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "මෙහි කිසිවක් නොමැත. යමක් උඩුගත කරන්න",
|
"Nothing in here. Upload something!" => "මෙහි කිසිවක් නොමැත. යමක් උඩුගත කරන්න",
|
||||||
"Download" => "බාන්න",
|
"Download" => "බාන්න",
|
||||||
"Unshare" => "නොබෙදු",
|
"Unshare" => "නොබෙදු",
|
||||||
|
"Delete" => "මකා දමන්න",
|
||||||
"Upload too large" => "උඩුගත කිරීම විශාල වැඩිය",
|
"Upload too large" => "උඩුගත කිරීම විශාල වැඩිය",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "ඔබ උඩුගත කිරීමට තැත් කරන ගොනු මෙම සේවාදායකයා උඩුගත කිරීමට ඉඩදී ඇති උපරිම ගොනු විශාලත්වයට වඩා වැඩිය",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "ඔබ උඩුගත කිරීමට තැත් කරන ගොනු මෙම සේවාදායකයා උඩුගත කිරීමට ඉඩදී ඇති උපරිම ගොනු විශාලත්වයට වඩා වැඩිය",
|
||||||
"Files are being scanned, please wait." => "ගොනු පරික්ෂා කෙරේ. මඳක් රැඳී සිටින්න",
|
"Files are being scanned, please wait." => "ගොනු පරික්ෂා කෙරේ. මඳක් රැඳී සිටින්න",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Chyba",
|
"Error" => "Chyba",
|
||||||
"Share" => "Zdieľať",
|
"Share" => "Zdieľať",
|
||||||
"Delete permanently" => "Zmazať trvalo",
|
"Delete permanently" => "Zmazať trvalo",
|
||||||
"Delete" => "Zmazať",
|
|
||||||
"Rename" => "Premenovať",
|
"Rename" => "Premenovať",
|
||||||
"Pending" => "Prebieha",
|
"Pending" => "Prebieha",
|
||||||
"{new_name} already exists" => "{new_name} už existuje",
|
"{new_name} already exists" => "{new_name} už existuje",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "zrušiť",
|
"cancel" => "zrušiť",
|
||||||
"replaced {new_name} with {old_name}" => "prepísaný {new_name} súborom {old_name}",
|
"replaced {new_name} with {old_name}" => "prepísaný {new_name} súborom {old_name}",
|
||||||
"undo" => "vrátiť",
|
"undo" => "vrátiť",
|
||||||
"perform delete operation" => "vykonať zmazanie",
|
"_Uploading %n file_::_Uploading %n files_" => array("","",""),
|
||||||
"1 file uploading" => "1 súbor sa posiela ",
|
|
||||||
"files uploading" => "nahrávanie súborov",
|
"files uploading" => "nahrávanie súborov",
|
||||||
"'.' is an invalid file name." => "'.' je neplatné meno súboru.",
|
"'.' is an invalid file name." => "'.' je neplatné meno súboru.",
|
||||||
"File name cannot be empty." => "Meno súboru nemôže byť prázdne",
|
"File name cannot be empty." => "Meno súboru nemôže byť prázdne",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Názov",
|
"Name" => "Názov",
|
||||||
"Size" => "Veľkosť",
|
"Size" => "Veľkosť",
|
||||||
"Modified" => "Upravené",
|
"Modified" => "Upravené",
|
||||||
"1 folder" => "1 priečinok",
|
"_%n folder_::_%n folders_" => array("","",""),
|
||||||
"{count} folders" => "{count} priečinkov",
|
"_%n file_::_%n files_" => array("","",""),
|
||||||
"1 file" => "1 súbor",
|
|
||||||
"{count} files" => "{count} súborov",
|
|
||||||
"%s could not be renamed" => "%s nemohol byť premenovaný",
|
"%s could not be renamed" => "%s nemohol byť premenovaný",
|
||||||
"Upload" => "Odoslať",
|
"Upload" => "Odoslať",
|
||||||
"File handling" => "Nastavenie správania sa k súborom",
|
"File handling" => "Nastavenie správania sa k súborom",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Žiadny súbor. Nahrajte niečo!",
|
"Nothing in here. Upload something!" => "Žiadny súbor. Nahrajte niečo!",
|
||||||
"Download" => "Sťahovanie",
|
"Download" => "Sťahovanie",
|
||||||
"Unshare" => "Zrušiť zdieľanie",
|
"Unshare" => "Zrušiť zdieľanie",
|
||||||
|
"Delete" => "Zmazať",
|
||||||
"Upload too large" => "Nahrávanie je príliš veľké",
|
"Upload too large" => "Nahrávanie je príliš veľké",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Súbory, ktoré sa snažíte nahrať, presahujú maximálnu veľkosť pre nahratie súborov na tento server.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Súbory, ktoré sa snažíte nahrať, presahujú maximálnu veľkosť pre nahratie súborov na tento server.",
|
||||||
"Files are being scanned, please wait." => "Čakajte, súbory sú prehľadávané.",
|
"Files are being scanned, please wait." => "Čakajte, súbory sú prehľadávané.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Napaka",
|
"Error" => "Napaka",
|
||||||
"Share" => "Souporaba",
|
"Share" => "Souporaba",
|
||||||
"Delete permanently" => "Izbriši dokončno",
|
"Delete permanently" => "Izbriši dokončno",
|
||||||
"Delete" => "Izbriši",
|
|
||||||
"Rename" => "Preimenuj",
|
"Rename" => "Preimenuj",
|
||||||
"Pending" => "V čakanju ...",
|
"Pending" => "V čakanju ...",
|
||||||
"{new_name} already exists" => "{new_name} že obstaja",
|
"{new_name} already exists" => "{new_name} že obstaja",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "prekliči",
|
"cancel" => "prekliči",
|
||||||
"replaced {new_name} with {old_name}" => "preimenovano ime {new_name} z imenom {old_name}",
|
"replaced {new_name} with {old_name}" => "preimenovano ime {new_name} z imenom {old_name}",
|
||||||
"undo" => "razveljavi",
|
"undo" => "razveljavi",
|
||||||
"perform delete operation" => "izvedi opravilo brisanja",
|
"_Uploading %n file_::_Uploading %n files_" => array("","","",""),
|
||||||
"1 file uploading" => "Pošiljanje 1 datoteke",
|
|
||||||
"files uploading" => "poteka pošiljanje datotek",
|
"files uploading" => "poteka pošiljanje datotek",
|
||||||
"'.' is an invalid file name." => "'.' je neveljavno ime datoteke.",
|
"'.' is an invalid file name." => "'.' je neveljavno ime datoteke.",
|
||||||
"File name cannot be empty." => "Ime datoteke ne sme biti prazno polje.",
|
"File name cannot be empty." => "Ime datoteke ne sme biti prazno polje.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Ime",
|
"Name" => "Ime",
|
||||||
"Size" => "Velikost",
|
"Size" => "Velikost",
|
||||||
"Modified" => "Spremenjeno",
|
"Modified" => "Spremenjeno",
|
||||||
"1 folder" => "1 mapa",
|
"_%n folder_::_%n folders_" => array("","","",""),
|
||||||
"{count} folders" => "{count} map",
|
"_%n file_::_%n files_" => array("","","",""),
|
||||||
"1 file" => "1 datoteka",
|
|
||||||
"{count} files" => "{count} datotek",
|
|
||||||
"%s could not be renamed" => "%s ni bilo mogoče preimenovati",
|
"%s could not be renamed" => "%s ni bilo mogoče preimenovati",
|
||||||
"Upload" => "Pošlji",
|
"Upload" => "Pošlji",
|
||||||
"File handling" => "Upravljanje z datotekami",
|
"File handling" => "Upravljanje z datotekami",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Tukaj še ni ničesar. Najprej je treba kakšno datoteko poslati v oblak!",
|
"Nothing in here. Upload something!" => "Tukaj še ni ničesar. Najprej je treba kakšno datoteko poslati v oblak!",
|
||||||
"Download" => "Prejmi",
|
"Download" => "Prejmi",
|
||||||
"Unshare" => "Prekliči souporabo",
|
"Unshare" => "Prekliči souporabo",
|
||||||
|
"Delete" => "Izbriši",
|
||||||
"Upload too large" => "Prekoračenje omejitve velikosti",
|
"Upload too large" => "Prekoračenje omejitve velikosti",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Datoteke, ki jih želite poslati, presegajo največjo dovoljeno velikost na strežniku.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Datoteke, ki jih želite poslati, presegajo največjo dovoljeno velikost na strežniku.",
|
||||||
"Files are being scanned, please wait." => "Poteka preučevanje datotek, počakajte ...",
|
"Files are being scanned, please wait." => "Poteka preučevanje datotek, počakajte ...",
|
||||||
|
|
|
@ -21,7 +21,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Veprim i gabuar",
|
"Error" => "Veprim i gabuar",
|
||||||
"Share" => "Nda",
|
"Share" => "Nda",
|
||||||
"Delete permanently" => "Elimino përfundimisht",
|
"Delete permanently" => "Elimino përfundimisht",
|
||||||
"Delete" => "Elimino",
|
|
||||||
"Rename" => "Riemërto",
|
"Rename" => "Riemërto",
|
||||||
"Pending" => "Pezulluar",
|
"Pending" => "Pezulluar",
|
||||||
"{new_name} already exists" => "{new_name} ekziston",
|
"{new_name} already exists" => "{new_name} ekziston",
|
||||||
|
@ -30,8 +29,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "anulo",
|
"cancel" => "anulo",
|
||||||
"replaced {new_name} with {old_name}" => "U zëvëndësua {new_name} me {old_name}",
|
"replaced {new_name} with {old_name}" => "U zëvëndësua {new_name} me {old_name}",
|
||||||
"undo" => "anulo",
|
"undo" => "anulo",
|
||||||
"perform delete operation" => "ekzekuto operacionin e eliminimit",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "Po ngarkohet 1 skedar",
|
|
||||||
"files uploading" => "po ngarkoj skedarët",
|
"files uploading" => "po ngarkoj skedarët",
|
||||||
"'.' is an invalid file name." => "'.' është emër i pavlefshëm.",
|
"'.' is an invalid file name." => "'.' është emër i pavlefshëm.",
|
||||||
"File name cannot be empty." => "Emri i skedarit nuk mund të jetë bosh.",
|
"File name cannot be empty." => "Emri i skedarit nuk mund të jetë bosh.",
|
||||||
|
@ -43,10 +41,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Emri",
|
"Name" => "Emri",
|
||||||
"Size" => "Dimensioni",
|
"Size" => "Dimensioni",
|
||||||
"Modified" => "Modifikuar",
|
"Modified" => "Modifikuar",
|
||||||
"1 folder" => "1 dosje",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} dosje",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 skedar",
|
|
||||||
"{count} files" => "{count} skedarë",
|
|
||||||
"Upload" => "Ngarko",
|
"Upload" => "Ngarko",
|
||||||
"File handling" => "Trajtimi i skedarit",
|
"File handling" => "Trajtimi i skedarit",
|
||||||
"Maximum upload size" => "Dimensioni maksimal i ngarkimit",
|
"Maximum upload size" => "Dimensioni maksimal i ngarkimit",
|
||||||
|
@ -66,6 +62,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Këtu nuk ka asgjë. Ngarkoni diçka!",
|
"Nothing in here. Upload something!" => "Këtu nuk ka asgjë. Ngarkoni diçka!",
|
||||||
"Download" => "Shkarko",
|
"Download" => "Shkarko",
|
||||||
"Unshare" => "Hiq ndarjen",
|
"Unshare" => "Hiq ndarjen",
|
||||||
|
"Delete" => "Elimino",
|
||||||
"Upload too large" => "Ngarkimi është shumë i madh",
|
"Upload too large" => "Ngarkimi është shumë i madh",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Skedarët që doni të ngarkoni tejkalojnë dimensionet maksimale për ngarkimet në këtë server.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Skedarët që doni të ngarkoni tejkalojnë dimensionet maksimale për ngarkimet në këtë server.",
|
||||||
"Files are being scanned, please wait." => "Skedarët po analizohen, ju lutemi pritni.",
|
"Files are being scanned, please wait." => "Skedarët po analizohen, ju lutemi pritni.",
|
||||||
|
|
|
@ -21,7 +21,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Грешка",
|
"Error" => "Грешка",
|
||||||
"Share" => "Дели",
|
"Share" => "Дели",
|
||||||
"Delete permanently" => "Обриши за стално",
|
"Delete permanently" => "Обриши за стално",
|
||||||
"Delete" => "Обриши",
|
|
||||||
"Rename" => "Преименуј",
|
"Rename" => "Преименуј",
|
||||||
"Pending" => "На чекању",
|
"Pending" => "На чекању",
|
||||||
"{new_name} already exists" => "{new_name} већ постоји",
|
"{new_name} already exists" => "{new_name} већ постоји",
|
||||||
|
@ -30,8 +29,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "откажи",
|
"cancel" => "откажи",
|
||||||
"replaced {new_name} with {old_name}" => "замењено {new_name} са {old_name}",
|
"replaced {new_name} with {old_name}" => "замењено {new_name} са {old_name}",
|
||||||
"undo" => "опозови",
|
"undo" => "опозови",
|
||||||
"perform delete operation" => "обриши",
|
"_Uploading %n file_::_Uploading %n files_" => array("","",""),
|
||||||
"1 file uploading" => "Отпремам 1 датотеку",
|
|
||||||
"files uploading" => "датотеке се отпремају",
|
"files uploading" => "датотеке се отпремају",
|
||||||
"'.' is an invalid file name." => "Датотека „.“ је неисправног имена.",
|
"'.' is an invalid file name." => "Датотека „.“ је неисправног имена.",
|
||||||
"File name cannot be empty." => "Име датотеке не може бити празно.",
|
"File name cannot be empty." => "Име датотеке не може бити празно.",
|
||||||
|
@ -43,10 +41,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Име",
|
"Name" => "Име",
|
||||||
"Size" => "Величина",
|
"Size" => "Величина",
|
||||||
"Modified" => "Измењено",
|
"Modified" => "Измењено",
|
||||||
"1 folder" => "1 фасцикла",
|
"_%n folder_::_%n folders_" => array("","",""),
|
||||||
"{count} folders" => "{count} фасцикле/и",
|
"_%n file_::_%n files_" => array("","",""),
|
||||||
"1 file" => "1 датотека",
|
|
||||||
"{count} files" => "{count} датотеке/а",
|
|
||||||
"Upload" => "Отпреми",
|
"Upload" => "Отпреми",
|
||||||
"File handling" => "Управљање датотекама",
|
"File handling" => "Управљање датотекама",
|
||||||
"Maximum upload size" => "Највећа величина датотеке",
|
"Maximum upload size" => "Највећа величина датотеке",
|
||||||
|
@ -66,6 +62,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Овде нема ничег. Отпремите нешто!",
|
"Nothing in here. Upload something!" => "Овде нема ничег. Отпремите нешто!",
|
||||||
"Download" => "Преузми",
|
"Download" => "Преузми",
|
||||||
"Unshare" => "Укини дељење",
|
"Unshare" => "Укини дељење",
|
||||||
|
"Delete" => "Обриши",
|
||||||
"Upload too large" => "Датотека је превелика",
|
"Upload too large" => "Датотека је превелика",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Датотеке које желите да отпремите прелазе ограничење у величини.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Датотеке које желите да отпремите прелазе ограничење у величини.",
|
||||||
"Files are being scanned, please wait." => "Скенирам датотеке…",
|
"Files are being scanned, please wait." => "Скенирам датотеке…",
|
||||||
|
|
|
@ -6,15 +6,18 @@ $TRANSLATIONS = array(
|
||||||
"No file was uploaded" => "Nijedan fajl nije poslat",
|
"No file was uploaded" => "Nijedan fajl nije poslat",
|
||||||
"Missing a temporary folder" => "Nedostaje privremena fascikla",
|
"Missing a temporary folder" => "Nedostaje privremena fascikla",
|
||||||
"Files" => "Fajlovi",
|
"Files" => "Fajlovi",
|
||||||
"Delete" => "Obriši",
|
"_Uploading %n file_::_Uploading %n files_" => array("","",""),
|
||||||
"Name" => "Ime",
|
"Name" => "Ime",
|
||||||
"Size" => "Veličina",
|
"Size" => "Veličina",
|
||||||
"Modified" => "Zadnja izmena",
|
"Modified" => "Zadnja izmena",
|
||||||
|
"_%n folder_::_%n folders_" => array("","",""),
|
||||||
|
"_%n file_::_%n files_" => array("","",""),
|
||||||
"Upload" => "Pošalji",
|
"Upload" => "Pošalji",
|
||||||
"Maximum upload size" => "Maksimalna veličina pošiljke",
|
"Maximum upload size" => "Maksimalna veličina pošiljke",
|
||||||
"Save" => "Snimi",
|
"Save" => "Snimi",
|
||||||
"Nothing in here. Upload something!" => "Ovde nema ničeg. Pošaljite nešto!",
|
"Nothing in here. Upload something!" => "Ovde nema ničeg. Pošaljite nešto!",
|
||||||
"Download" => "Preuzmi",
|
"Download" => "Preuzmi",
|
||||||
|
"Delete" => "Obriši",
|
||||||
"Upload too large" => "Pošiljka je prevelika",
|
"Upload too large" => "Pošiljka je prevelika",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Fajlovi koje želite da pošaljete prevazilaze ograničenje maksimalne veličine pošiljke na ovom serveru."
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Fajlovi koje želite da pošaljete prevazilaze ograničenje maksimalne veličine pošiljke na ovom serveru."
|
||||||
);
|
);
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Fel",
|
"Error" => "Fel",
|
||||||
"Share" => "Dela",
|
"Share" => "Dela",
|
||||||
"Delete permanently" => "Radera permanent",
|
"Delete permanently" => "Radera permanent",
|
||||||
"Delete" => "Radera",
|
|
||||||
"Rename" => "Byt namn",
|
"Rename" => "Byt namn",
|
||||||
"Pending" => "Väntar",
|
"Pending" => "Väntar",
|
||||||
"{new_name} already exists" => "{new_name} finns redan",
|
"{new_name} already exists" => "{new_name} finns redan",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "avbryt",
|
"cancel" => "avbryt",
|
||||||
"replaced {new_name} with {old_name}" => "ersatt {new_name} med {old_name}",
|
"replaced {new_name} with {old_name}" => "ersatt {new_name} med {old_name}",
|
||||||
"undo" => "ångra",
|
"undo" => "ångra",
|
||||||
"perform delete operation" => "utför raderingen",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"1 file uploading" => "1 filuppladdning",
|
|
||||||
"files uploading" => "filer laddas upp",
|
"files uploading" => "filer laddas upp",
|
||||||
"'.' is an invalid file name." => "'.' är ett ogiltigt filnamn.",
|
"'.' is an invalid file name." => "'.' är ett ogiltigt filnamn.",
|
||||||
"File name cannot be empty." => "Filnamn kan inte vara tomt.",
|
"File name cannot be empty." => "Filnamn kan inte vara tomt.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Namn",
|
"Name" => "Namn",
|
||||||
"Size" => "Storlek",
|
"Size" => "Storlek",
|
||||||
"Modified" => "Ändrad",
|
"Modified" => "Ändrad",
|
||||||
"1 folder" => "1 mapp",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{count} mappar",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 fil",
|
|
||||||
"{count} files" => "{count} filer",
|
|
||||||
"%s could not be renamed" => "%s kunde inte namnändras",
|
"%s could not be renamed" => "%s kunde inte namnändras",
|
||||||
"Upload" => "Ladda upp",
|
"Upload" => "Ladda upp",
|
||||||
"File handling" => "Filhantering",
|
"File handling" => "Filhantering",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Ingenting här. Ladda upp något!",
|
"Nothing in here. Upload something!" => "Ingenting här. Ladda upp något!",
|
||||||
"Download" => "Ladda ner",
|
"Download" => "Ladda ner",
|
||||||
"Unshare" => "Sluta dela",
|
"Unshare" => "Sluta dela",
|
||||||
|
"Delete" => "Radera",
|
||||||
"Upload too large" => "För stor uppladdning",
|
"Upload too large" => "För stor uppladdning",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Filerna du försöker ladda upp överstiger den maximala storleken för filöverföringar på servern.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Filerna du försöker ladda upp överstiger den maximala storleken för filöverföringar på servern.",
|
||||||
"Files are being scanned, please wait." => "Filer skannas, var god vänta",
|
"Files are being scanned, please wait." => "Filer skannas, var god vänta",
|
||||||
|
|
|
@ -14,7 +14,6 @@ $TRANSLATIONS = array(
|
||||||
"URL cannot be empty." => "URL வெறுமையாக இருக்கமுடியாது.",
|
"URL cannot be empty." => "URL வெறுமையாக இருக்கமுடியாது.",
|
||||||
"Error" => "வழு",
|
"Error" => "வழு",
|
||||||
"Share" => "பகிர்வு",
|
"Share" => "பகிர்வு",
|
||||||
"Delete" => "நீக்குக",
|
|
||||||
"Rename" => "பெயர்மாற்றம்",
|
"Rename" => "பெயர்மாற்றம்",
|
||||||
"Pending" => "நிலுவையிலுள்ள",
|
"Pending" => "நிலுவையிலுள்ள",
|
||||||
"{new_name} already exists" => "{new_name} ஏற்கனவே உள்ளது",
|
"{new_name} already exists" => "{new_name} ஏற்கனவே உள்ளது",
|
||||||
|
@ -23,15 +22,13 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "இரத்து செய்க",
|
"cancel" => "இரத்து செய்க",
|
||||||
"replaced {new_name} with {old_name}" => "{new_name} ஆனது {old_name} இனால் மாற்றப்பட்டது",
|
"replaced {new_name} with {old_name}" => "{new_name} ஆனது {old_name} இனால் மாற்றப்பட்டது",
|
||||||
"undo" => "முன் செயல் நீக்கம் ",
|
"undo" => "முன் செயல் நீக்கம் ",
|
||||||
"1 file uploading" => "1 கோப்பு பதிவேற்றப்படுகிறது",
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "செல்லுபடியற்ற பெயர்,'\\', '/', '<', '>', ':', '\"', '|', '?' மற்றும் '*' ஆகியன அனுமதிக்கப்படமாட்டாது.",
|
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "செல்லுபடியற்ற பெயர்,'\\', '/', '<', '>', ':', '\"', '|', '?' மற்றும் '*' ஆகியன அனுமதிக்கப்படமாட்டாது.",
|
||||||
"Name" => "பெயர்",
|
"Name" => "பெயர்",
|
||||||
"Size" => "அளவு",
|
"Size" => "அளவு",
|
||||||
"Modified" => "மாற்றப்பட்டது",
|
"Modified" => "மாற்றப்பட்டது",
|
||||||
"1 folder" => "1 கோப்புறை",
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
"{count} folders" => "{எண்ணிக்கை} கோப்புறைகள்",
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"1 file" => "1 கோப்பு",
|
|
||||||
"{count} files" => "{எண்ணிக்கை} கோப்புகள்",
|
|
||||||
"Upload" => "பதிவேற்றுக",
|
"Upload" => "பதிவேற்றுக",
|
||||||
"File handling" => "கோப்பு கையாளுதல்",
|
"File handling" => "கோப்பு கையாளுதல்",
|
||||||
"Maximum upload size" => "பதிவேற்றக்கூடிய ஆகக்கூடிய அளவு ",
|
"Maximum upload size" => "பதிவேற்றக்கூடிய ஆகக்கூடிய அளவு ",
|
||||||
|
@ -49,6 +46,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "இங்கு ஒன்றும் இல்லை. ஏதாவது பதிவேற்றுக!",
|
"Nothing in here. Upload something!" => "இங்கு ஒன்றும் இல்லை. ஏதாவது பதிவேற்றுக!",
|
||||||
"Download" => "பதிவிறக்குக",
|
"Download" => "பதிவிறக்குக",
|
||||||
"Unshare" => "பகிரப்படாதது",
|
"Unshare" => "பகிரப்படாதது",
|
||||||
|
"Delete" => "நீக்குக",
|
||||||
"Upload too large" => "பதிவேற்றல் மிகப்பெரியது",
|
"Upload too large" => "பதிவேற்றல் மிகப்பெரியது",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "நீங்கள் பதிவேற்ற முயற்சிக்கும் கோப்புகளானது இந்த சேவையகத்தில் கோப்பு பதிவேற்றக்கூடிய ஆகக்கூடிய அளவிலும் கூடியது.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "நீங்கள் பதிவேற்ற முயற்சிக்கும் கோப்புகளானது இந்த சேவையகத்தில் கோப்பு பதிவேற்றக்கூடிய ஆகக்கூடிய அளவிலும் கூடியது.",
|
||||||
"Files are being scanned, please wait." => "கோப்புகள் வருடப்படுகின்றன, தயவுசெய்து காத்திருங்கள்.",
|
"Files are being scanned, please wait." => "கோப்புகள் வருடப்படுகின்றன, தயவுசெய்து காத்திருங்கள்.",
|
||||||
|
|
|
@ -2,11 +2,14 @@
|
||||||
$TRANSLATIONS = array(
|
$TRANSLATIONS = array(
|
||||||
"Error" => "పొరపాటు",
|
"Error" => "పొరపాటు",
|
||||||
"Delete permanently" => "శాశ్వతంగా తొలగించు",
|
"Delete permanently" => "శాశ్వతంగా తొలగించు",
|
||||||
"Delete" => "తొలగించు",
|
|
||||||
"cancel" => "రద్దుచేయి",
|
"cancel" => "రద్దుచేయి",
|
||||||
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
"Name" => "పేరు",
|
"Name" => "పేరు",
|
||||||
"Size" => "పరిమాణం",
|
"Size" => "పరిమాణం",
|
||||||
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"Save" => "భద్రపరచు",
|
"Save" => "భద్రపరచు",
|
||||||
"Folder" => "సంచయం"
|
"Folder" => "సంచయం",
|
||||||
|
"Delete" => "తొలగించు"
|
||||||
);
|
);
|
||||||
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
||||||
|
|
|
@ -20,7 +20,6 @@ $TRANSLATIONS = array(
|
||||||
"URL cannot be empty." => "URL ไม่สามารถเว้นว่างได้",
|
"URL cannot be empty." => "URL ไม่สามารถเว้นว่างได้",
|
||||||
"Error" => "ข้อผิดพลาด",
|
"Error" => "ข้อผิดพลาด",
|
||||||
"Share" => "แชร์",
|
"Share" => "แชร์",
|
||||||
"Delete" => "ลบ",
|
|
||||||
"Rename" => "เปลี่ยนชื่อ",
|
"Rename" => "เปลี่ยนชื่อ",
|
||||||
"Pending" => "อยู่ระหว่างดำเนินการ",
|
"Pending" => "อยู่ระหว่างดำเนินการ",
|
||||||
"{new_name} already exists" => "{new_name} มีอยู่แล้วในระบบ",
|
"{new_name} already exists" => "{new_name} มีอยู่แล้วในระบบ",
|
||||||
|
@ -29,8 +28,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "ยกเลิก",
|
"cancel" => "ยกเลิก",
|
||||||
"replaced {new_name} with {old_name}" => "แทนที่ {new_name} ด้วย {old_name} แล้ว",
|
"replaced {new_name} with {old_name}" => "แทนที่ {new_name} ด้วย {old_name} แล้ว",
|
||||||
"undo" => "เลิกทำ",
|
"undo" => "เลิกทำ",
|
||||||
"perform delete operation" => "ดำเนินการตามคำสั่งลบ",
|
"_Uploading %n file_::_Uploading %n files_" => array(""),
|
||||||
"1 file uploading" => "กำลังอัพโหลดไฟล์ 1 ไฟล์",
|
|
||||||
"files uploading" => "การอัพโหลดไฟล์",
|
"files uploading" => "การอัพโหลดไฟล์",
|
||||||
"'.' is an invalid file name." => "'.' เป็นชื่อไฟล์ที่ไม่ถูกต้อง",
|
"'.' is an invalid file name." => "'.' เป็นชื่อไฟล์ที่ไม่ถูกต้อง",
|
||||||
"File name cannot be empty." => "ชื่อไฟล์ไม่สามารถเว้นว่างได้",
|
"File name cannot be empty." => "ชื่อไฟล์ไม่สามารถเว้นว่างได้",
|
||||||
|
@ -42,10 +40,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "ชื่อ",
|
"Name" => "ชื่อ",
|
||||||
"Size" => "ขนาด",
|
"Size" => "ขนาด",
|
||||||
"Modified" => "แก้ไขแล้ว",
|
"Modified" => "แก้ไขแล้ว",
|
||||||
"1 folder" => "1 โฟลเดอร์",
|
"_%n folder_::_%n folders_" => array(""),
|
||||||
"{count} folders" => "{count} โฟลเดอร์",
|
"_%n file_::_%n files_" => array(""),
|
||||||
"1 file" => "1 ไฟล์",
|
|
||||||
"{count} files" => "{count} ไฟล์",
|
|
||||||
"Upload" => "อัพโหลด",
|
"Upload" => "อัพโหลด",
|
||||||
"File handling" => "การจัดกาไฟล์",
|
"File handling" => "การจัดกาไฟล์",
|
||||||
"Maximum upload size" => "ขนาดไฟล์สูงสุดที่อัพโหลดได้",
|
"Maximum upload size" => "ขนาดไฟล์สูงสุดที่อัพโหลดได้",
|
||||||
|
@ -63,6 +59,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "ยังไม่มีไฟล์ใดๆอยู่ที่นี่ กรุณาอัพโหลดไฟล์!",
|
"Nothing in here. Upload something!" => "ยังไม่มีไฟล์ใดๆอยู่ที่นี่ กรุณาอัพโหลดไฟล์!",
|
||||||
"Download" => "ดาวน์โหลด",
|
"Download" => "ดาวน์โหลด",
|
||||||
"Unshare" => "ยกเลิกการแชร์",
|
"Unshare" => "ยกเลิกการแชร์",
|
||||||
|
"Delete" => "ลบ",
|
||||||
"Upload too large" => "ไฟล์ที่อัพโหลดมีขนาดใหญ่เกินไป",
|
"Upload too large" => "ไฟล์ที่อัพโหลดมีขนาดใหญ่เกินไป",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "ไฟล์ที่คุณพยายามที่จะอัพโหลดมีขนาดเกินกว่าขนาดสูงสุดที่กำหนดไว้ให้อัพโหลดได้สำหรับเซิร์ฟเวอร์นี้",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "ไฟล์ที่คุณพยายามที่จะอัพโหลดมีขนาดเกินกว่าขนาดสูงสุดที่กำหนดไว้ให้อัพโหลดได้สำหรับเซิร์ฟเวอร์นี้",
|
||||||
"Files are being scanned, please wait." => "ไฟล์กำลังอยู่ระหว่างการสแกน, กรุณารอสักครู่.",
|
"Files are being scanned, please wait." => "ไฟล์กำลังอยู่ระหว่างการสแกน, กรุณารอสักครู่.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Hata",
|
"Error" => "Hata",
|
||||||
"Share" => "Paylaş",
|
"Share" => "Paylaş",
|
||||||
"Delete permanently" => "Kalıcı olarak sil",
|
"Delete permanently" => "Kalıcı olarak sil",
|
||||||
"Delete" => "Sil",
|
|
||||||
"Rename" => "İsim değiştir.",
|
"Rename" => "İsim değiştir.",
|
||||||
"Pending" => "Bekliyor",
|
"Pending" => "Bekliyor",
|
||||||
"{new_name} already exists" => "{new_name} zaten mevcut",
|
"{new_name} already exists" => "{new_name} zaten mevcut",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "iptal",
|
"cancel" => "iptal",
|
||||||
"replaced {new_name} with {old_name}" => "{new_name} ismi {old_name} ile değiştirildi",
|
"replaced {new_name} with {old_name}" => "{new_name} ismi {old_name} ile değiştirildi",
|
||||||
"undo" => "geri al",
|
"undo" => "geri al",
|
||||||
"perform delete operation" => "Silme işlemini gerçekleştir",
|
"_Uploading %n file_::_Uploading %n files_" => array("%n dosya yükleniyor","%n dosya yükleniyor"),
|
||||||
"1 file uploading" => "1 dosya yüklendi",
|
|
||||||
"files uploading" => "Dosyalar yükleniyor",
|
"files uploading" => "Dosyalar yükleniyor",
|
||||||
"'.' is an invalid file name." => "'.' geçersiz dosya adı.",
|
"'.' is an invalid file name." => "'.' geçersiz dosya adı.",
|
||||||
"File name cannot be empty." => "Dosya adı boş olamaz.",
|
"File name cannot be empty." => "Dosya adı boş olamaz.",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "İsim",
|
"Name" => "İsim",
|
||||||
"Size" => "Boyut",
|
"Size" => "Boyut",
|
||||||
"Modified" => "Değiştirilme",
|
"Modified" => "Değiştirilme",
|
||||||
"1 folder" => "1 dizin",
|
"_%n folder_::_%n folders_" => array("%n dizin","%n dizin"),
|
||||||
"{count} folders" => "{count} dizin",
|
"_%n file_::_%n files_" => array("%n dosya","%n dosya"),
|
||||||
"1 file" => "1 dosya",
|
|
||||||
"{count} files" => "{count} dosya",
|
|
||||||
"%s could not be renamed" => "%s yeniden adlandırılamadı",
|
"%s could not be renamed" => "%s yeniden adlandırılamadı",
|
||||||
"Upload" => "Yükle",
|
"Upload" => "Yükle",
|
||||||
"File handling" => "Dosya taşıma",
|
"File handling" => "Dosya taşıma",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Burada hiçbir şey yok. Birşeyler yükleyin!",
|
"Nothing in here. Upload something!" => "Burada hiçbir şey yok. Birşeyler yükleyin!",
|
||||||
"Download" => "İndir",
|
"Download" => "İndir",
|
||||||
"Unshare" => "Paylaşılmayan",
|
"Unshare" => "Paylaşılmayan",
|
||||||
|
"Delete" => "Sil",
|
||||||
"Upload too large" => "Yükleme çok büyük",
|
"Upload too large" => "Yükleme çok büyük",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Yüklemeye çalıştığınız dosyalar bu sunucudaki maksimum yükleme boyutunu aşıyor.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Yüklemeye çalıştığınız dosyalar bu sunucudaki maksimum yükleme boyutunu aşıyor.",
|
||||||
"Files are being scanned, please wait." => "Dosyalar taranıyor, lütfen bekleyin.",
|
"Files are being scanned, please wait." => "Dosyalar taranıyor, lütfen bekleyin.",
|
||||||
|
|
|
@ -13,7 +13,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "خاتالىق",
|
"Error" => "خاتالىق",
|
||||||
"Share" => "ھەمبەھىر",
|
"Share" => "ھەمبەھىر",
|
||||||
"Delete permanently" => "مەڭگۈلۈك ئۆچۈر",
|
"Delete permanently" => "مەڭگۈلۈك ئۆچۈر",
|
||||||
"Delete" => "ئۆچۈر",
|
|
||||||
"Rename" => "ئات ئۆزگەرت",
|
"Rename" => "ئات ئۆزگەرت",
|
||||||
"Pending" => "كۈتۈۋاتىدۇ",
|
"Pending" => "كۈتۈۋاتىدۇ",
|
||||||
"{new_name} already exists" => "{new_name} مەۋجۇت",
|
"{new_name} already exists" => "{new_name} مەۋجۇت",
|
||||||
|
@ -21,14 +20,13 @@ $TRANSLATIONS = array(
|
||||||
"suggest name" => "تەۋسىيە ئات",
|
"suggest name" => "تەۋسىيە ئات",
|
||||||
"cancel" => "ۋاز كەچ",
|
"cancel" => "ۋاز كەچ",
|
||||||
"undo" => "يېنىۋال",
|
"undo" => "يېنىۋال",
|
||||||
"1 file uploading" => "1 ھۆججەت يۈكلىنىۋاتىدۇ",
|
"_Uploading %n file_::_Uploading %n files_" => array(""),
|
||||||
"files uploading" => "ھۆججەت يۈكلىنىۋاتىدۇ",
|
"files uploading" => "ھۆججەت يۈكلىنىۋاتىدۇ",
|
||||||
"Name" => "ئاتى",
|
"Name" => "ئاتى",
|
||||||
"Size" => "چوڭلۇقى",
|
"Size" => "چوڭلۇقى",
|
||||||
"Modified" => "ئۆزگەرتكەن",
|
"Modified" => "ئۆزگەرتكەن",
|
||||||
"1 folder" => "1 قىسقۇچ",
|
"_%n folder_::_%n folders_" => array(""),
|
||||||
"1 file" => "1 ھۆججەت",
|
"_%n file_::_%n files_" => array(""),
|
||||||
"{count} files" => "{count} ھۆججەت",
|
|
||||||
"Upload" => "يۈكلە",
|
"Upload" => "يۈكلە",
|
||||||
"Save" => "ساقلا",
|
"Save" => "ساقلا",
|
||||||
"New" => "يېڭى",
|
"New" => "يېڭى",
|
||||||
|
@ -39,6 +37,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "بۇ جايدا ھېچنېمە يوق. Upload something!",
|
"Nothing in here. Upload something!" => "بۇ جايدا ھېچنېمە يوق. Upload something!",
|
||||||
"Download" => "چۈشۈر",
|
"Download" => "چۈشۈر",
|
||||||
"Unshare" => "ھەمبەھىرلىمە",
|
"Unshare" => "ھەمبەھىرلىمە",
|
||||||
|
"Delete" => "ئۆچۈر",
|
||||||
"Upload too large" => "يۈكلەندىغىنى بەك چوڭ",
|
"Upload too large" => "يۈكلەندىغىنى بەك چوڭ",
|
||||||
"Upgrading filesystem cache..." => "ھۆججەت سىستېما غەملىكىنى يۈكسەلدۈرۈۋاتىدۇ…"
|
"Upgrading filesystem cache..." => "ھۆججەت سىستېما غەملىكىنى يۈكسەلدۈرۈۋاتىدۇ…"
|
||||||
);
|
);
|
||||||
|
|
|
@ -21,7 +21,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Помилка",
|
"Error" => "Помилка",
|
||||||
"Share" => "Поділитися",
|
"Share" => "Поділитися",
|
||||||
"Delete permanently" => "Видалити назавжди",
|
"Delete permanently" => "Видалити назавжди",
|
||||||
"Delete" => "Видалити",
|
|
||||||
"Rename" => "Перейменувати",
|
"Rename" => "Перейменувати",
|
||||||
"Pending" => "Очікування",
|
"Pending" => "Очікування",
|
||||||
"{new_name} already exists" => "{new_name} вже існує",
|
"{new_name} already exists" => "{new_name} вже існує",
|
||||||
|
@ -30,8 +29,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "відміна",
|
"cancel" => "відміна",
|
||||||
"replaced {new_name} with {old_name}" => "замінено {new_name} на {old_name}",
|
"replaced {new_name} with {old_name}" => "замінено {new_name} на {old_name}",
|
||||||
"undo" => "відмінити",
|
"undo" => "відмінити",
|
||||||
"perform delete operation" => "виконати операцію видалення",
|
"_Uploading %n file_::_Uploading %n files_" => array("","",""),
|
||||||
"1 file uploading" => "1 файл завантажується",
|
|
||||||
"files uploading" => "файли завантажуються",
|
"files uploading" => "файли завантажуються",
|
||||||
"'.' is an invalid file name." => "'.' це невірне ім'я файлу.",
|
"'.' is an invalid file name." => "'.' це невірне ім'я файлу.",
|
||||||
"File name cannot be empty." => " Ім'я файлу не може бути порожнім.",
|
"File name cannot be empty." => " Ім'я файлу не може бути порожнім.",
|
||||||
|
@ -43,10 +41,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Ім'я",
|
"Name" => "Ім'я",
|
||||||
"Size" => "Розмір",
|
"Size" => "Розмір",
|
||||||
"Modified" => "Змінено",
|
"Modified" => "Змінено",
|
||||||
"1 folder" => "1 папка",
|
"_%n folder_::_%n folders_" => array("","",""),
|
||||||
"{count} folders" => "{count} папок",
|
"_%n file_::_%n files_" => array("","",""),
|
||||||
"1 file" => "1 файл",
|
|
||||||
"{count} files" => "{count} файлів",
|
|
||||||
"%s could not be renamed" => "%s не може бути перейменований",
|
"%s could not be renamed" => "%s не може бути перейменований",
|
||||||
"Upload" => "Вивантажити",
|
"Upload" => "Вивантажити",
|
||||||
"File handling" => "Робота з файлами",
|
"File handling" => "Робота з файлами",
|
||||||
|
@ -67,6 +63,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Тут нічого немає. Відвантажте що-небудь!",
|
"Nothing in here. Upload something!" => "Тут нічого немає. Відвантажте що-небудь!",
|
||||||
"Download" => "Завантажити",
|
"Download" => "Завантажити",
|
||||||
"Unshare" => "Закрити доступ",
|
"Unshare" => "Закрити доступ",
|
||||||
|
"Delete" => "Видалити",
|
||||||
"Upload too large" => "Файл занадто великий",
|
"Upload too large" => "Файл занадто великий",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Файли,що ви намагаєтесь відвантажити перевищують максимальний дозволений розмір файлів на цьому сервері.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Файли,що ви намагаєтесь відвантажити перевищують максимальний дозволений розмір файлів на цьому сервері.",
|
||||||
"Files are being scanned, please wait." => "Файли скануються, зачекайте, будь-ласка.",
|
"Files are being scanned, please wait." => "Файли скануються, зачекайте, будь-ласка.",
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
<?php
|
<?php
|
||||||
$TRANSLATIONS = array(
|
$TRANSLATIONS = array(
|
||||||
"Error" => "ایرر",
|
"Error" => "ایرر",
|
||||||
|
"_Uploading %n file_::_Uploading %n files_" => array("",""),
|
||||||
|
"_%n folder_::_%n folders_" => array("",""),
|
||||||
|
"_%n file_::_%n files_" => array("",""),
|
||||||
"Unshare" => "شئیرنگ ختم کریں"
|
"Unshare" => "شئیرنگ ختم کریں"
|
||||||
);
|
);
|
||||||
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
||||||
|
|
|
@ -21,7 +21,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "Lỗi",
|
"Error" => "Lỗi",
|
||||||
"Share" => "Chia sẻ",
|
"Share" => "Chia sẻ",
|
||||||
"Delete permanently" => "Xóa vĩnh vễn",
|
"Delete permanently" => "Xóa vĩnh vễn",
|
||||||
"Delete" => "Xóa",
|
|
||||||
"Rename" => "Sửa tên",
|
"Rename" => "Sửa tên",
|
||||||
"Pending" => "Đang chờ",
|
"Pending" => "Đang chờ",
|
||||||
"{new_name} already exists" => "{new_name} đã tồn tại",
|
"{new_name} already exists" => "{new_name} đã tồn tại",
|
||||||
|
@ -30,8 +29,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "hủy",
|
"cancel" => "hủy",
|
||||||
"replaced {new_name} with {old_name}" => "đã thay thế {new_name} bằng {old_name}",
|
"replaced {new_name} with {old_name}" => "đã thay thế {new_name} bằng {old_name}",
|
||||||
"undo" => "lùi lại",
|
"undo" => "lùi lại",
|
||||||
"perform delete operation" => "thực hiện việc xóa",
|
"_Uploading %n file_::_Uploading %n files_" => array(""),
|
||||||
"1 file uploading" => "1 tệp tin đang được tải lên",
|
|
||||||
"files uploading" => "tệp tin đang được tải lên",
|
"files uploading" => "tệp tin đang được tải lên",
|
||||||
"'.' is an invalid file name." => "'.' là một tên file không hợp lệ",
|
"'.' is an invalid file name." => "'.' là một tên file không hợp lệ",
|
||||||
"File name cannot be empty." => "Tên file không được rỗng",
|
"File name cannot be empty." => "Tên file không được rỗng",
|
||||||
|
@ -43,10 +41,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "Tên",
|
"Name" => "Tên",
|
||||||
"Size" => "Kích cỡ",
|
"Size" => "Kích cỡ",
|
||||||
"Modified" => "Thay đổi",
|
"Modified" => "Thay đổi",
|
||||||
"1 folder" => "1 thư mục",
|
"_%n folder_::_%n folders_" => array(""),
|
||||||
"{count} folders" => "{count} thư mục",
|
"_%n file_::_%n files_" => array(""),
|
||||||
"1 file" => "1 tập tin",
|
|
||||||
"{count} files" => "{count} tập tin",
|
|
||||||
"Upload" => "Tải lên",
|
"Upload" => "Tải lên",
|
||||||
"File handling" => "Xử lý tập tin",
|
"File handling" => "Xử lý tập tin",
|
||||||
"Maximum upload size" => "Kích thước tối đa ",
|
"Maximum upload size" => "Kích thước tối đa ",
|
||||||
|
@ -66,6 +62,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "Không có gì ở đây .Hãy tải lên một cái gì đó !",
|
"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ề",
|
"Download" => "Tải về",
|
||||||
"Unshare" => "Bỏ chia sẻ",
|
"Unshare" => "Bỏ chia sẻ",
|
||||||
|
"Delete" => "Xóa",
|
||||||
"Upload too large" => "Tập tin tải lên quá lớn",
|
"Upload too large" => "Tập tin tải lên quá lớn",
|
||||||
"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ủ .",
|
"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ờ.",
|
"Files are being scanned, please wait." => "Tập tin đang được quét ,vui lòng chờ.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "出错",
|
"Error" => "出错",
|
||||||
"Share" => "分享",
|
"Share" => "分享",
|
||||||
"Delete permanently" => "永久删除",
|
"Delete permanently" => "永久删除",
|
||||||
"Delete" => "删除",
|
|
||||||
"Rename" => "重命名",
|
"Rename" => "重命名",
|
||||||
"Pending" => "等待中",
|
"Pending" => "等待中",
|
||||||
"{new_name} already exists" => "{new_name} 已存在",
|
"{new_name} already exists" => "{new_name} 已存在",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "取消",
|
"cancel" => "取消",
|
||||||
"replaced {new_name} with {old_name}" => "已用 {old_name} 替换 {new_name}",
|
"replaced {new_name} with {old_name}" => "已用 {old_name} 替换 {new_name}",
|
||||||
"undo" => "撤销",
|
"undo" => "撤销",
|
||||||
"perform delete operation" => "执行删除",
|
"_Uploading %n file_::_Uploading %n files_" => array("正在上传 %n 个文件"),
|
||||||
"1 file uploading" => "1 个文件正在上传",
|
|
||||||
"files uploading" => "个文件正在上传",
|
"files uploading" => "个文件正在上传",
|
||||||
"'.' is an invalid file name." => "'.' 文件名不正确",
|
"'.' is an invalid file name." => "'.' 文件名不正确",
|
||||||
"File name cannot be empty." => "文件名不能为空",
|
"File name cannot be empty." => "文件名不能为空",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "名称",
|
"Name" => "名称",
|
||||||
"Size" => "大小",
|
"Size" => "大小",
|
||||||
"Modified" => "修改日期",
|
"Modified" => "修改日期",
|
||||||
"1 folder" => "1 个文件夹",
|
"_%n folder_::_%n folders_" => array("%n 个文件夹"),
|
||||||
"{count} folders" => "{count} 个文件夹",
|
"_%n file_::_%n files_" => array("%n 个文件"),
|
||||||
"1 file" => "1 个文件",
|
|
||||||
"{count} files" => "{count} 个文件",
|
|
||||||
"%s could not be renamed" => "不能重命名 %s",
|
"%s could not be renamed" => "不能重命名 %s",
|
||||||
"Upload" => "上传",
|
"Upload" => "上传",
|
||||||
"File handling" => "文件处理中",
|
"File handling" => "文件处理中",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "这里没有东西.上传点什么!",
|
"Nothing in here. Upload something!" => "这里没有东西.上传点什么!",
|
||||||
"Download" => "下载",
|
"Download" => "下载",
|
||||||
"Unshare" => "取消分享",
|
"Unshare" => "取消分享",
|
||||||
|
"Delete" => "删除",
|
||||||
"Upload too large" => "上传过大",
|
"Upload too large" => "上传过大",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "你正在试图上传的文件超过了此服务器支持的最大的文件大小.",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "你正在试图上传的文件超过了此服务器支持的最大的文件大小.",
|
||||||
"Files are being scanned, please wait." => "正在扫描文件,请稍候.",
|
"Files are being scanned, please wait." => "正在扫描文件,请稍候.",
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "错误",
|
"Error" => "错误",
|
||||||
"Share" => "分享",
|
"Share" => "分享",
|
||||||
"Delete permanently" => "永久删除",
|
"Delete permanently" => "永久删除",
|
||||||
"Delete" => "删除",
|
|
||||||
"Rename" => "重命名",
|
"Rename" => "重命名",
|
||||||
"Pending" => "等待",
|
"Pending" => "等待",
|
||||||
"{new_name} already exists" => "{new_name} 已存在",
|
"{new_name} already exists" => "{new_name} 已存在",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "取消",
|
"cancel" => "取消",
|
||||||
"replaced {new_name} with {old_name}" => "已将 {old_name}替换成 {new_name}",
|
"replaced {new_name} with {old_name}" => "已将 {old_name}替换成 {new_name}",
|
||||||
"undo" => "撤销",
|
"undo" => "撤销",
|
||||||
"perform delete operation" => "进行删除操作",
|
"_Uploading %n file_::_Uploading %n files_" => array(""),
|
||||||
"1 file uploading" => "1个文件上传中",
|
|
||||||
"files uploading" => "文件上传中",
|
"files uploading" => "文件上传中",
|
||||||
"'.' is an invalid file name." => "'.' 是一个无效的文件名。",
|
"'.' is an invalid file name." => "'.' 是一个无效的文件名。",
|
||||||
"File name cannot be empty." => "文件名不能为空。",
|
"File name cannot be empty." => "文件名不能为空。",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "名称",
|
"Name" => "名称",
|
||||||
"Size" => "大小",
|
"Size" => "大小",
|
||||||
"Modified" => "修改日期",
|
"Modified" => "修改日期",
|
||||||
"1 folder" => "1个文件夹",
|
"_%n folder_::_%n folders_" => array(""),
|
||||||
"{count} folders" => "{count} 个文件夹",
|
"_%n file_::_%n files_" => array(""),
|
||||||
"1 file" => "1 个文件",
|
|
||||||
"{count} files" => "{count} 个文件",
|
|
||||||
"%s could not be renamed" => "%s 不能被重命名",
|
"%s could not be renamed" => "%s 不能被重命名",
|
||||||
"Upload" => "上传",
|
"Upload" => "上传",
|
||||||
"File handling" => "文件处理",
|
"File handling" => "文件处理",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "这里还什么都没有。上传些东西吧!",
|
"Nothing in here. Upload something!" => "这里还什么都没有。上传些东西吧!",
|
||||||
"Download" => "下载",
|
"Download" => "下载",
|
||||||
"Unshare" => "取消共享",
|
"Unshare" => "取消共享",
|
||||||
|
"Delete" => "删除",
|
||||||
"Upload too large" => "上传文件过大",
|
"Upload too large" => "上传文件过大",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "您正尝试上传的文件超过了此服务器可以上传的最大容量限制",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "您正尝试上传的文件超过了此服务器可以上传的最大容量限制",
|
||||||
"Files are being scanned, please wait." => "文件正在被扫描,请稍候。",
|
"Files are being scanned, please wait." => "文件正在被扫描,请稍候。",
|
||||||
|
|
|
@ -3,12 +3,14 @@ $TRANSLATIONS = array(
|
||||||
"Files" => "文件",
|
"Files" => "文件",
|
||||||
"Error" => "錯誤",
|
"Error" => "錯誤",
|
||||||
"Share" => "分享",
|
"Share" => "分享",
|
||||||
"Delete" => "刪除",
|
"_Uploading %n file_::_Uploading %n files_" => array(""),
|
||||||
"Name" => "名稱",
|
"Name" => "名稱",
|
||||||
"{count} folders" => "{}文件夾",
|
"_%n folder_::_%n folders_" => array(""),
|
||||||
|
"_%n file_::_%n files_" => array(""),
|
||||||
"Upload" => "上傳",
|
"Upload" => "上傳",
|
||||||
"Save" => "儲存",
|
"Save" => "儲存",
|
||||||
"Download" => "下載",
|
"Download" => "下載",
|
||||||
"Unshare" => "取消分享"
|
"Unshare" => "取消分享",
|
||||||
|
"Delete" => "刪除"
|
||||||
);
|
);
|
||||||
$PLURAL_FORMS = "nplurals=1; plural=0;";
|
$PLURAL_FORMS = "nplurals=1; plural=0;";
|
||||||
|
|
|
@ -24,7 +24,6 @@ $TRANSLATIONS = array(
|
||||||
"Error" => "錯誤",
|
"Error" => "錯誤",
|
||||||
"Share" => "分享",
|
"Share" => "分享",
|
||||||
"Delete permanently" => "永久刪除",
|
"Delete permanently" => "永久刪除",
|
||||||
"Delete" => "刪除",
|
|
||||||
"Rename" => "重新命名",
|
"Rename" => "重新命名",
|
||||||
"Pending" => "等候中",
|
"Pending" => "等候中",
|
||||||
"{new_name} already exists" => "{new_name} 已經存在",
|
"{new_name} already exists" => "{new_name} 已經存在",
|
||||||
|
@ -33,8 +32,7 @@ $TRANSLATIONS = array(
|
||||||
"cancel" => "取消",
|
"cancel" => "取消",
|
||||||
"replaced {new_name} with {old_name}" => "使用 {new_name} 取代 {old_name}",
|
"replaced {new_name} with {old_name}" => "使用 {new_name} 取代 {old_name}",
|
||||||
"undo" => "復原",
|
"undo" => "復原",
|
||||||
"perform delete operation" => "進行刪除動作",
|
"_Uploading %n file_::_Uploading %n files_" => array(""),
|
||||||
"1 file uploading" => "1 個檔案正在上傳",
|
|
||||||
"files uploading" => "檔案正在上傳中",
|
"files uploading" => "檔案正在上傳中",
|
||||||
"'.' is an invalid file name." => "'.' 是不合法的檔名。",
|
"'.' is an invalid file name." => "'.' 是不合法的檔名。",
|
||||||
"File name cannot be empty." => "檔名不能為空。",
|
"File name cannot be empty." => "檔名不能為空。",
|
||||||
|
@ -46,10 +44,8 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "名稱",
|
"Name" => "名稱",
|
||||||
"Size" => "大小",
|
"Size" => "大小",
|
||||||
"Modified" => "修改",
|
"Modified" => "修改",
|
||||||
"1 folder" => "1 個資料夾",
|
"_%n folder_::_%n folders_" => array(""),
|
||||||
"{count} folders" => "{count} 個資料夾",
|
"_%n file_::_%n files_" => array(""),
|
||||||
"1 file" => "1 個檔案",
|
|
||||||
"{count} files" => "{count} 個檔案",
|
|
||||||
"%s could not be renamed" => "無法重新命名 %s",
|
"%s could not be renamed" => "無法重新命名 %s",
|
||||||
"Upload" => "上傳",
|
"Upload" => "上傳",
|
||||||
"File handling" => "檔案處理",
|
"File handling" => "檔案處理",
|
||||||
|
@ -70,6 +66,7 @@ $TRANSLATIONS = array(
|
||||||
"Nothing in here. Upload something!" => "這裡什麼也沒有,上傳一些東西吧!",
|
"Nothing in here. Upload something!" => "這裡什麼也沒有,上傳一些東西吧!",
|
||||||
"Download" => "下載",
|
"Download" => "下載",
|
||||||
"Unshare" => "取消共享",
|
"Unshare" => "取消共享",
|
||||||
|
"Delete" => "刪除",
|
||||||
"Upload too large" => "上傳過大",
|
"Upload too large" => "上傳過大",
|
||||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "您試圖上傳的檔案已超過伺服器的最大檔案大小限制。",
|
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "您試圖上傳的檔案已超過伺服器的最大檔案大小限制。",
|
||||||
"Files are being scanned, please wait." => "正在掃描檔案,請稍等。",
|
"Files are being scanned, please wait." => "正在掃描檔案,請稍等。",
|
||||||
|
|
|
@ -122,3 +122,4 @@
|
||||||
<!-- config hints for javascript -->
|
<!-- config hints for javascript -->
|
||||||
<input type="hidden" name="allowZipDownload" id="allowZipDownload" value="<?php p($_['allowZipDownload']); ?>" />
|
<input type="hidden" name="allowZipDownload" id="allowZipDownload" value="<?php p($_['allowZipDownload']); ?>" />
|
||||||
<input type="hidden" name="usedSpacePercent" id="usedSpacePercent" value="<?php p($_['usedSpacePercent']); ?>" />
|
<input type="hidden" name="usedSpacePercent" id="usedSpacePercent" value="<?php p($_['usedSpacePercent']); ?>" />
|
||||||
|
<input type="hidden" name="encryptedFiles" id="encryptedFiles" value="<?php $_['encryptedFiles'] ? p('1') : p('0'); ?>" />
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
if (!isset($_)) { //also provide standalone error page
|
if (!isset($_)) { //also provide standalone error page
|
||||||
require_once '../../../lib/base.php';
|
require_once __DIR__ . '/../../../lib/base.php';
|
||||||
|
|
||||||
$l = OC_L10N::get('files_encryption');
|
$l = OC_L10N::get('files_encryption');
|
||||||
|
|
||||||
|
|
|
@ -30,9 +30,6 @@ use OC\Files\Filesystem;
|
||||||
*/
|
*/
|
||||||
class Hooks {
|
class Hooks {
|
||||||
|
|
||||||
// TODO: use passphrase for encrypting private key that is separate to
|
|
||||||
// the login password
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Startup encryption backend upon user login
|
* @brief Startup encryption backend upon user login
|
||||||
* @note This method should never be called for users using client side encryption
|
* @note This method should never be called for users using client side encryption
|
||||||
|
@ -62,18 +59,7 @@ class Hooks {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
$encryptedKey = Keymanager::getPrivateKey($view, $params['uid']);
|
$session = $util->initEncryption($params);
|
||||||
|
|
||||||
$privateKey = Crypt::decryptPrivateKey($encryptedKey, $params['password']);
|
|
||||||
|
|
||||||
if ($privateKey === false) {
|
|
||||||
\OCP\Util::writeLog('Encryption library', 'Private key for user "' . $params['uid']
|
|
||||||
. '" is not valid! Maybe the user password was changed from outside if so please change it back to gain access', \OCP\Util::ERROR);
|
|
||||||
}
|
|
||||||
|
|
||||||
$session = new \OCA\Encryption\Session($view);
|
|
||||||
|
|
||||||
$session->setPrivateKey($privateKey);
|
|
||||||
|
|
||||||
// Check if first-run file migration has already been performed
|
// Check if first-run file migration has already been performed
|
||||||
$ready = false;
|
$ready = false;
|
||||||
|
|
|
@ -10,6 +10,7 @@ $TRANSLATIONS = array(
|
||||||
"Could not update the private key password. Maybe the old password was not correct." => "Nelze aktualizovat heslo soukromého klíče. Možná nebylo staré heslo správně.",
|
"Could not update the private key password. Maybe the old password was not correct." => "Nelze aktualizovat heslo soukromého klíče. Možná nebylo staré heslo správně.",
|
||||||
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Váš soukromý klíč není platný! Pravděpodobně bylo heslo změněno vně systému ownCloud (např. ve vašem firemním adresáři). Heslo vašeho soukromého klíče můžete změnit ve svém osobním nastavení pro obnovení přístupu k vašim zašifrovaným souborům.",
|
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Váš soukromý klíč není platný! Pravděpodobně bylo heslo změněno vně systému ownCloud (např. ve vašem firemním adresáři). Heslo vašeho soukromého klíče můžete změnit ve svém osobním nastavení pro obnovení přístupu k vašim zašifrovaným souborům.",
|
||||||
"Missing requirements." => "Nesplněné závislosti.",
|
"Missing requirements." => "Nesplněné závislosti.",
|
||||||
|
"Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled." => "Ujistěte se prosím, že máte nainstalované PHP 5.3.3 nebo novější a že máte povolené a správně nakonfigurované OpenSSL včetně jeho rozšíření pro PHP. Prozatím byla aplikace pro šifrování vypnuta.",
|
||||||
"Following users are not set up for encryption:" => "Následující uživatelé nemají nastavené šifrování:",
|
"Following users are not set up for encryption:" => "Následující uživatelé nemají nastavené šifrování:",
|
||||||
"Saving..." => "Ukládám...",
|
"Saving..." => "Ukládám...",
|
||||||
"Your private key is not valid! Maybe the your password was changed from outside." => "Váš soukromý klíč není platný! Pravděpodobně bylo vaše heslo změněno zvenčí.",
|
"Your private key is not valid! Maybe the your password was changed from outside." => "Váš soukromý klíč není platný! Pravděpodobně bylo vaše heslo změněno zvenčí.",
|
||||||
|
|
|
@ -10,6 +10,8 @@ $TRANSLATIONS = array(
|
||||||
"Could not update the private key password. Maybe the old password was not correct." => "Kunne ikke opdatere det private nøgle kodeord-. Måske var det gamle kodeord forkert.",
|
"Could not update the private key password. Maybe the old password was not correct." => "Kunne ikke opdatere det private nøgle kodeord-. Måske var det gamle kodeord forkert.",
|
||||||
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Din private nøgle er gyldig! Sandsynligvis blev dit kodeord ændre uden for ownCloud systemet (f.eks. dit firmas register). Du kan opdatere dit private nøgle kodeord under personlige indstillinger, for at generhverve adgang til dine krypterede filer.",
|
"Your private key is not valid! Likely your password was changed outside the ownCloud system (e.g. your corporate directory). You can update your private key password in your personal settings to recover access to your encrypted files." => "Din private nøgle er gyldig! Sandsynligvis blev dit kodeord ændre uden for ownCloud systemet (f.eks. dit firmas register). Du kan opdatere dit private nøgle kodeord under personlige indstillinger, for at generhverve adgang til dine krypterede filer.",
|
||||||
"Missing requirements." => "Manglende betingelser.",
|
"Missing requirements." => "Manglende betingelser.",
|
||||||
|
"Please make sure that PHP 5.3.3 or newer is installed and that OpenSSL together with the PHP extension is enabled and configured properly. For now, the encryption app has been disabled." => "Sørg for at PHP 5.3.3 eller nyere er installeret og at OpenSSL sammen med PHP-udvidelsen er aktiveret og korrekt konfigureret. Indtil videre er krypteringsprogrammet deaktiveret.",
|
||||||
|
"Following users are not set up for encryption:" => "Følgende brugere er ikke sat op til kryptering:",
|
||||||
"Saving..." => "Gemmer...",
|
"Saving..." => "Gemmer...",
|
||||||
"Your private key is not valid! Maybe the your password was changed from outside." => "Din private nøgle er ikke gyldig. Måske blev dit kodeord ændre udefra.",
|
"Your private key is not valid! Maybe the your password was changed from outside." => "Din private nøgle er ikke gyldig. Måske blev dit kodeord ændre udefra.",
|
||||||
"You can unlock your private key in your " => "Du kan låse din private nøgle op i din ",
|
"You can unlock your private key in your " => "Du kan låse din private nøgle op i din ",
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
<?php
|
|
||||||
$TRANSLATIONS = array(
|
|
||||||
"Saving..." => "Сохранение"
|
|
||||||
);
|
|
||||||
$PLURAL_FORMS = "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);";
|
|
|
@ -25,7 +25,6 @@
|
||||||
|
|
||||||
namespace OCA\Encryption;
|
namespace OCA\Encryption;
|
||||||
|
|
||||||
//require_once '../3rdparty/Crypt_Blowfish/Blowfish.php';
|
|
||||||
require_once realpath(dirname(__FILE__) . '/../3rdparty/Crypt_Blowfish/Blowfish.php');
|
require_once realpath(dirname(__FILE__) . '/../3rdparty/Crypt_Blowfish/Blowfish.php');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -86,7 +85,7 @@ class Crypt {
|
||||||
* blocks with encryption alone, hence padding is added to achieve the
|
* blocks with encryption alone, hence padding is added to achieve the
|
||||||
* required length.
|
* required length.
|
||||||
*/
|
*/
|
||||||
public static function addPadding($data) {
|
private static function addPadding($data) {
|
||||||
|
|
||||||
$padded = $data . 'xx';
|
$padded = $data . 'xx';
|
||||||
|
|
||||||
|
@ -99,7 +98,7 @@ class Crypt {
|
||||||
* @param string $padded padded data to remove padding from
|
* @param string $padded padded data to remove padding from
|
||||||
* @return string unpadded data on success, false on error
|
* @return string unpadded data on success, false on error
|
||||||
*/
|
*/
|
||||||
public static function removePadding($padded) {
|
private static function removePadding($padded) {
|
||||||
|
|
||||||
if (substr($padded, -2) === 'xx') {
|
if (substr($padded, -2) === 'xx') {
|
||||||
|
|
||||||
|
@ -207,7 +206,7 @@ class Crypt {
|
||||||
* @param string $passphrase
|
* @param string $passphrase
|
||||||
* @return string encrypted file content
|
* @return string encrypted file content
|
||||||
*/
|
*/
|
||||||
public static function encrypt($plainContent, $iv, $passphrase = '') {
|
private static function encrypt($plainContent, $iv, $passphrase = '') {
|
||||||
|
|
||||||
if ($encryptedContent = openssl_encrypt($plainContent, 'AES-128-CFB', $passphrase, false, $iv)) {
|
if ($encryptedContent = openssl_encrypt($plainContent, 'AES-128-CFB', $passphrase, false, $iv)) {
|
||||||
return $encryptedContent;
|
return $encryptedContent;
|
||||||
|
@ -228,7 +227,7 @@ class Crypt {
|
||||||
* @throws \Exception
|
* @throws \Exception
|
||||||
* @return string decrypted file content
|
* @return string decrypted file content
|
||||||
*/
|
*/
|
||||||
public static function decrypt($encryptedContent, $iv, $passphrase) {
|
private static function decrypt($encryptedContent, $iv, $passphrase) {
|
||||||
|
|
||||||
if ($plainContent = openssl_decrypt($encryptedContent, 'AES-128-CFB', $passphrase, false, $iv)) {
|
if ($plainContent = openssl_decrypt($encryptedContent, 'AES-128-CFB', $passphrase, false, $iv)) {
|
||||||
|
|
||||||
|
@ -248,7 +247,7 @@ class Crypt {
|
||||||
* @param string $iv IV to be concatenated
|
* @param string $iv IV to be concatenated
|
||||||
* @returns string concatenated content
|
* @returns string concatenated content
|
||||||
*/
|
*/
|
||||||
public static function concatIv($content, $iv) {
|
private static function concatIv($content, $iv) {
|
||||||
|
|
||||||
$combined = $content . '00iv00' . $iv;
|
$combined = $content . '00iv00' . $iv;
|
||||||
|
|
||||||
|
@ -261,7 +260,7 @@ class Crypt {
|
||||||
* @param string $catFile concatenated data to be split
|
* @param string $catFile concatenated data to be split
|
||||||
* @returns array keys: encrypted, iv
|
* @returns array keys: encrypted, iv
|
||||||
*/
|
*/
|
||||||
public static function splitIv($catFile) {
|
private static function splitIv($catFile) {
|
||||||
|
|
||||||
// Fetch encryption metadata from end of file
|
// Fetch encryption metadata from end of file
|
||||||
$meta = substr($catFile, -22);
|
$meta = substr($catFile, -22);
|
||||||
|
@ -378,34 +377,6 @@ class Crypt {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Creates symmetric keyfile content using a generated key
|
|
||||||
* @param string $plainContent content to be encrypted
|
|
||||||
* @returns array keys: key, encrypted
|
|
||||||
* @note symmetricDecryptFileContent() can be used to decrypt files created using this method
|
|
||||||
*
|
|
||||||
* This function decrypts a file
|
|
||||||
*/
|
|
||||||
public static function symmetricEncryptFileContentKeyfile($plainContent) {
|
|
||||||
|
|
||||||
$key = self::generateKey();
|
|
||||||
|
|
||||||
if ($encryptedContent = self::symmetricEncryptFileContent($plainContent, $key)) {
|
|
||||||
|
|
||||||
return array(
|
|
||||||
'key' => $key,
|
|
||||||
'encrypted' => $encryptedContent
|
|
||||||
);
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
return false;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Create asymmetrically encrypted keyfile content using a generated key
|
* @brief Create asymmetrically encrypted keyfile content using a generated key
|
||||||
* @param string $plainContent content to be encrypted
|
* @param string $plainContent content to be encrypted
|
||||||
|
@ -488,43 +459,11 @@ class Crypt {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Asymetrically encrypt a string using a public key
|
|
||||||
* @param $plainContent
|
|
||||||
* @param $publicKey
|
|
||||||
* @return string encrypted file
|
|
||||||
*/
|
|
||||||
public static function keyEncrypt($plainContent, $publicKey) {
|
|
||||||
|
|
||||||
openssl_public_encrypt($plainContent, $encryptedContent, $publicKey);
|
|
||||||
|
|
||||||
return $encryptedContent;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Asymetrically decrypt a file using a private key
|
|
||||||
* @param $encryptedContent
|
|
||||||
* @param $privatekey
|
|
||||||
* @return string decrypted file
|
|
||||||
*/
|
|
||||||
public static function keyDecrypt($encryptedContent, $privatekey) {
|
|
||||||
|
|
||||||
$result = @openssl_private_decrypt($encryptedContent, $plainContent, $privatekey);
|
|
||||||
|
|
||||||
if ($result) {
|
|
||||||
return $plainContent;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $result;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Generates a pseudo random initialisation vector
|
* @brief Generates a pseudo random initialisation vector
|
||||||
* @return String $iv generated IV
|
* @return String $iv generated IV
|
||||||
*/
|
*/
|
||||||
public static function generateIv() {
|
private static function generateIv() {
|
||||||
|
|
||||||
if ($random = openssl_random_pseudo_bytes(12, $strong)) {
|
if ($random = openssl_random_pseudo_bytes(12, $strong)) {
|
||||||
|
|
||||||
|
@ -550,7 +489,7 @@ class Crypt {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Generate a pseudo random 1024kb ASCII key
|
* @brief Generate a pseudo random 1024kb ASCII key, used as file key
|
||||||
* @returns $key Generated key
|
* @returns $key Generated key
|
||||||
*/
|
*/
|
||||||
public static function generateKey() {
|
public static function generateKey() {
|
||||||
|
@ -576,13 +515,13 @@ class Crypt {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Get the blowfish encryption handeler for a key
|
* @brief Get the blowfish encryption handler for a key
|
||||||
* @param $key string (optional)
|
* @param $key string (optional)
|
||||||
* @return \Crypt_Blowfish blowfish object
|
* @return \Crypt_Blowfish blowfish object
|
||||||
*
|
*
|
||||||
* if the key is left out, the default handeler will be used
|
* if the key is left out, the default handler will be used
|
||||||
*/
|
*/
|
||||||
public static function getBlowfish($key = '') {
|
private static function getBlowfish($key = '') {
|
||||||
|
|
||||||
if ($key) {
|
if ($key) {
|
||||||
|
|
||||||
|
@ -596,38 +535,6 @@ class Crypt {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @param $passphrase
|
|
||||||
* @return mixed
|
|
||||||
*/
|
|
||||||
public static function legacyCreateKey($passphrase) {
|
|
||||||
|
|
||||||
// Generate a random integer
|
|
||||||
$key = mt_rand(10000, 99999) . mt_rand(10000, 99999) . mt_rand(10000, 99999) . mt_rand(10000, 99999);
|
|
||||||
|
|
||||||
// Encrypt the key with the passphrase
|
|
||||||
$legacyEncKey = self::legacyEncrypt($key, $passphrase);
|
|
||||||
|
|
||||||
return $legacyEncKey;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief encrypts content using legacy blowfish system
|
|
||||||
* @param string $content the cleartext message you want to encrypt
|
|
||||||
* @param string $passphrase
|
|
||||||
* @returns string encrypted content
|
|
||||||
*
|
|
||||||
* This function encrypts an content
|
|
||||||
*/
|
|
||||||
public static function legacyEncrypt($content, $passphrase = '') {
|
|
||||||
|
|
||||||
$bf = self::getBlowfish($passphrase);
|
|
||||||
|
|
||||||
return $bf->encrypt($content);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief decrypts content using legacy blowfish system
|
* @brief decrypts content using legacy blowfish system
|
||||||
* @param string $content the cleartext message you want to decrypt
|
* @param string $content the cleartext message you want to decrypt
|
||||||
|
|
|
@ -199,12 +199,39 @@ class Helper {
|
||||||
public static function stripUserFilesPath($path) {
|
public static function stripUserFilesPath($path) {
|
||||||
$trimmed = ltrim($path, '/');
|
$trimmed = ltrim($path, '/');
|
||||||
$split = explode('/', $trimmed);
|
$split = explode('/', $trimmed);
|
||||||
|
|
||||||
|
// it is not a file relative to data/user/files
|
||||||
|
if (count($split) < 3 || $split[1] !== 'files') {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
$sliced = array_slice($split, 2);
|
$sliced = array_slice($split, 2);
|
||||||
$relPath = implode('/', $sliced);
|
$relPath = implode('/', $sliced);
|
||||||
|
|
||||||
return $relPath;
|
return $relPath;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief get path to the correspondig file in data/user/files
|
||||||
|
* @param string $path path to a version or a file in the trash
|
||||||
|
* @return string path to correspondig file relative to data/user/files
|
||||||
|
*/
|
||||||
|
public static function getPathToRealFile($path) {
|
||||||
|
$trimmed = ltrim($path, '/');
|
||||||
|
$split = explode('/', $trimmed);
|
||||||
|
|
||||||
|
if (count($split) < 3 || $split[1] !== "files_versions") {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
$sliced = array_slice($split, 2);
|
||||||
|
$realPath = implode('/', $sliced);
|
||||||
|
//remove the last .v
|
||||||
|
$realPath = substr($realPath, 0, strrpos($realPath, '.v'));
|
||||||
|
|
||||||
|
return $realPath;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief redirect to a error page
|
* @brief redirect to a error page
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -116,7 +116,7 @@ class Proxy extends \OC_FileProxy {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
$handle = fopen('crypt://' . $relativePath . '.etmp', 'w');
|
$handle = fopen('crypt://' . $path . '.etmp', 'w');
|
||||||
if (is_resource($handle)) {
|
if (is_resource($handle)) {
|
||||||
|
|
||||||
// write data to stream
|
// write data to stream
|
||||||
|
@ -154,9 +154,6 @@ class Proxy extends \OC_FileProxy {
|
||||||
$plainData = null;
|
$plainData = null;
|
||||||
$view = new \OC_FilesystemView('/');
|
$view = new \OC_FilesystemView('/');
|
||||||
|
|
||||||
// get relative path
|
|
||||||
$relativePath = \OCA\Encryption\Helper::stripUserFilesPath($path);
|
|
||||||
|
|
||||||
// init session
|
// init session
|
||||||
$session = new \OCA\Encryption\Session($view);
|
$session = new \OCA\Encryption\Session($view);
|
||||||
|
|
||||||
|
@ -166,7 +163,7 @@ class Proxy extends \OC_FileProxy {
|
||||||
&& Crypt::isCatfileContent($data)
|
&& Crypt::isCatfileContent($data)
|
||||||
) {
|
) {
|
||||||
|
|
||||||
$handle = fopen('crypt://' . $relativePath, 'r');
|
$handle = fopen('crypt://' . $path, 'r');
|
||||||
|
|
||||||
if (is_resource($handle)) {
|
if (is_resource($handle)) {
|
||||||
while (($plainDataChunk = fgets($handle, 8192)) !== false) {
|
while (($plainDataChunk = fgets($handle, 8192)) !== false) {
|
||||||
|
@ -296,14 +293,14 @@ class Proxy extends \OC_FileProxy {
|
||||||
|
|
||||||
// Open the file using the crypto stream wrapper
|
// Open the file using the crypto stream wrapper
|
||||||
// protocol and let it do the decryption work instead
|
// protocol and let it do the decryption work instead
|
||||||
$result = fopen('crypt://' . $relativePath, $meta['mode']);
|
$result = fopen('crypt://' . $path, $meta['mode']);
|
||||||
|
|
||||||
} elseif (
|
} elseif (
|
||||||
self::shouldEncrypt($path)
|
self::shouldEncrypt($path)
|
||||||
and $meta ['mode'] !== 'r'
|
and $meta ['mode'] !== 'r'
|
||||||
and $meta['mode'] !== 'rb'
|
and $meta['mode'] !== 'rb'
|
||||||
) {
|
) {
|
||||||
$result = fopen('crypt://' . $relativePath, $meta['mode']);
|
$result = fopen('crypt://' . $path, $meta['mode']);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Re-enable the proxy
|
// Re-enable the proxy
|
||||||
|
|
|
@ -62,6 +62,7 @@ class Stream {
|
||||||
private $unencryptedSize;
|
private $unencryptedSize;
|
||||||
private $publicKey;
|
private $publicKey;
|
||||||
private $encKeyfile;
|
private $encKeyfile;
|
||||||
|
private $newFile; // helper var, we only need to write the keyfile for new files
|
||||||
/**
|
/**
|
||||||
* @var \OC\Files\View
|
* @var \OC\Files\View
|
||||||
*/
|
*/
|
||||||
|
@ -73,7 +74,7 @@ class Stream {
|
||||||
private $privateKey;
|
private $privateKey;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param $path
|
* @param $path raw path relative to data/
|
||||||
* @param $mode
|
* @param $mode
|
||||||
* @param $options
|
* @param $options
|
||||||
* @param $opened_path
|
* @param $opened_path
|
||||||
|
@ -81,6 +82,9 @@ class Stream {
|
||||||
*/
|
*/
|
||||||
public function stream_open($path, $mode, $options, &$opened_path) {
|
public function stream_open($path, $mode, $options, &$opened_path) {
|
||||||
|
|
||||||
|
// assume that the file already exist before we decide it finally in getKey()
|
||||||
|
$this->newFile = false;
|
||||||
|
|
||||||
if (!isset($this->rootView)) {
|
if (!isset($this->rootView)) {
|
||||||
$this->rootView = new \OC_FilesystemView('/');
|
$this->rootView = new \OC_FilesystemView('/');
|
||||||
}
|
}
|
||||||
|
@ -93,11 +97,20 @@ class Stream {
|
||||||
|
|
||||||
$this->userId = $util->getUserId();
|
$this->userId = $util->getUserId();
|
||||||
|
|
||||||
// Strip identifier text from path, this gives us the path relative to data/<user>/files
|
|
||||||
$this->relPath = \OC\Files\Filesystem::normalizePath(str_replace('crypt://', '', $path));
|
|
||||||
|
|
||||||
// rawPath is relative to the data directory
|
// rawPath is relative to the data directory
|
||||||
$this->rawPath = $util->getUserFilesDir() . $this->relPath;
|
$this->rawPath = \OC\Files\Filesystem::normalizePath(str_replace('crypt://', '', $path));
|
||||||
|
|
||||||
|
// Strip identifier text from path, this gives us the path relative to data/<user>/files
|
||||||
|
$this->relPath = Helper::stripUserFilesPath($this->rawPath);
|
||||||
|
// if raw path doesn't point to a real file, check if it is a version or a file in the trash bin
|
||||||
|
if ($this->relPath === false) {
|
||||||
|
$this->relPath = Helper::getPathToRealFile($this->rawPath);
|
||||||
|
}
|
||||||
|
|
||||||
|
if($this->relPath === false) {
|
||||||
|
\OCP\Util::writeLog('Encryption library', 'failed to open file "' . $this->rawPath . '" expecting a path to user/files or to user/files_versions', \OCP\Util::ERROR);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
// Disable fileproxies so we can get the file size and open the source file without recursive encryption
|
// Disable fileproxies so we can get the file size and open the source file without recursive encryption
|
||||||
$proxyStatus = \OC_FileProxy::$enabled;
|
$proxyStatus = \OC_FileProxy::$enabled;
|
||||||
|
@ -258,6 +271,8 @@ class Stream {
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
|
$this->newFile = true;
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -436,9 +451,7 @@ class Stream {
|
||||||
fwrite($this->handle, $encrypted);
|
fwrite($this->handle, $encrypted);
|
||||||
|
|
||||||
$this->writeCache = '';
|
$this->writeCache = '';
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -451,56 +464,63 @@ class Stream {
|
||||||
// if there is no valid private key return false
|
// if there is no valid private key return false
|
||||||
if ($this->privateKey === false) {
|
if ($this->privateKey === false) {
|
||||||
|
|
||||||
// cleanup
|
// cleanup
|
||||||
if ($this->meta['mode'] !== 'r' && $this->meta['mode'] !== 'rb') {
|
if ($this->meta['mode'] !== 'r' && $this->meta['mode'] !== 'rb') {
|
||||||
|
|
||||||
// Disable encryption proxy to prevent recursive calls
|
// Disable encryption proxy to prevent recursive calls
|
||||||
$proxyStatus = \OC_FileProxy::$enabled;
|
$proxyStatus = \OC_FileProxy::$enabled;
|
||||||
\OC_FileProxy::$enabled = false;
|
\OC_FileProxy::$enabled = false;
|
||||||
|
|
||||||
if ($this->rootView->file_exists($this->rawPath) && $this->size === 0) {
|
if ($this->rootView->file_exists($this->rawPath) && $this->size === 0) {
|
||||||
$this->rootView->unlink($this->rawPath);
|
$this->rootView->unlink($this->rawPath);
|
||||||
}
|
|
||||||
|
|
||||||
// Re-enable proxy - our work is done
|
|
||||||
\OC_FileProxy::$enabled = $proxyStatus;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Re-enable proxy - our work is done
|
||||||
|
\OC_FileProxy::$enabled = $proxyStatus;
|
||||||
|
}
|
||||||
|
|
||||||
// if private key is not valid redirect user to a error page
|
// if private key is not valid redirect user to a error page
|
||||||
\OCA\Encryption\Helper::redirectToErrorPage();
|
\OCA\Encryption\Helper::redirectToErrorPage();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (
|
if (
|
||||||
$this->meta['mode'] !== 'r'
|
$this->meta['mode'] !== 'r' &&
|
||||||
and $this->meta['mode'] !== 'rb'
|
$this->meta['mode'] !== 'rb' &&
|
||||||
and $this->size > 0
|
$this->size > 0
|
||||||
) {
|
) {
|
||||||
// Disable encryption proxy to prevent recursive calls
|
// only write keyfiles if it was a new file
|
||||||
$proxyStatus = \OC_FileProxy::$enabled;
|
if ($this->newFile === true) {
|
||||||
\OC_FileProxy::$enabled = false;
|
|
||||||
|
|
||||||
// Fetch user's public key
|
// Disable encryption proxy to prevent recursive calls
|
||||||
$this->publicKey = Keymanager::getPublicKey($this->rootView, $this->userId);
|
$proxyStatus = \OC_FileProxy::$enabled;
|
||||||
|
\OC_FileProxy::$enabled = false;
|
||||||
|
|
||||||
// Check if OC sharing api is enabled
|
// Fetch user's public key
|
||||||
$sharingEnabled = \OCP\Share::isEnabled();
|
$this->publicKey = Keymanager::getPublicKey($this->rootView, $this->userId);
|
||||||
|
|
||||||
$util = new Util($this->rootView, $this->userId);
|
// Check if OC sharing api is enabled
|
||||||
|
$sharingEnabled = \OCP\Share::isEnabled();
|
||||||
|
|
||||||
// Get all users sharing the file includes current user
|
$util = new Util($this->rootView, $this->userId);
|
||||||
$uniqueUserIds = $util->getSharingUsersArray($sharingEnabled, $this->relPath, $this->userId);
|
|
||||||
|
|
||||||
// Fetch public keys for all sharing users
|
// Get all users sharing the file includes current user
|
||||||
$publicKeys = Keymanager::getPublicKeys($this->rootView, $uniqueUserIds);
|
$uniqueUserIds = $util->getSharingUsersArray($sharingEnabled, $this->relPath, $this->userId);
|
||||||
|
|
||||||
// Encrypt enc key for all sharing users
|
// Fetch public keys for all sharing users
|
||||||
$this->encKeyfiles = Crypt::multiKeyEncrypt($this->plainKey, $publicKeys);
|
$publicKeys = Keymanager::getPublicKeys($this->rootView, $uniqueUserIds);
|
||||||
|
|
||||||
// Save the new encrypted file key
|
// Encrypt enc key for all sharing users
|
||||||
Keymanager::setFileKey($this->rootView, $this->relPath, $this->userId, $this->encKeyfiles['data']);
|
$this->encKeyfiles = Crypt::multiKeyEncrypt($this->plainKey, $publicKeys);
|
||||||
|
|
||||||
// Save the sharekeys
|
// Save the new encrypted file key
|
||||||
Keymanager::setShareKeys($this->rootView, $this->relPath, $this->encKeyfiles['keys']);
|
Keymanager::setFileKey($this->rootView, $this->relPath, $this->userId, $this->encKeyfiles['data']);
|
||||||
|
|
||||||
|
// Save the sharekeys
|
||||||
|
Keymanager::setShareKeys($this->rootView, $this->relPath, $this->encKeyfiles['keys']);
|
||||||
|
|
||||||
|
// Re-enable proxy - our work is done
|
||||||
|
\OC_FileProxy::$enabled = $proxyStatus;
|
||||||
|
}
|
||||||
|
|
||||||
// get file info
|
// get file info
|
||||||
$fileInfo = $this->rootView->getFileInfo($this->rawPath);
|
$fileInfo = $this->rootView->getFileInfo($this->rawPath);
|
||||||
|
@ -508,9 +528,6 @@ class Stream {
|
||||||
$fileInfo = array();
|
$fileInfo = array();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Re-enable proxy - our work is done
|
|
||||||
\OC_FileProxy::$enabled = $proxyStatus;
|
|
||||||
|
|
||||||
// set encryption data
|
// set encryption data
|
||||||
$fileInfo['encrypted'] = true;
|
$fileInfo['encrypted'] = true;
|
||||||
$fileInfo['size'] = $this->size;
|
$fileInfo['size'] = $this->size;
|
||||||
|
@ -521,7 +538,6 @@ class Stream {
|
||||||
}
|
}
|
||||||
|
|
||||||
return fclose($this->handle);
|
return fclose($this->handle);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,30 +21,6 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
# Bugs
|
|
||||||
# ----
|
|
||||||
# Sharing a file to a user without encryption set up will not provide them with access but won't notify the sharer
|
|
||||||
# Sharing all files to admin for recovery purposes still in progress
|
|
||||||
# Possibly public links are broken (not tested since last merge of master)
|
|
||||||
|
|
||||||
|
|
||||||
# Missing features
|
|
||||||
# ----------------
|
|
||||||
# Make sure user knows if large files weren't encrypted
|
|
||||||
|
|
||||||
|
|
||||||
# Test
|
|
||||||
# ----
|
|
||||||
# Test that writing files works when recovery is enabled, and sharing API is disabled
|
|
||||||
# Test trashbin support
|
|
||||||
|
|
||||||
|
|
||||||
// Old Todo:
|
|
||||||
// - Crypt/decrypt button in the userinterface
|
|
||||||
// - Setting if crypto should be on by default
|
|
||||||
// - Add a setting "Don´t encrypt files larger than xx because of performance
|
|
||||||
// reasons"
|
|
||||||
|
|
||||||
namespace OCA\Encryption;
|
namespace OCA\Encryption;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -57,45 +33,6 @@ namespace OCA\Encryption;
|
||||||
|
|
||||||
class Util {
|
class Util {
|
||||||
|
|
||||||
// Web UI:
|
|
||||||
|
|
||||||
//// DONE: files created via web ui are encrypted
|
|
||||||
//// DONE: file created & encrypted via web ui are readable in web ui
|
|
||||||
//// DONE: file created & encrypted via web ui are readable via webdav
|
|
||||||
|
|
||||||
|
|
||||||
// WebDAV:
|
|
||||||
|
|
||||||
//// DONE: new data filled files added via webdav get encrypted
|
|
||||||
//// DONE: new data filled files added via webdav are readable via webdav
|
|
||||||
//// DONE: reading unencrypted files when encryption is enabled works via
|
|
||||||
//// webdav
|
|
||||||
//// DONE: files created & encrypted via web ui are readable via webdav
|
|
||||||
|
|
||||||
|
|
||||||
// Legacy support:
|
|
||||||
|
|
||||||
//// DONE: add method to check if file is encrypted using new system
|
|
||||||
//// DONE: add method to check if file is encrypted using old system
|
|
||||||
//// DONE: add method to fetch legacy key
|
|
||||||
//// DONE: add method to decrypt legacy encrypted data
|
|
||||||
|
|
||||||
|
|
||||||
// Admin UI:
|
|
||||||
|
|
||||||
//// DONE: changing user password also changes encryption passphrase
|
|
||||||
|
|
||||||
//// TODO: add support for optional recovery in case of lost passphrase / keys
|
|
||||||
//// TODO: add admin optional required long passphrase for users
|
|
||||||
//// TODO: implement flag system to allow user to specify encryption by folder, subfolder, etc.
|
|
||||||
|
|
||||||
|
|
||||||
// Integration testing:
|
|
||||||
|
|
||||||
//// TODO: test new encryption with versioning
|
|
||||||
//// DONE: test new encryption with sharing
|
|
||||||
//// TODO: test new encryption with proxies
|
|
||||||
|
|
||||||
const MIGRATION_COMPLETED = 1; // migration to new encryption completed
|
const MIGRATION_COMPLETED = 1; // migration to new encryption completed
|
||||||
const MIGRATION_IN_PROGRESS = -1; // migration is running
|
const MIGRATION_IN_PROGRESS = -1; // migration is running
|
||||||
const MIGRATION_OPEN = 0; // user still needs to be migrated
|
const MIGRATION_OPEN = 0; // user still needs to be migrated
|
||||||
|
@ -565,9 +502,6 @@ class Util {
|
||||||
// split the path parts
|
// split the path parts
|
||||||
$pathParts = explode('/', $path);
|
$pathParts = explode('/', $path);
|
||||||
|
|
||||||
// get relative path
|
|
||||||
$relativePath = \OCA\Encryption\Helper::stripUserFilesPath($path);
|
|
||||||
|
|
||||||
if (isset($pathParts[2]) && $pathParts[2] === 'files' && $this->view->file_exists($path)
|
if (isset($pathParts[2]) && $pathParts[2] === 'files' && $this->view->file_exists($path)
|
||||||
&& $this->isEncryptedPath($path)
|
&& $this->isEncryptedPath($path)
|
||||||
) {
|
) {
|
||||||
|
@ -580,7 +514,7 @@ class Util {
|
||||||
$lastChunkNr = floor($size / 8192);
|
$lastChunkNr = floor($size / 8192);
|
||||||
|
|
||||||
// open stream
|
// open stream
|
||||||
$stream = fopen('crypt://' . $relativePath, "r");
|
$stream = fopen('crypt://' . $path, "r");
|
||||||
|
|
||||||
if (is_resource($stream)) {
|
if (is_resource($stream)) {
|
||||||
// calculate last chunk position
|
// calculate last chunk position
|
||||||
|
@ -662,6 +596,205 @@ class Util {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief encrypt versions from given file
|
||||||
|
* @param array $filelist list of encrypted files, relative to data/user/files
|
||||||
|
* @return boolean
|
||||||
|
*/
|
||||||
|
private function encryptVersions($filelist) {
|
||||||
|
|
||||||
|
$successful = true;
|
||||||
|
|
||||||
|
if (\OCP\App::isEnabled('files_versions')) {
|
||||||
|
|
||||||
|
foreach ($filelist as $filename) {
|
||||||
|
|
||||||
|
$versions = \OCA\Files_Versions\Storage::getVersions($this->userId, $filename);
|
||||||
|
foreach ($versions as $version) {
|
||||||
|
|
||||||
|
$path = '/' . $this->userId . '/files_versions/' . $version['path'] . '.v' . $version['version'];
|
||||||
|
|
||||||
|
$encHandle = fopen('crypt://' . $path . '.part', 'wb');
|
||||||
|
|
||||||
|
if ($encHandle === false) {
|
||||||
|
\OCP\Util::writeLog('Encryption library', 'couldn\'t open "' . $path . '", decryption failed!', \OCP\Util::FATAL);
|
||||||
|
$successful = false;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
$plainHandle = $this->view->fopen($path, 'rb');
|
||||||
|
if ($plainHandle === false) {
|
||||||
|
\OCP\Util::writeLog('Encryption library', 'couldn\'t open "' . $path . '.part", decryption failed!', \OCP\Util::FATAL);
|
||||||
|
$successful = false;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
stream_copy_to_stream($plainHandle, $encHandle);
|
||||||
|
|
||||||
|
fclose($encHandle);
|
||||||
|
fclose($plainHandle);
|
||||||
|
|
||||||
|
$this->view->rename($path . '.part', $path);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $successful;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief decrypt versions from given file
|
||||||
|
* @param string $filelist list of decrypted files, relative to data/user/files
|
||||||
|
* @return boolean
|
||||||
|
*/
|
||||||
|
private function decryptVersions($filelist) {
|
||||||
|
|
||||||
|
$successful = true;
|
||||||
|
|
||||||
|
if (\OCP\App::isEnabled('files_versions')) {
|
||||||
|
|
||||||
|
foreach ($filelist as $filename) {
|
||||||
|
|
||||||
|
$versions = \OCA\Files_Versions\Storage::getVersions($this->userId, $filename);
|
||||||
|
foreach ($versions as $version) {
|
||||||
|
|
||||||
|
$path = '/' . $this->userId . '/files_versions/' . $version['path'] . '.v' . $version['version'];
|
||||||
|
|
||||||
|
$encHandle = fopen('crypt://' . $path, 'rb');
|
||||||
|
|
||||||
|
if ($encHandle === false) {
|
||||||
|
\OCP\Util::writeLog('Encryption library', 'couldn\'t open "' . $path . '", decryption failed!', \OCP\Util::FATAL);
|
||||||
|
$successful = false;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
$plainHandle = $this->view->fopen($path . '.part', 'wb');
|
||||||
|
if ($plainHandle === false) {
|
||||||
|
\OCP\Util::writeLog('Encryption library', 'couldn\'t open "' . $path . '.part", decryption failed!', \OCP\Util::FATAL);
|
||||||
|
$successful = false;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
stream_copy_to_stream($encHandle, $plainHandle);
|
||||||
|
|
||||||
|
fclose($encHandle);
|
||||||
|
fclose($plainHandle);
|
||||||
|
|
||||||
|
$this->view->rename($path . '.part', $path);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $successful;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Decrypt all files
|
||||||
|
* @return bool
|
||||||
|
*/
|
||||||
|
public function decryptAll() {
|
||||||
|
|
||||||
|
$found = $this->findEncFiles($this->userId . '/files');
|
||||||
|
|
||||||
|
$successful = true;
|
||||||
|
|
||||||
|
if ($found) {
|
||||||
|
|
||||||
|
$versionStatus = \OCP\App::isEnabled('files_versions');
|
||||||
|
\OC_App::disable('files_versions');
|
||||||
|
|
||||||
|
$decryptedFiles = array();
|
||||||
|
|
||||||
|
// Encrypt unencrypted files
|
||||||
|
foreach ($found['encrypted'] as $encryptedFile) {
|
||||||
|
|
||||||
|
//get file info
|
||||||
|
$fileInfo = \OC\Files\Filesystem::getFileInfo($encryptedFile['path']);
|
||||||
|
|
||||||
|
//relative to data/<user>/file
|
||||||
|
$relPath = Helper::stripUserFilesPath($encryptedFile['path']);
|
||||||
|
|
||||||
|
//relative to /data
|
||||||
|
$rawPath = $encryptedFile['path'];
|
||||||
|
|
||||||
|
//get timestamp
|
||||||
|
$timestamp = $this->view->filemtime($rawPath);
|
||||||
|
|
||||||
|
//enable proxy to use OC\Files\View to access the original file
|
||||||
|
\OC_FileProxy::$enabled = true;
|
||||||
|
|
||||||
|
// Open enc file handle for binary reading
|
||||||
|
$encHandle = $this->view->fopen($rawPath, 'rb');
|
||||||
|
|
||||||
|
// Disable proxy to prevent file being encrypted again
|
||||||
|
\OC_FileProxy::$enabled = false;
|
||||||
|
|
||||||
|
if ($encHandle === false) {
|
||||||
|
\OCP\Util::writeLog('Encryption library', 'couldn\'t open "' . $rawPath . '", decryption failed!', \OCP\Util::FATAL);
|
||||||
|
$successful = false;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Open plain file handle for binary writing, with same filename as original plain file
|
||||||
|
$plainHandle = $this->view->fopen($rawPath . '.part', 'wb');
|
||||||
|
if ($plainHandle === false) {
|
||||||
|
\OCP\Util::writeLog('Encryption library', 'couldn\'t open "' . $rawPath . '.part", decryption failed!', \OCP\Util::FATAL);
|
||||||
|
$successful = false;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Move plain file to a temporary location
|
||||||
|
$size = stream_copy_to_stream($encHandle, $plainHandle);
|
||||||
|
if ($size === 0) {
|
||||||
|
\OCP\Util::writeLog('Encryption library', 'Zero bytes copied of "' . $rawPath . '", decryption failed!', \OCP\Util::FATAL);
|
||||||
|
$successful = false;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
fclose($encHandle);
|
||||||
|
fclose($plainHandle);
|
||||||
|
|
||||||
|
$fakeRoot = $this->view->getRoot();
|
||||||
|
$this->view->chroot('/' . $this->userId . '/files');
|
||||||
|
|
||||||
|
$this->view->rename($relPath . '.part', $relPath);
|
||||||
|
|
||||||
|
$this->view->chroot($fakeRoot);
|
||||||
|
|
||||||
|
//set timestamp
|
||||||
|
$this->view->touch($rawPath, $timestamp);
|
||||||
|
|
||||||
|
// Add the file to the cache
|
||||||
|
\OC\Files\Filesystem::putFileInfo($relPath, array(
|
||||||
|
'encrypted' => false,
|
||||||
|
'size' => $size,
|
||||||
|
'unencrypted_size' => $size,
|
||||||
|
'etag' => $fileInfo['etag']
|
||||||
|
));
|
||||||
|
|
||||||
|
$decryptedFiles[] = $relPath;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($versionStatus) {
|
||||||
|
\OC_App::enable('files_versions');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!$this->decryptVersions($decryptedFiles)) {
|
||||||
|
$successful = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($successful) {
|
||||||
|
$this->view->deleteAll($this->keyfilesPath);
|
||||||
|
$this->view->deleteAll($this->shareKeysPath);
|
||||||
|
}
|
||||||
|
|
||||||
|
\OC_FileProxy::$enabled = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $successful;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Encrypt all files in a directory
|
* @brief Encrypt all files in a directory
|
||||||
* @param string $dirPath the directory whose files will be encrypted
|
* @param string $dirPath the directory whose files will be encrypted
|
||||||
|
@ -672,30 +805,44 @@ class Util {
|
||||||
*/
|
*/
|
||||||
public function encryptAll($dirPath, $legacyPassphrase = null, $newPassphrase = null) {
|
public function encryptAll($dirPath, $legacyPassphrase = null, $newPassphrase = null) {
|
||||||
|
|
||||||
if ($found = $this->findEncFiles($dirPath)) {
|
$found = $this->findEncFiles($dirPath);
|
||||||
|
|
||||||
|
if ($found) {
|
||||||
|
|
||||||
// Disable proxy to prevent file being encrypted twice
|
// Disable proxy to prevent file being encrypted twice
|
||||||
\OC_FileProxy::$enabled = false;
|
\OC_FileProxy::$enabled = false;
|
||||||
|
|
||||||
|
$versionStatus = \OCP\App::isEnabled('files_versions');
|
||||||
|
\OC_App::disable('files_versions');
|
||||||
|
|
||||||
|
$encryptedFiles = array();
|
||||||
|
|
||||||
// Encrypt unencrypted files
|
// Encrypt unencrypted files
|
||||||
foreach ($found['plain'] as $plainFile) {
|
foreach ($found['plain'] as $plainFile) {
|
||||||
|
|
||||||
|
//get file info
|
||||||
|
$fileInfo = \OC\Files\Filesystem::getFileInfo($plainFile['path']);
|
||||||
|
|
||||||
//relative to data/<user>/file
|
//relative to data/<user>/file
|
||||||
$relPath = $plainFile['path'];
|
$relPath = $plainFile['path'];
|
||||||
|
|
||||||
//relative to /data
|
//relative to /data
|
||||||
$rawPath = '/' . $this->userId . '/files/' . $plainFile['path'];
|
$rawPath = '/' . $this->userId . '/files/' . $plainFile['path'];
|
||||||
|
|
||||||
|
// keep timestamp
|
||||||
|
$timestamp = $this->view->filemtime($rawPath);
|
||||||
|
|
||||||
// Open plain file handle for binary reading
|
// Open plain file handle for binary reading
|
||||||
$plainHandle = $this->view->fopen($rawPath, 'rb');
|
$plainHandle = $this->view->fopen($rawPath, 'rb');
|
||||||
|
|
||||||
// Open enc file handle for binary writing, with same filename as original plain file
|
// Open enc file handle for binary writing, with same filename as original plain file
|
||||||
$encHandle = fopen('crypt://' . $relPath . '.part', 'wb');
|
$encHandle = fopen('crypt://' . $rawPath . '.part', 'wb');
|
||||||
|
|
||||||
// Move plain file to a temporary location
|
// Move plain file to a temporary location
|
||||||
$size = stream_copy_to_stream($plainHandle, $encHandle);
|
$size = stream_copy_to_stream($plainHandle, $encHandle);
|
||||||
|
|
||||||
fclose($encHandle);
|
fclose($encHandle);
|
||||||
|
fclose($plainHandle);
|
||||||
|
|
||||||
$fakeRoot = $this->view->getRoot();
|
$fakeRoot = $this->view->getRoot();
|
||||||
$this->view->chroot('/' . $this->userId . '/files');
|
$this->view->chroot('/' . $this->userId . '/files');
|
||||||
|
@ -704,12 +851,19 @@ class Util {
|
||||||
|
|
||||||
$this->view->chroot($fakeRoot);
|
$this->view->chroot($fakeRoot);
|
||||||
|
|
||||||
|
// set timestamp
|
||||||
|
$this->view->touch($rawPath, $timestamp);
|
||||||
|
|
||||||
// Add the file to the cache
|
// Add the file to the cache
|
||||||
\OC\Files\Filesystem::putFileInfo($relPath, array(
|
\OC\Files\Filesystem::putFileInfo($relPath, array(
|
||||||
'encrypted' => true,
|
'encrypted' => true,
|
||||||
'size' => $size,
|
'size' => $size,
|
||||||
'unencrypted_size' => $size
|
'unencrypted_size' => $size,
|
||||||
));
|
'etag' => $fileInfo['etag']
|
||||||
|
));
|
||||||
|
|
||||||
|
$encryptedFiles[] = $relPath;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Encrypt legacy encrypted files
|
// Encrypt legacy encrypted files
|
||||||
|
@ -750,6 +904,12 @@ class Util {
|
||||||
|
|
||||||
\OC_FileProxy::$enabled = true;
|
\OC_FileProxy::$enabled = true;
|
||||||
|
|
||||||
|
if ($versionStatus) {
|
||||||
|
\OC_App::enable('files_versions');
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->encryptVersions($encryptedFiles);
|
||||||
|
|
||||||
// If files were found, return true
|
// If files were found, return true
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
|
@ -878,46 +1038,22 @@ class Util {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Decrypt a keyfile without knowing how it was encrypted
|
* @brief Decrypt a keyfile
|
||||||
* @param string $filePath
|
* @param string $filePath
|
||||||
* @param string $fileOwner
|
|
||||||
* @param string $privateKey
|
* @param string $privateKey
|
||||||
* @return bool|string
|
* @return bool|string
|
||||||
* @note Checks whether file was encrypted with openssl_seal or
|
|
||||||
* openssl_encrypt, and decrypts accrdingly
|
|
||||||
* @note This was used when 2 types of encryption for keyfiles was used,
|
|
||||||
* but now we've switched to exclusively using openssl_seal()
|
|
||||||
*/
|
*/
|
||||||
public function decryptUnknownKeyfile($filePath, $fileOwner, $privateKey) {
|
private function decryptKeyfile($filePath, $privateKey) {
|
||||||
|
|
||||||
// Get the encrypted keyfile
|
// Get the encrypted keyfile
|
||||||
// NOTE: the keyfile format depends on how it was encrypted! At
|
|
||||||
// this stage we don't know how it was encrypted
|
|
||||||
$encKeyfile = Keymanager::getFileKey($this->view, $this->userId, $filePath);
|
$encKeyfile = Keymanager::getFileKey($this->view, $this->userId, $filePath);
|
||||||
|
|
||||||
// We need to decrypt the keyfile
|
// The file has a shareKey and must use it for decryption
|
||||||
// Has the file been shared yet?
|
$shareKey = Keymanager::getShareKey($this->view, $this->userId, $filePath);
|
||||||
if (
|
|
||||||
$this->userId === $fileOwner
|
|
||||||
&& !Keymanager::getShareKey($this->view, $this->userId, $filePath) // NOTE: we can't use isShared() here because it's a post share hook so it always returns true
|
|
||||||
) {
|
|
||||||
|
|
||||||
// The file has no shareKey, and its keyfile must be
|
$plainKeyfile = Crypt::multiKeyDecrypt($encKeyfile, $shareKey, $privateKey);
|
||||||
// decrypted conventionally
|
|
||||||
$plainKeyfile = Crypt::keyDecrypt($encKeyfile, $privateKey);
|
|
||||||
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
// The file has a shareKey and must use it for decryption
|
|
||||||
$shareKey = Keymanager::getShareKey($this->view, $this->userId, $filePath);
|
|
||||||
|
|
||||||
$plainKeyfile = Crypt::multiKeyDecrypt($encKeyfile, $shareKey, $privateKey);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
return $plainKeyfile;
|
return $plainKeyfile;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -956,7 +1092,7 @@ class Util {
|
||||||
$fileOwner = \OC\Files\Filesystem::getOwner($filePath);
|
$fileOwner = \OC\Files\Filesystem::getOwner($filePath);
|
||||||
|
|
||||||
// Decrypt keyfile
|
// Decrypt keyfile
|
||||||
$plainKeyfile = $this->decryptUnknownKeyfile($filePath, $fileOwner, $privateKey);
|
$plainKeyfile = $this->decryptKeyfile($filePath, $privateKey);
|
||||||
|
|
||||||
// Re-enc keyfile to (additional) sharekeys
|
// Re-enc keyfile to (additional) sharekeys
|
||||||
$multiEncKey = Crypt::multiKeyEncrypt($plainKeyfile, $userPubKeys);
|
$multiEncKey = Crypt::multiKeyEncrypt($plainKeyfile, $userPubKeys);
|
||||||
|
@ -1579,4 +1715,28 @@ class Util {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief decrypt private key and add it to the current session
|
||||||
|
* @param array $params with 'uid' and 'password'
|
||||||
|
* @return mixed session or false
|
||||||
|
*/
|
||||||
|
public function initEncryption($params) {
|
||||||
|
|
||||||
|
$encryptedKey = Keymanager::getPrivateKey($this->view, $params['uid']);
|
||||||
|
|
||||||
|
$privateKey = Crypt::decryptPrivateKey($encryptedKey, $params['password']);
|
||||||
|
|
||||||
|
if ($privateKey === false) {
|
||||||
|
\OCP\Util::writeLog('Encryption library', 'Private key for user "' . $params['uid']
|
||||||
|
. '" is not valid! Maybe the user password was changed from outside if so please change it back to gain access', \OCP\Util::ERROR);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
$session = new \OCA\Encryption\Session($this->view);
|
||||||
|
|
||||||
|
$session->setPrivateKey($privateKey);
|
||||||
|
|
||||||
|
return $session;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,7 +16,7 @@ $view = new \OC_FilesystemView('/');
|
||||||
$util = new \OCA\Encryption\Util($view, $user);
|
$util = new \OCA\Encryption\Util($view, $user);
|
||||||
$session = new \OCA\Encryption\Session($view);
|
$session = new \OCA\Encryption\Session($view);
|
||||||
|
|
||||||
$privateKeySet = ($session->getPrivateKey() !== false) ? true : false;
|
$privateKeySet = $session->getPrivateKey() !== false;
|
||||||
|
|
||||||
$recoveryAdminEnabled = OC_Appconfig::getValue('files_encryption', 'recoveryAdminEnabled');
|
$recoveryAdminEnabled = OC_Appconfig::getValue('files_encryption', 'recoveryAdminEnabled');
|
||||||
$recoveryEnabledForUser = $util->recoveryEnabledForUser();
|
$recoveryEnabledForUser = $util->recoveryEnabledForUser();
|
||||||
|
|
|
@ -115,130 +115,6 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @large
|
|
||||||
* @return String
|
|
||||||
*/
|
|
||||||
function testGenerateIv() {
|
|
||||||
|
|
||||||
$iv = Encryption\Crypt::generateIv();
|
|
||||||
|
|
||||||
$this->assertEquals(16, strlen($iv));
|
|
||||||
|
|
||||||
return $iv;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @large
|
|
||||||
* @depends testGenerateIv
|
|
||||||
*/
|
|
||||||
function testConcatIv($iv) {
|
|
||||||
|
|
||||||
$catFile = Encryption\Crypt::concatIv($this->dataLong, $iv);
|
|
||||||
|
|
||||||
// Fetch encryption metadata from end of file
|
|
||||||
$meta = substr($catFile, -22);
|
|
||||||
|
|
||||||
$identifier = substr($meta, 0, 6);
|
|
||||||
|
|
||||||
// Fetch IV from end of file
|
|
||||||
$foundIv = substr($meta, 6);
|
|
||||||
|
|
||||||
$this->assertEquals('00iv00', $identifier);
|
|
||||||
|
|
||||||
$this->assertEquals($iv, $foundIv);
|
|
||||||
|
|
||||||
// Remove IV and IV identifier text to expose encrypted content
|
|
||||||
$data = substr($catFile, 0, -22);
|
|
||||||
|
|
||||||
$this->assertEquals($this->dataLong, $data);
|
|
||||||
|
|
||||||
return array(
|
|
||||||
'iv' => $iv
|
|
||||||
,
|
|
||||||
'catfile' => $catFile
|
|
||||||
);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @medium
|
|
||||||
* @depends testConcatIv
|
|
||||||
*/
|
|
||||||
function testSplitIv($testConcatIv) {
|
|
||||||
|
|
||||||
// Split catfile into components
|
|
||||||
$splitCatfile = Encryption\Crypt::splitIv($testConcatIv['catfile']);
|
|
||||||
|
|
||||||
// Check that original IV and split IV match
|
|
||||||
$this->assertEquals($testConcatIv['iv'], $splitCatfile['iv']);
|
|
||||||
|
|
||||||
// Check that original data and split data match
|
|
||||||
$this->assertEquals($this->dataLong, $splitCatfile['encrypted']);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @medium
|
|
||||||
* @return string padded
|
|
||||||
*/
|
|
||||||
function testAddPadding() {
|
|
||||||
|
|
||||||
$padded = Encryption\Crypt::addPadding($this->dataLong);
|
|
||||||
|
|
||||||
$padding = substr($padded, -2);
|
|
||||||
|
|
||||||
$this->assertEquals('xx', $padding);
|
|
||||||
|
|
||||||
return $padded;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @medium
|
|
||||||
* @depends testAddPadding
|
|
||||||
*/
|
|
||||||
function testRemovePadding($padded) {
|
|
||||||
|
|
||||||
$noPadding = Encryption\Crypt::RemovePadding($padded);
|
|
||||||
|
|
||||||
$this->assertEquals($this->dataLong, $noPadding);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @medium
|
|
||||||
*/
|
|
||||||
function testEncrypt() {
|
|
||||||
|
|
||||||
$random = openssl_random_pseudo_bytes(13);
|
|
||||||
|
|
||||||
$iv = substr(base64_encode($random), 0, -4); // i.e. E5IG033j+mRNKrht
|
|
||||||
|
|
||||||
$crypted = Encryption\Crypt::encrypt($this->dataUrl, $iv, 'hat');
|
|
||||||
|
|
||||||
$this->assertNotEquals($this->dataUrl, $crypted);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @medium
|
|
||||||
*/
|
|
||||||
function testDecrypt() {
|
|
||||||
|
|
||||||
$random = openssl_random_pseudo_bytes(13);
|
|
||||||
|
|
||||||
$iv = substr(base64_encode($random), 0, -4); // i.e. E5IG033j+mRNKrht
|
|
||||||
|
|
||||||
$crypted = Encryption\Crypt::encrypt($this->dataUrl, $iv, 'hat');
|
|
||||||
|
|
||||||
$decrypt = Encryption\Crypt::decrypt($crypted, $iv, 'hat');
|
|
||||||
|
|
||||||
$this->assertEquals($this->dataUrl, $decrypt);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
function testDecryptPrivateKey() {
|
function testDecryptPrivateKey() {
|
||||||
|
|
||||||
// test successful decrypt
|
// test successful decrypt
|
||||||
|
@ -281,7 +157,7 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
|
|
||||||
$filename = 'tmp-' . time() . '.test';
|
$filename = 'tmp-' . time() . '.test';
|
||||||
|
|
||||||
$cryptedFile = file_put_contents('crypt://' . $filename, $this->dataShort);
|
$cryptedFile = file_put_contents('crypt:///' . $this->userId . '/files/'. $filename, $this->dataShort);
|
||||||
|
|
||||||
// Test that data was successfully written
|
// Test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
@ -339,7 +215,7 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
$filename = 'tmp-' . time() . '.test';
|
$filename = 'tmp-' . time() . '.test';
|
||||||
|
|
||||||
// Save long data as encrypted file using stream wrapper
|
// Save long data as encrypted file using stream wrapper
|
||||||
$cryptedFile = file_put_contents('crypt://' . $filename, $this->dataLong . $this->dataLong);
|
$cryptedFile = file_put_contents('crypt:///' . $this->userId . '/files/' . $filename, $this->dataLong . $this->dataLong);
|
||||||
|
|
||||||
// Test that data was successfully written
|
// Test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
@ -364,14 +240,12 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
//print_r($r);
|
//print_r($r);
|
||||||
|
|
||||||
// Join IVs and their respective data chunks
|
// Join IVs and their respective data chunks
|
||||||
$e = array(
|
$e = array();
|
||||||
$r[0] . $r[1],
|
$i = 0;
|
||||||
$r[2] . $r[3],
|
while ($i < count($r)-1) {
|
||||||
$r[4] . $r[5],
|
$e[] = $r[$i] . $r[$i+1];
|
||||||
$r[6] . $r[7],
|
$i = $i + 2;
|
||||||
$r[8] . $r[9],
|
}
|
||||||
$r[10] . $r[11]
|
|
||||||
); //.$r[11], $r[12].$r[13], $r[14] );
|
|
||||||
|
|
||||||
//print_r($e);
|
//print_r($e);
|
||||||
|
|
||||||
|
@ -422,7 +296,7 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
$filename = 'tmp-' . time();
|
$filename = 'tmp-' . time();
|
||||||
|
|
||||||
// Save long data as encrypted file using stream wrapper
|
// Save long data as encrypted file using stream wrapper
|
||||||
$cryptedFile = file_put_contents('crypt://' . $filename, $this->dataShort);
|
$cryptedFile = file_put_contents('crypt:///'. $this->userId . '/files/' . $filename, $this->dataShort);
|
||||||
|
|
||||||
// Test that data was successfully written
|
// Test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
@ -436,7 +310,7 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
\OC_FileProxy::$enabled = $proxyStatus;
|
\OC_FileProxy::$enabled = $proxyStatus;
|
||||||
|
|
||||||
// Get file decrypted contents
|
// Get file decrypted contents
|
||||||
$decrypt = file_get_contents('crypt://' . $filename);
|
$decrypt = file_get_contents('crypt:///' . $this->userId . '/files/' . $filename);
|
||||||
|
|
||||||
$this->assertEquals($this->dataShort, $decrypt);
|
$this->assertEquals($this->dataShort, $decrypt);
|
||||||
|
|
||||||
|
@ -452,13 +326,13 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
$filename = 'tmp-' . time();
|
$filename = 'tmp-' . time();
|
||||||
|
|
||||||
// Save long data as encrypted file using stream wrapper
|
// Save long data as encrypted file using stream wrapper
|
||||||
$cryptedFile = file_put_contents('crypt://' . $filename, $this->dataLong);
|
$cryptedFile = file_put_contents('crypt:///' . $this->userId . '/files/' . $filename, $this->dataLong);
|
||||||
|
|
||||||
// Test that data was successfully written
|
// Test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
|
||||||
// Get file decrypted contents
|
// Get file decrypted contents
|
||||||
$decrypt = file_get_contents('crypt://' . $filename);
|
$decrypt = file_get_contents('crypt:///' . $this->userId . '/files/' . $filename);
|
||||||
|
|
||||||
$this->assertEquals($this->dataLong, $decrypt);
|
$this->assertEquals($this->dataLong, $decrypt);
|
||||||
|
|
||||||
|
@ -466,24 +340,6 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
$this->view->unlink($this->userId . '/files/' . $filename);
|
$this->view->unlink($this->userId . '/files/' . $filename);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @medium
|
|
||||||
*/
|
|
||||||
function testSymmetricEncryptFileContentKeyfile() {
|
|
||||||
|
|
||||||
# TODO: search in keyfile for actual content as IV will ensure this test always passes
|
|
||||||
|
|
||||||
$crypted = Encryption\Crypt::symmetricEncryptFileContentKeyfile($this->dataUrl);
|
|
||||||
|
|
||||||
$this->assertNotEquals($this->dataUrl, $crypted['encrypted']);
|
|
||||||
|
|
||||||
|
|
||||||
$decrypt = Encryption\Crypt::symmetricDecryptFileContent($crypted['encrypted'], $crypted['key']);
|
|
||||||
|
|
||||||
$this->assertEquals($this->dataUrl, $decrypt);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @medium
|
* @medium
|
||||||
*/
|
*/
|
||||||
|
@ -526,49 +382,13 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @medium
|
|
||||||
*/
|
|
||||||
function testKeyEncrypt() {
|
|
||||||
|
|
||||||
// Generate keypair
|
|
||||||
$pair1 = Encryption\Crypt::createKeypair();
|
|
||||||
|
|
||||||
// Encrypt data
|
|
||||||
$crypted = Encryption\Crypt::keyEncrypt($this->dataUrl, $pair1['publicKey']);
|
|
||||||
|
|
||||||
$this->assertNotEquals($this->dataUrl, $crypted);
|
|
||||||
|
|
||||||
// Decrypt data
|
|
||||||
$decrypt = Encryption\Crypt::keyDecrypt($crypted, $pair1['privateKey']);
|
|
||||||
|
|
||||||
$this->assertEquals($this->dataUrl, $decrypt);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @medium
|
|
||||||
* @brief test encryption using legacy blowfish method
|
|
||||||
*/
|
|
||||||
function testLegacyEncryptShort() {
|
|
||||||
|
|
||||||
$crypted = Encryption\Crypt::legacyEncrypt($this->dataShort, $this->pass);
|
|
||||||
|
|
||||||
$this->assertNotEquals($this->dataShort, $crypted);
|
|
||||||
|
|
||||||
# TODO: search inencrypted text for actual content to ensure it
|
|
||||||
# genuine transformation
|
|
||||||
|
|
||||||
return $crypted;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @medium
|
* @medium
|
||||||
* @brief test decryption using legacy blowfish method
|
* @brief test decryption using legacy blowfish method
|
||||||
* @depends testLegacyEncryptShort
|
|
||||||
*/
|
*/
|
||||||
function testLegacyDecryptShort($crypted) {
|
function testLegacyDecryptShort() {
|
||||||
|
|
||||||
|
$crypted = $this->legacyEncrypt($this->dataShort, $this->pass);
|
||||||
|
|
||||||
$decrypted = Encryption\Crypt::legacyBlockDecrypt($crypted, $this->pass);
|
$decrypted = Encryption\Crypt::legacyBlockDecrypt($crypted, $this->pass);
|
||||||
|
|
||||||
|
@ -576,55 +396,17 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @medium
|
|
||||||
* @brief test encryption using legacy blowfish method
|
|
||||||
*/
|
|
||||||
function testLegacyEncryptLong() {
|
|
||||||
|
|
||||||
$crypted = Encryption\Crypt::legacyEncrypt($this->dataLong, $this->pass);
|
|
||||||
|
|
||||||
$this->assertNotEquals($this->dataLong, $crypted);
|
|
||||||
|
|
||||||
# TODO: search inencrypted text for actual content to ensure it
|
|
||||||
# genuine transformation
|
|
||||||
|
|
||||||
return $crypted;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @medium
|
* @medium
|
||||||
* @brief test decryption using legacy blowfish method
|
* @brief test decryption using legacy blowfish method
|
||||||
* @depends testLegacyEncryptLong
|
|
||||||
*/
|
*/
|
||||||
function testLegacyDecryptLong($crypted) {
|
function testLegacyDecryptLong() {
|
||||||
|
|
||||||
|
$crypted = $this->legacyEncrypt($this->dataLong, $this->pass);
|
||||||
|
|
||||||
$decrypted = Encryption\Crypt::legacyBlockDecrypt($crypted, $this->pass);
|
$decrypted = Encryption\Crypt::legacyBlockDecrypt($crypted, $this->pass);
|
||||||
|
|
||||||
$this->assertEquals($this->dataLong, $decrypted);
|
$this->assertEquals($this->dataLong, $decrypted);
|
||||||
|
|
||||||
$this->assertFalse(Encryption\Crypt::getBlowfish(''));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @medium
|
|
||||||
* @brief test generation of legacy encryption key
|
|
||||||
* @depends testLegacyDecryptShort
|
|
||||||
*/
|
|
||||||
function testLegacyCreateKey() {
|
|
||||||
|
|
||||||
// Create encrypted key
|
|
||||||
$encKey = Encryption\Crypt::legacyCreateKey($this->pass);
|
|
||||||
|
|
||||||
// Decrypt key
|
|
||||||
$key = Encryption\Crypt::legacyBlockDecrypt($encKey, $this->pass);
|
|
||||||
|
|
||||||
$this->assertTrue(is_numeric($key));
|
|
||||||
|
|
||||||
// Check that key is correct length
|
|
||||||
$this->assertEquals(20, strlen($key));
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -635,13 +417,13 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
$filename = 'tmp-' . time();
|
$filename = 'tmp-' . time();
|
||||||
|
|
||||||
// Save long data as encrypted file using stream wrapper
|
// Save long data as encrypted file using stream wrapper
|
||||||
$cryptedFile = file_put_contents('crypt://' . $filename, $this->dataLong);
|
$cryptedFile = file_put_contents('crypt:///' . $this->userId . '/files/' . $filename, $this->dataLong);
|
||||||
|
|
||||||
// Test that data was successfully written
|
// Test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
|
||||||
// Get file decrypted contents
|
// Get file decrypted contents
|
||||||
$decrypt = file_get_contents('crypt://' . $filename);
|
$decrypt = file_get_contents('crypt:///' . $this->userId . '/files/' . $filename);
|
||||||
|
|
||||||
$this->assertEquals($this->dataLong, $decrypt);
|
$this->assertEquals($this->dataLong, $decrypt);
|
||||||
|
|
||||||
|
@ -650,7 +432,7 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
$view->rename($filename, $newFilename);
|
$view->rename($filename, $newFilename);
|
||||||
|
|
||||||
// Get file decrypted contents
|
// Get file decrypted contents
|
||||||
$newDecrypt = file_get_contents('crypt://' . $newFilename);
|
$newDecrypt = file_get_contents('crypt:///'. $this->userId . '/files/' . $newFilename);
|
||||||
|
|
||||||
$this->assertEquals($this->dataLong, $newDecrypt);
|
$this->assertEquals($this->dataLong, $newDecrypt);
|
||||||
|
|
||||||
|
@ -666,13 +448,13 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
$filename = 'tmp-' . time();
|
$filename = 'tmp-' . time();
|
||||||
|
|
||||||
// Save long data as encrypted file using stream wrapper
|
// Save long data as encrypted file using stream wrapper
|
||||||
$cryptedFile = file_put_contents('crypt://' . $filename, $this->dataLong);
|
$cryptedFile = file_put_contents('crypt:///' . $this->userId . '/files/' . $filename, $this->dataLong);
|
||||||
|
|
||||||
// Test that data was successfully written
|
// Test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
|
||||||
// Get file decrypted contents
|
// Get file decrypted contents
|
||||||
$decrypt = file_get_contents('crypt://' . $filename);
|
$decrypt = file_get_contents('crypt:///' . $this->userId . '/files/' . $filename);
|
||||||
|
|
||||||
$this->assertEquals($this->dataLong, $decrypt);
|
$this->assertEquals($this->dataLong, $decrypt);
|
||||||
|
|
||||||
|
@ -683,7 +465,7 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
$view->rename($filename, $newFolder . '/' . $newFilename);
|
$view->rename($filename, $newFolder . '/' . $newFilename);
|
||||||
|
|
||||||
// Get file decrypted contents
|
// Get file decrypted contents
|
||||||
$newDecrypt = file_get_contents('crypt://' . $newFolder . '/' . $newFilename);
|
$newDecrypt = file_get_contents('crypt:///' . $this->userId . '/files/' . $newFolder . '/' . $newFilename);
|
||||||
|
|
||||||
$this->assertEquals($this->dataLong, $newDecrypt);
|
$this->assertEquals($this->dataLong, $newDecrypt);
|
||||||
|
|
||||||
|
@ -704,13 +486,13 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
$view->mkdir($folder);
|
$view->mkdir($folder);
|
||||||
|
|
||||||
// Save long data as encrypted file using stream wrapper
|
// Save long data as encrypted file using stream wrapper
|
||||||
$cryptedFile = file_put_contents('crypt://' . $folder . $filename, $this->dataLong);
|
$cryptedFile = file_put_contents('crypt:///' . $this->userId . '/files/' . $folder . $filename, $this->dataLong);
|
||||||
|
|
||||||
// Test that data was successfully written
|
// Test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
|
||||||
// Get file decrypted contents
|
// Get file decrypted contents
|
||||||
$decrypt = file_get_contents('crypt://' . $folder . $filename);
|
$decrypt = file_get_contents('crypt:///' . $this->userId . '/files/' . $folder . $filename);
|
||||||
|
|
||||||
$this->assertEquals($this->dataLong, $decrypt);
|
$this->assertEquals($this->dataLong, $decrypt);
|
||||||
|
|
||||||
|
@ -720,7 +502,7 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
$view->rename($folder, $newFolder);
|
$view->rename($folder, $newFolder);
|
||||||
|
|
||||||
// Get file decrypted contents
|
// Get file decrypted contents
|
||||||
$newDecrypt = file_get_contents('crypt://' . $newFolder . $filename);
|
$newDecrypt = file_get_contents('crypt:///' . $this->userId . '/files/' . $newFolder . $filename);
|
||||||
|
|
||||||
$this->assertEquals($this->dataLong, $newDecrypt);
|
$this->assertEquals($this->dataLong, $newDecrypt);
|
||||||
|
|
||||||
|
@ -736,13 +518,13 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
$filename = 'tmp-' . time();
|
$filename = 'tmp-' . time();
|
||||||
|
|
||||||
// Save long data as encrypted file using stream wrapper
|
// Save long data as encrypted file using stream wrapper
|
||||||
$cryptedFile = file_put_contents('crypt://' . $filename, $this->dataLong);
|
$cryptedFile = file_put_contents('crypt:///' . $this->userId . '/files/' . $filename, $this->dataLong);
|
||||||
|
|
||||||
// Test that data was successfully written
|
// Test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
|
||||||
// Get file decrypted contents
|
// Get file decrypted contents
|
||||||
$decrypt = file_get_contents('crypt://' . $filename);
|
$decrypt = file_get_contents('crypt:///' . $this->userId . '/files/' . $filename);
|
||||||
|
|
||||||
$this->assertEquals($this->dataLong, $decrypt);
|
$this->assertEquals($this->dataLong, $decrypt);
|
||||||
|
|
||||||
|
@ -755,7 +537,7 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
OCA\Encryption\Hooks::login($params);
|
OCA\Encryption\Hooks::login($params);
|
||||||
|
|
||||||
// Get file decrypted contents
|
// Get file decrypted contents
|
||||||
$newDecrypt = file_get_contents('crypt://' . $filename);
|
$newDecrypt = file_get_contents('crypt:///' . $this->userId . '/files/' . $filename);
|
||||||
|
|
||||||
$this->assertEquals($this->dataLong, $newDecrypt);
|
$this->assertEquals($this->dataLong, $newDecrypt);
|
||||||
|
|
||||||
|
@ -871,4 +653,20 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase {
|
||||||
// tear down
|
// tear down
|
||||||
$view->unlink($filename);
|
$view->unlink($filename);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief encryption using legacy blowfish method
|
||||||
|
* @param $data string data to encrypt
|
||||||
|
* @param $passwd string password
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
function legacyEncrypt($data, $passwd) {
|
||||||
|
|
||||||
|
$bf = new \Crypt_Blowfish($passwd);
|
||||||
|
$crypted = $bf->encrypt($data);
|
||||||
|
|
||||||
|
return $crypted;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -141,10 +141,7 @@ class Test_Encryption_Keymanager extends \PHPUnit_Framework_TestCase {
|
||||||
*/
|
*/
|
||||||
function testSetFileKey() {
|
function testSetFileKey() {
|
||||||
|
|
||||||
# NOTE: This cannot be tested until we are able to break out
|
$key = $this->randomKey;
|
||||||
# of the FileSystemView data directory root
|
|
||||||
|
|
||||||
$key = Encryption\Crypt::symmetricEncryptFileContentKeyfile($this->randomKey, 'hat');
|
|
||||||
|
|
||||||
$file = 'unittest-' . time() . '.txt';
|
$file = 'unittest-' . time() . '.txt';
|
||||||
|
|
||||||
|
@ -152,24 +149,17 @@ class Test_Encryption_Keymanager extends \PHPUnit_Framework_TestCase {
|
||||||
$proxyStatus = \OC_FileProxy::$enabled;
|
$proxyStatus = \OC_FileProxy::$enabled;
|
||||||
\OC_FileProxy::$enabled = false;
|
\OC_FileProxy::$enabled = false;
|
||||||
|
|
||||||
$this->view->file_put_contents($this->userId . '/files/' . $file, $key['encrypted']);
|
$this->view->file_put_contents($this->userId . '/files/' . $file, $this->dataShort);
|
||||||
|
|
||||||
// Re-enable proxy - our work is done
|
Encryption\Keymanager::setFileKey($this->view, $file, $this->userId, $key);
|
||||||
\OC_FileProxy::$enabled = $proxyStatus;
|
|
||||||
|
|
||||||
//$view = new \OC_FilesystemView( '/' . $this->userId . '/files_encryption/keyfiles' );
|
$this->assertTrue($this->view->file_exists('/' . $this->userId . '/files_encryption/keyfiles/' . $file . '.key'));
|
||||||
Encryption\Keymanager::setFileKey($this->view, $file, $this->userId, $key['key']);
|
|
||||||
|
|
||||||
// enable encryption proxy
|
|
||||||
$proxyStatus = \OC_FileProxy::$enabled;
|
|
||||||
\OC_FileProxy::$enabled = true;
|
|
||||||
|
|
||||||
// cleanup
|
// cleanup
|
||||||
$this->view->unlink('/' . $this->userId . '/files/' . $file);
|
$this->view->unlink('/' . $this->userId . '/files/' . $file);
|
||||||
|
|
||||||
// change encryption proxy to previous state
|
// change encryption proxy to previous state
|
||||||
\OC_FileProxy::$enabled = $proxyStatus;
|
\OC_FileProxy::$enabled = $proxyStatus;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -233,7 +223,7 @@ class Test_Encryption_Keymanager extends \PHPUnit_Framework_TestCase {
|
||||||
\OC_FileProxy::$enabled = true;
|
\OC_FileProxy::$enabled = true;
|
||||||
|
|
||||||
// save file with content
|
// save file with content
|
||||||
$cryptedFile = file_put_contents('crypt:///folder1/subfolder/subsubfolder/' . $filename, $this->dataShort);
|
$cryptedFile = file_put_contents('crypt:///'.Test_Encryption_Keymanager::TEST_USER.'/files/folder1/subfolder/subsubfolder' . $filename, $this->dataShort);
|
||||||
|
|
||||||
// test that data was successfully written
|
// test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
|
|
@ -136,7 +136,7 @@ class Test_Encryption_Share extends \PHPUnit_Framework_TestCase {
|
||||||
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1);
|
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1);
|
||||||
|
|
||||||
// save file with content
|
// save file with content
|
||||||
$cryptedFile = file_put_contents('crypt://' . $this->filename, $this->dataShort);
|
$cryptedFile = file_put_contents('crypt:///' . \Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1 . '/files/' . $this->filename, $this->dataShort);
|
||||||
|
|
||||||
// test that data was successfully written
|
// test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
@ -293,7 +293,7 @@ class Test_Encryption_Share extends \PHPUnit_Framework_TestCase {
|
||||||
. $this->subsubfolder);
|
. $this->subsubfolder);
|
||||||
|
|
||||||
// save file with content
|
// save file with content
|
||||||
$cryptedFile = file_put_contents('crypt://' . $this->folder1 . $this->subfolder . $this->subsubfolder . '/'
|
$cryptedFile = file_put_contents('crypt:///' . \Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1 . '/files/' . $this->folder1 . $this->subfolder . $this->subsubfolder . '/'
|
||||||
. $this->filename, $this->dataShort);
|
. $this->filename, $this->dataShort);
|
||||||
|
|
||||||
// test that data was successfully written
|
// test that data was successfully written
|
||||||
|
@ -499,7 +499,7 @@ class Test_Encryption_Share extends \PHPUnit_Framework_TestCase {
|
||||||
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1);
|
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1);
|
||||||
|
|
||||||
// save file with content
|
// save file with content
|
||||||
$cryptedFile = file_put_contents('crypt://' . $this->filename, $this->dataShort);
|
$cryptedFile = file_put_contents('crypt:///' . \Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1 . '/files/' . $this->filename, $this->dataShort);
|
||||||
|
|
||||||
// test that data was successfully written
|
// test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
@ -540,7 +540,7 @@ class Test_Encryption_Share extends \PHPUnit_Framework_TestCase {
|
||||||
\OC_User::setUserId(false);
|
\OC_User::setUserId(false);
|
||||||
|
|
||||||
// get file contents
|
// get file contents
|
||||||
$retrievedCryptedFile = file_get_contents('crypt://' . $this->filename);
|
$retrievedCryptedFile = file_get_contents('crypt:///' . \Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1 . '/files/' . $this->filename);
|
||||||
|
|
||||||
// check if data is the same as we previously written
|
// check if data is the same as we previously written
|
||||||
$this->assertEquals($this->dataShort, $retrievedCryptedFile);
|
$this->assertEquals($this->dataShort, $retrievedCryptedFile);
|
||||||
|
@ -575,7 +575,7 @@ class Test_Encryption_Share extends \PHPUnit_Framework_TestCase {
|
||||||
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1);
|
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1);
|
||||||
|
|
||||||
// save file with content
|
// save file with content
|
||||||
$cryptedFile = file_put_contents('crypt://' . $this->filename, $this->dataShort);
|
$cryptedFile = file_put_contents('crypt:///' . \Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1 . '/files/' . $this->filename, $this->dataShort);
|
||||||
|
|
||||||
// test that data was successfully written
|
// test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
@ -649,6 +649,9 @@ class Test_Encryption_Share extends \PHPUnit_Framework_TestCase {
|
||||||
* @large
|
* @large
|
||||||
*/
|
*/
|
||||||
function testRecoveryFile() {
|
function testRecoveryFile() {
|
||||||
|
$this->markTestIncomplete(
|
||||||
|
'No idea what\'s wrong here, this works perfectly in real-world. removeRecoveryKeys(\'/\') L709 removes correctly the keys, but for some reasons afterwards also the top-level folder "share-keys" is gone...'
|
||||||
|
);
|
||||||
// login as admin
|
// login as admin
|
||||||
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1);
|
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1);
|
||||||
|
|
||||||
|
@ -675,8 +678,8 @@ class Test_Encryption_Share extends \PHPUnit_Framework_TestCase {
|
||||||
. $this->subsubfolder);
|
. $this->subsubfolder);
|
||||||
|
|
||||||
// save file with content
|
// save file with content
|
||||||
$cryptedFile1 = file_put_contents('crypt://' . $this->filename, $this->dataShort);
|
$cryptedFile1 = file_put_contents('crypt:///' . \Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1 . '/files/' . $this->filename, $this->dataShort);
|
||||||
$cryptedFile2 = file_put_contents('crypt://' . $this->folder1 . $this->subfolder . $this->subsubfolder . '/'
|
$cryptedFile2 = file_put_contents('crypt:///' . \Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1 . '/files/' . $this->folder1 . $this->subfolder . $this->subsubfolder . '/'
|
||||||
. $this->filename, $this->dataShort);
|
. $this->filename, $this->dataShort);
|
||||||
|
|
||||||
// test that data was successfully written
|
// test that data was successfully written
|
||||||
|
@ -717,7 +720,7 @@ class Test_Encryption_Share extends \PHPUnit_Framework_TestCase {
|
||||||
// enable recovery for admin
|
// enable recovery for admin
|
||||||
$this->assertTrue($util->setRecoveryForUser(1));
|
$this->assertTrue($util->setRecoveryForUser(1));
|
||||||
|
|
||||||
// remove all recovery keys
|
// add recovery keys again
|
||||||
$util->addRecoveryKeys('/');
|
$util->addRecoveryKeys('/');
|
||||||
|
|
||||||
// check if share key for admin and recovery exists
|
// check if share key for admin and recovery exists
|
||||||
|
@ -752,7 +755,7 @@ class Test_Encryption_Share extends \PHPUnit_Framework_TestCase {
|
||||||
*/
|
*/
|
||||||
function testRecoveryForUser() {
|
function testRecoveryForUser() {
|
||||||
$this->markTestIncomplete(
|
$this->markTestIncomplete(
|
||||||
'This test drives Jenkins crazy - "Cannot modify header information - headers already sent" - line 811'
|
'This test drives Jenkins crazy - "Cannot modify header information - headers already sent" - line 811'
|
||||||
);
|
);
|
||||||
// login as admin
|
// login as admin
|
||||||
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1);
|
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1);
|
||||||
|
@ -760,7 +763,7 @@ class Test_Encryption_Share extends \PHPUnit_Framework_TestCase {
|
||||||
\OCA\Encryption\Helper::adminEnableRecovery(null, 'test123');
|
\OCA\Encryption\Helper::adminEnableRecovery(null, 'test123');
|
||||||
$recoveryKeyId = OC_Appconfig::getValue('files_encryption', 'recoveryKeyId');
|
$recoveryKeyId = OC_Appconfig::getValue('files_encryption', 'recoveryKeyId');
|
||||||
|
|
||||||
// login as user1
|
// login as user2
|
||||||
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER2);
|
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER2);
|
||||||
|
|
||||||
$util = new \OCA\Encryption\Util(new \OC_FilesystemView('/'), \Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER2);
|
$util = new \OCA\Encryption\Util(new \OC_FilesystemView('/'), \Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER2);
|
||||||
|
@ -777,8 +780,8 @@ class Test_Encryption_Share extends \PHPUnit_Framework_TestCase {
|
||||||
. $this->subsubfolder);
|
. $this->subsubfolder);
|
||||||
|
|
||||||
// save file with content
|
// save file with content
|
||||||
$cryptedFile1 = file_put_contents('crypt://' . $this->filename, $this->dataShort);
|
$cryptedFile1 = file_put_contents('crypt:///' . \Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER2. '/files/' . $this->filename, $this->dataShort);
|
||||||
$cryptedFile2 = file_put_contents('crypt://' . $this->folder1 . $this->subfolder . $this->subsubfolder . '/'
|
$cryptedFile2 = file_put_contents('crypt:///' . \Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER2 . '/files/' . $this->folder1 . $this->subfolder . $this->subsubfolder . '/'
|
||||||
. $this->filename, $this->dataShort);
|
. $this->filename, $this->dataShort);
|
||||||
|
|
||||||
// test that data was successfully written
|
// test that data was successfully written
|
||||||
|
@ -807,13 +810,13 @@ class Test_Encryption_Share extends \PHPUnit_Framework_TestCase {
|
||||||
// change password
|
// change password
|
||||||
\OC_User::setPassword(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER2, 'test', 'test123');
|
\OC_User::setPassword(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER2, 'test', 'test123');
|
||||||
|
|
||||||
// login as user1
|
// login as user2
|
||||||
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER2, false, 'test');
|
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER2, false, 'test');
|
||||||
|
|
||||||
// get file contents
|
// get file contents
|
||||||
$retrievedCryptedFile1 = file_get_contents('crypt://' . $this->filename);
|
$retrievedCryptedFile1 = file_get_contents('crypt:///' . \Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER2 . '/files/' . $this->filename);
|
||||||
$retrievedCryptedFile2 = file_get_contents(
|
$retrievedCryptedFile2 = file_get_contents(
|
||||||
'crypt://' . $this->folder1 . $this->subfolder . $this->subsubfolder . '/' . $this->filename);
|
'crypt:///' . \Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER2 . '/files' . $this->folder1 . $this->subfolder . $this->subsubfolder . '/' . $this->filename);
|
||||||
|
|
||||||
// check if data is the same as we previously written
|
// check if data is the same as we previously written
|
||||||
$this->assertEquals($this->dataShort, $retrievedCryptedFile1);
|
$this->assertEquals($this->dataShort, $retrievedCryptedFile1);
|
||||||
|
@ -854,7 +857,7 @@ class Test_Encryption_Share extends \PHPUnit_Framework_TestCase {
|
||||||
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1);
|
\Test_Encryption_Util::loginHelper(\Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1);
|
||||||
|
|
||||||
// save file with content
|
// save file with content
|
||||||
$cryptedFile = file_put_contents('crypt://' . $this->filename, $this->dataShort);
|
$cryptedFile = file_put_contents('crypt:///' . \Test_Encryption_Share::TEST_ENCRYPTION_SHARE_USER1 . '/files/' . $this->filename, $this->dataShort);
|
||||||
|
|
||||||
// test that data was successfully written
|
// test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
|
|
@ -122,7 +122,7 @@ class Test_Encryption_Trashbin extends \PHPUnit_Framework_TestCase {
|
||||||
$filename = 'tmp-' . time() . '.txt';
|
$filename = 'tmp-' . time() . '.txt';
|
||||||
|
|
||||||
// save file with content
|
// save file with content
|
||||||
$cryptedFile = file_put_contents('crypt:///' . $filename, $this->dataShort);
|
$cryptedFile = file_put_contents('crypt:///' .\Test_Encryption_Trashbin::TEST_ENCRYPTION_TRASHBIN_USER1. '/files/'. $filename, $this->dataShort);
|
||||||
|
|
||||||
// test that data was successfully written
|
// test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
@ -226,7 +226,7 @@ class Test_Encryption_Trashbin extends \PHPUnit_Framework_TestCase {
|
||||||
$filename = 'tmp-' . time() . '.txt';
|
$filename = 'tmp-' . time() . '.txt';
|
||||||
|
|
||||||
// save file with content
|
// save file with content
|
||||||
$cryptedFile = file_put_contents('crypt:///' . $filename, $this->dataShort);
|
$cryptedFile = file_put_contents('crypt:///' .$this->userId. '/files/' . $filename, $this->dataShort);
|
||||||
|
|
||||||
// test that data was successfully written
|
// test that data was successfully written
|
||||||
$this->assertTrue(is_int($cryptedFile));
|
$this->assertTrue(is_int($cryptedFile));
|
||||||
|
|
|
@ -153,7 +153,7 @@ class Test_Encryption_Webdav extends \PHPUnit_Framework_TestCase {
|
||||||
$this->assertTrue(Encryption\Crypt::isCatfileContent($encryptedContent));
|
$this->assertTrue(Encryption\Crypt::isCatfileContent($encryptedContent));
|
||||||
|
|
||||||
// get decrypted file contents
|
// get decrypted file contents
|
||||||
$decrypt = file_get_contents('crypt://' . $filename);
|
$decrypt = file_get_contents('crypt:///' . $this->userId . '/files'. $filename);
|
||||||
|
|
||||||
// check if file content match with the written content
|
// check if file content match with the written content
|
||||||
$this->assertEquals($this->dataShort, $decrypt);
|
$this->assertEquals($this->dataShort, $decrypt);
|
||||||
|
|
|
@ -1,6 +0,0 @@
|
||||||
<?php
|
|
||||||
$TRANSLATIONS = array(
|
|
||||||
"Groups" => "Группы",
|
|
||||||
"Delete" => "Удалить"
|
|
||||||
);
|
|
||||||
$PLURAL_FORMS = "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);";
|
|
|
@ -79,7 +79,7 @@ class AmazonS3 extends \OC\Files\Storage\Common {
|
||||||
|
|
||||||
$this->bucket = $params['bucket'];
|
$this->bucket = $params['bucket'];
|
||||||
$scheme = ($params['use_ssl'] === 'false') ? 'http' : 'https';
|
$scheme = ($params['use_ssl'] === 'false') ? 'http' : 'https';
|
||||||
$this->test = ( isset($params['test'])) ? true : false;
|
$this->test = isset($params['test']);
|
||||||
$this->timeout = ( ! isset($params['timeout'])) ? 15 : $params['timeout'];
|
$this->timeout = ( ! isset($params['timeout'])) ? 15 : $params['timeout'];
|
||||||
$params['region'] = ( ! isset($params['region'])) ? 'eu-west-1' : $params['region'];
|
$params['region'] = ( ! isset($params['region'])) ? 'eu-west-1' : $params['region'];
|
||||||
$params['hostname'] = ( !isset($params['hostname'])) ? 's3.amazonaws.com' : $params['hostname'];
|
$params['hostname'] = ( !isset($params['hostname'])) ? 's3.amazonaws.com' : $params['hostname'];
|
||||||
|
|
|
@ -93,14 +93,18 @@ class OC_Mount_Config {
|
||||||
'root' => '&Root',
|
'root' => '&Root',
|
||||||
'secure' => '!Secure ftps://'));
|
'secure' => '!Secure ftps://'));
|
||||||
|
|
||||||
if(OC_Mount_Config::checksmbclient()) $backends['\OC\Files\Storage\SMB']=array(
|
if (!OC_Util::runningOnWindows()) {
|
||||||
'backend' => 'SMB / CIFS',
|
if (OC_Mount_Config::checksmbclient()) {
|
||||||
'configuration' => array(
|
$backends['\OC\Files\Storage\SMB'] = array(
|
||||||
'host' => 'URL',
|
'backend' => 'SMB / CIFS',
|
||||||
'user' => 'Username',
|
'configuration' => array(
|
||||||
'password' => '*Password',
|
'host' => 'URL',
|
||||||
'share' => 'Share',
|
'user' => 'Username',
|
||||||
'root' => '&Root'));
|
'password' => '*Password',
|
||||||
|
'share' => 'Share',
|
||||||
|
'root' => '&Root'));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(OC_Mount_Config::checkcurl()) $backends['\OC\Files\Storage\DAV']=array(
|
if(OC_Mount_Config::checkcurl()) $backends['\OC\Files\Storage\DAV']=array(
|
||||||
'backend' => 'ownCloud / WebDAV',
|
'backend' => 'ownCloud / WebDAV',
|
||||||
|
@ -414,9 +418,9 @@ class OC_Mount_Config {
|
||||||
public static function checksmbclient() {
|
public static function checksmbclient() {
|
||||||
if(function_exists('shell_exec')) {
|
if(function_exists('shell_exec')) {
|
||||||
$output=shell_exec('which smbclient');
|
$output=shell_exec('which smbclient');
|
||||||
return (empty($output)?false:true);
|
return !empty($output);
|
||||||
}else{
|
}else{
|
||||||
return(false);
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -425,9 +429,9 @@ class OC_Mount_Config {
|
||||||
*/
|
*/
|
||||||
public static function checkphpftp() {
|
public static function checkphpftp() {
|
||||||
if(function_exists('ftp_login')) {
|
if(function_exists('ftp_login')) {
|
||||||
return(true);
|
return true;
|
||||||
}else{
|
}else{
|
||||||
return(false);
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -435,7 +439,7 @@ class OC_Mount_Config {
|
||||||
* check if curl is installed
|
* check if curl is installed
|
||||||
*/
|
*/
|
||||||
public static function checkcurl() {
|
public static function checkcurl() {
|
||||||
return (function_exists('curl_init'));
|
return function_exists('curl_init');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -444,8 +448,10 @@ class OC_Mount_Config {
|
||||||
public static function checkDependencies() {
|
public static function checkDependencies() {
|
||||||
$l= new OC_L10N('files_external');
|
$l= new OC_L10N('files_external');
|
||||||
$txt='';
|
$txt='';
|
||||||
if(!OC_Mount_Config::checksmbclient()) {
|
if (!OC_Util::runningOnWindows()) {
|
||||||
$txt.=$l->t('<b>Warning:</b> "smbclient" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it.').'<br />';
|
if(!OC_Mount_Config::checksmbclient()) {
|
||||||
|
$txt.=$l->t('<b>Warning:</b> "smbclient" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it.').'<br />';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if(!OC_Mount_Config::checkphpftp()) {
|
if(!OC_Mount_Config::checkphpftp()) {
|
||||||
$txt.=$l->t('<b>Warning:</b> The FTP support in PHP is not enabled or installed. Mounting of FTP shares is not possible. Please ask your system administrator to install it.').'<br />';
|
$txt.=$l->t('<b>Warning:</b> The FTP support in PHP is not enabled or installed. Mounting of FTP shares is not possible. Please ask your system administrator to install it.').'<br />';
|
||||||
|
@ -454,6 +460,6 @@ class OC_Mount_Config {
|
||||||
$txt.=$l->t('<b>Warning:</b> The Curl support in PHP is not enabled or installed. Mounting of ownCloud / WebDAV or GoogleDrive is not possible. Please ask your system administrator to install it.').'<br />';
|
$txt.=$l->t('<b>Warning:</b> The Curl support in PHP is not enabled or installed. Mounting of ownCloud / WebDAV or GoogleDrive is not possible. Please ask your system administrator to install it.').'<br />';
|
||||||
}
|
}
|
||||||
|
|
||||||
return($txt);
|
return $txt;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -170,7 +170,7 @@ class SFTP extends \OC\Files\Storage\Common {
|
||||||
|
|
||||||
public function file_exists($path) {
|
public function file_exists($path) {
|
||||||
try {
|
try {
|
||||||
return $this->client->stat($this->abs_path($path)) === false ? false : true;
|
return $this->client->stat($this->abs_path($path)) !== false;
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue