diff --git a/.gitignore b/.gitignore index 43f3cab912..724f2460b0 100644 --- a/.gitignore +++ b/.gitignore @@ -82,6 +82,9 @@ nbproject # Tests /tests/phpunit.xml +# Node Modules +/build/node_modules/ + # Tests - auto-generated files /data-autotest /tests/coverage* diff --git a/3rdparty b/3rdparty index 2f3ae9f56a..dc87ea6302 160000 --- a/3rdparty +++ b/3rdparty @@ -1 +1 @@ -Subproject commit 2f3ae9f56a9838b45254393e13c14f8a8c380d6b +Subproject commit dc87ea630287f27502eba825fbb19fcc33c34c86 diff --git a/apps/files/ajax/newfile.php b/apps/files/ajax/newfile.php index d224e79d01..76c03c87a5 100644 --- a/apps/files/ajax/newfile.php +++ b/apps/files/ajax/newfile.php @@ -79,7 +79,7 @@ if($source) { $success = false; if (!$content) { $templateManager = OC_Helper::getFileTemplateManager(); - $mimeType = OC_Helper::getMimeType($target); + $mimeType = OC_Helper::getMimetypeDetector()->detectPath($target); $content = $templateManager->getTemplate($mimeType); } diff --git a/apps/files/ajax/upload.php b/apps/files/ajax/upload.php index dde5d3c50a..1d03cd89f8 100644 --- a/apps/files/ajax/upload.php +++ b/apps/files/ajax/upload.php @@ -105,16 +105,20 @@ if (strpos($dir, '..') === false) { $meta = \OC\Files\Filesystem::getFileInfo($target); // updated max file size after upload $storageStats = \OCA\files\lib\Helper::buildFileStorageStatistics($dir); - - $result[] = array('status' => 'success', - 'mime' => $meta['mimetype'], - 'size' => $meta['size'], - 'id' => $meta['fileid'], - 'name' => basename($target), - 'originalname' => $files['name'][$i], - 'uploadMaxFilesize' => $maxUploadFileSize, - 'maxHumanFilesize' => $maxHumanFileSize - ); + if ($meta === false) { + OCP\JSON::error(array('data' => array_merge(array('message' => $l->t('Upload failed')), $storageStats))); + exit(); + } else { + $result[] = array('status' => 'success', + 'mime' => $meta['mimetype'], + 'size' => $meta['size'], + 'id' => $meta['fileid'], + 'name' => basename($target), + 'originalname' => $files['name'][$i], + 'uploadMaxFilesize' => $maxUploadFileSize, + 'maxHumanFilesize' => $maxHumanFileSize + ); + } } } OCP\JSON::encodedPrint($result); diff --git a/apps/files/css/files.css b/apps/files/css/files.css index a2cf8398c2..02a73ba83e 100644 --- a/apps/files/css/files.css +++ b/apps/files/css/files.css @@ -19,10 +19,13 @@ background:#f8f8f8; border:1px solid #ddd; border-radius:10px; border-top-left-radius:0; box-shadow:0 2px 7px rgba(170,170,170,.4); } -#new>ul>li { height:20px; margin:.3em; padding-left:2em; padding-bottom:0.1em; +#new>ul>li { height:36px; margin:.3em; padding-left:3em; padding-bottom:0.1em; background-repeat:no-repeat; cursor:pointer; } -#new>ul>li>p { cursor:pointer; } -#new>ul>li>form>input { padding:0.3em; margin:-0.3em; } +#new>ul>li>p { cursor:pointer; padding-top: 7px; padding-bottom: 7px;} +#new>ul>li>form>input { + padding: 5px; + margin: 2px 0; +} #trash { margin: 0 1em; z-index:1010; float: right; } @@ -65,12 +68,6 @@ /* FILE TABLE */ -#emptyfolder { - position:absolute; - margin:10em 0 0 10em; - font-size:1.5em; font-weight:bold; - color:#888; text-shadow:#fff 0 1px 0; -} #filestable { position: relative; top:37px; width:100%; } tbody tr { background-color:#fff; height:2.5em; } tbody tr:hover, tbody tr:active { @@ -85,54 +82,153 @@ span.extension { text-transform:lowercase; -ms-filter:"progid:DXImageTransform.M tr:hover span.extension { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter:alpha(opacity=100); opacity:1; color:#777; } table tr.mouseOver td { background-color:#eee; } table th { height:2em; padding:0 .5em; color:#999; } -table th .name { float:left; margin-left:.5em; } +table th .name { + position: absolute; + left: 55px; + top: 15px; +} table th, table td { border-bottom:1px solid #ddd; text-align:left; font-weight:normal; } -table td { border-bottom:1px solid #eee; font-style:normal; background-position:1em .5em; background-repeat:no-repeat; } -table th#headerName { width:100em; /* not really sure why this works better than 100% … table styling */ } -table th#headerSize, table td.filesize { min-width:3em; padding:0 1em; text-align:right; } -table th#headerDate, table td.date { min-width:11em; padding:0 .1em 0 1em; text-align:left; } +table td { + border-bottom: 1px solid #eee; + font-style: normal; + background-position: 8px center; + background-repeat: no-repeat; +} +table th#headerName { + position: relative; + width: 100em; /* not really sure why this works better than 100% … table styling */ + padding: 0; +} +#headerName-container { + position: relative; + height: 50px; +} +table th#headerSize, table td.filesize { + min-width: 3em; + padding: 0 1em; + text-align: right; +} +table th#headerDate, table td.date { + -moz-box-sizing: border-box; + box-sizing: border-box; + position: relative; + min-width: 11em; + display: block; + height: 51px; +} /* Multiselect bar */ -#filestable.multiselect { top:63px; } -table.multiselect thead { position:fixed; top:82px; z-index:1; -moz-box-sizing: border-box; box-sizing: border-box; left: 0; padding-left: 64px; width:100%; } +#filestable.multiselect { + top: 88px; +} +table.multiselect thead { position:fixed; top:82px; z-index:1; -moz-box-sizing: border-box; box-sizing: border-box; left: 0; padding-left: 80px; width:100%; } + table.multiselect thead th { background-color: rgba(210,210,210,.7); color: #000; font-weight: bold; border-bottom: 0; } -table.multiselect #headerName { width: 100%; } +table.multiselect #headerName { + position: relative; + width: 100%; +} table td.selection, table th.selection, table td.fileaction { width:2em; text-align:center; } -table td.filename a.name { display:block; height:1.5em; vertical-align:middle; margin-left:3em; } +table td.filename a.name { + position:relative; /* Firefox needs to explicitly have this default set … */ + -moz-box-sizing: border-box; + box-sizing: border-box; + display: block; + height: 50px; + vertical-align: middle; + padding: 0; +} table tr[data-type="dir"] td.filename a.name span.nametext {font-weight:bold; } -table td.filename input.filename { width:100%; cursor:text; } -table td.filename a, table td.login, table td.logout, table td.download, table td.upload, table td.create, table td.delete { padding:.2em .5em .5em 0; } +table td.filename input.filename { + width: 80%; + font-size: 14px; + margin-top: 8px; + margin-left: 2px; + cursor: text; +} +table td.filename a, table td.login, table td.logout, table td.download, table td.upload, table td.create, table td.delete { padding:.2em .5em .5em .3em; } table td.filename .nametext, .uploadtext, .modified { float:left; padding:.3em 0; } + +#modified { + position: absolute; + top: 15px; +} +.modified { + position: relative; + top: 11px; + left: 5px; +} + /* TODO fix usability bug (accidental file/folder selection) */ -table td.filename .nametext { overflow:hidden; text-overflow:ellipsis; max-width:800px; } +table td.filename .nametext { + position: absolute; + top: 16px; + left: 55px; + padding: 0; + overflow: hidden; + text-overflow: ellipsis; + max-width: 800px; +} table td.filename .uploadtext { font-weight:normal; margin-left:.5em; } table td.filename form { font-size:.85em; margin-left:3em; margin-right:3em; } + /* File checkboxes */ -#fileList tr td.filename>input[type="checkbox"]:first-child { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; filter:alpha(opacity=0); opacity:0; float:left; margin:.7em 0 0 1em; /* bigger clickable area doesn’t work in FF width:2.8em; height:2.4em;*/ -webkit-transition:opacity 200ms; -moz-transition:opacity 200ms; -o-transition:opacity 200ms; transition:opacity 200ms; } -#fileList tr td.filename>input[type="checkbox"]:hover:first-child { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; filter:alpha(opacity=80); opacity:.8; } -/* Always show checkbox when selected */ -#fileList tr td.filename>input[type="checkbox"]:checked:first-child { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter:alpha(opacity=100); opacity:1; } -#fileList tr.selected td.filename>input[type="checkbox"]:first-child { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter:alpha(opacity=100); opacity:1; } +#fileList tr td.filename>input[type="checkbox"]:first-child { + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; + filter: alpha(opacity=0); + opacity: 0; + float: left; + margin: 32px 0 4px 32px; /* bigger clickable area doesn’t work in FF width:2.8em; height:2.4em;*/ +} +/* Show checkbox when hovering, checked, or selected */ +#fileList tr:hover td.filename>input[type="checkbox"]:first-child, +#fileList tr td.filename>input[type="checkbox"]:checked:first-child, +#fileList tr.selected td.filename>input[type="checkbox"]:first-child { + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; + filter: alpha(opacity=100); + opacity: 1; +} +/* Use label to have bigger clickable size for checkbox */ +#fileList tr td.filename>input[type="checkbox"] + label, +#select_all + label { + height: 50px; + position: absolute; + width: 50px; + z-index: 5; +} +#fileList tr td.filename>input[type="checkbox"] + label { + left: 0; +} +#select_all + label { + top: 0; +} +#select_all { + position: absolute; + top: 18px; + left: 18px; +} + #fileList tr td.filename { position:relative; width:100%; -webkit-transition:background-image 500ms; -moz-transition:background-image 500ms; -o-transition:background-image 500ms; transition:background-image 500ms; } -#select_all { float:left; margin:.4em 0.6em 0 .5em; } + #uploadsize-message,#delete-confirm { display:none; } /* File actions */ .fileactions { - position:absolute; top:.6em; right:0; - font-size:.8em; + position: absolute; + top: 16px; + right: 0; + font-size: 11px; } -#fileList .name { position:relative; /* Firefox needs to explicitly have this default set … */ } #fileList tr:hover .fileactions { /* background to distinguish when overlaying with file names */ background-color: rgba(240,240,240,0.898); box-shadow: -5px 0 7px rgba(240,240,240,0.898); @@ -142,15 +238,39 @@ table td.filename form { font-size:.85em; margin-left:3em; margin-right:3em; } box-shadow: -5px 0 7px rgba(230,230,230,.9); } #fileList .fileactions a.action img { position:relative; top:.2em; } -#fileList a.action { display:inline; margin:-.5em 0; padding:1em .5em 1em .5em !important; } + #fileList img.move2trash { display:inline; margin:-.5em 0; padding:1em .5em 1em .5em !important; float:right; } -a.action.delete { float:right; } +#fileList a.action.delete { + position: absolute; + right: 0; + top: 0; + margin: 0; + padding: 15px 14px 19px !important; +} a.action>img { max-height:16px; max-width:16px; vertical-align:text-bottom; } -.selectedActions { display:none; float:right; } -.selectedActions a { display:inline; margin:-.5em 0; padding:.5em !important; } -.selectedActions a img { position:relative; top:.3em; } + +/* Actions for selected files */ +.selectedActions { + display: none; + position: absolute; + top: -1px; + right: 0; + padding: 15px 8px; +} +.selectedActions a { + display: inline; + padding: 17px 5px; +} +.selectedActions a img { + position:relative; + top:.3em; +} + #fileList a.action { + display: inline; + margin: -.5em 0; + padding: 18px 8px !important; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; filter: alpha(opacity=0); opacity: 0; @@ -170,11 +290,23 @@ a.action>img { max-height:16px; max-width:16px; vertical-align:text-bottom; } } .summary { - opacity: .5; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"; + filter: alpha(opacity=30); + opacity: .3; + height: 70px; } +.summary:hover, .summary, table tr.summary td { + background-color: transparent; +} + +.summary td { + padding-top: 8px; + padding-bottom: 8px; + border-bottom: none; +} .summary .info { - margin-left: 3em; + margin-left: 55px; } #scanning-message{ top:40%; left:40%; position:absolute; display:none; } diff --git a/apps/files/index.php b/apps/files/index.php index 94c792303d..f1e120c872 100644 --- a/apps/files/index.php +++ b/apps/files/index.php @@ -74,6 +74,7 @@ foreach ($content as $i) { } } $i['directory'] = $dir; + $i['isPreviewAvailable'] = \OCP\Preview::isMimeSupported($i['mimetype']); $files[] = $i; } @@ -95,6 +96,7 @@ $list->assign('files', $files); $list->assign('baseURL', OCP\Util::linkTo('files', 'index.php') . '?dir='); $list->assign('downloadURL', OCP\Util::linkToRoute('download', array('file' => '/'))); $list->assign('disableSharing', false); +$list->assign('isPublic', false); $breadcrumbNav = new OCP\Template('files', 'part.breadcrumb', ''); $breadcrumbNav->assign('breadcrumb', $breadcrumb); $breadcrumbNav->assign('baseURL', OCP\Util::linkTo('files', 'index.php') . '?dir='); @@ -119,7 +121,7 @@ if ($needUpgrade) { $tmpl->printPage(); } else { // information about storage capacities - $storageInfo=OC_Helper::getStorageInfo(); + $storageInfo=OC_Helper::getStorageInfo($dir); $maxUploadFilesize=OCP\Util::maxUploadFilesize($dir); $publicUploadEnabled = \OC_Appconfig::getValue('core', 'shareapi_allow_public_upload', 'yes'); if (OC_App::isEnabled('files_encryption')) { diff --git a/apps/files/js/file-upload.js b/apps/files/js/file-upload.js index 0eddd7e9cd..3d620c5640 100644 --- a/apps/files/js/file-upload.js +++ b/apps/files/js/file-upload.js @@ -1,6 +1,6 @@ $(document).ready(function() { - file_upload_param = { + var file_upload_param = { dropZone: $('#content'), // restrict dropZone to content div //singleFileUploads is on by default, so the data.files array will always have length 1 add: function(e, data) { @@ -102,6 +102,18 @@ $(document).ready(function() { var result=$.parseJSON(response); if(typeof result[0] !== 'undefined' && result[0].status === 'success') { + 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]; + } var file = result[0]; } else { data.textStatus = 'servererror'; @@ -109,20 +121,6 @@ $(document).ready(function() { 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 @@ -142,7 +140,7 @@ $(document).ready(function() { $('#uploadprogressbar').progressbar('value',100); $('#uploadprogressbar').fadeOut(); } - } + }; var file_upload_handler = function() { $('#file_upload_start').fileupload(file_upload_param); }; @@ -163,13 +161,14 @@ $(document).ready(function() { // warn user not to leave the page while upload is in progress $(window).bind('beforeunload', function(e) { - if ($.assocArraySize(uploadingFiles) > 0) + 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') + $('#file_upload_start').attr('multiple','multiple'); } //if the breadcrumb is to long, start by replacing foldernames with '...' except for the current folder @@ -204,6 +203,13 @@ $(document).ready(function() { } }); }); + $('#new').click(function(event){ + event.stopPropagation(); + }); + $('#new>a').click(function(){ + $('#new>ul').toggle(); + $('#new').toggleClass('active'); + }); $('#new li').click(function(){ if($(this).children('p').length==0){ return; @@ -221,7 +227,7 @@ $(document).ready(function() { $(this).data('text',text); $(this).children('p').remove(); var form=$('
'); - var input=$(''); + var input=$(''); form.append(input); $(this).append(form); input.focus(); @@ -262,8 +268,9 @@ $(document).ready(function() { 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+')'); + var path = getPathForPreview(name); + lazyLoadPreview(path, result.data.mime, function(previewpath){ + tr.find('td.filename').attr('style','background-image:url('+previewpath+')'); }); } else { OC.dialogs.alert(result.data.message, t('core', 'Error')); @@ -302,8 +309,7 @@ $(document).ready(function() { } localName = getUniqueName(localName); //IE < 10 does not fire the necessary events for the progress bar. - if($('html.lte9').length > 0) { - } else { + if($('html.lte9').length === 0) { $('#uploadprogressbar').progressbar({value:0}); $('#uploadprogressbar').fadeIn(); } @@ -311,8 +317,7 @@ $(document).ready(function() { 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 { + if($('html.lte9').length === 0) { $('#uploadprogressbar').progressbar('value',progress); } }); @@ -326,8 +331,9 @@ $(document).ready(function() { 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+')'); + var path = $('#dir').val()+'/'+localName; + lazyLoadPreview(path, mime, function(previewpath){ + tr.find('td.filename').attr('style','background-image:url('+previewpath+')'); }); }); eventSource.listen('error',function(error){ diff --git a/apps/files/js/fileactions.js b/apps/files/js/fileactions.js index 5027211b53..097fe521aa 100644 --- a/apps/files/js/fileactions.js +++ b/apps/files/js/fileactions.js @@ -198,7 +198,7 @@ FileActions.register('all', 'Rename', OC.PERMISSION_UPDATE, function () { FileActions.register('dir', 'Open', OC.PERMISSION_READ, '', function (filename) { - var dir = $('#dir').val() + var dir = $('#dir').val(); if (dir !== '/') { dir = dir + '/'; } diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js index 10801af3ea..29be5e0d36 100644 --- a/apps/files/js/filelist.js +++ b/apps/files/js/filelist.js @@ -15,9 +15,10 @@ var FileList={ // filename td td = $('').attr({ "class": "filename", - "style": 'background-image:url('+iconurl+'); background-size: 16px;' + "style": 'background-image:url('+iconurl+'); background-size: 32px;' }); - td.append(''); + var rand = Math.random().toString(16).slice(2); + td.append(''); var link_elem = $('').attr({ "class": "name", "href": linktarget @@ -144,8 +145,9 @@ var FileList={ remove:function(name){ $('tr').filterAttr('data-file',name).find('td.filename').draggable('destroy'); $('tr').filterAttr('data-file',name).remove(); + FileList.updateFileSummary(); if($('tr[data-file]').length==0){ - $('#emptyfolder').show(); + $('#emptycontent').show(); } }, insertElement:function(name,type,element){ @@ -175,7 +177,8 @@ var FileList={ }else{ $('#fileList').append(element); } - $('#emptyfolder').hide(); + $('#emptycontent').hide(); + FileList.updateFileSummary(); }, loadingDone:function(name, id){ var mime, tr=$('tr').filterAttr('data-file',name); @@ -185,8 +188,9 @@ var FileList={ if (id != null) { tr.attr('data-id', id); } - getMimeIcon(mime,function(path){ - tr.find('td.filename').attr('style','background-image:url('+path+')'); + var path = getPathForPreview(name); + lazyLoadPreview(path, mime, function(previewpath){ + tr.find('td.filename').attr('style','background-image:url('+previewpath+')'); }); tr.find('td.filename').draggable(dragOptions); }, @@ -198,7 +202,7 @@ var FileList={ tr=$('tr').filterAttr('data-file',name); tr.data('renaming',true); td=tr.children('td.filename'); - input=$('').val(name); + input=$('').val(name); form=$('
'); form.append(input); td.children('a.name').hide(); @@ -391,6 +395,7 @@ var FileList={ }); procesSelection(); checkTrashStatus(); + FileList.updateFileSummary(); } else { $.each(files,function(index,file) { var deleteAction = $('tr').filterAttr('data-file',files[i]).children("td.date").children(".action.delete"); @@ -398,6 +403,111 @@ var FileList={ }); } }); + }, + createFileSummary: function() { + if( $('#fileList tr').length > 0 ) { + var totalDirs = 0; + var totalFiles = 0; + var totalSize = 0; + + // Count types and filesize + $.each($('tr[data-file]'), function(index, value) { + if ($(value).data('type') === 'dir') { + totalDirs++; + } else if ($(value).data('type') === 'file') { + totalFiles++; + } + totalSize += parseInt($(value).data('size')); + }); + + // Get translations + var directoryInfo = n('files', '%n folder', '%n folders', totalDirs); + var fileInfo = n('files', '%n file', '%n files', totalFiles); + + var infoVars = { + dirs: ''+directoryInfo+'', + files: ''+fileInfo+'' + } + + var info = t('files', '{dirs} and {files}', infoVars); + + // don't show the filesize column, if filesize is NaN (e.g. in trashbin) + if (isNaN(totalSize)) { + var fileSize = ''; + } else { + var fileSize = ''+humanFileSize(totalSize)+''; + } + + $('#fileList').append(''+info+''+fileSize+''); + + var $dirInfo = $('.summary .dirinfo'); + var $fileInfo = $('.summary .fileinfo'); + var $connector = $('.summary .connector'); + + // Show only what's necessary, e.g.: no files: don't show "0 files" + if ($dirInfo.html().charAt(0) === "0") { + $dirInfo.hide(); + $connector.hide(); + } + if ($fileInfo.html().charAt(0) === "0") { + $fileInfo.hide(); + $connector.hide(); + } + } + }, + updateFileSummary: function() { + var $summary = $('.summary'); + + // Check if we should remove the summary to show "Upload something" + if ($('#fileList tr').length === 1 && $summary.length === 1) { + $summary.remove(); + } + // If there's no summary create one (createFileSummary checks if there's data) + else if ($summary.length === 0) { + FileList.createFileSummary(); + } + // There's a summary and data -> Update the summary + else if ($('#fileList tr').length > 1 && $summary.length === 1) { + var totalDirs = 0; + var totalFiles = 0; + var totalSize = 0; + $.each($('tr[data-file]'), function(index, value) { + if ($(value).data('type') === 'dir') { + totalDirs++; + } else if ($(value).data('type') === 'file') { + totalFiles++; + } + if ($(value).data('size') !== undefined) { + totalSize += parseInt($(value).data('size')); + } + }); + + var $dirInfo = $('.summary .dirinfo'); + var $fileInfo = $('.summary .fileinfo'); + var $connector = $('.summary .connector'); + + // Substitute old content with new translations + $dirInfo.html(n('files', '%n folder', '%n folders', totalDirs)); + $fileInfo.html(n('files', '%n file', '%n files', totalFiles)); + $('.summary .filesize').html(humanFileSize(totalSize)); + + // Show only what's necessary (may be hidden) + if ($dirInfo.html().charAt(0) === "0") { + $dirInfo.hide(); + $connector.hide(); + } else { + $dirInfo.show(); + } + if ($fileInfo.html().charAt(0) === "0") { + $fileInfo.hide(); + $connector.hide(); + } else { + $fileInfo.show(); + } + if ($dirInfo.html().charAt(0) !== "0" && $fileInfo.html().charAt(0) !== "0") { + $connector.show(); + } + } } }; @@ -599,4 +709,6 @@ $(document).ready(function(){ $(window).unload(function (){ $(window).trigger('beforeunload'); }); + + FileList.createFileSummary(); }); diff --git a/apps/files/js/files.js b/apps/files/js/files.js index 4eb949c2ee..d729077ea7 100644 --- a/apps/files/js/files.js +++ b/apps/files/js/files.js @@ -265,204 +265,6 @@ $(document).ready(function() { e.preventDefault(); // prevent browser from doing anything, if file isn't dropped in dropZone }); - $.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('

'+$(element).data('text')+'

'); - } - }); - }); - $('#new').click(function(event){ - event.stopPropagation(); - }); - $('#new>a').click(function(){ - $('#new>ul').toggle(); - $('#new').toggleClass('active'); - }); - $('#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('

'+$(element).data('text')+'

'); - } - }); - - var type=$(this).data('type'); - var text=$(this).children('p').text(); - $(this).data('text',text); - $(this).children('p').remove(); - var form=$('
'); - var input=$(''); - 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-size',result.data.size); - 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('

'+li.data('text')+'

'); - $('#new>a').click(); - }); - }); - //do a background scan if needed scanFiles(); @@ -652,8 +454,9 @@ var createDragShadow = function(event){ if (elem.type === 'dir') { newtr.find('td.filename').attr('style','background-image:url('+OC.imagePath('core', 'filetypes/folder.png')+')'); } else { - getMimeIcon(elem.mime,function(path){ - newtr.find('td.filename').attr('style','background-image:url('+path+')'); + var path = getPathForPreview(elem.name); + lazyLoadPreview(path, elem.mime, function(previewpath){ + newtr.find('td.filename').attr('style','background-image:url('+previewpath+')'); }); } }); @@ -829,6 +632,23 @@ function getMimeIcon(mime, ready){ } getMimeIcon.cache={}; +function getPathForPreview(name) { + var path = $('#dir').val() + '/' + name; + return path; +} + +function lazyLoadPreview(path, mime, ready) { + getMimeIcon(mime,ready); + var x = $('#filestable').data('preview-x'); + var y = $('#filestable').data('preview-y'); + var previewURL = OC.Router.generate('core_ajax_preview', {file: encodeURIComponent(path), x:x, y:y}); + $.get(previewURL, function() { + previewURL = previewURL.replace('(','%28'); + previewURL = previewURL.replace(')','%29'); + ready(previewURL + '&reload=true'); + }); +} + function getUniqueName(name){ if($('tr').filterAttr('data-file',name).length>0){ var parts=name.split('.'); diff --git a/apps/files/js/keyboardshortcuts.js b/apps/files/js/keyboardshortcuts.js index 418c38adb9..9d6c3ae8c3 100644 --- a/apps/files/js/keyboardshortcuts.js +++ b/apps/files/js/keyboardshortcuts.js @@ -131,7 +131,9 @@ var Files = Files || {}; return; } var preventDefault = false; - if ($.inArray(event.keyCode, keys) === -1) keys.push(event.keyCode); + if ($.inArray(event.keyCode, keys) === -1) { + keys.push(event.keyCode); + } if ( $.inArray(keyCodes.n, keys) !== -1 && ($.inArray(keyCodes.cmdFirefox, keys) !== -1 || $.inArray(keyCodes.cmdOpera, keys) !== -1 || $.inArray(keyCodes.leftCmdWebKit, keys) !== -1 || $.inArray(keyCodes.rightCmdWebKit, keys) !== -1 || $.inArray(keyCodes.ctrl, keys) !== -1 || event.ctrlKey)) { preventDefault = true; //new file/folder prevent browser from responding diff --git a/apps/files/l10n/ar.php b/apps/files/l10n/ar.php index 7161e49a96..99eb409a36 100644 --- a/apps/files/l10n/ar.php +++ b/apps/files/l10n/ar.php @@ -2,6 +2,8 @@ $TRANSLATIONS = array( "Could not move %s - File with this name already exists" => "فشل في نقل الملف %s - يوجد ملف بنفس هذا الاسم", "Could not move %s" => "فشل في نقل %s", +"Unable to set upload directory." => "غير قادر على تحميل المجلد", +"Invalid Token" => "علامة غير صالحة", "No file was uploaded. Unknown error" => "لم يتم رفع أي ملف , خطأ غير معروف", "There is no error, the file uploaded with success" => "تم ترفيع الملفات بنجاح.", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "حجم الملف المرفوع تجاوز قيمة upload_max_filesize الموجودة في ملف php.ini ", @@ -11,12 +13,15 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "المجلد المؤقت غير موجود", "Failed to write to disk" => "خطأ في الكتابة على القرص الصلب", "Not enough storage available" => "لا يوجد مساحة تخزينية كافية", +"Upload failed" => "عملية الرفع فشلت", "Invalid directory." => "مسار غير صحيح.", "Files" => "الملفات", "Unable to upload your file as it is a directory or has 0 bytes" => "فشل في رفع ملفاتك , إما أنها مجلد أو حجمها 0 بايت", +"Not enough space available" => "لا توجد مساحة كافية", "Upload cancelled." => "تم إلغاء عملية رفع الملفات .", "File upload is in progress. Leaving the page now will cancel the upload." => "عملية رفع الملفات قيد التنفيذ. اغلاق الصفحة سوف يلغي عملية رفع الملفات.", "URL cannot be empty." => "عنوان ال URL لا يجوز أن يكون فارغا.", +"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "تسمية ملف غير صالحة. استخدام الاسم \"shared\" محجوز بواسطة ownCloud", "Error" => "خطأ", "Share" => "شارك", "Delete permanently" => "حذف بشكل دائم", @@ -28,19 +33,21 @@ $TRANSLATIONS = array( "cancel" => "إلغاء", "replaced {new_name} with {old_name}" => "استبدل {new_name} بـ {old_name}", "undo" => "تراجع", +"_%n folder_::_%n folders_" => array("","","","","",""), +"_%n file_::_%n files_" => array("","","","","",""), +"{dirs} and {files}" => "{dirs} و {files}", "_Uploading %n file_::_Uploading %n files_" => array("","","","","",""), +"files uploading" => "يتم تحميل الملفات", "'.' is an invalid file name." => "\".\" اسم ملف غير صحيح.", "File name cannot be empty." => "اسم الملف لا يجوز أن يكون فارغا", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "اسم غير صحيح , الرموز '\\', '/', '<', '>', ':', '\"', '|', '?' و \"*\" غير مسموح استخدامها", "Your storage is full, files can not be updated or synced anymore!" => "مساحتك التخزينية ممتلئة, لا يمكم تحديث ملفاتك أو مزامنتها بعد الآن !", "Your storage is almost full ({usedSpacePercent}%)" => "مساحتك التخزينية امتلأت تقريبا ", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "تم تعطيل التشفير لكن ملفاتك لا تزال مشفرة. فضلا اذهب إلى الإعدادات الشخصية لإزالة التشفير عن ملفاتك.", "Your download is being prepared. This might take some time if the files are big." => "جاري تجهيز عملية التحميل. قد تستغرق بعض الوقت اذا كان حجم الملفات كبير.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "إسم مجلد غير صحيح. استخدام مصطلح \"Shared\" محجوز للنظام", "Name" => "اسم", "Size" => "حجم", "Modified" => "معدل", -"_%n folder_::_%n folders_" => array("","","","","",""), -"_%n file_::_%n files_" => array("","","","","",""), "Upload" => "رفع", "File handling" => "التعامل مع الملف", "Maximum upload size" => "الحد الأقصى لحجم الملفات التي يمكن رفعها", diff --git a/apps/files/l10n/bg_BG.php b/apps/files/l10n/bg_BG.php index 1e2104370b..913875e863 100644 --- a/apps/files/l10n/bg_BG.php +++ b/apps/files/l10n/bg_BG.php @@ -6,6 +6,7 @@ $TRANSLATIONS = array( "No file was uploaded" => "Фахлът не бе качен", "Missing a temporary folder" => "Липсва временна папка", "Failed to write to disk" => "Възникна проблем при запис в диска", +"Upload failed" => "Качването е неуспешно", "Invalid directory." => "Невалидна директория.", "Files" => "Файлове", "Upload cancelled." => "Качването е спряно.", @@ -17,12 +18,12 @@ $TRANSLATIONS = array( "replace" => "препокриване", "cancel" => "отказ", "undo" => "възтановяване", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "Name" => "Име", "Size" => "Размер", "Modified" => "Променено", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "Upload" => "Качване", "Maximum upload size" => "Максимален размер за качване", "0 is unlimited" => "Ползвайте 0 за без ограничения", @@ -36,7 +37,6 @@ $TRANSLATIONS = array( "Delete" => "Изтриване", "Upload too large" => "Файлът който сте избрали за качване е прекалено голям", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Файловете които се опитвате да качите са по-големи от позволеното за сървъра.", -"Files are being scanned, please wait." => "Файловете се претърсват, изчакайте.", -"file" => "файл" +"Files are being scanned, please wait." => "Файловете се претърсват, изчакайте." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/bn_BD.php b/apps/files/l10n/bn_BD.php index 2f05a3eccf..2265c232a1 100644 --- a/apps/files/l10n/bn_BD.php +++ b/apps/files/l10n/bn_BD.php @@ -27,16 +27,15 @@ $TRANSLATIONS = array( "cancel" => "বাতিল", "replaced {new_name} with {old_name}" => "{new_name} কে {old_name} নামে প্রতিস্থাপন করা হয়েছে", "undo" => "ক্রিয়া প্রত্যাহার", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "'.' is an invalid file name." => "টি একটি অননুমোদিত নাম।", "File name cannot be empty." => "ফাইলের নামটি ফাঁকা রাখা যাবে না।", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "নামটি সঠিক নয়, '\\', '/', '<', '>', ':', '\"', '|', '?' এবং '*' অনুমোদিত নয়।", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "ফোল্ডারের নামটি সঠিক নয়। 'ভাগাভাগি করা' শুধুমাত্র Owncloud এর জন্য সংরক্ষিত।", "Name" => "রাম", "Size" => "আকার", "Modified" => "পরিবর্তিত", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "Upload" => "আপলোড", "File handling" => "ফাইল হ্যার্ডলিং", "Maximum upload size" => "আপলোডের সর্বোচ্চ আকার", diff --git a/apps/files/l10n/ca.php b/apps/files/l10n/ca.php index 3ce9a41777..648ffce79d 100644 --- a/apps/files/l10n/ca.php +++ b/apps/files/l10n/ca.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Falta un fitxer temporal", "Failed to write to disk" => "Ha fallat en escriure al disc", "Not enough storage available" => "No hi ha prou espai disponible", +"Upload failed" => "La pujada ha fallat", "Invalid directory." => "Directori no vàlid.", "Files" => "Fitxers", "Unable to upload your file as it is a directory or has 0 bytes" => "No es pot pujar el fitxer perquè és una carpeta o té 0 bytes", @@ -32,20 +33,20 @@ $TRANSLATIONS = array( "cancel" => "cancel·la", "replaced {new_name} with {old_name}" => "s'ha substituït {old_name} per {new_name}", "undo" => "desfés", -"_Uploading %n file_::_Uploading %n files_" => array("",""), +"_%n folder_::_%n folders_" => array("%n carpeta","%n carpetes"), +"_%n file_::_%n files_" => array("%n fitxer","%n fitxers"), +"_Uploading %n file_::_Uploading %n files_" => array("Pujant %n fitxer","Pujant %n fitxers"), "files uploading" => "fitxers pujant", "'.' 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.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "El nóm no és vàlid, '\\', '/', '<', '>', ':', '\"', '|', '?' i '*' no estan permesos.", "Your storage is full, files can not be updated or synced anymore!" => "El vostre espai d'emmagatzemament és ple, els fitxers ja no es poden actualitzar o sincronitzar!", "Your storage is almost full ({usedSpacePercent}%)" => "El vostre espai d'emmagatzemament és gairebé ple ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "L'encriptació s'ha desactivat però els vostres fitxers segueixen encriptats. Aneu a la vostra configuració personal per desencriptar els vostres fitxers.", "Your download is being prepared. This might take some time if the files are big." => "S'està preparant la baixada. Pot trigar una estona si els fitxers són grans.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nom de carpeta no vàlid. L'ús de 'Shared' està reservat per Owncloud", "Name" => "Nom", "Size" => "Mida", "Modified" => "Modificat", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "%s could not be renamed" => "%s no es pot canviar el nom", "Upload" => "Puja", "File handling" => "Gestió de fitxers", @@ -71,10 +72,6 @@ $TRANSLATIONS = array( "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", "Current scanning" => "Actualment escanejant", -"directory" => "directori", -"directories" => "directoris", -"file" => "fitxer", -"files" => "fitxers", "Upgrading filesystem cache..." => "Actualitzant la memòria de cau del sistema de fitxers..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/cs_CZ.php b/apps/files/l10n/cs_CZ.php index a2131c2d20..691cc92f1a 100644 --- a/apps/files/l10n/cs_CZ.php +++ b/apps/files/l10n/cs_CZ.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Chybí adresář pro dočasné soubory", "Failed to write to disk" => "Zápis na disk selhal", "Not enough storage available" => "Nedostatek dostupného úložného prostoru", +"Upload failed" => "Odesílání selhalo", "Invalid directory." => "Neplatný adresář", "Files" => "Soubory", "Unable to upload your file as it is a directory or has 0 bytes" => "Nelze odeslat Váš soubor, protože je to adresář nebo jeho velikost je 0 bajtů", @@ -32,6 +33,9 @@ $TRANSLATIONS = array( "cancel" => "zrušit", "replaced {new_name} with {old_name}" => "nahrazeno {new_name} s {old_name}", "undo" => "vrátit zpět", +"_%n folder_::_%n folders_" => array("%n složka","%n složky","%n složek"), +"_%n file_::_%n files_" => array("%n soubor","%n soubory","%n souborů"), +"{dirs} and {files}" => "{dirs} a {files}", "_Uploading %n file_::_Uploading %n files_" => array("Nahrávám %n soubor","Nahrávám %n soubory","Nahrávám %n souborů"), "files uploading" => "soubory se odesílají", "'.' is an invalid file name." => "'.' je neplatným názvem souboru.", @@ -39,13 +43,11 @@ $TRANSLATIONS = array( "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Neplatný název, znaky '\\', '/', '<', '>', ':', '\"', '|', '?' a '*' nejsou povoleny.", "Your storage is full, files can not be updated or synced anymore!" => "Vaše úložiště je plné, nelze aktualizovat ani synchronizovat soubory.", "Your storage is almost full ({usedSpacePercent}%)" => "Vaše úložiště je téměř plné ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Šifrování bylo vypnuto, vaše soubory jsou však stále zašifrované. Běžte prosím do osobního nastavení, kde soubory odšifrujete.", "Your download is being prepared. This might take some time if the files are big." => "Vaše soubory ke stažení se připravují. Pokud jsou velké, může to chvíli trvat.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Neplatný název složky. Pojmenování 'Shared' je rezervováno pro vnitřní potřeby ownCloud", "Name" => "Název", "Size" => "Velikost", "Modified" => "Upraveno", -"_%n folder_::_%n folders_" => array("%n složka","%n složky","%n složek"), -"_%n file_::_%n files_" => array("%n soubor","%n soubory","%n souborů"), "%s could not be renamed" => "%s nemůže být přejmenován", "Upload" => "Odeslat", "File handling" => "Zacházení se soubory", @@ -71,10 +73,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Aktuální prohledávání", -"directory" => "adresář", -"directories" => "adresáře", -"file" => "soubor", -"files" => "soubory", "Upgrading filesystem cache..." => "Aktualizuji mezipaměť souborového systému..." ); $PLURAL_FORMS = "nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;"; diff --git a/apps/files/l10n/cy_GB.php b/apps/files/l10n/cy_GB.php index 01c4613a8c..157f4f89a2 100644 --- a/apps/files/l10n/cy_GB.php +++ b/apps/files/l10n/cy_GB.php @@ -11,6 +11,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Plygell dros dro yn eisiau", "Failed to write to disk" => "Methwyd ysgrifennu i'r ddisg", "Not enough storage available" => "Dim digon o le storio ar gael", +"Upload failed" => "Methwyd llwytho i fyny", "Invalid directory." => "Cyfeiriadur annilys.", "Files" => "Ffeiliau", "Unable to upload your file as it is a directory or has 0 bytes" => "Methu llwytho'ch ffeil i fyny gan ei fod yn gyferiadur neu'n cynnwys 0 beit", @@ -29,6 +30,8 @@ $TRANSLATIONS = array( "cancel" => "diddymu", "replaced {new_name} with {old_name}" => "newidiwyd {new_name} yn lle {old_name}", "undo" => "dadwneud", +"_%n folder_::_%n folders_" => array("","","",""), +"_%n file_::_%n files_" => array("","","",""), "_Uploading %n file_::_Uploading %n files_" => array("","","",""), "files uploading" => "ffeiliau'n llwytho i fyny", "'.' is an invalid file name." => "Mae '.' yn enw ffeil annilys.", @@ -37,12 +40,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Mae eich storfa'n llawn, ni ellir diweddaru a chydweddu ffeiliau mwyach!", "Your storage is almost full ({usedSpacePercent}%)" => "Mae eich storfa bron a bod yn llawn ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Wrthi'n paratoi i lwytho i lawr. Gall gymryd peth amser os yw'r ffeiliau'n fawr.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Enw plygell annilys. Mae'r defnydd o 'Shared' yn cael ei gadw gan Owncloud", "Name" => "Enw", "Size" => "Maint", "Modified" => "Addaswyd", -"_%n folder_::_%n folders_" => array("","","",""), -"_%n file_::_%n files_" => array("","","",""), "Upload" => "Llwytho i fyny", "File handling" => "Trafod ffeiliau", "Maximum upload size" => "Maint mwyaf llwytho i fyny", diff --git a/apps/files/l10n/da.php b/apps/files/l10n/da.php index 0491eefb7f..aab12986ec 100644 --- a/apps/files/l10n/da.php +++ b/apps/files/l10n/da.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Manglende midlertidig mappe.", "Failed to write to disk" => "Fejl ved skrivning til disk.", "Not enough storage available" => "Der er ikke nok plads til rådlighed", +"Upload failed" => "Upload fejlede", "Invalid directory." => "Ugyldig mappe.", "Files" => "Filer", "Unable to upload your file as it is a directory or has 0 bytes" => "Kan ikke uploade din fil - det er enten en mappe eller en fil med et indhold på 0 bytes.", @@ -32,6 +33,9 @@ $TRANSLATIONS = array( "cancel" => "fortryd", "replaced {new_name} with {old_name}" => "erstattede {new_name} med {old_name}", "undo" => "fortryd", +"_%n folder_::_%n folders_" => array("%n mappe","%n mapper"), +"_%n file_::_%n files_" => array("%n fil","%n filer"), +"{dirs} and {files}" => "{dirs} og {files}", "_Uploading %n file_::_Uploading %n files_" => array("Uploader %n fil","Uploader %n filer"), "files uploading" => "uploader filer", "'.' is an invalid file name." => "'.' er et ugyldigt filnavn.", @@ -39,20 +43,18 @@ $TRANSLATIONS = array( "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ugyldigt navn, '\\', '/', '<', '>', ':' | '?', '\"', '', og '*' er ikke tilladt.", "Your storage is full, files can not be updated or synced anymore!" => "Din opbevaringsplads er fyldt op, filer kan ikke opdateres eller synkroniseres længere!", "Your storage is almost full ({usedSpacePercent}%)" => "Din opbevaringsplads er næsten fyldt op ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Krypteringen blev deaktiveret, men dine filer er stadig krypteret. Gå venligst til dine personlige indstillinger for at dekryptere dine filer. ", "Your download is being prepared. This might take some time if the files are big." => "Dit download forberedes. Dette kan tage lidt tid ved større filer.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ugyldigt mappenavn. Brug af \"Shared\" er forbeholdt Owncloud", "Name" => "Navn", "Size" => "Størrelse", "Modified" => "Ændret", -"_%n folder_::_%n folders_" => array("%n mappe","%n mapper"), -"_%n file_::_%n files_" => array("%n fil","%n filer"), "%s could not be renamed" => "%s kunne ikke omdøbes", "Upload" => "Upload", "File handling" => "Filhåndtering", "Maximum upload size" => "Maksimal upload-størrelse", "max. possible: " => "max. mulige: ", "Needed for multi-file and folder downloads." => "Nødvendigt for at kunne downloade mapper og flere filer ad gangen.", -"Enable ZIP-download" => "Muliggør ZIP-download", +"Enable ZIP-download" => "Tillad ZIP-download", "0 is unlimited" => "0 er ubegrænset", "Maximum input size for ZIP files" => "Maksimal størrelse på ZIP filer", "Save" => "Gem", @@ -71,10 +73,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Indlæser", -"directory" => "mappe", -"directories" => "Mapper", -"file" => "fil", -"files" => "filer", "Upgrading filesystem cache..." => "Opgraderer filsystems cachen..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/de.php b/apps/files/l10n/de.php index c6c76dbf46..947d4f0746 100644 --- a/apps/files/l10n/de.php +++ b/apps/files/l10n/de.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Kein temporärer Ordner vorhanden", "Failed to write to disk" => "Fehler beim Schreiben auf die Festplatte", "Not enough storage available" => "Nicht genug Speicher vorhanden.", +"Upload failed" => "Hochladen fehlgeschlagen", "Invalid directory." => "Ungültiges Verzeichnis.", "Files" => "Dateien", "Unable to upload your file as it is a directory or has 0 bytes" => "Deine Datei kann nicht hochgeladen werden, weil es sich um einen Ordner handelt oder 0 Bytes groß ist.", @@ -32,6 +33,9 @@ $TRANSLATIONS = array( "cancel" => "abbrechen", "replaced {new_name} with {old_name}" => "{old_name} ersetzt durch {new_name}", "undo" => "rückgängig machen", +"_%n folder_::_%n folders_" => array("%n Ordner","%n Ordner"), +"_%n file_::_%n files_" => array("%n Datei","%n Dateien"), +"{dirs} and {files}" => "{dirs} und {files}", "_Uploading %n file_::_Uploading %n files_" => array("%n Datei wird hochgeladen","%n Dateien werden hochgeladen"), "files uploading" => "Dateien werden hoch geladen", "'.' is an invalid file name." => "'.' ist kein gültiger Dateiname.", @@ -39,13 +43,11 @@ $TRANSLATIONS = array( "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ungültiger Name, '\\', '/', '<', '>', ':', '\"', '|', '?' und '*' sind nicht zulässig.", "Your storage is full, files can not be updated or synced anymore!" => "Dein Speicher ist voll, daher können keine Dateien mehr aktualisiert oder synchronisiert werden!", "Your storage is almost full ({usedSpacePercent}%)" => "Dein Speicher ist fast voll ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Die Verschlüsselung wurde deaktiviert, jedoch sind deine Dateien nach wie vor verschlüsselt. Bitte gehe zu deinen persönlichen Einstellungen, um deine Dateien zu entschlüsseln.", "Your download is being prepared. This might take some time if the files are big." => "Dein Download wird vorbereitet. Dies kann bei größeren Dateien etwas dauern.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ungültiger Verzeichnisname. Die Nutzung von \"Shared\" ist ownCloud vorbehalten.", "Name" => "Name", "Size" => "Größe", "Modified" => "Geändert", -"_%n folder_::_%n folders_" => array("%n Ordner","%n Ordner"), -"_%n file_::_%n files_" => array("%n Datei","%n Dateien"), "%s could not be renamed" => "%s konnte nicht umbenannt werden", "Upload" => "Hochladen", "File handling" => "Dateibehandlung", @@ -71,10 +73,6 @@ $TRANSLATIONS = array( "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Die Datei überschreitet die Maximalgröße für Uploads auf diesem Server.", "Files are being scanned, please wait." => "Dateien werden gescannt, bitte warten.", "Current scanning" => "Scanne", -"directory" => "Verzeichnis", -"directories" => "Verzeichnisse", -"file" => "Datei", -"files" => "Dateien", "Upgrading filesystem cache..." => "Dateisystem-Cache wird aktualisiert ..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/de_DE.php b/apps/files/l10n/de_DE.php index e4d622d6ca..db07ed7fad 100644 --- a/apps/files/l10n/de_DE.php +++ b/apps/files/l10n/de_DE.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Kein temporärer Ordner vorhanden", "Failed to write to disk" => "Fehler beim Schreiben auf die Festplatte", "Not enough storage available" => "Nicht genug Speicher vorhanden.", +"Upload failed" => "Hochladen fehlgeschlagen", "Invalid directory." => "Ungültiges Verzeichnis.", "Files" => "Dateien", "Unable to upload your file as it is a directory or has 0 bytes" => "Ihre Datei kann nicht hochgeladen werden, weil es sich um einen Ordner handelt oder 0 Bytes groß ist.", @@ -32,6 +33,9 @@ $TRANSLATIONS = array( "cancel" => "abbrechen", "replaced {new_name} with {old_name}" => "{old_name} wurde ersetzt durch {new_name}", "undo" => "rückgängig machen", +"_%n folder_::_%n folders_" => array("%n Ordner","%n Ordner"), +"_%n file_::_%n files_" => array("%n Datei","%n Dateien"), +"{dirs} and {files}" => "{dirs} und {files}", "_Uploading %n file_::_Uploading %n files_" => array("%n Datei wird hoch geladen","%n Dateien werden hoch geladen"), "files uploading" => "Dateien werden hoch geladen", "'.' is an invalid file name." => "'.' ist kein gültiger Dateiname.", @@ -39,13 +43,11 @@ $TRANSLATIONS = array( "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ungültiger Name, '\\', '/', '<', '>', ':', '\"', '|', '?' und '*' sind nicht zulässig.", "Your storage is full, files can not be updated or synced anymore!" => "Ihr Speicher ist voll, daher können keine Dateien mehr aktualisiert oder synchronisiert werden!", "Your storage is almost full ({usedSpacePercent}%)" => "Ihr Speicher ist fast voll ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Die Verschlüsselung wurde deaktiviert, jedoch sind Ihre Dateien nach wie vor verschlüsselt. Bitte gehen Sie zu Ihren persönlichen Einstellungen, um Ihre Dateien zu entschlüsseln.", "Your download is being prepared. This might take some time if the files are big." => "Ihr Download wird vorbereitet. Dies kann bei größeren Dateien etwas dauern.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ungültiger Verzeichnisname. Die Nutzung von \"Shared\" ist ownCloud vorbehalten", "Name" => "Name", "Size" => "Größe", "Modified" => "Geändert", -"_%n folder_::_%n folders_" => array("%n Ordner","%n Ordner"), -"_%n file_::_%n files_" => array("%n Datei","%n Dateien"), "%s could not be renamed" => "%s konnte nicht umbenannt werden", "Upload" => "Hochladen", "File handling" => "Dateibehandlung", @@ -71,10 +73,6 @@ $TRANSLATIONS = array( "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Die Datei überschreitet die Maximalgröße für Uploads auf diesem Server.", "Files are being scanned, please wait." => "Dateien werden gescannt, bitte warten.", "Current scanning" => "Scanne", -"directory" => "Verzeichnis", -"directories" => "Verzeichnisse", -"file" => "Datei", -"files" => "Dateien", "Upgrading filesystem cache..." => "Dateisystem-Cache wird aktualisiert ..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/el.php b/apps/files/l10n/el.php index e1d0052bc0..8c89e5e1fe 100644 --- a/apps/files/l10n/el.php +++ b/apps/files/l10n/el.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Λείπει ο προσωρινός φάκελος", "Failed to write to disk" => "Αποτυχία εγγραφής στο δίσκο", "Not enough storage available" => "Μη επαρκής διαθέσιμος αποθηκευτικός χώρος", +"Upload failed" => "Η μεταφόρτωση απέτυχε", "Invalid directory." => "Μη έγκυρος φάκελος.", "Files" => "Αρχεία", "Unable to upload your file as it is a directory or has 0 bytes" => "Αδυναμία στην αποστολή του αρχείου σας αφού είναι φάκελος ή έχει 0 bytes", @@ -32,20 +33,20 @@ $TRANSLATIONS = array( "cancel" => "ακύρωση", "replaced {new_name} with {old_name}" => "αντικαταστάθηκε το {new_name} με {old_name}", "undo" => "αναίρεση", -"_Uploading %n file_::_Uploading %n files_" => array("",""), +"_%n folder_::_%n folders_" => array("%n φάκελος","%n φάκελοι"), +"_%n file_::_%n files_" => array("%n αρχείο","%n αρχεία"), +"_Uploading %n file_::_Uploading %n files_" => array("Ανέβασμα %n αρχείου","Ανέβασμα %n αρχείων"), "files uploading" => "αρχεία ανεβαίνουν", "'.' is an invalid file name." => "'.' είναι μη έγκυρο όνομα αρχείου.", "File name cannot be empty." => "Το όνομα αρχείου δεν μπορεί να είναι κενό.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Μη έγκυρο όνομα, '\\', '/', '<', '>', ':', '\"', '|', '?' και '*' δεν επιτρέπονται.", "Your storage is full, files can not be updated or synced anymore!" => "Ο αποθηκευτικός σας χώρος είναι γεμάτος, τα αρχεία δεν μπορούν να ενημερωθούν ή να συγχρονιστούν πια!", "Your storage is almost full ({usedSpacePercent}%)" => "Ο αποθηκευτικός χώρος είναι σχεδόν γεμάτος ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Η κρυπτογράφηση απενεργοποιήθηκε, αλλά τα αρχεία σας είναι ακόμα κρυπτογραφημένα. Παρακαλούμε απενεργοποιήσετε την κρυπτογράφηση αρχείων από τις προσωπικές σας ρυθμίσεις", "Your download is being prepared. This might take some time if the files are big." => "Η λήψη προετοιμάζεται. Αυτό μπορεί να πάρει ώρα εάν τα αρχεία έχουν μεγάλο μέγεθος.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Μη έγκυρο όνομα φακέλου. Η χρήση του 'Κοινόχρηστος' χρησιμοποιείται από ο Owncloud", "Name" => "Όνομα", "Size" => "Μέγεθος", "Modified" => "Τροποποιήθηκε", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "%s could not be renamed" => "Αδυναμία μετονομασίας του %s", "Upload" => "Μεταφόρτωση", "File handling" => "Διαχείριση αρχείων", @@ -71,10 +72,6 @@ $TRANSLATIONS = array( "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Τα αρχεία που προσπαθείτε να ανεβάσετε υπερβαίνουν το μέγιστο μέγεθος αποστολής αρχείων σε αυτόν τον διακομιστή.", "Files are being scanned, please wait." => "Τα αρχεία σαρώνονται, παρακαλώ περιμένετε.", "Current scanning" => "Τρέχουσα ανίχνευση", -"directory" => "κατάλογος", -"directories" => "κατάλογοι", -"file" => "αρχείο", -"files" => "αρχεία", "Upgrading filesystem cache..." => "Ενημέρωση της μνήμης cache του συστήματος αρχείων..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/en@pirate.php b/apps/files/l10n/en@pirate.php index 83351f265f..128f527aef 100644 --- a/apps/files/l10n/en@pirate.php +++ b/apps/files/l10n/en@pirate.php @@ -1,8 +1,8 @@ array("",""), "_%n folder_::_%n folders_" => array("",""), "_%n file_::_%n files_" => array("",""), +"_Uploading %n file_::_Uploading %n files_" => array("",""), "Download" => "Download" ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/eo.php b/apps/files/l10n/eo.php index 0f404fa29f..ad538f2f2a 100644 --- a/apps/files/l10n/eo.php +++ b/apps/files/l10n/eo.php @@ -11,6 +11,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Mankas provizora dosierujo.", "Failed to write to disk" => "Malsukcesis skribo al disko", "Not enough storage available" => "Ne haveblas sufiĉa memoro", +"Upload failed" => "Alŝuto malsukcesis", "Invalid directory." => "Nevalida dosierujo.", "Files" => "Dosieroj", "Unable to upload your file as it is a directory or has 0 bytes" => "Ne eblis alŝuti vian dosieron ĉar ĝi estas dosierujo aŭ havas 0 duumokojn", @@ -30,6 +31,8 @@ $TRANSLATIONS = array( "cancel" => "nuligi", "replaced {new_name} with {old_name}" => "anstataŭiĝis {new_name} per {old_name}", "undo" => "malfari", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "files uploading" => "dosieroj estas alŝutataj", "'.' is an invalid file name." => "'.' ne estas valida dosiernomo.", @@ -38,12 +41,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Via memoro plenas, ne plu eblas ĝisdatigi aŭ sinkronigi dosierojn!", "Your storage is almost full ({usedSpacePercent}%)" => "Via memoro preskaŭ plenas ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Via elŝuto pretiĝatas. Ĉi tio povas daŭri iom da tempo se la dosieroj grandas.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nevalida dosierujnomo. Uzo de “Shared” rezervatas de Owncloud.", "Name" => "Nomo", "Size" => "Grando", "Modified" => "Modifita", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "Upload" => "Alŝuti", "File handling" => "Dosieradministro", "Maximum upload size" => "Maksimuma alŝutogrando", @@ -68,8 +68,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Nuna skano", -"file" => "dosiero", -"files" => "dosieroj", "Upgrading filesystem cache..." => "Ĝisdatiĝas dosiersistema kaŝmemoro..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/es.php b/apps/files/l10n/es.php index 2672b16954..7a5785577a 100644 --- a/apps/files/l10n/es.php +++ b/apps/files/l10n/es.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Falta la carpeta temporal", "Failed to write to disk" => "Falló al escribir al disco", "Not enough storage available" => "No hay suficiente espacio disponible", +"Upload failed" => "Error en la subida", "Invalid directory." => "Directorio inválido.", "Files" => "Archivos", "Unable to upload your file as it is a directory or has 0 bytes" => "Incapaz de subir su archivo, es un directorio o tiene 0 bytes", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "cancelar", "replaced {new_name} with {old_name}" => "reemplazado {new_name} con {old_name}", "undo" => "deshacer", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "files uploading" => "subiendo archivos", "'.' is an invalid file name." => "'.' no es un nombre de archivo válido.", @@ -40,12 +43,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Su almacenamiento está lleno, ¡no se pueden actualizar o sincronizar más!", "Your storage is almost full ({usedSpacePercent}%)" => "Su almacenamiento está casi lleno ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Su descarga está siendo preparada. Esto puede tardar algún tiempo si los archivos son grandes.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nombre de carpeta no es válido. El uso de \"Shared\" está reservado por Owncloud", "Name" => "Nombre", "Size" => "Tamaño", "Modified" => "Modificado", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "%s could not be renamed" => "%s no se pudo renombrar", "Upload" => "Subir", "File handling" => "Manejo de archivos", @@ -71,10 +71,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Escaneo actual", -"directory" => "carpeta", -"directories" => "carpetas", -"file" => "archivo", -"files" => "archivos", "Upgrading filesystem cache..." => "Actualizando caché del sistema de archivos" ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/es_AR.php b/apps/files/l10n/es_AR.php index 5e94da3c43..1c26c10028 100644 --- a/apps/files/l10n/es_AR.php +++ b/apps/files/l10n/es_AR.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Falta un directorio temporal", "Failed to write to disk" => "Error al escribir en el disco", "Not enough storage available" => "No hay suficiente almacenamiento", +"Upload failed" => "Error al subir el archivo", "Invalid directory." => "Directorio inválido.", "Files" => "Archivos", "Unable to upload your file as it is a directory or has 0 bytes" => "No fue posible subir el archivo porque es un directorio o porque su tamaño es 0 bytes", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "cancelar", "replaced {new_name} with {old_name}" => "se reemplazó {new_name} con {old_name}", "undo" => "deshacer", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "files uploading" => "Subiendo archivos", "'.' is an invalid file name." => "'.' es un nombre de archivo inválido.", @@ -39,13 +42,11 @@ $TRANSLATIONS = array( "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nombre invalido, '\\', '/', '<', '>', ':', '\"', '|', '?' y '*' no están permitidos.", "Your storage is full, files can not be updated or synced anymore!" => "El almacenamiento está lleno, los archivos no se pueden seguir actualizando ni sincronizando", "Your storage is almost full ({usedSpacePercent}%)" => "El almacenamiento está casi lleno ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "El proceso de cifrado se ha desactivado, pero los archivos aún están encriptados. Por favor, vaya a la configuración personal para descifrar los archivos.", "Your download is being prepared. This might take some time if the files are big." => "Tu descarga se está preparando. Esto puede demorar si los archivos son muy grandes.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nombre de carpeta inválido. El uso de 'Shared' está reservado por ownCloud", "Name" => "Nombre", "Size" => "Tamaño", "Modified" => "Modificado", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "%s could not be renamed" => "No se pudo renombrar %s", "Upload" => "Subir", "File handling" => "Tratamiento de archivos", @@ -71,10 +72,6 @@ $TRANSLATIONS = array( "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á.", "Current scanning" => "Escaneo actual", -"directory" => "directorio", -"directories" => "directorios", -"file" => "archivo", -"files" => "archivos", "Upgrading filesystem cache..." => "Actualizando el cache del sistema de archivos" ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/et_EE.php b/apps/files/l10n/et_EE.php index 468f72e9d7..5a2bb437d3 100644 --- a/apps/files/l10n/et_EE.php +++ b/apps/files/l10n/et_EE.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Ajutiste failide kaust puudub", "Failed to write to disk" => "Kettale kirjutamine ebaõnnestus", "Not enough storage available" => "Saadaval pole piisavalt ruumi", +"Upload failed" => "Üleslaadimine ebaõnnestus", "Invalid directory." => "Vigane kaust.", "Files" => "Failid", "Unable to upload your file as it is a directory or has 0 bytes" => "Faili ei saa üles laadida, kuna see on kaust või selle suurus on 0 baiti", @@ -32,20 +33,20 @@ $TRANSLATIONS = array( "cancel" => "loobu", "replaced {new_name} with {old_name}" => "asendas nime {old_name} nimega {new_name}", "undo" => "tagasi", -"_Uploading %n file_::_Uploading %n files_" => array("",""), +"_%n folder_::_%n folders_" => array("%n kataloog","%n kataloogi"), +"_%n file_::_%n files_" => array("%n fail","%n faili"), +"_Uploading %n file_::_Uploading %n files_" => array("Laadin üles %n faili","Laadin üles %n faili"), "files uploading" => "faili üleslaadimisel", "'.' is an invalid file name." => "'.' on vigane failinimi.", "File name cannot be empty." => "Faili nimi ei saa olla tühi.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Vigane nimi, '\\', '/', '<', '>', ':', '\"', '|', '?' ja '*' pole lubatud.", "Your storage is full, files can not be updated or synced anymore!" => "Sinu andmemaht on täis! Faile ei uuendata ega sünkroniseerita!", "Your storage is almost full ({usedSpacePercent}%)" => "Su andmemaht on peaaegu täis ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Krüpteering on keelatud, kuid sinu failid on endiselt krüpteeritud. Palun vaata oma personaalseid seadeid oma failide dekrüpteerimiseks.", "Your download is being prepared. This might take some time if the files are big." => "Valmistatakse allalaadimist. See võib võtta veidi aega, kui on tegu suurte failidega. ", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Vigane kataloogi nimi. 'Shared' kasutamine on reserveeritud ownCloud poolt.", "Name" => "Nimi", "Size" => "Suurus", "Modified" => "Muudetud", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "%s could not be renamed" => "%s ümbernimetamine ebaõnnestus", "Upload" => "Lae üles", "File handling" => "Failide käsitlemine", @@ -71,10 +72,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Praegune skannimine", -"directory" => "kaust", -"directories" => "kaustad", -"file" => "fail", -"files" => "faili", "Upgrading filesystem cache..." => "Failisüsteemi puhvri uuendamine..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/eu.php b/apps/files/l10n/eu.php index fe6e117a93..524be56af0 100644 --- a/apps/files/l10n/eu.php +++ b/apps/files/l10n/eu.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Aldi bateko karpeta falta da", "Failed to write to disk" => "Errore bat izan da diskoan idazterakoan", "Not enough storage available" => "Ez dago behar aina leku erabilgarri,", +"Upload failed" => "igotzeak huts egin du", "Invalid directory." => "Baliogabeko karpeta.", "Files" => "Fitxategiak", "Unable to upload your file as it is a directory or has 0 bytes" => "Ezin izan da zure fitxategia igo karpeta bat delako edo 0 byte dituelako", @@ -32,20 +33,20 @@ $TRANSLATIONS = array( "cancel" => "ezeztatu", "replaced {new_name} with {old_name}" => " {new_name}-k {old_name} ordezkatu du", "undo" => "desegin", -"_Uploading %n file_::_Uploading %n files_" => array("",""), +"_%n folder_::_%n folders_" => array("karpeta %n","%n karpeta"), +"_%n file_::_%n files_" => array("fitxategi %n","%n fitxategi"), +"_Uploading %n file_::_Uploading %n files_" => array("Fitxategi %n igotzen","%n fitxategi igotzen"), "files uploading" => "fitxategiak igotzen", "'.' is an invalid file name." => "'.' ez da fitxategi izen baliogarria.", "File name cannot be empty." => "Fitxategi izena ezin da hutsa izan.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "IZen aliogabea, '\\', '/', '<', '>', ':', '\"', '|', '?' eta '*' ez daude baimenduta.", "Your storage is full, files can not be updated or synced anymore!" => "Zure biltegiratzea beterik dago, ezingo duzu aurrerantzean fitxategirik igo edo sinkronizatu!", "Your storage is almost full ({usedSpacePercent}%)" => "Zure biltegiratzea nahiko beterik dago (%{usedSpacePercent})", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Enkriptazioa desgaitua izan da baina zure fitxategiak oraindik enkriptatuta daude. Mesedez jo zure ezarpen pertsonaletara zure fitxategiak dekodifikatzeko.", "Your download is being prepared. This might take some time if the files are big." => "Zure deskarga prestatu egin behar da. Denbora bat har lezake fitxategiak handiak badira. ", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Baliogabeako karpeta izena. 'Shared' izena Owncloudek erreserbatzen du", "Name" => "Izena", "Size" => "Tamaina", "Modified" => "Aldatuta", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "%s could not be renamed" => "%s ezin da berrizendatu", "Upload" => "Igo", "File handling" => "Fitxategien kudeaketa", @@ -71,10 +72,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Orain eskaneatzen ari da", -"directory" => "direktorioa", -"directories" => "direktorioak", -"file" => "fitxategia", -"files" => "fitxategiak", "Upgrading filesystem cache..." => "Fitxategi sistemaren katxea eguneratzen..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/fa.php b/apps/files/l10n/fa.php index 96332921cf..24584f715b 100644 --- a/apps/files/l10n/fa.php +++ b/apps/files/l10n/fa.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "یک پوشه موقت گم شده", "Failed to write to disk" => "نوشتن بر روی دیسک سخت ناموفق بود", "Not enough storage available" => "فضای کافی در دسترس نیست", +"Upload failed" => "بارگزاری ناموفق بود", "Invalid directory." => "فهرست راهنما نامعتبر می باشد.", "Files" => "پرونده‌ها", "Unable to upload your file as it is a directory or has 0 bytes" => "ناتوان در بارگذاری یا فایل یک پوشه است یا 0بایت دارد", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "لغو", "replaced {new_name} with {old_name}" => "{نام_جدید} با { نام_قدیمی} جایگزین شد.", "undo" => "بازگشت", +"_%n folder_::_%n folders_" => array(""), +"_%n file_::_%n files_" => array(""), "_Uploading %n file_::_Uploading %n files_" => array(""), "files uploading" => "بارگذاری فایل ها", "'.' is an invalid file name." => "'.' یک نام پرونده نامعتبر است.", @@ -40,12 +43,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "فضای ذخیره ی شما کاملا پر است، بیش از این فایلها بهنگام یا همگام سازی نمی توانند بشوند!", "Your storage is almost full ({usedSpacePercent}%)" => "فضای ذخیره ی شما تقریبا پر است ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "دانلود شما در حال آماده شدن است. در صورتیکه پرونده ها بزرگ باشند ممکن است مدتی طول بکشد.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "نام پوشه نامعتبر است. استفاده از \" به اشتراک گذاشته شده \" متعلق به سایت Owncloud است.", "Name" => "نام", "Size" => "اندازه", "Modified" => "تاریخ", -"_%n folder_::_%n folders_" => array(""), -"_%n file_::_%n files_" => array(""), "%s could not be renamed" => "%s نمیتواند تغییر نام دهد.", "Upload" => "بارگزاری", "File handling" => "اداره پرونده ها", @@ -71,10 +71,6 @@ $TRANSLATIONS = array( "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." => "پرونده ها در حال بازرسی هستند لطفا صبر کنید", "Current scanning" => "بازرسی کنونی", -"directory" => "پوشه", -"directories" => "پوشه ها", -"file" => "پرونده", -"files" => "پرونده ها", "Upgrading filesystem cache..." => "بهبود فایل سیستمی ذخیره گاه..." ); $PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files/l10n/fi_FI.php b/apps/files/l10n/fi_FI.php index b48f44665b..1d29dbf79d 100644 --- a/apps/files/l10n/fi_FI.php +++ b/apps/files/l10n/fi_FI.php @@ -11,6 +11,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Tilapäiskansio puuttuu", "Failed to write to disk" => "Levylle kirjoitus epäonnistui", "Not enough storage available" => "Tallennustilaa ei ole riittävästi käytettävissä", +"Upload failed" => "Lähetys epäonnistui", "Invalid directory." => "Virheellinen kansio.", "Files" => "Tiedostot", "Unable to upload your file as it is a directory or has 0 bytes" => "Tiedoston lähetys epäonnistui, koska sen koko on 0 tavua tai kyseessä on kansio.", @@ -28,6 +29,9 @@ $TRANSLATIONS = array( "suggest name" => "ehdota nimeä", "cancel" => "peru", "undo" => "kumoa", +"_%n folder_::_%n folders_" => array("%n kansio","%n kansiota"), +"_%n file_::_%n files_" => array("%n tiedosto","%n tiedostoa"), +"{dirs} and {files}" => "{dirs} ja {files}", "_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.", "File name cannot be empty." => "Tiedoston nimi ei voi olla tyhjä.", @@ -38,8 +42,6 @@ $TRANSLATIONS = array( "Name" => "Nimi", "Size" => "Koko", "Modified" => "Muokattu", -"_%n folder_::_%n folders_" => array("%n kansio","%n kansiota"), -"_%n file_::_%n files_" => array("%n tiedosto","%n tiedostoa"), "Upload" => "Lähetä", "File handling" => "Tiedostonhallinta", "Maximum upload size" => "Lähetettävän tiedoston suurin sallittu koko", @@ -64,10 +66,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Tämänhetkinen tutkinta", -"directory" => "kansio", -"directories" => "kansiota", -"file" => "tiedosto", -"files" => "tiedostoa", "Upgrading filesystem cache..." => "Päivitetään tiedostojärjestelmän välimuistia..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/fr.php b/apps/files/l10n/fr.php index 6006413449..4e3b0de112 100644 --- a/apps/files/l10n/fr.php +++ b/apps/files/l10n/fr.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Absence de dossier temporaire.", "Failed to write to disk" => "Erreur d'écriture sur le disque", "Not enough storage available" => "Plus assez d'espace de stockage disponible", +"Upload failed" => "Échec de l'envoi", "Invalid directory." => "Dossier invalide.", "Files" => "Fichiers", "Unable to upload your file as it is a directory or has 0 bytes" => "Impossible d'envoyer votre fichier dans la mesure où il s'agit d'un répertoire ou d'un fichier de taille nulle", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "annuler", "replaced {new_name} with {old_name}" => "{new_name} a été remplacé par {old_name}", "undo" => "annuler", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "files uploading" => "fichiers en cours d'envoi", "'.' is an invalid file name." => "'.' n'est pas un nom de fichier valide.", @@ -40,12 +43,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Votre espage de stockage est plein, les fichiers ne peuvent plus être téléversés ou synchronisés !", "Your storage is almost full ({usedSpacePercent}%)" => "Votre espace de stockage est presque plein ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Votre téléchargement est cours de préparation. Ceci peut nécessiter un certain temps si les fichiers sont volumineux.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nom de dossier invalide. L'utilisation du mot 'Shared' est réservée à Owncloud", "Name" => "Nom", "Size" => "Taille", "Modified" => "Modifié", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "%s could not be renamed" => "%s ne peut être renommé", "Upload" => "Envoyer", "File handling" => "Gestion des fichiers", @@ -71,10 +71,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Analyse en cours", -"directory" => "dossier", -"directories" => "dossiers", -"file" => "fichier", -"files" => "fichiers", "Upgrading filesystem cache..." => "Mise à niveau du cache du système de fichier" ); $PLURAL_FORMS = "nplurals=2; plural=(n > 1);"; diff --git a/apps/files/l10n/gl.php b/apps/files/l10n/gl.php index 5c8132926b..6ec1816308 100644 --- a/apps/files/l10n/gl.php +++ b/apps/files/l10n/gl.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Falta o cartafol temporal", "Failed to write to disk" => "Produciuse un erro ao escribir no disco", "Not enough storage available" => "Non hai espazo de almacenamento abondo", +"Upload failed" => "Produciuse un fallou no envío", "Invalid directory." => "O directorio é incorrecto.", "Files" => "Ficheiros", "Unable to upload your file as it is a directory or has 0 bytes" => "Non foi posíbel enviar o ficheiro pois ou é un directorio ou ten 0 bytes", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "cancelar", "replaced {new_name} with {old_name}" => "substituír {new_name} por {old_name}", "undo" => "desfacer", +"_%n folder_::_%n folders_" => array("%n cartafol","%n cartafoles"), +"_%n file_::_%n files_" => array("%n ficheiro","%n ficheiros"), "_Uploading %n file_::_Uploading %n files_" => array("Cargando %n ficheiro","Cargando %n ficheiros"), "files uploading" => "ficheiros enviándose", "'.' is an invalid file name." => "«.» é un nome de ficheiro incorrecto", @@ -39,13 +42,11 @@ $TRANSLATIONS = array( "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome incorrecto, non se permite «\\», «/», «<», «>», «:», «\"», «|», «?» e «*».", "Your storage is full, files can not be updated or synced anymore!" => "O seu espazo de almacenamento está cheo, non é posíbel actualizar ou sincronizar máis os ficheiros!", "Your storage is almost full ({usedSpacePercent}%)" => "O seu espazo de almacenamento está case cheo ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "O cifrado foi desactivado, mais os ficheiros están cifrados. Vaia á configuración persoal para descifrar os ficheiros.", "Your download is being prepared. This might take some time if the files are big." => "Está a prepararse a súa descarga. Isto pode levar bastante tempo se os ficheiros son grandes.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nome de cartafol incorrecto. O uso de «Shared» está reservado por Owncloud", "Name" => "Nome", "Size" => "Tamaño", "Modified" => "Modificado", -"_%n folder_::_%n folders_" => array("%n cartafol","%n cartafoles"), -"_%n file_::_%n files_" => array("%n ficheiro","%n ficheiros"), "%s could not be renamed" => "%s non pode cambiar de nome", "Upload" => "Enviar", "File handling" => "Manexo de ficheiro", @@ -71,10 +72,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Análise actual", -"directory" => "directorio", -"directories" => "directorios", -"file" => "ficheiro", -"files" => "ficheiros", "Upgrading filesystem cache..." => "Anovando a caché do sistema de ficheiros..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/he.php b/apps/files/l10n/he.php index ef98e2d218..40d7cc9c55 100644 --- a/apps/files/l10n/he.php +++ b/apps/files/l10n/he.php @@ -11,6 +11,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "תקיה זמנית חסרה", "Failed to write to disk" => "הכתיבה לכונן נכשלה", "Not enough storage available" => "אין די שטח פנוי באחסון", +"Upload failed" => "ההעלאה נכשלה", "Invalid directory." => "תיקייה שגויה.", "Files" => "קבצים", "Unable to upload your file as it is a directory or has 0 bytes" => "לא יכול להעלות את הקובץ מכיוון שזו תקיה או שמשקל הקובץ 0 בתים", @@ -28,14 +29,14 @@ $TRANSLATIONS = array( "cancel" => "ביטול", "replaced {new_name} with {old_name}" => "{new_name} הוחלף ב־{old_name}", "undo" => "ביטול", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "files uploading" => "קבצים בהעלאה", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "השם שגוי, אסור להשתמש בתווים '\\', '/', '<', '>', ':', '\"', '|', '?' ו־'*'.", "Name" => "שם", "Size" => "גודל", "Modified" => "זמן שינוי", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "Upload" => "העלאה", "File handling" => "טיפול בקבצים", "Maximum upload size" => "גודל העלאה מקסימלי", @@ -57,8 +58,6 @@ $TRANSLATIONS = array( "Upload too large" => "העלאה גדולה מידי", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "הקבצים שניסית להעלות חרגו מהגודל המקסימלי להעלאת קבצים על שרת זה.", "Files are being scanned, please wait." => "הקבצים נסרקים, נא להמתין.", -"Current scanning" => "הסריקה הנוכחית", -"file" => "קובץ", -"files" => "קבצים" +"Current scanning" => "הסריקה הנוכחית" ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/hi.php b/apps/files/l10n/hi.php index 7fb5a5b09d..7d2baab607 100644 --- a/apps/files/l10n/hi.php +++ b/apps/files/l10n/hi.php @@ -2,9 +2,9 @@ $TRANSLATIONS = array( "Error" => "त्रुटि", "Share" => "साझा करें", -"_Uploading %n file_::_Uploading %n files_" => array("",""), "_%n folder_::_%n folders_" => array("",""), "_%n file_::_%n files_" => array("",""), +"_Uploading %n file_::_Uploading %n files_" => array("",""), "Save" => "सहेजें" ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/hr.php b/apps/files/l10n/hr.php index 8f74dea092..57f1ad9700 100644 --- a/apps/files/l10n/hr.php +++ b/apps/files/l10n/hr.php @@ -18,13 +18,13 @@ $TRANSLATIONS = array( "suggest name" => "predloži ime", "cancel" => "odustani", "undo" => "vrati", +"_%n folder_::_%n folders_" => array("","",""), +"_%n file_::_%n files_" => array("","",""), "_Uploading %n file_::_Uploading %n files_" => array("","",""), "files uploading" => "datoteke se učitavaju", "Name" => "Ime", "Size" => "Veličina", "Modified" => "Zadnja promjena", -"_%n folder_::_%n folders_" => array("","",""), -"_%n file_::_%n files_" => array("","",""), "Upload" => "Učitaj", "File handling" => "datoteka za rukovanje", "Maximum upload size" => "Maksimalna veličina prijenosa", @@ -45,8 +45,6 @@ $TRANSLATIONS = array( "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.", "Files are being scanned, please wait." => "Datoteke se skeniraju, molimo pričekajte.", -"Current scanning" => "Trenutno skeniranje", -"file" => "datoteka", -"files" => "datoteke" +"Current scanning" => "Trenutno skeniranje" ); $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;"; diff --git a/apps/files/l10n/hu_HU.php b/apps/files/l10n/hu_HU.php index 63efe031da..66edbefbca 100644 --- a/apps/files/l10n/hu_HU.php +++ b/apps/files/l10n/hu_HU.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Hiányzik egy ideiglenes mappa", "Failed to write to disk" => "Nem sikerült a lemezre történő írás", "Not enough storage available" => "Nincs elég szabad hely.", +"Upload failed" => "A feltöltés nem sikerült", "Invalid directory." => "Érvénytelen mappa.", "Files" => "Fájlok", "Unable to upload your file as it is a directory or has 0 bytes" => "Nem tölthető fel, mert mappa volt, vagy 0 byte méretű", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "mégse", "replaced {new_name} with {old_name}" => "{new_name} fájlt kicseréltük ezzel: {old_name}", "undo" => "visszavonás", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "files uploading" => "fájl töltődik föl", "'.' is an invalid file name." => "'.' fájlnév érvénytelen.", @@ -40,12 +43,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "A tároló tele van, a fájlok nem frissíthetőek vagy szinkronizálhatóak a jövőben.", "Your storage is almost full ({usedSpacePercent}%)" => "A tároló majdnem tele van ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Készül a letöltendő állomány. Ez eltarthat egy ideig, ha nagyok a fájlok.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Érvénytelen mappanév. A név használata csak a Owncloud számára lehetséges.", "Name" => "Név", "Size" => "Méret", "Modified" => "Módosítva", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "%s could not be renamed" => "%s átnevezése nem sikerült", "Upload" => "Feltöltés", "File handling" => "Fájlkezelés", @@ -71,10 +71,6 @@ $TRANSLATIONS = array( "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!", "Current scanning" => "Ellenőrzés alatt", -"directory" => "mappa", -"directories" => "mappa", -"file" => "fájl", -"files" => "fájlok", "Upgrading filesystem cache..." => "A fájlrendszer gyorsítótárának frissítése zajlik..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/hy.php b/apps/files/l10n/hy.php index a419a74cc9..9a5ebb862a 100644 --- a/apps/files/l10n/hy.php +++ b/apps/files/l10n/hy.php @@ -1,8 +1,8 @@ array("",""), "_%n folder_::_%n folders_" => array("",""), "_%n file_::_%n files_" => array("",""), +"_Uploading %n file_::_Uploading %n files_" => array("",""), "Save" => "Պահպանել", "Download" => "Բեռնել", "Delete" => "Ջնջել" diff --git a/apps/files/l10n/ia.php b/apps/files/l10n/ia.php index 202375636a..1560687f6c 100644 --- a/apps/files/l10n/ia.php +++ b/apps/files/l10n/ia.php @@ -6,12 +6,12 @@ $TRANSLATIONS = array( "Files" => "Files", "Error" => "Error", "Share" => "Compartir", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "Name" => "Nomine", "Size" => "Dimension", "Modified" => "Modificate", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "Upload" => "Incargar", "Maximum upload size" => "Dimension maxime de incargamento", "Save" => "Salveguardar", diff --git a/apps/files/l10n/id.php b/apps/files/l10n/id.php index 0f7aac5a22..ce7cfe5ef4 100644 --- a/apps/files/l10n/id.php +++ b/apps/files/l10n/id.php @@ -29,6 +29,8 @@ $TRANSLATIONS = array( "cancel" => "batalkan", "replaced {new_name} with {old_name}" => "mengganti {new_name} dengan {old_name}", "undo" => "urungkan", +"_%n folder_::_%n folders_" => array(""), +"_%n file_::_%n files_" => array(""), "_Uploading %n file_::_Uploading %n files_" => array(""), "files uploading" => "berkas diunggah", "'.' is an invalid file name." => "'.' bukan nama berkas yang valid.", @@ -37,12 +39,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Ruang penyimpanan Anda penuh, berkas tidak dapat diperbarui atau disinkronkan lagi!", "Your storage is almost full ({usedSpacePercent}%)" => "Ruang penyimpanan hampir penuh ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Unduhan Anda sedang disiapkan. Prosesnya dapat berlangsung agak lama jika ukuran berkasnya besar.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nama folder salah. Nama 'Shared' telah digunakan oleh Owncloud.", "Name" => "Nama", "Size" => "Ukuran", "Modified" => "Dimodifikasi", -"_%n folder_::_%n folders_" => array(""), -"_%n file_::_%n files_" => array(""), "Upload" => "Unggah", "File handling" => "Penanganan berkas", "Maximum upload size" => "Ukuran pengunggahan maksimum", @@ -67,8 +66,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Yang sedang dipindai", -"file" => "berkas", -"files" => "berkas-berkas", "Upgrading filesystem cache..." => "Meningkatkan tembolok sistem berkas..." ); $PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files/l10n/is.php b/apps/files/l10n/is.php index aee213691e..2cf195d0a1 100644 --- a/apps/files/l10n/is.php +++ b/apps/files/l10n/is.php @@ -27,16 +27,15 @@ $TRANSLATIONS = array( "cancel" => "hætta við", "replaced {new_name} with {old_name}" => "yfirskrifaði {new_name} með {old_name}", "undo" => "afturkalla", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "'.' is an invalid file name." => "'.' er ekki leyfilegt nafn.", "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 folder name. Usage of 'Shared' is reserved by Owncloud" => "Óleyfilegt nafn á möppu. Nafnið 'Shared' er frátekið fyrir Owncloud", "Name" => "Nafn", "Size" => "Stærð", "Modified" => "Breytt", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "Upload" => "Senda inn", "File handling" => "Meðhöndlun skrár", "Maximum upload size" => "Hámarks stærð innsendingar", diff --git a/apps/files/l10n/it.php b/apps/files/l10n/it.php index 3220a3efb6..b0ec954d90 100644 --- a/apps/files/l10n/it.php +++ b/apps/files/l10n/it.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Manca una cartella temporanea", "Failed to write to disk" => "Scrittura su disco non riuscita", "Not enough storage available" => "Spazio di archiviazione insufficiente", +"Upload failed" => "Caricamento non riuscito", "Invalid directory." => "Cartella non valida.", "Files" => "File", "Unable to upload your file as it is a directory or has 0 bytes" => "Impossibile caricare il file poiché è una cartella o ha una dimensione di 0 byte", @@ -32,20 +33,21 @@ $TRANSLATIONS = array( "cancel" => "annulla", "replaced {new_name} with {old_name}" => "sostituito {new_name} con {old_name}", "undo" => "annulla", -"_Uploading %n file_::_Uploading %n files_" => array("",""), +"_%n folder_::_%n folders_" => array("%n cartella","%n cartelle"), +"_%n file_::_%n files_" => array("%n file","%n file"), +"{dirs} and {files}" => "{dirs} e {files}", +"_Uploading %n file_::_Uploading %n files_" => array("Caricamento di %n file in corso","Caricamento di %n file in corso"), "files uploading" => "caricamento file", "'.' is an invalid file name." => "'.' non è un nome file valido.", "File name cannot be empty." => "Il nome del file non può essere vuoto.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome non valido, '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' non sono consentiti.", "Your storage is full, files can not be updated or synced anymore!" => "Lo spazio di archiviazione è pieno, i file non possono essere più aggiornati o sincronizzati!", "Your storage is almost full ({usedSpacePercent}%)" => "Lo spazio di archiviazione è quasi pieno ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "La cifratura è stata disabilitata ma i tuoi file sono ancora cifrati. Vai nelle impostazioni personali per decifrare i file.", "Your download is being prepared. This might take some time if the files are big." => "Il tuo scaricamento è in fase di preparazione. Ciò potrebbe richiedere del tempo se i file sono grandi.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nome della cartella non valido. L'uso di 'Shared' è riservato da ownCloud", "Name" => "Nome", "Size" => "Dimensione", "Modified" => "Modificato", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "%s could not be renamed" => "%s non può essere rinominato", "Upload" => "Carica", "File handling" => "Gestione file", @@ -71,10 +73,6 @@ $TRANSLATIONS = array( "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", "Current scanning" => "Scansione corrente", -"directory" => "cartella", -"directories" => "cartelle", -"file" => "file", -"files" => "file", "Upgrading filesystem cache..." => "Aggiornamento della cache del filesystem in corso..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/ja_JP.php b/apps/files/l10n/ja_JP.php index 4ae46e7900..5438cbb497 100644 --- a/apps/files/l10n/ja_JP.php +++ b/apps/files/l10n/ja_JP.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "一時保存フォルダが見つかりません", "Failed to write to disk" => "ディスクへの書き込みに失敗しました", "Not enough storage available" => "ストレージに十分な空き容量がありません", +"Upload failed" => "アップロードに失敗", "Invalid directory." => "無効なディレクトリです。", "Files" => "ファイル", "Unable to upload your file as it is a directory or has 0 bytes" => "ディレクトリもしくは0バイトのファイルはアップロードできません", @@ -32,6 +33,9 @@ $TRANSLATIONS = array( "cancel" => "キャンセル", "replaced {new_name} with {old_name}" => "{old_name} を {new_name} に置換", "undo" => "元に戻す", +"_%n folder_::_%n folders_" => array("%n個のフォルダ"), +"_%n file_::_%n files_" => array("%n個のファイル"), +"{dirs} and {files}" => "{dirs} と {files}", "_Uploading %n file_::_Uploading %n files_" => array("%n 個のファイルをアップロード中"), "files uploading" => "ファイルをアップロード中", "'.' is an invalid file name." => "'.' は無効なファイル名です。", @@ -39,13 +43,11 @@ $TRANSLATIONS = array( "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "無効な名前、'\\', '/', '<', '>', ':', '\"', '|', '?', '*' は使用できません。", "Your storage is full, files can not be updated or synced anymore!" => "あなたのストレージは一杯です。ファイルの更新と同期はもうできません!", "Your storage is almost full ({usedSpacePercent}%)" => "あなたのストレージはほぼ一杯です({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "暗号化の機能は無効化されましたが、ファイルはすでに暗号化されています。個人設定からファイルを複合を行ってください。", "Your download is being prepared. This might take some time if the files are big." => "ダウンロードの準備中です。ファイルサイズが大きい場合は少し時間がかかるかもしれません。", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "無効なフォルダ名です。'Shared' の利用は ownCloud が予約済みです。", "Name" => "名前", "Size" => "サイズ", "Modified" => "変更", -"_%n folder_::_%n folders_" => array("%n個のフォルダ"), -"_%n file_::_%n files_" => array("%n個のファイル"), "%s could not be renamed" => "%sの名前を変更できませんでした", "Upload" => "アップロード", "File handling" => "ファイル操作", @@ -71,10 +73,6 @@ $TRANSLATIONS = array( "The files you are trying to upload exceed the maximum size for file uploads on this server." => "アップロードしようとしているファイルは、サーバで規定された最大サイズを超えています。", "Files are being scanned, please wait." => "ファイルをスキャンしています、しばらくお待ちください。", "Current scanning" => "スキャン中", -"directory" => "ディレクトリ", -"directories" => "ディレクトリ", -"file" => "ファイル", -"files" => "ファイル", "Upgrading filesystem cache..." => "ファイルシステムキャッシュを更新中..." ); $PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files/l10n/ka.php b/apps/files/l10n/ka.php index 527a2c49b1..544e8168c5 100644 --- a/apps/files/l10n/ka.php +++ b/apps/files/l10n/ka.php @@ -1,9 +1,9 @@ "ფაილები", -"_Uploading %n file_::_Uploading %n files_" => array(""), "_%n folder_::_%n folders_" => array(""), "_%n file_::_%n files_" => array(""), +"_Uploading %n file_::_Uploading %n files_" => array(""), "Download" => "გადმოწერა" ); $PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files/l10n/ka_GE.php b/apps/files/l10n/ka_GE.php index 3205255e39..455e3211a5 100644 --- a/apps/files/l10n/ka_GE.php +++ b/apps/files/l10n/ka_GE.php @@ -11,6 +11,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "დროებითი საქაღალდე არ არსებობს", "Failed to write to disk" => "შეცდომა დისკზე ჩაწერისას", "Not enough storage available" => "საცავში საკმარისი ადგილი არ არის", +"Upload failed" => "ატვირთვა ვერ განხორციელდა", "Invalid directory." => "დაუშვებელი დირექტორია.", "Files" => "ფაილები", "Unable to upload your file as it is a directory or has 0 bytes" => "თქვენი ფაილის ატვირთვა ვერ მოხერხდა. ის არის საქაღალდე და შეიცავს 0 ბაიტს", @@ -29,6 +30,8 @@ $TRANSLATIONS = array( "cancel" => "უარყოფა", "replaced {new_name} with {old_name}" => "{new_name} შეცვლილია {old_name}–ით", "undo" => "დაბრუნება", +"_%n folder_::_%n folders_" => array(""), +"_%n file_::_%n files_" => array(""), "_Uploading %n file_::_Uploading %n files_" => array(""), "files uploading" => "ფაილები იტვირთება", "'.' is an invalid file name." => "'.' არის დაუშვებელი ფაილის სახელი.", @@ -37,12 +40,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "თქვენი საცავი გადაივსო. ფაილების განახლება და სინქრონიზირება ვერ მოხერხდება!", "Your storage is almost full ({usedSpacePercent}%)" => "თქვენი საცავი თითქმის გადაივსო ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "გადმოწერის მოთხოვნა მუშავდება. ის მოითხოვს გარკვეულ დროს რაგდან ფაილები არის დიდი ზომის.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "დაუშვებელი ფოლდერის სახელი. 'Shared'–ის გამოყენება რეზერვირებულია Owncloud–ის მიერ", "Name" => "სახელი", "Size" => "ზომა", "Modified" => "შეცვლილია", -"_%n folder_::_%n folders_" => array(""), -"_%n file_::_%n files_" => array(""), "Upload" => "ატვირთვა", "File handling" => "ფაილის დამუშავება", "Maximum upload size" => "მაქსიმუმ ატვირთის ზომა", diff --git a/apps/files/l10n/ko.php b/apps/files/l10n/ko.php index 7839ad3bd9..e2b787e7f9 100644 --- a/apps/files/l10n/ko.php +++ b/apps/files/l10n/ko.php @@ -11,6 +11,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "임시 폴더가 없음", "Failed to write to disk" => "디스크에 쓰지 못했습니다", "Not enough storage available" => "저장소가 용량이 충분하지 않습니다.", +"Upload failed" => "업로드 실패", "Invalid directory." => "올바르지 않은 디렉터리입니다.", "Files" => "파일", "Unable to upload your file as it is a directory or has 0 bytes" => "디렉터리 및 빈 파일은 업로드할 수 없습니다", @@ -29,6 +30,8 @@ $TRANSLATIONS = array( "cancel" => "취소", "replaced {new_name} with {old_name}" => "{old_name}이(가) {new_name}(으)로 대체됨", "undo" => "되돌리기", +"_%n folder_::_%n folders_" => array(""), +"_%n file_::_%n files_" => array(""), "_Uploading %n file_::_Uploading %n files_" => array(""), "files uploading" => "파일 업로드중", "'.' is an invalid file name." => "'.' 는 올바르지 않은 파일 이름 입니다.", @@ -37,12 +40,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "저장 공간이 가득 찼습니다. 파일을 업데이트하거나 동기화할 수 없습니다!", "Your storage is almost full ({usedSpacePercent}%)" => "저장 공간이 거의 가득 찼습니다 ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "다운로드가 준비 중입니다. 파일 크기가 크다면 시간이 오래 걸릴 수도 있습니다.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "폴더 이름이 유효하지 않습니다. ", "Name" => "이름", "Size" => "크기", "Modified" => "수정됨", -"_%n folder_::_%n folders_" => array(""), -"_%n file_::_%n files_" => array(""), "Upload" => "업로드", "File handling" => "파일 처리", "Maximum upload size" => "최대 업로드 크기", @@ -67,8 +67,6 @@ $TRANSLATIONS = array( "The files you are trying to upload exceed the maximum size for file uploads on this server." => "이 파일이 서버에서 허용하는 최대 업로드 가능 용량보다 큽니다.", "Files are being scanned, please wait." => "파일을 검색하고 있습니다. 기다려 주십시오.", "Current scanning" => "현재 검색", -"file" => "파일", -"files" => "파일", "Upgrading filesystem cache..." => "파일 시스템 캐시 업그레이드 중..." ); $PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files/l10n/ku_IQ.php b/apps/files/l10n/ku_IQ.php index 81177f9bea..9ec565da44 100644 --- a/apps/files/l10n/ku_IQ.php +++ b/apps/files/l10n/ku_IQ.php @@ -2,10 +2,10 @@ $TRANSLATIONS = array( "URL cannot be empty." => "ناونیشانی به‌سته‌ر نابێت به‌تاڵ بێت.", "Error" => "هه‌ڵه", -"_Uploading %n file_::_Uploading %n files_" => array("",""), -"Name" => "ناو", "_%n folder_::_%n folders_" => array("",""), "_%n file_::_%n files_" => array("",""), +"_Uploading %n file_::_Uploading %n files_" => array("",""), +"Name" => "ناو", "Upload" => "بارکردن", "Save" => "پاشکه‌وتکردن", "Folder" => "بوخچه", diff --git a/apps/files/l10n/lb.php b/apps/files/l10n/lb.php index c57eebd9e7..deefe9caa1 100644 --- a/apps/files/l10n/lb.php +++ b/apps/files/l10n/lb.php @@ -15,12 +15,12 @@ $TRANSLATIONS = array( "replace" => "ersetzen", "cancel" => "ofbriechen", "undo" => "réckgängeg man", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "Name" => "Numm", "Size" => "Gréisst", "Modified" => "Geännert", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "Upload" => "Eroplueden", "File handling" => "Fichier handling", "Maximum upload size" => "Maximum Upload Gréisst ", @@ -41,8 +41,6 @@ $TRANSLATIONS = array( "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.", "Files are being scanned, please wait." => "Fichieren gi gescannt, war weg.", -"Current scanning" => "Momentane Scan", -"file" => "Datei", -"files" => "Dateien" +"Current scanning" => "Momentane Scan" ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/lt_LT.php b/apps/files/l10n/lt_LT.php index cae9660ab6..0530adc2ae 100644 --- a/apps/files/l10n/lt_LT.php +++ b/apps/files/l10n/lt_LT.php @@ -11,6 +11,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Nėra laikinojo katalogo", "Failed to write to disk" => "Nepavyko įrašyti į diską", "Not enough storage available" => "Nepakanka vietos serveryje", +"Upload failed" => "Nusiuntimas nepavyko", "Invalid directory." => "Neteisingas aplankas", "Files" => "Failai", "Unable to upload your file as it is a directory or has 0 bytes" => "Neįmanoma įkelti failo - jo dydis gali būti 0 bitų arba tai katalogas", @@ -30,6 +31,8 @@ $TRANSLATIONS = array( "cancel" => "atšaukti", "replaced {new_name} with {old_name}" => "pakeiskite {new_name} į {old_name}", "undo" => "anuliuoti", +"_%n folder_::_%n folders_" => array("","",""), +"_%n file_::_%n files_" => array("","",""), "_Uploading %n file_::_Uploading %n files_" => array("","",""), "files uploading" => "įkeliami failai", "'.' is an invalid file name." => "'.' yra neleidžiamas failo pavadinime.", @@ -38,12 +41,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Jūsų visa vieta serveryje užimta", "Your storage is almost full ({usedSpacePercent}%)" => "Jūsų vieta serveryje beveik visa užimta ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Jūsų atsisiuntimas yra paruošiamas. tai gali užtrukti jei atsisiunčiamas didelis failas.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Negalimas aplanko pavadinimas. 'Shared' pavadinimas yra rezervuotas ownCloud", "Name" => "Pavadinimas", "Size" => "Dydis", "Modified" => "Pakeista", -"_%n folder_::_%n folders_" => array("","",""), -"_%n file_::_%n files_" => array("","",""), "Upload" => "Įkelti", "File handling" => "Failų tvarkymas", "Maximum upload size" => "Maksimalus įkeliamo failo dydis", @@ -68,8 +68,6 @@ $TRANSLATIONS = array( "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Bandomų įkelti failų dydis viršija maksimalų, kuris leidžiamas šiame serveryje", "Files are being scanned, please wait." => "Skenuojami failai, prašome palaukti.", "Current scanning" => "Šiuo metu skenuojama", -"file" => "failas", -"files" => "failai", "Upgrading filesystem cache..." => "Atnaujinamas sistemos kešavimas..." ); $PLURAL_FORMS = "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);"; diff --git a/apps/files/l10n/lv.php b/apps/files/l10n/lv.php index f6ded76e10..d24aaca9e4 100644 --- a/apps/files/l10n/lv.php +++ b/apps/files/l10n/lv.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Trūkst pagaidu mapes", "Failed to write to disk" => "Neizdevās saglabāt diskā", "Not enough storage available" => "Nav pietiekami daudz vietas", +"Upload failed" => "Neizdevās augšupielādēt", "Invalid directory." => "Nederīga direktorija.", "Files" => "Datnes", "Unable to upload your file as it is a directory or has 0 bytes" => "Nevar augšupielādēt jūsu datni, jo tā ir direktorija vai arī tā ir 0 baitu liela", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "atcelt", "replaced {new_name} with {old_name}" => "aizvietoja {new_name} ar {old_name}", "undo" => "atsaukt", +"_%n folder_::_%n folders_" => array("%n mapes","%n mape","%n mapes"), +"_%n file_::_%n files_" => array("%n faili","%n fails","%n faili"), "_Uploading %n file_::_Uploading %n files_" => array("%n","Augšupielāde %n failu","Augšupielāde %n failus"), "files uploading" => "fails augšupielādējas", "'.' is an invalid file name." => "'.' ir nederīgs datnes nosaukums.", @@ -39,13 +42,11 @@ $TRANSLATIONS = array( "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nederīgs nosaukums, nav atļauti '\\', '/', '<', '>', ':', '\"', '|', '?' un '*'.", "Your storage is full, files can not be updated or synced anymore!" => "Jūsu krātuve ir pilna, datnes vairs nevar augšupielādēt vai sinhronizēt!", "Your storage is almost full ({usedSpacePercent}%)" => "Jūsu krātuve ir gandrīz pilna ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Šifrēšana tika atslēgta, tomēr jūsu faili joprojām ir šifrēti. Atšifrēt failus var Personiskajos uzstādījumos.", "Your download is being prepared. This might take some time if the files are big." => "Tiek sagatavota lejupielāde. Tas var aizņemt kādu laiciņu, ja datnes ir lielas.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nederīgs mapes nosaukums. “Koplietots” izmantojums ir rezervēts ownCloud servisam.", "Name" => "Nosaukums", "Size" => "Izmērs", "Modified" => "Mainīts", -"_%n folder_::_%n folders_" => array("%n mapes","%n mape","%n mapes"), -"_%n file_::_%n files_" => array("%n faili","%n fails","%n faili"), "%s could not be renamed" => "%s nevar tikt pārsaukts", "Upload" => "Augšupielādēt", "File handling" => "Datņu pārvaldība", @@ -71,10 +72,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Šobrīd tiek caurskatīts", -"directory" => "direktorija", -"directories" => "direktorijas", -"file" => "fails", -"files" => "faili", "Upgrading filesystem cache..." => "Uzlabo datņu sistēmas kešatmiņu..." ); $PLURAL_FORMS = "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"; diff --git a/apps/files/l10n/mk.php b/apps/files/l10n/mk.php index 20fed43ab2..7a9a8641f8 100644 --- a/apps/files/l10n/mk.php +++ b/apps/files/l10n/mk.php @@ -23,13 +23,13 @@ $TRANSLATIONS = array( "cancel" => "откажи", "replaced {new_name} with {old_name}" => "заменета {new_name} со {old_name}", "undo" => "врати", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Неправилно име. , '\\', '/', '<', '>', ':', '\"', '|', '?' и '*' не се дозволени.", "Name" => "Име", "Size" => "Големина", "Modified" => "Променето", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "Upload" => "Подигни", "File handling" => "Ракување со датотеки", "Maximum upload size" => "Максимална големина за подигање", @@ -51,8 +51,6 @@ $TRANSLATIONS = array( "Upload too large" => "Фајлот кој се вчитува е преголем", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Датотеките кои се обидувате да ги подигнете ја надминуваат максималната големина за подигнување датотеки на овој сервер.", "Files are being scanned, please wait." => "Се скенираат датотеки, ве молам почекајте.", -"Current scanning" => "Моментално скенирам", -"file" => "датотека", -"files" => "датотеки" +"Current scanning" => "Моментално скенирам" ); $PLURAL_FORMS = "nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"; diff --git a/apps/files/l10n/ms_MY.php b/apps/files/l10n/ms_MY.php index 86b70faefd..59d0bbfb33 100644 --- a/apps/files/l10n/ms_MY.php +++ b/apps/files/l10n/ms_MY.php @@ -15,12 +15,12 @@ $TRANSLATIONS = array( "Pending" => "Dalam proses", "replace" => "ganti", "cancel" => "Batal", +"_%n folder_::_%n folders_" => array(""), +"_%n file_::_%n files_" => array(""), "_Uploading %n file_::_Uploading %n files_" => array(""), "Name" => "Nama", "Size" => "Saiz", "Modified" => "Dimodifikasi", -"_%n folder_::_%n folders_" => array(""), -"_%n file_::_%n files_" => array(""), "Upload" => "Muat naik", "File handling" => "Pengendalian fail", "Maximum upload size" => "Saiz maksimum muat naik", @@ -40,8 +40,6 @@ $TRANSLATIONS = array( "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", "Files are being scanned, please wait." => "Fail sedang diimbas, harap bersabar.", -"Current scanning" => "Imbasan semasa", -"file" => "fail", -"files" => "fail" +"Current scanning" => "Imbasan semasa" ); $PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files/l10n/my_MM.php b/apps/files/l10n/my_MM.php index 4dc63ffee2..497ecc0949 100644 --- a/apps/files/l10n/my_MM.php +++ b/apps/files/l10n/my_MM.php @@ -1,9 +1,9 @@ "ဖိုင်များ", -"_Uploading %n file_::_Uploading %n files_" => array(""), "_%n folder_::_%n folders_" => array(""), "_%n file_::_%n files_" => array(""), +"_Uploading %n file_::_Uploading %n files_" => array(""), "Download" => "ဒေါင်းလုတ်" ); $PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files/l10n/nb_NO.php b/apps/files/l10n/nb_NO.php index d76255f522..55ce978d2a 100644 --- a/apps/files/l10n/nb_NO.php +++ b/apps/files/l10n/nb_NO.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Mangler midlertidig mappe", "Failed to write to disk" => "Klarte ikke å skrive til disk", "Not enough storage available" => "Ikke nok lagringsplass", +"Upload failed" => "Opplasting feilet", "Invalid directory." => "Ugyldig katalog.", "Files" => "Filer", "Unable to upload your file as it is a directory or has 0 bytes" => "Kan ikke laste opp filen din siden det er en mappe eller den har 0 bytes", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "avbryt", "replaced {new_name} with {old_name}" => "erstattet {new_name} med {old_name}", "undo" => "angre", +"_%n folder_::_%n folders_" => array("%n mappe","%n mapper"), +"_%n file_::_%n files_" => array("%n fil","%n filer"), "_Uploading %n file_::_Uploading %n files_" => array("Laster opp %n fil","Laster opp %n filer"), "files uploading" => "filer lastes opp", "'.' is an invalid file name." => "'.' er et ugyldig filnavn.", @@ -40,12 +43,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Lagringsplass er oppbrukt, filer kan ikke lenger oppdateres eller synkroniseres!", "Your storage is almost full ({usedSpacePercent}%)" => "Lagringsplass er nesten brukt opp ([usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Nedlastingen din klargjøres. Hvis filene er store kan dette ta litt tid.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ugyldig mappenavn. Bruk av \"Shared\" er reservert av ownCloud.", "Name" => "Navn", "Size" => "Størrelse", "Modified" => "Endret", -"_%n folder_::_%n folders_" => array("%n mappe","%n mapper"), -"_%n file_::_%n files_" => array("%n fil","%n filer"), "%s could not be renamed" => "Kunne ikke gi nytt navn til %s", "Upload" => "Last opp", "File handling" => "Filhåndtering", @@ -71,10 +71,6 @@ $TRANSLATIONS = array( "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 filer, vennligst vent.", "Current scanning" => "Pågående skanning", -"directory" => "katalog", -"directories" => "kataloger", -"file" => "fil", -"files" => "filer", "Upgrading filesystem cache..." => "Oppgraderer filsystemets mellomlager..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/nl.php b/apps/files/l10n/nl.php index 5648ae9b35..9fb1351736 100644 --- a/apps/files/l10n/nl.php +++ b/apps/files/l10n/nl.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Er ontbreekt een tijdelijke map", "Failed to write to disk" => "Schrijven naar schijf mislukt", "Not enough storage available" => "Niet genoeg opslagruimte beschikbaar", +"Upload failed" => "Upload mislukt", "Invalid directory." => "Ongeldige directory.", "Files" => "Bestanden", "Unable to upload your file as it is a directory or has 0 bytes" => "Het lukt niet om uw bestand te uploaded, omdat het een folder of 0 bytes is", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "annuleren", "replaced {new_name} with {old_name}" => "verving {new_name} met {old_name}", "undo" => "ongedaan maken", +"_%n folder_::_%n folders_" => array("","%n mappen"), +"_%n file_::_%n files_" => array("","%n bestanden"), "_Uploading %n file_::_Uploading %n files_" => array("%n bestand aan het uploaden","%n bestanden aan het uploaden"), "files uploading" => "bestanden aan het uploaden", "'.' is an invalid file name." => "'.' is een ongeldige bestandsnaam.", @@ -39,13 +42,11 @@ $TRANSLATIONS = array( "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Onjuiste naam; '\\', '/', '<', '>', ':', '\"', '|', '?' en '*' zijn niet toegestaan.", "Your storage is full, files can not be updated or synced anymore!" => "Uw opslagruimte zit vol, Bestanden kunnen niet meer worden ge-upload of gesynchroniseerd!", "Your storage is almost full ({usedSpacePercent}%)" => "Uw opslagruimte zit bijna vol ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Encryptie is uitgeschakeld maar uw bestanden zijn nog steeds versleuteld. Ga naar uw persoonlijke instellingen om uw bestanden te decoderen.", "Your download is being prepared. This might take some time if the files are big." => "Uw download wordt voorbereid. Dit kan enige tijd duren bij grote bestanden.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ongeldige mapnaam. Gebruik van'Gedeeld' is voorbehouden aan Owncloud", "Name" => "Naam", "Size" => "Grootte", "Modified" => "Aangepast", -"_%n folder_::_%n folders_" => array("","%n mappen"), -"_%n file_::_%n files_" => array("","%n bestanden"), "%s could not be renamed" => "%s kon niet worden hernoemd", "Upload" => "Uploaden", "File handling" => "Bestand", @@ -71,10 +72,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Er wordt gescand", -"directory" => "directory", -"directories" => "directories", -"file" => "bestand", -"files" => "bestanden", "Upgrading filesystem cache..." => "Upgraden bestandssysteem cache..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/nn_NO.php b/apps/files/l10n/nn_NO.php index 0f0ad31874..b1f38057a8 100644 --- a/apps/files/l10n/nn_NO.php +++ b/apps/files/l10n/nn_NO.php @@ -11,6 +11,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Manglar ei mellombels mappe", "Failed to write to disk" => "Klarte ikkje skriva til disk", "Not enough storage available" => "Ikkje nok lagringsplass tilgjengeleg", +"Upload failed" => "Feil ved opplasting", "Invalid directory." => "Ugyldig mappe.", "Files" => "Filer", "Unable to upload your file as it is a directory or has 0 bytes" => "Klarte ikkje lasta opp fila sidan ho er ei mappe eller er på 0 byte", @@ -30,6 +31,8 @@ $TRANSLATIONS = array( "cancel" => "avbryt", "replaced {new_name} with {old_name}" => "bytte ut {new_name} med {old_name}", "undo" => "angre", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "files uploading" => "filer lastar opp", "'.' is an invalid file name." => "«.» er eit ugyldig filnamn.", @@ -38,12 +41,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Lagringa di er full, kan ikkje lenger oppdatera eller synkronisera!", "Your storage is almost full ({usedSpacePercent}%)" => "Lagringa di er nesten full ({usedSpacePercent} %)", "Your download is being prepared. This might take some time if the files are big." => "Gjer klar nedlastinga di. Dette kan ta ei stund viss filene er store.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ugyldig mappenamn. Mappa «Shared» er reservert av ownCloud", "Name" => "Namn", "Size" => "Storleik", "Modified" => "Endra", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "Upload" => "Last opp", "File handling" => "Filhandtering", "Maximum upload size" => "Maksimal opplastingsstorleik", diff --git a/apps/files/l10n/oc.php b/apps/files/l10n/oc.php index 552d72bef5..63e572059b 100644 --- a/apps/files/l10n/oc.php +++ b/apps/files/l10n/oc.php @@ -18,13 +18,13 @@ $TRANSLATIONS = array( "suggest name" => "nom prepausat", "cancel" => "anulla", "undo" => "defar", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "files uploading" => "fichièrs al amontcargar", "Name" => "Nom", "Size" => "Talha", "Modified" => "Modificat", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "Upload" => "Amontcarga", "File handling" => "Manejament de fichièr", "Maximum upload size" => "Talha maximum d'amontcargament", @@ -45,8 +45,6 @@ $TRANSLATIONS = array( "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.", "Files are being scanned, please wait." => "Los fiichièrs son a èsser explorats, ", -"Current scanning" => "Exploracion en cors", -"file" => "fichièr", -"files" => "fichièrs" +"Current scanning" => "Exploracion en cors" ); $PLURAL_FORMS = "nplurals=2; plural=(n > 1);"; diff --git a/apps/files/l10n/pl.php b/apps/files/l10n/pl.php index 813d2ee8e7..4b22b080b2 100644 --- a/apps/files/l10n/pl.php +++ b/apps/files/l10n/pl.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Brak folderu tymczasowego", "Failed to write to disk" => "Błąd zapisu na dysk", "Not enough storage available" => "Za mało dostępnego miejsca", +"Upload failed" => "Wysyłanie nie powiodło się", "Invalid directory." => "Zła ścieżka.", "Files" => "Pliki", "Unable to upload your file as it is a directory or has 0 bytes" => "Nie można wczytać pliku, ponieważ jest on katalogiem lub ma 0 bajtów", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "anuluj", "replaced {new_name} with {old_name}" => "zastąpiono {new_name} przez {old_name}", "undo" => "cofnij", +"_%n folder_::_%n folders_" => array("","",""), +"_%n file_::_%n files_" => array("","",""), "_Uploading %n file_::_Uploading %n files_" => array("","",""), "files uploading" => "pliki wczytane", "'.' is an invalid file name." => "„.” jest nieprawidłową nazwą pliku.", @@ -40,12 +43,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Magazyn jest pełny. Pliki nie mogą zostać zaktualizowane lub zsynchronizowane!", "Your storage is almost full ({usedSpacePercent}%)" => "Twój magazyn jest prawie pełny ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Pobieranie jest przygotowywane. Może to zająć trochę czasu jeśli pliki są duże.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nieprawidłowa nazwa folderu. Korzystanie z nazwy „Shared” jest zarezerwowane dla ownCloud", "Name" => "Nazwa", "Size" => "Rozmiar", "Modified" => "Modyfikacja", -"_%n folder_::_%n folders_" => array("","",""), -"_%n file_::_%n files_" => array("","",""), "%s could not be renamed" => "%s nie można zmienić nazwy", "Upload" => "Wyślij", "File handling" => "Zarządzanie plikami", @@ -71,10 +71,6 @@ $TRANSLATIONS = array( "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ć.", "Current scanning" => "Aktualnie skanowane", -"directory" => "Katalog", -"directories" => "Katalogi", -"file" => "plik", -"files" => "pliki", "Upgrading filesystem cache..." => "Uaktualnianie plików pamięci podręcznej..." ); $PLURAL_FORMS = "nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"; diff --git a/apps/files/l10n/pt_BR.php b/apps/files/l10n/pt_BR.php index 575df89111..15d0c170e6 100644 --- a/apps/files/l10n/pt_BR.php +++ b/apps/files/l10n/pt_BR.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Pasta temporária não encontrada", "Failed to write to disk" => "Falha ao escrever no disco", "Not enough storage available" => "Espaço de armazenamento insuficiente", +"Upload failed" => "Falha no envio", "Invalid directory." => "Diretório inválido.", "Files" => "Arquivos", "Unable to upload your file as it is a directory or has 0 bytes" => "Impossível enviar seus arquivo por ele ser um diretório ou ter 0 bytes.", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "cancelar", "replaced {new_name} with {old_name}" => "Substituído {old_name} por {new_name} ", "undo" => "desfazer", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "files uploading" => "enviando arquivos", "'.' is an invalid file name." => "'.' é um nome de arquivo inválido.", @@ -40,12 +43,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Seu armazenamento está cheio, arquivos não podem mais ser atualizados ou sincronizados!", "Your storage is almost full ({usedSpacePercent}%)" => "Seu armazenamento está quase cheio ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Seu download está sendo preparado. Isto pode levar algum tempo se os arquivos forem grandes.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nome de pasta inválido. O uso de 'Shared' é reservado para o Owncloud", "Name" => "Nome", "Size" => "Tamanho", "Modified" => "Modificado", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "%s could not be renamed" => "%s não pode ser renomeado", "Upload" => "Upload", "File handling" => "Tratamento de Arquivo", @@ -71,10 +71,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Scanning atual", -"directory" => "diretório", -"directories" => "diretórios", -"file" => "arquivo", -"files" => "arquivos", "Upgrading filesystem cache..." => "Atualizando cache do sistema de arquivos..." ); $PLURAL_FORMS = "nplurals=2; plural=(n > 1);"; diff --git a/apps/files/l10n/pt_PT.php b/apps/files/l10n/pt_PT.php index 64110f6704..33ec8cddce 100644 --- a/apps/files/l10n/pt_PT.php +++ b/apps/files/l10n/pt_PT.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Está a faltar a pasta temporária", "Failed to write to disk" => "Falhou a escrita no disco", "Not enough storage available" => "Não há espaço suficiente em disco", +"Upload failed" => "Carregamento falhou", "Invalid directory." => "Directório Inválido", "Files" => "Ficheiros", "Unable to upload your file as it is a directory or has 0 bytes" => "Não é possível fazer o envio do ficheiro devido a ser uma pasta ou ter 0 bytes", @@ -32,20 +33,21 @@ $TRANSLATIONS = array( "cancel" => "cancelar", "replaced {new_name} with {old_name}" => "substituido {new_name} por {old_name}", "undo" => "desfazer", -"_Uploading %n file_::_Uploading %n files_" => array("",""), +"_%n folder_::_%n folders_" => array("%n pasta","%n pastas"), +"_%n file_::_%n files_" => array("%n ficheiro","%n ficheiros"), +"{dirs} and {files}" => "{dirs} e {files}", +"_Uploading %n file_::_Uploading %n files_" => array("A carregar %n ficheiro","A carregar %n ficheiros"), "files uploading" => "A enviar os ficheiros", "'.' 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.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome Inválido, os caracteres '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' não são permitidos.", "Your storage is full, files can not be updated or synced anymore!" => "O seu armazenamento está cheio, os ficheiros não podem ser sincronizados.", "Your storage is almost full ({usedSpacePercent}%)" => "O seu espaço de armazenamento está quase cheiro ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "A encriptação foi desactivada mas os seus ficheiros continuam encriptados. Por favor consulte as suas definições pessoais para desencriptar os ficheiros.", "Your download is being prepared. This might take some time if the files are big." => "O seu download está a ser preparado. Este processo pode demorar algum tempo se os ficheiros forem grandes.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nome de pasta inválido. O Uso de 'shared' é reservado para o ownCloud", "Name" => "Nome", "Size" => "Tamanho", "Modified" => "Modificado", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "%s could not be renamed" => "%s não pode ser renomeada", "Upload" => "Carregar", "File handling" => "Manuseamento de ficheiros", @@ -71,10 +73,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Análise actual", -"directory" => "diretório", -"directories" => "diretórios", -"file" => "ficheiro", -"files" => "ficheiros", "Upgrading filesystem cache..." => "Atualizar cache do sistema de ficheiros..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/ro.php b/apps/files/l10n/ro.php index 85805cf562..59f6cc6849 100644 --- a/apps/files/l10n/ro.php +++ b/apps/files/l10n/ro.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Lipsește un director temporar", "Failed to write to disk" => "Eroare la scriere pe disc", "Not enough storage available" => "Nu este suficient spațiu disponibil", +"Upload failed" => "Încărcarea a eșuat", "Invalid directory." => "Director invalid.", "Files" => "Fișiere", "Unable to upload your file as it is a directory or has 0 bytes" => "Nu s-a putut încărca fișierul tău deoarece pare să fie un director sau are 0 bytes.", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "anulare", "replaced {new_name} with {old_name}" => "{new_name} inlocuit cu {old_name}", "undo" => "Anulează ultima acțiune", +"_%n folder_::_%n folders_" => array("","",""), +"_%n file_::_%n files_" => array("","",""), "_Uploading %n file_::_Uploading %n files_" => array("","",""), "files uploading" => "fișiere se încarcă", "'.' is an invalid file name." => "'.' este un nume invalid de fișier.", @@ -40,12 +43,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Spatiul de stocare este plin, nu mai puteti incarca s-au sincroniza alte fisiere.", "Your storage is almost full ({usedSpacePercent}%)" => "Spatiul de stocare este aproape plin ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Se pregătește descărcarea. Aceasta poate să dureze ceva timp dacă fișierele sunt mari.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Invalid folder name. Usage of 'Shared' is reserved by Ownclou", "Name" => "Nume", "Size" => "Dimensiune", "Modified" => "Modificat", -"_%n folder_::_%n folders_" => array("","",""), -"_%n file_::_%n files_" => array("","",""), "%s could not be renamed" => "%s nu a putut fi redenumit", "Upload" => "Încărcare", "File handling" => "Manipulare fișiere", @@ -71,10 +71,6 @@ $TRANSLATIONS = array( "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ă.", "Current scanning" => "În curs de scanare", -"directory" => "catalog", -"directories" => "cataloage", -"file" => "fișier", -"files" => "fișiere", "Upgrading filesystem cache..." => "Modernizare fisiere de sistem cache.." ); $PLURAL_FORMS = "nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"; diff --git a/apps/files/l10n/ru.php b/apps/files/l10n/ru.php index fe771d2b57..96f52a9045 100644 --- a/apps/files/l10n/ru.php +++ b/apps/files/l10n/ru.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Отсутствует временная папка", "Failed to write to disk" => "Ошибка записи на диск", "Not enough storage available" => "Недостаточно доступного места в хранилище", +"Upload failed" => "Ошибка загрузки", "Invalid directory." => "Неправильный каталог.", "Files" => "Файлы", "Unable to upload your file as it is a directory or has 0 bytes" => "Файл не был загружен: его размер 0 байт либо это не файл, а директория.", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "отмена", "replaced {new_name} with {old_name}" => "заменено {new_name} на {old_name}", "undo" => "отмена", +"_%n folder_::_%n folders_" => array("%n папка","%n папки","%n папок"), +"_%n file_::_%n files_" => array("%n файл","%n файла","%n файлов"), "_Uploading %n file_::_Uploading %n files_" => array("Закачка %n файла","Закачка %n файлов","Закачка %n файлов"), "files uploading" => "файлы загружаются", "'.' is an invalid file name." => "'.' - неправильное имя файла.", @@ -40,12 +43,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Ваше дисковое пространство полностью заполнено, произведите очистку перед загрузкой новых файлов.", "Your storage is almost full ({usedSpacePercent}%)" => "Ваше хранилище почти заполнено ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Загрузка началась. Это может потребовать много времени, если файл большого размера.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Неправильное имя каталога. Имя 'Shared' зарезервировано.", "Name" => "Имя", "Size" => "Размер", "Modified" => "Изменён", -"_%n folder_::_%n folders_" => array("%n папка","%n папки","%n папок"), -"_%n file_::_%n files_" => array("%n файл","%n файла","%n файлов"), "%s could not be renamed" => "%s не может быть переименован", "Upload" => "Загрузка", "File handling" => "Управление файлами", @@ -71,10 +71,6 @@ $TRANSLATIONS = array( "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Файлы, которые вы пытаетесь загрузить, превышают лимит для файлов на этом сервере.", "Files are being scanned, please wait." => "Подождите, файлы сканируются.", "Current scanning" => "Текущее сканирование", -"directory" => "директория", -"directories" => "директории", -"file" => "файл", -"files" => "файлы", "Upgrading filesystem cache..." => "Обновление кэша файловой системы..." ); $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);"; diff --git a/apps/files/l10n/si_LK.php b/apps/files/l10n/si_LK.php index ffb28e0958..1fd18d0c56 100644 --- a/apps/files/l10n/si_LK.php +++ b/apps/files/l10n/si_LK.php @@ -7,6 +7,7 @@ $TRANSLATIONS = array( "No file was uploaded" => "ගොනුවක් උඩුගත නොවුණි", "Missing a temporary folder" => "තාවකාලික ෆොල්ඩරයක් අතුරුදහන්", "Failed to write to disk" => "තැටිගත කිරීම අසාර්ථකයි", +"Upload failed" => "උඩුගත කිරීම අසාර්ථකයි", "Files" => "ගොනු", "Upload cancelled." => "උඩුගත කිරීම අත් හරින්න ලදී", "File upload is in progress. Leaving the page now will cancel the upload." => "උඩුගතකිරීමක් සිදුවේ. පිටුව හැර යාමෙන් එය නැවතෙනු ඇත", @@ -18,12 +19,12 @@ $TRANSLATIONS = array( "suggest name" => "නමක් යෝජනා කරන්න", "cancel" => "අත් හරින්න", "undo" => "නිෂ්ප්‍රභ කරන්න", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "Name" => "නම", "Size" => "ප්‍රමාණය", "Modified" => "වෙනස් කළ", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "Upload" => "උඩුගත කරන්න", "File handling" => "ගොනු පරිහරණය", "Maximum upload size" => "උඩුගත කිරීමක උපරිම ප්‍රමාණය", @@ -45,8 +46,6 @@ $TRANSLATIONS = array( "Upload too large" => "උඩුගත කිරීම විශාල වැඩිය", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "ඔබ උඩුගත කිරීමට තැත් කරන ගොනු මෙම සේවාදායකයා උඩුගත කිරීමට ඉඩදී ඇති උපරිම ගොනු විශාලත්වයට වඩා වැඩිය", "Files are being scanned, please wait." => "ගොනු පරික්ෂා කෙරේ. මඳක් රැඳී සිටින්න", -"Current scanning" => "වර්තමාන පරික්ෂාව", -"file" => "ගොනුව", -"files" => "ගොනු" +"Current scanning" => "වර්තමාන පරික්ෂාව" ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/sk_SK.php b/apps/files/l10n/sk_SK.php index d28368cc48..b30f263d24 100644 --- a/apps/files/l10n/sk_SK.php +++ b/apps/files/l10n/sk_SK.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Chýba dočasný priečinok", "Failed to write to disk" => "Zápis na disk sa nepodaril", "Not enough storage available" => "Nedostatok dostupného úložného priestoru", +"Upload failed" => "Odoslanie bolo neúspešné", "Invalid directory." => "Neplatný priečinok.", "Files" => "Súbory", "Unable to upload your file as it is a directory or has 0 bytes" => "Nedá sa odoslať Váš súbor, pretože je to priečinok, alebo je jeho veľkosť 0 bajtov", @@ -32,20 +33,20 @@ $TRANSLATIONS = array( "cancel" => "zrušiť", "replaced {new_name} with {old_name}" => "prepísaný {new_name} súborom {old_name}", "undo" => "vrátiť", -"_Uploading %n file_::_Uploading %n files_" => array("","",""), +"_%n folder_::_%n folders_" => array("%n priečinok","%n priečinky","%n priečinkov"), +"_%n file_::_%n files_" => array("%n súbor","%n súbory","%n súborov"), +"_Uploading %n file_::_Uploading %n files_" => array("Nahrávam %n súbor","Nahrávam %n súbory","Nahrávam %n súborov"), "files uploading" => "nahrávanie súborov", "'.' is an invalid file name." => "'.' je neplatné meno súboru.", "File name cannot be empty." => "Meno súboru nemôže byť prázdne", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nesprávne meno, '\\', '/', '<', '>', ':', '\"', '|', '?' a '*' nie sú povolené hodnoty.", "Your storage is full, files can not be updated or synced anymore!" => "Vaše úložisko je plné. Súbory nemožno aktualizovať ani synchronizovať!", "Your storage is almost full ({usedSpacePercent}%)" => "Vaše úložisko je takmer plné ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Šifrovanie bolo zakázané, ale vaše súbory sú stále zašifrované. Prosím, choďte do osobného nastavenia pre dešifrovanie súborov.", "Your download is being prepared. This might take some time if the files are big." => "Vaše sťahovanie sa pripravuje. Ak sú sťahované súbory veľké, môže to chvíľu trvať.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Neplatné meno priečinka. Používanie mena 'Shared' je vyhradené len pre Owncloud", "Name" => "Názov", "Size" => "Veľkosť", "Modified" => "Upravené", -"_%n folder_::_%n folders_" => array("","",""), -"_%n file_::_%n files_" => array("","",""), "%s could not be renamed" => "%s nemohol byť premenovaný", "Upload" => "Odoslať", "File handling" => "Nastavenie správania sa k súborom", @@ -71,10 +72,6 @@ $TRANSLATIONS = array( "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é.", "Current scanning" => "Práve prezerané", -"directory" => "priečinok", -"directories" => "priečinky", -"file" => "súbor", -"files" => "súbory", "Upgrading filesystem cache..." => "Aktualizujem medzipamäť súborového systému..." ); $PLURAL_FORMS = "nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;"; diff --git a/apps/files/l10n/sl.php b/apps/files/l10n/sl.php index 9922a0be7e..08f789ff86 100644 --- a/apps/files/l10n/sl.php +++ b/apps/files/l10n/sl.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Manjka začasna mapa", "Failed to write to disk" => "Pisanje na disk je spodletelo", "Not enough storage available" => "Na voljo ni dovolj prostora", +"Upload failed" => "Pošiljanje je spodletelo", "Invalid directory." => "Neveljavna mapa.", "Files" => "Datoteke", "Unable to upload your file as it is a directory or has 0 bytes" => "Pošiljanja ni mogoče izvesti, saj gre za mapo oziroma datoteko velikosti 0 bajtov.", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "prekliči", "replaced {new_name} with {old_name}" => "preimenovano ime {new_name} z imenom {old_name}", "undo" => "razveljavi", +"_%n folder_::_%n folders_" => array("","","",""), +"_%n file_::_%n files_" => array("","","",""), "_Uploading %n file_::_Uploading %n files_" => array("","","",""), "files uploading" => "poteka pošiljanje datotek", "'.' is an invalid file name." => "'.' je neveljavno ime datoteke.", @@ -40,12 +43,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Shramba je povsem napolnjena. Datotek ni več mogoče posodabljati in usklajevati!", "Your storage is almost full ({usedSpacePercent}%)" => "Mesto za shranjevanje je skoraj polno ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Postopek priprave datoteke za prejem je lahko dolgotrajen, če je datoteka zelo velika.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Neveljavno ime mape. Uporaba oznake \"Souporaba\" je zadržan za sistem ownCloud.", "Name" => "Ime", "Size" => "Velikost", "Modified" => "Spremenjeno", -"_%n folder_::_%n folders_" => array("","","",""), -"_%n file_::_%n files_" => array("","","",""), "%s could not be renamed" => "%s ni bilo mogoče preimenovati", "Upload" => "Pošlji", "File handling" => "Upravljanje z datotekami", @@ -71,10 +71,6 @@ $TRANSLATIONS = array( "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 ...", "Current scanning" => "Trenutno poteka preučevanje", -"directory" => "direktorij", -"directories" => "direktoriji", -"file" => "datoteka", -"files" => "datoteke", "Upgrading filesystem cache..." => "Nadgrajevanje predpomnilnika datotečnega sistema ..." ); $PLURAL_FORMS = "nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"; diff --git a/apps/files/l10n/sq.php b/apps/files/l10n/sq.php index 34250b56c3..ff09e7b4f9 100644 --- a/apps/files/l10n/sq.php +++ b/apps/files/l10n/sq.php @@ -29,6 +29,8 @@ $TRANSLATIONS = array( "cancel" => "anulo", "replaced {new_name} with {old_name}" => "U zëvëndësua {new_name} me {old_name}", "undo" => "anulo", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "files uploading" => "po ngarkoj skedarët", "'.' is an invalid file name." => "'.' është emër i pavlefshëm.", @@ -37,12 +39,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Hapësira juaj e memorizimit është plot, nuk mund të ngarkoni apo sinkronizoni më skedarët.", "Your storage is almost full ({usedSpacePercent}%)" => "Hapësira juaj e memorizimit është gati plot ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Shkarkimi juaj po përgatitet. Mund të duhet pak kohë nqse skedarët janë të mëdhenj.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Emri i dosjes është i pavlefshëm. Përdorimi i \"Shared\" është i rezervuar nga Owncloud-i.", "Name" => "Emri", "Size" => "Dimensioni", "Modified" => "Modifikuar", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "Upload" => "Ngarko", "File handling" => "Trajtimi i skedarit", "Maximum upload size" => "Dimensioni maksimal i ngarkimit", diff --git a/apps/files/l10n/sr.php b/apps/files/l10n/sr.php index d73188d483..73f8ace5c8 100644 --- a/apps/files/l10n/sr.php +++ b/apps/files/l10n/sr.php @@ -11,6 +11,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Недостаје привремена фасцикла", "Failed to write to disk" => "Не могу да пишем на диск", "Not enough storage available" => "Нема довољно простора", +"Upload failed" => "Отпремање није успело", "Invalid directory." => "неисправна фасцикла.", "Files" => "Датотеке", "Unable to upload your file as it is a directory or has 0 bytes" => "Не могу да отпремим датотеку као фасциклу или она има 0 бајтова", @@ -29,6 +30,8 @@ $TRANSLATIONS = array( "cancel" => "откажи", "replaced {new_name} with {old_name}" => "замењено {new_name} са {old_name}", "undo" => "опозови", +"_%n folder_::_%n folders_" => array("","",""), +"_%n file_::_%n files_" => array("","",""), "_Uploading %n file_::_Uploading %n files_" => array("","",""), "files uploading" => "датотеке се отпремају", "'.' is an invalid file name." => "Датотека „.“ је неисправног имена.", @@ -37,12 +40,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Ваше складиште је пуно. Датотеке више не могу бити ажуриране ни синхронизоване.", "Your storage is almost full ({usedSpacePercent}%)" => "Ваше складиште је скоро па пуно ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Припремам преузимање. Ово може да потраје ако су датотеке велике.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Неисправно име фасцикле. Фасцикла „Shared“ је резервисана за ownCloud.", "Name" => "Име", "Size" => "Величина", "Modified" => "Измењено", -"_%n folder_::_%n folders_" => array("","",""), -"_%n file_::_%n files_" => array("","",""), "Upload" => "Отпреми", "File handling" => "Управљање датотекама", "Maximum upload size" => "Највећа величина датотеке", diff --git a/apps/files/l10n/sr@latin.php b/apps/files/l10n/sr@latin.php index bc7b11b8c5..1965479fe6 100644 --- a/apps/files/l10n/sr@latin.php +++ b/apps/files/l10n/sr@latin.php @@ -6,12 +6,12 @@ $TRANSLATIONS = array( "No file was uploaded" => "Nijedan fajl nije poslat", "Missing a temporary folder" => "Nedostaje privremena fascikla", "Files" => "Fajlovi", +"_%n folder_::_%n folders_" => array("","",""), +"_%n file_::_%n files_" => array("","",""), "_Uploading %n file_::_Uploading %n files_" => array("","",""), "Name" => "Ime", "Size" => "Veličina", "Modified" => "Zadnja izmena", -"_%n folder_::_%n folders_" => array("","",""), -"_%n file_::_%n files_" => array("","",""), "Upload" => "Pošalji", "Maximum upload size" => "Maksimalna veličina pošiljke", "Save" => "Snimi", diff --git a/apps/files/l10n/sv.php b/apps/files/l10n/sv.php index 574dc3728a..fbbe1f1591 100644 --- a/apps/files/l10n/sv.php +++ b/apps/files/l10n/sv.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "En temporär mapp saknas", "Failed to write to disk" => "Misslyckades spara till disk", "Not enough storage available" => "Inte tillräckligt med lagringsutrymme tillgängligt", +"Upload failed" => "Misslyckad uppladdning", "Invalid directory." => "Felaktig mapp.", "Files" => "Filer", "Unable to upload your file as it is a directory or has 0 bytes" => "Kan inte ladda upp din fil eftersom det är en katalog eller har 0 bytes", @@ -32,6 +33,9 @@ $TRANSLATIONS = array( "cancel" => "avbryt", "replaced {new_name} with {old_name}" => "ersatt {new_name} med {old_name}", "undo" => "ångra", +"_%n folder_::_%n folders_" => array("%n mapp","%n mappar"), +"_%n file_::_%n files_" => array("%n fil","%n filer"), +"{dirs} and {files}" => "{dirs} och {files}", "_Uploading %n file_::_Uploading %n files_" => array("Laddar upp %n fil","Laddar upp %n filer"), "files uploading" => "filer laddas upp", "'.' is an invalid file name." => "'.' är ett ogiltigt filnamn.", @@ -39,13 +43,11 @@ $TRANSLATIONS = array( "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ogiltigt namn, '\\', '/', '<', '>', ':', '\"', '|', '?' och '*' är inte tillåtet.", "Your storage is full, files can not be updated or synced anymore!" => "Ditt lagringsutrymme är fullt, filer kan inte längre uppdateras eller synkroniseras!", "Your storage is almost full ({usedSpacePercent}%)" => "Ditt lagringsutrymme är nästan fullt ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Kryptering inaktiverades men dina filer är fortfarande krypterade. Vänligen gå till sidan för dina personliga inställningar för att dekryptera dina filer.", "Your download is being prepared. This might take some time if the files are big." => "Din nedladdning förbereds. Det kan ta tid om det är stora filer.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ogiltigt mappnamn. Användande av 'Shared' är reserverat av ownCloud", "Name" => "Namn", "Size" => "Storlek", "Modified" => "Ändrad", -"_%n folder_::_%n folders_" => array("%n mapp","%n mappar"), -"_%n file_::_%n files_" => array("%n fil","%n filer"), "%s could not be renamed" => "%s kunde inte namnändras", "Upload" => "Ladda upp", "File handling" => "Filhantering", @@ -71,10 +73,6 @@ $TRANSLATIONS = array( "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", "Current scanning" => "Aktuell skanning", -"directory" => "mapp", -"directories" => "mappar", -"file" => "fil", -"files" => "filer", "Upgrading filesystem cache..." => "Uppgraderar filsystemets cache..." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/ta_LK.php b/apps/files/l10n/ta_LK.php index eb39218e48..154e0d6796 100644 --- a/apps/files/l10n/ta_LK.php +++ b/apps/files/l10n/ta_LK.php @@ -7,6 +7,7 @@ $TRANSLATIONS = array( "No file was uploaded" => "எந்த கோப்பும் பதிவேற்றப்படவில்லை", "Missing a temporary folder" => "ஒரு தற்காலிகமான கோப்புறையை காணவில்லை", "Failed to write to disk" => "வட்டில் எழுத முடியவில்லை", +"Upload failed" => "பதிவேற்றல் தோல்வியுற்றது", "Files" => "கோப்புகள்", "Unable to upload your file as it is a directory or has 0 bytes" => "அடைவு அல்லது 0 bytes ஐ கொண்டுள்ளதால் உங்களுடைய கோப்பை பதிவேற்ற முடியவில்லை", "Upload cancelled." => "பதிவேற்றல் இரத்து செய்யப்பட்டுள்ளது", @@ -22,13 +23,13 @@ $TRANSLATIONS = array( "cancel" => "இரத்து செய்க", "replaced {new_name} with {old_name}" => "{new_name} ஆனது {old_name} இனால் மாற்றப்பட்டது", "undo" => "முன் செயல் நீக்கம் ", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "செல்லுபடியற்ற பெயர்,'\\', '/', '<', '>', ':', '\"', '|', '?' மற்றும் '*' ஆகியன அனுமதிக்கப்படமாட்டாது.", "Name" => "பெயர்", "Size" => "அளவு", "Modified" => "மாற்றப்பட்டது", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "Upload" => "பதிவேற்றுக", "File handling" => "கோப்பு கையாளுதல்", "Maximum upload size" => "பதிவேற்றக்கூடிய ஆகக்கூடிய அளவு ", diff --git a/apps/files/l10n/te.php b/apps/files/l10n/te.php index 5a108274dd..60aabc8a36 100644 --- a/apps/files/l10n/te.php +++ b/apps/files/l10n/te.php @@ -3,11 +3,11 @@ $TRANSLATIONS = array( "Error" => "పొరపాటు", "Delete permanently" => "శాశ్వతంగా తొలగించు", "cancel" => "రద్దుచేయి", +"_%n folder_::_%n folders_" => array("",""), +"_%n file_::_%n files_" => array("",""), "_Uploading %n file_::_Uploading %n files_" => array("",""), "Name" => "పేరు", "Size" => "పరిమాణం", -"_%n folder_::_%n folders_" => array("",""), -"_%n file_::_%n files_" => array("",""), "Save" => "భద్రపరచు", "Folder" => "సంచయం", "Delete" => "తొలగించు" diff --git a/apps/files/l10n/th_TH.php b/apps/files/l10n/th_TH.php index c101398918..aa8cf4e9b5 100644 --- a/apps/files/l10n/th_TH.php +++ b/apps/files/l10n/th_TH.php @@ -11,6 +11,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "โฟลเดอร์ชั่วคราวเกิดการสูญหาย", "Failed to write to disk" => "เขียนข้อมูลลงแผ่นดิสก์ล้มเหลว", "Not enough storage available" => "เหลือพื้นที่ไม่เพียงสำหรับใช้งาน", +"Upload failed" => "อัพโหลดล้มเหลว", "Invalid directory." => "ไดเร็กทอรี่ไม่ถูกต้อง", "Files" => "ไฟล์", "Unable to upload your file as it is a directory or has 0 bytes" => "ไม่สามารถอัพโหลดไฟล์ของคุณได้ เนื่องจากไฟล์ดังกล่าวเป็นไดเร็กทอรี่ หรือ มีขนาดไฟล์ 0 ไบต์", @@ -28,6 +29,8 @@ $TRANSLATIONS = array( "cancel" => "ยกเลิก", "replaced {new_name} with {old_name}" => "แทนที่ {new_name} ด้วย {old_name} แล้ว", "undo" => "เลิกทำ", +"_%n folder_::_%n folders_" => array(""), +"_%n file_::_%n files_" => array(""), "_Uploading %n file_::_Uploading %n files_" => array(""), "files uploading" => "การอัพโหลดไฟล์", "'.' is an invalid file name." => "'.' เป็นชื่อไฟล์ที่ไม่ถูกต้อง", @@ -36,12 +39,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "พื้นที่จัดเก็บข้อมูลของคุณเต็มแล้ว ไม่สามารถอัพเดทหรือผสานไฟล์ต่างๆได้อีกต่อไป", "Your storage is almost full ({usedSpacePercent}%)" => "พื้นที่จัดเก็บข้อมูลของคุณใกล้เต็มแล้ว ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "กำลังเตรียมดาวน์โหลดข้อมูล หากไฟล์มีขนาดใหญ่ อาจใช้เวลาสักครู่", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "ชื่อโฟลเดอร์ไม่ถูกต้อง การใช้งาน 'แชร์' สงวนไว้สำหรับ Owncloud เท่านั้น", "Name" => "ชื่อ", "Size" => "ขนาด", "Modified" => "แก้ไขแล้ว", -"_%n folder_::_%n folders_" => array(""), -"_%n file_::_%n files_" => array(""), "Upload" => "อัพโหลด", "File handling" => "การจัดกาไฟล์", "Maximum upload size" => "ขนาดไฟล์สูงสุดที่อัพโหลดได้", @@ -64,8 +64,6 @@ $TRANSLATIONS = array( "The files you are trying to upload exceed the maximum size for file uploads on this server." => "ไฟล์ที่คุณพยายามที่จะอัพโหลดมีขนาดเกินกว่าขนาดสูงสุดที่กำหนดไว้ให้อัพโหลดได้สำหรับเซิร์ฟเวอร์นี้", "Files are being scanned, please wait." => "ไฟล์กำลังอยู่ระหว่างการสแกน, กรุณารอสักครู่.", "Current scanning" => "ไฟล์ที่กำลังสแกนอยู่ขณะนี้", -"file" => "ไฟล์", -"files" => "ไฟล์", "Upgrading filesystem cache..." => "กำลังอัพเกรดหน่วยความจำแคชของระบบไฟล์..." ); $PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files/l10n/tr.php b/apps/files/l10n/tr.php index 725bebfa7d..dd089757d5 100644 --- a/apps/files/l10n/tr.php +++ b/apps/files/l10n/tr.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Geçici dizin eksik", "Failed to write to disk" => "Diske yazılamadı", "Not enough storage available" => "Yeterli disk alanı yok", +"Upload failed" => "Yükleme başarısız", "Invalid directory." => "Geçersiz dizin.", "Files" => "Dosyalar", "Unable to upload your file as it is a directory or has 0 bytes" => "Dosyanızın boyutu 0 byte olduğundan veya bir dizin olduğundan yüklenemedi", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "iptal", "replaced {new_name} with {old_name}" => "{new_name} ismi {old_name} ile değiştirildi", "undo" => "geri al", +"_%n folder_::_%n folders_" => array("%n dizin","%n dizin"), +"_%n file_::_%n files_" => array("%n dosya","%n dosya"), "_Uploading %n file_::_Uploading %n files_" => array("%n dosya yükleniyor","%n dosya yükleniyor"), "files uploading" => "Dosyalar yükleniyor", "'.' is an invalid file name." => "'.' geçersiz dosya adı.", @@ -39,13 +42,11 @@ $TRANSLATIONS = array( "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Geçersiz isim, '\\', '/', '<', '>', ':', '\"', '|', '?' ve '*' karakterlerine izin verilmemektedir.", "Your storage is full, files can not be updated or synced anymore!" => "Depolama alanınız dolu, artık dosyalar güncellenmeyecek yada senkronizasyon edilmeyecek.", "Your storage is almost full ({usedSpacePercent}%)" => "Depolama alanınız neredeyse dolu ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Şifreleme işlemi durduruldu ancak dosyalarınız şifreli. Dosyalarınızın şifresini kaldırmak için lütfen kişisel ayarlar kısmına geçiniz.", "Your download is being prepared. This might take some time if the files are big." => "İndirmeniz hazırlanıyor. Dosya büyük ise biraz zaman alabilir.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Geçersiz dizin adı. Shared isminin kullanımı Owncloud tarafından rezerver edilmiştir.", "Name" => "İsim", "Size" => "Boyut", "Modified" => "Değiştirilme", -"_%n folder_::_%n folders_" => array("%n dizin","%n dizin"), -"_%n file_::_%n files_" => array("%n dosya","%n dosya"), "%s could not be renamed" => "%s yeniden adlandırılamadı", "Upload" => "Yükle", "File handling" => "Dosya taşıma", @@ -71,10 +72,6 @@ $TRANSLATIONS = array( "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.", "Current scanning" => "Güncel tarama", -"directory" => "dizin", -"directories" => "dizinler", -"file" => "dosya", -"files" => "dosyalar", "Upgrading filesystem cache..." => "Sistem dosyası önbelleği güncelleniyor" ); $PLURAL_FORMS = "nplurals=2; plural=(n > 1);"; diff --git a/apps/files/l10n/ug.php b/apps/files/l10n/ug.php index 2eceeea44a..920d077e4e 100644 --- a/apps/files/l10n/ug.php +++ b/apps/files/l10n/ug.php @@ -20,13 +20,13 @@ $TRANSLATIONS = array( "suggest name" => "تەۋسىيە ئات", "cancel" => "ۋاز كەچ", "undo" => "يېنىۋال", +"_%n folder_::_%n folders_" => array(""), +"_%n file_::_%n files_" => array(""), "_Uploading %n file_::_Uploading %n files_" => array(""), "files uploading" => "ھۆججەت يۈكلىنىۋاتىدۇ", "Name" => "ئاتى", "Size" => "چوڭلۇقى", "Modified" => "ئۆزگەرتكەن", -"_%n folder_::_%n folders_" => array(""), -"_%n file_::_%n files_" => array(""), "Upload" => "يۈكلە", "Save" => "ساقلا", "New" => "يېڭى", diff --git a/apps/files/l10n/uk.php b/apps/files/l10n/uk.php index f34383d969..781590cff3 100644 --- a/apps/files/l10n/uk.php +++ b/apps/files/l10n/uk.php @@ -11,6 +11,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Відсутній тимчасовий каталог", "Failed to write to disk" => "Невдалося записати на диск", "Not enough storage available" => "Місця більше немає", +"Upload failed" => "Помилка завантаження", "Invalid directory." => "Невірний каталог.", "Files" => "Файли", "Unable to upload your file as it is a directory or has 0 bytes" => "Неможливо завантажити ваш файл тому, що він тека або файл розміром 0 байт", @@ -29,6 +30,8 @@ $TRANSLATIONS = array( "cancel" => "відміна", "replaced {new_name} with {old_name}" => "замінено {new_name} на {old_name}", "undo" => "відмінити", +"_%n folder_::_%n folders_" => array("","",""), +"_%n file_::_%n files_" => array("","",""), "_Uploading %n file_::_Uploading %n files_" => array("","",""), "files uploading" => "файли завантажуються", "'.' is an invalid file name." => "'.' це невірне ім'я файлу.", @@ -37,12 +40,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Ваше сховище переповнене, файли більше не можуть бути оновлені або синхронізовані !", "Your storage is almost full ({usedSpacePercent}%)" => "Ваше сховище майже повне ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Ваше завантаження готується. Це може зайняти деякий час, якщо файли завеликі.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Невірне ім'я теки. Використання \"Shared\" зарезервовано Owncloud", "Name" => "Ім'я", "Size" => "Розмір", "Modified" => "Змінено", -"_%n folder_::_%n folders_" => array("","",""), -"_%n file_::_%n files_" => array("","",""), "%s could not be renamed" => "%s не може бути перейменований", "Upload" => "Вивантажити", "File handling" => "Робота з файлами", @@ -68,10 +68,6 @@ $TRANSLATIONS = array( "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Файли,що ви намагаєтесь відвантажити перевищують максимальний дозволений розмір файлів на цьому сервері.", "Files are being scanned, please wait." => "Файли скануються, зачекайте, будь-ласка.", "Current scanning" => "Поточне сканування", -"directory" => "каталог", -"directories" => "каталоги", -"file" => "файл", -"files" => "файли", "Upgrading filesystem cache..." => "Оновлення кеша файлової системи..." ); $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);"; diff --git a/apps/files/l10n/ur_PK.php b/apps/files/l10n/ur_PK.php index 15c24700df..6854c42158 100644 --- a/apps/files/l10n/ur_PK.php +++ b/apps/files/l10n/ur_PK.php @@ -1,9 +1,9 @@ "ایرر", -"_Uploading %n file_::_Uploading %n files_" => array("",""), "_%n folder_::_%n folders_" => array("",""), "_%n file_::_%n files_" => array("",""), +"_Uploading %n file_::_Uploading %n files_" => array("",""), "Unshare" => "شئیرنگ ختم کریں" ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/files/l10n/vi.php b/apps/files/l10n/vi.php index ae5b152ed0..b98a14f6d7 100644 --- a/apps/files/l10n/vi.php +++ b/apps/files/l10n/vi.php @@ -11,6 +11,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "Không tìm thấy thư mục tạm", "Failed to write to disk" => "Không thể ghi ", "Not enough storage available" => "Không đủ không gian lưu trữ", +"Upload failed" => "Tải lên thất bại", "Invalid directory." => "Thư mục không hợp lệ", "Files" => "Tập tin", "Unable to upload your file as it is a directory or has 0 bytes" => "Không thể tải lên tập tin của bạn ,nó như là một thư mục hoặc có 0 byte", @@ -29,6 +30,8 @@ $TRANSLATIONS = array( "cancel" => "hủy", "replaced {new_name} with {old_name}" => "đã thay thế {new_name} bằng {old_name}", "undo" => "lùi lại", +"_%n folder_::_%n folders_" => array(""), +"_%n file_::_%n files_" => array(""), "_Uploading %n file_::_Uploading %n files_" => array(""), "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ệ", @@ -37,12 +40,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "Your storage is full, files can not be updated or synced anymore!", "Your storage is almost full ({usedSpacePercent}%)" => "Your storage is almost full ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Your download is being prepared. This might take some time if the files are big.", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Invalid folder name. Usage of 'Shared' is reserved by Owncloud", "Name" => "Tên", "Size" => "Kích cỡ", "Modified" => "Thay đổi", -"_%n folder_::_%n folders_" => array(""), -"_%n file_::_%n files_" => array(""), "Upload" => "Tải lên", "File handling" => "Xử lý tập tin", "Maximum upload size" => "Kích thước tối đa ", @@ -67,8 +67,6 @@ $TRANSLATIONS = array( "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Các tập tin bạn đang tải lên vượt quá kích thước tối đa cho phép trên máy chủ .", "Files are being scanned, please wait." => "Tập tin đang được quét ,vui lòng chờ.", "Current scanning" => "Hiện tại đang quét", -"file" => "file", -"files" => "files", "Upgrading filesystem cache..." => "Đang nâng cấp bộ nhớ đệm cho tập tin hệ thống..." ); $PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files/l10n/zh_CN.GB2312.php b/apps/files/l10n/zh_CN.GB2312.php deleted file mode 100644 index d031a1e5a5..0000000000 --- a/apps/files/l10n/zh_CN.GB2312.php +++ /dev/null @@ -1,80 +0,0 @@ - "无法移动 %s - 存在同名文件", -"Could not move %s" => "无法移动 %s", -"Unable to set upload directory." => "无法设置上传文件夹", -"Invalid Token" => "非法Token", -"No file was uploaded. Unknown error" => "没有上传文件。未知错误", -"There is no error, the file uploaded with success" => "文件上传成功", -"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "上传的文件超过了php.ini指定的upload_max_filesize", -"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "上传的文件超过了 HTML 表格中指定的 MAX_FILE_SIZE 选项", -"The uploaded file was only partially uploaded" => "文件部分上传", -"No file was uploaded" => "没有上传文件", -"Missing a temporary folder" => "缺失临时文件夹", -"Failed to write to disk" => "写磁盘失败", -"Not enough storage available" => "容量不足", -"Invalid directory." => "无效文件夹", -"Files" => "文件", -"Unable to upload your file as it is a directory or has 0 bytes" => "不能上传您的文件,由于它是文件夹或者为空文件", -"Not enough space available" => "容量不足", -"Upload cancelled." => "上传取消了", -"File upload is in progress. Leaving the page now will cancel the upload." => "文件正在上传。关闭页面会取消上传。", -"URL cannot be empty." => "网址不能为空。", -"Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "无效文件夹名。“Shared”已经被系统保留。", -"Error" => "出错", -"Share" => "分享", -"Delete permanently" => "永久删除", -"Rename" => "重命名", -"Pending" => "等待中", -"{new_name} already exists" => "{new_name} 已存在", -"replace" => "替换", -"suggest name" => "推荐名称", -"cancel" => "取消", -"replaced {new_name} with {old_name}" => "已用 {old_name} 替换 {new_name}", -"undo" => "撤销", -"_Uploading %n file_::_Uploading %n files_" => array("正在上传 %n 个文件"), -"files uploading" => "个文件正在上传", -"'.' is an invalid file name." => "'.' 文件名不正确", -"File name cannot be empty." => "文件名不能为空", -"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "文件名内不能包含以下符号:\\ / < > : \" | ?和 *", -"Your storage is full, files can not be updated or synced anymore!" => "容量已满,不能再同步/上传文件了!", -"Your storage is almost full ({usedSpacePercent}%)" => "你的空间快用满了 ({usedSpacePercent}%)", -"Your download is being prepared. This might take some time if the files are big." => "正在下载,可能会花点时间,跟文件大小有关", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "不正确文件夹名。Shared是保留名,不能使用。", -"Name" => "名称", -"Size" => "大小", -"Modified" => "修改日期", -"_%n folder_::_%n folders_" => array("%n 个文件夹"), -"_%n file_::_%n files_" => array("%n 个文件"), -"%s could not be renamed" => "不能重命名 %s", -"Upload" => "上传", -"File handling" => "文件处理中", -"Maximum upload size" => "最大上传大小", -"max. possible: " => "最大可能", -"Needed for multi-file and folder downloads." => "需要多文件和文件夹下载.", -"Enable ZIP-download" => "支持ZIP下载", -"0 is unlimited" => "0是无限的", -"Maximum input size for ZIP files" => "最大的ZIP文件输入大小", -"Save" => "保存", -"New" => "新建", -"Text file" => "文本文档", -"Folder" => "文件夹", -"From link" => "来自链接", -"Deleted files" => "已删除的文件", -"Cancel upload" => "取消上传", -"You don’t have write permissions here." => "您没有写入权限。", -"Nothing in here. Upload something!" => "这里没有东西.上传点什么!", -"Download" => "下载", -"Unshare" => "取消分享", -"Delete" => "删除", -"Upload too large" => "上传过大", -"The files you are trying to upload exceed the maximum size for file uploads on this server." => "你正在试图上传的文件超过了此服务器支持的最大的文件大小.", -"Files are being scanned, please wait." => "正在扫描文件,请稍候.", -"Current scanning" => "正在扫描", -"directory" => "文件夹", -"directories" => "文件夹", -"file" => "文件", -"files" => "文件", -"Upgrading filesystem cache..." => "升级系统缓存..." -); -$PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files/l10n/zh_CN.php b/apps/files/l10n/zh_CN.php index 495e9d9d9d..59b09ad950 100644 --- a/apps/files/l10n/zh_CN.php +++ b/apps/files/l10n/zh_CN.php @@ -13,6 +13,7 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "缺少临时目录", "Failed to write to disk" => "写入磁盘失败", "Not enough storage available" => "没有足够的存储空间", +"Upload failed" => "上传失败", "Invalid directory." => "无效文件夹。", "Files" => "文件", "Unable to upload your file as it is a directory or has 0 bytes" => "无法上传您的文件,文件夹或者空文件", @@ -32,6 +33,8 @@ $TRANSLATIONS = array( "cancel" => "取消", "replaced {new_name} with {old_name}" => "已将 {old_name}替换成 {new_name}", "undo" => "撤销", +"_%n folder_::_%n folders_" => array("%n 文件夹"), +"_%n file_::_%n files_" => array("%n个文件"), "_Uploading %n file_::_Uploading %n files_" => array(""), "files uploading" => "文件上传中", "'.' is an invalid file name." => "'.' 是一个无效的文件名。", @@ -40,12 +43,9 @@ $TRANSLATIONS = array( "Your storage is full, files can not be updated or synced anymore!" => "您的存储空间已满,文件将无法更新或同步!", "Your storage is almost full ({usedSpacePercent}%)" => "您的存储空间即将用完 ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "下载正在准备中。如果文件较大可能会花费一些时间。", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "无效文件夹名。'共享' 是 Owncloud 预留的文件夹名。", "Name" => "名称", "Size" => "大小", "Modified" => "修改日期", -"_%n folder_::_%n folders_" => array("%n 文件夹"), -"_%n file_::_%n files_" => array("%n个文件"), "%s could not be renamed" => "%s 不能被重命名", "Upload" => "上传", "File handling" => "文件处理", @@ -71,8 +71,6 @@ $TRANSLATIONS = array( "The files you are trying to upload exceed the maximum size for file uploads on this server." => "您正尝试上传的文件超过了此服务器可以上传的最大容量限制", "Files are being scanned, please wait." => "文件正在被扫描,请稍候。", "Current scanning" => "当前扫描", -"file" => "文件", -"files" => "文件", "Upgrading filesystem cache..." => "正在更新文件系统缓存..." ); $PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files/l10n/zh_HK.php b/apps/files/l10n/zh_HK.php index a9064fa7f7..febed4fe8f 100644 --- a/apps/files/l10n/zh_HK.php +++ b/apps/files/l10n/zh_HK.php @@ -3,10 +3,10 @@ $TRANSLATIONS = array( "Files" => "文件", "Error" => "錯誤", "Share" => "分享", -"_Uploading %n file_::_Uploading %n files_" => array(""), -"Name" => "名稱", "_%n folder_::_%n folders_" => array(""), "_%n file_::_%n files_" => array(""), +"_Uploading %n file_::_Uploading %n files_" => array(""), +"Name" => "名稱", "Upload" => "上傳", "Save" => "儲存", "Download" => "下載", diff --git a/apps/files/l10n/zh_TW.php b/apps/files/l10n/zh_TW.php index b96b02e5d9..21c929f81a 100644 --- a/apps/files/l10n/zh_TW.php +++ b/apps/files/l10n/zh_TW.php @@ -1,11 +1,11 @@ "無法移動 %s - 同名的檔案已經存在", +"Could not move %s - File with this name already exists" => "無法移動 %s ,同名的檔案已經存在", "Could not move %s" => "無法移動 %s", -"Unable to set upload directory." => "無法設定上傳目錄。", +"Unable to set upload directory." => "無法設定上傳目錄", "Invalid Token" => "無效的 token", -"No file was uploaded. Unknown error" => "沒有檔案被上傳。未知的錯誤。", -"There is no error, the file uploaded with success" => "無錯誤,檔案上傳成功", +"No file was uploaded. Unknown error" => "沒有檔案被上傳,原因未知", +"There is no error, the file uploaded with success" => "一切都順利,檔案上傳成功", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "上傳的檔案大小超過 php.ini 當中 upload_max_filesize 參數的設定:", "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "上傳的檔案大小超過 HTML 表單中 MAX_FILE_SIZE 的限制", "The uploaded file was only partially uploaded" => "只有檔案的一部分被上傳", @@ -13,13 +13,14 @@ $TRANSLATIONS = array( "Missing a temporary folder" => "找不到暫存資料夾", "Failed to write to disk" => "寫入硬碟失敗", "Not enough storage available" => "儲存空間不足", -"Invalid directory." => "無效的資料夾。", +"Upload failed" => "上傳失敗", +"Invalid directory." => "無效的資料夾", "Files" => "檔案", -"Unable to upload your file as it is a directory or has 0 bytes" => "無法上傳您的檔案因為它可能是一個目錄或檔案大小為0", +"Unable to upload your file as it is a directory or has 0 bytes" => "無法上傳您的檔案,因為它可能是一個目錄或檔案大小為0", "Not enough space available" => "沒有足夠的可用空間", "Upload cancelled." => "上傳已取消", -"File upload is in progress. Leaving the page now will cancel the upload." => "檔案上傳中。離開此頁面將會取消上傳。", -"URL cannot be empty." => "URL 不能為空白。", +"File upload is in progress. Leaving the page now will cancel the upload." => "檔案上傳中,離開此頁面將會取消上傳。", +"URL cannot be empty." => "URL 不能為空", "Invalid folder name. Usage of 'Shared' is reserved by ownCloud" => "無效的資料夾名稱,'Shared' 的使用被 ownCloud 保留", "Error" => "錯誤", "Share" => "分享", @@ -32,49 +33,46 @@ $TRANSLATIONS = array( "cancel" => "取消", "replaced {new_name} with {old_name}" => "使用 {new_name} 取代 {old_name}", "undo" => "復原", -"_Uploading %n file_::_Uploading %n files_" => array(""), -"files uploading" => "檔案正在上傳中", -"'.' is an invalid file name." => "'.' 是不合法的檔名。", -"File name cannot be empty." => "檔名不能為空。", -"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "檔名不合法,不允許 '\\', '/', '<', '>', ':', '\"', '|', '?' 和 '*' 。", +"_%n folder_::_%n folders_" => array("%n 個資料夾"), +"_%n file_::_%n files_" => array("%n 個檔案"), +"{dirs} and {files}" => "{dirs} 和 {files}", +"_Uploading %n file_::_Uploading %n files_" => array("%n 個檔案正在上傳"), +"files uploading" => "檔案上傳中", +"'.' is an invalid file name." => "'.' 是不合法的檔名", +"File name cannot be empty." => "檔名不能為空", +"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "檔名不合法,不允許 \\ / < > : \" | ? * 字元", "Your storage is full, files can not be updated or synced anymore!" => "您的儲存空間已滿,沒有辦法再更新或是同步檔案!", "Your storage is almost full ({usedSpacePercent}%)" => "您的儲存空間快要滿了 ({usedSpacePercent}%)", +"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "加密已經被停用,但是您的舊檔案還是處於已加密的狀態,請前往個人設定以解密這些檔案。", "Your download is being prepared. This might take some time if the files are big." => "正在準備您的下載,若您的檔案較大,將會需要更多時間。", -"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "無效的資料夾名稱,'Shared' 的使用被 ownCloud 保留", "Name" => "名稱", "Size" => "大小", -"Modified" => "修改", -"_%n folder_::_%n folders_" => array(""), -"_%n file_::_%n files_" => array(""), +"Modified" => "修改時間", "%s could not be renamed" => "無法重新命名 %s", "Upload" => "上傳", "File handling" => "檔案處理", -"Maximum upload size" => "最大上傳檔案大小", +"Maximum upload size" => "上傳限制", "max. possible: " => "最大允許:", -"Needed for multi-file and folder downloads." => "針對多檔案和目錄下載是必填的。", -"Enable ZIP-download" => "啟用 Zip 下載", +"Needed for multi-file and folder downloads." => "下載多檔案和目錄時,此項是必填的。", +"Enable ZIP-download" => "啟用 ZIP 下載", "0 is unlimited" => "0代表沒有限制", -"Maximum input size for ZIP files" => "針對 ZIP 檔案最大輸入大小", +"Maximum input size for ZIP files" => "ZIP 壓縮前的原始大小限制", "Save" => "儲存", "New" => "新增", "Text file" => "文字檔", "Folder" => "資料夾", "From link" => "從連結", -"Deleted files" => "已刪除的檔案", +"Deleted files" => "回收桶", "Cancel upload" => "取消上傳", -"You don’t have write permissions here." => "您在這裡沒有編輯權。", -"Nothing in here. Upload something!" => "這裡什麼也沒有,上傳一些東西吧!", +"You don’t have write permissions here." => "您在這裡沒有編輯權", +"Nothing in here. Upload something!" => "這裡還沒有東西,上傳一些吧!", "Download" => "下載", -"Unshare" => "取消共享", +"Unshare" => "取消分享", "Delete" => "刪除", "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." => "正在掃描檔案,請稍等。", -"Current scanning" => "目前掃描", -"directory" => "目錄", -"directories" => "目錄", -"file" => "檔案", -"files" => "檔案", -"Upgrading filesystem cache..." => "正在升級檔案系統快取..." +"Current scanning" => "正在掃描", +"Upgrading filesystem cache..." => "正在升級檔案系統快取…" ); $PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files/lib/helper.php b/apps/files/lib/helper.php index f2b1f142e9..7135ef9f65 100644 --- a/apps/files/lib/helper.php +++ b/apps/files/lib/helper.php @@ -11,7 +11,7 @@ class Helper $maxHumanFilesize = $l->t('Upload') . ' max. ' . $maxHumanFilesize; // information about storage capacities - $storageInfo = \OC_Helper::getStorageInfo(); + $storageInfo = \OC_Helper::getStorageInfo($dir); return array('uploadMaxFilesize' => $maxUploadFilesize, 'maxHumanFilesize' => $maxHumanFilesize, diff --git a/apps/files/templates/index.php b/apps/files/templates/index.php index 360874103f..24cb8c2fe5 100644 --- a/apps/files/templates/index.php +++ b/apps/files/templates/index.php @@ -10,7 +10,7 @@ data-type='file'>

t('Text file'));?>

  • t('Folder'));?>

  • -
  • t('From link'));?>

  • @@ -56,24 +56,27 @@ -
    t('Nothing in here. Upload something!'))?>
    +
    t('Nothing in here. Upload something!'))?>
    - +
    - - - - - - - - "Nemožno zmeniť heslo. Pravdepodobne nebolo staré heslo zadané správne.", "Private key password successfully updated." => "Heslo súkromného kľúča je úspešne aktualizované.", "Could not update the private key password. Maybe the old password was not correct." => "Nemožno aktualizovať heslo súkromného kľúča. Možno nebolo staré heslo správne.", +"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áš privátny kľúč je nesprávny! Pravdepodobne bolo zmenené vaše heslo mimo systému ownCloud (napr. váš korporátny adresár). Môžte aktualizovať vaše heslo privátneho kľúča v osobných nastaveniach za účelom obnovenia prístupu k zašifrovaným súborom.", +"Missing requirements." => "Chýbajúce požiadavky.", +"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." => "Prosím uistite sa, že PHP verzie 5.3.3 alebo novšej je nainštalované a tiež, že OpenSSL knižnica spolu z PHP rozšírením je povolená a konfigurovaná správne. Nateraz bola aplikácia šifrovania zablokovaná.", +"Following users are not set up for encryption:" => "Nasledujúci používatelia nie sú nastavení pre šifrovanie:", "Saving..." => "Ukladám...", "Your private key is not valid! Maybe the your password was changed from outside." => "Váš súkromný kľúč je neplatný. Možno bolo Vaše heslo zmenené z vonku.", +"You can unlock your private key in your " => "Môžte odomknúť váš privátny kľúč v", "personal settings" => "osobné nastavenia", "Encryption" => "Šifrovanie", +"Enable recovery key (allow to recover users files in case of password loss):" => "Povoliť obnovovací kľúč (umožňuje obnoviť používateľské súbory v prípade straty hesla):", +"Recovery key password" => "Heslo obnovovacieho kľúča", "Enabled" => "Povolené", "Disabled" => "Zakázané", +"Change recovery key password:" => "Zmeniť heslo obnovovacieho kľúča:", +"Old Recovery key password" => "Staré heslo obnovovacieho kľúča", +"New Recovery key password" => "Nové heslo obnovovacieho kľúča", "Change Password" => "Zmeniť heslo", "Your private key password no longer match your log-in password:" => "Vaše heslo súkromného kľúča je rovnaké ako Vaše prihlasovacie heslo:", "Set your old private key password to your current log-in password." => "Nastavte si staré heslo súkromného kľúča k Vášmu súčasnému prihlasovaciemu heslu.", diff --git a/apps/files_encryption/l10n/zh_CN.GB2312.php b/apps/files_encryption/l10n/zh_CN.GB2312.php deleted file mode 100644 index 0f9f459c77..0000000000 --- a/apps/files_encryption/l10n/zh_CN.GB2312.php +++ /dev/null @@ -1,6 +0,0 @@ - "保存中...", -"Encryption" => "加密" -); -$PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files_encryption/lib/crypt.php b/apps/files_encryption/lib/crypt.php index 3947b7d0c3..e129bc9313 100755 --- a/apps/files_encryption/lib/crypt.php +++ b/apps/files_encryption/lib/crypt.php @@ -25,7 +25,7 @@ namespace OCA\Encryption; -require_once realpath(dirname(__FILE__) . '/../3rdparty/Crypt_Blowfish/Blowfish.php'); +require_once __DIR__ . '/../3rdparty/Crypt_Blowfish/Blowfish.php'; /** * Class for common cryptography functionality diff --git a/apps/files_encryption/tests/crypt.php b/apps/files_encryption/tests/crypt.php index 630b50481e..5146613e25 100755 --- a/apps/files_encryption/tests/crypt.php +++ b/apps/files_encryption/tests/crypt.php @@ -7,16 +7,16 @@ * See the COPYING-README file. */ -require_once realpath(dirname(__FILE__) . '/../3rdparty/Crypt_Blowfish/Blowfish.php'); -require_once realpath(dirname(__FILE__) . '/../../../lib/base.php'); -require_once realpath(dirname(__FILE__) . '/../lib/crypt.php'); -require_once realpath(dirname(__FILE__) . '/../lib/keymanager.php'); -require_once realpath(dirname(__FILE__) . '/../lib/proxy.php'); -require_once realpath(dirname(__FILE__) . '/../lib/stream.php'); -require_once realpath(dirname(__FILE__) . '/../lib/util.php'); -require_once realpath(dirname(__FILE__) . '/../lib/helper.php'); -require_once realpath(dirname(__FILE__) . '/../appinfo/app.php'); -require_once realpath(dirname(__FILE__) . '/util.php'); +require_once __DIR__ . '/../3rdparty/Crypt_Blowfish/Blowfish.php'; +require_once __DIR__ . '/../../../lib/base.php'; +require_once __DIR__ . '/../lib/crypt.php'; +require_once __DIR__ . '/../lib/keymanager.php'; +require_once __DIR__ . '/../lib/proxy.php'; +require_once __DIR__ . '/../lib/stream.php'; +require_once __DIR__ . '/../lib/util.php'; +require_once __DIR__ . '/../lib/helper.php'; +require_once __DIR__ . '/../appinfo/app.php'; +require_once __DIR__ . '/util.php'; use OCA\Encryption; @@ -67,12 +67,12 @@ class Test_Encryption_Crypt extends \PHPUnit_Framework_TestCase { $this->pass = \Test_Encryption_Crypt::TEST_ENCRYPTION_CRYPT_USER1; // set content for encrypting / decrypting in tests - $this->dataLong = file_get_contents(realpath(dirname(__FILE__) . '/../lib/crypt.php')); + $this->dataLong = file_get_contents(__DIR__ . '/../lib/crypt.php'); $this->dataShort = 'hats'; - $this->dataUrl = realpath(dirname(__FILE__) . '/../lib/crypt.php'); - $this->legacyData = realpath(dirname(__FILE__) . '/legacy-text.txt'); - $this->legacyEncryptedData = realpath(dirname(__FILE__) . '/legacy-encrypted-text.txt'); - $this->legacyEncryptedDataKey = realpath(dirname(__FILE__) . '/encryption.key'); + $this->dataUrl = __DIR__ . '/../lib/crypt.php'; + $this->legacyData = __DIR__ . '/legacy-text.txt'; + $this->legacyEncryptedData = __DIR__ . '/legacy-encrypted-text.txt'; + $this->legacyEncryptedDataKey = __DIR__ . '/encryption.key'; $this->randomKey = Encryption\Crypt::generateKey(); $keypair = Encryption\Crypt::createKeypair(); diff --git a/apps/files_encryption/tests/keymanager.php b/apps/files_encryption/tests/keymanager.php index 7b8fd5d124..b2d200cca3 100644 --- a/apps/files_encryption/tests/keymanager.php +++ b/apps/files_encryption/tests/keymanager.php @@ -6,15 +6,15 @@ * See the COPYING-README file. */ -require_once realpath(dirname(__FILE__) . '/../../../lib/base.php'); -require_once realpath(dirname(__FILE__) . '/../lib/crypt.php'); -require_once realpath(dirname(__FILE__) . '/../lib/keymanager.php'); -require_once realpath(dirname(__FILE__) . '/../lib/proxy.php'); -require_once realpath(dirname(__FILE__) . '/../lib/stream.php'); -require_once realpath(dirname(__FILE__) . '/../lib/util.php'); -require_once realpath(dirname(__FILE__) . '/../lib/helper.php'); -require_once realpath(dirname(__FILE__) . '/../appinfo/app.php'); -require_once realpath(dirname(__FILE__) . '/util.php'); +require_once __DIR__ . '/../../../lib/base.php'; +require_once __DIR__ . '/../lib/crypt.php'; +require_once __DIR__ . '/../lib/keymanager.php'; +require_once __DIR__ . '/../lib/proxy.php'; +require_once __DIR__ . '/../lib/stream.php'; +require_once __DIR__ . '/../lib/util.php'; +require_once __DIR__ . '/../lib/helper.php'; +require_once __DIR__ . '/../appinfo/app.php'; +require_once __DIR__ . '/util.php'; use OCA\Encryption; @@ -57,11 +57,11 @@ class Test_Encryption_Keymanager extends \PHPUnit_Framework_TestCase { function setUp() { // set content for encrypting / decrypting in tests - $this->dataLong = file_get_contents(realpath(dirname(__FILE__) . '/../lib/crypt.php')); + $this->dataLong = file_get_contents(__DIR__ . '/../lib/crypt.php'); $this->dataShort = 'hats'; - $this->dataUrl = realpath(dirname(__FILE__) . '/../lib/crypt.php'); - $this->legacyData = realpath(dirname(__FILE__) . '/legacy-text.txt'); - $this->legacyEncryptedData = realpath(dirname(__FILE__) . '/legacy-encrypted-text.txt'); + $this->dataUrl = __DIR__ . '/../lib/crypt.php'; + $this->legacyData = __DIR__ . '/legacy-text.txt'; + $this->legacyEncryptedData = __DIR__ . '/legacy-encrypted-text.txt'; $this->randomKey = Encryption\Crypt::generateKey(); $keypair = Encryption\Crypt::createKeypair(); diff --git a/apps/files_encryption/tests/share.php b/apps/files_encryption/tests/share.php index 59d4adc6fe..6a29d2428d 100755 --- a/apps/files_encryption/tests/share.php +++ b/apps/files_encryption/tests/share.php @@ -20,16 +20,16 @@ * */ -require_once realpath(dirname(__FILE__) . '/../3rdparty/Crypt_Blowfish/Blowfish.php'); -require_once realpath(dirname(__FILE__) . '/../../../lib/base.php'); -require_once realpath(dirname(__FILE__) . '/../lib/crypt.php'); -require_once realpath(dirname(__FILE__) . '/../lib/keymanager.php'); -require_once realpath(dirname(__FILE__) . '/../lib/proxy.php'); -require_once realpath(dirname(__FILE__) . '/../lib/stream.php'); -require_once realpath(dirname(__FILE__) . '/../lib/util.php'); -require_once realpath(dirname(__FILE__) . '/../lib/helper.php'); -require_once realpath(dirname(__FILE__) . '/../appinfo/app.php'); -require_once realpath(dirname(__FILE__) . '/util.php'); +require_once __DIR__ . '/../3rdparty/Crypt_Blowfish/Blowfish.php'; +require_once __DIR__ . '/../../../lib/base.php'; +require_once __DIR__ . '/../lib/crypt.php'; +require_once __DIR__ . '/../lib/keymanager.php'; +require_once __DIR__ . '/../lib/proxy.php'; +require_once __DIR__ . '/../lib/stream.php'; +require_once __DIR__ . '/../lib/util.php'; +require_once __DIR__ . '/../lib/helper.php'; +require_once __DIR__ . '/../appinfo/app.php'; +require_once __DIR__ . '/util.php'; use OCA\Encryption; diff --git a/apps/files_encryption/tests/stream.php b/apps/files_encryption/tests/stream.php index 5193f8c968..530ee3a7b2 100644 --- a/apps/files_encryption/tests/stream.php +++ b/apps/files_encryption/tests/stream.php @@ -20,14 +20,14 @@ * */ -require_once realpath(dirname(__FILE__) . '/../../../lib/base.php'); -require_once realpath(dirname(__FILE__) . '/../lib/crypt.php'); -require_once realpath(dirname(__FILE__) . '/../lib/keymanager.php'); -require_once realpath(dirname(__FILE__) . '/../lib/proxy.php'); -require_once realpath(dirname(__FILE__) . '/../lib/stream.php'); -require_once realpath(dirname(__FILE__) . '/../lib/util.php'); -require_once realpath(dirname(__FILE__) . '/../appinfo/app.php'); -require_once realpath(dirname(__FILE__) . '/util.php'); +require_once __DIR__ . '/../../../lib/base.php'; +require_once __DIR__ . '/../lib/crypt.php'; +require_once __DIR__ . '/../lib/keymanager.php'; +require_once __DIR__ . '/../lib/proxy.php'; +require_once __DIR__ . '/../lib/stream.php'; +require_once __DIR__ . '/../lib/util.php'; +require_once __DIR__ . '/../appinfo/app.php'; +require_once __DIR__ . '/util.php'; use OCA\Encryption; diff --git a/apps/files_encryption/tests/trashbin.php b/apps/files_encryption/tests/trashbin.php index d64035df50..2a41ace401 100755 --- a/apps/files_encryption/tests/trashbin.php +++ b/apps/files_encryption/tests/trashbin.php @@ -20,15 +20,15 @@ * */ -require_once realpath(dirname(__FILE__) . '/../../../lib/base.php'); -require_once realpath(dirname(__FILE__) . '/../lib/crypt.php'); -require_once realpath(dirname(__FILE__) . '/../lib/keymanager.php'); -require_once realpath(dirname(__FILE__) . '/../lib/proxy.php'); -require_once realpath(dirname(__FILE__) . '/../lib/stream.php'); -require_once realpath(dirname(__FILE__) . '/../lib/util.php'); -require_once realpath(dirname(__FILE__) . '/../appinfo/app.php'); -require_once realpath(dirname(__FILE__) . '/../../files_trashbin/appinfo/app.php'); -require_once realpath(dirname(__FILE__) . '/util.php'); +require_once __DIR__ . '/../../../lib/base.php'; +require_once __DIR__ . '/../lib/crypt.php'; +require_once __DIR__ . '/../lib/keymanager.php'; +require_once __DIR__ . '/../lib/proxy.php'; +require_once __DIR__ . '/../lib/stream.php'; +require_once __DIR__ . '/../lib/util.php'; +require_once __DIR__ . '/../appinfo/app.php'; +require_once __DIR__ . '/../../files_trashbin/appinfo/app.php'; +require_once __DIR__ . '/util.php'; use OCA\Encryption; diff --git a/apps/files_encryption/tests/util.php b/apps/files_encryption/tests/util.php index 368b7b3dc3..eddc4c6b3f 100755 --- a/apps/files_encryption/tests/util.php +++ b/apps/files_encryption/tests/util.php @@ -6,13 +6,13 @@ * See the COPYING-README file. */ -require_once realpath(dirname(__FILE__) . '/../../../lib/base.php'); -require_once realpath(dirname(__FILE__) . '/../lib/crypt.php'); -require_once realpath(dirname(__FILE__) . '/../lib/keymanager.php'); -require_once realpath(dirname(__FILE__) . '/../lib/proxy.php'); -require_once realpath(dirname(__FILE__) . '/../lib/stream.php'); -require_once realpath(dirname(__FILE__) . '/../lib/util.php'); -require_once realpath(dirname(__FILE__) . '/../appinfo/app.php'); +require_once __DIR__ . '/../../../lib/base.php'; +require_once __DIR__ . '/../lib/crypt.php'; +require_once __DIR__ . '/../lib/keymanager.php'; +require_once __DIR__ . '/../lib/proxy.php'; +require_once __DIR__ . '/../lib/stream.php'; +require_once __DIR__ . '/../lib/util.php'; +require_once __DIR__ . '/../appinfo/app.php'; use OCA\Encryption; @@ -69,12 +69,12 @@ class Test_Encryption_Util extends \PHPUnit_Framework_TestCase { $this->pass = \Test_Encryption_Util::TEST_ENCRYPTION_UTIL_USER1; // set content for encrypting / decrypting in tests - $this->dataUrl = realpath(dirname(__FILE__) . '/../lib/crypt.php'); + $this->dataUrl = __DIR__ . '/../lib/crypt.php'; $this->dataShort = 'hats'; - $this->dataLong = file_get_contents(realpath(dirname(__FILE__) . '/../lib/crypt.php')); - $this->legacyData = realpath(dirname(__FILE__) . '/legacy-text.txt'); - $this->legacyEncryptedData = realpath(dirname(__FILE__) . '/legacy-encrypted-text.txt'); - $this->legacyEncryptedDataKey = realpath(dirname(__FILE__) . '/encryption.key'); + $this->dataLong = file_get_contents(__DIR__ . '/../lib/crypt.php'); + $this->legacyData = __DIR__ . '/legacy-text.txt'; + $this->legacyEncryptedData = __DIR__ . '/legacy-encrypted-text.txt'; + $this->legacyEncryptedDataKey = __DIR__ . '/encryption.key'; $this->legacyKey = "30943623843030686906\0\0\0\0"; $keypair = Encryption\Crypt::createKeypair(); diff --git a/apps/files_encryption/tests/webdav.php b/apps/files_encryption/tests/webdav.php index 33b3ce6f2f..a2a8ce6e34 100755 --- a/apps/files_encryption/tests/webdav.php +++ b/apps/files_encryption/tests/webdav.php @@ -20,14 +20,14 @@ * */ -require_once realpath(dirname(__FILE__) . '/../../../lib/base.php'); -require_once realpath(dirname(__FILE__) . '/../lib/crypt.php'); -require_once realpath(dirname(__FILE__) . '/../lib/keymanager.php'); -require_once realpath(dirname(__FILE__) . '/../lib/proxy.php'); -require_once realpath(dirname(__FILE__) . '/../lib/stream.php'); -require_once realpath(dirname(__FILE__) . '/../lib/util.php'); -require_once realpath(dirname(__FILE__) . '/../appinfo/app.php'); -require_once realpath(dirname(__FILE__) . '/util.php'); +require_once __DIR__ . '/../../../lib/base.php'; +require_once __DIR__ . '/../lib/crypt.php'; +require_once __DIR__ . '/../lib/keymanager.php'; +require_once __DIR__ . '/../lib/proxy.php'; +require_once __DIR__ . '/../lib/stream.php'; +require_once __DIR__ . '/../lib/util.php'; +require_once __DIR__ . '/../appinfo/app.php'; +require_once __DIR__ . '/util.php'; use OCA\Encryption; diff --git a/apps/files_external/3rdparty/Dropbox/API.php b/apps/files_external/3rdparty/Dropbox/API.php new file mode 100644 index 0000000000..8cdce678e1 --- /dev/null +++ b/apps/files_external/3rdparty/Dropbox/API.php @@ -0,0 +1,380 @@ +oauth = $oauth; + $this->root = $root; + $this->useSSL = $useSSL; + if (!$this->useSSL) + { + throw new Dropbox_Exception('Dropbox REST API now requires that all requests use SSL'); + } + + } + + /** + * Returns information about the current dropbox account + * + * @return stdclass + */ + public function getAccountInfo() { + + $data = $this->oauth->fetch($this->api_url . 'account/info'); + return json_decode($data['body'],true); + + } + + /** + * Returns a file's contents + * + * @param string $path path + * @param string $root Use this to override the default root path (sandbox/dropbox) + * @return string + */ + public function getFile($path = '', $root = null) { + + if (is_null($root)) $root = $this->root; + $path = str_replace(array('%2F','~'), array('/','%7E'), rawurlencode($path)); + $result = $this->oauth->fetch($this->api_content_url . 'files/' . $root . '/' . ltrim($path,'/')); + return $result['body']; + + } + + /** + * Uploads a new file + * + * @param string $path Target path (including filename) + * @param string $file Either a path to a file or a stream resource + * @param string $root Use this to override the default root path (sandbox/dropbox) + * @return bool + */ + public function putFile($path, $file, $root = null) { + + $directory = dirname($path); + $filename = basename($path); + + if($directory==='.') $directory = ''; + $directory = str_replace(array('%2F','~'), array('/','%7E'), rawurlencode($directory)); +// $filename = str_replace('~', '%7E', rawurlencode($filename)); + if (is_null($root)) $root = $this->root; + + if (is_string($file)) { + + $file = fopen($file,'rb'); + + } elseif (!is_resource($file)) { + throw new Dropbox_Exception('File must be a file-resource or a string'); + } + $result=$this->multipartFetch($this->api_content_url . 'files/' . + $root . '/' . trim($directory,'/'), $file, $filename); + + if(!isset($result["httpStatus"]) || $result["httpStatus"] != 200) + throw new Dropbox_Exception("Uploading file to Dropbox failed"); + + return true; + } + + + /** + * Copies a file or directory from one location to another + * + * This method returns the file information of the newly created file. + * + * @param string $from source path + * @param string $to destination path + * @param string $root Use this to override the default root path (sandbox/dropbox) + * @return stdclass + */ + public function copy($from, $to, $root = null) { + + if (is_null($root)) $root = $this->root; + $response = $this->oauth->fetch($this->api_url . 'fileops/copy', array('from_path' => $from, 'to_path' => $to, 'root' => $root), 'POST'); + + return json_decode($response['body'],true); + + } + + /** + * Creates a new folder + * + * This method returns the information from the newly created directory + * + * @param string $path + * @param string $root Use this to override the default root path (sandbox/dropbox) + * @return stdclass + */ + public function createFolder($path, $root = null) { + + if (is_null($root)) $root = $this->root; + + // Making sure the path starts with a / +// $path = '/' . ltrim($path,'/'); + + $response = $this->oauth->fetch($this->api_url . 'fileops/create_folder', array('path' => $path, 'root' => $root),'POST'); + return json_decode($response['body'],true); + + } + + /** + * Deletes a file or folder. + * + * This method will return the metadata information from the deleted file or folder, if successful. + * + * @param string $path Path to new folder + * @param string $root Use this to override the default root path (sandbox/dropbox) + * @return array + */ + public function delete($path, $root = null) { + + if (is_null($root)) $root = $this->root; + $response = $this->oauth->fetch($this->api_url . 'fileops/delete', array('path' => $path, 'root' => $root), 'POST'); + return json_decode($response['body']); + + } + + /** + * Moves a file or directory to a new location + * + * This method returns the information from the newly created directory + * + * @param mixed $from Source path + * @param mixed $to destination path + * @param string $root Use this to override the default root path (sandbox/dropbox) + * @return stdclass + */ + public function move($from, $to, $root = null) { + + if (is_null($root)) $root = $this->root; + $response = $this->oauth->fetch($this->api_url . 'fileops/move', array('from_path' => rawurldecode($from), 'to_path' => rawurldecode($to), 'root' => $root), 'POST'); + + return json_decode($response['body'],true); + + } + + /** + * Returns file and directory information + * + * @param string $path Path to receive information from + * @param bool $list When set to true, this method returns information from all files in a directory. When set to false it will only return infromation from the specified directory. + * @param string $hash If a hash is supplied, this method simply returns true if nothing has changed since the last request. Good for caching. + * @param int $fileLimit Maximum number of file-information to receive + * @param string $root Use this to override the default root path (sandbox/dropbox) + * @return array|true + */ + public function getMetaData($path, $list = true, $hash = null, $fileLimit = null, $root = null) { + + if (is_null($root)) $root = $this->root; + + $args = array( + 'list' => $list, + ); + + if (!is_null($hash)) $args['hash'] = $hash; + if (!is_null($fileLimit)) $args['file_limit'] = $fileLimit; + + $path = str_replace(array('%2F','~'), array('/','%7E'), rawurlencode($path)); + $response = $this->oauth->fetch($this->api_url . 'metadata/' . $root . '/' . ltrim($path,'/'), $args); + + /* 304 is not modified */ + if ($response['httpStatus']==304) { + return true; + } else { + return json_decode($response['body'],true); + } + + } + + /** + * A way of letting you keep up with changes to files and folders in a user's Dropbox. You can periodically call /delta to get a list of "delta entries", which are instructions on how to update your local state to match the server's state. + * + * This method returns the information from the newly created directory + * + * @param string $cursor A string that is used to keep track of your current state. On the next call pass in this value to return delta entries that have been recorded since the cursor was returned. + * @return stdclass + */ + public function delta($cursor) { + + $arg['cursor'] = $cursor; + + $response = $this->oauth->fetch($this->api_url . 'delta', $arg, 'POST'); + return json_decode($response['body'],true); + + } + + /** + * Returns a thumbnail (as a string) for a file path. + * + * @param string $path Path to file + * @param string $size small, medium or large + * @param string $root Use this to override the default root path (sandbox/dropbox) + * @return string + */ + public function getThumbnail($path, $size = 'small', $root = null) { + + if (is_null($root)) $root = $this->root; + $path = str_replace(array('%2F','~'), array('/','%7E'), rawurlencode($path)); + $response = $this->oauth->fetch($this->api_content_url . 'thumbnails/' . $root . '/' . ltrim($path,'/'),array('size' => $size)); + + return $response['body']; + + } + + /** + * This method is used to generate multipart POST requests for file upload + * + * @param string $uri + * @param array $arguments + * @return bool + */ + protected function multipartFetch($uri, $file, $filename) { + + /* random string */ + $boundary = 'R50hrfBj5JYyfR3vF3wR96GPCC9Fd2q2pVMERvEaOE3D8LZTgLLbRpNwXek3'; + + $headers = array( + 'Content-Type' => 'multipart/form-data; boundary=' . $boundary, + ); + + $body="--" . $boundary . "\r\n"; + $body.="Content-Disposition: form-data; name=file; filename=".rawurldecode($filename)."\r\n"; + $body.="Content-type: application/octet-stream\r\n"; + $body.="\r\n"; + $body.=stream_get_contents($file); + $body.="\r\n"; + $body.="--" . $boundary . "--"; + + // Dropbox requires the filename to also be part of the regular arguments, so it becomes + // part of the signature. + $uri.='?file=' . $filename; + + return $this->oauth->fetch($uri, $body, 'POST', $headers); + + } + + + /** + * Search + * + * Returns metadata for all files and folders that match the search query. + * + * @added by: diszo.sasil + * + * @param string $query + * @param string $root Use this to override the default root path (sandbox/dropbox) + * @param string $path + * @return array + */ + public function search($query = '', $root = null, $path = ''){ + if (is_null($root)) $root = $this->root; + if(!empty($path)){ + $path = str_replace(array('%2F','~'), array('/','%7E'), rawurlencode($path)); + } + $response = $this->oauth->fetch($this->api_url . 'search/' . $root . '/' . ltrim($path,'/'),array('query' => $query)); + return json_decode($response['body'],true); + } + + /** + * Creates and returns a shareable link to files or folders. + * + * Note: Links created by the /shares API call expire after thirty days. + * + * @param type $path + * @param type $root + * @return type + */ + public function share($path, $root = null) { + if (is_null($root)) $root = $this->root; + $path = str_replace(array('%2F','~'), array('/','%7E'), rawurlencode($path)); + $response = $this->oauth->fetch($this->api_url. 'shares/'. $root . '/' . ltrim($path, '/'), array(), 'POST'); + return json_decode($response['body'],true); + + } + + /** + * Returns a link directly to a file. + * Similar to /shares. The difference is that this bypasses the Dropbox webserver, used to provide a preview of the file, so that you can effectively stream the contents of your media. + * + * Note: The /media link expires after four hours, allotting enough time to stream files, but not enough to leave a connection open indefinitely. + * + * @param type $path + * @param type $root + * @return type + */ + public function media($path, $root = null) { + + if (is_null($root)) $root = $this->root; + $path = str_replace(array('%2F','~'), array('/','%7E'), rawurlencode($path)); + $response = $this->oauth->fetch($this->api_url. 'media/'. $root . '/' . ltrim($path, '/'), array(), 'POST'); + return json_decode($response['body'],true); + + } + + /** + * Creates and returns a copy_ref to a file. This reference string can be used to copy that file to another user's Dropbox by passing it in as the from_copy_ref parameter on /fileops/copy. + * + * @param type $path + * @param type $root + * @return type + */ + public function copy_ref($path, $root = null) { + + if (is_null($root)) $root = $this->root; + $path = str_replace(array('%2F','~'), array('/','%7E'), rawurlencode($path)); + $response = $this->oauth->fetch($this->api_url. 'copy_ref/'. $root . '/' . ltrim($path, '/')); + return json_decode($response['body'],true); + + } + + +} diff --git a/apps/files_external/3rdparty/Dropbox/Exception.php b/apps/files_external/3rdparty/Dropbox/Exception.php new file mode 100644 index 0000000000..50cbc4c791 --- /dev/null +++ b/apps/files_external/3rdparty/Dropbox/Exception.php @@ -0,0 +1,15 @@ +oauth_token = $token['token']; + $this->oauth_token_secret = $token['token_secret']; + } else { + $this->oauth_token = $token; + $this->oauth_token_secret = $token_secret; + } + + } + + /** + * Returns the oauth request tokens as an associative array. + * + * The array will contain the elements 'token' and 'token_secret'. + * + * @return array + */ + public function getToken() { + + return array( + 'token' => $this->oauth_token, + 'token_secret' => $this->oauth_token_secret, + ); + + } + + /** + * Returns the authorization url + * + * @param string $callBack Specify a callback url to automatically redirect the user back + * @return string + */ + public function getAuthorizeUrl($callBack = null) { + + // Building the redirect uri + $token = $this->getToken(); + $uri = self::URI_AUTHORIZE . '?oauth_token=' . $token['token']; + if ($callBack) $uri.='&oauth_callback=' . $callBack; + return $uri; + } + + /** + * Fetches a secured oauth url and returns the response body. + * + * @param string $uri + * @param mixed $arguments + * @param string $method + * @param array $httpHeaders + * @return string + */ + public abstract function fetch($uri, $arguments = array(), $method = 'GET', $httpHeaders = array()); + + /** + * Requests the OAuth request token. + * + * @return array + */ + abstract public function getRequestToken(); + + /** + * Requests the OAuth access tokens. + * + * @return array + */ + abstract public function getAccessToken(); + +} diff --git a/apps/files_external/3rdparty/Dropbox/OAuth/Consumer/Dropbox.php b/apps/files_external/3rdparty/Dropbox/OAuth/Consumer/Dropbox.php new file mode 100644 index 0000000000..204a659de0 --- /dev/null +++ b/apps/files_external/3rdparty/Dropbox/OAuth/Consumer/Dropbox.php @@ -0,0 +1,37 @@ +consumerRequest instanceof HTTP_OAuth_Consumer_Request) { + $this->consumerRequest = new HTTP_OAuth_Consumer_Request; + } + + // TODO: Change this and add in code to validate the SSL cert. + // see https://github.com/bagder/curl/blob/master/lib/mk-ca-bundle.pl + $this->consumerRequest->setConfig(array( + 'ssl_verify_peer' => false, + 'ssl_verify_host' => false + )); + + return $this->consumerRequest; + } +} diff --git a/apps/files_external/3rdparty/Dropbox/OAuth/Curl.php b/apps/files_external/3rdparty/Dropbox/OAuth/Curl.php new file mode 100644 index 0000000000..b75b27bb36 --- /dev/null +++ b/apps/files_external/3rdparty/Dropbox/OAuth/Curl.php @@ -0,0 +1,282 @@ +consumerKey = $consumerKey; + $this->consumerSecret = $consumerSecret; + } + + /** + * Fetches a secured oauth url and returns the response body. + * + * @param string $uri + * @param mixed $arguments + * @param string $method + * @param array $httpHeaders + * @return string + */ + public function fetch($uri, $arguments = array(), $method = 'GET', $httpHeaders = array()) { + + $uri=str_replace('http://', 'https://', $uri); // all https, upload makes problems if not + if (is_string($arguments) and strtoupper($method) == 'POST') { + preg_match("/\?file=(.*)$/i", $uri, $matches); + if (isset($matches[1])) { + $uri = str_replace($matches[0], "", $uri); + $filename = $matches[1]; + $httpHeaders=array_merge($httpHeaders,$this->getOAuthHeader($uri, array("file" => $filename), $method)); + } + } else { + $httpHeaders=array_merge($httpHeaders,$this->getOAuthHeader($uri, $arguments, $method)); + } + $ch = curl_init(); + if (strtoupper($method) == 'POST') { + curl_setopt($ch, CURLOPT_URL, $uri); + curl_setopt($ch, CURLOPT_POST, true); +// if (is_array($arguments)) +// $arguments=http_build_query($arguments); + curl_setopt($ch, CURLOPT_POSTFIELDS, $arguments); +// $httpHeaders['Content-Length']=strlen($arguments); + } else { + curl_setopt($ch, CURLOPT_URL, $uri.'?'.http_build_query($arguments)); + curl_setopt($ch, CURLOPT_POST, false); + } + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); + curl_setopt($ch, CURLOPT_TIMEOUT, 300); + curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true); + curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); +// curl_setopt($ch, CURLOPT_CAINFO, "rootca"); + curl_setopt($ch, CURLOPT_FRESH_CONNECT, true); + //Build header + $headers = array(); + foreach ($httpHeaders as $name => $value) { + $headers[] = "{$name}: $value"; + } + curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); + if (!ini_get('safe_mode') && !ini_get('open_basedir')) + curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true ); + if (function_exists($this->ProgressFunction) and defined('CURLOPT_PROGRESSFUNCTION')) { + curl_setopt($ch, CURLOPT_NOPROGRESS, false); + curl_setopt($ch, CURLOPT_PROGRESSFUNCTION, $this->ProgressFunction); + curl_setopt($ch, CURLOPT_BUFFERSIZE, 512); + } + $response=curl_exec($ch); + $errorno=curl_errno($ch); + $error=curl_error($ch); + $status=curl_getinfo($ch,CURLINFO_HTTP_CODE); + curl_close($ch); + + + if (!empty($errorno)) + throw new Dropbox_Exception_NotFound('Curl error: ('.$errorno.') '.$error."\n"); + + if ($status>=300) { + $body = json_decode($response,true); + switch ($status) { + // Not modified + case 304 : + return array( + 'httpStatus' => 304, + 'body' => null, + ); + break; + case 403 : + throw new Dropbox_Exception_Forbidden('Forbidden. + This could mean a bad OAuth request, or a file or folder already existing at the target location. + ' . $body["error"] . "\n"); + case 404 : + throw new Dropbox_Exception_NotFound('Resource at uri: ' . $uri . ' could not be found. ' . + $body["error"] . "\n"); + case 507 : + throw new Dropbox_Exception_OverQuota('This dropbox is full. ' . + $body["error"] . "\n"); + } + if (!empty($body["error"])) + throw new Dropbox_Exception_RequestToken('Error: ('.$status.') '.$body["error"]."\n"); + } + + return array( + 'body' => $response, + 'httpStatus' => $status + ); + } + + /** + * Returns named array with oauth parameters for further use + * @return array Array with oauth_ parameters + */ + private function getOAuthBaseParams() { + $params['oauth_version'] = '1.0'; + $params['oauth_signature_method'] = 'HMAC-SHA1'; + + $params['oauth_consumer_key'] = $this->consumerKey; + $tokens = $this->getToken(); + if (isset($tokens['token']) && $tokens['token']) { + $params['oauth_token'] = $tokens['token']; + } + $params['oauth_timestamp'] = time(); + $params['oauth_nonce'] = md5(microtime() . mt_rand()); + return $params; + } + + /** + * Creates valid Authorization header for OAuth, based on URI and Params + * + * @param string $uri + * @param array $params + * @param string $method GET or POST, standard is GET + * @param array $oAuthParams optional, pass your own oauth_params here + * @return array Array for request's headers section like + * array('Authorization' => 'OAuth ...'); + */ + private function getOAuthHeader($uri, $params, $method = 'GET', $oAuthParams = null) { + $oAuthParams = $oAuthParams ? $oAuthParams : $this->getOAuthBaseParams(); + + // create baseString to encode for the sent parameters + $baseString = $method . '&'; + $baseString .= $this->oauth_urlencode($uri) . "&"; + + // OAuth header does not include GET-Parameters + $signatureParams = array_merge($params, $oAuthParams); + + // sorting the parameters + ksort($signatureParams); + + $encodedParams = array(); + foreach ($signatureParams as $key => $value) { + $encodedParams[] = $this->oauth_urlencode($key) . '=' . $this->oauth_urlencode($value); + } + + $baseString .= $this->oauth_urlencode(implode('&', $encodedParams)); + + // encode the signature + $tokens = $this->getToken(); + $hash = $this->hash_hmac_sha1($this->consumerSecret.'&'.$tokens['token_secret'], $baseString); + $signature = base64_encode($hash); + + // add signature to oAuthParams + $oAuthParams['oauth_signature'] = $signature; + + $oAuthEncoded = array(); + foreach ($oAuthParams as $key => $value) { + $oAuthEncoded[] = $key . '="' . $this->oauth_urlencode($value) . '"'; + } + + return array('Authorization' => 'OAuth ' . implode(', ', $oAuthEncoded)); + } + + /** + * Requests the OAuth request token. + * + * @return void + */ + public function getRequestToken() { + $result = $this->fetch(self::URI_REQUEST_TOKEN, array(), 'POST'); + if ($result['httpStatus'] == "200") { + $tokens = array(); + parse_str($result['body'], $tokens); + $this->setToken($tokens['oauth_token'], $tokens['oauth_token_secret']); + return $this->getToken(); + } else { + throw new Dropbox_Exception_RequestToken('We were unable to fetch request tokens. This likely means that your consumer key and/or secret are incorrect.'); + } + } + + /** + * Requests the OAuth access tokens. + * + * This method requires the 'unauthorized' request tokens + * and, if successful will set the authorized request tokens. + * + * @return void + */ + public function getAccessToken() { + $result = $this->fetch(self::URI_ACCESS_TOKEN, array(), 'POST'); + if ($result['httpStatus'] == "200") { + $tokens = array(); + parse_str($result['body'], $tokens); + $this->setToken($tokens['oauth_token'], $tokens['oauth_token_secret']); + return $this->getToken(); + } else { + throw new Dropbox_Exception_RequestToken('We were unable to fetch request tokens. This likely means that your consumer key and/or secret are incorrect.'); + } + } + + /** + * Helper function to properly urlencode parameters. + * See http://php.net/manual/en/function.oauth-urlencode.php + * + * @param string $string + * @return string + */ + private function oauth_urlencode($string) { + return str_replace('%E7', '~', rawurlencode($string)); + } + + /** + * Hash function for hmac_sha1; uses native function if available. + * + * @param string $key + * @param string $data + * @return string + */ + private function hash_hmac_sha1($key, $data) { + if (function_exists('hash_hmac') && in_array('sha1', hash_algos())) { + return hash_hmac('sha1', $data, $key, true); + } else { + $blocksize = 64; + $hashfunc = 'sha1'; + if (strlen($key) > $blocksize) { + $key = pack('H*', $hashfunc($key)); + } + + $key = str_pad($key, $blocksize, chr(0x00)); + $ipad = str_repeat(chr(0x36), $blocksize); + $opad = str_repeat(chr(0x5c), $blocksize); + $hash = pack('H*', $hashfunc(( $key ^ $opad ) . pack('H*', $hashfunc(($key ^ $ipad) . $data)))); + + return $hash; + } + } + + +} \ No newline at end of file diff --git a/apps/files_external/3rdparty/Dropbox/README.md b/apps/files_external/3rdparty/Dropbox/README.md new file mode 100644 index 0000000000..54e05db762 --- /dev/null +++ b/apps/files_external/3rdparty/Dropbox/README.md @@ -0,0 +1,31 @@ +Dropbox-php +=========== + +This PHP library allows you to easily integrate dropbox with PHP. + +The following PHP extension is required: + +* json + +The library makes use of OAuth. At the moment you can use either of these libraries: + +[PHP OAuth extension](http://pecl.php.net/package/oauth) +[PEAR's HTTP_OAUTH package](http://pear.php.net/package/http_oauth) + +The extension is recommended, but if you can't install php extensions you should go for the pear package. +Installing +---------- + + pear channel-discover pear.dropbox-php.com + pear install dropbox-php/Dropbox-alpha + +Documentation +------------- +Check out the [documentation](http://www.dropbox-php.com/docs). + +Questions? +---------- + +[Dropbox-php Mailing list](http://groups.google.com/group/dropbox-php) +[Official Dropbox developer forum](http://forums.dropbox.com/forum.php?id=5) + diff --git a/apps/files_external/3rdparty/Dropbox/autoload.php b/apps/files_external/3rdparty/Dropbox/autoload.php new file mode 100644 index 0000000000..5388ea6334 --- /dev/null +++ b/apps/files_external/3rdparty/Dropbox/autoload.php @@ -0,0 +1,29 @@ + +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +################################################################### + +define ('SMB4PHP_VERSION', '0.8'); + +################################################################### +# CONFIGURATION SECTION - Change for your needs +################################################################### + +define ('SMB4PHP_SMBCLIENT', 'smbclient'); +define ('SMB4PHP_SMBOPTIONS', 'TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192'); +define ('SMB4PHP_AUTHMODE', 'arg'); # set to 'env' to use USER enviroment variable + +################################################################### +# SMB - commands that does not need an instance +################################################################### + +$GLOBALS['__smb_cache'] = array ('stat' => array (), 'dir' => array ()); + +class smb { + + function parse_url ($url) { + $pu = parse_url (trim($url)); + foreach (array ('domain', 'user', 'pass', 'host', 'port', 'path') as $i) { + if (! isset($pu[$i])) { + $pu[$i] = ''; + } + } + if (count ($userdomain = explode (';', urldecode ($pu['user']))) > 1) { + @list ($pu['domain'], $pu['user']) = $userdomain; + } + $path = preg_replace (array ('/^\//', '/\/$/'), '', urldecode ($pu['path'])); + list ($pu['share'], $pu['path']) = (preg_match ('/^([^\/]+)\/(.*)/', $path, $regs)) + ? array ($regs[1], preg_replace ('/\//', '\\', $regs[2])) + : array ($path, ''); + $pu['type'] = $pu['path'] ? 'path' : ($pu['share'] ? 'share' : ($pu['host'] ? 'host' : '**error**')); + if (! ($pu['port'] = intval(@$pu['port']))) { + $pu['port'] = 139; + } + + // decode user and password + $pu['user'] = urldecode($pu['user']); + $pu['pass'] = urldecode($pu['pass']); + return $pu; + } + + + function look ($purl) { + return smb::client ('-L ' . escapeshellarg ($purl['host']), $purl); + } + + + function execute ($command, $purl) { + return smb::client ('-d 0 ' + . escapeshellarg ('//' . $purl['host'] . '/' . $purl['share']) + . ' -c ' . escapeshellarg ($command), $purl + ); + } + + function client ($params, $purl) { + + static $regexp = array ( + '^added interface ip=(.*) bcast=(.*) nmask=(.*)$' => 'skip', + 'Anonymous login successful' => 'skip', + '^Domain=\[(.*)\] OS=\[(.*)\] Server=\[(.*)\]$' => 'skip', + '^\tSharename[ ]+Type[ ]+Comment$' => 'shares', + '^\t---------[ ]+----[ ]+-------$' => 'skip', + '^\tServer [ ]+Comment$' => 'servers', + '^\t---------[ ]+-------$' => 'skip', + '^\tWorkgroup[ ]+Master$' => 'workg', + '^\t(.*)[ ]+(Disk|IPC)[ ]+IPC.*$' => 'skip', + '^\tIPC\\\$(.*)[ ]+IPC' => 'skip', + '^\t(.*)[ ]+(Disk)[ ]+(.*)$' => 'share', + '^\t(.*)[ ]+(Printer)[ ]+(.*)$' => 'skip', + '([0-9]+) blocks of size ([0-9]+)\. ([0-9]+) blocks available' => 'skip', + 'Got a positive name query response from ' => 'skip', + '^(session setup failed): (.*)$' => 'error', + '^(.*): ERRSRV - ERRbadpw' => 'error', + '^Error returning browse list: (.*)$' => 'error', + '^tree connect failed: (.*)$' => 'error', + '^(Connection to .* failed)(.*)$' => 'error-connect', + '^NT_STATUS_(.*) ' => 'error', + '^NT_STATUS_(.*)\$' => 'error', + 'ERRDOS - ERRbadpath \((.*).\)' => 'error', + 'cd (.*): (.*)$' => 'error', + '^cd (.*): NT_STATUS_(.*)' => 'error', + '^\t(.*)$' => 'srvorwg', + '^([0-9]+)[ ]+([0-9]+)[ ]+(.*)$' => 'skip', + '^Job ([0-9]+) cancelled' => 'skip', + '^[ ]+(.*)[ ]+([0-9]+)[ ]+(Mon|Tue|Wed|Thu|Fri|Sat|Sun)[ ](Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)[ ]+([0-9]+)[ ]+([0-9]{2}:[0-9]{2}:[0-9]{2})[ ]([0-9]{4})$' => 'files', + '^message start: ERRSRV - (ERRmsgoff)' => 'error' + ); + + if (SMB4PHP_AUTHMODE == 'env') { + putenv("USER={$purl['user']}%{$purl['pass']}"); + $auth = ''; + } else { + $auth = ($purl['user'] <> '' ? (' -U ' . escapeshellarg ($purl['user'] . '%' . $purl['pass'])) : ''); + } + if ($purl['domain'] <> '') { + $auth .= ' -W ' . escapeshellarg ($purl['domain']); + } + $port = ($purl['port'] <> 139 ? ' -p ' . escapeshellarg ($purl['port']) : ''); + $options = '-O ' . escapeshellarg(SMB4PHP_SMBOPTIONS); + + // this put env is necessary to read the output of smbclient correctly + $old_locale = getenv('LC_ALL'); + putenv('LC_ALL=en_US.UTF-8'); + $output = popen (SMB4PHP_SMBCLIENT." -N {$auth} {$options} {$port} {$options} {$params} 2>/dev/null", 'r'); + $info = array (); + $info['info']= array (); + $mode = ''; + while ($line = fgets ($output, 4096)) { + list ($tag, $regs, $i) = array ('skip', array (), array ()); + reset ($regexp); + foreach ($regexp as $r => $t) if (preg_match ('/'.$r.'/', $line, $regs)) { + $tag = $t; + break; + } + switch ($tag) { + case 'skip': continue; + case 'shares': $mode = 'shares'; break; + case 'servers': $mode = 'servers'; break; + case 'workg': $mode = 'workgroups'; break; + case 'share': + list($name, $type) = array ( + trim(substr($line, 1, 15)), + trim(strtolower(substr($line, 17, 10))) + ); + $i = ($type <> 'disk' && preg_match('/^(.*) Disk/', $line, $regs)) + ? array(trim($regs[1]), 'disk') + : array($name, 'disk'); + break; + case 'srvorwg': + list ($name, $master) = array ( + strtolower(trim(substr($line,1,21))), + strtolower(trim(substr($line, 22))) + ); + $i = ($mode == 'servers') ? array ($name, "server") : array ($name, "workgroup", $master); + break; + case 'files': + list ($attr, $name) = preg_match ("/^(.*)[ ]+([D|A|H|S|R]+)$/", trim ($regs[1]), $regs2) + ? array (trim ($regs2[2]), trim ($regs2[1])) + : array ('', trim ($regs[1])); + list ($his, $im) = array ( + explode(':', $regs[6]), 1 + strpos("JanFebMarAprMayJunJulAugSepOctNovDec", $regs[4]) / 3); + $i = ($name <> '.' && $name <> '..') + ? array ( + $name, + (strpos($attr,'D') === FALSE) ? 'file' : 'folder', + 'attr' => $attr, + 'size' => intval($regs[2]), + 'time' => mktime ($his[0], $his[1], $his[2], $im, $regs[5], $regs[7]) + ) + : array(); + break; + case 'error': + if(substr($regs[0],0,22)=='NT_STATUS_NO_SUCH_FILE'){ + return false; + }elseif(substr($regs[0],0,31)=='NT_STATUS_OBJECT_NAME_COLLISION'){ + return false; + }elseif(substr($regs[0],0,31)=='NT_STATUS_OBJECT_PATH_NOT_FOUND'){ + return false; + }elseif(substr($regs[0],0,29)=='NT_STATUS_FILE_IS_A_DIRECTORY'){ + return false; + } + trigger_error($regs[0].' params('.$params.')', E_USER_ERROR); + case 'error-connect': + return false; + } + if ($i) switch ($i[1]) { + case 'file': + case 'folder': $info['info'][$i[0]] = $i; + case 'disk': + case 'server': + case 'workgroup': $info[$i[1]][] = $i[0]; + } + } + pclose($output); + + + // restore previous locale + if ($old_locale===false) { + putenv('LC_ALL'); + } else { + putenv('LC_ALL='.$old_locale); + } + + return $info; + } + + + # stats + + function url_stat ($url, $flags = STREAM_URL_STAT_LINK) { + if ($s = smb::getstatcache($url)) { + return $s; + } + list ($stat, $pu) = array (false, smb::parse_url ($url)); + switch ($pu['type']) { + case 'host': + if ($o = smb::look ($pu)) + $stat = stat ("/tmp"); + else + trigger_error ("url_stat(): list failed for host '{$pu['host']}'", E_USER_WARNING); + break; + case 'share': + if ($o = smb::look ($pu)) { + $found = FALSE; + $lshare = strtolower ($pu['share']); # fix by Eric Leung + foreach ($o['disk'] as $s) if ($lshare == strtolower($s)) { + $found = TRUE; + $stat = stat ("/tmp"); + break; + } + if (! $found) + trigger_error ("url_stat(): disk resource '{$lshare}' not found in '{$pu['host']}'", E_USER_WARNING); + } + break; + case 'path': + if ($o = smb::execute ('dir "'.$pu['path'].'"', $pu)) { + $p = explode('\\', $pu['path']); + $name = $p[count($p)-1]; + if (isset ($o['info'][$name])) { + $stat = smb::addstatcache ($url, $o['info'][$name]); + } else { + trigger_error ("url_stat(): path '{$pu['path']}' not found", E_USER_WARNING); + } + } else { + return false; +// trigger_error ("url_stat(): dir failed for path '{$pu['path']}'", E_USER_WARNING); + } + break; + default: trigger_error ('error in URL', E_USER_ERROR); + } + return $stat; + } + + function addstatcache ($url, $info) { + $url = str_replace('//', '/', $url); + $url = rtrim($url, '/'); + global $__smb_cache; + $is_file = (strpos ($info['attr'],'D') === FALSE); + $s = ($is_file) ? stat ('/etc/passwd') : stat ('/tmp'); + $s[7] = $s['size'] = $info['size']; + $s[8] = $s[9] = $s[10] = $s['atime'] = $s['mtime'] = $s['ctime'] = $info['time']; + return $__smb_cache['stat'][$url] = $s; + } + + function getstatcache ($url) { + $url = str_replace('//', '/', $url); + $url = rtrim($url, '/'); + global $__smb_cache; + return isset ($__smb_cache['stat'][$url]) ? $__smb_cache['stat'][$url] : FALSE; + } + + function clearstatcache ($url='') { + $url = str_replace('//', '/', $url); + $url = rtrim($url, '/'); + global $__smb_cache; + if ($url == '') $__smb_cache['stat'] = array (); else unset ($__smb_cache['stat'][$url]); + } + + + # commands + + function unlink ($url) { + $pu = smb::parse_url($url); + if ($pu['type'] <> 'path') trigger_error('unlink(): error in URL', E_USER_ERROR); + smb::clearstatcache ($url); + smb_stream_wrapper::cleardircache (dirname($url)); + return smb::execute ('del "'.$pu['path'].'"', $pu); + } + + function rename ($url_from, $url_to) { + list ($from, $to) = array (smb::parse_url($url_from), smb::parse_url($url_to)); + if ($from['host'] <> $to['host'] || + $from['share'] <> $to['share'] || + $from['user'] <> $to['user'] || + $from['pass'] <> $to['pass'] || + $from['domain'] <> $to['domain']) { + trigger_error('rename(): FROM & TO must be in same server-share-user-pass-domain', E_USER_ERROR); + } + if ($from['type'] <> 'path' || $to['type'] <> 'path') { + trigger_error('rename(): error in URL', E_USER_ERROR); + } + smb::clearstatcache ($url_from); + return smb::execute ('rename "'.$from['path'].'" "'.$to['path'].'"', $to); + } + + function mkdir ($url, $mode, $options) { + $pu = smb::parse_url($url); + if ($pu['type'] <> 'path') trigger_error('mkdir(): error in URL', E_USER_ERROR); + return smb::execute ('mkdir "'.$pu['path'].'"', $pu)!==false; + } + + function rmdir ($url) { + $pu = smb::parse_url($url); + if ($pu['type'] <> 'path') trigger_error('rmdir(): error in URL', E_USER_ERROR); + smb::clearstatcache ($url); + smb_stream_wrapper::cleardircache (dirname($url)); + return smb::execute ('rmdir "'.$pu['path'].'"', $pu)!==false; + } + +} + +################################################################### +# SMB_STREAM_WRAPPER - class to be registered for smb:// URLs +################################################################### + +class smb_stream_wrapper extends smb { + + # variables + + private $stream, $url, $parsed_url = array (), $mode, $tmpfile; + private $need_flush = FALSE; + private $dir = array (), $dir_index = -1; + + + # directories + + function dir_opendir ($url, $options) { + if ($d = $this->getdircache ($url)) { + $this->dir = $d; + $this->dir_index = 0; + return TRUE; + } + $pu = smb::parse_url ($url); + switch ($pu['type']) { + case 'host': + if ($o = smb::look ($pu)) { + $this->dir = $o['disk']; + $this->dir_index = 0; + } else { + trigger_error ("dir_opendir(): list failed for host '{$pu['host']}'", E_USER_WARNING); + return false; + } + break; + case 'share': + case 'path': + if (is_array($o = smb::execute ('dir "'.$pu['path'].'\*"', $pu))) { + $this->dir = array_keys($o['info']); + $this->dir_index = 0; + $this->adddircache ($url, $this->dir); + if(substr($url,-1,1)=='/'){ + $url=substr($url,0,-1); + } + foreach ($o['info'] as $name => $info) { + smb::addstatcache($url . '/' . $name, $info); + } + } else { + trigger_error ("dir_opendir(): dir failed for path '".$pu['path']."'", E_USER_WARNING); + return false; + } + break; + default: + trigger_error ('dir_opendir(): error in URL', E_USER_ERROR); + return false; + } + return TRUE; + } + + function dir_readdir () { + return ($this->dir_index < count($this->dir)) ? $this->dir[$this->dir_index++] : FALSE; + } + + function dir_rewinddir () { $this->dir_index = 0; } + + function dir_closedir () { $this->dir = array(); $this->dir_index = -1; return TRUE; } + + + # cache + + function adddircache ($url, $content) { + $url = str_replace('//', '/', $url); + $url = rtrim($url, '/'); + global $__smb_cache; + return $__smb_cache['dir'][$url] = $content; + } + + function getdircache ($url) { + $url = str_replace('//', '/', $url); + $url = rtrim($url, '/'); + global $__smb_cache; + return isset ($__smb_cache['dir'][$url]) ? $__smb_cache['dir'][$url] : FALSE; + } + + function cleardircache ($url='') { + $url = str_replace('//', '/', $url); + $url = rtrim($url, '/'); + global $__smb_cache; + if ($url == ''){ + $__smb_cache['dir'] = array (); + }else{ + unset ($__smb_cache['dir'][$url]); + } + } + + + # streams + + function stream_open ($url, $mode, $options, $opened_path) { + $this->url = $url; + $this->mode = $mode; + $this->parsed_url = $pu = smb::parse_url($url); + if ($pu['type'] <> 'path') trigger_error('stream_open(): error in URL', E_USER_ERROR); + switch ($mode) { + case 'r': + case 'r+': + case 'rb': + case 'a': + case 'a+': $this->tmpfile = tempnam('/tmp', 'smb.down.'); + smb::execute ('get "'.$pu['path'].'" "'.$this->tmpfile.'"', $pu); + break; + case 'w': + case 'w+': + case 'wb': + case 'x': + case 'x+': $this->cleardircache(); + $this->tmpfile = tempnam('/tmp', 'smb.up.'); + $this->need_flush=true; + } + $this->stream = fopen ($this->tmpfile, $mode); + return TRUE; + } + + function stream_close () { return fclose($this->stream); } + + function stream_read ($count) { return fread($this->stream, $count); } + + function stream_write ($data) { $this->need_flush = TRUE; return fwrite($this->stream, $data); } + + function stream_eof () { return feof($this->stream); } + + function stream_tell () { return ftell($this->stream); } + + function stream_seek ($offset, $whence=null) { return fseek($this->stream, $offset, $whence); } + + function stream_flush () { + if ($this->mode <> 'r' && $this->need_flush) { + smb::clearstatcache ($this->url); + smb::execute ('put "'.$this->tmpfile.'" "'.$this->parsed_url['path'].'"', $this->parsed_url); + $this->need_flush = FALSE; + } + } + + function stream_stat () { return smb::url_stat ($this->url); } + + function __destruct () { + if ($this->tmpfile <> '') { + if ($this->need_flush) $this->stream_flush (); + unlink ($this->tmpfile); + + } + } + +} + +################################################################### +# Register 'smb' protocol ! +################################################################### + +stream_wrapper_register('smb', 'smb_stream_wrapper') + or die ('Failed to register protocol'); diff --git a/apps/files_external/l10n/zh_CN.GB2312.php b/apps/files_external/l10n/zh_CN.GB2312.php deleted file mode 100644 index 3633de6314..0000000000 --- a/apps/files_external/l10n/zh_CN.GB2312.php +++ /dev/null @@ -1,28 +0,0 @@ - "已授予权限", -"Error configuring Dropbox storage" => "配置 Dropbox 存储出错", -"Grant access" => "授予权限", -"Please provide a valid Dropbox app key and secret." => "请提供一个有效的 Dropbox app key 和 secret。", -"Error configuring Google Drive storage" => "配置 Google Drive 存储失败", -"Warning: \"smbclient\" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it." => "注意:“SMB客户端”未安装。CIFS/SMB分享不可用。请向您的系统管理员请求安装该客户端。", -"Warning: 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." => "注意:PHP的FTP支持尚未启用或未安装。FTP分享不可用。请向您的系统管理员请求安装。", -"Warning: 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." => "警告: PHP 的 Curl 支持没有安装或打开。挂载 ownCloud、WebDAV 或 Google Drive 的功能将不可用。请询问您的系统管理员去安装它。", -"External Storage" => "外部存储", -"Folder name" => "文件夹名", -"External storage" => "外部存储", -"Configuration" => "配置", -"Options" => "选项", -"Applicable" => "可应用", -"Add storage" => "扩容", -"None set" => "未设置", -"All Users" => "所有用户", -"Groups" => "群组", -"Users" => "用户", -"Delete" => "删除", -"Enable User External Storage" => "启用用户外部存储", -"Allow users to mount their own external storage" => "允许用户挂载他们的外部存储", -"SSL root certificates" => "SSL 根证书", -"Import Root Certificate" => "导入根证书" -); -$PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files_external/lib/dropbox.php b/apps/files_external/lib/dropbox.php index 081c547888..b6deab6e5a 100755 --- a/apps/files_external/lib/dropbox.php +++ b/apps/files_external/lib/dropbox.php @@ -22,7 +22,7 @@ namespace OC\Files\Storage; -require_once 'Dropbox/autoload.php'; +require_once __DIR__ . '/../3rdparty/Dropbox/autoload.php'; class Dropbox extends \OC\Files\Storage\Common { diff --git a/apps/files_external/lib/smb.php b/apps/files_external/lib/smb.php index dc4e02731f..8e7a28fba1 100644 --- a/apps/files_external/lib/smb.php +++ b/apps/files_external/lib/smb.php @@ -8,7 +8,7 @@ namespace OC\Files\Storage; -require_once 'smb4php/smb.php'; +require_once __DIR__ . '/../3rdparty/smb4php/smb.php'; class SMB extends \OC\Files\Storage\StreamWrapper{ private $password; diff --git a/apps/files_sharing/ajax/publicpreview.php b/apps/files_sharing/ajax/publicpreview.php new file mode 100644 index 0000000000..41a1c178a4 --- /dev/null +++ b/apps/files_sharing/ajax/publicpreview.php @@ -0,0 +1,85 @@ +setFile($sharedFile); + $preview->setMaxX($maxX); + $preview->setMaxY($maxY); + $preview->setScalingUp($scalingUp); + + $preview->show(); +} catch (\Exception $e) { + \OC_Response::setStatus(500); + \OC_Log::write('core', $e->getmessage(), \OC_Log::DEBUG); +} \ No newline at end of file diff --git a/apps/files_sharing/appinfo/routes.php b/apps/files_sharing/appinfo/routes.php new file mode 100644 index 0000000000..02815b5eb4 --- /dev/null +++ b/apps/files_sharing/appinfo/routes.php @@ -0,0 +1,5 @@ +create('core_ajax_public_preview', '/publicpreview.png')->action( +function() { + require_once __DIR__ . '/../ajax/publicpreview.php'; +}); \ No newline at end of file diff --git a/apps/files_sharing/js/public.js b/apps/files_sharing/js/public.js index 294223aa09..357c6fdf54 100644 --- a/apps/files_sharing/js/public.js +++ b/apps/files_sharing/js/public.js @@ -16,7 +16,7 @@ $(document).ready(function() { if (typeof FileActions !== 'undefined') { var mimetype = $('#mimetype').val(); // Show file preview if previewer is available, images are already handled by the template - if (mimetype.substr(0, mimetype.indexOf('/')) != 'image') { + if (mimetype.substr(0, mimetype.indexOf('/')) != 'image' && $('.publicpreview').length === 0) { // Trigger default action if not download TODO var action = FileActions.getDefault(mimetype, 'file', OC.PERMISSION_READ); if (typeof action === 'undefined') { @@ -31,19 +31,19 @@ $(document).ready(function() { } } FileActions.register('dir', 'Open', OC.PERMISSION_READ, '', function(filename) { - var tr = $('tr').filterAttr('data-file', filename) + var tr = $('tr').filterAttr('data-file', filename); if (tr.length > 0) { window.location = $(tr).find('a.name').attr('href'); } }); FileActions.register('file', 'Download', OC.PERMISSION_READ, '', function(filename) { - var tr = $('tr').filterAttr('data-file', filename) + var tr = $('tr').filterAttr('data-file', filename); if (tr.length > 0) { window.location = $(tr).find('a.name').attr('href'); } }); FileActions.register('dir', 'Download', OC.PERMISSION_READ, '', function(filename) { - var tr = $('tr').filterAttr('data-file', filename) + var tr = $('tr').filterAttr('data-file', filename); if (tr.length > 0) { window.location = $(tr).find('a.name').attr('href')+'&download'; } diff --git a/apps/files_sharing/l10n/eu.php b/apps/files_sharing/l10n/eu.php index 8e13c24a92..7b6a4b08b3 100644 --- a/apps/files_sharing/l10n/eu.php +++ b/apps/files_sharing/l10n/eu.php @@ -3,6 +3,12 @@ $TRANSLATIONS = array( "The password is wrong. Try again." => "Pasahitza ez da egokia. Saiatu berriro.", "Password" => "Pasahitza", "Submit" => "Bidali", +"Sorry, this link doesn’t seem to work anymore." => "Barkatu, lotura ez dirudi eskuragarria dagoenik.", +"Reasons might be:" => "Arrazoiak hurrengoak litezke:", +"the item was removed" => "fitxategia ezbatua izan da", +"the link expired" => "lotura iraungi da", +"sharing is disabled" => "elkarbanatzea ez dago gaituta", +"For more info, please ask the person who sent this link." => "Informazio gehiagorako, mesedez eskatu lotura hau bidali zuen pertsonari", "%s shared the folder %s with you" => "%sk zurekin %s karpeta elkarbanatu du", "%s shared the file %s with you" => "%sk zurekin %s fitxategia elkarbanatu du", "Download" => "Deskargatu", diff --git a/apps/files_sharing/l10n/zh_CN.GB2312.php b/apps/files_sharing/l10n/zh_CN.GB2312.php deleted file mode 100644 index 5c426672c8..0000000000 --- a/apps/files_sharing/l10n/zh_CN.GB2312.php +++ /dev/null @@ -1,19 +0,0 @@ - "密码错误。请重试。", -"Password" => "密码", -"Submit" => "提交", -"Sorry, this link doesn’t seem to work anymore." => "对不起,这个链接看起来是错误的。", -"Reasons might be:" => "原因可能是:", -"the item was removed" => "项目已经移除", -"the link expired" => "链接已过期", -"sharing is disabled" => "分享已经被禁用", -"For more info, please ask the person who sent this link." => "欲了解更多信息,请联系将此链接发送给你的人。", -"%s shared the folder %s with you" => "%s 与您分享了文件夹 %s", -"%s shared the file %s with you" => "%s 与您分享了文件 %s", -"Download" => "下载", -"Upload" => "上传", -"Cancel upload" => "取消上传", -"No preview available for" => "没有预览可用于" -); -$PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files_sharing/l10n/zh_TW.php b/apps/files_sharing/l10n/zh_TW.php index b950cbf8c9..5cc33fd383 100644 --- a/apps/files_sharing/l10n/zh_TW.php +++ b/apps/files_sharing/l10n/zh_TW.php @@ -1,7 +1,14 @@ "請檢查您的密碼並再試一次", "Password" => "密碼", "Submit" => "送出", +"Sorry, this link doesn’t seem to work anymore." => "抱歉,此連結已經失效", +"Reasons might be:" => "可能的原因:", +"the item was removed" => "項目已經移除", +"the link expired" => "連結過期", +"sharing is disabled" => "分享功能已停用", +"For more info, please ask the person who sent this link." => "請詢問告訴您此連結的人以瞭解更多", "%s shared the folder %s with you" => "%s 和您分享了資料夾 %s ", "%s shared the file %s with you" => "%s 和您分享了檔案 %s", "Download" => "下載", diff --git a/apps/files_sharing/lib/sharedstorage.php b/apps/files_sharing/lib/sharedstorage.php index 7384b094cb..d91acbbb2b 100644 --- a/apps/files_sharing/lib/sharedstorage.php +++ b/apps/files_sharing/lib/sharedstorage.php @@ -362,9 +362,13 @@ class Shared extends \OC\Files\Storage\Common { case 'xb': case 'a': case 'ab': - if (!$this->isUpdatable($path)) { - return false; - } + $exists = $this->file_exists($path); + if ($exists && !$this->isUpdatable($path)) { + return false; + } + if (!$exists && !$this->isCreatable(dirname($path))) { + return false; + } } $info = array( 'target' => $this->sharedFolder.$path, diff --git a/apps/files_sharing/public.php b/apps/files_sharing/public.php index e9fdf6e4c9..ec6b4e815f 100644 --- a/apps/files_sharing/public.php +++ b/apps/files_sharing/public.php @@ -172,6 +172,7 @@ if (isset($path)) { } else { $i['extension'] = ''; } + $i['isPreviewAvailable'] = \OCP\Preview::isMimeSupported($i['mimetype']); } $i['directory'] = $getPath; $i['permissions'] = OCP\PERMISSION_READ; @@ -194,6 +195,9 @@ if (isset($path)) { $list->assign('baseURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&path='); $list->assign('downloadURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&download&path='); + $list->assign('isPublic', true); + $list->assign('sharingtoken', $token); + $list->assign('sharingroot', $basePath); $breadcrumbNav = new OCP\Template('files', 'part.breadcrumb', ''); $breadcrumbNav->assign('breadcrumb', $breadcrumb); $breadcrumbNav->assign('baseURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&path='); diff --git a/apps/files_sharing/templates/public.php b/apps/files_sharing/templates/public.php index 746a715f3c..c164b3ea2b 100644 --- a/apps/files_sharing/templates/public.php +++ b/apps/files_sharing/templates/public.php @@ -79,6 +79,10 @@ + +
    + +
    - - t( 'Name' )); ?> - - - - Download" /> - t('Download'))?> - - - +
    + + + t( 'Name' )); ?> + + + + Download" /> + t('Download'))?> + + + +
    t('Size')); ?> diff --git a/apps/files/templates/part.list.php b/apps/files/templates/part.list.php index 0c7d693669..4076c1bb33 100644 --- a/apps/files/templates/part.list.php +++ b/apps/files/templates/part.list.php @@ -1,14 +1,7 @@ - 6 + $relativePath = substr($file['path'], 6); // the bigger the file, the darker the shade of grey; megabytes*2 $simple_size_color = intval(160-$file['size']/(1024*1024)*2); if($simple_size_color<0) $simple_size_color = 0; @@ -22,16 +15,38 @@ $totalsize = 0; ?> data-file="" data-type="" data-mime="" - data-size='' - data-permissions=''> + data-size="" + data-permissions=""> + + style="background-image:url()" - style="background-image:url()" + + + + style="background-image:url()" + + style="background-image:url()" + + + + style="background-image:url()" + + style="background-image:url()" + + > - + + + + @@ -64,33 +79,4 @@ $totalsize = 0; ?>
    - t('directory')); - } else { - p($l->t('directories')); - } - } - if ($totaldirs !== 0 && $totalfiles !== 0) { - p(' & '); - } - if ($totalfiles !== 0) { - p($totalfiles.' '); - if ($totalfiles === 1) { - p($l->t('file')); - } else { - p($l->t('files')); - } - } ?> - - -
    diff --git a/apps/files_trashbin/templates/part.list.php b/apps/files_trashbin/templates/part.list.php index 254b08dd36..f7cc6b01bb 100644 --- a/apps/files_trashbin/templates/part.list.php +++ b/apps/files_trashbin/templates/part.list.php @@ -21,11 +21,19 @@ data-timestamp='' data-dirlisting=0 > + + '; html+=''; html+=''; - html+''; + html+=''; $.each(collumns,function(index,collumn){ html+=''; + html+=''; html+=''; html='
    style="background-image:url()" - style="background-image:url()" + + style="background-image:url()" + + style="background-image:url()" + > diff --git a/apps/files_versions/js/versions.js b/apps/files_versions/js/versions.js index a14de7dbee..f57e931bad 100644 --- a/apps/files_versions/js/versions.js +++ b/apps/files_versions/js/versions.js @@ -124,19 +124,19 @@ function createVersionsDropdown(filename, files) { } function addVersion( revision ) { - title = formatDate(revision.version*1000); - name ='' + revision.humanReadableTimestamp + ''; + var title = formatDate(revision.version*1000); + var name ='' + revision.humanReadableTimestamp + ''; - path = OC.filePath('files_versions', '', 'download.php'); + var path = OC.filePath('files_versions', '', 'download.php'); - download =''; + var download =''; download+=''; revert+=' "无法恢复:%s", -"Versions" => "版本", -"Failed to revert {file} to revision {timestamp}." => "无法恢复文件 {file} 到 版本 {timestamp}。", -"More versions..." => "更多版本", -"No other versions available" => "没有其他可用版本", -"Restore" => "恢复" -); -$PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/files_versions/l10n/zh_TW.php b/apps/files_versions/l10n/zh_TW.php index 55a3dca3c3..9b8900fd8e 100644 --- a/apps/files_versions/l10n/zh_TW.php +++ b/apps/files_versions/l10n/zh_TW.php @@ -2,6 +2,9 @@ $TRANSLATIONS = array( "Could not revert: %s" => "無法還原:%s", "Versions" => "版本", +"Failed to revert {file} to revision {timestamp}." => "無法還原檔案 {file} 至版本 {timestamp}", +"More versions..." => "更多版本…", +"No other versions available" => "沒有其他版本了", "Restore" => "復原" ); $PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/user_ldap/js/settings.js b/apps/user_ldap/js/settings.js index 78ec71b70a..20d6f76dcd 100644 --- a/apps/user_ldap/js/settings.js +++ b/apps/user_ldap/js/settings.js @@ -120,7 +120,7 @@ var LdapConfiguration = { } ); } -} +}; $(document).ready(function() { $('#ldapAdvancedAccordion').accordion({ heightStyle: 'content', animate: 'easeInOutCirc'}); diff --git a/apps/user_ldap/l10n/ca.php b/apps/user_ldap/l10n/ca.php index 338317baad..455ad62d84 100644 --- a/apps/user_ldap/l10n/ca.php +++ b/apps/user_ldap/l10n/ca.php @@ -30,8 +30,11 @@ $TRANSLATIONS = array( "Password" => "Contrasenya", "For anonymous access, leave DN and Password empty." => "Per un accés anònim, deixeu la DN i la contrasenya en blanc.", "User Login Filter" => "Filtre d'inici de sessió d'usuari", +"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" => "Defineix el filtre a aplicar quan s'intenta iniciar la sessió. %%uid reemplaça el nom d'usuari en l'acció d'inici de sessió. Per exemple: \"uid=%%uid\"", "User List Filter" => "Llista de filtres d'usuari", +"Defines the filter to apply, when retrieving users (no placeholders). Example: \"objectClass=person\"" => "Defineix el filtre a aplicar quan es mostren usuaris (no textos variables). Per exemple: \"objectClass=person\"", "Group Filter" => "Filtre de grup", +"Defines the filter to apply, when retrieving groups (no placeholders). Example: \"objectClass=posixGroup\"" => "Defineix el filtre a aplicar quan es mostren grups (no textos variables). Per exemple: \"objectClass=posixGroup\"", "Connection Settings" => "Arranjaments de connexió", "Configuration Active" => "Configuració activa", "When unchecked, this configuration will be skipped." => "Si està desmarcat, aquesta configuració s'ometrà.", @@ -45,6 +48,7 @@ $TRANSLATIONS = array( "Do not use it additionally for LDAPS connections, it will fail." => "No ho useu adicionalment per a conexions LDAPS, fallarà.", "Case insensitve LDAP server (Windows)" => "Servidor LDAP sense distinció entre majúscules i minúscules (Windows)", "Turn off SSL certificate validation." => "Desactiva la validació de certificat SSL.", +"Not recommended, use it for testing only! If connection only works with this option, import the LDAP server's SSL certificate in your %s server." => "No es recomana, useu-ho només com a prova! Importeu el certificat SSL del servidor LDAP al servidor %s només si la connexió funciona amb aquesta opció.", "Cache Time-To-Live" => "Memòria de cau Time-To-Live", "in seconds. A change empties the cache." => "en segons. Un canvi buidarà la memòria de cau.", "Directory Settings" => "Arranjaments de carpetes", diff --git a/apps/user_ldap/l10n/cs_CZ.php b/apps/user_ldap/l10n/cs_CZ.php index a5f20cbf13..9109a8c710 100644 --- a/apps/user_ldap/l10n/cs_CZ.php +++ b/apps/user_ldap/l10n/cs_CZ.php @@ -30,8 +30,11 @@ $TRANSLATIONS = array( "Password" => "Heslo", "For anonymous access, leave DN and Password empty." => "Pro anonymní přístup ponechte údaje DN and heslo prázdné.", "User Login Filter" => "Filtr přihlášení uživatelů", +"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" => "Určuje použitý filtr při pokusu o přihlášení. %%uid nahrazuje uživatelské jméno v činnosti přihlášení. Příklad: \"uid=%%uid\"", "User List Filter" => "Filtr seznamu uživatelů", +"Defines the filter to apply, when retrieving users (no placeholders). Example: \"objectClass=person\"" => "Určuje použitý filtr při získávání uživatelů (bez zástupných znaků). Příklad: \"objectClass=person\"", "Group Filter" => "Filtr skupin", +"Defines the filter to apply, when retrieving groups (no placeholders). Example: \"objectClass=posixGroup\"" => "Určuje použitý filtr při získávání skupin (bez zástupných znaků). Příklad: \"objectClass=posixGroup\"", "Connection Settings" => "Nastavení spojení", "Configuration Active" => "Nastavení aktivní", "When unchecked, this configuration will be skipped." => "Pokud není zaškrtnuto, bude toto nastavení přeskočeno.", @@ -45,6 +48,7 @@ $TRANSLATIONS = array( "Do not use it additionally for LDAPS connections, it will fail." => "Nepoužívejte v kombinaci s LDAPS spojením, nebude to fungovat.", "Case insensitve LDAP server (Windows)" => "LDAP server nerozlišující velikost znaků (Windows)", "Turn off SSL certificate validation." => "Vypnout ověřování SSL certifikátu.", +"Not recommended, use it for testing only! If connection only works with this option, import the LDAP server's SSL certificate in your %s server." => "Nedoporučuje se, určeno pouze k testovacímu použití. Pokud spojení funguje jen s touto volbou, importujte SSL certifikát vašeho LDAP serveru na server %s.", "Cache Time-To-Live" => "TTL vyrovnávací paměti", "in seconds. A change empties the cache." => "v sekundách. Změna vyprázdní vyrovnávací paměť.", "Directory Settings" => "Nastavení adresáře", diff --git a/apps/user_ldap/l10n/da.php b/apps/user_ldap/l10n/da.php index e0c7acbadf..e33efe3de0 100644 --- a/apps/user_ldap/l10n/da.php +++ b/apps/user_ldap/l10n/da.php @@ -4,6 +4,7 @@ $TRANSLATIONS = array( "The configuration is valid and the connection could be established!" => "Konfigurationen er korrekt og forbindelsen kunne etableres!", "The configuration is invalid. Please look in the ownCloud log for further details." => "Konfigurationen er ugyldig. Se venligst ownCloud loggen for yderligere detaljer.", "Deletion failed" => "Fejl ved sletning", +"Take over settings from recent server configuration?" => "Overtag indstillinger fra nylig server konfiguration? ", "Keep settings?" => "Behold indstillinger?", "Cannot add server configuration" => "Kan ikke tilføje serverkonfiguration", "Success" => "Succes", @@ -28,16 +29,20 @@ $TRANSLATIONS = array( "Configuration Active" => "Konfiguration Aktiv", "Port" => "Port", "Backup (Replica) Host" => "Backup (Replika) Vært", +"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Opgiv en ikke obligatorisk backup server. Denne skal være en replikation af hoved-LDAP/AD serveren.", "Backup (Replica) Port" => "Backup (Replika) Port", "Disable Main Server" => "Deaktiver Hovedserver", "Only connect to the replica server." => "Forbind kun til replika serveren.", "Use TLS" => "Brug TLS", "Do not use it additionally for LDAPS connections, it will fail." => "Benyt ikke flere LDAPS forbindelser, det vil mislykkeds. ", +"Case insensitve LDAP server (Windows)" => "Ikke versalfølsom LDAP server (Windows)", "Turn off SSL certificate validation." => "Deaktiver SSL certifikat validering", +"Cache Time-To-Live" => "Cache Time-To-Live", "User Display Name Field" => "User Display Name Field", "Base User Tree" => "Base Bruger Træ", "Base Group Tree" => "Base Group Tree", "Group-Member association" => "Group-Member association", +"Quota Field" => "Kvote Felt", "in bytes" => "i bytes", "Email Field" => "Email Felt", "Internal Username" => "Internt Brugernavn", diff --git a/apps/user_ldap/l10n/de.php b/apps/user_ldap/l10n/de.php index 1520cc1daa..cb13275faf 100644 --- a/apps/user_ldap/l10n/de.php +++ b/apps/user_ldap/l10n/de.php @@ -30,8 +30,11 @@ $TRANSLATIONS = array( "Password" => "Passwort", "For anonymous access, leave DN and Password empty." => "Lasse die Felder DN und Passwort für anonymen Zugang leer.", "User Login Filter" => "Benutzer-Login-Filter", +"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" => "Bestimmt den Filter, welcher bei einer Anmeldung angewandt wird. %%uid ersetzt den Benutzernamen bei der Anmeldung. Beispiel: \"uid=%%uid\"", "User List Filter" => "Benutzer-Filter-Liste", +"Defines the filter to apply, when retrieving users (no placeholders). Example: \"objectClass=person\"" => "Definiert den Filter für die Wiederherstellung eines Benutzers (kein Platzhalter). Beispiel: \"objectClass=person\"", "Group Filter" => "Gruppen-Filter", +"Defines the filter to apply, when retrieving groups (no placeholders). Example: \"objectClass=posixGroup\"" => "Definiert den Filter für die Wiederherstellung einer Gruppe (kein Platzhalter). Beispiel: \"objectClass=posixGroup\"", "Connection Settings" => "Verbindungseinstellungen", "Configuration Active" => "Konfiguration aktiv", "When unchecked, this configuration will be skipped." => "Konfiguration wird übersprungen wenn deaktiviert", @@ -45,6 +48,7 @@ $TRANSLATIONS = array( "Do not use it additionally for LDAPS connections, it will fail." => "Benutze es nicht zusammen mit LDAPS Verbindungen, es wird fehlschlagen.", "Case insensitve LDAP server (Windows)" => "LDAP-Server (Windows: Groß- und Kleinschreibung bleibt unbeachtet)", "Turn off SSL certificate validation." => "Schalte die SSL-Zertifikatsprüfung aus.", +"Not recommended, use it for testing only! If connection only works with this option, import the LDAP server's SSL certificate in your %s server." => "Nur für Testzwecke geeignet, sollte Standardmäßig nicht verwendet werden. Falls die Verbindung nur mit dieser Option funktioniert, importiere das SSL-Zertifikat des LDAP-Servers in deinen %s Server.", "Cache Time-To-Live" => "Speichere Time-To-Live zwischen", "in seconds. A change empties the cache." => "in Sekunden. Eine Änderung leert den Cache.", "Directory Settings" => "Ordnereinstellungen", diff --git a/apps/user_ldap/l10n/de_DE.php b/apps/user_ldap/l10n/de_DE.php index 1064849319..677d603ffa 100644 --- a/apps/user_ldap/l10n/de_DE.php +++ b/apps/user_ldap/l10n/de_DE.php @@ -30,8 +30,11 @@ $TRANSLATIONS = array( "Password" => "Passwort", "For anonymous access, leave DN and Password empty." => "Lassen Sie die Felder DN und Passwort für einen anonymen Zugang leer.", "User Login Filter" => "Benutzer-Login-Filter", +"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" => "Bestimmt den Filter, welcher bei einer Anmeldung angewandt wird. %%uid ersetzt den Benutzernamen bei der Anmeldung. Beispiel: \"uid=%%uid\"", "User List Filter" => "Benutzer-Filter-Liste", +"Defines the filter to apply, when retrieving users (no placeholders). Example: \"objectClass=person\"" => "Definiert den Filter für die Wiederherstellung eines Benutzers (kein Platzhalter). Beispiel: \"objectClass=person\"", "Group Filter" => "Gruppen-Filter", +"Defines the filter to apply, when retrieving groups (no placeholders). Example: \"objectClass=posixGroup\"" => "Definiert den Filter für die Wiederherstellung einer Gruppe (kein Platzhalter). Beispiel: \"objectClass=posixGroup\"", "Connection Settings" => "Verbindungseinstellungen", "Configuration Active" => "Konfiguration aktiv", "When unchecked, this configuration will be skipped." => "Wenn nicht angehakt, wird diese Konfiguration übersprungen.", @@ -45,6 +48,7 @@ $TRANSLATIONS = array( "Do not use it additionally for LDAPS connections, it will fail." => "Benutzen Sie es nicht in Verbindung mit LDAPS Verbindungen, es wird fehlschlagen.", "Case insensitve LDAP server (Windows)" => "LDAP-Server (Windows: Groß- und Kleinschreibung bleibt unbeachtet)", "Turn off SSL certificate validation." => "Schalten Sie die SSL-Zertifikatsprüfung aus.", +"Not recommended, use it for testing only! If connection only works with this option, import the LDAP server's SSL certificate in your %s server." => "Nur für Testzwecke geeignet, sollte Standardmäßig nicht verwendet werden. Falls die Verbindung nur mit dieser Option funktioniert, importieren Sie das SSL-Zertifikat des LDAP-Servers in Ihren %s Server.", "Cache Time-To-Live" => "Speichere Time-To-Live zwischen", "in seconds. A change empties the cache." => "in Sekunden. Eine Änderung leert den Cache.", "Directory Settings" => "Ordnereinstellungen", diff --git a/apps/user_ldap/l10n/et_EE.php b/apps/user_ldap/l10n/et_EE.php index 700b31e7ba..b949fe0204 100644 --- a/apps/user_ldap/l10n/et_EE.php +++ b/apps/user_ldap/l10n/et_EE.php @@ -30,8 +30,11 @@ $TRANSLATIONS = array( "Password" => "Parool", "For anonymous access, leave DN and Password empty." => "Anonüümseks ligipääsuks jäta DN ja parool tühjaks.", "User Login Filter" => "Kasutajanime filter", +"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" => "Määrab sisselogimisel kasutatava filtri. %%uid asendab sisselogimistegevuses kasutajanime. Näide: \"uid=%%uid\"", "User List Filter" => "Kasutajate nimekirja filter", +"Defines the filter to apply, when retrieving users (no placeholders). Example: \"objectClass=person\"" => "Määrab kasutajate leidmiseks kasutatava filtri (ilma muutujateta). Näide: \"objectClass=person\"", "Group Filter" => "Grupi filter", +"Defines the filter to apply, when retrieving groups (no placeholders). Example: \"objectClass=posixGroup\"" => "Määrab gruppide leidmiseks kasutatava filtri (ilma muutujateta). Näide: \"objectClass=posixGroup\"", "Connection Settings" => "Ühenduse seaded", "Configuration Active" => "Seadistus aktiivne", "When unchecked, this configuration will be skipped." => "Kui märkimata, siis seadistust ei kasutata", @@ -45,6 +48,7 @@ $TRANSLATIONS = array( "Do not use it additionally for LDAPS connections, it will fail." => "LDAPS puhul ära kasuta. Ühendus ei toimi.", "Case insensitve LDAP server (Windows)" => "Mittetõstutundlik LDAP server (Windows)", "Turn off SSL certificate validation." => "Lülita SSL sertifikaadi kontrollimine välja.", +"Not recommended, use it for testing only! If connection only works with this option, import the LDAP server's SSL certificate in your %s server." => "Pole soovitatav, kasuta seda ainult testimiseks! Kui ühendus toimib ainult selle valikuga, siis impordi LDAP serveri SSL sertifikaat oma %s serverisse.", "Cache Time-To-Live" => "Puhvri iga", "in seconds. A change empties the cache." => "sekundites. Muudatus tühjendab vahemälu.", "Directory Settings" => "Kataloogi seaded", diff --git a/apps/user_ldap/l10n/gl.php b/apps/user_ldap/l10n/gl.php index 9debcef70a..911e481ca7 100644 --- a/apps/user_ldap/l10n/gl.php +++ b/apps/user_ldap/l10n/gl.php @@ -30,8 +30,11 @@ $TRANSLATIONS = array( "Password" => "Contrasinal", "For anonymous access, leave DN and Password empty." => "Para o acceso anónimo deixe o DN e o contrasinal baleiros.", "User Login Filter" => "Filtro de acceso de usuarios", +"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" => "Define o filtro que se aplica cando se intenta o acceso. %%uid substitúe o nome de usuario e a acción de acceso. Exemplo: «uid=%%uid»", "User List Filter" => "Filtro da lista de usuarios", +"Defines the filter to apply, when retrieving users (no placeholders). Example: \"objectClass=person\"" => "Define o filtro a aplicar cando de recuperan os usuarios (sen comodíns). Exemplo: «objectClass=person»", "Group Filter" => "Filtro de grupo", +"Defines the filter to apply, when retrieving groups (no placeholders). Example: \"objectClass=posixGroup\"" => "Define o filtro a aplicar cando de recuperan os usuarios (sen comodíns). Exemplo: «objectClass=posixGroup»", "Connection Settings" => "Axustes da conexión", "Configuration Active" => "Configuración activa", "When unchecked, this configuration will be skipped." => "Se está sen marcar, omítese esta configuración.", @@ -45,6 +48,7 @@ $TRANSLATIONS = array( "Do not use it additionally for LDAPS connections, it will fail." => "Non utilizalo ademais para conexións LDAPS xa que fallará.", "Case insensitve LDAP server (Windows)" => "Servidor LDAP que non distingue entre maiúsculas e minúsculas (Windows)", "Turn off SSL certificate validation." => "Desactiva a validación do certificado SSL.", +"Not recommended, use it for testing only! If connection only works with this option, import the LDAP server's SSL certificate in your %s server." => "Non recomendado, utilizar só para probas! Se a conexión só funciona con esta opción importa o certificado SSL do servidor LDAP no seu servidor %s.", "Cache Time-To-Live" => "Tempo de persistencia da caché", "in seconds. A change empties the cache." => "en segundos. Calquera cambio baleira a caché.", "Directory Settings" => "Axustes do directorio", diff --git a/apps/user_ldap/l10n/it.php b/apps/user_ldap/l10n/it.php index 82f42ef3be..4b47846f22 100644 --- a/apps/user_ldap/l10n/it.php +++ b/apps/user_ldap/l10n/it.php @@ -30,8 +30,11 @@ $TRANSLATIONS = array( "Password" => "Password", "For anonymous access, leave DN and Password empty." => "Per l'accesso anonimo, lasciare vuoti i campi DN e Password", "User Login Filter" => "Filtro per l'accesso utente", +"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" => "Specifica quale filtro utilizzare quando si tenta l'accesso. %%uid sostituisce il nome utente all'atto dell'accesso. Esempio: \"uid=%%uid\"", "User List Filter" => "Filtro per l'elenco utenti", +"Defines the filter to apply, when retrieving users (no placeholders). Example: \"objectClass=person\"" => "Specifica quale filtro utilizzare durante il recupero degli utenti (nessun segnaposto). Esempio: \"objectClass=person\"", "Group Filter" => "Filtro per il gruppo", +"Defines the filter to apply, when retrieving groups (no placeholders). Example: \"objectClass=posixGroup\"" => "Specifica quale filtro utilizzare durante il recupero dei gruppi (nessun segnaposto). Esempio: \"objectClass=posixGroup\"", "Connection Settings" => "Impostazioni di connessione", "Configuration Active" => "Configurazione attiva", "When unchecked, this configuration will be skipped." => "Se deselezionata, questa configurazione sarà saltata.", @@ -45,6 +48,7 @@ $TRANSLATIONS = array( "Do not use it additionally for LDAPS connections, it will fail." => "Da non utilizzare per le connessioni LDAPS, non funzionerà.", "Case insensitve LDAP server (Windows)" => "Case insensitve LDAP server (Windows)", "Turn off SSL certificate validation." => "Disattiva il controllo del certificato SSL.", +"Not recommended, use it for testing only! If connection only works with this option, import the LDAP server's SSL certificate in your %s server." => "Non consigliata, da utilizzare solo per test! Se la connessione funziona solo con questa opzione, importa il certificate SSL del server LDAP sul tuo server %s.", "Cache Time-To-Live" => "Tempo di vita della cache", "in seconds. A change empties the cache." => "in secondi. Il cambio svuota la cache.", "Directory Settings" => "Impostazioni delle cartelle", diff --git a/apps/user_ldap/l10n/ja_JP.php b/apps/user_ldap/l10n/ja_JP.php index ec0da14305..e9ef2165bb 100644 --- a/apps/user_ldap/l10n/ja_JP.php +++ b/apps/user_ldap/l10n/ja_JP.php @@ -30,8 +30,11 @@ $TRANSLATIONS = array( "Password" => "パスワード", "For anonymous access, leave DN and Password empty." => "匿名アクセスの場合は、DNとパスワードを空にしてください。", "User Login Filter" => "ユーザログインフィルタ", +"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" => "ログイン実行時に適用するフィルタを定義します。%%uid にはログイン操作におけるユーザ名が入ります。例: \"uid=%%uid\"", "User List Filter" => "ユーザリストフィルタ", +"Defines the filter to apply, when retrieving users (no placeholders). Example: \"objectClass=person\"" => "ユーザ取得時に適用するフィルタを定義します(プレースホルダ無し)。例: \"objectClass=person\"", "Group Filter" => "グループフィルタ", +"Defines the filter to apply, when retrieving groups (no placeholders). Example: \"objectClass=posixGroup\"" => "グループ取得時に適用するフィルタを定義します(プレースホルダ無し)。例: \"objectClass=posixGroup\"", "Connection Settings" => "接続設定", "Configuration Active" => "設定はアクティブです", "When unchecked, this configuration will be skipped." => "チェックを外すと、この設定はスキップされます。", @@ -45,6 +48,7 @@ $TRANSLATIONS = array( "Do not use it additionally for LDAPS connections, it will fail." => "LDAPS接続のために追加でそれを利用しないで下さい。失敗します。", "Case insensitve LDAP server (Windows)" => "大文字/小文字を区別しないLDAPサーバ(Windows)", "Turn off SSL certificate validation." => "SSL証明書の確認を無効にする。", +"Not recommended, use it for testing only! If connection only works with this option, import the LDAP server's SSL certificate in your %s server." => "推奨されません、テストにおいてのみ使用してください!このオプションでのみ接続が動作する場合は、LDAP サーバのSSL証明書を %s サーバにインポートしてください。", "Cache Time-To-Live" => "キャッシュのTTL", "in seconds. A change empties the cache." => "秒。変更後にキャッシュがクリアされます。", "Directory Settings" => "ディレクトリ設定", diff --git a/apps/user_ldap/l10n/nl.php b/apps/user_ldap/l10n/nl.php index 301cad9852..b56dcf1579 100644 --- a/apps/user_ldap/l10n/nl.php +++ b/apps/user_ldap/l10n/nl.php @@ -30,8 +30,11 @@ $TRANSLATIONS = array( "Password" => "Wachtwoord", "For anonymous access, leave DN and Password empty." => "Voor anonieme toegang, laat de DN en het wachtwoord leeg.", "User Login Filter" => "Gebruikers Login Filter", +"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" => "Definiëert het toe te passen filter als er geprobeerd wordt in te loggen. %%uid vervangt de gebruikersnaam bij het inloggen. Bijvoorbeeld: \"uid=%%uid\"", "User List Filter" => "Gebruikers Lijst Filter", +"Defines the filter to apply, when retrieving users (no placeholders). Example: \"objectClass=person\"" => "Definieert het toe te passen filter bij het ophalen van gebruikers (geen tijdelijke aanduidingen). Bijvoorbeeld: \"objectClass=person\"", "Group Filter" => "Groep Filter", +"Defines the filter to apply, when retrieving groups (no placeholders). Example: \"objectClass=posixGroup\"" => "Definieert het toe te passen filter bij het ophalen van groepen (geen tijdelijke aanduidingen). Bijvoorbeeld: \"objectClass=posixGroup\"", "Connection Settings" => "Verbindingsinstellingen", "Configuration Active" => "Configuratie actief", "When unchecked, this configuration will be skipped." => "Als dit niet is ingeschakeld wordt deze configuratie overgeslagen.", @@ -45,6 +48,7 @@ $TRANSLATIONS = array( "Do not use it additionally for LDAPS connections, it will fail." => "Gebruik het niet voor LDAPS verbindingen, dat gaat niet lukken.", "Case insensitve LDAP server (Windows)" => "Niet-hoofdlettergevoelige LDAP server (Windows)", "Turn off SSL certificate validation." => "Schakel SSL certificaat validatie uit.", +"Not recommended, use it for testing only! If connection only works with this option, import the LDAP server's SSL certificate in your %s server." => "Niet aanbevolen, gebruik alleen om te testen! Als de connectie alleen werkt met deze optie, importeer dan het SSL-certificaat van de LDAP-server naar uw %s server.", "Cache Time-To-Live" => "Cache time-to-live", "in seconds. A change empties the cache." => "in seconden. Een verandering maakt de cache leeg.", "Directory Settings" => "Mapinstellingen", diff --git a/apps/user_ldap/l10n/pt_BR.php b/apps/user_ldap/l10n/pt_BR.php index 88006e1b5d..9469146d35 100644 --- a/apps/user_ldap/l10n/pt_BR.php +++ b/apps/user_ldap/l10n/pt_BR.php @@ -30,8 +30,11 @@ $TRANSLATIONS = array( "Password" => "Senha", "For anonymous access, leave DN and Password empty." => "Para acesso anônimo, deixe DN e Senha vazios.", "User Login Filter" => "Filtro de Login de Usuário", +"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" => "Define o filtro a ser aplicado, o login é feito. %%uid substitui o nome do usuário na ação de login. Exemplo: \"uid=%%uid\"", "User List Filter" => "Filtro de Lista de Usuário", +"Defines the filter to apply, when retrieving users (no placeholders). Example: \"objectClass=person\"" => "Define o filtro a ser aplicado, ao recuperar usuários (sem espaços reservados). Exemplo: \"objectClass=person\"", "Group Filter" => "Filtro de Grupo", +"Defines the filter to apply, when retrieving groups (no placeholders). Example: \"objectClass=posixGroup\"" => "Define o filtro a ser aplicado, ao recuperar grupos (sem espaços reservados). Exemplo: \"objectClass=posixGroup\"", "Connection Settings" => "Configurações de Conexão", "Configuration Active" => "Configuração ativa", "When unchecked, this configuration will be skipped." => "Quando não marcada, esta configuração será ignorada.", @@ -45,6 +48,7 @@ $TRANSLATIONS = array( "Do not use it additionally for LDAPS connections, it will fail." => "Não use adicionalmente para conexões LDAPS, pois falhará.", "Case insensitve LDAP server (Windows)" => "Servidor LDAP sensível à caixa alta (Windows)", "Turn off SSL certificate validation." => "Desligar validação de certificado SSL.", +"Not recommended, use it for testing only! If connection only works with this option, import the LDAP server's SSL certificate in your %s server." => "Não recomendado, use-o somente para teste! Se a conexão só funciona com esta opção, importar o certificado SSL do servidor LDAP em seu servidor %s.", "Cache Time-To-Live" => "Cache Time-To-Live", "in seconds. A change empties the cache." => "em segundos. Uma mudança esvaziará o cache.", "Directory Settings" => "Configurações de Diretório", diff --git a/apps/user_ldap/l10n/sk_SK.php b/apps/user_ldap/l10n/sk_SK.php index c5bb6a8a50..df71a71e93 100644 --- a/apps/user_ldap/l10n/sk_SK.php +++ b/apps/user_ldap/l10n/sk_SK.php @@ -30,8 +30,11 @@ $TRANSLATIONS = array( "Password" => "Heslo", "For anonymous access, leave DN and Password empty." => "Pre anonymný prístup ponechajte údaje DN a Heslo prázdne.", "User Login Filter" => "Filter prihlásenia používateľov", +"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" => "Určuje použitý filter, pri pokuse o prihlásenie. %%uid nahradzuje používateľské meno v činnosti prihlásenia. Napríklad: \"uid=%%uid\"", "User List Filter" => "Filter zoznamov používateľov", +"Defines the filter to apply, when retrieving users (no placeholders). Example: \"objectClass=person\"" => "Definuje použitý filter, pri získavaní používateľov (bez \"placeholderov\"). Napríklad: \"objectClass=osoba\"", "Group Filter" => "Filter skupiny", +"Defines the filter to apply, when retrieving groups (no placeholders). Example: \"objectClass=posixGroup\"" => "Definuje použitý filter, pri získavaní skupín (bez \"placeholderov\"). Napríklad: \"objectClass=posixSkupina\"", "Connection Settings" => "Nastavenie pripojenia", "Configuration Active" => "Nastavenia sú aktívne ", "When unchecked, this configuration will be skipped." => "Ak nie je zaškrtnuté, nastavenie bude preskočené.", @@ -45,6 +48,7 @@ $TRANSLATIONS = array( "Do not use it additionally for LDAPS connections, it will fail." => "Nepoužívajte pre pripojenie LDAPS, zlyhá.", "Case insensitve LDAP server (Windows)" => "LDAP server nerozlišuje veľkosť znakov (Windows)", "Turn off SSL certificate validation." => "Vypnúť overovanie SSL certifikátu.", +"Not recommended, use it for testing only! If connection only works with this option, import the LDAP server's SSL certificate in your %s server." => "Neodporúčané, použite iba pri testovaní! Pokiaľ spojenie funguje iba z daným nastavením, importujte SSL certifikát LDAP servera do vášho %s servera.", "Cache Time-To-Live" => "Životnosť objektov v cache", "in seconds. A change empties the cache." => "v sekundách. Zmena vyprázdni vyrovnávaciu pamäť.", "Directory Settings" => "Nastavenie priečinka", diff --git a/apps/user_ldap/l10n/sv.php b/apps/user_ldap/l10n/sv.php index c7fb33195d..3288438c09 100644 --- a/apps/user_ldap/l10n/sv.php +++ b/apps/user_ldap/l10n/sv.php @@ -30,8 +30,11 @@ $TRANSLATIONS = array( "Password" => "Lösenord", "For anonymous access, leave DN and Password empty." => "För anonym åtkomst, lämna DN och lösenord tomt.", "User Login Filter" => "Filter logga in användare", +"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action. Example: \"uid=%%uid\"" => "Definierar filter som tillämpas vid inloggning. %%uid ersätter användarnamn vid inloggningen. Exempel: \"uid=%%uid\"", "User List Filter" => "Filter lista användare", +"Defines the filter to apply, when retrieving users (no placeholders). Example: \"objectClass=person\"" => "Definierar filter som tillämpas vid sökning efter användare (inga platshållare). Exempel: \"objectClass=person\"", "Group Filter" => "Gruppfilter", +"Defines the filter to apply, when retrieving groups (no placeholders). Example: \"objectClass=posixGroup\"" => "Definierar filter som tillämpas vid sökning efter grupper (inga platshållare). Exempel: \"objectClass=posixGroup\"", "Connection Settings" => "Uppkopplingsinställningar", "Configuration Active" => "Konfiguration aktiv", "When unchecked, this configuration will be skipped." => "Ifall denna är avbockad så kommer konfigurationen att skippas.", @@ -45,6 +48,7 @@ $TRANSLATIONS = array( "Do not use it additionally for LDAPS connections, it will fail." => "Använd inte för LDAPS-anslutningar, det kommer inte att fungera.", "Case insensitve LDAP server (Windows)" => "LDAP-servern är okänslig för gemener och versaler (Windows)", "Turn off SSL certificate validation." => "Stäng av verifiering av SSL-certifikat.", +"Not recommended, use it for testing only! If connection only works with this option, import the LDAP server's SSL certificate in your %s server." => "Rekommenderas inte, använd endast för test! Om anslutningen bara fungerar med denna inställning behöver du importera LDAP-serverns SSL-certifikat till din %s server.", "Cache Time-To-Live" => "Cache Time-To-Live", "in seconds. A change empties the cache." => "i sekunder. En förändring tömmer cache.", "Directory Settings" => "Mappinställningar", diff --git a/apps/user_ldap/l10n/zh_CN.GB2312.php b/apps/user_ldap/l10n/zh_CN.GB2312.php deleted file mode 100644 index 306b84a588..0000000000 --- a/apps/user_ldap/l10n/zh_CN.GB2312.php +++ /dev/null @@ -1,31 +0,0 @@ - "删除失败", -"Success" => "成功", -"Error" => "出错", -"Host" => "主机", -"You can omit the protocol, except you require SSL. Then start with ldaps://" => "您可以忽略协议,除非您需要 SSL。然后用 ldaps:// 开头", -"Base DN" => "基本判别名", -"You can specify Base DN for users and groups in the Advanced tab" => "您可以在高级选项卡中为用户和群组指定基本判别名", -"User DN" => "用户判别名", -"The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty." => "客户机用户的判别名,将用于绑定,例如 uid=agent, dc=example, dc=com。匿名访问请留空判别名和密码。", -"Password" => "密码", -"For anonymous access, leave DN and Password empty." => "匿名访问请留空判别名和密码。", -"User Login Filter" => "用户登录过滤器", -"User List Filter" => "用户列表过滤器", -"Group Filter" => "群组过滤器", -"Port" => "端口", -"Use TLS" => "使用 TLS", -"Case insensitve LDAP server (Windows)" => "大小写不敏感的 LDAP 服务器 (Windows)", -"Turn off SSL certificate validation." => "关闭 SSL 证书校验。", -"in seconds. A change empties the cache." => "以秒计。修改会清空缓存。", -"User Display Name Field" => "用户显示名称字段", -"Base User Tree" => "基本用户树", -"Group Display Name Field" => "群组显示名称字段", -"Base Group Tree" => "基本群组树", -"Group-Member association" => "群组-成员组合", -"in bytes" => "以字节计", -"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "用户名请留空 (默认)。否则,请指定一个 LDAP/AD 属性。", -"Help" => "帮助" -); -$PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/apps/user_ldap/l10n/zh_TW.php b/apps/user_ldap/l10n/zh_TW.php index 38bed89574..2cc1ac9933 100644 --- a/apps/user_ldap/l10n/zh_TW.php +++ b/apps/user_ldap/l10n/zh_TW.php @@ -3,56 +3,59 @@ $TRANSLATIONS = array( "Failed to clear the mappings." => "清除映射失敗", "Failed to delete the server configuration" => "刪除伺服器設定時失敗", "The configuration is valid and the connection could be established!" => "設定有效且連線可建立", -"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "設定有效但連線無法建立。請檢查伺服器的設定與認證資料。", -"The configuration is invalid. Please look in the ownCloud log for further details." => "設定無效。更多細節請參閱ownCloud的記錄檔。", +"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "設定有效但連線無法建立,請檢查伺服器設定與認證資料。", +"The configuration is invalid. Please look in the ownCloud log for further details." => "設定無效,更多細節請參閱 ownCloud 的記錄檔。", "Deletion failed" => "移除失敗", -"Take over settings from recent server configuration?" => "要使用最近一次的伺服器設定嗎?", -"Keep settings?" => "維持設定嗎?", +"Take over settings from recent server configuration?" => "要使用最近一次的伺服器設定嗎?", +"Keep settings?" => "維持設定嗎?", "Cannot add server configuration" => "無法新增伺服器設定", "mappings cleared" => "映射已清除", "Success" => "成功", "Error" => "錯誤", "Connection test succeeded" => "連線測試成功", "Connection test failed" => "連線測試失敗", -"Do you really want to delete the current Server Configuration?" => "您真的確定要刪除現在的伺服器設定嗎?", -"Confirm Deletion" => "確認已刪除", -"Warning: The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "警告:沒有安裝 PHP LDAP 模組,後端系統將無法運作。請要求您的系統管理員安裝模組。", +"Do you really want to delete the current Server Configuration?" => "您真的要刪除現在的伺服器設定嗎?", +"Confirm Deletion" => "確認刪除", +"Warning: The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "警告:沒有安裝 PHP LDAP 模組,後端系統將無法運作,請要求您的系統管理員安裝模組。", "Server configuration" => "伺服器設定", "Add Server Configuration" => "新增伺服器設定", "Host" => "主機", -"You can omit the protocol, except you require SSL. Then start with ldaps://" => "若您不需要SSL加密傳輸則可忽略通訊協定。若非如此請從ldaps://開始", -"One Base DN per line" => "一行一個Base DN", -"You can specify Base DN for users and groups in the Advanced tab" => "您可以在進階標籤頁裡面指定使用者及群組的Base DN", +"You can omit the protocol, except you require SSL. Then start with ldaps://" => "若您不需要 SSL 加密連線則不需輸入通訊協定,反之請輸入 ldaps://", +"Base DN" => "Base DN", +"One Base DN per line" => "一行一個 Base DN", +"You can specify Base DN for users and groups in the Advanced tab" => "您可以在進階標籤頁裡面指定使用者及群組的 Base DN", +"User DN" => "User DN", "The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty." => "客戶端使用者的DN與特定字詞的連結需要完善,例如:uid=agent,dc=example,dc=com。若是匿名連接,則將DN與密碼欄位留白。", "Password" => "密碼", -"For anonymous access, leave DN and Password empty." => "匿名連接時請將DN與密碼欄位留白", -"User Login Filter" => "使用者登入過濾器", -"User List Filter" => "使用者名單篩選器", -"Group Filter" => "群組篩選器", +"For anonymous access, leave DN and Password empty." => "匿名連接時請將 DN 與密碼欄位留白", +"User Login Filter" => "User Login Filter", +"User List Filter" => "User List Filter", +"Group Filter" => "Group Filter", "Connection Settings" => "連線設定", -"Configuration Active" => "設定為主動模式", +"Configuration Active" => "設定使用中", "When unchecked, this configuration will be skipped." => "沒有被勾選時,此設定會被略過。", -"Port" => "連接阜", +"Port" => "連接埠", "Backup (Replica) Host" => "備用主機", -"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "請給定一個可選的備用主機。必須是LDAP/AD中央伺服器的複本。", -"Backup (Replica) Port" => "備用(複本)連接阜", +"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "可以選擇性設定備用主機,必須是 LDAP/AD 中央伺服器的複本。", +"Backup (Replica) Port" => "備用(複本)連接埠", "Disable Main Server" => "停用主伺服器", -"Use TLS" => "使用TLS", -"Case insensitve LDAP server (Windows)" => "不區分大小寫的LDAP伺服器(Windows)", -"Turn off SSL certificate validation." => "關閉 SSL 憑證驗證", +"Use TLS" => "使用 TLS", +"Do not use it additionally for LDAPS connections, it will fail." => "不要同時與 LDAPS 使用,會有問題。", +"Case insensitve LDAP server (Windows)" => "不區分大小寫的 LDAP 伺服器 (Windows)", +"Turn off SSL certificate validation." => "關閉 SSL 憑證檢查", "Cache Time-To-Live" => "快取的存活時間", -"in seconds. A change empties the cache." => "以秒為單位。更變後會清空快取。", -"Directory Settings" => "目錄選項", -"User Display Name Field" => "使用者名稱欄位", -"Base User Tree" => "Base使用者數", -"One User Base DN per line" => "一行一個使用者Base DN", -"User Search Attributes" => "使用者搜索屬性", -"Optional; one attribute per line" => "可選的; 一行一項屬性", +"in seconds. A change empties the cache." => "以秒為單位。變更後會清空快取。", +"Directory Settings" => "目錄設定", +"User Display Name Field" => "使用者顯示名稱欄位", +"Base User Tree" => "Base User Tree", +"One User Base DN per line" => "一行一個使用者 Base DN", +"User Search Attributes" => "User Search Attributes", +"Optional; one attribute per line" => "非必要,一行一項屬性", "Group Display Name Field" => "群組顯示名稱欄位", -"Base Group Tree" => "Base群組樹", -"One Group Base DN per line" => "一行一個群組Base DN", -"Group Search Attributes" => "群組搜索屬性", -"Group-Member association" => "群組成員的關係", +"Base Group Tree" => "Base Group Tree", +"One Group Base DN per line" => "一行一個 Group Base DN", +"Group Search Attributes" => "Group Search Attributes", +"Group-Member association" => "Group-Member association", "Special Attributes" => "特殊屬性", "Quota Field" => "配額欄位", "Quota Default" => "預設配額", diff --git a/apps/user_ldap/lib/access.php b/apps/user_ldap/lib/access.php index 6f6b8d0f01..52aa39012f 100644 --- a/apps/user_ldap/lib/access.php +++ b/apps/user_ldap/lib/access.php @@ -991,7 +991,7 @@ abstract class Access { * internally we store them for usage in LDAP filters */ private function DNasBaseParameter($dn) { - return str_replace('\\5c', '\\', $dn); + return str_ireplace('\\5c', '\\', $dn); } /** diff --git a/apps/user_ldap/lib/jobs.php b/apps/user_ldap/lib/jobs.php index d626afed6c..6b7666d4ca 100644 --- a/apps/user_ldap/lib/jobs.php +++ b/apps/user_ldap/lib/jobs.php @@ -82,7 +82,7 @@ class Jobs extends \OC\BackgroundJob\TimedJob { $hasChanged = true; } foreach(array_diff($actualUsers, $knownUsers) as $addedUser) { - \OCP\Util::emitHook('OC_User', 'post_addFromGroup', array('uid' => $addedUser, 'gid' => $group)); + \OCP\Util::emitHook('OC_User', 'post_addToGroup', array('uid' => $addedUser, 'gid' => $group)); \OCP\Util::writeLog('user_ldap', 'bgJ "updateGroups" – "'.$addedUser.'" added to "'.$group.'".', \OCP\Util::INFO); diff --git a/apps/user_webdavauth/l10n/nb_NO.php b/apps/user_webdavauth/l10n/nb_NO.php index 245a510134..e7ee8ae56b 100644 --- a/apps/user_webdavauth/l10n/nb_NO.php +++ b/apps/user_webdavauth/l10n/nb_NO.php @@ -1,3 +1,5 @@ - "URL: http://" + "Adresse:" ); +$PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/apps/user_webdavauth/l10n/zh_CN.php b/apps/user_webdavauth/l10n/zh_CN.php index 6904604216..a225ea7f57 100644 --- a/apps/user_webdavauth/l10n/zh_CN.php +++ b/apps/user_webdavauth/l10n/zh_CN.php @@ -1,5 +1,7 @@ "WebDAV 认证" +"WebDAV Authentication" => "WebDAV 认证", +"Address: " => "地址:", +"The user credentials will be sent to this address. This plugin checks the response and will interpret the HTTP statuscodes 401 and 403 as invalid credentials, and all other responses as valid credentials." => "用户的身份将会被发送到此 URL。这个插件检查返回值并且将 HTTP 状态编码 401 和 403 解释为非法身份,其他所有返回值为合法身份。" ); $PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/config/config.sample.php b/config/config.sample.php index 24ba541ac5..5f748438bc 100644 --- a/config/config.sample.php +++ b/config/config.sample.php @@ -141,10 +141,22 @@ $CONFIG = array( /* Loglevel to start logging at. 0=DEBUG, 1=INFO, 2=WARN, 3=ERROR (default is WARN) */ "loglevel" => "", +/* date format to be used while writing to the owncloud logfile */ +'logdateformat' => 'F d, Y H:i:s', + /* Append all database queries and parameters to the log file. (watch out, this option can increase the size of your log file)*/ "log_query" => false, +/* + * Configure the size in bytes log rotation should happen, 0 or false disables the rotation. + * This rotates the current owncloud logfile to a new name, this way the total log usage + * will stay limited and older entries are available for a while longer. The + * total disk usage is twice the configured size. + * WARNING: When you use this, the log entries will eventually be lost. + */ +'log_rotate_size' => false, // 104857600, // 100 MiB + /* Lifetime of the remember login cookie, default is 15 days */ "remember_login_cookie_lifetime" => 60*60*24*15, @@ -190,6 +202,16 @@ $CONFIG = array( 'customclient_android' => '', //https://play.google.com/store/apps/details?id=com.owncloud.android 'customclient_ios' => '', //https://itunes.apple.com/us/app/owncloud/id543672169?mt=8 -// date format to be used while writing to the owncloud logfile -'logdateformat' => 'F d, Y H:i:s' +// PREVIEW +'enable_previews' => true, +/* the max width of a generated preview, if value is null, there is no limit */ +'preview_max_x' => null, +/* the max height of a generated preview, if value is null, there is no limit */ +'preview_max_y' => null, +/* the max factor to scale a preview, default is set to 10 */ +'preview_max_scale_factor' => 10, +/* custom path for libreoffice / openoffice binary */ +'preview_libreoffice_path' => '/usr/bin/libreoffice', +/* cl parameters for libreoffice / openoffice */ +'preview_office_cl_parameters' => '', ); diff --git a/console.php b/console.php index 4aec5bdc24..fbe09d9bb6 100644 --- a/console.php +++ b/console.php @@ -1,3 +1,4 @@ + @@ -20,17 +21,32 @@ if (!OC::$CLI) { exit(0); } +$self = basename($argv[0]); if ($argc <= 1) { - echo "Usage:" . PHP_EOL; - echo " " . basename($argv[0]) . " " . PHP_EOL; - exit(0); + $argv[1] = "help"; } $command = $argv[1]; array_shift($argv); -if ($command === 'files:scan') { - require_once 'apps/files/console/scan.php'; -} else { - echo "Unknown command '$command'" . PHP_EOL; +switch ($command) { + case 'files:scan': + require_once 'apps/files/console/scan.php'; + break; + case 'status': + require_once 'status.php'; + break; + case 'help': + echo "Usage:" . PHP_EOL; + echo " " . $self . " " . PHP_EOL; + echo PHP_EOL; + echo "Available commands:" . PHP_EOL; + echo " files:scan -> rescan filesystem" .PHP_EOL; + echo " status -> show some status information" .PHP_EOL; + echo " help -> show this help screen" .PHP_EOL; + break; + default: + echo "Unknown command '$command'" . PHP_EOL; + echo "For available commands type ". $self . " help" . PHP_EOL; + break; } diff --git a/core/ajax/preview.php b/core/ajax/preview.php new file mode 100644 index 0000000000..af0f0493f4 --- /dev/null +++ b/core/ajax/preview.php @@ -0,0 +1,40 @@ +setFile($file); + $preview->setMaxX($maxX); + $preview->setMaxY($maxY); + $preview->setScalingUp($scalingUp); + + $preview->show(); +}catch(\Exception $e) { + \OC_Response::setStatus(500); + \OC_Log::write('core', $e->getmessage(), \OC_Log::DEBUG); +} \ No newline at end of file diff --git a/core/ajax/share.php b/core/ajax/share.php index bdcb61284e..648f0a71bd 100644 --- a/core/ajax/share.php +++ b/core/ajax/share.php @@ -181,10 +181,10 @@ if (isset($_POST['action']) && isset($_POST['itemType']) && isset($_POST['itemSo // } // } // } + $groups = OC_Group::getGroups($_GET['search']); if ($sharePolicy == 'groups_only') { - $groups = OC_Group::getUserGroups(OC_User::getUser()); - } else { - $groups = OC_Group::getGroups(); + $usergroups = OC_Group::getUserGroups(OC_User::getUser()); + $groups = array_intersect($groups, $usergroups); } $count = 0; $users = array(); @@ -213,15 +213,18 @@ if (isset($_POST['action']) && isset($_POST['itemType']) && isset($_POST['itemSo } } $count = 0; + + // enable l10n support + $l = OC_L10N::get('core'); + foreach ($groups as $group) { if ($count < 15) { - if (stripos($group, $_GET['search']) !== false - && (!isset($_GET['itemShares']) + if (!isset($_GET['itemShares']) || !isset($_GET['itemShares'][OCP\Share::SHARE_TYPE_GROUP]) || !is_array($_GET['itemShares'][OCP\Share::SHARE_TYPE_GROUP]) - || !in_array($group, $_GET['itemShares'][OCP\Share::SHARE_TYPE_GROUP]))) { + || !in_array($group, $_GET['itemShares'][OCP\Share::SHARE_TYPE_GROUP])) { $shareWith[] = array( - 'label' => $group.' (group)', + 'label' => $group.' ('.$l->t('group').')', 'value' => array( 'shareType' => OCP\Share::SHARE_TYPE_GROUP, 'shareWith' => $group diff --git a/core/ajax/update.php b/core/ajax/update.php index 43ed75b07f..d6af84e95b 100644 --- a/core/ajax/update.php +++ b/core/ajax/update.php @@ -4,25 +4,26 @@ $RUNTIME_NOAPPS = true; require_once '../../lib/base.php'; if (OC::checkUpgrade(false)) { + $l = new \OC_L10N('core'); $eventSource = new OC_EventSource(); $updater = new \OC\Updater(\OC_Log::$object); - $updater->listen('\OC\Updater', 'maintenanceStart', function () use ($eventSource) { - $eventSource->send('success', 'Turned on maintenance mode'); + $updater->listen('\OC\Updater', 'maintenanceStart', function () use ($eventSource, $l) { + $eventSource->send('success', (string)$l->t('Turned on maintenance mode')); }); - $updater->listen('\OC\Updater', 'maintenanceEnd', function () use ($eventSource) { - $eventSource->send('success', 'Turned off maintenance mode'); + $updater->listen('\OC\Updater', 'maintenanceEnd', function () use ($eventSource, $l) { + $eventSource->send('success', (string)$l->t('Turned off maintenance mode')); }); - $updater->listen('\OC\Updater', 'dbUpgrade', function () use ($eventSource) { - $eventSource->send('success', 'Updated database'); + $updater->listen('\OC\Updater', 'dbUpgrade', function () use ($eventSource, $l) { + $eventSource->send('success', (string)$l->t('Updated database')); }); - $updater->listen('\OC\Updater', 'filecacheStart', function () use ($eventSource) { - $eventSource->send('success', 'Updating filecache, this may take really long...'); + $updater->listen('\OC\Updater', 'filecacheStart', function () use ($eventSource, $l) { + $eventSource->send('success', (string)$l->t('Updating filecache, this may take really long...')); }); - $updater->listen('\OC\Updater', 'filecacheDone', function () use ($eventSource) { - $eventSource->send('success', 'Updated filecache'); + $updater->listen('\OC\Updater', 'filecacheDone', function () use ($eventSource, $l) { + $eventSource->send('success', (string)$l->t('Updated filecache')); }); - $updater->listen('\OC\Updater', 'filecacheProgress', function ($out) use ($eventSource) { - $eventSource->send('success', '... ' . $out . '% done ...'); + $updater->listen('\OC\Updater', 'filecacheProgress', function ($out) use ($eventSource, $l) { + $eventSource->send('success', (string)$l->t('... %d%% done ...', array('percent' => $out))); }); $updater->listen('\OC\Updater', 'failure', function ($message) use ($eventSource) { $eventSource->send('failure', $message); diff --git a/core/css/apps.css b/core/css/apps.css new file mode 100644 index 0000000000..445a3b9b59 --- /dev/null +++ b/core/css/apps.css @@ -0,0 +1,236 @@ +/* ---- APP STYLING ---- */ + +#app { + height: 100%; + width: 100%; +} +#app * { + -moz-box-sizing: border-box; box-sizing: border-box; +} + +/* Navigation: folder like structure */ +#app-navigation { + width: 300px; + height: 100%; + float: left; + -moz-box-sizing: border-box; box-sizing: border-box; + background-color: #f8f8f8; + border-right: 1px solid #ccc; +} +#app-navigation > ul { + height: 100%; + overflow: auto; + -moz-box-sizing: border-box; box-sizing: border-box; +} +#app-navigation li { + position: relative; + width: 100%; + -moz-box-sizing: border-box; box-sizing: border-box; + text-shadow: 0 1px 0 rgba(255,255,255,.9); +} +#app-navigation .active, +#app-navigation .active a, +#app-navigation li:hover > a { + background-color: #ddd; + text-shadow: 0 1px 0 rgba(255,255,255,.7); +} + +/* special rules for first-level entries and folders */ +#app-navigation > ul > li { + background-color: #f8f8f8; +} + +#app-navigation .with-icon a { + padding-left: 44px; + background-size: 16px 16px; + background-position: 14px center; + background-repeat: no-repeat; +} + +#app-navigation li > a { + display: block; + width: 100%; + height: 44px; + padding: 12px; + overflow: hidden; + -moz-box-sizing: border-box; box-sizing: border-box; + white-space: nowrap; + text-overflow: ellipsis; + color: #333; +} + +#app-navigation .collapse { + display: none; /* hide collapse button intially */ +} +#app-navigation .collapsible > .collapse { + position: absolute; + height: 44px; + width: 44px; + margin: 0; + padding: 0; + background: none; background-image: url('../img/actions/triangle-s.svg'); + background-size: 16px; background-repeat: no-repeat; background-position: center; + border: none; + border-radius: 0; + outline: none !important; + box-shadow: none; +} +#app-navigation .collapsible:hover > a { + background-image: none; +} +#app-navigation .collapsible:hover > .collapse { + display: block; +} + +#app-navigation .collapsible .collapse { + -moz-transform: rotate(-90deg); + -webkit-transform: rotate(-90deg); + -ms-transform:rotate(-90deg); + -o-transform:rotate(-90deg); + transform: rotate(-90deg); +} +#app-navigation .collapsible.open .collapse { + -moz-transform: rotate(0); + -webkit-transform: rotate(0); + -ms-transform:rotate(0); + -o-transform:rotate(0); + transform: rotate(0); +} + +/* Second level nesting for lists */ +#app-navigation > ul ul { + display: none; +} +#app-navigation > ul ul li > a { + padding-left: 32px; +} +#app-navigation > .with-icon ul li > a { + padding-left: 48px; + background-position: 24px center; +} + +#app-navigation .open { + background-image: linear-gradient(top, rgb(238,238,238) 0%, rgb(245,245,245) 100%); + background-image: -o-linear-gradient(top, rgb(238,238,238) 0%, rgb(245,245,245) 100%); + background-image: -moz-linear-gradient(top, rgb(238,238,238) 0%, rgb(245,245,245) 100%); + background-image: -webkit-linear-gradient(top, rgb(238,238,238) 0%, rgb(245,245,245) 100%); + background-image: -ms-linear-gradient(top, rgb(238,238,238) 0%, rgb(245,245,245) 100%); +} + +#app-navigation > ul .open:hover { + -moz-box-shadow: inset 0 0 3px #ccc; -webkit-box-shadow: inset 0 0 3px #ccc; box-shadow: inset 0 0 3px #ccc; +} + +#app-navigation > ul .open ul { + display: block; +} + + +/* counter and actions */ +#app-navigation .utils { + position: absolute; + right: 0; + top: 0; + bottom: 0; + font-size: 12px; +} + #app-navigation .utils button, + #app-navigation .utils .counter { + width: 44px; + height: 44px; + padding-top: 12px; + } + + +/* drag and drop */ +#app-navigation .drag-and-drop { + -moz-transition: padding-bottom 500ms ease 0s; + -o-transition: padding-bottom 500ms ease 0s; + -webkit-transition: padding-bottom 500ms ease 0s; + -ms-transition: padding-bottom 500ms ease 0s; + transition: padding-bottom 500ms ease 0s; + padding-bottom: 40px; +} +#app-navigation .personalblock > legend { /* TODO @Raydiation: still needed? */ + padding: 10px 0; margin: 0; +} +#app-navigation .error { + color: #dd1144; +} + +#app-navigation .app-navigation-separator { + border-bottom: 1px solid #ddd; +} + + + +/* Part where the content will be loaded into */ +#app-content { + height: 100%; + overflow-y: auto; +} + +/* settings area */ +#app-settings { + position: fixed; + width: 299px; + bottom: 0; + border-top: 1px solid #ccc; +} +#app-settings-header { + background-color: #eee; +} +#app-settings-content { + display: none; + padding: 10px; + background-color: #eee; +} +#app-settings.open #app-settings-content { + display: block; +} + +.settings-button { + display: block; + height: 32px; + width: 100%; + padding: 0; + margin: 0; + background-color: transparent; background-image: url('../img/actions/settings.svg'); + background-position: 10px center; background-repeat: no-repeat; + box-shadow: none; + border: 0; + border-radius: 0; +} +.settings-button:hover { + background-color: #ddd; +} + +/* icons */ +.folder-icon, .delete-icon, .edit-icon, .progress-icon { + background-repeat: no-repeat; + background-position: center; +} +.folder-icon { background-image: url('../img/places/folder.svg'); } +.delete-icon { background-image: url('../img/actions/delete.svg'); } +.delete-icon:hover, .delete-icon:focus { + background-image: url('../img/actions/delete-hover.svg'); +} +.edit-icon { background-image: url('../img/actions/rename.svg'); } +.progress-icon { + background-image: url('../img/loading.gif'); + background-size: 16px; + /* force show the loading icon, not only on hover */ + -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; + filter:alpha(opacity=100); + opacity: 1 !important; + display: inline !important; +} + +/* buttons */ +button.loading { + background-image: url('../img/loading.gif'); + background-position: right 10px center; background-repeat: no-repeat; + background-size: 16px; + padding-right: 30px; +} + diff --git a/core/css/fixes.css b/core/css/fixes.css new file mode 100644 index 0000000000..3df60ad5b5 --- /dev/null +++ b/core/css/fixes.css @@ -0,0 +1,46 @@ +/* ---- BROWSER-SPECIFIC FIXES ---- */ + +/* remove dotted outlines in Firefox */ +::-moz-focus-inner { + border: 0; +} + +.lte8 .delete-icon { background-image: url('../img/actions/delete.png'); } +.lte8 .delete-icon:hover, .delete-icon:focus { + background-image: url('../img/actions/delete-hover.png'); +} + +/* IE8 needs background to be set to same color to make transparency look good. */ +.lte9 #body-login form input[type="text"] { + border: 1px solid lightgrey; /* use border to add 1px line between input fields */ + background-color: white; /* don't change background on hover */ +} +.lte9 #body-login form input[type="password"] { + /* leave out top border for 1px line between input fields*/ + border-left: 1px solid lightgrey; + border-right: 1px solid lightgrey; + border-bottom: 1px solid lightgrey; + background-color: white; /* don't change background on hover */ +} +.lte9 #body-login form label.infield { + background-color: white; /* don't change background on hover */ + -ms-filter: "progid:DXImageTransform.Microsoft.Chroma(color='white')"; +} + +/* disable opacity of info text on gradient + since we cannot set a good backround color to use the filter&background hack as with the input labels */ +.lte9 #body-login p.info { + filter: initial; +} + +/* deactivate show password toggle for IE. Does not work for 8 and 9+ have their own implementation. */ +.ie #show, .ie #show+label { + display: none; + visibility: hidden; +} + +/* fix installation screen rendering issue for IE8+9 */ +.lte9 #body-login { + height: auto !important; +} + diff --git a/core/css/multiselect.css b/core/css/multiselect.css index a2d1b20d3a..c25446808e 100644 --- a/core/css/multiselect.css +++ b/core/css/multiselect.css @@ -103,3 +103,10 @@ ul.multiselectoptions > li.creator > input { padding: 5px; margin: -5px; } + +.ie8 div.multiselect span:first-child { + display:block; + position:relative; + width: 90%; + margin-right:-1px; +} diff --git a/core/css/styles.css b/core/css/styles.css index 52a265d203..ea1733a344 100644 --- a/core/css/styles.css +++ b/core/css/styles.css @@ -145,7 +145,8 @@ a.disabled, a.disabled:hover, a.disabled:focus { .searchbox input[type="search"] { font-size:1.2em; padding:.2em .5em .2em 1.5em; background:#fff url('../img/actions/search.svg') no-repeat .5em center; border:0; -moz-border-radius:1em; -webkit-border-radius:1em; border-radius:1em; -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; filter:alpha(opacity=70);opacity:.7; -webkit-transition:opacity 300ms; -moz-transition:opacity 300ms; -o-transition:opacity 300ms; transition:opacity 300ms; margin-top:10px; float:right; } input[type="submit"].enabled { background:#66f866; border:1px solid #5e5; -moz-box-shadow:0 1px 1px #f8f8f8, 0 1px 1px #cfc inset; -webkit-box-shadow:0 1px 1px #f8f8f8, 0 1px 1px #cfc inset; box-shadow:0 1px 1px #f8f8f8, 0 1px 1px #cfc inset; } -#select_all{ margin-top:.4em } + + /* CONTENT ------------------------------------------------------------------ */ #controls { @@ -176,7 +177,14 @@ input[type="submit"].enabled { background:#66f866; border:1px solid #5e5; -moz-b #leftcontent a { height:100%; display:block; margin:0; padding:0 1em 0 0; float:left; } #rightcontent, .rightcontent { position:fixed; top:6.4em; left:24.5em; overflow:auto } - +#emptycontent { + font-size:1.5em; font-weight:bold; + color:#888; text-shadow:#fff 0 1px 0; + position: absolute; + text-align: center; + top: 50%; + width: 100%; +} /* LOG IN & INSTALLATION ------------------------------------------------------------ */ @@ -255,9 +263,9 @@ input[name="adminpass-clone"] { padding-left:1.8em; width:11.7em !important; } #body-login input[type="password"], #body-login input[type="email"] { border: 1px solid #323233; - -moz-box-shadow: 0 1px 0 rgba(255,255,255,.15), 0 1px 3px rgba(0,0,0,.25) inset; - -webkit-box-shadow: 0 1px 0 rgba(255,255,255,.15), 0 1px 3px rgba(0,0,0,.25) inset; - box-shadow: 0 1px 0 rgba(255,255,255,.15), 0 1px 3px rgba(0,0,0,.25) inset; + -moz-box-shadow: 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.25) inset; + -webkit-box-shadow: 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.25) inset; + box-shadow: 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.25) inset; } /* Nicely grouping input field sets */ @@ -389,7 +397,7 @@ label.infield { cursor:text !important; top:1.05em; left:.85em; } /* Warnings and errors are the same */ -.warning, .update, .error { +#body-login .warning, #body-login .update, #body-login .error { display: block; padding: 10px; color: #dd3b3b; @@ -401,6 +409,16 @@ label.infield { cursor:text !important; top:1.05em; left:.85em; } border-radius: 5px; cursor: default; } + +#body-user .warning, #body-settings .warning { + margin-top: 8px; + padding: 5px; + background: #fdd; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} + .warning legend, .warning a, .error a { @@ -491,6 +509,9 @@ label.infield { cursor:text !important; top:1.05em; left:.85em; } #navigation:hover { overflow-y: auto; /* show scrollbar only on hover */ } +#apps { + height: 100%; +} #navigation a span { display: block; text-decoration: none; @@ -535,9 +556,24 @@ label.infield { cursor:text !important; top:1.05em; left:.85em; } padding-top: 20px; } +/* Apps management as sticky footer, less obtrusive in the list */ +#navigation .wrapper { + min-height: 100%; + margin: 0 auto -72px; +} +#apps-management, #navigation .push { + height: 70px; +} #apps-management { + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; + filter: alpha(opacity=60); opacity: .6; } +#apps-management .icon { + padding-bottom: 0; +} + + /* USER MENU */ @@ -699,282 +735,3 @@ div.crumb:active { opacity:.7; } - - -/* ---- APP STYLING ---- */ -#app { - height: 100%; - width: 100%; -} -#app * { - -moz-box-sizing: border-box; box-sizing: border-box; -} - -/* Navigation: folder like structure */ -#app-navigation { - width: 300px; - height: 100%; - float: left; - -moz-box-sizing: border-box; box-sizing: border-box; - background-color: #f8f8f8; - border-right: 1px solid #ccc; -} -#app-navigation > ul { - height: 100%; - overflow: auto; - -moz-box-sizing: border-box; box-sizing: border-box; -} -#app-navigation li { - position: relative; - width: 100%; - -moz-box-sizing: border-box; box-sizing: border-box; - text-shadow: 0 1px 0 rgba(255,255,255,.9); -} -#app-navigation .active, -#app-navigation .active a, -#app-navigation li:hover > a { - background-color: #ddd; - text-shadow: 0 1px 0 rgba(255,255,255,.7); -} - -/* special rules for first-level entries and folders */ -#app-navigation > ul > li { - background-color: #eee; -} - -#app-navigation .with-icon a { - padding-left: 44px; - background-size: 16px 16px; - background-position: 14px center; - background-repeat: no-repeat; -} - -#app-navigation li > a { - display: block; - width: 100%; - height: 44px; - padding: 12px; - overflow: hidden; - -moz-box-sizing: border-box; box-sizing: border-box; - white-space: nowrap; - text-overflow: ellipsis; - color: #333; -} - -#app-navigation .collapse { - display: none; /* hide collapse button intially */ -} -#app-navigation .collapsible > .collapse { - position: absolute; - height: 44px; - width: 44px; - margin: 0; - padding: 0; - background: none; background-image: url('../img/actions/triangle-s.svg'); - background-size: 16px; background-repeat: no-repeat; background-position: center; - border: none; - border-radius: 0; - outline: none !important; - box-shadow: none; -} -#app-navigation .collapsible:hover > a { - background-image: none; -} -#app-navigation .collapsible:hover > .collapse { - display: block; -} - -#app-navigation .collapsible .collapse { - -moz-transform: rotate(-90deg); - -webkit-transform: rotate(-90deg); - -ms-transform:rotate(-90deg); - -o-transform:rotate(-90deg); - transform: rotate(-90deg); -} -#app-navigation .collapsible.open .collapse { - -moz-transform: rotate(0); - -webkit-transform: rotate(0); - -ms-transform:rotate(0); - -o-transform:rotate(0); - transform: rotate(0); -} - -/* Second level nesting for lists */ -#app-navigation > ul ul { - display: none; -} -#app-navigation > ul ul li > a { - padding-left: 32px; -} -#app-navigation > .with-icon ul li > a { - padding-left: 48px; - background-position: 24px center; -} - -#app-navigation .open { - background-image: linear-gradient(top, rgb(238,238,238) 0%, rgb(245,245,245) 100%); - background-image: -o-linear-gradient(top, rgb(238,238,238) 0%, rgb(245,245,245) 100%); - background-image: -moz-linear-gradient(top, rgb(238,238,238) 0%, rgb(245,245,245) 100%); - background-image: -webkit-linear-gradient(top, rgb(238,238,238) 0%, rgb(245,245,245) 100%); - background-image: -ms-linear-gradient(top, rgb(238,238,238) 0%, rgb(245,245,245) 100%); -} - -#app-navigation > ul .open:hover { - -moz-box-shadow: inset 0 0 3px #ccc; -webkit-box-shadow: inset 0 0 3px #ccc; box-shadow: inset 0 0 3px #ccc; -} - -#app-navigation > ul .open ul { - display: block; -} - - -/* counter and actions */ -#app-navigation .utils { - position: absolute; - right: 0; - top: 0; - bottom: 0; - font-size: 12px; -} - #app-navigation .utils button, - #app-navigation .utils .counter { - width: 44px; - height: 44px; - padding-top: 12px; - } - - -/* drag and drop */ -#app-navigation .drag-and-drop { - -moz-transition: padding-bottom 500ms ease 0s; - -o-transition: padding-bottom 500ms ease 0s; - -webkit-transition: padding-bottom 500ms ease 0s; - -ms-transition: padding-bottom 500ms ease 0s; - transition: padding-bottom 500ms ease 0s; - padding-bottom: 40px; -} -#app-navigation .personalblock > legend { /* TODO @Raydiation: still needed? */ - padding: 10px 0; margin: 0; -} -#app-navigation .error { - color: #dd1144; -} - - - -/* Part where the content will be loaded into */ -#app-content { - height: 100%; - overflow-y: auto; -} - -/* settings area */ -#app-settings { - position: fixed; - width: 299px; - bottom: 0; - border-top: 1px solid #ccc; -} -#app-settings-header { - background-color: #eee; -} -#app-settings-content { - display: none; - padding: 10px; - background-color: #eee; -} -#app-settings.open #app-settings-content { - display: block; -} - -.settings-button { - display: block; - height: 32px; - width: 100%; - padding: 0; - margin: 0; - background-color: transparent; background-image: url('../img/actions/settings.svg'); - background-position: 10px center; background-repeat: no-repeat; - box-shadow: none; - border: 0; - border-radius: 0; -} -.settings-button:hover { - background-color: #ddd; -} - -/* icons */ -.folder-icon, .delete-icon, .edit-icon, .progress-icon { - background-repeat: no-repeat; - background-position: center; -} -.folder-icon { background-image: url('../img/places/folder.svg'); } -.delete-icon { background-image: url('../img/actions/delete.svg'); } -.delete-icon:hover, .delete-icon:focus { - background-image: url('../img/actions/delete-hover.svg'); -} -.edit-icon { background-image: url('../img/actions/rename.svg'); } -.progress-icon { - background-image: url('../img/loading.gif'); - background-size: 16px; - /* force show the loading icon, not only on hover */ - -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; - filter:alpha(opacity=100); - opacity: 1 !important; - display: inline !important; -} - -/* buttons */ -button.loading { - background-image: url('../img/loading.gif'); - background-position: right 10px center; background-repeat: no-repeat; - background-size: 16px; - padding-right: 30px; -} - - - - - -/* ---- BROWSER-SPECIFIC FIXES ---- */ - -/* remove dotted outlines in Firefox */ -::-moz-focus-inner { - border: 0; -} -.lte8 .delete-icon { background-image: url('../img/actions/delete.png'); } -.lte8 .delete-icon:hover, .delete-icon:focus { - background-image: url('../img/actions/delete-hover.png'); -} - -/* IE8 needs background to be set to same color to make transparency look good. */ -.lte9 #body-login form input[type="text"] { - border: 1px solid lightgrey; /* use border to add 1px line between input fields */ - background-color: white; /* don't change background on hover */ -} -.lte9 #body-login form input[type="password"] { - /* leave out top border for 1px line between input fields*/ - border-left: 1px solid lightgrey; - border-right: 1px solid lightgrey; - border-bottom: 1px solid lightgrey; - background-color: white; /* don't change background on hover */ -} -.lte9 #body-login form label.infield { - background-color: white; /* don't change background on hover */ - -ms-filter: "progid:DXImageTransform.Microsoft.Chroma(color='white')"; -} -/* disable opacity of info text on gradient - sice we cannot set a good backround color to use the filter&background hack as with the input labels */ -.lte9 #body-login p.info { - filter: initial; -} -/* deactivate show password toggle for IE. Does not work for 8 and 9+ have their own implementation. */ -.ie #show, .ie #show+label { - display: none; - visibility: hidden; -} - -/* fix installation screen rendering issue for IE8+9 */ -.lte9 #body-login { - height: auto !important; -} diff --git a/core/img/filetypes/application-epub+zip.png b/core/img/filetypes/application-epub+zip.png new file mode 100644 index 0000000000..b3e3b28b4d Binary files /dev/null and b/core/img/filetypes/application-epub+zip.png differ diff --git a/core/img/filetypes/application-epub+zip.svg b/core/img/filetypes/application-epub+zip.svg new file mode 100644 index 0000000000..041f9f15e6 --- /dev/null +++ b/core/img/filetypes/application-epub+zip.svg @@ -0,0 +1,761 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/application-msexcel.png b/core/img/filetypes/application-msexcel.png deleted file mode 100644 index b977d7e52e..0000000000 Binary files a/core/img/filetypes/application-msexcel.png and /dev/null differ diff --git a/core/img/filetypes/application-mspowerpoint.png b/core/img/filetypes/application-mspowerpoint.png deleted file mode 100644 index c4eff0387d..0000000000 Binary files a/core/img/filetypes/application-mspowerpoint.png and /dev/null differ diff --git a/core/img/filetypes/application-msword.png b/core/img/filetypes/application-msword.png deleted file mode 100644 index ae8ecbf476..0000000000 Binary files a/core/img/filetypes/application-msword.png and /dev/null differ diff --git a/core/img/filetypes/application-pdf.png b/core/img/filetypes/application-pdf.png index 8f8095e46f..a9ab6d279b 100644 Binary files a/core/img/filetypes/application-pdf.png and b/core/img/filetypes/application-pdf.png differ diff --git a/core/img/filetypes/application-pdf.svg b/core/img/filetypes/application-pdf.svg new file mode 100644 index 0000000000..47c2caabda --- /dev/null +++ b/core/img/filetypes/application-pdf.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/application-rss+xml.png b/core/img/filetypes/application-rss+xml.png index 315c4f4fa6..e5bb322c57 100644 Binary files a/core/img/filetypes/application-rss+xml.png and b/core/img/filetypes/application-rss+xml.png differ diff --git a/core/img/filetypes/application-rss+xml.svg b/core/img/filetypes/application-rss+xml.svg new file mode 100644 index 0000000000..4fd98545a7 --- /dev/null +++ b/core/img/filetypes/application-rss+xml.svg @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/application-sgf.png b/core/img/filetypes/application-sgf.png deleted file mode 100644 index 48996c5439..0000000000 Binary files a/core/img/filetypes/application-sgf.png and /dev/null differ diff --git a/core/img/filetypes/application-vnd.oasis.opendocument.formula.png b/core/img/filetypes/application-vnd.oasis.opendocument.formula.png deleted file mode 100644 index e0cf49542d..0000000000 Binary files a/core/img/filetypes/application-vnd.oasis.opendocument.formula.png and /dev/null differ diff --git a/core/img/filetypes/application-vnd.oasis.opendocument.graphics.png b/core/img/filetypes/application-vnd.oasis.opendocument.graphics.png deleted file mode 100644 index b326a0543a..0000000000 Binary files a/core/img/filetypes/application-vnd.oasis.opendocument.graphics.png and /dev/null differ diff --git a/core/img/filetypes/application-vnd.oasis.opendocument.presentation.png b/core/img/filetypes/application-vnd.oasis.opendocument.presentation.png deleted file mode 100644 index 7c6fd24684..0000000000 Binary files a/core/img/filetypes/application-vnd.oasis.opendocument.presentation.png and /dev/null differ diff --git a/core/img/filetypes/application-vnd.oasis.opendocument.spreadsheet.png b/core/img/filetypes/application-vnd.oasis.opendocument.spreadsheet.png deleted file mode 100644 index 8b0e85b067..0000000000 Binary files a/core/img/filetypes/application-vnd.oasis.opendocument.spreadsheet.png and /dev/null differ diff --git a/core/img/filetypes/application-vnd.oasis.opendocument.text.png b/core/img/filetypes/application-vnd.oasis.opendocument.text.png deleted file mode 100644 index 48452eb3e8..0000000000 Binary files a/core/img/filetypes/application-vnd.oasis.opendocument.text.png and /dev/null differ diff --git a/core/img/filetypes/application-x-7z-compressed.png b/core/img/filetypes/application-x-7z-compressed.png deleted file mode 100644 index 2cd08aebf9..0000000000 Binary files a/core/img/filetypes/application-x-7z-compressed.png and /dev/null differ diff --git a/core/img/filetypes/application-x-bzip-compressed-tar.png b/core/img/filetypes/application-x-bzip-compressed-tar.png deleted file mode 100644 index 2cd08aebf9..0000000000 Binary files a/core/img/filetypes/application-x-bzip-compressed-tar.png and /dev/null differ diff --git a/core/img/filetypes/application-x-bzip.png b/core/img/filetypes/application-x-bzip.png deleted file mode 100644 index 2cd08aebf9..0000000000 Binary files a/core/img/filetypes/application-x-bzip.png and /dev/null differ diff --git a/core/img/filetypes/application-x-compressed-tar.png b/core/img/filetypes/application-x-compressed-tar.png deleted file mode 100644 index 2cd08aebf9..0000000000 Binary files a/core/img/filetypes/application-x-compressed-tar.png and /dev/null differ diff --git a/core/img/filetypes/application-x-deb.png b/core/img/filetypes/application-x-deb.png deleted file mode 100644 index 2cd08aebf9..0000000000 Binary files a/core/img/filetypes/application-x-deb.png and /dev/null differ diff --git a/core/img/filetypes/application-x-debian-package.png b/core/img/filetypes/application-x-debian-package.png deleted file mode 100644 index 1d6db5f933..0000000000 Binary files a/core/img/filetypes/application-x-debian-package.png and /dev/null differ diff --git a/core/img/filetypes/application-x-gzip.png b/core/img/filetypes/application-x-gzip.png deleted file mode 100644 index 2cd08aebf9..0000000000 Binary files a/core/img/filetypes/application-x-gzip.png and /dev/null differ diff --git a/core/img/filetypes/application-x-lzma-compressed-tar.png b/core/img/filetypes/application-x-lzma-compressed-tar.png deleted file mode 100644 index 2cd08aebf9..0000000000 Binary files a/core/img/filetypes/application-x-lzma-compressed-tar.png and /dev/null differ diff --git a/core/img/filetypes/application-x-rar.png b/core/img/filetypes/application-x-rar.png deleted file mode 100644 index 2cd08aebf9..0000000000 Binary files a/core/img/filetypes/application-x-rar.png and /dev/null differ diff --git a/core/img/filetypes/application-x-rpm.png b/core/img/filetypes/application-x-rpm.png deleted file mode 100644 index 2cd08aebf9..0000000000 Binary files a/core/img/filetypes/application-x-rpm.png and /dev/null differ diff --git a/core/img/filetypes/application-x-tar.png b/core/img/filetypes/application-x-tar.png deleted file mode 100644 index 2cd08aebf9..0000000000 Binary files a/core/img/filetypes/application-x-tar.png and /dev/null differ diff --git a/core/img/filetypes/application-x-tarz.png b/core/img/filetypes/application-x-tarz.png deleted file mode 100644 index 2cd08aebf9..0000000000 Binary files a/core/img/filetypes/application-x-tarz.png and /dev/null differ diff --git a/core/img/filetypes/application-zip.png b/core/img/filetypes/application-zip.png deleted file mode 100644 index 2cd08aebf9..0000000000 Binary files a/core/img/filetypes/application-zip.png and /dev/null differ diff --git a/core/img/filetypes/application.png b/core/img/filetypes/application.png index 1dee9e3660..9152cc1b74 100644 Binary files a/core/img/filetypes/application.png and b/core/img/filetypes/application.png differ diff --git a/core/img/filetypes/application.svg b/core/img/filetypes/application.svg new file mode 100644 index 0000000000..870a4ac246 --- /dev/null +++ b/core/img/filetypes/application.svg @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/audio.png b/core/img/filetypes/audio.png index a8b3ede3df..3f56a7e2a9 100644 Binary files a/core/img/filetypes/audio.png and b/core/img/filetypes/audio.png differ diff --git a/core/img/filetypes/audio.svg b/core/img/filetypes/audio.svg new file mode 100644 index 0000000000..d5eda38e8a --- /dev/null +++ b/core/img/filetypes/audio.svg @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/calendar.png b/core/img/filetypes/calendar.png new file mode 100644 index 0000000000..d85b1db651 Binary files /dev/null and b/core/img/filetypes/calendar.png differ diff --git a/core/img/filetypes/calendar.svg b/core/img/filetypes/calendar.svg new file mode 100644 index 0000000000..0016749b93 --- /dev/null +++ b/core/img/filetypes/calendar.svg @@ -0,0 +1,94 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/code-script.png b/core/img/filetypes/code-script.png deleted file mode 100644 index 63fe6ceff5..0000000000 Binary files a/core/img/filetypes/code-script.png and /dev/null differ diff --git a/core/img/filetypes/code.png b/core/img/filetypes/code.png deleted file mode 100644 index 0c76bd1297..0000000000 Binary files a/core/img/filetypes/code.png and /dev/null differ diff --git a/core/img/filetypes/database.png b/core/img/filetypes/database.png index 3d09261a26..24788b2a37 100644 Binary files a/core/img/filetypes/database.png and b/core/img/filetypes/database.png differ diff --git a/core/img/filetypes/database.svg b/core/img/filetypes/database.svg new file mode 100644 index 0000000000..6dfac54e68 --- /dev/null +++ b/core/img/filetypes/database.svg @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/core/img/filetypes/file.png b/core/img/filetypes/file.png index 8b8b1ca000..c20f13c2e1 100644 Binary files a/core/img/filetypes/file.png and b/core/img/filetypes/file.png differ diff --git a/core/img/filetypes/file.svg b/core/img/filetypes/file.svg new file mode 100644 index 0000000000..3d91c34114 --- /dev/null +++ b/core/img/filetypes/file.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/flash.png b/core/img/filetypes/flash.png index 9f5db634a4..bcde641da3 100644 Binary files a/core/img/filetypes/flash.png and b/core/img/filetypes/flash.png differ diff --git a/core/img/filetypes/flash.svg b/core/img/filetypes/flash.svg new file mode 100644 index 0000000000..cb823703d9 --- /dev/null +++ b/core/img/filetypes/flash.svg @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/folder-drag-accept.png b/core/img/filetypes/folder-drag-accept.png new file mode 100644 index 0000000000..19c2d2eebd Binary files /dev/null and b/core/img/filetypes/folder-drag-accept.png differ diff --git a/core/img/filetypes/folder-drag-accept.svg b/core/img/filetypes/folder-drag-accept.svg new file mode 100644 index 0000000000..a7885c80be --- /dev/null +++ b/core/img/filetypes/folder-drag-accept.svg @@ -0,0 +1,335 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/folder-external.png b/core/img/filetypes/folder-external.png new file mode 100644 index 0000000000..997f07b2ba Binary files /dev/null and b/core/img/filetypes/folder-external.png differ diff --git a/core/img/filetypes/folder-external.svg b/core/img/filetypes/folder-external.svg new file mode 100644 index 0000000000..89ec9a8eca --- /dev/null +++ b/core/img/filetypes/folder-external.svg @@ -0,0 +1,68 @@ + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/folder-public.png b/core/img/filetypes/folder-public.png new file mode 100644 index 0000000000..c716607e26 Binary files /dev/null and b/core/img/filetypes/folder-public.png differ diff --git a/core/img/filetypes/folder-public.svg b/core/img/filetypes/folder-public.svg new file mode 100644 index 0000000000..a949833f95 --- /dev/null +++ b/core/img/filetypes/folder-public.svg @@ -0,0 +1,68 @@ + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/folder-shared.png b/core/img/filetypes/folder-shared.png new file mode 100644 index 0000000000..e547a24206 Binary files /dev/null and b/core/img/filetypes/folder-shared.png differ diff --git a/core/img/filetypes/folder-shared.svg b/core/img/filetypes/folder-shared.svg new file mode 100644 index 0000000000..56aa9634d2 --- /dev/null +++ b/core/img/filetypes/folder-shared.svg @@ -0,0 +1,68 @@ + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/folder.png b/core/img/filetypes/folder.png index 784e8fa482..b7be63d583 100644 Binary files a/core/img/filetypes/folder.png and b/core/img/filetypes/folder.png differ diff --git a/core/img/filetypes/folder.svg b/core/img/filetypes/folder.svg new file mode 100644 index 0000000000..92d4cc2271 --- /dev/null +++ b/core/img/filetypes/folder.svg @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/font.png b/core/img/filetypes/font.png index 81e41de7d3..9404c3ca6a 100644 Binary files a/core/img/filetypes/font.png and b/core/img/filetypes/font.png differ diff --git a/core/img/filetypes/font.svg b/core/img/filetypes/font.svg new file mode 100644 index 0000000000..8fca5ff9ef --- /dev/null +++ b/core/img/filetypes/font.svg @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/image-svg+xml.png b/core/img/filetypes/image-svg+xml.png index a1291c2dfa..e3dd52489d 100644 Binary files a/core/img/filetypes/image-svg+xml.png and b/core/img/filetypes/image-svg+xml.png differ diff --git a/core/img/filetypes/image-svg+xml.svg b/core/img/filetypes/image-svg+xml.svg new file mode 100644 index 0000000000..06df5f54da --- /dev/null +++ b/core/img/filetypes/image-svg+xml.svg @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/image.png b/core/img/filetypes/image.png index 4a158fef7e..087f5dcdbd 100644 Binary files a/core/img/filetypes/image.png and b/core/img/filetypes/image.png differ diff --git a/core/img/filetypes/image.svg b/core/img/filetypes/image.svg new file mode 100644 index 0000000000..50991f7359 --- /dev/null +++ b/core/img/filetypes/image.svg @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/link.png b/core/img/filetypes/link.png deleted file mode 100644 index 68f21d3011..0000000000 Binary files a/core/img/filetypes/link.png and /dev/null differ diff --git a/core/img/filetypes/model.png b/core/img/filetypes/model.png deleted file mode 100644 index 7851cf34c9..0000000000 Binary files a/core/img/filetypes/model.png and /dev/null differ diff --git a/core/img/filetypes/ms-excel.png b/core/img/filetypes/ms-excel.png deleted file mode 100644 index b977d7e52e..0000000000 Binary files a/core/img/filetypes/ms-excel.png and /dev/null differ diff --git a/core/img/filetypes/ms-powerpoint.png b/core/img/filetypes/ms-powerpoint.png deleted file mode 100644 index c4eff0387d..0000000000 Binary files a/core/img/filetypes/ms-powerpoint.png and /dev/null differ diff --git a/core/img/filetypes/package-x-generic.png b/core/img/filetypes/package-x-generic.png new file mode 100644 index 0000000000..e08cc5480c Binary files /dev/null and b/core/img/filetypes/package-x-generic.png differ diff --git a/core/img/filetypes/package-x-generic.svg b/core/img/filetypes/package-x-generic.svg new file mode 100644 index 0000000000..13ab5b7550 --- /dev/null +++ b/core/img/filetypes/package-x-generic.svg @@ -0,0 +1,62 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/presentation.png b/core/img/filetypes/presentation.png deleted file mode 100644 index b4aaad9a45..0000000000 Binary files a/core/img/filetypes/presentation.png and /dev/null differ diff --git a/core/img/filetypes/readme-2.txt b/core/img/filetypes/readme-2.txt deleted file mode 100644 index 5a606f9a0b..0000000000 --- a/core/img/filetypes/readme-2.txt +++ /dev/null @@ -1,28 +0,0 @@ -15.02.2012 - -Following new icons have been added: -core/img/filetypes/application-vnd.oasis.opendocument.formula.png -core/img/filetypes/application-vnd.oasis.opendocument.graphics.png -core/img/filetypes/application-vnd.oasis.opendocument.presentation.png -core/img/filetypes/application-vnd.oasis.opendocument.spreadsheet.png -core/img/filetypes/application-vnd.oasis.opendocument.text.png - Download: http://odftoolkit.org/ODF-Icons#ODF_Icons - License: Apache 2.0 - -core/img/filetypes/application-x-7z-compressed.png -core/img/filetypes/application-x-bzip-compressed-tar.png -core/img/filetypes/application-x-bzip.png -core/img/filetypes/application-x-compressed-tar.png -core/img/filetypes/application-x-deb.png -core/img/filetypes/application-x-debian-package.png -core/img/filetypes/application-x-gzip.png -core/img/filetypes/application-x-lzma-compressed-tar.png -core/img/filetypes/application-x-rar.png -core/img/filetypes/application-x-rpm.png -core/img/filetypes/application-x-tar.png -core/img/filetypes/application-x-tarz.png -core/img/filetypes/application-zip.png - Author: Gomez Hyuuga - License: Creative Commons Attribution-Share Alike 3.0 Unported License - Download: http://kde-look.org/content/show.php/?content=101767 - diff --git a/core/img/filetypes/readme.txt b/core/img/filetypes/readme.txt deleted file mode 100644 index 400a64d785..0000000000 --- a/core/img/filetypes/readme.txt +++ /dev/null @@ -1,22 +0,0 @@ -Silk icon set 1.3 - -_________________________________________ -Mark James -http://www.famfamfam.com/lab/icons/silk/ -_________________________________________ - -This work is licensed under a -Creative Commons Attribution 2.5 License. -[ http://creativecommons.org/licenses/by/2.5/ ] - -This means you may use it for any purpose, -and make any changes you like. -All I ask is that you include a link back -to this page in your credits. - -Are you using this icon set? Send me an email -(including a link or picture if available) to -mjames@gmail.com - -Any other questions about this icon set please -contact mjames@gmail.com \ No newline at end of file diff --git a/core/img/filetypes/ruby.png b/core/img/filetypes/ruby.png deleted file mode 100644 index f59b7c4365..0000000000 Binary files a/core/img/filetypes/ruby.png and /dev/null differ diff --git a/core/img/filetypes/spreadsheet.png b/core/img/filetypes/spreadsheet.png deleted file mode 100644 index abcd93689a..0000000000 Binary files a/core/img/filetypes/spreadsheet.png and /dev/null differ diff --git a/core/img/filetypes/text-calendar.png b/core/img/filetypes/text-calendar.png deleted file mode 100644 index 658913852d..0000000000 Binary files a/core/img/filetypes/text-calendar.png and /dev/null differ diff --git a/core/img/filetypes/text-code.png b/core/img/filetypes/text-code.png new file mode 100644 index 0000000000..753d151f53 Binary files /dev/null and b/core/img/filetypes/text-code.png differ diff --git a/core/img/filetypes/text-code.svg b/core/img/filetypes/text-code.svg new file mode 100644 index 0000000000..61a5c19f51 --- /dev/null +++ b/core/img/filetypes/text-code.svg @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/text-css.png b/core/img/filetypes/text-css.png deleted file mode 100644 index 23f3101811..0000000000 Binary files a/core/img/filetypes/text-css.png and /dev/null differ diff --git a/core/img/filetypes/text-html.png b/core/img/filetypes/text-html.png index 55d1072eaf..dd17b75010 100644 Binary files a/core/img/filetypes/text-html.png and b/core/img/filetypes/text-html.png differ diff --git a/core/img/filetypes/text-html.svg b/core/img/filetypes/text-html.svg new file mode 100644 index 0000000000..c41964738d --- /dev/null +++ b/core/img/filetypes/text-html.svg @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/text-vcard.png b/core/img/filetypes/text-vcard.png index c02f315d20..2e52d1ecb3 100644 Binary files a/core/img/filetypes/text-vcard.png and b/core/img/filetypes/text-vcard.png differ diff --git a/core/img/filetypes/text-vcard.svg b/core/img/filetypes/text-vcard.svg new file mode 100644 index 0000000000..27054be57e --- /dev/null +++ b/core/img/filetypes/text-vcard.svg @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/text-x-c++.png b/core/img/filetypes/text-x-c++.png deleted file mode 100644 index a87cf847cb..0000000000 Binary files a/core/img/filetypes/text-x-c++.png and /dev/null differ diff --git a/core/img/filetypes/text-x-c.png b/core/img/filetypes/text-x-c.png index 34a05cccf0..b9edd1e866 100644 Binary files a/core/img/filetypes/text-x-c.png and b/core/img/filetypes/text-x-c.png differ diff --git a/core/img/filetypes/text-x-c.svg b/core/img/filetypes/text-x-c.svg new file mode 100644 index 0000000000..35a6a0cdfe --- /dev/null +++ b/core/img/filetypes/text-x-c.svg @@ -0,0 +1,75 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/text-x-csharp.png b/core/img/filetypes/text-x-csharp.png deleted file mode 100644 index ffb8fc932f..0000000000 Binary files a/core/img/filetypes/text-x-csharp.png and /dev/null differ diff --git a/core/img/filetypes/text-x-h.png b/core/img/filetypes/text-x-h.png index e902abb076..37a8805b50 100644 Binary files a/core/img/filetypes/text-x-h.png and b/core/img/filetypes/text-x-h.png differ diff --git a/core/img/filetypes/text-x-h.svg b/core/img/filetypes/text-x-h.svg new file mode 100644 index 0000000000..38ed04690f --- /dev/null +++ b/core/img/filetypes/text-x-h.svg @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/text-x-javascript.png b/core/img/filetypes/text-x-javascript.png new file mode 100644 index 0000000000..24d09ce978 Binary files /dev/null and b/core/img/filetypes/text-x-javascript.png differ diff --git a/core/img/filetypes/text-x-javascript.svg b/core/img/filetypes/text-x-javascript.svg new file mode 100644 index 0000000000..0cc52ce6ba --- /dev/null +++ b/core/img/filetypes/text-x-javascript.svg @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/text-x-php.png b/core/img/filetypes/text-x-php.png deleted file mode 100644 index 7868a25945..0000000000 Binary files a/core/img/filetypes/text-x-php.png and /dev/null differ diff --git a/core/img/filetypes/text-x-python.png b/core/img/filetypes/text-x-python.png new file mode 100644 index 0000000000..57148f4b90 Binary files /dev/null and b/core/img/filetypes/text-x-python.png differ diff --git a/core/img/filetypes/text-x-python.svg b/core/img/filetypes/text-x-python.svg new file mode 100644 index 0000000000..00755e6d0c --- /dev/null +++ b/core/img/filetypes/text-x-python.svg @@ -0,0 +1,87 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/text.png b/core/img/filetypes/text.png index 813f712f72..6b069c82c1 100644 Binary files a/core/img/filetypes/text.png and b/core/img/filetypes/text.png differ diff --git a/core/img/filetypes/text.svg b/core/img/filetypes/text.svg new file mode 100644 index 0000000000..69a1bcd98c --- /dev/null +++ b/core/img/filetypes/text.svg @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/video.png b/core/img/filetypes/video.png index b0ce7bb198..045754df26 100644 Binary files a/core/img/filetypes/video.png and b/core/img/filetypes/video.png differ diff --git a/core/img/filetypes/video.svg b/core/img/filetypes/video.svg new file mode 100644 index 0000000000..67691369ac --- /dev/null +++ b/core/img/filetypes/video.svg @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/web.png b/core/img/filetypes/web.png new file mode 100644 index 0000000000..c380231264 Binary files /dev/null and b/core/img/filetypes/web.png differ diff --git a/core/img/filetypes/web.svg b/core/img/filetypes/web.svg new file mode 100644 index 0000000000..67775a2233 --- /dev/null +++ b/core/img/filetypes/web.svg @@ -0,0 +1,45 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/x-.png b/core/img/filetypes/x-.png deleted file mode 100644 index 8443c23eb9..0000000000 Binary files a/core/img/filetypes/x-.png and /dev/null differ diff --git a/core/img/filetypes/x-office-document.png b/core/img/filetypes/x-office-document.png new file mode 100644 index 0000000000..fcd28e9a29 Binary files /dev/null and b/core/img/filetypes/x-office-document.png differ diff --git a/core/img/filetypes/x-office-document.svg b/core/img/filetypes/x-office-document.svg new file mode 100644 index 0000000000..fc51a3a1b7 --- /dev/null +++ b/core/img/filetypes/x-office-document.svg @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/x-office-presentation.png b/core/img/filetypes/x-office-presentation.png new file mode 100644 index 0000000000..7ee552ba7c Binary files /dev/null and b/core/img/filetypes/x-office-presentation.png differ diff --git a/core/img/filetypes/x-office-presentation.svg b/core/img/filetypes/x-office-presentation.svg new file mode 100644 index 0000000000..821798d50f --- /dev/null +++ b/core/img/filetypes/x-office-presentation.svg @@ -0,0 +1,109 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/filetypes/x-office-spreadsheet.png b/core/img/filetypes/x-office-spreadsheet.png new file mode 100644 index 0000000000..dfdc74a8bf Binary files /dev/null and b/core/img/filetypes/x-office-spreadsheet.png differ diff --git a/core/img/filetypes/x-office-spreadsheet.svg b/core/img/filetypes/x-office-spreadsheet.svg new file mode 100644 index 0000000000..af40bb252a --- /dev/null +++ b/core/img/filetypes/x-office-spreadsheet.svg @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/js/compatibility.js b/core/js/compatibility.js index b690803ca7..6548f95d42 100644 --- a/core/js/compatibility.js +++ b/core/js/compatibility.js @@ -24,7 +24,7 @@ if (typeof Object.keys !== 'function') { } } return k; - } + }; } /** diff --git a/core/js/config.js b/core/js/config.js index 563df4e663..52d1c3aee2 100644 --- a/core/js/config.js +++ b/core/js/config.js @@ -9,7 +9,7 @@ OC.AppConfig={ getCall:function(action,data,callback){ data.action=action; $.getJSON(OC.AppConfig.url,data,function(result){ - if(result.status='success'){ + if(result.status==='success'){ if(callback){ callback(result.data); } @@ -19,7 +19,7 @@ OC.AppConfig={ postCall:function(action,data,callback){ data.action=action; $.post(OC.AppConfig.url,data,function(result){ - if(result.status='success'){ + if(result.status==='success'){ if(callback){ callback(result.data); } diff --git a/core/js/jquery.ocdialog.js b/core/js/jquery.ocdialog.js index 7413927e3b..bafbd0e0e9 100644 --- a/core/js/jquery.ocdialog.js +++ b/core/js/jquery.ocdialog.js @@ -13,7 +13,7 @@ this.originalCss = { display: this.element[0].style.display, width: this.element[0].style.width, - height: this.element[0].style.height, + height: this.element[0].style.height }; this.originalTitle = this.element.attr('title'); @@ -152,7 +152,7 @@ content_height -= this.$buttonrow.outerHeight(true); } this.parent = this.$dialog.parent().length > 0 ? this.$dialog.parent() : $('body'); - content_height = Math.min(content_height, this.parent.height()-20) + content_height = Math.min(content_height, this.parent.height()-20); this.element.css({ height: content_height + 'px', width: this.$dialog.innerWidth()-20 + 'px' @@ -187,7 +187,7 @@ } }, widget: function() { - return this.$dialog + return this.$dialog; }, close: function() { this._destroyOverlay(); @@ -200,10 +200,10 @@ }, destroy: function() { if(this.$title) { - this.$title.remove() + this.$title.remove(); } if(this.$buttonrow) { - this.$buttonrow.remove() + this.$buttonrow.remove(); } if(this.originalTitle) { diff --git a/core/js/js.js b/core/js/js.js index d580b6113e..af4a6d6b33 100644 --- a/core/js/js.js +++ b/core/js/js.js @@ -709,7 +709,6 @@ $(document).ready(function(){ }); label.hide(); }; - setShowPassword($('#password'), $('label[for=show]')); setShowPassword($('#adminpass'), $('label[for=show]')); setShowPassword($('#pass2'), $('label[for=personal-show]')); setShowPassword($('#dbpass'), $('label[for=dbpassword]')); @@ -762,6 +761,7 @@ $(document).ready(function(){ $('.password .action').tipsy({gravity:'se', fade:true, live:true}); $('#upload').tipsy({gravity:'w', fade:true}); $('.selectedActions a').tipsy({gravity:'s', fade:true, live:true}); + $('a.action.delete').tipsy({gravity:'e', fade:true, live:true}); $('a.action').tipsy({gravity:'s', fade:true, live:true}); $('td .modified').tipsy({gravity:'s', fade:true, live:true}); diff --git a/core/js/listview.js b/core/js/listview.js index 3a713a6222..18d0bdeaf7 100644 --- a/core/js/listview.js +++ b/core/js/listview.js @@ -11,11 +11,11 @@ ListView.generateTable=function(collumns){ html+='
    '; }); - html+'
    '; return $(html); diff --git a/core/js/multiselect.js b/core/js/multiselect.js index 48d521e185..373fd2d41a 100644 --- a/core/js/multiselect.js +++ b/core/js/multiselect.js @@ -25,7 +25,7 @@ 'labels':[], 'oncheck':false, 'onuncheck':false, - 'minWidth': 'default;', + 'minWidth': 'default;' }; $(this).attr('data-msid', multiSelectId); $.extend(settings,options); @@ -200,7 +200,7 @@ return false; } var li=$(this).parent(); - var val = $(this).val() + var val = $(this).val(); var select=button.parent().next(); if(typeof settings.createCallback === 'function') { var response = settings.createCallback(select, val); diff --git a/core/js/oc-dialogs.js b/core/js/oc-dialogs.js index 5cbc8359d5..4092b8d074 100644 --- a/core/js/oc-dialogs.js +++ b/core/js/oc-dialogs.js @@ -79,9 +79,15 @@ var OCdialogs = { title: title }).data('path', ''); - if (modal === undefined) { modal = false }; - if (multiselect === undefined) { multiselect = false }; - if (mimetype_filter === undefined) { mimetype_filter = '' }; + if (modal === undefined) { + modal = false; + } + if (multiselect === undefined) { + multiselect = false; + } + if (mimetype_filter === undefined) { + mimetype_filter = ''; + } $('body').append(self.$filePicker); @@ -106,7 +112,7 @@ var OCdialogs = { datapath.push(self.$filePicker.data('path') + '/' + $(element).text()); }); } else { - var datapath = self.$filePicker.data('path'); + datapath = self.$filePicker.data('path'); datapath += '/' + self.$filelist.find('.filepicker_element_selected .filename').text(); } callback(datapath); @@ -151,7 +157,9 @@ var OCdialogs = { message: content, type: dialog_type }); - if (modal === undefined) { modal = false }; + if (modal === undefined) { + modal = false; + } $('body').append($dlg); var buttonlist = []; switch (buttons) { @@ -159,7 +167,9 @@ var OCdialogs = { buttonlist = [{ text: t('core', 'Yes'), click: function(){ - if (callback !== undefined) { callback(true) }; + if (callback !== undefined) { + callback(true); + } $(dialog_id).ocdialog('close'); }, defaultButton: true @@ -167,7 +177,9 @@ var OCdialogs = { { text: t('core', 'No'), click: function(){ - if (callback !== undefined) { callback(false) }; + if (callback !== undefined) { + callback(false); + } $(dialog_id).ocdialog('close'); } }]; @@ -175,7 +187,9 @@ var OCdialogs = { case OCdialogs.OK_BUTTON: var functionToCall = function() { $(dialog_id).ocdialog('close'); - if(callback !== undefined) { callback() }; + if(callback !== undefined) { + callback(); + } }; buttonlist[0] = { text: t('core', 'Ok'), @@ -183,7 +197,7 @@ var OCdialogs = { defaultButton: true }; break; - }; + } $(dialog_id).ocdialog({ closeOnEscape: true, @@ -265,7 +279,7 @@ var OCdialogs = { var sorted = dirs.concat(others); $.each(sorted, function(idx, entry) { - $li = self.$listTmpl.octemplate({ + var $li = self.$listTmpl.octemplate({ type: entry.type, dir: dir, filename: entry.name, @@ -283,13 +297,13 @@ var OCdialogs = { */ _fillSlug: function() { this.$dirTree.empty(); - var self = this + var self = this; var path = this.$filePicker.data('path'); var $template = $('{name}'); if(path) { var paths = path.split('/'); $.each(paths, function(index, dir) { - var dir = paths.pop(); + dir = paths.pop(); if(dir === '') { return false; } @@ -323,7 +337,7 @@ var OCdialogs = { $element.toggleClass('filepicker_element_selected'); return; } else if ( $element.data('type') === 'dir' ) { - this._fillFilePicker(this.$filePicker.data('path') + '/' + $element.data('entryname')) + this._fillFilePicker(this.$filePicker.data('path') + '/' + $element.data('entryname')); } } }; diff --git a/core/js/oc-vcategories.js b/core/js/oc-vcategories.js index c745dbc5fb..c297a24680 100644 --- a/core/js/oc-vcategories.js +++ b/core/js/oc-vcategories.js @@ -23,7 +23,7 @@ var OCCategories= { d.css('cursor', 'wait').find('input,button:not(#category_addbutton)') .prop('disabled', true).css('cursor', 'wait'); } - } + }; var dlg = $('#edit_categories_dialog').dialog({ modal: true, height: 350, minHeight:200, width: 250, minWidth: 200, diff --git a/core/js/octemplate.js b/core/js/octemplate.js index e69c6cc56e..46ffa97657 100644 --- a/core/js/octemplate.js +++ b/core/js/octemplate.js @@ -60,9 +60,10 @@ var self = this; if(typeof this.options.escapeFunction === 'function') { - for (var key = 0; key < this.vars.length; key++) { - if(typeof this.vars[key] === 'string') { - this.vars[key] = self.options.escapeFunction(this.vars[key]); + var keys = Object.keys(this.vars); + for (var key = 0; key < keys.length; key++) { + if(typeof this.vars[keys[key]] === 'string') { + this.vars[keys[key]] = self.options.escapeFunction(this.vars[keys[key]]); } } } @@ -85,7 +86,7 @@ } }, options: { - escapeFunction: function(str) {return $('').text(str).html();} + escapeFunction: escapeHTML } }; diff --git a/core/js/placeholder.js b/core/js/placeholder.js new file mode 100644 index 0000000000..16543541cb --- /dev/null +++ b/core/js/placeholder.js @@ -0,0 +1,65 @@ +/** + * ownCloud + * + * @author Morris Jobke + * @copyright 2013 Morris Jobke + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see . + * + */ + +/* + * Adds a background color to the element called on and adds the first character + * of the passed in string. This string is also the seed for the generation of + * the background color. + * + * You have following HTML: + * + *
    + * + * And call this from Javascript: + * + * $('#albumart').placeholder('The Album Title'); + * + * Which will result in: + * + *
    T
    + * + */ + +(function ($) { + $.fn.placeholder = function(seed) { + var hash = md5(seed), + maxRange = parseInt('ffffffffff', 16), + red = parseInt(hash.substr(0,10), 16) / maxRange * 256, + green = parseInt(hash.substr(10,10), 16) / maxRange * 256, + blue = parseInt(hash.substr(20,10), 16) / maxRange * 256, + rgb = [Math.floor(red), Math.floor(green), Math.floor(blue)], + height = this.height(); + this.css('background-color', 'rgb(' + rgb.join(',') + ')'); + + // CSS rules + this.css('color', 'rgb(255, 255, 255)'); + this.css('font-weight', 'bold'); + this.css('text-align', 'center'); + + // calculate the height + this.css('line-height', height + 'px'); + this.css('font-size', (height * 0.55) + 'px'); + + if(seed !== null && seed.length) { + this.html(seed[0].toUpperCase()); + } + }; +}(jQuery)); diff --git a/core/js/router.js b/core/js/router.js index b94721673a..44e7c30602 100644 --- a/core/js/router.js +++ b/core/js/router.js @@ -1,4 +1,4 @@ -OC.router_base_url = OC.webroot + '/index.php', +OC.router_base_url = OC.webroot + '/index.php'; OC.Router = { // register your ajax requests to load after the loading of the routes // has finished. otherwise you face problems with race conditions diff --git a/core/js/share.js b/core/js/share.js index e7fb26d0ed..27c16f38b9 100644 --- a/core/js/share.js +++ b/core/js/share.js @@ -103,9 +103,9 @@ OC.Share={ var checkReshare = true; if (typeof OC.Share.statuses[itemSource] === 'undefined') { // NOTE: Check does not always work and misses some shares, fix later - checkShares = true; + var checkShares = true; } else { - checkShares = true; + var checkShares = true; } $.ajax({type: 'GET', url: OC.filePath('core', 'ajax', 'share.php'), data: { fetch: 'getItem', itemType: itemType, itemSource: itemSource, checkReshare: checkReshare, checkShares: checkShares }, async: false, success: function(result) { if (result && result.status === 'success') { @@ -228,23 +228,23 @@ OC.Share={ }); } $('#shareWith').autocomplete({minLength: 1, source: function(search, response) { - // if (cache[search.term]) { - // response(cache[search.term]); - // } else { + // if (cache[search.term]) { + // response(cache[search.term]); + // } else { $.get(OC.filePath('core', 'ajax', 'share.php'), { fetch: 'getShareWith', search: search.term, itemShares: OC.Share.itemShares }, function(result) { if (result.status == 'success' && result.data.length > 0) { response(result.data); } else { // Suggest sharing via email if valid email address -// var pattern = new RegExp(/^[+a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/i); -// if (pattern.test(search.term)) { -// response([{label: t('core', 'Share via email:')+' '+search.term, value: {shareType: OC.Share.SHARE_TYPE_EMAIL, shareWith: search.term}}]); -// } else { +// var pattern = new RegExp(/^[+a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/i); +// if (pattern.test(search.term)) { +// response([{label: t('core', 'Share via email:')+' '+search.term, value: {shareType: OC.Share.SHARE_TYPE_EMAIL, shareWith: search.term}}]); +// } else { response([t('core', 'No people found')]); -// } +// } } }); - // } + // } }, focus: function(event, focused) { event.preventDefault(); diff --git a/core/l10n/ar.php b/core/l10n/ar.php index 84f076f301..17c3ab293c 100644 --- a/core/l10n/ar.php +++ b/core/l10n/ar.php @@ -1,5 +1,6 @@ "مجموعة", "Category type not provided." => "نوع التصنيف لم يدخل", "No category to add?" => "ألا توجد فئة للإضافة؟", "This category already exists: %s" => "هذا التصنيف موجود مسبقا : %s", diff --git a/core/l10n/ca.php b/core/l10n/ca.php index 3b8b57e8ac..a77924b121 100644 --- a/core/l10n/ca.php +++ b/core/l10n/ca.php @@ -1,6 +1,7 @@ "%s ha compartit »%s« amb tu", +"group" => "grup", "Category type not provided." => "No s'ha especificat el tipus de categoria.", "No category to add?" => "No voleu afegir cap categoria?", "This category already exists: %s" => "Aquesta categoria ja existeix: %s", @@ -30,13 +31,13 @@ $TRANSLATIONS = array( "December" => "Desembre", "Settings" => "Configuració", "seconds ago" => "segons enrere", -"_%n minute ago_::_%n minutes ago_" => array("",""), -"_%n hour ago_::_%n hours ago_" => array("",""), +"_%n minute ago_::_%n minutes ago_" => array("fa %n minut","fa %n minuts"), +"_%n hour ago_::_%n hours ago_" => array("fa %n hora","fa %n hores"), "today" => "avui", "yesterday" => "ahir", -"_%n day ago_::_%n days ago_" => array("",""), +"_%n day ago_::_%n days ago_" => array("fa %n dies","fa %n dies"), "last month" => "el mes passat", -"_%n month ago_::_%n months ago_" => array("",""), +"_%n month ago_::_%n months ago_" => array("fa %n mes","fa %n mesos"), "months ago" => "mesos enrere", "last year" => "l'any passat", "years ago" => "anys enrere", @@ -83,6 +84,7 @@ $TRANSLATIONS = array( "Email sent" => "El correu electrónic s'ha enviat", "The update was unsuccessful. Please report this issue to the ownCloud community." => "L'actualització ha estat incorrecte. Comuniqueu aquest error a la comunitat ownCloud.", "The update was successful. Redirecting you to ownCloud now." => "L'actualització ha estat correcte. Ara us redirigim a ownCloud.", +"%s password reset" => "restableix la contrasenya %s", "Use the following link to reset your password: {link}" => "Useu l'enllaç següent per restablir la contrasenya: {link}", "The link to reset your password has been sent to your email.
    If you do not receive it within a reasonable amount of time, check your spam/junk folders.
    If it is not there ask your local administrator ." => "L'enllaç per reiniciar la vostra contrasenya s'ha enviat al vostre correu.
    Si no el rebeu en un temps raonable comproveu les carpetes de spam.
    Si no és allà, pregunteu a l'administrador local.", "Request failed!
    Did you make sure your email/username was right?" => "La petició ha fallat!
    Esteu segur que el correu/nom d'usuari és correcte?", diff --git a/core/l10n/cs_CZ.php b/core/l10n/cs_CZ.php index 78614eef0e..1301dae32f 100644 --- a/core/l10n/cs_CZ.php +++ b/core/l10n/cs_CZ.php @@ -1,6 +1,13 @@ "%s s vámi sdílí »%s«", +"group" => "skupina", +"Turned on maintenance mode" => "Zapnut režim údržby", +"Turned off maintenance mode" => "Vypnut režim údržby", +"Updated database" => "Zaktualizována databáze", +"Updating filecache, this may take really long..." => "Aktualizuji souborovou mezipaměť, toto může trvat opravdu dlouho...", +"Updated filecache" => "Aktualizována souborová mezipaměť", +"... %d%% done ..." => "... %d%% dokončeno ...", "Category type not provided." => "Nezadán typ kategorie.", "No category to add?" => "Žádná kategorie k přidání?", "This category already exists: %s" => "Kategorie již existuje: %s", @@ -126,7 +133,6 @@ $TRANSLATIONS = array( "Finish setup" => "Dokončit nastavení", "%s is available. Get more information on how to update." => "%s je dostupná. Získejte více informací k postupu aktualizace.", "Log out" => "Odhlásit se", -"More apps" => "Více aplikací", "Automatic logon rejected!" => "Automatické přihlášení odmítnuto!", "If you did not change your password recently, your account may be compromised!" => "Pokud jste v nedávné době neměnili své heslo, Váš účet může být kompromitován!", "Please change your password to secure your account again." => "Změňte, prosím, své heslo pro opětovné zabezpečení Vašeho účtu.", diff --git a/core/l10n/cy_GB.php b/core/l10n/cy_GB.php index 442970fbb0..1f6c50524b 100644 --- a/core/l10n/cy_GB.php +++ b/core/l10n/cy_GB.php @@ -1,5 +1,6 @@ "grŵp", "Category type not provided." => "Math o gategori heb ei ddarparu.", "No category to add?" => "Dim categori i'w ychwanegu?", "This category already exists: %s" => "Mae'r categori hwn eisoes yn bodoli: %s", diff --git a/core/l10n/da.php b/core/l10n/da.php index 79ccc20d49..abaea4ba6a 100644 --- a/core/l10n/da.php +++ b/core/l10n/da.php @@ -1,6 +1,13 @@ "%s delte »%s« med sig", +"group" => "gruppe", +"Turned on maintenance mode" => "Startede vedligeholdelsestilstand", +"Turned off maintenance mode" => "standsede vedligeholdelsestilstand", +"Updated database" => "Opdaterede database", +"Updating filecache, this may take really long..." => "Opdatere filcache, dette kan tage rigtigt lang tid...", +"Updated filecache" => "Opdaterede filcache", +"... %d%% done ..." => "... %d%% færdig ...", "Category type not provided." => "Kategori typen ikke er fastsat.", "No category to add?" => "Ingen kategori at tilføje?", "This category already exists: %s" => "Kategorien eksisterer allerede: %s", @@ -126,7 +133,6 @@ $TRANSLATIONS = array( "Finish setup" => "Afslut opsætning", "%s is available. Get more information on how to update." => "%s er tilgængelig. Få mere information om, hvordan du opdaterer.", "Log out" => "Log ud", -"More apps" => "Flere programmer", "Automatic logon rejected!" => "Automatisk login afvist!", "If you did not change your password recently, your account may be compromised!" => "Hvis du ikke har ændret din adgangskode for nylig, har nogen muligvis tiltvunget sig adgang til din konto!", "Please change your password to secure your account again." => "Skift adgangskode for at sikre din konto igen.", diff --git a/core/l10n/de.php b/core/l10n/de.php index 2fe2f56412..1f205a9db5 100644 --- a/core/l10n/de.php +++ b/core/l10n/de.php @@ -1,6 +1,13 @@ "%s teilte »%s« mit Ihnen", +"group" => "Gruppe", +"Turned on maintenance mode" => "Wartungsmodus eingeschaltet", +"Turned off maintenance mode" => "Wartungsmodus ausgeschaltet", +"Updated database" => "Datenbank aktualisiert", +"Updating filecache, this may take really long..." => "Aktualisiere Dateicache, dies könnte eine Weile dauern...", +"Updated filecache" => "Dateicache aktualisiert", +"... %d%% done ..." => "... %d%% erledigt ...", "Category type not provided." => "Kategorie nicht angegeben.", "No category to add?" => "Keine Kategorie hinzuzufügen?", "This category already exists: %s" => "Die Kategorie '%s' existiert bereits.", @@ -126,7 +133,6 @@ $TRANSLATIONS = array( "Finish setup" => "Installation abschließen", "%s is available. Get more information on how to update." => "%s ist verfügbar. Holen Sie weitere Informationen zu Aktualisierungen ein.", "Log out" => "Abmelden", -"More apps" => "Mehr Apps", "Automatic logon rejected!" => "Automatischer Login zurückgewiesen!", "If you did not change your password recently, your account may be compromised!" => "Wenn Du Dein Passwort nicht vor kurzem geändert hast, könnte Dein\nAccount kompromittiert sein!", "Please change your password to secure your account again." => "Bitte ändere Dein Passwort, um Deinen Account wieder zu schützen.", diff --git a/core/l10n/de_AT.php b/core/l10n/de_AT.php index c0e3e80f0a..93c8e33f3e 100644 --- a/core/l10n/de_AT.php +++ b/core/l10n/de_AT.php @@ -3,7 +3,6 @@ $TRANSLATIONS = array( "_%n minute ago_::_%n minutes ago_" => array("",""), "_%n hour ago_::_%n hours ago_" => array("",""), "_%n day ago_::_%n days ago_" => array("",""), -"_%n month ago_::_%n months ago_" => array("",""), -"More apps" => "Mehr Apps" +"_%n month ago_::_%n months ago_" => array("","") ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/core/l10n/de_CH.php b/core/l10n/de_CH.php index 3e622ace6f..6e01b3e208 100644 --- a/core/l10n/de_CH.php +++ b/core/l10n/de_CH.php @@ -1,6 +1,7 @@ "%s teilt »%s« mit Ihnen", +"group" => "Gruppe", "Category type not provided." => "Kategorie nicht angegeben.", "No category to add?" => "Keine Kategorie hinzuzufügen?", "This category already exists: %s" => "Die nachfolgende Kategorie existiert bereits: %s", @@ -30,13 +31,13 @@ $TRANSLATIONS = array( "December" => "Dezember", "Settings" => "Einstellungen", "seconds ago" => "Gerade eben", -"_%n minute ago_::_%n minutes ago_" => array("",""), -"_%n hour ago_::_%n hours ago_" => array("",""), +"_%n minute ago_::_%n minutes ago_" => array("Vor %n Minute","Vor %n Minuten"), +"_%n hour ago_::_%n hours ago_" => array("Vor %n Stunde","Vor %n Stunden"), "today" => "Heute", "yesterday" => "Gestern", -"_%n day ago_::_%n days ago_" => array("",""), +"_%n day ago_::_%n days ago_" => array("Vor %n Tag","Vor %n Tagen"), "last month" => "Letzten Monat", -"_%n month ago_::_%n months ago_" => array("",""), +"_%n month ago_::_%n months ago_" => array("Vor %n Monat","Vor %n Monaten"), "months ago" => "Vor Monaten", "last year" => "Letztes Jahr", "years ago" => "Vor Jahren", @@ -83,6 +84,7 @@ $TRANSLATIONS = array( "Email sent" => "Email gesendet", "The update was unsuccessful. Please report this issue to the ownCloud community." => "Das Update ist fehlgeschlagen. Bitte melden Sie dieses Problem an die ownCloud Community.", "The update was successful. Redirecting you to ownCloud now." => "Das Update war erfolgreich. Sie werden nun zu ownCloud weitergeleitet.", +"%s password reset" => "%s-Passwort zurücksetzen", "Use the following link to reset your password: {link}" => "Nutzen Sie den nachfolgenden Link, um Ihr Passwort zurückzusetzen: {link}", "The link to reset your password has been sent to your email.
    If you do not receive it within a reasonable amount of time, check your spam/junk folders.
    If it is not there ask your local administrator ." => "Der Link zum Rücksetzen Ihres Passworts ist an Ihre E-Mail-Adresse gesendet worde.
    Wenn Sie ihn nicht innerhalb einer vernünftigen Zeitspanne erhalten, prüfen Sie bitte Ihre Spam-Verzeichnisse.
    Wenn er nicht dort ist, fragen Sie Ihren lokalen Administrator.", "Request failed!
    Did you make sure your email/username was right?" => "Anfrage fehlgeschlagen!
    Haben Sie darauf geachtet, dass E-Mail-Adresse/Nutzername korrekt waren?", @@ -125,7 +127,6 @@ $TRANSLATIONS = array( "Finish setup" => "Installation abschliessen", "%s is available. Get more information on how to update." => "%s ist verfügbar. Holen Sie weitere Informationen zu Aktualisierungen ein.", "Log out" => "Abmelden", -"More apps" => "Mehr Apps", "Automatic logon rejected!" => "Automatische Anmeldung verweigert!", "If you did not change your password recently, your account may be compromised!" => "Wenn Sie Ihr Passwort nicht vor kurzem geändert haben, könnte Ihr\nAccount kompromittiert sein!", "Please change your password to secure your account again." => "Bitte ändern Sie Ihr Passwort, um Ihr Konto wieder zu sichern.", diff --git a/core/l10n/de_DE.php b/core/l10n/de_DE.php index 60f5418727..a29fc4547c 100644 --- a/core/l10n/de_DE.php +++ b/core/l10n/de_DE.php @@ -1,6 +1,13 @@ "%s geteilt »%s« mit Ihnen", +"group" => "Gruppe", +"Turned on maintenance mode" => "Wartungsmodus eingeschaltet ", +"Turned off maintenance mode" => "Wartungsmodus ausgeschaltet", +"Updated database" => "Datenbank aktualisiert", +"Updating filecache, this may take really long..." => "Aktualisiere Dateicache, dies könnte eine Weile dauern...", +"Updated filecache" => "Dateicache aktualisiert", +"... %d%% done ..." => "... %d%% erledigt ...", "Category type not provided." => "Kategorie nicht angegeben.", "No category to add?" => "Keine Kategorie hinzuzufügen?", "This category already exists: %s" => "Die nachfolgende Kategorie existiert bereits: %s", @@ -126,7 +133,6 @@ $TRANSLATIONS = array( "Finish setup" => "Installation abschließen", "%s is available. Get more information on how to update." => "%s ist verfügbar. Holen Sie weitere Informationen zu Aktualisierungen ein.", "Log out" => "Abmelden", -"More apps" => "Mehr Apps", "Automatic logon rejected!" => "Automatische Anmeldung verweigert!", "If you did not change your password recently, your account may be compromised!" => "Wenn Sie Ihr Passwort nicht vor kurzem geändert haben, könnte Ihr\nAccount kompromittiert sein!", "Please change your password to secure your account again." => "Bitte ändern Sie Ihr Passwort, um Ihr Konto wieder zu sichern.", diff --git a/core/l10n/el.php b/core/l10n/el.php index 51a3a68d78..54c13c89bf 100644 --- a/core/l10n/el.php +++ b/core/l10n/el.php @@ -1,6 +1,7 @@ "Ο %s διαμοιράστηκε μαζί σας το »%s«", +"group" => "ομάδα", "Category type not provided." => "Δεν δώθηκε τύπος κατηγορίας.", "No category to add?" => "Δεν έχετε κατηγορία να προσθέσετε;", "This category already exists: %s" => "Αυτή η κατηγορία υπάρχει ήδη: %s", diff --git a/core/l10n/en_GB.php b/core/l10n/en_GB.php new file mode 100644 index 0000000000..3a42872366 --- /dev/null +++ b/core/l10n/en_GB.php @@ -0,0 +1,146 @@ + "%s shared \"%s\" with you", +"group" => "group", +"Turned on maintenance mode" => "Turned on maintenance mode", +"Turned off maintenance mode" => "Turned off maintenance mode", +"Updated database" => "Updated database", +"Updating filecache, this may take really long..." => "Updating filecache, this may take a really long time...", +"Updated filecache" => "Updated filecache", +"... %d%% done ..." => "... %d%% done ...", +"Category type not provided." => "Category type not provided.", +"No category to add?" => "No category to add?", +"This category already exists: %s" => "This category already exists: %s", +"Object type not provided." => "Object type not provided.", +"%s ID not provided." => "%s ID not provided.", +"Error adding %s to favorites." => "Error adding %s to favourites.", +"No categories selected for deletion." => "No categories selected for deletion.", +"Error removing %s from favorites." => "Error removing %s from favourites.", +"Sunday" => "Sunday", +"Monday" => "Monday", +"Tuesday" => "Tuesday", +"Wednesday" => "Wednesday", +"Thursday" => "Thursday", +"Friday" => "Friday", +"Saturday" => "Saturday", +"January" => "January", +"February" => "February", +"March" => "March", +"April" => "April", +"May" => "May", +"June" => "June", +"July" => "July", +"August" => "August", +"September" => "September", +"October" => "October", +"November" => "November", +"December" => "December", +"Settings" => "Settings", +"seconds ago" => "seconds ago", +"_%n minute ago_::_%n minutes ago_" => array("%n minute ago","%n minutes ago"), +"_%n hour ago_::_%n hours ago_" => array("%n hour ago","%n hours ago"), +"today" => "today", +"yesterday" => "yesterday", +"_%n day ago_::_%n days ago_" => array("%n day ago","%n days ago"), +"last month" => "last month", +"_%n month ago_::_%n months ago_" => array("%n month ago","%n months ago"), +"months ago" => "months ago", +"last year" => "last year", +"years ago" => "years ago", +"Choose" => "Choose", +"Error loading file picker template" => "Error loading file picker template", +"Yes" => "Yes", +"No" => "No", +"Ok" => "OK", +"The object type is not specified." => "The object type is not specified.", +"Error" => "Error", +"The app name is not specified." => "The app name is not specified.", +"The required file {file} is not installed!" => "The required file {file} is not installed!", +"Shared" => "Shared", +"Share" => "Share", +"Error while sharing" => "Error whilst sharing", +"Error while unsharing" => "Error whilst unsharing", +"Error while changing permissions" => "Error whilst changing permissions", +"Shared with you and the group {group} by {owner}" => "Shared with you and the group {group} by {owner}", +"Shared with you by {owner}" => "Shared with you by {owner}", +"Share with" => "Share with", +"Share with link" => "Share with link", +"Password protect" => "Password protect", +"Password" => "Password", +"Allow Public Upload" => "Allow Public Upload", +"Email link to person" => "Email link to person", +"Send" => "Send", +"Set expiration date" => "Set expiration date", +"Expiration date" => "Expiration date", +"Share via email:" => "Share via email:", +"No people found" => "No people found", +"Resharing is not allowed" => "Resharing is not allowed", +"Shared in {item} with {user}" => "Shared in {item} with {user}", +"Unshare" => "Unshare", +"can edit" => "can edit", +"access control" => "access control", +"create" => "create", +"update" => "update", +"delete" => "delete", +"share" => "share", +"Password protected" => "Password protected", +"Error unsetting expiration date" => "Error unsetting expiration date", +"Error setting expiration date" => "Error setting expiration date", +"Sending ..." => "Sending ...", +"Email sent" => "Email sent", +"The update was unsuccessful. Please report this issue to the ownCloud community." => "The update was unsuccessful. Please report this issue to the ownCloud community.", +"The update was successful. Redirecting you to ownCloud now." => "The update was successful. Redirecting you to ownCloud now.", +"%s password reset" => "%s password reset", +"Use the following link to reset your password: {link}" => "Use the following link to reset your password: {link}", +"The link to reset your password has been sent to your email.
    If you do not receive it within a reasonable amount of time, check your spam/junk folders.
    If it is not there ask your local administrator ." => "The link to reset your password has been sent to your email.
    If you do not receive it within a reasonable amount of time, check your spam/junk folders.
    If it is not there ask your local administrator .", +"Request failed!
    Did you make sure your email/username was right?" => "Request failed!
    Did you make sure your email/username was correct?", +"You will receive a link to reset your password via Email." => "You will receive a link to reset your password via Email.", +"Username" => "Username", +"Your files are encrypted. If you haven't enabled the recovery key, there will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" => "Your files are encrypted. If you haven't enabled the recovery key, there will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?", +"Yes, I really want to reset my password now" => "Yes, I really want to reset my password now", +"Request reset" => "Request reset", +"Your password was reset" => "Your password was reset", +"To login page" => "To login page", +"New password" => "New password", +"Reset password" => "Reset password", +"Personal" => "Personal", +"Users" => "Users", +"Apps" => "Apps", +"Admin" => "Admin", +"Help" => "Help", +"Access forbidden" => "Access denied", +"Cloud not found" => "Cloud not found", +"Hey there,\n\njust letting you know that %s shared %s with you.\nView it: %s\n\nCheers!" => "Hey there,\n\njust letting you know that %s shared %s with you.\nView it: %s\n\nCheers!", +"Edit categories" => "Edit categories", +"Add" => "Add", +"Security Warning" => "Security Warning", +"Your PHP version is vulnerable to the NULL Byte attack (CVE-2006-7243)" => "Your PHP version is vulnerable to the NULL Byte attack (CVE-2006-7243)", +"Please update your PHP installation to use %s securely." => "Please update your PHP installation to use %s securely.", +"No secure random number generator is available, please enable the PHP OpenSSL extension." => "No secure random number generator is available, please enable the PHP OpenSSL extension.", +"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account.", +"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Your data directory and files are probably accessible from the internet because the .htaccess file does not work.", +"For information how to properly configure your server, please see the documentation." => "For information how to properly configure your server, please see the documentation.", +"Create an admin account" => "Create an admin account", +"Advanced" => "Advanced", +"Data folder" => "Data folder", +"Configure the database" => "Configure the database", +"will be used" => "will be used", +"Database user" => "Database user", +"Database password" => "Database password", +"Database name" => "Database name", +"Database tablespace" => "Database tablespace", +"Database host" => "Database host", +"Finish setup" => "Finish setup", +"%s is available. Get more information on how to update." => "%s is available. Get more information on how to update.", +"Log out" => "Log out", +"Automatic logon rejected!" => "Automatic logon rejected!", +"If you did not change your password recently, your account may be compromised!" => "If you did not change your password recently, your account may be compromised!", +"Please change your password to secure your account again." => "Please change your password to secure your account again.", +"Lost your password?" => "Lost your password?", +"remember" => "remember", +"Log in" => "Log in", +"Alternative Logins" => "Alternative Logins", +"Hey there,

    just letting you know that %s shared »%s« with you.
    View it!

    Cheers!" => "Hey there,

    just letting you know that %s shared \"%s\" with you.
    View it!

    Cheers!", +"Updating ownCloud to version %s, this may take a while." => "Updating ownCloud to version %s, this may take a while." +); +$PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/core/l10n/eo.php b/core/l10n/eo.php index fc688b103a..669f677d46 100644 --- a/core/l10n/eo.php +++ b/core/l10n/eo.php @@ -1,6 +1,7 @@ "%s kunhavigis “%s” kun vi", +"group" => "grupo", "Category type not provided." => "Ne proviziĝis tipon de kategorio.", "No category to add?" => "Ĉu neniu kategorio estas aldonota?", "This category already exists: %s" => "Tiu kategorio jam ekzistas: %s", diff --git a/core/l10n/es.php b/core/l10n/es.php index 9e7f565668..077f677e97 100644 --- a/core/l10n/es.php +++ b/core/l10n/es.php @@ -1,6 +1,7 @@ "%s compatido »%s« contigo", +"group" => "grupo", "Category type not provided." => "Tipo de categoría no proporcionado.", "No category to add?" => "¿Ninguna categoría para añadir?", "This category already exists: %s" => "Esta categoría ya existe: %s", diff --git a/core/l10n/es_AR.php b/core/l10n/es_AR.php index cd51ba2f44..389251de8a 100644 --- a/core/l10n/es_AR.php +++ b/core/l10n/es_AR.php @@ -1,6 +1,7 @@ "%s compartió \"%s\" con vos", +"group" => "grupo", "Category type not provided." => "Tipo de categoría no provisto. ", "No category to add?" => "¿Ninguna categoría para añadir?", "This category already exists: %s" => "Esta categoría ya existe: %s", diff --git a/core/l10n/et_EE.php b/core/l10n/et_EE.php index 8c2fb2804d..5391a14434 100644 --- a/core/l10n/et_EE.php +++ b/core/l10n/et_EE.php @@ -1,6 +1,13 @@ "%s jagas sinuga »%s«", +"group" => "grupp", +"Turned on maintenance mode" => "Haldusreziimis", +"Turned off maintenance mode" => "Haldusreziim lõpetatud", +"Updated database" => "Uuendatud andmebaas", +"Updating filecache, this may take really long..." => "Uuendan failipuhvrit, see võib kesta väga kaua...", +"Updated filecache" => "Uuendatud failipuhver", +"... %d%% done ..." => "... %d%% tehtud ...", "Category type not provided." => "Kategooria tüüp puudub.", "No category to add?" => "Pole kategooriat, mida lisada?", "This category already exists: %s" => "See kategooria on juba olemas: %s", @@ -30,13 +37,13 @@ $TRANSLATIONS = array( "December" => "Detsember", "Settings" => "Seaded", "seconds ago" => "sekundit tagasi", -"_%n minute ago_::_%n minutes ago_" => array("",""), -"_%n hour ago_::_%n hours ago_" => array("",""), +"_%n minute ago_::_%n minutes ago_" => array("%n minut tagasi","%n minutit tagasi"), +"_%n hour ago_::_%n hours ago_" => array("%n tund tagasi","%n tundi tagasi"), "today" => "täna", "yesterday" => "eile", -"_%n day ago_::_%n days ago_" => array("",""), +"_%n day ago_::_%n days ago_" => array("%n päev tagasi","%n päeva tagasi"), "last month" => "viimasel kuul", -"_%n month ago_::_%n months ago_" => array("",""), +"_%n month ago_::_%n months ago_" => array("%n kuu tagasi","%n kuud tagasi"), "months ago" => "kuu tagasi", "last year" => "viimasel aastal", "years ago" => "aastat tagasi", @@ -83,6 +90,7 @@ $TRANSLATIONS = array( "Email sent" => "E-kiri on saadetud", "The update was unsuccessful. Please report this issue to the ownCloud community." => "Uuendus ebaõnnestus. Palun teavita probleemidest ownCloud kogukonda.", "The update was successful. Redirecting you to ownCloud now." => "Uuendus oli edukas. Kohe suunatakse Sind ownCloudi.", +"%s password reset" => "%s parooli lähtestus", "Use the following link to reset your password: {link}" => "Kasuta järgnevat linki oma parooli taastamiseks: {link}", "The link to reset your password has been sent to your email.
    If you do not receive it within a reasonable amount of time, check your spam/junk folders.
    If it is not there ask your local administrator ." => "Link parooli vahetuseks on saadetud Sinu e-posti aadressile.
    Kui kiri pole saabunud mõistliku aja jooksul, siis kontrolli oma spam-/rämpskirjade katalooge.
    Kui kirja pole ka seal, siis küsi abi süsteemihaldurilt.", "Request failed!
    Did you make sure your email/username was right?" => "Päring ebaõnnestus!
    Oled sa veendunud, et e-post/kasutajanimi on õiged?", @@ -125,7 +133,6 @@ $TRANSLATIONS = array( "Finish setup" => "Lõpeta seadistamine", "%s is available. Get more information on how to update." => "%s on saadaval. Vaata lähemalt kuidas uuendada.", "Log out" => "Logi välja", -"More apps" => "Rohkem rakendusi", "Automatic logon rejected!" => "Automaatne sisselogimine lükati tagasi!", "If you did not change your password recently, your account may be compromised!" => "Kui sa ei muutnud oma parooli hiljuti, siis võib su kasutajakonto olla ohustatud!", "Please change your password to secure your account again." => "Palun muuda parooli, et oma kasutajakonto uuesti turvata.", diff --git a/core/l10n/eu.php b/core/l10n/eu.php index 280c5a94b6..1e0eb36e1e 100644 --- a/core/l10n/eu.php +++ b/core/l10n/eu.php @@ -1,6 +1,7 @@ "%s-ek »%s« zurekin partekatu du", +"group" => "taldea", "Category type not provided." => "Kategoria mota ez da zehaztu.", "No category to add?" => "Ez dago gehitzeko kategoriarik?", "This category already exists: %s" => "Kategoria hau dagoeneko existitzen da: %s", @@ -30,13 +31,13 @@ $TRANSLATIONS = array( "December" => "Abendua", "Settings" => "Ezarpenak", "seconds ago" => "segundu", -"_%n minute ago_::_%n minutes ago_" => array("",""), -"_%n hour ago_::_%n hours ago_" => array("",""), +"_%n minute ago_::_%n minutes ago_" => array("orain dela minutu %n","orain dela %n minutu"), +"_%n hour ago_::_%n hours ago_" => array("orain dela ordu %n","orain dela %n ordu"), "today" => "gaur", "yesterday" => "atzo", -"_%n day ago_::_%n days ago_" => array("",""), +"_%n day ago_::_%n days ago_" => array("orain dela egun %n","orain dela %n egun"), "last month" => "joan den hilabetean", -"_%n month ago_::_%n months ago_" => array("",""), +"_%n month ago_::_%n months ago_" => array("orain dela hilabete %n","orain dela %n hilabete"), "months ago" => "hilabete", "last year" => "joan den urtean", "years ago" => "urte", @@ -83,6 +84,7 @@ $TRANSLATIONS = array( "Email sent" => "Eposta bidalia", "The update was unsuccessful. Please report this issue to the ownCloud community." => "Eguneraketa ez da ongi egin. Mesedez egin arazoaren txosten bat ownCloud komunitatearentzako.", "The update was successful. Redirecting you to ownCloud now." => "Eguneraketa ongi egin da. Orain zure ownClouderea berbideratua izango zara.", +"%s password reset" => "%s pasahitza berrezarri", "Use the following link to reset your password: {link}" => "Eribili hurrengo lotura zure pasahitza berrezartzeko: {link}", "The link to reset your password has been sent to your email.
    If you do not receive it within a reasonable amount of time, check your spam/junk folders.
    If it is not there ask your local administrator ." => "Zure pasahitza berrezartzeko lotura zure postara bidalia izan da.
    Ez baduzu arrazoizko denbora \nepe batean jasotzen begiratu zure zabor-posta karpetan.
    Hor ere ez badago kudeatzailearekin harremanetan ipini.", "Request failed!
    Did you make sure your email/username was right?" => "Eskaerak huts egin du!
    Ziur zaude posta/pasahitza zuzenak direla?", diff --git a/core/l10n/fa.php b/core/l10n/fa.php index a9e17a194a..82356c0ab1 100644 --- a/core/l10n/fa.php +++ b/core/l10n/fa.php @@ -1,6 +1,7 @@ "%s به اشتراک گذاشته شده است »%s« توسط شما", +"group" => "گروه", "Category type not provided." => "نوع دسته بندی ارائه نشده است.", "No category to add?" => "آیا گروه دیگری برای افزودن ندارید", "This category already exists: %s" => "این دسته هم اکنون وجود دارد: %s", diff --git a/core/l10n/fi_FI.php b/core/l10n/fi_FI.php index d3cfe01293..25f5f466ef 100644 --- a/core/l10n/fi_FI.php +++ b/core/l10n/fi_FI.php @@ -1,6 +1,13 @@ "%s jakoi kohteen »%s« kanssasi", +"group" => "ryhmä", +"Turned on maintenance mode" => "Siirrytty ylläpitotilaan", +"Turned off maintenance mode" => "Ylläpitotila laitettu pois päältä", +"Updated database" => "Tietokanta ajan tasalla", +"Updating filecache, this may take really long..." => "Päivitetään tiedostojen välimuistia, tämä saattaa kestää todella kauan...", +"Updated filecache" => "Tiedostojen välimuisti päivitetty", +"... %d%% done ..." => "... %d%% valmis ...", "Category type not provided." => "Luokan tyyppiä ei määritelty.", "No category to add?" => "Ei lisättävää luokkaa?", "This category already exists: %s" => "Luokka on jo olemassa: %s", @@ -64,6 +71,7 @@ $TRANSLATIONS = array( "Share via email:" => "Jaa sähköpostilla:", "No people found" => "Henkilöitä ei löytynyt", "Resharing is not allowed" => "Jakaminen uudelleen ei ole salittu", +"Shared in {item} with {user}" => "{item} on jaettu {user} kanssa", "Unshare" => "Peru jakaminen", "can edit" => "voi muokata", "access control" => "Pääsyn hallinta", @@ -78,6 +86,7 @@ $TRANSLATIONS = array( "Email sent" => "Sähköposti lähetetty", "The update was unsuccessful. Please report this issue to the ownCloud community." => "Päivitys epäonnistui. Ilmoita ongelmasta ownCloud-yhteisölle.", "The update was successful. Redirecting you to ownCloud now." => "Päivitys onnistui. Selain ohjautuu nyt ownCloudiisi.", +"%s password reset" => "%s salasanan nollaus", "Use the following link to reset your password: {link}" => "Voit palauttaa salasanasi seuraavassa osoitteessa: {link}", "The link to reset your password has been sent to your email.
    If you do not receive it within a reasonable amount of time, check your spam/junk folders.
    If it is not there ask your local administrator ." => "Linkki salasanan nollaamiseen on lähetetty sähköpostiisi.
    Jos et saa viestiä pian, tarkista roskapostikansiosi.
    Jos et löydä viestiä roskapostinkaan seasta, ota yhteys ylläpitäjään.", "Request failed!
    Did you make sure your email/username was right?" => "Pyyntö epäonnistui!
    Olihan sähköpostiosoitteesi/käyttäjätunnuksesi oikein?", @@ -118,7 +127,6 @@ $TRANSLATIONS = array( "Finish setup" => "Viimeistele asennus", "%s is available. Get more information on how to update." => "%s on saatavilla. Lue lisätietoja, miten päivitys asennetaan.", "Log out" => "Kirjaudu ulos", -"More apps" => "Lisää sovelluksia", "Automatic logon rejected!" => "Automaattinen sisäänkirjautuminen hylättiin!", "If you did not change your password recently, your account may be compromised!" => "Jos et vaihtanut salasanaasi äskettäin, tilisi saattaa olla murrettu.", "Please change your password to secure your account again." => "Vaihda salasanasi suojataksesi tilisi uudelleen.", diff --git a/core/l10n/fr.php b/core/l10n/fr.php index 3f85cb1503..81fad25833 100644 --- a/core/l10n/fr.php +++ b/core/l10n/fr.php @@ -1,6 +1,7 @@ "%s partagé »%s« avec vous", +"group" => "groupe", "Category type not provided." => "Type de catégorie non spécifié.", "No category to add?" => "Pas de catégorie à ajouter ?", "This category already exists: %s" => "Cette catégorie existe déjà : %s", diff --git a/core/l10n/gl.php b/core/l10n/gl.php index 9db68bbbd0..663d769ee9 100644 --- a/core/l10n/gl.php +++ b/core/l10n/gl.php @@ -1,6 +1,13 @@ "%s compartiu «%s» con vostede", +"group" => "grupo", +"Turned on maintenance mode" => "Modo de mantemento activado", +"Turned off maintenance mode" => "Modo de mantemento desactivado", +"Updated database" => "Base de datos actualizada", +"Updating filecache, this may take really long..." => "Actualizando o ficheiro da caché, isto pode levar bastante tempo...", +"Updated filecache" => "Ficheiro da caché actualizado", +"... %d%% done ..." => "... %d%% feito ...", "Category type not provided." => "Non se indicou o tipo de categoría", "No category to add?" => "Sen categoría que engadir?", "This category already exists: %s" => "Esta categoría xa existe: %s", @@ -126,7 +133,6 @@ $TRANSLATIONS = array( "Finish setup" => "Rematar a configuración", "%s is available. Get more information on how to update." => "%s está dispoñíbel. Obteña máis información sobre como actualizar.", "Log out" => "Desconectar", -"More apps" => "Máis aplicativos", "Automatic logon rejected!" => "Rexeitouse a entrada automática", "If you did not change your password recently, your account may be compromised!" => "Se non fixo recentemente cambios de contrasinal é posíbel que a súa conta estea comprometida!", "Please change your password to secure your account again." => "Cambie de novo o seu contrasinal para asegurar a súa conta.", diff --git a/core/l10n/he.php b/core/l10n/he.php index 7f3f4dfdd3..d5d83fea33 100644 --- a/core/l10n/he.php +++ b/core/l10n/he.php @@ -1,5 +1,7 @@ "%s שיתף/שיתפה איתך את »%s«", +"group" => "קבוצה", "Category type not provided." => "סוג הקטגוריה לא סופק.", "No category to add?" => "אין קטגוריה להוספה?", "This category already exists: %s" => "הקטגוריה הבאה כבר קיימת: %s", @@ -29,13 +31,13 @@ $TRANSLATIONS = array( "December" => "דצמבר", "Settings" => "הגדרות", "seconds ago" => "שניות", -"_%n minute ago_::_%n minutes ago_" => array("",""), -"_%n hour ago_::_%n hours ago_" => array("",""), +"_%n minute ago_::_%n minutes ago_" => array("לפני %n דקה","לפני %n דקות"), +"_%n hour ago_::_%n hours ago_" => array("לפני %n שעה","לפני %n שעות"), "today" => "היום", "yesterday" => "אתמול", -"_%n day ago_::_%n days ago_" => array("",""), +"_%n day ago_::_%n days ago_" => array("לפני %n יום","לפני %n ימים"), "last month" => "חודש שעבר", -"_%n month ago_::_%n months ago_" => array("",""), +"_%n month ago_::_%n months ago_" => array("לפני %n חודש","לפני %n חודשים"), "months ago" => "חודשים", "last year" => "שנה שעברה", "years ago" => "שנים", @@ -86,6 +88,7 @@ $TRANSLATIONS = array( "Request failed!
    Did you make sure your email/username was right?" => "הבקשה נכשלה!
    האם כתובת הדוא״ל/שם המשתמש שלך נכונים?", "You will receive a link to reset your password via Email." => "יישלח לתיבת הדוא״ל שלך קישור לאיפוס הססמה.", "Username" => "שם משתמש", +"Yes, I really want to reset my password now" => "כן, אני רוצה לאפס את הסיסמה שלי עכשיו.", "Request reset" => "בקשת איפוס", "Your password was reset" => "הססמה שלך אופסה", "To login page" => "לדף הכניסה", @@ -98,10 +101,12 @@ $TRANSLATIONS = array( "Help" => "עזרה", "Access forbidden" => "הגישה נחסמה", "Cloud not found" => "ענן לא נמצא", +"Hey there,\n\njust letting you know that %s shared %s with you.\nView it: %s\n\nCheers!" => "שלום,\n\nרצינו לעדכן כי %s שיתף/שיתפה איתך את »%s«.\n\nלצפיה: %s\n\nיום טוב!", "Edit categories" => "ערוך קטגוריות", "Add" => "הוספה", "Security Warning" => "אזהרת אבטחה", "Your PHP version is vulnerable to the NULL Byte attack (CVE-2006-7243)" => "גרסת ה־PHP פגיעה בפני התקפת בית NULL/ריק (CVE-2006-7243)", +"Please update your PHP installation to use %s securely." => "נא לעדכן את התקנת ה-PHP שלך כדי להשתמש ב-%s בצורה מאובטחת.", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "אין מחולל מספרים אקראיים מאובטח, נא להפעיל את ההרחבה OpenSSL ב־PHP.", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "ללא מחולל מספרים אקראיים מאובטח תוקף יכול לנבא את מחרוזות איפוס הססמה ולהשתלט על החשבון שלך.", "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "תיקיית וקבצי המידע שלך כנראה נגישים מהאינטרנט מכיוון שקובץ ה.htaccess לא עובד.", @@ -125,6 +130,7 @@ $TRANSLATIONS = array( "remember" => "שמירת הססמה", "Log in" => "כניסה", "Alternative Logins" => "כניסות אלטרנטיביות", +"Hey there,

    just letting you know that %s shared »%s« with you.
    View it!

    Cheers!" => "שלום,

    רצינו לעדכן כי %s שיתף/שיתפה איתך את »%s«.
    לצפיה

    יום טוב!", "Updating ownCloud to version %s, this may take a while." => "מעדכן את ownCloud אל גרסא %s, זה עלול לקחת זמן מה." ); $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/core/l10n/hu_HU.php b/core/l10n/hu_HU.php index c231d7f9a4..93f96e1784 100644 --- a/core/l10n/hu_HU.php +++ b/core/l10n/hu_HU.php @@ -1,6 +1,7 @@ "%s megosztotta Önnel ezt: »%s«", +"group" => "csoport", "Category type not provided." => "Nincs megadva a kategória típusa.", "No category to add?" => "Nincs hozzáadandó kategória?", "This category already exists: %s" => "Ez a kategória már létezik: %s", diff --git a/core/l10n/id.php b/core/l10n/id.php index fc6cb788fb..0f222918c9 100644 --- a/core/l10n/id.php +++ b/core/l10n/id.php @@ -1,5 +1,6 @@ "grup", "Category type not provided." => "Tipe kategori tidak diberikan.", "No category to add?" => "Tidak ada kategori yang akan ditambahkan?", "This category already exists: %s" => "Kategori ini sudah ada: %s", diff --git a/core/l10n/it.php b/core/l10n/it.php index 7a0af92070..71f6ffdf50 100644 --- a/core/l10n/it.php +++ b/core/l10n/it.php @@ -1,6 +1,13 @@ "%s ha condiviso «%s» con te", +"group" => "gruppo", +"Turned on maintenance mode" => "Modalità di manutenzione attivata", +"Turned off maintenance mode" => "Modalità di manutenzione disattivata", +"Updated database" => "Database aggiornato", +"Updating filecache, this may take really long..." => "Aggiornamento della cache dei file in corso, potrebbe richiedere molto tempo...", +"Updated filecache" => "Cache dei file aggiornata", +"... %d%% done ..." => "... %d%% completato ...", "Category type not provided." => "Tipo di categoria non fornito.", "No category to add?" => "Nessuna categoria da aggiungere?", "This category already exists: %s" => "Questa categoria esiste già: %s", @@ -30,13 +37,13 @@ $TRANSLATIONS = array( "December" => "Dicembre", "Settings" => "Impostazioni", "seconds ago" => "secondi fa", -"_%n minute ago_::_%n minutes ago_" => array("",""), -"_%n hour ago_::_%n hours ago_" => array("",""), +"_%n minute ago_::_%n minutes ago_" => array("%n minuto fa","%n minuti fa"), +"_%n hour ago_::_%n hours ago_" => array("%n ora fa","%n ore fa"), "today" => "oggi", "yesterday" => "ieri", -"_%n day ago_::_%n days ago_" => array("",""), +"_%n day ago_::_%n days ago_" => array("%n giorno fa","%n giorni fa"), "last month" => "mese scorso", -"_%n month ago_::_%n months ago_" => array("",""), +"_%n month ago_::_%n months ago_" => array("%n mese fa","%n mesi fa"), "months ago" => "mesi fa", "last year" => "anno scorso", "years ago" => "anni fa", @@ -83,6 +90,7 @@ $TRANSLATIONS = array( "Email sent" => "Messaggio inviato", "The update was unsuccessful. Please report this issue to the ownCloud community." => "L'aggiornamento non è riuscito. Segnala il problema alla comunità di ownCloud.", "The update was successful. Redirecting you to ownCloud now." => "L'aggiornamento è stato effettuato correttamente. Stai per essere reindirizzato a ownCloud.", +"%s password reset" => "Ripristino password di %s", "Use the following link to reset your password: {link}" => "Usa il collegamento seguente per ripristinare la password: {link}", "The link to reset your password has been sent to your email.
    If you do not receive it within a reasonable amount of time, check your spam/junk folders.
    If it is not there ask your local administrator ." => "Il collegamento per ripristinare la password è stato inviato al tuo indirizzo di posta.
    Se non lo ricevi in tempi ragionevoli, controlla le cartelle della posta indesiderata.
    Se non dovesse essere nemmeno lì, contatta il tuo amministratore locale.", "Request failed!
    Did you make sure your email/username was right?" => "Richiesta non riuscita!
    Sei sicuro che l'indirizzo di posta/nome utente fosse corretto?", diff --git a/core/l10n/ja_JP.php b/core/l10n/ja_JP.php index 31d2f92eff..82e4153367 100644 --- a/core/l10n/ja_JP.php +++ b/core/l10n/ja_JP.php @@ -1,6 +1,13 @@ "%sが あなたと »%s«を共有しました", +"group" => "グループ", +"Turned on maintenance mode" => "メンテナンスモードがオンになりました", +"Turned off maintenance mode" => "メンテナンスモードがオフになりました", +"Updated database" => "データベース更新完了", +"Updating filecache, this may take really long..." => "ファイルキャッシュを更新しています、しばらく掛かる恐れがあります...", +"Updated filecache" => "ファイルキャッシュ更新完了", +"... %d%% done ..." => "... %d%% 完了 ...", "Category type not provided." => "カテゴリタイプは提供されていません。", "No category to add?" => "追加するカテゴリはありませんか?", "This category already exists: %s" => "このカテゴリはすでに存在します: %s", @@ -126,7 +133,6 @@ $TRANSLATIONS = array( "Finish setup" => "セットアップを完了します", "%s is available. Get more information on how to update." => "%s が利用可能です。更新方法に関してさらに情報を取得して下さい。", "Log out" => "ログアウト", -"More apps" => "他のアプリ", "Automatic logon rejected!" => "自動ログインは拒否されました!", "If you did not change your password recently, your account may be compromised!" => "最近パスワードを変更していない場合、あなたのアカウントは危険にさらされているかもしれません。", "Please change your password to secure your account again." => "アカウント保護の為、パスワードを再度の変更をお願いいたします。", diff --git a/core/l10n/ka_GE.php b/core/l10n/ka_GE.php index 0f4b23906d..15cacc8b21 100644 --- a/core/l10n/ka_GE.php +++ b/core/l10n/ka_GE.php @@ -1,5 +1,6 @@ "ჯგუფი", "Category type not provided." => "კატეგორიის ტიპი არ არის განხილული.", "No category to add?" => "არ არის კატეგორია დასამატებლად?", "This category already exists: %s" => "კატეგორია უკვე არსებობს: %s", diff --git a/core/l10n/ko.php b/core/l10n/ko.php index 4c2d33e301..0265f38dc0 100644 --- a/core/l10n/ko.php +++ b/core/l10n/ko.php @@ -1,5 +1,6 @@ "그룹", "Category type not provided." => "분류 형식이 제공되지 않았습니다.", "No category to add?" => "추가할 분류가 없습니까?", "This category already exists: %s" => "분류가 이미 존재합니다: %s", @@ -29,13 +30,13 @@ $TRANSLATIONS = array( "December" => "12월", "Settings" => "설정", "seconds ago" => "초 전", -"_%n minute ago_::_%n minutes ago_" => array(""), -"_%n hour ago_::_%n hours ago_" => array(""), +"_%n minute ago_::_%n minutes ago_" => array("%n분 전 "), +"_%n hour ago_::_%n hours ago_" => array("%n시간 전 "), "today" => "오늘", "yesterday" => "어제", -"_%n day ago_::_%n days ago_" => array(""), +"_%n day ago_::_%n days ago_" => array("%n일 전 "), "last month" => "지난 달", -"_%n month ago_::_%n months ago_" => array(""), +"_%n month ago_::_%n months ago_" => array("%n달 전 "), "months ago" => "개월 전", "last year" => "작년", "years ago" => "년 전", diff --git a/core/l10n/lb.php b/core/l10n/lb.php index 8a5a28957c..5f4c415bed 100644 --- a/core/l10n/lb.php +++ b/core/l10n/lb.php @@ -1,6 +1,7 @@ "Den/D' %s huet »%s« mat dir gedeelt", +"group" => "Grupp", "Category type not provided." => "Typ vun der Kategorie net uginn.", "No category to add?" => "Keng Kategorie fir bäizesetzen?", "This category already exists: %s" => "Dës Kategorie existéiert schon: %s", diff --git a/core/l10n/lt_LT.php b/core/l10n/lt_LT.php index 00e4748853..7b0c3ed4f8 100644 --- a/core/l10n/lt_LT.php +++ b/core/l10n/lt_LT.php @@ -1,5 +1,7 @@ "%s pasidalino »%s« su tavimi", +"group" => "grupė", "Category type not provided." => "Kategorija nenurodyta.", "No category to add?" => "Nepridėsite jokios kategorijos?", "This category already exists: %s" => "Ši kategorija jau egzistuoja: %s", @@ -29,13 +31,13 @@ $TRANSLATIONS = array( "December" => "Gruodis", "Settings" => "Nustatymai", "seconds ago" => "prieš sekundę", -"_%n minute ago_::_%n minutes ago_" => array("","",""), -"_%n hour ago_::_%n hours ago_" => array("","",""), +"_%n minute ago_::_%n minutes ago_" => array(" prieš %n minutę"," prieš %n minučių"," prieš %n minučių"), +"_%n hour ago_::_%n hours ago_" => array("prieš %n valandą","prieš %n valandų","prieš %n valandų"), "today" => "šiandien", "yesterday" => "vakar", "_%n day ago_::_%n days ago_" => array("","",""), "last month" => "praeitą mėnesį", -"_%n month ago_::_%n months ago_" => array("","",""), +"_%n month ago_::_%n months ago_" => array("prieš %n mėnesį","prieš %n mėnesius","prieš %n mėnesių"), "months ago" => "prieš mėnesį", "last year" => "praeitais metais", "years ago" => "prieš metus", @@ -81,11 +83,13 @@ $TRANSLATIONS = array( "Email sent" => "Laiškas išsiųstas", "The update was unsuccessful. Please report this issue to the ownCloud community." => "Atnaujinimas buvo nesėkmingas. PApie tai prašome pranešti the ownCloud bendruomenei.", "The update was successful. Redirecting you to ownCloud now." => "Atnaujinimas buvo sėkmingas. Nukreipiame į jūsų ownCloud.", +"%s password reset" => "%s slaptažodžio atnaujinimas", "Use the following link to reset your password: {link}" => "Slaptažodio atkūrimui naudokite šią nuorodą: {link}", "The link to reset your password has been sent to your email.
    If you do not receive it within a reasonable amount of time, check your spam/junk folders.
    If it is not there ask your local administrator ." => "Nuorodą su jūsų slaptažodžio atkūrimu buvo nusiųsta jums į paštą.
    Jei jo negausite per atitinkamą laiką, pasižiūrėkite brukalo aplankale.
    Jei jo ir ten nėra, teiraukitės administratoriaus.", "Request failed!
    Did you make sure your email/username was right?" => "Klaida!
    Ar tikrai jūsų el paštas/vartotojo vardas buvo teisingi?", "You will receive a link to reset your password via Email." => "Elektroniniu paštu gausite nuorodą, su kuria galėsite iš naujo nustatyti slaptažodį.", "Username" => "Prisijungimo vardas", +"Yes, I really want to reset my password now" => "Taip, aš tikrai noriu atnaujinti slaptažodį", "Request reset" => "Prašyti nustatymo iš najo", "Your password was reset" => "Jūsų slaptažodis buvo nustatytas iš naujo", "To login page" => "Į prisijungimo puslapį", diff --git a/core/l10n/lv.php b/core/l10n/lv.php index 6deb5dfda9..57b9186f3c 100644 --- a/core/l10n/lv.php +++ b/core/l10n/lv.php @@ -1,6 +1,7 @@ "%s kopīgots »%s« ar jums", +"group" => "grupa", "Category type not provided." => "Kategorijas tips nav norādīts.", "No category to add?" => "Nav kategoriju, ko pievienot?", "This category already exists: %s" => "Šāda kategorija jau eksistē — %s", @@ -126,7 +127,6 @@ $TRANSLATIONS = array( "Finish setup" => "Pabeigt iestatīšanu", "%s is available. Get more information on how to update." => "%s ir pieejams. Uzziniet vairāk kā atjaunināt.", "Log out" => "Izrakstīties", -"More apps" => "Vairāk programmu", "Automatic logon rejected!" => "Automātiskā ierakstīšanās ir noraidīta!", "If you did not change your password recently, your account may be compromised!" => "Ja neesat pēdējā laikā mainījis paroli, iespējams, ka jūsu konts ir kompromitēts.", "Please change your password to secure your account again." => "Lūdzu, nomainiet savu paroli, lai atkal nodrošinātu savu kontu.", diff --git a/core/l10n/mk.php b/core/l10n/mk.php index e2416dc052..6a8ec50061 100644 --- a/core/l10n/mk.php +++ b/core/l10n/mk.php @@ -1,5 +1,6 @@ "група", "Category type not provided." => "Не беше доставен тип на категорија.", "No category to add?" => "Нема категорија да се додаде?", "Object type not provided." => "Не беше доставен тип на објект.", diff --git a/core/l10n/nb_NO.php b/core/l10n/nb_NO.php index 393dc0d7d1..132b65daab 100644 --- a/core/l10n/nb_NO.php +++ b/core/l10n/nb_NO.php @@ -1,6 +1,7 @@ "%s delte »%s« med deg", +"group" => "gruppe", "No category to add?" => "Ingen kategorier å legge til?", "This category already exists: %s" => "Denne kategorien finnes allerede: %s", "No categories selected for deletion." => "Ingen kategorier merket for sletting.", diff --git a/core/l10n/nl.php b/core/l10n/nl.php index 46375756de..6d5d5dc991 100644 --- a/core/l10n/nl.php +++ b/core/l10n/nl.php @@ -1,6 +1,7 @@ "%s deelde »%s« met jou", +"group" => "groep", "Category type not provided." => "Categorie type niet opgegeven.", "No category to add?" => "Geen categorie om toe te voegen?", "This category already exists: %s" => "Deze categorie bestaat al: %s", @@ -126,7 +127,6 @@ $TRANSLATIONS = array( "Finish setup" => "Installatie afronden", "%s is available. Get more information on how to update." => "%s is beschikbaar. Verkrijg meer informatie over het bijwerken.", "Log out" => "Afmelden", -"More apps" => "Meer applicaties", "Automatic logon rejected!" => "Automatische aanmelding geweigerd!", "If you did not change your password recently, your account may be compromised!" => "Als je je wachtwoord niet onlangs heeft aangepast, kan je account overgenomen zijn!", "Please change your password to secure your account again." => "Wijzig je wachtwoord zodat je account weer beveiligd is.", diff --git a/core/l10n/nn_NO.php b/core/l10n/nn_NO.php index f73cb96076..942824ecb7 100644 --- a/core/l10n/nn_NO.php +++ b/core/l10n/nn_NO.php @@ -1,5 +1,6 @@ "gruppe", "Category type not provided." => "Ingen kategoritype.", "No category to add?" => "Ingen kategori å leggja til?", "This category already exists: %s" => "Denne kategorien finst alt: %s", diff --git a/core/l10n/oc.php b/core/l10n/oc.php index 68bf2f89a2..0ca3cc427a 100644 --- a/core/l10n/oc.php +++ b/core/l10n/oc.php @@ -1,5 +1,6 @@ "grop", "No category to add?" => "Pas de categoria d'ajustar ?", "No categories selected for deletion." => "Pas de categorias seleccionadas per escafar.", "Sunday" => "Dimenge", diff --git a/core/l10n/pl.php b/core/l10n/pl.php index 9be10f535b..48f6dff618 100644 --- a/core/l10n/pl.php +++ b/core/l10n/pl.php @@ -1,6 +1,7 @@ "%s Współdzielone »%s« z tobą", +"group" => "grupa", "Category type not provided." => "Nie podano typu kategorii.", "No category to add?" => "Brak kategorii do dodania?", "This category already exists: %s" => "Ta kategoria już istnieje: %s", @@ -125,7 +126,6 @@ $TRANSLATIONS = array( "Finish setup" => "Zakończ konfigurowanie", "%s is available. Get more information on how to update." => "%s jest dostępna. Dowiedz się więcej na temat aktualizacji.", "Log out" => "Wyloguj", -"More apps" => "Więcej aplikacji", "Automatic logon rejected!" => "Automatyczne logowanie odrzucone!", "If you did not change your password recently, your account may be compromised!" => "Jeśli hasło było dawno niezmieniane, twoje konto może być zagrożone!", "Please change your password to secure your account again." => "Zmień swoje hasło, aby ponownie zabezpieczyć swoje konto.", diff --git a/core/l10n/pt_BR.php b/core/l10n/pt_BR.php index 8446e5270a..84762cde5e 100644 --- a/core/l10n/pt_BR.php +++ b/core/l10n/pt_BR.php @@ -1,6 +1,7 @@ "%s compartilhou »%s« com você", +"group" => "grupo", "Category type not provided." => "Tipo de categoria não fornecido.", "No category to add?" => "Nenhuma categoria a adicionar?", "This category already exists: %s" => "Esta categoria já existe: %s", @@ -126,7 +127,6 @@ $TRANSLATIONS = array( "Finish setup" => "Concluir configuração", "%s is available. Get more information on how to update." => "%s está disponível. Obtenha mais informações sobre como atualizar.", "Log out" => "Sair", -"More apps" => "Mais aplicativos", "Automatic logon rejected!" => "Entrada Automática no Sistema Rejeitada!", "If you did not change your password recently, your account may be compromised!" => "Se você não mudou a sua senha recentemente, a sua conta pode estar comprometida!", "Please change your password to secure your account again." => "Por favor troque sua senha para tornar sua conta segura novamente.", diff --git a/core/l10n/pt_PT.php b/core/l10n/pt_PT.php index 25ddaa322d..2afb9ef9b3 100644 --- a/core/l10n/pt_PT.php +++ b/core/l10n/pt_PT.php @@ -1,6 +1,7 @@ "%s partilhado »%s« contigo", +"group" => "grupo", "Category type not provided." => "Tipo de categoria não fornecido", "No category to add?" => "Nenhuma categoria para adicionar?", "This category already exists: %s" => "A categoria já existe: %s", diff --git a/core/l10n/ro.php b/core/l10n/ro.php index 7e33003bcc..ca0e409f71 100644 --- a/core/l10n/ro.php +++ b/core/l10n/ro.php @@ -1,6 +1,7 @@ "%s Partajat »%s« cu tine de", +"group" => "grup", "Category type not provided." => "Tipul de categorie nu a fost specificat.", "No category to add?" => "Nici o categorie de adăugat?", "This category already exists: %s" => "Această categorie deja există: %s", diff --git a/core/l10n/ru.php b/core/l10n/ru.php index 8c29c8d26f..d79326aff3 100644 --- a/core/l10n/ru.php +++ b/core/l10n/ru.php @@ -1,6 +1,7 @@ "%s поделился »%s« с вами", +"group" => "группа", "Category type not provided." => "Тип категории не предоставлен", "No category to add?" => "Нет категорий для добавления?", "This category already exists: %s" => "Эта категория уже существует: %s", @@ -126,7 +127,6 @@ $TRANSLATIONS = array( "Finish setup" => "Завершить установку", "%s is available. Get more information on how to update." => "%s доступно. Получить дополнительную информацию о порядке обновления.", "Log out" => "Выйти", -"More apps" => "Ещё приложения", "Automatic logon rejected!" => "Автоматический вход в систему отключен!", "If you did not change your password recently, your account may be compromised!" => "Если Вы недавно не меняли свой пароль, то Ваша учетная запись может быть скомпрометирована!", "Please change your password to secure your account again." => "Пожалуйста, смените пароль, чтобы обезопасить свою учетную запись.", diff --git a/core/l10n/si_LK.php b/core/l10n/si_LK.php index 475cdf5613..184566b5f1 100644 --- a/core/l10n/si_LK.php +++ b/core/l10n/si_LK.php @@ -1,5 +1,6 @@ "කණ්ඩායම", "No categories selected for deletion." => "මකා දැමීම සඳහා ප්‍රවර්ගයන් තෝරා නොමැත.", "Sunday" => "ඉරිදා", "Monday" => "සඳුදා", diff --git a/core/l10n/sk_SK.php b/core/l10n/sk_SK.php index 49c2cbb183..ed061068b4 100644 --- a/core/l10n/sk_SK.php +++ b/core/l10n/sk_SK.php @@ -1,6 +1,13 @@ "%s s Vami zdieľa »%s«", +"group" => "skupina", +"Turned on maintenance mode" => "Mód údržby zapnutý", +"Turned off maintenance mode" => "Mód údržby vypnutý", +"Updated database" => "Databáza aktualizovaná", +"Updating filecache, this may take really long..." => "Aktualizácia \"filecache\", toto môže trvať dlhšie...", +"Updated filecache" => "\"Filecache\" aktualizovaná", +"... %d%% done ..." => "... %d%% dokončených ...", "Category type not provided." => "Neposkytnutý typ kategórie.", "No category to add?" => "Žiadna kategória pre pridanie?", "This category already exists: %s" => "Kategória: %s už existuje.", @@ -30,13 +37,13 @@ $TRANSLATIONS = array( "December" => "December", "Settings" => "Nastavenia", "seconds ago" => "pred sekundami", -"_%n minute ago_::_%n minutes ago_" => array("","",""), -"_%n hour ago_::_%n hours ago_" => array("","",""), +"_%n minute ago_::_%n minutes ago_" => array("pred %n minútou","pred %n minútami","pred %n minútami"), +"_%n hour ago_::_%n hours ago_" => array("pred %n hodinou","pred %n hodinami","pred %n hodinami"), "today" => "dnes", "yesterday" => "včera", -"_%n day ago_::_%n days ago_" => array("","",""), +"_%n day ago_::_%n days ago_" => array("pred %n dňom","pred %n dňami","pred %n dňami"), "last month" => "minulý mesiac", -"_%n month ago_::_%n months ago_" => array("","",""), +"_%n month ago_::_%n months ago_" => array("pred %n mesiacom","pred %n mesiacmi","pred %n mesiacmi"), "months ago" => "pred mesiacmi", "last year" => "minulý rok", "years ago" => "pred rokmi", @@ -83,6 +90,7 @@ $TRANSLATIONS = array( "Email sent" => "Email odoslaný", "The update was unsuccessful. Please report this issue to the ownCloud community." => "Aktualizácia nebola úspešná. Problém nahláste na ownCloud community.", "The update was successful. Redirecting you to ownCloud now." => "Aktualizácia bola úspešná. Presmerovávam na prihlasovaciu stránku.", +"%s password reset" => "reset hesla %s", "Use the following link to reset your password: {link}" => "Použite nasledujúci odkaz pre obnovenie vášho hesla: {link}", "The link to reset your password has been sent to your email.
    If you do not receive it within a reasonable amount of time, check your spam/junk folders.
    If it is not there ask your local administrator ." => "Odkaz na obnovenie hesla bol odoslaný na Vašu emailovú adresu.
    Ak ho v krátkej dobe neobdržíte, skontrolujte si Váš kôš a priečinok spam.
    Ak ho ani tam nenájdete, kontaktujte svojho administrátora.", "Request failed!
    Did you make sure your email/username was right?" => "Požiadavka zlyhala.
    Uistili ste sa, že Vaše používateľské meno a email sú správne?", diff --git a/core/l10n/sl.php b/core/l10n/sl.php index 0b72f1dc4e..460ca99eea 100644 --- a/core/l10n/sl.php +++ b/core/l10n/sl.php @@ -1,6 +1,7 @@ "%s je delil »%s« z vami", +"group" => "skupina", "Category type not provided." => "Vrsta kategorije ni podana.", "No category to add?" => "Ali ni kategorije za dodajanje?", "This category already exists: %s" => "Kategorija že obstaja: %s", diff --git a/core/l10n/sr.php b/core/l10n/sr.php index 3de06c7088..89c13c4925 100644 --- a/core/l10n/sr.php +++ b/core/l10n/sr.php @@ -1,5 +1,6 @@ "група", "Category type not provided." => "Врста категорије није унет.", "No category to add?" => "Додати још неку категорију?", "Object type not provided." => "Врста објекта није унета.", diff --git a/core/l10n/sv.php b/core/l10n/sv.php index cda76a520b..9bfd91d269 100644 --- a/core/l10n/sv.php +++ b/core/l10n/sv.php @@ -1,6 +1,13 @@ "%s delade »%s« med dig", +"group" => "Grupp", +"Turned on maintenance mode" => "Aktiverade underhållsläge", +"Turned off maintenance mode" => "Deaktiverade underhållsläge", +"Updated database" => "Uppdaterade databasen", +"Updating filecache, this may take really long..." => "Uppdaterar filcache, det kan ta lång tid...", +"Updated filecache" => "Uppdaterade filcache", +"... %d%% done ..." => "... %d%% klart ...", "Category type not provided." => "Kategorityp inte angiven.", "No category to add?" => "Ingen kategori att lägga till?", "This category already exists: %s" => "Denna kategori finns redan: %s", @@ -126,7 +133,6 @@ $TRANSLATIONS = array( "Finish setup" => "Avsluta installation", "%s is available. Get more information on how to update." => "%s är tillgänglig. Få mer information om hur du går tillväga för att uppdatera.", "Log out" => "Logga ut", -"More apps" => "Fler appar", "Automatic logon rejected!" => "Automatisk inloggning inte tillåten!", "If you did not change your password recently, your account may be compromised!" => "Om du inte har ändrat ditt lösenord nyligen så kan ditt konto vara manipulerat!", "Please change your password to secure your account again." => "Ändra genast lösenord för att säkra ditt konto.", diff --git a/core/l10n/ta_LK.php b/core/l10n/ta_LK.php index 3fc461d428..a1a286275e 100644 --- a/core/l10n/ta_LK.php +++ b/core/l10n/ta_LK.php @@ -1,5 +1,6 @@ "குழு", "Category type not provided." => "பிரிவு வகைகள் வழங்கப்படவில்லை", "No category to add?" => "சேர்ப்பதற்கான வகைகள் இல்லையா?", "Object type not provided." => "பொருள் வகை வழங்கப்படவில்லை", diff --git a/core/l10n/th_TH.php b/core/l10n/th_TH.php index bb5181fd9e..90fec245c9 100644 --- a/core/l10n/th_TH.php +++ b/core/l10n/th_TH.php @@ -1,5 +1,6 @@ "กลุ่มผู้ใช้งาน", "Category type not provided." => "ยังไม่ได้ระบุชนิดของหมวดหมู่", "No category to add?" => "ไม่มีหมวดหมู่ที่ต้องการเพิ่ม?", "Object type not provided." => "ชนิดของวัตถุยังไม่ได้ถูกระบุ", diff --git a/core/l10n/tr.php b/core/l10n/tr.php index dde8a1bd97..8b6c261d64 100644 --- a/core/l10n/tr.php +++ b/core/l10n/tr.php @@ -1,6 +1,7 @@ "%s sizinle »%s« paylaşımında bulundu", +"group" => "grup", "Category type not provided." => "Kategori türü girilmedi.", "No category to add?" => "Eklenecek kategori yok?", "This category already exists: %s" => "Bu kategori zaten mevcut: %s", @@ -126,7 +127,6 @@ $TRANSLATIONS = array( "Finish setup" => "Kurulumu tamamla", "%s is available. Get more information on how to update." => "%s mevcuttur. Güncelleştirme hakkında daha fazla bilgi alın.", "Log out" => "Çıkış yap", -"More apps" => "Daha fazla Uygulama", "Automatic logon rejected!" => "Otomatik oturum açma reddedildi!", "If you did not change your password recently, your account may be compromised!" => "Yakın zamanda parolanızı değiştirmedi iseniz hesabınız riske girebilir.", "Please change your password to secure your account again." => "Hesabınızı korumak için lütfen parolanızı değiştirin.", diff --git a/core/l10n/ug.php b/core/l10n/ug.php index 5cbb90d15f..e77718233d 100644 --- a/core/l10n/ug.php +++ b/core/l10n/ug.php @@ -1,5 +1,6 @@ "گۇرۇپپا", "Sunday" => "يەكشەنبە", "Monday" => "دۈشەنبە", "Tuesday" => "سەيشەنبە", @@ -45,6 +46,7 @@ $TRANSLATIONS = array( "Help" => "ياردەم", "Edit categories" => "تۈر تەھرىر", "Add" => "قوش", +"Security Warning" => "بىخەتەرلىك ئاگاھلاندۇرۇش", "Advanced" => "ئالىي", "Finish setup" => "تەڭشەك تامام", "Log out" => "تىزىمدىن چىق" diff --git a/core/l10n/uk.php b/core/l10n/uk.php index 6fcb23d0a3..8e74855dd0 100644 --- a/core/l10n/uk.php +++ b/core/l10n/uk.php @@ -1,5 +1,6 @@ "група", "Category type not provided." => "Не вказано тип категорії.", "No category to add?" => "Відсутні категорії для додавання?", "This category already exists: %s" => "Ця категорія вже існує: %s", diff --git a/core/l10n/vi.php b/core/l10n/vi.php index 305839b476..1ccf03c0aa 100644 --- a/core/l10n/vi.php +++ b/core/l10n/vi.php @@ -1,5 +1,6 @@ "nhóm", "Category type not provided." => "Kiểu hạng mục không được cung cấp.", "No category to add?" => "Không có danh mục được thêm?", "This category already exists: %s" => "Danh mục này đã tồn tại: %s", diff --git a/core/l10n/zh_CN.GB2312.php b/core/l10n/zh_CN.GB2312.php deleted file mode 100644 index 92f1aef885..0000000000 --- a/core/l10n/zh_CN.GB2312.php +++ /dev/null @@ -1,140 +0,0 @@ - "%s 与您共享了 »%s« ", -"Category type not provided." => "未选择分类类型。", -"No category to add?" => "没有分类添加了?", -"This category already exists: %s" => "此分类已存在:%s", -"Object type not provided." => "未选择对象类型。", -"%s ID not provided." => "%s 没有提供 ID", -"Error adding %s to favorites." => "在添加 %s 到收藏夹时发生错误。", -"No categories selected for deletion." => "没有选中要删除的分类。", -"Error removing %s from favorites." => "在移除收藏夹中的 %s 时发生错误。", -"Sunday" => "星期天", -"Monday" => "星期一", -"Tuesday" => "星期二", -"Wednesday" => "星期三", -"Thursday" => "星期四", -"Friday" => "星期五", -"Saturday" => "星期六", -"January" => "一月", -"February" => "二月", -"March" => "三月", -"April" => "四月", -"May" => "五月", -"June" => "六月", -"July" => "七月", -"August" => "八月", -"September" => "九月", -"October" => "十月", -"November" => "十一月", -"December" => "十二月", -"Settings" => "设置", -"seconds ago" => "秒前", -"_%n minute ago_::_%n minutes ago_" => array("%n 分钟以前"), -"_%n hour ago_::_%n hours ago_" => array("%n 小时以前"), -"today" => "今天", -"yesterday" => "昨天", -"_%n day ago_::_%n days ago_" => array("%n 天以前"), -"last month" => "上个月", -"_%n month ago_::_%n months ago_" => array("%n 个月以前"), -"months ago" => "月前", -"last year" => "去年", -"years ago" => "年前", -"Choose" => "选择", -"Error loading file picker template" => "加载文件选取模板出错", -"Yes" => "是", -"No" => "否", -"Ok" => "好的", -"The object type is not specified." => "未指定对象类型。", -"Error" => "出错", -"The app name is not specified." => "未指定应用名称。", -"The required file {file} is not installed!" => "未安装所需要的文件 {file} !", -"Shared" => "已分享", -"Share" => "分享", -"Error while sharing" => "分享出错", -"Error while unsharing" => "取消分享出错", -"Error while changing permissions" => "变更权限出错", -"Shared with you and the group {group} by {owner}" => "由 {owner} 与您和 {group} 群组分享", -"Shared with you by {owner}" => "由 {owner} 与您分享", -"Share with" => "分享", -"Share with link" => "分享链接", -"Password protect" => "密码保护", -"Password" => "密码", -"Allow Public Upload" => "允许公众上传", -"Email link to person" => "面向个人的电子邮件链接", -"Send" => "发送", -"Set expiration date" => "设置失效日期", -"Expiration date" => "失效日期", -"Share via email:" => "通过电子邮件分享:", -"No people found" => "查无此人", -"Resharing is not allowed" => "不允许重复分享", -"Shared in {item} with {user}" => "已经与 {user} 在 {item} 中分享", -"Unshare" => "取消分享", -"can edit" => "可编辑", -"access control" => "访问控制", -"create" => "创建", -"update" => "更新", -"delete" => "删除", -"share" => "分享", -"Password protected" => "密码保护", -"Error unsetting expiration date" => "取消设置失效日期出错", -"Error setting expiration date" => "设置失效日期出错", -"Sending ..." => "发送中……", -"Email sent" => "电子邮件已发送", -"The update was unsuccessful. Please report this issue to the ownCloud community." => "升级失败。请向ownCloud社区报告此问题。", -"The update was successful. Redirecting you to ownCloud now." => "升级成功。现在为您跳转到ownCloud。", -"%s password reset" => "%s 密码重置", -"Use the following link to reset your password: {link}" => "使用下面的链接来重置你的密码:{link}", -"The link to reset your password has been sent to your email.
    If you do not receive it within a reasonable amount of time, check your spam/junk folders.
    If it is not there ask your local administrator ." => "重置密码的连接已经通过邮件到您的邮箱。
    如果你没有收到邮件,可能是由于要再等一下,或者检查一下您的垃圾邮件夹。
    如果还是没有收到,请联系您的系统管理员。", -"Request failed!
    Did you make sure your email/username was right?" => "请求失败!
    你确定你的邮件地址/用户名是正确的?", -"You will receive a link to reset your password via Email." => "你将会收到一个重置密码的链接", -"Username" => "用户名", -"Your files are encrypted. If you haven't enabled the recovery key, there will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" => "您的文件是加密的。如果您还没有启用恢复密钥,在重置了密码后,您的数据讲无法恢复回来。如果您不确定是否这么做,请联系您的管理员在继续这个操作。你却是想继续么?", -"Yes, I really want to reset my password now" => "是的,我想现在重置密码。", -"Request reset" => "要求重置", -"Your password was reset" => "你的密码已经被重置了", -"To login page" => "转至登陆页面", -"New password" => "新密码", -"Reset password" => "重置密码", -"Personal" => "私人", -"Users" => "用户", -"Apps" => "程序", -"Admin" => "管理员", -"Help" => "帮助", -"Access forbidden" => "禁止访问", -"Cloud not found" => "云 没有被找到", -"Hey there,\n\njust letting you know that %s shared %s with you.\nView it: %s\n\nCheers!" => "你好!⏎\n⏎\n温馨提示: %s 与您共享了 %s 。⏎\n查看: %s⏎\n⏎\n祝顺利!", -"Edit categories" => "编辑分类", -"Add" => "添加", -"Security Warning" => "安全警告", -"Your PHP version is vulnerable to the NULL Byte attack (CVE-2006-7243)" => "您的PHP版本是会受到NULL字节漏洞攻击的(CVE-2006-7243)", -"Please update your PHP installation to use %s securely." => "请安全地升级您的PHP版本到 %s 。", -"No secure random number generator is available, please enable the PHP OpenSSL extension." => "没有安全随机码生成器,请启用 PHP OpenSSL 扩展。", -"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "没有安全随机码生成器,黑客可以预测密码重置令牌并接管你的账户。", -"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "因为.htaccess文件无效,您的数据文件夹及文件可能可以在互联网上访问。", -"For information how to properly configure your server, please see the documentation." => "有关如何正确地配置您的服务器,请查看 文档。", -"Create an admin account" => "建立一个 管理帐户", -"Advanced" => "进阶", -"Data folder" => "数据存放文件夹", -"Configure the database" => "配置数据库", -"will be used" => "将会使用", -"Database user" => "数据库用户", -"Database password" => "数据库密码", -"Database name" => "数据库用户名", -"Database tablespace" => "数据库表格空间", -"Database host" => "数据库主机", -"Finish setup" => "完成安装", -"%s is available. Get more information on how to update." => "%s 是可用的。获取更多关于升级的信息。", -"Log out" => "注销", -"More apps" => "更多应用", -"Automatic logon rejected!" => "自动登录被拒绝!", -"If you did not change your password recently, your account may be compromised!" => "如果您最近没有修改您的密码,那您的帐号可能被攻击了!", -"Please change your password to secure your account again." => "请修改您的密码以保护账户。", -"Lost your password?" => "忘记密码?", -"remember" => "记住登录", -"Log in" => "登陆", -"Alternative Logins" => "备选登录", -"Hey there,

    just letting you know that %s shared »%s« with you.
    View it!

    Cheers!" => "你好!

    温馨提示: %s 与您共享了 %s 。

    \n查看: %s

    祝顺利!", -"Updating ownCloud to version %s, this may take a while." => "ownCloud正在升级至 %s 版,这可能需要一点时间。" -); -$PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/core/l10n/zh_CN.php b/core/l10n/zh_CN.php index a5a63e2485..ddcc902c8d 100644 --- a/core/l10n/zh_CN.php +++ b/core/l10n/zh_CN.php @@ -1,6 +1,13 @@ "%s 向您分享了 »%s«", +"group" => "组", +"Turned on maintenance mode" => "启用维护模式", +"Turned off maintenance mode" => "关闭维护模式", +"Updated database" => "数据库已更新", +"Updating filecache, this may take really long..." => "正在更新文件缓存,这可能需要较长时间...", +"Updated filecache" => "文件缓存已更新", +"... %d%% done ..." => "...已完成 %d%% ...", "Category type not provided." => "未提供分类类型。", "No category to add?" => "没有可添加分类?", "This category already exists: %s" => "此分类已存在:%s", @@ -31,12 +38,12 @@ $TRANSLATIONS = array( "Settings" => "设置", "seconds ago" => "秒前", "_%n minute ago_::_%n minutes ago_" => array("%n 分钟前"), -"_%n hour ago_::_%n hours ago_" => array(""), +"_%n hour ago_::_%n hours ago_" => array("%n 小时前"), "today" => "今天", "yesterday" => "昨天", -"_%n day ago_::_%n days ago_" => array(""), +"_%n day ago_::_%n days ago_" => array("%n 天前"), "last month" => "上月", -"_%n month ago_::_%n months ago_" => array(""), +"_%n month ago_::_%n months ago_" => array("%n 月前"), "months ago" => "月前", "last year" => "去年", "years ago" => "年前", @@ -47,7 +54,7 @@ $TRANSLATIONS = array( "Ok" => "好", "The object type is not specified." => "未指定对象类型。", "Error" => "错误", -"The app name is not specified." => "未指定App名称。", +"The app name is not specified." => "未指定应用名称。", "The required file {file} is not installed!" => "所需文件{file}未安装!", "Shared" => "已共享", "Share" => "分享", @@ -83,6 +90,7 @@ $TRANSLATIONS = array( "Email sent" => "邮件已发送", "The update was unsuccessful. Please report this issue to the ownCloud community." => "更新不成功。请汇报将此问题汇报给 ownCloud 社区。", "The update was successful. Redirecting you to ownCloud now." => "更新成功。正在重定向至 ownCloud。", +"%s password reset" => "重置 %s 的密码", "Use the following link to reset your password: {link}" => "使用以下链接重置您的密码:{link}", "The link to reset your password has been sent to your email.
    If you do not receive it within a reasonable amount of time, check your spam/junk folders.
    If it is not there ask your local administrator ." => "重置密码的链接已发送到您的邮箱。
    如果您觉得在合理的时间内还未收到邮件,请查看 spam/junk 目录。
    如果没有在那里,请询问您的本地管理员。", "Request failed!
    Did you make sure your email/username was right?" => "请求失败
    您确定您的邮箱/用户名是正确的?", @@ -107,9 +115,11 @@ $TRANSLATIONS = array( "Add" => "增加", "Security Warning" => "安全警告", "Your PHP version is vulnerable to the NULL Byte attack (CVE-2006-7243)" => "你的PHP版本容易受到空字节攻击 (CVE-2006-7243)", +"Please update your PHP installation to use %s securely." => "为保证安全使用 %s 请更新您的PHP。", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "随机数生成器无效,请启用PHP的OpenSSL扩展", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "没有安全随机码生成器,攻击者可能会猜测密码重置信息从而窃取您的账户", "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "您的数据目录和文件可能可以直接被互联网访问,因为 .htaccess 并未正常工作。", +"For information how to properly configure your server, please see the documentation." => "关于如何配置服务器,请参见 此文档。", "Create an admin account" => "创建管理员账号", "Advanced" => "高级", "Data folder" => "数据目录", diff --git a/core/l10n/zh_TW.php b/core/l10n/zh_TW.php index d2cbb7a8fd..c25a58dc8e 100644 --- a/core/l10n/zh_TW.php +++ b/core/l10n/zh_TW.php @@ -1,10 +1,17 @@ "%s 與您分享了 %s", +"group" => "群組", +"Turned on maintenance mode" => "已啓用維護模式", +"Turned off maintenance mode" => "已停用維護模式", +"Updated database" => "已更新資料庫", +"Updating filecache, this may take really long..." => "更新檔案快取,這可能要很久…", +"Updated filecache" => "已更新檔案快取", +"... %d%% done ..." => "已完成 %d%%", "Category type not provided." => "未提供分類類型。", "No category to add?" => "沒有可增加的分類?", -"This category already exists: %s" => "分類已經存在: %s", -"Object type not provided." => "不支援的物件類型", +"This category already exists: %s" => "分類已經存在:%s", +"Object type not provided." => "未指定物件類型", "%s ID not provided." => "未提供 %s ID 。", "Error adding %s to favorites." => "加入 %s 到最愛時發生錯誤。", "No categories selected for deletion." => "沒有選擇要刪除的分類。", @@ -30,13 +37,13 @@ $TRANSLATIONS = array( "December" => "十二月", "Settings" => "設定", "seconds ago" => "幾秒前", -"_%n minute ago_::_%n minutes ago_" => array(""), -"_%n hour ago_::_%n hours ago_" => array(""), +"_%n minute ago_::_%n minutes ago_" => array("%n 分鐘前"), +"_%n hour ago_::_%n hours ago_" => array("%n 小時前"), "today" => "今天", "yesterday" => "昨天", -"_%n day ago_::_%n days ago_" => array(""), +"_%n day ago_::_%n days ago_" => array("%n 天前"), "last month" => "上個月", -"_%n month ago_::_%n months ago_" => array(""), +"_%n month ago_::_%n months ago_" => array("%n 個月前"), "months ago" => "幾個月前", "last year" => "去年", "years ago" => "幾年前", @@ -56,20 +63,20 @@ $TRANSLATIONS = array( "Error while changing permissions" => "修改權限時發生錯誤", "Shared with you and the group {group} by {owner}" => "由 {owner} 分享給您和 {group}", "Shared with you by {owner}" => "{owner} 已經和您分享", -"Share with" => "與...分享", +"Share with" => "分享給別人", "Share with link" => "使用連結分享", "Password protect" => "密碼保護", "Password" => "密碼", "Allow Public Upload" => "允許任何人上傳", "Email link to person" => "將連結 email 給別人", "Send" => "寄出", -"Set expiration date" => "設置到期日", +"Set expiration date" => "指定到期日", "Expiration date" => "到期日", "Share via email:" => "透過電子郵件分享:", "No people found" => "沒有找到任何人", "Resharing is not allowed" => "不允許重新分享", "Shared in {item} with {user}" => "已和 {user} 分享 {item}", -"Unshare" => "取消共享", +"Unshare" => "取消分享", "can edit" => "可編輯", "access control" => "存取控制", "create" => "建立", @@ -77,14 +84,15 @@ $TRANSLATIONS = array( "delete" => "刪除", "share" => "分享", "Password protected" => "受密碼保護", -"Error unsetting expiration date" => "解除過期日設定失敗", -"Error setting expiration date" => "錯誤的到期日設定", -"Sending ..." => "正在傳送...", +"Error unsetting expiration date" => "取消到期日設定失敗", +"Error setting expiration date" => "設定到期日發生錯誤", +"Sending ..." => "正在傳送…", "Email sent" => "Email 已寄出", "The update was unsuccessful. Please report this issue to the ownCloud community." => "升級失敗,請將此問題回報 ownCloud 社群。", "The update was successful. Redirecting you to ownCloud now." => "升級成功,正將您重新導向至 ownCloud 。", +"%s password reset" => "%s 密碼重設", "Use the following link to reset your password: {link}" => "請至以下連結重設您的密碼: {link}", -"The link to reset your password has been sent to your email.
    If you do not receive it within a reasonable amount of time, check your spam/junk folders.
    If it is not there ask your local administrator ." => "重設密碼的連結已經寄至您的電子郵件信箱,如果您過了一段時間還是沒有收到它,請檢查看看它是不是被放到垃圾郵件了,如果還是沒有的話,請聯絡您的 ownCloud 系統管理員。", +"The link to reset your password has been sent to your email.
    If you do not receive it within a reasonable amount of time, check your spam/junk folders.
    If it is not there ask your local administrator ." => "重設密碼的連結已經寄至您的電子郵件信箱,如果您過了一段時間還是沒有收到它,請檢查看看它是不是被歸為垃圾郵件了,如果還是沒有的話,請聯絡您的 ownCloud 系統管理員。", "Request failed!
    Did you make sure your email/username was right?" => "請求失敗!
    您確定填入的電子郵件地址或是帳號名稱是正確的嗎?", "You will receive a link to reset your password via Email." => "重設密碼的連結將會寄到您的電子郵件信箱。", "Username" => "使用者名稱", @@ -101,8 +109,8 @@ $TRANSLATIONS = array( "Admin" => "管理", "Help" => "說明", "Access forbidden" => "存取被拒", -"Cloud not found" => "未發現雲端", -"Hey there,\n\njust letting you know that %s shared %s with you.\nView it: %s\n\nCheers!" => "嗨,\n\n通知您,%s 與您分享了 %s 。\n看一下:%s", +"Cloud not found" => "找不到網頁", +"Hey there,\n\njust letting you know that %s shared %s with you.\nView it: %s\n\nCheers!" => "嗨,\n\n通知您一聲,%s 與您分享了 %s 。\n您可以到 %s 看看", "Edit categories" => "編輯分類", "Add" => "增加", "Security Warning" => "安全性警告", @@ -114,7 +122,7 @@ $TRANSLATIONS = array( "For information how to properly configure your server, please see the documentation." => "請參考說明文件以瞭解如何正確設定您的伺服器。", "Create an admin account" => "建立一個管理者帳號", "Advanced" => "進階", -"Data folder" => "資料夾", +"Data folder" => "資料儲存位置", "Configure the database" => "設定資料庫", "will be used" => "將會使用", "Database user" => "資料庫使用者", @@ -131,8 +139,8 @@ $TRANSLATIONS = array( "Lost your password?" => "忘記密碼?", "remember" => "記住", "Log in" => "登入", -"Alternative Logins" => "替代登入方法", -"Hey there,

    just letting you know that %s shared »%s« with you.
    View it!

    Cheers!" => "嗨,

    通知您,%s 與您分享了 %s ,
    看一下吧", -"Updating ownCloud to version %s, this may take a while." => "正在將 Owncloud 升級至版本 %s ,這可能需要一點時間。" +"Alternative Logins" => "其他登入方法", +"Hey there,

    just letting you know that %s shared »%s« with you.
    View it!

    Cheers!" => "嗨,

    通知您一聲,%s 與您分享了 %s ,
    看一下吧", +"Updating ownCloud to version %s, this may take a while." => "正在將 ownCloud 升級至版本 %s ,這可能需要一點時間。" ); $PLURAL_FORMS = "nplurals=1; plural=0;"; diff --git a/core/routes.php b/core/routes.php index dd8222d437..f0f8ce571e 100644 --- a/core/routes.php +++ b/core/routes.php @@ -42,7 +42,8 @@ $this->create('js_config', '/core/js/config.js') // Routing $this->create('core_ajax_routes', '/core/routes.json') ->action('OC_Router', 'JSRoutes'); - +$this->create('core_ajax_preview', '/core/preview.png') + ->actionInclude('core/ajax/preview.php'); OC::$CLASSPATH['OC_Core_LostPassword_Controller'] = 'core/lostpassword/controller.php'; $this->create('core_lostpassword_index', '/lostpassword/') ->get() diff --git a/core/templates/layout.user.php b/core/templates/layout.user.php index 3c1114492c..1e0f4a75c3 100644 --- a/core/templates/layout.user.php +++ b/core/templates/layout.user.php @@ -78,6 +78,7 @@