summaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
Diffstat (limited to 'apps')
-rw-r--r--apps/encryption/appinfo/app.php1
-rw-r--r--apps/encryption/appinfo/application.php2
-rw-r--r--apps/encryption/appinfo/register_command.php1
-rw-r--r--apps/encryption/appinfo/routes.php2
-rw-r--r--apps/encryption/command/migratekeys.php1
-rw-r--r--apps/encryption/controller/recoverycontroller.php2
-rw-r--r--apps/encryption/controller/settingscontroller.php1
-rw-r--r--apps/encryption/controller/statuscontroller.php1
-rw-r--r--apps/encryption/hooks/contracts/ihook.php2
-rw-r--r--apps/encryption/l10n/de.js1
-rw-r--r--apps/encryption/l10n/de.json1
-rw-r--r--apps/encryption/l10n/ru.js3
-rw-r--r--apps/encryption/l10n/ru.json3
-rw-r--r--apps/encryption/l10n/tr.js4
-rw-r--r--apps/encryption/l10n/tr.json4
-rw-r--r--apps/encryption/lib/crypto/crypt.php1
-rw-r--r--apps/encryption/lib/crypto/encryption.php1
-rw-r--r--apps/encryption/lib/hookmanager.php3
-rw-r--r--apps/encryption/lib/migration.php2
-rw-r--r--apps/encryption/lib/recovery.php2
-rw-r--r--apps/encryption/lib/session.php2
-rw-r--r--apps/encryption/lib/users/setup.php1
-rw-r--r--apps/encryption/lib/util.php2
-rw-r--r--apps/encryption/tests/controller/RecoveryControllerTest.php1
-rw-r--r--apps/encryption/tests/controller/SettingsControllerTest.php1
-rw-r--r--apps/encryption/tests/hooks/UserHooksTest.php1
-rw-r--r--apps/encryption/tests/lib/HookManagerTest.php2
-rw-r--r--apps/encryption/tests/lib/KeyManagerTest.php1
-rw-r--r--apps/encryption/tests/lib/MigrationTest.php1
-rw-r--r--apps/encryption/tests/lib/RecoveryTest.php2
-rw-r--r--apps/encryption/tests/lib/SessionTest.php1
-rw-r--r--apps/encryption/tests/lib/UtilTest.php2
-rw-r--r--apps/encryption/tests/lib/crypto/cryptTest.php1
-rw-r--r--apps/encryption/tests/lib/crypto/encryptionTest.php2
-rw-r--r--apps/encryption/tests/lib/users/SetupTest.php3
-rw-r--r--apps/files/admin.php1
-rw-r--r--apps/files/ajax/list.php1
-rw-r--r--apps/files/ajax/scan.php1
-rw-r--r--apps/files/ajax/upload.php1
-rw-r--r--apps/files/appinfo/remote.php3
-rw-r--r--apps/files/appinfo/routes.php1
-rw-r--r--apps/files/appinfo/update.php1
-rw-r--r--apps/files/controller/apicontroller.php1
-rw-r--r--apps/files/js/filelist.js4
-rw-r--r--apps/files/l10n/de.js6
-rw-r--r--apps/files/l10n/de.json6
-rw-r--r--apps/files/l10n/es.js3
-rw-r--r--apps/files/l10n/es.json3
-rw-r--r--apps/files/l10n/fr.js2
-rw-r--r--apps/files/l10n/fr.json2
-rw-r--r--apps/files/l10n/hu_HU.js3
-rw-r--r--apps/files/l10n/hu_HU.json3
-rw-r--r--apps/files/l10n/id.js3
-rw-r--r--apps/files/l10n/id.json3
-rw-r--r--apps/files/l10n/nds.js9
-rw-r--r--apps/files/l10n/nds.json9
-rw-r--r--apps/files/l10n/ru.js5
-rw-r--r--apps/files/l10n/ru.json5
-rw-r--r--apps/files/l10n/tr.js5
-rw-r--r--apps/files/l10n/tr.json5
-rw-r--r--apps/files/tests/ajax_rename.php1
-rw-r--r--apps/files_external/ajax/applicable.php1
-rw-r--r--apps/files_external/ajax/oauth1.php2
-rw-r--r--apps/files_external/ajax/oauth2.php1
-rw-r--r--apps/files_external/appinfo/app.php4
-rw-r--r--apps/files_external/appinfo/application.php3
-rw-r--r--apps/files_external/appinfo/routes.php2
-rw-r--r--apps/files_external/controller/ajaxcontroller.php1
-rw-r--r--apps/files_external/controller/globalstoragescontroller.php1
-rw-r--r--apps/files_external/controller/storagescontroller.php1
-rw-r--r--apps/files_external/controller/userstoragescontroller.php1
-rw-r--r--apps/files_external/l10n/de.js11
-rw-r--r--apps/files_external/l10n/de.json11
-rw-r--r--apps/files_external/l10n/es.js2
-rw-r--r--apps/files_external/l10n/es.json2
-rw-r--r--apps/files_external/l10n/nds.js102
-rw-r--r--apps/files_external/l10n/nds.json100
-rw-r--r--apps/files_external/l10n/ru.js31
-rw-r--r--apps/files_external/l10n/ru.json31
-rw-r--r--apps/files_external/l10n/tr.js18
-rw-r--r--apps/files_external/l10n/tr.json18
-rw-r--r--apps/files_external/lib/amazons3.php1
-rw-r--r--apps/files_external/lib/api.php1
-rw-r--r--apps/files_external/lib/auth/amazons3/accesskey.php2
-rw-r--r--apps/files_external/lib/auth/authmechanism.php2
-rw-r--r--apps/files_external/lib/auth/builtin.php2
-rw-r--r--apps/files_external/lib/auth/nullmechanism.php2
-rw-r--r--apps/files_external/lib/auth/oauth1/oauth1.php2
-rw-r--r--apps/files_external/lib/auth/oauth2/oauth2.php2
-rw-r--r--apps/files_external/lib/auth/openstack/openstack.php2
-rw-r--r--apps/files_external/lib/auth/openstack/rackspace.php2
-rw-r--r--apps/files_external/lib/auth/password/password.php2
-rw-r--r--apps/files_external/lib/auth/password/sessioncredentials.php2
-rw-r--r--apps/files_external/lib/auth/publickey/rsa.php2
-rw-r--r--apps/files_external/lib/backend/amazons3.php2
-rw-r--r--apps/files_external/lib/backend/backend.php2
-rw-r--r--apps/files_external/lib/backend/dav.php2
-rw-r--r--apps/files_external/lib/backend/dropbox.php2
-rw-r--r--apps/files_external/lib/backend/ftp.php2
-rw-r--r--apps/files_external/lib/backend/google.php2
-rw-r--r--apps/files_external/lib/backend/legacybackend.php2
-rw-r--r--apps/files_external/lib/backend/local.php2
-rw-r--r--apps/files_external/lib/backend/owncloud.php2
-rw-r--r--apps/files_external/lib/backend/sftp.php2
-rw-r--r--apps/files_external/lib/backend/sftp_key.php2
-rw-r--r--apps/files_external/lib/backend/smb.php2
-rw-r--r--apps/files_external/lib/backend/smb_oc.php2
-rw-r--r--apps/files_external/lib/backend/swift.php2
-rw-r--r--apps/files_external/lib/config.php2
-rw-r--r--apps/files_external/lib/config/configadapter.php2
-rw-r--r--apps/files_external/lib/dependencytrait.php2
-rw-r--r--apps/files_external/lib/failedstorage.php2
-rw-r--r--apps/files_external/lib/frontenddefinitiontrait.php2
-rw-r--r--apps/files_external/lib/google.php1
-rw-r--r--apps/files_external/lib/identifiertrait.php2
-rw-r--r--apps/files_external/lib/insufficientdataformeaningfulanswerexception.php2
-rw-r--r--apps/files_external/lib/legacydependencycheckpolyfill.php2
-rw-r--r--apps/files_external/lib/personalmount.php1
-rw-r--r--apps/files_external/lib/sessionstoragewrapper.php2
-rw-r--r--apps/files_external/lib/sftp.php1
-rw-r--r--apps/files_external/lib/storageconfig.php1
-rw-r--r--apps/files_external/lib/storagemodifiertrait.php2
-rw-r--r--apps/files_external/lib/swift.php1
-rw-r--r--apps/files_external/personal.php1
-rw-r--r--apps/files_external/service/globalstoragesservice.php2
-rw-r--r--apps/files_external/service/storagesservice.php43
-rw-r--r--apps/files_external/service/userglobalstoragesservice.php2
-rw-r--r--apps/files_external/service/userstoragesservice.php1
-rw-r--r--apps/files_external/service/usertrait.php2
-rw-r--r--apps/files_external/settings.php2
-rw-r--r--apps/files_external/tests/auth/authmechanismtest.php2
-rw-r--r--apps/files_external/tests/backend/backendtest.php2
-rw-r--r--apps/files_external/tests/backend/legacybackendtest.php2
-rw-r--r--apps/files_external/tests/backends/amazons3.php2
-rw-r--r--apps/files_external/tests/backends/sftp_key.php1
-rw-r--r--apps/files_external/tests/controller/globalstoragescontrollertest.php1
-rw-r--r--apps/files_external/tests/controller/storagescontrollertest.php2
-rw-r--r--apps/files_external/tests/controller/userstoragescontrollertest.php1
-rw-r--r--apps/files_external/tests/definitionparameterttest.php2
-rw-r--r--apps/files_external/tests/frontenddefinitiontraittest.php2
-rw-r--r--apps/files_external/tests/legacydependencycheckpolyfilltest.php2
-rw-r--r--apps/files_external/tests/service/backendservicetest.php2
-rw-r--r--apps/files_external/tests/service/globalstoragesservicetest.php1
-rw-r--r--apps/files_external/tests/service/storagesservicetest.php52
-rw-r--r--apps/files_external/tests/service/userglobalstoragesservicetest.php2
-rw-r--r--apps/files_external/tests/service/userstoragesservicetest.php8
-rw-r--r--apps/files_external/tests/storageconfigtest.php1
-rw-r--r--apps/files_sharing/ajax/external.php2
-rw-r--r--apps/files_sharing/ajax/list.php1
-rw-r--r--apps/files_sharing/ajax/publicpreview.php1
-rw-r--r--apps/files_sharing/api/local.php1
-rw-r--r--apps/files_sharing/api/remote.php1
-rw-r--r--apps/files_sharing/api/server2server.php2
-rw-r--r--apps/files_sharing/api/sharees.php1
-rw-r--r--apps/files_sharing/appinfo/app.php1
-rw-r--r--apps/files_sharing/appinfo/application.php16
-rw-r--r--apps/files_sharing/appinfo/routes.php1
-rw-r--r--apps/files_sharing/appinfo/update.php1
-rw-r--r--apps/files_sharing/l10n/es.js13
-rw-r--r--apps/files_sharing/l10n/es.json13
-rw-r--r--apps/files_sharing/l10n/hu_HU.js8
-rw-r--r--apps/files_sharing/l10n/hu_HU.json8
-rw-r--r--apps/files_sharing/l10n/id.js8
-rw-r--r--apps/files_sharing/l10n/id.json8
-rw-r--r--apps/files_sharing/l10n/nds.js8
-rw-r--r--apps/files_sharing/l10n/nds.json6
-rw-r--r--apps/files_sharing/l10n/ru.js14
-rw-r--r--apps/files_sharing/l10n/ru.json14
-rw-r--r--apps/files_sharing/l10n/tr.js14
-rw-r--r--apps/files_sharing/l10n/tr.json14
-rw-r--r--apps/files_sharing/lib/cache.php1
-rw-r--r--apps/files_sharing/lib/connector/publicauth.php1
-rw-r--r--apps/files_sharing/lib/controllers/externalsharescontroller.php1
-rw-r--r--apps/files_sharing/lib/exceptions/s2sexception.php4
-rw-r--r--apps/files_sharing/lib/external/manager.php1
-rw-r--r--apps/files_sharing/lib/external/scanner.php1
-rw-r--r--apps/files_sharing/lib/helper.php1
-rw-r--r--apps/files_sharing/lib/hooks.php1
-rw-r--r--apps/files_sharing/lib/middleware/sharingcheckmiddleware.php1
-rw-r--r--apps/files_sharing/lib/propagation/changewatcher.php9
-rw-r--r--apps/files_sharing/lib/propagation/grouppropagationmanager.php133
-rw-r--r--apps/files_sharing/lib/propagation/propagationmanager.php24
-rw-r--r--apps/files_sharing/lib/propagation/recipientpropagator.php2
-rw-r--r--apps/files_sharing/lib/share/file.php2
-rw-r--r--apps/files_sharing/lib/share/folder.php2
-rw-r--r--apps/files_sharing/lib/sharedmount.php2
-rw-r--r--apps/files_sharing/lib/updater.php2
-rw-r--r--apps/files_sharing/public.php1
-rw-r--r--apps/files_sharing/publicwebdav.php3
-rw-r--r--apps/files_sharing/settings-personal.php1
-rw-r--r--apps/files_sharing/tests/api/shareestest.php1
-rw-r--r--apps/files_sharing/tests/capabilities.php1
-rw-r--r--apps/files_sharing/tests/controller/externalsharecontroller.php1
-rw-r--r--apps/files_sharing/tests/etagpropagation.php15
-rw-r--r--apps/files_sharing/tests/grouppropagationmanager.php175
-rw-r--r--apps/files_sharing/tests/locking.php3
-rw-r--r--apps/files_sharing/tests/middleware/sharingcheckmiddleware.php2
-rw-r--r--apps/files_sharing/tests/permissions.php1
-rw-r--r--apps/files_sharing/tests/server2server.php1
-rw-r--r--apps/files_sharing/tests/share.php1
-rw-r--r--apps/files_sharing/tests/sharedmount.php1
-rw-r--r--apps/files_sharing/tests/sizepropagation.php1
-rw-r--r--apps/files_trashbin/ajax/delete.php1
-rw-r--r--apps/files_trashbin/ajax/preview.php1
-rw-r--r--apps/files_trashbin/ajax/undelete.php1
-rw-r--r--apps/files_trashbin/appinfo/app.php2
-rw-r--r--apps/files_trashbin/appinfo/routes.php1
-rw-r--r--apps/files_trashbin/appinfo/update.php1
-rw-r--r--apps/files_trashbin/command/cleanup.php1
-rw-r--r--apps/files_trashbin/command/expire.php1
-rw-r--r--apps/files_trashbin/l10n/nds.js7
-rw-r--r--apps/files_trashbin/l10n/nds.json5
-rw-r--r--apps/files_trashbin/lib/backgroundjob/expiretrash.php1
-rw-r--r--apps/files_trashbin/lib/expiration.php1
-rw-r--r--apps/files_trashbin/lib/helper.php1
-rw-r--r--apps/files_trashbin/lib/hooks.php1
-rw-r--r--apps/files_trashbin/lib/trashbin.php1
-rw-r--r--apps/files_trashbin/tests/command/cleanuptest.php1
-rw-r--r--apps/files_trashbin/tests/expiration.php1
-rw-r--r--apps/files_trashbin/tests/storage.php1
-rw-r--r--apps/files_trashbin/tests/trashbin.php1
-rw-r--r--apps/files_versions/ajax/getVersions.php1
-rw-r--r--apps/files_versions/ajax/preview.php2
-rw-r--r--apps/files_versions/appinfo/app.php1
-rw-r--r--apps/files_versions/appinfo/application.php1
-rw-r--r--apps/files_versions/appinfo/update.php1
-rw-r--r--apps/files_versions/command/expire.php1
-rw-r--r--apps/files_versions/lib/expiration.php2
-rw-r--r--apps/files_versions/lib/hooks.php1
-rw-r--r--apps/files_versions/lib/storage.php1
-rw-r--r--apps/files_versions/tests/expirationtest.php1
-rw-r--r--apps/files_versions/tests/versions.php2
-rw-r--r--apps/provisioning_api/appinfo/app.php2
-rw-r--r--apps/provisioning_api/appinfo/routes.php1
-rw-r--r--apps/provisioning_api/lib/apps.php2
-rw-r--r--apps/provisioning_api/lib/groups.php2
-rw-r--r--apps/provisioning_api/lib/users.php1
-rw-r--r--apps/provisioning_api/tests/appstest.php2
-rw-r--r--apps/provisioning_api/tests/groupstest.php2
-rw-r--r--apps/provisioning_api/tests/testcase.php1
-rw-r--r--apps/user_ldap/ajax/setConfiguration.php1
-rw-r--r--apps/user_ldap/appinfo/install.php1
-rw-r--r--apps/user_ldap/appinfo/update.php2
-rw-r--r--apps/user_ldap/group_ldap.php2
-rw-r--r--apps/user_ldap/l10n/es.js2
-rw-r--r--apps/user_ldap/l10n/es.json2
-rw-r--r--apps/user_ldap/l10n/nds.js6
-rw-r--r--apps/user_ldap/l10n/nds.json6
-rw-r--r--apps/user_ldap/l10n/pt_PT.js4
-rw-r--r--apps/user_ldap/l10n/pt_PT.json4
-rw-r--r--apps/user_ldap/lib/access.php25
-rw-r--r--apps/user_ldap/lib/configuration.php53
-rw-r--r--apps/user_ldap/lib/wizard.php3
-rw-r--r--apps/user_ldap/tests/configuration.php106
-rw-r--r--apps/user_ldap/tests/group_ldap.php1
-rw-r--r--apps/user_ldap/tests/integration/lib/integrationtestpaging.php81
-rw-r--r--apps/user_ldap/tests/integration/lib/integrationtestuserhome.php21
-rw-r--r--apps/user_ldap/tests/integration/lib/user/IntegrationTestUserAvatar.php21
-rw-r--r--apps/user_ldap/tests/integration/setup-scripts/createExplicitGroups.php21
-rw-r--r--apps/user_ldap/tests/integration/setup-scripts/createExplicitGroupsDifferentOU.php21
-rw-r--r--apps/user_ldap/tests/integration/setup-scripts/createExplicitUsers.php21
-rw-r--r--apps/user_ldap/tests/wizard.php1
-rw-r--r--apps/user_ldap/user_ldap.php3
-rw-r--r--apps/user_ldap/user_proxy.php1
264 files changed, 1541 insertions, 183 deletions
diff --git a/apps/encryption/appinfo/app.php b/apps/encryption/appinfo/app.php
index 2eb12f638ed..1f336c05a8c 100644
--- a/apps/encryption/appinfo/app.php
+++ b/apps/encryption/appinfo/app.php
@@ -2,7 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/appinfo/application.php b/apps/encryption/appinfo/application.php
index d89833a5ab2..812f1042a8f 100644
--- a/apps/encryption/appinfo/application.php
+++ b/apps/encryption/appinfo/application.php
@@ -2,8 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
- * @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/encryption/appinfo/register_command.php b/apps/encryption/appinfo/register_command.php
index 0f03b63560a..4987ef24d61 100644
--- a/apps/encryption/appinfo/register_command.php
+++ b/apps/encryption/appinfo/register_command.php
@@ -1,7 +1,6 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/appinfo/routes.php b/apps/encryption/appinfo/routes.php
index a73cc578437..8fa163d0751 100644
--- a/apps/encryption/appinfo/routes.php
+++ b/apps/encryption/appinfo/routes.php
@@ -2,8 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
- * @author Morris Jobke <hey@morrisjobke.de>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/command/migratekeys.php b/apps/encryption/command/migratekeys.php
index 7e320102172..89e2aa01610 100644
--- a/apps/encryption/command/migratekeys.php
+++ b/apps/encryption/command/migratekeys.php
@@ -1,7 +1,6 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/controller/recoverycontroller.php b/apps/encryption/controller/recoverycontroller.php
index a92c49f539f..f1a2651443e 100644
--- a/apps/encryption/controller/recoverycontroller.php
+++ b/apps/encryption/controller/recoverycontroller.php
@@ -3,8 +3,6 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
* @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/controller/settingscontroller.php b/apps/encryption/controller/settingscontroller.php
index 8e6de19e784..e5bb79a1d40 100644
--- a/apps/encryption/controller/settingscontroller.php
+++ b/apps/encryption/controller/settingscontroller.php
@@ -2,7 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/controller/statuscontroller.php b/apps/encryption/controller/statuscontroller.php
index f330f726c0b..409fe1a258b 100644
--- a/apps/encryption/controller/statuscontroller.php
+++ b/apps/encryption/controller/statuscontroller.php
@@ -1,7 +1,6 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/encryption/hooks/contracts/ihook.php b/apps/encryption/hooks/contracts/ihook.php
index 53217f8ac06..d4f20700d78 100644
--- a/apps/encryption/hooks/contracts/ihook.php
+++ b/apps/encryption/hooks/contracts/ihook.php
@@ -1,8 +1,6 @@
<?php
/**
* @author Clark Tomlinson <fallen013@gmail.com>
- * @author Morris Jobke <hey@morrisjobke.de>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/l10n/de.js b/apps/encryption/l10n/de.js
index 18e74fb9ed1..a5ba567fb59 100644
--- a/apps/encryption/l10n/de.js
+++ b/apps/encryption/l10n/de.js
@@ -25,6 +25,7 @@ OC.L10N.register(
"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." : "Ungültiger privater Schlüssel für die Verschlüsselung-App. Bitte aktualisiere Dein privates Schlüssel-Passwort, um den Zugriff auf Deine verschlüsselten Dateien wiederherzustellen.",
"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" : "Die Verschlüsselung-App ist aktiviert, aber Deine Schlüssel sind nicht initialisiert. Bitte melde Dich nochmals ab und wieder an.",
"Encryption App is enabled and ready" : "Verschlüsselungs-App ist aktiviert und bereit",
+ "one-time password for server-side-encryption" : "Einmal-Passwort für serverseitige Verschlüsselung",
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Diese Datei kann nicht entschlüsselt werden, es handelt sich wahrscheinlich um eine geteilte Datei. Bitte kontaktiere den Eigentümer der Datei und bitte darum, die Datei noch einmal mit Dir zu teilen.",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Diese Datei kann nicht gelesen werden, es handelt sich wahrscheinlich um eine geteilte Datei. Bitte kontaktiere den Eigentümer der Datei und bitte darum, die Datei noch einmal mit Dir zu teilen.",
"The share will expire on %s." : "Die Freigabe wird am %s ablaufen.",
diff --git a/apps/encryption/l10n/de.json b/apps/encryption/l10n/de.json
index e15fe7e1cd1..dfac7ba8e9b 100644
--- a/apps/encryption/l10n/de.json
+++ b/apps/encryption/l10n/de.json
@@ -23,6 +23,7 @@
"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." : "Ungültiger privater Schlüssel für die Verschlüsselung-App. Bitte aktualisiere Dein privates Schlüssel-Passwort, um den Zugriff auf Deine verschlüsselten Dateien wiederherzustellen.",
"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" : "Die Verschlüsselung-App ist aktiviert, aber Deine Schlüssel sind nicht initialisiert. Bitte melde Dich nochmals ab und wieder an.",
"Encryption App is enabled and ready" : "Verschlüsselungs-App ist aktiviert und bereit",
+ "one-time password for server-side-encryption" : "Einmal-Passwort für serverseitige Verschlüsselung",
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Diese Datei kann nicht entschlüsselt werden, es handelt sich wahrscheinlich um eine geteilte Datei. Bitte kontaktiere den Eigentümer der Datei und bitte darum, die Datei noch einmal mit Dir zu teilen.",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Diese Datei kann nicht gelesen werden, es handelt sich wahrscheinlich um eine geteilte Datei. Bitte kontaktiere den Eigentümer der Datei und bitte darum, die Datei noch einmal mit Dir zu teilen.",
"The share will expire on %s." : "Die Freigabe wird am %s ablaufen.",
diff --git a/apps/encryption/l10n/ru.js b/apps/encryption/l10n/ru.js
index 2b64fa66ed9..b326b71456d 100644
--- a/apps/encryption/l10n/ru.js
+++ b/apps/encryption/l10n/ru.js
@@ -25,10 +25,13 @@ OC.L10N.register(
"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." : "Закрытый ключ приложения шифрования недействителен. Обновите закрытый ключ в личных настройках, чтобы восстановить доступ к зашифрованным файлам.",
"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" : "Приложение шифрования активно, но ваши ключи не инициализированы, выйдите из системы и войдите заново",
"Encryption App is enabled and ready" : "Приложение шифрования включено и готово",
+ "one-time password for server-side-encryption" : "одноразовый пароль для шифрования на стороне сервера",
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Не удалось расшифровать файл, возможно это опубликованный файл. Попросите владельца файла повторно открыть к нему доступ.",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Не удается прочитать файл, возможно это публичный файл. Пожалуйста попросите владельца открыть доступ снова.",
+ "Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'ownCloud basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Привет,\n\nадминистратор включил шифрование на стороне сервера. Ваши файлы были зашифрованы с помощью пароля '%s'.\n\nПожалуйста войдите в веб-приложение, в разделе 'ownCloud простой модуль шифрования' в личных настройках вам нужно обновить пароль шифрования.\n\n",
"The share will expire on %s." : "Доступ будет закрыт %s",
"Cheers!" : "Всего наилучшего!",
+ "Hey there,<br><br>the admin enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>.<br><br>Please login to the web interface, go to the section \"ownCloud basic encryption module\" of your personal settings and update your encryption password by entering this password into the \"old log-in password\" field and your current login-password.<br><br>" : "Привет,<br><br>администратор включил шифрование на стороне сервера. Ваши файлы были зашифрованы с помощью пароля <strong>%s</strong>.<br><br>Пожалуйста войдите в веб-приложение, в разделе \"ownCloud простой модуль шифрования\" в личных настройках вам нужно обновить пароль шифрования.<br><br>",
"Enable recovery key" : "Включить ключ восстановления",
"Disable recovery key" : "Отключить ключ восстановления",
"The recovery key is an extra encryption key that is used to encrypt files. It allows recovery of a user's files if the user forgets his or her password." : "Ключ восстановления это дополнительный ключ, который используется для шифрования файлов. Он позволяет восстановить пользовательские файлы в случае утери пароля.",
diff --git a/apps/encryption/l10n/ru.json b/apps/encryption/l10n/ru.json
index 229d4e32dee..f4a14cb841f 100644
--- a/apps/encryption/l10n/ru.json
+++ b/apps/encryption/l10n/ru.json
@@ -23,10 +23,13 @@
"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." : "Закрытый ключ приложения шифрования недействителен. Обновите закрытый ключ в личных настройках, чтобы восстановить доступ к зашифрованным файлам.",
"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" : "Приложение шифрования активно, но ваши ключи не инициализированы, выйдите из системы и войдите заново",
"Encryption App is enabled and ready" : "Приложение шифрования включено и готово",
+ "one-time password for server-side-encryption" : "одноразовый пароль для шифрования на стороне сервера",
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Не удалось расшифровать файл, возможно это опубликованный файл. Попросите владельца файла повторно открыть к нему доступ.",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Не удается прочитать файл, возможно это публичный файл. Пожалуйста попросите владельца открыть доступ снова.",
+ "Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'ownCloud basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Привет,\n\nадминистратор включил шифрование на стороне сервера. Ваши файлы были зашифрованы с помощью пароля '%s'.\n\nПожалуйста войдите в веб-приложение, в разделе 'ownCloud простой модуль шифрования' в личных настройках вам нужно обновить пароль шифрования.\n\n",
"The share will expire on %s." : "Доступ будет закрыт %s",
"Cheers!" : "Всего наилучшего!",
+ "Hey there,<br><br>the admin enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>.<br><br>Please login to the web interface, go to the section \"ownCloud basic encryption module\" of your personal settings and update your encryption password by entering this password into the \"old log-in password\" field and your current login-password.<br><br>" : "Привет,<br><br>администратор включил шифрование на стороне сервера. Ваши файлы были зашифрованы с помощью пароля <strong>%s</strong>.<br><br>Пожалуйста войдите в веб-приложение, в разделе \"ownCloud простой модуль шифрования\" в личных настройках вам нужно обновить пароль шифрования.<br><br>",
"Enable recovery key" : "Включить ключ восстановления",
"Disable recovery key" : "Отключить ключ восстановления",
"The recovery key is an extra encryption key that is used to encrypt files. It allows recovery of a user's files if the user forgets his or her password." : "Ключ восстановления это дополнительный ключ, который используется для шифрования файлов. Он позволяет восстановить пользовательские файлы в случае утери пароля.",
diff --git a/apps/encryption/l10n/tr.js b/apps/encryption/l10n/tr.js
index 96db8f91209..e1fcb526d06 100644
--- a/apps/encryption/l10n/tr.js
+++ b/apps/encryption/l10n/tr.js
@@ -28,10 +28,10 @@ OC.L10N.register(
"one-time password for server-side-encryption" : "sunucu tarafında şifleme için tek kullanımlık parola",
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Bu dosya muhtemelen bir paylaşılan dosya olduğundan şifrelemesi kaldırılamıyor. Lütfen dosyayı sizinle bir daha paylaşması için dosya sahibi ile iletişime geçin.",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Bu dosya muhtemelen bir paylaşılan dosya olduğundan okunamıyor. Lütfen dosyayı sizinle bir daha paylaşması için dosya sahibi ile iletişime geçin.",
- "Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'ownCloud basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Selam,\n\nsistem yöneticisi sunucu tarafında şifrelemeyi etkinleştirdi. Dosyalarınız '%s' parolası kullanılarak şifrelendi.\n\nLütfen web arayüzünde oturum açın ve kişisel ayarlarınızdan 'ownCloud temel şifreleme modülü'ne giderek 'eski oturum parolası' alanına bu parolayı girerek şifreleme parolanızı ve mevcut oturum açma parolanızı güncelleyin.\n\n",
+ "Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'ownCloud basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Selam,\n\nSistem yöneticisi sunucu tarafında şifrelemeyi etkinleştirdi. Dosyalarınız '%s' parolası kullanılarak şifrelendi.\n\nLütfen web arayüzünde oturum açın ve kişisel ayarlarınızdan 'ownCloud temel şifreleme modülü'ne giderek 'eski oturum parolası' alanına bu parolayı girdikten sonra şifreleme parolanızı ve mevcut oturum açma parolanızı güncelleyin.\n\n",
"The share will expire on %s." : "Bu paylaşım %s tarihinde sona erecek.",
"Cheers!" : "Hoşçakalın!",
- "Hey there,<br><br>the admin enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>.<br><br>Please login to the web interface, go to the section \"ownCloud basic encryption module\" of your personal settings and update your encryption password by entering this password into the \"old log-in password\" field and your current login-password.<br><br>" : "Selam,<br><br>sistem yöneticisi sunucu tarafında şifrelemeyi etkinleştirdi. Dosyalarınız <strong>%s</strong> parolası kullanılarak şifrelendi.<br><br>Lütfen web arayüzünde oturum açın ve kişisel ayarlarınızdan 'ownCloud temel şifreleme modülü'ne giderek 'eski oturum parolası' alanına bu parolayı girerek şifreleme parolanızı ve mevcut oturum açma parolanızı güncelleyin.<br><br>",
+ "Hey there,<br><br>the admin enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>.<br><br>Please login to the web interface, go to the section \"ownCloud basic encryption module\" of your personal settings and update your encryption password by entering this password into the \"old log-in password\" field and your current login-password.<br><br>" : "Selam,<br><br>Sistem yöneticisi sunucu tarafında şifrelemeyi etkinleştirdi. Dosyalarınız <strong>%s</strong> parolası kullanılarak şifrelendi.<br><br>Lütfen web arayüzünde oturum açın ve kişisel ayarlarınızdan 'ownCloud temel şifreleme modülü'ne giderek 'eski oturum parolası' alanına bu parolayı girdikten sonra şifreleme parolanızı ve mevcut oturum açma parolanızı güncelleyin.<br><br>",
"Enable recovery key" : "Kurtarma anahtarını etkinleştir",
"Disable recovery key" : "Kurtarma anahtarını devre dışı bırak",
"The recovery key is an extra encryption key that is used to encrypt files. It allows recovery of a user's files if the user forgets his or her password." : "Kurtarma anahtarı, dosyaların şifrelenmesi için daha fazla \nşifreleme sunar. Bu kullanıcının dosyasının şifresini unuttuğunda kurtarmasına imkan verir.",
diff --git a/apps/encryption/l10n/tr.json b/apps/encryption/l10n/tr.json
index be6f6a5dfdd..743d3e7d15c 100644
--- a/apps/encryption/l10n/tr.json
+++ b/apps/encryption/l10n/tr.json
@@ -26,10 +26,10 @@
"one-time password for server-side-encryption" : "sunucu tarafında şifleme için tek kullanımlık parola",
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Bu dosya muhtemelen bir paylaşılan dosya olduğundan şifrelemesi kaldırılamıyor. Lütfen dosyayı sizinle bir daha paylaşması için dosya sahibi ile iletişime geçin.",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Bu dosya muhtemelen bir paylaşılan dosya olduğundan okunamıyor. Lütfen dosyayı sizinle bir daha paylaşması için dosya sahibi ile iletişime geçin.",
- "Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'ownCloud basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Selam,\n\nsistem yöneticisi sunucu tarafında şifrelemeyi etkinleştirdi. Dosyalarınız '%s' parolası kullanılarak şifrelendi.\n\nLütfen web arayüzünde oturum açın ve kişisel ayarlarınızdan 'ownCloud temel şifreleme modülü'ne giderek 'eski oturum parolası' alanına bu parolayı girerek şifreleme parolanızı ve mevcut oturum açma parolanızı güncelleyin.\n\n",
+ "Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'ownCloud basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Selam,\n\nSistem yöneticisi sunucu tarafında şifrelemeyi etkinleştirdi. Dosyalarınız '%s' parolası kullanılarak şifrelendi.\n\nLütfen web arayüzünde oturum açın ve kişisel ayarlarınızdan 'ownCloud temel şifreleme modülü'ne giderek 'eski oturum parolası' alanına bu parolayı girdikten sonra şifreleme parolanızı ve mevcut oturum açma parolanızı güncelleyin.\n\n",
"The share will expire on %s." : "Bu paylaşım %s tarihinde sona erecek.",
"Cheers!" : "Hoşçakalın!",
- "Hey there,<br><br>the admin enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>.<br><br>Please login to the web interface, go to the section \"ownCloud basic encryption module\" of your personal settings and update your encryption password by entering this password into the \"old log-in password\" field and your current login-password.<br><br>" : "Selam,<br><br>sistem yöneticisi sunucu tarafında şifrelemeyi etkinleştirdi. Dosyalarınız <strong>%s</strong> parolası kullanılarak şifrelendi.<br><br>Lütfen web arayüzünde oturum açın ve kişisel ayarlarınızdan 'ownCloud temel şifreleme modülü'ne giderek 'eski oturum parolası' alanına bu parolayı girerek şifreleme parolanızı ve mevcut oturum açma parolanızı güncelleyin.<br><br>",
+ "Hey there,<br><br>the admin enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>.<br><br>Please login to the web interface, go to the section \"ownCloud basic encryption module\" of your personal settings and update your encryption password by entering this password into the \"old log-in password\" field and your current login-password.<br><br>" : "Selam,<br><br>Sistem yöneticisi sunucu tarafında şifrelemeyi etkinleştirdi. Dosyalarınız <strong>%s</strong> parolası kullanılarak şifrelendi.<br><br>Lütfen web arayüzünde oturum açın ve kişisel ayarlarınızdan 'ownCloud temel şifreleme modülü'ne giderek 'eski oturum parolası' alanına bu parolayı girdikten sonra şifreleme parolanızı ve mevcut oturum açma parolanızı güncelleyin.<br><br>",
"Enable recovery key" : "Kurtarma anahtarını etkinleştir",
"Disable recovery key" : "Kurtarma anahtarını devre dışı bırak",
"The recovery key is an extra encryption key that is used to encrypt files. It allows recovery of a user's files if the user forgets his or her password." : "Kurtarma anahtarı, dosyaların şifrelenmesi için daha fazla \nşifreleme sunar. Bu kullanıcının dosyasının şifresini unuttuğunda kurtarmasına imkan verir.",
diff --git a/apps/encryption/lib/crypto/crypt.php b/apps/encryption/lib/crypto/crypt.php
index 5d1bb92460a..c55fb00f838 100644
--- a/apps/encryption/lib/crypto/crypt.php
+++ b/apps/encryption/lib/crypto/crypt.php
@@ -3,7 +3,6 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
* @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/encryption/lib/crypto/encryption.php b/apps/encryption/lib/crypto/encryption.php
index fde4a2c4a9c..1a05277e20d 100644
--- a/apps/encryption/lib/crypto/encryption.php
+++ b/apps/encryption/lib/crypto/encryption.php
@@ -5,7 +5,6 @@
* @author Jan-Christoph Borchardt <hey@jancborchardt.net>
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/encryption/lib/hookmanager.php b/apps/encryption/lib/hookmanager.php
index 0fea1b0f9f2..ab059369333 100644
--- a/apps/encryption/lib/hookmanager.php
+++ b/apps/encryption/lib/hookmanager.php
@@ -2,9 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
- * @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/lib/migration.php b/apps/encryption/lib/migration.php
index 5396a7db627..1a7c2e9877d 100644
--- a/apps/encryption/lib/migration.php
+++ b/apps/encryption/lib/migration.php
@@ -1,7 +1,7 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/lib/recovery.php b/apps/encryption/lib/recovery.php
index b22e3265628..e7b20e2c4af 100644
--- a/apps/encryption/lib/recovery.php
+++ b/apps/encryption/lib/recovery.php
@@ -2,8 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
- * @author Morris Jobke <hey@morrisjobke.de>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/lib/session.php b/apps/encryption/lib/session.php
index 1d0c3711487..2c83319d71e 100644
--- a/apps/encryption/lib/session.php
+++ b/apps/encryption/lib/session.php
@@ -3,8 +3,6 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
* @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/lib/users/setup.php b/apps/encryption/lib/users/setup.php
index d4f7c374547..99368cab080 100644
--- a/apps/encryption/lib/users/setup.php
+++ b/apps/encryption/lib/users/setup.php
@@ -3,7 +3,6 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
* @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/encryption/lib/util.php b/apps/encryption/lib/util.php
index e9f916eff38..a162dcde305 100644
--- a/apps/encryption/lib/util.php
+++ b/apps/encryption/lib/util.php
@@ -2,8 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
- * @author Morris Jobke <hey@morrisjobke.de>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/tests/controller/RecoveryControllerTest.php b/apps/encryption/tests/controller/RecoveryControllerTest.php
index d122b992ef0..6c554c97ae9 100644
--- a/apps/encryption/tests/controller/RecoveryControllerTest.php
+++ b/apps/encryption/tests/controller/RecoveryControllerTest.php
@@ -1,7 +1,6 @@
<?php
/**
* @author Clark Tomlinson <fallen013@gmail.com>
- * @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/tests/controller/SettingsControllerTest.php b/apps/encryption/tests/controller/SettingsControllerTest.php
index 34aa5a27a75..724a01522af 100644
--- a/apps/encryption/tests/controller/SettingsControllerTest.php
+++ b/apps/encryption/tests/controller/SettingsControllerTest.php
@@ -2,7 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/tests/hooks/UserHooksTest.php b/apps/encryption/tests/hooks/UserHooksTest.php
index 0b0222ce861..ada0081f649 100644
--- a/apps/encryption/tests/hooks/UserHooksTest.php
+++ b/apps/encryption/tests/hooks/UserHooksTest.php
@@ -2,7 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
- * @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/tests/lib/HookManagerTest.php b/apps/encryption/tests/lib/HookManagerTest.php
index b1d511cb89b..288b27b5d8b 100644
--- a/apps/encryption/tests/lib/HookManagerTest.php
+++ b/apps/encryption/tests/lib/HookManagerTest.php
@@ -2,8 +2,6 @@
/**
* @author Clark Tomlinson <fallen013@gmail.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/tests/lib/KeyManagerTest.php b/apps/encryption/tests/lib/KeyManagerTest.php
index 8f1da623efb..35ae8ad6ca0 100644
--- a/apps/encryption/tests/lib/KeyManagerTest.php
+++ b/apps/encryption/tests/lib/KeyManagerTest.php
@@ -3,7 +3,6 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/encryption/tests/lib/MigrationTest.php b/apps/encryption/tests/lib/MigrationTest.php
index bb1f0a310a2..6146e4e7cfb 100644
--- a/apps/encryption/tests/lib/MigrationTest.php
+++ b/apps/encryption/tests/lib/MigrationTest.php
@@ -2,7 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/tests/lib/RecoveryTest.php b/apps/encryption/tests/lib/RecoveryTest.php
index c0624a36be9..0cdd76d6b44 100644
--- a/apps/encryption/tests/lib/RecoveryTest.php
+++ b/apps/encryption/tests/lib/RecoveryTest.php
@@ -3,8 +3,6 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/tests/lib/SessionTest.php b/apps/encryption/tests/lib/SessionTest.php
index 0fa48666d70..1cc0d89a93d 100644
--- a/apps/encryption/tests/lib/SessionTest.php
+++ b/apps/encryption/tests/lib/SessionTest.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
*
diff --git a/apps/encryption/tests/lib/UtilTest.php b/apps/encryption/tests/lib/UtilTest.php
index 9988ff93f43..723cc9fb910 100644
--- a/apps/encryption/tests/lib/UtilTest.php
+++ b/apps/encryption/tests/lib/UtilTest.php
@@ -2,8 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
- * @author Morris Jobke <hey@morrisjobke.de>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/tests/lib/crypto/cryptTest.php b/apps/encryption/tests/lib/crypto/cryptTest.php
index c6f16e952d7..cad34761840 100644
--- a/apps/encryption/tests/lib/crypto/cryptTest.php
+++ b/apps/encryption/tests/lib/crypto/cryptTest.php
@@ -2,7 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/tests/lib/crypto/encryptionTest.php b/apps/encryption/tests/lib/crypto/encryptionTest.php
index 9e0cb2f09d1..f76bdfb6d61 100644
--- a/apps/encryption/tests/lib/crypto/encryptionTest.php
+++ b/apps/encryption/tests/lib/crypto/encryptionTest.php
@@ -2,8 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/encryption/tests/lib/users/SetupTest.php b/apps/encryption/tests/lib/users/SetupTest.php
index bca3ff58b07..022bf5dc466 100644
--- a/apps/encryption/tests/lib/users/SetupTest.php
+++ b/apps/encryption/tests/lib/users/SetupTest.php
@@ -1,8 +1,7 @@
<?php
/**
+ * @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
- * @author Morris Jobke <hey@morrisjobke.de>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files/admin.php b/apps/files/admin.php
index 349c27ff742..786a8edf2a6 100644
--- a/apps/files/admin.php
+++ b/apps/files/admin.php
@@ -7,6 +7,7 @@
* @author Michael Göhler <somebody.here@gmx.de>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files/ajax/list.php b/apps/files/ajax/list.php
index 19129e9de11..6cfa04b49d6 100644
--- a/apps/files/ajax/list.php
+++ b/apps/files/ajax/list.php
@@ -1,6 +1,5 @@
<?php
/**
- * @author Jakob Sack <mail@jakobsack.de>
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
diff --git a/apps/files/ajax/scan.php b/apps/files/ajax/scan.php
index 7d47a538fa1..491adaa9b88 100644
--- a/apps/files/ajax/scan.php
+++ b/apps/files/ajax/scan.php
@@ -4,6 +4,7 @@
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files/ajax/upload.php b/apps/files/ajax/upload.php
index 7ff02d8db8e..a784642728f 100644
--- a/apps/files/ajax/upload.php
+++ b/apps/files/ajax/upload.php
@@ -5,6 +5,7 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Florian Pritz <bluewind@xinu.at>
* @author Frank Karlitschek <frank@owncloud.org>
+ * @author Individual IT Services <info@individual-it.net>
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Lukas Reschke <lukas@owncloud.com>
diff --git a/apps/files/appinfo/remote.php b/apps/files/appinfo/remote.php
index 4d0d8b3e2ec..02f7f3c027f 100644
--- a/apps/files/appinfo/remote.php
+++ b/apps/files/appinfo/remote.php
@@ -1,9 +1,8 @@
<?php
/**
- * @author Bart Visscher <bartv@thisnet.nl>
* @author Frank Karlitschek <frank@owncloud.org>
* @author Jakob Sack <mail@jakobsack.de>
- * @author Jörn Friedrich Dreyer <jfd@butonic.de>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
diff --git a/apps/files/appinfo/routes.php b/apps/files/appinfo/routes.php
index d1b8954d5ce..41aeec6a152 100644
--- a/apps/files/appinfo/routes.php
+++ b/apps/files/appinfo/routes.php
@@ -2,7 +2,6 @@
/**
* @author Bart Visscher <bartv@thisnet.nl>
* @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Tobias Kaminsky <tobias@kaminsky.me>
* @author Tom Needham <tom@owncloud.com>
diff --git a/apps/files/appinfo/update.php b/apps/files/appinfo/update.php
index ff1369bb1a5..6084435fa5a 100644
--- a/apps/files/appinfo/update.php
+++ b/apps/files/appinfo/update.php
@@ -2,6 +2,7 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
+ * @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files/controller/apicontroller.php b/apps/files/controller/apicontroller.php
index 494d97db7a6..ea5ee81a9f6 100644
--- a/apps/files/controller/apicontroller.php
+++ b/apps/files/controller/apicontroller.php
@@ -4,6 +4,7 @@
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Roeland Jago Douma <roeland@famdouma.nl>
+ * @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Tobias Kaminsky <tobias@kaminsky.me>
* @author Vincent Petry <pvince81@owncloud.com>
*
diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js
index 2516dd3e957..6cf82391baf 100644
--- a/apps/files/js/filelist.js
+++ b/apps/files/js/filelist.js
@@ -1783,7 +1783,7 @@
}
} catch (error) {
input.attr('title', error);
- input.tooltip({placement: 'left', trigger: 'manual'});
+ input.tooltip({placement: 'right', trigger: 'manual'});
input.tooltip('show');
input.addClass('error');
}
@@ -1797,7 +1797,7 @@
input.removeClass('error');
} catch (error) {
input.attr('title', error);
- input.tooltip({placement: 'left', trigger: 'manual'});
+ input.tooltip({placement: 'right', trigger: 'manual'});
input.tooltip('show');
input.addClass('error');
}
diff --git a/apps/files/l10n/de.js b/apps/files/l10n/de.js
index 2f9a48f0fd4..b6f3711617a 100644
--- a/apps/files/l10n/de.js
+++ b/apps/files/l10n/de.js
@@ -75,8 +75,10 @@ OC.L10N.register(
"_%n byte_::_%n bytes_" : ["%n Byte","%n Bytes"],
"Favorited" : "Favorisiert",
"Favorite" : "Favorit",
+ "{newname} already exists" : "{newname} existiert bereits",
"Upload" : "Hochladen",
"Text file" : "Textdatei",
+ "New text file.txt" : "Neue Textdatei.txt",
"Folder" : "Ordner",
"New folder" : "Neuer Ordner",
"An error occurred while trying to update the tags" : "Es ist ein Fehler beim Aktualisieren der Tags aufgetreten",
@@ -94,12 +96,16 @@ OC.L10N.register(
"%2$s deleted %1$s" : "%2$s hat %1$s gelöscht",
"You restored %1$s" : "Du hast %1$s wiederhergestellt",
"%2$s restored %1$s" : "%2$s wiederhergestellt %1$s",
+ "Changed by %2$s" : "Geändert von %2$s",
+ "Deleted by %2$s" : "Gelöscht von %2$s",
+ "Restored by %2$s" : "Wiederhergestellt von %2$s",
"%s could not be renamed as it has been deleted" : "%s konnte nicht umbenannt werden, da es gelöscht wurde",
"%s could not be renamed" : "%s konnte nicht umbenannt werden",
"Upload (max. %s)" : "Hochladen (max. %s)",
"File handling" : "Dateibehandlung",
"Maximum upload size" : "Maximale Upload-Größe",
"max. possible: " : "maximal möglich:",
+ "With PHP-FPM this value may take up to 5 minutes to take effect after saving." : "Mit PHP-FPM kann es bis zu 5 Minuten dauern, bis die Einstellungen übernommen werden.",
"Save" : "Speichern",
"Can not be edited from here due to insufficient permissions." : "Aufgrund unzureichender Berechtigungen kann dies nicht von hier bearbeitet werden.",
"Settings" : "Einstellungen",
diff --git a/apps/files/l10n/de.json b/apps/files/l10n/de.json
index 6457eded01a..d0cfab4929e 100644
--- a/apps/files/l10n/de.json
+++ b/apps/files/l10n/de.json
@@ -73,8 +73,10 @@
"_%n byte_::_%n bytes_" : ["%n Byte","%n Bytes"],
"Favorited" : "Favorisiert",
"Favorite" : "Favorit",
+ "{newname} already exists" : "{newname} existiert bereits",
"Upload" : "Hochladen",
"Text file" : "Textdatei",
+ "New text file.txt" : "Neue Textdatei.txt",
"Folder" : "Ordner",
"New folder" : "Neuer Ordner",
"An error occurred while trying to update the tags" : "Es ist ein Fehler beim Aktualisieren der Tags aufgetreten",
@@ -92,12 +94,16 @@
"%2$s deleted %1$s" : "%2$s hat %1$s gelöscht",
"You restored %1$s" : "Du hast %1$s wiederhergestellt",
"%2$s restored %1$s" : "%2$s wiederhergestellt %1$s",
+ "Changed by %2$s" : "Geändert von %2$s",
+ "Deleted by %2$s" : "Gelöscht von %2$s",
+ "Restored by %2$s" : "Wiederhergestellt von %2$s",
"%s could not be renamed as it has been deleted" : "%s konnte nicht umbenannt werden, da es gelöscht wurde",
"%s could not be renamed" : "%s konnte nicht umbenannt werden",
"Upload (max. %s)" : "Hochladen (max. %s)",
"File handling" : "Dateibehandlung",
"Maximum upload size" : "Maximale Upload-Größe",
"max. possible: " : "maximal möglich:",
+ "With PHP-FPM this value may take up to 5 minutes to take effect after saving." : "Mit PHP-FPM kann es bis zu 5 Minuten dauern, bis die Einstellungen übernommen werden.",
"Save" : "Speichern",
"Can not be edited from here due to insufficient permissions." : "Aufgrund unzureichender Berechtigungen kann dies nicht von hier bearbeitet werden.",
"Settings" : "Einstellungen",
diff --git a/apps/files/l10n/es.js b/apps/files/l10n/es.js
index 11dce6e8da5..15062395e40 100644
--- a/apps/files/l10n/es.js
+++ b/apps/files/l10n/es.js
@@ -96,6 +96,9 @@ OC.L10N.register(
"%2$s deleted %1$s" : "%2$s ha eliminado %1$s",
"You restored %1$s" : "Usted restauró %1$s",
"%2$s restored %1$s" : "%2$s recuperó %1$s",
+ "Changed by %2$s" : "Cambiado por %2$s",
+ "Deleted by %2$s" : "Eliminado por %2$s",
+ "Restored by %2$s" : "Restaurado por %2$s",
"%s could not be renamed as it has been deleted" : "%s no se pudo renombrar pues ha sido eliminado",
"%s could not be renamed" : "%s no pudo ser renombrado",
"Upload (max. %s)" : "Subida (máx. %s)",
diff --git a/apps/files/l10n/es.json b/apps/files/l10n/es.json
index 6a325f1c3c6..4ce106ea4b5 100644
--- a/apps/files/l10n/es.json
+++ b/apps/files/l10n/es.json
@@ -94,6 +94,9 @@
"%2$s deleted %1$s" : "%2$s ha eliminado %1$s",
"You restored %1$s" : "Usted restauró %1$s",
"%2$s restored %1$s" : "%2$s recuperó %1$s",
+ "Changed by %2$s" : "Cambiado por %2$s",
+ "Deleted by %2$s" : "Eliminado por %2$s",
+ "Restored by %2$s" : "Restaurado por %2$s",
"%s could not be renamed as it has been deleted" : "%s no se pudo renombrar pues ha sido eliminado",
"%s could not be renamed" : "%s no pudo ser renombrado",
"Upload (max. %s)" : "Subida (máx. %s)",
diff --git a/apps/files/l10n/fr.js b/apps/files/l10n/fr.js
index bd39511a431..665d185cd2d 100644
--- a/apps/files/l10n/fr.js
+++ b/apps/files/l10n/fr.js
@@ -109,7 +109,7 @@ OC.L10N.register(
"WebDAV" : "WebDAV",
"Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Utilisez cette adresse pour <a href=\"%s\" target=\"_blank\">accéder à vos fichiers par WebDAV</a>",
"Cancel upload" : "Annuler l'envoi",
- "No files in here" : "Aucun fichier ici",
+ "No files in here" : "Aucun fichier",
"Upload some content or sync with your devices!" : "Déposez du contenu ou synchronisez vos appareils !",
"No entries found in this folder" : "Aucune entrée trouvée dans ce dossier",
"Select all" : "Tout sélectionner",
diff --git a/apps/files/l10n/fr.json b/apps/files/l10n/fr.json
index dbff6e6731d..02601ee9d9b 100644
--- a/apps/files/l10n/fr.json
+++ b/apps/files/l10n/fr.json
@@ -107,7 +107,7 @@
"WebDAV" : "WebDAV",
"Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Utilisez cette adresse pour <a href=\"%s\" target=\"_blank\">accéder à vos fichiers par WebDAV</a>",
"Cancel upload" : "Annuler l'envoi",
- "No files in here" : "Aucun fichier ici",
+ "No files in here" : "Aucun fichier",
"Upload some content or sync with your devices!" : "Déposez du contenu ou synchronisez vos appareils !",
"No entries found in this folder" : "Aucune entrée trouvée dans ce dossier",
"Select all" : "Tout sélectionner",
diff --git a/apps/files/l10n/hu_HU.js b/apps/files/l10n/hu_HU.js
index dfa628279c9..5eff7a8f842 100644
--- a/apps/files/l10n/hu_HU.js
+++ b/apps/files/l10n/hu_HU.js
@@ -96,6 +96,9 @@ OC.L10N.register(
"%2$s deleted %1$s" : "%2$s törölte: %1$s",
"You restored %1$s" : "Visszatöltötted %1$s",
"%2$s restored %1$s" : "%1$s visszatöltötte %2$s",
+ "Changed by %2$s" : "Megváltoztatta: %2$s",
+ "Deleted by %2$s" : "Törölte: %2$s",
+ "Restored by %2$s" : "Visszaállította: %2$s",
"%s could not be renamed as it has been deleted" : "%s nem lehet átnevezni, mivel törölve lett",
"%s could not be renamed" : "%s átnevezése nem sikerült",
"Upload (max. %s)" : "Feltöltés (max.: %s)",
diff --git a/apps/files/l10n/hu_HU.json b/apps/files/l10n/hu_HU.json
index 0a6c87b9892..da5eed09733 100644
--- a/apps/files/l10n/hu_HU.json
+++ b/apps/files/l10n/hu_HU.json
@@ -94,6 +94,9 @@
"%2$s deleted %1$s" : "%2$s törölte: %1$s",
"You restored %1$s" : "Visszatöltötted %1$s",
"%2$s restored %1$s" : "%1$s visszatöltötte %2$s",
+ "Changed by %2$s" : "Megváltoztatta: %2$s",
+ "Deleted by %2$s" : "Törölte: %2$s",
+ "Restored by %2$s" : "Visszaállította: %2$s",
"%s could not be renamed as it has been deleted" : "%s nem lehet átnevezni, mivel törölve lett",
"%s could not be renamed" : "%s átnevezése nem sikerült",
"Upload (max. %s)" : "Feltöltés (max.: %s)",
diff --git a/apps/files/l10n/id.js b/apps/files/l10n/id.js
index 4eb8836d1c8..f02a6d79c4d 100644
--- a/apps/files/l10n/id.js
+++ b/apps/files/l10n/id.js
@@ -96,6 +96,9 @@ OC.L10N.register(
"%2$s deleted %1$s" : "%2$s menghapus %1$s",
"You restored %1$s" : "Anda memulihkan %1$s",
"%2$s restored %1$s" : "%2$s memulihkan %1$s",
+ "Changed by %2$s" : "Diubah oleh %2$s",
+ "Deleted by %2$s" : "Dihapus oleh %2$s",
+ "Restored by %2$s" : "Dipulihkan oleh %2$s",
"%s could not be renamed as it has been deleted" : "%s tidak dapat diubah namanya kerena telah dihapus",
"%s could not be renamed" : "%s tidak dapat diubah nama",
"Upload (max. %s)" : "Unggah (maks. %s)",
diff --git a/apps/files/l10n/id.json b/apps/files/l10n/id.json
index bcf66fa3a1e..773f6b8f5a7 100644
--- a/apps/files/l10n/id.json
+++ b/apps/files/l10n/id.json
@@ -94,6 +94,9 @@
"%2$s deleted %1$s" : "%2$s menghapus %1$s",
"You restored %1$s" : "Anda memulihkan %1$s",
"%2$s restored %1$s" : "%2$s memulihkan %1$s",
+ "Changed by %2$s" : "Diubah oleh %2$s",
+ "Deleted by %2$s" : "Dihapus oleh %2$s",
+ "Restored by %2$s" : "Dipulihkan oleh %2$s",
"%s could not be renamed as it has been deleted" : "%s tidak dapat diubah namanya kerena telah dihapus",
"%s could not be renamed" : "%s tidak dapat diubah nama",
"Upload (max. %s)" : "Unggah (maks. %s)",
diff --git a/apps/files/l10n/nds.js b/apps/files/l10n/nds.js
index 7988332fa91..9b28220ae43 100644
--- a/apps/files/l10n/nds.js
+++ b/apps/files/l10n/nds.js
@@ -1,9 +1,10 @@
OC.L10N.register(
"files",
{
- "_%n folder_::_%n folders_" : ["",""],
- "_%n file_::_%n files_" : ["",""],
- "_Uploading %n file_::_Uploading %n files_" : ["",""],
- "_matches '{filter}'_::_match '{filter}'_" : ["",""]
+ "Files" : "Dateien",
+ "Delete" : "Löschen",
+ "Name" : "Name",
+ "Settings" : "Einstellungen",
+ "WebDAV" : "WebDAV"
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/files/l10n/nds.json b/apps/files/l10n/nds.json
index ef5fc586755..4ab8de68b35 100644
--- a/apps/files/l10n/nds.json
+++ b/apps/files/l10n/nds.json
@@ -1,7 +1,8 @@
{ "translations": {
- "_%n folder_::_%n folders_" : ["",""],
- "_%n file_::_%n files_" : ["",""],
- "_Uploading %n file_::_Uploading %n files_" : ["",""],
- "_matches '{filter}'_::_match '{filter}'_" : ["",""]
+ "Files" : "Dateien",
+ "Delete" : "Löschen",
+ "Name" : "Name",
+ "Settings" : "Einstellungen",
+ "WebDAV" : "WebDAV"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/files/l10n/ru.js b/apps/files/l10n/ru.js
index 60583d6baf1..270cc3c6a85 100644
--- a/apps/files/l10n/ru.js
+++ b/apps/files/l10n/ru.js
@@ -75,8 +75,10 @@ OC.L10N.register(
"_%n byte_::_%n bytes_" : ["%n байт","%n байта","%n байтов","%n байта(ов)"],
"Favorited" : "Избранное",
"Favorite" : "Избранное",
+ "{newname} already exists" : "{newname} уже существует",
"Upload" : "Загрузить",
"Text file" : "Текстовый файл",
+ "New text file.txt" : "Новый текстовый документ.txt",
"Folder" : "Каталог",
"New folder" : "Новый каталог",
"An error occurred while trying to update the tags" : "Во время обновления тегов возникла ошибка",
@@ -94,6 +96,9 @@ OC.L10N.register(
"%2$s deleted %1$s" : "%2$s удалил %1$s",
"You restored %1$s" : "Вы восстановили %1$s",
"%2$s restored %1$s" : "%2$s восстановил %1$s",
+ "Changed by %2$s" : "Изменено %2$s",
+ "Deleted by %2$s" : "Удалено %2$s",
+ "Restored by %2$s" : "Восстановлено %2$s",
"%s could not be renamed as it has been deleted" : "Невозможно переименовать %s, поскольку объект удалён.",
"%s could not be renamed" : "%s не может быть переименован",
"Upload (max. %s)" : "Загрузка (максимум %s)",
diff --git a/apps/files/l10n/ru.json b/apps/files/l10n/ru.json
index d15e181096f..36aae3834a9 100644
--- a/apps/files/l10n/ru.json
+++ b/apps/files/l10n/ru.json
@@ -73,8 +73,10 @@
"_%n byte_::_%n bytes_" : ["%n байт","%n байта","%n байтов","%n байта(ов)"],
"Favorited" : "Избранное",
"Favorite" : "Избранное",
+ "{newname} already exists" : "{newname} уже существует",
"Upload" : "Загрузить",
"Text file" : "Текстовый файл",
+ "New text file.txt" : "Новый текстовый документ.txt",
"Folder" : "Каталог",
"New folder" : "Новый каталог",
"An error occurred while trying to update the tags" : "Во время обновления тегов возникла ошибка",
@@ -92,6 +94,9 @@
"%2$s deleted %1$s" : "%2$s удалил %1$s",
"You restored %1$s" : "Вы восстановили %1$s",
"%2$s restored %1$s" : "%2$s восстановил %1$s",
+ "Changed by %2$s" : "Изменено %2$s",
+ "Deleted by %2$s" : "Удалено %2$s",
+ "Restored by %2$s" : "Восстановлено %2$s",
"%s could not be renamed as it has been deleted" : "Невозможно переименовать %s, поскольку объект удалён.",
"%s could not be renamed" : "%s не может быть переименован",
"Upload (max. %s)" : "Загрузка (максимум %s)",
diff --git a/apps/files/l10n/tr.js b/apps/files/l10n/tr.js
index 6b2f9a14dcf..cd48408b9e1 100644
--- a/apps/files/l10n/tr.js
+++ b/apps/files/l10n/tr.js
@@ -75,8 +75,10 @@ OC.L10N.register(
"_%n byte_::_%n bytes_" : ["%n bayt","%n bayt"],
"Favorited" : "Sık kullanılanlara eklendi",
"Favorite" : "Sık kullanılan",
+ "{newname} already exists" : "{newname} zaten mevcut",
"Upload" : "Yükle",
"Text file" : "Metin dosyası",
+ "New text file.txt" : "Yeni metin dosyası.txt",
"Folder" : "Klasör",
"New folder" : "Yeni klasör",
"An error occurred while trying to update the tags" : "Etiketler güncellenmeye çalışılırken bir hata oluştu",
@@ -94,6 +96,9 @@ OC.L10N.register(
"%2$s deleted %1$s" : "%2$s, %1$s dosyasını sildi",
"You restored %1$s" : "%1$s ögesini geri aldınız",
"%2$s restored %1$s" : "%2$s, %1$s ögesini geri aldı",
+ "Changed by %2$s" : "%2$s tarafından değiştirildi",
+ "Deleted by %2$s" : "%2$s tarafından silindi",
+ "Restored by %2$s" : "%2$s tarafından geri yüklendi",
"%s could not be renamed as it has been deleted" : "%s, silindiği için adlandırılamadı",
"%s could not be renamed" : "%s yeniden adlandırılamadı",
"Upload (max. %s)" : "Yükle (azami: %s)",
diff --git a/apps/files/l10n/tr.json b/apps/files/l10n/tr.json
index 9f59757f715..92af334f703 100644
--- a/apps/files/l10n/tr.json
+++ b/apps/files/l10n/tr.json
@@ -73,8 +73,10 @@
"_%n byte_::_%n bytes_" : ["%n bayt","%n bayt"],
"Favorited" : "Sık kullanılanlara eklendi",
"Favorite" : "Sık kullanılan",
+ "{newname} already exists" : "{newname} zaten mevcut",
"Upload" : "Yükle",
"Text file" : "Metin dosyası",
+ "New text file.txt" : "Yeni metin dosyası.txt",
"Folder" : "Klasör",
"New folder" : "Yeni klasör",
"An error occurred while trying to update the tags" : "Etiketler güncellenmeye çalışılırken bir hata oluştu",
@@ -92,6 +94,9 @@
"%2$s deleted %1$s" : "%2$s, %1$s dosyasını sildi",
"You restored %1$s" : "%1$s ögesini geri aldınız",
"%2$s restored %1$s" : "%2$s, %1$s ögesini geri aldı",
+ "Changed by %2$s" : "%2$s tarafından değiştirildi",
+ "Deleted by %2$s" : "%2$s tarafından silindi",
+ "Restored by %2$s" : "%2$s tarafından geri yüklendi",
"%s could not be renamed as it has been deleted" : "%s, silindiği için adlandırılamadı",
"%s could not be renamed" : "%s yeniden adlandırılamadı",
"Upload (max. %s)" : "Yükle (azami: %s)",
diff --git a/apps/files/tests/ajax_rename.php b/apps/files/tests/ajax_rename.php
index 8abde9094d9..45d49c9549d 100644
--- a/apps/files/tests/ajax_rename.php
+++ b/apps/files/tests/ajax_rename.php
@@ -5,6 +5,7 @@
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author tbartenstein <tbartenstein@users.noreply.github.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Vincent Petry <pvince81@owncloud.com>
*
diff --git a/apps/files_external/ajax/applicable.php b/apps/files_external/ajax/applicable.php
index 5ae91c8e182..7f1b4dc9221 100644
--- a/apps/files_external/ajax/applicable.php
+++ b/apps/files_external/ajax/applicable.php
@@ -2,6 +2,7 @@
/**
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Lukas Reschke <lukas@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/ajax/oauth1.php b/apps/files_external/ajax/oauth1.php
index ca339aeec58..3d6736b3b59 100644
--- a/apps/files_external/ajax/oauth1.php
+++ b/apps/files_external/ajax/oauth1.php
@@ -4,8 +4,8 @@
* @author Lukas Reschke <lukas@owncloud.com>
* @author Michael Gapczynski <GapczynskiM@gmail.com>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Thomas Müller <thomas.mueller@tmit.eu>
- * @author Volkan Gezer <volkangezer@gmail.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/ajax/oauth2.php b/apps/files_external/ajax/oauth2.php
index 0a202e3ddcb..e3e32c4b912 100644
--- a/apps/files_external/ajax/oauth2.php
+++ b/apps/files_external/ajax/oauth2.php
@@ -6,6 +6,7 @@
* @author Lukas Reschke <lukas@owncloud.com>
* @author Michael Gapczynski <GapczynskiM@gmail.com>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Volkan Gezer <volkangezer@gmail.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/appinfo/app.php b/apps/files_external/appinfo/app.php
index f33012b5f09..aa39d79a85e 100644
--- a/apps/files_external/appinfo/app.php
+++ b/apps/files_external/appinfo/app.php
@@ -1,18 +1,14 @@
<?php
/**
* @author Christian Berendt <berendt@b1-systems.de>
- * @author fibsifan <fi@volans.uberspace.de>
* @author Jan-Christoph Borchardt <hey@jancborchardt.net>
* @author j-ed <juergen@eisfair.org>
- * @author Martin Mattel <martin.mattel@diemattels.at>
* @author Michael Gapczynski <GapczynskiM@gmail.com>
- * @author Philipp Kapfer <philipp.kapfer@gmx.at>
* @author Robin Appelman <icewind@owncloud.com>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Ross Nicoll <jrn@jrn.me.uk>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Vincent Petry <pvince81@owncloud.com>
- * @author Volkan Gezer <volkangezer@gmail.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/appinfo/application.php b/apps/files_external/appinfo/application.php
index 3a222141fb5..c7deaaf270e 100644
--- a/apps/files_external/appinfo/application.php
+++ b/apps/files_external/appinfo/application.php
@@ -1,9 +1,10 @@
<?php
/**
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Ross Nicoll <jrn@jrn.me.uk>
* @author Vincent Petry <pvince81@owncloud.com>
- * @author Robin McCorkell <rmccorkell@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/appinfo/routes.php b/apps/files_external/appinfo/routes.php
index a371273e74e..a98a63c711d 100644
--- a/apps/files_external/appinfo/routes.php
+++ b/apps/files_external/appinfo/routes.php
@@ -3,6 +3,8 @@
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Ross Nicoll <jrn@jrn.me.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
diff --git a/apps/files_external/controller/ajaxcontroller.php b/apps/files_external/controller/ajaxcontroller.php
index c285cd34e70..b278d66c1c0 100644
--- a/apps/files_external/controller/ajaxcontroller.php
+++ b/apps/files_external/controller/ajaxcontroller.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Ross Nicoll <jrn@jrn.me.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/controller/globalstoragescontroller.php b/apps/files_external/controller/globalstoragescontroller.php
index 3c1f2022505..e36d1fb2c03 100644
--- a/apps/files_external/controller/globalstoragescontroller.php
+++ b/apps/files_external/controller/globalstoragescontroller.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/controller/storagescontroller.php b/apps/files_external/controller/storagescontroller.php
index 6a01112f8c5..f754565f628 100644
--- a/apps/files_external/controller/storagescontroller.php
+++ b/apps/files_external/controller/storagescontroller.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/controller/userstoragescontroller.php b/apps/files_external/controller/userstoragescontroller.php
index f39f8a85d2d..71d1f7cca46 100644
--- a/apps/files_external/controller/userstoragescontroller.php
+++ b/apps/files_external/controller/userstoragescontroller.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/l10n/de.js b/apps/files_external/l10n/de.js
index bd4aa124ee1..afedf29dc03 100644
--- a/apps/files_external/l10n/de.js
+++ b/apps/files_external/l10n/de.js
@@ -22,14 +22,20 @@ OC.L10N.register(
"All users. Type to select user or group." : "Alle Benutzer. Benutzer oder Gruppe zur Auswahl eingeben.",
"(group)" : "(group)",
"Saved" : "Gespeichert",
+ "Access key" : "Zugangsschlüssel",
+ "Secret key" : "Geheimer Schlüssel",
"None" : "Keine",
+ "OAuth1" : "OAuth1",
"App key" : "App-Schlüssel",
"App secret" : "Geheime Zeichenkette der App",
"Client ID" : "Client-ID",
"Client secret" : "Geheime Zeichenkette des Client",
+ "OpenStack" : "OpenStack",
"Username" : "Benutzername",
"Password" : "Passwort",
"API key" : "API-Schlüssel",
+ "Username and password" : "Benutzername und Passwort",
+ "RSA public key" : "RSA öffentlicher Schlüssel",
"Public key" : "Öffentlicher Schlüssel",
"Amazon S3" : "Amazon S3",
"Bucket" : "Bucket",
@@ -43,14 +49,19 @@ OC.L10N.register(
"Remote subfolder" : "Entfernter Unterordner",
"Secure https://" : "Sicherer HTTPS://",
"Dropbox" : "Dropbox",
+ "FTP" : "FTP",
"Host" : "Host",
"Secure ftps://" : "Sicherer ftps://",
+ "Google Drive" : "Google Drive",
"Local" : "Lokal",
"Location" : "Ort",
"ownCloud" : "ownCloud",
+ "SFTP" : "SFTP",
"Root" : "Root",
"SFTP with secret key login" : "SFTP mit dem Login über einen geheimen Schlüssel",
+ "SMB / CIFS" : "SMB / CIFS",
"Share" : "Share",
+ "Domain" : "Domain",
"SMB / CIFS using OC login" : "SMB / CIFS mit OC-Login",
"Username as share" : "Benutzername als Freigabe",
"OpenStack Object Storage" : "Openstack-Objektspeicher",
diff --git a/apps/files_external/l10n/de.json b/apps/files_external/l10n/de.json
index f09172d814c..ef96bdcf0e5 100644
--- a/apps/files_external/l10n/de.json
+++ b/apps/files_external/l10n/de.json
@@ -20,14 +20,20 @@
"All users. Type to select user or group." : "Alle Benutzer. Benutzer oder Gruppe zur Auswahl eingeben.",
"(group)" : "(group)",
"Saved" : "Gespeichert",
+ "Access key" : "Zugangsschlüssel",
+ "Secret key" : "Geheimer Schlüssel",
"None" : "Keine",
+ "OAuth1" : "OAuth1",
"App key" : "App-Schlüssel",
"App secret" : "Geheime Zeichenkette der App",
"Client ID" : "Client-ID",
"Client secret" : "Geheime Zeichenkette des Client",
+ "OpenStack" : "OpenStack",
"Username" : "Benutzername",
"Password" : "Passwort",
"API key" : "API-Schlüssel",
+ "Username and password" : "Benutzername und Passwort",
+ "RSA public key" : "RSA öffentlicher Schlüssel",
"Public key" : "Öffentlicher Schlüssel",
"Amazon S3" : "Amazon S3",
"Bucket" : "Bucket",
@@ -41,14 +47,19 @@
"Remote subfolder" : "Entfernter Unterordner",
"Secure https://" : "Sicherer HTTPS://",
"Dropbox" : "Dropbox",
+ "FTP" : "FTP",
"Host" : "Host",
"Secure ftps://" : "Sicherer ftps://",
+ "Google Drive" : "Google Drive",
"Local" : "Lokal",
"Location" : "Ort",
"ownCloud" : "ownCloud",
+ "SFTP" : "SFTP",
"Root" : "Root",
"SFTP with secret key login" : "SFTP mit dem Login über einen geheimen Schlüssel",
+ "SMB / CIFS" : "SMB / CIFS",
"Share" : "Share",
+ "Domain" : "Domain",
"SMB / CIFS using OC login" : "SMB / CIFS mit OC-Login",
"Username as share" : "Benutzername als Freigabe",
"OpenStack Object Storage" : "Openstack-Objektspeicher",
diff --git a/apps/files_external/l10n/es.js b/apps/files_external/l10n/es.js
index 3d9add9c2ec..21e9476f77a 100644
--- a/apps/files_external/l10n/es.js
+++ b/apps/files_external/l10n/es.js
@@ -36,9 +36,11 @@ OC.L10N.register(
"Client secret" : "Cliente secreto",
"Username" : "Nombre de usuario",
"Password" : "Contraseña",
+ "Tenant name" : "Nombre del inquilino",
"API key" : "Clave API",
"Username and password" : "Nombre de usuario y contraseña",
"Session credentials" : "Credenciales de la sesión",
+ "RSA public key" : "Clave pública RSA",
"Public key" : "Clave pública",
"Amazon S3" : "Amazon S3",
"Bucket" : "Depósito",
diff --git a/apps/files_external/l10n/es.json b/apps/files_external/l10n/es.json
index 60ae72faf72..5f89e008ed5 100644
--- a/apps/files_external/l10n/es.json
+++ b/apps/files_external/l10n/es.json
@@ -34,9 +34,11 @@
"Client secret" : "Cliente secreto",
"Username" : "Nombre de usuario",
"Password" : "Contraseña",
+ "Tenant name" : "Nombre del inquilino",
"API key" : "Clave API",
"Username and password" : "Nombre de usuario y contraseña",
"Session credentials" : "Credenciales de la sesión",
+ "RSA public key" : "Clave pública RSA",
"Public key" : "Clave pública",
"Amazon S3" : "Amazon S3",
"Bucket" : "Depósito",
diff --git a/apps/files_external/l10n/nds.js b/apps/files_external/l10n/nds.js
new file mode 100644
index 00000000000..717417fdc2b
--- /dev/null
+++ b/apps/files_external/l10n/nds.js
@@ -0,0 +1,102 @@
+OC.L10N.register(
+ "files_external",
+ {
+ "Fetching request tokens failed. Verify that your app key and secret are correct." : "Holen des Requesttokens fehlgeschlagen. Bitte überprüfe Schlüssel und Secret deiner App.",
+ "Fetching access tokens failed. Verify that your app key and secret are correct." : "Holen des Zugrifftokens fehlgeschlagen. Bitte überprüfe Schlüssel und Secret deiner App.",
+ "Please provide a valid app key and secret." : "Bitte verwende für deine App einen gültigen Schüssel und ein gültiges Secret.",
+ "Step 1 failed. Exception: %s" : "Schritt 1 fehlgeschlagen. Exception: %s",
+ "Step 2 failed. Exception: %s" : "Schritt 2 fehlgeschlagen. Exception: %s",
+ "External storage" : "Externer Speicher",
+ "Storage with id \"%i\" not found" : "Speicher mit der ID \"%i\" wurde nicht gefunden",
+ "Invalid backend or authentication mechanism class" : "Ungültige Klasse für das Backend oder für den Authentifizierungsmechanismus",
+ "Invalid mount point" : "Ungültiger Einhängepunkt",
+ "Objectstore forbidden" : "Objectstore nicht erlaubt",
+ "Invalid storage backend \"%s\"" : "Ungültiges Speicherbackend \"%s\"",
+ "Not permitted to use backend \"%s\"" : "Verwendung des Backends \"%s\" nicht erlaubt",
+ "Not permitted to use authentication mechanism \"%s\"" : "Verwendung des Authentifizierungsmechanismus \"%s\" nicht erlaubt",
+ "Unsatisfied backend parameters" : "Nicht bediente Backendparameter",
+ "Unsatisfied authentication mechanism parameters" : "Nicht bediente Authentifizierungsmechanismusparamter",
+ "Personal" : "Persönlich",
+ "System" : "System",
+ "Grant access" : "Erlaube Zugriff",
+ "Access granted" : "Zugriff erlaubt",
+ "Error configuring OAuth1" : "Fehler bei der Konfiguration von OAuth1",
+ "Error configuring OAuth2" : "Fehler bei der Konfiguration von OAuth2",
+ "Generate keys" : "Generiere Schlüssel",
+ "Error generating key pair" : "Fehler beim Generieren des Schlüsselpaars",
+ "Enable encryption" : "Verschlüsselung aktivieren",
+ "Enable previews" : "Vorschau aktivieren",
+ "Check for changes" : "Auf Änderungen prüfen",
+ "Never" : "Nie",
+ "Once every direct access" : "Einmal bei jedem direkten Zugriff",
+ "Every time the filesystem is used" : "Bei jeder Verwendung des Dateisystems",
+ "All users. Type to select user or group." : "Alle Benutzer. Tippe, um eine Benutzergruppe auszuwählen.",
+ "(group)" : "(Gruppe)",
+ "Saved" : "Gespeichert",
+ "Access key" : "Schlüssel für Zugriff",
+ "Secret key" : "Geheimer Schlüssel",
+ "Builtin" : "Eingebaut",
+ "None" : "Keine(r)",
+ "OAuth1" : "OAuth1",
+ "App key" : "App Schlüssel",
+ "App secret" : "App Secret",
+ "OAuth2" : "OAuth2",
+ "Client ID" : "Client ID",
+ "Client secret" : "Client Geheimnis",
+ "OpenStack" : "OpenStack",
+ "Username" : "Benutzername",
+ "Password" : "Passwort",
+ "API key" : "API Schlüssel",
+ "Username and password" : "Benutzername und Passwort",
+ "Session credentials" : "Anmeldedaten der Sitzung",
+ "RSA public key" : "Öffentlicher RSA Schlüssel",
+ "Public key" : "Öffentlicher Schlüssel",
+ "Amazon S3" : "Amazon S3",
+ "Hostname" : "Hostname",
+ "Port" : "Port",
+ "Region" : "Region",
+ "Enable SSL" : "SSL aktivieren",
+ "Enable Path Style" : "Path Style aktivieren",
+ "WebDAV" : "WebDAV",
+ "URL" : "URL",
+ "Remote subfolder" : "Entfernter Unterordner",
+ "Secure https://" : "Sicheres https://",
+ "Dropbox" : "Dropbox",
+ "FTP" : "FTP",
+ "Host" : "Host",
+ "Secure ftps://" : "Sicheres fpts://",
+ "Google Drive" : "Google Drive",
+ "Local" : "Lokal",
+ "Location" : "Ort",
+ "ownCloud" : "ownCloud",
+ "SFTP" : "SFTP",
+ "Root" : "Root",
+ "SFTP with secret key login" : "SFTP mit Anmeldung über geheimen Schlüssel",
+ "SMB / CIFS" : "SMB / CIFS",
+ "Share" : "Teilen",
+ "Domain" : "Domäne",
+ "SMB / CIFS using OC login" : "SMB / DIFS mit OC Anmeldung",
+ "Username as share" : "Benutzername als Freigabe",
+ "Service name" : "Name des Dienstes",
+ "Request timeout (seconds)" : "Zeitüberschreitung der Anfrage (Sekunden)",
+ "<b>Note:</b> " : "<b>Notiz:</b>",
+ "<b>Note:</b> The cURL support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Notiz:</b> Die cURL-Unterstützung ist in PHP nicht aktiviert oder nicht installiert, deshalb ist das Einhängen von %s nicht möglich. Bitte deinen Administrator diese zu installieren.",
+ "<b>Note:</b> The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Notiz:</b> Die FTP-Unterstützung ist in PHP nicht aktiviert oder nicht installiert, deshalb ist das Einhängen von %s nicht möglich. Bitte deinen Administrator diese zu installieren.",
+ "<b>Note:</b> \"%s\" is not installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Notiz:</b> \"%s\" ist nicht installiert, deshalb ist das Einhängen von %s nicht möglich. Bitte deinen Administrator diese zu installieren.",
+ "No external storage configured" : "Kein externer Speicher konfiguriert",
+ "You can add external storages in the personal settings" : "Du kannst externe Speicher in deinen persönlichen Einstellungen hinzufügen",
+ "Name" : "Name",
+ "Storage type" : "Speicherart",
+ "Scope" : "Bereich",
+ "External Storage" : "Externer Speicher",
+ "Folder name" : "Ordnername",
+ "Authentication" : "Authentifizierung",
+ "Configuration" : "Konfiguration",
+ "Available for" : "Verfügbar für",
+ "Advanced settings" : "Erweiterte Einstellungen",
+ "Delete" : "Löschen",
+ "Add storage" : "Speicher hinzufügen",
+ "Enable User External Storage" : "Externen Speicher für Nutzer aktivieren",
+ "Allow users to mount the following external storage" : "Erlaube Benutzern folgenden externen Speicher einzuhängen"
+},
+"nplurals=2; plural=(n != 1);");
diff --git a/apps/files_external/l10n/nds.json b/apps/files_external/l10n/nds.json
new file mode 100644
index 00000000000..b7c196ef64c
--- /dev/null
+++ b/apps/files_external/l10n/nds.json
@@ -0,0 +1,100 @@
+{ "translations": {
+ "Fetching request tokens failed. Verify that your app key and secret are correct." : "Holen des Requesttokens fehlgeschlagen. Bitte überprüfe Schlüssel und Secret deiner App.",
+ "Fetching access tokens failed. Verify that your app key and secret are correct." : "Holen des Zugrifftokens fehlgeschlagen. Bitte überprüfe Schlüssel und Secret deiner App.",
+ "Please provide a valid app key and secret." : "Bitte verwende für deine App einen gültigen Schüssel und ein gültiges Secret.",
+ "Step 1 failed. Exception: %s" : "Schritt 1 fehlgeschlagen. Exception: %s",
+ "Step 2 failed. Exception: %s" : "Schritt 2 fehlgeschlagen. Exception: %s",
+ "External storage" : "Externer Speicher",
+ "Storage with id \"%i\" not found" : "Speicher mit der ID \"%i\" wurde nicht gefunden",
+ "Invalid backend or authentication mechanism class" : "Ungültige Klasse für das Backend oder für den Authentifizierungsmechanismus",
+ "Invalid mount point" : "Ungültiger Einhängepunkt",
+ "Objectstore forbidden" : "Objectstore nicht erlaubt",
+ "Invalid storage backend \"%s\"" : "Ungültiges Speicherbackend \"%s\"",
+ "Not permitted to use backend \"%s\"" : "Verwendung des Backends \"%s\" nicht erlaubt",
+ "Not permitted to use authentication mechanism \"%s\"" : "Verwendung des Authentifizierungsmechanismus \"%s\" nicht erlaubt",
+ "Unsatisfied backend parameters" : "Nicht bediente Backendparameter",
+ "Unsatisfied authentication mechanism parameters" : "Nicht bediente Authentifizierungsmechanismusparamter",
+ "Personal" : "Persönlich",
+ "System" : "System",
+ "Grant access" : "Erlaube Zugriff",
+ "Access granted" : "Zugriff erlaubt",
+ "Error configuring OAuth1" : "Fehler bei der Konfiguration von OAuth1",
+ "Error configuring OAuth2" : "Fehler bei der Konfiguration von OAuth2",
+ "Generate keys" : "Generiere Schlüssel",
+ "Error generating key pair" : "Fehler beim Generieren des Schlüsselpaars",
+ "Enable encryption" : "Verschlüsselung aktivieren",
+ "Enable previews" : "Vorschau aktivieren",
+ "Check for changes" : "Auf Änderungen prüfen",
+ "Never" : "Nie",
+ "Once every direct access" : "Einmal bei jedem direkten Zugriff",
+ "Every time the filesystem is used" : "Bei jeder Verwendung des Dateisystems",
+ "All users. Type to select user or group." : "Alle Benutzer. Tippe, um eine Benutzergruppe auszuwählen.",
+ "(group)" : "(Gruppe)",
+ "Saved" : "Gespeichert",
+ "Access key" : "Schlüssel für Zugriff",
+ "Secret key" : "Geheimer Schlüssel",
+ "Builtin" : "Eingebaut",
+ "None" : "Keine(r)",
+ "OAuth1" : "OAuth1",
+ "App key" : "App Schlüssel",
+ "App secret" : "App Secret",
+ "OAuth2" : "OAuth2",
+ "Client ID" : "Client ID",
+ "Client secret" : "Client Geheimnis",
+ "OpenStack" : "OpenStack",
+ "Username" : "Benutzername",
+ "Password" : "Passwort",
+ "API key" : "API Schlüssel",
+ "Username and password" : "Benutzername und Passwort",
+ "Session credentials" : "Anmeldedaten der Sitzung",
+ "RSA public key" : "Öffentlicher RSA Schlüssel",
+ "Public key" : "Öffentlicher Schlüssel",
+ "Amazon S3" : "Amazon S3",
+ "Hostname" : "Hostname",
+ "Port" : "Port",
+ "Region" : "Region",
+ "Enable SSL" : "SSL aktivieren",
+ "Enable Path Style" : "Path Style aktivieren",
+ "WebDAV" : "WebDAV",
+ "URL" : "URL",
+ "Remote subfolder" : "Entfernter Unterordner",
+ "Secure https://" : "Sicheres https://",
+ "Dropbox" : "Dropbox",
+ "FTP" : "FTP",
+ "Host" : "Host",
+ "Secure ftps://" : "Sicheres fpts://",
+ "Google Drive" : "Google Drive",
+ "Local" : "Lokal",
+ "Location" : "Ort",
+ "ownCloud" : "ownCloud",
+ "SFTP" : "SFTP",
+ "Root" : "Root",
+ "SFTP with secret key login" : "SFTP mit Anmeldung über geheimen Schlüssel",
+ "SMB / CIFS" : "SMB / CIFS",
+ "Share" : "Teilen",
+ "Domain" : "Domäne",
+ "SMB / CIFS using OC login" : "SMB / DIFS mit OC Anmeldung",
+ "Username as share" : "Benutzername als Freigabe",
+ "Service name" : "Name des Dienstes",
+ "Request timeout (seconds)" : "Zeitüberschreitung der Anfrage (Sekunden)",
+ "<b>Note:</b> " : "<b>Notiz:</b>",
+ "<b>Note:</b> The cURL support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Notiz:</b> Die cURL-Unterstützung ist in PHP nicht aktiviert oder nicht installiert, deshalb ist das Einhängen von %s nicht möglich. Bitte deinen Administrator diese zu installieren.",
+ "<b>Note:</b> The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Notiz:</b> Die FTP-Unterstützung ist in PHP nicht aktiviert oder nicht installiert, deshalb ist das Einhängen von %s nicht möglich. Bitte deinen Administrator diese zu installieren.",
+ "<b>Note:</b> \"%s\" is not installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Notiz:</b> \"%s\" ist nicht installiert, deshalb ist das Einhängen von %s nicht möglich. Bitte deinen Administrator diese zu installieren.",
+ "No external storage configured" : "Kein externer Speicher konfiguriert",
+ "You can add external storages in the personal settings" : "Du kannst externe Speicher in deinen persönlichen Einstellungen hinzufügen",
+ "Name" : "Name",
+ "Storage type" : "Speicherart",
+ "Scope" : "Bereich",
+ "External Storage" : "Externer Speicher",
+ "Folder name" : "Ordnername",
+ "Authentication" : "Authentifizierung",
+ "Configuration" : "Konfiguration",
+ "Available for" : "Verfügbar für",
+ "Advanced settings" : "Erweiterte Einstellungen",
+ "Delete" : "Löschen",
+ "Add storage" : "Speicher hinzufügen",
+ "Enable User External Storage" : "Externen Speicher für Nutzer aktivieren",
+ "Allow users to mount the following external storage" : "Erlaube Benutzern folgenden externen Speicher einzuhängen"
+},"pluralForm" :"nplurals=2; plural=(n != 1);"
+} \ No newline at end of file
diff --git a/apps/files_external/l10n/ru.js b/apps/files_external/l10n/ru.js
index e4415e2e2b3..7e4bfc18730 100644
--- a/apps/files_external/l10n/ru.js
+++ b/apps/files_external/l10n/ru.js
@@ -1,16 +1,27 @@
OC.L10N.register(
"files_external",
{
+ "Fetching request tokens failed. Verify that your app key and secret are correct." : "Ошибка получения токенов запроса. Проверьте корректность ключа и секрета приложения.",
+ "Fetching access tokens failed. Verify that your app key and secret are correct." : "Ошибка получения токенов доступа. Проверьте корректность ключа и секрета приложения.",
+ "Please provide a valid app key and secret." : "Пожалуйста укажите корректные ключ и секрет приложения.",
"Step 1 failed. Exception: %s" : "Шаг 1 неудачен. Исключение: %s",
"Step 2 failed. Exception: %s" : "Шаг 2 неудачен. Исключение: %s",
"External storage" : "Внешнее хранилище",
"Storage with id \"%i\" not found" : "Хранилище с идентификатором \"%i\" не найдено",
+ "Invalid backend or authentication mechanism class" : "Некорректный механизм авторизации или бэкенд",
"Invalid mount point" : "Неправильная точка входа",
+ "Objectstore forbidden" : "Хранение объектов запрещено",
"Invalid storage backend \"%s\"" : "Неверный бэкенд хранилища \"%s\"",
+ "Not permitted to use backend \"%s\"" : "Не допускается использование бэкенда \"%s\"",
+ "Not permitted to use authentication mechanism \"%s\"" : "Не допускается использование механизма авторизации \"%s\"",
+ "Unsatisfied backend parameters" : "Недопустимые настройки бэкенда",
+ "Unsatisfied authentication mechanism parameters" : "Недопустимые настройки механизма авторизации",
"Personal" : "Личное",
"System" : "Система",
"Grant access" : "Предоставить доступ",
"Access granted" : "Доступ предоставлен",
+ "Error configuring OAuth1" : "Ошибка настройки OAuth1",
+ "Error configuring OAuth2" : "Ошибка настройки OAuth2",
"Generate keys" : "Создать ключи",
"Error generating key pair" : "Ошибка создания ключевой пары",
"Enable encryption" : "Включить шифрование",
@@ -22,14 +33,26 @@ OC.L10N.register(
"All users. Type to select user or group." : "Все пользователи. Введите имя пользователя или группы.",
"(group)" : "(группа)",
"Saved" : "Сохранено",
+ "Access key" : "Ключ доступа",
+ "Secret key" : "Секретный ключ",
+ "Builtin" : "Встроенный",
"None" : "Отсутствует",
+ "OAuth1" : "OAuth1",
"App key" : "Ключ приложения",
"App secret" : "Секретный ключ ",
+ "OAuth2" : "OAuth2",
"Client ID" : "Идентификатор клиента",
"Client secret" : "Клиентский ключ ",
+ "OpenStack" : "OpenStack",
"Username" : "Имя пользователя",
"Password" : "Пароль",
+ "Tenant name" : "Имя арендатора",
+ "Identity endpoint URL" : "Удостоверение конечной точки URL",
+ "Rackspace" : "Rackspace",
"API key" : "Ключ API",
+ "Username and password" : "Имя пользователя и пароль",
+ "Session credentials" : "Учетные данные сессии",
+ "RSA public key" : "Открытый ключ RSA",
"Public key" : "Открытый ключ",
"Amazon S3" : "Amazon S3",
"Bucket" : "Корзина",
@@ -43,17 +66,24 @@ OC.L10N.register(
"Remote subfolder" : "Удаленный подкаталог",
"Secure https://" : "Безопасный https://",
"Dropbox" : "Dropbox",
+ "FTP" : "FTP",
"Host" : "Сервер",
"Secure ftps://" : "Защищённый ftps://",
+ "Google Drive" : "Google Drive",
"Local" : "Локально",
"Location" : "Местоположение",
"ownCloud" : "ownCloud",
+ "SFTP" : "SFTP",
"Root" : "Корневой каталог",
"SFTP with secret key login" : "SFTP с помощью секретного ключа",
+ "SMB / CIFS" : "SMB / CIFS",
"Share" : "Общий доступ",
+ "Domain" : "Домен",
"SMB / CIFS using OC login" : "SMB / CIFS с ипользованием логина OC",
"Username as share" : "Имя пользователя в качестве имени общего ресурса",
"OpenStack Object Storage" : "Хранилище объектов OpenStack",
+ "Service name" : "Название сервиса",
+ "Request timeout (seconds)" : "Таймаут запроса (секунды)",
"<b>Note:</b> " : "<b>Примечание:</b> ",
"<b>Note:</b> The cURL support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Примечание:</b> Поддержка cURL в PHP не включена или не установлена. Монтирование %s невозможно. Обратитесь к вашему системному администратору.",
"<b>Note:</b> The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Примечание:</b> Поддержка FTP в PHP не включена или не установлена. Монтирование %s невозможно. Пожалуйста, обратитесь к системному администратору.",
@@ -65,6 +95,7 @@ OC.L10N.register(
"Scope" : "Область",
"External Storage" : "Внешнее хранилище",
"Folder name" : "Имя каталога",
+ "Authentication" : "Авторизация",
"Configuration" : "Конфигурация",
"Available for" : "Доступно для",
"Advanced settings" : "Расширенные настройки",
diff --git a/apps/files_external/l10n/ru.json b/apps/files_external/l10n/ru.json
index 1ea452f5408..50754b309ec 100644
--- a/apps/files_external/l10n/ru.json
+++ b/apps/files_external/l10n/ru.json
@@ -1,14 +1,25 @@
{ "translations": {
+ "Fetching request tokens failed. Verify that your app key and secret are correct." : "Ошибка получения токенов запроса. Проверьте корректность ключа и секрета приложения.",
+ "Fetching access tokens failed. Verify that your app key and secret are correct." : "Ошибка получения токенов доступа. Проверьте корректность ключа и секрета приложения.",
+ "Please provide a valid app key and secret." : "Пожалуйста укажите корректные ключ и секрет приложения.",
"Step 1 failed. Exception: %s" : "Шаг 1 неудачен. Исключение: %s",
"Step 2 failed. Exception: %s" : "Шаг 2 неудачен. Исключение: %s",
"External storage" : "Внешнее хранилище",
"Storage with id \"%i\" not found" : "Хранилище с идентификатором \"%i\" не найдено",
+ "Invalid backend or authentication mechanism class" : "Некорректный механизм авторизации или бэкенд",
"Invalid mount point" : "Неправильная точка входа",
+ "Objectstore forbidden" : "Хранение объектов запрещено",
"Invalid storage backend \"%s\"" : "Неверный бэкенд хранилища \"%s\"",
+ "Not permitted to use backend \"%s\"" : "Не допускается использование бэкенда \"%s\"",
+ "Not permitted to use authentication mechanism \"%s\"" : "Не допускается использование механизма авторизации \"%s\"",
+ "Unsatisfied backend parameters" : "Недопустимые настройки бэкенда",
+ "Unsatisfied authentication mechanism parameters" : "Недопустимые настройки механизма авторизации",
"Personal" : "Личное",
"System" : "Система",
"Grant access" : "Предоставить доступ",
"Access granted" : "Доступ предоставлен",
+ "Error configuring OAuth1" : "Ошибка настройки OAuth1",
+ "Error configuring OAuth2" : "Ошибка настройки OAuth2",
"Generate keys" : "Создать ключи",
"Error generating key pair" : "Ошибка создания ключевой пары",
"Enable encryption" : "Включить шифрование",
@@ -20,14 +31,26 @@
"All users. Type to select user or group." : "Все пользователи. Введите имя пользователя или группы.",
"(group)" : "(группа)",
"Saved" : "Сохранено",
+ "Access key" : "Ключ доступа",
+ "Secret key" : "Секретный ключ",
+ "Builtin" : "Встроенный",
"None" : "Отсутствует",
+ "OAuth1" : "OAuth1",
"App key" : "Ключ приложения",
"App secret" : "Секретный ключ ",
+ "OAuth2" : "OAuth2",
"Client ID" : "Идентификатор клиента",
"Client secret" : "Клиентский ключ ",
+ "OpenStack" : "OpenStack",
"Username" : "Имя пользователя",
"Password" : "Пароль",
+ "Tenant name" : "Имя арендатора",
+ "Identity endpoint URL" : "Удостоверение конечной точки URL",
+ "Rackspace" : "Rackspace",
"API key" : "Ключ API",
+ "Username and password" : "Имя пользователя и пароль",
+ "Session credentials" : "Учетные данные сессии",
+ "RSA public key" : "Открытый ключ RSA",
"Public key" : "Открытый ключ",
"Amazon S3" : "Amazon S3",
"Bucket" : "Корзина",
@@ -41,17 +64,24 @@
"Remote subfolder" : "Удаленный подкаталог",
"Secure https://" : "Безопасный https://",
"Dropbox" : "Dropbox",
+ "FTP" : "FTP",
"Host" : "Сервер",
"Secure ftps://" : "Защищённый ftps://",
+ "Google Drive" : "Google Drive",
"Local" : "Локально",
"Location" : "Местоположение",
"ownCloud" : "ownCloud",
+ "SFTP" : "SFTP",
"Root" : "Корневой каталог",
"SFTP with secret key login" : "SFTP с помощью секретного ключа",
+ "SMB / CIFS" : "SMB / CIFS",
"Share" : "Общий доступ",
+ "Domain" : "Домен",
"SMB / CIFS using OC login" : "SMB / CIFS с ипользованием логина OC",
"Username as share" : "Имя пользователя в качестве имени общего ресурса",
"OpenStack Object Storage" : "Хранилище объектов OpenStack",
+ "Service name" : "Название сервиса",
+ "Request timeout (seconds)" : "Таймаут запроса (секунды)",
"<b>Note:</b> " : "<b>Примечание:</b> ",
"<b>Note:</b> The cURL support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Примечание:</b> Поддержка cURL в PHP не включена или не установлена. Монтирование %s невозможно. Обратитесь к вашему системному администратору.",
"<b>Note:</b> The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Примечание:</b> Поддержка FTP в PHP не включена или не установлена. Монтирование %s невозможно. Пожалуйста, обратитесь к системному администратору.",
@@ -63,6 +93,7 @@
"Scope" : "Область",
"External Storage" : "Внешнее хранилище",
"Folder name" : "Имя каталога",
+ "Authentication" : "Авторизация",
"Configuration" : "Конфигурация",
"Available for" : "Доступно для",
"Advanced settings" : "Расширенные настройки",
diff --git a/apps/files_external/l10n/tr.js b/apps/files_external/l10n/tr.js
index b0fed7b5657..6eada0b32f3 100644
--- a/apps/files_external/l10n/tr.js
+++ b/apps/files_external/l10n/tr.js
@@ -1,18 +1,20 @@
OC.L10N.register(
"files_external",
{
- "Fetching request tokens failed. Verify that your app key and secret are correct." : "Getirme istek jetonları başarısız oldu. Uygulama anahtarınızın ve gizli bilginin doğruluğunu kontrol edin.",
- "Fetching access tokens failed. Verify that your app key and secret are correct." : "Getirme erişim jetonları başarısız oldu. Uygulama anahtarınızın ve gizli bilginin doğruluğunu kontrol edin.",
+ "Fetching request tokens failed. Verify that your app key and secret are correct." : "İstek jetonları getirme başarısız oldu. Uygulama anahtarınızın ve gizli bilginin doğruluğunu kontrol edin.",
+ "Fetching access tokens failed. Verify that your app key and secret are correct." : "Erişim jetonları getirme başarısız oldu. Uygulama anahtarınızın ve gizli bilginin doğruluğunu kontrol edin.",
"Please provide a valid app key and secret." : "Lütfen geçerli bir uygulama anahtarı ve gizli bilgisini girin.",
"Step 1 failed. Exception: %s" : "Adım 1 başarısız. Özel durum: %s",
"Step 2 failed. Exception: %s" : "Adım 2 başarısız. Özel durum: %s",
"External storage" : "Harici depolama",
"Storage with id \"%i\" not found" : "\"%i\" kimliği ile bir depolama bulunamadı",
- "Invalid backend or authentication mechanism class" : "Geçersiz arkauç veya kimlik doğrulama mekanizma sınıfı",
+ "Invalid backend or authentication mechanism class" : "Geçersiz arka uç veya kimlik doğrulama mekanizma sınıfı",
"Invalid mount point" : "Geçersiz bağlama noktası",
"Objectstore forbidden" : "Nesne deposu yasaktır",
"Invalid storage backend \"%s\"" : "Geçersiz depolama arka ucu \"%s\"",
- "Unsatisfied backend parameters" : "Yetersiz arkauç parametreleri",
+ "Not permitted to use backend \"%s\"" : "\"%s\" arka ucu kullanımına izin verilmiyor",
+ "Not permitted to use authentication mechanism \"%s\"" : "\"%s\" kimlik doğrulama mekanizmasına izin verilmiyor",
+ "Unsatisfied backend parameters" : "Yetersiz arka uç parametreleri",
"Unsatisfied authentication mechanism parameters" : "Yetersiz kimlik doğrulama mekanizması parametreleri",
"Personal" : "Kişisel",
"System" : "Sistem",
@@ -41,11 +43,16 @@ OC.L10N.register(
"OAuth2" : "OAuth2",
"Client ID" : "İstemci kimliği",
"Client secret" : "İstemci parolası",
+ "OpenStack" : "OpenStack",
"Username" : "Kullanıcı Adı",
"Password" : "Parola",
+ "Tenant name" : "Kiracı adı",
+ "Identity endpoint URL" : "Kimlik uç nokta URL'si",
+ "Rackspace" : "Rackspace",
"API key" : "API anahtarı",
"Username and password" : "Kullanıcı adı ve parola",
"Session credentials" : "Oturum bilgileri",
+ "RSA public key" : "RSA ortak anahtarı",
"Public key" : "Ortak anahtar",
"Amazon S3" : "Amazon S3",
"Bucket" : "Bucket",
@@ -71,9 +78,12 @@ OC.L10N.register(
"SFTP with secret key login" : "Gizli anahtar oturumu ile SFTP",
"SMB / CIFS" : "SMB / CIFS",
"Share" : "Paylaş",
+ "Domain" : "Alan adı",
"SMB / CIFS using OC login" : "OC oturumu kullanarak SMB / CIFS",
"Username as share" : "Paylaşım olarak kullanıcı adı",
"OpenStack Object Storage" : "OpenStack Nesne Depolama",
+ "Service name" : "Hizmet adı",
+ "Request timeout (seconds)" : "İstek zamanaşımı (saniye)",
"<b>Note:</b> " : "<b>Not:</b> ",
"<b>Note:</b> The cURL support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Not:</b> PHP'de cURL desteği etkin veya kurulu değil. %s bağlaması mümkün olmayacak. Lütfen kurulumu için sistem yöneticilerinizle iletişime geçin.",
"<b>Note:</b> The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Not:</b> PHP'de FTP desteği etkin veya kurulu değil. %s bağlaması mümkün olmayacak. Lütfen kurulumu için sistem yöneticilerinizle iletişime geçin.",
diff --git a/apps/files_external/l10n/tr.json b/apps/files_external/l10n/tr.json
index 2a7d69832f8..7fd764d0165 100644
--- a/apps/files_external/l10n/tr.json
+++ b/apps/files_external/l10n/tr.json
@@ -1,16 +1,18 @@
{ "translations": {
- "Fetching request tokens failed. Verify that your app key and secret are correct." : "Getirme istek jetonları başarısız oldu. Uygulama anahtarınızın ve gizli bilginin doğruluğunu kontrol edin.",
- "Fetching access tokens failed. Verify that your app key and secret are correct." : "Getirme erişim jetonları başarısız oldu. Uygulama anahtarınızın ve gizli bilginin doğruluğunu kontrol edin.",
+ "Fetching request tokens failed. Verify that your app key and secret are correct." : "İstek jetonları getirme başarısız oldu. Uygulama anahtarınızın ve gizli bilginin doğruluğunu kontrol edin.",
+ "Fetching access tokens failed. Verify that your app key and secret are correct." : "Erişim jetonları getirme başarısız oldu. Uygulama anahtarınızın ve gizli bilginin doğruluğunu kontrol edin.",
"Please provide a valid app key and secret." : "Lütfen geçerli bir uygulama anahtarı ve gizli bilgisini girin.",
"Step 1 failed. Exception: %s" : "Adım 1 başarısız. Özel durum: %s",
"Step 2 failed. Exception: %s" : "Adım 2 başarısız. Özel durum: %s",
"External storage" : "Harici depolama",
"Storage with id \"%i\" not found" : "\"%i\" kimliği ile bir depolama bulunamadı",
- "Invalid backend or authentication mechanism class" : "Geçersiz arkauç veya kimlik doğrulama mekanizma sınıfı",
+ "Invalid backend or authentication mechanism class" : "Geçersiz arka uç veya kimlik doğrulama mekanizma sınıfı",
"Invalid mount point" : "Geçersiz bağlama noktası",
"Objectstore forbidden" : "Nesne deposu yasaktır",
"Invalid storage backend \"%s\"" : "Geçersiz depolama arka ucu \"%s\"",
- "Unsatisfied backend parameters" : "Yetersiz arkauç parametreleri",
+ "Not permitted to use backend \"%s\"" : "\"%s\" arka ucu kullanımına izin verilmiyor",
+ "Not permitted to use authentication mechanism \"%s\"" : "\"%s\" kimlik doğrulama mekanizmasına izin verilmiyor",
+ "Unsatisfied backend parameters" : "Yetersiz arka uç parametreleri",
"Unsatisfied authentication mechanism parameters" : "Yetersiz kimlik doğrulama mekanizması parametreleri",
"Personal" : "Kişisel",
"System" : "Sistem",
@@ -39,11 +41,16 @@
"OAuth2" : "OAuth2",
"Client ID" : "İstemci kimliği",
"Client secret" : "İstemci parolası",
+ "OpenStack" : "OpenStack",
"Username" : "Kullanıcı Adı",
"Password" : "Parola",
+ "Tenant name" : "Kiracı adı",
+ "Identity endpoint URL" : "Kimlik uç nokta URL'si",
+ "Rackspace" : "Rackspace",
"API key" : "API anahtarı",
"Username and password" : "Kullanıcı adı ve parola",
"Session credentials" : "Oturum bilgileri",
+ "RSA public key" : "RSA ortak anahtarı",
"Public key" : "Ortak anahtar",
"Amazon S3" : "Amazon S3",
"Bucket" : "Bucket",
@@ -69,9 +76,12 @@
"SFTP with secret key login" : "Gizli anahtar oturumu ile SFTP",
"SMB / CIFS" : "SMB / CIFS",
"Share" : "Paylaş",
+ "Domain" : "Alan adı",
"SMB / CIFS using OC login" : "OC oturumu kullanarak SMB / CIFS",
"Username as share" : "Paylaşım olarak kullanıcı adı",
"OpenStack Object Storage" : "OpenStack Nesne Depolama",
+ "Service name" : "Hizmet adı",
+ "Request timeout (seconds)" : "İstek zamanaşımı (saniye)",
"<b>Note:</b> " : "<b>Not:</b> ",
"<b>Note:</b> The cURL support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Not:</b> PHP'de cURL desteği etkin veya kurulu değil. %s bağlaması mümkün olmayacak. Lütfen kurulumu için sistem yöneticilerinizle iletişime geçin.",
"<b>Note:</b> The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Not:</b> PHP'de FTP desteği etkin veya kurulu değil. %s bağlaması mümkün olmayacak. Lütfen kurulumu için sistem yöneticilerinizle iletişime geçin.",
diff --git a/apps/files_external/lib/amazons3.php b/apps/files_external/lib/amazons3.php
index 24a0346df63..00915140bab 100644
--- a/apps/files_external/lib/amazons3.php
+++ b/apps/files_external/lib/amazons3.php
@@ -7,6 +7,7 @@
* @author Christopher T. Johnson <ctjctj@gmail.com>
* @author Johan Björk <johanimon@gmail.com>
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
+ * @author Martin Mattel <martin.mattel@diemattels.at>
* @author Michael Gapczynski <GapczynskiM@gmail.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Philipp Kapfer <philipp.kapfer@gmx.at>
diff --git a/apps/files_external/lib/api.php b/apps/files_external/lib/api.php
index 015c15c41ff..af9b802e522 100644
--- a/apps/files_external/lib/api.php
+++ b/apps/files_external/lib/api.php
@@ -2,6 +2,7 @@
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/lib/auth/amazons3/accesskey.php b/apps/files_external/lib/auth/amazons3/accesskey.php
index 9e3aab374b9..d265db6279f 100644
--- a/apps/files_external/lib/auth/amazons3/accesskey.php
+++ b/apps/files_external/lib/auth/amazons3/accesskey.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/auth/authmechanism.php b/apps/files_external/lib/auth/authmechanism.php
index 2ab34ed0105..e695cbbebd5 100644
--- a/apps/files_external/lib/auth/authmechanism.php
+++ b/apps/files_external/lib/auth/authmechanism.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/auth/builtin.php b/apps/files_external/lib/auth/builtin.php
index ee28a4e8a5c..8fb4c901cbc 100644
--- a/apps/files_external/lib/auth/builtin.php
+++ b/apps/files_external/lib/auth/builtin.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/auth/nullmechanism.php b/apps/files_external/lib/auth/nullmechanism.php
index 1765fc67396..399c8301c5a 100644
--- a/apps/files_external/lib/auth/nullmechanism.php
+++ b/apps/files_external/lib/auth/nullmechanism.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/auth/oauth1/oauth1.php b/apps/files_external/lib/auth/oauth1/oauth1.php
index 3fb1b16aa6d..7bdd01d4c16 100644
--- a/apps/files_external/lib/auth/oauth1/oauth1.php
+++ b/apps/files_external/lib/auth/oauth1/oauth1.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/auth/oauth2/oauth2.php b/apps/files_external/lib/auth/oauth2/oauth2.php
index 73faa85a44e..7123f8c16e3 100644
--- a/apps/files_external/lib/auth/oauth2/oauth2.php
+++ b/apps/files_external/lib/auth/oauth2/oauth2.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/auth/openstack/openstack.php b/apps/files_external/lib/auth/openstack/openstack.php
index faf356bcf2e..757fdab9ea6 100644
--- a/apps/files_external/lib/auth/openstack/openstack.php
+++ b/apps/files_external/lib/auth/openstack/openstack.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/auth/openstack/rackspace.php b/apps/files_external/lib/auth/openstack/rackspace.php
index 9268f3aad87..395b58e6fae 100644
--- a/apps/files_external/lib/auth/openstack/rackspace.php
+++ b/apps/files_external/lib/auth/openstack/rackspace.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/auth/password/password.php b/apps/files_external/lib/auth/password/password.php
index 96ad4b496d4..d3444cb1419 100644
--- a/apps/files_external/lib/auth/password/password.php
+++ b/apps/files_external/lib/auth/password/password.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/auth/password/sessioncredentials.php b/apps/files_external/lib/auth/password/sessioncredentials.php
index 37cfd97a176..8e36ff5f1d8 100644
--- a/apps/files_external/lib/auth/password/sessioncredentials.php
+++ b/apps/files_external/lib/auth/password/sessioncredentials.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/auth/publickey/rsa.php b/apps/files_external/lib/auth/publickey/rsa.php
index f40136dda01..4e19f90c83b 100644
--- a/apps/files_external/lib/auth/publickey/rsa.php
+++ b/apps/files_external/lib/auth/publickey/rsa.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/backend/amazons3.php b/apps/files_external/lib/backend/amazons3.php
index 1cf62d7cb09..538b53637e3 100644
--- a/apps/files_external/lib/backend/amazons3.php
+++ b/apps/files_external/lib/backend/amazons3.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/backend/backend.php b/apps/files_external/lib/backend/backend.php
index 68585cf377e..9868519ed4f 100644
--- a/apps/files_external/lib/backend/backend.php
+++ b/apps/files_external/lib/backend/backend.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/backend/dav.php b/apps/files_external/lib/backend/dav.php
index c4f446548e1..abc5103c70f 100644
--- a/apps/files_external/lib/backend/dav.php
+++ b/apps/files_external/lib/backend/dav.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/backend/dropbox.php b/apps/files_external/lib/backend/dropbox.php
index 3e595cb0a9c..01b7a62edbe 100644
--- a/apps/files_external/lib/backend/dropbox.php
+++ b/apps/files_external/lib/backend/dropbox.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/backend/ftp.php b/apps/files_external/lib/backend/ftp.php
index 1caf3a8fcb8..8f3dfffc77b 100644
--- a/apps/files_external/lib/backend/ftp.php
+++ b/apps/files_external/lib/backend/ftp.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/backend/google.php b/apps/files_external/lib/backend/google.php
index bc0b52c464b..14b2815b6e5 100644
--- a/apps/files_external/lib/backend/google.php
+++ b/apps/files_external/lib/backend/google.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/backend/legacybackend.php b/apps/files_external/lib/backend/legacybackend.php
index 83a5b45940d..5ebf143f749 100644
--- a/apps/files_external/lib/backend/legacybackend.php
+++ b/apps/files_external/lib/backend/legacybackend.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/backend/local.php b/apps/files_external/lib/backend/local.php
index a80b437fab7..7827055eeac 100644
--- a/apps/files_external/lib/backend/local.php
+++ b/apps/files_external/lib/backend/local.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/backend/owncloud.php b/apps/files_external/lib/backend/owncloud.php
index d06625de241..d10f0b3bd0b 100644
--- a/apps/files_external/lib/backend/owncloud.php
+++ b/apps/files_external/lib/backend/owncloud.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/backend/sftp.php b/apps/files_external/lib/backend/sftp.php
index c0bcd27c54b..d3fcd41d520 100644
--- a/apps/files_external/lib/backend/sftp.php
+++ b/apps/files_external/lib/backend/sftp.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/backend/sftp_key.php b/apps/files_external/lib/backend/sftp_key.php
index 13f45f1140c..8db5761c1b2 100644
--- a/apps/files_external/lib/backend/sftp_key.php
+++ b/apps/files_external/lib/backend/sftp_key.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/backend/smb.php b/apps/files_external/lib/backend/smb.php
index 7865b44d689..aa91cf51e85 100644
--- a/apps/files_external/lib/backend/smb.php
+++ b/apps/files_external/lib/backend/smb.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/backend/smb_oc.php b/apps/files_external/lib/backend/smb_oc.php
index 9fc17400884..b84b0b9dcb1 100644
--- a/apps/files_external/lib/backend/smb_oc.php
+++ b/apps/files_external/lib/backend/smb_oc.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/backend/swift.php b/apps/files_external/lib/backend/swift.php
index 2e14855206c..8c64c791ad8 100644
--- a/apps/files_external/lib/backend/swift.php
+++ b/apps/files_external/lib/backend/swift.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/config.php b/apps/files_external/lib/config.php
index 457fd58f0f8..d9fdb748fcd 100644
--- a/apps/files_external/lib/config.php
+++ b/apps/files_external/lib/config.php
@@ -1,10 +1,10 @@
<?php
/**
+ * @author Andreas Fischer <bantu@owncloud.com>
* @author Bart Visscher <bartv@thisnet.nl>
* @author Björn Schießle <schiessle@owncloud.com>
* @author Frank Karlitschek <frank@owncloud.org>
* @author Joas Schilling <nickvergessen@owncloud.com>
- * @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Michael Gapczynski <GapczynskiM@gmail.com>
* @author Morris Jobke <hey@morrisjobke.de>
diff --git a/apps/files_external/lib/config/configadapter.php b/apps/files_external/lib/config/configadapter.php
index fb36e011655..3a04512e8a8 100644
--- a/apps/files_external/lib/config/configadapter.php
+++ b/apps/files_external/lib/config/configadapter.php
@@ -2,7 +2,7 @@
/**
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/dependencytrait.php b/apps/files_external/lib/dependencytrait.php
index f0d6d6080e5..f112f6c2e66 100644
--- a/apps/files_external/lib/dependencytrait.php
+++ b/apps/files_external/lib/dependencytrait.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/failedstorage.php b/apps/files_external/lib/failedstorage.php
index 22ee5326491..c3181fd6b02 100644
--- a/apps/files_external/lib/failedstorage.php
+++ b/apps/files_external/lib/failedstorage.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/frontenddefinitiontrait.php b/apps/files_external/lib/frontenddefinitiontrait.php
index a5fb1a3f62f..d3b78aa56d4 100644
--- a/apps/files_external/lib/frontenddefinitiontrait.php
+++ b/apps/files_external/lib/frontenddefinitiontrait.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/google.php b/apps/files_external/lib/google.php
index 94f954178c0..eba2ee7f9b5 100644
--- a/apps/files_external/lib/google.php
+++ b/apps/files_external/lib/google.php
@@ -10,6 +10,7 @@
* @author Morris Jobke <hey@morrisjobke.de>
* @author Philipp Kapfer <philipp.kapfer@gmx.at>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Vincent Petry <pvince81@owncloud.com>
*
diff --git a/apps/files_external/lib/identifiertrait.php b/apps/files_external/lib/identifiertrait.php
index 7f36144e474..913e1899db8 100644
--- a/apps/files_external/lib/identifiertrait.php
+++ b/apps/files_external/lib/identifiertrait.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/insufficientdataformeaningfulanswerexception.php b/apps/files_external/lib/insufficientdataformeaningfulanswerexception.php
index dd4cd75df12..f77667cb70a 100644
--- a/apps/files_external/lib/insufficientdataformeaningfulanswerexception.php
+++ b/apps/files_external/lib/insufficientdataformeaningfulanswerexception.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/legacydependencycheckpolyfill.php b/apps/files_external/lib/legacydependencycheckpolyfill.php
index 7bb137fb3e1..bd0095debcd 100644
--- a/apps/files_external/lib/legacydependencycheckpolyfill.php
+++ b/apps/files_external/lib/legacydependencycheckpolyfill.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/personalmount.php b/apps/files_external/lib/personalmount.php
index d177f1a1ad0..26f68ba32db 100644
--- a/apps/files_external/lib/personalmount.php
+++ b/apps/files_external/lib/personalmount.php
@@ -2,6 +2,7 @@
/**
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/sessionstoragewrapper.php b/apps/files_external/lib/sessionstoragewrapper.php
index f8f5aba53a2..e45589c4472 100644
--- a/apps/files_external/lib/sessionstoragewrapper.php
+++ b/apps/files_external/lib/sessionstoragewrapper.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/sftp.php b/apps/files_external/lib/sftp.php
index 921e7283c66..5dcc7686ca3 100644
--- a/apps/files_external/lib/sftp.php
+++ b/apps/files_external/lib/sftp.php
@@ -7,6 +7,7 @@
* @author Lennart Rosam <lennart.rosam@medien-systempartner.de>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin Appelman <icewind@owncloud.com>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Ross Nicoll <jrn@jrn.me.uk>
* @author SA <stephen@mthosting.net>
diff --git a/apps/files_external/lib/storageconfig.php b/apps/files_external/lib/storageconfig.php
index aeb8f527078..70aaa186783 100644
--- a/apps/files_external/lib/storageconfig.php
+++ b/apps/files_external/lib/storageconfig.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/lib/storagemodifiertrait.php b/apps/files_external/lib/storagemodifiertrait.php
index 3af0bb234d9..6d31ce8999a 100644
--- a/apps/files_external/lib/storagemodifiertrait.php
+++ b/apps/files_external/lib/storagemodifiertrait.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/lib/swift.php b/apps/files_external/lib/swift.php
index 20d2b8f4988..b9454b8d671 100644
--- a/apps/files_external/lib/swift.php
+++ b/apps/files_external/lib/swift.php
@@ -5,6 +5,7 @@
* @author Christian Berendt <berendt@b1-systems.de>
* @author Felix Moeller <mail@felixmoeller.de>
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
+ * @author Martin Mattel <martin.mattel@diemattels.at>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Philipp Kapfer <philipp.kapfer@gmx.at>
* @author Robin Appelman <icewind@owncloud.com>
diff --git a/apps/files_external/personal.php b/apps/files_external/personal.php
index f048d65540b..df15c3bd258 100644
--- a/apps/files_external/personal.php
+++ b/apps/files_external/personal.php
@@ -5,6 +5,7 @@
* @author Michael Gapczynski <GapczynskiM@gmail.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/service/globalstoragesservice.php b/apps/files_external/service/globalstoragesservice.php
index 49ffea43d1b..ec9b8e782fa 100644
--- a/apps/files_external/service/globalstoragesservice.php
+++ b/apps/files_external/service/globalstoragesservice.php
@@ -1,7 +1,7 @@
<?php
/**
* @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/service/storagesservice.php b/apps/files_external/service/storagesservice.php
index 83a82de0bed..41bb0ca9b80 100644
--- a/apps/files_external/service/storagesservice.php
+++ b/apps/files_external/service/storagesservice.php
@@ -1,7 +1,7 @@
<?php
/**
* @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
@@ -550,6 +550,21 @@ abstract class StoragesService {
$this->writeConfig($allStorages);
$this->triggerHooks($deletedStorage, Filesystem::signal_delete_mount);
+
+ // delete oc_storages entries and oc_filecache
+ try {
+ $rustyStorageId = $this->getRustyStorageIdFromConfig($deletedStorage);
+ \OC\Files\Cache\Storage::remove($rustyStorageId);
+ } catch (\Exception $e) {
+ // can happen either for invalid configs where the storage could not
+ // be instantiated or whenever $user vars where used, in which case
+ // the storage id could not be computed
+ \OCP\Util::writeLog(
+ 'files_external',
+ 'Exception: "' . $e->getMessage() . '"',
+ \OCP\Util::ERROR
+ );
+ }
}
/**
@@ -570,4 +585,30 @@ abstract class StoragesService {
return (max(array_keys($allStorages)) + 1);
}
+ /**
+ * Returns the rusty storage id from oc_storages from the given storage config.
+ *
+ * @param StorageConfig $storageConfig
+ * @return string rusty storage id
+ */
+ private function getRustyStorageIdFromConfig(StorageConfig $storageConfig) {
+ // if any of the storage options contains $user, it is not possible
+ // to compute the possible storage id as we don't know which users
+ // mounted it already (and we certainly don't want to iterate over ALL users)
+ foreach ($storageConfig->getBackendOptions() as $value) {
+ if (strpos($value, '$user') !== false) {
+ throw new \Exception('Cannot compute storage id for deletion due to $user vars in the configuration');
+ }
+ }
+
+ // note: similar to ConfigAdapter->prepateStorageConfig()
+ $storageConfig->getAuthMechanism()->manipulateStorageConfig($storageConfig);
+ $storageConfig->getBackend()->manipulateStorageConfig($storageConfig);
+
+ $class = $storageConfig->getBackend()->getStorageClass();
+ $storageImpl = new $class($storageConfig->getBackendOptions());
+
+ return $storageImpl->getId();
+ }
+
}
diff --git a/apps/files_external/service/userglobalstoragesservice.php b/apps/files_external/service/userglobalstoragesservice.php
index 7c60bc6d497..afe77e1e059 100644
--- a/apps/files_external/service/userglobalstoragesservice.php
+++ b/apps/files_external/service/userglobalstoragesservice.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/service/userstoragesservice.php b/apps/files_external/service/userstoragesservice.php
index 6e3c327c09c..a8cdf60ad9c 100644
--- a/apps/files_external/service/userstoragesservice.php
+++ b/apps/files_external/service/userstoragesservice.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/service/usertrait.php b/apps/files_external/service/usertrait.php
index 4f84543565c..924f358f939 100644
--- a/apps/files_external/service/usertrait.php
+++ b/apps/files_external/service/usertrait.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/settings.php b/apps/files_external/settings.php
index f82ab035c1c..03ed363bdb2 100644
--- a/apps/files_external/settings.php
+++ b/apps/files_external/settings.php
@@ -7,7 +7,7 @@
* @author Michael Gapczynski <GapczynskiM@gmail.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
- * @author Vincent Petry <pvince81@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/tests/auth/authmechanismtest.php b/apps/files_external/tests/auth/authmechanismtest.php
index b09d65a02df..6933cc988b1 100644
--- a/apps/files_external/tests/auth/authmechanismtest.php
+++ b/apps/files_external/tests/auth/authmechanismtest.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/tests/backend/backendtest.php b/apps/files_external/tests/backend/backendtest.php
index 4956a923e94..9e0e27c824b 100644
--- a/apps/files_external/tests/backend/backendtest.php
+++ b/apps/files_external/tests/backend/backendtest.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/tests/backend/legacybackendtest.php b/apps/files_external/tests/backend/legacybackendtest.php
index d57810de29b..6c977522e9e 100644
--- a/apps/files_external/tests/backend/legacybackendtest.php
+++ b/apps/files_external/tests/backend/legacybackendtest.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/tests/backends/amazons3.php b/apps/files_external/tests/backends/amazons3.php
index 7e88f3d0b74..c16581a4495 100644
--- a/apps/files_external/tests/backends/amazons3.php
+++ b/apps/files_external/tests/backends/amazons3.php
@@ -1,10 +1,10 @@
<?php
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
- * @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Michael Gapczynski <GapczynskiM@gmail.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/tests/backends/sftp_key.php b/apps/files_external/tests/backends/sftp_key.php
index c83d12251aa..6e8ac9f7239 100644
--- a/apps/files_external/tests/backends/sftp_key.php
+++ b/apps/files_external/tests/backends/sftp_key.php
@@ -2,6 +2,7 @@
/**
* @author Morris Jobke <hey@morrisjobke.de>
* @author Ross Nicoll <jrn@jrn.me.uk>
+ * @author Viktor Szépe <viktor@szepe.net>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/tests/controller/globalstoragescontrollertest.php b/apps/files_external/tests/controller/globalstoragescontrollertest.php
index 6b020198bd8..37b5fed1481 100644
--- a/apps/files_external/tests/controller/globalstoragescontrollertest.php
+++ b/apps/files_external/tests/controller/globalstoragescontrollertest.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/tests/controller/storagescontrollertest.php b/apps/files_external/tests/controller/storagescontrollertest.php
index 5e1deb821f4..8a7acf81009 100644
--- a/apps/files_external/tests/controller/storagescontrollertest.php
+++ b/apps/files_external/tests/controller/storagescontrollertest.php
@@ -1,7 +1,7 @@
<?php
/**
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
- * @author Robin McCorkell <rmccorkell@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/tests/controller/userstoragescontrollertest.php b/apps/files_external/tests/controller/userstoragescontrollertest.php
index 33ef274c87c..acb25d11d09 100644
--- a/apps/files_external/tests/controller/userstoragescontrollertest.php
+++ b/apps/files_external/tests/controller/userstoragescontrollertest.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/tests/definitionparameterttest.php b/apps/files_external/tests/definitionparameterttest.php
index 22e0b842254..3983a805dad 100644
--- a/apps/files_external/tests/definitionparameterttest.php
+++ b/apps/files_external/tests/definitionparameterttest.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/tests/frontenddefinitiontraittest.php b/apps/files_external/tests/frontenddefinitiontraittest.php
index d92d02b9854..d446813fe92 100644
--- a/apps/files_external/tests/frontenddefinitiontraittest.php
+++ b/apps/files_external/tests/frontenddefinitiontraittest.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/tests/legacydependencycheckpolyfilltest.php b/apps/files_external/tests/legacydependencycheckpolyfilltest.php
index 49d825d77aa..41109b63c1e 100644
--- a/apps/files_external/tests/legacydependencycheckpolyfilltest.php
+++ b/apps/files_external/tests/legacydependencycheckpolyfilltest.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/tests/service/backendservicetest.php b/apps/files_external/tests/service/backendservicetest.php
index 414a9eee2ec..5097b479a5f 100644
--- a/apps/files_external/tests/service/backendservicetest.php
+++ b/apps/files_external/tests/service/backendservicetest.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/tests/service/globalstoragesservicetest.php b/apps/files_external/tests/service/globalstoragesservicetest.php
index 94c34c221fc..c129365913f 100644
--- a/apps/files_external/tests/service/globalstoragesservicetest.php
+++ b/apps/files_external/tests/service/globalstoragesservicetest.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/tests/service/storagesservicetest.php b/apps/files_external/tests/service/storagesservicetest.php
index ddf52e6272e..7487ba459af 100644
--- a/apps/files_external/tests/service/storagesservicetest.php
+++ b/apps/files_external/tests/service/storagesservicetest.php
@@ -1,7 +1,7 @@
<?php
/**
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
- * @author Robin McCorkell <rmccorkell@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
@@ -216,18 +216,57 @@ abstract class StoragesServiceTest extends \Test\TestCase {
$this->service->updateStorage($storage);
}
- public function testDeleteStorage() {
+ public function deleteStorageDataProvider() {
+ return [
+ // regular case, can properly delete the oc_storages entry
+ [
+ [
+ 'share' => 'share',
+ 'host' => 'example.com',
+ 'user' => 'test',
+ 'password' => 'testPassword',
+ 'root' => 'someroot',
+ ],
+ 'smb::test@example.com//share//someroot/',
+ 0
+ ],
+ // special case with $user vars, cannot auto-remove the oc_storages entry
+ [
+ [
+ 'share' => 'share',
+ 'host' => 'example.com',
+ 'user' => '$user',
+ 'password' => 'testPassword',
+ 'root' => 'someroot',
+ ],
+ 'smb::someone@example.com//share//someroot/',
+ 1
+ ],
+ ];
+ }
+
+ /**
+ * @dataProvider deleteStorageDataProvider
+ */
+ public function testDeleteStorage($backendOptions, $rustyStorageId, $expectedCountAfterDeletion) {
$backend = $this->backendService->getBackend('identifier:\OCA\Files_External\Lib\Backend\SMB');
$authMechanism = $this->backendService->getAuthMechanism('identifier:\Auth\Mechanism');
$storage = new StorageConfig(255);
$storage->setMountPoint('mountpoint');
$storage->setBackend($backend);
$storage->setAuthMechanism($authMechanism);
- $storage->setBackendOptions(['password' => 'testPassword']);
+ $storage->setBackendOptions($backendOptions);
$newStorage = $this->service->addStorage($storage);
$this->assertEquals(1, $newStorage->getId());
+ // manually trigger storage entry because normally it happens on first
+ // access, which isn't possible within this test
+ $storageCache = new \OC\Files\Cache\Storage($rustyStorageId);
+
+ // get numeric id for later check
+ $numericId = $storageCache->getNumericId();
+
$newStorage = $this->service->removeStorage(1);
$caught = false;
@@ -238,6 +277,13 @@ abstract class StoragesServiceTest extends \Test\TestCase {
}
$this->assertTrue($caught);
+
+ // storage id was removed from oc_storages
+ $qb = \OC::$server->getDatabaseConnection()->getQueryBuilder();
+ $storageCheckQuery = $qb->select('*')
+ ->from('storages')
+ ->where($qb->expr()->eq('numeric_id', $qb->expr()->literal($numericId)));
+ $this->assertCount($expectedCountAfterDeletion, $storageCheckQuery->execute()->fetchAll());
}
/**
diff --git a/apps/files_external/tests/service/userglobalstoragesservicetest.php b/apps/files_external/tests/service/userglobalstoragesservicetest.php
index b6dc952605d..7c2516f0477 100644
--- a/apps/files_external/tests/service/userglobalstoragesservicetest.php
+++ b/apps/files_external/tests/service/userglobalstoragesservicetest.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Robin McCorkell <rmccorkell@owncloud.com>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/tests/service/userstoragesservicetest.php b/apps/files_external/tests/service/userstoragesservicetest.php
index 8bbfbe5a050..78f9231c3d1 100644
--- a/apps/files_external/tests/service/userstoragesservicetest.php
+++ b/apps/files_external/tests/service/userstoragesservicetest.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
@@ -137,8 +138,11 @@ class UserStoragesServiceTest extends StoragesServiceTest {
$this->assertEmpty(self::$hookCalls);
}
- public function testDeleteStorage() {
- parent::testDeleteStorage();
+ /**
+ * @dataProvider deleteStorageDataProvider
+ */
+ public function testDeleteStorage($backendOptions, $rustyStorageId, $expectedCountAfterDeletion) {
+ parent::testDeleteStorage($backendOptions, $rustyStorageId, $expectedCountAfterDeletion);
// hook called once for user (first one was during test creation)
$this->assertHookCall(
diff --git a/apps/files_external/tests/storageconfigtest.php b/apps/files_external/tests/storageconfigtest.php
index dba5105d7db..c987f7a84e2 100644
--- a/apps/files_external/tests/storageconfigtest.php
+++ b/apps/files_external/tests/storageconfigtest.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/ajax/external.php b/apps/files_sharing/ajax/external.php
index 66cfd8e9d1a..c80f0e0b288 100644
--- a/apps/files_sharing/ajax/external.php
+++ b/apps/files_sharing/ajax/external.php
@@ -1,9 +1,11 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/ajax/list.php b/apps/files_sharing/ajax/list.php
index 9185e508e67..9819048b881 100644
--- a/apps/files_sharing/ajax/list.php
+++ b/apps/files_sharing/ajax/list.php
@@ -3,6 +3,7 @@
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Vincent Petry <pvince81@owncloud.com>
*
diff --git a/apps/files_sharing/ajax/publicpreview.php b/apps/files_sharing/ajax/publicpreview.php
index 69894bb8da5..62157e0ac0e 100644
--- a/apps/files_sharing/ajax/publicpreview.php
+++ b/apps/files_sharing/ajax/publicpreview.php
@@ -4,6 +4,7 @@
* @author Georg Ehrke <georg@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/api/local.php b/apps/files_sharing/api/local.php
index 61b8b47d2d3..42e77570f95 100644
--- a/apps/files_sharing/api/local.php
+++ b/apps/files_sharing/api/local.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Roeland Jago Douma <roeland@famdouma.nl>
diff --git a/apps/files_sharing/api/remote.php b/apps/files_sharing/api/remote.php
index 76f9babcd19..d67920c3521 100644
--- a/apps/files_sharing/api/remote.php
+++ b/apps/files_sharing/api/remote.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_sharing/api/server2server.php b/apps/files_sharing/api/server2server.php
index 7d8860ad6ff..a74b329aed5 100644
--- a/apps/files_sharing/api/server2server.php
+++ b/apps/files_sharing/api/server2server.php
@@ -1,6 +1,8 @@
<?php
/**
+ * @author Arthur Schiwon <blizzz@owncloud.com>
* @author Björn Schießle <schiessle@owncloud.com>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/api/sharees.php b/apps/files_sharing/api/sharees.php
index 734c267020f..b34aef72163 100644
--- a/apps/files_sharing/api/sharees.php
+++ b/apps/files_sharing/api/sharees.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Roeland Jago Douma <roeland@famdouma.nl>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/appinfo/app.php b/apps/files_sharing/appinfo/app.php
index 793a1789a0f..03e448be0af 100644
--- a/apps/files_sharing/appinfo/app.php
+++ b/apps/files_sharing/appinfo/app.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Arthur Schiwon <blizzz@owncloud.com>
* @author Björn Schießle <schiessle@owncloud.com>
* @author Gadzy <dev@gadzy.fr>
* @author Joas Schilling <nickvergessen@owncloud.com>
diff --git a/apps/files_sharing/appinfo/application.php b/apps/files_sharing/appinfo/application.php
index 872229fa743..9dc0e0618b5 100644
--- a/apps/files_sharing/appinfo/application.php
+++ b/apps/files_sharing/appinfo/application.php
@@ -1,6 +1,7 @@
<?php
/**
- * @author Morris Jobke <hey@morrisjobke.de>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
+ * @author Lukas Reschke <lukas@owncloud.com>
* @author Robin Appelman <icewind@owncloud.com>
* @author Roeland Jago Douma <roeland@famdouma.nl>
*
@@ -26,6 +27,7 @@ namespace OCA\Files_Sharing\AppInfo;
use OCA\Files_Sharing\Helper;
use OCA\Files_Sharing\MountProvider;
use OCA\Files_Sharing\Propagation\PropagationManager;
+use OCA\Files_Sharing\Propagation\GroupPropagationManager;
use OCP\AppFramework\App;
use OC\AppFramework\Utility\SimpleContainer;
use OCA\Files_Sharing\Controllers\ExternalSharesController;
@@ -138,6 +140,16 @@ class Application extends App {
);
});
+ $container->registerService('GroupPropagationManager', function (IContainer $c) {
+ /** @var \OCP\IServerContainer $server */
+ $server = $c->query('ServerContainer');
+ return new GroupPropagationManager(
+ $server->getUserSession(),
+ $server->getGroupManager(),
+ $c->query('PropagationManager')
+ );
+ });
+
/*
* Register capabilities
*/
@@ -155,5 +167,7 @@ class Application extends App {
public function setupPropagation() {
$propagationManager = $this->getContainer()->query('PropagationManager');
\OCP\Util::connectHook('OC_Filesystem', 'setup', $propagationManager, 'globalSetup');
+
+ $this->getContainer()->query('GroupPropagationManager')->globalSetup();
}
}
diff --git a/apps/files_sharing/appinfo/routes.php b/apps/files_sharing/appinfo/routes.php
index 3794df37992..a466c4fc6cc 100644
--- a/apps/files_sharing/appinfo/routes.php
+++ b/apps/files_sharing/appinfo/routes.php
@@ -4,7 +4,6 @@
* @author Georg Ehrke <georg@owncloud.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Thomas Müller <thomas.mueller@tmit.eu>
diff --git a/apps/files_sharing/appinfo/update.php b/apps/files_sharing/appinfo/update.php
index 66b8b78cacf..0eb3224c1ca 100644
--- a/apps/files_sharing/appinfo/update.php
+++ b/apps/files_sharing/appinfo/update.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_sharing/l10n/es.js b/apps/files_sharing/l10n/es.js
index 037855d6d99..650fb5c524a 100644
--- a/apps/files_sharing/l10n/es.js
+++ b/apps/files_sharing/l10n/es.js
@@ -28,7 +28,7 @@ OC.L10N.register(
"Sharing" : "Compartiendo",
"A file or folder has been <strong>shared</strong>" : "Se ha <strong>compartido</strong> un archivo o carpeta",
"A file or folder was shared from <strong>another server</strong>" : "Se ha compartido un archivo o carpeta desde <strong>otro servidor</strong>",
- "A public shared file or folder was <strong>downloaded</strong>" : "Ha sido <strong>descargado</strong> un archivo (o carpeta) compartido públicamente",
+ "A public shared file or folder was <strong>downloaded</strong>" : "Se ha <strong>descargado</strong> un archivo o carpeta compartido públicamente",
"You received a new remote share %2$s from %1$s" : "Recibió un nuevo recurso compartido remoto %2$s de %1$s",
"You received a new remote share from %s" : "Ha recibido un nuevo recurso compartido remoto de %s",
"%1$s accepted remote share %2$s" : "%1$s aceptó el recurso compartido remoto %2$s",
@@ -38,8 +38,19 @@ OC.L10N.register(
"Public shared file %1$s was downloaded" : "Se descargó el archivo público compartido %1$s",
"You shared %1$s with %2$s" : "Usted compartió %1$s con %2$s",
"You shared %1$s with group %2$s" : "Usted ha compartido %1$s con el grupo %2$s",
+ "%2$s shared %1$s with %3$s" : "%2$s compartó %1$s con %3$s",
+ "%2$s shared %1$s with group %3$s" : "%2$s compartió %1$s con el grupo %3$s",
+ "%2$s shared %1$s via link" : "%2$s compartió %1$s vía enlace",
"%2$s shared %1$s with you" : "%2$s ha compartido %1$s con usted",
"You shared %1$s via link" : "Ha compartido %1$s vía enlace",
+ "Downloaded via public link" : "Descargado vía enlace público",
+ "Shared with %2$s" : "Compartido con %2$s",
+ "Shared with group %2$s" : "Compartido con el grupo %2$s",
+ "Shared with %3$s by %2$s" : "Compartido con %3$s por %2$s",
+ "Shared with group %3$s by %2$s" : "Compartido con el grupo %3$s por %2$s",
+ "Shared via link by %2$s" : "Compartido vía enlace por %2$s",
+ "Shared by %2$s" : "Compartido por %2$s",
+ "Shared via public link" : "Compartido vía enlace público",
"Shares" : "Compartidos",
"Accept" : "Aceptar",
"Decline" : "Denegar",
diff --git a/apps/files_sharing/l10n/es.json b/apps/files_sharing/l10n/es.json
index c0da82abdd6..6f963ab8fee 100644
--- a/apps/files_sharing/l10n/es.json
+++ b/apps/files_sharing/l10n/es.json
@@ -26,7 +26,7 @@
"Sharing" : "Compartiendo",
"A file or folder has been <strong>shared</strong>" : "Se ha <strong>compartido</strong> un archivo o carpeta",
"A file or folder was shared from <strong>another server</strong>" : "Se ha compartido un archivo o carpeta desde <strong>otro servidor</strong>",
- "A public shared file or folder was <strong>downloaded</strong>" : "Ha sido <strong>descargado</strong> un archivo (o carpeta) compartido públicamente",
+ "A public shared file or folder was <strong>downloaded</strong>" : "Se ha <strong>descargado</strong> un archivo o carpeta compartido públicamente",
"You received a new remote share %2$s from %1$s" : "Recibió un nuevo recurso compartido remoto %2$s de %1$s",
"You received a new remote share from %s" : "Ha recibido un nuevo recurso compartido remoto de %s",
"%1$s accepted remote share %2$s" : "%1$s aceptó el recurso compartido remoto %2$s",
@@ -36,8 +36,19 @@
"Public shared file %1$s was downloaded" : "Se descargó el archivo público compartido %1$s",
"You shared %1$s with %2$s" : "Usted compartió %1$s con %2$s",
"You shared %1$s with group %2$s" : "Usted ha compartido %1$s con el grupo %2$s",
+ "%2$s shared %1$s with %3$s" : "%2$s compartó %1$s con %3$s",
+ "%2$s shared %1$s with group %3$s" : "%2$s compartió %1$s con el grupo %3$s",
+ "%2$s shared %1$s via link" : "%2$s compartió %1$s vía enlace",
"%2$s shared %1$s with you" : "%2$s ha compartido %1$s con usted",
"You shared %1$s via link" : "Ha compartido %1$s vía enlace",
+ "Downloaded via public link" : "Descargado vía enlace público",
+ "Shared with %2$s" : "Compartido con %2$s",
+ "Shared with group %2$s" : "Compartido con el grupo %2$s",
+ "Shared with %3$s by %2$s" : "Compartido con %3$s por %2$s",
+ "Shared with group %3$s by %2$s" : "Compartido con el grupo %3$s por %2$s",
+ "Shared via link by %2$s" : "Compartido vía enlace por %2$s",
+ "Shared by %2$s" : "Compartido por %2$s",
+ "Shared via public link" : "Compartido vía enlace público",
"Shares" : "Compartidos",
"Accept" : "Aceptar",
"Decline" : "Denegar",
diff --git a/apps/files_sharing/l10n/hu_HU.js b/apps/files_sharing/l10n/hu_HU.js
index 7b85e236b44..c0d2d01b2c4 100644
--- a/apps/files_sharing/l10n/hu_HU.js
+++ b/apps/files_sharing/l10n/hu_HU.js
@@ -43,6 +43,14 @@ OC.L10N.register(
"%2$s shared %1$s via link" : "%2$s megosztotta ezt: %1$s, hivatkozással",
"%2$s shared %1$s with you" : "%2$s megosztotta velem ezt: %1$s",
"You shared %1$s via link" : "Megosztottam link segítségével: %1$s",
+ "Downloaded via public link" : "Letöltve publikus hivatkozással",
+ "Shared with %2$s" : "Megosztva vele: %2$s",
+ "Shared with group %2$s" : "Megosztva ezzel a csoporttal: %2$s",
+ "Shared with %3$s by %2$s" : "Megosztva vele: %3$s, megosztó: %2$s",
+ "Shared with group %3$s by %2$s" : "Megosztva ezzel a csoporttal: %3$s, megosztó: %2$s",
+ "Shared via link by %2$s" : "Megosztva hivatkozással: %2$s",
+ "Shared by %2$s" : "Megosztó: %2$s",
+ "Shared via public link" : "Megosztva publikus hivatkozással",
"Shares" : "Megosztások",
"You received %2$s as a remote share from %1$s" : "Kaptál egy távoli megosztást: %2$s, innen: %1$s",
"Accept" : "Elfogadás",
diff --git a/apps/files_sharing/l10n/hu_HU.json b/apps/files_sharing/l10n/hu_HU.json
index c749a5add97..a2e15c46c52 100644
--- a/apps/files_sharing/l10n/hu_HU.json
+++ b/apps/files_sharing/l10n/hu_HU.json
@@ -41,6 +41,14 @@
"%2$s shared %1$s via link" : "%2$s megosztotta ezt: %1$s, hivatkozással",
"%2$s shared %1$s with you" : "%2$s megosztotta velem ezt: %1$s",
"You shared %1$s via link" : "Megosztottam link segítségével: %1$s",
+ "Downloaded via public link" : "Letöltve publikus hivatkozással",
+ "Shared with %2$s" : "Megosztva vele: %2$s",
+ "Shared with group %2$s" : "Megosztva ezzel a csoporttal: %2$s",
+ "Shared with %3$s by %2$s" : "Megosztva vele: %3$s, megosztó: %2$s",
+ "Shared with group %3$s by %2$s" : "Megosztva ezzel a csoporttal: %3$s, megosztó: %2$s",
+ "Shared via link by %2$s" : "Megosztva hivatkozással: %2$s",
+ "Shared by %2$s" : "Megosztó: %2$s",
+ "Shared via public link" : "Megosztva publikus hivatkozással",
"Shares" : "Megosztások",
"You received %2$s as a remote share from %1$s" : "Kaptál egy távoli megosztást: %2$s, innen: %1$s",
"Accept" : "Elfogadás",
diff --git a/apps/files_sharing/l10n/id.js b/apps/files_sharing/l10n/id.js
index 4486cd80545..bfded66f7c6 100644
--- a/apps/files_sharing/l10n/id.js
+++ b/apps/files_sharing/l10n/id.js
@@ -43,6 +43,14 @@ OC.L10N.register(
"%2$s shared %1$s via link" : "%2$s berbagi %1$s via tautan",
"%2$s shared %1$s with you" : "%2$s membagikan %1$s dengan Anda",
"You shared %1$s via link" : "Anda membagikan %1$s via tautan",
+ "Downloaded via public link" : "Diunduh via tautan publik",
+ "Shared with %2$s" : "Dibagikan kepada %2$s",
+ "Shared with group %2$s" : "Dibagikan kepada grup %2$s",
+ "Shared with %3$s by %2$s" : "Dibagikan kepada %3$s oleh %2$s",
+ "Shared with group %3$s by %2$s" : "Dibagikan kepada grup %3$s oleh %2$s",
+ "Shared via link by %2$s" : "Dibagikan via tautan oleh %2$s",
+ "Shared by %2$s" : "Dibagikan oleh %2$s",
+ "Shared via public link" : "Dibagikan via tautan publik",
"Shares" : "Dibagikan",
"You received %2$s as a remote share from %1$s" : "Anda menerima %2$s sebagai berbagi remote dari %1$s",
"Accept" : "Terima",
diff --git a/apps/files_sharing/l10n/id.json b/apps/files_sharing/l10n/id.json
index f9805231bcd..b6e9297bcc9 100644
--- a/apps/files_sharing/l10n/id.json
+++ b/apps/files_sharing/l10n/id.json
@@ -41,6 +41,14 @@
"%2$s shared %1$s via link" : "%2$s berbagi %1$s via tautan",
"%2$s shared %1$s with you" : "%2$s membagikan %1$s dengan Anda",
"You shared %1$s via link" : "Anda membagikan %1$s via tautan",
+ "Downloaded via public link" : "Diunduh via tautan publik",
+ "Shared with %2$s" : "Dibagikan kepada %2$s",
+ "Shared with group %2$s" : "Dibagikan kepada grup %2$s",
+ "Shared with %3$s by %2$s" : "Dibagikan kepada %3$s oleh %2$s",
+ "Shared with group %3$s by %2$s" : "Dibagikan kepada grup %3$s oleh %2$s",
+ "Shared via link by %2$s" : "Dibagikan via tautan oleh %2$s",
+ "Shared by %2$s" : "Dibagikan oleh %2$s",
+ "Shared via public link" : "Dibagikan via tautan publik",
"Shares" : "Dibagikan",
"You received %2$s as a remote share from %1$s" : "Anda menerima %2$s sebagai berbagi remote dari %1$s",
"Accept" : "Terima",
diff --git a/apps/files_sharing/l10n/nds.js b/apps/files_sharing/l10n/nds.js
new file mode 100644
index 00000000000..e263ab143a8
--- /dev/null
+++ b/apps/files_sharing/l10n/nds.js
@@ -0,0 +1,8 @@
+OC.L10N.register(
+ "files_sharing",
+ {
+ "Cancel" : "Abbrechen",
+ "Password" : "Passwort",
+ "Name" : "Name"
+},
+"nplurals=2; plural=(n != 1);");
diff --git a/apps/files_sharing/l10n/nds.json b/apps/files_sharing/l10n/nds.json
new file mode 100644
index 00000000000..15e6870cb0e
--- /dev/null
+++ b/apps/files_sharing/l10n/nds.json
@@ -0,0 +1,6 @@
+{ "translations": {
+ "Cancel" : "Abbrechen",
+ "Password" : "Passwort",
+ "Name" : "Name"
+},"pluralForm" :"nplurals=2; plural=(n != 1);"
+} \ No newline at end of file
diff --git a/apps/files_sharing/l10n/ru.js b/apps/files_sharing/l10n/ru.js
index 2d89b5e3102..1a84d10ecea 100644
--- a/apps/files_sharing/l10n/ru.js
+++ b/apps/files_sharing/l10n/ru.js
@@ -38,10 +38,23 @@ OC.L10N.register(
"Public shared file %1$s was downloaded" : "Общий файл %1$s, был скачан",
"You shared %1$s with %2$s" : "Вы поделились %1$s с %2$s",
"You shared %1$s with group %2$s" : "Вы поделились %1$s с группой %2$s",
+ "%2$s shared %1$s with %3$s" : "%2$s поделился %1$s с %3$s",
+ "%2$s shared %1$s with group %3$s" : "%2$s поделился %1$s с группой %3$s",
+ "%2$s shared %1$s via link" : "%2$s поделился %1$s по ссылке",
"%2$s shared %1$s with you" : "%2$s поделился с вами %1$s",
"You shared %1$s via link" : "Вы поделились %1$s с помощью ссылки",
+ "Downloaded via public link" : "Загружено по открытой ссылке",
+ "Shared with %2$s" : "Поделился с %2$s",
+ "Shared with group %2$s" : "Поделился с группой %2$s",
+ "Shared with %3$s by %2$s" : "Поделился %2$s с %3$s",
+ "Shared with group %3$s by %2$s" : "Поделился %2$s с группой %3$s",
+ "Shared via link by %2$s" : "Поделился ссылкой %2$s",
+ "Shared by %2$s" : "Поделился %2$s",
+ "Shared via public link" : "Поделился открытой ссылкой",
"Shares" : "События обмена файлами",
+ "You received %2$s as a remote share from %1$s" : "Вы получили %2$s через удаленный общий ресурс %1$s",
"Accept" : "Принять",
+ "Decline" : "Отклонить",
"Share with me through my #ownCloud Federated Cloud ID, see %s" : "Поделитесь со мной через мой #ownCloud ID в объединении облачных хранилищ, смотрите %s",
"Share with me through my #ownCloud Federated Cloud ID" : "Поделитесь со мной через мой #ownCloud ID в объединении облачных хранилищ",
"This share is password-protected" : "Общий ресурс защищен паролем",
@@ -67,6 +80,7 @@ OC.L10N.register(
"Federated Cloud" : "Объединение облачных хранилищ",
"Your Federated Cloud ID:" : "Ваш ID в объединении облачных хранилищ:",
"Share it:" : "Поделись этим:",
+ "Add to your website" : "Добавить к себе на сайт",
"Share with me via ownCloud" : "Поделитесь мной через ownCloud",
"HTML Code:" : "HTML код:"
},
diff --git a/apps/files_sharing/l10n/ru.json b/apps/files_sharing/l10n/ru.json
index 0f7a152f536..401896709d6 100644
--- a/apps/files_sharing/l10n/ru.json
+++ b/apps/files_sharing/l10n/ru.json
@@ -36,10 +36,23 @@
"Public shared file %1$s was downloaded" : "Общий файл %1$s, был скачан",
"You shared %1$s with %2$s" : "Вы поделились %1$s с %2$s",
"You shared %1$s with group %2$s" : "Вы поделились %1$s с группой %2$s",
+ "%2$s shared %1$s with %3$s" : "%2$s поделился %1$s с %3$s",
+ "%2$s shared %1$s with group %3$s" : "%2$s поделился %1$s с группой %3$s",
+ "%2$s shared %1$s via link" : "%2$s поделился %1$s по ссылке",
"%2$s shared %1$s with you" : "%2$s поделился с вами %1$s",
"You shared %1$s via link" : "Вы поделились %1$s с помощью ссылки",
+ "Downloaded via public link" : "Загружено по открытой ссылке",
+ "Shared with %2$s" : "Поделился с %2$s",
+ "Shared with group %2$s" : "Поделился с группой %2$s",
+ "Shared with %3$s by %2$s" : "Поделился %2$s с %3$s",
+ "Shared with group %3$s by %2$s" : "Поделился %2$s с группой %3$s",
+ "Shared via link by %2$s" : "Поделился ссылкой %2$s",
+ "Shared by %2$s" : "Поделился %2$s",
+ "Shared via public link" : "Поделился открытой ссылкой",
"Shares" : "События обмена файлами",
+ "You received %2$s as a remote share from %1$s" : "Вы получили %2$s через удаленный общий ресурс %1$s",
"Accept" : "Принять",
+ "Decline" : "Отклонить",
"Share with me through my #ownCloud Federated Cloud ID, see %s" : "Поделитесь со мной через мой #ownCloud ID в объединении облачных хранилищ, смотрите %s",
"Share with me through my #ownCloud Federated Cloud ID" : "Поделитесь со мной через мой #ownCloud ID в объединении облачных хранилищ",
"This share is password-protected" : "Общий ресурс защищен паролем",
@@ -65,6 +78,7 @@
"Federated Cloud" : "Объединение облачных хранилищ",
"Your Federated Cloud ID:" : "Ваш ID в объединении облачных хранилищ:",
"Share it:" : "Поделись этим:",
+ "Add to your website" : "Добавить к себе на сайт",
"Share with me via ownCloud" : "Поделитесь мной через ownCloud",
"HTML Code:" : "HTML код:"
},"pluralForm" :"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"
diff --git a/apps/files_sharing/l10n/tr.js b/apps/files_sharing/l10n/tr.js
index bb00dd4295a..5e99aaf3993 100644
--- a/apps/files_sharing/l10n/tr.js
+++ b/apps/files_sharing/l10n/tr.js
@@ -38,10 +38,23 @@ OC.L10N.register(
"Public shared file %1$s was downloaded" : "Herkese açık paylaşılan dosya %1$s indirildi",
"You shared %1$s with %2$s" : "%1$s dosyasını %2$s ile paylaştınız",
"You shared %1$s with group %2$s" : "%1$s dosyasını %2$s grubu ile paylaştınız",
+ "%2$s shared %1$s with %3$s" : "%2$s %3$s ile %1$s dosyasını paylaştı",
+ "%2$s shared %1$s with group %3$s" : "%2$s %3$s grubu ile %1$s dosyasını paylaştı",
+ "%2$s shared %1$s via link" : "%2$s bağlantı ile %1$s dosyasını paylaştı",
"%2$s shared %1$s with you" : "%2$s sizinle %1$s dosyasını paylaştı",
"You shared %1$s via link" : "Bağlantı ile %1$s paylaşımını yaptınız",
+ "Downloaded via public link" : "Herkese açık bağlantı ile indirildi",
+ "Shared with %2$s" : "%2$s ile paylaşıldı",
+ "Shared with group %2$s" : "%2$s grubu ile paylaşıldı",
+ "Shared with %3$s by %2$s" : "%3$s ile %2$s tarafından paylaşıldı",
+ "Shared with group %3$s by %2$s" : "%2$s tarafından %3$s grubu ile paylaşıldı",
+ "Shared via link by %2$s" : "%2$s tarafından bağlantı ile paylaşıldı",
+ "Shared by %2$s" : "%2$s tarafından paylaşıldı",
+ "Shared via public link" : "Herkese açık bağlantı ile paylaşıldı",
"Shares" : "Paylaşımlar",
+ "You received %2$s as a remote share from %1$s" : "%1$s kişisinden %2$s paylaşımını uzak paylaşım olarak aldınız",
"Accept" : "Kabul et",
+ "Decline" : "Reddet",
"Share with me through my #ownCloud Federated Cloud ID, see %s" : "#ownCloud Birleşik Bulut kimliğim ile paylaşıldı, bkz %s",
"Share with me through my #ownCloud Federated Cloud ID" : "#ownCloud Birleşmiş Bulut kimliğim ile paylaşıldı",
"This share is password-protected" : "Bu paylaşım parola korumalı",
@@ -67,6 +80,7 @@ OC.L10N.register(
"Federated Cloud" : "Birleşmiş Bulut",
"Your Federated Cloud ID:" : "Birleşmiş Bulut Kimliğiniz:",
"Share it:" : "Paylaşın:",
+ "Add to your website" : "Web sitenize ekleyin",
"Share with me via ownCloud" : "Benimle ownCloud aracılığıyla paylaşıldı",
"HTML Code:" : "HTML Kodu:"
},
diff --git a/apps/files_sharing/l10n/tr.json b/apps/files_sharing/l10n/tr.json
index 1371bf37447..581ef2e0ffc 100644
--- a/apps/files_sharing/l10n/tr.json
+++ b/apps/files_sharing/l10n/tr.json
@@ -36,10 +36,23 @@
"Public shared file %1$s was downloaded" : "Herkese açık paylaşılan dosya %1$s indirildi",
"You shared %1$s with %2$s" : "%1$s dosyasını %2$s ile paylaştınız",
"You shared %1$s with group %2$s" : "%1$s dosyasını %2$s grubu ile paylaştınız",
+ "%2$s shared %1$s with %3$s" : "%2$s %3$s ile %1$s dosyasını paylaştı",
+ "%2$s shared %1$s with group %3$s" : "%2$s %3$s grubu ile %1$s dosyasını paylaştı",
+ "%2$s shared %1$s via link" : "%2$s bağlantı ile %1$s dosyasını paylaştı",
"%2$s shared %1$s with you" : "%2$s sizinle %1$s dosyasını paylaştı",
"You shared %1$s via link" : "Bağlantı ile %1$s paylaşımını yaptınız",
+ "Downloaded via public link" : "Herkese açık bağlantı ile indirildi",
+ "Shared with %2$s" : "%2$s ile paylaşıldı",
+ "Shared with group %2$s" : "%2$s grubu ile paylaşıldı",
+ "Shared with %3$s by %2$s" : "%3$s ile %2$s tarafından paylaşıldı",
+ "Shared with group %3$s by %2$s" : "%2$s tarafından %3$s grubu ile paylaşıldı",
+ "Shared via link by %2$s" : "%2$s tarafından bağlantı ile paylaşıldı",
+ "Shared by %2$s" : "%2$s tarafından paylaşıldı",
+ "Shared via public link" : "Herkese açık bağlantı ile paylaşıldı",
"Shares" : "Paylaşımlar",
+ "You received %2$s as a remote share from %1$s" : "%1$s kişisinden %2$s paylaşımını uzak paylaşım olarak aldınız",
"Accept" : "Kabul et",
+ "Decline" : "Reddet",
"Share with me through my #ownCloud Federated Cloud ID, see %s" : "#ownCloud Birleşik Bulut kimliğim ile paylaşıldı, bkz %s",
"Share with me through my #ownCloud Federated Cloud ID" : "#ownCloud Birleşmiş Bulut kimliğim ile paylaşıldı",
"This share is password-protected" : "Bu paylaşım parola korumalı",
@@ -65,6 +78,7 @@
"Federated Cloud" : "Birleşmiş Bulut",
"Your Federated Cloud ID:" : "Birleşmiş Bulut Kimliğiniz:",
"Share it:" : "Paylaşın:",
+ "Add to your website" : "Web sitenize ekleyin",
"Share with me via ownCloud" : "Benimle ownCloud aracılığıyla paylaşıldı",
"HTML Code:" : "HTML Kodu:"
},"pluralForm" :"nplurals=2; plural=(n > 1);"
diff --git a/apps/files_sharing/lib/cache.php b/apps/files_sharing/lib/cache.php
index 377c9f02253..fa6c2d4c4f5 100644
--- a/apps/files_sharing/lib/cache.php
+++ b/apps/files_sharing/lib/cache.php
@@ -8,6 +8,7 @@
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Scrutinizer Auto-Fixer <auto-fixer@scrutinizer-ci.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Vincent Petry <pvince81@owncloud.com>
diff --git a/apps/files_sharing/lib/connector/publicauth.php b/apps/files_sharing/lib/connector/publicauth.php
index 9d1bf391560..4ac355180fc 100644
--- a/apps/files_sharing/lib/connector/publicauth.php
+++ b/apps/files_sharing/lib/connector/publicauth.php
@@ -5,6 +5,7 @@
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
+ * @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_sharing/lib/controllers/externalsharescontroller.php b/apps/files_sharing/lib/controllers/externalsharescontroller.php
index 1b8351da420..71cc956ec98 100644
--- a/apps/files_sharing/lib/controllers/externalsharescontroller.php
+++ b/apps/files_sharing/lib/controllers/externalsharescontroller.php
@@ -3,6 +3,7 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_sharing/lib/exceptions/s2sexception.php b/apps/files_sharing/lib/exceptions/s2sexception.php
index 7f5557f8cd3..d914e9e06db 100644
--- a/apps/files_sharing/lib/exceptions/s2sexception.php
+++ b/apps/files_sharing/lib/exceptions/s2sexception.php
@@ -1,5 +1,9 @@
<?php
/**
+ * @author Björn Schießle <schiessle@owncloud.com>
+ * @author Morris Jobke <hey@morrisjobke.de>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
+ *
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
*
diff --git a/apps/files_sharing/lib/external/manager.php b/apps/files_sharing/lib/external/manager.php
index a017a465b55..86b8904cc9a 100644
--- a/apps/files_sharing/lib/external/manager.php
+++ b/apps/files_sharing/lib/external/manager.php
@@ -5,6 +5,7 @@
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/lib/external/scanner.php b/apps/files_sharing/lib/external/scanner.php
index 60eb7c8dacd..455225b2b79 100644
--- a/apps/files_sharing/lib/external/scanner.php
+++ b/apps/files_sharing/lib/external/scanner.php
@@ -2,6 +2,7 @@
/**
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Olivier Paroz <github@oparoz.com>
* @author Robin Appelman <icewind@owncloud.com>
* @author Vincent Petry <pvince81@owncloud.com>
*
diff --git a/apps/files_sharing/lib/helper.php b/apps/files_sharing/lib/helper.php
index 2d92cac6c94..b15f70fcde3 100644
--- a/apps/files_sharing/lib/helper.php
+++ b/apps/files_sharing/lib/helper.php
@@ -7,6 +7,7 @@
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/lib/hooks.php b/apps/files_sharing/lib/hooks.php
index 1937010f390..079824f7fb0 100644
--- a/apps/files_sharing/lib/hooks.php
+++ b/apps/files_sharing/lib/hooks.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
*
diff --git a/apps/files_sharing/lib/middleware/sharingcheckmiddleware.php b/apps/files_sharing/lib/middleware/sharingcheckmiddleware.php
index 942efc0483e..9170c08b59d 100644
--- a/apps/files_sharing/lib/middleware/sharingcheckmiddleware.php
+++ b/apps/files_sharing/lib/middleware/sharingcheckmiddleware.php
@@ -2,6 +2,7 @@
/**
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/lib/propagation/changewatcher.php b/apps/files_sharing/lib/propagation/changewatcher.php
index 9f23c19be88..e61c161da19 100644
--- a/apps/files_sharing/lib/propagation/changewatcher.php
+++ b/apps/files_sharing/lib/propagation/changewatcher.php
@@ -1,6 +1,5 @@
<?php
/**
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
@@ -100,4 +99,12 @@ class ChangeWatcher {
$propagator->propagateChanges();
}
}
+
+ public function permissionsHook($params) {
+ $share = $params['share'];
+
+ if ($share['item_type'] === 'file' || $share['item_type'] === 'folder') {
+ $this->recipientPropagator->markDirty($share, microtime(true));
+ }
+ }
}
diff --git a/apps/files_sharing/lib/propagation/grouppropagationmanager.php b/apps/files_sharing/lib/propagation/grouppropagationmanager.php
new file mode 100644
index 00000000000..ba550dccec3
--- /dev/null
+++ b/apps/files_sharing/lib/propagation/grouppropagationmanager.php
@@ -0,0 +1,133 @@
+<?php
+/**
+ * @author Vincent Petry <pvince81@owncloud.com>
+ *
+ * @copyright Copyright (c) 2015, ownCloud, Inc.
+ * @license AGPL-3.0
+ *
+ * This code is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License, version 3,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License, version 3,
+ * along with this program. If not, see <http://www.gnu.org/licenses/>
+ *
+ */
+
+namespace OCA\Files_Sharing\Propagation;
+
+use OC\Files\Filesystem;
+use OC\Files\View;
+use OCP\IConfig;
+use OCP\IUserSession;
+use OCP\IGroup;
+use OCP\IUser;
+use OCP\IGroupManager;
+use OCA\Files_Sharing\Propagation\PropagationManager;
+
+/**
+ * Propagate changes on group changes
+ */
+class GroupPropagationManager {
+ /**
+ * @var \OCP\IUserSession
+ */
+ private $userSession;
+
+ /**
+ * @var \OCP\IGroupManager
+ */
+ private $groupManager;
+
+ /**
+ * @var PropagationManager
+ */
+ private $propagationManager;
+
+ /**
+ * Items shared with a given user.
+ * Key is user id and value is an array of shares.
+ *
+ * @var array
+ */
+ private $userShares = [];
+
+ public function __construct(IUserSession $userSession, IGroupManager $groupManager, PropagationManager $propagationManager) {
+ $this->userSession = $userSession;
+ $this->groupManager = $groupManager;
+ $this->propagationManager = $propagationManager;
+ }
+
+ public function onPreProcessUser(IGroup $group, IUser $targetUser) {
+ $this->userShares[$targetUser->getUID()] = $this->getUserShares($targetUser->getUID());
+ }
+
+ public function onPostAddUser(IGroup $group, IUser $targetUser) {
+ $targetUserId = $targetUser->getUID();
+ $sharesAfter = $this->getUserShares($targetUserId);
+
+ $this->propagateSharesDiff($targetUserId, $sharesAfter, $this->userShares[$targetUserId]);
+ unset($this->userShares[$targetUserId]);
+ }
+
+ public function onPostRemoveUser(IGroup $group, IUser $targetUser) {
+ $targetUserId = $targetUser->getUID();
+ $sharesAfter = $this->getUserShares($targetUserId);
+
+ $this->propagateSharesDiff($targetUserId, $this->userShares[$targetUserId], $sharesAfter);
+ unset($this->userShares[$targetUserId]);
+ }
+
+ private function getUserShares($targetUserId) {
+ return \OCP\Share::getItemsSharedWithUser('file', $targetUserId);
+ }
+
+ /**
+ * Propagate etag for the shares that are in $shares1 but not in $shares2.
+ *
+ * @param string $targetUserId user id for which to propagate shares
+ * @param array $shares1
+ * @param array $shares2
+ */
+ private function propagateSharesDiff($targetUserId, $shares1, $shares2) {
+ $sharesToPropagate = array_udiff(
+ $shares1,
+ $shares2,
+ function($share1, $share2) {
+ return ($share2['id'] - $share1['id']);
+ }
+ );
+
+ \OC\Files\Filesystem::initMountPoints($targetUserId);
+ $this->propagationManager->propagateSharesToUser($sharesToPropagate, $targetUserId);
+ }
+
+ /**
+ * To be called from setupFS trough a hook
+ *
+ * Sets up listening to changes made to shares owned by the current user
+ */
+ public function globalSetup() {
+ $user = $this->userSession->getUser();
+ if (!$user) {
+ return;
+ }
+
+ $this->groupManager->listen('\OC\Group', 'preAddUser', [$this, 'onPreProcessUser']);
+ $this->groupManager->listen('\OC\Group', 'postAddUser', [$this, 'onPostAddUser']);
+ $this->groupManager->listen('\OC\Group', 'preRemoveUser', [$this, 'onPreProcessUser']);
+ $this->groupManager->listen('\OC\Group', 'postRemoveUser', [$this, 'onPostRemoveUser']);
+ }
+
+ public function tearDown() {
+ $this->groupManager->removeListener('\OC\Group', 'preAddUser', [$this, 'onPreProcessUser']);
+ $this->groupManager->removeListener('\OC\Group', 'postAddUser', [$this, 'onPostAddUser']);
+ $this->groupManager->removeListener('\OC\Group', 'preRemoveUser', [$this, 'onPreProcessUser']);
+ $this->groupManager->removeListener('\OC\Group', 'postRemoveUser', [$this, 'onPostRemoveUser']);
+ }
+}
diff --git a/apps/files_sharing/lib/propagation/propagationmanager.php b/apps/files_sharing/lib/propagation/propagationmanager.php
index 7929c2aa5bb..6ed70e93f84 100644
--- a/apps/files_sharing/lib/propagation/propagationmanager.php
+++ b/apps/files_sharing/lib/propagation/propagationmanager.php
@@ -1,6 +1,5 @@
<?php
/**
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
@@ -26,6 +25,7 @@ use OC\Files\Filesystem;
use OC\Files\View;
use OCP\IConfig;
use OCP\IUserSession;
+use OCP\Util;
/**
@@ -82,6 +82,21 @@ class PropagationManager {
}
/**
+ * Propagates etag changes for the given shares to the given user
+ *
+ * @param array array of shares for which to trigger etag change
+ * @param string $user
+ */
+ public function propagateSharesToUser($shares, $user) {
+ $changePropagator = $this->getChangePropagator($user);
+ foreach ($shares as $share) {
+ $changePropagator->addChange($share['file_target']);
+ }
+ $time = microtime(true);
+ $changePropagator->propagateChanges(floor($time));
+ }
+
+ /**
* @param string $user
* @return \OCA\Files_Sharing\Propagation\RecipientPropagator
*/
@@ -120,8 +135,9 @@ class PropagationManager {
// for marking shares owned by the active user as dirty when a file inside them changes
$this->listenToOwnerChanges($user->getUID(), $user->getUID());
- \OC_Hook::connect('OC_Filesystem', 'post_write', $watcher, 'writeHook');
- \OC_Hook::connect('OC_Filesystem', 'post_delete', $watcher, 'writeHook');
- \OC_Hook::connect('OC_Filesystem', 'post_rename', $watcher, 'renameHook');
+ Util::connectHook('OC_Filesystem', 'post_write', $watcher, 'writeHook');
+ Util::connectHook('OC_Filesystem', 'post_delete', $watcher, 'writeHook');
+ Util::connectHook('OC_Filesystem', 'post_rename', $watcher, 'renameHook');
+ Util::connectHook('OCP\Share', 'post_update_permissions', $watcher, 'permissionsHook');
}
}
diff --git a/apps/files_sharing/lib/propagation/recipientpropagator.php b/apps/files_sharing/lib/propagation/recipientpropagator.php
index 420cacb3d2f..8e064e2ee54 100644
--- a/apps/files_sharing/lib/propagation/recipientpropagator.php
+++ b/apps/files_sharing/lib/propagation/recipientpropagator.php
@@ -105,7 +105,7 @@ class RecipientPropagator {
/**
* @param array $share
- * @param int $time
+ * @param float $time
*/
public function markDirty($share, $time = null) {
if ($time === null) {
diff --git a/apps/files_sharing/lib/share/file.php b/apps/files_sharing/lib/share/file.php
index 7bbc2083702..6c676f47a0c 100644
--- a/apps/files_sharing/lib/share/file.php
+++ b/apps/files_sharing/lib/share/file.php
@@ -5,6 +5,8 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Michael Gapczynski <GapczynskiM@gmail.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin Appelman <icewind@owncloud.com>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Vincent Petry <pvince81@owncloud.com>
*
diff --git a/apps/files_sharing/lib/share/folder.php b/apps/files_sharing/lib/share/folder.php
index ef42393f58d..daa5b5e9eb8 100644
--- a/apps/files_sharing/lib/share/folder.php
+++ b/apps/files_sharing/lib/share/folder.php
@@ -4,6 +4,8 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Michael Gapczynski <GapczynskiM@gmail.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_sharing/lib/sharedmount.php b/apps/files_sharing/lib/sharedmount.php
index 9aa9bbf562b..85eb264ce09 100644
--- a/apps/files_sharing/lib/sharedmount.php
+++ b/apps/files_sharing/lib/sharedmount.php
@@ -1,8 +1,10 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_sharing/lib/updater.php b/apps/files_sharing/lib/updater.php
index 9dd106a548c..d70ed23b941 100644
--- a/apps/files_sharing/lib/updater.php
+++ b/apps/files_sharing/lib/updater.php
@@ -4,6 +4,8 @@
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Michael Gapczynski <GapczynskiM@gmail.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin Appelman <icewind@owncloud.com>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/public.php b/apps/files_sharing/public.php
index 2cf8476f721..772419e64e4 100644
--- a/apps/files_sharing/public.php
+++ b/apps/files_sharing/public.php
@@ -1,6 +1,5 @@
<?php
/**
- * @author Felix Moeller <mail@felixmoeller.de>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
*
diff --git a/apps/files_sharing/publicwebdav.php b/apps/files_sharing/publicwebdav.php
index fbf9d22cf76..7d96c8e8c97 100644
--- a/apps/files_sharing/publicwebdav.php
+++ b/apps/files_sharing/publicwebdav.php
@@ -1,9 +1,8 @@
<?php
/**
- * @author Lukas Reschke <lukas@owncloud.com>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/settings-personal.php b/apps/files_sharing/settings-personal.php
index f4c9c6cd308..deaa7b92ac7 100644
--- a/apps/files_sharing/settings-personal.php
+++ b/apps/files_sharing/settings-personal.php
@@ -3,6 +3,7 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Jan-Christoph Borchardt <hey@jancborchardt.net>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_sharing/tests/api/shareestest.php b/apps/files_sharing/tests/api/shareestest.php
index 91b8b1c7e66..923881d4569 100644
--- a/apps/files_sharing/tests/api/shareestest.php
+++ b/apps/files_sharing/tests/api/shareestest.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_sharing/tests/capabilities.php b/apps/files_sharing/tests/capabilities.php
index cff7bdf1fe8..b151f47a468 100644
--- a/apps/files_sharing/tests/capabilities.php
+++ b/apps/files_sharing/tests/capabilities.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Roeland Jago Douma <roeland@famdouma.nl>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/tests/controller/externalsharecontroller.php b/apps/files_sharing/tests/controller/externalsharecontroller.php
index 7b3e1af4c74..7bc11f7fb94 100644
--- a/apps/files_sharing/tests/controller/externalsharecontroller.php
+++ b/apps/files_sharing/tests/controller/externalsharecontroller.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Lukas Reschke <lukas@owncloud.com>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_sharing/tests/etagpropagation.php b/apps/files_sharing/tests/etagpropagation.php
index 8da4e6f29bd..f7f8ec35288 100644
--- a/apps/files_sharing/tests/etagpropagation.php
+++ b/apps/files_sharing/tests/etagpropagation.php
@@ -1,6 +1,5 @@
<?php
/**
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Vincent Petry <pvince81@owncloud.com>
*
@@ -48,6 +47,7 @@ class EtagPropagation extends TestCase {
\OC_Hook::clear('OC_Filesystem', 'post_write');
\OC_Hook::clear('OC_Filesystem', 'post_delete');
\OC_Hook::clear('OC_Filesystem', 'post_rename');
+ \OC_Hook::clear('OCP\Share', 'post_update_permissions');
parent::tearDown();
}
@@ -407,4 +407,17 @@ class EtagPropagation extends TestCase {
$this->assertAllUnchaged();
}
+
+ public function testEtagChangeOnPermissionsChange() {
+ $this->loginAsUser(self::TEST_FILES_SHARING_API_USER1);
+
+ $view = new View('/' . self::TEST_FILES_SHARING_API_USER1 . '/files');
+ $folderInfo = $view->getFileInfo('/sub1/sub2/folder');
+
+ \OCP\Share::setPermissions('folder', $folderInfo->getId(), \OCP\Share::SHARE_TYPE_USER, self::TEST_FILES_SHARING_API_USER2, 17);
+
+ $this->assertEtagsForFoldersChanged([self::TEST_FILES_SHARING_API_USER2, self::TEST_FILES_SHARING_API_USER4]);
+
+ $this->assertAllUnchaged();
+ }
}
diff --git a/apps/files_sharing/tests/grouppropagationmanager.php b/apps/files_sharing/tests/grouppropagationmanager.php
new file mode 100644
index 00000000000..6fc6ef7a532
--- /dev/null
+++ b/apps/files_sharing/tests/grouppropagationmanager.php
@@ -0,0 +1,175 @@
+<?php
+/**
+ * @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin Appelman <icewind@owncloud.com>
+ * @author Vincent Petry <pvince81@owncloud.com>
+ *
+ * @copyright Copyright (c) 2015, ownCloud, Inc.
+ * @license AGPL-3.0
+ *
+ * This code is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License, version 3,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License, version 3,
+ * along with this program. If not, see <http://www.gnu.org/licenses/>
+ *
+ */
+
+namespace OCA\Files_sharing\Tests;
+
+use OC\Files\View;
+use OCP\IGroupManager;
+use OCP\IGroup;
+use OCP\IUser;
+use OCP\Share;
+use OCA\Files_Sharing\Propagation\GroupPropagationManager;
+use OCA\Files_Sharing\Propagation\PropagationManager;
+
+class GroupPropagationManagerTest extends TestCase {
+
+ /**
+ * @var GroupPropagationManager
+ */
+ private $groupPropagationManager;
+
+ /**
+ * @var IGroupManager
+ */
+ private $groupManager;
+
+ /**
+ * @var PropagationManager
+ */
+ private $propagationManager;
+
+ /**
+ * @var IGroup
+ */
+ private $recipientGroup;
+
+ /**
+ * @var IUser
+ */
+ private $recipientUser;
+
+ /**
+ * @var array
+ */
+ private $fileInfo;
+
+ protected function setUp() {
+ parent::setUp();
+
+ $user = $this->getMockBuilder('\OCP\IUser')
+ ->disableOriginalConstructor()
+ ->getMock();
+ $user->method('getUID')->willReturn(self::TEST_FILES_SHARING_API_USER1);
+ $userSession = $this->getMockBuilder('\OCP\IUserSession')
+ ->disableOriginalConstructor()
+ ->getMock();
+ $userSession->method('getUser')->willReturn(selF::TEST_FILES_SHARING_API_USER1);
+
+ $this->propagationManager = $this->getMockBuilder('OCA\Files_Sharing\Propagation\PropagationManager')
+ ->disableOriginalConstructor()
+ ->getMock();
+
+ $this->groupManager = \OC::$server->getGroupManager();
+ $this->groupPropagationManager = new GroupPropagationManager(
+ $userSession,
+ $this->groupManager,
+ $this->propagationManager
+ );
+ $this->groupPropagationManager->globalSetup();
+
+ // since the sharing code is not mockable, we have to create a real folder
+ $this->loginAsUser(self::TEST_FILES_SHARING_API_USER1);
+ $view1 = new View('/' . self::TEST_FILES_SHARING_API_USER1 . '/files');
+ $view1->mkdir('/folder');
+
+ $this->fileInfo = $view1->getFileInfo('/folder');
+
+ $this->recipientGroup = $this->groupManager->get(self::TEST_FILES_SHARING_API_GROUP1);
+ $this->recipientUser = \OC::$server->getUserManager()->get(self::TEST_FILES_SHARING_API_USER3);
+
+ Share::shareItem(
+ 'folder',
+ $this->fileInfo['fileid'],
+ Share::SHARE_TYPE_GROUP,
+ $this->recipientGroup->getGID(),
+ \OCP\Constants::PERMISSION_READ
+ );
+
+ $this->loginAsUser($this->recipientUser->getUID());
+ }
+
+ protected function tearDown() {
+ $this->groupPropagationManager->tearDown();
+ $this->recipientGroup->removeUser($this->recipientUser);
+ parent::tearDown();
+ }
+
+ public function testPropagateWhenAddedToGroup() {
+ $this->propagationManager->expects($this->once())
+ ->method('propagateSharesToUser')
+ ->with($this->callback(function($shares) {
+ if (count($shares) !== 1) {
+ return false;
+ }
+ $share = array_values($shares)[0];
+ return $share['file_source'] === $this->fileInfo['fileid'] &&
+ $share['share_with'] === $this->recipientGroup->getGID() &&
+ $share['file_target'] === '/folder';
+ }), $this->recipientUser->getUID());
+
+ $this->recipientGroup->addUser($this->recipientUser);
+ }
+
+ public function testPropagateWhenRemovedFromGroup() {
+ $this->recipientGroup->addUser($this->recipientUser);
+
+ $this->propagationManager->expects($this->once())
+ ->method('propagateSharesToUser')
+ ->with($this->callback(function($shares) {
+ if (count($shares) !== 1) {
+ return false;
+ }
+ $share = array_values($shares)[0];
+ return $share['file_source'] === $this->fileInfo['fileid'] &&
+ $share['share_with'] === $this->recipientGroup->getGID() &&
+ $share['file_target'] === '/folder';
+ }), $this->recipientUser->getUID());
+
+ $this->recipientGroup->removeUser($this->recipientUser);
+ }
+
+ public function testPropagateWhenRemovedFromGroupWithSubdirTarget() {
+ $this->recipientGroup->addUser($this->recipientUser);
+
+ // relogin to refresh mount points
+ $this->loginAsUser($this->recipientUser->getUID());
+ $recipientView = new View('/' . $this->recipientUser->getUID() . '/files');
+
+ $this->assertTrue($recipientView->mkdir('sub'));
+ $this->assertTrue($recipientView->rename('folder', 'sub/folder'));
+
+ $this->propagationManager->expects($this->once())
+ ->method('propagateSharesToUser')
+ ->with($this->callback(function($shares) {
+ if (count($shares) !== 1) {
+ return false;
+ }
+ $share = array_values($shares)[0];
+ return $share['file_source'] === $this->fileInfo['fileid'] &&
+ $share['share_with'] === $this->recipientGroup->getGID() &&
+ $share['file_target'] === '/sub/folder';
+ }), $this->recipientUser->getUID());
+
+ $this->recipientGroup->removeUser($this->recipientUser);
+ }
+}
diff --git a/apps/files_sharing/tests/locking.php b/apps/files_sharing/tests/locking.php
index 269c924d142..ae1fcf30a53 100644
--- a/apps/files_sharing/tests/locking.php
+++ b/apps/files_sharing/tests/locking.php
@@ -1,8 +1,7 @@
<?php
/**
- * @author Morris Jobke <hey@morrisjobke.de>
+ * @author Lukas Reschke <lukas@owncloud.com>
* @author Robin Appelman <icewind@owncloud.com>
- * @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_sharing/tests/middleware/sharingcheckmiddleware.php b/apps/files_sharing/tests/middleware/sharingcheckmiddleware.php
index 05cb7497680..0269f77d0d5 100644
--- a/apps/files_sharing/tests/middleware/sharingcheckmiddleware.php
+++ b/apps/files_sharing/tests/middleware/sharingcheckmiddleware.php
@@ -1,8 +1,8 @@
<?php
/**
- * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/tests/permissions.php b/apps/files_sharing/tests/permissions.php
index c10333defaa..80e727b7178 100644
--- a/apps/files_sharing/tests/permissions.php
+++ b/apps/files_sharing/tests/permissions.php
@@ -2,7 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Vincent Petry <pvince81@owncloud.com>
diff --git a/apps/files_sharing/tests/server2server.php b/apps/files_sharing/tests/server2server.php
index a4cc8209a8e..300c637c777 100644
--- a/apps/files_sharing/tests/server2server.php
+++ b/apps/files_sharing/tests/server2server.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
*
diff --git a/apps/files_sharing/tests/share.php b/apps/files_sharing/tests/share.php
index ed21e20f751..abff820c168 100644
--- a/apps/files_sharing/tests/share.php
+++ b/apps/files_sharing/tests/share.php
@@ -4,6 +4,7 @@
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Thomas Müller <thomas.mueller@tmit.eu>
+ * @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_sharing/tests/sharedmount.php b/apps/files_sharing/tests/sharedmount.php
index d1db6a644f0..6f487892b8f 100644
--- a/apps/files_sharing/tests/sharedmount.php
+++ b/apps/files_sharing/tests/sharedmount.php
@@ -4,6 +4,7 @@
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Vincent Petry <pvince81@owncloud.com>
*
diff --git a/apps/files_sharing/tests/sizepropagation.php b/apps/files_sharing/tests/sizepropagation.php
index dbaa316f603..f46d5a5a7ad 100644
--- a/apps/files_sharing/tests/sizepropagation.php
+++ b/apps/files_sharing/tests/sizepropagation.php
@@ -1,6 +1,5 @@
<?php
/**
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_trashbin/ajax/delete.php b/apps/files_trashbin/ajax/delete.php
index 63002671bfa..7ce8d632e4b 100644
--- a/apps/files_trashbin/ajax/delete.php
+++ b/apps/files_trashbin/ajax/delete.php
@@ -4,6 +4,7 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_trashbin/ajax/preview.php b/apps/files_trashbin/ajax/preview.php
index c8bae2c5ce9..90add53f77f 100644
--- a/apps/files_trashbin/ajax/preview.php
+++ b/apps/files_trashbin/ajax/preview.php
@@ -3,6 +3,7 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Georg Ehrke <georg@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_trashbin/ajax/undelete.php b/apps/files_trashbin/ajax/undelete.php
index 8eda7a8d640..01dc91f9bac 100644
--- a/apps/files_trashbin/ajax/undelete.php
+++ b/apps/files_trashbin/ajax/undelete.php
@@ -4,6 +4,7 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Vincent Petry <pvince81@owncloud.com>
*
diff --git a/apps/files_trashbin/appinfo/app.php b/apps/files_trashbin/appinfo/app.php
index 4805f9eeafd..7d99270557f 100644
--- a/apps/files_trashbin/appinfo/app.php
+++ b/apps/files_trashbin/appinfo/app.php
@@ -1,10 +1,10 @@
<?php
/**
* @author Bart Visscher <bartv@thisnet.nl>
- * @author Björn Schießle <schiessle@owncloud.com>
* @author Christopher Schäpers <kondou@ts.unde.re>
* @author Florin Peter <github@florin-peter.de>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Victor Dubiniuk <dubiniuk@owncloud.com>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_trashbin/appinfo/routes.php b/apps/files_trashbin/appinfo/routes.php
index cf3d7b77ec2..caa9f0864a1 100644
--- a/apps/files_trashbin/appinfo/routes.php
+++ b/apps/files_trashbin/appinfo/routes.php
@@ -1,6 +1,5 @@
<?php
/**
- * @author Georg Ehrke <georg@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Vincent Petry <pvince81@owncloud.com>
diff --git a/apps/files_trashbin/appinfo/update.php b/apps/files_trashbin/appinfo/update.php
index ae018a9da5d..bd2ee6bb390 100644
--- a/apps/files_trashbin/appinfo/update.php
+++ b/apps/files_trashbin/appinfo/update.php
@@ -3,6 +3,7 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Christopher Schäpers <kondou@ts.unde.re>
* @author Thomas Müller <thomas.mueller@tmit.eu>
+ * @author Victor Dubiniuk <dubiniuk@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_trashbin/command/cleanup.php b/apps/files_trashbin/command/cleanup.php
index 60717abac18..8af5dee4fcb 100644
--- a/apps/files_trashbin/command/cleanup.php
+++ b/apps/files_trashbin/command/cleanup.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_trashbin/command/expire.php b/apps/files_trashbin/command/expire.php
index 89b949bbcdf..f34c63b718b 100644
--- a/apps/files_trashbin/command/expire.php
+++ b/apps/files_trashbin/command/expire.php
@@ -1,7 +1,6 @@
<?php
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Vincent Petry <pvince81@owncloud.com>
diff --git a/apps/files_trashbin/l10n/nds.js b/apps/files_trashbin/l10n/nds.js
new file mode 100644
index 00000000000..b2dd9ff4ca6
--- /dev/null
+++ b/apps/files_trashbin/l10n/nds.js
@@ -0,0 +1,7 @@
+OC.L10N.register(
+ "files_trashbin",
+ {
+ "Delete" : "Löschen",
+ "Name" : "Name"
+},
+"nplurals=2; plural=(n != 1);");
diff --git a/apps/files_trashbin/l10n/nds.json b/apps/files_trashbin/l10n/nds.json
new file mode 100644
index 00000000000..45b0caa74ac
--- /dev/null
+++ b/apps/files_trashbin/l10n/nds.json
@@ -0,0 +1,5 @@
+{ "translations": {
+ "Delete" : "Löschen",
+ "Name" : "Name"
+},"pluralForm" :"nplurals=2; plural=(n != 1);"
+} \ No newline at end of file
diff --git a/apps/files_trashbin/lib/backgroundjob/expiretrash.php b/apps/files_trashbin/lib/backgroundjob/expiretrash.php
index a222767669a..079fdd29912 100644
--- a/apps/files_trashbin/lib/backgroundjob/expiretrash.php
+++ b/apps/files_trashbin/lib/backgroundjob/expiretrash.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Lukas Reschke <lukas@owncloud.com>
* @author Victor Dubiniuk <dubiniuk@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_trashbin/lib/expiration.php b/apps/files_trashbin/lib/expiration.php
index 5069521aab3..1c08e2869f6 100644
--- a/apps/files_trashbin/lib/expiration.php
+++ b/apps/files_trashbin/lib/expiration.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Lukas Reschke <lukas@owncloud.com>
* @author Victor Dubiniuk <dubiniuk@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_trashbin/lib/helper.php b/apps/files_trashbin/lib/helper.php
index 0baa2b5414b..3d6a02c7776 100644
--- a/apps/files_trashbin/lib/helper.php
+++ b/apps/files_trashbin/lib/helper.php
@@ -5,6 +5,7 @@
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_trashbin/lib/hooks.php b/apps/files_trashbin/lib/hooks.php
index d11890aa4a7..57fc8d7a8d3 100644
--- a/apps/files_trashbin/lib/hooks.php
+++ b/apps/files_trashbin/lib/hooks.php
@@ -1,6 +1,5 @@
<?php
/**
- * @author Bart Visscher <bartv@thisnet.nl>
* @author Björn Schießle <schiessle@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
diff --git a/apps/files_trashbin/lib/trashbin.php b/apps/files_trashbin/lib/trashbin.php
index ea6f0993dd6..ef015c3566a 100644
--- a/apps/files_trashbin/lib/trashbin.php
+++ b/apps/files_trashbin/lib/trashbin.php
@@ -7,6 +7,7 @@
* @author Georg Ehrke <georg@owncloud.com>
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Lukas Reschke <lukas@owncloud.com>
+ * @author Martin Mattel <martin.mattel@diemattels.at>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Qingping Hou <dave2008713@gmail.com>
* @author Robin Appelman <icewind@owncloud.com>
diff --git a/apps/files_trashbin/tests/command/cleanuptest.php b/apps/files_trashbin/tests/command/cleanuptest.php
index d4cccee448e..e928f55eb8b 100644
--- a/apps/files_trashbin/tests/command/cleanuptest.php
+++ b/apps/files_trashbin/tests/command/cleanuptest.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_trashbin/tests/expiration.php b/apps/files_trashbin/tests/expiration.php
index 76fb24aa4df..c142133ceb7 100644
--- a/apps/files_trashbin/tests/expiration.php
+++ b/apps/files_trashbin/tests/expiration.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Victor Dubiniuk <dubiniuk@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_trashbin/tests/storage.php b/apps/files_trashbin/tests/storage.php
index 64540505d22..44b680f265c 100644
--- a/apps/files_trashbin/tests/storage.php
+++ b/apps/files_trashbin/tests/storage.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Björn Schießle <schiessle@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Vincent Petry <pvince81@owncloud.com>
diff --git a/apps/files_trashbin/tests/trashbin.php b/apps/files_trashbin/tests/trashbin.php
index f60367a77e2..757239b8cc4 100644
--- a/apps/files_trashbin/tests/trashbin.php
+++ b/apps/files_trashbin/tests/trashbin.php
@@ -5,6 +5,7 @@
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
+ * @author Victor Dubiniuk <dubiniuk@owncloud.com>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_versions/ajax/getVersions.php b/apps/files_versions/ajax/getVersions.php
index 59bd30f434f..d50545f7c69 100644
--- a/apps/files_versions/ajax/getVersions.php
+++ b/apps/files_versions/ajax/getVersions.php
@@ -5,6 +5,7 @@
* @author Frank Karlitschek <frank@owncloud.org>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Sam Tuke <mail@samtuke.com>
+ * @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_versions/ajax/preview.php b/apps/files_versions/ajax/preview.php
index 2f33f0278ef..d7bc44f17a2 100644
--- a/apps/files_versions/ajax/preview.php
+++ b/apps/files_versions/ajax/preview.php
@@ -1,7 +1,9 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Thomas Müller <thomas.mueller@tmit.eu>
+ * @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_versions/appinfo/app.php b/apps/files_versions/appinfo/app.php
index eadc7c69a23..89990fdf0d8 100644
--- a/apps/files_versions/appinfo/app.php
+++ b/apps/files_versions/appinfo/app.php
@@ -2,6 +2,7 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Frank Karlitschek <frank@owncloud.org>
+ * @author Victor Dubiniuk <dubiniuk@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_versions/appinfo/application.php b/apps/files_versions/appinfo/application.php
index b61b03dab13..00723e621ac 100644
--- a/apps/files_versions/appinfo/application.php
+++ b/apps/files_versions/appinfo/application.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Roeland Jago Douma <roeland@famdouma.nl>
+ * @author Victor Dubiniuk <dubiniuk@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_versions/appinfo/update.php b/apps/files_versions/appinfo/update.php
index 687e5d3b5d4..ef6772f3079 100644
--- a/apps/files_versions/appinfo/update.php
+++ b/apps/files_versions/appinfo/update.php
@@ -2,6 +2,7 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
+ * @author Victor Dubiniuk <dubiniuk@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_versions/command/expire.php b/apps/files_versions/command/expire.php
index 4492497f851..5db33f38772 100644
--- a/apps/files_versions/command/expire.php
+++ b/apps/files_versions/command/expire.php
@@ -1,7 +1,6 @@
<?php
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_versions/lib/expiration.php b/apps/files_versions/lib/expiration.php
index fba705251e9..4b3cecc1202 100644
--- a/apps/files_versions/lib/expiration.php
+++ b/apps/files_versions/lib/expiration.php
@@ -138,7 +138,7 @@ class Expiration {
}
if (!isset($splitValues[1])) {
- $maxValue = self::NO_OBLIGATION;
+ $maxValue = 'auto';
} else {
$maxValue = trim($splitValues[1]);
}
diff --git a/apps/files_versions/lib/hooks.php b/apps/files_versions/lib/hooks.php
index 5ef2cc3c7d0..f9d9eddf5e2 100644
--- a/apps/files_versions/lib/hooks.php
+++ b/apps/files_versions/lib/hooks.php
@@ -7,6 +7,7 @@
* @author Robin Appelman <icewind@owncloud.com>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Sam Tuke <mail@samtuke.com>
+ * @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_versions/lib/storage.php b/apps/files_versions/lib/storage.php
index cd2077d2922..fd51a54b108 100644
--- a/apps/files_versions/lib/storage.php
+++ b/apps/files_versions/lib/storage.php
@@ -13,6 +13,7 @@
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Scrutinizer Auto-Fixer <auto-fixer@scrutinizer-ci.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
+ * @author Victor Dubiniuk <dubiniuk@owncloud.com>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_versions/tests/expirationtest.php b/apps/files_versions/tests/expirationtest.php
index 11a4746c5e7..1081e412ce9 100644
--- a/apps/files_versions/tests/expirationtest.php
+++ b/apps/files_versions/tests/expirationtest.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Victor Dubiniuk <dubiniuk@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_versions/tests/versions.php b/apps/files_versions/tests/versions.php
index d4a85c8bffe..00d2b75b7a9 100644
--- a/apps/files_versions/tests/versions.php
+++ b/apps/files_versions/tests/versions.php
@@ -1,8 +1,10 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
+ * @author Georg Ehrke <georg@owncloud.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
+ * @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
diff --git a/apps/provisioning_api/appinfo/app.php b/apps/provisioning_api/appinfo/app.php
index bb5c541c4fd..40d8d5d04d3 100644
--- a/apps/provisioning_api/appinfo/app.php
+++ b/apps/provisioning_api/appinfo/app.php
@@ -1,6 +1,6 @@
<?php
/**
- * @author Tom Needham <tom@owncloud.com>
+
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/provisioning_api/appinfo/routes.php b/apps/provisioning_api/appinfo/routes.php
index 2ee3a185dae..5c53684fd77 100644
--- a/apps/provisioning_api/appinfo/routes.php
+++ b/apps/provisioning_api/appinfo/routes.php
@@ -2,6 +2,7 @@
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Tom Needham <tom@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/provisioning_api/lib/apps.php b/apps/provisioning_api/lib/apps.php
index 80f6e7049c6..ba920c7a9c9 100644
--- a/apps/provisioning_api/lib/apps.php
+++ b/apps/provisioning_api/lib/apps.php
@@ -1,7 +1,9 @@
<?php
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
+ * @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Tom Needham <tom@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/provisioning_api/lib/groups.php b/apps/provisioning_api/lib/groups.php
index c6fbe12b34e..7e7515bc709 100644
--- a/apps/provisioning_api/lib/groups.php
+++ b/apps/provisioning_api/lib/groups.php
@@ -1,7 +1,9 @@
<?php
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
+ * @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Tom Needham <tom@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/provisioning_api/lib/users.php b/apps/provisioning_api/lib/users.php
index 617e50b403e..add6325bde0 100644
--- a/apps/provisioning_api/lib/users.php
+++ b/apps/provisioning_api/lib/users.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
+ * @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Thomas Müller <thomas.mueller@tmit.eu>
diff --git a/apps/provisioning_api/tests/appstest.php b/apps/provisioning_api/tests/appstest.php
index f2a3977eac4..2baea5bbc8c 100644
--- a/apps/provisioning_api/tests/appstest.php
+++ b/apps/provisioning_api/tests/appstest.php
@@ -2,8 +2,8 @@
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Tom Needham <tom@owncloud.com>
- * @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/provisioning_api/tests/groupstest.php b/apps/provisioning_api/tests/groupstest.php
index 73044e33120..4afd246abcd 100644
--- a/apps/provisioning_api/tests/groupstest.php
+++ b/apps/provisioning_api/tests/groupstest.php
@@ -2,8 +2,8 @@
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Tom Needham <tom@owncloud.com>
- * @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/provisioning_api/tests/testcase.php b/apps/provisioning_api/tests/testcase.php
index ee7eb2a5a9a..cc8f5c1d16d 100644
--- a/apps/provisioning_api/tests/testcase.php
+++ b/apps/provisioning_api/tests/testcase.php
@@ -2,6 +2,7 @@
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/user_ldap/ajax/setConfiguration.php b/apps/user_ldap/ajax/setConfiguration.php
index 9311d72d21f..3b0ba1b7754 100644
--- a/apps/user_ldap/ajax/setConfiguration.php
+++ b/apps/user_ldap/ajax/setConfiguration.php
@@ -2,6 +2,7 @@
/**
* @author Arthur Schiwon <blizzz@owncloud.com>
* @author Christopher Schäpers <kondou@ts.unde.re>
+ * @author Lennart Rosam <hello@takuto.de>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
*
diff --git a/apps/user_ldap/appinfo/install.php b/apps/user_ldap/appinfo/install.php
index f70eb746480..844c724ac25 100644
--- a/apps/user_ldap/appinfo/install.php
+++ b/apps/user_ldap/appinfo/install.php
@@ -2,6 +2,7 @@
/**
* @author Arthur Schiwon <blizzz@owncloud.com>
* @author Christopher Schäpers <kondou@ts.unde.re>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/user_ldap/appinfo/update.php b/apps/user_ldap/appinfo/update.php
index 33a7219644b..7d358e5b268 100644
--- a/apps/user_ldap/appinfo/update.php
+++ b/apps/user_ldap/appinfo/update.php
@@ -1,5 +1,7 @@
<?php
/**
+ * @author Joas Schilling <nickvergessen@owncloud.com>
+ * @author Lennart Rosam <hello@takuto.de>
* @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/user_ldap/group_ldap.php b/apps/user_ldap/group_ldap.php
index d2e69b4e12a..97ed8fa91ac 100644
--- a/apps/user_ldap/group_ldap.php
+++ b/apps/user_ldap/group_ldap.php
@@ -5,7 +5,9 @@
* @author Arthur Schiwon <blizzz@owncloud.com>
* @author Bart Visscher <bartv@thisnet.nl>
* @author Christopher Schäpers <kondou@ts.unde.re>
+ * @author Frédéric Fortier <frederic.fortier@oronospolytechnique.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Nicolas Grekas <nicolas.grekas@gmail.com>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Vincent Petry <pvince81@owncloud.com>
diff --git a/apps/user_ldap/l10n/es.js b/apps/user_ldap/l10n/es.js
index c73f54b5489..5171628428d 100644
--- a/apps/user_ldap/l10n/es.js
+++ b/apps/user_ldap/l10n/es.js
@@ -31,7 +31,7 @@ OC.L10N.register(
"Confirm Deletion" : "Confirmar eliminación",
"Mappings cleared successfully!" : "¡Asignaciones borradas exitosamente!",
"Error while clearing the mappings." : "Error mientras se borraban las asignaciones.",
- "Anonymous bind is not allowed. Please provide a User DN and Password." : "Enlace anónimo no está permitido. Por favor suministre un DN de usuario y contraseña ",
+ "Anonymous bind is not allowed. Please provide a User DN and Password." : "Un vínculo anónimo no está permitido. Por favor, suministre un DN de usuario y contraseña. ",
"LDAP Operations error. Anonymous bind might not be allowed." : "Error de operaciones LDAP. Enlace anónimo puede no estar permitido.",
"Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Guardado fallido. Por favor, asegúrese de que la base de datos está en Operación. Actualizar antes de continuar.",
"Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?" : "Cambiando el modo habilitará automáticamente las consultas LDAP. Dependiendo del tamaño de su LDAP puede tardar un rato. ¿Desea cambiar el modo?",
diff --git a/apps/user_ldap/l10n/es.json b/apps/user_ldap/l10n/es.json
index 8666d1efdd9..8a896a9bda2 100644
--- a/apps/user_ldap/l10n/es.json
+++ b/apps/user_ldap/l10n/es.json
@@ -29,7 +29,7 @@
"Confirm Deletion" : "Confirmar eliminación",
"Mappings cleared successfully!" : "¡Asignaciones borradas exitosamente!",
"Error while clearing the mappings." : "Error mientras se borraban las asignaciones.",
- "Anonymous bind is not allowed. Please provide a User DN and Password." : "Enlace anónimo no está permitido. Por favor suministre un DN de usuario y contraseña ",
+ "Anonymous bind is not allowed. Please provide a User DN and Password." : "Un vínculo anónimo no está permitido. Por favor, suministre un DN de usuario y contraseña. ",
"LDAP Operations error. Anonymous bind might not be allowed." : "Error de operaciones LDAP. Enlace anónimo puede no estar permitido.",
"Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Guardado fallido. Por favor, asegúrese de que la base de datos está en Operación. Actualizar antes de continuar.",
"Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?" : "Cambiando el modo habilitará automáticamente las consultas LDAP. Dependiendo del tamaño de su LDAP puede tardar un rato. ¿Desea cambiar el modo?",
diff --git a/apps/user_ldap/l10n/nds.js b/apps/user_ldap/l10n/nds.js
index 37042a4f412..7fe0e420a11 100644
--- a/apps/user_ldap/l10n/nds.js
+++ b/apps/user_ldap/l10n/nds.js
@@ -1,7 +1,9 @@
OC.L10N.register(
"user_ldap",
{
- "_%s group found_::_%s groups found_" : ["",""],
- "_%s user found_::_%s users found_" : ["",""]
+ "Host" : "Host",
+ "Port" : "Port",
+ "Password" : "Passwort",
+ "Continue" : "Fortsetzen"
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/user_ldap/l10n/nds.json b/apps/user_ldap/l10n/nds.json
index 521de7ba1a8..78a3e1c8efd 100644
--- a/apps/user_ldap/l10n/nds.json
+++ b/apps/user_ldap/l10n/nds.json
@@ -1,5 +1,7 @@
{ "translations": {
- "_%s group found_::_%s groups found_" : ["",""],
- "_%s user found_::_%s users found_" : ["",""]
+ "Host" : "Host",
+ "Port" : "Port",
+ "Password" : "Passwort",
+ "Continue" : "Fortsetzen"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/user_ldap/l10n/pt_PT.js b/apps/user_ldap/l10n/pt_PT.js
index 38da6186e90..459fe817603 100644
--- a/apps/user_ldap/l10n/pt_PT.js
+++ b/apps/user_ldap/l10n/pt_PT.js
@@ -3,6 +3,7 @@ OC.L10N.register(
{
"Failed to clear the mappings." : "Falhou a limpar os mapas.",
"Failed to delete the server configuration" : "Erro ao eliminar a configuração do servidor",
+ "The configuration is invalid: anonymous bind is not allowed." : "A configuração é inválida: ligação anónima não é permitida.",
"The configuration is valid and the connection could be established!" : "A configuração está correcta e foi possível estabelecer a ligação!",
"The configuration is valid, but the Bind failed. Please check the server settings and credentials." : "A configuração está correcta, mas não foi possível estabelecer o \"laço\", por favor, verifique as configurações do servidor e as credenciais.",
"The configuration is invalid. Please have a look at the logs for further details." : "A configuração é inválida. Por favor, veja o log do ownCloud para mais detalhes.",
@@ -32,6 +33,9 @@ OC.L10N.register(
"Error while clearing the mappings." : "Erro a limpar os mapas.",
"Anonymous bind is not allowed. Please provide a User DN and Password." : "Ligação anónima não permitida. Por favor forneça um ND de utilizador e password.",
"LDAP Operations error. Anonymous bind might not be allowed." : "Erro de operações LDAP. Ligação anónima pode não ser permitida.",
+ "Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Falha na gravação. Por favor verifique que a base de dados está operacional. Recarregar antes de continuar.",
+ "Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?" : "Trocando o modo vai permitir a busca automática no LDAP. Dependendo do tamanho do seu LDAP poderá demorar um pouco. Ainda pretende trocar o modo?",
+ "Mode switch" : "Trocar de modo",
"Select attributes" : "Selecionar atributos",
"User found and settings verified." : "Utilizador encontrado e as definilções verificadas",
"_%s group found_::_%s groups found_" : ["%s grupo encontrado","%s grupos encontrados"],
diff --git a/apps/user_ldap/l10n/pt_PT.json b/apps/user_ldap/l10n/pt_PT.json
index 594b6ac1907..c7358f61bd5 100644
--- a/apps/user_ldap/l10n/pt_PT.json
+++ b/apps/user_ldap/l10n/pt_PT.json
@@ -1,6 +1,7 @@
{ "translations": {
"Failed to clear the mappings." : "Falhou a limpar os mapas.",
"Failed to delete the server configuration" : "Erro ao eliminar a configuração do servidor",
+ "The configuration is invalid: anonymous bind is not allowed." : "A configuração é inválida: ligação anónima não é permitida.",
"The configuration is valid and the connection could be established!" : "A configuração está correcta e foi possível estabelecer a ligação!",
"The configuration is valid, but the Bind failed. Please check the server settings and credentials." : "A configuração está correcta, mas não foi possível estabelecer o \"laço\", por favor, verifique as configurações do servidor e as credenciais.",
"The configuration is invalid. Please have a look at the logs for further details." : "A configuração é inválida. Por favor, veja o log do ownCloud para mais detalhes.",
@@ -30,6 +31,9 @@
"Error while clearing the mappings." : "Erro a limpar os mapas.",
"Anonymous bind is not allowed. Please provide a User DN and Password." : "Ligação anónima não permitida. Por favor forneça um ND de utilizador e password.",
"LDAP Operations error. Anonymous bind might not be allowed." : "Erro de operações LDAP. Ligação anónima pode não ser permitida.",
+ "Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Falha na gravação. Por favor verifique que a base de dados está operacional. Recarregar antes de continuar.",
+ "Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?" : "Trocando o modo vai permitir a busca automática no LDAP. Dependendo do tamanho do seu LDAP poderá demorar um pouco. Ainda pretende trocar o modo?",
+ "Mode switch" : "Trocar de modo",
"Select attributes" : "Selecionar atributos",
"User found and settings verified." : "Utilizador encontrado e as definilções verificadas",
"_%s group found_::_%s groups found_" : ["%s grupo encontrado","%s grupos encontrados"],
diff --git a/apps/user_ldap/lib/access.php b/apps/user_ldap/lib/access.php
index 2a605a2a0f0..0707b95013c 100644
--- a/apps/user_ldap/lib/access.php
+++ b/apps/user_ldap/lib/access.php
@@ -12,6 +12,7 @@
* @author Lukas Reschke <lukas@owncloud.com>
* @author Lyonel Vincent <lyonel@ezix.org>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Nicolas Grekas <nicolas.grekas@gmail.com>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Scrutinizer Auto-Fixer <auto-fixer@scrutinizer-ci.com>
*
@@ -1467,6 +1468,30 @@ class Access extends LDAPUtility implements user\IUserTools {
}
/**
+ * checks whether an LDAP paged search operation has more pages that can be
+ * retrieved, typically when offset and limit are provided.
+ *
+ * Be very careful to use it: the last cookie value, which is inspected, can
+ * be reset by other operations. Best, call it immediately after a search(),
+ * searchUsers() or searchGroups() call. count-methods are probably safe as
+ * well. Don't rely on it with any fetchList-method.
+ * @return bool
+ */
+ public function hasMoreResults() {
+ if(!$this->connection->hasPagedResultSupport) {
+ return false;
+ }
+
+ if(empty($this->lastCookie) && $this->lastCookie !== '0') {
+ // as in RFC 2696, when all results are returned, the cookie will
+ // be empty.
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
* set a cookie for LDAP paged search run
* @param string $base a string with the base DN for the search
* @param string $filter the search filter to identify the correct search
diff --git a/apps/user_ldap/lib/configuration.php b/apps/user_ldap/lib/configuration.php
index 1cbe45a82c2..6e62f5730b9 100644
--- a/apps/user_ldap/lib/configuration.php
+++ b/apps/user_ldap/lib/configuration.php
@@ -146,9 +146,12 @@ class Configuration {
$setMethod = 'setValue';
switch($key) {
+ case 'ldapAgentPassword':
+ $setMethod = 'setRawValue';
+ break;
case 'homeFolderNamingRule':
- if(!empty($val) && strpos($val, 'attr:') === false) {
- $val = 'attr:'.$val;
+ if(!empty(trim($val)) && strpos($val, 'attr:') === false) {
+ $val = 'attr:'.trim($val);
}
break;
case 'ldapBase':
@@ -272,8 +275,11 @@ class Configuration {
}
/**
- * @param string $varName
- * @param array|string $value
+ * Sets multi-line values as arrays
+ *
+ * @param string $varName name of config-key
+ * @param array|string $value to set
+ * @param boolean $trim Trim value? (default: false)
*/
protected function setMultiLine($varName, $value) {
if(empty($value)) {
@@ -285,7 +291,25 @@ class Configuration {
}
}
- $this->setValue($varName, $value);
+ if(!is_array($value)) {
+ $finalValue = trim($value);
+ } else {
+ $finalValue = [];
+ foreach($value as $key => $val) {
+ if(is_string($val)) {
+ $val = trim($val);
+ if(!empty($val)) {
+ //accidental line breaks are not wanted and can cause
+ // odd behaviour. Thus, away with them.
+ $finalValue[] = $val;
+ }
+ } else {
+ $finalValue[] = $val;
+ }
+ }
+ }
+
+ $this->setRawValue($varName, $finalValue);
}
/**
@@ -328,10 +352,25 @@ class Configuration {
}
/**
- * @param string $varName
- * @param mixed $value
+ * Sets a scalar value.
+ *
+ * @param string $varName name of config key
+ * @param mixed $value to set
*/
protected function setValue($varName, $value) {
+ if(is_string($value)) {
+ $value = trim($value);
+ }
+ $this->config[$varName] = $value;
+ }
+
+ /**
+ * Sets a scalar value without trimming.
+ *
+ * @param string $varName name of config key
+ * @param mixed $value to set
+ */
+ protected function setRawValue($varName, $value) {
$this->config[$varName] = $value;
}
diff --git a/apps/user_ldap/lib/wizard.php b/apps/user_ldap/lib/wizard.php
index 8d96e7de91d..84a1225d6ec 100644
--- a/apps/user_ldap/lib/wizard.php
+++ b/apps/user_ldap/lib/wizard.php
@@ -7,6 +7,7 @@
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Nicolas Grekas <nicolas.grekas@gmail.com>
* @author Robin Appelman <icewind@owncloud.com>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Scrutinizer Auto-Fixer <auto-fixer@scrutinizer-ci.com>
@@ -438,7 +439,7 @@ class Wizard extends LDAPUtility {
$groupEntries[] = $item;
}
$offset += $limit;
- } while (count($groupNames) > 0 && count($groupNames) % $limit === 0);
+ } while ($this->access->hasMoreResults());
if(count($groupNames) > 0) {
natsort($groupNames);
diff --git a/apps/user_ldap/tests/configuration.php b/apps/user_ldap/tests/configuration.php
new file mode 100644
index 00000000000..efe4d7eec83
--- /dev/null
+++ b/apps/user_ldap/tests/configuration.php
@@ -0,0 +1,106 @@
+<?php
+/**
+ * @author Arthur Schiwon <blizzz@owncloud.com>
+ *
+ * @copyright Copyright (c) 2015, ownCloud, Inc.
+ * @license AGPL-3.0
+ *
+ * This code is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License, version 3,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License, version 3,
+ * along with this program. If not, see <http://www.gnu.org/licenses/>
+ *
+ */
+
+namespace OCA\user_ldap\tests;
+
+class Test_Configuration extends \Test\TestCase {
+
+ public function configurationDataProvider() {
+ $inputWithDN = array(
+ 'cn=someUsers,dc=example,dc=org',
+ ' ',
+ ' cn=moreUsers,dc=example,dc=org '
+ );
+ $expectWithDN = array(
+ 'cn=someUsers,dc=example,dc=org',
+ 'cn=moreUsers,dc=example,dc=org'
+ );
+
+ $inputNames = array(
+ ' uid ',
+ 'cn ',
+ ' ',
+ '',
+ ' whats my name',
+ ' '
+ );
+ $expectedNames = array('uid', 'cn', 'whats my name');
+
+ $inputString = ' alea iacta est ';
+ $expectedString = 'alea iacta est';
+
+ $inputHomeFolder = array(
+ ' homeDirectory ',
+ ' attr:homeDirectory ',
+ ' '
+ );
+
+ $expectedHomeFolder = array(
+ 'attr:homeDirectory', 'attr:homeDirectory', ''
+ );
+
+ $password = ' such a passw0rd ';
+
+ return array(
+ 'set general base' => array('ldapBase', $inputWithDN, $expectWithDN),
+ 'set user base' => array('ldapBaseUsers', $inputWithDN, $expectWithDN),
+ 'set group base' => array('ldapBaseGroups', $inputWithDN, $expectWithDN),
+
+ 'set search attributes users' => array('ldapAttributesForUserSearch', $inputNames, $expectedNames),
+ 'set search attributes groups' => array('ldapAttributesForGroupSearch', $inputNames, $expectedNames),
+
+ 'set user filter objectclasses' => array('ldapUserFilterObjectclass', $inputNames, $expectedNames),
+ 'set user filter groups' => array('ldapUserFilterGroups', $inputNames, $expectedNames),
+ 'set group filter objectclasses' => array('ldapGroupFilterObjectclass', $inputNames, $expectedNames),
+ 'set group filter groups' => array('ldapGroupFilterGroups', $inputNames, $expectedNames),
+ 'set login filter attributes' => array('ldapLoginFilterAttributes', $inputNames, $expectedNames),
+
+ 'set agent password' => array('ldapAgentPassword', $password, $password),
+
+ 'set home folder, variant 1' => array('homeFolderNamingRule', $inputHomeFolder[0], $expectedHomeFolder[0]),
+ 'set home folder, variant 2' => array('homeFolderNamingRule', $inputHomeFolder[1], $expectedHomeFolder[1]),
+ 'set home folder, empty' => array('homeFolderNamingRule', $inputHomeFolder[2], $expectedHomeFolder[2]),
+
+ // default behaviour, one case is enough, special needs must be tested
+ // individually
+ 'set string value' => array('ldapHost', $inputString, $expectedString),
+ );
+ }
+
+ /**
+ * @dataProvider configurationDataProvider
+ */
+ public function testSetValue($key, $input, $expected) {
+ $configuration = new \OCA\user_ldap\lib\Configuration('t01', false);
+
+ $settingsInput = array(
+ 'ldapBaseUsers' => array(
+ 'cn=someUsers,dc=example,dc=org',
+ ' ',
+ ' cn=moreUsers,dc=example,dc=org '
+ )
+ );
+
+ $configuration->setConfiguration([$key => $input]);
+ $this->assertSame($configuration->$key, $expected);
+ }
+
+}
diff --git a/apps/user_ldap/tests/group_ldap.php b/apps/user_ldap/tests/group_ldap.php
index 7007afd5162..132fbfdf687 100644
--- a/apps/user_ldap/tests/group_ldap.php
+++ b/apps/user_ldap/tests/group_ldap.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Arthur Schiwon <blizzz@owncloud.com>
+ * @author Frédéric Fortier <frederic.fortier@oronospolytechnique.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
*
diff --git a/apps/user_ldap/tests/integration/lib/integrationtestpaging.php b/apps/user_ldap/tests/integration/lib/integrationtestpaging.php
new file mode 100644
index 00000000000..f8d008d065f
--- /dev/null
+++ b/apps/user_ldap/tests/integration/lib/integrationtestpaging.php
@@ -0,0 +1,81 @@
+<?php
+/**
+ * @author Arthur Schiwon <blizzz@owncloud.com>
+ *
+ * @copyright Copyright (c) 2015, ownCloud, Inc.
+ * @license AGPL-3.0
+ *
+ * This code is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License, version 3,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License, version 3,
+ * along with this program. If not, see <http://www.gnu.org/licenses/>
+ *
+ */
+
+namespace OCA\user_ldap\tests\integration\lib;
+
+use OCA\user_ldap\lib\user\Manager as LDAPUserManager;
+use OCA\user_ldap\tests\integration\AbstractIntegrationTest;
+use OCA\User_LDAP\Mapping\UserMapping;
+use OCA\user_ldap\USER_LDAP;
+
+require_once __DIR__ . '/../../../../../lib/base.php';
+
+class IntegrationTestPaging extends AbstractIntegrationTest {
+ /** @var UserMapping */
+ protected $mapping;
+
+ /** @var USER_LDAP */
+ protected $backend;
+
+ /**
+ * prepares the LDAP environment and sets up a test configuration for
+ * the LDAP backend.
+ */
+ public function init() {
+ require(__DIR__ . '/../setup-scripts/createExplicitUsers.php');
+ parent::init();
+
+ $this->backend = new \OCA\user_ldap\USER_LDAP($this->access, \OC::$server->getConfig());
+ }
+
+ /**
+ * tests that paging works properly against a simple example (reading all
+ * of few users in smallest steps)
+ *
+ * @return bool
+ */
+ protected function case1() {
+ $limit = 1;
+ $offset = 0;
+
+ $filter = 'objectclass=inetorgperson';
+ $attributes = ['cn', 'dn'];
+ $users = [];
+ do {
+ $result = $this->access->searchUsers($filter, $attributes, $limit, $offset);
+ foreach($result as $user) {
+ $users[] = $user['cn'];
+ }
+ $offset += $limit;
+ } while ($this->access->hasMoreResults());
+
+ if(count($users) === 2) {
+ return true;
+ }
+
+ return false;
+ }
+}
+
+require_once(__DIR__ . '/../setup-scripts/config.php');
+$test = new IntegrationTestPaging($host, $port, $adn, $apwd, $bdn);
+$test->init();
+$test->run();
diff --git a/apps/user_ldap/tests/integration/lib/integrationtestuserhome.php b/apps/user_ldap/tests/integration/lib/integrationtestuserhome.php
index f34fca81c2d..ef000286109 100644
--- a/apps/user_ldap/tests/integration/lib/integrationtestuserhome.php
+++ b/apps/user_ldap/tests/integration/lib/integrationtestuserhome.php
@@ -1,9 +1,22 @@
<?php
/**
- * Created by PhpStorm.
- * User: blizzz
- * Date: 06.08.15
- * Time: 08:19
+ * @author Arthur Schiwon <blizzz@owncloud.com>
+ *
+ * @copyright Copyright (c) 2015, ownCloud, Inc.
+ * @license AGPL-3.0
+ *
+ * This code is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License, version 3,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License, version 3,
+ * along with this program. If not, see <http://www.gnu.org/licenses/>
+ *
*/
namespace OCA\user_ldap\tests\integration\lib;
diff --git a/apps/user_ldap/tests/integration/lib/user/IntegrationTestUserAvatar.php b/apps/user_ldap/tests/integration/lib/user/IntegrationTestUserAvatar.php
index a03d6b0c0c6..6bb8afc01a2 100644
--- a/apps/user_ldap/tests/integration/lib/user/IntegrationTestUserAvatar.php
+++ b/apps/user_ldap/tests/integration/lib/user/IntegrationTestUserAvatar.php
@@ -1,5 +1,24 @@
<?php
-
+/**
+ * @author Arthur Schiwon <blizzz@owncloud.com>
+ * @author Morris Jobke <hey@morrisjobke.de>
+ *
+ * @copyright Copyright (c) 2015, ownCloud, Inc.
+ * @license AGPL-3.0
+ *
+ * This code is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License, version 3,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License, version 3,
+ * along with this program. If not, see <http://www.gnu.org/licenses/>
+ *
+ */
use OCA\user_ldap\lib\user\User;
use OCA\User_LDAP\Mapping\UserMapping;
use OCA\user_ldap\tests\integration\AbstractIntegrationTest;
diff --git a/apps/user_ldap/tests/integration/setup-scripts/createExplicitGroups.php b/apps/user_ldap/tests/integration/setup-scripts/createExplicitGroups.php
index 68854de5571..8ac35a54528 100644
--- a/apps/user_ldap/tests/integration/setup-scripts/createExplicitGroups.php
+++ b/apps/user_ldap/tests/integration/setup-scripts/createExplicitGroups.php
@@ -1,5 +1,24 @@
<?php
-
+/**
+ * @author Arthur Schiwon <blizzz@owncloud.com>
+ * @author Morris Jobke <hey@morrisjobke.de>
+ *
+ * @copyright Copyright (c) 2015, ownCloud, Inc.
+ * @license AGPL-3.0
+ *
+ * This code is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License, version 3,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License, version 3,
+ * along with this program. If not, see <http://www.gnu.org/licenses/>
+ *
+ */
if(php_sapi_name() !== 'cli') {
print('Only via CLI, please.');
exit(1);
diff --git a/apps/user_ldap/tests/integration/setup-scripts/createExplicitGroupsDifferentOU.php b/apps/user_ldap/tests/integration/setup-scripts/createExplicitGroupsDifferentOU.php
index 361881969cc..e22b72c452c 100644
--- a/apps/user_ldap/tests/integration/setup-scripts/createExplicitGroupsDifferentOU.php
+++ b/apps/user_ldap/tests/integration/setup-scripts/createExplicitGroupsDifferentOU.php
@@ -1,5 +1,24 @@
<?php
-
+/**
+ * @author Arthur Schiwon <blizzz@owncloud.com>
+ * @author Morris Jobke <hey@morrisjobke.de>
+ *
+ * @copyright Copyright (c) 2015, ownCloud, Inc.
+ * @license AGPL-3.0
+ *
+ * This code is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License, version 3,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License, version 3,
+ * along with this program. If not, see <http://www.gnu.org/licenses/>
+ *
+ */
if(php_sapi_name() !== 'cli') {
print('Only via CLI, please.');
exit(1);
diff --git a/apps/user_ldap/tests/integration/setup-scripts/createExplicitUsers.php b/apps/user_ldap/tests/integration/setup-scripts/createExplicitUsers.php
index bb784d60f7b..3e9cb674254 100644
--- a/apps/user_ldap/tests/integration/setup-scripts/createExplicitUsers.php
+++ b/apps/user_ldap/tests/integration/setup-scripts/createExplicitUsers.php
@@ -1,5 +1,24 @@
<?php
-
+/**
+ * @author Arthur Schiwon <blizzz@owncloud.com>
+ * @author Morris Jobke <hey@morrisjobke.de>
+ *
+ * @copyright Copyright (c) 2015, ownCloud, Inc.
+ * @license AGPL-3.0
+ *
+ * This code is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License, version 3,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License, version 3,
+ * along with this program. If not, see <http://www.gnu.org/licenses/>
+ *
+ */
if(php_sapi_name() !== 'cli') {
print('Only via CLI, please.');
exit(1);
diff --git a/apps/user_ldap/tests/wizard.php b/apps/user_ldap/tests/wizard.php
index 525364390bc..7b046187831 100644
--- a/apps/user_ldap/tests/wizard.php
+++ b/apps/user_ldap/tests/wizard.php
@@ -3,6 +3,7 @@
* @author Arthur Schiwon <blizzz@owncloud.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Viktor Szépe <viktor@szepe.net>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/user_ldap/user_ldap.php b/apps/user_ldap/user_ldap.php
index 7304088ba95..59c61524c9b 100644
--- a/apps/user_ldap/user_ldap.php
+++ b/apps/user_ldap/user_ldap.php
@@ -1,11 +1,10 @@
<?php
/**
- * @author Andreas Fischer <bantu@owncloud.com>
* @author Arthur Schiwon <blizzz@owncloud.com>
* @author Bart Visscher <bartv@thisnet.nl>
- * @author Christopher Schäpers <kondou@ts.unde.re>
* @author Dominik Schmidt <dev@dominik-schmidt.de>
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
+ * @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
diff --git a/apps/user_ldap/user_proxy.php b/apps/user_ldap/user_proxy.php
index 1491be3f394..2582355e4a3 100644
--- a/apps/user_ldap/user_proxy.php
+++ b/apps/user_ldap/user_proxy.php
@@ -2,6 +2,7 @@
/**
* @author Arthur Schiwon <blizzz@owncloud.com>
* @author Christopher Schäpers <kondou@ts.unde.re>
+ * @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Thomas Müller <thomas.mueller@tmit.eu>