diff --git a/apps/files/ajax/download.php b/apps/files/ajax/download.php
index b9a4ddaf5e..7c8dcb372e 100644
--- a/apps/files/ajax/download.php
+++ b/apps/files/ajax/download.php
@@ -33,4 +33,10 @@ OCP\User::checkLoggedIn();
$files = $_GET["files"];
$dir = $_GET["dir"];
-OC_Files::get($dir, $files, $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false);
+$files_list = json_decode($files);
+// in case we get only a single file
+if ($files_list === NULL ) {
+ $files_list = array($files);
+}
+
+OC_Files::get($dir, $files_list, $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false);
diff --git a/apps/files/css/files.css b/apps/files/css/files.css
index fd06c61ce2..4d2b16e6f1 100644
--- a/apps/files/css/files.css
+++ b/apps/files/css/files.css
@@ -73,7 +73,7 @@ table th#headerSize, table td.filesize { min-width:3em; padding:0 1em; text-alig
table th#headerDate, table td.date { min-width:11em; padding:0 .1em 0 1em; text-align:left; }
/* Multiselect bar */
-table.multiselect { top:63px; }
+#filestable.multiselect { top:63px; }
table.multiselect thead { position:fixed; top:82px; z-index:1; -moz-box-sizing: border-box; box-sizing: border-box; left: 0; padding-left: 64px; width:100%; }
table.multiselect thead th { background:rgba(230,230,230,.8); color:#000; font-weight:bold; border-bottom:0; }
table.multiselect #headerName { width: 100%; }
diff --git a/apps/files/js/files.js b/apps/files/js/files.js
index 464f770368..a4ef41c280 100644
--- a/apps/files/js/files.js
+++ b/apps/files/js/files.js
@@ -220,14 +220,15 @@ $(document).ready(function() {
});
$('.download').click('click',function(event) {
- var files=getSelectedFiles('name').join(';');
+ var files=getSelectedFiles('name');
+ var fileslist = JSON.stringify(files);
var dir=$('#dir').val()||'/';
OC.Notification.show(t('files','Your download is being prepared. This might take some time if the files are big.'));
// use special download URL if provided, e.g. for public shared files
if ( (downloadURL = document.getElementById("downloadURL")) ) {
window.location=downloadURL.value+"&download&files="+files;
} else {
- window.location=OC.filePath('files', 'ajax', 'download.php') + '?'+ $.param({ dir: dir, files: files });
+ window.location=OC.filePath('files', 'ajax', 'download.php') + '?'+ $.param({ dir: dir, files: fileslist });
}
return false;
});
diff --git a/apps/files/l10n/cs_CZ.php b/apps/files/l10n/cs_CZ.php
index 4c7dc898cc..48b60bfb71 100644
--- a/apps/files/l10n/cs_CZ.php
+++ b/apps/files/l10n/cs_CZ.php
@@ -61,6 +61,7 @@
"From link" => "Z odkazu",
"Deleted files" => "Odstraněné soubory",
"Cancel upload" => "Zrušit odesílání",
+"You don’t have write permissions here." => "Nemáte zde práva zápisu.",
"Nothing in here. Upload something!" => "Žádný obsah. Nahrajte něco.",
"Download" => "Stáhnout",
"Unshare" => "Zrušit sdílení",
diff --git a/apps/files/l10n/da.php b/apps/files/l10n/da.php
index c9042e30b4..c147c939f8 100644
--- a/apps/files/l10n/da.php
+++ b/apps/files/l10n/da.php
@@ -59,7 +59,9 @@
"Text file" => "Tekstfil",
"Folder" => "Mappe",
"From link" => "Fra link",
+"Deleted files" => "Slettede filer",
"Cancel upload" => "Fortryd upload",
+"You don’t have write permissions here." => "Du har ikke skriverettigheder her.",
"Nothing in here. Upload something!" => "Her er tomt. Upload noget!",
"Download" => "Download",
"Unshare" => "Fjern deling",
diff --git a/apps/files/l10n/de.php b/apps/files/l10n/de.php
index b78ffe1c16..53427503f4 100644
--- a/apps/files/l10n/de.php
+++ b/apps/files/l10n/de.php
@@ -61,6 +61,7 @@
"From link" => "Von einem Link",
"Deleted files" => "Gelöschte Dateien",
"Cancel upload" => "Upload abbrechen",
+"You don’t have write permissions here." => "Du besitzt hier keine Schreib-Berechtigung.",
"Nothing in here. Upload something!" => "Alles leer. Lade etwas hoch!",
"Download" => "Herunterladen",
"Unshare" => "Nicht mehr freigeben",
diff --git a/apps/files/l10n/de_DE.php b/apps/files/l10n/de_DE.php
index dd5dd28472..538c1b6365 100644
--- a/apps/files/l10n/de_DE.php
+++ b/apps/files/l10n/de_DE.php
@@ -61,6 +61,7 @@
"From link" => "Von einem Link",
"Deleted files" => "Gelöschte Dateien",
"Cancel upload" => "Upload abbrechen",
+"You don’t have write permissions here." => "Sie haben hier keine Schreib-Berechtigungen.",
"Nothing in here. Upload something!" => "Alles leer. Bitte laden Sie etwas hoch!",
"Download" => "Herunterladen",
"Unshare" => "Nicht mehr freigeben",
diff --git a/apps/files/l10n/es.php b/apps/files/l10n/es.php
index e70a1afd0e..f702a5b513 100644
--- a/apps/files/l10n/es.php
+++ b/apps/files/l10n/es.php
@@ -61,6 +61,7 @@
"From link" => "Desde el enlace",
"Deleted files" => "Archivos eliminados",
"Cancel upload" => "Cancelar subida",
+"You don’t have write permissions here." => "No tienes permisos para escribir aquí.",
"Nothing in here. Upload something!" => "Aquí no hay nada. ¡Sube algo!",
"Download" => "Descargar",
"Unshare" => "Dejar de compartir",
diff --git a/apps/files/l10n/lv.php b/apps/files/l10n/lv.php
index 93c3593b09..a7a9284c65 100644
--- a/apps/files/l10n/lv.php
+++ b/apps/files/l10n/lv.php
@@ -61,6 +61,7 @@
"From link" => "No saites",
"Deleted files" => "Dzēstās datnes",
"Cancel upload" => "Atcelt augšupielādi",
+"You don’t have write permissions here." => "Jums nav tiesību šeit rakstīt.",
"Nothing in here. Upload something!" => "Te vēl nekas nav. Rīkojies, sāc augšupielādēt!",
"Download" => "Lejupielādēt",
"Unshare" => "Pārtraukt dalīšanos",
diff --git a/apps/files/l10n/nb_NO.php b/apps/files/l10n/nb_NO.php
index dc267e36fb..d9972feb6a 100644
--- a/apps/files/l10n/nb_NO.php
+++ b/apps/files/l10n/nb_NO.php
@@ -7,6 +7,7 @@
"Missing a temporary folder" => "Mangler en midlertidig mappe",
"Failed to write to disk" => "Klarte ikke å skrive til disk",
"Files" => "Filer",
+"Delete permanently" => "Slett permanent",
"Delete" => "Slett",
"Rename" => "Omdøp",
"Pending" => "Ventende",
diff --git a/apps/files/l10n/nl.php b/apps/files/l10n/nl.php
index 1719350f9c..6af7edf250 100644
--- a/apps/files/l10n/nl.php
+++ b/apps/files/l10n/nl.php
@@ -61,6 +61,7 @@
"From link" => "Vanaf link",
"Deleted files" => "Verwijderde bestanden",
"Cancel upload" => "Upload afbreken",
+"You don’t have write permissions here." => "U hebt hier geen schrijfpermissies.",
"Nothing in here. Upload something!" => "Er bevindt zich hier niets. Upload een bestand!",
"Download" => "Download",
"Unshare" => "Stop delen",
diff --git a/apps/files/l10n/pt_BR.php b/apps/files/l10n/pt_BR.php
index cce5a916db..3bebb68227 100644
--- a/apps/files/l10n/pt_BR.php
+++ b/apps/files/l10n/pt_BR.php
@@ -1,8 +1,8 @@
"Não possível mover %s - Um arquivo com este nome já existe",
-"Could not move %s" => "Não possível mover %s",
+"Could not move %s - File with this name already exists" => "Impossível mover %s - Um arquivo com este nome já existe",
+"Could not move %s" => "Impossível mover %s",
"Unable to rename file" => "Impossível renomear arquivo",
-"No file was uploaded. Unknown error" => "Nenhum arquivo foi transferido. Erro desconhecido",
+"No file was uploaded. Unknown error" => "Nenhum arquivo foi enviado. Erro desconhecido",
"There is no error, the file uploaded with success" => "Não houve nenhum erro, o arquivo foi transferido com sucesso",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "O arquivo enviado excede a diretiva upload_max_filesize no php.ini: ",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "O arquivo carregado excede o MAX_FILE_SIZE que foi especificado no formulário HTML",
@@ -27,10 +27,10 @@
"'.' is an invalid file name." => "'.' é um nome de arquivo inválido.",
"File name cannot be empty." => "O nome do arquivo não pode estar vazio.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome inválido, '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' não são permitidos.",
-"Your storage is full, files can not be updated or synced anymore!" => "Seu armazenamento está cheio, arquivos não serão mais atualizados nem sincronizados!",
+"Your storage is full, files can not be updated or synced anymore!" => "Seu armazenamento está cheio, arquivos não podem mais ser atualizados ou sincronizados!",
"Your storage is almost full ({usedSpacePercent}%)" => "Seu armazenamento está quase cheio ({usedSpacePercent}%)",
"Your download is being prepared. This might take some time if the files are big." => "Seu download está sendo preparado. Isto pode levar algum tempo se os arquivos forem grandes.",
-"Unable to upload your file as it is a directory or has 0 bytes" => "Impossível enviar seus arquivo como diretório ou ele tem 0 bytes.",
+"Unable to upload your file as it is a directory or has 0 bytes" => "Impossível enviar seus arquivo por ele ser um diretório ou ter 0 bytes.",
"Upload Error" => "Erro de envio",
"Close" => "Fechar",
"1 file uploading" => "enviando 1 arquivo",
@@ -50,7 +50,7 @@
"File handling" => "Tratamento de Arquivo",
"Maximum upload size" => "Tamanho máximo para carregar",
"max. possible: " => "max. possível:",
-"Needed for multi-file and folder downloads." => "Necessário para multiplos arquivos e diretório de downloads.",
+"Needed for multi-file and folder downloads." => "Necessário para download de múltiplos arquivos e diretórios.",
"Enable ZIP-download" => "Habilitar ZIP-download",
"0 is unlimited" => "0 para ilimitado",
"Maximum input size for ZIP files" => "Tamanho máximo para arquivo ZIP",
@@ -61,6 +61,7 @@
"From link" => "Do link",
"Deleted files" => "Arquivos apagados",
"Cancel upload" => "Cancelar upload",
+"You don’t have write permissions here." => "Você não possui permissão de escrita aqui.",
"Nothing in here. Upload something!" => "Nada aqui.Carrege alguma coisa!",
"Download" => "Baixar",
"Unshare" => "Descompartilhar",
@@ -68,5 +69,5 @@
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Os arquivos que você está tentando carregar excedeu o tamanho máximo para arquivos no servidor.",
"Files are being scanned, please wait." => "Arquivos sendo escaneados, por favor aguarde.",
"Current scanning" => "Scanning atual",
-"Upgrading filesystem cache..." => "Aprimorando cache do sistema de arquivos..."
+"Upgrading filesystem cache..." => "Atualizando cache do sistema de arquivos..."
);
diff --git a/apps/files/l10n/pt_PT.php b/apps/files/l10n/pt_PT.php
index b8334db272..7162517e81 100644
--- a/apps/files/l10n/pt_PT.php
+++ b/apps/files/l10n/pt_PT.php
@@ -61,6 +61,7 @@
"From link" => "Da ligação",
"Deleted files" => "Ficheiros eliminados",
"Cancel upload" => "Cancelar envio",
+"You don’t have write permissions here." => "Não tem permissões de escrita aqui.",
"Nothing in here. Upload something!" => "Vazio. Envie alguma coisa!",
"Download" => "Transferir",
"Unshare" => "Deixar de partilhar",
diff --git a/apps/files/l10n/sv.php b/apps/files/l10n/sv.php
index c02a781870..ca9610a33c 100644
--- a/apps/files/l10n/sv.php
+++ b/apps/files/l10n/sv.php
@@ -61,6 +61,7 @@
"From link" => "Från länk",
"Deleted files" => "Raderade filer",
"Cancel upload" => "Avbryt uppladdning",
+"You don’t have write permissions here." => "Du saknar skrivbehörighet här.",
"Nothing in here. Upload something!" => "Ingenting här. Ladda upp något!",
"Download" => "Ladda ner",
"Unshare" => "Sluta dela",
diff --git a/apps/files/l10n/uk.php b/apps/files/l10n/uk.php
index 05f279d8eb..f5e161996c 100644
--- a/apps/files/l10n/uk.php
+++ b/apps/files/l10n/uk.php
@@ -61,6 +61,7 @@
"From link" => "З посилання",
"Deleted files" => "Видалено файлів",
"Cancel upload" => "Перервати завантаження",
+"You don’t have write permissions here." => "У вас тут немає прав на запис.",
"Nothing in here. Upload something!" => "Тут нічого немає. Відвантажте що-небудь!",
"Download" => "Завантажити",
"Unshare" => "Заборонити доступ",
diff --git a/apps/files/templates/admin.php b/apps/files/templates/admin.php
index 0ab931a467..e1ca6afc4a 100644
--- a/apps/files/templates/admin.php
+++ b/apps/files/templates/admin.php
@@ -16,7 +16,7 @@
checked="checked" />
- '
+ '
title="t( '0 is unlimited' )); ?>"
disabled="disabled" />
t( 'Maximum input size for ZIP files' )); ?>
diff --git a/apps/files_encryption/appinfo/app.php b/apps/files_encryption/appinfo/app.php
index 3bdf6829a9..bf16fec3ae 100644
--- a/apps/files_encryption/appinfo/app.php
+++ b/apps/files_encryption/appinfo/app.php
@@ -1,13 +1,13 @@
"Kryptering",
+"File encryption is enabled." => "Fil-kryptering er aktivert.",
+"The following file types will not be encrypted:" => "Følgende filtyper vil ikke bli kryptert:",
+"Exclude the following file types from encryption:" => "Ekskluder følgende filtyper fra kryptering:",
"None" => "Ingen"
);
diff --git a/apps/files_external/appinfo/app.php b/apps/files_external/appinfo/app.php
index d976c01752..d786c6c7a2 100644
--- a/apps/files_external/appinfo/app.php
+++ b/apps/files_external/appinfo/app.php
@@ -6,16 +6,16 @@
* See the COPYING-README file.
*/
-OC::$CLASSPATH['OC\Files\Storage\StreamWrapper']='apps/files_external/lib/streamwrapper.php';
-OC::$CLASSPATH['OC\Files\Storage\FTP']='apps/files_external/lib/ftp.php';
-OC::$CLASSPATH['OC\Files\Storage\DAV']='apps/files_external/lib/webdav.php';
-OC::$CLASSPATH['OC\Files\Storage\Google']='apps/files_external/lib/google.php';
-OC::$CLASSPATH['OC\Files\Storage\SWIFT']='apps/files_external/lib/swift.php';
-OC::$CLASSPATH['OC\Files\Storage\SMB']='apps/files_external/lib/smb.php';
-OC::$CLASSPATH['OC\Files\Storage\AmazonS3']='apps/files_external/lib/amazons3.php';
-OC::$CLASSPATH['OC\Files\Storage\Dropbox']='apps/files_external/lib/dropbox.php';
-OC::$CLASSPATH['OC\Files\Storage\SFTP']='apps/files_external/lib/sftp.php';
-OC::$CLASSPATH['OC_Mount_Config']='apps/files_external/lib/config.php';
+OC::$CLASSPATH['OC\Files\Storage\StreamWrapper'] = 'files_external/lib/streamwrapper.php';
+OC::$CLASSPATH['OC\Files\Storage\FTP'] = 'files_external/lib/ftp.php';
+OC::$CLASSPATH['OC\Files\Storage\DAV'] = 'files_external/lib/webdav.php';
+OC::$CLASSPATH['OC\Files\Storage\Google'] = 'files_external/lib/google.php';
+OC::$CLASSPATH['OC\Files\Storage\SWIFT'] = 'files_external/lib/swift.php';
+OC::$CLASSPATH['OC\Files\Storage\SMB'] = 'files_external/lib/smb.php';
+OC::$CLASSPATH['OC\Files\Storage\AmazonS3'] = 'files_external/lib/amazons3.php';
+OC::$CLASSPATH['OC\Files\Storage\Dropbox'] = 'files_external/lib/dropbox.php';
+OC::$CLASSPATH['OC\Files\Storage\SFTP'] = 'files_external/lib/sftp.php';
+OC::$CLASSPATH['OC_Mount_Config'] = 'files_external/lib/config.php';
OCP\App::registerAdmin('files_external', 'settings');
if (OCP\Config::getAppValue('files_external', 'allow_user_mounting', 'yes') == 'yes') {
diff --git a/apps/files_external/l10n/nb_NO.php b/apps/files_external/l10n/nb_NO.php
index 65f9e9bbaf..961ef2b104 100644
--- a/apps/files_external/l10n/nb_NO.php
+++ b/apps/files_external/l10n/nb_NO.php
@@ -1,9 +1,21 @@
"Tilgang innvilget",
+"Error configuring Dropbox storage" => "Feil ved konfigurering av Dropbox-lagring",
+"Grant access" => "Gi tilgang",
+"External Storage" => "Ekstern lagring",
"Folder name" => "Mappenavn",
+"External storage" => "Ekstern lagringsplass",
"Configuration" => "Konfigurasjon",
"Options" => "Innstillinger",
+"Applicable" => "Anvendelig",
+"Add storage" => "Legg til lagringsplass",
+"None set" => "Ingen valgt",
"All Users" => "Alle brukere",
"Groups" => "Grupper",
"Users" => "Brukere",
-"Delete" => "Slett"
+"Delete" => "Slett",
+"Enable User External Storage" => "Aktiver ekstern lagring for bruker",
+"Allow users to mount their own external storage" => "Tillat brukere å koble til egne eksterne lagringsmedium",
+"SSL root certificates" => "SSL root-sertifikater",
+"Import Root Certificate" => "Importer root-sertifikat"
);
diff --git a/apps/files_external/l10n/nl.php b/apps/files_external/l10n/nl.php
index ef03f46379..ad3eda9747 100644
--- a/apps/files_external/l10n/nl.php
+++ b/apps/files_external/l10n/nl.php
@@ -8,9 +8,11 @@
"Warning: The FTP support in PHP is not enabled or installed. Mounting of FTP shares is not possible. Please ask your system administrator to install it." => "Waarschuwing: FTP ondersteuning in PHP is niet geactiveerd of geïnstalleerd. Mounten van FTP shares is niet mogelijk. Vraag uw beheerder FTP ondersteuning te installeren.",
"External Storage" => "Externe opslag",
"Folder name" => "Mapnaam",
+"External storage" => "Externe opslag",
"Configuration" => "Configuratie",
"Options" => "Opties",
"Applicable" => "Van toepassing",
+"Add storage" => "Toevoegen opslag",
"None set" => "Niets ingesteld",
"All Users" => "Alle gebruikers",
"Groups" => "Groepen",
diff --git a/apps/files_external/l10n/pt_BR.php b/apps/files_external/l10n/pt_BR.php
index 908c95b009..a358d56913 100644
--- a/apps/files_external/l10n/pt_BR.php
+++ b/apps/files_external/l10n/pt_BR.php
@@ -4,13 +4,15 @@
"Grant access" => "Permitir acesso",
"Please provide a valid Dropbox app key and secret." => "Por favor forneça um app key e secret válido do Dropbox",
"Error configuring Google Drive storage" => "Erro ao configurar armazenamento do Google Drive",
-"Warning: \"smbclient\" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it." => "Aviso: \"smbclient\" não está instalado. Não será possível montar compartilhamentos de CIFS/SMB. Por favor, peça ao seu administrador do sistema para instalá-lo.",
-"Warning: The FTP support in PHP is not enabled or installed. Mounting of FTP shares is not possible. Please ask your system administrator to install it." => "Aviso: O suporte para FTP do PHP não está ativado ou instalado. Não será possível montar compartilhamentos FTP. Por favor, peça ao seu administrador do sistema para instalá-lo.",
+"Warning: \"smbclient\" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it." => "Aviso: \"smbclient\" não está instalado. Impossível montar compartilhamentos de CIFS/SMB. Por favor, peça ao seu administrador do sistema para instalá-lo.",
+"Warning: The FTP support in PHP is not enabled or installed. Mounting of FTP shares is not possible. Please ask your system administrator to install it." => "Aviso: O suporte para FTP do PHP não está ativado ou instalado. Impossível montar compartilhamentos FTP. Por favor, peça ao seu administrador do sistema para instalá-lo.",
"External Storage" => "Armazenamento Externo",
"Folder name" => "Nome da pasta",
+"External storage" => "Armazenamento Externo",
"Configuration" => "Configuração",
"Options" => "Opções",
"Applicable" => "Aplicável",
+"Add storage" => "Adicionar Armazenamento",
"None set" => "Nenhum definido",
"All Users" => "Todos os Usuários",
"Groups" => "Grupos",
diff --git a/apps/files_external/l10n/pt_PT.php b/apps/files_external/l10n/pt_PT.php
index 1204f13f42..aac3c1c2ca 100644
--- a/apps/files_external/l10n/pt_PT.php
+++ b/apps/files_external/l10n/pt_PT.php
@@ -4,18 +4,20 @@
"Grant access" => "Conceder acesso",
"Please provide a valid Dropbox app key and secret." => "Por favor forneça uma \"app key\" e \"secret\" do Dropbox válidas.",
"Error configuring Google Drive storage" => "Erro ao configurar o armazenamento do Google Drive",
-"Warning: \"smbclient\" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it." => "Aviso: O cliente \"smbclient\" não está instalado. Não é possível montar as partilhas CIFS/SMB . Peça ao seu administrador para instalar.",
+"Warning: \"smbclient\" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it." => "Atenção: O cliente \"smbclient\" não está instalado. Não é possível montar as partilhas CIFS/SMB . Peça ao seu administrador para instalar.",
"Warning: The FTP support in PHP is not enabled or installed. Mounting of FTP shares is not possible. Please ask your system administrator to install it." => "Aviso: O suporte FTP no PHP não está activate ou instalado. Não é possível montar as partilhas FTP. Peça ao seu administrador para instalar.",
"External Storage" => "Armazenamento Externo",
"Folder name" => "Nome da pasta",
+"External storage" => "Armazenamento Externo",
"Configuration" => "Configuração",
"Options" => "Opções",
"Applicable" => "Aplicável",
-"None set" => "Nenhum configurado",
+"Add storage" => "Adicionar armazenamento",
+"None set" => "Não definido",
"All Users" => "Todos os utilizadores",
"Groups" => "Grupos",
"Users" => "Utilizadores",
-"Delete" => "Apagar",
+"Delete" => "Eliminar",
"Enable User External Storage" => "Activar Armazenamento Externo para o Utilizador",
"Allow users to mount their own external storage" => "Permitir que os utilizadores montem o seu próprio armazenamento externo",
"SSL root certificates" => "Certificados SSL de raiz",
diff --git a/apps/files_external/l10n/sv.php b/apps/files_external/l10n/sv.php
index db0ed7a6af..45d3589228 100644
--- a/apps/files_external/l10n/sv.php
+++ b/apps/files_external/l10n/sv.php
@@ -8,9 +8,11 @@
"Warning: The FTP support in PHP is not enabled or installed. Mounting of FTP shares is not possible. Please ask your system administrator to install it." => "Varning: Stöd för FTP i PHP är inte aktiverat eller installerat. Montering av FTP-delningar är inte möjligt. Kontakta din systemadministratör för att få det installerat.",
"External Storage" => "Extern lagring",
"Folder name" => "Mappnamn",
+"External storage" => "Extern lagring",
"Configuration" => "Konfiguration",
"Options" => "Alternativ",
"Applicable" => "Tillämplig",
+"Add storage" => "Lägg till lagring",
"None set" => "Ingen angiven",
"All Users" => "Alla användare",
"Groups" => "Grupper",
diff --git a/apps/files_external/l10n/uk.php b/apps/files_external/l10n/uk.php
index f83c1a7eb6..34d19af0ee 100644
--- a/apps/files_external/l10n/uk.php
+++ b/apps/files_external/l10n/uk.php
@@ -8,9 +8,11 @@
"Warning: The FTP support in PHP is not enabled or installed. Mounting of FTP shares is not possible. Please ask your system administrator to install it." => "Попередження: Підтримка FTP в PHP не увімкнута чи не встановлена. Під'єднанатися до FTP тек неможливо. Попрохайте системного адміністратора встановити її.",
"External Storage" => "Зовнішні сховища",
"Folder name" => "Ім'я теки",
+"External storage" => "Зовнішнє сховище",
"Configuration" => "Налаштування",
"Options" => "Опції",
"Applicable" => "Придатний",
+"Add storage" => "Додати сховище",
"None set" => "Не встановлено",
"All Users" => "Усі користувачі",
"Groups" => "Групи",
diff --git a/apps/files_sharing/appinfo/app.php b/apps/files_sharing/appinfo/app.php
index d3e05cc62d..5b5893abc9 100644
--- a/apps/files_sharing/appinfo/app.php
+++ b/apps/files_sharing/appinfo/app.php
@@ -1,11 +1,11 @@
$items[key($items)]['parent'],
'path' => $items[key($items)]['path'],
+ 'storage' => $items[key($items)]['storage'],
'permissions' => $items[key($items)]['permissions'],
'uid_owner' => $items[key($items)]['uid_owner']
);
@@ -139,13 +141,28 @@ class OC_Share_Backend_File implements OCP\Share_Backend_File_Dependent {
$source = \OCP\Share::getItemSharedWith('folder', $folder, \OC_Share_Backend_File::FORMAT_SHARED_STORAGE);
if ($source) {
$source['path'] = $source['path'].substr($target, strlen($folder));
- return $source;
}
} else {
$source = \OCP\Share::getItemSharedWith('file', $target, \OC_Share_Backend_File::FORMAT_SHARED_STORAGE);
- if ($source) {
- return $source;
+ }
+ if ($source) {
+ if (isset($source['parent'])) {
+ $parent = $source['parent'];
+ while (isset($parent)) {
+ $query = \OC_DB::prepare('SELECT `parent`, `uid_owner` FROM `*PREFIX*share` WHERE `id` = ?', 1);
+ $item = $query->execute(array($parent))->fetchRow();
+ if (isset($item['parent'])) {
+ $parent = $item['parent'];
+ } else {
+ $fileOwner = $item['uid_owner'];
+ break;
+ }
+ }
+ } else {
+ $fileOwner = $source['uid_owner'];
}
+ $source['fileOwner'] = $fileOwner;
+ return $source;
}
\OCP\Util::writeLog('files_sharing', 'File source not found for: '.$target, \OCP\Util::ERROR);
return false;
diff --git a/apps/files_sharing/lib/sharedstorage.php b/apps/files_sharing/lib/sharedstorage.php
index 5a9864b64b..be0e59e673 100644
--- a/apps/files_sharing/lib/sharedstorage.php
+++ b/apps/files_sharing/lib/sharedstorage.php
@@ -45,11 +45,7 @@ class Shared extends \OC\Files\Storage\Common {
*/
private function getFile($target) {
if (!isset($this->files[$target])) {
- $source = \OC_Share_Backend_File::getSource($target);
- if ($source) {
- $source['path'] = '/'.$source['uid_owner'].'/'.$source['path'];
- }
- $this->files[$target] = $source;
+ $this->files[$target] = \OC_Share_Backend_File::getSource($target);
}
return $this->files[$target];
}
@@ -62,8 +58,16 @@ class Shared extends \OC\Files\Storage\Common {
private function getSourcePath($target) {
$source = $this->getFile($target);
if ($source) {
- \OC\Files\Filesystem::initMountPoints($source['uid_owner']);
- return $source['path'];
+ if (!isset($source['fullPath'])) {
+ \OC\Files\Filesystem::initMountPoints($source['fileOwner']);
+ $mount = \OC\Files\Mount::findByNumericId($source['storage']);
+ if ($mount) {
+ $this->files[$target]['fullPath'] = $mount->getMountPoint().$source['path'];
+ } else {
+ $this->files[$target]['fullPath'] = false;
+ }
+ }
+ return $this->files[$target]['fullPath'];
}
return false;
}
@@ -430,7 +434,7 @@ class Shared extends \OC\Files\Storage\Common {
}
$source = $this->getFile($path);
if ($source) {
- return $source['uid_owner'];
+ return $source['fileOwner'];
}
return false;
}
diff --git a/apps/files_sharing/public.php b/apps/files_sharing/public.php
index e345b91e29..1da972ad7e 100644
--- a/apps/files_sharing/public.php
+++ b/apps/files_sharing/public.php
@@ -141,7 +141,9 @@ if (isset($path)) {
OCP\Util::addscript('files', 'keyboardshortcuts');
$files = array();
$rootLength = strlen($basePath) + 1;
+ $totalSize = 0;
foreach (\OC\Files\Filesystem::getDirectoryContent($path) as $i) {
+ $totalSize += $i['size'];
$i['date'] = OCP\Util::formatDate($i['mtime']);
if ($i['type'] == 'file') {
$fileinfo = pathinfo($i['name']);
@@ -188,7 +190,9 @@ if (isset($path)) {
$folder->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true)));
$folder->assign('usedSpacePercent', 0);
$tmpl->assign('folder', $folder->fetchPage());
- $tmpl->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true)));
+ $allowZip = OCP\Config::getSystemValue('allowZipDownload', true)
+ && $totalSize <= OCP\Config::getSystemValue('maxZipInputSize', OCP\Util::computerFileSize('800 MB'));
+ $tmpl->assign('allowZipDownload', intval($allowZip));
$tmpl->assign('downloadURL',
OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&download&path=' . urlencode($getPath));
} else {
diff --git a/apps/files_sharing/templates/authenticate.php b/apps/files_sharing/templates/authenticate.php
index b6ef82da6f..7a67b6e550 100644
--- a/apps/files_sharing/templates/authenticate.php
+++ b/apps/files_sharing/templates/authenticate.php
@@ -2,8 +2,8 @@
diff --git a/apps/files_trashbin/templates/part.breadcrumb.php b/apps/files_trashbin/templates/part.breadcrumb.php
new file mode 100644
index 0000000000..2801e04e9a
--- /dev/null
+++ b/apps/files_trashbin/templates/part.breadcrumb.php
@@ -0,0 +1,20 @@
+
+
+
+
+ '>
+ t("Deleted Files")); ?>
+
+
+
+
+ "Filen %s blev genskabt til version: %s",
"No old versions available" => "Ingen gamle version tilgængelige",
"No path specified" => "Ingen sti specificeret",
+"Versions" => "Versioner",
"Revert a file to a previous version by clicking on its revert button" => "Genskab en fil til en tidligere version ved at klikke på denne genskab knap."
);
diff --git a/apps/files_versions/l10n/nl.php b/apps/files_versions/l10n/nl.php
index c50f76c7ad..9208852212 100644
--- a/apps/files_versions/l10n/nl.php
+++ b/apps/files_versions/l10n/nl.php
@@ -6,5 +6,6 @@
"File %s could not be reverted to version %s" => "Bestand %s kon niet worden teruggedraaid naar versie %s",
"No old versions available" => "Geen oudere versies beschikbaar",
"No path specified" => "Geen pad opgegeven",
+"Versions" => "Versies",
"Revert a file to a previous version by clicking on its revert button" => "Draai een bestand terug naar een voorgaande versie door te klikken op de terugdraai knop"
);
diff --git a/apps/files_versions/l10n/pt_BR.php b/apps/files_versions/l10n/pt_BR.php
index f68197ef09..f13b7931d4 100644
--- a/apps/files_versions/l10n/pt_BR.php
+++ b/apps/files_versions/l10n/pt_BR.php
@@ -1,10 +1,11 @@
"Não foi possível reverter: %s",
+"Could not revert: %s" => "Impossível reverter: %s",
"success" => "sucesso",
"File %s was reverted to version %s" => "Arquivo %s revertido à versão %s",
"failure" => "falha",
"File %s could not be reverted to version %s" => "Arquivo %s não pôde ser revertido à versão %s",
"No old versions available" => "Nenhuma versão antiga disponível",
"No path specified" => "Nenhum caminho especificado",
+"Versions" => "Versões",
"Revert a file to a previous version by clicking on its revert button" => "Reverta um arquivo a uma versão anterior clicando no botão reverter"
);
diff --git a/apps/files_versions/l10n/pt_PT.php b/apps/files_versions/l10n/pt_PT.php
index 2baccf3def..9337954729 100644
--- a/apps/files_versions/l10n/pt_PT.php
+++ b/apps/files_versions/l10n/pt_PT.php
@@ -6,5 +6,6 @@
"File %s could not be reverted to version %s" => "Não foi possível reverter o ficheiro %s para a versão %s",
"No old versions available" => "Não existem versões mais antigas",
"No path specified" => "Nenhum caminho especificado",
+"Versions" => "Versões",
"Revert a file to a previous version by clicking on its revert button" => "Reverter um ficheiro para uma versão anterior clicando no seu botão reverter."
);
diff --git a/apps/files_versions/l10n/uk.php b/apps/files_versions/l10n/uk.php
index bfee066c63..e722d95497 100644
--- a/apps/files_versions/l10n/uk.php
+++ b/apps/files_versions/l10n/uk.php
@@ -6,5 +6,6 @@
"File %s could not be reverted to version %s" => "Файл %s не може бути відновлений до версії %s",
"No old versions available" => "Старі версії недоступні",
"No path specified" => "Шлях не вказаний",
+"Versions" => "Версії",
"Revert a file to a previous version by clicking on its revert button" => "Відновити файл на попередню версію, натиснувши на кнопку Відновити"
);
diff --git a/apps/files_versions/lib/versions.php b/apps/files_versions/lib/versions.php
index 178ef72273..20611c61ec 100644
--- a/apps/files_versions/lib/versions.php
+++ b/apps/files_versions/lib/versions.php
@@ -61,7 +61,7 @@ class Storage {
}
return false;
}
-
+
/**
* write to the database how much space is in use for versions
*
@@ -82,6 +82,14 @@ class Storage {
*/
public static function store($filename) {
if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') {
+
+ // if the file gets streamed we need to remove the .part extension
+ // to get the right target
+ $ext = pathinfo($filename, PATHINFO_EXTENSION);
+ if ($ext === 'part') {
+ $filename = substr($filename, 0, strlen($filename)-5);
+ }
+
list($uid, $filename) = self::getUidAndFilename($filename);
$files_view = new \OC\Files\View('/'.$uid .'/files');
@@ -442,12 +450,12 @@ class Storage {
}
}
- // check if enough space is available after versions are rearranged.
- // if not we delete the oldest versions until we meet the size limit for versions
- $numOfVersions = count($all_versions);
+ // Check if enough space is available after versions are rearranged.
+ // If not we delete the oldest versions until we meet the size limit for versions,
+ // but always keep the two latest versions
+ $numOfVersions = count($all_versions) -2 ;
$i = 0;
- while ($availableSpace < 0) {
- if ($i = $numOfVersions-2) break; // keep at least the last version
+ while ($availableSpace < 0 && $i < $numOfVersions) {
$versions_fileview->unlink($all_versions[$i]['path'].'.v'.$all_versions[$i]['version']);
$versionsSize -= $all_versions[$i]['size'];
$availableSpace += $all_versions[$i]['size'];
diff --git a/apps/user_ldap/group_ldap.php b/apps/user_ldap/group_ldap.php
index 4fd4c63691..efa5f8b4fe 100644
--- a/apps/user_ldap/group_ldap.php
+++ b/apps/user_ldap/group_ldap.php
@@ -209,6 +209,19 @@ class GROUP_LDAP extends lib\Access implements \OCP\GroupInterface {
return $groupUsers;
}
+ /**
+ * @brief get a list of all display names in a group
+ * @returns array with display names (value) and user ids(key)
+ */
+ public function displayNamesInGroup($gid, $search, $limit, $offset) {
+ $users = $this->usersInGroup($gid, $search, $limit, $offset);
+ $displayNames = array();
+ foreach($users as $user) {
+ $displayNames[$user] = \OC_User::getDisplayName($user);
+ }
+ return $displayNames;
+ }
+
/**
* @brief get a list of all groups
* @returns array with group names
@@ -287,8 +300,6 @@ class GROUP_LDAP extends lib\Access implements \OCP\GroupInterface {
* compared with OC_USER_BACKEND_CREATE_USER etc.
*/
public function implementsActions($actions) {
- //always returns false, because possible actions are modifying
- // actions. We do not write to LDAP, at least for now.
- return false;
+ return (bool)(OC_GROUP_BACKEND_GET_DISPLAYNAME & $actions);
}
}
diff --git a/apps/user_ldap/group_proxy.php b/apps/user_ldap/group_proxy.php
index 5aa1aef0e0..68d2efe387 100644
--- a/apps/user_ldap/group_proxy.php
+++ b/apps/user_ldap/group_proxy.php
@@ -135,6 +135,22 @@ class Group_Proxy extends lib\Proxy implements \OCP\GroupInterface {
return $users;
}
+ /**
+ * @brief get a list of all display names in a group
+ * @returns array with display names (value) and user ids(key)
+ */
+ public function displayNamesInGroup($gid, $search, $limit, $offset) {
+ $displayNames = array();
+
+ foreach($this->backends as $backend) {
+ $backendUsers = $backend->displayNamesInGroup($gid, $search, $limit, $offset);
+ if (is_array($backendUsers)) {
+ $displayNames = array_merge($displayNames, $backendUsers);
+ }
+ }
+ return $displayNames;
+ }
+
/**
* @brief get a list of all groups
* @returns array with group names
diff --git a/apps/user_ldap/l10n/cs_CZ.php b/apps/user_ldap/l10n/cs_CZ.php
index 4c74f195cf..c5d77026b9 100644
--- a/apps/user_ldap/l10n/cs_CZ.php
+++ b/apps/user_ldap/l10n/cs_CZ.php
@@ -1,5 +1,5 @@
"Selhalo smazání konfigurace serveru",
+"Failed to delete the server configuration" => "Selhalo smazání nastavení serveru",
"The configuration is valid and the connection could be established!" => "Nastavení je v pořádku a spojení bylo navázáno.",
"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "Konfigurace je v pořádku, ale spojení selhalo. Zkontrolujte, prosím, nastavení serveru a přihlašovací údaje.",
"The configuration is invalid. Please look in the ownCloud log for further details." => "Nastavení je neplatné. Zkontrolujte, prosím, záznam ownCloud pro další podrobnosti.",
@@ -48,6 +48,7 @@
"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",
"Not recommended, use for testing only." => "Není doporučeno, pouze pro testovací účely.",
+"Cache Time-To-Live" => "TTL vyrovnávací paměti",
"in seconds. A change empties the cache." => "ve vteřinách. Změna vyprázdní vyrovnávací paměť.",
"Directory Settings" => "Nastavení adresáře",
"User Display Name Field" => "Pole pro zobrazované jméno uživatele",
@@ -63,7 +64,12 @@
"Group Search Attributes" => "Atributy vyhledávání skupin",
"Group-Member association" => "Asociace člena skupiny",
"Special Attributes" => "Speciální atributy",
+"Quota Field" => "Pole pro kvótu",
+"Quota Default" => "Výchozí kvóta",
"in bytes" => "v bajtech",
+"Email Field" => "Pole e-mailu",
+"User Home Folder Naming Rule" => "Pravidlo pojmenování domovské složky uživatele",
"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Ponechte prázdné pro uživatelské jméno (výchozí). Jinak uveďte LDAP/AD parametr.",
+"Test Configuration" => "Vyzkoušet nastavení",
"Help" => "Nápověda"
);
diff --git a/apps/user_ldap/l10n/de_DE.php b/apps/user_ldap/l10n/de_DE.php
index c88ed22b4f..bff7b0312c 100644
--- a/apps/user_ldap/l10n/de_DE.php
+++ b/apps/user_ldap/l10n/de_DE.php
@@ -48,6 +48,7 @@
"Turn off SSL certificate validation." => "Schalten Sie die SSL-Zertifikatsprüfung aus.",
"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Falls die Verbindung es erfordert, muss das SSL-Zertifikat des LDAP-Server importiert werden.",
"Not recommended, use for testing only." => "Nicht empfohlen, nur zu Testzwecken.",
+"Cache Time-To-Live" => "Speichere Time-To-Live zwischen",
"in seconds. A change empties the cache." => "in Sekunden. Eine Änderung leert den Cache.",
"Directory Settings" => "Verzeichniseinstellungen",
"User Display Name Field" => "Feld für den Anzeigenamen des Benutzers",
@@ -63,7 +64,12 @@
"Group Search Attributes" => "Gruppen-Suche Eigenschaften",
"Group-Member association" => "Assoziation zwischen Gruppe und Benutzer",
"Special Attributes" => "Besondere Eigenschaften",
+"Quota Field" => "Kontingent Feld",
+"Quota Default" => "Kontingent Standard",
"in bytes" => "in Bytes",
+"Email Field" => "E-Mail Feld",
+"User Home Folder Naming Rule" => "Benennungsregel für das Heimatverzeichnis des Benutzers",
"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Ohne Eingabe wird der Benutzername (Standard) verwendet. Anderenfall trage ein LDAP/AD-Attribut ein.",
+"Test Configuration" => "Testkonfiguration",
"Help" => "Hilfe"
);
diff --git a/apps/user_ldap/l10n/es.php b/apps/user_ldap/l10n/es.php
index c0a444c0c7..1f0f92e7ac 100644
--- a/apps/user_ldap/l10n/es.php
+++ b/apps/user_ldap/l10n/es.php
@@ -15,7 +15,7 @@
"Warning: The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "Advertencia: El módulo LDAP de PHP no está instalado, el sistema no funcionará. Por favor consulte al administrador del sistema para instalarlo.",
"Server configuration" => "Configuración del Servidor",
"Add Server Configuration" => "Agregar configuracion del servidor",
-"Host" => "Máquina",
+"Host" => "Servidor",
"You can omit the protocol, except you require SSL. Then start with ldaps://" => "Puede omitir el protocolo, excepto si requiere SSL. En ese caso, empiece con ldaps://",
"Base DN" => "DN base",
"One Base DN per line" => "Un DN Base por línea",
@@ -48,6 +48,7 @@
"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.",
"Not recommended, use for testing only." => "No recomendado, sólo para pruebas.",
+"Cache Time-To-Live" => "Cache TTL",
"in seconds. A change empties the cache." => "en segundos. Un cambio vacía la cache.",
"Directory Settings" => "Configuracion de directorio",
"User Display Name Field" => "Campo de nombre de usuario a mostrar",
@@ -63,7 +64,11 @@
"Group Search Attributes" => "Atributos de busqueda de grupo",
"Group-Member association" => "Asociación Grupo-Miembro",
"Special Attributes" => "Atributos especiales",
+"Quota Field" => "Cuota",
+"Quota Default" => "Cuota por defecto",
"in bytes" => "en bytes",
+"Email Field" => "E-mail",
"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Vacío para el nombre de usuario (por defecto). En otro caso, especifique un atributo LDAP/AD.",
+"Test Configuration" => "Configuración de prueba",
"Help" => "Ayuda"
);
diff --git a/apps/user_ldap/l10n/it.php b/apps/user_ldap/l10n/it.php
index 86887970da..a2790fd1de 100644
--- a/apps/user_ldap/l10n/it.php
+++ b/apps/user_ldap/l10n/it.php
@@ -48,6 +48,7 @@
"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.",
"Not recommended, use for testing only." => "Non consigliato, utilizzare solo per test.",
+"Cache Time-To-Live" => "Tempo di vita della cache",
"in seconds. A change empties the cache." => "in secondi. Il cambio svuota la cache.",
"Directory Settings" => "Impostazioni delle cartelle",
"User Display Name Field" => "Campo per la visualizzazione del nome utente",
@@ -67,6 +68,7 @@
"Quota Default" => "Quota predefinita",
"in bytes" => "in byte",
"Email Field" => "Campo Email",
+"User Home Folder Naming Rule" => "Regola di assegnazione del nome della cartella utente",
"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Lascia vuoto per il nome utente (predefinito). Altrimenti, specifica un attributo LDAP/AD.",
"Test Configuration" => "Prova configurazione",
"Help" => "Aiuto"
diff --git a/apps/user_ldap/l10n/nb_NO.php b/apps/user_ldap/l10n/nb_NO.php
index 8aab71354b..c4700245f2 100644
--- a/apps/user_ldap/l10n/nb_NO.php
+++ b/apps/user_ldap/l10n/nb_NO.php
@@ -1,11 +1,58 @@
"Sletting feilet",
+"Failed to delete the server configuration" => "Klarte ikke å slette tjener-konfigurasjonen.",
+"The configuration is valid and the connection could be established!" => "Konfigurasjonen er i orden og tilkoblingen skal være etablert!",
+"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "Konfigurasjonen er i orden, men Bind mislyktes. Vennligst sjekk tjener-konfigurasjonen og påloggingsinformasjonen.",
+"The configuration is invalid. Please look in the ownCloud log for further details." => "Konfigurasjonen er ikke i orden. Vennligst se ownClouds logfil for flere detaljer.",
+"Deletion failed" => "Sletting mislyktes",
+"Take over settings from recent server configuration?" => "Hent innstillinger fra tidligere tjener-konfigurasjon?",
+"Keep settings?" => "Behold innstillinger?",
+"Cannot add server configuration" => "Kan ikke legge til tjener-konfigurasjon",
+"Connection test succeeded" => "Tilkoblingstest lyktes",
+"Connection test failed" => "Tilkoblingstest mislyktes",
+"Do you really want to delete the current Server Configuration?" => "Er du sikker på at du vil slette aktiv tjener-konfigurasjon?",
+"Confirm Deletion" => "Bekreft sletting",
+"Warning: Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "Advarsel:Apps user_ldap og user_webdavauth er ikke kompatible. Du kan oppleve uventet atferd fra systemet. Vennligst spør din system-administrator om å deaktivere en av dem.",
+"Warning: The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "Warning: PHP LDAP modulen er ikke installert, hjelperen vil ikke virke. Vennligst be din system-administrator om å installere den.",
+"Server configuration" => "Tjener-konfigurasjon",
+"Add Server Configuration" => "Legg til tjener-konfigurasjon",
+"Host" => "Tjener",
+"You can omit the protocol, except you require SSL. Then start with ldaps://" => "Du kan utelate protokollen, men du er påkrevd å bruke SSL. Deretter starte med ldaps://",
+"Base DN" => "Base DN",
+"One Base DN per line" => "En hoved DN pr. linje",
+"You can specify Base DN for users and groups in the Advanced tab" => "Du kan spesifisere Base DN for brukere og grupper under Avansert fanen",
+"User DN" => "Bruker DN",
+"The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty." => "DN nummeret til klienten som skal bindes til, f.eks. uid=agent,dc=example,dc=com. For anonym tilgang, la DN- og passord-feltet stå tomt.",
"Password" => "Passord",
+"For anonymous access, leave DN and Password empty." => "For anonym tilgang, la DN- og passord-feltet stå tomt.",
+"User Login Filter" => "Brukerpålogging filter",
+"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action." => "Definerer filteret som skal brukes når et påloggingsforsøk blir utført. %%uid erstatter brukernavnet i innloggingshandlingen.",
+"use %%uid placeholder, e.g. \"uid=%%uid\"" => "bruk %%uid plassholder, f.eks. \"uid=%%uid\"",
+"User List Filter" => "Brukerliste filter",
+"Defines the filter to apply, when retrieving users." => "Definerer filteret som skal brukes, når systemet innhenter brukere.",
+"without any placeholder, e.g. \"objectClass=person\"." => "uten noe plassholder, f.eks. \"objectClass=person\".",
"Group Filter" => "Gruppefilter",
+"Defines the filter to apply, when retrieving groups." => "Definerer filteret som skal brukes, når systemet innhenter grupper.",
+"without any placeholder, e.g. \"objectClass=posixGroup\"." => "uten noe plassholder, f.eks. \"objectClass=posixGroup\".",
+"Configuration Active" => "Konfigurasjon aktiv",
+"When unchecked, this configuration will be skipped." => "Når ikke huket av så vil denne konfigurasjonen bli hoppet over.",
"Port" => "Port",
+"Backup (Replica) Host" => "Sikkerhetskopierings (Replica) vert",
"Use TLS" => "Bruk TLS",
+"Case insensitve LDAP server (Windows)" => "Case-insensitiv LDAP tjener (Windows)",
+"Turn off SSL certificate validation." => "Slå av SSL-sertifikat validering",
+"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Hvis tilgang kun fungerer med dette alternativet, importer LDAP-tjenerens SSL-sertifikat til din egen ownCloud tjener.",
"Not recommended, use for testing only." => "Ikke anbefalt, bruk kun for testing",
"in seconds. A change empties the cache." => "i sekunder. En endring tømmer bufferen.",
+"User Display Name Field" => "Vis brukerens navnfelt",
+"The LDAP attribute to use to generate the user`s ownCloud name." => "LDAP-attributen å bruke for å generere brukers ownCloud navn.",
+"Base User Tree" => "Hovedbruker tre",
+"One User Base DN per line" => "En Bruker Base DN pr. linje",
+"Group Display Name Field" => "Vis gruppens navnfelt",
+"The LDAP attribute to use to generate the groups`s ownCloud name." => "LDAP-attributen å bruke for å generere gruppens ownCloud navn.",
+"Base Group Tree" => "Hovedgruppe tre",
+"One Group Base DN per line" => "En gruppe hoved-DN pr. linje",
+"Group-Member association" => "gruppe-medlem assosiasjon",
"in bytes" => "i bytes",
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "La stå tom for brukernavn (standard). Ellers, spesifiser en LDAP/AD attributt.",
"Help" => "Hjelp"
);
diff --git a/apps/user_ldap/l10n/nl.php b/apps/user_ldap/l10n/nl.php
index 0eda263aa1..7973c66cd1 100644
--- a/apps/user_ldap/l10n/nl.php
+++ b/apps/user_ldap/l10n/nl.php
@@ -48,6 +48,7 @@
"Turn off SSL certificate validation." => "Schakel SSL certificaat validatie uit.",
"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Als de connectie alleen werkt met deze optie, importeer dan het LDAP server SSL certificaat naar je ownCloud server.",
"Not recommended, use for testing only." => "Niet aangeraden, gebruik alleen voor test doeleinden.",
+"Cache Time-To-Live" => "Cache time-to-live",
"in seconds. A change empties the cache." => "in seconden. Een verandering maakt de cache leeg.",
"Directory Settings" => "Mapinstellingen",
"User Display Name Field" => "Gebruikers Schermnaam Veld",
@@ -63,7 +64,12 @@
"Group Search Attributes" => "Attributen voor groepszoekopdrachten",
"Group-Member association" => "Groepslid associatie",
"Special Attributes" => "Speciale attributen",
+"Quota Field" => "Quota veld",
+"Quota Default" => "Quota standaard",
"in bytes" => "in bytes",
+"Email Field" => "E-mailveld",
+"User Home Folder Naming Rule" => "Gebruikers Home map naamgevingsregel",
"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Laat leeg voor de gebruikersnaam (standaard). Of, specificeer een LDAP/AD attribuut.",
+"Test Configuration" => "Test configuratie",
"Help" => "Help"
);
diff --git a/apps/user_ldap/l10n/pt_BR.php b/apps/user_ldap/l10n/pt_BR.php
index e3d2da463c..a728ea15fd 100644
--- a/apps/user_ldap/l10n/pt_BR.php
+++ b/apps/user_ldap/l10n/pt_BR.php
@@ -2,20 +2,20 @@
"Failed to delete the server configuration" => "Falha ao deletar a configuração do servidor",
"The configuration is valid and the connection could be established!" => "A configuração é válida e a conexão foi estabelecida!",
"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "A configuração é válida, mas o Bind falhou. Confira as configurações do servidor e as credenciais.",
-"The configuration is invalid. Please look in the ownCloud log for further details." => "A configuração é inválida. Leia o \"log\" do ownCloud para mais detalhes.",
+"The configuration is invalid. Please look in the ownCloud log for further details." => "A configuração é inválida. Leia o log do ownCloud para mais detalhes.",
"Deletion failed" => "Remoção falhou",
"Take over settings from recent server configuration?" => "Tomar parámetros de recente configuração de servidor?",
"Keep settings?" => "Manter ajustes?",
-"Cannot add server configuration" => "Não foi possível adicionar a configuração do servidor",
-"Connection test succeeded" => "Teste de conexão bem sucedido",
+"Cannot add server configuration" => "Impossível adicionar a configuração do servidor",
+"Connection test succeeded" => "Teste de conexão bem sucedida",
"Connection test failed" => "Teste de conexão falhou",
"Do you really want to delete the current Server Configuration?" => "Você quer realmente deletar as atuais Configurações de Servidor?",
"Confirm Deletion" => "Confirmar Exclusão",
"Warning: Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "Aviso: Os aplicativos user_ldap e user_webdavauth são incompatíveis. Você deverá experienciar comportamento inesperado. Por favor, peça ao seu administrador do sistema para desabilitar um deles.",
"Warning: The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "Aviso: O módulo PHP LDAP não está instalado, o backend não funcionará. Por favor, peça ao seu administrador do sistema para instalá-lo.",
"Server configuration" => "Configuração de servidor",
-"Add Server Configuration" => "Adicionar configuração de servidor",
-"Host" => "Host",
+"Add Server Configuration" => "Adicionar Configuração de Servidor",
+"Host" => "Servidor",
"You can omit the protocol, except you require SSL. Then start with ldaps://" => "Você pode omitir o protocolo, exceto quando requerer SSL. Então inicie com ldaps://",
"Base DN" => "DN Base",
"One Base DN per line" => "Uma base DN por linha",
@@ -28,39 +28,48 @@
"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action." => "Define o filtro pra aplicar ao efetuar uma tentativa de login. %%uuid substitui o nome de usuário na ação de login.",
"use %%uid placeholder, e.g. \"uid=%%uid\"" => "use %%uid placeholder, ex. \"uid=%%uid\"",
"User List Filter" => "Filtro de Lista de Usuário",
-"Defines the filter to apply, when retrieving users." => "Define filtro a aplicar ao obter usuários.",
+"Defines the filter to apply, when retrieving users." => "Define filtro a ser aplicado ao obter usuários.",
"without any placeholder, e.g. \"objectClass=person\"." => "sem nenhum espaço reservado, ex. \"objectClass=person\".",
"Group Filter" => "Filtro de Grupo",
"Defines the filter to apply, when retrieving groups." => "Define o filtro a aplicar ao obter grupos.",
"without any placeholder, e.g. \"objectClass=posixGroup\"." => "sem nenhum espaço reservado, ex. \"objectClass=posixGroup\"",
-"Connection Settings" => "Configurações de conexão",
+"Connection Settings" => "Configurações de Conexão",
"Configuration Active" => "Configuração ativa",
-"When unchecked, this configuration will be skipped." => "Quando assinalada, esta configuração será pulada.",
+"When unchecked, this configuration will be skipped." => "Quando não marcada, esta configuração será ignorada.",
"Port" => "Porta",
+"Backup (Replica) Host" => "Servidor de Backup (Réplica)",
+"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Defina um servidor de backup opcional. Ele deverá ser uma réplica do servidor LDAP/AD principal.",
+"Backup (Replica) Port" => "Porta do Backup (Réplica)",
"Disable Main Server" => "Desativar Servidor Principal",
-"When switched on, ownCloud will only connect to the replica server." => "Quando ativado, ownCloud somente conectar-se-á ao servidor réplica.",
+"When switched on, ownCloud will only connect to the replica server." => "Quando ativado, ownCloud somente se conectará ao servidor de réplica.",
"Use TLS" => "Usar TLS",
"Do not use it additionally for LDAPS connections, it will fail." => "Não use adicionalmente para conexões LDAPS, pois falhará.",
"Case insensitve LDAP server (Windows)" => "Servidor LDAP sensível à caixa alta (Windows)",
"Turn off SSL certificate validation." => "Desligar validação de certificado SSL.",
"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Se a conexão só funciona com essa opção, importe o certificado SSL do servidor LDAP no seu servidor ownCloud.",
"Not recommended, use for testing only." => "Não recomendado, use somente para testes.",
+"Cache Time-To-Live" => "Cache Time-To-Live",
"in seconds. A change empties the cache." => "em segundos. Uma mudança esvaziará o cache.",
"Directory Settings" => "Configurações de Diretório",
"User Display Name Field" => "Campo Nome de Exibição de Usuário",
"The LDAP attribute to use to generate the user`s ownCloud name." => "O atributo LDAP para usar para gerar nome ownCloud do usuário.",
"Base User Tree" => "Árvore de Usuário Base",
"One User Base DN per line" => "Um usuário-base DN por linha",
-"User Search Attributes" => "Atributos de busca de usuário",
+"User Search Attributes" => "Atributos de Busca de Usuário",
"Optional; one attribute per line" => "Opcional; um atributo por linha",
"Group Display Name Field" => "Campo Nome de Exibição de Grupo",
"The LDAP attribute to use to generate the groups`s ownCloud name." => "O atributo LDAP para usar para gerar nome ownCloud do grupo.",
"Base Group Tree" => "Árvore de Grupo Base",
"One Group Base DN per line" => "Um grupo-base DN por linha",
-"Group Search Attributes" => "Atributos de busca de grupo",
+"Group Search Attributes" => "Atributos de Busca de Grupo",
"Group-Member association" => "Associação Grupo-Membro",
"Special Attributes" => "Atributos Especiais",
+"Quota Field" => "Campo de Cota",
+"Quota Default" => "Cota Padrão",
"in bytes" => "em bytes",
+"Email Field" => "Campo de Email",
+"User Home Folder Naming Rule" => "Regra para Nome da Pasta Pessoal do Usuário",
"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Deixe vazio para nome de usuário (padrão). Caso contrário, especifique um atributo LDAP/AD.",
+"Test Configuration" => "Teste de Configuração",
"Help" => "Ajuda"
);
diff --git a/apps/user_ldap/l10n/pt_PT.php b/apps/user_ldap/l10n/pt_PT.php
index bfe6656b3b..3092d06143 100644
--- a/apps/user_ldap/l10n/pt_PT.php
+++ b/apps/user_ldap/l10n/pt_PT.php
@@ -48,6 +48,7 @@
"Turn off SSL certificate validation." => "Desligar a validação de certificado SSL.",
"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Se a ligação apenas funcionar com está opção, importe o certificado SSL do servidor LDAP para o seu servidor do ownCloud.",
"Not recommended, use for testing only." => "Não recomendado, utilizado apenas para testes!",
+"Cache Time-To-Live" => "Cache do tempo de vida dos objetos no servidor",
"in seconds. A change empties the cache." => "em segundos. Uma alteração esvazia a cache.",
"Directory Settings" => "Definições de directorias",
"User Display Name Field" => "Mostrador do nome de utilizador.",
@@ -63,7 +64,12 @@
"Group Search Attributes" => "Atributos de pesquisa de grupo",
"Group-Member association" => "Associar utilizador ao grupo.",
"Special Attributes" => "Atributos especiais",
+"Quota Field" => "Quota",
+"Quota Default" => "Quota padrão",
"in bytes" => "em bytes",
+"Email Field" => "Campo de email",
+"User Home Folder Naming Rule" => "Regra da pasta inicial do utilizador",
"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Deixe vazio para nome de utilizador (padrão). De outro modo, especifique um atributo LDAP/AD.",
+"Test Configuration" => "Testar a configuração",
"Help" => "Ajuda"
);
diff --git a/apps/user_ldap/l10n/sv.php b/apps/user_ldap/l10n/sv.php
index 702912f9c6..12ecc7b163 100644
--- a/apps/user_ldap/l10n/sv.php
+++ b/apps/user_ldap/l10n/sv.php
@@ -63,7 +63,9 @@
"Group Search Attributes" => "Gruppsökningsattribut",
"Group-Member association" => "Attribut för gruppmedlemmar",
"Special Attributes" => "Specialattribut",
+"Quota Field" => "Kvotfält",
"in bytes" => "i bytes",
+"Email Field" => "E-postfält",
"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Lämnas tomt för användarnamn (standard). Ange annars ett LDAP/AD-attribut.",
"Help" => "Hjälp"
);
diff --git a/apps/user_ldap/l10n/uk.php b/apps/user_ldap/l10n/uk.php
index 3b85e095ff..623d34c98e 100644
--- a/apps/user_ldap/l10n/uk.php
+++ b/apps/user_ldap/l10n/uk.php
@@ -48,6 +48,7 @@
"Turn off SSL certificate validation." => "Вимкнути перевірку SSL сертифіката.",
"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Якщо з'єднання працює лише з цією опцією, імпортуйте SSL сертифікат LDAP сервера у ваший ownCloud сервер.",
"Not recommended, use for testing only." => "Не рекомендується, використовуйте лише для тестів.",
+"Cache Time-To-Live" => "Час актуальності Кеша",
"in seconds. A change empties the cache." => "в секундах. Зміна очищує кеш.",
"Directory Settings" => "Налаштування Каталога",
"User Display Name Field" => "Поле, яке відображає Ім'я Користувача",
@@ -63,7 +64,12 @@
"Group Search Attributes" => "Пошукові Атрибути Групи",
"Group-Member association" => "Асоціація Група-Член",
"Special Attributes" => "Спеціальні Атрибути",
+"Quota Field" => "Поле Квоти",
+"Quota Default" => "Квота за замовчанням",
"in bytes" => "в байтах",
+"Email Field" => "Поле Ел. пошти",
+"User Home Folder Naming Rule" => "Правило іменування домашньої теки користувача",
"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Залиште порожнім для імені користувача (за замовчанням). Інакше, вкажіть атрибут LDAP/AD.",
+"Test Configuration" => "Тестове налаштування",
"Help" => "Допомога"
);
diff --git a/apps/user_ldap/lib/access.php b/apps/user_ldap/lib/access.php
index 05249b8f16..a8cfd45bf4 100644
--- a/apps/user_ldap/lib/access.php
+++ b/apps/user_ldap/lib/access.php
@@ -144,6 +144,9 @@ abstract class Access {
'\;' => '\5c3B',
'\"' => '\5c22',
'\#' => '\5c23',
+ '(' => '\28',
+ ')' => '\29',
+ '*' => '\2A',
);
$dn = str_replace(array_keys($replacements), array_values($replacements), $dn);
@@ -650,7 +653,7 @@ abstract class Access {
$linkResources = array_pad(array(), count($base), $link_resource);
$sr = ldap_search($linkResources, $base, $filter, $attr);
$error = ldap_errno($link_resource);
- if(!is_array($sr) || $error > 0) {
+ if(!is_array($sr) || $error != 0) {
\OCP\Util::writeLog('user_ldap',
'Error when searching: '.ldap_error($link_resource).' code '.ldap_errno($link_resource),
\OCP\Util::ERROR);
diff --git a/apps/user_ldap/settings.php b/apps/user_ldap/settings.php
index c55a718a82..05497ae8a3 100644
--- a/apps/user_ldap/settings.php
+++ b/apps/user_ldap/settings.php
@@ -42,17 +42,7 @@ OCP\Util::addstyle('user_ldap', 'settings');
$tmpl = new OCP\Template('user_ldap', 'settings');
$prefixes = \OCA\user_ldap\lib\Helper::getServerConfigurationPrefixes();
-$scoHtml = '';
-$i = 1;
-$sel = ' selected';
-foreach($prefixes as $prefix) {
- $scoHtml .= '';
- $sel = '';
-}
-if(count($prefixes) == 0) {
- $scoHtml .= '';
-}
-$tmpl->assign('serverConfigurationOptions', $scoHtml);
+$tmpl->assign('serverConfigurationPrefixes', $prefixes);
// assign default values
if(!isset($ldap)) {
diff --git a/apps/user_ldap/templates/settings.php b/apps/user_ldap/templates/settings.php
index cd004cec4b..d3c2c29890 100644
--- a/apps/user_ldap/templates/settings.php
+++ b/apps/user_ldap/templates/settings.php
@@ -14,7 +14,20 @@
|
---|