Merge branch 'master' into fixing-1424-master

This commit is contained in:
Thomas Müller 2013-02-09 19:15:23 +01:00
commit b9089fe8d9
332 changed files with 6133 additions and 2181 deletions

View file

@ -92,7 +92,7 @@ foreach (explode('/', $dir) as $i) {
$list = new OCP\Template('files', 'part.list', ''); $list = new OCP\Template('files', 'part.list', '');
$list->assign('files', $files, false); $list->assign('files', $files, false);
$list->assign('baseURL', OCP\Util::linkTo('files', 'index.php') . '?dir=', false); $list->assign('baseURL', OCP\Util::linkTo('files', 'index.php') . '?dir=', false);
$list->assign('downloadURL', OCP\Util::linkTo('files', 'download.php') . '?file=', false); $list->assign('downloadURL', OCP\Util::linkToRoute('download', array('file' => '/')), false);
$list->assign('disableSharing', false); $list->assign('disableSharing', false);
$breadcrumbNav = new OCP\Template('files', 'part.breadcrumb', ''); $breadcrumbNav = new OCP\Template('files', 'part.breadcrumb', '');
$breadcrumbNav->assign('breadcrumb', $breadcrumb, false); $breadcrumbNav->assign('breadcrumb', $breadcrumb, false);

View file

@ -112,10 +112,7 @@ var FileActions = {
if (img.call) { if (img.call) {
img = img(file); img = img(file);
} }
// NOTE: Temporary fix to allow unsharing of files in root of Shared folder if (typeof trashBinApp !== 'undefined' && trashBinApp) {
if ($('#dir').val() == '/Shared') {
var html = '<a href="#" original-title="' + t('files', 'Unshare') + '" class="action delete" />';
} else if (typeof trashBinApp !== 'undefined' && trashBinApp) {
var html = '<a href="#" original-title="' + t('files', 'Delete permanently') + '" class="action delete" />'; var html = '<a href="#" original-title="' + t('files', 'Delete permanently') + '" class="action delete" />';
} else { } else {
var html = '<a href="#" original-title="' + t('files', 'Delete') + '" class="action delete" />'; var html = '<a href="#" original-title="' + t('files', 'Delete') + '" class="action delete" />';

View file

@ -3,35 +3,92 @@ var FileList={
update:function(fileListHtml) { update:function(fileListHtml) {
$('#fileList').empty().html(fileListHtml); $('#fileList').empty().html(fileListHtml);
}, },
addFile:function(name,size,lastModified,loading,hidden){ createRow:function(type, name, iconurl, linktarget, size, lastModified, permissions){
var basename, extension, simpleSize, sizeColor, lastModifiedTime, modifiedColor, var td, simpleSize, basename, extension;
img=(loading)?OC.imagePath('core', 'loading.gif'):OC.imagePath('core', 'filetypes/file.png'), //containing tr
html='<tr data-type="file" data-size="'+size+'" data-permissions="'+$('#permissions').val()+'">'; var tr = $('<tr></tr>').attr({
if(name.indexOf('.')!=-1){ "data-type": type,
"data-size": size,
"data-file": name,
"data-permissions": permissions
});
// filename td
td = $('<td></td>').attr({
"class": "filename",
"style": 'background-image:url('+iconurl+')'
});
td.append('<input type="checkbox" />');
var link_elem = $('<a></a>').attr({
"class": "name",
"href": linktarget
});
//split extension from filename for non dirs
if (type != 'dir' && name.indexOf('.')!=-1) {
basename=name.substr(0,name.lastIndexOf('.')); basename=name.substr(0,name.lastIndexOf('.'));
extension=name.substr(name.lastIndexOf('.')); extension=name.substr(name.lastIndexOf('.'));
}else{ } else {
basename=name; basename=name;
extension=false; extension=false;
} }
html+='<td class="filename" style="background-image:url('+img+')"><input type="checkbox" />'; var name_span=$('<span></span>').addClass('nametext').text(basename);
html+='<a class="name" href="download.php?file='+$('#dir').val().replace(/</, '&lt;').replace(/>/, '&gt;')+'/'+escapeHTML(name)+'"><span class="nametext">'+escapeHTML(basename); link_elem.append(name_span);
if(extension){ if(extension){
html+='<span class="extension">'+escapeHTML(extension)+'</span>'; name_span.append($('<span></span>').addClass('extension').text(extension));
} }
html+='</span></a></td>'; //dirs can show the number of uploaded files
if(size!='Pending'){ if (type == 'dir') {
link_elem.append($('<span></span>').attr({
'class': 'uploadtext',
'currentUploads': 0
}));
}
td.append(link_elem);
tr.append(td);
//size column
if(size!=t('files', 'Pending')){
simpleSize=simpleFileSize(size); simpleSize=simpleFileSize(size);
}else{ }else{
simpleSize='Pending'; simpleSize=t('files', 'Pending');
} }
sizeColor = Math.round(200-size/(1024*1024)*2); var sizeColor = Math.round(200-Math.pow((size/(1024*1024)),2));
lastModifiedTime=Math.round(lastModified.getTime() / 1000); var lastModifiedTime = Math.round(lastModified.getTime() / 1000);
modifiedColor=Math.round((Math.round((new Date()).getTime() / 1000)-lastModifiedTime)/60/60/24*14); td = $('<td></td>').attr({
html+='<td class="filesize" title="'+humanFileSize(size)+'" style="color:rgb('+sizeColor+','+sizeColor+','+sizeColor+')">'+simpleSize+'</td>'; "class": "filesize",
html+='<td class="date"><span class="modified" title="'+formatDate(lastModified)+'" style="color:rgb('+modifiedColor+','+modifiedColor+','+modifiedColor+')">'+relative_modified_date(lastModified.getTime() / 1000)+'</span></td>'; "title": humanFileSize(size),
html+='</tr>'; "style": 'color:rgb('+sizeColor+','+sizeColor+','+sizeColor+')'
FileList.insertElement(name,'file',$(html).attr('data-file',name)); }).text(simpleSize);
tr.append(td);
// date column
var modifiedColor = Math.round((Math.round((new Date()).getTime() / 1000)-lastModifiedTime)/60/60/24*5);
td = $('<td></td>').attr({ "class": "date" });
td.append($('<span></span>').attr({
"class": "modified",
"title": formatDate(lastModified),
"style": 'color:rgb('+modifiedColor+','+modifiedColor+','+modifiedColor+')'
}).text( relative_modified_date(lastModified.getTime() / 1000) ));
tr.append(td);
return tr;
},
addFile:function(name,size,lastModified,loading,hidden){
var imgurl;
if (loading) {
imgurl = OC.imagePath('core', 'loading.gif');
} else {
imgurl = OC.imagePath('core', 'filetypes/file.png');
}
var tr = this.createRow(
'file',
name,
imgurl,
OC.Router.generate('download', { file: $('#dir').val()+'/'+name }),
size,
lastModified,
$('#permissions').val()
);
FileList.insertElement(name, 'file', tr.attr('data-file',name));
var row = $('tr').filterAttr('data-file',name); var row = $('tr').filterAttr('data-file',name);
if(loading){ if(loading){
row.data('loading',true); row.data('loading',true);
@ -44,30 +101,18 @@ var FileList={
FileActions.display(row.find('td.filename')); FileActions.display(row.find('td.filename'));
}, },
addDir:function(name,size,lastModified,hidden){ addDir:function(name,size,lastModified,hidden){
var html, td, link_elem, sizeColor, lastModifiedTime, modifiedColor;
html = $('<tr></tr>').attr({ "data-type": "dir", "data-size": size, "data-file": name, "data-permissions": $('#permissions').val()}); var tr = this.createRow(
td = $('<td></td>').attr({"class": "filename", "style": 'background-image:url('+OC.imagePath('core', 'filetypes/folder.png')+')' }); 'dir',
td.append('<input type="checkbox" />'); name,
link_elem = $('<a></a>').attr({ "class": "name", "href": OC.linkTo('files', 'index.php')+"?dir="+ encodeURIComponent($('#dir').val()+'/'+name).replace(/%2F/g, '/') }); OC.imagePath('core', 'filetypes/folder.png'),
link_elem.append($('<span></span>').addClass('nametext').text(name)); OC.linkTo('files', 'index.php')+"?dir="+ encodeURIComponent($('#dir').val()+'/'+name).replace(/%2F/g, '/'),
link_elem.append($('<span></span>').attr({'class': 'uploadtext', 'currentUploads': 0})); size,
td.append(link_elem); lastModified,
html.append(td); $('#permissions').val()
if(size!='Pending'){ );
simpleSize=simpleFileSize(size);
}else{ FileList.insertElement(name,'dir',tr);
simpleSize='Pending';
}
sizeColor = Math.round(200-Math.pow((size/(1024*1024)),2));
lastModifiedTime=Math.round(lastModified.getTime() / 1000);
modifiedColor=Math.round((Math.round((new Date()).getTime() / 1000)-lastModifiedTime)/60/60/24*5);
td = $('<td></td>').attr({ "class": "filesize", "title": humanFileSize(size), "style": 'color:rgb('+sizeColor+','+sizeColor+','+sizeColor+')'}).text(simpleSize);
html.append(td);
td = $('<td></td>').attr({ "class": "date" });
td.append($('<span></span>').attr({ "class": "modified", "title": formatDate(lastModified), "style": 'color:rgb('+modifiedColor+','+modifiedColor+','+modifiedColor+')' }).text( relative_modified_date(lastModified.getTime() / 1000) ));
html.append(td);
FileList.insertElement(name,'dir',html);
var row = $('tr').filterAttr('data-file',name); var row = $('tr').filterAttr('data-file',name);
row.find('td.filename').draggable(dragOptions); row.find('td.filename').draggable(dragOptions);
row.find('td.filename').droppable(folderDropOptions); row.find('td.filename').droppable(folderDropOptions);
@ -216,9 +261,6 @@ var FileList={
}, },
replace:function(oldName, newName, isNewFile) { replace:function(oldName, newName, isNewFile) {
// Finish any existing actions // Finish any existing actions
if (FileList.lastAction || !FileList.useUndo) {
FileList.lastAction();
}
$('tr').filterAttr('data-file', oldName).hide(); $('tr').filterAttr('data-file', oldName).hide();
$('tr').filterAttr('data-file', newName).hide(); $('tr').filterAttr('data-file', newName).hide();
var tr = $('tr').filterAttr('data-file', oldName).clone(); var tr = $('tr').filterAttr('data-file', oldName).clone();
@ -321,7 +363,6 @@ $(document).ready(function(){
// Delete the new uploaded file // Delete the new uploaded file
FileList.deleteCanceled = false; FileList.deleteCanceled = false;
FileList.deleteFiles = [FileList.replaceOldName]; FileList.deleteFiles = [FileList.replaceOldName];
FileList.finishDelete(null, true);
} else { } else {
$('tr').filterAttr('data-file', FileList.replaceOldName).show(); $('tr').filterAttr('data-file', FileList.replaceOldName).show();
} }
@ -348,7 +389,6 @@ $(document).ready(function(){
if ($('#notification').data('isNewFile')) { if ($('#notification').data('isNewFile')) {
FileList.deleteCanceled = false; FileList.deleteCanceled = false;
FileList.deleteFiles = [$('#notification').data('oldName')]; FileList.deleteFiles = [$('#notification').data('oldName')];
FileList.finishDelete(null, true);
} }
}); });
FileList.useUndo=(window.onbeforeunload)?true:false; FileList.useUndo=(window.onbeforeunload)?true:false;

View file

@ -262,12 +262,6 @@ $(document).ready(function() {
return; return;
} }
totalSize+=files[i].size; totalSize+=files[i].size;
if(FileList.deleteFiles && FileList.deleteFiles.indexOf(files[i].name)!=-1){//finish delete if we are uploading a deleted file
FileList.finishDelete(function(){
$('#file_upload_start').change();
});
return;
}
} }
} }
if(totalSize>$('#max_upload').val()){ if(totalSize>$('#max_upload').val()){

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "কোন ফাইল আপলোড করা হয় নি", "No file was uploaded" => "কোন ফাইল আপলোড করা হয় নি",
"Missing a temporary folder" => "অস্থায়ী ফোল্ডার খোয়া গিয়েছে", "Missing a temporary folder" => "অস্থায়ী ফোল্ডার খোয়া গিয়েছে",
"Failed to write to disk" => "ডিস্কে লিখতে ব্যর্থ", "Failed to write to disk" => "ডিস্কে লিখতে ব্যর্থ",
"Not enough space available" => "যথেষ্ঠ পরিমাণ স্থান নেই",
"Invalid directory." => "ভুল ডিরেক্টরি", "Invalid directory." => "ভুল ডিরেক্টরি",
"Files" => "ফাইল", "Files" => "ফাইল",
"Unshare" => "ভাগাভাগি বাতিল ", "Unshare" => "ভাগাভাগি বাতিল ",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "El fitxer no s'ha pujat", "No file was uploaded" => "El fitxer no s'ha pujat",
"Missing a temporary folder" => "S'ha perdut un fitxer temporal", "Missing a temporary folder" => "S'ha perdut un fitxer temporal",
"Failed to write to disk" => "Ha fallat en escriure al disc", "Failed to write to disk" => "Ha fallat en escriure al disc",
"Not enough space available" => "No hi ha prou espai disponible",
"Invalid directory." => "Directori no vàlid.", "Invalid directory." => "Directori no vàlid.",
"Files" => "Fitxers", "Files" => "Fitxers",
"Unshare" => "Deixa de compartir", "Unshare" => "Deixa de compartir",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Žádný soubor nebyl odeslán", "No file was uploaded" => "Žádný soubor nebyl odeslán",
"Missing a temporary folder" => "Chybí adresář pro dočasné soubory", "Missing a temporary folder" => "Chybí adresář pro dočasné soubory",
"Failed to write to disk" => "Zápis na disk selhal", "Failed to write to disk" => "Zápis na disk selhal",
"Not enough space available" => "Nedostatek dostupného místa",
"Invalid directory." => "Neplatný adresář", "Invalid directory." => "Neplatný adresář",
"Files" => "Soubory", "Files" => "Soubory",
"Unshare" => "Zrušit sdílení", "Unshare" => "Zrušit sdílení",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Es wurde keine Datei hochgeladen.", "No file was uploaded" => "Es wurde keine Datei hochgeladen.",
"Missing a temporary folder" => "Temporärer Ordner fehlt.", "Missing a temporary folder" => "Temporärer Ordner fehlt.",
"Failed to write to disk" => "Fehler beim Schreiben auf die Festplatte", "Failed to write to disk" => "Fehler beim Schreiben auf die Festplatte",
"Not enough space available" => "Nicht genug Speicherplatz verfügbar",
"Invalid directory." => "Ungültiges Verzeichnis.", "Invalid directory." => "Ungültiges Verzeichnis.",
"Files" => "Dateien", "Files" => "Dateien",
"Unshare" => "Nicht mehr freigeben", "Unshare" => "Nicht mehr freigeben",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Es wurde keine Datei hochgeladen.", "No file was uploaded" => "Es wurde keine Datei hochgeladen.",
"Missing a temporary folder" => "Der temporäre Ordner fehlt.", "Missing a temporary folder" => "Der temporäre Ordner fehlt.",
"Failed to write to disk" => "Fehler beim Schreiben auf die Festplatte", "Failed to write to disk" => "Fehler beim Schreiben auf die Festplatte",
"Not enough space available" => "Nicht genügend Speicherplatz verfügbar",
"Invalid directory." => "Ungültiges Verzeichnis.", "Invalid directory." => "Ungültiges Verzeichnis.",
"Files" => "Dateien", "Files" => "Dateien",
"Unshare" => "Nicht mehr freigeben", "Unshare" => "Nicht mehr freigeben",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Κανένα αρχείο δεν στάλθηκε", "No file was uploaded" => "Κανένα αρχείο δεν στάλθηκε",
"Missing a temporary folder" => "Λείπει ο προσωρινός φάκελος", "Missing a temporary folder" => "Λείπει ο προσωρινός φάκελος",
"Failed to write to disk" => "Αποτυχία εγγραφής στο δίσκο", "Failed to write to disk" => "Αποτυχία εγγραφής στο δίσκο",
"Not enough space available" => "Δεν υπάρχει αρκετός διαθέσιμος χώρος",
"Invalid directory." => "Μη έγκυρος φάκελος.", "Invalid directory." => "Μη έγκυρος φάκελος.",
"Files" => "Αρχεία", "Files" => "Αρχεία",
"Unshare" => "Διακοπή κοινής χρήσης", "Unshare" => "Διακοπή κοινής χρήσης",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Neniu dosiero estas alŝutita", "No file was uploaded" => "Neniu dosiero estas alŝutita",
"Missing a temporary folder" => "Mankas tempa dosierujo", "Missing a temporary folder" => "Mankas tempa dosierujo",
"Failed to write to disk" => "Malsukcesis skribo al disko", "Failed to write to disk" => "Malsukcesis skribo al disko",
"Not enough space available" => "Ne haveblas sufiĉa spaco",
"Invalid directory." => "Nevalida dosierujo.", "Invalid directory." => "Nevalida dosierujo.",
"Files" => "Dosieroj", "Files" => "Dosieroj",
"Unshare" => "Malkunhavigi", "Unshare" => "Malkunhavigi",

View file

@ -7,10 +7,10 @@
"No file was uploaded" => "No se ha subido ningún archivo", "No file was uploaded" => "No se ha subido ningún archivo",
"Missing a temporary folder" => "Falta un directorio temporal", "Missing a temporary folder" => "Falta un directorio temporal",
"Failed to write to disk" => "La escritura en disco ha fallado", "Failed to write to disk" => "La escritura en disco ha fallado",
"Not enough space available" => "No hay suficiente espacio disponible",
"Invalid directory." => "Directorio invalido.", "Invalid directory." => "Directorio invalido.",
"Files" => "Archivos", "Files" => "Archivos",
"Unshare" => "Dejar de compartir", "Unshare" => "Dejar de compartir",
"Delete permanently" => "Eliminar permanentemente",
"Delete" => "Eliminar", "Delete" => "Eliminar",
"Rename" => "Renombrar", "Rename" => "Renombrar",
"{new_name} already exists" => "{new_name} ya existe", "{new_name} already exists" => "{new_name} ya existe",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "El archivo no fue subido", "No file was uploaded" => "El archivo no fue subido",
"Missing a temporary folder" => "Falta un directorio temporal", "Missing a temporary folder" => "Falta un directorio temporal",
"Failed to write to disk" => "Error al escribir en el disco", "Failed to write to disk" => "Error al escribir en el disco",
"Not enough space available" => "No hay suficiente espacio disponible",
"Invalid directory." => "Directorio invalido.", "Invalid directory." => "Directorio invalido.",
"Files" => "Archivos", "Files" => "Archivos",
"Unshare" => "Dejar de compartir", "Unshare" => "Dejar de compartir",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Ez da fitxategirik igo", "No file was uploaded" => "Ez da fitxategirik igo",
"Missing a temporary folder" => "Aldi baterako karpeta falta da", "Missing a temporary folder" => "Aldi baterako karpeta falta da",
"Failed to write to disk" => "Errore bat izan da diskoan idazterakoan", "Failed to write to disk" => "Errore bat izan da diskoan idazterakoan",
"Not enough space available" => "Ez dago leku nahikorik.",
"Invalid directory." => "Baliogabeko karpeta.", "Invalid directory." => "Baliogabeko karpeta.",
"Files" => "Fitxategiak", "Files" => "Fitxategiak",
"Unshare" => "Ez elkarbanatu", "Unshare" => "Ez elkarbanatu",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "هیچ فایلی بارگذاری نشده", "No file was uploaded" => "هیچ فایلی بارگذاری نشده",
"Missing a temporary folder" => "یک پوشه موقت گم شده است", "Missing a temporary folder" => "یک پوشه موقت گم شده است",
"Failed to write to disk" => "نوشتن بر روی دیسک سخت ناموفق بود", "Failed to write to disk" => "نوشتن بر روی دیسک سخت ناموفق بود",
"Not enough space available" => "فضای کافی در دسترس نیست",
"Invalid directory." => "فهرست راهنما نامعتبر می باشد.", "Invalid directory." => "فهرست راهنما نامعتبر می باشد.",
"Files" => "فایل ها", "Files" => "فایل ها",
"Unshare" => "لغو اشتراک", "Unshare" => "لغو اشتراک",

View file

@ -6,7 +6,6 @@
"No file was uploaded" => "Yhtäkään tiedostoa ei lähetetty", "No file was uploaded" => "Yhtäkään tiedostoa ei lähetetty",
"Missing a temporary folder" => "Väliaikaiskansiota ei ole olemassa", "Missing a temporary folder" => "Väliaikaiskansiota ei ole olemassa",
"Failed to write to disk" => "Levylle kirjoitus epäonnistui", "Failed to write to disk" => "Levylle kirjoitus epäonnistui",
"Not enough space available" => "Tilaa ei ole riittävästi",
"Invalid directory." => "Virheellinen kansio.", "Invalid directory." => "Virheellinen kansio.",
"Files" => "Tiedostot", "Files" => "Tiedostot",
"Unshare" => "Peru jakaminen", "Unshare" => "Peru jakaminen",

View file

@ -7,10 +7,10 @@
"No file was uploaded" => "Aucun fichier n'a été téléversé", "No file was uploaded" => "Aucun fichier n'a été téléversé",
"Missing a temporary folder" => "Il manque un répertoire temporaire", "Missing a temporary folder" => "Il manque un répertoire temporaire",
"Failed to write to disk" => "Erreur d'écriture sur le disque", "Failed to write to disk" => "Erreur d'écriture sur le disque",
"Not enough space available" => "Espace disponible insuffisant",
"Invalid directory." => "Dossier invalide.", "Invalid directory." => "Dossier invalide.",
"Files" => "Fichiers", "Files" => "Fichiers",
"Unshare" => "Ne plus partager", "Unshare" => "Ne plus partager",
"Delete permanently" => "Supprimer de façon définitive",
"Delete" => "Supprimer", "Delete" => "Supprimer",
"Rename" => "Renommer", "Rename" => "Renommer",
"{new_name} already exists" => "{new_name} existe déjà", "{new_name} already exists" => "{new_name} existe déjà",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Non se enviou ningún ficheiro", "No file was uploaded" => "Non se enviou ningún ficheiro",
"Missing a temporary folder" => "Falta un cartafol temporal", "Missing a temporary folder" => "Falta un cartafol temporal",
"Failed to write to disk" => "Erro ao escribir no disco", "Failed to write to disk" => "Erro ao escribir no disco",
"Not enough space available" => "O espazo dispoñíbel é insuficiente",
"Invalid directory." => "O directorio é incorrecto.", "Invalid directory." => "O directorio é incorrecto.",
"Files" => "Ficheiros", "Files" => "Ficheiros",
"Unshare" => "Deixar de compartir", "Unshare" => "Deixar de compartir",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Nem töltődött fel semmi", "No file was uploaded" => "Nem töltődött fel semmi",
"Missing a temporary folder" => "Hiányzik egy ideiglenes mappa", "Missing a temporary folder" => "Hiányzik egy ideiglenes mappa",
"Failed to write to disk" => "Nem sikerült a lemezre történő írás", "Failed to write to disk" => "Nem sikerült a lemezre történő írás",
"Not enough space available" => "Nincs elég szabad hely",
"Invalid directory." => "Érvénytelen mappa.", "Invalid directory." => "Érvénytelen mappa.",
"Files" => "Fájlok", "Files" => "Fájlok",
"Unshare" => "Megosztás visszavonása", "Unshare" => "Megosztás visszavonása",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Engin skrá skilaði sér", "No file was uploaded" => "Engin skrá skilaði sér",
"Missing a temporary folder" => "Vantar bráðabirgðamöppu", "Missing a temporary folder" => "Vantar bráðabirgðamöppu",
"Failed to write to disk" => "Tókst ekki að skrifa á disk", "Failed to write to disk" => "Tókst ekki að skrifa á disk",
"Not enough space available" => "Ekki nægt pláss tiltækt",
"Invalid directory." => "Ógild mappa.", "Invalid directory." => "Ógild mappa.",
"Files" => "Skrár", "Files" => "Skrár",
"Unshare" => "Hætta deilingu", "Unshare" => "Hætta deilingu",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Nessun file è stato caricato", "No file was uploaded" => "Nessun file è stato caricato",
"Missing a temporary folder" => "Cartella temporanea mancante", "Missing a temporary folder" => "Cartella temporanea mancante",
"Failed to write to disk" => "Scrittura su disco non riuscita", "Failed to write to disk" => "Scrittura su disco non riuscita",
"Not enough space available" => "Spazio disponibile insufficiente",
"Invalid directory." => "Cartella non valida.", "Invalid directory." => "Cartella non valida.",
"Files" => "File", "Files" => "File",
"Unshare" => "Rimuovi condivisione", "Unshare" => "Rimuovi condivisione",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "ファイルはアップロードされませんでした", "No file was uploaded" => "ファイルはアップロードされませんでした",
"Missing a temporary folder" => "テンポラリフォルダが見つかりません", "Missing a temporary folder" => "テンポラリフォルダが見つかりません",
"Failed to write to disk" => "ディスクへの書き込みに失敗しました", "Failed to write to disk" => "ディスクへの書き込みに失敗しました",
"Not enough space available" => "利用可能なスペースが十分にありません",
"Invalid directory." => "無効なディレクトリです。", "Invalid directory." => "無効なディレクトリです。",
"Files" => "ファイル", "Files" => "ファイル",
"Unshare" => "共有しない", "Unshare" => "共有しない",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "업로드된 파일 없음", "No file was uploaded" => "업로드된 파일 없음",
"Missing a temporary folder" => "임시 폴더가 사라짐", "Missing a temporary folder" => "임시 폴더가 사라짐",
"Failed to write to disk" => "디스크에 쓰지 못했습니다", "Failed to write to disk" => "디스크에 쓰지 못했습니다",
"Not enough space available" => "여유 공간이 부족합니다",
"Invalid directory." => "올바르지 않은 디렉터리입니다.", "Invalid directory." => "올바르지 않은 디렉터리입니다.",
"Files" => "파일", "Files" => "파일",
"Unshare" => "공유 해제", "Unshare" => "공유 해제",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Neviena datne netika augšupielādēta", "No file was uploaded" => "Neviena datne netika augšupielādēta",
"Missing a temporary folder" => "Trūkst pagaidu mapes", "Missing a temporary folder" => "Trūkst pagaidu mapes",
"Failed to write to disk" => "Neizdevās saglabāt diskā", "Failed to write to disk" => "Neizdevās saglabāt diskā",
"Not enough space available" => "Nepietiek brīvas vietas",
"Invalid directory." => "Nederīga direktorija.", "Invalid directory." => "Nederīga direktorija.",
"Files" => "Datnes", "Files" => "Datnes",
"Unshare" => "Pārtraukt dalīšanos", "Unshare" => "Pārtraukt dalīšanos",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Geen bestand geüpload", "No file was uploaded" => "Geen bestand geüpload",
"Missing a temporary folder" => "Een tijdelijke map mist", "Missing a temporary folder" => "Een tijdelijke map mist",
"Failed to write to disk" => "Schrijven naar schijf mislukt", "Failed to write to disk" => "Schrijven naar schijf mislukt",
"Not enough space available" => "Niet genoeg ruimte beschikbaar",
"Invalid directory." => "Ongeldige directory.", "Invalid directory." => "Ongeldige directory.",
"Files" => "Bestanden", "Files" => "Bestanden",
"Unshare" => "Stop delen", "Unshare" => "Stop delen",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Nie przesłano żadnego pliku", "No file was uploaded" => "Nie przesłano żadnego pliku",
"Missing a temporary folder" => "Brak katalogu tymczasowego", "Missing a temporary folder" => "Brak katalogu tymczasowego",
"Failed to write to disk" => "Błąd zapisu na dysk", "Failed to write to disk" => "Błąd zapisu na dysk",
"Not enough space available" => "Za mało miejsca",
"Invalid directory." => "Zła ścieżka.", "Invalid directory." => "Zła ścieżka.",
"Files" => "Pliki", "Files" => "Pliki",
"Unshare" => "Nie udostępniaj", "Unshare" => "Nie udostępniaj",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Não foi enviado nenhum ficheiro", "No file was uploaded" => "Não foi enviado nenhum ficheiro",
"Missing a temporary folder" => "Falta uma pasta temporária", "Missing a temporary folder" => "Falta uma pasta temporária",
"Failed to write to disk" => "Falhou a escrita no disco", "Failed to write to disk" => "Falhou a escrita no disco",
"Not enough space available" => "Espaço em disco insuficiente!",
"Invalid directory." => "Directório Inválido", "Invalid directory." => "Directório Inválido",
"Files" => "Ficheiros", "Files" => "Ficheiros",
"Unshare" => "Deixar de partilhar", "Unshare" => "Deixar de partilhar",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Niciun fișier încărcat", "No file was uploaded" => "Niciun fișier încărcat",
"Missing a temporary folder" => "Lipsește un dosar temporar", "Missing a temporary folder" => "Lipsește un dosar temporar",
"Failed to write to disk" => "Eroare la scriere pe disc", "Failed to write to disk" => "Eroare la scriere pe disc",
"Not enough space available" => "Nu este suficient spațiu disponibil",
"Invalid directory." => "Director invalid.", "Invalid directory." => "Director invalid.",
"Files" => "Fișiere", "Files" => "Fișiere",
"Unshare" => "Anulează partajarea", "Unshare" => "Anulează partajarea",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Файл не был загружен", "No file was uploaded" => "Файл не был загружен",
"Missing a temporary folder" => "Невозможно найти временную папку", "Missing a temporary folder" => "Невозможно найти временную папку",
"Failed to write to disk" => "Ошибка записи на диск", "Failed to write to disk" => "Ошибка записи на диск",
"Not enough space available" => "Недостаточно свободного места",
"Invalid directory." => "Неправильный каталог.", "Invalid directory." => "Неправильный каталог.",
"Files" => "Файлы", "Files" => "Файлы",
"Unshare" => "Отменить публикацию", "Unshare" => "Отменить публикацию",

View file

@ -7,10 +7,10 @@
"No file was uploaded" => "Файл не был загружен", "No file was uploaded" => "Файл не был загружен",
"Missing a temporary folder" => "Отсутствует временная папка", "Missing a temporary folder" => "Отсутствует временная папка",
"Failed to write to disk" => "Не удалось записать на диск", "Failed to write to disk" => "Не удалось записать на диск",
"Not enough space available" => "Не достаточно свободного места",
"Invalid directory." => "Неверный каталог.", "Invalid directory." => "Неверный каталог.",
"Files" => "Файлы", "Files" => "Файлы",
"Unshare" => "Скрыть", "Unshare" => "Скрыть",
"Delete permanently" => "Удалить навсегда",
"Delete" => "Удалить", "Delete" => "Удалить",
"Rename" => "Переименовать", "Rename" => "Переименовать",
"{new_name} already exists" => "{новое_имя} уже существует", "{new_name} already exists" => "{новое_имя} уже существует",
@ -20,9 +20,13 @@
"replaced {new_name}" => "заменено {новое_имя}", "replaced {new_name}" => "заменено {новое_имя}",
"undo" => "отменить действие", "undo" => "отменить действие",
"replaced {new_name} with {old_name}" => "заменено {новое_имя} с {старое_имя}", "replaced {new_name} with {old_name}" => "заменено {новое_имя} с {старое_имя}",
"perform delete operation" => "выполняется процесс удаления",
"'.' is an invalid file name." => "'.' является неверным именем файла.", "'.' is an invalid file name." => "'.' является неверным именем файла.",
"File name cannot be empty." => "Имя файла не может быть пустым.", "File name cannot be empty." => "Имя файла не может быть пустым.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Некорректное имя, '\\', '/', '<', '>', ':', '\"', '|', '?' и '*' не допустимы.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Некорректное имя, '\\', '/', '<', '>', ':', '\"', '|', '?' и '*' не допустимы.",
"Your storage is full, files can not be updated or synced anymore!" => "Ваше хранилище переполнено, фалы больше не могут быть обновлены или синхронизированы!",
"Your storage is almost full ({usedSpacePercent}%)" => "Ваше хранилище почти полно ({usedSpacePercent}%)",
"Your download is being prepared. This might take some time if the files are big." => "Идёт подготовка к скачке Вашего файла. Это может занять некоторое время, если фалы большие.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Невозможно загрузить файл,\n так как он имеет нулевой размер или является директорией", "Unable to upload your file as it is a directory or has 0 bytes" => "Невозможно загрузить файл,\n так как он имеет нулевой размер или является директорией",
"Upload Error" => "Ошибка загрузки", "Upload Error" => "Ошибка загрузки",
"Close" => "Закрыть", "Close" => "Закрыть",
@ -53,6 +57,7 @@
"Text file" => "Текстовый файл", "Text file" => "Текстовый файл",
"Folder" => "Папка", "Folder" => "Папка",
"From link" => "По ссылке", "From link" => "По ссылке",
"Trash" => "Корзина",
"Cancel upload" => "Отмена загрузки", "Cancel upload" => "Отмена загрузки",
"Nothing in here. Upload something!" => "Здесь ничего нет. Загрузите что-нибудь!", "Nothing in here. Upload something!" => "Здесь ничего нет. Загрузите что-нибудь!",
"Download" => "Загрузить", "Download" => "Загрузить",

View file

@ -7,10 +7,10 @@
"No file was uploaded" => "Žiaden súbor nebol nahraný", "No file was uploaded" => "Žiaden súbor nebol nahraný",
"Missing a temporary folder" => "Chýbajúci dočasný priečinok", "Missing a temporary folder" => "Chýbajúci dočasný priečinok",
"Failed to write to disk" => "Zápis na disk sa nepodaril", "Failed to write to disk" => "Zápis na disk sa nepodaril",
"Not enough space available" => "Nie je k dispozícii dostatok miesta",
"Invalid directory." => "Neplatný adresár", "Invalid directory." => "Neplatný adresár",
"Files" => "Súbory", "Files" => "Súbory",
"Unshare" => "Nezdielať", "Unshare" => "Nezdielať",
"Delete permanently" => "Zmazať trvalo",
"Delete" => "Odstrániť", "Delete" => "Odstrániť",
"Rename" => "Premenovať", "Rename" => "Premenovať",
"{new_name} already exists" => "{new_name} už existuje", "{new_name} already exists" => "{new_name} už existuje",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Ingen fil blev uppladdad", "No file was uploaded" => "Ingen fil blev uppladdad",
"Missing a temporary folder" => "Saknar en tillfällig mapp", "Missing a temporary folder" => "Saknar en tillfällig mapp",
"Failed to write to disk" => "Misslyckades spara till disk", "Failed to write to disk" => "Misslyckades spara till disk",
"Not enough space available" => "Inte tillräckligt med utrymme tillgängligt",
"Invalid directory." => "Felaktig mapp.", "Invalid directory." => "Felaktig mapp.",
"Files" => "Filer", "Files" => "Filer",
"Unshare" => "Sluta dela", "Unshare" => "Sluta dela",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "ยังไม่มีไฟล์ที่ถูกอัพโหลด", "No file was uploaded" => "ยังไม่มีไฟล์ที่ถูกอัพโหลด",
"Missing a temporary folder" => "แฟ้มเอกสารชั่วคราวเกิดการสูญหาย", "Missing a temporary folder" => "แฟ้มเอกสารชั่วคราวเกิดการสูญหาย",
"Failed to write to disk" => "เขียนข้อมูลลงแผ่นดิสก์ล้มเหลว", "Failed to write to disk" => "เขียนข้อมูลลงแผ่นดิสก์ล้มเหลว",
"Not enough space available" => "มีพื้นที่เหลือไม่เพียงพอ",
"Invalid directory." => "ไดเร็กทอรี่ไม่ถูกต้อง", "Invalid directory." => "ไดเร็กทอรี่ไม่ถูกต้อง",
"Files" => "ไฟล์", "Files" => "ไฟล์",
"Unshare" => "ยกเลิกการแชร์ข้อมูล", "Unshare" => "ยกเลิกการแชร์ข้อมูล",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Hiç dosya yüklenmedi", "No file was uploaded" => "Hiç dosya yüklenmedi",
"Missing a temporary folder" => "Geçici bir klasör eksik", "Missing a temporary folder" => "Geçici bir klasör eksik",
"Failed to write to disk" => "Diske yazılamadı", "Failed to write to disk" => "Diske yazılamadı",
"Not enough space available" => "Yeterli disk alanı yok",
"Invalid directory." => "Geçersiz dizin.", "Invalid directory." => "Geçersiz dizin.",
"Files" => "Dosyalar", "Files" => "Dosyalar",
"Unshare" => "Paylaşılmayan", "Unshare" => "Paylaşılmayan",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "Не відвантажено жодного файлу", "No file was uploaded" => "Не відвантажено жодного файлу",
"Missing a temporary folder" => "Відсутній тимчасовий каталог", "Missing a temporary folder" => "Відсутній тимчасовий каталог",
"Failed to write to disk" => "Невдалося записати на диск", "Failed to write to disk" => "Невдалося записати на диск",
"Not enough space available" => "Місця більше немає",
"Invalid directory." => "Невірний каталог.", "Invalid directory." => "Невірний каталог.",
"Files" => "Файли", "Files" => "Файли",
"Unshare" => "Заборонити доступ", "Unshare" => "Заборонити доступ",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "文件没有上传", "No file was uploaded" => "文件没有上传",
"Missing a temporary folder" => "缺少临时目录", "Missing a temporary folder" => "缺少临时目录",
"Failed to write to disk" => "写入磁盘失败", "Failed to write to disk" => "写入磁盘失败",
"Not enough space available" => "没有足够可用空间",
"Invalid directory." => "无效文件夹。", "Invalid directory." => "无效文件夹。",
"Files" => "文件", "Files" => "文件",
"Unshare" => "取消分享", "Unshare" => "取消分享",

View file

@ -7,7 +7,6 @@
"No file was uploaded" => "無已上傳檔案", "No file was uploaded" => "無已上傳檔案",
"Missing a temporary folder" => "遺失暫存資料夾", "Missing a temporary folder" => "遺失暫存資料夾",
"Failed to write to disk" => "寫入硬碟失敗", "Failed to write to disk" => "寫入硬碟失敗",
"Not enough space available" => "沒有足夠的可用空間",
"Invalid directory." => "無效的資料夾。", "Invalid directory." => "無效的資料夾。",
"Files" => "檔案", "Files" => "檔案",
"Unshare" => "取消共享", "Unshare" => "取消共享",

View file

@ -37,7 +37,7 @@
</div> </div>
<?php if ($_['trash'] ): ?> <?php if ($_['trash'] ): ?>
<div id="trash" class="button"> <div id="trash" class="button">
<a><?php echo $l->t('Trash');?></a> <a><?php echo $l->t('Trash bin');?></a>
</div> </div>
<?php endif; ?> <?php endif; ?>
<div id="uploadprogresswrapper"> <div id="uploadprogresswrapper">

View file

@ -1,38 +0,0 @@
<?php
/**
* Copyright (c) 2012, Bjoern Schiessle <schiessle@owncloud.com>
* This file is licensed under the Affero General Public License version 3 or later.
* See the COPYING-README file.
*/
use OCA\Encryption\Keymanager;
OCP\JSON::checkAppEnabled('files_encryption');
OCP\JSON::checkLoggedIn();
OCP\JSON::callCheck();
$mode = $_POST['mode'];
$changePasswd = false;
$passwdChanged = false;
if ( isset($_POST['newpasswd']) && isset($_POST['oldpasswd']) ) {
$oldpasswd = $_POST['oldpasswd'];
$newpasswd = $_POST['newpasswd'];
$changePasswd = true;
$passwdChanged = Keymanager::changePasswd($oldpasswd, $newpasswd);
}
$query = \OC_DB::prepare( "SELECT mode FROM *PREFIX*encryption WHERE uid = ?" );
$result = $query->execute(array(\OCP\User::getUser()));
if ($result->fetchRow()){
$query = OC_DB::prepare( 'UPDATE *PREFIX*encryption SET mode = ? WHERE uid = ?' );
} else {
$query = OC_DB::prepare( 'INSERT INTO *PREFIX*encryption ( mode, uid ) VALUES( ?, ? )' );
}
if ( (!$changePasswd || $passwdChanged) && $query->execute(array($mode, \OCP\User::getUser())) ) {
OCP\JSON::success();
} else {
OCP\JSON::error();
}

View file

@ -43,6 +43,6 @@ if (
} }
// Reguster settings scripts // Register settings scripts
OCP\App::registerAdmin( 'files_encryption', 'settings' ); OCP\App::registerAdmin( 'files_encryption', 'settings' );
OCP\App::registerPersonal( 'files_encryption', 'settings-personal' ); OCP\App::registerPersonal( 'files_encryption', 'settings-personal' );

View file

@ -165,16 +165,6 @@ class Hooks {
* @brief * @brief
*/ */
public static function postShared( $params ) { public static function postShared( $params ) {
// Delete existing catfile
Keymanager::deleteFileKey( );
// Generate new catfile and env keys
Crypt::multiKeyEncrypt( $plainContent, $publicKeys );
// Save env keys to user folders
} }
/** /**

View file

@ -1,38 +0,0 @@
/**
* Copyright (c) 2012, Bjoern Schiessle <schiessle@owncloud.com>
* This file is licensed under the Affero General Public License version 3 or later.
* See the COPYING-README file.
*/
$(document).ready(function(){
$('input[name=encryption_mode]').change(function(){
var prevmode = document.getElementById('prev_encryption_mode').value
var client=$('input[value="client"]:checked').val()
,server=$('input[value="server"]:checked').val()
,user=$('input[value="user"]:checked').val()
,none=$('input[value="none"]:checked').val()
if (client) {
$.post(OC.filePath('files_encryption', 'ajax', 'mode.php'), { mode: 'client' });
if (prevmode == 'server') {
OC.dialogs.info(t('encryption', 'Please switch to your ownCloud client and change your encryption password to complete the conversion.'), t('encryption', 'switched to client side encryption'));
}
} else if (server) {
if (prevmode == 'client') {
OC.dialogs.form([{text:'Login password', name:'newpasswd', type:'password'},{text:'Encryption password used on the client', name:'oldpasswd', type:'password'}],t('encryption', 'Change encryption password to login password'), function(data) {
$.post(OC.filePath('files_encryption', 'ajax', 'mode.php'), { mode: 'server', newpasswd: data[0].value, oldpasswd: data[1].value }, function(result) {
if (result.status != 'success') {
document.getElementById(prevmode+'_encryption').checked = true;
OC.dialogs.alert(t('encryption', 'Please check your passwords and try again.'), t('encryption', 'Could not change your file encryption password to your login password'))
} else {
console.log("alles super");
}
}, true);
});
} else {
$.post(OC.filePath('files_encryption', 'ajax', 'mode.php'), { mode: 'server' });
}
} else {
$.post(OC.filePath('files_encryption', 'ajax', 'mode.php'), { mode: 'none' });
}
})
})

View file

@ -9,38 +9,11 @@ $(document).ready(function(){
$('#encryption_blacklist').multiSelect({ $('#encryption_blacklist').multiSelect({
oncheck:blackListChange, oncheck:blackListChange,
onuncheck:blackListChange, onuncheck:blackListChange,
createText:'...', createText:'...'
}); });
function blackListChange(){ function blackListChange(){
var blackList=$('#encryption_blacklist').val().join(','); var blackList=$('#encryption_blacklist').val().join(',');
OC.AppConfig.setValue('files_encryption','type_blacklist',blackList); OC.AppConfig.setValue('files_encryption','type_blacklist',blackList);
} }
//TODO: Handle switch between client and server side encryption
$('input[name=encryption_mode]').change(function(){
var client=$('input[value="client"]:checked').val()
,server=$('input[value="server"]:checked').val()
,user=$('input[value="user"]:checked').val()
,none=$('input[value="none"]:checked').val()
,disable=false
if (client) {
OC.AppConfig.setValue('files_encryption','mode','client');
disable = true;
} else if (server) {
OC.AppConfig.setValue('files_encryption','mode','server');
disable = true;
} else if (user) {
OC.AppConfig.setValue('files_encryption','mode','user');
disable = true;
} else {
OC.AppConfig.setValue('files_encryption','mode','none');
}
if (disable) {
document.getElementById('server_encryption').disabled = true;
document.getElementById('client_encryption').disabled = true;
document.getElementById('user_encryption').disabled = true;
document.getElementById('none_encryption').disabled = true;
}
})
}) })

View file

@ -5,5 +5,8 @@
"Please check your passwords and try again." => "Veuillez vérifier vos mots de passe et réessayer.", "Please check your passwords and try again." => "Veuillez vérifier vos mots de passe et réessayer.",
"Could not change your file encryption password to your login password" => "Impossible de convertir votre mot de passe de chiffrement en mot de passe de connexion", "Could not change your file encryption password to your login password" => "Impossible de convertir votre mot de passe de chiffrement en mot de passe de connexion",
"Encryption" => "Chiffrement", "Encryption" => "Chiffrement",
"File encryption is enabled." => "Le chiffrement des fichiers est activé",
"The following file types will not be encrypted:" => "Les fichiers de types suivants ne seront pas chiffrés :",
"Exclude the following file types from encryption:" => "Ne pas chiffrer les fichiers dont les types sont les suivants :",
"None" => "Aucun" "None" => "Aucun"
); );

View file

@ -1,5 +1,6 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Please switch to your ownCloud client and change your encryption password to complete the conversion." => "Пожалуйста переключитесь на Ваш клиент ownCloud и поменяйте пароль шиврования для завершения преобразования.", "Please switch to your ownCloud client and change your encryption password to complete the conversion." => "Пожалуйста переключитесь на Ваш клиент ownCloud и поменяйте пароль шиврования для завершения преобразования.",
"switched to client side encryption" => "переключён на шифрование со стороны клиента",
"Change encryption password to login password" => "Изменить пароль шифрования для пароля входа", "Change encryption password to login password" => "Изменить пароль шифрования для пароля входа",
"Please check your passwords and try again." => "Пожалуйста проверьте пароли и попробуйте снова.", "Please check your passwords and try again." => "Пожалуйста проверьте пароли и попробуйте снова.",
"Could not change your file encryption password to your login password" => "Невозможно изменить Ваш пароль файла шифрования для пароля входа", "Could not change your file encryption password to your login password" => "Невозможно изменить Ваш пароль файла шифрования для пароля входа",

View file

@ -5,5 +5,8 @@
"Please check your passwords and try again." => "Skontrolujte si heslo a skúste to znovu.", "Please check your passwords and try again." => "Skontrolujte si heslo a skúste to znovu.",
"Could not change your file encryption password to your login password" => "Nie je možné zmeniť šifrovacie heslo na prihlasovacie", "Could not change your file encryption password to your login password" => "Nie je možné zmeniť šifrovacie heslo na prihlasovacie",
"Encryption" => "Šifrovanie", "Encryption" => "Šifrovanie",
"File encryption is enabled." => "Kryptovanie súborov nastavené.",
"The following file types will not be encrypted:" => "Uvedené typy súborov nebudú kryptované:",
"Exclude the following file types from encryption:" => "Nekryptovať uvedené typy súborov",
"None" => "Žiadne" "None" => "Žiadne"
); );

File diff suppressed because it is too large Load diff

View file

@ -1,325 +1,323 @@
<?php <?php
/** /**
* ownCloud * ownCloud
* *
* @author Bjoern Schiessle * @author Bjoern Schiessle
* @copyright 2012 Bjoern Schiessle <schiessle@owncloud.com> * @copyright 2012 Bjoern Schiessle <schiessle@owncloud.com>
* *
* This library is free software; you can redistribute it and/or * This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
* License as published by the Free Software Foundation; either * License as published by the Free Software Foundation; either
* version 3 of the License, or any later version. * version 3 of the License, or any later version.
* *
* This library is distributed in the hope that it will be useful, * This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU AFFERO GENERAL PUBLIC LICENSE for more details. * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
* *
* You should have received a copy of the GNU Affero General Public * You should have received a copy of the GNU Affero General Public
* License along with this library. If not, see <http://www.gnu.org/licenses/>. * License along with this library. If not, see <http://www.gnu.org/licenses/>.
* *
*/ */
namespace OCA\Encryption; namespace OCA\Encryption;
/** /**
* @brief Class to manage storage and retrieval of encryption keys * @brief Class to manage storage and retrieval of encryption keys
* @note Where a method requires a view object, it's root must be '/' * @note Where a method requires a view object, it's root must be '/'
*/ */
class Keymanager { class Keymanager {
/** /**
* @brief retrieve the ENCRYPTED private key from a user * @brief retrieve the ENCRYPTED private key from a user
* *
* @return string private key or false * @return string private key or false
* @note the key returned by this method must be decrypted before use * @note the key returned by this method must be decrypted before use
*/ */
public static function getPrivateKey( \OC_FilesystemView $view, $user ) { public static function getPrivateKey( \OC_FilesystemView $view, $user ) {
$path = '/' . $user . '/' . 'files_encryption' . '/' . $user.'.private.key'; $path = '/' . $user . '/' . 'files_encryption' . '/' . $user.'.private.key';
$key = $view->file_get_contents( $path ); $key = $view->file_get_contents( $path );
return $key; return $key;
} }
/** /**
* @brief retrieve public key for a specified user * @brief retrieve public key for a specified user
* @return string public key or false * @param \OC_FilesystemView $view
*/ * @param $userId
public static function getPublicKey( \OC_FilesystemView $view, $userId ) { * @return string public key or false
*/
return $view->file_get_contents( '/public-keys/' . '/' . $userId . '.public.key' ); public static function getPublicKey( \OC_FilesystemView $view, $userId ) {
} return $view->file_get_contents( '/public-keys/' . '/' . $userId . '.public.key' );
/** }
* @brief retrieve both keys from a user (private and public)
* @return array keys: privateKey, publicKey /**
*/ * @brief retrieve both keys from a user (private and public)
public static function getUserKeys( \OC_FilesystemView $view, $userId ) { * @param \OC_FilesystemView $view
* @param $userId
return array( * @return array keys: privateKey, publicKey
'publicKey' => self::getPublicKey( $view, $userId ) */
, 'privateKey' => self::getPrivateKey( $view, $userId ) public static function getUserKeys( \OC_FilesystemView $view, $userId ) {
);
return array(
} 'publicKey' => self::getPublicKey( $view, $userId )
, 'privateKey' => self::getPrivateKey( $view, $userId )
/** );
* @brief Retrieve public keys of all users with access to a file
* @param string $path Path to file }
* @return array of public keys for the given file
* @note Checks that the sharing app is enabled should be performed /**
* by client code, that isn't checked here * @brief Retrieve public keys of all users with access to a file
*/ * @param string $path Path to file
public static function getPublicKeys( \OC_FilesystemView $view, $userId, $filePath ) { * @return array of public keys for the given file
* @note Checks that the sharing app is enabled should be performed
$path = ltrim( $path, '/' ); * by client code, that isn't checked here
*/
$filepath = '/' . $userId . '/files/' . $filePath; public static function getPublicKeys( \OC_FilesystemView $view, $userId, $filePath ) {
// Check if sharing is enabled $path = ltrim( $path, '/' );
if ( OC_App::isEnabled( 'files_sharing' ) ) {
$filepath = '/' . $userId . '/files/' . $filePath;
// Check if sharing is enabled
} else { if ( OC_App::isEnabled( 'files_sharing' ) ) {
// check if it is a file owned by the user and not shared at all
$userview = new \OC_FilesystemView( '/'.$userId.'/files/' );
} else {
if ( $userview->file_exists( $path ) ) {
// check if it is a file owned by the user and not shared at all
$users[] = $userId; $userview = new \OC_FilesystemView( '/'.$userId.'/files/' );
} if ( $userview->file_exists( $path ) ) {
} $users[] = $userId;
$view = new \OC_FilesystemView( '/public-keys/' ); }
$keylist = array(); }
$count = 0; $view = new \OC_FilesystemView( '/public-keys/' );
foreach ( $users as $user ) { $keylist = array();
$keylist['key'.++$count] = $view->file_get_contents( $user.'.public.key' ); $count = 0;
} foreach ( $users as $user ) {
return $keylist; $keylist['key'.++$count] = $view->file_get_contents( $user.'.public.key' );
} }
/** return $keylist;
* @brief store file encryption key
* }
* @param string $path relative path of the file, including filename
* @param string $key /**
* @return bool true/false * @brief store file encryption key
* @note The keyfile is not encrypted here. Client code must *
* asymmetrically encrypt the keyfile before passing it to this method * @param string $path relative path of the file, including filename
*/ * @param string $key
public static function setFileKey( \OC_FilesystemView $view, $path, $userId, $catfile ) { * @return bool true/false
* @note The keyfile is not encrypted here. Client code must
$basePath = '/' . $userId . '/files_encryption/keyfiles'; * asymmetrically encrypt the keyfile before passing it to this method
*/
$targetPath = self::keySetPreparation( $view, $path, $basePath, $userId ); public static function setFileKey( \OC_FilesystemView $view, $path, $userId, $catfile ) {
if ( $view->is_dir( $basePath . '/' . $targetPath ) ) { $basePath = '/' . $userId . '/files_encryption/keyfiles';
$targetPath = self::keySetPreparation( $view, $path, $basePath, $userId );
} else { if ( $view->is_dir( $basePath . '/' . $targetPath ) ) {
// Save the keyfile in parallel directory
return $view->file_put_contents( $basePath . '/' . $targetPath . '.key', $catfile );
} else {
}
// Save the keyfile in parallel directory
} return $view->file_put_contents( $basePath . '/' . $targetPath . '.key', $catfile );
/** }
* @brief retrieve keyfile for an encrypted file
* @param string file name }
* @return string file key or false on failure
* @note The keyfile returned is asymmetrically encrypted. Decryption /**
* of the keyfile must be performed by client code * @brief retrieve keyfile for an encrypted file
*/ * @param \OC_FilesystemView $view
public static function getFileKey( \OC_FilesystemView $view, $userId, $filePath ) { * @param $userId
* @param $filePath
$filePath_f = ltrim( $filePath, '/' ); * @internal param \OCA\Encryption\file $string name
* @return string file key or false
$catfilePath = '/' . $userId . '/files_encryption/keyfiles/' . $filePath_f . '.key'; * @note The keyfile returned is asymmetrically encrypted. Decryption
* of the keyfile must be performed by client code
if ( $view->file_exists( $catfilePath ) ) { */
public static function getFileKey( \OC_FilesystemView $view, $userId, $filePath ) {
return $view->file_get_contents( $catfilePath );
$filePath_f = ltrim( $filePath, '/' );
} else {
$catfilePath = '/' . $userId . '/files_encryption/keyfiles/' . $filePath_f . '.key';
return false;
if ( $view->file_exists( $catfilePath ) ) {
}
return $view->file_get_contents( $catfilePath );
}
} else {
/**
* @brief Delete a keyfile return false;
*
* @param OC_FilesystemView $view }
* @param string $userId username
* @param string $path path of the file the key belongs to }
* @return bool Outcome of unlink operation
* @note $path must be relative to data/user/files. e.g. mydoc.txt NOT /**
* /data/admin/files/mydoc.txt * @brief Delete a keyfile
*/ *
public static function deleteFileKey( \OC_FilesystemView $view, $userId, $path ) { * @param OC_FilesystemView $view
* @param string $userId username
$trimmed = ltrim( $path, '/' ); * @param string $path path of the file the key belongs to
$keyPath = '/' . $userId . '/files_encryption/keyfiles/' . $trimmed . '.key'; * @return bool Outcome of unlink operation
* @note $path must be relative to data/user/files. e.g. mydoc.txt NOT
// Unlink doesn't tell us if file was deleted (not found returns * /data/admin/files/mydoc.txt
// true), so we perform our own test */
if ( $view->file_exists( $keyPath ) ) { public static function deleteFileKey( \OC_FilesystemView $view, $userId, $path ) {
return $view->unlink( $keyPath ); $trimmed = ltrim( $path, '/' );
$keyPath = '/' . $userId . '/files_encryption/keyfiles/' . $trimmed . '.key';
} else {
// Unlink doesn't tell us if file was deleted (not found returns
\OC_Log::write( 'Encryption library', 'Could not delete keyfile; does not exist: "' . $keyPath, \OC_Log::ERROR ); // true), so we perform our own test
if ( $view->file_exists( $keyPath ) ) {
return false;
return $view->unlink( $keyPath );
}
} else {
}
\OC_Log::write( 'Encryption library', 'Could not delete keyfile; does not exist: "' . $keyPath, \OC_Log::ERROR );
/**
* @brief store private key from the user return false;
* @param string key
* @return bool }
* @note Encryption of the private key must be performed by client code
* as no encryption takes place here }
*/
public static function setPrivateKey( $key ) { /**
* @brief store private key from the user
$user = \OCP\User::getUser(); * @param string key
* @return bool
$view = new \OC_FilesystemView( '/' . $user . '/files_encryption' ); * @note Encryption of the private key must be performed by client code
* as no encryption takes place here
\OC_FileProxy::$enabled = false; */
public static function setPrivateKey( $key ) {
if ( !$view->file_exists( '' ) ) $view->mkdir( '' );
$user = \OCP\User::getUser();
return $view->file_put_contents( $user . '.private.key', $key );
$view = new \OC_FilesystemView( '/' . $user . '/files_encryption' );
\OC_FileProxy::$enabled = true;
\OC_FileProxy::$enabled = false;
}
if ( !$view->file_exists( '' ) )
/** $view->mkdir( '' );
* @brief store private keys from the user
* return $view->file_put_contents( $user . '.private.key', $key );
* @param string privatekey
* @param string publickey }
* @return bool true/false
*/ /**
public static function setUserKeys($privatekey, $publickey) { * @brief store private keys from the user
*
return ( self::setPrivateKey( $privatekey ) && self::setPublicKey( $publickey ) ); * @param string privatekey
* @param string publickey
} * @return bool true/false
*/
/** public static function setUserKeys($privatekey, $publickey) {
* @brief store public key of the user
* return ( self::setPrivateKey( $privatekey ) && self::setPublicKey( $publickey ) );
* @param string key
* @return bool true/false }
*/
public static function setPublicKey( $key ) { /**
* @brief store public key of the user
$view = new \OC_FilesystemView( '/public-keys' ); *
* @param string key
\OC_FileProxy::$enabled = false; * @return bool true/false
*/
if ( !$view->file_exists( '' ) ) $view->mkdir( '' ); public static function setPublicKey( $key ) {
return $view->file_put_contents( \OCP\User::getUser() . '.public.key', $key ); $view = new \OC_FilesystemView( '/public-keys' );
\OC_FileProxy::$enabled = true; \OC_FileProxy::$enabled = false;
} if ( !$view->file_exists( '' ) )
$view->mkdir( '' );
/**
* @note 'shareKey' is a more user-friendly name for env_key return $view->file_put_contents( \OCP\User::getUser() . '.public.key', $key );
*/
public static function setShareKey( \OC_FilesystemView $view, $path, $userId, $shareKey ) {
}
$basePath = '/' . $userId . '/files_encryption/share-keys';
/**
$shareKeyPath = self::keySetPreparation( $view, $path, $basePath, $userId ); * @brief store file encryption key
*
return $view->file_put_contents( $basePath . '/' . $shareKeyPath . '.shareKey', $shareKey ); * @param string $path relative path of the file, including filename
* @param string $key
} * @param null $view
* @param string $dbClassName
/** * @return bool true/false
* @brief Make preparations to vars and filesystem for saving a keyfile * @note The keyfile is not encrypted here. Client code must
*/ * asymmetrically encrypt the keyfile before passing it to this method
public static function keySetPreparation( \OC_FilesystemView $view, $path, $basePath, $userId ) { */
public static function setShareKey( \OC_FilesystemView $view, $path, $userId, $shareKey ) {
$targetPath = ltrim( $path, '/' );
$basePath = '/' . $userId . '/files_encryption/share-keys';
$path_parts = pathinfo( $targetPath );
$shareKeyPath = self::keySetPreparation( $view, $path, $basePath, $userId );
// If the file resides within a subdirectory, create it
if ( return $view->file_put_contents( $basePath . '/' . $shareKeyPath . '.shareKey', $shareKey );
isset( $path_parts['dirname'] )
&& ! $view->file_exists( $basePath . '/' . $path_parts['dirname'] ) }
) {
/**
$view->mkdir( $basePath . '/' . $path_parts['dirname'] ); * @brief Make preparations to vars and filesystem for saving a keyfile
*/
} public static function keySetPreparation( \OC_FilesystemView $view, $path, $basePath, $userId ) {
return $targetPath; $targetPath = ltrim( $path, '/' );
} $path_parts = pathinfo( $targetPath );
/** // If the file resides within a subdirectory, create it
* @brief change password of private encryption key if (
* isset( $path_parts['dirname'] )
* @param string $oldpasswd old password && ! $view->file_exists( $basePath . '/' . $path_parts['dirname'] )
* @param string $newpasswd new password ) {
* @return bool true/false
*/ $view->mkdir( $basePath . '/' . $path_parts['dirname'] );
public static function changePasswd($oldpasswd, $newpasswd) {
}
if ( \OCP\User::checkPassword(\OCP\User::getUser(), $newpasswd) ) {
return Crypt::changekeypasscode($oldpasswd, $newpasswd); return $targetPath;
}
return false; }
} /**
* @brief Fetch the legacy encryption key from user files
/** * @param string $login used to locate the legacy key
* @brief Fetch the legacy encryption key from user files * @param string $passphrase used to decrypt the legacy key
* @param string $login used to locate the legacy key * @return true / false
* @param string $passphrase used to decrypt the legacy key *
* @return true / false * if the key is left out, the default handler will be used
* */
* if the key is left out, the default handeler will be used public function getLegacyKey() {
*/
public function getLegacyKey() { $user = \OCP\User::getUser();
$view = new \OC_FilesystemView( '/' . $user );
$user = \OCP\User::getUser(); return $view->file_get_contents( 'encryption.key' );
$view = new \OC_FilesystemView( '/' . $user );
return $view->file_get_contents( 'encryption.key' ); }
}
} }

View file

@ -173,7 +173,7 @@ class Stream {
// $count will always be 8192 https://bugs.php.net/bug.php?id=21641 // $count will always be 8192 https://bugs.php.net/bug.php?id=21641
// This makes this function a lot simpler, but will break this class if the above 'bug' gets 'fixed' // This makes this function a lot simpler, but will break this class if the above 'bug' gets 'fixed'
\OCP\Util::writeLog( 'files_encryption', 'PHP "bug" 21641 no longer holds, decryption system requires refactoring', OCP\Util::FATAL ); \OCP\Util::writeLog( 'files_encryption', 'PHP "bug" 21641 no longer holds, decryption system requires refactoring', \OCP\Util::FATAL );
die(); die();
@ -209,7 +209,7 @@ class Stream {
} }
/** /**
* @brief Encrypt and pad data ready for writting to disk * @brief Encrypt and pad data ready for writing to disk
* @param string $plainData data to be encrypted * @param string $plainData data to be encrypted
* @param string $key key to use for encryption * @param string $key key to use for encryption
* @return encrypted data on success, false on failure * @return encrypted data on success, false on failure
@ -403,7 +403,7 @@ class Stream {
$encrypted = $this->preWriteEncrypt( $chunk, $this->keyfile ); $encrypted = $this->preWriteEncrypt( $chunk, $this->keyfile );
// Write the data chunk to disk. This will be // Write the data chunk to disk. This will be
// addended to the last data chunk if the file // attended to the last data chunk if the file
// being handled totals more than 6126 bytes // being handled totals more than 6126 bytes
fwrite( $this->handle, $encrypted ); fwrite( $this->handle, $encrypted );

View file

@ -12,8 +12,6 @@ $blackList = explode( ',', \OCP\Config::getAppValue( 'files_encryption', 'type_b
$tmpl->assign( 'blacklist', $blackList ); $tmpl->assign( 'blacklist', $blackList );
OCP\Util::addscript('files_encryption','settings-personal');
return $tmpl->fetchPage(); return $tmpl->fetchPage();
return null; return null;

View file

@ -16,7 +16,7 @@
<?php echo $type; ?> <?php echo $type; ?>
</li> </li>
<?php endforeach; ?> <?php endforeach; ?>
</p> </ul>
<?php endif; ?> <?php endif; ?>
</fieldset> </fieldset>
</form> </form>

View file

@ -1,4 +1,6 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Couldn't delete %s permanently" => "No s'ha pogut esborrar permanentment %s",
"Couldn't restore %s" => "No s'ha pogut restaurar %s",
"perform restore operation" => "executa l'operació de restauració", "perform restore operation" => "executa l'operació de restauració",
"delete file permanently" => "esborra el fitxer permanentment", "delete file permanently" => "esborra el fitxer permanentment",
"Name" => "Nom", "Name" => "Nom",

View file

@ -1,4 +1,6 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Couldn't delete %s permanently" => "Nelze trvale odstranit %s",
"Couldn't restore %s" => "Nelze obnovit %s",
"perform restore operation" => "provést obnovu", "perform restore operation" => "provést obnovu",
"delete file permanently" => "trvale odstranit soubor", "delete file permanently" => "trvale odstranit soubor",
"Name" => "Název", "Name" => "Název",

View file

@ -1,5 +1,8 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Couldn't delete %s permanently" => "No se puede eliminar %s permanentemente",
"Couldn't restore %s" => "No se puede restaurar %s",
"perform restore operation" => "Restaurar", "perform restore operation" => "Restaurar",
"delete file permanently" => "Eliminar archivo permanentemente",
"Name" => "Nombre", "Name" => "Nombre",
"Deleted" => "Eliminado", "Deleted" => "Eliminado",
"1 folder" => "1 carpeta", "1 folder" => "1 carpeta",

View file

@ -1,5 +1,8 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Couldn't delete %s permanently" => "Impossible d'effacer %s de façon permanente",
"Couldn't restore %s" => "Impossible de restaurer %s",
"perform restore operation" => "effectuer l'opération de restauration", "perform restore operation" => "effectuer l'opération de restauration",
"delete file permanently" => "effacer définitivement le fichier",
"Name" => "Nom", "Name" => "Nom",
"Deleted" => "Effacé", "Deleted" => "Effacé",
"1 folder" => "1 dossier", "1 folder" => "1 dossier",

View file

@ -1,4 +1,6 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Couldn't delete %s permanently" => "Impossibile eliminare %s definitivamente",
"Couldn't restore %s" => "Impossibile ripristinare %s",
"perform restore operation" => "esegui operazione di ripristino", "perform restore operation" => "esegui operazione di ripristino",
"delete file permanently" => "elimina il file definitivamente", "delete file permanently" => "elimina il file definitivamente",
"Name" => "Nome", "Name" => "Nome",

View file

@ -1,4 +1,6 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Couldn't delete %s permanently" => "%s を完全に削除出来ませんでした",
"Couldn't restore %s" => "%s を復元出来ませんでした",
"perform restore operation" => "復元操作を実行する", "perform restore operation" => "復元操作を実行する",
"delete file permanently" => "ファイルを完全に削除する", "delete file permanently" => "ファイルを完全に削除する",
"Name" => "名前", "Name" => "名前",

View file

@ -1,4 +1,6 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Couldn't delete %s permanently" => "Nevarēja pilnībā izdzēst %s",
"Couldn't restore %s" => "Nevarēja atjaunot %s",
"perform restore operation" => "veikt atjaunošanu", "perform restore operation" => "veikt atjaunošanu",
"delete file permanently" => "dzēst datni pavisam", "delete file permanently" => "dzēst datni pavisam",
"Name" => "Nosaukums", "Name" => "Nosaukums",

View file

@ -1,4 +1,6 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Couldn't delete %s permanently" => "%s не может быть удалён навсегда",
"Couldn't restore %s" => "%s не может быть восстановлен",
"perform restore operation" => "выполнить операцию восстановления", "perform restore operation" => "выполнить операцию восстановления",
"delete file permanently" => "удалить файл навсегда", "delete file permanently" => "удалить файл навсегда",
"Name" => "Имя", "Name" => "Имя",

View file

@ -3,5 +3,6 @@
"1 folder" => "1 папка", "1 folder" => "1 папка",
"{count} folders" => "{количество} папок", "{count} folders" => "{количество} папок",
"1 file" => "1 файл", "1 file" => "1 файл",
"{count} files" => "{количество} файлов" "{count} files" => "{количество} файлов",
"Restore" => "Восстановить"
); );

View file

@ -1,5 +1,7 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Couldn't restore %s" => "Nemožno obnoviť %s",
"perform restore operation" => "vykonať obnovu", "perform restore operation" => "vykonať obnovu",
"delete file permanently" => "trvalo zmazať súbor",
"Name" => "Meno", "Name" => "Meno",
"Deleted" => "Zmazané", "Deleted" => "Zmazané",
"1 folder" => "1 priečinok", "1 folder" => "1 priečinok",

View file

@ -1,5 +1,13 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not revert: %s" => "No s'ha pogut revertir: %s",
"success" => "èxit",
"File %s was reverted to version %s" => "El fitxer %s s'ha revertit a la versió %s",
"failure" => "fallada",
"File %s could not be reverted to version %s" => "El fitxer %s no s'ha pogut revertir a la versió %s",
"No old versions available" => "No hi ha versións antigues disponibles",
"No path specified" => "No heu especificat el camí",
"History" => "Historial", "History" => "Historial",
"Revert a file to a previous version by clicking on its revert button" => "Reverteix un fitxer a una versió anterior fent clic en el seu botó de reverteix",
"Files Versioning" => "Fitxers de Versions", "Files Versioning" => "Fitxers de Versions",
"Enable" => "Habilita" "Enable" => "Habilita"
); );

View file

@ -1,5 +1,13 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not revert: %s" => "Nelze navrátit: %s",
"success" => "úspěch",
"File %s was reverted to version %s" => "Soubor %s byl navrácen na verzi %s",
"failure" => "sehlhání",
"File %s could not be reverted to version %s" => "Soubor %s nemohl být navrácen na verzi %s",
"No old versions available" => "Nejsou dostupné žádné starší verze",
"No path specified" => "Nezadána cesta",
"History" => "Historie", "History" => "Historie",
"Revert a file to a previous version by clicking on its revert button" => "Navraťte soubor do předchozí verze kliknutím na tlačítko navrátit",
"Files Versioning" => "Verzování souborů", "Files Versioning" => "Verzování souborů",
"Enable" => "Povolit" "Enable" => "Povolit"
); );

View file

@ -1,4 +1,8 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"success" => "Erfolgreich",
"failure" => "Fehlgeschlagen",
"No old versions available" => "keine älteren Versionen verfügbar",
"No path specified" => "Kein Pfad angegeben",
"History" => "Historie", "History" => "Historie",
"Files Versioning" => "Dateiversionierung", "Files Versioning" => "Dateiversionierung",
"Enable" => "Aktivieren" "Enable" => "Aktivieren"

View file

@ -1,5 +1,13 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not revert: %s" => "No se puede revertir: %s",
"success" => "exitoso",
"File %s was reverted to version %s" => "El archivo %s fue revertido a la version %s",
"failure" => "fallo",
"File %s could not be reverted to version %s" => "El archivo %s no puede ser revertido a la version %s",
"No old versions available" => "No hay versiones antiguas disponibles",
"No path specified" => "Ruta no especificada",
"History" => "Historial", "History" => "Historial",
"Revert a file to a previous version by clicking on its revert button" => "Revertir un archivo a una versión anterior haciendo clic en el boton de revertir",
"Files Versioning" => "Versionado de archivos", "Files Versioning" => "Versionado de archivos",
"Enable" => "Habilitar" "Enable" => "Habilitar"
); );

View file

@ -1,5 +1,13 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not revert: %s" => "Impossible de restaurer %s",
"success" => "succès",
"File %s was reverted to version %s" => "Le fichier %s a été restauré dans sa version %s",
"failure" => "échec",
"File %s could not be reverted to version %s" => "Le fichier %s ne peut être restauré dans sa version %s",
"No old versions available" => "Aucune ancienne version n'est disponible",
"No path specified" => "Aucun chemin spécifié",
"History" => "Historique", "History" => "Historique",
"Revert a file to a previous version by clicking on its revert button" => "Restaurez un fichier dans une version antérieure en cliquant sur son bouton de restauration",
"Files Versioning" => "Versionnage des fichiers", "Files Versioning" => "Versionnage des fichiers",
"Enable" => "Activer" "Enable" => "Activer"
); );

View file

@ -1,5 +1,13 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not revert: %s" => "Impossibild ripristinare: %s",
"success" => "completata",
"File %s was reverted to version %s" => "Il file %s è stato ripristinato alla versione %s",
"failure" => "non riuscita",
"File %s could not be reverted to version %s" => "Il file %s non può essere ripristinato alla versione %s",
"No old versions available" => "Non sono disponibili versioni precedenti",
"No path specified" => "Nessun percorso specificato",
"History" => "Cronologia", "History" => "Cronologia",
"Revert a file to a previous version by clicking on its revert button" => "Ripristina un file a una versione precedente facendo clic sul rispettivo pulsante di ripristino",
"Files Versioning" => "Controllo di versione dei file", "Files Versioning" => "Controllo di versione dei file",
"Enable" => "Abilita" "Enable" => "Abilita"
); );

View file

@ -1,5 +1,13 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not revert: %s" => "元に戻せませんでした: %s",
"success" => "成功",
"File %s was reverted to version %s" => "ファイル %s をバージョン %s に戻しました",
"failure" => "失敗",
"File %s could not be reverted to version %s" => "ファイル %s をバージョン %s に戻せませんでした",
"No old versions available" => "利用可能な古いバージョンはありません",
"No path specified" => "パスが指定されていません",
"History" => "履歴", "History" => "履歴",
"Revert a file to a previous version by clicking on its revert button" => "もとに戻すボタンをクリックすると、ファイルを過去のバージョンに戻します",
"Files Versioning" => "ファイルのバージョン管理", "Files Versioning" => "ファイルのバージョン管理",
"Enable" => "有効化" "Enable" => "有効化"
); );

View file

@ -1,5 +1,13 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not revert: %s" => "Nevarēja atgriezt — %s",
"success" => "veiksme",
"File %s was reverted to version %s" => "Datne %s tika atgriezt uz versiju %s",
"failure" => "neveiksme",
"File %s could not be reverted to version %s" => "Datni %s nevarēja atgriezt uz versiju %s",
"No old versions available" => "Nav pieejamu vecāku versiju",
"No path specified" => "Nav norādīts ceļš",
"History" => "Vēsture", "History" => "Vēsture",
"Revert a file to a previous version by clicking on its revert button" => "Atgriez datni uz iepriekšēju versiju, spiežot uz tās atgriešanas pogu",
"Files Versioning" => "Datņu versiju izskošana", "Files Versioning" => "Datņu versiju izskošana",
"Enable" => "Aktivēt" "Enable" => "Aktivēt"
); );

View file

@ -1,5 +1,13 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not revert: %s" => "Не может быть возвращён: %s",
"success" => "успех",
"File %s was reverted to version %s" => "Файл %s был возвращён к версии %s",
"failure" => "провал",
"File %s could not be reverted to version %s" => "Файл %s не может быть возвращён к версии %s",
"No old versions available" => "Нет доступных старых версий",
"No path specified" => "Путь не указан",
"History" => "История", "History" => "История",
"Revert a file to a previous version by clicking on its revert button" => "Вернуть файл к предыдущей версии нажатием на кнопку возврата",
"Files Versioning" => "Версии файлов", "Files Versioning" => "Версии файлов",
"Enable" => "Включить" "Enable" => "Включить"
); );

View file

@ -1,4 +1,9 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"success" => "uspech",
"File %s was reverted to version %s" => "Subror %s bol vrateny na verziu %s",
"failure" => "chyba",
"No old versions available" => "Nie sú dostupné žiadne staršie verzie",
"No path specified" => "Nevybrali ste cestu",
"History" => "História", "History" => "História",
"Files Versioning" => "Vytváranie verzií súborov", "Files Versioning" => "Vytváranie verzií súborov",
"Enable" => "Zapnúť" "Enable" => "Zapnúť"

View file

@ -43,6 +43,7 @@
"Disable Main Server" => "Desactiva el servidor principal", "Disable Main Server" => "Desactiva el servidor principal",
"When switched on, ownCloud will only connect to the replica server." => "Quan està connectat, ownCloud només es connecta al servidor de la rèplica.", "When switched on, ownCloud will only connect to the replica server." => "Quan està connectat, ownCloud només es connecta al servidor de la rèplica.",
"Use TLS" => "Usa TLS", "Use TLS" => "Usa TLS",
"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)", "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.", "Turn off SSL certificate validation." => "Desactiva la validació de certificat SSL.",
"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Si la connexió només funciona amb aquesta opció, importeu el certificat SSL del servidor LDAP en el vostre servidor ownCloud.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Si la connexió només funciona amb aquesta opció, importeu el certificat SSL del servidor LDAP en el vostre servidor ownCloud.",

View file

@ -43,6 +43,7 @@
"Disable Main Server" => "Zakázat hlavní serveru", "Disable Main Server" => "Zakázat hlavní serveru",
"When switched on, ownCloud will only connect to the replica server." => "Při zapnutí se ownCloud připojí pouze k záložnímu serveru", "When switched on, ownCloud will only connect to the replica server." => "Při zapnutí se ownCloud připojí pouze k záložnímu serveru",
"Use TLS" => "Použít TLS", "Use TLS" => "Použít TLS",
"Do not use it additionally for LDAPS connections, it will fail." => "Nepoužívejte pro spojení LDAP, selže.",
"Case insensitve LDAP server (Windows)" => "LDAP server nerozlišující velikost znaků (Windows)", "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.", "Turn off SSL certificate validation." => "Vypnout ověřování SSL certifikátu.",
"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Pokud připojení pracuje pouze s touto možností, tak importujte SSL certifikát SSL serveru do Vašeho serveru ownCloud", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Pokud připojení pracuje pouze s touto možností, tak importujte SSL certifikát SSL serveru do Vašeho serveru ownCloud",

View file

@ -43,6 +43,7 @@
"Disable Main Server" => "Deshabilitar servidor principal", "Disable Main Server" => "Deshabilitar servidor principal",
"When switched on, ownCloud will only connect to the replica server." => "Cuando se inicie, ownCloud unicamente estara conectado al servidor replica", "When switched on, ownCloud will only connect to the replica server." => "Cuando se inicie, ownCloud unicamente estara conectado al servidor replica",
"Use TLS" => "Usar TLS", "Use TLS" => "Usar TLS",
"Do not use it additionally for LDAPS connections, it will fail." => "No usar adicionalmente para conecciones LDAPS, estas fallaran",
"Case insensitve LDAP server (Windows)" => "Servidor de LDAP sensible a mayúsculas/minúsculas (Windows)", "Case insensitve LDAP server (Windows)" => "Servidor de LDAP sensible a mayúsculas/minúsculas (Windows)",
"Turn off SSL certificate validation." => "Apagar la validación por certificado SSL.", "Turn off SSL certificate validation." => "Apagar la validación por certificado SSL.",
"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Si la conexión sólo funciona con esta opción, importe el certificado SSL del servidor LDAP en su servidor ownCloud.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Si la conexión sólo funciona con esta opción, importe el certificado SSL del servidor LDAP en su servidor ownCloud.",

View file

@ -43,6 +43,7 @@
"Disable Main Server" => "Désactiver le serveur principal", "Disable Main Server" => "Désactiver le serveur principal",
"When switched on, ownCloud will only connect to the replica server." => "Lorsqu'activé, ownCloud ne se connectera qu'au serveur répliqué.", "When switched on, ownCloud will only connect to the replica server." => "Lorsqu'activé, ownCloud ne se connectera qu'au serveur répliqué.",
"Use TLS" => "Utiliser TLS", "Use TLS" => "Utiliser TLS",
"Do not use it additionally for LDAPS connections, it will fail." => "À ne pas utiliser pour les connexions LDAPS (cela échouera).",
"Case insensitve LDAP server (Windows)" => "Serveur LDAP insensible à la casse (Windows)", "Case insensitve LDAP server (Windows)" => "Serveur LDAP insensible à la casse (Windows)",
"Turn off SSL certificate validation." => "Désactiver la validation du certificat SSL.", "Turn off SSL certificate validation." => "Désactiver la validation du certificat SSL.",
"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Si la connexion ne fonctionne qu'avec cette option, importez le certificat SSL du serveur LDAP dans le serveur ownCloud.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Si la connexion ne fonctionne qu'avec cette option, importez le certificat SSL du serveur LDAP dans le serveur ownCloud.",

View file

@ -43,6 +43,7 @@
"Disable Main Server" => "Disabilita server principale", "Disable Main Server" => "Disabilita server principale",
"When switched on, ownCloud will only connect to the replica server." => "Se abilitata, ownCloud si collegherà solo al server di replica.", "When switched on, ownCloud will only connect to the replica server." => "Se abilitata, ownCloud si collegherà solo al server di replica.",
"Use TLS" => "Usa TLS", "Use TLS" => "Usa TLS",
"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)", "Case insensitve LDAP server (Windows)" => "Case insensitve LDAP server (Windows)",
"Turn off SSL certificate validation." => "Disattiva il controllo del certificato SSL.", "Turn off SSL certificate validation." => "Disattiva il controllo del certificato SSL.",
"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Se la connessione funziona esclusivamente con questa opzione, importa il certificato SSL del server LDAP nel tuo server ownCloud.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Se la connessione funziona esclusivamente con questa opzione, importa il certificato SSL del server LDAP nel tuo server ownCloud.",

View file

@ -43,6 +43,7 @@
"Disable Main Server" => "メインサーバを無効にする", "Disable Main Server" => "メインサーバを無効にする",
"When switched on, ownCloud will only connect to the replica server." => "有効にすると、ownCloudはレプリカサーバにのみ接続します。", "When switched on, ownCloud will only connect to the replica server." => "有効にすると、ownCloudはレプリカサーバにのみ接続します。",
"Use TLS" => "TLSを利用", "Use TLS" => "TLSを利用",
"Do not use it additionally for LDAPS connections, it will fail." => "LDAPS接続のために追加でそれを利用しないで下さい。失敗します。",
"Case insensitve LDAP server (Windows)" => "大文字小文字を区別しないLDAPサーバWindows", "Case insensitve LDAP server (Windows)" => "大文字小文字を区別しないLDAPサーバWindows",
"Turn off SSL certificate validation." => "SSL証明書の確認を無効にする。", "Turn off SSL certificate validation." => "SSL証明書の確認を無効にする。",
"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "接続がこのオプションでのみ動作する場合は、LDAPサーバのSSL証明書をownCloudサーバにインポートしてください。", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "接続がこのオプションでのみ動作する場合は、LDAPサーバのSSL証明書をownCloudサーバにインポートしてください。",

View file

@ -43,6 +43,7 @@
"Disable Main Server" => "Deaktivēt galveno serveri", "Disable Main Server" => "Deaktivēt galveno serveri",
"When switched on, ownCloud will only connect to the replica server." => "Kad ieslēgts, ownCloud savienosies tikai ar kopijas serveri.", "When switched on, ownCloud will only connect to the replica server." => "Kad ieslēgts, ownCloud savienosies tikai ar kopijas serveri.",
"Use TLS" => "Lietot TLS", "Use TLS" => "Lietot TLS",
"Do not use it additionally for LDAPS connections, it will fail." => "Neizmanto papildu LDAPS savienojumus! Tas nestrādās.",
"Case insensitve LDAP server (Windows)" => "Reģistrnejutīgs LDAP serveris (Windows)", "Case insensitve LDAP server (Windows)" => "Reģistrnejutīgs LDAP serveris (Windows)",
"Turn off SSL certificate validation." => "Izslēgt SSL sertifikātu validēšanu.", "Turn off SSL certificate validation." => "Izslēgt SSL sertifikātu validēšanu.",
"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Ja savienojums darbojas ar šo opciju, importē LDAP serveru SSL sertifikātu savā ownCloud serverī.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Ja savienojums darbojas ar šo opciju, importē LDAP serveru SSL sertifikātu savā ownCloud serverī.",

View file

@ -22,6 +22,7 @@
*/ */
$app = $_POST["app"]; $app = $_POST["app"];
$app = OC_App::cleanAppId($app);
$l = OC_L10N::get( $app ); $l = OC_L10N::get( $app );

View file

@ -210,6 +210,7 @@ fieldset.warning {
border-radius:5px; border-radius:5px;
} }
fieldset.warning legend { color:#b94a48 !important; } fieldset.warning legend { color:#b94a48 !important; }
fieldset.warning a { color:#b94a48 !important; font-weight:bold; }
/* Alternative Logins */ /* Alternative Logins */
#alternative-logins legend { margin-bottom:10px; } #alternative-logins legend { margin-bottom:10px; }
@ -219,14 +220,14 @@ fieldset.warning legend { color:#b94a48 !important; }
/* NAVIGATION ------------------------------------------------------------- */ /* NAVIGATION ------------------------------------------------------------- */
#navigation { #navigation {
position:fixed; top:3.5em; float:left; width:64px; padding:0; z-index:75; height:100%; position:fixed; top:3.5em; float:left; width:64px; padding:0; z-index:75; height:100%;
background:#30343a url('../img/noise.png') repeat; border-right:1px #333 solid; background:#383c43 url('../img/noise.png') repeat; border-right:1px #333 solid;
-moz-box-shadow:0 0 7px #000; -webkit-box-shadow:0 0 7px #000; box-shadow:0 0 7px #000; -moz-box-shadow:0 0 7px #000; -webkit-box-shadow:0 0 7px #000; box-shadow:0 0 7px #000;
overflow-x:scroll; overflow-x:scroll;
} }
#navigation a { #navigation a {
display:block; padding:8px 0 4px; display:block; padding:8px 0 4px;
text-decoration:none; font-size:10px; text-align:center; text-decoration:none; font-size:10px; text-align:center;
color:#fff; text-shadow:#000 0 -1px 0; opacity:.4; color:#fff; text-shadow:#000 0 -1px 0; opacity:.5;
white-space:nowrap; overflow:hidden; text-overflow:ellipsis; // ellipsize long app names white-space:nowrap; overflow:hidden; text-overflow:ellipsis; // ellipsize long app names
} }
#navigation a:hover, #navigation a:focus { opacity:.8; } #navigation a:hover, #navigation a:focus { opacity:.8; }
@ -318,6 +319,8 @@ a.bookmarklet { background-color:#ddd; border:1px solid #ccc; padding:5px;paddin
.arrow.left { left:-13px; bottom:1.2em; -webkit-transform:rotate(270deg); -moz-transform:rotate(270deg); -o-transform:rotate(270deg); -ms-transform:rotate(270deg); transform:rotate(270deg); } .arrow.left { left:-13px; bottom:1.2em; -webkit-transform:rotate(270deg); -moz-transform:rotate(270deg); -o-transform:rotate(270deg); -ms-transform:rotate(270deg); transform:rotate(270deg); }
.arrow.up { top:-8px; right:2em; } .arrow.up { top:-8px; right:2em; }
.arrow.down { -webkit-transform:rotate(180deg); -moz-transform:rotate(180deg); -o-transform:rotate(180deg); -ms-transform:rotate(180deg); transform:rotate(180deg); } .arrow.down { -webkit-transform:rotate(180deg); -moz-transform:rotate(180deg); -o-transform:rotate(180deg); -ms-transform:rotate(180deg); transform:rotate(180deg); }
.help-includes {overflow: hidden; width: 100%; height: 100%; -moz-box-sizing: border-box; box-sizing: border-box; padding-top: 2.8em; }
.help-iframe {width: 100%; height: 100%; margin: 0;padding: 0; border: 0; overflow: auto;}
/* ---- BREADCRUMB ---- */ /* ---- BREADCRUMB ---- */
div.crumb { float:left; display:block; background:url('../img/breadcrumb.svg') no-repeat right 0; padding:.75em 1.5em 0 1em; height:2.9em; } div.crumb { float:left; display:block; background:url('../img/breadcrumb.svg') no-repeat right 0; padding:.75em 1.5em 0 1em; height:2.9em; }

Binary file not shown.

After

Width:  |  Height:  |  Size: 464 B

View file

@ -8,7 +8,9 @@
var oc_debug; var oc_debug;
var oc_webroot; var oc_webroot;
var oc_requesttoken; var oc_requesttoken;
oc_webroot = oc_webroot || location.pathname.substr(0, location.pathname.lastIndexOf('/')); if (typeof oc_webroot === "undefined") {
oc_webroot = location.pathname.substr(0, location.pathname.lastIndexOf('/'));
}
if (oc_debug !== true || typeof console === "undefined" || typeof console.log === "undefined") { if (oc_debug !== true || typeof console === "undefined" || typeof console.log === "undefined") {
if (!window.console) { if (!window.console) {
window.console = {}; window.console = {};

View file

@ -185,10 +185,10 @@ OC.Share={
html += '<input id="linkPassText" type="password" placeholder="'+t('core', 'Password')+'" />'; html += '<input id="linkPassText" type="password" placeholder="'+t('core', 'Password')+'" />';
html += '</div>'; html += '</div>';
html += '</div>'; html += '</div>';
html += '<form id="emailPrivateLink" >'; html += '<form id="emailPrivateLink" >';
html += '<input id="email" style="display:none; width:65%;" value="" placeholder="'+t('core', 'Email link to person')+'" type="text" />'; html += '<input id="email" style="display:none; width:65%;" value="" placeholder="'+t('core', 'Email link to person')+'" type="text" />';
html += '<input id="emailButton" style="display:none; float:right;" type="submit" value="'+t('core', 'Send')+'" />'; html += '<input id="emailButton" style="display:none; float:right;" type="submit" value="'+t('core', 'Send')+'" />';
html += '</form>'; html += '</form>';
} }
html += '<div id="expiration">'; html += '<div id="expiration">';
html += '<input type="checkbox" name="expirationCheckbox" id="expirationCheckbox" value="1" /><label for="expirationCheckbox">'+t('core', 'Set expiration date')+'</label>'; html += '<input type="checkbox" name="expirationCheckbox" id="expirationCheckbox" value="1" /><label for="expirationCheckbox">'+t('core', 'Set expiration date')+'</label>';
@ -373,18 +373,18 @@ OC.Share={
$('#linkPassText').attr('placeholder', t('core', 'Password protected')); $('#linkPassText').attr('placeholder', t('core', 'Password protected'));
} }
$('#expiration').show(); $('#expiration').show();
$('#emailPrivateLink #email').show(); $('#emailPrivateLink #email').show();
$('#emailPrivateLink #emailButton').show(); $('#emailPrivateLink #emailButton').show();
}, },
hideLink:function() { hideLink:function() {
$('#linkText').hide('blind'); $('#linkText').hide('blind');
$('#showPassword').hide(); $('#showPassword').hide();
$('#showPassword+label').hide(); $('#showPassword+label').hide();
$('#linkPass').hide(); $('#linkPass').hide();
$('#emailPrivateLink #email').hide(); $('#emailPrivateLink #email').hide();
$('#emailPrivateLink #emailButton').hide(); $('#emailPrivateLink #emailButton').hide();
}, },
dirname:function(path) { dirname:function(path) {
return path.replace(/\\/g,'/').replace(/\/[^\/]*$/, ''); return path.replace(/\\/g,'/').replace(/\/[^\/]*$/, '');
}, },
showExpirationDate:function(date) { showExpirationDate:function(date) {
@ -401,16 +401,16 @@ OC.Share={
$(document).ready(function() { $(document).ready(function() {
if(typeof monthNames != 'undefined'){ if(typeof monthNames != 'undefined'){
$.datepicker.setDefaults({ $.datepicker.setDefaults({
monthNames: monthNames, monthNames: monthNames,
monthNamesShort: $.map(monthNames, function(v) { return v.slice(0,3)+'.'; }), monthNamesShort: $.map(monthNames, function(v) { return v.slice(0,3)+'.'; }),
dayNames: dayNames, dayNames: dayNames,
dayNamesMin: $.map(dayNames, function(v) { return v.slice(0,2); }), dayNamesMin: $.map(dayNames, function(v) { return v.slice(0,2); }),
dayNamesShort: $.map(dayNames, function(v) { return v.slice(0,3)+'.'; }), dayNamesShort: $.map(dayNames, function(v) { return v.slice(0,3)+'.'; }),
firstDay: firstDay firstDay: firstDay
}); });
} }
$('#fileList').on('click', 'a.share', function(event) { $(document).on('click', 'a.share', function(event) {
event.stopPropagation(); event.stopPropagation();
if ($(this).data('item-type') !== undefined && $(this).data('item') !== undefined) { if ($(this).data('item-type') !== undefined && $(this).data('item') !== undefined) {
var itemType = $(this).data('item-type'); var itemType = $(this).data('item-type');
@ -444,12 +444,12 @@ $(document).ready(function() {
} }
}); });
$('#fileList').on('mouseenter', '#dropdown #shareWithList li', function(event) { $(document).on('mouseenter', '#dropdown #shareWithList li', function(event) {
// Show permissions and unshare button // Show permissions and unshare button
$(':hidden', this).filter(':not(.cruds)').show(); $(':hidden', this).filter(':not(.cruds)').show();
}); });
$('#fileList').on('mouseleave', '#dropdown #shareWithList li', function(event) { $(document).on('mouseleave', '#dropdown #shareWithList li', function(event) {
// Hide permissions and unshare button // Hide permissions and unshare button
if (!$('.cruds', this).is(':visible')) { if (!$('.cruds', this).is(':visible')) {
$('a', this).hide(); $('a', this).hide();
@ -462,11 +462,11 @@ $(document).ready(function() {
} }
}); });
$('#fileList').on('click', '#dropdown .showCruds', function() { $(document).on('click', '#dropdown .showCruds', function() {
$(this).parent().find('.cruds').toggle(); $(this).parent().find('.cruds').toggle();
}); });
$('#fileList').on('click', '#dropdown .unshare', function() { $(document).on('click', '#dropdown .unshare', function() {
var li = $(this).parent(); var li = $(this).parent();
var itemType = $('#dropdown').data('item-type'); var itemType = $('#dropdown').data('item-type');
var itemSource = $('#dropdown').data('item-source'); var itemSource = $('#dropdown').data('item-source');
@ -483,7 +483,7 @@ $(document).ready(function() {
}); });
}); });
$('#fileList').on('change', '#dropdown .permissions', function() { $(document).on('change', '#dropdown .permissions', function() {
if ($(this).attr('name') == 'edit') { if ($(this).attr('name') == 'edit') {
var li = $(this).parent().parent() var li = $(this).parent().parent()
var checkboxes = $('.permissions', li); var checkboxes = $('.permissions', li);
@ -496,10 +496,17 @@ $(document).ready(function() {
var li = $(this).parent().parent().parent(); var li = $(this).parent().parent().parent();
var checkboxes = $('.permissions', li); var checkboxes = $('.permissions', li);
// Uncheck Edit if Create, Update, and Delete are not checked // Uncheck Edit if Create, Update, and Delete are not checked
if (!$(this).is(':checked') && !$(checkboxes).filter('input[name="create"]').is(':checked') && !$(checkboxes).filter('input[name="update"]').is(':checked') && !$(checkboxes).filter('input[name="delete"]').is(':checked')) { if (!$(this).is(':checked')
&& !$(checkboxes).filter('input[name="create"]').is(':checked')
&& !$(checkboxes).filter('input[name="update"]').is(':checked')
&& !$(checkboxes).filter('input[name="delete"]').is(':checked'))
{
$(checkboxes).filter('input[name="edit"]').attr('checked', false); $(checkboxes).filter('input[name="edit"]').attr('checked', false);
// Check Edit if Create, Update, or Delete is checked // Check Edit if Create, Update, or Delete is checked
} else if (($(this).attr('name') == 'create' || $(this).attr('name') == 'update' || $(this).attr('name') == 'delete')) { } else if (($(this).attr('name') == 'create'
|| $(this).attr('name') == 'update'
|| $(this).attr('name') == 'delete'))
{
$(checkboxes).filter('input[name="edit"]').attr('checked', true); $(checkboxes).filter('input[name="edit"]').attr('checked', true);
} }
} }
@ -507,10 +514,14 @@ $(document).ready(function() {
$(checkboxes).filter(':not(input[name="edit"])').filter(':checked').each(function(index, checkbox) { $(checkboxes).filter(':not(input[name="edit"])').filter(':checked').each(function(index, checkbox) {
permissions |= $(checkbox).data('permissions'); permissions |= $(checkbox).data('permissions');
}); });
OC.Share.setPermissions($('#dropdown').data('item-type'), $('#dropdown').data('item-source'), $(li).data('share-type'), $(li).data('share-with'), permissions); OC.Share.setPermissions($('#dropdown').data('item-type'),
$('#dropdown').data('item-source'),
$(li).data('share-type'),
$(li).data('share-with'),
permissions);
}); });
$('#fileList').on('change', '#dropdown #linkCheckbox', function() { $(document).on('change', '#dropdown #linkCheckbox', function() {
var itemType = $('#dropdown').data('item-type'); var itemType = $('#dropdown').data('item-type');
var itemSource = $('#dropdown').data('item-source'); var itemSource = $('#dropdown').data('item-source');
if (this.checked) { if (this.checked) {
@ -532,12 +543,12 @@ $(document).ready(function() {
} }
}); });
$('#fileList').on('click', '#dropdown #linkText', function() { $(document).on('click', '#dropdown #linkText', function() {
$(this).focus(); $(this).focus();
$(this).select(); $(this).select();
}); });
$('#fileList').on('click', '#dropdown #showPassword', function() { $(document).on('click', '#dropdown #showPassword', function() {
$('#linkPass').toggle('blind'); $('#linkPass').toggle('blind');
if (!$('#showPassword').is(':checked') ) { if (!$('#showPassword').is(':checked') ) {
var itemType = $('#dropdown').data('item-type'); var itemType = $('#dropdown').data('item-type');
@ -548,7 +559,7 @@ $(document).ready(function() {
} }
}); });
$('#fileList').on('focusout keyup', '#dropdown #linkPassText', function(event) { $(document).on('focusout keyup', '#dropdown #linkPassText', function(event) {
if ( $('#linkPassText').val() != '' && (event.type == 'focusout' || event.keyCode == 13) ) { if ( $('#linkPassText').val() != '' && (event.type == 'focusout' || event.keyCode == 13) ) {
var itemType = $('#dropdown').data('item-type'); var itemType = $('#dropdown').data('item-type');
var itemSource = $('#dropdown').data('item-source'); var itemSource = $('#dropdown').data('item-source');
@ -560,7 +571,7 @@ $(document).ready(function() {
} }
}); });
$('#fileList').on('click', '#dropdown #expirationCheckbox', function() { $(document).on('click', '#dropdown #expirationCheckbox', function() {
if (this.checked) { if (this.checked) {
OC.Share.showExpirationDate(''); OC.Share.showExpirationDate('');
} else { } else {
@ -575,7 +586,7 @@ $(document).ready(function() {
} }
}); });
$('#fileList').on('change', '#dropdown #expirationDate', function() { $(document).on('change', '#dropdown #expirationDate', function() {
var itemType = $('#dropdown').data('item-type'); var itemType = $('#dropdown').data('item-type');
var itemSource = $('#dropdown').data('item-source'); var itemSource = $('#dropdown').data('item-source');
$.post(OC.filePath('core', 'ajax', 'share.php'), { action: 'setExpirationDate', itemType: itemType, itemSource: itemSource, date: $(this).val() }, function(result) { $.post(OC.filePath('core', 'ajax', 'share.php'), { action: 'setExpirationDate', itemType: itemType, itemSource: itemSource, date: $(this).val() }, function(result) {
@ -586,33 +597,33 @@ $(document).ready(function() {
}); });
$('#fileList').on('submit', '#dropdown #emailPrivateLink', function(event) { $(document).on('submit', '#dropdown #emailPrivateLink', function(event) {
event.preventDefault(); event.preventDefault();
var link = $('#linkText').val(); var link = $('#linkText').val();
var itemType = $('#dropdown').data('item-type'); var itemType = $('#dropdown').data('item-type');
var itemSource = $('#dropdown').data('item-source'); var itemSource = $('#dropdown').data('item-source');
var file = $('tr').filterAttr('data-id', String(itemSource)).data('file'); var file = $('tr').filterAttr('data-id', String(itemSource)).data('file');
var email = $('#email').val(); var email = $('#email').val();
if (email != '') { if (email != '') {
$('#email').attr('disabled', "disabled"); $('#email').attr('disabled', "disabled");
$('#email').val(t('core', 'Sending ...')); $('#email').val(t('core', 'Sending ...'));
$('#emailButton').attr('disabled', "disabled"); $('#emailButton').attr('disabled', "disabled");
$.post(OC.filePath('core', 'ajax', 'share.php'), { action: 'email', toaddress: email, link: link, itemType: itemType, itemSource: itemSource, file: file}, $.post(OC.filePath('core', 'ajax', 'share.php'), { action: 'email', toaddress: email, link: link, itemType: itemType, itemSource: itemSource, file: file},
function(result) { function(result) {
$('#email').attr('disabled', "false"); $('#email').attr('disabled', "false");
$('#emailButton').attr('disabled', "false"); $('#emailButton').attr('disabled', "false");
if (result && result.status == 'success') { if (result && result.status == 'success') {
$('#email').css('font-weight', 'bold'); $('#email').css('font-weight', 'bold');
$('#email').animate({ fontWeight: 'normal' }, 2000, function() { $('#email').animate({ fontWeight: 'normal' }, 2000, function() {
$(this).val(''); $(this).val('');
}).val(t('core','Email sent')); }).val(t('core','Email sent'));
} else { } else {
OC.dialogs.alert(result.data.message, t('core', 'Error while sharing')); OC.dialogs.alert(result.data.message, t('core', 'Error while sharing'));
} }
}); });
} }
}); });
}); });

View file

@ -5,6 +5,7 @@
"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "L'usuari %s ha compartit la carpeta \"%s\" amb vós. Està disponible per a la descàrrega a: %s", "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "L'usuari %s ha compartit la carpeta \"%s\" amb vós. Està disponible per a la descàrrega a: %s",
"Category type not provided." => "No s'ha especificat el tipus de categoria.", "Category type not provided." => "No s'ha especificat el tipus de categoria.",
"No category to add?" => "No voleu afegir cap categoria?", "No category to add?" => "No voleu afegir cap categoria?",
"This category already exists: %s" => "Aquesta categoria ja existeix: %s",
"Object type not provided." => "No s'ha proporcionat el tipus d'objecte.", "Object type not provided." => "No s'ha proporcionat el tipus d'objecte.",
"%s ID not provided." => "No s'ha proporcionat la ID %s.", "%s ID not provided." => "No s'ha proporcionat la ID %s.",
"Error adding %s to favorites." => "Error en afegir %s als preferits.", "Error adding %s to favorites." => "Error en afegir %s als preferits.",
@ -108,7 +109,6 @@
"Security Warning" => "Avís de seguretat", "Security Warning" => "Avís de seguretat",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "No està disponible el generador de nombres aleatoris segurs, habiliteu l'extensió de PHP OpenSSL.", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "No està disponible el generador de nombres aleatoris segurs, habiliteu l'extensió de PHP OpenSSL.",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sense un generador de nombres aleatoris segurs un atacant podria predir els senyals per restablir la contrasenya i prendre-us el compte.", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sense un generador de nombres aleatoris segurs un atacant podria predir els senyals per restablir la contrasenya i prendre-us el compte.",
"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "La carpeta de dades i els fitxers provablement són accessibles des d'internet. El fitxer .htaccess que proporciona ownCloud no funciona. Us recomanem que configureu el vostre servidor web de manera que la carpeta de dades no sigui accessible o que moveu la carpeta de dades fora de la carpeta arrel del servidor web.",
"Create an <strong>admin account</strong>" => "Crea un <strong>compte d'administrador</strong>", "Create an <strong>admin account</strong>" => "Crea un <strong>compte d'administrador</strong>",
"Advanced" => "Avançat", "Advanced" => "Avançat",
"Data folder" => "Carpeta de dades", "Data folder" => "Carpeta de dades",

View file

@ -5,6 +5,7 @@
"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "Uživatel %s s vámi sdílí složku \"%s\". Můžete ji stáhnout zde: %s", "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "Uživatel %s s vámi sdílí složku \"%s\". Můžete ji stáhnout zde: %s",
"Category type not provided." => "Nezadán typ kategorie.", "Category type not provided." => "Nezadán typ kategorie.",
"No category to add?" => "Žádná kategorie k přidání?", "No category to add?" => "Žádná kategorie k přidání?",
"This category already exists: %s" => "Kategorie již existuje: %s",
"Object type not provided." => "Nezadán typ objektu.", "Object type not provided." => "Nezadán typ objektu.",
"%s ID not provided." => "Nezadáno ID %s.", "%s ID not provided." => "Nezadáno ID %s.",
"Error adding %s to favorites." => "Chyba při přidávání %s k oblíbeným.", "Error adding %s to favorites." => "Chyba při přidávání %s k oblíbeným.",
@ -108,7 +109,6 @@
"Security Warning" => "Bezpečnostní upozornění", "Security Warning" => "Bezpečnostní upozornění",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "Není dostupný žádný bezpečný generátor náhodných čísel. Povolte, prosím, rozšíření OpenSSL v PHP.", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Není dostupný žádný bezpečný generátor náhodných čísel. Povolte, prosím, rozšíření OpenSSL v PHP.",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Bez bezpečného generátoru náhodných čísel může útočník předpovědět token pro obnovu hesla a převzít kontrolu nad Vaším účtem.", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Bez bezpečného generátoru náhodných čísel může útočník předpovědět token pro obnovu hesla a převzít kontrolu nad Vaším účtem.",
"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Váš adresář dat a všechny Vaše soubory jsou pravděpodobně přístupné z internetu. Soubor .htaccess, který je poskytován ownCloud, nefunguje. Důrazně Vám doporučujeme nastavit váš webový server tak, aby nebyl adresář dat přístupný, nebo přesunout adresář dat mimo kořenovou složku dokumentů webového serveru.",
"Create an <strong>admin account</strong>" => "Vytvořit <strong>účet správce</strong>", "Create an <strong>admin account</strong>" => "Vytvořit <strong>účet správce</strong>",
"Advanced" => "Pokročilé", "Advanced" => "Pokročilé",
"Data folder" => "Složka s daty", "Data folder" => "Složka s daty",

View file

@ -107,7 +107,6 @@
"Security Warning" => "Sikkerhedsadvarsel", "Security Warning" => "Sikkerhedsadvarsel",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "Ingen sikker tilfældighedsgenerator til tal er tilgængelig. Aktiver venligst OpenSSL udvidelsen.", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Ingen sikker tilfældighedsgenerator til tal er tilgængelig. Aktiver venligst OpenSSL udvidelsen.",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Uden en sikker tilfældighedsgenerator til tal kan en angriber måske gætte dit gendan kodeord og overtage din konto", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Uden en sikker tilfældighedsgenerator til tal kan en angriber måske gætte dit gendan kodeord og overtage din konto",
"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Din data mappe og dine filer er muligvis tilgængelige fra internettet. .htaccess filen som ownCloud leverer virker ikke. Vi anbefaler på det kraftigste at du konfigurerer din webserver på en måske så data mappen ikke længere er tilgængelig eller at du flytter data mappen uden for webserverens dokument rod. ",
"Create an <strong>admin account</strong>" => "Opret en <strong>administratorkonto</strong>", "Create an <strong>admin account</strong>" => "Opret en <strong>administratorkonto</strong>",
"Advanced" => "Avanceret", "Advanced" => "Avanceret",
"Data folder" => "Datamappe", "Data folder" => "Datamappe",

View file

@ -108,7 +108,6 @@
"Security Warning" => "Sicherheitswarnung", "Security Warning" => "Sicherheitswarnung",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "Es ist kein sicherer Zufallszahlengenerator verfügbar, bitte aktiviere die PHP-Erweiterung für OpenSSL.", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Es ist kein sicherer Zufallszahlengenerator verfügbar, bitte aktiviere die PHP-Erweiterung für OpenSSL.",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Ohne einen sicheren Zufallszahlengenerator sind Angreifer in der Lage die Tokens für das Zurücksetzen der Passwörter vorherzusehen und Konten zu übernehmen.", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Ohne einen sicheren Zufallszahlengenerator sind Angreifer in der Lage die Tokens für das Zurücksetzen der Passwörter vorherzusehen und Konten zu übernehmen.",
"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Dein Datenverzeichnis und deine Datein sind vielleicht vom Internet aus erreichbar. Die .htaccess Datei, die ownCloud verwendet, arbeitet nicht richtig. Wir schlagen Dir dringend vor, dass du deinen Webserver so konfigurierst, dass das Datenverzeichnis nicht länger erreichbar ist oder, dass du dein Datenverzeichnis aus dem Dokumenten-root des Webservers bewegst.",
"Create an <strong>admin account</strong>" => "<strong>Administrator-Konto</strong> anlegen", "Create an <strong>admin account</strong>" => "<strong>Administrator-Konto</strong> anlegen",
"Advanced" => "Fortgeschritten", "Advanced" => "Fortgeschritten",
"Data folder" => "Datenverzeichnis", "Data folder" => "Datenverzeichnis",

View file

@ -5,6 +5,7 @@
"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "%s hat eine Verzeichnis \"%s\" für Sie freigegeben. Es ist zum Download hier ferfügbar: %s", "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "%s hat eine Verzeichnis \"%s\" für Sie freigegeben. Es ist zum Download hier ferfügbar: %s",
"Category type not provided." => "Kategorie nicht angegeben.", "Category type not provided." => "Kategorie nicht angegeben.",
"No category to add?" => "Keine Kategorie hinzuzufügen?", "No category to add?" => "Keine Kategorie hinzuzufügen?",
"This category already exists: %s" => "Die Kategorie '%s' existiert bereits.",
"Object type not provided." => "Objekttyp nicht angegeben.", "Object type not provided." => "Objekttyp nicht angegeben.",
"%s ID not provided." => "%s ID nicht angegeben.", "%s ID not provided." => "%s ID nicht angegeben.",
"Error adding %s to favorites." => "Fehler beim Hinzufügen von %s zu den Favoriten.", "Error adding %s to favorites." => "Fehler beim Hinzufügen von %s zu den Favoriten.",
@ -108,7 +109,6 @@
"Security Warning" => "Sicherheitshinweis", "Security Warning" => "Sicherheitshinweis",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "Es ist kein sicherer Zufallszahlengenerator verfügbar, bitte aktivieren Sie die PHP-Erweiterung für OpenSSL.", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Es ist kein sicherer Zufallszahlengenerator verfügbar, bitte aktivieren Sie die PHP-Erweiterung für OpenSSL.",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Ohne einen sicheren Zufallszahlengenerator sind Angreifer in der Lage, die Tokens für das Zurücksetzen der Passwörter vorherzusehen und Ihr Konto zu übernehmen.", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Ohne einen sicheren Zufallszahlengenerator sind Angreifer in der Lage, die Tokens für das Zurücksetzen der Passwörter vorherzusehen und Ihr Konto zu übernehmen.",
"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Ihr Datenverzeichnis und Ihre Dateien sind wahrscheinlich über das Internet erreichbar. Die von ownCloud bereitgestellte .htaccess Datei funktioniert nicht. Wir empfehlen Ihnen dringend, Ihren Webserver so zu konfigurieren, dass das Datenverzeichnis nicht mehr über das Internet erreichbar ist. Alternativ können Sie auch das Datenverzeichnis aus dem Dokumentenverzeichnis des Webservers verschieben.",
"Create an <strong>admin account</strong>" => "<strong>Administrator-Konto</strong> anlegen", "Create an <strong>admin account</strong>" => "<strong>Administrator-Konto</strong> anlegen",
"Advanced" => "Fortgeschritten", "Advanced" => "Fortgeschritten",
"Data folder" => "Datenverzeichnis", "Data folder" => "Datenverzeichnis",

View file

@ -105,7 +105,6 @@
"Security Warning" => "Προειδοποίηση Ασφαλείας", "Security Warning" => "Προειδοποίηση Ασφαλείας",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "Δεν είναι διαθέσιμο το πρόσθετο δημιουργίας τυχαίων αριθμών ασφαλείας, παρακαλώ ενεργοποιήστε το πρόσθετο της PHP, OpenSSL.", "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." => "Χωρίς το πρόσθετο δημιουργίας τυχαίων αριθμών ασφαλείας, μπορεί να διαρρεύσει ο λογαριασμός σας από επιθέσεις στο διαδίκτυο.", "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 your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Ο κατάλογος data και τα αρχεία σας πιθανόν να είναι διαθέσιμα στο διαδίκτυο. Το αρχείο .htaccess που παρέχει το ownCloud δεν δουλεύει. Σας προτείνουμε ανεπιφύλακτα να ρυθμίσετε το διακομιστή σας με τέτοιο τρόπο ώστε ο κατάλογος data να μην είναι πλέον προσβάσιμος ή να μετακινήσετε τον κατάλογο data έξω από τον κατάλογο του διακομιστή.",
"Create an <strong>admin account</strong>" => "Δημιουργήστε έναν <strong>λογαριασμό διαχειριστή</strong>", "Create an <strong>admin account</strong>" => "Δημιουργήστε έναν <strong>λογαριασμό διαχειριστή</strong>",
"Advanced" => "Για προχωρημένους", "Advanced" => "Για προχωρημένους",
"Data folder" => "Φάκελος δεδομένων", "Data folder" => "Φάκελος δεδομένων",

View file

@ -5,6 +5,7 @@
"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "El usuario %s ha compartido la carpeta \"%s\" contigo. Puedes descargarla aquí: %s", "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "El usuario %s ha compartido la carpeta \"%s\" contigo. Puedes descargarla aquí: %s",
"Category type not provided." => "Tipo de categoria no proporcionado.", "Category type not provided." => "Tipo de categoria no proporcionado.",
"No category to add?" => "¿Ninguna categoría para añadir?", "No category to add?" => "¿Ninguna categoría para añadir?",
"This category already exists: %s" => "Esta categoria ya existe: %s",
"Object type not provided." => "ipo de objeto no proporcionado.", "Object type not provided." => "ipo de objeto no proporcionado.",
"%s ID not provided." => "%s ID no proporcionado.", "%s ID not provided." => "%s ID no proporcionado.",
"Error adding %s to favorites." => "Error añadiendo %s a los favoritos.", "Error adding %s to favorites." => "Error añadiendo %s a los favoritos.",
@ -108,7 +109,6 @@
"Security Warning" => "Advertencia de seguridad", "Security Warning" => "Advertencia de seguridad",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "No está disponible un generador de números aleatorios seguro, por favor habilite la extensión OpenSSL de PHP.", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "No está disponible un generador de números aleatorios seguro, por favor habilite la extensión OpenSSL de PHP.",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sin un generador de números aleatorios seguro un atacante podría predecir los tokens de reinicio de su contraseña y tomar control de su cuenta.", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sin un generador de números aleatorios seguro un atacante podría predecir los tokens de reinicio de su contraseña y tomar control de su cuenta.",
"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Su directorio de datos y sus archivos están probablemente accesibles desde internet. El archivo .htaccess que ownCloud provee no está funcionando. Sugerimos fuertemente que configure su servidor web de manera que el directorio de datos ya no esté accesible o mueva el directorio de datos fuera del documento raíz de su servidor web.",
"Create an <strong>admin account</strong>" => "Crea una <strong>cuenta de administrador</strong>", "Create an <strong>admin account</strong>" => "Crea una <strong>cuenta de administrador</strong>",
"Advanced" => "Avanzado", "Advanced" => "Avanzado",
"Data folder" => "Directorio de almacenamiento", "Data folder" => "Directorio de almacenamiento",
@ -128,6 +128,7 @@
"Lost your password?" => "¿Has perdido tu contraseña?", "Lost your password?" => "¿Has perdido tu contraseña?",
"remember" => "recuérdame", "remember" => "recuérdame",
"Log in" => "Entrar", "Log in" => "Entrar",
"Alternative Logins" => "Nombre de usuarios alternativos",
"prev" => "anterior", "prev" => "anterior",
"next" => "siguiente", "next" => "siguiente",
"Updating ownCloud to version %s, this may take a while." => "Actualizando ownCloud a la versión %s, esto puede demorar un tiempo." "Updating ownCloud to version %s, this may take a while." => "Actualizando ownCloud a la versión %s, esto puede demorar un tiempo."

View file

@ -108,7 +108,6 @@
"Security Warning" => "Advertencia de seguridad", "Security Warning" => "Advertencia de seguridad",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "No hay disponible ningún generador de números aleatorios seguro. Por favor habilitá la extensión OpenSSL de PHP.", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "No hay disponible ningún generador de números aleatorios seguro. Por favor habilitá la extensión OpenSSL de PHP.",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sin un generador de números aleatorios seguro un atacante podría predecir los tokens de reinicio de tu contraseña y tomar control de tu cuenta.", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sin un generador de números aleatorios seguro un atacante podría predecir los tokens de reinicio de tu contraseña y tomar control de tu cuenta.",
"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Tu directorio de datos y tus archivos son probablemente accesibles desde internet. El archivo .htaccess provisto por ownCloud no está funcionando. Te sugerimos que configures tu servidor web de manera que el directorio de datos ya no esté accesible, o que muevas el directorio de datos afuera del directorio raíz de tu servidor web.",
"Create an <strong>admin account</strong>" => "Crear una <strong>cuenta de administrador</strong>", "Create an <strong>admin account</strong>" => "Crear una <strong>cuenta de administrador</strong>",
"Advanced" => "Avanzado", "Advanced" => "Avanzado",
"Data folder" => "Directorio de almacenamiento", "Data folder" => "Directorio de almacenamiento",

View file

@ -108,7 +108,6 @@
"Security Warning" => "Segurtasun abisua", "Security Warning" => "Segurtasun abisua",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "Ez dago hausazko zenbaki sortzaile segururik eskuragarri, mesedez gatiu PHP OpenSSL extensioa.", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Ez dago hausazko zenbaki sortzaile segururik eskuragarri, mesedez gatiu PHP OpenSSL extensioa.",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Hausazko zenbaki sortzaile segururik gabe erasotzaile batek pasahitza berrezartzeko kodeak iragarri ditzake eta zure kontuaz jabetu.", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Hausazko zenbaki sortzaile segururik gabe erasotzaile batek pasahitza berrezartzeko kodeak iragarri ditzake eta zure kontuaz jabetu.",
"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Zure data karpeta eta zure fitxategiak internetetik zuzenean eskuragarri egon daitezke. ownCloudek emandako .htaccess fitxategia ez du bere lana egiten. Aholkatzen dizugu zure web zerbitzaria ongi konfiguratzea data karpeta eskuragarri ez izateko edo data karpeta web zerbitzariaren dokumentu errotik mugitzea.",
"Create an <strong>admin account</strong>" => "Sortu <strong>kudeatzaile kontu<strong> bat", "Create an <strong>admin account</strong>" => "Sortu <strong>kudeatzaile kontu<strong> bat",
"Advanced" => "Aurreratua", "Advanced" => "Aurreratua",
"Data folder" => "Datuen karpeta", "Data folder" => "Datuen karpeta",

View file

@ -100,7 +100,6 @@
"Edit categories" => "Muokkaa luokkia", "Edit categories" => "Muokkaa luokkia",
"Add" => "Lisää", "Add" => "Lisää",
"Security Warning" => "Turvallisuusvaroitus", "Security Warning" => "Turvallisuusvaroitus",
"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Data-kansio ja tiedostot ovat ehkä saavutettavissa Internetistä. .htaccess-tiedosto, jolla kontrolloidaan pääsyä, ei toimi. Suosittelemme, että muutat web-palvelimesi asetukset niin ettei data-kansio ole enää pääsyä tai siirrät data-kansion pois web-palvelimen tiedostojen juuresta.",
"Create an <strong>admin account</strong>" => "Luo <strong>ylläpitäjän tunnus</strong>", "Create an <strong>admin account</strong>" => "Luo <strong>ylläpitäjän tunnus</strong>",
"Advanced" => "Lisäasetukset", "Advanced" => "Lisäasetukset",
"Data folder" => "Datakansio", "Data folder" => "Datakansio",

View file

@ -5,6 +5,7 @@
"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "L'utilisateur %s a partagé le dossier \"%s\" avec vous. Il est disponible au téléchargement ici : %s", "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "L'utilisateur %s a partagé le dossier \"%s\" avec vous. Il est disponible au téléchargement ici : %s",
"Category type not provided." => "Type de catégorie non spécifié.", "Category type not provided." => "Type de catégorie non spécifié.",
"No category to add?" => "Pas de catégorie à ajouter ?", "No category to add?" => "Pas de catégorie à ajouter ?",
"This category already exists: %s" => "Cette catégorie existe déjà : %s",
"Object type not provided." => "Type d'objet non spécifié.", "Object type not provided." => "Type d'objet non spécifié.",
"%s ID not provided." => "L'identifiant de %s n'est pas spécifié.", "%s ID not provided." => "L'identifiant de %s n'est pas spécifié.",
"Error adding %s to favorites." => "Erreur lors de l'ajout de %s aux favoris.", "Error adding %s to favorites." => "Erreur lors de l'ajout de %s aux favoris.",
@ -108,7 +109,6 @@
"Security Warning" => "Avertissement de sécurité", "Security Warning" => "Avertissement de sécurité",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "Aucun générateur de nombre aléatoire sécurisé n'est disponible, veuillez activer l'extension PHP OpenSSL", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Aucun générateur de nombre aléatoire sécurisé n'est disponible, veuillez activer l'extension PHP OpenSSL",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sans générateur de nombre aléatoire sécurisé, un attaquant peut être en mesure de prédire les jetons de réinitialisation du mot de passe, et ainsi prendre le contrôle de votre compte utilisateur.", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sans générateur de nombre aléatoire sécurisé, un attaquant peut être en mesure de prédire les jetons de réinitialisation du mot de passe, et ainsi prendre le contrôle de votre compte utilisateur.",
"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Votre dossier data et vos fichiers sont probablement accessibles depuis internet. Le fichier .htaccess fourni par ownCloud ne fonctionne pas. Nous vous recommandons vivement de configurer votre serveur web de manière à ce que le dossier data ne soit plus accessible ou bien de déplacer le dossier data en dehors du dossier racine des documents du serveur web.",
"Create an <strong>admin account</strong>" => "Créer un <strong>compte administrateur</strong>", "Create an <strong>admin account</strong>" => "Créer un <strong>compte administrateur</strong>",
"Advanced" => "Avancé", "Advanced" => "Avancé",
"Data folder" => "Répertoire des données", "Data folder" => "Répertoire des données",
@ -128,6 +128,7 @@
"Lost your password?" => "Mot de passe perdu ?", "Lost your password?" => "Mot de passe perdu ?",
"remember" => "se souvenir de moi", "remember" => "se souvenir de moi",
"Log in" => "Connexion", "Log in" => "Connexion",
"Alternative Logins" => "Logins alternatifs",
"prev" => "précédent", "prev" => "précédent",
"next" => "suivant", "next" => "suivant",
"Updating ownCloud to version %s, this may take a while." => "Mise à jour en cours d'ownCloud vers la version %s, cela peut prendre du temps." "Updating ownCloud to version %s, this may take a while." => "Mise à jour en cours d'ownCloud vers la version %s, cela peut prendre du temps."

View file

@ -105,7 +105,6 @@
"Security Warning" => "Aviso de seguranza", "Security Warning" => "Aviso de seguranza",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "Non hai un xerador de números ao chou dispoñíbel. Active o engadido de OpenSSL para PHP.", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Non hai un xerador de números ao chou dispoñíbel. Active o engadido de OpenSSL para PHP.",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sen un xerador seguro de números ao chou podería acontecer que predicindo as cadeas de texto de reinicio de contrasinais se afagan coa súa conta.", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Sen un xerador seguro de números ao chou podería acontecer que predicindo as cadeas de texto de reinicio de contrasinais se afagan coa súa conta.",
"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "O seu cartafol de datos e os seus ficheiros probabelmente sexan accesíbeis a través da Internet. O ficheiro .htaccess que fornece ownCloud non está a empregarse. Suxerimoslle que configure o seu servidor web de tal xeito que o cartafol de datos non estea accesíbel ou mova o cartafol de datos fora do directorio raíz de datos do servidor web.",
"Create an <strong>admin account</strong>" => "Crear unha <strong>contra de administrador</strong>", "Create an <strong>admin account</strong>" => "Crear unha <strong>contra de administrador</strong>",
"Advanced" => "Avanzado", "Advanced" => "Avanzado",
"Data folder" => "Cartafol de datos", "Data folder" => "Cartafol de datos",

View file

@ -105,7 +105,6 @@
"Security Warning" => "אזהרת אבטחה", "Security Warning" => "אזהרת אבטחה",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "אין מחולל מספרים אקראיים מאובטח, נא להפעיל את ההרחבה OpenSSL ב־PHP.", "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." => "ללא מחולל מספרים אקראיים מאובטח תוקף יכול לנבא את מחרוזות איפוס הססמה ולהשתלט על החשבון שלך.", "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 your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "יתכן שתיקיית הנתונים והקבצים שלך נגישים דרך האינטרנט. קובץ ה־‎.htaccess שמסופק על ידי ownCloud כנראה אינו עובד. אנו ממליצים בחום להגדיר את שרת האינטרנט שלך בדרך שבה תיקיית הנתונים לא תהיה זמינה עוד או להעביר את תיקיית הנתונים מחוץ לספריית העל של שרת האינטרנט.",
"Create an <strong>admin account</strong>" => "יצירת <strong>חשבון מנהל</strong>", "Create an <strong>admin account</strong>" => "יצירת <strong>חשבון מנהל</strong>",
"Advanced" => "מתקדם", "Advanced" => "מתקדם",
"Data folder" => "תיקיית נתונים", "Data folder" => "תיקיית נתונים",

View file

@ -105,7 +105,6 @@
"Security Warning" => "Biztonsági figyelmeztetés", "Security Warning" => "Biztonsági figyelmeztetés",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "Nem érhető el megfelelő véletlenszám-generátor, telepíteni kellene a PHP OpenSSL kiegészítését.", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Nem érhető el megfelelő véletlenszám-generátor, telepíteni kellene a PHP OpenSSL kiegészítését.",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Megfelelő véletlenszám-generátor hiányában egy támadó szándékú idegen képes lehet megjósolni a jelszóvisszaállító tokent, és Ön helyett belépni.", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Megfelelő véletlenszám-generátor hiányában egy támadó szándékú idegen képes lehet megjósolni a jelszóvisszaállító tokent, és Ön helyett belépni.",
"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Az adatkönytára és az itt levő fájlok valószínűleg elérhetők az internetről. Az ownCloud által beillesztett .htaccess fájl nem működik. Nagyon fontos, hogy a webszervert úgy konfigurálja, hogy az adatkönyvtár nem legyen közvetlenül kívülről elérhető, vagy az adatkönyvtárt tegye a webszerver dokumentumfáján kívülre.",
"Create an <strong>admin account</strong>" => "<strong>Rendszergazdai belépés</strong> létrehozása", "Create an <strong>admin account</strong>" => "<strong>Rendszergazdai belépés</strong> létrehozása",
"Advanced" => "Haladó", "Advanced" => "Haladó",
"Data folder" => "Adatkönyvtár", "Data folder" => "Adatkönyvtár",

View file

@ -105,7 +105,6 @@
"Security Warning" => "Öryggis aðvörun", "Security Warning" => "Öryggis aðvörun",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "Enginn traustur slembitölugjafi í boði, vinsamlegast virkjaðu PHP OpenSSL viðbótina.", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Enginn traustur slembitölugjafi í boði, vinsamlegast virkjaðu PHP OpenSSL viðbótina.",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Án öruggs slembitölugjafa er mögulegt að sjá fyrir öryggis auðkenni til að endursetja lykilorð og komast inn á aðganginn þinn.", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Án öruggs slembitölugjafa er mögulegt að sjá fyrir öryggis auðkenni til að endursetja lykilorð og komast inn á aðganginn þinn.",
"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "Gagnamappan þín er að öllum líkindum aðgengileg frá internetinu. Skráin .htaccess sem fylgir með ownCloud er ekki að virka. Við mælum eindregið með því að þú stillir vefþjóninn þannig að gagnamappan verði ekki aðgengileg frá internetinu eða færir hana út fyrir vefrótina.",
"Create an <strong>admin account</strong>" => "Útbúa <strong>vefstjóra aðgang</strong>", "Create an <strong>admin account</strong>" => "Útbúa <strong>vefstjóra aðgang</strong>",
"Advanced" => "Ítarlegt", "Advanced" => "Ítarlegt",
"Data folder" => "Gagnamappa", "Data folder" => "Gagnamappa",

View file

@ -5,6 +5,7 @@
"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "L'utente %s ha condiviso la cartella \"%s\" con te. È disponibile per lo scaricamento qui: %s", "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "L'utente %s ha condiviso la cartella \"%s\" con te. È disponibile per lo scaricamento qui: %s",
"Category type not provided." => "Tipo di categoria non fornito.", "Category type not provided." => "Tipo di categoria non fornito.",
"No category to add?" => "Nessuna categoria da aggiungere?", "No category to add?" => "Nessuna categoria da aggiungere?",
"This category already exists: %s" => "Questa categoria esiste già: %s",
"Object type not provided." => "Tipo di oggetto non fornito.", "Object type not provided." => "Tipo di oggetto non fornito.",
"%s ID not provided." => "ID %s non fornito.", "%s ID not provided." => "ID %s non fornito.",
"Error adding %s to favorites." => "Errore durante l'aggiunta di %s ai preferiti.", "Error adding %s to favorites." => "Errore durante l'aggiunta di %s ai preferiti.",
@ -108,7 +109,6 @@
"Security Warning" => "Avviso di sicurezza", "Security Warning" => "Avviso di sicurezza",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "Non è disponibile alcun generatore di numeri casuali sicuro. Abilita l'estensione OpenSSL di PHP", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "Non è disponibile alcun generatore di numeri casuali sicuro. Abilita l'estensione OpenSSL di PHP",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Senza un generatore di numeri casuali sicuro, un malintenzionato potrebbe riuscire a individuare i token di ripristino delle password e impossessarsi del tuo account.", "Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Senza un generatore di numeri casuali sicuro, un malintenzionato potrebbe riuscire a individuare i token di ripristino delle password e impossessarsi del tuo account.",
"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "La cartella dei dati e i tuoi file sono probabilmente accessibili da Internet. Il file .htaccess fornito da ownCloud non funziona. Ti suggeriamo vivamente di configurare il server web in modo che la cartella dei dati non sia più accessibile o sposta tale cartella fuori dalla radice del sito.",
"Create an <strong>admin account</strong>" => "Crea un <strong>account amministratore</strong>", "Create an <strong>admin account</strong>" => "Crea un <strong>account amministratore</strong>",
"Advanced" => "Avanzate", "Advanced" => "Avanzate",
"Data folder" => "Cartella dati", "Data folder" => "Cartella dati",

View file

@ -5,6 +5,7 @@
"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "ユーザ %s はあなたとフォルダ \"%s\" を共有しています。こちらからダウンロードできます: %s", "User %s shared the folder \"%s\" with you. It is available for download here: %s" => "ユーザ %s はあなたとフォルダ \"%s\" を共有しています。こちらからダウンロードできます: %s",
"Category type not provided." => "カテゴリタイプは提供されていません。", "Category type not provided." => "カテゴリタイプは提供されていません。",
"No category to add?" => "追加するカテゴリはありませんか?", "No category to add?" => "追加するカテゴリはありませんか?",
"This category already exists: %s" => "このカテゴリはすでに存在します: %s",
"Object type not provided." => "オブジェクトタイプは提供されていません。", "Object type not provided." => "オブジェクトタイプは提供されていません。",
"%s ID not provided." => "%s ID は提供されていません。", "%s ID not provided." => "%s ID は提供されていません。",
"Error adding %s to favorites." => "お気に入りに %s を追加エラー", "Error adding %s to favorites." => "お気に入りに %s を追加エラー",
@ -108,7 +109,6 @@
"Security Warning" => "セキュリティ警告", "Security Warning" => "セキュリティ警告",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "セキュアな乱数生成器が利用可能ではありません。PHPのOpenSSL拡張を有効にして下さい。", "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." => "セキュアな乱数生成器が無い場合、攻撃者はパスワードリセットのトークンを予測してアカウントを乗っ取られる可能性があります。", "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 your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "データディレクトリとファイルが恐らくインターネットからアクセスできるようになっています。ownCloudが提供する .htaccessファイルが機能していません。データディレクトリを全くアクセスできないようにするか、データディレクトリをウェブサーバのドキュメントルートの外に置くようにウェブサーバを設定することを強くお勧めします。 ",
"Create an <strong>admin account</strong>" => "<strong>管理者アカウント</strong>を作成してください", "Create an <strong>admin account</strong>" => "<strong>管理者アカウント</strong>を作成してください",
"Advanced" => "詳細設定", "Advanced" => "詳細設定",
"Data folder" => "データフォルダ", "Data folder" => "データフォルダ",

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