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 @@

- +

- \ No newline at end of file + diff --git a/apps/files_trashbin/appinfo/app.php b/apps/files_trashbin/appinfo/app.php index 7c04e583db..a6a99db034 100644 --- a/apps/files_trashbin/appinfo/app.php +++ b/apps/files_trashbin/appinfo/app.php @@ -1,7 +1,7 @@ assign('breadcrumb', $breadcrumb); $breadcrumbNav->assign('baseURL', OCP\Util::linkTo('files_trashbin', 'index.php') . '?dir='); +$breadcrumbNav->assign('home', OCP\Util::linkTo('files', 'index.php')); $list = new OCP\Template('files_trashbin', 'part.list', ''); $list->assign('files', $files); @@ -105,6 +106,7 @@ $list->assign('baseURL', OCP\Util::linkTo('files_trashbin', 'index.php'). '?dir= $list->assign('downloadURL', OCP\Util::linkTo('files_trashbin', 'download.php') . '?file='.$dir); $list->assign('disableSharing', true); $list->assign('dirlisting', $dirlisting); +$tmpl->assign('dirlisting', $dirlisting); $list->assign('disableDownloadActions', true); $tmpl->assign('breadcrumb', $breadcrumbNav->fetchPage()); $tmpl->assign('fileList', $list->fetchPage()); diff --git a/apps/files_trashbin/l10n/nb_NO.php b/apps/files_trashbin/l10n/nb_NO.php index dc7b8fe97c..fa9543a5eb 100644 --- a/apps/files_trashbin/l10n/nb_NO.php +++ b/apps/files_trashbin/l10n/nb_NO.php @@ -1,8 +1,16 @@ "Kunne ikke slette %s fullstendig", +"Couldn't restore %s" => "Kunne ikke gjenopprette %s", +"perform restore operation" => "utfør gjenopprettings operasjon", +"delete file permanently" => "slett filer permanent", +"Delete permanently" => "Slett permanent", "Name" => "Navn", +"Deleted" => "Slettet", "1 folder" => "1 mappe", "{count} folders" => "{count} mapper", "1 file" => "1 fil", "{count} files" => "{count} filer", +"Nothing in here. Your trash bin is empty!" => "Ingenting her. Søppelkassen din er tom!", +"Restore" => "Gjenopprett", "Delete" => "Slett" ); diff --git a/apps/files_trashbin/templates/index.php b/apps/files_trashbin/templates/index.php index 4c865d8981..cb5edaa2c9 100644 --- a/apps/files_trashbin/templates/index.php +++ b/apps/files_trashbin/templates/index.php @@ -9,7 +9,7 @@
t('Nothing in here. Your trash bin is empty!'))?>
- +
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 @@ + + + + + +
svg" + data-dir=''> + +
+ "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 @@