summaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
Diffstat (limited to 'apps')
-rw-r--r--apps/encryption/appinfo/application.php3
-rw-r--r--apps/encryption/appinfo/register_command.php22
-rw-r--r--apps/encryption/appinfo/routes.php2
-rw-r--r--apps/encryption/command/migratekeys.php22
-rw-r--r--apps/encryption/controller/recoverycontroller.php2
-rw-r--r--apps/encryption/controller/settingscontroller.php2
-rw-r--r--apps/encryption/controller/statuscontroller.php2
-rw-r--r--apps/encryption/hooks/contracts/ihook.php2
-rw-r--r--apps/encryption/l10n/et_EE.js1
-rw-r--r--apps/encryption/l10n/et_EE.json1
-rw-r--r--apps/encryption/lib/crypto/crypt.php2
-rw-r--r--apps/encryption/lib/crypto/encryption.php5
-rw-r--r--apps/encryption/lib/hookmanager.php2
-rw-r--r--apps/encryption/lib/migration.php25
-rw-r--r--apps/encryption/lib/recovery.php2
-rw-r--r--apps/encryption/lib/session.php2
-rw-r--r--apps/encryption/lib/users/setup.php2
-rw-r--r--apps/encryption/lib/util.php2
-rw-r--r--apps/encryption/tests/controller/RecoveryControllerTest.php16
-rw-r--r--apps/encryption/tests/controller/SettingsControllerTest.php2
-rw-r--r--apps/encryption/tests/hooks/UserHooksTest.php17
-rw-r--r--apps/encryption/tests/lib/HookManagerTest.php3
-rw-r--r--apps/encryption/tests/lib/KeyManagerTest.php2
-rw-r--r--apps/encryption/tests/lib/MigrationTest.php28
-rw-r--r--apps/encryption/tests/lib/RecoveryTest.php4
-rw-r--r--apps/encryption/tests/lib/UtilTest.php3
-rw-r--r--apps/encryption/tests/lib/crypto/cryptTest.php2
-rw-r--r--apps/encryption/tests/lib/crypto/encryptionTest.php3
-rw-r--r--apps/encryption/tests/lib/users/SetupTest.php2
-rw-r--r--apps/files/ajax/delete.php2
-rw-r--r--apps/files/ajax/getstoragestats.php1
-rw-r--r--apps/files/ajax/move.php1
-rw-r--r--apps/files/ajax/newfile.php1
-rw-r--r--apps/files/ajax/newfolder.php1
-rw-r--r--apps/files/ajax/rename.php1
-rw-r--r--apps/files/ajax/upload.php1
-rw-r--r--apps/files/appinfo/app.php1
-rw-r--r--apps/files/appinfo/remote.php2
-rw-r--r--apps/files/appinfo/routes.php1
-rw-r--r--apps/files/download.php1
-rw-r--r--apps/files/index.php1
-rw-r--r--apps/files/js/filelist.js8
-rw-r--r--apps/files/l10n/ast.js4
-rw-r--r--apps/files/l10n/ast.json4
-rw-r--r--apps/files/l10n/cs_CZ.js4
-rw-r--r--apps/files/l10n/cs_CZ.json4
-rw-r--r--apps/files/l10n/da.js1
-rw-r--r--apps/files/l10n/da.json1
-rw-r--r--apps/files/l10n/de.js1
-rw-r--r--apps/files/l10n/de.json1
-rw-r--r--apps/files/l10n/de_DE.js1
-rw-r--r--apps/files/l10n/de_DE.json1
-rw-r--r--apps/files/l10n/el.js2
-rw-r--r--apps/files/l10n/el.json2
-rw-r--r--apps/files/l10n/es.js1
-rw-r--r--apps/files/l10n/es.json1
-rw-r--r--apps/files/l10n/et_EE.js3
-rw-r--r--apps/files/l10n/et_EE.json3
-rw-r--r--apps/files/l10n/fi_FI.js1
-rw-r--r--apps/files/l10n/fi_FI.json1
-rw-r--r--apps/files/l10n/gl.js1
-rw-r--r--apps/files/l10n/gl.json1
-rw-r--r--apps/files/l10n/it.js2
-rw-r--r--apps/files/l10n/it.json2
-rw-r--r--apps/files/l10n/ja.js1
-rw-r--r--apps/files/l10n/ja.json1
-rw-r--r--apps/files/l10n/nb_NO.js1
-rw-r--r--apps/files/l10n/nb_NO.json1
-rw-r--r--apps/files/l10n/nl.js1
-rw-r--r--apps/files/l10n/nl.json1
-rw-r--r--apps/files/l10n/ru.js4
-rw-r--r--apps/files/l10n/ru.json4
-rw-r--r--apps/files/l10n/th_TH.js1
-rw-r--r--apps/files/l10n/th_TH.json1
-rw-r--r--apps/files/tests/activitytest.php23
-rw-r--r--apps/files/tests/controller/apicontrollertest.php1
-rw-r--r--apps/files/tests/js/filelistSpec.js11
-rw-r--r--apps/files/tests/service/tagservice.php1
-rw-r--r--apps/files_external/ajax/applicable.php1
-rw-r--r--apps/files_external/ajax/dropbox.php1
-rw-r--r--apps/files_external/appinfo/app.php1
-rw-r--r--apps/files_external/appinfo/routes.php1
-rw-r--r--apps/files_external/l10n/cs_CZ.js5
-rw-r--r--apps/files_external/l10n/cs_CZ.json5
-rw-r--r--apps/files_external/l10n/et_EE.js5
-rw-r--r--apps/files_external/l10n/et_EE.json5
-rw-r--r--apps/files_external/l10n/ja.js1
-rw-r--r--apps/files_external/l10n/ja.json1
-rw-r--r--apps/files_external/lib/config.php4
-rw-r--r--apps/files_external/lib/google.php1
-rw-r--r--apps/files_external/lib/sftp_key.php1
-rw-r--r--apps/files_external/lib/smb_oc.php1
-rw-r--r--apps/files_external/list.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.php2
-rw-r--r--apps/files_external/settings.php1
-rw-r--r--apps/files_external/tests/backends/sftp.php1
-rw-r--r--apps/files_external/tests/config.php1
-rw-r--r--apps/files_sharing/ajax/list.php2
-rw-r--r--apps/files_sharing/ajax/publicpreview.php12
-rw-r--r--apps/files_sharing/ajax/shareinfo.php1
-rw-r--r--apps/files_sharing/api/local.php9
-rw-r--r--apps/files_sharing/appinfo/app.php2
-rw-r--r--apps/files_sharing/appinfo/application.php22
-rw-r--r--apps/files_sharing/appinfo/routes.php2
-rw-r--r--apps/files_sharing/appinfo/update.php1
-rw-r--r--apps/files_sharing/l10n/cs_CZ.js10
-rw-r--r--apps/files_sharing/l10n/cs_CZ.json10
-rw-r--r--apps/files_sharing/l10n/da.js5
-rw-r--r--apps/files_sharing/l10n/da.json5
-rw-r--r--apps/files_sharing/l10n/et_EE.js11
-rw-r--r--apps/files_sharing/l10n/et_EE.json11
-rw-r--r--apps/files_sharing/l10n/nb_NO.js9
-rw-r--r--apps/files_sharing/l10n/nb_NO.json9
-rw-r--r--apps/files_sharing/l10n/th_TH.js6
-rw-r--r--apps/files_sharing/l10n/th_TH.json6
-rw-r--r--apps/files_sharing/lib/cache.php4
-rw-r--r--apps/files_sharing/lib/controllers/externalsharescontroller.php1
-rw-r--r--apps/files_sharing/lib/external/scanner.php2
-rw-r--r--apps/files_sharing/lib/helper.php4
-rw-r--r--apps/files_sharing/lib/hooks.php1
-rw-r--r--apps/files_sharing/lib/mountprovider.php22
-rw-r--r--apps/files_sharing/lib/propagation/changewatcher.php37
-rw-r--r--apps/files_sharing/lib/propagation/propagationmanager.php27
-rw-r--r--apps/files_sharing/lib/propagation/recipientpropagator.php53
-rw-r--r--apps/files_sharing/lib/share/file.php2
-rw-r--r--apps/files_sharing/lib/share/folder.php6
-rw-r--r--apps/files_sharing/lib/sharedmount.php4
-rw-r--r--apps/files_sharing/lib/sharedstorage.php1
-rw-r--r--apps/files_sharing/lib/updater.php6
-rw-r--r--apps/files_sharing/list.php1
-rw-r--r--apps/files_sharing/publicwebdav.php5
-rw-r--r--apps/files_sharing/settings-personal.php1
-rw-r--r--apps/files_sharing/tests/controller/sharecontroller.php1
-rw-r--r--apps/files_sharing/tests/deleteorphanedsharesjobtest.php1
-rw-r--r--apps/files_sharing/tests/etagpropagation.php14
-rw-r--r--apps/files_sharing/tests/middleware/sharingcheckmiddleware.php1
-rw-r--r--apps/files_sharing/tests/permissions.php1
-rw-r--r--apps/files_sharing/tests/sharedmount.php7
-rw-r--r--apps/files_sharing/tests/sizepropagation.php3
-rw-r--r--apps/files_sharing/tests/unsharechildren.php2
-rw-r--r--apps/files_sharing/tests/updater.php45
-rw-r--r--apps/files_sharing/tests/watcher.php1
-rw-r--r--apps/files_trashbin/ajax/delete.php3
-rw-r--r--apps/files_trashbin/ajax/list.php1
-rw-r--r--apps/files_trashbin/ajax/preview.php7
-rw-r--r--apps/files_trashbin/ajax/undelete.php3
-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/expire.php3
-rw-r--r--apps/files_trashbin/l10n/et_EE.js1
-rw-r--r--apps/files_trashbin/l10n/et_EE.json1
-rw-r--r--apps/files_trashbin/lib/helper.php1
-rw-r--r--apps/files_trashbin/lib/trashbin.php14
-rw-r--r--apps/files_trashbin/list.php1
-rw-r--r--apps/files_trashbin/tests/trashbin.php1
-rw-r--r--apps/files_versions/ajax/preview.php7
-rw-r--r--apps/files_versions/ajax/rollbackVersion.php1
-rw-r--r--apps/files_versions/appinfo/app.php1
-rw-r--r--apps/files_versions/appinfo/routes.php1
-rw-r--r--apps/files_versions/appinfo/update.php1
-rw-r--r--apps/files_versions/command/expire.php23
-rw-r--r--apps/files_versions/download.php1
-rw-r--r--apps/files_versions/lib/storage.php1
-rw-r--r--apps/files_versions/tests/versions.php2
-rw-r--r--apps/provisioning_api/appinfo/app.php1
-rw-r--r--apps/provisioning_api/appinfo/routes.php1
-rw-r--r--apps/provisioning_api/lib/apps.php1
-rw-r--r--apps/provisioning_api/lib/groups.php3
-rw-r--r--apps/provisioning_api/lib/users.php9
-rw-r--r--apps/provisioning_api/tests/appstest.php1
-rw-r--r--apps/provisioning_api/tests/groupstest.php1
-rw-r--r--apps/provisioning_api/tests/userstest.php3
-rw-r--r--apps/user_ldap/ajax/getNewServerConfigPrefix.php1
-rw-r--r--apps/user_ldap/appinfo/install.php1
-rw-r--r--apps/user_ldap/group_ldap.php4
-rw-r--r--apps/user_ldap/l10n/cs_CZ.js2
-rw-r--r--apps/user_ldap/l10n/cs_CZ.json2
-rw-r--r--apps/user_ldap/l10n/da.js1
-rw-r--r--apps/user_ldap/l10n/da.json1
-rw-r--r--apps/user_ldap/l10n/de.js1
-rw-r--r--apps/user_ldap/l10n/de.json1
-rw-r--r--apps/user_ldap/l10n/de_DE.js1
-rw-r--r--apps/user_ldap/l10n/de_DE.json1
-rw-r--r--apps/user_ldap/l10n/el.js2
-rw-r--r--apps/user_ldap/l10n/el.json2
-rw-r--r--apps/user_ldap/l10n/en_GB.js1
-rw-r--r--apps/user_ldap/l10n/en_GB.json1
-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/fr.js3
-rw-r--r--apps/user_ldap/l10n/fr.json3
-rw-r--r--apps/user_ldap/l10n/gl.js2
-rw-r--r--apps/user_ldap/l10n/gl.json2
-rw-r--r--apps/user_ldap/l10n/it.js2
-rw-r--r--apps/user_ldap/l10n/it.json2
-rw-r--r--apps/user_ldap/l10n/ja.js2
-rw-r--r--apps/user_ldap/l10n/ja.json2
-rw-r--r--apps/user_ldap/l10n/nb_NO.js2
-rw-r--r--apps/user_ldap/l10n/nb_NO.json2
-rw-r--r--apps/user_ldap/l10n/nl.js2
-rw-r--r--apps/user_ldap/l10n/nl.json2
-rw-r--r--apps/user_ldap/l10n/pl.js1
-rw-r--r--apps/user_ldap/l10n/pl.json1
-rw-r--r--apps/user_ldap/l10n/pt_BR.js1
-rw-r--r--apps/user_ldap/l10n/pt_BR.json1
-rw-r--r--apps/user_ldap/l10n/ru.js2
-rw-r--r--apps/user_ldap/l10n/ru.json2
-rw-r--r--apps/user_ldap/l10n/sk_SK.js1
-rw-r--r--apps/user_ldap/l10n/sk_SK.json1
-rw-r--r--apps/user_ldap/l10n/sr.js1
-rw-r--r--apps/user_ldap/l10n/sr.json1
-rw-r--r--apps/user_ldap/l10n/th_TH.js2
-rw-r--r--apps/user_ldap/l10n/th_TH.json2
-rw-r--r--apps/user_ldap/l10n/tr.js1
-rw-r--r--apps/user_ldap/l10n/tr.json1
-rw-r--r--apps/user_ldap/lib/access.php27
-rw-r--r--apps/user_ldap/lib/connection.php1
-rw-r--r--apps/user_ldap/lib/proxy.php1
-rw-r--r--apps/user_ldap/lib/user/manager.php1
-rw-r--r--apps/user_ldap/settings.php1
-rwxr-xr-xapps/user_ldap/tests/.htaccess14
-rw-r--r--apps/user_ldap/tests/group_ldap.php4
-rw-r--r--apps/user_ldap/tests/integration/lib/IntegrationTestAccessGroupsMatchFilter.php158
-rw-r--r--apps/user_ldap/tests/integration/readme.md60
-rwxr-xr-xapps/user_ldap/tests/integration/run-test.sh17
-rw-r--r--apps/user_ldap/tests/integration/setup-scripts/createExplicitGroups.php52
-rw-r--r--apps/user_ldap/tests/integration/setup-scripts/createExplicitUsers.php54
-rw-r--r--apps/user_ldap/tests/user_ldap.php1
-rw-r--r--apps/user_ldap/user_ldap.php12
-rw-r--r--apps/user_ldap/user_proxy.php13
-rw-r--r--apps/user_webdavauth/appinfo/app.php1
-rw-r--r--apps/user_webdavauth/user_webdavauth.php10
234 files changed, 1066 insertions, 254 deletions
diff --git a/apps/encryption/appinfo/application.php b/apps/encryption/appinfo/application.php
index cb9c33cfe58..d4804394c5f 100644
--- a/apps/encryption/appinfo/application.php
+++ b/apps/encryption/appinfo/application.php
@@ -2,8 +2,9 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
* @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/appinfo/register_command.php b/apps/encryption/appinfo/register_command.php
index 8a9df8ea3eb..f727fdf9d70 100644
--- a/apps/encryption/appinfo/register_command.php
+++ b/apps/encryption/appinfo/register_command.php
@@ -1,9 +1,23 @@
<?php
/**
- * Copyright (c) 2015 Thomas Müller <deepdiver@owncloud.com>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
+ * @author Björn Schießle <schiessle@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\Encryption\Command\MigrateKeys;
diff --git a/apps/encryption/appinfo/routes.php b/apps/encryption/appinfo/routes.php
index 8fa163d0751..a73cc578437 100644
--- a/apps/encryption/appinfo/routes.php
+++ b/apps/encryption/appinfo/routes.php
@@ -2,6 +2,8 @@
/**
* @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 b814d697a2c..e6e5e7b70b0 100644
--- a/apps/encryption/command/migratekeys.php
+++ b/apps/encryption/command/migratekeys.php
@@ -1,9 +1,23 @@
<?php
/**
- * Copyright (c) 2015 Thomas Müller <thomas.mueller@tmit.eu>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
+ * @author Björn Schießle <schiessle@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/>
+ *
*/
namespace OCA\Encryption\Command;
diff --git a/apps/encryption/controller/recoverycontroller.php b/apps/encryption/controller/recoverycontroller.php
index f1a2651443e..a92c49f539f 100644
--- a/apps/encryption/controller/recoverycontroller.php
+++ b/apps/encryption/controller/recoverycontroller.php
@@ -3,6 +3,8 @@
* @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 7fa3f469a14..641c97e1d6e 100644
--- a/apps/encryption/controller/settingscontroller.php
+++ b/apps/encryption/controller/settingscontroller.php
@@ -1,6 +1,8 @@
<?php
/**
* @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 cdc4b2e92e0..f330f726c0b 100644
--- a/apps/encryption/controller/statuscontroller.php
+++ b/apps/encryption/controller/statuscontroller.php
@@ -1,6 +1,8 @@
<?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.
* @license AGPL-3.0
diff --git a/apps/encryption/hooks/contracts/ihook.php b/apps/encryption/hooks/contracts/ihook.php
index d4f20700d78..53217f8ac06 100644
--- a/apps/encryption/hooks/contracts/ihook.php
+++ b/apps/encryption/hooks/contracts/ihook.php
@@ -1,6 +1,8 @@
<?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/et_EE.js b/apps/encryption/l10n/et_EE.js
index dfd1cdfcb69..0c33015cdf1 100644
--- a/apps/encryption/l10n/et_EE.js
+++ b/apps/encryption/l10n/et_EE.js
@@ -8,6 +8,7 @@ OC.L10N.register(
"Could not enable recovery key. Please check your recovery key password!" : "Ei suutnud lubada taastevõtit. Palun kontrolli oma taastevõtme parooli!",
"Recovery key successfully disabled" : "Taastevõtme keelamine õnnestus",
"Could not disable recovery key. Please check your recovery key password!" : "Ei suuda keelata taastevõtit. Palun kontrolli oma taastevõtme parooli!",
+ "Missing parameters" : "Paramttrid puuduvad",
"Please provide the old recovery password" : "Palun sisesta vana taastevõtme parool",
"Please provide a new recovery password" : "Palun sisesta uus taastevõtme parool",
"Please repeat the new recovery password" : "Palun korda uut taastevõtme parooli",
diff --git a/apps/encryption/l10n/et_EE.json b/apps/encryption/l10n/et_EE.json
index e5a4bd72482..1f8f74dc7fe 100644
--- a/apps/encryption/l10n/et_EE.json
+++ b/apps/encryption/l10n/et_EE.json
@@ -6,6 +6,7 @@
"Could not enable recovery key. Please check your recovery key password!" : "Ei suutnud lubada taastevõtit. Palun kontrolli oma taastevõtme parooli!",
"Recovery key successfully disabled" : "Taastevõtme keelamine õnnestus",
"Could not disable recovery key. Please check your recovery key password!" : "Ei suuda keelata taastevõtit. Palun kontrolli oma taastevõtme parooli!",
+ "Missing parameters" : "Paramttrid puuduvad",
"Please provide the old recovery password" : "Palun sisesta vana taastevõtme parool",
"Please provide a new recovery password" : "Palun sisesta uus taastevõtme parool",
"Please repeat the new recovery password" : "Palun korda uut taastevõtme parooli",
diff --git a/apps/encryption/lib/crypto/crypt.php b/apps/encryption/lib/crypto/crypt.php
index 65af3a93d0a..f3cf38fb96c 100644
--- a/apps/encryption/lib/crypto/crypt.php
+++ b/apps/encryption/lib/crypto/crypt.php
@@ -2,6 +2,8 @@
/**
* @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 fe1d955524a..1fa0581506b 100644
--- a/apps/encryption/lib/crypto/encryption.php
+++ b/apps/encryption/lib/crypto/encryption.php
@@ -2,8 +2,11 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Clark Tomlinson <fallen013@gmail.com>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
+ * @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.
* @license AGPL-3.0
diff --git a/apps/encryption/lib/hookmanager.php b/apps/encryption/lib/hookmanager.php
index 4b885cd7f64..0fea1b0f9f2 100644
--- a/apps/encryption/lib/hookmanager.php
+++ b/apps/encryption/lib/hookmanager.php
@@ -3,6 +3,8 @@
* @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 3acf77e4c44..98fc5be777a 100644
--- a/apps/encryption/lib/migration.php
+++ b/apps/encryption/lib/migration.php
@@ -1,23 +1,22 @@
<?php
/**
- * ownCloud
+ * @author Björn Schießle <schiessle@owncloud.com>
+ * @author Morris Jobke <hey@morrisjobke.de>
*
- * @copyright (C) 2015 ownCloud, Inc.
+ * @copyright Copyright (c) 2015, ownCloud, Inc.
+ * @license AGPL-3.0
*
- * @author Bjoern Schiessle <schiessle@owncloud.com>
+ * 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 library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or any later version.
- *
- * This library is distributed in the hope that it will be useful,
+ * 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.
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
*
- * You should have received a copy of the GNU Affero General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ * 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/>
*
*/
diff --git a/apps/encryption/lib/recovery.php b/apps/encryption/lib/recovery.php
index 61a659e484e..e31a14fba63 100644
--- a/apps/encryption/lib/recovery.php
+++ b/apps/encryption/lib/recovery.php
@@ -2,6 +2,8 @@
/**
* @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 9709518a27d..c3759c3fc56 100644
--- a/apps/encryption/lib/session.php
+++ b/apps/encryption/lib/session.php
@@ -3,6 +3,8 @@
* @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 fd8261cc637..f224826ed52 100644
--- a/apps/encryption/lib/users/setup.php
+++ b/apps/encryption/lib/users/setup.php
@@ -3,6 +3,8 @@
* @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/util.php b/apps/encryption/lib/util.php
index afed96aaa38..fbedc5d6077 100644
--- a/apps/encryption/lib/util.php
+++ b/apps/encryption/lib/util.php
@@ -2,6 +2,8 @@
/**
* @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 89b541e7bd6..d122b992ef0 100644
--- a/apps/encryption/tests/controller/RecoveryControllerTest.php
+++ b/apps/encryption/tests/controller/RecoveryControllerTest.php
@@ -1,9 +1,23 @@
<?php
/**
- * @author Clark Tomlinson <clark@owncloud.com>
+ * @author Clark Tomlinson <fallen013@gmail.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/>
+ *
*/
diff --git a/apps/encryption/tests/controller/SettingsControllerTest.php b/apps/encryption/tests/controller/SettingsControllerTest.php
index 478bf8213b5..ed8135b9c4d 100644
--- a/apps/encryption/tests/controller/SettingsControllerTest.php
+++ b/apps/encryption/tests/controller/SettingsControllerTest.php
@@ -1,6 +1,8 @@
<?php
/**
* @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 b0cc9cc924a..921c924d015 100644
--- a/apps/encryption/tests/hooks/UserHooksTest.php
+++ b/apps/encryption/tests/hooks/UserHooksTest.php
@@ -1,9 +1,24 @@
<?php
/**
- * @author Clark Tomlinson <clark@owncloud.com>
+ * @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
+ *
+ * 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/>
+ *
*/
diff --git a/apps/encryption/tests/lib/HookManagerTest.php b/apps/encryption/tests/lib/HookManagerTest.php
index fb74c05546b..b1d511cb89b 100644
--- a/apps/encryption/tests/lib/HookManagerTest.php
+++ b/apps/encryption/tests/lib/HookManagerTest.php
@@ -1,6 +1,9 @@
<?php
/**
* @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 eb43d5a843f..2561b29462f 100644
--- a/apps/encryption/tests/lib/KeyManagerTest.php
+++ b/apps/encryption/tests/lib/KeyManagerTest.php
@@ -2,6 +2,8 @@
/**
* @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 c876cea05c9..c07a4539e98 100644
--- a/apps/encryption/tests/lib/MigrationTest.php
+++ b/apps/encryption/tests/lib/MigrationTest.php
@@ -1,23 +1,23 @@
<?php
- /**
- * ownCloud
+/**
+ * @author Björn Schießle <schiessle@owncloud.com>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
+ * @author Morris Jobke <hey@morrisjobke.de>
*
- * @copyright (C) 2015 ownCloud, Inc.
+ * @copyright Copyright (c) 2015, ownCloud, Inc.
+ * @license AGPL-3.0
*
- * @author Bjoern Schiessle <schiessle@owncloud.com>
+ * 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 library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or any later version.
- *
- * This library is distributed in the hope that it will be useful,
+ * 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.
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
*
- * You should have received a copy of the GNU Affero General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ * 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/>
*
*/
diff --git a/apps/encryption/tests/lib/RecoveryTest.php b/apps/encryption/tests/lib/RecoveryTest.php
index 0b85192690b..8d5d31af0b8 100644
--- a/apps/encryption/tests/lib/RecoveryTest.php
+++ b/apps/encryption/tests/lib/RecoveryTest.php
@@ -1,6 +1,10 @@
<?php
/**
+ * @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/UtilTest.php b/apps/encryption/tests/lib/UtilTest.php
index 18cf0386793..e75e8ea36b4 100644
--- a/apps/encryption/tests/lib/UtilTest.php
+++ b/apps/encryption/tests/lib/UtilTest.php
@@ -1,6 +1,9 @@
<?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/encryption/tests/lib/crypto/cryptTest.php b/apps/encryption/tests/lib/crypto/cryptTest.php
index f850725108b..14ed1513e1e 100644
--- a/apps/encryption/tests/lib/crypto/cryptTest.php
+++ b/apps/encryption/tests/lib/crypto/cryptTest.php
@@ -1,6 +1,8 @@
<?php
/**
* @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 c6c0d57eff5..7b0b29fe197 100644
--- a/apps/encryption/tests/lib/crypto/encryptionTest.php
+++ b/apps/encryption/tests/lib/crypto/encryptionTest.php
@@ -1,6 +1,9 @@
<?php
/**
* @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 354de26253e..e6936c5c12e 100644
--- a/apps/encryption/tests/lib/users/SetupTest.php
+++ b/apps/encryption/tests/lib/users/SetupTest.php
@@ -1,6 +1,8 @@
<?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/files/ajax/delete.php b/apps/files/ajax/delete.php
index dcd05d8da9e..2d02869df14 100644
--- a/apps/files/ajax/delete.php
+++ b/apps/files/ajax/delete.php
@@ -1,13 +1,11 @@
<?php
/**
* @author Arthur Schiwon <blizzz@owncloud.com>
- * @author Björn Schießle <schiessle@owncloud.com>
* @author Frank Karlitschek <frank@owncloud.org>
* @author Jakob Sack <mail@jakobsack.de>
* @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>
* @author Vincent Petry <pvince81@owncloud.com>
diff --git a/apps/files/ajax/getstoragestats.php b/apps/files/ajax/getstoragestats.php
index e56e425c1c6..10f8704dded 100644
--- a/apps/files/ajax/getstoragestats.php
+++ b/apps/files/ajax/getstoragestats.php
@@ -2,7 +2,6 @@
/**
* @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>
* @author Vincent Petry <pvince81@owncloud.com>
diff --git a/apps/files/ajax/move.php b/apps/files/ajax/move.php
index ab02f993f82..0961636a116 100644
--- a/apps/files/ajax/move.php
+++ b/apps/files/ajax/move.php
@@ -5,7 +5,6 @@
* @author Georg Ehrke <georg@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 Vincent Petry <pvince81@owncloud.com>
*
diff --git a/apps/files/ajax/newfile.php b/apps/files/ajax/newfile.php
index 6dd3e3e7a80..be09b288d4b 100644
--- a/apps/files/ajax/newfile.php
+++ b/apps/files/ajax/newfile.php
@@ -4,7 +4,6 @@
* @author Georg Ehrke <georg@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>
* @author Vincent Petry <pvince81@owncloud.com>
diff --git a/apps/files/ajax/newfolder.php b/apps/files/ajax/newfolder.php
index b15457e0173..a2897dd437a 100644
--- a/apps/files/ajax/newfolder.php
+++ b/apps/files/ajax/newfolder.php
@@ -6,7 +6,6 @@
* @author Georg Ehrke <georg@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>
* @author Vincent Petry <pvince81@owncloud.com>
diff --git a/apps/files/ajax/rename.php b/apps/files/ajax/rename.php
index edb6dd7862d..a24a57b1046 100644
--- a/apps/files/ajax/rename.php
+++ b/apps/files/ajax/rename.php
@@ -7,6 +7,7 @@
* @author Lukas Reschke <lukas@owncloud.com>
* @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
diff --git a/apps/files/ajax/upload.php b/apps/files/ajax/upload.php
index debdf26ffdf..4bc2ce8bdf3 100644
--- a/apps/files/ajax/upload.php
+++ b/apps/files/ajax/upload.php
@@ -9,7 +9,6 @@
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Luke Policinski <lpolicinski@gmail.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Roman Geber <rgeber@owncloudapps.com>
* @author TheSFReader <TheSFReader@gmail.com>
diff --git a/apps/files/appinfo/app.php b/apps/files/appinfo/app.php
index c483ad31ec5..40b194ab882 100644
--- a/apps/files/appinfo/app.php
+++ b/apps/files/appinfo/app.php
@@ -3,7 +3,6 @@
* @author Jakob Sack <mail@jakobsack.de>
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
- * @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/appinfo/remote.php b/apps/files/appinfo/remote.php
index 325773a81ea..fff3332ef49 100644
--- a/apps/files/appinfo/remote.php
+++ b/apps/files/appinfo/remote.php
@@ -50,7 +50,7 @@ $server->addPlugin(new \Sabre\DAV\Auth\Plugin($authBackend, $defaults->getName()
// FIXME: The following line is a workaround for legacy components relying on being able to send a GET to /
$server->addPlugin(new \OC\Connector\Sabre\DummyGetResponsePlugin());
$server->addPlugin(new \OC\Connector\Sabre\FilesPlugin($objectTree));
-$server->addPlugin(new \OC\Connector\Sabre\MaintenancePlugin());
+$server->addPlugin(new \OC\Connector\Sabre\MaintenancePlugin(\OC::$server->getConfig()));
$server->addPlugin(new \OC\Connector\Sabre\ExceptionLoggerPlugin('webdav', \OC::$server->getLogger()));
// wait with registering these until auth is handled and the filesystem is setup
diff --git a/apps/files/appinfo/routes.php b/apps/files/appinfo/routes.php
index 08c9041062d..ceeb3cdcc8a 100644
--- a/apps/files/appinfo/routes.php
+++ b/apps/files/appinfo/routes.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Bart Visscher <bartv@thisnet.nl>
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Tobias Kaminsky <tobias@kaminsky.me>
diff --git a/apps/files/download.php b/apps/files/download.php
index c85051e0f4e..b0628e394be 100644
--- a/apps/files/download.php
+++ b/apps/files/download.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Andreas Fischer <bantu@owncloud.com>
* @author Felix Moeller <mail@felixmoeller.de>
* @author Frank Karlitschek <frank@owncloud.org>
* @author Jakob Sack <mail@jakobsack.de>
diff --git a/apps/files/index.php b/apps/files/index.php
index ee12df5f075..4f103f975cb 100644
--- a/apps/files/index.php
+++ b/apps/files/index.php
@@ -8,7 +8,6 @@
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
- * @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Roman Geber <rgeber@owncloudapps.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Vincent Petry <pvince81@owncloud.com>
diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js
index 5fc444e6121..417c4b9fe99 100644
--- a/apps/files/js/filelist.js
+++ b/apps/files/js/filelist.js
@@ -1131,6 +1131,14 @@
return false;
}
+ // Did share service die or something else fail?
+ if (result.status === 500) {
+ // Go home
+ this.changeDirectory('/');
+ OC.Notification.show(t('files', 'This directory is unavailable, please check the logs or contact the administrator'));
+ return false;
+ }
+
if (result.status === 404) {
// go back home
this.changeDirectory('/');
diff --git a/apps/files/l10n/ast.js b/apps/files/l10n/ast.js
index 2b2359f9e98..297ebd60484 100644
--- a/apps/files/l10n/ast.js
+++ b/apps/files/l10n/ast.js
@@ -42,8 +42,12 @@ OC.L10N.register(
"Delete" : "Desaniciar",
"Disconnect storage" : "Desconeutar almacenamientu",
"Unshare" : "Dexar de compartir",
+ "No permission to delete" : "Ensin permisos pa desaniciar",
"Download" : "Descargar",
+ "Select" : "Esbillar",
"Pending" : "Pendiente",
+ "Unable to determine date" : "Imposible determinar la fecha",
+ "This operation is forbidden" : "La operación ta prohibida",
"Error moving file." : "Fallu moviendo'l ficheru.",
"Error moving file" : "Fallu moviendo'l ficheru",
"Error" : "Fallu",
diff --git a/apps/files/l10n/ast.json b/apps/files/l10n/ast.json
index 23f78d08323..b242d62a521 100644
--- a/apps/files/l10n/ast.json
+++ b/apps/files/l10n/ast.json
@@ -40,8 +40,12 @@
"Delete" : "Desaniciar",
"Disconnect storage" : "Desconeutar almacenamientu",
"Unshare" : "Dexar de compartir",
+ "No permission to delete" : "Ensin permisos pa desaniciar",
"Download" : "Descargar",
+ "Select" : "Esbillar",
"Pending" : "Pendiente",
+ "Unable to determine date" : "Imposible determinar la fecha",
+ "This operation is forbidden" : "La operación ta prohibida",
"Error moving file." : "Fallu moviendo'l ficheru.",
"Error moving file" : "Fallu moviendo'l ficheru",
"Error" : "Fallu",
diff --git a/apps/files/l10n/cs_CZ.js b/apps/files/l10n/cs_CZ.js
index 9c0d27d9f44..39f0a9e6958 100644
--- a/apps/files/l10n/cs_CZ.js
+++ b/apps/files/l10n/cs_CZ.js
@@ -47,6 +47,8 @@ OC.L10N.register(
"Select" : "Vybrat",
"Pending" : "Nevyřízené",
"Unable to determine date" : "Nelze určit datum",
+ "This operation is forbidden" : "Tato operace je zakázána",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Tento adresář není dostupný, zkontrolujte prosím logy nebo kontaktujte svého správce systému",
"Error moving file." : "Chyba při přesunu souboru.",
"Error moving file" : "Chyba při přesunu souboru",
"Error" : "Chyba",
@@ -62,7 +64,9 @@ OC.L10N.register(
"_Uploading %n file_::_Uploading %n files_" : ["Nahrávám %n soubor","Nahrávám %n soubory","Nahrávám %n souborů"],
"\"{name}\" is an invalid file name." : "\"{name}\" je neplatným názvem souboru.",
"File name cannot be empty." : "Název souboru nemůže být prázdný řetězec.",
+ "Storage of {owner} is full, files can not be updated or synced anymore!" : "Úložiště uživatele {owner} je zaplněné, soubory nelze aktualizovat a synchronizovat!",
"Your storage is full, files can not be updated or synced anymore!" : "Vaše úložiště je plné, nelze aktualizovat ani synchronizovat soubory.",
+ "Storage of {owner} is almost full ({usedSpacePercent}%)" : "Úložiště uživatele {owner} je téměř plné ({usedSpacePercent}%)",
"Your storage is almost full ({usedSpacePercent}%)" : "Vaše úložiště je téměř plné ({usedSpacePercent}%)",
"_matches '{filter}'_::_match '{filter}'_" : ["odpovídá '{filter}'","odpovídá '{filter}'","odpovídá '{filter}'"],
"{dirs} and {files}" : "{dirs} a {files}",
diff --git a/apps/files/l10n/cs_CZ.json b/apps/files/l10n/cs_CZ.json
index 663161c5e42..8742662c1da 100644
--- a/apps/files/l10n/cs_CZ.json
+++ b/apps/files/l10n/cs_CZ.json
@@ -45,6 +45,8 @@
"Select" : "Vybrat",
"Pending" : "Nevyřízené",
"Unable to determine date" : "Nelze určit datum",
+ "This operation is forbidden" : "Tato operace je zakázána",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Tento adresář není dostupný, zkontrolujte prosím logy nebo kontaktujte svého správce systému",
"Error moving file." : "Chyba při přesunu souboru.",
"Error moving file" : "Chyba při přesunu souboru",
"Error" : "Chyba",
@@ -60,7 +62,9 @@
"_Uploading %n file_::_Uploading %n files_" : ["Nahrávám %n soubor","Nahrávám %n soubory","Nahrávám %n souborů"],
"\"{name}\" is an invalid file name." : "\"{name}\" je neplatným názvem souboru.",
"File name cannot be empty." : "Název souboru nemůže být prázdný řetězec.",
+ "Storage of {owner} is full, files can not be updated or synced anymore!" : "Úložiště uživatele {owner} je zaplněné, soubory nelze aktualizovat a synchronizovat!",
"Your storage is full, files can not be updated or synced anymore!" : "Vaše úložiště je plné, nelze aktualizovat ani synchronizovat soubory.",
+ "Storage of {owner} is almost full ({usedSpacePercent}%)" : "Úložiště uživatele {owner} je téměř plné ({usedSpacePercent}%)",
"Your storage is almost full ({usedSpacePercent}%)" : "Vaše úložiště je téměř plné ({usedSpacePercent}%)",
"_matches '{filter}'_::_match '{filter}'_" : ["odpovídá '{filter}'","odpovídá '{filter}'","odpovídá '{filter}'"],
"{dirs} and {files}" : "{dirs} a {files}",
diff --git a/apps/files/l10n/da.js b/apps/files/l10n/da.js
index 8235311a5a7..af8367560d5 100644
--- a/apps/files/l10n/da.js
+++ b/apps/files/l10n/da.js
@@ -47,6 +47,7 @@ OC.L10N.register(
"Select" : "Vælg",
"Pending" : "Afventer",
"Unable to determine date" : "Kan ikke fastslå datoen",
+ "This operation is forbidden" : "Denne operation er forbudt",
"Error moving file." : "Fejl ved flytning af fil",
"Error moving file" : "Fejl ved flytning af fil",
"Error" : "Fejl",
diff --git a/apps/files/l10n/da.json b/apps/files/l10n/da.json
index 449408fa9b1..44c2f7aafe1 100644
--- a/apps/files/l10n/da.json
+++ b/apps/files/l10n/da.json
@@ -45,6 +45,7 @@
"Select" : "Vælg",
"Pending" : "Afventer",
"Unable to determine date" : "Kan ikke fastslå datoen",
+ "This operation is forbidden" : "Denne operation er forbudt",
"Error moving file." : "Fejl ved flytning af fil",
"Error moving file" : "Fejl ved flytning af fil",
"Error" : "Fejl",
diff --git a/apps/files/l10n/de.js b/apps/files/l10n/de.js
index 203175890fc..00d88d52918 100644
--- a/apps/files/l10n/de.js
+++ b/apps/files/l10n/de.js
@@ -48,6 +48,7 @@ OC.L10N.register(
"Pending" : "Ausstehend",
"Unable to determine date" : "Datum konnte nicht ermittelt werden",
"This operation is forbidden" : "Diese Operation ist nicht erlaubt",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Dieses Verzeichnis ist nicht verfügbar, bitte überprüfe die Logdateien oder kontaktiere den Administrator",
"Error moving file." : "Fehler beim Verschieben der Datei.",
"Error moving file" : "Fehler beim Verschieben der Datei",
"Error" : "Fehler",
diff --git a/apps/files/l10n/de.json b/apps/files/l10n/de.json
index 51de8020ae4..7d75fb70ead 100644
--- a/apps/files/l10n/de.json
+++ b/apps/files/l10n/de.json
@@ -46,6 +46,7 @@
"Pending" : "Ausstehend",
"Unable to determine date" : "Datum konnte nicht ermittelt werden",
"This operation is forbidden" : "Diese Operation ist nicht erlaubt",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Dieses Verzeichnis ist nicht verfügbar, bitte überprüfe die Logdateien oder kontaktiere den Administrator",
"Error moving file." : "Fehler beim Verschieben der Datei.",
"Error moving file" : "Fehler beim Verschieben der Datei",
"Error" : "Fehler",
diff --git a/apps/files/l10n/de_DE.js b/apps/files/l10n/de_DE.js
index 3ab5051e7ef..69699135b8f 100644
--- a/apps/files/l10n/de_DE.js
+++ b/apps/files/l10n/de_DE.js
@@ -48,6 +48,7 @@ OC.L10N.register(
"Pending" : "Ausstehend",
"Unable to determine date" : "Datum konnte nicht ermittelt werden",
"This operation is forbidden" : "Diese Operation ist nicht erlaubt",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Dieses Verzeichnis ist nicht verfügbar, bitte überprüfen Sie die Logdateien oder kontaktieren Sie den Administrator",
"Error moving file." : "Fehler beim Verschieben der Datei.",
"Error moving file" : "Fehler beim Verschieben der Datei",
"Error" : "Fehler",
diff --git a/apps/files/l10n/de_DE.json b/apps/files/l10n/de_DE.json
index 5d3c3ad4474..2a1e548ec5f 100644
--- a/apps/files/l10n/de_DE.json
+++ b/apps/files/l10n/de_DE.json
@@ -46,6 +46,7 @@
"Pending" : "Ausstehend",
"Unable to determine date" : "Datum konnte nicht ermittelt werden",
"This operation is forbidden" : "Diese Operation ist nicht erlaubt",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Dieses Verzeichnis ist nicht verfügbar, bitte überprüfen Sie die Logdateien oder kontaktieren Sie den Administrator",
"Error moving file." : "Fehler beim Verschieben der Datei.",
"Error moving file" : "Fehler beim Verschieben der Datei",
"Error" : "Fehler",
diff --git a/apps/files/l10n/el.js b/apps/files/l10n/el.js
index 10f7326d928..255f70f29e5 100644
--- a/apps/files/l10n/el.js
+++ b/apps/files/l10n/el.js
@@ -47,6 +47,8 @@ OC.L10N.register(
"Select" : "Επιλογή",
"Pending" : "Εκκρεμεί",
"Unable to determine date" : "Αδυναμία προσδιορισμού ημερομηνίας ",
+ "This operation is forbidden" : "Αυτή η ενέργεια απαγορεύεται",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Ο κατάλογος δεν είναι διαθέσιμος, παρακαλώ ελέγξτε τα αρχεία καταγραφής ή επικοινωνήστε με το διαχειριστή",
"Error moving file." : "Σφάλμα κατά τη μετακίνηση του αρχείου.",
"Error moving file" : "Σφάλμα κατά τη μετακίνηση του αρχείου",
"Error" : "Σφάλμα",
diff --git a/apps/files/l10n/el.json b/apps/files/l10n/el.json
index 8f3d92e53cf..2b72213e533 100644
--- a/apps/files/l10n/el.json
+++ b/apps/files/l10n/el.json
@@ -45,6 +45,8 @@
"Select" : "Επιλογή",
"Pending" : "Εκκρεμεί",
"Unable to determine date" : "Αδυναμία προσδιορισμού ημερομηνίας ",
+ "This operation is forbidden" : "Αυτή η ενέργεια απαγορεύεται",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Ο κατάλογος δεν είναι διαθέσιμος, παρακαλώ ελέγξτε τα αρχεία καταγραφής ή επικοινωνήστε με το διαχειριστή",
"Error moving file." : "Σφάλμα κατά τη μετακίνηση του αρχείου.",
"Error moving file" : "Σφάλμα κατά τη μετακίνηση του αρχείου",
"Error" : "Σφάλμα",
diff --git a/apps/files/l10n/es.js b/apps/files/l10n/es.js
index cb4e16063dc..281c0bba516 100644
--- a/apps/files/l10n/es.js
+++ b/apps/files/l10n/es.js
@@ -48,6 +48,7 @@ OC.L10N.register(
"Pending" : "Pendiente",
"Unable to determine date" : "No se pudo determinar la fecha",
"This operation is forbidden" : "Esta operación está prohibida",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Esta carpeta no está disponible, por favor verifique los registros o contáctese con el administrador",
"Error moving file." : "Error al mover el archivo.",
"Error moving file" : "Error moviendo archivo",
"Error" : "Error",
diff --git a/apps/files/l10n/es.json b/apps/files/l10n/es.json
index a86ebff33db..40f11037293 100644
--- a/apps/files/l10n/es.json
+++ b/apps/files/l10n/es.json
@@ -46,6 +46,7 @@
"Pending" : "Pendiente",
"Unable to determine date" : "No se pudo determinar la fecha",
"This operation is forbidden" : "Esta operación está prohibida",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Esta carpeta no está disponible, por favor verifique los registros o contáctese con el administrador",
"Error moving file." : "Error al mover el archivo.",
"Error moving file" : "Error moviendo archivo",
"Error" : "Error",
diff --git a/apps/files/l10n/et_EE.js b/apps/files/l10n/et_EE.js
index 7eada9d7875..1bf4a0a5aa3 100644
--- a/apps/files/l10n/et_EE.js
+++ b/apps/files/l10n/et_EE.js
@@ -42,10 +42,13 @@ OC.L10N.register(
"Delete" : "Kustuta",
"Disconnect storage" : "Ühenda andmehoidla lahti.",
"Unshare" : "Lõpeta jagamine",
+ "No permission to delete" : "Kustutamiseks pole õigusi",
"Download" : "Lae alla",
"Select" : "Vali",
"Pending" : "Ootel",
"Unable to determine date" : "Kuupäeva tuvastamine ei õnnestunud",
+ "This operation is forbidden" : "See toiming on keelatud",
+ "This directory is unavailable, please check the logs or contact the administrator" : "See kaust pole saadaval. Palun kontrolli logifaile või võta ühendust administraatoriga",
"Error moving file." : "Viga faili liigutamisel.",
"Error moving file" : "Viga faili eemaldamisel",
"Error" : "Viga",
diff --git a/apps/files/l10n/et_EE.json b/apps/files/l10n/et_EE.json
index 342c43b5daf..d7b1703dfc5 100644
--- a/apps/files/l10n/et_EE.json
+++ b/apps/files/l10n/et_EE.json
@@ -40,10 +40,13 @@
"Delete" : "Kustuta",
"Disconnect storage" : "Ühenda andmehoidla lahti.",
"Unshare" : "Lõpeta jagamine",
+ "No permission to delete" : "Kustutamiseks pole õigusi",
"Download" : "Lae alla",
"Select" : "Vali",
"Pending" : "Ootel",
"Unable to determine date" : "Kuupäeva tuvastamine ei õnnestunud",
+ "This operation is forbidden" : "See toiming on keelatud",
+ "This directory is unavailable, please check the logs or contact the administrator" : "See kaust pole saadaval. Palun kontrolli logifaile või võta ühendust administraatoriga",
"Error moving file." : "Viga faili liigutamisel.",
"Error moving file" : "Viga faili eemaldamisel",
"Error" : "Viga",
diff --git a/apps/files/l10n/fi_FI.js b/apps/files/l10n/fi_FI.js
index 970d4b3c033..abeb0b26b23 100644
--- a/apps/files/l10n/fi_FI.js
+++ b/apps/files/l10n/fi_FI.js
@@ -48,6 +48,7 @@ OC.L10N.register(
"Pending" : "Odottaa",
"Unable to determine date" : "Päivämäärän määrittäminen epäonnistui",
"This operation is forbidden" : "Tämä toiminto on kielletty",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Hakemisto ei ole käytettävissä. Tarkista lokit tai ole yhteydessä ylläpitoon.",
"Error moving file." : "Virhe tiedostoa siirrettäessä.",
"Error moving file" : "Virhe tiedostoa siirrettäessä",
"Error" : "Virhe",
diff --git a/apps/files/l10n/fi_FI.json b/apps/files/l10n/fi_FI.json
index e278dc49ef1..f67505268c7 100644
--- a/apps/files/l10n/fi_FI.json
+++ b/apps/files/l10n/fi_FI.json
@@ -46,6 +46,7 @@
"Pending" : "Odottaa",
"Unable to determine date" : "Päivämäärän määrittäminen epäonnistui",
"This operation is forbidden" : "Tämä toiminto on kielletty",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Hakemisto ei ole käytettävissä. Tarkista lokit tai ole yhteydessä ylläpitoon.",
"Error moving file." : "Virhe tiedostoa siirrettäessä.",
"Error moving file" : "Virhe tiedostoa siirrettäessä",
"Error" : "Virhe",
diff --git a/apps/files/l10n/gl.js b/apps/files/l10n/gl.js
index 7072472336a..2ab8c9f94ab 100644
--- a/apps/files/l10n/gl.js
+++ b/apps/files/l10n/gl.js
@@ -48,6 +48,7 @@ OC.L10N.register(
"Pending" : "Pendentes",
"Unable to determine date" : "Non é posíbel determinar a data",
"This operation is forbidden" : "Esta operación está prohibida",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Este directorio non está dispoñíbel, comprobe os rexistros ou póñase en contacto co administrador",
"Error moving file." : "Produciuse un erro ao mover o ficheiro.",
"Error moving file" : "Produciuse un erro ao mover o ficheiro",
"Error" : "Erro",
diff --git a/apps/files/l10n/gl.json b/apps/files/l10n/gl.json
index be62cd0a2c8..0668c535aee 100644
--- a/apps/files/l10n/gl.json
+++ b/apps/files/l10n/gl.json
@@ -46,6 +46,7 @@
"Pending" : "Pendentes",
"Unable to determine date" : "Non é posíbel determinar a data",
"This operation is forbidden" : "Esta operación está prohibida",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Este directorio non está dispoñíbel, comprobe os rexistros ou póñase en contacto co administrador",
"Error moving file." : "Produciuse un erro ao mover o ficheiro.",
"Error moving file" : "Produciuse un erro ao mover o ficheiro",
"Error" : "Erro",
diff --git a/apps/files/l10n/it.js b/apps/files/l10n/it.js
index a766d07f1d2..2c57c0e5ac5 100644
--- a/apps/files/l10n/it.js
+++ b/apps/files/l10n/it.js
@@ -47,6 +47,8 @@ OC.L10N.register(
"Select" : "Seleziona",
"Pending" : "In corso",
"Unable to determine date" : "Impossibile determinare la data",
+ "This operation is forbidden" : "Questa operazione è vietata",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Questa cartella non è disponibile, controlla i log o contatta l'amministratore",
"Error moving file." : "Errore durante lo spostamento del file.",
"Error moving file" : "Errore durante lo spostamento del file",
"Error" : "Errore",
diff --git a/apps/files/l10n/it.json b/apps/files/l10n/it.json
index aa9704291d1..4ebb6a360b5 100644
--- a/apps/files/l10n/it.json
+++ b/apps/files/l10n/it.json
@@ -45,6 +45,8 @@
"Select" : "Seleziona",
"Pending" : "In corso",
"Unable to determine date" : "Impossibile determinare la data",
+ "This operation is forbidden" : "Questa operazione è vietata",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Questa cartella non è disponibile, controlla i log o contatta l'amministratore",
"Error moving file." : "Errore durante lo spostamento del file.",
"Error moving file" : "Errore durante lo spostamento del file",
"Error" : "Errore",
diff --git a/apps/files/l10n/ja.js b/apps/files/l10n/ja.js
index ffe551e5e1b..6aae198aac6 100644
--- a/apps/files/l10n/ja.js
+++ b/apps/files/l10n/ja.js
@@ -47,6 +47,7 @@ OC.L10N.register(
"Select" : "選択",
"Pending" : "中断",
"Unable to determine date" : "更新日不明",
+ "This operation is forbidden" : "この操作は禁止されています",
"Error moving file." : "ファイル移動でエラー",
"Error moving file" : "ファイルの移動エラー",
"Error" : "エラー",
diff --git a/apps/files/l10n/ja.json b/apps/files/l10n/ja.json
index dfee36655a3..675edbb6974 100644
--- a/apps/files/l10n/ja.json
+++ b/apps/files/l10n/ja.json
@@ -45,6 +45,7 @@
"Select" : "選択",
"Pending" : "中断",
"Unable to determine date" : "更新日不明",
+ "This operation is forbidden" : "この操作は禁止されています",
"Error moving file." : "ファイル移動でエラー",
"Error moving file" : "ファイルの移動エラー",
"Error" : "エラー",
diff --git a/apps/files/l10n/nb_NO.js b/apps/files/l10n/nb_NO.js
index 3870544e19b..debb2e5a8f9 100644
--- a/apps/files/l10n/nb_NO.js
+++ b/apps/files/l10n/nb_NO.js
@@ -47,6 +47,7 @@ OC.L10N.register(
"Select" : "Velg",
"Pending" : "Ventende",
"Unable to determine date" : "Kan ikke fastslå datoen",
+ "This operation is forbidden" : "Operasjonen er forbudt",
"Error moving file." : "Feil ved flytting av fil.",
"Error moving file" : "Feil ved flytting av fil",
"Error" : "Feil",
diff --git a/apps/files/l10n/nb_NO.json b/apps/files/l10n/nb_NO.json
index 28fb382255e..056c465de29 100644
--- a/apps/files/l10n/nb_NO.json
+++ b/apps/files/l10n/nb_NO.json
@@ -45,6 +45,7 @@
"Select" : "Velg",
"Pending" : "Ventende",
"Unable to determine date" : "Kan ikke fastslå datoen",
+ "This operation is forbidden" : "Operasjonen er forbudt",
"Error moving file." : "Feil ved flytting av fil.",
"Error moving file" : "Feil ved flytting av fil",
"Error" : "Feil",
diff --git a/apps/files/l10n/nl.js b/apps/files/l10n/nl.js
index 1db55ee448b..85bebde9c3e 100644
--- a/apps/files/l10n/nl.js
+++ b/apps/files/l10n/nl.js
@@ -48,6 +48,7 @@ OC.L10N.register(
"Pending" : "In behandeling",
"Unable to determine date" : "Kon datum niet vaststellen",
"This operation is forbidden" : "Deze taak is verboden",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Deze map is niet beschikbaar. Verifieer de logs of neem contact op met de beheerder",
"Error moving file." : "Fout bij verplaatsen bestand.",
"Error moving file" : "Fout bij verplaatsen bestand",
"Error" : "Fout",
diff --git a/apps/files/l10n/nl.json b/apps/files/l10n/nl.json
index e88336081e2..9094ed1b031 100644
--- a/apps/files/l10n/nl.json
+++ b/apps/files/l10n/nl.json
@@ -46,6 +46,7 @@
"Pending" : "In behandeling",
"Unable to determine date" : "Kon datum niet vaststellen",
"This operation is forbidden" : "Deze taak is verboden",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Deze map is niet beschikbaar. Verifieer de logs of neem contact op met de beheerder",
"Error moving file." : "Fout bij verplaatsen bestand.",
"Error moving file" : "Fout bij verplaatsen bestand",
"Error" : "Fout",
diff --git a/apps/files/l10n/ru.js b/apps/files/l10n/ru.js
index 7ad52c51ee6..a2a7bc69c96 100644
--- a/apps/files/l10n/ru.js
+++ b/apps/files/l10n/ru.js
@@ -47,6 +47,8 @@ OC.L10N.register(
"Select" : "Выбрать",
"Pending" : "Ожидание",
"Unable to determine date" : "Невозможно определить дату",
+ "This operation is forbidden" : "Операция запрещена",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Директория недоступна, пожалуйста проверьте журнал сообщений или свяжитесь с администратором",
"Error moving file." : "Ошибка при перемещении файла.",
"Error moving file" : "Ошибка при перемещении файла",
"Error" : "Ошибка",
@@ -77,7 +79,7 @@ OC.L10N.register(
"A file or folder has been <strong>deleted</strong>" : "<strong>Удален</strong> файл или каталог",
"A file or folder has been <strong>restored</strong>" : "<strong>Восстановлен</strong> файл или каталог",
"You created %1$s" : "Вы создали %1$s",
- "%2$s created %1$s" : "%2$s создано %1$s",
+ "%2$s created %1$s" : "%2$s создал %1$s",
"%1$s was created in a public folder" : "%1$s создан в общем каталоге",
"You changed %1$s" : "Вы изменили %1$s",
"%2$s changed %1$s" : "%2$s изменил %1$s",
diff --git a/apps/files/l10n/ru.json b/apps/files/l10n/ru.json
index 1772b494914..80487e989fb 100644
--- a/apps/files/l10n/ru.json
+++ b/apps/files/l10n/ru.json
@@ -45,6 +45,8 @@
"Select" : "Выбрать",
"Pending" : "Ожидание",
"Unable to determine date" : "Невозможно определить дату",
+ "This operation is forbidden" : "Операция запрещена",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Директория недоступна, пожалуйста проверьте журнал сообщений или свяжитесь с администратором",
"Error moving file." : "Ошибка при перемещении файла.",
"Error moving file" : "Ошибка при перемещении файла",
"Error" : "Ошибка",
@@ -75,7 +77,7 @@
"A file or folder has been <strong>deleted</strong>" : "<strong>Удален</strong> файл или каталог",
"A file or folder has been <strong>restored</strong>" : "<strong>Восстановлен</strong> файл или каталог",
"You created %1$s" : "Вы создали %1$s",
- "%2$s created %1$s" : "%2$s создано %1$s",
+ "%2$s created %1$s" : "%2$s создал %1$s",
"%1$s was created in a public folder" : "%1$s создан в общем каталоге",
"You changed %1$s" : "Вы изменили %1$s",
"%2$s changed %1$s" : "%2$s изменил %1$s",
diff --git a/apps/files/l10n/th_TH.js b/apps/files/l10n/th_TH.js
index 522cd0d8aef..40af2bb490d 100644
--- a/apps/files/l10n/th_TH.js
+++ b/apps/files/l10n/th_TH.js
@@ -48,6 +48,7 @@ OC.L10N.register(
"Pending" : "อยู่ระหว่างดำเนินการ",
"Unable to determine date" : "ไม่สามารถกำหนดวัน",
"This operation is forbidden" : "การดำเนินการนี้ถูกห้าม",
+ "This directory is unavailable, please check the logs or contact the administrator" : "ไม่สามารถใช้งานไดเรกทอรีนี้โปรดตรวจสอบบันทึกหรือติดต่อผู้ดูแลระบบ",
"Error moving file." : "ข้อผิดพลาดในการเคลื่อนย้ายไฟล์",
"Error moving file" : "ข้อผิดพลาดในการเคลื่อนย้ายไฟล์",
"Error" : "ข้อผิดพลาด",
diff --git a/apps/files/l10n/th_TH.json b/apps/files/l10n/th_TH.json
index 04fe8835d23..a6febf6fadf 100644
--- a/apps/files/l10n/th_TH.json
+++ b/apps/files/l10n/th_TH.json
@@ -46,6 +46,7 @@
"Pending" : "อยู่ระหว่างดำเนินการ",
"Unable to determine date" : "ไม่สามารถกำหนดวัน",
"This operation is forbidden" : "การดำเนินการนี้ถูกห้าม",
+ "This directory is unavailable, please check the logs or contact the administrator" : "ไม่สามารถใช้งานไดเรกทอรีนี้โปรดตรวจสอบบันทึกหรือติดต่อผู้ดูแลระบบ",
"Error moving file." : "ข้อผิดพลาดในการเคลื่อนย้ายไฟล์",
"Error moving file" : "ข้อผิดพลาดในการเคลื่อนย้ายไฟล์",
"Error" : "ข้อผิดพลาด",
diff --git a/apps/files/tests/activitytest.php b/apps/files/tests/activitytest.php
index 1f8d6330e51..4ab8ad11eae 100644
--- a/apps/files/tests/activitytest.php
+++ b/apps/files/tests/activitytest.php
@@ -1,11 +1,24 @@
<?php
/**
- * Copyright (c) 2015 Joas Schilling <nickvergessen@owncloud.com>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
+ * @author Joas Schilling <nickvergessen@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/>
+ *
+ */
namespace OCA\Files\Tests;
diff --git a/apps/files/tests/controller/apicontrollertest.php b/apps/files/tests/controller/apicontrollertest.php
index 0ec38e0e2e7..35d00af75ba 100644
--- a/apps/files/tests/controller/apicontrollertest.php
+++ b/apps/files/tests/controller/apicontrollertest.php
@@ -1,5 +1,6 @@
<?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>
diff --git a/apps/files/tests/js/filelistSpec.js b/apps/files/tests/js/filelistSpec.js
index 6bcef8b6f4f..b12ac2f2517 100644
--- a/apps/files/tests/js/filelistSpec.js
+++ b/apps/files/tests/js/filelistSpec.js
@@ -1290,6 +1290,17 @@ describe('OCA.Files.FileList tests', function() {
fakeServer.respond();
expect(fileList.getCurrentDirectory()).toEqual('/');
});
+ it('switches to root dir when current directory is unavailable', function() {
+ fakeServer.respondWith(/\/index\.php\/apps\/files\/ajax\/list.php\?dir=%2funexist/, [
+ 500, {
+ "Content-Type": "application/json"
+ },
+ ''
+ ]);
+ fileList.changeDirectory('/unexist');
+ fakeServer.respond();
+ expect(fileList.getCurrentDirectory()).toEqual('/');
+ });
it('shows mask before loading file list then hides it at the end', function() {
var showMaskStub = sinon.stub(fileList, 'showMask');
var hideMaskStub = sinon.stub(fileList, 'hideMask');
diff --git a/apps/files/tests/service/tagservice.php b/apps/files/tests/service/tagservice.php
index 2b5d1e5ec34..147e698aaaa 100644
--- a/apps/files/tests/service/tagservice.php
+++ b/apps/files/tests/service/tagservice.php
@@ -1,6 +1,5 @@
<?php
/**
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/ajax/applicable.php b/apps/files_external/ajax/applicable.php
index b41f2e0c0df..1b93cc3a1aa 100644
--- a/apps/files_external/ajax/applicable.php
+++ b/apps/files_external/ajax/applicable.php
@@ -2,7 +2,6 @@
/**
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_external/ajax/dropbox.php b/apps/files_external/ajax/dropbox.php
index 495387b45bb..55dc417b73a 100644
--- a/apps/files_external/ajax/dropbox.php
+++ b/apps/files_external/ajax/dropbox.php
@@ -3,7 +3,6 @@
* @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>
* @author Robin Appelman <icewind@owncloud.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Volkan Gezer <volkangezer@gmail.com>
diff --git a/apps/files_external/appinfo/app.php b/apps/files_external/appinfo/app.php
index cc64e298b96..66897eba3d3 100644
--- a/apps/files_external/appinfo/app.php
+++ b/apps/files_external/appinfo/app.php
@@ -6,7 +6,6 @@
* @author j-ed <juergen@eisfair.org>
* @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>
* @author Robin Appelman <icewind@owncloud.com>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
diff --git a/apps/files_external/appinfo/routes.php b/apps/files_external/appinfo/routes.php
index 8c6dff7a901..97eb1353b1e 100644
--- a/apps/files_external/appinfo/routes.php
+++ b/apps/files_external/appinfo/routes.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Ross Nicoll <jrn@jrn.me.uk>
diff --git a/apps/files_external/l10n/cs_CZ.js b/apps/files_external/l10n/cs_CZ.js
index f2e86b5748c..4698dd915ac 100644
--- a/apps/files_external/l10n/cs_CZ.js
+++ b/apps/files_external/l10n/cs_CZ.js
@@ -55,6 +55,11 @@ OC.L10N.register(
"Personal" : "Osobní",
"System" : "Systém",
"Enable encryption" : "Povolit šifrování",
+ "Enable previews" : "Povolit náhledy",
+ "Check for changes" : "Zkontrolovat změny",
+ "Never" : "Nikdy",
+ "Once every direct access" : "Jednou pro každý přímý přístup",
+ "Every time the filesystem is used" : "Pokaždé když je použit souborový systém",
"All users. Type to select user or group." : "Všichni uživatelé. Začněte psát pro výběr uživatelů a skupin.",
"(group)" : "(skupina)",
"Saved" : "Uloženo",
diff --git a/apps/files_external/l10n/cs_CZ.json b/apps/files_external/l10n/cs_CZ.json
index b96a2e52274..53b2162dafe 100644
--- a/apps/files_external/l10n/cs_CZ.json
+++ b/apps/files_external/l10n/cs_CZ.json
@@ -53,6 +53,11 @@
"Personal" : "Osobní",
"System" : "Systém",
"Enable encryption" : "Povolit šifrování",
+ "Enable previews" : "Povolit náhledy",
+ "Check for changes" : "Zkontrolovat změny",
+ "Never" : "Nikdy",
+ "Once every direct access" : "Jednou pro každý přímý přístup",
+ "Every time the filesystem is used" : "Pokaždé když je použit souborový systém",
"All users. Type to select user or group." : "Všichni uživatelé. Začněte psát pro výběr uživatelů a skupin.",
"(group)" : "(skupina)",
"Saved" : "Uloženo",
diff --git a/apps/files_external/l10n/et_EE.js b/apps/files_external/l10n/et_EE.js
index 07bdfa7cdd3..8082e51d40e 100644
--- a/apps/files_external/l10n/et_EE.js
+++ b/apps/files_external/l10n/et_EE.js
@@ -43,16 +43,20 @@ OC.L10N.register(
"Username as share" : "Kasutajanimi kui jagamine",
"URL" : "URL",
"Secure https://" : "Turvaline https://",
+ "Public key" : "Avalik võti",
"Access granted" : "Ligipääs on antud",
"Error configuring Dropbox storage" : "Viga Dropboxi salvestusruumi seadistamisel",
"Grant access" : "Anna ligipääs",
"Error configuring Google Drive storage" : "Viga Google Drive'i salvestusruumi seadistamisel",
"Personal" : "Isiklik",
"System" : "Süsteem",
+ "Check for changes" : "Otsi uuendusi",
+ "Never" : "Mitte kunagi",
"All users. Type to select user or group." : "Kõik kasutajad. Kirjuta, et valida kasutaja või grupp.",
"(group)" : "(grupp)",
"Saved" : "Salvestatud",
"<b>Note:</b> " : "<b>Märkus:</b>",
+ "and" : "ja",
"<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>Märkus:</b> cURL tugi puudub PHP paigalduses. FTP %s hoidla ühendamine pole võimalik. Palu oma süsteemihalduril paigaldata cURL tugi.",
"<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>Märkus:</b> FTP tugi puudub PHP paigalduses. FTP %s hoidla ühendamine pole võimalik. Palu oma süsteemihalduril paigaldata FTP tugi.",
"<b>Note:</b> \"%s\" is not installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Märkus:</b> \"%s\" pole paigaldatud. Hoidla %s ühendamine pole võimalik. Palu oma süsteemihalduril paigaldata vajalik tugi.",
@@ -64,6 +68,7 @@ OC.L10N.register(
"Configuration" : "Seadistamine",
"Available for" : "Saadaval",
"Add storage" : "Lisa andmehoidla",
+ "Advanced settings" : "Lisavalikud",
"Delete" : "Kustuta",
"Enable User External Storage" : "Luba kasutajatele väline salvestamine",
"Allow users to mount the following external storage" : "Võimalda kasutajatel ühendada järgmist välist andmehoidlat"
diff --git a/apps/files_external/l10n/et_EE.json b/apps/files_external/l10n/et_EE.json
index 11592f9e9a7..70940c3247b 100644
--- a/apps/files_external/l10n/et_EE.json
+++ b/apps/files_external/l10n/et_EE.json
@@ -41,16 +41,20 @@
"Username as share" : "Kasutajanimi kui jagamine",
"URL" : "URL",
"Secure https://" : "Turvaline https://",
+ "Public key" : "Avalik võti",
"Access granted" : "Ligipääs on antud",
"Error configuring Dropbox storage" : "Viga Dropboxi salvestusruumi seadistamisel",
"Grant access" : "Anna ligipääs",
"Error configuring Google Drive storage" : "Viga Google Drive'i salvestusruumi seadistamisel",
"Personal" : "Isiklik",
"System" : "Süsteem",
+ "Check for changes" : "Otsi uuendusi",
+ "Never" : "Mitte kunagi",
"All users. Type to select user or group." : "Kõik kasutajad. Kirjuta, et valida kasutaja või grupp.",
"(group)" : "(grupp)",
"Saved" : "Salvestatud",
"<b>Note:</b> " : "<b>Märkus:</b>",
+ "and" : "ja",
"<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>Märkus:</b> cURL tugi puudub PHP paigalduses. FTP %s hoidla ühendamine pole võimalik. Palu oma süsteemihalduril paigaldata cURL tugi.",
"<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>Märkus:</b> FTP tugi puudub PHP paigalduses. FTP %s hoidla ühendamine pole võimalik. Palu oma süsteemihalduril paigaldata FTP tugi.",
"<b>Note:</b> \"%s\" is not installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Märkus:</b> \"%s\" pole paigaldatud. Hoidla %s ühendamine pole võimalik. Palu oma süsteemihalduril paigaldata vajalik tugi.",
@@ -62,6 +66,7 @@
"Configuration" : "Seadistamine",
"Available for" : "Saadaval",
"Add storage" : "Lisa andmehoidla",
+ "Advanced settings" : "Lisavalikud",
"Delete" : "Kustuta",
"Enable User External Storage" : "Luba kasutajatele väline salvestamine",
"Allow users to mount the following external storage" : "Võimalda kasutajatel ühendada järgmist välist andmehoidlat"
diff --git a/apps/files_external/l10n/ja.js b/apps/files_external/l10n/ja.js
index 7abf8067b6d..9181fbb4e3a 100644
--- a/apps/files_external/l10n/ja.js
+++ b/apps/files_external/l10n/ja.js
@@ -54,6 +54,7 @@ OC.L10N.register(
"Personal" : "個人",
"System" : "システム",
"Enable encryption" : "暗号化を有効に",
+ "Check for changes" : "変更点を確認",
"All users. Type to select user or group." : "すべてのユーザー。ユーザー、グループを追加",
"(group)" : "(グループ)",
"Saved" : "保存されました",
diff --git a/apps/files_external/l10n/ja.json b/apps/files_external/l10n/ja.json
index 6da6fe15b12..19a986bfb99 100644
--- a/apps/files_external/l10n/ja.json
+++ b/apps/files_external/l10n/ja.json
@@ -52,6 +52,7 @@
"Personal" : "個人",
"System" : "システム",
"Enable encryption" : "暗号化を有効に",
+ "Check for changes" : "変更点を確認",
"All users. Type to select user or group." : "すべてのユーザー。ユーザー、グループを追加",
"(group)" : "(グループ)",
"Saved" : "保存されました",
diff --git a/apps/files_external/lib/config.php b/apps/files_external/lib/config.php
index 40e9a75790f..5dc6d06ae06 100644
--- a/apps/files_external/lib/config.php
+++ b/apps/files_external/lib/config.php
@@ -124,10 +124,10 @@ class OC_Mount_Config {
self::addStorageIdToConfig($data['user']);
$user = \OC::$server->getUserManager()->get($data['user']);
if (!$user) {
- \OC_Log::write(
+ \OCP\Util::writeLog(
'files_external',
'Cannot init external mount points for non-existant user "' . $data['user'] . '".',
- \OC_Log::WARN
+ \OCP\Util::WARN
);
return;
}
diff --git a/apps/files_external/lib/google.php b/apps/files_external/lib/google.php
index 541113fb530..8199d97eacb 100644
--- a/apps/files_external/lib/google.php
+++ b/apps/files_external/lib/google.php
@@ -5,6 +5,7 @@
* @author Bart Visscher <bartv@thisnet.nl>
* @author Christopher Schäpers <kondou@ts.unde.re>
* @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>
* @author Philipp Kapfer <philipp.kapfer@gmx.at>
diff --git a/apps/files_external/lib/sftp_key.php b/apps/files_external/lib/sftp_key.php
index d9bcadb9eb7..1bcea6bc96d 100644
--- a/apps/files_external/lib/sftp_key.php
+++ b/apps/files_external/lib/sftp_key.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Ross Nicoll <jrn@jrn.me.uk>
*
diff --git a/apps/files_external/lib/smb_oc.php b/apps/files_external/lib/smb_oc.php
index 9fd3aa3721f..52b73c46ff9 100644
--- a/apps/files_external/lib/smb_oc.php
+++ b/apps/files_external/lib/smb_oc.php
@@ -1,6 +1,5 @@
<?php
/**
- * @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>
diff --git a/apps/files_external/list.php b/apps/files_external/list.php
index c97c0d8f653..b98db79de89 100644
--- a/apps/files_external/list.php
+++ b/apps/files_external/list.php
@@ -1,6 +1,5 @@
<?php
/**
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/personal.php b/apps/files_external/personal.php
index b2ab32411f9..1ac0f65a1f0 100644
--- a/apps/files_external/personal.php
+++ b/apps/files_external/personal.php
@@ -4,6 +4,7 @@
* @author Lukas Reschke <lukas@owncloud.com>
* @author Michael Gapczynski <GapczynskiM@gmail.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin Appelman <icewind@owncloud.com>
* @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 7df0f73f652..04445127b34 100644
--- a/apps/files_external/service/globalstoragesservice.php
+++ b/apps/files_external/service/globalstoragesservice.php
@@ -1,5 +1,7 @@
<?php
/**
+ * @author Lukas Reschke <lukas@owncloud.com>
+ * @author Morris Jobke <hey@morrisjobke.de>
* @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 51eb4abcc00..930f994455e 100644
--- a/apps/files_external/service/storagesservice.php
+++ b/apps/files_external/service/storagesservice.php
@@ -1,5 +1,7 @@
<?php
/**
+ * @author Lukas Reschke <lukas@owncloud.com>
+ * @author Morris Jobke <hey@morrisjobke.de>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/settings.php b/apps/files_external/settings.php
index daf205d3d57..6db68713d98 100644
--- a/apps/files_external/settings.php
+++ b/apps/files_external/settings.php
@@ -6,6 +6,7 @@
* @author Lukas Reschke <lukas@owncloud.com>
* @author Michael Gapczynski <GapczynskiM@gmail.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin Appelman <icewind@owncloud.com>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_external/tests/backends/sftp.php b/apps/files_external/tests/backends/sftp.php
index 29461c3abcc..da2c0ac6ba2 100644
--- a/apps/files_external/tests/backends/sftp.php
+++ b/apps/files_external/tests/backends/sftp.php
@@ -4,6 +4,7 @@
* @author Joas Schilling <nickvergessen@owncloud.com>
* @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
diff --git a/apps/files_external/tests/config.php b/apps/files_external/tests/config.php
index 9907353588e..19dad215a36 100644
--- a/apps/files_external/tests/config.php
+++ b/apps/files_external/tests/config.php
@@ -3,7 +3,6 @@
* @author Christian Berendt <berendt@b1-systems.de>
* @author hkjolhede <hkjolhede@gmail.com>
* @author Michael Gapczynski <GapczynskiM@gmail.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Ross Nicoll <jrn@jrn.me.uk>
* @author Thomas Müller <thomas.mueller@tmit.eu>
diff --git a/apps/files_sharing/ajax/list.php b/apps/files_sharing/ajax/list.php
index 354041fed9d..d09b61fd4ae 100644
--- a/apps/files_sharing/ajax/list.php
+++ b/apps/files_sharing/ajax/list.php
@@ -27,7 +27,7 @@ OCP\JSON::checkAppEnabled('files_sharing');
if(!isset($_GET['t'])){
\OC_Response::setStatus(\OC_Response::STATUS_BAD_REQUEST);
- \OC_Log::write('core-preview', 'No token parameter was passed', \OC_Log::DEBUG);
+ \OCP\Util::writeLog('core-preview', 'No token parameter was passed', \OCP\Util::DEBUG);
exit;
}
diff --git a/apps/files_sharing/ajax/publicpreview.php b/apps/files_sharing/ajax/publicpreview.php
index 0734c8c1159..99a5bdaa859 100644
--- a/apps/files_sharing/ajax/publicpreview.php
+++ b/apps/files_sharing/ajax/publicpreview.php
@@ -36,20 +36,20 @@ $keepAspect = array_key_exists('a', $_GET) ? true : false;
if($token === ''){
\OC_Response::setStatus(\OC_Response::STATUS_BAD_REQUEST);
- \OC_Log::write('core-preview', 'No token parameter was passed', \OC_Log::DEBUG);
+ \OCP\Util::writeLog('core-preview', 'No token parameter was passed', \OCP\Util::DEBUG);
exit;
}
$linkedItem = \OCP\Share::getShareByToken($token);
if($linkedItem === false || ($linkedItem['item_type'] !== 'file' && $linkedItem['item_type'] !== 'folder')) {
\OC_Response::setStatus(\OC_Response::STATUS_NOT_FOUND);
- \OC_Log::write('core-preview', 'Passed token parameter is not valid', \OC_Log::DEBUG);
+ \OCP\Util::writeLog('core-preview', 'Passed token parameter is not valid', \OCP\Util::DEBUG);
exit;
}
if(!isset($linkedItem['uid_owner']) || !isset($linkedItem['file_source'])) {
\OC_Response::setStatus(\OC_Response::STATUS_INTERNAL_SERVER_ERROR);
- \OC_Log::write('core-preview', 'Passed token seems to be valid, but it does not contain all necessary information . ("' . $token . '")', \OC_Log::WARN);
+ \OCP\Util::writeLog('core-preview', 'Passed token seems to be valid, but it does not contain all necessary information . ("' . $token . '")', \OCP\Util::WARN);
exit;
}
@@ -77,7 +77,7 @@ if($linkedItem['item_type'] === 'folder') {
$isValid = \OC\Files\Filesystem::isValidPath($file);
if(!$isValid) {
\OC_Response::setStatus(\OC_Response::STATUS_BAD_REQUEST);
- \OC_Log::write('core-preview', 'Passed filename is not valid, might be malicious (file:"' . $file . '";ip:"' . \OC::$server->getRequest()->getRemoteAddress() . '")', \OC_Log::WARN);
+ \OCP\Util::writeLog('core-preview', 'Passed filename is not valid, might be malicious (file:"' . $file . '";ip:"' . \OC::$server->getRequest()->getRemoteAddress() . '")', \OCP\Util::WARN);
exit;
}
$sharedFile = \OC\Files\Filesystem::normalizePath($file);
@@ -96,7 +96,7 @@ if(substr($path, 0, 1) === '/') {
if($maxX === 0 || $maxY === 0) {
\OC_Response::setStatus(\OC_Response::STATUS_BAD_REQUEST);
- \OC_Log::write('core-preview', 'x and/or y set to 0', \OC_Log::DEBUG);
+ \OCP\Util::writeLog('core-preview', 'x and/or y set to 0', \OCP\Util::DEBUG);
exit;
}
@@ -113,5 +113,5 @@ try{
$preview->showPreview();
} catch (\Exception $e) {
\OC_Response::setStatus(\OC_Response::STATUS_INTERNAL_SERVER_ERROR);
- \OC_Log::write('core', $e->getmessage(), \OC_Log::DEBUG);
+ \OCP\Util::writeLog('core', $e->getmessage(), \OCP\Util::DEBUG);
}
diff --git a/apps/files_sharing/ajax/shareinfo.php b/apps/files_sharing/ajax/shareinfo.php
index b2f88265ca1..3ea0fae8522 100644
--- a/apps/files_sharing/ajax/shareinfo.php
+++ b/apps/files_sharing/ajax/shareinfo.php
@@ -3,6 +3,7 @@
* @author Joas Schilling <nickvergessen@owncloud.com>
* @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
diff --git a/apps/files_sharing/api/local.php b/apps/files_sharing/api/local.php
index 03812800c17..308965192b9 100644
--- a/apps/files_sharing/api/local.php
+++ b/apps/files_sharing/api/local.php
@@ -3,7 +3,6 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @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 Thomas Müller <thomas.mueller@tmit.eu>
* @author Vincent Petry <pvince81@owncloud.com>
@@ -27,6 +26,8 @@
namespace OCA\Files_Sharing\API;
+use OC\HintException;
+
class Local {
/**
@@ -163,7 +164,7 @@ class Local {
}
$select = '`*PREFIX*share`.`id`, `item_type`, `*PREFIX*share`.`parent`, `share_type`, `share_with`, `file_source`, `path` , `*PREFIX*share`.`permissions`, `stime`, `expiration`, `token`, `storage`, `mail_send`, `mail_send`';
- $getReshares = \OC_DB::prepare('SELECT ' . $select . ' FROM `*PREFIX*share` INNER JOIN `*PREFIX*filecache` ON `file_source` = `*PREFIX*filecache`.`fileid` WHERE `*PREFIX*share`.`file_source` = ? AND `*PREFIX*share`.`item_type` IN (\'file\', \'folder\') AND `uid_owner` != ?');
+ $getReshares = \OCP\DB::prepare('SELECT ' . $select . ' FROM `*PREFIX*share` INNER JOIN `*PREFIX*filecache` ON `file_source` = `*PREFIX*filecache`.`fileid` WHERE `*PREFIX*share`.`file_source` = ? AND `*PREFIX*share`.`item_type` IN (\'file\', \'folder\') AND `uid_owner` != ?');
$reshares = $getReshares->execute(array($itemSource, \OCP\User::getUser()))->fetchAll();
foreach ($reshares as $key => $reshare) {
@@ -294,6 +295,8 @@ class Local {
$shareWith,
$permissions
);
+ } catch (HintException $e) {
+ return new \OC_OCS_Result(null, 400, $e->getHint());
} catch (\Exception $e) {
return new \OC_OCS_Result(null, 403, $e->getMessage());
}
@@ -572,7 +575,7 @@ class Local {
$result = $query->execute($args);
if (\OCP\DB::isError($result)) {
- \OCP\Util::writeLog('files_sharing', \OC_DB::getErrorMessage(), \OCP\Util::ERROR);
+ \OCP\Util::writeLog('files_sharing', \OCP\DB::getErrorMessage(), \OCP\Util::ERROR);
return null;
}
if ($share = $result->fetchRow()) {
diff --git a/apps/files_sharing/appinfo/app.php b/apps/files_sharing/appinfo/app.php
index c54038f17e3..f72f5024622 100644
--- a/apps/files_sharing/appinfo/app.php
+++ b/apps/files_sharing/appinfo/app.php
@@ -2,10 +2,8 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Gadzy <dev@gadzy.fr>
- * @author j-ed <juergen@eisfair.org>
* @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 Vincent Petry <pvince81@owncloud.com>
*
diff --git a/apps/files_sharing/appinfo/application.php b/apps/files_sharing/appinfo/application.php
index 0eb20945070..b9c2844d78c 100644
--- a/apps/files_sharing/appinfo/application.php
+++ b/apps/files_sharing/appinfo/application.php
@@ -1,9 +1,23 @@
<?php
/**
- * Copyright (c) 2015 Robin Appelman <icewind@owncloud.com>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
+ * @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin Appelman <icewind@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\Appinfo;
diff --git a/apps/files_sharing/appinfo/routes.php b/apps/files_sharing/appinfo/routes.php
index 78fa138f5b5..2686abed0ae 100644
--- a/apps/files_sharing/appinfo/routes.php
+++ b/apps/files_sharing/appinfo/routes.php
@@ -2,9 +2,11 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @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>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/appinfo/update.php b/apps/files_sharing/appinfo/update.php
index f19c9ee1f9b..e98b60ea36d 100644
--- a/apps/files_sharing/appinfo/update.php
+++ b/apps/files_sharing/appinfo/update.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/files_sharing/l10n/cs_CZ.js b/apps/files_sharing/l10n/cs_CZ.js
index d1d89a15999..66a1314ff29 100644
--- a/apps/files_sharing/l10n/cs_CZ.js
+++ b/apps/files_sharing/l10n/cs_CZ.js
@@ -40,6 +40,8 @@ OC.L10N.register(
"%2$s shared %1$s with you" : "%2$s s vámi sdílí %1$s",
"You shared %1$s via link" : "Sdílíte %1$s přes odkaz",
"Shares" : "Sdílení",
+ "Share with me through my #ownCloud Federated Cloud ID, see %s" : "Sdílej se mnou pomocí mého #ownCloud sdruženého cloud ID, více na %s",
+ "Share with me through my #ownCloud Federated Cloud ID" : "Sdílej se mnou pomocí mého #ownCloud sdruženého cloud ID",
"This share is password-protected" : "Toto sdílení je chráněno heslem",
"The password is wrong. Try again." : "Heslo není správné. Zkuste to znovu.",
"Password" : "Heslo",
@@ -59,6 +61,12 @@ OC.L10N.register(
"Federated Cloud Sharing" : "Propojené cloudové sdílení",
"Open documentation" : "Otevřít dokumentaci",
"Allow users on this server to send shares to other servers" : "Povolit uživatelům z tohoto serveru zasílat sdílení na jiné servery",
- "Allow users on this server to receive shares from other servers" : "Povolit uživatelům z tohoto serveru přijímat sdílení z jiných serverů"
+ "Allow users on this server to receive shares from other servers" : "Povolit uživatelům z tohoto serveru přijímat sdílení z jiných serverů",
+ "Federated Cloud" : "Sdružený cloud",
+ "Your Federated Cloud ID:" : "Vaše sdružené cloud ID:",
+ "Share it:" : "Sdílet:",
+ "Add it to your website:" : "Přidat na svou webovou stránku:",
+ "Share with me via ownCloud" : "Sdíleno se mnou přes ownCloud",
+ "HTML Code:" : "HTML kód:"
},
"nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;");
diff --git a/apps/files_sharing/l10n/cs_CZ.json b/apps/files_sharing/l10n/cs_CZ.json
index 95fea4806cf..330d64061e4 100644
--- a/apps/files_sharing/l10n/cs_CZ.json
+++ b/apps/files_sharing/l10n/cs_CZ.json
@@ -38,6 +38,8 @@
"%2$s shared %1$s with you" : "%2$s s vámi sdílí %1$s",
"You shared %1$s via link" : "Sdílíte %1$s přes odkaz",
"Shares" : "Sdílení",
+ "Share with me through my #ownCloud Federated Cloud ID, see %s" : "Sdílej se mnou pomocí mého #ownCloud sdruženého cloud ID, více na %s",
+ "Share with me through my #ownCloud Federated Cloud ID" : "Sdílej se mnou pomocí mého #ownCloud sdruženého cloud ID",
"This share is password-protected" : "Toto sdílení je chráněno heslem",
"The password is wrong. Try again." : "Heslo není správné. Zkuste to znovu.",
"Password" : "Heslo",
@@ -57,6 +59,12 @@
"Federated Cloud Sharing" : "Propojené cloudové sdílení",
"Open documentation" : "Otevřít dokumentaci",
"Allow users on this server to send shares to other servers" : "Povolit uživatelům z tohoto serveru zasílat sdílení na jiné servery",
- "Allow users on this server to receive shares from other servers" : "Povolit uživatelům z tohoto serveru přijímat sdílení z jiných serverů"
+ "Allow users on this server to receive shares from other servers" : "Povolit uživatelům z tohoto serveru přijímat sdílení z jiných serverů",
+ "Federated Cloud" : "Sdružený cloud",
+ "Your Federated Cloud ID:" : "Vaše sdružené cloud ID:",
+ "Share it:" : "Sdílet:",
+ "Add it to your website:" : "Přidat na svou webovou stránku:",
+ "Share with me via ownCloud" : "Sdíleno se mnou přes ownCloud",
+ "HTML Code:" : "HTML kód:"
},"pluralForm" :"nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;"
} \ No newline at end of file
diff --git a/apps/files_sharing/l10n/da.js b/apps/files_sharing/l10n/da.js
index 79d8ae76314..a31e6363f25 100644
--- a/apps/files_sharing/l10n/da.js
+++ b/apps/files_sharing/l10n/da.js
@@ -60,6 +60,9 @@ OC.L10N.register(
"Open documentation" : "Åben dokumentation",
"Allow users on this server to send shares to other servers" : "Tillad brugere på denne server, at sende delinger til andre servere",
"Allow users on this server to receive shares from other servers" : "Tillad brugere på denne server, at modtage delinger fra andre servere",
- "Federated Cloud" : "Federated Cloud"
+ "Federated Cloud" : "Federated Cloud",
+ "Share it:" : "Del:",
+ "Add it to your website:" : "Tilføj den til din hjemmeside:",
+ "HTML Code:" : "HTMLkode:"
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/files_sharing/l10n/da.json b/apps/files_sharing/l10n/da.json
index 15807298f4f..b91fbf21eb0 100644
--- a/apps/files_sharing/l10n/da.json
+++ b/apps/files_sharing/l10n/da.json
@@ -58,6 +58,9 @@
"Open documentation" : "Åben dokumentation",
"Allow users on this server to send shares to other servers" : "Tillad brugere på denne server, at sende delinger til andre servere",
"Allow users on this server to receive shares from other servers" : "Tillad brugere på denne server, at modtage delinger fra andre servere",
- "Federated Cloud" : "Federated Cloud"
+ "Federated Cloud" : "Federated Cloud",
+ "Share it:" : "Del:",
+ "Add it to your website:" : "Tilføj den til din hjemmeside:",
+ "HTML Code:" : "HTMLkode:"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/files_sharing/l10n/et_EE.js b/apps/files_sharing/l10n/et_EE.js
index bbe0b020b42..aa6dde2d7bb 100644
--- a/apps/files_sharing/l10n/et_EE.js
+++ b/apps/files_sharing/l10n/et_EE.js
@@ -8,11 +8,15 @@ OC.L10N.register(
"Shared with you" : "Sinuga jagatud",
"Shared with others" : "Teistega jagatud",
"Shared by link" : "Jagatud lingiga",
+ "Nothing shared with you yet" : "Sinuga pole veel midagi jagatud",
+ "Nothing shared yet" : "Midagi pole veel jagatud",
+ "No shared links" : "Jagatud linke pole",
"Do you want to add the remote share {name} from {owner}@{remote}?" : "Soovid lisata kaugjagamise {name} asukohast {owner}@{remote}?",
"Remote share" : "Kaugjagamine",
"Remote share password" : "Kaugjagamise parool",
"Cancel" : "Loobu",
"Add remote share" : "Lisa kaugjagamine",
+ "You can upload into this folder" : "Sa saad sellesse kausta faile üles laadida",
"Invalid ownCloud url" : "Vigane ownCloud url",
"Share" : "Jaga",
"Shared by" : "Jagas",
@@ -38,7 +42,12 @@ OC.L10N.register(
"Download" : "Lae alla",
"Download %s" : "Laadi alla %s",
"Direct link" : "Otsene link",
+ "Open documentation" : "Ava dokumentatsioon",
"Allow users on this server to send shares to other servers" : "Luba selle serveri kasutajatel saata faile teistesse serveritesse",
- "Allow users on this server to receive shares from other servers" : "Luba selle serveri kasutajatel võtta vastu jagamisi teistest serveritest"
+ "Allow users on this server to receive shares from other servers" : "Luba selle serveri kasutajatel võtta vastu jagamisi teistest serveritest",
+ "Share it:" : "Jaga seda:",
+ "Add it to your website:" : "Lisa see oma veebisaidile:",
+ "Share with me via ownCloud" : "Jaga minuga läbi ownCloudiga",
+ "HTML Code:" : "HTML kood:"
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/files_sharing/l10n/et_EE.json b/apps/files_sharing/l10n/et_EE.json
index 3e36c3540fa..0f0c3c492dd 100644
--- a/apps/files_sharing/l10n/et_EE.json
+++ b/apps/files_sharing/l10n/et_EE.json
@@ -6,11 +6,15 @@
"Shared with you" : "Sinuga jagatud",
"Shared with others" : "Teistega jagatud",
"Shared by link" : "Jagatud lingiga",
+ "Nothing shared with you yet" : "Sinuga pole veel midagi jagatud",
+ "Nothing shared yet" : "Midagi pole veel jagatud",
+ "No shared links" : "Jagatud linke pole",
"Do you want to add the remote share {name} from {owner}@{remote}?" : "Soovid lisata kaugjagamise {name} asukohast {owner}@{remote}?",
"Remote share" : "Kaugjagamine",
"Remote share password" : "Kaugjagamise parool",
"Cancel" : "Loobu",
"Add remote share" : "Lisa kaugjagamine",
+ "You can upload into this folder" : "Sa saad sellesse kausta faile üles laadida",
"Invalid ownCloud url" : "Vigane ownCloud url",
"Share" : "Jaga",
"Shared by" : "Jagas",
@@ -36,7 +40,12 @@
"Download" : "Lae alla",
"Download %s" : "Laadi alla %s",
"Direct link" : "Otsene link",
+ "Open documentation" : "Ava dokumentatsioon",
"Allow users on this server to send shares to other servers" : "Luba selle serveri kasutajatel saata faile teistesse serveritesse",
- "Allow users on this server to receive shares from other servers" : "Luba selle serveri kasutajatel võtta vastu jagamisi teistest serveritest"
+ "Allow users on this server to receive shares from other servers" : "Luba selle serveri kasutajatel võtta vastu jagamisi teistest serveritest",
+ "Share it:" : "Jaga seda:",
+ "Add it to your website:" : "Lisa see oma veebisaidile:",
+ "Share with me via ownCloud" : "Jaga minuga läbi ownCloudiga",
+ "HTML Code:" : "HTML kood:"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/files_sharing/l10n/nb_NO.js b/apps/files_sharing/l10n/nb_NO.js
index 972f0c2e638..b7e2dfc9b07 100644
--- a/apps/files_sharing/l10n/nb_NO.js
+++ b/apps/files_sharing/l10n/nb_NO.js
@@ -40,6 +40,8 @@ OC.L10N.register(
"%2$s shared %1$s with you" : "%2$s delte %1$s med deg",
"You shared %1$s via link" : "Du delte %1$s via lenke",
"Shares" : "Delinger",
+ "Share with me through my #ownCloud Federated Cloud ID, see %s" : "Del med meg gjennom min #ownCloud ID for sammenknyttet sky, se %s",
+ "Share with me through my #ownCloud Federated Cloud ID" : "Del med meg gjennom min #ownCloud ID for sammenknyttet sky",
"This share is password-protected" : "Denne delingen er passordbeskyttet",
"The password is wrong. Try again." : "Passordet er feil. Prøv på nytt.",
"Password" : "Passord",
@@ -60,6 +62,11 @@ OC.L10N.register(
"Open documentation" : "Åpne dokumentasjonen",
"Allow users on this server to send shares to other servers" : "Tillat at brukere på denne serveren sender delinger til andre servere",
"Allow users on this server to receive shares from other servers" : "Tillat at brukere på denne serveren mottar delinger fra andre servere",
- "Federated Cloud" : "Sammenknyttet sky"
+ "Federated Cloud" : "Sammenknyttet sky",
+ "Your Federated Cloud ID:" : "Din ID for sammenknyttet sky:",
+ "Share it:" : "Del den:",
+ "Add it to your website:" : "Legg den på websiden din:",
+ "Share with me via ownCloud" : "Del med meg via ownCloud",
+ "HTML Code:" : "HTML-kode:"
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/files_sharing/l10n/nb_NO.json b/apps/files_sharing/l10n/nb_NO.json
index 9e3e93a6802..2e490bbcde7 100644
--- a/apps/files_sharing/l10n/nb_NO.json
+++ b/apps/files_sharing/l10n/nb_NO.json
@@ -38,6 +38,8 @@
"%2$s shared %1$s with you" : "%2$s delte %1$s med deg",
"You shared %1$s via link" : "Du delte %1$s via lenke",
"Shares" : "Delinger",
+ "Share with me through my #ownCloud Federated Cloud ID, see %s" : "Del med meg gjennom min #ownCloud ID for sammenknyttet sky, se %s",
+ "Share with me through my #ownCloud Federated Cloud ID" : "Del med meg gjennom min #ownCloud ID for sammenknyttet sky",
"This share is password-protected" : "Denne delingen er passordbeskyttet",
"The password is wrong. Try again." : "Passordet er feil. Prøv på nytt.",
"Password" : "Passord",
@@ -58,6 +60,11 @@
"Open documentation" : "Åpne dokumentasjonen",
"Allow users on this server to send shares to other servers" : "Tillat at brukere på denne serveren sender delinger til andre servere",
"Allow users on this server to receive shares from other servers" : "Tillat at brukere på denne serveren mottar delinger fra andre servere",
- "Federated Cloud" : "Sammenknyttet sky"
+ "Federated Cloud" : "Sammenknyttet sky",
+ "Your Federated Cloud ID:" : "Din ID for sammenknyttet sky:",
+ "Share it:" : "Del den:",
+ "Add it to your website:" : "Legg den på websiden din:",
+ "Share with me via ownCloud" : "Del med meg via ownCloud",
+ "HTML Code:" : "HTML-kode:"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/files_sharing/l10n/th_TH.js b/apps/files_sharing/l10n/th_TH.js
index 5df005e01a7..2ab0d72bb56 100644
--- a/apps/files_sharing/l10n/th_TH.js
+++ b/apps/files_sharing/l10n/th_TH.js
@@ -40,8 +40,8 @@ OC.L10N.register(
"%2$s shared %1$s with you" : "%2$s ถูกแชร์ %1$s กับคุณ",
"You shared %1$s via link" : "คุณแชร์ %1$s ผ่านลิงค์",
"Shares" : "แชร์",
- "Share with me through my #ownCloud Federated Cloud ID, see %s" : "แชร์ร่วมกับฉันผ่าน #ownCloud ด้วยคลาวด์ไอดี สามารถดูได้ที่ %s",
- "Share with me through my #ownCloud Federated Cloud ID" : "แชร์ร่วมกับฉันผ่าน #ownCloud ด้วยคลาวด์ไอดี",
+ "Share with me through my #ownCloud Federated Cloud ID, see %s" : "แชร์ร่วมกับฉันผ่าน #ownCloud ด้วยไอดีคลาวด์ในเครือ สามารถดูได้ที่ %s",
+ "Share with me through my #ownCloud Federated Cloud ID" : "แชร์ร่วมกับฉันผ่าน #ownCloud ด้วยไอดีคลาวด์ในเครือ",
"This share is password-protected" : "นี้แชร์การป้องกันด้วยรหัสผ่าน",
"The password is wrong. Try again." : "รหัสผ่านที่ไม่ถูกต้อง กรุณาลองอีกครั้ง",
"Password" : "รหัสผ่าน",
@@ -63,7 +63,7 @@ OC.L10N.register(
"Allow users on this server to send shares to other servers" : "อนุญาตให้ผู้ใช้บนเซิร์ฟเวอร์นี้ส่งแชร์ไปยังเซิร์ฟเวอร์อื่นๆ",
"Allow users on this server to receive shares from other servers" : "อนุญาตให้ผู้ใช้บนเซิร์ฟเวอร์นี้ได้รับการแชร์จากเซิร์ฟเวอร์อื่นๆ",
"Federated Cloud" : "สหพันธ์คลาวด์",
- "Your Federated Cloud ID:" : "คลาวด์ไอดีของคุณ:",
+ "Your Federated Cloud ID:" : "ไอดีคลาวด์ของคุณ:",
"Share it:" : "แชร์มัน:",
"Add it to your website:" : "เพิ่มไปยังเว็บไซต์ของคุณ:",
"Share with me via ownCloud" : "แชร์ร่วมกับฉันผ่าน ownCloud",
diff --git a/apps/files_sharing/l10n/th_TH.json b/apps/files_sharing/l10n/th_TH.json
index e1a9655741f..a4525d255f4 100644
--- a/apps/files_sharing/l10n/th_TH.json
+++ b/apps/files_sharing/l10n/th_TH.json
@@ -38,8 +38,8 @@
"%2$s shared %1$s with you" : "%2$s ถูกแชร์ %1$s กับคุณ",
"You shared %1$s via link" : "คุณแชร์ %1$s ผ่านลิงค์",
"Shares" : "แชร์",
- "Share with me through my #ownCloud Federated Cloud ID, see %s" : "แชร์ร่วมกับฉันผ่าน #ownCloud ด้วยคลาวด์ไอดี สามารถดูได้ที่ %s",
- "Share with me through my #ownCloud Federated Cloud ID" : "แชร์ร่วมกับฉันผ่าน #ownCloud ด้วยคลาวด์ไอดี",
+ "Share with me through my #ownCloud Federated Cloud ID, see %s" : "แชร์ร่วมกับฉันผ่าน #ownCloud ด้วยไอดีคลาวด์ในเครือ สามารถดูได้ที่ %s",
+ "Share with me through my #ownCloud Federated Cloud ID" : "แชร์ร่วมกับฉันผ่าน #ownCloud ด้วยไอดีคลาวด์ในเครือ",
"This share is password-protected" : "นี้แชร์การป้องกันด้วยรหัสผ่าน",
"The password is wrong. Try again." : "รหัสผ่านที่ไม่ถูกต้อง กรุณาลองอีกครั้ง",
"Password" : "รหัสผ่าน",
@@ -61,7 +61,7 @@
"Allow users on this server to send shares to other servers" : "อนุญาตให้ผู้ใช้บนเซิร์ฟเวอร์นี้ส่งแชร์ไปยังเซิร์ฟเวอร์อื่นๆ",
"Allow users on this server to receive shares from other servers" : "อนุญาตให้ผู้ใช้บนเซิร์ฟเวอร์นี้ได้รับการแชร์จากเซิร์ฟเวอร์อื่นๆ",
"Federated Cloud" : "สหพันธ์คลาวด์",
- "Your Federated Cloud ID:" : "คลาวด์ไอดีของคุณ:",
+ "Your Federated Cloud ID:" : "ไอดีคลาวด์ของคุณ:",
"Share it:" : "แชร์มัน:",
"Add it to your website:" : "เพิ่มไปยังเว็บไซต์ของคุณ:",
"Share with me via ownCloud" : "แชร์ร่วมกับฉันผ่าน ownCloud",
diff --git a/apps/files_sharing/lib/cache.php b/apps/files_sharing/lib/cache.php
index 49f5a4e8e7c..bb62e8078ad 100644
--- a/apps/files_sharing/lib/cache.php
+++ b/apps/files_sharing/lib/cache.php
@@ -120,7 +120,7 @@ class Shared_Cache extends Cache {
if (!is_int($sourceId) || $sourceId === 0) {
$sourceId = $this->storage->getSourceId();
}
- $query = \OC_DB::prepare(
+ $query = \OCP\DB::prepare(
'SELECT `fileid`, `storage`, `path`, `parent`, `name`, `mimetype`, `mimepart`,'
. ' `size`, `mtime`, `encrypted`, `storage_mtime`, `etag`, `permissions`'
. ' FROM `*PREFIX*filecache` WHERE `fileid` = ?');
@@ -499,7 +499,7 @@ class Shared_Cache extends Cache {
*/
private function getParentInfo($id) {
$sql = 'SELECT `parent`, `name` FROM `*PREFIX*filecache` WHERE `fileid` = ?';
- $query = \OC_DB::prepare($sql);
+ $query = \OCP\DB::prepare($sql);
$result = $query->execute(array($id));
if ($row = $result->fetchRow()) {
return array((int)$row['parent'], $row['name']);
diff --git a/apps/files_sharing/lib/controllers/externalsharescontroller.php b/apps/files_sharing/lib/controllers/externalsharescontroller.php
index da0951d8e7c..494a544b2b8 100644
--- a/apps/files_sharing/lib/controllers/externalsharescontroller.php
+++ b/apps/files_sharing/lib/controllers/externalsharescontroller.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
+ * @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
*
* @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 653d4b7dd47..dd2c086e84c 100644
--- a/apps/files_sharing/lib/external/scanner.php
+++ b/apps/files_sharing/lib/external/scanner.php
@@ -34,7 +34,7 @@ class Scanner extends \OC\Files\Cache\Scanner {
protected $storage;
/** {@inheritDoc} */
- public function scan($path, $recursive = self::SCAN_RECURSIVE, $reuse = -1) {
+ public function scan($path, $recursive = self::SCAN_RECURSIVE, $reuse = -1, $lock = true) {
$this->scanAll();
}
diff --git a/apps/files_sharing/lib/helper.php b/apps/files_sharing/lib/helper.php
index c76704802b1..38cb73be29c 100644
--- a/apps/files_sharing/lib/helper.php
+++ b/apps/files_sharing/lib/helper.php
@@ -55,13 +55,13 @@ class Helper {
$linkItem = \OCP\Share::getShareByToken($token, !$password);
if($linkItem === false || ($linkItem['item_type'] !== 'file' && $linkItem['item_type'] !== 'folder')) {
\OC_Response::setStatus(404);
- \OC_Log::write('core-preview', 'Passed token parameter is not valid', \OC_Log::DEBUG);
+ \OCP\Util::writeLog('core-preview', 'Passed token parameter is not valid', \OCP\Util::DEBUG);
exit;
}
if(!isset($linkItem['uid_owner']) || !isset($linkItem['file_source'])) {
\OC_Response::setStatus(500);
- \OC_Log::write('core-preview', 'Passed token seems to be valid, but it does not contain all necessary information . ("' . $token . '")', \OC_Log::WARN);
+ \OCP\Util::writeLog('core-preview', 'Passed token seems to be valid, but it does not contain all necessary information . ("' . $token . '")', \OCP\Util::WARN);
exit;
}
diff --git a/apps/files_sharing/lib/hooks.php b/apps/files_sharing/lib/hooks.php
index c3588ecdfe5..7dd04f2f4a0 100644
--- a/apps/files_sharing/lib/hooks.php
+++ b/apps/files_sharing/lib/hooks.php
@@ -2,6 +2,7 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin Appelman <icewind@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_sharing/lib/mountprovider.php b/apps/files_sharing/lib/mountprovider.php
index c5d3643f28d..3f59fd131d0 100644
--- a/apps/files_sharing/lib/mountprovider.php
+++ b/apps/files_sharing/lib/mountprovider.php
@@ -1,9 +1,23 @@
<?php
/**
- * Copyright (c) 2015 Robin Appelman <icewind@owncloud.com>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
+ * @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin Appelman <icewind@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;
diff --git a/apps/files_sharing/lib/propagation/changewatcher.php b/apps/files_sharing/lib/propagation/changewatcher.php
index 483f436e289..9f23c19be88 100644
--- a/apps/files_sharing/lib/propagation/changewatcher.php
+++ b/apps/files_sharing/lib/propagation/changewatcher.php
@@ -1,9 +1,23 @@
<?php
/**
- * Copyright (c) 2015 Robin Appelman <icewind@owncloud.com>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
+ * @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin Appelman <icewind@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;
@@ -25,10 +39,17 @@ class ChangeWatcher {
private $baseView;
/**
+ * @var RecipientPropagator
+ */
+ private $recipientPropagator;
+
+ /**
* @param \OC\Files\View $baseView the view for the logged in user
+ * @param RecipientPropagator $recipientPropagator
*/
- public function __construct(View $baseView) {
+ public function __construct(View $baseView, RecipientPropagator $recipientPropagator) {
$this->baseView = $baseView;
+ $this->recipientPropagator = $recipientPropagator;
}
@@ -39,6 +60,12 @@ class ChangeWatcher {
if ($mount instanceof SharedMount) {
$this->propagateForOwner($mount->getShare(), $mount->getInternalPath($fullPath), $mount->getOwnerPropagator());
}
+ $info = $this->baseView->getFileInfo($path);
+ if ($info) {
+ // trigger propagation if the subject of the write hook is shared.
+ // if a parent folder of $path is shared the propagation will be triggered from the change propagator hooks
+ $this->recipientPropagator->propagateById($info->getId());
+ }
}
public function renameHook($params) {
diff --git a/apps/files_sharing/lib/propagation/propagationmanager.php b/apps/files_sharing/lib/propagation/propagationmanager.php
index fa073be7f60..7929c2aa5bb 100644
--- a/apps/files_sharing/lib/propagation/propagationmanager.php
+++ b/apps/files_sharing/lib/propagation/propagationmanager.php
@@ -1,9 +1,23 @@
<?php
/**
- * Copyright (c) 2015 Robin Appelman <icewind@owncloud.com>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
+ * @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin Appelman <icewind@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;
@@ -75,7 +89,7 @@ class PropagationManager {
if (isset($this->sharePropagators[$user])) {
return $this->sharePropagators[$user];
}
- $this->sharePropagators[$user] = new RecipientPropagator($user, $this->getChangePropagator($user), $this->config);
+ $this->sharePropagators[$user] = new RecipientPropagator($user, $this->getChangePropagator($user), $this->config, $this);
return $this->sharePropagators[$user];
}
@@ -101,7 +115,8 @@ class PropagationManager {
if (!$user) {
return;
}
- $watcher = new ChangeWatcher(Filesystem::getView());
+ $recipientPropagator = $this->getSharePropagator($user->getUID());
+ $watcher = new ChangeWatcher(Filesystem::getView(), $recipientPropagator);
// for marking shares owned by the active user as dirty when a file inside them changes
$this->listenToOwnerChanges($user->getUID(), $user->getUID());
diff --git a/apps/files_sharing/lib/propagation/recipientpropagator.php b/apps/files_sharing/lib/propagation/recipientpropagator.php
index 5b7651f2ce7..97ea452aa6c 100644
--- a/apps/files_sharing/lib/propagation/recipientpropagator.php
+++ b/apps/files_sharing/lib/propagation/recipientpropagator.php
@@ -1,9 +1,23 @@
<?php
/**
- * Copyright (c) 2015 Robin Appelman <icewind@owncloud.com>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
+ * @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin Appelman <icewind@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;
@@ -32,16 +46,23 @@ class RecipientPropagator {
protected $config;
/**
+ * @var PropagationManager
+ */
+ private $manager;
+
+ /**
* @param string $userId current user, must match the propagator's
* user
* @param \OC\Files\Cache\ChangePropagator $changePropagator change propagator
* initialized with a view for $user
* @param \OCP\IConfig $config
+ * @param PropagationManager $manager
*/
- public function __construct($userId, $changePropagator, $config) {
+ public function __construct($userId, $changePropagator, $config, PropagationManager $manager) {
$this->userId = $userId;
$this->changePropagator = $changePropagator;
$this->config = $config;
+ $this->manager = $manager;
}
/**
@@ -101,18 +122,24 @@ class RecipientPropagator {
*/
public function attachToPropagator(ChangePropagator $propagator, $owner) {
$propagator->listen('\OC\Files', 'propagate', function ($path, $entry) use ($owner) {
- $shares = Share::getAllSharesForFileId($entry['fileid']);
- foreach ($shares as $share) {
- // propagate down the share tree
- $this->markDirty($share, microtime(true));
+ $this->propagateById($entry['fileid']);
+ });
+ }
- // propagate up the share tree
- $user = $share['uid_owner'];
+ public function propagateById($id) {
+ $shares = Share::getAllSharesForFileId($id);
+ foreach ($shares as $share) {
+ // propagate down the share tree
+ $this->markDirty($share, microtime(true));
+
+ // propagate up the share tree
+ $user = $share['uid_owner'];
+ if($user !== $this->userId) {
$view = new View('/' . $user . '/files');
$path = $view->getPath($share['file_source']);
- $watcher = new ChangeWatcher($view);
+ $watcher = new ChangeWatcher($view, $this->manager->getSharePropagator($user));
$watcher->writeHook(['path' => $path]);
}
- });
+ }
}
}
diff --git a/apps/files_sharing/lib/share/file.php b/apps/files_sharing/lib/share/file.php
index 1822c2468f1..9c09e05408b 100644
--- a/apps/files_sharing/lib/share/file.php
+++ b/apps/files_sharing/lib/share/file.php
@@ -183,7 +183,7 @@ class OC_Share_Backend_File implements OCP\Share_Backend_File_Dependent {
if (isset($source['parent'])) {
$parent = $source['parent'];
while (isset($parent)) {
- $query = \OC_DB::prepare('SELECT `parent`, `uid_owner` FROM `*PREFIX*share` WHERE `id` = ?', 1);
+ $query = \OCP\DB::prepare('SELECT `parent`, `uid_owner` FROM `*PREFIX*share` WHERE `id` = ?', 1);
$item = $query->execute(array($parent))->fetchRow();
if (isset($item['parent'])) {
$parent = $item['parent'];
diff --git a/apps/files_sharing/lib/share/folder.php b/apps/files_sharing/lib/share/folder.php
index d7b7c0c8f30..e18839b577d 100644
--- a/apps/files_sharing/lib/share/folder.php
+++ b/apps/files_sharing/lib/share/folder.php
@@ -64,7 +64,7 @@ class OC_Share_Backend_Folder extends OC_Share_Backend_File implements OCP\Share
* @return mixed parent ID or null
*/
private function getParentId($child) {
- $query = \OC_DB::prepare('SELECT `parent` FROM `*PREFIX*filecache` WHERE `fileid` = ?');
+ $query = \OCP\DB::prepare('SELECT `parent` FROM `*PREFIX*filecache` WHERE `fileid` = ?');
$result = $query->execute(array($child));
$row = $result->fetchRow();
$parent = ($row) ? $row['parent'] : null;
@@ -75,7 +75,7 @@ class OC_Share_Backend_Folder extends OC_Share_Backend_File implements OCP\Share
public function getChildren($itemSource) {
$children = array();
$parents = array($itemSource);
- $query = \OC_DB::prepare('SELECT `id` FROM `*PREFIX*mimetypes` WHERE `mimetype` = ?');
+ $query = \OCP\DB::prepare('SELECT `id` FROM `*PREFIX*mimetypes` WHERE `mimetype` = ?');
$result = $query->execute(array('httpd/unix-directory'));
if ($row = $result->fetchRow()) {
$mimetype = $row['id'];
@@ -84,7 +84,7 @@ class OC_Share_Backend_Folder extends OC_Share_Backend_File implements OCP\Share
}
while (!empty($parents)) {
$parents = "'".implode("','", $parents)."'";
- $query = OC_DB::prepare('SELECT `fileid`, `name`, `mimetype` FROM `*PREFIX*filecache`'
+ $query = \OCP\DB::prepare('SELECT `fileid`, `name`, `mimetype` FROM `*PREFIX*filecache`'
.' WHERE `parent` IN ('.$parents.')');
$result = $query->execute();
$parents = array();
diff --git a/apps/files_sharing/lib/sharedmount.php b/apps/files_sharing/lib/sharedmount.php
index 15aea0aa52a..2afc0f1f270 100644
--- a/apps/files_sharing/lib/sharedmount.php
+++ b/apps/files_sharing/lib/sharedmount.php
@@ -87,7 +87,7 @@ class SharedMount extends MountPoint implements MoveableMount {
// if the user renames a mount point from a group share we need to create a new db entry
// for the unique name
if ($share['share_type'] === \OCP\Share::SHARE_TYPE_GROUP && empty($share['unique_name'])) {
- $query = \OC_DB::prepare('INSERT INTO `*PREFIX*share` (`item_type`, `item_source`, `item_target`,'
+ $query = \OCP\DB::prepare('INSERT INTO `*PREFIX*share` (`item_type`, `item_source`, `item_target`,'
.' `share_type`, `share_with`, `uid_owner`, `permissions`, `stime`, `file_source`,'
.' `file_target`, `token`, `parent`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)');
$arguments = array($share['item_type'], $share['item_source'], $share['item_target'],
@@ -95,7 +95,7 @@ class SharedMount extends MountPoint implements MoveableMount {
$newPath, $share['token'], $share['id']);
} else {
// rename mount point
- $query = \OC_DB::prepare(
+ $query = \OCP\DB::prepare(
'Update `*PREFIX*share`
SET `file_target` = ?
WHERE `id` = ?'
diff --git a/apps/files_sharing/lib/sharedstorage.php b/apps/files_sharing/lib/sharedstorage.php
index bf61dda3718..50957663b34 100644
--- a/apps/files_sharing/lib/sharedstorage.php
+++ b/apps/files_sharing/lib/sharedstorage.php
@@ -7,6 +7,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 scambra <sergio@entrecables.com>
* @author Vincent Petry <pvince81@owncloud.com>
*
diff --git a/apps/files_sharing/lib/updater.php b/apps/files_sharing/lib/updater.php
index 88bb68aa36e..9dd106a548c 100644
--- a/apps/files_sharing/lib/updater.php
+++ b/apps/files_sharing/lib/updater.php
@@ -77,10 +77,10 @@ class Shared_Updater {
$shareType = $params['shareType'];
if ($shareType === \OCP\Share::SHARE_TYPE_USER) {
- self::correctUsersFolder($shareWith, '/');
+ self::correctUsersFolder($shareWith, $params['fileTarget']);
} elseif ($shareType === \OCP\Share::SHARE_TYPE_GROUP) {
foreach (\OC_Group::usersInGroup($shareWith) as $user) {
- self::correctUsersFolder($user, '/');
+ self::correctUsersFolder($user, $params['fileTarget']);
}
}
}
@@ -138,7 +138,7 @@ class Shared_Updater {
*/
static public function fixBrokenSharesOnAppUpdate() {
// delete all shares where the original file no longer exists
- $findAndRemoveShares = \OC_DB::prepare('DELETE FROM `*PREFIX*share` ' .
+ $findAndRemoveShares = \OCP\DB::prepare('DELETE FROM `*PREFIX*share` ' .
'WHERE `item_type` IN (\'file\', \'folder\') ' .
'AND `file_source` NOT IN (SELECT `fileid` FROM `*PREFIX*filecache`)'
);
diff --git a/apps/files_sharing/list.php b/apps/files_sharing/list.php
index da640fd08d3..2577ed91006 100644
--- a/apps/files_sharing/list.php
+++ b/apps/files_sharing/list.php
@@ -1,6 +1,5 @@
<?php
/**
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/publicwebdav.php b/apps/files_sharing/publicwebdav.php
index b70274e6bc0..be7530897f6 100644
--- a/apps/files_sharing/publicwebdav.php
+++ b/apps/files_sharing/publicwebdav.php
@@ -1,7 +1,6 @@
<?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 Thomas Müller <thomas.mueller@tmit.eu>
@@ -47,7 +46,7 @@ $server->addPlugin(new \Sabre\DAV\Auth\Plugin($authBackend, $defaults->getName()
// FIXME: The following line is a workaround for legacy components relying on being able to send a GET to /
$server->addPlugin(new \OC\Connector\Sabre\DummyGetResponsePlugin());
$server->addPlugin(new \OC\Connector\Sabre\FilesPlugin($objectTree));
-$server->addPlugin(new \OC\Connector\Sabre\MaintenancePlugin());
+$server->addPlugin(new \OC\Connector\Sabre\MaintenancePlugin(\OC::$server->getConfig()));
$server->addPlugin(new \OC\Connector\Sabre\ExceptionLoggerPlugin('webdav', \OC::$server->getLogger()));
// wait with registering these until auth is handled and the filesystem is setup
diff --git a/apps/files_sharing/settings-personal.php b/apps/files_sharing/settings-personal.php
index fdf641e1d2c..9ff94eb16c8 100644
--- a/apps/files_sharing/settings-personal.php
+++ b/apps/files_sharing/settings-personal.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Björn Schießle <schiessle@owncloud.com>
+ * @author Jan-Christoph Borchardt <hey@jancborchardt.net>
* @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/tests/controller/sharecontroller.php b/apps/files_sharing/tests/controller/sharecontroller.php
index 8a075eeab9f..0b56aafc8a9 100644
--- a/apps/files_sharing/tests/controller/sharecontroller.php
+++ b/apps/files_sharing/tests/controller/sharecontroller.php
@@ -4,6 +4,7 @@
* @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 Vincent Cloutier <vincent1cloutier@gmail.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/tests/deleteorphanedsharesjobtest.php b/apps/files_sharing/tests/deleteorphanedsharesjobtest.php
index 8b5afcb9149..124cb83e6f0 100644
--- a/apps/files_sharing/tests/deleteorphanedsharesjobtest.php
+++ b/apps/files_sharing/tests/deleteorphanedsharesjobtest.php
@@ -1,6 +1,5 @@
<?php
/**
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_sharing/tests/etagpropagation.php b/apps/files_sharing/tests/etagpropagation.php
index 60b7c525e35..d978daf200c 100644
--- a/apps/files_sharing/tests/etagpropagation.php
+++ b/apps/files_sharing/tests/etagpropagation.php
@@ -1,5 +1,7 @@
<?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.
@@ -69,9 +71,12 @@ class EtagPropagation extends TestCase {
$view1->mkdir('/directReshare');
$view1->mkdir('/sub1/sub2/folder/other');
$view1->mkdir('/sub1/sub2/folder/other');
+ $view1->file_put_contents('/foo.txt', 'foobar');
$view1->file_put_contents('/sub1/sub2/folder/file.txt', 'foobar');
$view1->file_put_contents('/sub1/sub2/folder/inside/file.txt', 'foobar');
$folderInfo = $view1->getFileInfo('/sub1/sub2/folder');
+ $fileInfo = $view1->getFileInfo('/foo.txt');
+ \OCP\Share::shareItem('file', $fileInfo->getId(), \OCP\Share::SHARE_TYPE_USER, self::TEST_FILES_SHARING_API_USER2, 31);
\OCP\Share::shareItem('folder', $folderInfo->getId(), \OCP\Share::SHARE_TYPE_USER, self::TEST_FILES_SHARING_API_USER2, 31);
\OCP\Share::shareItem('folder', $folderInfo->getId(), \OCP\Share::SHARE_TYPE_USER, self::TEST_FILES_SHARING_API_USER3, 31);
$folderInfo = $view1->getFileInfo('/directReshare');
@@ -179,6 +184,15 @@ class EtagPropagation extends TestCase {
$this->assertAllUnchaged();
}
+ public function testOwnerWritesToSingleFileShare() {
+ $this->loginAsUser(self::TEST_FILES_SHARING_API_USER1);
+ Filesystem::file_put_contents('/foo.txt', 'bar');
+ $this->assertEtagsNotChanged([self::TEST_FILES_SHARING_API_USER4, self::TEST_FILES_SHARING_API_USER3]);
+ $this->assertEtagsChanged([self::TEST_FILES_SHARING_API_USER1, self::TEST_FILES_SHARING_API_USER2]);
+
+ $this->assertAllUnchaged();
+ }
+
public function testOwnerWritesToShareWithReshare() {
$this->loginAsUser(self::TEST_FILES_SHARING_API_USER1);
Filesystem::file_put_contents('/sub1/sub2/folder/inside/bar.txt', 'bar');
diff --git a/apps/files_sharing/tests/middleware/sharingcheckmiddleware.php b/apps/files_sharing/tests/middleware/sharingcheckmiddleware.php
index c52036e6f5b..0db8a1ed5bc 100644
--- a/apps/files_sharing/tests/middleware/sharingcheckmiddleware.php
+++ b/apps/files_sharing/tests/middleware/sharingcheckmiddleware.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @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>
diff --git a/apps/files_sharing/tests/permissions.php b/apps/files_sharing/tests/permissions.php
index 91f0347163a..c10333defaa 100644
--- a/apps/files_sharing/tests/permissions.php
+++ b/apps/files_sharing/tests/permissions.php
@@ -3,6 +3,7 @@
* @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/sharedmount.php b/apps/files_sharing/tests/sharedmount.php
index ff4cb4c0e49..d1db6a644f0 100644
--- a/apps/files_sharing/tests/sharedmount.php
+++ b/apps/files_sharing/tests/sharedmount.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
@@ -61,11 +62,11 @@ class Test_Files_Sharing_Mount extends OCA\Files_sharing\Tests\TestCase {
self::TEST_FILES_SHARING_API_USER2, 31);
$statement = "UPDATE `*PREFIX*share` SET `file_target` = ? where `share_with` = ?";
- $query = \OC_DB::prepare($statement);
+ $query = \OCP\DB::prepare($statement);
$arguments = array('/foo/bar' . $this->folder, self::TEST_FILES_SHARING_API_USER2);
$query->execute($arguments);
- $query = \OC_DB::prepare('SELECT * FROM `*PREFIX*share`');
+ $query = \OCP\DB::prepare('SELECT * FROM `*PREFIX*share`');
$result = $query->execute();
$shares = $result->fetchAll();
@@ -79,7 +80,7 @@ class Test_Files_Sharing_Mount extends OCA\Files_sharing\Tests\TestCase {
// share should have moved up
- $query = \OC_DB::prepare('SELECT * FROM `*PREFIX*share`');
+ $query = \OCP\DB::prepare('SELECT * FROM `*PREFIX*share`');
$result = $query->execute();
$shares = $result->fetchAll();
diff --git a/apps/files_sharing/tests/sizepropagation.php b/apps/files_sharing/tests/sizepropagation.php
index 4ab3475ccfc..dbaa316f603 100644
--- a/apps/files_sharing/tests/sizepropagation.php
+++ b/apps/files_sharing/tests/sizepropagation.php
@@ -1,6 +1,7 @@
<?php
/**
- * @author Vincent Petry <pvince81@owncloud.com>
+ * @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin Appelman <icewind@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_sharing/tests/unsharechildren.php b/apps/files_sharing/tests/unsharechildren.php
index b49180fdc83..0cf551c0500 100644
--- a/apps/files_sharing/tests/unsharechildren.php
+++ b/apps/files_sharing/tests/unsharechildren.php
@@ -3,7 +3,7 @@
* @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>
+ * @author Robin Appelman <icewind@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_sharing/tests/updater.php b/apps/files_sharing/tests/updater.php
index 294388bfe26..63ab452a5e1 100644
--- a/apps/files_sharing/tests/updater.php
+++ b/apps/files_sharing/tests/updater.php
@@ -3,7 +3,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>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
@@ -117,14 +116,34 @@ class Test_Files_Sharing_Updater extends OCA\Files_Sharing\Tests\TestCase {
\OC\Files\Filesystem::getLoader()->removeStorageWrapper('oc_trashbin');
}
+ public function shareFolderProvider() {
+ return [
+ ['/'],
+ ['/my_shares'],
+ ];
+ }
+
/**
* if a file gets shared the etag for the recipients root should change
+ *
+ * @dataProvider shareFolderProvider
+ *
+ * @param string $shareFolder share folder to use
*/
- function testShareFile() {
+ public function testShareFile($shareFolder) {
+ $config = \OC::$server->getConfig();
+ $oldShareFolder = $config->getSystemValue('share_folder');
+ $config->setSystemValue('share_folder', $shareFolder);
+
$this->loginHelper(self::TEST_FILES_SHARING_API_USER2);
- $beforeShare = \OC\Files\Filesystem::getFileInfo('');
- $etagBeforeShare = $beforeShare->getEtag();
+ $beforeShareRoot = \OC\Files\Filesystem::getFileInfo('');
+ $etagBeforeShareRoot = $beforeShareRoot->getEtag();
+
+ \OC\Files\Filesystem::mkdir($shareFolder);
+
+ $beforeShareDir = \OC\Files\Filesystem::getFileInfo($shareFolder);
+ $etagBeforeShareDir = $beforeShareDir->getEtag();
$this->loginHelper(self::TEST_FILES_SHARING_API_USER1);
$fileinfo = \OC\Files\Filesystem::getFileInfo($this->folder);
@@ -133,17 +152,25 @@ class Test_Files_Sharing_Updater extends OCA\Files_Sharing\Tests\TestCase {
$this->loginHelper(self::TEST_FILES_SHARING_API_USER2);
- $afterShare = \OC\Files\Filesystem::getFileInfo('');
- $etagAfterShare = $afterShare->getEtag();
+ $afterShareRoot = \OC\Files\Filesystem::getFileInfo('');
+ $etagAfterShareRoot = $afterShareRoot->getEtag();
+
+ $afterShareDir = \OC\Files\Filesystem::getFileInfo($shareFolder);
+ $etagAfterShareDir = $afterShareDir->getEtag();
- $this->assertTrue(is_string($etagBeforeShare));
- $this->assertTrue(is_string($etagAfterShare));
- $this->assertTrue($etagBeforeShare !== $etagAfterShare);
+ $this->assertTrue(is_string($etagBeforeShareRoot));
+ $this->assertTrue(is_string($etagBeforeShareDir));
+ $this->assertTrue(is_string($etagAfterShareRoot));
+ $this->assertTrue(is_string($etagAfterShareDir));
+ $this->assertTrue($etagBeforeShareRoot !== $etagAfterShareRoot);
+ $this->assertTrue($etagBeforeShareDir !== $etagAfterShareDir);
// cleanup
$this->loginHelper(self::TEST_FILES_SHARING_API_USER1);
$result = \OCP\Share::unshare('folder', $fileinfo->getId(), \OCP\Share::SHARE_TYPE_USER, self::TEST_FILES_SHARING_API_USER2);
$this->assertTrue($result);
+
+ $config->setSystemValue('share_folder', $oldShareFolder);
}
/**
diff --git a/apps/files_sharing/tests/watcher.php b/apps/files_sharing/tests/watcher.php
index 4af5de6aaae..488792db4ef 100644
--- a/apps/files_sharing/tests/watcher.php
+++ b/apps/files_sharing/tests/watcher.php
@@ -4,6 +4,7 @@
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @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/ajax/delete.php b/apps/files_trashbin/ajax/delete.php
index 944e353b1eb..63002671bfa 100644
--- a/apps/files_trashbin/ajax/delete.php
+++ b/apps/files_trashbin/ajax/delete.php
@@ -3,7 +3,6 @@
* @author Bart Visscher <bartv@thisnet.nl>
* @author Björn Schießle <schiessle@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Vincent Petry <pvince81@owncloud.com>
*
@@ -65,7 +64,7 @@ foreach ($list as $file) {
OCA\Files_Trashbin\Trashbin::delete($filename, \OCP\User::getUser(), $timestamp);
if (OCA\Files_Trashbin\Trashbin::file_exists($filename, $timestamp)) {
$error[] = $filename;
- OC_Log::write('trashbin','can\'t delete ' . $filename . ' permanently.', OC_Log::ERROR);
+ \OCP\Util::writeLog('trashbin','can\'t delete ' . $filename . ' permanently.', \OCP\Util::ERROR);
}
// only list deleted files if not deleting everything
else if (!$deleteAll) {
diff --git a/apps/files_trashbin/ajax/list.php b/apps/files_trashbin/ajax/list.php
index a777bdcf124..46168f7865e 100644
--- a/apps/files_trashbin/ajax/list.php
+++ b/apps/files_trashbin/ajax/list.php
@@ -2,7 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @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 af86dafa496..c8bae2c5ce9 100644
--- a/apps/files_trashbin/ajax/preview.php
+++ b/apps/files_trashbin/ajax/preview.php
@@ -3,7 +3,6 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Georg Ehrke <georg@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
@@ -36,13 +35,13 @@ $scalingUp = array_key_exists('scalingup', $_GET) ? (bool) $_GET['scalingup'] :
if($file === '') {
\OC_Response::setStatus(400); //400 Bad Request
- \OC_Log::write('core-preview', 'No file parameter was passed', \OC_Log::DEBUG);
+ \OCP\Util::writeLog('core-preview', 'No file parameter was passed', \OCP\Util::DEBUG);
exit;
}
if($maxX === 0 || $maxY === 0) {
\OC_Response::setStatus(400); //400 Bad Request
- \OC_Log::write('core-preview', 'x and/or y set to 0', \OC_Log::DEBUG);
+ \OCP\Util::writeLog('core-preview', 'x and/or y set to 0', \OCP\Util::DEBUG);
exit;
}
@@ -72,5 +71,5 @@ try{
$preview->showPreview();
}catch(\Exception $e) {
\OC_Response::setStatus(500);
- \OC_Log::write('core', $e->getmessage(), \OC_Log::DEBUG);
+ \OCP\Util::writeLog('core', $e->getmessage(), \OCP\Util::DEBUG);
}
diff --git a/apps/files_trashbin/ajax/undelete.php b/apps/files_trashbin/ajax/undelete.php
index e7d8562f57d..8eda7a8d640 100644
--- a/apps/files_trashbin/ajax/undelete.php
+++ b/apps/files_trashbin/ajax/undelete.php
@@ -3,7 +3,6 @@
* @author Bart Visscher <bartv@thisnet.nl>
* @author Björn Schießle <schiessle@owncloud.com>
* @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>
* @author Vincent Petry <pvince81@owncloud.com>
@@ -71,7 +70,7 @@ foreach ($list as $file) {
if ( !OCA\Files_Trashbin\Trashbin::restore($path, $filename, $timestamp) ) {
$error[] = $filename;
- OC_Log::write('trashbin', 'can\'t restore ' . $filename, OC_Log::ERROR);
+ \OCP\Util::writeLog('trashbin', 'can\'t restore ' . $filename, \OCP\Util::ERROR);
} else {
$success[$i]['filename'] = $file;
$success[$i]['timestamp'] = $timestamp;
diff --git a/apps/files_trashbin/appinfo/routes.php b/apps/files_trashbin/appinfo/routes.php
index 526ad1d4e35..99a03d6b969 100644
--- a/apps/files_trashbin/appinfo/routes.php
+++ b/apps/files_trashbin/appinfo/routes.php
@@ -1,6 +1,7 @@
<?php
/**
* @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 Vincent Petry <pvince81@owncloud.com>
diff --git a/apps/files_trashbin/appinfo/update.php b/apps/files_trashbin/appinfo/update.php
index 94bd353eccc..e1a0cf95576 100644
--- a/apps/files_trashbin/appinfo/update.php
+++ b/apps/files_trashbin/appinfo/update.php
@@ -2,7 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Christopher Schäpers <kondou@ts.unde.re>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_trashbin/command/expire.php b/apps/files_trashbin/command/expire.php
index e7dd5c573c2..89b949bbcdf 100644
--- a/apps/files_trashbin/command/expire.php
+++ b/apps/files_trashbin/command/expire.php
@@ -1,7 +1,10 @@
<?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>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_trashbin/l10n/et_EE.js b/apps/files_trashbin/l10n/et_EE.js
index 4e74390edb1..9298fdd5b18 100644
--- a/apps/files_trashbin/l10n/et_EE.js
+++ b/apps/files_trashbin/l10n/et_EE.js
@@ -9,6 +9,7 @@ OC.L10N.register(
"Error" : "Viga",
"restored" : "taastatud",
"No deleted files" : "Kustutatud faile pole",
+ "You will be able to recover deleted files from here" : "Sa saad siit kustutatud faile taastada",
"No entries found in this folder" : "Selles kaustas ei leitud kirjeid",
"Select all" : "Vali kõik",
"Name" : "Nimi",
diff --git a/apps/files_trashbin/l10n/et_EE.json b/apps/files_trashbin/l10n/et_EE.json
index fa3aab09ba1..734c8f6f2ec 100644
--- a/apps/files_trashbin/l10n/et_EE.json
+++ b/apps/files_trashbin/l10n/et_EE.json
@@ -7,6 +7,7 @@
"Error" : "Viga",
"restored" : "taastatud",
"No deleted files" : "Kustutatud faile pole",
+ "You will be able to recover deleted files from here" : "Sa saad siit kustutatud faile taastada",
"No entries found in this folder" : "Selles kaustas ei leitud kirjeid",
"Select all" : "Vali kõik",
"Name" : "Nimi",
diff --git a/apps/files_trashbin/lib/helper.php b/apps/files_trashbin/lib/helper.php
index 320ad2eeb8e..42412d5d4c9 100644
--- a/apps/files_trashbin/lib/helper.php
+++ b/apps/files_trashbin/lib/helper.php
@@ -3,7 +3,6 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
- * @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>
diff --git a/apps/files_trashbin/lib/trashbin.php b/apps/files_trashbin/lib/trashbin.php
index b30ea7c69f8..2d4ea7adc13 100644
--- a/apps/files_trashbin/lib/trashbin.php
+++ b/apps/files_trashbin/lib/trashbin.php
@@ -5,13 +5,13 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Florin Peter <github@florin-peter.de>
* @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 Qingping Hou <dave2008713@gmail.com>
* @author Robin Appelman <icewind@owncloud.com>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Sjors van der Pluijm <sjors@desjors.nl>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Victor Dubiniuk <dubiniuk@owncloud.com>
@@ -160,7 +160,7 @@ class Trashbin {
$query = \OC_DB::prepare("INSERT INTO `*PREFIX*files_trash` (`id`,`timestamp`,`location`,`user`) VALUES (?,?,?,?)");
$result = $query->execute(array($ownerFilename, $timestamp, $ownerLocation, $owner));
if (!$result) {
- \OC_Log::write('files_trashbin', 'trash bin database couldn\'t be updated for the files owner', \OC_log::ERROR);
+ \OCP\Util::writeLog('files_trashbin', 'trash bin database couldn\'t be updated for the files owner', \OC_log::ERROR);
}
}
}
@@ -216,7 +216,7 @@ class Trashbin {
if ($trashStorage->file_exists($trashInternalPath)) {
$trashStorage->unlink($trashInternalPath);
}
- \OC_Log::write('files_trashbin', 'Couldn\'t move ' . $file_path . ' to the trash bin', \OC_log::ERROR);
+ \OCP\Util::writeLog('files_trashbin', 'Couldn\'t move ' . $file_path . ' to the trash bin', \OC_log::ERROR);
}
if ($sourceStorage->file_exists($sourceInternalPath)) { // failed to delete the original file, abort
@@ -231,7 +231,7 @@ class Trashbin {
$query = \OC_DB::prepare("INSERT INTO `*PREFIX*files_trash` (`id`,`timestamp`,`location`,`user`) VALUES (?,?,?,?)");
$result = $query->execute(array($filename, $timestamp, $location, $user));
if (!$result) {
- \OC_Log::write('files_trashbin', 'trash bin database couldn\'t be updated', \OC_log::ERROR);
+ \OCP\Util::writeLog('files_trashbin', 'trash bin database couldn\'t be updated', \OC_log::ERROR);
}
\OCP\Util::emitHook('\OCA\Files_Trashbin\Trashbin', 'post_moveToTrash', array('filePath' => \OC\Files\Filesystem::normalizePath($file_path),
'trashPath' => \OC\Files\Filesystem::normalizePath($filename . '.d' . $timestamp)));
@@ -358,7 +358,7 @@ class Trashbin {
if ($timestamp) {
$location = self::getLocation($user, $filename, $timestamp);
if ($location === false) {
- \OC_Log::write('files_trashbin', 'trash bin database inconsistent!', \OC_Log::ERROR);
+ \OCP\Util::writeLog('files_trashbin', 'trash bin database inconsistent!', \OCP\Util::ERROR);
} else {
// if location no longer exists, restore file in the root directory
if ($location !== '/' &&
@@ -675,7 +675,7 @@ class Trashbin {
foreach ($files as $file) {
if ($availableSpace < 0) {
$tmp = self::delete($file['name'], $user, $file['mtime']);
- \OC_Log::write('files_trashbin', 'remove "' . $file['name'] . '" (' . $tmp . 'B) to meet the limit of trash bin size (50% of available quota)', \OC_log::INFO);
+ \OCP\Util::writeLog('files_trashbin', 'remove "' . $file['name'] . '" (' . $tmp . 'B) to meet the limit of trash bin size (50% of available quota)', \OC_log::INFO);
$availableSpace += $tmp;
$size += $tmp;
} else {
@@ -704,7 +704,7 @@ class Trashbin {
if ($timestamp <= $limit) {
$count++;
$size += self::delete($filename, $user, $timestamp);
- \OC_Log::write('files_trashbin', 'remove "' . $filename . '" from trash bin because it is older than ' . $retention_obligation, \OC_log::INFO);
+ \OCP\Util::writeLog('files_trashbin', 'remove "' . $filename . '" from trash bin because it is older than ' . $retention_obligation, \OCP\Util::INFO);
} else {
break;
}
diff --git a/apps/files_trashbin/list.php b/apps/files_trashbin/list.php
index 68602ef8d8a..890f03aa09a 100644
--- a/apps/files_trashbin/list.php
+++ b/apps/files_trashbin/list.php
@@ -2,7 +2,6 @@
/**
* @author Bart Visscher <bartv@thisnet.nl>
* @author Björn Schießle <schiessle@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Vincent Petry <pvince81@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/files_trashbin/tests/trashbin.php b/apps/files_trashbin/tests/trashbin.php
index 5535b3315bc..299c45b19a7 100644
--- a/apps/files_trashbin/tests/trashbin.php
+++ b/apps/files_trashbin/tests/trashbin.php
@@ -1,6 +1,7 @@
<?php
/**
* @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 Robin Appelman <icewind@owncloud.com>
diff --git a/apps/files_versions/ajax/preview.php b/apps/files_versions/ajax/preview.php
index fab46abdc48..8a9a5fba14c 100644
--- a/apps/files_versions/ajax/preview.php
+++ b/apps/files_versions/ajax/preview.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.
@@ -34,13 +33,13 @@ $scalingUp = array_key_exists('scalingup', $_GET) ? (bool) $_GET['scalingup'] :
if($file === '' && $version === '') {
\OC_Response::setStatus(400); //400 Bad Request
- \OC_Log::write('versions-preview', 'No file parameter was passed', \OC_Log::DEBUG);
+ \OCP\Util::writeLog('versions-preview', 'No file parameter was passed', \OCP\Util::DEBUG);
exit;
}
if($maxX === 0 || $maxY === 0) {
\OC_Response::setStatus(400); //400 Bad Request
- \OC_Log::write('versions-preview', 'x and/or y set to 0', \OC_Log::DEBUG);
+ \OCP\Util::writeLog('versions-preview', 'x and/or y set to 0', \OCP\Util::DEBUG);
exit;
}
@@ -56,5 +55,5 @@ try {
$preview->showPreview();
}catch(\Exception $e) {
\OC_Response::setStatus(500);
- \OC_Log::write('core', $e->getmessage(), \OC_Log::DEBUG);
+ \OCP\Util::writeLog('core', $e->getmessage(), \OCP\Util::DEBUG);
}
diff --git a/apps/files_versions/ajax/rollbackVersion.php b/apps/files_versions/ajax/rollbackVersion.php
index 3f4d78af82b..e75df28dbcd 100644
--- a/apps/files_versions/ajax/rollbackVersion.php
+++ b/apps/files_versions/ajax/rollbackVersion.php
@@ -4,7 +4,6 @@
* @author Björn Schießle <schiessle@owncloud.com>
* @author Frank Karlitschek <frank@owncloud.org>
* @author Lukas Reschke <lukas@owncloud.com>
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <icewind@owncloud.com>
* @author Sam Tuke <mail@samtuke.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
diff --git a/apps/files_versions/appinfo/app.php b/apps/files_versions/appinfo/app.php
index 0705371b8f4..3bad0d8a94d 100644
--- a/apps/files_versions/appinfo/app.php
+++ b/apps/files_versions/appinfo/app.php
@@ -2,7 +2,6 @@
/**
* @author Björn Schießle <schiessle@owncloud.com>
* @author Frank Karlitschek <frank@owncloud.org>
- * @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/files_versions/appinfo/routes.php b/apps/files_versions/appinfo/routes.php
index 0ea37d3b1b1..5dbed1f93eb 100644
--- a/apps/files_versions/appinfo/routes.php
+++ b/apps/files_versions/appinfo/routes.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Björn Schießle <schiessle@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>
diff --git a/apps/files_versions/appinfo/update.php b/apps/files_versions/appinfo/update.php
index 6fa0fd6185f..524f9bd153f 100644
--- a/apps/files_versions/appinfo/update.php
+++ b/apps/files_versions/appinfo/update.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/files_versions/command/expire.php b/apps/files_versions/command/expire.php
index ec9aa3e80d3..4492497f851 100644
--- a/apps/files_versions/command/expire.php
+++ b/apps/files_versions/command/expire.php
@@ -1,9 +1,24 @@
<?php
/**
- * Copyright (c) 2015 Robin Appelman <icewind@owncloud.com>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
+ * @author Joas Schilling <nickvergessen@owncloud.com>
+ * @author Morris Jobke <hey@morrisjobke.de>
+ * @author Robin Appelman <icewind@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_Versions\Command;
diff --git a/apps/files_versions/download.php b/apps/files_versions/download.php
index 3cc324c2306..22a218f472a 100644
--- a/apps/files_versions/download.php
+++ b/apps/files_versions/download.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Andreas Fischer <bantu@owncloud.com>
* @author Björn Schießle <schiessle@owncloud.com>
* @author Lukas Reschke <lukas@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
diff --git a/apps/files_versions/lib/storage.php b/apps/files_versions/lib/storage.php
index 296cebfe058..e0034f6165f 100644
--- a/apps/files_versions/lib/storage.php
+++ b/apps/files_versions/lib/storage.php
@@ -5,6 +5,7 @@
* @author Felix Moeller <mail@felixmoeller.de>
* @author Florin Peter <github@florin-peter.de>
* @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>
diff --git a/apps/files_versions/tests/versions.php b/apps/files_versions/tests/versions.php
index 0b6bfc698d7..7cca409ed6c 100644
--- a/apps/files_versions/tests/versions.php
+++ b/apps/files_versions/tests/versions.php
@@ -4,7 +4,9 @@
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @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/provisioning_api/appinfo/app.php b/apps/provisioning_api/appinfo/app.php
index 33dfda9e6e9..bb5c541c4fd 100644
--- a/apps/provisioning_api/appinfo/app.php
+++ b/apps/provisioning_api/appinfo/app.php
@@ -1,6 +1,5 @@
<?php
/**
- * @author Morris Jobke <hey@morrisjobke.de>
* @author Tom Needham <tom@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/provisioning_api/appinfo/routes.php b/apps/provisioning_api/appinfo/routes.php
index 87f073f82b0..323c8d609c7 100644
--- a/apps/provisioning_api/appinfo/routes.php
+++ b/apps/provisioning_api/appinfo/routes.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Tom Needham <tom@owncloud.com>
*
diff --git a/apps/provisioning_api/lib/apps.php b/apps/provisioning_api/lib/apps.php
index 2bafd06a084..22713865c1e 100644
--- a/apps/provisioning_api/lib/apps.php
+++ b/apps/provisioning_api/lib/apps.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Tom Needham <tom@owncloud.com>
*
diff --git a/apps/provisioning_api/lib/groups.php b/apps/provisioning_api/lib/groups.php
index cd156110635..81a5a6e5c30 100644
--- a/apps/provisioning_api/lib/groups.php
+++ b/apps/provisioning_api/lib/groups.php
@@ -1,5 +1,6 @@
<?php
/**
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author Tom Needham <tom@owncloud.com>
*
@@ -62,7 +63,7 @@ class Groups{
// Validate name
$groupid = isset($_POST['groupid']) ? $_POST['groupid'] : '';
if( preg_match( '/[^a-zA-Z0-9 _\.@\-]/', $groupid ) || empty($groupid)){
- \OC_Log::write('provisioning_api', 'Attempt made to create group using invalid characters.', \OC_Log::ERROR);
+ \OCP\Util::writeLog('provisioning_api', 'Attempt made to create group using invalid characters.', \OCP\Util::ERROR);
return new OC_OCS_Result(null, 101, 'Invalid group name');
}
// Check if it exists
diff --git a/apps/provisioning_api/lib/users.php b/apps/provisioning_api/lib/users.php
index b709e09726d..fada85b293d 100644
--- a/apps/provisioning_api/lib/users.php
+++ b/apps/provisioning_api/lib/users.php
@@ -1,6 +1,9 @@
<?php
/**
+ * @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
+ * @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Tom Needham <tom@owncloud.com>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
@@ -45,15 +48,15 @@ class Users {
$userId = isset($_POST['userid']) ? $_POST['userid'] : null;
$password = isset($_POST['password']) ? $_POST['password'] : null;
if(OC_User::userExists($userId)) {
- \OC_Log::write('ocs_api', 'Failed addUser attempt: User already exists.', \OC_Log::ERROR);
+ \OCP\Util::writeLog('ocs_api', 'Failed addUser attempt: User already exists.', \OCP\Util::ERROR);
return new OC_OCS_Result(null, 102, 'User already exists');
} else {
try {
OC_User::createUser($userId, $password);
- \OC_Log::write('ocs_api', 'Successful addUser call with userid: '.$_POST['userid'], \OC_Log::INFO);
+ \OCP\Util::writeLog('ocs_api', 'Successful addUser call with userid: '.$_POST['userid'], \OCP\Util::INFO);
return new OC_OCS_Result(null, 100);
} catch (\Exception $e) {
- \OC_Log::write('ocs_api', 'Failed addUser attempt with exception: '.$e->getMessage(), \OC_Log::ERROR);
+ \OCP\Util::writeLog('ocs_api', 'Failed addUser attempt with exception: '.$e->getMessage(), \OCP\Util::ERROR);
return new OC_OCS_Result(null, 101, 'Bad request');
}
}
diff --git a/apps/provisioning_api/tests/appstest.php b/apps/provisioning_api/tests/appstest.php
index 94bff8bbf5b..c4298f017fc 100644
--- a/apps/provisioning_api/tests/appstest.php
+++ b/apps/provisioning_api/tests/appstest.php
@@ -3,6 +3,7 @@
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @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 cb677d9b512..b8b02790698 100644
--- a/apps/provisioning_api/tests/groupstest.php
+++ b/apps/provisioning_api/tests/groupstest.php
@@ -3,6 +3,7 @@
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @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/userstest.php b/apps/provisioning_api/tests/userstest.php
index 0ba76355d58..f2862565039 100644
--- a/apps/provisioning_api/tests/userstest.php
+++ b/apps/provisioning_api/tests/userstest.php
@@ -2,7 +2,10 @@
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
+ * @author Roeland Jago Douma <roeland@famdouma.nl>
+ * @author Thomas Müller <thomas.mueller@tmit.eu>
* @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/user_ldap/ajax/getNewServerConfigPrefix.php b/apps/user_ldap/ajax/getNewServerConfigPrefix.php
index 897e4a9924f..41a061e6c50 100644
--- a/apps/user_ldap/ajax/getNewServerConfigPrefix.php
+++ b/apps/user_ldap/ajax/getNewServerConfigPrefix.php
@@ -1,7 +1,6 @@
<?php
/**
* @author Arthur Schiwon <blizzz@owncloud.com>
- * @author Christopher Schäpers <kondou@ts.unde.re>
* @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/user_ldap/appinfo/install.php b/apps/user_ldap/appinfo/install.php
index bc43466bc1a..0b3f84b8baf 100644
--- a/apps/user_ldap/appinfo/install.php
+++ b/apps/user_ldap/appinfo/install.php
@@ -2,7 +2,6 @@
/**
* @author Arthur Schiwon <blizzz@owncloud.com>
* @author Christopher Schäpers <kondou@ts.unde.re>
- * @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/user_ldap/group_ldap.php b/apps/user_ldap/group_ldap.php
index 0395a4a80e3..a7a90c75832 100644
--- a/apps/user_ldap/group_ldap.php
+++ b/apps/user_ldap/group_ldap.php
@@ -378,9 +378,11 @@ class GROUP_LDAP extends BackendUtility implements \OCP\GroupInterface {
&& intval($this->access->connection->useMemberOfToDetectMembership) === 1
) {
$groupDNs = $this->access->readAttribute($userDN, 'memberOf');
+
if (is_array($groupDNs)) {
+ $groupDNs = $this->access->groupsMatchFilter($groupDNs);
foreach ($groupDNs as $dn) {
- $groups[] = $this->access->dn2groupname($dn);;
+ $groups[] = $this->access->dn2groupname($dn);
}
}
if($primaryGroup !== false) {
diff --git a/apps/user_ldap/l10n/cs_CZ.js b/apps/user_ldap/l10n/cs_CZ.js
index b3896f7e9bd..20269d7c406 100644
--- a/apps/user_ldap/l10n/cs_CZ.js
+++ b/apps/user_ldap/l10n/cs_CZ.js
@@ -78,7 +78,7 @@ OC.L10N.register(
"Verify settings" : "Ověřit nastavení",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
- "Adds a new and blank configuration" : "Přidá novou prázdnou konfiguraci",
+ "Add a new and blank configuration" : "Přidat novou a prázdnou konfiguraci",
"Copy current configuration into new directory binding" : "Zkopírovat současnou konfiguraci do nového adresářového propojení",
"Delete the current configuration" : "Smazat současnou konfiguraci",
"Host" : "Počítač",
diff --git a/apps/user_ldap/l10n/cs_CZ.json b/apps/user_ldap/l10n/cs_CZ.json
index aaf10d22f9c..776290918db 100644
--- a/apps/user_ldap/l10n/cs_CZ.json
+++ b/apps/user_ldap/l10n/cs_CZ.json
@@ -76,7 +76,7 @@
"Verify settings" : "Ověřit nastavení",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
- "Adds a new and blank configuration" : "Přidá novou prázdnou konfiguraci",
+ "Add a new and blank configuration" : "Přidat novou a prázdnou konfiguraci",
"Copy current configuration into new directory binding" : "Zkopírovat současnou konfiguraci do nového adresářového propojení",
"Delete the current configuration" : "Smazat současnou konfiguraci",
"Host" : "Počítač",
diff --git a/apps/user_ldap/l10n/da.js b/apps/user_ldap/l10n/da.js
index 8b619bf4803..d029ed1b994 100644
--- a/apps/user_ldap/l10n/da.js
+++ b/apps/user_ldap/l10n/da.js
@@ -78,7 +78,6 @@ OC.L10N.register(
"Verify settings" : "Verificér indstillinger",
"1. Server" : "1. server",
"%s. Server:" : "%s. server:",
- "Adds a new and blank configuration" : "Tilføjer en ny og blank konfiguration",
"Copy current configuration into new directory binding" : "Kopiér nuværende konfiguration ind i en ny mappetildeling",
"Delete the current configuration" : "Slet den aktuelle konfiguration",
"Host" : "Vært",
diff --git a/apps/user_ldap/l10n/da.json b/apps/user_ldap/l10n/da.json
index 1311710c5c6..28bcfad508f 100644
--- a/apps/user_ldap/l10n/da.json
+++ b/apps/user_ldap/l10n/da.json
@@ -76,7 +76,6 @@
"Verify settings" : "Verificér indstillinger",
"1. Server" : "1. server",
"%s. Server:" : "%s. server:",
- "Adds a new and blank configuration" : "Tilføjer en ny og blank konfiguration",
"Copy current configuration into new directory binding" : "Kopiér nuværende konfiguration ind i en ny mappetildeling",
"Delete the current configuration" : "Slet den aktuelle konfiguration",
"Host" : "Vært",
diff --git a/apps/user_ldap/l10n/de.js b/apps/user_ldap/l10n/de.js
index 1a2d1de62d4..e25b3cb10a8 100644
--- a/apps/user_ldap/l10n/de.js
+++ b/apps/user_ldap/l10n/de.js
@@ -78,7 +78,6 @@ OC.L10N.register(
"Verify settings" : "Einstellungen überprüfen",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
- "Adds a new and blank configuration" : "Fügt eine neue und leere Konfiguration hinzu",
"Copy current configuration into new directory binding" : "Aktuelle Konfiguration in eine neues Verzeichnis-Bind kopieren",
"Delete the current configuration" : "Aktuelle Konfiguration löschen",
"Host" : "Host",
diff --git a/apps/user_ldap/l10n/de.json b/apps/user_ldap/l10n/de.json
index 7a4843900c8..845d382af36 100644
--- a/apps/user_ldap/l10n/de.json
+++ b/apps/user_ldap/l10n/de.json
@@ -76,7 +76,6 @@
"Verify settings" : "Einstellungen überprüfen",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
- "Adds a new and blank configuration" : "Fügt eine neue und leere Konfiguration hinzu",
"Copy current configuration into new directory binding" : "Aktuelle Konfiguration in eine neues Verzeichnis-Bind kopieren",
"Delete the current configuration" : "Aktuelle Konfiguration löschen",
"Host" : "Host",
diff --git a/apps/user_ldap/l10n/de_DE.js b/apps/user_ldap/l10n/de_DE.js
index b2dc48efca6..6880c5f1b70 100644
--- a/apps/user_ldap/l10n/de_DE.js
+++ b/apps/user_ldap/l10n/de_DE.js
@@ -78,7 +78,6 @@ OC.L10N.register(
"Verify settings" : "Einstellungen überprüfen",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
- "Adds a new and blank configuration" : "Fügt eine neue und leere Konfiguration hinzu",
"Copy current configuration into new directory binding" : "Aktuelle Konfiguration in eine neues Verzeichnis-Bind kopieren ",
"Delete the current configuration" : "Aktuelle Konfiguration löschen",
"Host" : "Host",
diff --git a/apps/user_ldap/l10n/de_DE.json b/apps/user_ldap/l10n/de_DE.json
index e58f29a0b60..61644710a34 100644
--- a/apps/user_ldap/l10n/de_DE.json
+++ b/apps/user_ldap/l10n/de_DE.json
@@ -76,7 +76,6 @@
"Verify settings" : "Einstellungen überprüfen",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
- "Adds a new and blank configuration" : "Fügt eine neue und leere Konfiguration hinzu",
"Copy current configuration into new directory binding" : "Aktuelle Konfiguration in eine neues Verzeichnis-Bind kopieren ",
"Delete the current configuration" : "Aktuelle Konfiguration löschen",
"Host" : "Host",
diff --git a/apps/user_ldap/l10n/el.js b/apps/user_ldap/l10n/el.js
index c8207dbabfe..610fcc5af03 100644
--- a/apps/user_ldap/l10n/el.js
+++ b/apps/user_ldap/l10n/el.js
@@ -78,7 +78,7 @@ OC.L10N.register(
"Verify settings" : "Επιβεβαίωση ρυθμίσεων",
"1. Server" : "1. Διακομιστής",
"%s. Server:" : "%s. Διακομιστής:",
- "Adds a new and blank configuration" : "Προσθέτει μια νέα και κενή διαμόρφωση",
+ "Add a new and blank configuration" : "Προσθέτει μια νέα και κενή διαμόρφωση",
"Copy current configuration into new directory binding" : "Αντιγραφή της τρέχουσας διαμόρφωσης σε νέο κατάλογο",
"Delete the current configuration" : "Διαγραφή τρέχουσας διαμόρφωσης",
"Host" : "Διακομιστής",
diff --git a/apps/user_ldap/l10n/el.json b/apps/user_ldap/l10n/el.json
index 1e861ba8f82..03dbf973b55 100644
--- a/apps/user_ldap/l10n/el.json
+++ b/apps/user_ldap/l10n/el.json
@@ -76,7 +76,7 @@
"Verify settings" : "Επιβεβαίωση ρυθμίσεων",
"1. Server" : "1. Διακομιστής",
"%s. Server:" : "%s. Διακομιστής:",
- "Adds a new and blank configuration" : "Προσθέτει μια νέα και κενή διαμόρφωση",
+ "Add a new and blank configuration" : "Προσθέτει μια νέα και κενή διαμόρφωση",
"Copy current configuration into new directory binding" : "Αντιγραφή της τρέχουσας διαμόρφωσης σε νέο κατάλογο",
"Delete the current configuration" : "Διαγραφή τρέχουσας διαμόρφωσης",
"Host" : "Διακομιστής",
diff --git a/apps/user_ldap/l10n/en_GB.js b/apps/user_ldap/l10n/en_GB.js
index baeed9a85ea..6bd17dcba4d 100644
--- a/apps/user_ldap/l10n/en_GB.js
+++ b/apps/user_ldap/l10n/en_GB.js
@@ -78,7 +78,6 @@ OC.L10N.register(
"Verify settings" : "Verify settings",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
- "Adds a new and blank configuration" : "Adds a new and blank configuration",
"Copy current configuration into new directory binding" : "Copy current configuration into new directory binding",
"Delete the current configuration" : "Delete the current configuration",
"Host" : "Host",
diff --git a/apps/user_ldap/l10n/en_GB.json b/apps/user_ldap/l10n/en_GB.json
index 743ae2cd47f..8c19e37154b 100644
--- a/apps/user_ldap/l10n/en_GB.json
+++ b/apps/user_ldap/l10n/en_GB.json
@@ -76,7 +76,6 @@
"Verify settings" : "Verify settings",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
- "Adds a new and blank configuration" : "Adds a new and blank configuration",
"Copy current configuration into new directory binding" : "Copy current configuration into new directory binding",
"Delete the current configuration" : "Delete the current configuration",
"Host" : "Host",
diff --git a/apps/user_ldap/l10n/es.js b/apps/user_ldap/l10n/es.js
index 373c173f6db..02a45f1b444 100644
--- a/apps/user_ldap/l10n/es.js
+++ b/apps/user_ldap/l10n/es.js
@@ -78,7 +78,7 @@ OC.L10N.register(
"Verify settings" : "Verificar configuración",
"1. Server" : "1. Servidor",
"%s. Server:" : "%s. Servidor:",
- "Adds a new and blank configuration" : "Añade una configuración nueva y vacía",
+ "Add a new and blank configuration" : "Agregar una configuración nueva y en blanco",
"Copy current configuration into new directory binding" : "Copiar la actual configuración en un nuevo directorio de enlace",
"Delete the current configuration" : "Elimina la actual configuración",
"Host" : "Servidor",
diff --git a/apps/user_ldap/l10n/es.json b/apps/user_ldap/l10n/es.json
index 10f8e38c131..f836e54c067 100644
--- a/apps/user_ldap/l10n/es.json
+++ b/apps/user_ldap/l10n/es.json
@@ -76,7 +76,7 @@
"Verify settings" : "Verificar configuración",
"1. Server" : "1. Servidor",
"%s. Server:" : "%s. Servidor:",
- "Adds a new and blank configuration" : "Añade una configuración nueva y vacía",
+ "Add a new and blank configuration" : "Agregar una configuración nueva y en blanco",
"Copy current configuration into new directory binding" : "Copiar la actual configuración en un nuevo directorio de enlace",
"Delete the current configuration" : "Elimina la actual configuración",
"Host" : "Servidor",
diff --git a/apps/user_ldap/l10n/fr.js b/apps/user_ldap/l10n/fr.js
index 3e548f717fb..77f354d6885 100644
--- a/apps/user_ldap/l10n/fr.js
+++ b/apps/user_ldap/l10n/fr.js
@@ -27,7 +27,7 @@ OC.L10N.register(
"More than 1.000 directory entries available." : "Il y a plus de 1000 entrées de répertoire disponibles.",
" entries available within the provided Base DN" : "entrées disponibles dans le DN de base spécifié",
"An error occurred. Please check the Base DN, as well as connection settings and credentials." : "Une erreur est survenue. Veuillez vérifier le DN de base, ainsi que les paramètres de connexion et les informations d'identification",
- "Do you really want to delete the current Server Configuration?" : "Êtes-vous vraiment sûr de vouloir effacer la configuration actuelle du serveur ?",
+ "Do you really want to delete the current Server Configuration?" : "Êtes-vous sûr de vouloir effacer la configuration serveur actuelle ?",
"Confirm Deletion" : "Confirmer la suppression",
"Mappings cleared successfully!" : "Associations supprimées avec succès !",
"Error while clearing the mappings." : "Erreur lors de la suppression des associations.",
@@ -78,7 +78,6 @@ OC.L10N.register(
"Verify settings" : "Tester les paramètres",
"1. Server" : "1. Serveur",
"%s. Server:" : "%s. Serveur :",
- "Adds a new and blank configuration" : "Ajouter une nouvelle configuration vierge",
"Copy current configuration into new directory binding" : "Copier la configuration actuelle vers une nouvelle",
"Delete the current configuration" : "Supprimer la configuration actuelle",
"Host" : "Hôte",
diff --git a/apps/user_ldap/l10n/fr.json b/apps/user_ldap/l10n/fr.json
index a9119e0025d..2e618640c51 100644
--- a/apps/user_ldap/l10n/fr.json
+++ b/apps/user_ldap/l10n/fr.json
@@ -25,7 +25,7 @@
"More than 1.000 directory entries available." : "Il y a plus de 1000 entrées de répertoire disponibles.",
" entries available within the provided Base DN" : "entrées disponibles dans le DN de base spécifié",
"An error occurred. Please check the Base DN, as well as connection settings and credentials." : "Une erreur est survenue. Veuillez vérifier le DN de base, ainsi que les paramètres de connexion et les informations d'identification",
- "Do you really want to delete the current Server Configuration?" : "Êtes-vous vraiment sûr de vouloir effacer la configuration actuelle du serveur ?",
+ "Do you really want to delete the current Server Configuration?" : "Êtes-vous sûr de vouloir effacer la configuration serveur actuelle ?",
"Confirm Deletion" : "Confirmer la suppression",
"Mappings cleared successfully!" : "Associations supprimées avec succès !",
"Error while clearing the mappings." : "Erreur lors de la suppression des associations.",
@@ -76,7 +76,6 @@
"Verify settings" : "Tester les paramètres",
"1. Server" : "1. Serveur",
"%s. Server:" : "%s. Serveur :",
- "Adds a new and blank configuration" : "Ajouter une nouvelle configuration vierge",
"Copy current configuration into new directory binding" : "Copier la configuration actuelle vers une nouvelle",
"Delete the current configuration" : "Supprimer la configuration actuelle",
"Host" : "Hôte",
diff --git a/apps/user_ldap/l10n/gl.js b/apps/user_ldap/l10n/gl.js
index 466144f4123..6ab06bb4b94 100644
--- a/apps/user_ldap/l10n/gl.js
+++ b/apps/user_ldap/l10n/gl.js
@@ -78,7 +78,7 @@ OC.L10N.register(
"Verify settings" : "Verificar os axustes",
"1. Server" : "1. Servidor",
"%s. Server:" : "%s. Servidor:",
- "Adds a new and blank configuration" : "Engade unha configuración nova e en branco",
+ "Add a new and blank configuration" : "Engadir unha configuración nova e en branco",
"Copy current configuration into new directory binding" : "Copiar a configuración no novo directorio vinculado",
"Delete the current configuration" : "Eliminar a configuración actual",
"Host" : "Máquina",
diff --git a/apps/user_ldap/l10n/gl.json b/apps/user_ldap/l10n/gl.json
index f67cc44d653..b1e4ffc05ce 100644
--- a/apps/user_ldap/l10n/gl.json
+++ b/apps/user_ldap/l10n/gl.json
@@ -76,7 +76,7 @@
"Verify settings" : "Verificar os axustes",
"1. Server" : "1. Servidor",
"%s. Server:" : "%s. Servidor:",
- "Adds a new and blank configuration" : "Engade unha configuración nova e en branco",
+ "Add a new and blank configuration" : "Engadir unha configuración nova e en branco",
"Copy current configuration into new directory binding" : "Copiar a configuración no novo directorio vinculado",
"Delete the current configuration" : "Eliminar a configuración actual",
"Host" : "Máquina",
diff --git a/apps/user_ldap/l10n/it.js b/apps/user_ldap/l10n/it.js
index 55c1abb333f..80bdfdc177e 100644
--- a/apps/user_ldap/l10n/it.js
+++ b/apps/user_ldap/l10n/it.js
@@ -78,7 +78,7 @@ OC.L10N.register(
"Verify settings" : "Verifica impostazioni",
"1. Server" : "1. server",
"%s. Server:" : "%s. server:",
- "Adds a new and blank configuration" : "Aggiunge una nuova configurazione",
+ "Add a new and blank configuration" : "Aggiunge una nuova configurazione vuota",
"Copy current configuration into new directory binding" : "Copia la configurazione attuale nella nuova cartella associata",
"Delete the current configuration" : "Elimina la configurazione attuale",
"Host" : "Host",
diff --git a/apps/user_ldap/l10n/it.json b/apps/user_ldap/l10n/it.json
index 9bf6de0e336..8eea02f2c85 100644
--- a/apps/user_ldap/l10n/it.json
+++ b/apps/user_ldap/l10n/it.json
@@ -76,7 +76,7 @@
"Verify settings" : "Verifica impostazioni",
"1. Server" : "1. server",
"%s. Server:" : "%s. server:",
- "Adds a new and blank configuration" : "Aggiunge una nuova configurazione",
+ "Add a new and blank configuration" : "Aggiunge una nuova configurazione vuota",
"Copy current configuration into new directory binding" : "Copia la configurazione attuale nella nuova cartella associata",
"Delete the current configuration" : "Elimina la configurazione attuale",
"Host" : "Host",
diff --git a/apps/user_ldap/l10n/ja.js b/apps/user_ldap/l10n/ja.js
index a6218138d5b..259f9facbd2 100644
--- a/apps/user_ldap/l10n/ja.js
+++ b/apps/user_ldap/l10n/ja.js
@@ -115,7 +115,7 @@ OC.L10N.register(
"User Home Folder Naming Rule" : "ユーザーのホームフォルダー命名規則",
"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." : "ユーザー名を空のままにしてください(デフォルト)。もしくは、LDAPもしくはADの属性を指定してください。",
"Internal Username" : "内部ユーザー名",
- "By default the internal username will be created from the UUID attribute. It makes sure that the username is unique and characters do not need to be converted. The internal username has the restriction that only these characters are allowed: [ a-zA-Z0-9_.@- ]. Other characters are replaced with their ASCII correspondence or simply omitted. On collisions a number will be added/increased. The internal username is used to identify a user internally. It is also the default name for the user home folder. It is also a part of remote URLs, for instance for all *DAV services. With this setting, the default behavior can be overridden. To achieve a similar behavior as before ownCloud 5 enter the user display name attribute in the following field. Leave it empty for default behavior. Changes will have effect only on newly mapped (added) LDAP users." : "デフォルトでは、内部的なユーザー名がUUID属性から作成されます。これにより、ユーザー名がユニークであり、かつ文字の変換が不要であることを保証します。内部ユーザー名には、[ a-zA-Z0-9_.@- ] の文字のみが有効であるという制限があり、その他の文字は対応する ASCII コードに変換されるか単に無視されます。そのため、他のユーザ名との衝突の回数が増加するでしょう。内部ユーザー名は、内部的にユーザを識別するために用いられ、また、ownCloudにおけるデフォルトのホームフォルダー名としても用いられます。例えば*DAVサービスのように、リモートURLの一部でもあります。この設定により、デフォルトの振る舞いを再定義します。ownCloud 5 以前と同じような振る舞いにするためには、以下のフィールドにユーザー表示名の属性を入力します。空にするとデフォルトの振る舞いとなります。変更は新しくマッピング(追加)されたLDAPユーザーにおいてのみ有効となります。",
+ "By default the internal username will be created from the UUID attribute. It makes sure that the username is unique and characters do not need to be converted. The internal username has the restriction that only these characters are allowed: [ a-zA-Z0-9_.@- ]. Other characters are replaced with their ASCII correspondence or simply omitted. On collisions a number will be added/increased. The internal username is used to identify a user internally. It is also the default name for the user home folder. It is also a part of remote URLs, for instance for all *DAV services. With this setting, the default behavior can be overridden. To achieve a similar behavior as before ownCloud 5 enter the user display name attribute in the following field. Leave it empty for default behavior. Changes will have effect only on newly mapped (added) LDAP users." : "デフォルトでは、内部的なユーザー名がUUID属性から作成されます。これにより、ユーザー名がユニークであり、かつ文字の変換が不要であることを保証します。内部ユーザー名には、[ a-zA-Z0-9_.@- ] の文字のみが有効であるという制限があり、その他の文字は対応する ASCII コードに変換されるか単に無視されます。そのため、他のユーザー名との衝突の回数が増加するでしょう。内部ユーザー名は、内部的にユーザーを識別するために用いられ、また、ownCloudにおけるデフォルトのホームフォルダー名としても用いられます。例えば*DAVサービスのように、リモートURLの一部でもあります。この設定により、デフォルトの振る舞いを再定義します。ownCloud 5 以前と同じような振る舞いにするためには、以下のフィールドにユーザー表示名の属性を入力します。空にするとデフォルトの振る舞いとなります。変更は新しくマッピング(追加)されたLDAPユーザーにおいてのみ有効となります。",
"Internal Username Attribute:" : "内部ユーザー名属性:",
"Override UUID detection" : "UUID検出を再定義する",
"By default, the UUID attribute is automatically detected. The UUID attribute is used to doubtlessly identify LDAP users and groups. Also, the internal username will be created based on the UUID, if not specified otherwise above. You can override the setting and pass an attribute of your choice. You must make sure that the attribute of your choice can be fetched for both users and groups and it is unique. Leave it empty for default behavior. Changes will have effect only on newly mapped (added) LDAP users and groups." : "デフォルトでは、UUID 属性は自動的に検出されます。UUID属性は、LDAPユーザーとLDAPグループを間違いなく識別するために利用されます。また、もしこれを指定しない場合は、内部ユーザー名はUUIDに基づいて作成されます。この設定は再定義することができ、あなたの選択した属性を用いることができます。選択した属性がユーザーとグループの両方に対して適用でき、かつユニークであることを確認してください。空であればデフォルトの振る舞いとなります。変更は、新しくマッピング(追加)されたLDAPユーザーとLDAPグループに対してのみ有効となります。",
diff --git a/apps/user_ldap/l10n/ja.json b/apps/user_ldap/l10n/ja.json
index 8b7d8389b9a..3dceb217eb6 100644
--- a/apps/user_ldap/l10n/ja.json
+++ b/apps/user_ldap/l10n/ja.json
@@ -113,7 +113,7 @@
"User Home Folder Naming Rule" : "ユーザーのホームフォルダー命名規則",
"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." : "ユーザー名を空のままにしてください(デフォルト)。もしくは、LDAPもしくはADの属性を指定してください。",
"Internal Username" : "内部ユーザー名",
- "By default the internal username will be created from the UUID attribute. It makes sure that the username is unique and characters do not need to be converted. The internal username has the restriction that only these characters are allowed: [ a-zA-Z0-9_.@- ]. Other characters are replaced with their ASCII correspondence or simply omitted. On collisions a number will be added/increased. The internal username is used to identify a user internally. It is also the default name for the user home folder. It is also a part of remote URLs, for instance for all *DAV services. With this setting, the default behavior can be overridden. To achieve a similar behavior as before ownCloud 5 enter the user display name attribute in the following field. Leave it empty for default behavior. Changes will have effect only on newly mapped (added) LDAP users." : "デフォルトでは、内部的なユーザー名がUUID属性から作成されます。これにより、ユーザー名がユニークであり、かつ文字の変換が不要であることを保証します。内部ユーザー名には、[ a-zA-Z0-9_.@- ] の文字のみが有効であるという制限があり、その他の文字は対応する ASCII コードに変換されるか単に無視されます。そのため、他のユーザ名との衝突の回数が増加するでしょう。内部ユーザー名は、内部的にユーザを識別するために用いられ、また、ownCloudにおけるデフォルトのホームフォルダー名としても用いられます。例えば*DAVサービスのように、リモートURLの一部でもあります。この設定により、デフォルトの振る舞いを再定義します。ownCloud 5 以前と同じような振る舞いにするためには、以下のフィールドにユーザー表示名の属性を入力します。空にするとデフォルトの振る舞いとなります。変更は新しくマッピング(追加)されたLDAPユーザーにおいてのみ有効となります。",
+ "By default the internal username will be created from the UUID attribute. It makes sure that the username is unique and characters do not need to be converted. The internal username has the restriction that only these characters are allowed: [ a-zA-Z0-9_.@- ]. Other characters are replaced with their ASCII correspondence or simply omitted. On collisions a number will be added/increased. The internal username is used to identify a user internally. It is also the default name for the user home folder. It is also a part of remote URLs, for instance for all *DAV services. With this setting, the default behavior can be overridden. To achieve a similar behavior as before ownCloud 5 enter the user display name attribute in the following field. Leave it empty for default behavior. Changes will have effect only on newly mapped (added) LDAP users." : "デフォルトでは、内部的なユーザー名がUUID属性から作成されます。これにより、ユーザー名がユニークであり、かつ文字の変換が不要であることを保証します。内部ユーザー名には、[ a-zA-Z0-9_.@- ] の文字のみが有効であるという制限があり、その他の文字は対応する ASCII コードに変換されるか単に無視されます。そのため、他のユーザー名との衝突の回数が増加するでしょう。内部ユーザー名は、内部的にユーザーを識別するために用いられ、また、ownCloudにおけるデフォルトのホームフォルダー名としても用いられます。例えば*DAVサービスのように、リモートURLの一部でもあります。この設定により、デフォルトの振る舞いを再定義します。ownCloud 5 以前と同じような振る舞いにするためには、以下のフィールドにユーザー表示名の属性を入力します。空にするとデフォルトの振る舞いとなります。変更は新しくマッピング(追加)されたLDAPユーザーにおいてのみ有効となります。",
"Internal Username Attribute:" : "内部ユーザー名属性:",
"Override UUID detection" : "UUID検出を再定義する",
"By default, the UUID attribute is automatically detected. The UUID attribute is used to doubtlessly identify LDAP users and groups. Also, the internal username will be created based on the UUID, if not specified otherwise above. You can override the setting and pass an attribute of your choice. You must make sure that the attribute of your choice can be fetched for both users and groups and it is unique. Leave it empty for default behavior. Changes will have effect only on newly mapped (added) LDAP users and groups." : "デフォルトでは、UUID 属性は自動的に検出されます。UUID属性は、LDAPユーザーとLDAPグループを間違いなく識別するために利用されます。また、もしこれを指定しない場合は、内部ユーザー名はUUIDに基づいて作成されます。この設定は再定義することができ、あなたの選択した属性を用いることができます。選択した属性がユーザーとグループの両方に対して適用でき、かつユニークであることを確認してください。空であればデフォルトの振る舞いとなります。変更は、新しくマッピング(追加)されたLDAPユーザーとLDAPグループに対してのみ有効となります。",
diff --git a/apps/user_ldap/l10n/nb_NO.js b/apps/user_ldap/l10n/nb_NO.js
index c969be1ce75..25670ce73a8 100644
--- a/apps/user_ldap/l10n/nb_NO.js
+++ b/apps/user_ldap/l10n/nb_NO.js
@@ -78,7 +78,7 @@ OC.L10N.register(
"Verify settings" : "Sjekk innstillinger",
"1. Server" : "1. server",
"%s. Server:" : "%s. server:",
- "Adds a new and blank configuration" : "Legger til en ny tom konfigurasjon",
+ "Add a new and blank configuration" : "Legg til en ny tom konfigurasjon",
"Copy current configuration into new directory binding" : "Kopier gjeldende konfigurasjon til ny katalogbinding",
"Delete the current configuration" : "Slett gjeldende konfigurasjon",
"Host" : "Tjener",
diff --git a/apps/user_ldap/l10n/nb_NO.json b/apps/user_ldap/l10n/nb_NO.json
index 7a34b813ad8..588c9f6c213 100644
--- a/apps/user_ldap/l10n/nb_NO.json
+++ b/apps/user_ldap/l10n/nb_NO.json
@@ -76,7 +76,7 @@
"Verify settings" : "Sjekk innstillinger",
"1. Server" : "1. server",
"%s. Server:" : "%s. server:",
- "Adds a new and blank configuration" : "Legger til en ny tom konfigurasjon",
+ "Add a new and blank configuration" : "Legg til en ny tom konfigurasjon",
"Copy current configuration into new directory binding" : "Kopier gjeldende konfigurasjon til ny katalogbinding",
"Delete the current configuration" : "Slett gjeldende konfigurasjon",
"Host" : "Tjener",
diff --git a/apps/user_ldap/l10n/nl.js b/apps/user_ldap/l10n/nl.js
index 7e72b002a87..b12f3a02424 100644
--- a/apps/user_ldap/l10n/nl.js
+++ b/apps/user_ldap/l10n/nl.js
@@ -78,7 +78,7 @@ OC.L10N.register(
"Verify settings" : "Verifiëren instellingen",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
- "Adds a new and blank configuration" : "Toevoegen blanco nieuwe configuratie",
+ "Add a new and blank configuration" : "Toevoegen nieuwe, blanco configuratie",
"Copy current configuration into new directory binding" : "Kopieer de huidige configuratie naar een nieuwe directory binding",
"Delete the current configuration" : "Verwijder de huidige configuratie",
"Host" : "Host",
diff --git a/apps/user_ldap/l10n/nl.json b/apps/user_ldap/l10n/nl.json
index 415454da435..1b7b665781a 100644
--- a/apps/user_ldap/l10n/nl.json
+++ b/apps/user_ldap/l10n/nl.json
@@ -76,7 +76,7 @@
"Verify settings" : "Verifiëren instellingen",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
- "Adds a new and blank configuration" : "Toevoegen blanco nieuwe configuratie",
+ "Add a new and blank configuration" : "Toevoegen nieuwe, blanco configuratie",
"Copy current configuration into new directory binding" : "Kopieer de huidige configuratie naar een nieuwe directory binding",
"Delete the current configuration" : "Verwijder de huidige configuratie",
"Host" : "Host",
diff --git a/apps/user_ldap/l10n/pl.js b/apps/user_ldap/l10n/pl.js
index edd059273a8..e6092532818 100644
--- a/apps/user_ldap/l10n/pl.js
+++ b/apps/user_ldap/l10n/pl.js
@@ -50,7 +50,6 @@ OC.L10N.register(
"Verify settings" : "Weryfikuj ustawienia",
"1. Server" : "1. Serwer",
"%s. Server:" : "%s. Serwer:",
- "Adds a new and blank configuration" : "Dodaje nową, czystą konfigurację",
"Copy current configuration into new directory binding" : "Kopiuje aktualną konfigurację do nowej lokalizacji",
"Delete the current configuration" : "Usuwa aktualną konfigurację",
"Host" : "Host",
diff --git a/apps/user_ldap/l10n/pl.json b/apps/user_ldap/l10n/pl.json
index d49417c99ae..feb45644090 100644
--- a/apps/user_ldap/l10n/pl.json
+++ b/apps/user_ldap/l10n/pl.json
@@ -48,7 +48,6 @@
"Verify settings" : "Weryfikuj ustawienia",
"1. Server" : "1. Serwer",
"%s. Server:" : "%s. Serwer:",
- "Adds a new and blank configuration" : "Dodaje nową, czystą konfigurację",
"Copy current configuration into new directory binding" : "Kopiuje aktualną konfigurację do nowej lokalizacji",
"Delete the current configuration" : "Usuwa aktualną konfigurację",
"Host" : "Host",
diff --git a/apps/user_ldap/l10n/pt_BR.js b/apps/user_ldap/l10n/pt_BR.js
index 2ee1f13da76..181934932a3 100644
--- a/apps/user_ldap/l10n/pt_BR.js
+++ b/apps/user_ldap/l10n/pt_BR.js
@@ -78,7 +78,6 @@ OC.L10N.register(
"Verify settings" : "Verificar configurações",
"1. Server" : "1. Servidor",
"%s. Server:" : "%s. Servidor:",
- "Adds a new and blank configuration" : "Adiciona uma configuração nova e em branco",
"Copy current configuration into new directory binding" : "Copie a configuração atual em um novo diretório obrigatório",
"Delete the current configuration" : "Excluir a configuração atual",
"Host" : "Host",
diff --git a/apps/user_ldap/l10n/pt_BR.json b/apps/user_ldap/l10n/pt_BR.json
index a0f3f79a352..9e2e7a6fead 100644
--- a/apps/user_ldap/l10n/pt_BR.json
+++ b/apps/user_ldap/l10n/pt_BR.json
@@ -76,7 +76,6 @@
"Verify settings" : "Verificar configurações",
"1. Server" : "1. Servidor",
"%s. Server:" : "%s. Servidor:",
- "Adds a new and blank configuration" : "Adiciona uma configuração nova e em branco",
"Copy current configuration into new directory binding" : "Copie a configuração atual em um novo diretório obrigatório",
"Delete the current configuration" : "Excluir a configuração atual",
"Host" : "Host",
diff --git a/apps/user_ldap/l10n/ru.js b/apps/user_ldap/l10n/ru.js
index 78aa87eb99b..8ddf80841a0 100644
--- a/apps/user_ldap/l10n/ru.js
+++ b/apps/user_ldap/l10n/ru.js
@@ -78,7 +78,7 @@ OC.L10N.register(
"Verify settings" : "Проверить настройки",
"1. Server" : "Сервер 1.",
"%s. Server:" : "Сервер %s:",
- "Adds a new and blank configuration" : "Добавляет новую и пустую конфигурацию",
+ "Add a new and blank configuration" : "Добавить новую и пустую конфигурацию",
"Copy current configuration into new directory binding" : "Копировать текущую конфигурацию в новую связь с каталогом",
"Delete the current configuration" : "Удалить текущую конфигурацию",
"Host" : "Сервер",
diff --git a/apps/user_ldap/l10n/ru.json b/apps/user_ldap/l10n/ru.json
index 98a447d6f89..ede0d5357d0 100644
--- a/apps/user_ldap/l10n/ru.json
+++ b/apps/user_ldap/l10n/ru.json
@@ -76,7 +76,7 @@
"Verify settings" : "Проверить настройки",
"1. Server" : "Сервер 1.",
"%s. Server:" : "Сервер %s:",
- "Adds a new and blank configuration" : "Добавляет новую и пустую конфигурацию",
+ "Add a new and blank configuration" : "Добавить новую и пустую конфигурацию",
"Copy current configuration into new directory binding" : "Копировать текущую конфигурацию в новую связь с каталогом",
"Delete the current configuration" : "Удалить текущую конфигурацию",
"Host" : "Сервер",
diff --git a/apps/user_ldap/l10n/sk_SK.js b/apps/user_ldap/l10n/sk_SK.js
index 86681991df4..612296be0cc 100644
--- a/apps/user_ldap/l10n/sk_SK.js
+++ b/apps/user_ldap/l10n/sk_SK.js
@@ -60,7 +60,6 @@ OC.L10N.register(
"Verify settings" : "Overiť nastavenia",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
- "Adds a new and blank configuration" : "Pridať novú prázdnu konfiguráciu",
"Delete the current configuration" : "Vymazať súčasnú konfiguráciu",
"Host" : "Hostiteľ",
"You can omit the protocol, except you require SSL. Then start with ldaps://" : "Môžete vynechať protokol, okrem prípadu, kedy sa vyžaduje SSL. Vtedy začnite s ldaps://",
diff --git a/apps/user_ldap/l10n/sk_SK.json b/apps/user_ldap/l10n/sk_SK.json
index 428251ec33a..abc6b5ec248 100644
--- a/apps/user_ldap/l10n/sk_SK.json
+++ b/apps/user_ldap/l10n/sk_SK.json
@@ -58,7 +58,6 @@
"Verify settings" : "Overiť nastavenia",
"1. Server" : "1. Server",
"%s. Server:" : "%s. Server:",
- "Adds a new and blank configuration" : "Pridať novú prázdnu konfiguráciu",
"Delete the current configuration" : "Vymazať súčasnú konfiguráciu",
"Host" : "Hostiteľ",
"You can omit the protocol, except you require SSL. Then start with ldaps://" : "Môžete vynechať protokol, okrem prípadu, kedy sa vyžaduje SSL. Vtedy začnite s ldaps://",
diff --git a/apps/user_ldap/l10n/sr.js b/apps/user_ldap/l10n/sr.js
index 4e52cb05bd9..dd570c70e5c 100644
--- a/apps/user_ldap/l10n/sr.js
+++ b/apps/user_ldap/l10n/sr.js
@@ -78,7 +78,6 @@ OC.L10N.register(
"Verify settings" : "Провери поставке",
"1. Server" : "1. сервер",
"%s. Server:" : "%s. Сервер:",
- "Adds a new and blank configuration" : "Додаје нову празну поставу",
"Copy current configuration into new directory binding" : "Копирај тренутну поставу у везивање новог директоријума",
"Delete the current configuration" : "Обриши тренутне поставке",
"Host" : "Домаћин",
diff --git a/apps/user_ldap/l10n/sr.json b/apps/user_ldap/l10n/sr.json
index c5b8b256cf8..91d9520d3b6 100644
--- a/apps/user_ldap/l10n/sr.json
+++ b/apps/user_ldap/l10n/sr.json
@@ -76,7 +76,6 @@
"Verify settings" : "Провери поставке",
"1. Server" : "1. сервер",
"%s. Server:" : "%s. Сервер:",
- "Adds a new and blank configuration" : "Додаје нову празну поставу",
"Copy current configuration into new directory binding" : "Копирај тренутну поставу у везивање новог директоријума",
"Delete the current configuration" : "Обриши тренутне поставке",
"Host" : "Домаћин",
diff --git a/apps/user_ldap/l10n/th_TH.js b/apps/user_ldap/l10n/th_TH.js
index d7215c96b6d..ea55c7c4936 100644
--- a/apps/user_ldap/l10n/th_TH.js
+++ b/apps/user_ldap/l10n/th_TH.js
@@ -78,7 +78,7 @@ OC.L10N.register(
"Verify settings" : "ตรวจสอบการตั้งค่า",
"1. Server" : "1. เซิร์ฟเวอร์",
"%s. Server:" : "เซิร์ฟเวอร์%s",
- "Adds a new and blank configuration" : "เพิ่มใหม่และกำหนดค่าว่างเปล่า",
+ "Add a new and blank configuration" : "เพิ่มใหม่และการกำหนดค่าว่าง",
"Copy current configuration into new directory binding" : "คัดลอกการตั้งค่าปัจจุบันลงในไดเรกทอรีใหม่ที่ผูกกัน",
"Delete the current configuration" : "ลบการตั้งค่าปัจจุบัน",
"Host" : "โฮสต์",
diff --git a/apps/user_ldap/l10n/th_TH.json b/apps/user_ldap/l10n/th_TH.json
index 1a05c5c68ca..ace0e5517a7 100644
--- a/apps/user_ldap/l10n/th_TH.json
+++ b/apps/user_ldap/l10n/th_TH.json
@@ -76,7 +76,7 @@
"Verify settings" : "ตรวจสอบการตั้งค่า",
"1. Server" : "1. เซิร์ฟเวอร์",
"%s. Server:" : "เซิร์ฟเวอร์%s",
- "Adds a new and blank configuration" : "เพิ่มใหม่และกำหนดค่าว่างเปล่า",
+ "Add a new and blank configuration" : "เพิ่มใหม่และการกำหนดค่าว่าง",
"Copy current configuration into new directory binding" : "คัดลอกการตั้งค่าปัจจุบันลงในไดเรกทอรีใหม่ที่ผูกกัน",
"Delete the current configuration" : "ลบการตั้งค่าปัจจุบัน",
"Host" : "โฮสต์",
diff --git a/apps/user_ldap/l10n/tr.js b/apps/user_ldap/l10n/tr.js
index b9f893dccf0..e01fe04297e 100644
--- a/apps/user_ldap/l10n/tr.js
+++ b/apps/user_ldap/l10n/tr.js
@@ -54,7 +54,6 @@ OC.L10N.register(
"Verify settings" : "Ayarları doğrula",
"1. Server" : "1. Sunucu",
"%s. Server:" : "%s. Sunucu:",
- "Adds a new and blank configuration" : "Yeni ve boş bir yapılandırma ekler",
"Copy current configuration into new directory binding" : "Geçerli yapılandırmayı yeni dizin bağlamasına kopyala",
"Delete the current configuration" : "Geçerli yapılandırmayı sil",
"Host" : "Sunucu",
diff --git a/apps/user_ldap/l10n/tr.json b/apps/user_ldap/l10n/tr.json
index 7733d546d5f..5936b41f7f0 100644
--- a/apps/user_ldap/l10n/tr.json
+++ b/apps/user_ldap/l10n/tr.json
@@ -52,7 +52,6 @@
"Verify settings" : "Ayarları doğrula",
"1. Server" : "1. Sunucu",
"%s. Server:" : "%s. Sunucu:",
- "Adds a new and blank configuration" : "Yeni ve boş bir yapılandırma ekler",
"Copy current configuration into new directory binding" : "Geçerli yapılandırmayı yeni dizin bağlamasına kopyala",
"Delete the current configuration" : "Geçerli yapılandırmayı sil",
"Host" : "Sunucu",
diff --git a/apps/user_ldap/lib/access.php b/apps/user_ldap/lib/access.php
index f38d11d4be3..b201220d725 100644
--- a/apps/user_ldap/lib/access.php
+++ b/apps/user_ldap/lib/access.php
@@ -347,6 +347,33 @@ class Access extends LDAPUtility implements user\IUserTools {
}
/**
+ * accepts an array of group DNs and tests whether they match the user
+ * filter by doing read operations against the group entries. Returns an
+ * array of DNs that match the filter.
+ *
+ * @param string[] $groupDNs
+ * @return string[]
+ */
+ public function groupsMatchFilter($groupDNs) {
+ $validGroupDNs = [];
+ foreach($groupDNs as $dn) {
+ $cacheKey = 'groupsMatchFilter-'.$dn;
+ if($this->connection->isCached($cacheKey)) {
+ if($this->connection->getFromCache($cacheKey)) {
+ $validGroupDNs[] = $dn;
+ }
+ continue;
+ }
+
+ $result = $this->readAttribute($dn, 'cn', $this->connection->ldapGroupFilter);
+ if(is_array($result)) {
+ $validGroupDNs[] = $dn;
+ }
+ }
+ return $validGroupDNs;
+ }
+
+ /**
* returns the internal ownCloud name for the given LDAP DN of the user, false on DN outside of search DN or failure
* @param string $dn the dn of the user object
* @param string $ldapName optional, the display name of the object
diff --git a/apps/user_ldap/lib/connection.php b/apps/user_ldap/lib/connection.php
index 0328259d78f..2bb2e1f8cb6 100644
--- a/apps/user_ldap/lib/connection.php
+++ b/apps/user_ldap/lib/connection.php
@@ -9,7 +9,6 @@
* @author Robin Appelman <icewind@owncloud.com>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Scrutinizer Auto-Fixer <auto-fixer@scrutinizer-ci.com>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/user_ldap/lib/proxy.php b/apps/user_ldap/lib/proxy.php
index 347ea9ce6a9..ef01213990c 100644
--- a/apps/user_ldap/lib/proxy.php
+++ b/apps/user_ldap/lib/proxy.php
@@ -8,7 +8,6 @@
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin McCorkell <rmccorkell@karoshi.org.uk>
* @author Scrutinizer Auto-Fixer <auto-fixer@scrutinizer-ci.com>
- * @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
* @license AGPL-3.0
diff --git a/apps/user_ldap/lib/user/manager.php b/apps/user_ldap/lib/user/manager.php
index c8c89374e98..2f5ee3adfb7 100644
--- a/apps/user_ldap/lib/user/manager.php
+++ b/apps/user_ldap/lib/user/manager.php
@@ -1,6 +1,7 @@
<?php
/**
* @author Arthur Schiwon <blizzz@owncloud.com>
+ * @author Jörn Friedrich Dreyer <jfd@butonic.de>
* @author Morris Jobke <hey@morrisjobke.de>
*
* @copyright Copyright (c) 2015, ownCloud, Inc.
diff --git a/apps/user_ldap/settings.php b/apps/user_ldap/settings.php
index d17361cdfd5..fb54276b463 100644
--- a/apps/user_ldap/settings.php
+++ b/apps/user_ldap/settings.php
@@ -1,7 +1,6 @@
<?php
/**
* @author Arthur Schiwon <blizzz@owncloud.com>
- * @author ben-denham <bend@catalyst.net.nz>
* @author Dominik Schmidt <dev@dominik-schmidt.de>
* @author Frank Karlitschek <frank@owncloud.org>
* @author Lukas Reschke <lukas@owncloud.com>
diff --git a/apps/user_ldap/tests/.htaccess b/apps/user_ldap/tests/.htaccess
new file mode 100755
index 00000000000..5e068d28661
--- /dev/null
+++ b/apps/user_ldap/tests/.htaccess
@@ -0,0 +1,14 @@
+# Generated by ownCloud on 2015-06-18 14:16:40
+# line below if for Apache 2.4
+<ifModule mod_authz_core.c>
+Require all denied
+</ifModule>
+
+# line below if for Apache 2.2
+<ifModule !mod_authz_core.c>
+deny from all
+Satisfy All
+</ifModule>
+
+# section for Apache 2.2 and 2.4
+IndexIgnore *
diff --git a/apps/user_ldap/tests/group_ldap.php b/apps/user_ldap/tests/group_ldap.php
index aeb306174f0..f716618ce48 100644
--- a/apps/user_ldap/tests/group_ldap.php
+++ b/apps/user_ldap/tests/group_ldap.php
@@ -404,6 +404,10 @@ class Test_Group_Ldap extends \Test\TestCase {
->method('dn2groupname')
->will($this->returnArgument(0));
+ $access->expects($this->once())
+ ->method('groupsMatchFilter')
+ ->will($this->returnArgument(0));
+
$groupBackend = new GroupLDAP($access);
$groups = $groupBackend->getUserGroups('userX');
diff --git a/apps/user_ldap/tests/integration/lib/IntegrationTestAccessGroupsMatchFilter.php b/apps/user_ldap/tests/integration/lib/IntegrationTestAccessGroupsMatchFilter.php
new file mode 100644
index 00000000000..6560153bb63
--- /dev/null
+++ b/apps/user_ldap/tests/integration/lib/IntegrationTestAccessGroupsMatchFilter.php
@@ -0,0 +1,158 @@
+<?php
+/**
+ * Created by PhpStorm.
+ * User: blizzz
+ * Date: 26.06.15
+ * Time: 18:13
+ */
+
+use OCA\user_ldap\lib\LDAP;
+
+require_once __DIR__ . '/../../../../../lib/base.php';
+
+class IntegrationTestAccessGroupsMatchFilter {
+ /** @var LDAP */
+ protected $ldap;
+
+ /** @var \OCA\user_ldap\lib\Connection */
+ protected $connection;
+
+ /** @var \OCA\user_ldap\lib\Access */
+ protected $access;
+
+ /** @var string */
+ protected $base;
+
+ /** @var string[] */
+ protected $server;
+
+ public function __construct($host, $port, $bind, $pwd, $base) {
+ $this->base = $base;
+ $this->server = [
+ 'host' => $host,
+ 'port' => $port,
+ 'dn' => $bind,
+ 'pwd' => $pwd
+ ];
+ }
+
+ /**
+ * prepares the LDAP environement and sets up a test configuration for
+ * the LDAP backend.
+ */
+ public function init() {
+ require('setup-scripts/createExplicitUsers.php');
+ require('setup-scripts/createExplicitGroups.php');
+
+ $this->initLDAPWrapper();
+ $this->initConnection();
+ $this->initAccess();
+ }
+
+ /**
+ * runs the test cases while outputting progress and result information
+ *
+ * If a test failed, the script is exited with return code 1.
+ */
+ public function run() {
+ $cases = ['case1', 'case2'];
+
+ foreach ($cases as $case) {
+ print("running $case " . PHP_EOL);
+ if (!$this->$case()) {
+ print(PHP_EOL . '>>> !!! Test ' . $case . ' FAILED !!! <<<' . PHP_EOL . PHP_EOL);
+ exit(1);
+ }
+ }
+
+ print('Tests succeeded' . PHP_EOL);
+ }
+
+ /**
+ * tests whether the group filter works with one specific group, while the
+ * input is the same.
+ *
+ * @return bool
+ */
+ private function case1() {
+ $this->connection->setConfiguration(['ldapGroupFilter' => 'cn=RedGroup']);
+
+ $dns = ['cn=RedGroup,ou=Groups,' . $this->base];
+ $result = $this->access->groupsMatchFilter($dns);
+ return ($dns === $result);
+ }
+
+ /**
+ * Tests whether a filter for limited groups is effective when more existing
+ * groups were passed for validation.
+ *
+ * @return bool
+ */
+ private function case2() {
+ $this->connection->setConfiguration(['ldapGroupFilter' => '(|(cn=RedGroup)(cn=PurpleGroup))']);
+
+ $dns = [
+ 'cn=RedGroup,ou=Groups,' . $this->base,
+ 'cn=BlueGroup,ou=Groups,' . $this->base,
+ 'cn=PurpleGroup,ou=Groups,' . $this->base
+ ];
+ $result = $this->access->groupsMatchFilter($dns);
+
+ $status =
+ count($result) === 2
+ && in_array('cn=RedGroup,ou=Groups,' . $this->base, $result)
+ && in_array('cn=PurpleGroup,ou=Groups,' . $this->base, $result);
+
+ return $status;
+ }
+
+ /**
+ * initializes the Access test instance
+ */
+ private function initAccess() {
+ $this->access = new \OCA\user_ldap\lib\Access($this->connection, $this->ldap, new FakeManager());
+ }
+
+ /**
+ * initializes the test LDAP wrapper
+ */
+ private function initLDAPWrapper() {
+ $this->ldap = new LDAP();
+ }
+
+ /**
+ * sets up the LDAP configuration to be used for the test
+ */
+ private function initConnection() {
+ $this->connection = new \OCA\user_ldap\lib\Connection($this->ldap, '', null);
+ $this->connection->setConfiguration([
+ 'ldapHost' => $this->server['host'],
+ 'ldapPort' => $this->server['port'],
+ 'ldapBase' => $this->base,
+ 'ldapAgentName' => $this->server['dn'],
+ 'ldapAgentPassword' => $this->server['pwd'],
+ 'ldapUserFilter' => 'objectclass=inetOrgPerson',
+ 'ldapUserDisplayName' => 'displayName',
+ 'ldapGroupDisplayName' => 'cn',
+ 'ldapLoginFilter' => 'uid=%uid',
+ 'ldapCacheTTL' => 0,
+ 'ldapConfigurationActive' => 1,
+ ]);
+ }
+}
+
+/**
+ * Class FakeManager
+ *
+ * this is a mock of \OCA\user_ldap\lib\user\Manager which is a dependency of
+ * Access, that pulls plenty more things in. Because it is not needed in the
+ * scope of these tests, we replace it with a mock.
+ */
+class FakeManager extends \OCA\user_ldap\lib\user\Manager {
+ public function __construct() {}
+}
+
+require_once('setup-scripts/config.php');
+$test = new IntegrationTestAccessGroupsMatchFilter($host, $port, $adn, $apwd, $bdn);
+$test->init();
+$test->run();
diff --git a/apps/user_ldap/tests/integration/readme.md b/apps/user_ldap/tests/integration/readme.md
new file mode 100644
index 00000000000..e20efef8fdc
--- /dev/null
+++ b/apps/user_ldap/tests/integration/readme.md
@@ -0,0 +1,60 @@
+# Requirements #
+
+Have (as in do copy if not already done) the following files from https://github.com/owncloud/administration/tree/master/ldap-testing copied into the directory "setup-scripts":
+
+ * start.sh
+ * stop.sh
+ * config.php
+
+Configure config.php according to your needs, also have a look into the LDAP and network settings in start.sh and stop.sh.
+
+# Usage #
+
+The basic command to run a test is:
+
+```# ./run-test.sh [phpscript]```
+
+Yes, run it as root from within this directory.
+
+Example:
+
+```
+$ sudo ./run-test.sh lib/IntegrationTestAccessGroupsMatchFilter.php
+71cbe88a4993e67066714d71c1cecc5ef26a54911a208103cb6294f90459e574
+c74dc0155db4efa7a0515d419528a8727bbc7596601cf25b0df05e348bd74895
+CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
+c74dc0155db4 osixia/phpldapadmin:0.5.1 "/sbin/my_init" 1 seconds ago Up Less than a second 80/tcp, 0.0.0.0:8443->443/tcp docker-phpldapadmin
+71cbe88a4993 nickstenning/slapd:latest "/sbin/my_init" 1 seconds ago Up Less than a second 127.0.0.1:7770->389/tcp docker-slapd
+
+LDAP server now available under 127.0.0.1:7770 (internal IP is 172.17.0.78)
+phpldapadmin now available under https://127.0.0.1:8443
+
+created user : Alice Ealic
+created group : RedGroup
+created group : BlueGroup
+created group : GreenGroup
+created group : PurpleGroup
+running case1
+running case2
+Tests succeeded
+Stopping and resetting containers
+docker-slapd
+docker-phpldapadmin
+docker-slapd
+docker-phpldapadmin
+```
+
+# How it works #
+
+1. start.sh is executed which brings up a fresh and clean OpenLDAP in Docker.
+2. The provided test script is executed. It also outputs results.
+3. stop.sh is executed to shut down OpenLDAP
+
+# Beware #
+
+This is quick solution for basically one test case. With expension this mechanism should be improved as well.
+
+It does not run automatically, unless you do it. No integration with any testing framework.
+
+exceptionOnLostConnection.php is not part of this mechanism. Read its source and run it isolated. While you're at it, port it :þ
+
diff --git a/apps/user_ldap/tests/integration/run-test.sh b/apps/user_ldap/tests/integration/run-test.sh
new file mode 100755
index 00000000000..e07e9b43408
--- /dev/null
+++ b/apps/user_ldap/tests/integration/run-test.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+if [ $1 ] ; then
+ TESTSCRIPT=$1
+else
+ echo "No test file given" exit
+fi
+
+if [ ! -e "$TESTSCRIPT" ] ; then
+ echo "Test file does not exist"
+ exit
+fi
+
+
+# sleep is necessary, otherwise the LDAP server cannot be connected to, yet.
+setup-scripts/start.sh && sleep 2 && php -f "$TESTSCRIPT"
+setup-scripts/stop.sh
diff --git a/apps/user_ldap/tests/integration/setup-scripts/createExplicitGroups.php b/apps/user_ldap/tests/integration/setup-scripts/createExplicitGroups.php
new file mode 100644
index 00000000000..68854de5571
--- /dev/null
+++ b/apps/user_ldap/tests/integration/setup-scripts/createExplicitGroups.php
@@ -0,0 +1,52 @@
+<?php
+
+if(php_sapi_name() !== 'cli') {
+ print('Only via CLI, please.');
+ exit(1);
+}
+
+include __DIR__ . '/config.php';
+
+$cr = ldap_connect($host, $port);
+ldap_set_option($cr, LDAP_OPT_PROTOCOL_VERSION, 3);
+$ok = ldap_bind($cr, $adn, $apwd);
+
+if (!$ok) {
+ die(ldap_error($cr));
+}
+
+$ouName = 'Groups';
+$ouDN = 'ou=' . $ouName . ',' . $bdn;
+
+//creates an OU
+if (true) {
+ $entry = [];
+ $entry['objectclass'][] = 'top';
+ $entry['objectclass'][] = 'organizationalunit';
+ $entry['ou'] = $ouName;
+ $b = ldap_add($cr, $ouDN, $entry);
+ if (!$b) {
+ die(ldap_error($cr));
+ }
+}
+
+$groups = ['RedGroup', 'BlueGroup', 'GreenGroup', 'PurpleGroup'];
+// groupOfNames requires groups to have at least one member
+// the member used is created by createExplicitUsers.php script
+$omniMember = 'uid=alice,ou=Users,' . $bdn;
+
+foreach ($groups as $cn) {
+ $newDN = 'cn=' . $cn . ',' . $ouDN;
+
+ $entry = [];
+ $entry['cn'] = $cn;
+ $entry['objectclass'][] = 'groupOfNames';
+ $entry['member'][] = $omniMember;
+
+ $ok = ldap_add($cr, $newDN, $entry);
+ if ($ok) {
+ echo('created group ' . ': ' . $entry['cn'] . PHP_EOL);
+ } else {
+ die(ldap_error($cr));
+ }
+}
diff --git a/apps/user_ldap/tests/integration/setup-scripts/createExplicitUsers.php b/apps/user_ldap/tests/integration/setup-scripts/createExplicitUsers.php
new file mode 100644
index 00000000000..ac21d48fd16
--- /dev/null
+++ b/apps/user_ldap/tests/integration/setup-scripts/createExplicitUsers.php
@@ -0,0 +1,54 @@
+<?php
+
+if(php_sapi_name() !== 'cli') {
+ print('Only via CLI, please.');
+ exit(1);
+}
+
+include __DIR__ . '/config.php';
+
+$cr = ldap_connect($host, $port);
+ldap_set_option($cr, LDAP_OPT_PROTOCOL_VERSION, 3);
+$ok = ldap_bind($cr, $adn, $apwd);
+
+if (!$ok) {
+ die(ldap_error($cr));
+}
+
+$ouName = 'Users';
+$ouDN = 'ou=' . $ouName . ',' . $bdn;
+
+//creates on OU
+if (true) {
+ $entry = [];
+ $entry['objectclass'][] = 'top';
+ $entry['objectclass'][] = 'organizationalunit';
+ $entry['ou'] = $ouName;
+ $b = ldap_add($cr, $ouDN, $entry);
+ if (!$b) {
+ die(ldap_error($cr));
+ }
+}
+
+$users = ['alice'];
+
+foreach ($users as $uid) {
+ $newDN = 'uid=' . $uid . ',' . $ouDN;
+ $fn = ucfirst($uid);
+ $sn = ucfirst(str_shuffle($uid)); // not so explicit but it's OK.
+
+ $entry = [];
+ $entry['cn'] = $fn . ' ' . $sn;
+ $entry['objectclass'][] = 'inetOrgPerson';
+ $entry['objectclass'][] = 'person';
+ $entry['sn'] = $sn;
+ $entry['userPassword'] = $uid;
+ $entry['displayName'] = $sn . ', ' . $fn;
+
+ $ok = ldap_add($cr, $newDN, $entry);
+ if ($ok) {
+ echo('created user ' . ': ' . $entry['cn'] . PHP_EOL);
+ } else {
+ die(ldap_error($cr));
+ }
+}
diff --git a/apps/user_ldap/tests/user_ldap.php b/apps/user_ldap/tests/user_ldap.php
index 2f15a5acc6d..2b99e1c2dc8 100644
--- a/apps/user_ldap/tests/user_ldap.php
+++ b/apps/user_ldap/tests/user_ldap.php
@@ -2,6 +2,7 @@
/**
* @author Arthur Schiwon <blizzz@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 McCorkell <rmccorkell@karoshi.org.uk>
diff --git a/apps/user_ldap/user_ldap.php b/apps/user_ldap/user_ldap.php
index 014d60c7316..caff30a0e60 100644
--- a/apps/user_ldap/user_ldap.php
+++ b/apps/user_ldap/user_ldap.php
@@ -120,9 +120,11 @@ class USER_LDAP extends BackendUtility implements \OCP\IUserBackend, \OCP\UserIn
/**
* Get a list of all users
- * @return string[] with all uids
*
- * Get a list of all users.
+ * @param string $search
+ * @param null|int $limit
+ * @param null|int $offset
+ * @return string[] an array of all uids
*/
public function getUsers($search = '', $limit = 10, $offset = 0) {
$search = $this->access->escapeFilterPart($search, true);
@@ -328,9 +330,11 @@ class USER_LDAP extends BackendUtility implements \OCP\IUserBackend, \OCP\UserIn
/**
* Get a list of all display names
- * @return array with all displayNames (value) and the correspondig uids (key)
*
- * Get a list of all display names and user ids.
+ * @param string $search
+ * @param string|null $limit
+ * @param string|null $offset
+ * @return array an array of all displayNames (value) and the corresponding uids (key)
*/
public function getDisplayNames($search = '', $limit = null, $offset = null) {
$cacheKey = 'getDisplayNames-'.$search.'-'.$limit.'-'.$offset;
diff --git a/apps/user_ldap/user_proxy.php b/apps/user_ldap/user_proxy.php
index 53d453e54fd..683529eb902 100644
--- a/apps/user_ldap/user_proxy.php
+++ b/apps/user_ldap/user_proxy.php
@@ -132,9 +132,11 @@ class User_Proxy extends lib\Proxy implements \OCP\IUserBackend, \OCP\UserInterf
/**
* Get a list of all users
- * @return string[] with all uids
*
- * Get a list of all users.
+ * @param string $search
+ * @param null|int $limit
+ * @param null|int $offset
+ * @return string[] an array of all uids
*/
public function getUsers($search = '', $limit = 10, $offset = 0) {
//we do it just as the /OC_User implementation: do not play around with limit and offset but ask all backends
@@ -208,10 +210,11 @@ class User_Proxy extends lib\Proxy implements \OCP\IUserBackend, \OCP\UserInterf
}
/**
- * Get a list of all display names
- * @return array with all displayNames (value) and the corresponding uids (key)
- *
* Get a list of all display names and user ids.
+ * @param string $search
+ * @param string|null $limit
+ * @param string|null $offset
+ * @return array an array of all displayNames (value) and the corresponding uids (key)
*/
public function getDisplayNames($search = '', $limit = null, $offset = null) {
//we do it just as the /OC_User implementation: do not play around with limit and offset but ask all backends
diff --git a/apps/user_webdavauth/appinfo/app.php b/apps/user_webdavauth/appinfo/app.php
index d27e804d8ba..3f76f803efd 100644
--- a/apps/user_webdavauth/appinfo/app.php
+++ b/apps/user_webdavauth/appinfo/app.php
@@ -4,6 +4,7 @@
* @author Frank Karlitschek <frank@owncloud.org>
* @author j-ed <juergen@eisfair.org>
* @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_webdavauth/user_webdavauth.php b/apps/user_webdavauth/user_webdavauth.php
index be61cce5088..acd7ec8507c 100644
--- a/apps/user_webdavauth/user_webdavauth.php
+++ b/apps/user_webdavauth/user_webdavauth.php
@@ -3,7 +3,7 @@
* @author Bart Visscher <bartv@thisnet.nl>
* @author Felix Moeller <mail@felixmoeller.de>
* @author Frank Karlitschek <frank@owncloud.org>
- * @author Georg Ehrke <georg@ownCloud.com>
+ * @author Georg Ehrke <georg@owncloud.com>
* @author Morris Jobke <hey@morrisjobke.de>
* @author opensaucesystems <ashley@opensaucesystems.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
@@ -34,27 +34,27 @@ class OC_USER_WEBDAVAUTH extends OC_User_Backend implements \OCP\IUserBackend {
public function deleteUser($uid) {
// Can't delete user
- OC_Log::write('OC_USER_WEBDAVAUTH', 'Not possible to delete users from web frontend using WebDAV user backend', 3);
+ OCP\Util::writeLog('OC_USER_WEBDAVAUTH', 'Not possible to delete users from web frontend using WebDAV user backend', 3);
return false;
}
public function setPassword ( $uid, $password ) {
// We can't change user password
- OC_Log::write('OC_USER_WEBDAVAUTH', 'Not possible to change password for users from web frontend using WebDAV user backend', 3);
+ OCP\Util::writeLog('OC_USER_WEBDAVAUTH', 'Not possible to change password for users from web frontend using WebDAV user backend', 3);
return false;
}
public function checkPassword( $uid, $password ) {
$arr = explode('://', $this->webdavauth_url, 2);
if( ! isset($arr) OR count($arr) !== 2) {
- OC_Log::write('OC_USER_WEBDAVAUTH', 'Invalid Url: "'.$this->webdavauth_url.'" ', 3);
+ OCP\Util::writeLog('OC_USER_WEBDAVAUTH', 'Invalid Url: "'.$this->webdavauth_url.'" ', 3);
return false;
}
list($webdavauth_protocol, $webdavauth_url_path) = $arr;
$url= $webdavauth_protocol.'://'.urlencode($uid).':'.urlencode($password).'@'.$webdavauth_url_path;
$headers = get_headers($url);
if($headers==false) {
- OC_Log::write('OC_USER_WEBDAVAUTH', 'Not possible to connect to WebDAV Url: "'.$webdavauth_protocol.'://'.$webdavauth_url_path.'" ', 3);
+ OCP\Util::writeLog('OC_USER_WEBDAVAUTH', 'Not possible to connect to WebDAV Url: "'.$webdavauth_protocol.'://'.$webdavauth_url_path.'" ', 3);
return false;
}