summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--apps/dav/lib/Connector/Sabre/FilesPlugin.php8
-rw-r--r--apps/dav/tests/unit/CalDAV/Schedule/IMipPluginTest.php4
-rw-r--r--apps/files/l10n/tr.js1
-rw-r--r--apps/files/l10n/tr.json1
-rw-r--r--apps/files_external/3rdparty/composer.json2
-rw-r--r--apps/files_external/3rdparty/composer.lock12
-rw-r--r--apps/files_external/3rdparty/composer/autoload_classmap.php2
-rw-r--r--apps/files_external/3rdparty/composer/autoload_static.php2
-rw-r--r--apps/files_external/3rdparty/composer/installed.json12
-rw-r--r--apps/files_external/3rdparty/icewind/smb/src/Exception/ConnectionAbortedException.php11
-rw-r--r--apps/files_external/3rdparty/icewind/smb/src/Exception/ConnectionResetException.php11
-rw-r--r--apps/files_external/3rdparty/icewind/smb/src/Native/NativeShare.php12
-rw-r--r--apps/files_external/3rdparty/icewind/smb/src/Native/NativeState.php11
-rw-r--r--apps/files_external/3rdparty/icewind/smb/src/Native/NativeStream.php8
-rw-r--r--apps/files_external/3rdparty/icewind/smb/src/Native/NativeWriteStream.php11
-rw-r--r--apps/files_external/3rdparty/icewind/smb/src/Wrapped/Share.php3
-rw-r--r--apps/files_external/lib/Command/Notify.php6
-rw-r--r--apps/files_external/lib/Lib/Storage/SFTP.php6
-rw-r--r--apps/files_sharing/l10n/el.js1
-rw-r--r--apps/files_sharing/l10n/el.json1
-rw-r--r--apps/files_sharing/l10n/tr.js3
-rw-r--r--apps/files_sharing/l10n/tr.json3
-rw-r--r--apps/files_sharing/lib/Controller/ShareController.php2
-rw-r--r--apps/files_sharing/lib/Exceptions/BrokenPath.php2
-rw-r--r--apps/files_sharing/tests/ApiTest.php2
-rw-r--r--apps/files_versions/lib/Expiration.php6
-rw-r--r--apps/settings/l10n/el.js4
-rw-r--r--apps/settings/l10n/el.json4
-rw-r--r--apps/settings/l10n/tr.js11
-rw-r--r--apps/settings/l10n/tr.json11
-rw-r--r--apps/settings/lib/Controller/CheckSetupController.php6
-rw-r--r--apps/theming/templates/settings-admin.php2
-rw-r--r--apps/updatenotification/l10n/zh_TW.js3
-rw-r--r--apps/updatenotification/l10n/zh_TW.json3
-rw-r--r--apps/user_ldap/lib/Access.php14
-rw-r--r--apps/user_ldap/lib/Group_LDAP.php14
-rw-r--r--apps/user_ldap/lib/Mapping/AbstractMapping.php6
-rw-r--r--apps/user_ldap/lib/Mapping/GroupMapping.php12
-rw-r--r--apps/user_ldap/lib/Mapping/UserMapping.php6
-rw-r--r--apps/user_ldap/lib/User_LDAP.php24
-rw-r--r--core/Command/Background/Ajax.php44
-rw-r--r--core/Command/Background/Base.php74
-rw-r--r--core/Command/Background/Cron.php44
-rw-r--r--core/Command/Background/WebCron.php44
-rw-r--r--core/Controller/AvatarController.php2
-rw-r--r--core/l10n/nl.js8
-rw-r--r--core/l10n/nl.json8
-rw-r--r--core/l10n/tr.js9
-rw-r--r--core/l10n/tr.json9
-rw-r--r--lib/l10n/tr.js2
-rw-r--r--lib/l10n/tr.json2
-rw-r--r--lib/private/Activity/Event.php8
-rw-r--r--lib/private/AppFramework/Http/Request.php66
-rw-r--r--lib/private/CapabilitiesManager.php2
-rw-r--r--lib/private/Collaboration/Collaborators/Search.php7
-rw-r--r--lib/private/Collaboration/Collaborators/UserPlugin.php29
-rw-r--r--lib/private/DB/MySqlTools.php4
-rw-r--r--lib/private/DB/PgSqlTools.php14
-rw-r--r--lib/private/Encryption/Manager.php2
-rw-r--r--lib/private/Group/Backend.php26
-rwxr-xr-xlib/private/LargeFileHelper.php104
-rw-r--r--lib/private/SystemTag/SystemTagObjectMapper.php12
-rw-r--r--lib/private/TagManager.php30
-rw-r--r--lib/private/Tagging/Tag.php12
-rw-r--r--lib/private/Tagging/TagMapper.php30
-rw-r--r--lib/private/Tags.php276
-rw-r--r--lib/private/TemplateLayout.php2
-rw-r--r--lib/private/User/Backend.php42
-rw-r--r--lib/private/legacy/template/functions.php8
-rw-r--r--lib/public/App.php4
-rw-r--r--lib/public/AppFramework/ApiController.php4
-rw-r--r--lib/public/BackgroundJob/Job.php2
-rw-r--r--lib/public/ITagManager.php2
-rw-r--r--lib/public/IUserManager.php10
-rw-r--r--lib/public/User/Backend/ABackend.php2
-rw-r--r--tests/lib/Activity/ManagerTest.php2
-rw-r--r--tests/lib/AppFramework/Db/EntityTest.php38
-rw-r--r--tests/lib/Collaboration/Collaborators/UserPluginTest.php139
-rw-r--r--tests/lib/Command/BackgroundJobsTest.php44
-rw-r--r--tests/lib/Group/Dummy.php38
-rw-r--r--tests/lib/LargeFileHelperGetFileSizeTest.php6
-rw-r--r--tests/lib/NaturalSortTest.php12
-rw-r--r--tests/lib/PublicNamespace/UtilTest.php8
-rw-r--r--tests/lib/Share/Backend.php36
-rw-r--r--tests/lib/Share/HelperTest.php36
-rw-r--r--tests/lib/Share/SearchResultSorterTest.php36
-rw-r--r--tests/lib/Share/ShareTest.php36
-rw-r--r--tests/lib/SystemTag/SystemTagManagerTest.php2
-rw-r--r--tests/lib/SystemTag/SystemTagObjectMapperTest.php2
-rw-r--r--tests/lib/TagsTest.php42
-rw-r--r--tests/lib/User/AvatarUserDummy.php38
-rw-r--r--tests/lib/User/Backend.php38
-rw-r--r--tests/lib/User/DatabaseTest.php38
-rw-r--r--tests/lib/User/Dummy.php38
94 files changed, 993 insertions, 843 deletions
diff --git a/apps/dav/lib/Connector/Sabre/FilesPlugin.php b/apps/dav/lib/Connector/Sabre/FilesPlugin.php
index fd432a21377..82f3c3b6ccd 100644
--- a/apps/dav/lib/Connector/Sabre/FilesPlugin.php
+++ b/apps/dav/lib/Connector/Sabre/FilesPlugin.php
@@ -299,10 +299,10 @@ class FilesPlugin extends ServerPlugin {
* so users were unable to navigate into folders where one subitem
* is blocked by the files_accesscontrol app, see:
* https://github.com/nextcloud/files_accesscontrol/issues/65
- if (!$node->getFileInfo()->isReadable()) {
- // avoid detecting files through this means
- throw new NotFound();
- }
+ * if (!$node->getFileInfo()->isReadable()) {
+ * // avoid detecting files through this means
+ * throw new NotFound();
+ * }
*/
$propFind->handle(self::FILEID_PROPERTYNAME, function() use ($node) {
diff --git a/apps/dav/tests/unit/CalDAV/Schedule/IMipPluginTest.php b/apps/dav/tests/unit/CalDAV/Schedule/IMipPluginTest.php
index 0f990cd8ca6..ebe5beb7275 100644
--- a/apps/dav/tests/unit/CalDAV/Schedule/IMipPluginTest.php
+++ b/apps/dav/tests/unit/CalDAV/Schedule/IMipPluginTest.php
@@ -221,8 +221,8 @@ class IMipPluginTest extends TestCase {
}
/**
- * @dataProvider dataIncludeResponseButtons
- */
+ * @dataProvider dataIncludeResponseButtons
+ */
public function testIncludeResponseButtons(string $config_setting, string $recipient, bool $has_buttons ) {
$message = $this->_testMessage([],$recipient);
diff --git a/apps/files/l10n/tr.js b/apps/files/l10n/tr.js
index dc76ed9d455..389b7939f3b 100644
--- a/apps/files/l10n/tr.js
+++ b/apps/files/l10n/tr.js
@@ -168,6 +168,7 @@ OC.L10N.register(
"Settings" : "Ayarlar",
"Show hidden files" : "Gizli dosyaları görüntüle",
"WebDAV" : "WebDAV",
+ "Use this address to access your Files via WebDAV" : "Dosyalarınıza WebDAV üzerinden erişmek için bu adresi kullanın",
"Toggle grid view" : "Tablo görünümünü değiştir",
"No files in here" : "Burada herhangi bir dosya yok",
"Upload some content or sync with your devices!" : "Bir şeyler yükleyin ya da aygıtlarınızla eşitleyin!",
diff --git a/apps/files/l10n/tr.json b/apps/files/l10n/tr.json
index 43359118448..15182ef5ca4 100644
--- a/apps/files/l10n/tr.json
+++ b/apps/files/l10n/tr.json
@@ -166,6 +166,7 @@
"Settings" : "Ayarlar",
"Show hidden files" : "Gizli dosyaları görüntüle",
"WebDAV" : "WebDAV",
+ "Use this address to access your Files via WebDAV" : "Dosyalarınıza WebDAV üzerinden erişmek için bu adresi kullanın",
"Toggle grid view" : "Tablo görünümünü değiştir",
"No files in here" : "Burada herhangi bir dosya yok",
"Upload some content or sync with your devices!" : "Bir şeyler yükleyin ya da aygıtlarınızla eşitleyin!",
diff --git a/apps/files_external/3rdparty/composer.json b/apps/files_external/3rdparty/composer.json
index 9cf429eb5c2..0ee0c268bb0 100644
--- a/apps/files_external/3rdparty/composer.json
+++ b/apps/files_external/3rdparty/composer.json
@@ -9,6 +9,6 @@
},
"require": {
"icewind/streams": "0.7.1",
- "icewind/smb": "3.2.1"
+ "icewind/smb": "3.2.3"
}
}
diff --git a/apps/files_external/3rdparty/composer.lock b/apps/files_external/3rdparty/composer.lock
index c486854d6a9..e0716141c5f 100644
--- a/apps/files_external/3rdparty/composer.lock
+++ b/apps/files_external/3rdparty/composer.lock
@@ -4,20 +4,20 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "adc3b3531ee8503b485092e60c569b42",
+ "content-hash": "ef0d9929f5f25696e010d5733eb51fbb",
"packages": [
{
"name": "icewind/smb",
- "version": "v3.2.1",
+ "version": "v3.2.3",
"source": {
"type": "git",
"url": "https://github.com/icewind1991/SMB.git",
- "reference": "5330edcc579a2dcc4759b8e5779eb5aa3385a878"
+ "reference": "db50bb51bd0a0e55506e82cf439a9ecd232f64d4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/icewind1991/SMB/zipball/5330edcc579a2dcc4759b8e5779eb5aa3385a878",
- "reference": "5330edcc579a2dcc4759b8e5779eb5aa3385a878",
+ "url": "https://api.github.com/repos/icewind1991/SMB/zipball/db50bb51bd0a0e55506e82cf439a9ecd232f64d4",
+ "reference": "db50bb51bd0a0e55506e82cf439a9ecd232f64d4",
"shasum": ""
},
"require": {
@@ -46,7 +46,7 @@
}
],
"description": "php wrapper for smbclient and libsmbclient-php",
- "time": "2020-03-24T18:19:18+00:00"
+ "time": "2020-04-08T15:20:22+00:00"
},
{
"name": "icewind/streams",
diff --git a/apps/files_external/3rdparty/composer/autoload_classmap.php b/apps/files_external/3rdparty/composer/autoload_classmap.php
index 5b0c682cbce..a563765eb9b 100644
--- a/apps/files_external/3rdparty/composer/autoload_classmap.php
+++ b/apps/files_external/3rdparty/composer/autoload_classmap.php
@@ -16,8 +16,10 @@ return array(
'Icewind\\SMB\\Exception\\AlreadyExistsException' => $vendorDir . '/icewind/smb/src/Exception/AlreadyExistsException.php',
'Icewind\\SMB\\Exception\\AuthenticationException' => $vendorDir . '/icewind/smb/src/Exception/AuthenticationException.php',
'Icewind\\SMB\\Exception\\ConnectException' => $vendorDir . '/icewind/smb/src/Exception/ConnectException.php',
+ 'Icewind\\SMB\\Exception\\ConnectionAbortedException' => $vendorDir . '/icewind/smb/src/Exception/ConnectionAbortedException.php',
'Icewind\\SMB\\Exception\\ConnectionException' => $vendorDir . '/icewind/smb/src/Exception/ConnectionException.php',
'Icewind\\SMB\\Exception\\ConnectionRefusedException' => $vendorDir . '/icewind/smb/src/Exception/ConnectionRefusedException.php',
+ 'Icewind\\SMB\\Exception\\ConnectionResetException' => $vendorDir . '/icewind/smb/src/Exception/ConnectionResetException.php',
'Icewind\\SMB\\Exception\\DependencyException' => $vendorDir . '/icewind/smb/src/Exception/DependencyException.php',
'Icewind\\SMB\\Exception\\Exception' => $vendorDir . '/icewind/smb/src/Exception/Exception.php',
'Icewind\\SMB\\Exception\\FileInUseException' => $vendorDir . '/icewind/smb/src/Exception/FileInUseException.php',
diff --git a/apps/files_external/3rdparty/composer/autoload_static.php b/apps/files_external/3rdparty/composer/autoload_static.php
index b8eb6ebbfe8..fc6e68f8be4 100644
--- a/apps/files_external/3rdparty/composer/autoload_static.php
+++ b/apps/files_external/3rdparty/composer/autoload_static.php
@@ -46,8 +46,10 @@ class ComposerStaticInit98fe9b281934250b3a93f69a5ce843b3
'Icewind\\SMB\\Exception\\AlreadyExistsException' => __DIR__ . '/..' . '/icewind/smb/src/Exception/AlreadyExistsException.php',
'Icewind\\SMB\\Exception\\AuthenticationException' => __DIR__ . '/..' . '/icewind/smb/src/Exception/AuthenticationException.php',
'Icewind\\SMB\\Exception\\ConnectException' => __DIR__ . '/..' . '/icewind/smb/src/Exception/ConnectException.php',
+ 'Icewind\\SMB\\Exception\\ConnectionAbortedException' => __DIR__ . '/..' . '/icewind/smb/src/Exception/ConnectionAbortedException.php',
'Icewind\\SMB\\Exception\\ConnectionException' => __DIR__ . '/..' . '/icewind/smb/src/Exception/ConnectionException.php',
'Icewind\\SMB\\Exception\\ConnectionRefusedException' => __DIR__ . '/..' . '/icewind/smb/src/Exception/ConnectionRefusedException.php',
+ 'Icewind\\SMB\\Exception\\ConnectionResetException' => __DIR__ . '/..' . '/icewind/smb/src/Exception/ConnectionResetException.php',
'Icewind\\SMB\\Exception\\DependencyException' => __DIR__ . '/..' . '/icewind/smb/src/Exception/DependencyException.php',
'Icewind\\SMB\\Exception\\Exception' => __DIR__ . '/..' . '/icewind/smb/src/Exception/Exception.php',
'Icewind\\SMB\\Exception\\FileInUseException' => __DIR__ . '/..' . '/icewind/smb/src/Exception/FileInUseException.php',
diff --git a/apps/files_external/3rdparty/composer/installed.json b/apps/files_external/3rdparty/composer/installed.json
index e3609f5af4e..e2b841f206a 100644
--- a/apps/files_external/3rdparty/composer/installed.json
+++ b/apps/files_external/3rdparty/composer/installed.json
@@ -1,17 +1,17 @@
[
{
"name": "icewind/smb",
- "version": "v3.2.1",
- "version_normalized": "3.2.1.0",
+ "version": "v3.2.3",
+ "version_normalized": "3.2.3.0",
"source": {
"type": "git",
"url": "https://github.com/icewind1991/SMB.git",
- "reference": "5330edcc579a2dcc4759b8e5779eb5aa3385a878"
+ "reference": "db50bb51bd0a0e55506e82cf439a9ecd232f64d4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/icewind1991/SMB/zipball/5330edcc579a2dcc4759b8e5779eb5aa3385a878",
- "reference": "5330edcc579a2dcc4759b8e5779eb5aa3385a878",
+ "url": "https://api.github.com/repos/icewind1991/SMB/zipball/db50bb51bd0a0e55506e82cf439a9ecd232f64d4",
+ "reference": "db50bb51bd0a0e55506e82cf439a9ecd232f64d4",
"shasum": ""
},
"require": {
@@ -22,7 +22,7 @@
"friendsofphp/php-cs-fixer": "^2.13",
"phpunit/phpunit": "^7.0"
},
- "time": "2020-03-24T18:19:18+00:00",
+ "time": "2020-04-08T15:20:22+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
diff --git a/apps/files_external/3rdparty/icewind/smb/src/Exception/ConnectionAbortedException.php b/apps/files_external/3rdparty/icewind/smb/src/Exception/ConnectionAbortedException.php
new file mode 100644
index 00000000000..59363ca7ba9
--- /dev/null
+++ b/apps/files_external/3rdparty/icewind/smb/src/Exception/ConnectionAbortedException.php
@@ -0,0 +1,11 @@
+<?php
+/**
+ * Copyright (c) 2020 Robin Appelman <icewind@owncloud.com>
+ * This file is licensed under the Licensed under the MIT license:
+ * http://opensource.org/licenses/MIT
+ */
+
+namespace Icewind\SMB\Exception;
+
+class ConnectionAbortedException extends ConnectException {
+}
diff --git a/apps/files_external/3rdparty/icewind/smb/src/Exception/ConnectionResetException.php b/apps/files_external/3rdparty/icewind/smb/src/Exception/ConnectionResetException.php
new file mode 100644
index 00000000000..d5ac10d32dc
--- /dev/null
+++ b/apps/files_external/3rdparty/icewind/smb/src/Exception/ConnectionResetException.php
@@ -0,0 +1,11 @@
+<?php
+/**
+ * Copyright (c) 2020 Robin Appelman <icewind@owncloud.com>
+ * This file is licensed under the Licensed under the MIT license:
+ * http://opensource.org/licenses/MIT
+ */
+
+namespace Icewind\SMB\Exception;
+
+class ConnectionResetException extends ConnectException {
+}
diff --git a/apps/files_external/3rdparty/icewind/smb/src/Native/NativeShare.php b/apps/files_external/3rdparty/icewind/smb/src/Native/NativeShare.php
index 26e7adb019d..e829be28bf0 100644
--- a/apps/files_external/3rdparty/icewind/smb/src/Native/NativeShare.php
+++ b/apps/files_external/3rdparty/icewind/smb/src/Native/NativeShare.php
@@ -197,12 +197,14 @@ class NativeShare extends AbstractShare {
*/
public function put($source, $target) {
$sourceHandle = fopen($source, 'rb');
- $targetHandle = $this->getState()->create($this->buildUrl($target));
+ $targetUrl = $this->buildUrl($target);
+
+ $targetHandle = $this->getState()->create($targetUrl);
while ($data = fread($sourceHandle, NativeReadStream::CHUNK_SIZE)) {
- $this->getState()->write($targetHandle, $data);
+ $this->getState()->write($targetHandle, $data, $targetUrl);
}
- $this->getState()->close($targetHandle);
+ $this->getState()->close($targetHandle, $targetUrl);
return true;
}
@@ -236,14 +238,14 @@ class NativeShare extends AbstractShare {
} else {
$reason = 'Unknown error';
}
- $this->getState()->close($sourceHandle);
+ $this->getState()->close($sourceHandle, $this->buildUrl($source));
throw new InvalidResourceException('Failed opening local file "' . $target . '" for writing: ' . $reason);
}
while ($data = $this->getState()->read($sourceHandle, NativeReadStream::CHUNK_SIZE)) {
fwrite($targetHandle, $data);
}
- $this->getState()->close($sourceHandle);
+ $this->getState()->close($sourceHandle, $this->buildUrl($source));
return true;
}
diff --git a/apps/files_external/3rdparty/icewind/smb/src/Native/NativeState.php b/apps/files_external/3rdparty/icewind/smb/src/Native/NativeState.php
index 0792b2f9d7f..3bfb1c3da24 100644
--- a/apps/files_external/3rdparty/icewind/smb/src/Native/NativeState.php
+++ b/apps/files_external/3rdparty/icewind/smb/src/Native/NativeState.php
@@ -16,6 +16,7 @@ use Icewind\SMB\Exception\ForbiddenException;
use Icewind\SMB\Exception\HostDownException;
use Icewind\SMB\Exception\InvalidArgumentException;
use Icewind\SMB\Exception\InvalidTypeException;
+use Icewind\SMB\Exception\ConnectionAbortedException;
use Icewind\SMB\Exception\NoRouteToHostException;
use Icewind\SMB\Exception\NotEmptyException;
use Icewind\SMB\Exception\NotFoundException;
@@ -49,6 +50,7 @@ class NativeState {
22 => InvalidArgumentException::class,
28 => OutOfSpaceException::class,
39 => NotEmptyException::class,
+ 103 => ConnectionAbortedException::class,
104 => ConnectionResetException::class,
110 => TimedOutException::class,
111 => ConnectionRefusedException::class,
@@ -238,13 +240,14 @@ class NativeState {
/**
* @param resource $file
* @param string $data
+ * @param string $path
* @param int $length
* @return int
*/
- public function write($file, $data, $length = null) {
+ public function write($file, $data, $path, $length = null) {
$result = @smbclient_write($this->state, $file, $data, $length);
- $this->testResult($result, $file);
+ $this->testResult($result, $path);
return $result;
}
@@ -273,10 +276,10 @@ class NativeState {
return $result;
}
- public function close($file) {
+ public function close($file, $path) {
$result = @smbclient_close($this->state, $file);
- $this->testResult($result, $file);
+ $this->testResult($result, $path);
return $result;
}
diff --git a/apps/files_external/3rdparty/icewind/smb/src/Native/NativeStream.php b/apps/files_external/3rdparty/icewind/smb/src/Native/NativeStream.php
index dd92edcbf5e..c75afaa5f1d 100644
--- a/apps/files_external/3rdparty/icewind/smb/src/Native/NativeStream.php
+++ b/apps/files_external/3rdparty/icewind/smb/src/Native/NativeStream.php
@@ -61,7 +61,11 @@ class NativeStream implements File {
}
public function stream_close() {
- return $this->state->close($this->handle);
+ try {
+ return $this->state->close($this->handle, $this->url);
+ } catch (\Exception $e) {
+ return false;
+ }
}
public function stream_eof() {
@@ -110,7 +114,7 @@ class NativeStream implements File {
}
public function stream_write($data) {
- return $this->state->write($this->handle, $data);
+ return $this->state->write($this->handle, $data, $this->url);
}
public function stream_truncate($size) {
diff --git a/apps/files_external/3rdparty/icewind/smb/src/Native/NativeWriteStream.php b/apps/files_external/3rdparty/icewind/smb/src/Native/NativeWriteStream.php
index 39eca8175a9..4e90e5a655d 100644
--- a/apps/files_external/3rdparty/icewind/smb/src/Native/NativeWriteStream.php
+++ b/apps/files_external/3rdparty/icewind/smb/src/Native/NativeWriteStream.php
@@ -61,7 +61,7 @@ class NativeWriteStream extends NativeStream {
private function flushWrite() {
rewind($this->writeBuffer);
- $this->state->write($this->handle, stream_get_contents($this->writeBuffer));
+ $this->state->write($this->handle, stream_get_contents($this->writeBuffer), $this->url);
$this->writeBuffer = fopen('php://memory', 'r+');
$this->bufferSize = 0;
}
@@ -79,8 +79,13 @@ class NativeWriteStream extends NativeStream {
}
public function stream_close() {
- $this->flushWrite();
- return parent::stream_close();
+ try {
+ $this->flushWrite();
+ $flushResult = true;
+ } catch (\Exception $e) {
+ $flushResult = false;
+ }
+ return parent::stream_close() && $flushResult;
}
public function stream_tell() {
diff --git a/apps/files_external/3rdparty/icewind/smb/src/Wrapped/Share.php b/apps/files_external/3rdparty/icewind/smb/src/Wrapped/Share.php
index 18ee5c1db97..e0df1f60326 100644
--- a/apps/files_external/3rdparty/icewind/smb/src/Wrapped/Share.php
+++ b/apps/files_external/3rdparty/icewind/smb/src/Wrapped/Share.php
@@ -14,11 +14,14 @@ use Icewind\SMB\Exception\DependencyException;
use Icewind\SMB\Exception\FileInUseException;
use Icewind\SMB\Exception\InvalidTypeException;
use Icewind\SMB\Exception\NotFoundException;
+use Icewind\SMB\Exception\InvalidRequestException;
use Icewind\SMB\IFileInfo;
use Icewind\SMB\INotifyHandler;
use Icewind\SMB\IServer;
use Icewind\SMB\ISystem;
use Icewind\Streams\CallbackWrapper;
+use Icewind\SMB\Native\NativeShare;
+use Icewind\SMB\Native\NativeServer;
class Share extends AbstractShare {
/**
diff --git a/apps/files_external/lib/Command/Notify.php b/apps/files_external/lib/Command/Notify.php
index 8c0ed41005a..84966b4ee7b 100644
--- a/apps/files_external/lib/Command/Notify.php
+++ b/apps/files_external/lib/Command/Notify.php
@@ -208,7 +208,7 @@ class Notify extends Base {
/**
* @param int $mountId
* @return array
- */
+ */
private function getStorageIds($mountId) {
$qb = $this->connection->getQueryBuilder();
return $qb
@@ -223,7 +223,7 @@ class Notify extends Base {
* @param array $storageIds
* @param string $parent
* @return int
- */
+ */
private function updateParent($storageIds, $parent) {
$pathHash = md5(trim(\OC_Util::normalizeUnicode($parent), '/'));
$qb = $this->connection->getQueryBuilder();
@@ -237,7 +237,7 @@ class Notify extends Base {
/**
* @return \OCP\IDBConnection
- */
+ */
private function reconnectToDatabase(IDBConnection $connection, OutputInterface $output) {
try {
$connection->close();
diff --git a/apps/files_external/lib/Lib/Storage/SFTP.php b/apps/files_external/lib/Lib/Storage/SFTP.php
index 180458b2b33..3e6c8ddbde0 100644
--- a/apps/files_external/lib/Lib/Storage/SFTP.php
+++ b/apps/files_external/lib/Lib/Storage/SFTP.php
@@ -41,9 +41,9 @@ use Icewind\Streams\RetryWrapper;
use phpseclib\Net\SFTP\Stream;
/**
-* Uses phpseclib's Net\SFTP class and the Net\SFTP\Stream stream wrapper to
-* provide access to SFTP servers.
-*/
+ * Uses phpseclib's Net\SFTP class and the Net\SFTP\Stream stream wrapper to
+ * provide access to SFTP servers.
+ */
class SFTP extends \OC\Files\Storage\Common {
private $host;
private $user;
diff --git a/apps/files_sharing/l10n/el.js b/apps/files_sharing/l10n/el.js
index 07a7952c6dc..6ddf5f76049 100644
--- a/apps/files_sharing/l10n/el.js
+++ b/apps/files_sharing/l10n/el.js
@@ -26,6 +26,7 @@ OC.L10N.register(
"Something happened. Unable to accept the share." : "Κάτι συνέβη. Δεν μπορεί να γίνει η αποδοχή.",
"Reject share" : "Απόρριψη κοινόχρηστου",
"Something happened. Unable to reject the share." : "Κάτι συνέβη. Δεν μπορεί να απορριφθεί το κοινόχρηστο",
+ "Waiting…" : "Αναμονή...",
"error" : "σφάλμα ",
"finished" : "ολοκληρώθηκε",
"This will stop your current uploads." : "Αυτό θα σταματήσει τις τρέχουσες μεταφορτώσεις.",
diff --git a/apps/files_sharing/l10n/el.json b/apps/files_sharing/l10n/el.json
index 9675f3443fc..9b77f12889f 100644
--- a/apps/files_sharing/l10n/el.json
+++ b/apps/files_sharing/l10n/el.json
@@ -24,6 +24,7 @@
"Something happened. Unable to accept the share." : "Κάτι συνέβη. Δεν μπορεί να γίνει η αποδοχή.",
"Reject share" : "Απόρριψη κοινόχρηστου",
"Something happened. Unable to reject the share." : "Κάτι συνέβη. Δεν μπορεί να απορριφθεί το κοινόχρηστο",
+ "Waiting…" : "Αναμονή...",
"error" : "σφάλμα ",
"finished" : "ολοκληρώθηκε",
"This will stop your current uploads." : "Αυτό θα σταματήσει τις τρέχουσες μεταφορτώσεις.",
diff --git a/apps/files_sharing/l10n/tr.js b/apps/files_sharing/l10n/tr.js
index 86e2ee1ccce..15d83c57487 100644
--- a/apps/files_sharing/l10n/tr.js
+++ b/apps/files_sharing/l10n/tr.js
@@ -26,7 +26,9 @@ OC.L10N.register(
"Something happened. Unable to accept the share." : "Bir sorun çıktı. Paylaşım kabul edilemedi.",
"Reject share" : "Paylaşımı reddet",
"Something happened. Unable to reject the share." : "Bir sorun çıktı. Paylaşım reddedilemedi.",
+ "Waiting…" : "Bekleniyor…",
"error" : "sorun",
+ "finished" : "tamamlandı",
"This will stop your current uploads." : "Bu işlem geçerli yüklemeleri durduracak.",
"Move or copy" : "Taşı ya da kopyala",
"Download" : "İndir",
@@ -223,6 +225,7 @@ OC.L10N.register(
"Upload files to %s" : "Dosyaları %s konumuna yükle",
"Note" : "Not",
"Select or drop files" : "Dosyaları seçin ya da sürükleyip bırakın",
+ "Uploading files" : "Dosyalar yükleniyor",
"Uploaded files:" : "Yüklenmiş dosyalar:",
"By uploading files, you agree to the %1$sterms of service%2$s." : "Dosya yükleyerek %1$shizmet koşullarını%2$s kabul etmiş olursunuz.",
"could not delete share" : "paylaşım kaldırılamadı",
diff --git a/apps/files_sharing/l10n/tr.json b/apps/files_sharing/l10n/tr.json
index 5121b6ff773..5829cab5adb 100644
--- a/apps/files_sharing/l10n/tr.json
+++ b/apps/files_sharing/l10n/tr.json
@@ -24,7 +24,9 @@
"Something happened. Unable to accept the share." : "Bir sorun çıktı. Paylaşım kabul edilemedi.",
"Reject share" : "Paylaşımı reddet",
"Something happened. Unable to reject the share." : "Bir sorun çıktı. Paylaşım reddedilemedi.",
+ "Waiting…" : "Bekleniyor…",
"error" : "sorun",
+ "finished" : "tamamlandı",
"This will stop your current uploads." : "Bu işlem geçerli yüklemeleri durduracak.",
"Move or copy" : "Taşı ya da kopyala",
"Download" : "İndir",
@@ -221,6 +223,7 @@
"Upload files to %s" : "Dosyaları %s konumuna yükle",
"Note" : "Not",
"Select or drop files" : "Dosyaları seçin ya da sürükleyip bırakın",
+ "Uploading files" : "Dosyalar yükleniyor",
"Uploaded files:" : "Yüklenmiş dosyalar:",
"By uploading files, you agree to the %1$sterms of service%2$s." : "Dosya yükleyerek %1$shizmet koşullarını%2$s kabul etmiş olursunuz.",
"could not delete share" : "paylaşım kaldırılamadı",
diff --git a/apps/files_sharing/lib/Controller/ShareController.php b/apps/files_sharing/lib/Controller/ShareController.php
index 616b9754634..1cf798c9750 100644
--- a/apps/files_sharing/lib/Controller/ShareController.php
+++ b/apps/files_sharing/lib/Controller/ShareController.php
@@ -300,7 +300,7 @@ class ShareController extends AuthPublicShareController {
* @PublicPage
* @NoCSRFRequired
*
-
+ *
* @param string $path
* @return TemplateResponse
* @throws NotFoundException
diff --git a/apps/files_sharing/lib/Exceptions/BrokenPath.php b/apps/files_sharing/lib/Exceptions/BrokenPath.php
index 33fb242a36a..37db10bcb31 100644
--- a/apps/files_sharing/lib/Exceptions/BrokenPath.php
+++ b/apps/files_sharing/lib/Exceptions/BrokenPath.php
@@ -27,7 +27,7 @@ namespace OCA\Files_Sharing\Exceptions;
* Expected path with a different root
* Possible Error Codes:
* 10 - Path not relative to data/ and point to the users file directory
-
+ *
*/
class BrokenPath extends \Exception {
}
diff --git a/apps/files_sharing/tests/ApiTest.php b/apps/files_sharing/tests/ApiTest.php
index 789902bdcd6..654ca3b450b 100644
--- a/apps/files_sharing/tests/ApiTest.php
+++ b/apps/files_sharing/tests/ApiTest.php
@@ -305,7 +305,7 @@ class ApiTest extends TestCase {
/**
* @medium
- */
+ */
function testSharePermissions() {
// sharing file to a user should work if shareapi_exclude_groups is set
// to no
diff --git a/apps/files_versions/lib/Expiration.php b/apps/files_versions/lib/Expiration.php
index 9f3f524ec12..6959de6a943 100644
--- a/apps/files_versions/lib/Expiration.php
+++ b/apps/files_versions/lib/Expiration.php
@@ -129,9 +129,9 @@ class Expiration {
}
/**
- * Read versions_retention_obligation, validate it
- * and set private members accordingly
- */
+ * Read versions_retention_obligation, validate it
+ * and set private members accordingly
+ */
private function parseRetentionObligation(){
$splitValues = explode(',', $this->retentionObligation);
if (!isset($splitValues[0])) {
diff --git a/apps/settings/l10n/el.js b/apps/settings/l10n/el.js
index 987e20fce5c..79445c67f0e 100644
--- a/apps/settings/l10n/el.js
+++ b/apps/settings/l10n/el.js
@@ -243,15 +243,19 @@ OC.L10N.register(
"All languages" : "Όλες οι γλώσσες",
"Password change is disabled because the master key is disabled" : "Η αλλαγή κωδικού είναι απενεργοποιημένη επειδή το κεντρικό κλειδί είναι απενεργοποιημένο",
"Passwordless authentication requires a secure connection." : "Η σύνδεση χωρίς κωδικό πρόσβασης απαιτεί ασφαλή σύνδεση.",
+ "Add WebAuthn device" : "Προσθήκη συσκευής WebAuthn ",
"Please authorize your WebAuthn device." : "Παρακαλώ εξουσιοδοτήστε την συσκευή σας WebAuthn.",
"Name your device" : "Ονομάστε την συσκευή σας",
"Add" : "Προσθήκη",
"Adding your device …" : "Πρόσθεση της συσκευής σας ...",
+ "Server error while trying to add WebAuthn device" : "Σφάλμα διακομιστή κατά την προσθήκη συσκευής webAuthn",
+ "Server error while trying to complete WebAuthn device registration" : "Σφάλμα διακομιστή κατά την εγγραφή συσκευής WebAuthn",
"Unnamed device" : "Ανώνυμη συσκευή",
"Passwordless Authentication" : "Πιστοποίηση χωρίς Κωδικό Πρόσβασης",
"Set up your account for passwordless authentication following the FIDO2 standard." : "Ρυθμίστε τον λογαριασμό σας για πιστοποίηση χωρίς κωδικό ακολουθώντας τα πρότυπα του FIDO2.",
"No devices configured." : "Καμιά συσκευή δεν ρυθμίστηκε.",
"The following devices are configured for your account:" : "Οι ακόλουθες συσκευές ρυθμίστηκαν για τον λογαριασμό σας:",
+ "Your browser does not support WebAuthn." : "Ο περιηγητής σας δεν υποστηρίζει το WebAuthn.",
"Your apps" : "Οι εφαρμογές σας",
"Active apps" : "Ενεργές εφαρμογές",
"Disabled apps" : "Απενεργοποιημένες εφαρμογές",
diff --git a/apps/settings/l10n/el.json b/apps/settings/l10n/el.json
index 717d03cf6dc..5640cd0a7ca 100644
--- a/apps/settings/l10n/el.json
+++ b/apps/settings/l10n/el.json
@@ -241,15 +241,19 @@
"All languages" : "Όλες οι γλώσσες",
"Password change is disabled because the master key is disabled" : "Η αλλαγή κωδικού είναι απενεργοποιημένη επειδή το κεντρικό κλειδί είναι απενεργοποιημένο",
"Passwordless authentication requires a secure connection." : "Η σύνδεση χωρίς κωδικό πρόσβασης απαιτεί ασφαλή σύνδεση.",
+ "Add WebAuthn device" : "Προσθήκη συσκευής WebAuthn ",
"Please authorize your WebAuthn device." : "Παρακαλώ εξουσιοδοτήστε την συσκευή σας WebAuthn.",
"Name your device" : "Ονομάστε την συσκευή σας",
"Add" : "Προσθήκη",
"Adding your device …" : "Πρόσθεση της συσκευής σας ...",
+ "Server error while trying to add WebAuthn device" : "Σφάλμα διακομιστή κατά την προσθήκη συσκευής webAuthn",
+ "Server error while trying to complete WebAuthn device registration" : "Σφάλμα διακομιστή κατά την εγγραφή συσκευής WebAuthn",
"Unnamed device" : "Ανώνυμη συσκευή",
"Passwordless Authentication" : "Πιστοποίηση χωρίς Κωδικό Πρόσβασης",
"Set up your account for passwordless authentication following the FIDO2 standard." : "Ρυθμίστε τον λογαριασμό σας για πιστοποίηση χωρίς κωδικό ακολουθώντας τα πρότυπα του FIDO2.",
"No devices configured." : "Καμιά συσκευή δεν ρυθμίστηκε.",
"The following devices are configured for your account:" : "Οι ακόλουθες συσκευές ρυθμίστηκαν για τον λογαριασμό σας:",
+ "Your browser does not support WebAuthn." : "Ο περιηγητής σας δεν υποστηρίζει το WebAuthn.",
"Your apps" : "Οι εφαρμογές σας",
"Active apps" : "Ενεργές εφαρμογές",
"Disabled apps" : "Απενεργοποιημένες εφαρμογές",
diff --git a/apps/settings/l10n/tr.js b/apps/settings/l10n/tr.js
index 85aaad5abec..b55bffc4485 100644
--- a/apps/settings/l10n/tr.js
+++ b/apps/settings/l10n/tr.js
@@ -242,10 +242,20 @@ OC.L10N.register(
"Common languages" : "Sık kullanılan diller",
"All languages" : "Tüm diller",
"Password change is disabled because the master key is disabled" : "Ana anahtar devre dışı bırakıldığından parola değişikliği devre dışı bırakıldı.",
+ "Passwordless authentication requires a secure connection." : "Parolasız kimlik doğrulama özelliği güvenli bir bağlantı üzerinden kullanılabilir.",
+ "Add WebAuthn device" : "WebAuthn aygıtı ekle",
+ "Please authorize your WebAuthn device." : "Lütfen WebAuthn aygıtınızın kimliğini doğrulayın.",
"Name your device" : "Aygıtınıza bir ad verin",
"Add" : "Ekle",
"Adding your device …" : "Aygıtınız ekleniyor …",
+ "Server error while trying to add WebAuthn device" : "WebAuthn aygıtı eklenirken sunucu sorunu çıktı",
+ "Server error while trying to complete WebAuthn device registration" : "WebAuthn aygıtı kaydedilirken sunucu sorunu çıktı",
"Unnamed device" : "Adsız aygıt",
+ "Passwordless Authentication" : "Parolasız Kimlik Doğrulaması",
+ "Set up your account for passwordless authentication following the FIDO2 standard." : "Hesabınız için FIDO2 standardına uygun parolasız kimlik doğrulamasını kurun.",
+ "No devices configured." : "Herhangi bir aygıt yapılandırılmamış.",
+ "The following devices are configured for your account:" : "Hesabınız için şu aygıtlar yapılandırılmış:",
+ "Your browser does not support WebAuthn." : "Web tarayıcınız WebAuthn desteklemiyor.",
"Your apps" : "Uygulamalarınız",
"Active apps" : "Etkin uygulamalar",
"Disabled apps" : "Devre Dışı Uygulamalar",
@@ -362,6 +372,7 @@ OC.L10N.register(
"Exclude groups from sharing" : "Gruplar paylaşıma katılmasın",
"These groups will still be able to receive shares, but not to initiate them." : "Bu gruplar paylaşımları alabilir ancak başlatamaz.",
"Allow username autocompletion in share dialog. If this is disabled the full username or email address needs to be entered." : "Bu seçenek etkinleştirildiğinde, paylaşma penceresindeki kullanıcı adı otomatik olarak tamamlanır. Devre dışı bırakıldığında tam kullanıcı adının ya da e-posta adresinin yazılması gerekir.",
+ "Restrict username autocompletion to users within the same groups" : "Aynı gruplardaki kullanıcıların kullanıcı adlarının otomatik tamamlanması kısıtlansın",
"Show disclaimer text on the public link upload page. (Only shown when the file list is hidden.)" : "Herkese açık bağlantı yükleme sayfasındaki sorumluluk reddi bildirim metni (yalnız dosya listesi gizli iken görüntülenir).",
"This text will be shown on the public link upload page when the file list is hidden." : "Dosya listesi gizli iken herkese açık bağlantı yükleme sayfasında görüntülenecek sorumluluk reddi bildirimi metni.",
"Default share permissions" : "Varsayılan paylaşım izinleri",
diff --git a/apps/settings/l10n/tr.json b/apps/settings/l10n/tr.json
index 963528b68bc..852dc6b9e88 100644
--- a/apps/settings/l10n/tr.json
+++ b/apps/settings/l10n/tr.json
@@ -240,10 +240,20 @@
"Common languages" : "Sık kullanılan diller",
"All languages" : "Tüm diller",
"Password change is disabled because the master key is disabled" : "Ana anahtar devre dışı bırakıldığından parola değişikliği devre dışı bırakıldı.",
+ "Passwordless authentication requires a secure connection." : "Parolasız kimlik doğrulama özelliği güvenli bir bağlantı üzerinden kullanılabilir.",
+ "Add WebAuthn device" : "WebAuthn aygıtı ekle",
+ "Please authorize your WebAuthn device." : "Lütfen WebAuthn aygıtınızın kimliğini doğrulayın.",
"Name your device" : "Aygıtınıza bir ad verin",
"Add" : "Ekle",
"Adding your device …" : "Aygıtınız ekleniyor …",
+ "Server error while trying to add WebAuthn device" : "WebAuthn aygıtı eklenirken sunucu sorunu çıktı",
+ "Server error while trying to complete WebAuthn device registration" : "WebAuthn aygıtı kaydedilirken sunucu sorunu çıktı",
"Unnamed device" : "Adsız aygıt",
+ "Passwordless Authentication" : "Parolasız Kimlik Doğrulaması",
+ "Set up your account for passwordless authentication following the FIDO2 standard." : "Hesabınız için FIDO2 standardına uygun parolasız kimlik doğrulamasını kurun.",
+ "No devices configured." : "Herhangi bir aygıt yapılandırılmamış.",
+ "The following devices are configured for your account:" : "Hesabınız için şu aygıtlar yapılandırılmış:",
+ "Your browser does not support WebAuthn." : "Web tarayıcınız WebAuthn desteklemiyor.",
"Your apps" : "Uygulamalarınız",
"Active apps" : "Etkin uygulamalar",
"Disabled apps" : "Devre Dışı Uygulamalar",
@@ -360,6 +370,7 @@
"Exclude groups from sharing" : "Gruplar paylaşıma katılmasın",
"These groups will still be able to receive shares, but not to initiate them." : "Bu gruplar paylaşımları alabilir ancak başlatamaz.",
"Allow username autocompletion in share dialog. If this is disabled the full username or email address needs to be entered." : "Bu seçenek etkinleştirildiğinde, paylaşma penceresindeki kullanıcı adı otomatik olarak tamamlanır. Devre dışı bırakıldığında tam kullanıcı adının ya da e-posta adresinin yazılması gerekir.",
+ "Restrict username autocompletion to users within the same groups" : "Aynı gruplardaki kullanıcıların kullanıcı adlarının otomatik tamamlanması kısıtlansın",
"Show disclaimer text on the public link upload page. (Only shown when the file list is hidden.)" : "Herkese açık bağlantı yükleme sayfasındaki sorumluluk reddi bildirim metni (yalnız dosya listesi gizli iken görüntülenir).",
"This text will be shown on the public link upload page when the file list is hidden." : "Dosya listesi gizli iken herkese açık bağlantı yükleme sayfasında görüntülenecek sorumluluk reddi bildirimi metni.",
"Default share permissions" : "Varsayılan paylaşım izinleri",
diff --git a/apps/settings/lib/Controller/CheckSetupController.php b/apps/settings/lib/Controller/CheckSetupController.php
index 6f3bb539eff..e386f29a94e 100644
--- a/apps/settings/lib/Controller/CheckSetupController.php
+++ b/apps/settings/lib/Controller/CheckSetupController.php
@@ -146,9 +146,9 @@ class CheckSetupController extends Controller {
}
/**
- * Checks if the Nextcloud server can connect to a specific URL using both HTTPS and HTTP
- * @return bool
- */
+ * Checks if the Nextcloud server can connect to a specific URL using both HTTPS and HTTP
+ * @return bool
+ */
private function isSiteReachable($sitename) {
$httpSiteName = 'http://' . $sitename . '/';
$httpsSiteName = 'https://' . $sitename . '/';
diff --git a/apps/theming/templates/settings-admin.php b/apps/theming/templates/settings-admin.php
index d7de5b75053..d6bbd77dc3b 100644
--- a/apps/theming/templates/settings-admin.php
+++ b/apps/theming/templates/settings-admin.php
@@ -1,6 +1,6 @@
<?php
/**
-
+ *
*
* @author Bjoern Schiessle <bjoern@schiessle.org>
* @author Jan-Christoph Borchardt <hey@jancborchardt.net>
diff --git a/apps/updatenotification/l10n/zh_TW.js b/apps/updatenotification/l10n/zh_TW.js
index 6bf1387c363..f9cb310d65b 100644
--- a/apps/updatenotification/l10n/zh_TW.js
+++ b/apps/updatenotification/l10n/zh_TW.js
@@ -24,6 +24,7 @@ OC.L10N.register(
"The selected update channel does not support updates of the server." : "所選的更新頻道不提供伺服器軟體的更新",
"Please make sure your config.php does not set <samp>appstoreenabled</samp> to false." : "請確定您的 config.php 設定檔中並沒有將<samp>appstoreenabled</samp>的值設定為 false",
"Could not connect to the appstore or the appstore returned no updates at all. Search manually for updates or make sure your server has access to the internet and can connect to the appstore." : "無法連線至應用程式商店,或者應用程式商店回應無任何更新,請您手動搜尋更新,或者修復您伺服器的網際網路連線,讓它可以連線至應用程式商店。",
- "View changelog" : "檢視版本更新紀錄"
+ "View changelog" : "檢視版本更新紀錄",
+ "Beta" : "Beta 測試版"
},
"nplurals=1; plural=0;");
diff --git a/apps/updatenotification/l10n/zh_TW.json b/apps/updatenotification/l10n/zh_TW.json
index 12496029f5b..9e65aadf9ef 100644
--- a/apps/updatenotification/l10n/zh_TW.json
+++ b/apps/updatenotification/l10n/zh_TW.json
@@ -22,6 +22,7 @@
"The selected update channel does not support updates of the server." : "所選的更新頻道不提供伺服器軟體的更新",
"Please make sure your config.php does not set <samp>appstoreenabled</samp> to false." : "請確定您的 config.php 設定檔中並沒有將<samp>appstoreenabled</samp>的值設定為 false",
"Could not connect to the appstore or the appstore returned no updates at all. Search manually for updates or make sure your server has access to the internet and can connect to the appstore." : "無法連線至應用程式商店,或者應用程式商店回應無任何更新,請您手動搜尋更新,或者修復您伺服器的網際網路連線,讓它可以連線至應用程式商店。",
- "View changelog" : "檢視版本更新紀錄"
+ "View changelog" : "檢視版本更新紀錄",
+ "Beta" : "Beta 測試版"
},"pluralForm" :"nplurals=1; plural=0;"
} \ No newline at end of file
diff --git a/apps/user_ldap/lib/Access.php b/apps/user_ldap/lib/Access.php
index fecc3b4d4de..e23aa6b4549 100644
--- a/apps/user_ldap/lib/Access.php
+++ b/apps/user_ldap/lib/Access.php
@@ -90,8 +90,8 @@ class Access extends LDAPUtility {
protected $userMapper;
/**
- * @var AbstractMapping $userMapper
- */
+ * @var AbstractMapping $userMapper
+ */
protected $groupMapper;
/**
@@ -1453,11 +1453,11 @@ class Access extends LDAPUtility {
}
/**
- * escapes (user provided) parts for LDAP filter
- * @param string $input, the provided value
- * @param bool $allowAsterisk whether in * at the beginning should be preserved
- * @return string the escaped string
- */
+ * escapes (user provided) parts for LDAP filter
+ * @param string $input, the provided value
+ * @param bool $allowAsterisk whether in * at the beginning should be preserved
+ * @return string the escaped string
+ */
public function escapeFilterPart($input, $allowAsterisk = false) {
$asterisk = '';
if($allowAsterisk && strlen($input) > 0 && $input[0] === '*') {
diff --git a/apps/user_ldap/lib/Group_LDAP.php b/apps/user_ldap/lib/Group_LDAP.php
index f119780f2c6..11fd0b462d9 100644
--- a/apps/user_ldap/lib/Group_LDAP.php
+++ b/apps/user_ldap/lib/Group_LDAP.php
@@ -1129,13 +1129,13 @@ class Group_LDAP extends BackendUtility implements \OCP\GroupInterface, IGroupLD
}
/**
- * Check if backend implements actions
- * @param int $actions bitwise-or'ed actions
- * @return boolean
- *
- * Returns the supported actions as int to be
- * compared with GroupInterface::CREATE_GROUP etc.
- */
+ * Check if backend implements actions
+ * @param int $actions bitwise-or'ed actions
+ * @return boolean
+ *
+ * Returns the supported actions as int to be
+ * compared with GroupInterface::CREATE_GROUP etc.
+ */
public function implementsActions($actions) {
return (bool)((GroupInterface::COUNT_USERS |
$this->groupPluginManager->getImplementedActions()) & $actions);
diff --git a/apps/user_ldap/lib/Mapping/AbstractMapping.php b/apps/user_ldap/lib/Mapping/AbstractMapping.php
index e16829e09d9..14075da5c0e 100644
--- a/apps/user_ldap/lib/Mapping/AbstractMapping.php
+++ b/apps/user_ldap/lib/Mapping/AbstractMapping.php
@@ -27,9 +27,9 @@
namespace OCA\User_LDAP\Mapping;
/**
-* Class AbstractMapping
-* @package OCA\User_LDAP\Mapping
-*/
+ * Class AbstractMapping
+ * @package OCA\User_LDAP\Mapping
+ */
abstract class AbstractMapping {
/**
* @var \OCP\IDBConnection $dbc
diff --git a/apps/user_ldap/lib/Mapping/GroupMapping.php b/apps/user_ldap/lib/Mapping/GroupMapping.php
index 6922a010533..cc779817f1a 100644
--- a/apps/user_ldap/lib/Mapping/GroupMapping.php
+++ b/apps/user_ldap/lib/Mapping/GroupMapping.php
@@ -24,15 +24,15 @@
namespace OCA\User_LDAP\Mapping;
/**
-* Class UserMapping
-* @package OCA\User_LDAP\Mapping
-*/
+ * Class UserMapping
+ * @package OCA\User_LDAP\Mapping
+ */
class GroupMapping extends AbstractMapping {
/**
- * returns the DB table name which holds the mappings
- * @return string
- */
+ * returns the DB table name which holds the mappings
+ * @return string
+ */
protected function getTableName() {
return '*PREFIX*ldap_group_mapping';
}
diff --git a/apps/user_ldap/lib/Mapping/UserMapping.php b/apps/user_ldap/lib/Mapping/UserMapping.php
index 9fde960959f..31ac8a05326 100644
--- a/apps/user_ldap/lib/Mapping/UserMapping.php
+++ b/apps/user_ldap/lib/Mapping/UserMapping.php
@@ -24,9 +24,9 @@
namespace OCA\User_LDAP\Mapping;
/**
-* Class UserMapping
-* @package OCA\User_LDAP\Mapping
-*/
+ * Class UserMapping
+ * @package OCA\User_LDAP\Mapping
+ */
class UserMapping extends AbstractMapping {
/**
diff --git a/apps/user_ldap/lib/User_LDAP.php b/apps/user_ldap/lib/User_LDAP.php
index b4ceb8f1f40..917a2aaf84c 100644
--- a/apps/user_ldap/lib/User_LDAP.php
+++ b/apps/user_ldap/lib/User_LDAP.php
@@ -365,11 +365,11 @@ class User_LDAP extends BackendUtility implements \OCP\IUserBackend, \OCP\UserIn
}
/**
- * returns whether a user was deleted in LDAP
- *
- * @param string $uid The username of the user to delete
- * @return bool
- */
+ * returns whether a user was deleted in LDAP
+ *
+ * @param string $uid The username of the user to delete
+ * @return bool
+ */
public function deleteUser($uid) {
if ($this->userPluginManager->canDeleteUser()) {
$status = $this->userPluginManager->deleteUser($uid);
@@ -522,13 +522,13 @@ class User_LDAP extends BackendUtility implements \OCP\IUserBackend, \OCP\UserIn
}
/**
- * Check if backend implements actions
- * @param int $actions bitwise-or'ed actions
- * @return boolean
- *
- * Returns the supported actions as int to be
- * compared with \OC\User\Backend::CREATE_USER etc.
- */
+ * Check if backend implements actions
+ * @param int $actions bitwise-or'ed actions
+ * @return boolean
+ *
+ * Returns the supported actions as int to be
+ * compared with \OC\User\Backend::CREATE_USER etc.
+ */
public function implementsActions($actions) {
return (bool)((Backend::CHECK_PASSWORD
| Backend::GET_HOME
diff --git a/core/Command/Background/Ajax.php b/core/Command/Background/Ajax.php
index e9cd1405ebd..3eb00655ead 100644
--- a/core/Command/Background/Ajax.php
+++ b/core/Command/Background/Ajax.php
@@ -1,27 +1,27 @@
<?php
/**
-* The MIT License (MIT)
-*
-* Copyright (c) 2015 Christian Kampka <christian@kampka.net>
-*
-* Permission is hereby granted, free of charge, to any person obtaining a copy
-* of this software and associated documentation files (the "Software"), to deal
-* in the Software without restriction, including without limitation the rights
-* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-* copies of the Software, and to permit persons to whom the Software is
-* furnished to do so, subject to the following conditions:
-*
-* The above copyright notice and this permission notice shall be included in
-* all copies or substantial portions of the Software.
-*
-* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-* THE SOFTWARE.
-*/
+ * The MIT License (MIT)
+ *
+ * Copyright (c) 2015 Christian Kampka <christian@kampka.net>
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
namespace OC\Core\Command\Background;
diff --git a/core/Command/Background/Base.php b/core/Command/Background/Base.php
index 32d22d64cb9..48d9edb8c8a 100644
--- a/core/Command/Background/Base.php
+++ b/core/Command/Background/Base.php
@@ -1,27 +1,27 @@
<?php
/**
-* The MIT License (MIT)
-*
-* Copyright (c) 2015 Christian Kampka <christian@kampka.net>
-*
-* Permission is hereby granted, free of charge, to any person obtaining a copy
-* of this software and associated documentation files (the "Software"), to deal
-* in the Software without restriction, including without limitation the rights
-* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-* copies of the Software, and to permit persons to whom the Software is
-* furnished to do so, subject to the following conditions:
-*
-* The above copyright notice and this permission notice shall be included in
-* all copies or substantial portions of the Software.
-*
-* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-* THE SOFTWARE.
-*/
+ * The MIT License (MIT)
+ *
+ * Copyright (c) 2015 Christian Kampka <christian@kampka.net>
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
namespace OC\Core\Command\Background;
@@ -32,23 +32,23 @@ use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
/**
-* An abstract base class for configuring the background job mode
-* from the command line interface.
-* Subclasses will override the getMode() function to specify the mode to configure.
-*/
+ * An abstract base class for configuring the background job mode
+ * from the command line interface.
+ * Subclasses will override the getMode() function to specify the mode to configure.
+ */
abstract class Base extends Command {
abstract protected function getMode();
/**
- * @var \OCP\IConfig
- */
+ * @var \OCP\IConfig
+ */
protected $config;
/**
- * @param \OCP\IConfig $config
- */
+ * @param \OCP\IConfig $config
+ */
public function __construct(IConfig $config) {
$this->config = $config;
parent::__construct();
@@ -62,13 +62,13 @@ abstract class Base extends Command {
}
/**
- * Executing this command will set the background job mode for owncloud.
- * The mode to set is specified by the concrete sub class by implementing the
- * getMode() function.
- *
- * @param InputInterface $input
- * @param OutputInterface $output
- */
+ * Executing this command will set the background job mode for owncloud.
+ * The mode to set is specified by the concrete sub class by implementing the
+ * getMode() function.
+ *
+ * @param InputInterface $input
+ * @param OutputInterface $output
+ */
protected function execute(InputInterface $input, OutputInterface $output) {
$mode = $this->getMode();
$this->config->setAppValue( 'core', 'backgroundjobs_mode', $mode );
diff --git a/core/Command/Background/Cron.php b/core/Command/Background/Cron.php
index 434e88893b2..27253a355b2 100644
--- a/core/Command/Background/Cron.php
+++ b/core/Command/Background/Cron.php
@@ -1,27 +1,27 @@
<?php
/**
-* The MIT License (MIT)
-*
-* Copyright (c) 2015 Christian Kampka <christian@kampka.net>
-*
-* Permission is hereby granted, free of charge, to any person obtaining a copy
-* of this software and associated documentation files (the "Software"), to deal
-* in the Software without restriction, including without limitation the rights
-* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-* copies of the Software, and to permit persons to whom the Software is
-* furnished to do so, subject to the following conditions:
-*
-* The above copyright notice and this permission notice shall be included in
-* all copies or substantial portions of the Software.
-*
-* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-* THE SOFTWARE.
-*/
+ * The MIT License (MIT)
+ *
+ * Copyright (c) 2015 Christian Kampka <christian@kampka.net>
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
namespace OC\Core\Command\Background;
diff --git a/core/Command/Background/WebCron.php b/core/Command/Background/WebCron.php
index 23dbe98e635..76bcf83a304 100644
--- a/core/Command/Background/WebCron.php
+++ b/core/Command/Background/WebCron.php
@@ -1,27 +1,27 @@
<?php
/**
-* The MIT License (MIT)
-*
-* Copyright (c) 2015 Christian Kampka <christian@kampka.net>
-*
-* Permission is hereby granted, free of charge, to any person obtaining a copy
-* of this software and associated documentation files (the "Software"), to deal
-* in the Software without restriction, including without limitation the rights
-* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-* copies of the Software, and to permit persons to whom the Software is
-* furnished to do so, subject to the following conditions:
-*
-* The above copyright notice and this permission notice shall be included in
-* all copies or substantial portions of the Software.
-*
-* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-* THE SOFTWARE.
-*/
+ * The MIT License (MIT)
+ *
+ * Copyright (c) 2015 Christian Kampka <christian@kampka.net>
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
namespace OC\Core\Command\Background;
diff --git a/core/Controller/AvatarController.php b/core/Controller/AvatarController.php
index c279edf25ad..b5d34c3ccb9 100644
--- a/core/Controller/AvatarController.php
+++ b/core/Controller/AvatarController.php
@@ -259,7 +259,7 @@ class AvatarController extends Controller {
/**
* @NoAdminRequired
- *
+ *
* @return JSONResponse
*/
public function deleteAvatar() {
diff --git a/core/l10n/nl.js b/core/l10n/nl.js
index 763df98c86d..d15da903439 100644
--- a/core/l10n/nl.js
+++ b/core/l10n/nl.js
@@ -84,7 +84,9 @@ OC.L10N.register(
"The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "De PHP functie \"set_time_limit\" is niet beschikbaar. Dit kan erin resulteren dat de scripts halverwege stoppen, waardoor de installatie ontregeld raakt. We adviseren sterk om deze functie in te schakelen.",
"Your PHP does not have FreeType support, resulting in breakage of profile pictures and the settings interface." : "Je PHP heeft geen FreeType ondersteuning. Dit zal leiden tot verminkte profielafbeeldingen en instellingeninterface.",
"Missing index \"{indexName}\" in table \"{tableName}\"." : "Ontbrekende index \"{indexName}\" in tabel \"{tableName}\".",
- "The database is missing some indexes. Due to the fact that adding indexes on big tables could take some time they were not added automatically. By running \"occ db:add-missing-indices\" those missing indexes could be added manually while the instance keeps running. Once the indexes are added queries to those tables are usually much faster." : "De database mist een paar indexen. Omdat het toevoegen van indexen op grote tabellen veel tijd kan kosten, zijn ze niet automatisch gecreëerd. Door het draaien van \"occ db:add-missing-indices\" kunnen deze indexen handmatig worden toegevoegd terwijl de server blijft draaien. Als de indexe zijn toegevoegd, zullen opvragingen op die tabellen veel sneller plaatsvinden.",
+ "The database is missing some indexes. Due to the fact that adding indexes on big tables could take some time they were not added automatically. By running \"occ db:add-missing-indices\" those missing indexes could be added manually while the instance keeps running. Once the indexes are added queries to those tables are usually much faster." : "De database mist een paar indexen. Omdat het toevoegen van indexen op grote tabellen veel tijd kan kosten, zijn ze niet automatisch gecreëerd. Door het draaien van \"occ db:add-missing-indices\" kunnen deze indexen handmatig worden toegevoegd terwijl de server blijft draaien. Als de indexen zijn toegevoegd, zullen opvragingen op die tabellen veel sneller plaatsvinden.",
+ "Missing optional column \"{columnName}\" in table \"{tableName}\"." : "Ontbrekende kolom \"{columnName}\" in tabel \"{tableName}\".",
+ "The database is missing some optional columns. Due to the fact that adding columns on big tables could take some time they were not added automatically when they can be optional. By running \"occ db:add-missing-columns\" those missing columns could be added manually while the instance keeps running. Once the columns are added some features might improve responsiveness or usability." : "De database mist een paar optionele kolommen. Omdat het toevoegen van kolommen op grote tabellen veel tijd kan kosten, zijn ze niet automatisch gecreëerd, omdat dat optioneel kan. Door het draaien van \"occ db:add-missing-columns\" kunnen deze kolommen handmatig worden toegevoegd terwijl de server blijft draaien. Als de kolommen zijn toegevoegd, zullen bepaalde functionaliteiten veel sneller of gemakkelijker plaatsvinden.",
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "Deze server mist een paar aanbevolen PHP-modules. Voor betere prestaties en compatibiliteit adviseren we om die te installeren.",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running 'occ db:convert-filecache-bigint' those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">the documentation page about this</a>." : "Sommige kolommen in de database zijn niet geconverteerd naar 'big int'. Doordat het wijzigen van kolomtype op grote databases veel tijd kost, zijn ze niet automatisch gewijzigd. Door het uitvoeren van 'occ db:convert-filecache-bigint' worden de veranderingen alsnog uitgevoerd. Dat moet gebeuren als de server off-line staat. Voor meer informatie verwijzen we naar de <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentatie hierover</a>.",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite wordt momenteel gebruikt als backend database. Voor grotere installaties adviseren we dat je omschakelt naar een andere database backend.",
@@ -141,6 +143,9 @@ OC.L10N.register(
"Wrong username or password." : "Verkeerde gebruikersnaam of wachtwoord.",
"User disabled" : "Gebruiker gedeactiveerd",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "We hebben meerdere foutieve inlogverzoeken vanaf jouw IP-adres gedetecteerd. Hierdoor wordt je volgende inlogverzoek 30 seconden uitgesteld.",
+ "Your account is not setup for passwordless login." : "Je account is niet ingesteld voor inloggen zonder wachtwoord.",
+ "Passwordless authentication is not supported in your browser." : "Inloggen zonder wachtwoord is niet ondersteund door je browser.",
+ "Passwordless authentication is only available over a secure connection." : "Inloggen zonder wachtwoord is alleen mogelijk over een beveiligde verbinding.",
"Reset password" : "Reset wachtwoord",
"A password reset message has been sent to the e-mail address of this account. If you do not receive it, check your spam/junk folders or ask your local administrator for help." : "Er is een wachtwoordherstelbericht verzonden naar het e-mailadres van dit account. Als je het niet hebt ontvangen, controleer dan je spam / ongewenste mappen, of vraag je beheerder om hulp.",
"If it is not there ask your local administrator." : "Als het hier niet is, vraag dan de lokale beheerder",
@@ -167,6 +172,7 @@ OC.L10N.register(
"Collaboratively edit office documents." : "Bewerk office documenten gezamelijk.",
"Local document editing back-end used by the OnlyOffice app." : "Lokale back-end voor bestandsbewerking gebruikt bij de OnlyOffice-app.",
"Forgot password?" : "Wachtwoord vergeten?",
+ "Log in with a device" : "Inloggen met een toestel",
"Back" : "Terug",
"Settings" : "Instellingen",
"Could not load your contacts" : "Kon je contactpersonenen niet laden",
diff --git a/core/l10n/nl.json b/core/l10n/nl.json
index 94e5b834179..e32f49718c4 100644
--- a/core/l10n/nl.json
+++ b/core/l10n/nl.json
@@ -82,7 +82,9 @@
"The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "De PHP functie \"set_time_limit\" is niet beschikbaar. Dit kan erin resulteren dat de scripts halverwege stoppen, waardoor de installatie ontregeld raakt. We adviseren sterk om deze functie in te schakelen.",
"Your PHP does not have FreeType support, resulting in breakage of profile pictures and the settings interface." : "Je PHP heeft geen FreeType ondersteuning. Dit zal leiden tot verminkte profielafbeeldingen en instellingeninterface.",
"Missing index \"{indexName}\" in table \"{tableName}\"." : "Ontbrekende index \"{indexName}\" in tabel \"{tableName}\".",
- "The database is missing some indexes. Due to the fact that adding indexes on big tables could take some time they were not added automatically. By running \"occ db:add-missing-indices\" those missing indexes could be added manually while the instance keeps running. Once the indexes are added queries to those tables are usually much faster." : "De database mist een paar indexen. Omdat het toevoegen van indexen op grote tabellen veel tijd kan kosten, zijn ze niet automatisch gecreëerd. Door het draaien van \"occ db:add-missing-indices\" kunnen deze indexen handmatig worden toegevoegd terwijl de server blijft draaien. Als de indexe zijn toegevoegd, zullen opvragingen op die tabellen veel sneller plaatsvinden.",
+ "The database is missing some indexes. Due to the fact that adding indexes on big tables could take some time they were not added automatically. By running \"occ db:add-missing-indices\" those missing indexes could be added manually while the instance keeps running. Once the indexes are added queries to those tables are usually much faster." : "De database mist een paar indexen. Omdat het toevoegen van indexen op grote tabellen veel tijd kan kosten, zijn ze niet automatisch gecreëerd. Door het draaien van \"occ db:add-missing-indices\" kunnen deze indexen handmatig worden toegevoegd terwijl de server blijft draaien. Als de indexen zijn toegevoegd, zullen opvragingen op die tabellen veel sneller plaatsvinden.",
+ "Missing optional column \"{columnName}\" in table \"{tableName}\"." : "Ontbrekende kolom \"{columnName}\" in tabel \"{tableName}\".",
+ "The database is missing some optional columns. Due to the fact that adding columns on big tables could take some time they were not added automatically when they can be optional. By running \"occ db:add-missing-columns\" those missing columns could be added manually while the instance keeps running. Once the columns are added some features might improve responsiveness or usability." : "De database mist een paar optionele kolommen. Omdat het toevoegen van kolommen op grote tabellen veel tijd kan kosten, zijn ze niet automatisch gecreëerd, omdat dat optioneel kan. Door het draaien van \"occ db:add-missing-columns\" kunnen deze kolommen handmatig worden toegevoegd terwijl de server blijft draaien. Als de kolommen zijn toegevoegd, zullen bepaalde functionaliteiten veel sneller of gemakkelijker plaatsvinden.",
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "Deze server mist een paar aanbevolen PHP-modules. Voor betere prestaties en compatibiliteit adviseren we om die te installeren.",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running 'occ db:convert-filecache-bigint' those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">the documentation page about this</a>." : "Sommige kolommen in de database zijn niet geconverteerd naar 'big int'. Doordat het wijzigen van kolomtype op grote databases veel tijd kost, zijn ze niet automatisch gewijzigd. Door het uitvoeren van 'occ db:convert-filecache-bigint' worden de veranderingen alsnog uitgevoerd. Dat moet gebeuren als de server off-line staat. Voor meer informatie verwijzen we naar de <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentatie hierover</a>.",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite wordt momenteel gebruikt als backend database. Voor grotere installaties adviseren we dat je omschakelt naar een andere database backend.",
@@ -139,6 +141,9 @@
"Wrong username or password." : "Verkeerde gebruikersnaam of wachtwoord.",
"User disabled" : "Gebruiker gedeactiveerd",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "We hebben meerdere foutieve inlogverzoeken vanaf jouw IP-adres gedetecteerd. Hierdoor wordt je volgende inlogverzoek 30 seconden uitgesteld.",
+ "Your account is not setup for passwordless login." : "Je account is niet ingesteld voor inloggen zonder wachtwoord.",
+ "Passwordless authentication is not supported in your browser." : "Inloggen zonder wachtwoord is niet ondersteund door je browser.",
+ "Passwordless authentication is only available over a secure connection." : "Inloggen zonder wachtwoord is alleen mogelijk over een beveiligde verbinding.",
"Reset password" : "Reset wachtwoord",
"A password reset message has been sent to the e-mail address of this account. If you do not receive it, check your spam/junk folders or ask your local administrator for help." : "Er is een wachtwoordherstelbericht verzonden naar het e-mailadres van dit account. Als je het niet hebt ontvangen, controleer dan je spam / ongewenste mappen, of vraag je beheerder om hulp.",
"If it is not there ask your local administrator." : "Als het hier niet is, vraag dan de lokale beheerder",
@@ -165,6 +170,7 @@
"Collaboratively edit office documents." : "Bewerk office documenten gezamelijk.",
"Local document editing back-end used by the OnlyOffice app." : "Lokale back-end voor bestandsbewerking gebruikt bij de OnlyOffice-app.",
"Forgot password?" : "Wachtwoord vergeten?",
+ "Log in with a device" : "Inloggen met een toestel",
"Back" : "Terug",
"Settings" : "Instellingen",
"Could not load your contacts" : "Kon je contactpersonenen niet laden",
diff --git a/core/l10n/tr.js b/core/l10n/tr.js
index 7210e97e023..17c40213599 100644
--- a/core/l10n/tr.js
+++ b/core/l10n/tr.js
@@ -75,7 +75,7 @@ OC.L10N.register(
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Henüz bir ön bellek yapılandırılmamış. Olabiliyorsa başarımı arttırmak için memcache ön bellek ayarlarını yapın. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
"No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Güvenlik nedeniyle kullanılması önemle önerilen rastgelelik kaynağı PHP tarafından bulunamıyor. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Şu anda PHP {version} sürümünü kullanıyorsunuz. Kullandığınız dağıtım desteklediği zaman PHP sürümünüzü güncelleyerek <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">PHP grubu tarafından sağlanan başarım ve güvenlik geliştirmelerinden</a> faydalanın.",
- "Nextcloud 19 is the last release supporting PHP 7.2. Nextcloud 20 requires at least PHP 7.3." : "Nextcloud 19, PHP 7.2 destekleyecek olan son sürümdür. Nextcloud 20 en az PHP 7.3 ister.",
+ "Nextcloud 19 is the last release supporting PHP 7.2. Nextcloud 20 requires at least PHP 7.3." : "Nextcloud 19 PHP 7.2 sürümünü destekleyen son sürümdür. Nextcloud 20 sürümü için en az PHP 7.3 gereklidir.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Ters vekil sunucu üst bilgi yapılandırmanız doğru değil ya da Nextcloud üzerine güvenilen bir vekil sunucudan erişiyorsunuz. Böyle değil ise bu bir güvenlik sorunudur ve bir saldırganın IP adresini Nextcolud sunucusuna farklı göstermesine izin verebilir. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
"Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Memcached dağıtık bellek olarak yapılandırılmış ancak kurulmuş PHP \"memcache\" modülü yanlış. \\OC\\Memcache\\Memcached yalnız \"memcache\" modülünü değil \"memcached\" mdoülünü destekler. İki modül hakkında ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki sayfasına</a> bakabilirsiniz.",
"Some files have not passed the integrity check. Further information on how to resolve this issue can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "Bazı dosyalar bütünlük denetiminden geçemedi. Bu sorunun çözümü ile ilgili bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz. (<a href=\"{codeIntegrityDownloadEndpoint}\">Geçersiz dosyaların listesi …</a> / <a href=\"{rescanEndpoint}\">Yeniden tara …</a>)",
@@ -85,6 +85,8 @@ OC.L10N.register(
"Your PHP does not have FreeType support, resulting in breakage of profile pictures and the settings interface." : "PHP kurulumunuzda FreeType desteği yok. Bu durum profil görsellerinin ve ayarlar bölümünün bozuk görüntülenmesine neden olur.",
"Missing index \"{indexName}\" in table \"{tableName}\"." : "\"{tableName}\" tablosundaki \"{indexName}\" dizini eksik.",
"The database is missing some indexes. Due to the fact that adding indexes on big tables could take some time they were not added automatically. By running \"occ db:add-missing-indices\" those missing indexes could be added manually while the instance keeps running. Once the indexes are added queries to those tables are usually much faster." : "Veritabanında bazı dizinler eksik. Büyük tablolara dizinlerin eklenmesi uzun sürebildiğinden bu işlem otomatik olarak yapılmaz. Sunucunuz normal çalışırken eksik dizinleri el ile eklemek için \"occ db:add-missing-indices\" komutunu yürütün. Dizinler eklendikten sonra bu tablolar üzerindeki sorgular çok daha hızlı yürütülür.",
+ "Missing optional column \"{columnName}\" in table \"{tableName}\"." : "\"{tableName}\" tablosundaki isteğe bağlı \"{coumnName}\" sütunu eksik.",
+ "The database is missing some optional columns. Due to the fact that adding columns on big tables could take some time they were not added automatically when they can be optional. By running \"occ db:add-missing-columns\" those missing columns could be added manually while the instance keeps running. Once the columns are added some features might improve responsiveness or usability." : "Veritabanında bazı isteğe bağlı sütunlar eksik. Büyük tablolara sütunların eklenmesi uzun sürebildiğinden, sütunlar isteğe bağlı olduğunda bu işlem otomatik olarak yapılmaz. Sunucunuz normal çalışırken eksik sütunları el ile eklemek için \"occ db:add-missing-columns\" komutunu yürütün. Sütunlar eklendikten sonra bazı özelliklerin yanıtı ya da kullanımı daha iyileşebilir.",
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "Bu kopyada önerilen bazı PHP modülleri eksik. Daha iyi başarım ve uyumluluk için bu modüllerin kurulması önemle önerilir.",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running 'occ db:convert-filecache-bigint' those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">the documentation page about this</a>." : "Veritabanında büyük tamsayıya dönüştürülecek bazı sütunlar eksik. Sütun türlerini büyük tablolara dönüştürme işlemi uzun sürebileceğinden bu işlem otomatik olarak yapılmaz. Sunucunuz normal çalışırken bekleyen değişiklikleri el ile uygulamak için \"occ db:convert-filecache-bigint\" komutunu yürütün. Bu işlem yapılırken Nextcloud kopyası çevrimdışı olur. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgeler bölümüne</a> bakabilirsiniz.",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "Şu anda veritabanı olarak SQLite kullanılıyor. Daha büyük kurulumlar için farklı bir veritabanı arka ucuna geçmenizi öneriyoruz.",
@@ -95,6 +97,7 @@ OC.L10N.register(
"Some app directories are owned by a different user than the web server one. This may be the case if apps have been installed manually. Check the permissions of the following app directories:" : "Bazı uygulama klasörlerinin sahipliği web sunucusunun kullandığından başka bir kullanıcıya ait. Bu durum, uygulamalar el ile kurulduğunda ortaya çıkabilir. Şu uygulama klasörlerinin izinlerini denetleyin:",
"MySQL is used as database but does not support 4-byte characters. To be able to handle 4-byte characters (like emojis) without issues in filenames or comments for example it is recommended to enable the 4-byte support in MySQL. For further details read <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">the documentation page about this</a>." : "Veritabanı olarak MySQL kullanılır ancak 4 bayt uzunluğundaki karakterleri desteklemez. 4 bayt uzunluğundaki karaktelerin (emjo simgeleri gibi) dosya adları ya da yorumlarda sorun çıkmadan işlenebilmesi için MySQL üzerinde 4 bayt desteğinin etkinleştirilmesi önerilir. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgeler bölümüne</a> bakabilirsiniz.",
"This instance uses an S3 based object store as primary storage. The uploaded files are stored temporarily on the server and thus it is recommended to have 50 GB of free space available in the temp directory of PHP. Check the logs for full details about the path and the available space. To improve this please change the temporary directory in the php.ini or make more space available in that path." : "Bu kopya, birincil depolama olarak S3 tabanlı bir nesne deposu kullanıyor. Yüklenen dosyalar geçici olarak sunucuya kaydedildiğinden PHP geçici klasöründe 50 GB boş alan bulunması önerilir. Klasör yolu ve kullanılabilecek alan hakkındaki ayrıntılı bilgi almak için günlüklere bakabilirsiniz. Bu durumu düzeltmek için php.ini içindeki geçici klasör yolunu değiştirin ya da kullanılan geçici klasörde daha fazla yer açın.",
+ "You are accessing your instance over a secure connection, however your instance is generating insecure URLs. This most likely means that you are behind a reverse proxy and the overwrite config variables are not set correctly. Please read <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">the documentation page about this</a>." : "Kopyanıza güvenli bir bağlantı üzerinden erişiyorsunuz. Bununla birlikte kopyanız güvenli olmayan adresler üretiyor. Bunun nedeni genellikle bir ters vekil sunucunun arkasında bulunmanız nedeniyle düzgün ayarlanmamış yapılandırma değişkenlerinin değiştirilmesinden kaynaklanır. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">bu konudaki bilgilere</a> bakabilirsiniz.",
"Error occurred while checking server setup" : "Sunucu ayarları denetlenirken sorun çıktı",
"Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Veri klasörünüz ve dosyalarınız İnternet üzerinden erişime açık olabilir. .htaccess dosyası çalışmıyor. Web sunucunuzu yapılandırarak veri klasörüne erişimi engellemeniz ya da veri klasörünü web sunucu kök klasörü dışına taşımanız önemle önerilir.",
"The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "\"{header}\" HTTP üst bilgisi \"{expected}\" şeklinde ayarlanmamış. Bu durum olası bir güvenlik ya da gizlilik riski oluşturduğundan bu ayarın belirtildiği gibi yapılması önerilir.",
@@ -140,6 +143,9 @@ OC.L10N.register(
"Wrong username or password." : "Kullanıcı adı ya da parola hatalı.",
"User disabled" : "Kullanıcı devre dışı",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "IP adresinizden yapılan birden çok geçersiz oturum açma girişimi algılandı. Bu nedenle oturum açmanız 30 saniye süreyle engellendi.",
+ "Your account is not setup for passwordless login." : "Hesabınız parola kullanmadan oturum açılacak şekilde ayarlanmamış.",
+ "Passwordless authentication is not supported in your browser." : "Parolasız kimlik doğrulama özelliği web tarayıcınız tarafından desteklenmiyor.",
+ "Passwordless authentication is only available over a secure connection." : "Parolasız kimlik doğrulama özelliği yalnız güvenli bir bağlantı üzerinden kullanılabilir.",
"Reset password" : "Parolayı sıfırla",
"A password reset message has been sent to the e-mail address of this account. If you do not receive it, check your spam/junk folders or ask your local administrator for help." : "Bu hesabın e-posta adresine bir parola sıfırlama iletisi gönderildi. Bir e-posta almazsanız gelen kutunuzdaki spam/gereksiz klasörlerine bakın ya da yardım almak için sistem yöneticinizle görüşün.",
"If it is not there ask your local administrator." : "E-postayı göremiyorsanız yerel sistem yöneticinizle görüşün.",
@@ -166,6 +172,7 @@ OC.L10N.register(
"Collaboratively edit office documents." : "Ofis belgelerini işbirlikli düzenleme.",
"Local document editing back-end used by the OnlyOffice app." : "OnlyOffice uygulaması ile yerel belge düzenleme altyapısı.",
"Forgot password?" : "Parolamı unuttum",
+ "Log in with a device" : "Bir aygıt ile oturum açın",
"Back" : "Geri",
"Settings" : "Ayarlar",
"Could not load your contacts" : "Kişileriniz yüklenemedi",
diff --git a/core/l10n/tr.json b/core/l10n/tr.json
index 0f676cb8a4a..415c9d9d04f 100644
--- a/core/l10n/tr.json
+++ b/core/l10n/tr.json
@@ -73,7 +73,7 @@
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Henüz bir ön bellek yapılandırılmamış. Olabiliyorsa başarımı arttırmak için memcache ön bellek ayarlarını yapın. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
"No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Güvenlik nedeniyle kullanılması önemle önerilen rastgelelik kaynağı PHP tarafından bulunamıyor. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Şu anda PHP {version} sürümünü kullanıyorsunuz. Kullandığınız dağıtım desteklediği zaman PHP sürümünüzü güncelleyerek <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">PHP grubu tarafından sağlanan başarım ve güvenlik geliştirmelerinden</a> faydalanın.",
- "Nextcloud 19 is the last release supporting PHP 7.2. Nextcloud 20 requires at least PHP 7.3." : "Nextcloud 19, PHP 7.2 destekleyecek olan son sürümdür. Nextcloud 20 en az PHP 7.3 ister.",
+ "Nextcloud 19 is the last release supporting PHP 7.2. Nextcloud 20 requires at least PHP 7.3." : "Nextcloud 19 PHP 7.2 sürümünü destekleyen son sürümdür. Nextcloud 20 sürümü için en az PHP 7.3 gereklidir.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Ters vekil sunucu üst bilgi yapılandırmanız doğru değil ya da Nextcloud üzerine güvenilen bir vekil sunucudan erişiyorsunuz. Böyle değil ise bu bir güvenlik sorunudur ve bir saldırganın IP adresini Nextcolud sunucusuna farklı göstermesine izin verebilir. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
"Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Memcached dağıtık bellek olarak yapılandırılmış ancak kurulmuş PHP \"memcache\" modülü yanlış. \\OC\\Memcache\\Memcached yalnız \"memcache\" modülünü değil \"memcached\" mdoülünü destekler. İki modül hakkında ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki sayfasına</a> bakabilirsiniz.",
"Some files have not passed the integrity check. Further information on how to resolve this issue can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "Bazı dosyalar bütünlük denetiminden geçemedi. Bu sorunun çözümü ile ilgili bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz. (<a href=\"{codeIntegrityDownloadEndpoint}\">Geçersiz dosyaların listesi …</a> / <a href=\"{rescanEndpoint}\">Yeniden tara …</a>)",
@@ -83,6 +83,8 @@
"Your PHP does not have FreeType support, resulting in breakage of profile pictures and the settings interface." : "PHP kurulumunuzda FreeType desteği yok. Bu durum profil görsellerinin ve ayarlar bölümünün bozuk görüntülenmesine neden olur.",
"Missing index \"{indexName}\" in table \"{tableName}\"." : "\"{tableName}\" tablosundaki \"{indexName}\" dizini eksik.",
"The database is missing some indexes. Due to the fact that adding indexes on big tables could take some time they were not added automatically. By running \"occ db:add-missing-indices\" those missing indexes could be added manually while the instance keeps running. Once the indexes are added queries to those tables are usually much faster." : "Veritabanında bazı dizinler eksik. Büyük tablolara dizinlerin eklenmesi uzun sürebildiğinden bu işlem otomatik olarak yapılmaz. Sunucunuz normal çalışırken eksik dizinleri el ile eklemek için \"occ db:add-missing-indices\" komutunu yürütün. Dizinler eklendikten sonra bu tablolar üzerindeki sorgular çok daha hızlı yürütülür.",
+ "Missing optional column \"{columnName}\" in table \"{tableName}\"." : "\"{tableName}\" tablosundaki isteğe bağlı \"{coumnName}\" sütunu eksik.",
+ "The database is missing some optional columns. Due to the fact that adding columns on big tables could take some time they were not added automatically when they can be optional. By running \"occ db:add-missing-columns\" those missing columns could be added manually while the instance keeps running. Once the columns are added some features might improve responsiveness or usability." : "Veritabanında bazı isteğe bağlı sütunlar eksik. Büyük tablolara sütunların eklenmesi uzun sürebildiğinden, sütunlar isteğe bağlı olduğunda bu işlem otomatik olarak yapılmaz. Sunucunuz normal çalışırken eksik sütunları el ile eklemek için \"occ db:add-missing-columns\" komutunu yürütün. Sütunlar eklendikten sonra bazı özelliklerin yanıtı ya da kullanımı daha iyileşebilir.",
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "Bu kopyada önerilen bazı PHP modülleri eksik. Daha iyi başarım ve uyumluluk için bu modüllerin kurulması önemle önerilir.",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running 'occ db:convert-filecache-bigint' those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">the documentation page about this</a>." : "Veritabanında büyük tamsayıya dönüştürülecek bazı sütunlar eksik. Sütun türlerini büyük tablolara dönüştürme işlemi uzun sürebileceğinden bu işlem otomatik olarak yapılmaz. Sunucunuz normal çalışırken bekleyen değişiklikleri el ile uygulamak için \"occ db:convert-filecache-bigint\" komutunu yürütün. Bu işlem yapılırken Nextcloud kopyası çevrimdışı olur. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgeler bölümüne</a> bakabilirsiniz.",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "Şu anda veritabanı olarak SQLite kullanılıyor. Daha büyük kurulumlar için farklı bir veritabanı arka ucuna geçmenizi öneriyoruz.",
@@ -93,6 +95,7 @@
"Some app directories are owned by a different user than the web server one. This may be the case if apps have been installed manually. Check the permissions of the following app directories:" : "Bazı uygulama klasörlerinin sahipliği web sunucusunun kullandığından başka bir kullanıcıya ait. Bu durum, uygulamalar el ile kurulduğunda ortaya çıkabilir. Şu uygulama klasörlerinin izinlerini denetleyin:",
"MySQL is used as database but does not support 4-byte characters. To be able to handle 4-byte characters (like emojis) without issues in filenames or comments for example it is recommended to enable the 4-byte support in MySQL. For further details read <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">the documentation page about this</a>." : "Veritabanı olarak MySQL kullanılır ancak 4 bayt uzunluğundaki karakterleri desteklemez. 4 bayt uzunluğundaki karaktelerin (emjo simgeleri gibi) dosya adları ya da yorumlarda sorun çıkmadan işlenebilmesi için MySQL üzerinde 4 bayt desteğinin etkinleştirilmesi önerilir. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgeler bölümüne</a> bakabilirsiniz.",
"This instance uses an S3 based object store as primary storage. The uploaded files are stored temporarily on the server and thus it is recommended to have 50 GB of free space available in the temp directory of PHP. Check the logs for full details about the path and the available space. To improve this please change the temporary directory in the php.ini or make more space available in that path." : "Bu kopya, birincil depolama olarak S3 tabanlı bir nesne deposu kullanıyor. Yüklenen dosyalar geçici olarak sunucuya kaydedildiğinden PHP geçici klasöründe 50 GB boş alan bulunması önerilir. Klasör yolu ve kullanılabilecek alan hakkındaki ayrıntılı bilgi almak için günlüklere bakabilirsiniz. Bu durumu düzeltmek için php.ini içindeki geçici klasör yolunu değiştirin ya da kullanılan geçici klasörde daha fazla yer açın.",
+ "You are accessing your instance over a secure connection, however your instance is generating insecure URLs. This most likely means that you are behind a reverse proxy and the overwrite config variables are not set correctly. Please read <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">the documentation page about this</a>." : "Kopyanıza güvenli bir bağlantı üzerinden erişiyorsunuz. Bununla birlikte kopyanız güvenli olmayan adresler üretiyor. Bunun nedeni genellikle bir ters vekil sunucunun arkasında bulunmanız nedeniyle düzgün ayarlanmamış yapılandırma değişkenlerinin değiştirilmesinden kaynaklanır. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">bu konudaki bilgilere</a> bakabilirsiniz.",
"Error occurred while checking server setup" : "Sunucu ayarları denetlenirken sorun çıktı",
"Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Veri klasörünüz ve dosyalarınız İnternet üzerinden erişime açık olabilir. .htaccess dosyası çalışmıyor. Web sunucunuzu yapılandırarak veri klasörüne erişimi engellemeniz ya da veri klasörünü web sunucu kök klasörü dışına taşımanız önemle önerilir.",
"The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "\"{header}\" HTTP üst bilgisi \"{expected}\" şeklinde ayarlanmamış. Bu durum olası bir güvenlik ya da gizlilik riski oluşturduğundan bu ayarın belirtildiği gibi yapılması önerilir.",
@@ -138,6 +141,9 @@
"Wrong username or password." : "Kullanıcı adı ya da parola hatalı.",
"User disabled" : "Kullanıcı devre dışı",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "IP adresinizden yapılan birden çok geçersiz oturum açma girişimi algılandı. Bu nedenle oturum açmanız 30 saniye süreyle engellendi.",
+ "Your account is not setup for passwordless login." : "Hesabınız parola kullanmadan oturum açılacak şekilde ayarlanmamış.",
+ "Passwordless authentication is not supported in your browser." : "Parolasız kimlik doğrulama özelliği web tarayıcınız tarafından desteklenmiyor.",
+ "Passwordless authentication is only available over a secure connection." : "Parolasız kimlik doğrulama özelliği yalnız güvenli bir bağlantı üzerinden kullanılabilir.",
"Reset password" : "Parolayı sıfırla",
"A password reset message has been sent to the e-mail address of this account. If you do not receive it, check your spam/junk folders or ask your local administrator for help." : "Bu hesabın e-posta adresine bir parola sıfırlama iletisi gönderildi. Bir e-posta almazsanız gelen kutunuzdaki spam/gereksiz klasörlerine bakın ya da yardım almak için sistem yöneticinizle görüşün.",
"If it is not there ask your local administrator." : "E-postayı göremiyorsanız yerel sistem yöneticinizle görüşün.",
@@ -164,6 +170,7 @@
"Collaboratively edit office documents." : "Ofis belgelerini işbirlikli düzenleme.",
"Local document editing back-end used by the OnlyOffice app." : "OnlyOffice uygulaması ile yerel belge düzenleme altyapısı.",
"Forgot password?" : "Parolamı unuttum",
+ "Log in with a device" : "Bir aygıt ile oturum açın",
"Back" : "Geri",
"Settings" : "Ayarlar",
"Could not load your contacts" : "Kişileriniz yüklenemedi",
diff --git a/lib/l10n/tr.js b/lib/l10n/tr.js
index e9a050a0dc7..1746909dad7 100644
--- a/lib/l10n/tr.js
+++ b/lib/l10n/tr.js
@@ -5,6 +5,7 @@ OC.L10N.register(
"This can usually be fixed by giving the webserver write access to the config directory" : "Bu sorun genellikle, web sunucusuna config klasörüne yazma izni verilerek çözülebilir",
"Or, if you prefer to keep config.php file read only, set the option \"config_is_read_only\" to true in it." : "Ya da config.php dosyasının salt okunur olarak kalmasını istiyorsanız içindeki \"config_is_read_only\" seçeneğini true olarak ayarlayın.",
"See %s" : "Şuraya bakın: %s",
+ "This can usually be fixed by giving the webserver write access to the config directory." : "Bu sorun genellikle, web sunucusuna config klasörüne yazma izni verilerek çözülebilir.",
"Or, if you prefer to keep config.php file read only, set the option \"config_is_read_only\" to true in it. See %s" : "Ya da config.php dosyasının salt okunur olarak kalmasını istiyorsanız içindeki \"config_is_read_only\" seçeneğini true olarak ayarlayın. %s bölümüne bakabilirsiniz",
"The files of the app %1$s were not replaced correctly. Make sure it is a version compatible with the server." : "%1$s uygulamasının dosyaları doğru şekilde değiştirilmedi. Sunucu ile uyumlu dosyaların yüklü olduğundan emin olun.",
"Sample configuration detected" : "Örnek yapılandırma algılandı",
@@ -186,6 +187,7 @@ OC.L10N.register(
"Cannot write into \"config\" directory" : "\"config\" klasörüne yazılamıyor",
"This can usually be fixed by giving the webserver write access to the config directory. See %s" : "Bu sorun genellikle, web sunucusuna config klasörüne yazma izni verilerek çözülebilir. %s bölümüne bakın",
"Cannot write into \"apps\" directory" : "\"apps\" klasörüne yazılamıyor",
+ "This can usually be fixed by giving the webserver write access to the apps directory or disabling the appstore in the config file." : "Bu sorun genellikle, web sunucusuna apps klasörüne yazma izni verilerek ya da yapılandırma dosyasından uygulama mağazasını devre dışı bırakılarak çözülebilir.",
"Cannot create \"data\" directory" : "\"data\" klasörü oluşturulamadı",
"This can usually be fixed by giving the webserver write access to the root directory. See %s" : "Bu sorun genellikle, web sunucusuna kök klasöre yazma izni verilerek çözülebilir. %s bölümüne bakın",
"Permissions can usually be fixed by giving the webserver write access to the root directory. See %s." : "İzinler genellikle, web sunucusuna kök klasöre yazma izni verilerek düzeltilebilir. %s bölümüne bakın.",
diff --git a/lib/l10n/tr.json b/lib/l10n/tr.json
index 6f90a7f5591..d39d456185d 100644
--- a/lib/l10n/tr.json
+++ b/lib/l10n/tr.json
@@ -3,6 +3,7 @@
"This can usually be fixed by giving the webserver write access to the config directory" : "Bu sorun genellikle, web sunucusuna config klasörüne yazma izni verilerek çözülebilir",
"Or, if you prefer to keep config.php file read only, set the option \"config_is_read_only\" to true in it." : "Ya da config.php dosyasının salt okunur olarak kalmasını istiyorsanız içindeki \"config_is_read_only\" seçeneğini true olarak ayarlayın.",
"See %s" : "Şuraya bakın: %s",
+ "This can usually be fixed by giving the webserver write access to the config directory." : "Bu sorun genellikle, web sunucusuna config klasörüne yazma izni verilerek çözülebilir.",
"Or, if you prefer to keep config.php file read only, set the option \"config_is_read_only\" to true in it. See %s" : "Ya da config.php dosyasının salt okunur olarak kalmasını istiyorsanız içindeki \"config_is_read_only\" seçeneğini true olarak ayarlayın. %s bölümüne bakabilirsiniz",
"The files of the app %1$s were not replaced correctly. Make sure it is a version compatible with the server." : "%1$s uygulamasının dosyaları doğru şekilde değiştirilmedi. Sunucu ile uyumlu dosyaların yüklü olduğundan emin olun.",
"Sample configuration detected" : "Örnek yapılandırma algılandı",
@@ -184,6 +185,7 @@
"Cannot write into \"config\" directory" : "\"config\" klasörüne yazılamıyor",
"This can usually be fixed by giving the webserver write access to the config directory. See %s" : "Bu sorun genellikle, web sunucusuna config klasörüne yazma izni verilerek çözülebilir. %s bölümüne bakın",
"Cannot write into \"apps\" directory" : "\"apps\" klasörüne yazılamıyor",
+ "This can usually be fixed by giving the webserver write access to the apps directory or disabling the appstore in the config file." : "Bu sorun genellikle, web sunucusuna apps klasörüne yazma izni verilerek ya da yapılandırma dosyasından uygulama mağazasını devre dışı bırakılarak çözülebilir.",
"Cannot create \"data\" directory" : "\"data\" klasörü oluşturulamadı",
"This can usually be fixed by giving the webserver write access to the root directory. See %s" : "Bu sorun genellikle, web sunucusuna kök klasöre yazma izni verilerek çözülebilir. %s bölümüne bakın",
"Permissions can usually be fixed by giving the webserver write access to the root directory. See %s." : "İzinler genellikle, web sunucusuna kök klasöre yazma izni verilerek düzeltilebilir. %s bölümüne bakın.",
diff --git a/lib/private/Activity/Event.php b/lib/private/Activity/Event.php
index dcd854b9fe0..85f896622b9 100644
--- a/lib/private/Activity/Event.php
+++ b/lib/private/Activity/Event.php
@@ -524,10 +524,10 @@ class Event implements IEvent {
$this->getTimestamp() !== 0
/**
* Disabled for BC with old activities
- &&
- $this->getObjectType() !== ''
- &&
- $this->getObjectId() !== 0
+ * &&
+ * $this->getObjectType() !== ''
+ * &&
+ * $this->getObjectId() !== 0
*/
;
}
diff --git a/lib/private/AppFramework/Http/Request.php b/lib/private/AppFramework/Http/Request.php
index 6554250902d..41bfbd82506 100644
--- a/lib/private/AppFramework/Http/Request.php
+++ b/lib/private/AppFramework/Http/Request.php
@@ -187,25 +187,25 @@ class Request implements \ArrayAccess, \Countable, IRequest {
}
/**
- * ArrayAccess methods
- *
- * Gives access to the combined GET, POST and urlParams arrays
- *
- * Examples:
- *
- * $var = $request['myvar'];
- *
- * or
- *
- * if(!isset($request['myvar']) {
- * // Do something
- * }
- *
- * $request['myvar'] = 'something'; // This throws an exception.
- *
- * @param string $offset The key to lookup
- * @return boolean
- */
+ * ArrayAccess methods
+ *
+ * Gives access to the combined GET, POST and urlParams arrays
+ *
+ * Examples:
+ *
+ * $var = $request['myvar'];
+ *
+ * or
+ *
+ * if(!isset($request['myvar']) {
+ * // Do something
+ * }
+ *
+ * $request['myvar'] = 'something'; // This throws an exception.
+ *
+ * @param string $offset The key to lookup
+ * @return boolean
+ */
public function offsetExists($offset): bool {
return isset($this->items['parameters'][$offset]);
}
@@ -248,20 +248,20 @@ class Request implements \ArrayAccess, \Countable, IRequest {
}
/**
- * Access request variables by method and name.
- * Examples:
- *
- * $request->post['myvar']; // Only look for POST variables
- * $request->myvar; or $request->{'myvar'}; or $request->{$myvar}
- * Looks in the combined GET, POST and urlParams array.
- *
- * If you access e.g. ->post but the current HTTP request method
- * is GET a \LogicException will be thrown.
- *
- * @param string $name The key to look for.
- * @throws \LogicException
- * @return mixed|null
- */
+ * Access request variables by method and name.
+ * Examples:
+ *
+ * $request->post['myvar']; // Only look for POST variables
+ * $request->myvar; or $request->{'myvar'}; or $request->{$myvar}
+ * Looks in the combined GET, POST and urlParams array.
+ *
+ * If you access e.g. ->post but the current HTTP request method
+ * is GET a \LogicException will be thrown.
+ *
+ * @param string $name The key to look for.
+ * @throws \LogicException
+ * @return mixed|null
+ */
public function __get($name) {
switch($name) {
case 'put':
diff --git a/lib/private/CapabilitiesManager.php b/lib/private/CapabilitiesManager.php
index d49c55bb80d..8034b90567f 100644
--- a/lib/private/CapabilitiesManager.php
+++ b/lib/private/CapabilitiesManager.php
@@ -48,7 +48,7 @@ class CapabilitiesManager {
/**
* Get an array of al the capabilities that are registered at this manager
- *
+ *
* @param bool $public get public capabilities only
* @throws \InvalidArgumentException
* @return array
diff --git a/lib/private/Collaboration/Collaborators/Search.php b/lib/private/Collaboration/Collaborators/Search.php
index 7f5c5a1a811..9b9decfecbe 100644
--- a/lib/private/Collaboration/Collaborators/Search.php
+++ b/lib/private/Collaboration/Collaborators/Search.php
@@ -85,6 +85,13 @@ class Search implements ISearch {
$searchResult->unsetResult($emailType);
}
+ // if we have an exact local user match, there is no need to show the remote and email matches
+ $userType = new SearchResultType('users');
+ if($searchResult->hasExactIdMatch($userType)) {
+ $searchResult->unsetResult($remoteType);
+ $searchResult->unsetResult($emailType);
+ }
+
return [$searchResult->asArray(), (bool)$hasMoreResults];
}
diff --git a/lib/private/Collaboration/Collaborators/UserPlugin.php b/lib/private/Collaboration/Collaborators/UserPlugin.php
index bf2c1cfeda9..a344e557ac7 100644
--- a/lib/private/Collaboration/Collaborators/UserPlugin.php
+++ b/lib/private/Collaboration/Collaborators/UserPlugin.php
@@ -32,6 +32,7 @@ use OCP\Collaboration\Collaborators\ISearchPlugin;
use OCP\Collaboration\Collaborators\ISearchResult;
use OCP\Collaboration\Collaborators\SearchResultType;
use OCP\IConfig;
+use OCP\IGroup;
use OCP\IGroupManager;
use OCP\IUser;
use OCP\IUserManager;
@@ -75,11 +76,11 @@ class UserPlugin implements ISearchPlugin {
$userGroups = [];
if ($this->shareWithGroupOnly) {
// Search in all the groups this user is part of
- $userGroups = $this->groupManager->getUserGroupIds($this->userSession->getUser());
+ $userGroups = $this->groupManager->getUserGroups($this->userSession->getUser());
foreach ($userGroups as $userGroup) {
- $usersTmp = $this->groupManager->displayNamesInGroup($userGroup, $search, $limit, $offset);
- foreach ($usersTmp as $uid => $userDisplayName) {
- $users[(string) $uid] = $userDisplayName;
+ $usersInGroup = $userGroup->searchDisplayName($search, $limit, $offset);
+ foreach ($usersInGroup as $user) {
+ $users[$user->getUID()] = $user;
}
}
} else {
@@ -88,7 +89,7 @@ class UserPlugin implements ISearchPlugin {
$currentUserGroups = $this->groupManager->getUserGroupIds($this->userSession->getUser());
foreach ($usersTmp as $user) {
if ($user->isEnabled()) { // Don't keep deactivated users
- $users[(string) $user->getUID()] = $user->getDisplayName();
+ $users[$user->getUID()] = $user;
$addToWideResults = false;
if ($this->shareeEnumeration && !$this->shareeEnumerationInGroupOnly) {
@@ -123,9 +124,15 @@ class UserPlugin implements ISearchPlugin {
$foundUserById = false;
$lowerSearch = strtolower($search);
- foreach ($users as $uid => $userDisplayName) {
+ foreach ($users as $uid => $user) {
+ $userDisplayName = $user->getDisplayName();
+ $userEmail = $user->getEMailAddress();
$uid = (string) $uid;
- if (strtolower($uid) === $lowerSearch || strtolower($userDisplayName) === $lowerSearch) {
+ if (
+ strtolower($uid) === $lowerSearch ||
+ strtolower($userDisplayName) === $lowerSearch ||
+ strtolower($userEmail) === $lowerSearch
+ ) {
if (strtolower($uid) === $lowerSearch) {
$foundUserById = true;
}
@@ -156,7 +163,10 @@ class UserPlugin implements ISearchPlugin {
if ($this->shareWithGroupOnly) {
// Only add, if we have a common group
- $commonGroups = array_intersect($userGroups, $this->groupManager->getUserGroupIds($user));
+ $userGroupIds = array_map(function(IGroup $group) {
+ return $group->getGID();
+ }, $userGroups);
+ $commonGroups = array_intersect($userGroupIds, $this->groupManager->getUserGroupIds($user));
$addUser = !empty($commonGroups);
}
@@ -179,6 +189,9 @@ class UserPlugin implements ISearchPlugin {
$type = new SearchResultType('users');
$searchResult->addResultSet($type, $result['wide'], $result['exact']);
+ if (count($result['exact'])) {
+ $searchResult->markExactIdMatch($type);
+ }
return $hasMoreResults;
}
diff --git a/lib/private/DB/MySqlTools.php b/lib/private/DB/MySqlTools.php
index 69d95d4eed6..957afbaa06f 100644
--- a/lib/private/DB/MySqlTools.php
+++ b/lib/private/DB/MySqlTools.php
@@ -26,8 +26,8 @@ namespace OC\DB;
use OCP\IDBConnection;
/**
-* Various MySQL specific helper functions.
-*/
+ * Various MySQL specific helper functions.
+ */
class MySqlTools {
/**
diff --git a/lib/private/DB/PgSqlTools.php b/lib/private/DB/PgSqlTools.php
index 5a9128bc5b2..27b6bbc9aeb 100644
--- a/lib/private/DB/PgSqlTools.php
+++ b/lib/private/DB/PgSqlTools.php
@@ -28,8 +28,8 @@ namespace OC\DB;
use OCP\IConfig;
/**
-* Various PostgreSQL specific helper functions.
-*/
+ * Various PostgreSQL specific helper functions.
+ */
class PgSqlTools {
/** @var \OCP\IConfig */
@@ -43,11 +43,11 @@ class PgSqlTools {
}
/**
- * @brief Resynchronizes all sequences of a database after using INSERTs
- * without leaving out the auto-incremented column.
- * @param \OC\DB\Connection $conn
- * @return null
- */
+ * @brief Resynchronizes all sequences of a database after using INSERTs
+ * without leaving out the auto-incremented column.
+ * @param \OC\DB\Connection $conn
+ * @return null
+ */
public function resynchronizeDatabaseSequences(Connection $conn) {
$filterExpression = '/^' . preg_quote($this->config->getSystemValue('dbtableprefix', 'oc_')) . '/';
$databaseName = $conn->getDatabase();
diff --git a/lib/private/Encryption/Manager.php b/lib/private/Encryption/Manager.php
index 63d35e6dd86..52fc23de947 100644
--- a/lib/private/Encryption/Manager.php
+++ b/lib/private/Encryption/Manager.php
@@ -128,7 +128,7 @@ class Manager implements IManager {
return true;
}
- /**
+ /**
* Registers an callback function which must return an encryption module instance
*
* @param string $id
diff --git a/lib/private/Group/Backend.php b/lib/private/Group/Backend.php
index 024366a46be..6c2973542cf 100644
--- a/lib/private/Group/Backend.php
+++ b/lib/private/Group/Backend.php
@@ -45,12 +45,12 @@ abstract class Backend implements \OCP\GroupInterface {
];
/**
- * Get all supported actions
- * @return int bitwise-or'ed actions
- *
- * Returns the supported actions as int to be
- * compared with \OC\Group\Backend::CREATE_GROUP etc.
- */
+ * Get all supported actions
+ * @return int bitwise-or'ed actions
+ *
+ * Returns the supported actions as int to be
+ * compared with \OC\Group\Backend::CREATE_GROUP etc.
+ */
public function getSupportedActions() {
$actions = 0;
foreach($this->possibleActions AS $action => $methodName) {
@@ -63,13 +63,13 @@ abstract class Backend implements \OCP\GroupInterface {
}
/**
- * Check if backend implements actions
- * @param int $actions bitwise-or'ed actions
- * @return bool
- *
- * Returns the supported actions as int to be
- * compared with \OC\Group\Backend::CREATE_GROUP etc.
- */
+ * Check if backend implements actions
+ * @param int $actions bitwise-or'ed actions
+ * @return bool
+ *
+ * Returns the supported actions as int to be
+ * compared with \OC\Group\Backend::CREATE_GROUP etc.
+ */
public function implementsActions($actions) {
return (bool)($this->getSupportedActions() & $actions);
}
diff --git a/lib/private/LargeFileHelper.php b/lib/private/LargeFileHelper.php
index 7f6a329c22d..fb4ef1ce4f7 100755
--- a/lib/private/LargeFileHelper.php
+++ b/lib/private/LargeFileHelper.php
@@ -34,23 +34,23 @@ namespace OC;
*/
class LargeFileHelper {
/**
- * pow(2, 53) as a base-10 string.
- * @var string
- */
+ * pow(2, 53) as a base-10 string.
+ * @var string
+ */
const POW_2_53 = '9007199254740992';
/**
- * pow(2, 53) - 1 as a base-10 string.
- * @var string
- */
+ * pow(2, 53) - 1 as a base-10 string.
+ * @var string
+ */
const POW_2_53_MINUS_1 = '9007199254740991';
/**
- * @brief Checks whether our assumptions hold on the PHP platform we are on.
- *
- * @throws \RunTimeException if our assumptions do not hold on the current
- * PHP platform.
- */
+ * @brief Checks whether our assumptions hold on the PHP platform we are on.
+ *
+ * @throws \RunTimeException if our assumptions do not hold on the current
+ * PHP platform.
+ */
public function __construct() {
$pow_2_53 = (float)self::POW_2_53_MINUS_1 + 1.0;
if ($this->formatUnsignedInteger($pow_2_53) !== self::POW_2_53) {
@@ -61,16 +61,16 @@ class LargeFileHelper {
}
/**
- * @brief Formats a signed integer or float as an unsigned integer base-10
- * string. Passed strings will be checked for being base-10.
- *
- * @param int|float|string $number Number containing unsigned integer data
- *
- * @throws \UnexpectedValueException if $number is not a float, not an int
- * and not a base-10 string.
- *
- * @return string Unsigned integer base-10 string
- */
+ * @brief Formats a signed integer or float as an unsigned integer base-10
+ * string. Passed strings will be checked for being base-10.
+ *
+ * @param int|float|string $number Number containing unsigned integer data
+ *
+ * @throws \UnexpectedValueException if $number is not a float, not an int
+ * and not a base-10 string.
+ *
+ * @return string Unsigned integer base-10 string
+ */
public function formatUnsignedInteger($number) {
if (is_float($number)) {
// Undo the effect of the php.ini setting 'precision'.
@@ -88,14 +88,14 @@ class LargeFileHelper {
}
/**
- * @brief Tries to get the size of a file via various workarounds that
- * even work for large files on 32-bit platforms.
- *
- * @param string $filename Path to the file.
- *
- * @return null|int|float Number of bytes as number (float or int) or
- * null on failure.
- */
+ * @brief Tries to get the size of a file via various workarounds that
+ * even work for large files on 32-bit platforms.
+ *
+ * @param string $filename Path to the file.
+ *
+ * @return null|int|float Number of bytes as number (float or int) or
+ * null on failure.
+ */
public function getFileSize($filename) {
$fileSize = $this->getFileSizeViaCurl($filename);
if (!is_null($fileSize)) {
@@ -109,13 +109,13 @@ class LargeFileHelper {
}
/**
- * @brief Tries to get the size of a file via a CURL HEAD request.
- *
- * @param string $fileName Path to the file.
- *
- * @return null|int|float Number of bytes as number (float or int) or
- * null on failure.
- */
+ * @brief Tries to get the size of a file via a CURL HEAD request.
+ *
+ * @param string $fileName Path to the file.
+ *
+ * @return null|int|float Number of bytes as number (float or int) or
+ * null on failure.
+ */
public function getFileSizeViaCurl($fileName) {
if (\OC::$server->getIniWrapper()->getString('open_basedir') === '') {
$encodedFileName = rawurlencode($fileName);
@@ -137,13 +137,13 @@ class LargeFileHelper {
}
/**
- * @brief Tries to get the size of a file via an exec() call.
- *
- * @param string $filename Path to the file.
- *
- * @return null|int|float Number of bytes as number (float or int) or
- * null on failure.
- */
+ * @brief Tries to get the size of a file via an exec() call.
+ *
+ * @param string $filename Path to the file.
+ *
+ * @return null|int|float Number of bytes as number (float or int) or
+ * null on failure.
+ */
public function getFileSizeViaExec($filename) {
if (\OC_Helper::is_function_enabled('exec')) {
$os = strtolower(php_uname('s'));
@@ -160,15 +160,15 @@ class LargeFileHelper {
}
/**
- * @brief Gets the size of a file via a filesize() call and converts
- * negative signed int to positive float. As the result of filesize()
- * will wrap around after a file size of 2^32 bytes = 4 GiB, this
- * should only be used as a last resort.
- *
- * @param string $filename Path to the file.
- *
- * @return int|float Number of bytes as number (float or int).
- */
+ * @brief Gets the size of a file via a filesize() call and converts
+ * negative signed int to positive float. As the result of filesize()
+ * will wrap around after a file size of 2^32 bytes = 4 GiB, this
+ * should only be used as a last resort.
+ *
+ * @param string $filename Path to the file.
+ *
+ * @return int|float Number of bytes as number (float or int).
+ */
public function getFileSizeNative($filename) {
$result = filesize($filename);
if ($result < 0) {
diff --git a/lib/private/SystemTag/SystemTagObjectMapper.php b/lib/private/SystemTag/SystemTagObjectMapper.php
index f73bb3f5f12..97138d267d2 100644
--- a/lib/private/SystemTag/SystemTagObjectMapper.php
+++ b/lib/private/SystemTag/SystemTagObjectMapper.php
@@ -51,12 +51,12 @@ class SystemTagObjectMapper implements ISystemTagObjectMapper {
protected $dispatcher;
/**
- * Constructor.
- *
- * @param IDBConnection $connection database connection
- * @param ISystemTagManager $tagManager system tag manager
- * @param EventDispatcherInterface $dispatcher
- */
+ * Constructor.
+ *
+ * @param IDBConnection $connection database connection
+ * @param ISystemTagManager $tagManager system tag manager
+ * @param EventDispatcherInterface $dispatcher
+ */
public function __construct(IDBConnection $connection, ISystemTagManager $tagManager, EventDispatcherInterface $dispatcher) {
$this->connection = $connection;
$this->tagManager = $tagManager;
diff --git a/lib/private/TagManager.php b/lib/private/TagManager.php
index ccb2e796155..52d000f8c94 100644
--- a/lib/private/TagManager.php
+++ b/lib/private/TagManager.php
@@ -56,11 +56,11 @@ class TagManager implements \OCP\ITagManager {
private $mapper;
/**
- * Constructor.
- *
- * @param TagMapper $mapper Instance of the TagMapper abstraction layer.
- * @param \OCP\IUserSession $userSession the user session
- */
+ * Constructor.
+ *
+ * @param TagMapper $mapper Instance of the TagMapper abstraction layer.
+ * @param \OCP\IUserSession $userSession the user session
+ */
public function __construct(TagMapper $mapper, \OCP\IUserSession $userSession) {
$this->mapper = $mapper;
$this->userSession = $userSession;
@@ -68,16 +68,16 @@ class TagManager implements \OCP\ITagManager {
}
/**
- * Create a new \OCP\ITags instance and load tags from db.
- *
- * @see \OCP\ITags
- * @param string $type The type identifier e.g. 'contact' or 'event'.
- * @param array $defaultTags An array of default tags to be used if none are stored.
- * @param boolean $includeShared Whether to include tags for items shared with this user by others.
- * @param string $userId user for which to retrieve the tags, defaults to the currently
- * logged in user
- * @return \OCP\ITags
- */
+ * Create a new \OCP\ITags instance and load tags from db.
+ *
+ * @see \OCP\ITags
+ * @param string $type The type identifier e.g. 'contact' or 'event'.
+ * @param array $defaultTags An array of default tags to be used if none are stored.
+ * @param boolean $includeShared Whether to include tags for items shared with this user by others.
+ * @param string $userId user for which to retrieve the tags, defaults to the currently
+ * logged in user
+ * @return \OCP\ITags
+ */
public function load($type, $defaultTags = [], $includeShared = false, $userId = null) {
if (is_null($userId)) {
$user = $this->userSession->getUser();
diff --git a/lib/private/Tagging/Tag.php b/lib/private/Tagging/Tag.php
index eacb272ca7a..971b2da053b 100644
--- a/lib/private/Tagging/Tag.php
+++ b/lib/private/Tagging/Tag.php
@@ -43,12 +43,12 @@ class Tag extends Entity {
protected $name;
/**
- * Constructor.
- *
- * @param string $owner The tag's owner
- * @param string $type The type of item this tag is used for
- * @param string $name The tag's name
- */
+ * Constructor.
+ *
+ * @param string $owner The tag's owner
+ * @param string $type The type of item this tag is used for
+ * @param string $name The tag's name
+ */
public function __construct($owner = null, $type = null, $name = null) {
$this->setOwner($owner);
$this->setType($type);
diff --git a/lib/private/Tagging/TagMapper.php b/lib/private/Tagging/TagMapper.php
index c021c3646a4..2ffb663aeff 100644
--- a/lib/private/Tagging/TagMapper.php
+++ b/lib/private/Tagging/TagMapper.php
@@ -36,21 +36,21 @@ use OCP\IDBConnection;
class TagMapper extends Mapper {
/**
- * Constructor.
- *
- * @param IDBConnection $db Instance of the Db abstraction layer.
- */
+ * Constructor.
+ *
+ * @param IDBConnection $db Instance of the Db abstraction layer.
+ */
public function __construct(IDBConnection $db) {
parent::__construct($db, 'vcategory', Tag::class);
}
/**
- * Load tags from the database.
- *
- * @param array|string $owners The user(s) whose tags we are going to load.
- * @param string $type The type of item for which we are loading tags.
- * @return array An array of Tag objects.
- */
+ * Load tags from the database.
+ *
+ * @param array|string $owners The user(s) whose tags we are going to load.
+ * @param string $type The type of item for which we are loading tags.
+ * @return array An array of Tag objects.
+ */
public function loadTags($owners, $type) {
if(!is_array($owners)) {
$owners = [$owners];
@@ -62,11 +62,11 @@ class TagMapper extends Mapper {
}
/**
- * Check if a given Tag object already exists in the database.
- *
- * @param Tag $tag The tag to look for in the database.
- * @return bool
- */
+ * Check if a given Tag object already exists in the database.
+ *
+ * @param Tag $tag The tag to look for in the database.
+ * @return bool
+ */
public function tagExists($tag) {
$sql = 'SELECT `id`, `uid`, `type`, `category` FROM `' . $this->getTableName() . '` '
. 'WHERE `uid` = ? AND `type` = ? AND `category` = ?';
diff --git a/lib/private/Tags.php b/lib/private/Tags.php
index 8e26cccb408..6a174748a31 100644
--- a/lib/private/Tags.php
+++ b/lib/private/Tags.php
@@ -116,14 +116,14 @@ class Tags implements ITags {
const RELATION_TABLE = '*PREFIX*vcategory_to_object';
/**
- * Constructor.
- *
- * @param TagMapper $mapper Instance of the TagMapper abstraction layer.
- * @param string $user The user whose data the object will operate on.
- * @param string $type The type of items for which tags will be loaded.
- * @param array $defaultTags Tags that should be created at construction.
- * @param boolean $includeShared Whether to include tags for items shared with this user by others.
- */
+ * Constructor.
+ *
+ * @param TagMapper $mapper Instance of the TagMapper abstraction layer.
+ * @param string $user The user whose data the object will operate on.
+ * @param string $type The type of items for which tags will be loaded.
+ * @param array $defaultTags Tags that should be created at construction.
+ * @param boolean $includeShared Whether to include tags for items shared with this user by others.
+ */
public function __construct(TagMapper $mapper, $user, $type, $defaultTags = [], $includeShared = false) {
$this->mapper = $mapper;
$this->user = $user;
@@ -142,21 +142,21 @@ class Tags implements ITags {
}
/**
- * Check if any tags are saved for this type and user.
- *
- * @return boolean
- */
+ * Check if any tags are saved for this type and user.
+ *
+ * @return boolean
+ */
public function isEmpty() {
return count($this->tags) === 0;
}
/**
- * Returns an array mapping a given tag's properties to its values:
- * ['id' => 0, 'name' = 'Tag', 'owner' = 'User', 'type' => 'tagtype']
- *
- * @param string $id The ID of the tag that is going to be mapped
- * @return array|false
- */
+ * Returns an array mapping a given tag's properties to its values:
+ * ['id' => 0, 'name' = 'Tag', 'owner' = 'User', 'type' => 'tagtype']
+ *
+ * @param string $id The ID of the tag that is going to be mapped
+ * @return array|false
+ */
public function getTag($id) {
$key = $this->getTagById($id);
if ($key !== false) {
@@ -166,16 +166,16 @@ class Tags implements ITags {
}
/**
- * Get the tags for a specific user.
- *
- * This returns an array with maps containing each tag's properties:
- * [
- * ['id' => 0, 'name' = 'First tag', 'owner' = 'User', 'type' => 'tagtype'],
- * ['id' => 1, 'name' = 'Shared tag', 'owner' = 'Other user', 'type' => 'tagtype'],
- * ]
- *
- * @return array
- */
+ * Get the tags for a specific user.
+ *
+ * This returns an array with maps containing each tag's properties:
+ * [
+ * ['id' => 0, 'name' = 'First tag', 'owner' = 'User', 'type' => 'tagtype'],
+ * ['id' => 1, 'name' = 'Shared tag', 'owner' = 'Other user', 'type' => 'tagtype'],
+ * ]
+ *
+ * @return array
+ */
public function getTags() {
if(!count($this->tags)) {
return [];
@@ -196,12 +196,12 @@ class Tags implements ITags {
}
/**
- * Return only the tags owned by the given user, omitting any tags shared
- * by other users.
- *
- * @param string $user The user whose tags are to be checked.
- * @return array An array of Tag objects.
- */
+ * Return only the tags owned by the given user, omitting any tags shared
+ * by other users.
+ *
+ * @param string $user The user whose tags are to be checked.
+ * @return array An array of Tag objects.
+ */
public function getTagsForUser($user) {
return array_filter($this->tags,
function($tag) use($user) {
@@ -256,14 +256,14 @@ class Tags implements ITags {
}
/**
- * Get the a list if items tagged with $tag.
- *
- * Throws an exception if the tag could not be found.
- *
- * @param string $tag Tag id or name.
- * @return array|false An array of object ids or false on error.
- * @throws \Exception
- */
+ * Get the a list if items tagged with $tag.
+ *
+ * Throws an exception if the tag could not be found.
+ *
+ * @param string $tag Tag id or name.
+ * @return array|false An array of object ids or false on error.
+ * @throws \Exception
+ */
public function getIdsForTag($tag) {
$result = null;
$tagId = false;
@@ -330,34 +330,34 @@ class Tags implements ITags {
}
/**
- * Checks whether a tag is saved for the given user,
- * disregarding the ones shared with him or her.
- *
- * @param string $name The tag name to check for.
- * @param string $user The user whose tags are to be checked.
- * @return bool
- */
+ * Checks whether a tag is saved for the given user,
+ * disregarding the ones shared with him or her.
+ *
+ * @param string $name The tag name to check for.
+ * @param string $user The user whose tags are to be checked.
+ * @return bool
+ */
public function userHasTag($name, $user) {
$key = $this->array_searchi($name, $this->getTagsForUser($user));
return ($key !== false) ? $this->tags[$key]->getId() : false;
}
/**
- * Checks whether a tag is saved for or shared with the current user.
- *
- * @param string $name The tag name to check for.
- * @return bool
- */
+ * Checks whether a tag is saved for or shared with the current user.
+ *
+ * @param string $name The tag name to check for.
+ * @return bool
+ */
public function hasTag($name) {
return $this->getTagId($name) !== false;
}
/**
- * Add a new tag.
- *
- * @param string $name A string with a name of the tag
- * @return false|int the id of the added tag or false on error.
- */
+ * Add a new tag.
+ *
+ * @param string $name A string with a name of the tag
+ * @return false|int the id of the added tag or false on error.
+ */
public function add($name) {
$name = trim($name);
@@ -386,12 +386,12 @@ class Tags implements ITags {
}
/**
- * Rename tag.
- *
- * @param string|integer $from The name or ID of the existing tag
- * @param string $to The new name of the tag.
- * @return bool
- */
+ * Rename tag.
+ *
+ * @param string|integer $from The name or ID of the existing tag
+ * @param string $to The new name of the tag.
+ * @return bool
+ */
public function rename($from, $to) {
$from = trim($from);
$to = trim($to);
@@ -432,14 +432,14 @@ class Tags implements ITags {
}
/**
- * Add a list of new tags.
- *
- * @param string[] $names A string with a name or an array of strings containing
- * the name(s) of the tag(s) to add.
- * @param bool $sync When true, save the tags
- * @param int|null $id int Optional object id to add to this|these tag(s)
- * @return bool Returns false on error.
- */
+ * Add a list of new tags.
+ *
+ * @param string[] $names A string with a name or an array of strings containing
+ * the name(s) of the tag(s) to add.
+ * @param bool $sync When true, save the tags
+ * @param int|null $id int Optional object id to add to this|these tag(s)
+ * @return bool Returns false on error.
+ */
public function addMultiple($names, $sync=false, $id = null) {
if(!is_array($names)) {
$names = [$names];
@@ -522,12 +522,12 @@ class Tags implements ITags {
}
/**
- * Delete tags and tag/object relations for a user.
- *
- * For hooking up on post_deleteUser
- *
- * @param array $arguments
- */
+ * Delete tags and tag/object relations for a user.
+ *
+ * For hooking up on post_deleteUser
+ *
+ * @param array $arguments
+ */
public static function post_deleteUser($arguments) {
// Find all objectid/tagId pairs.
$result = null;
@@ -586,11 +586,11 @@ class Tags implements ITags {
}
/**
- * Delete tag/object relations from the db
- *
- * @param array $ids The ids of the objects
- * @return boolean Returns false on error.
- */
+ * Delete tag/object relations from the db
+ *
+ * @param array $ids The ids of the objects
+ * @return boolean Returns false on error.
+ */
public function purgeObjects(array $ids) {
if(count($ids) === 0) {
// job done ;)
@@ -620,10 +620,10 @@ class Tags implements ITags {
}
/**
- * Get favorites for an object type
- *
- * @return array|false An array of object ids.
- */
+ * Get favorites for an object type
+ *
+ * @return array|false An array of object ids.
+ */
public function getFavorites() {
if(!$this->userHasTag(ITags::TAG_FAVORITE, $this->user)) {
return [];
@@ -642,11 +642,11 @@ class Tags implements ITags {
}
/**
- * Add an object to favorites
- *
- * @param int $objid The id of the object
- * @return boolean
- */
+ * Add an object to favorites
+ *
+ * @param int $objid The id of the object
+ * @return boolean
+ */
public function addToFavorites($objid) {
if(!$this->userHasTag(ITags::TAG_FAVORITE, $this->user)) {
$this->add(ITags::TAG_FAVORITE);
@@ -655,22 +655,22 @@ class Tags implements ITags {
}
/**
- * Remove an object from favorites
- *
- * @param int $objid The id of the object
- * @return boolean
- */
+ * Remove an object from favorites
+ *
+ * @param int $objid The id of the object
+ * @return boolean
+ */
public function removeFromFavorites($objid) {
return $this->unTag($objid, ITags::TAG_FAVORITE);
}
/**
- * Creates a tag/object relation.
- *
- * @param int $objid The id of the object
- * @param string $tag The id or name of the tag
- * @return boolean Returns false on error.
- */
+ * Creates a tag/object relation.
+ *
+ * @param int $objid The id of the object
+ * @param string $tag The id or name of the tag
+ * @return boolean Returns false on error.
+ */
public function tagAs($objid, $tag) {
if(is_string($tag) && !is_numeric($tag)) {
$tag = trim($tag);
@@ -704,12 +704,12 @@ class Tags implements ITags {
}
/**
- * Delete single tag/object relation from the db
- *
- * @param int $objid The id of the object
- * @param string $tag The id or name of the tag
- * @return boolean
- */
+ * Delete single tag/object relation from the db
+ *
+ * @param int $objid The id of the object
+ * @param string $tag The id or name of the tag
+ * @return boolean
+ */
public function unTag($objid, $tag) {
if(is_string($tag) && !is_numeric($tag)) {
$tag = trim($tag);
@@ -739,11 +739,11 @@ class Tags implements ITags {
}
/**
- * Delete tags from the database.
- *
- * @param string[]|integer[] $names An array of tags (names or IDs) to delete
- * @return bool Returns false on error
- */
+ * Delete tags from the database.
+ *
+ * @param string[]|integer[] $names An array of tags (names or IDs) to delete
+ * @return bool Returns false on error
+ */
public function delete($names) {
if(!is_array($names)) {
$names = [$names];
@@ -809,11 +809,11 @@ class Tags implements ITags {
}
/**
- * Get a tag's ID.
- *
- * @param string $name The tag name to look for.
- * @return string|bool The tag's id or false if no matching tag is found.
- */
+ * Get a tag's ID.
+ *
+ * @param string $name The tag name to look for.
+ * @return string|bool The tag's id or false if no matching tag is found.
+ */
private function getTagId($name) {
$key = $this->array_searchi($name, $this->tags);
if ($key !== false) {
@@ -823,34 +823,34 @@ class Tags implements ITags {
}
/**
- * Get a tag by its name.
- *
- * @param string $name The tag name.
- * @return integer|bool The tag object's offset within the $this->tags
- * array or false if it doesn't exist.
- */
+ * Get a tag by its name.
+ *
+ * @param string $name The tag name.
+ * @return integer|bool The tag object's offset within the $this->tags
+ * array or false if it doesn't exist.
+ */
private function getTagByName($name) {
return $this->array_searchi($name, $this->tags, 'getName');
}
/**
- * Get a tag by its ID.
- *
- * @param string $id The tag ID to look for.
- * @return integer|bool The tag object's offset within the $this->tags
- * array or false if it doesn't exist.
- */
+ * Get a tag by its ID.
+ *
+ * @param string $id The tag ID to look for.
+ * @return integer|bool The tag object's offset within the $this->tags
+ * array or false if it doesn't exist.
+ */
private function getTagById($id) {
return $this->array_searchi($id, $this->tags, 'getId');
}
/**
- * Returns an array mapping a given tag's properties to its values:
- * ['id' => 0, 'name' = 'Tag', 'owner' = 'User', 'type' => 'tagtype']
- *
- * @param Tag $tag The tag that is going to be mapped
- * @return array
- */
+ * Returns an array mapping a given tag's properties to its values:
+ * ['id' => 0, 'name' = 'Tag', 'owner' = 'User', 'type' => 'tagtype']
+ *
+ * @param Tag $tag The tag that is going to be mapped
+ * @return array
+ */
private function tagMap(Tag $tag) {
return [
'id' => $tag->getId(),
diff --git a/lib/private/TemplateLayout.php b/lib/private/TemplateLayout.php
index 5562d4b5e2a..7c4d72e30ab 100644
--- a/lib/private/TemplateLayout.php
+++ b/lib/private/TemplateLayout.php
@@ -249,7 +249,7 @@ class TemplateLayout extends \OC_Template {
/**
* @param string $path
- * @param string $file
+ * @param string $file
* @return string
*/
protected function getVersionHashSuffix($path = false, $file = false) {
diff --git a/lib/private/User/Backend.php b/lib/private/User/Backend.php
index 8fa2f3018b2..7d705811eaf 100644
--- a/lib/private/User/Backend.php
+++ b/lib/private/User/Backend.php
@@ -60,12 +60,12 @@ abstract class Backend implements UserInterface {
];
/**
- * Get all supported actions
- * @return int bitwise-or'ed actions
- *
- * Returns the supported actions as int to be
- * compared with self::CREATE_USER etc.
- */
+ * Get all supported actions
+ * @return int bitwise-or'ed actions
+ *
+ * Returns the supported actions as int to be
+ * compared with self::CREATE_USER etc.
+ */
public function getSupportedActions() {
$actions = 0;
foreach($this->possibleActions AS $action => $methodName) {
@@ -78,13 +78,13 @@ abstract class Backend implements UserInterface {
}
/**
- * Check if backend implements actions
- * @param int $actions bitwise-or'ed actions
- * @return boolean
- *
- * Returns the supported actions as int to be
- * compared with self::CREATE_USER etc.
- */
+ * Check if backend implements actions
+ * @param int $actions bitwise-or'ed actions
+ * @return boolean
+ *
+ * Returns the supported actions as int to be
+ * compared with self::CREATE_USER etc.
+ */
public function implementsActions($actions) {
return (bool)($this->getSupportedActions() & $actions);
}
@@ -113,19 +113,19 @@ abstract class Backend implements UserInterface {
}
/**
- * check if a user exists
- * @param string $uid the username
- * @return boolean
- */
+ * check if a user exists
+ * @param string $uid the username
+ * @return boolean
+ */
public function userExists($uid) {
return false;
}
/**
- * get the user's home directory
- * @param string $uid the username
- * @return boolean
- */
+ * get the user's home directory
+ * @param string $uid the username
+ * @return boolean
+ */
public function getHome($uid) {
return false;
}
diff --git a/lib/private/legacy/template/functions.php b/lib/private/legacy/template/functions.php
index f2f737baf9a..44fa9e52dd2 100644
--- a/lib/private/legacy/template/functions.php
+++ b/lib/private/legacy/template/functions.php
@@ -45,7 +45,7 @@ function p($string) {
* Prints a <link> tag for loading css
* @param string $href the source URL, ignored when empty
* @param string $opts, additional optional options
-*/
+ */
function emit_css_tag($href, $opts = '') {
$s='<link rel="stylesheet"';
if (!empty($href)) {
@@ -60,7 +60,7 @@ function emit_css_tag($href, $opts = '') {
/**
* Prints all tags for CSS loading
* @param array $obj all the script information from template
-*/
+ */
function emit_css_loading_tags($obj) {
foreach($obj['cssfiles'] as $css) {
emit_css_tag($css);
@@ -74,7 +74,7 @@ function emit_css_loading_tags($obj) {
* Prints a <script> tag with nonce and defer depending on config
* @param string $src the source URL, ignored when empty
* @param string $script_content the inline script content, ignored when empty
-*/
+ */
function emit_script_tag($src, $script_content='') {
$defer_str=' defer';
$s='<script nonce="' . \OC::$server->getContentSecurityPolicyNonceManager()->getNonce() . '"';
@@ -95,7 +95,7 @@ function emit_script_tag($src, $script_content='') {
/**
* Print all <script> tags for loading JS
* @param array $obj all the script information from template
-*/
+ */
function emit_script_loading_tags($obj) {
foreach($obj['jsfiles'] as $jsfile) {
emit_script_tag($jsfile, '');
diff --git a/lib/public/App.php b/lib/public/App.php
index 9b30ef4cf93..cdf66522d41 100644
--- a/lib/public/App.php
+++ b/lib/public/App.php
@@ -55,7 +55,7 @@ class App {
* @return void
* @since 4.0.0
* @deprecated 14.0.0 Use settings section in appinfo.xml to register personal admin sections
- */
+ */
public static function registerPersonal( $app, $page ) {
\OC_App::registerPersonal( $app, $page );
}
@@ -79,7 +79,7 @@ class App {
* @return array|null
* @deprecated 14.0.0 ise \OC::$server->getAppManager()->getAppInfo($appId)
* @since 4.0.0
- */
+ */
public static function getAppInfo( $app, $path=false ) {
return \OC_App::getAppInfo( $app, $path);
}
diff --git a/lib/public/AppFramework/ApiController.php b/lib/public/AppFramework/ApiController.php
index d09a2d5c290..2ebe219444a 100644
--- a/lib/public/AppFramework/ApiController.php
+++ b/lib/public/AppFramework/ApiController.php
@@ -55,7 +55,7 @@ abstract class ApiController extends Controller {
* defaults to 'Authorization, Content-Type, Accept'
* @param int $corsMaxAge number in seconds how long a preflighted OPTIONS
* request should be cached, defaults to 1728000 seconds
- * @since 7.0.0
+ * @since 7.0.0
*/
public function __construct($appName,
IRequest $request,
@@ -76,7 +76,7 @@ abstract class ApiController extends Controller {
* @NoAdminRequired
* @NoCSRFRequired
* @PublicPage
- * @since 7.0.0
+ * @since 7.0.0
*/
public function preflightedCors() {
if(isset($this->request->server['HTTP_ORIGIN'])) {
diff --git a/lib/public/BackgroundJob/Job.php b/lib/public/BackgroundJob/Job.php
index b5b920338df..803a06ae176 100644
--- a/lib/public/BackgroundJob/Job.php
+++ b/lib/public/BackgroundJob/Job.php
@@ -60,7 +60,7 @@ abstract class Job implements IJob {
/**
* The function to prepare the execution of the job.
-
+ *
*
* @param IJobList $jobList
* @param ILogger|null $logger
diff --git a/lib/public/ITagManager.php b/lib/public/ITagManager.php
index 960ae6f2f3b..46e1ba06297 100644
--- a/lib/public/ITagManager.php
+++ b/lib/public/ITagManager.php
@@ -59,6 +59,6 @@ interface ITagManager {
* logged in user
* @return \OCP\ITags
* @since 6.0.0 - parameter $includeShared and $userId were added in 8.0.0
- */
+ */
public function load($type, $defaultTags = [], $includeShared = false, $userId = null);
}
diff --git a/lib/public/IUserManager.php b/lib/public/IUserManager.php
index 7985c1bd6f4..33e90a617a6 100644
--- a/lib/public/IUserManager.php
+++ b/lib/public/IUserManager.php
@@ -50,11 +50,11 @@ namespace OCP;
*/
interface IUserManager {
/**
- * register a user backend
- *
- * @param \OCP\UserInterface $backend
- * @since 8.0.0
- */
+ * register a user backend
+ *
+ * @param \OCP\UserInterface $backend
+ * @since 8.0.0
+ */
public function registerBackend($backend);
/**
diff --git a/lib/public/User/Backend/ABackend.php b/lib/public/User/Backend/ABackend.php
index 6c691ef1fce..a57a561369b 100644
--- a/lib/public/User/Backend/ABackend.php
+++ b/lib/public/User/Backend/ABackend.php
@@ -3,7 +3,7 @@
declare(strict_types=1);
/**
-* @copyright Copyright (c) 2018 Roeland Jago Douma <roeland@famdouma.nl>
+ * @copyright Copyright (c) 2018 Roeland Jago Douma <roeland@famdouma.nl>
*
* @author Christoph Wurst <christoph@winzerhof-wurst.at>
* @author Roeland Jago Douma <roeland@famdouma.nl>
diff --git a/tests/lib/Activity/ManagerTest.php b/tests/lib/Activity/ManagerTest.php
index b52b12a7e8c..1f616e062b7 100644
--- a/tests/lib/Activity/ManagerTest.php
+++ b/tests/lib/Activity/ManagerTest.php
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
-*/
+ */
namespace Test\Activity;
diff --git a/tests/lib/AppFramework/Db/EntityTest.php b/tests/lib/AppFramework/Db/EntityTest.php
index 43770eba17a..8676bf74cb0 100644
--- a/tests/lib/AppFramework/Db/EntityTest.php
+++ b/tests/lib/AppFramework/Db/EntityTest.php
@@ -1,25 +1,25 @@
<?php
/**
-* ownCloud - App Framework
-*
-* @author Bernhard Posselt
-* @copyright 2012 Bernhard Posselt dev@bernhard-posselt.com
-*
-* 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,
-* 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
-*
-*/
+ * ownCloud - App Framework
+ *
+ * @author Bernhard Posselt
+ * @copyright 2012 Bernhard Posselt dev@bernhard-posselt.com
+ *
+ * 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,
+ * 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
namespace Test\AppFramework\Db;
diff --git a/tests/lib/Collaboration/Collaborators/UserPluginTest.php b/tests/lib/Collaboration/Collaborators/UserPluginTest.php
index ff916d63b38..f279ada254b 100644
--- a/tests/lib/Collaboration/Collaborators/UserPluginTest.php
+++ b/tests/lib/Collaboration/Collaborators/UserPluginTest.php
@@ -27,6 +27,7 @@ use OC\Collaboration\Collaborators\SearchResult;
use OC\Collaboration\Collaborators\UserPlugin;
use OCP\Collaboration\Collaborators\ISearchResult;
use OCP\IConfig;
+use OCP\IGroup;
use OCP\IGroupManager;
use OCP\IUser;
use OCP\IUserManager;
@@ -93,9 +94,8 @@ class UserPluginTest extends TestCase {
$this->config->expects($this->any())
->method('getAppValue')
->willReturnCallback(
- function($appName, $key, $default)
- use ($shareWithGroupOnly, $shareeEnumeration, $shareeEnumerationLimitToGroup)
- {
+ function ($appName, $key, $default)
+ use ($shareWithGroupOnly, $shareeEnumeration, $shareeEnumerationLimitToGroup) {
if ($appName === 'core' && $key === 'shareapi_only_share_with_group_members') {
return $shareWithGroupOnly ? 'yes' : 'no';
} else if ($appName === 'core' && $key === 'shareapi_allow_share_dialog_user_enumeration') {
@@ -127,6 +127,16 @@ class UserPluginTest extends TestCase {
return $user;
}
+ public function getGroupMock($gid) {
+ $group = $this->createMock(IGroup::class);
+
+ $group->expects($this->any())
+ ->method('getGID')
+ ->willReturn($gid);
+
+ return $group;
+ }
+
public function dataGetUsers() {
return [
['test', false, true, [], [], [], [], true, false],
@@ -137,33 +147,33 @@ class UserPluginTest extends TestCase {
'test', false, true, [], [],
[
['label' => 'Test', 'value' => ['shareType' => Share::SHARE_TYPE_USER, 'shareWith' => 'test']],
- ], [], true, $this->getUserMock('test', 'Test')
+ ], [], true, $this->getUserMock('test', 'Test'),
],
[
'test', false, false, [], [],
[
['label' => 'Test', 'value' => ['shareType' => Share::SHARE_TYPE_USER, 'shareWith' => 'test']],
- ], [], true, $this->getUserMock('test', 'Test')
+ ], [], true, $this->getUserMock('test', 'Test'),
],
[
'test', true, true, [], [],
- [], [], true, $this->getUserMock('test', 'Test')
+ [], [], true, $this->getUserMock('test', 'Test'),
],
[
'test', true, false, [], [],
- [], [], true, $this->getUserMock('test', 'Test')
+ [], [], true, $this->getUserMock('test', 'Test'),
],
[
'test', true, true, ['test-group'], [['test-group', 'test', 2, 0, []]],
[
['label' => 'Test', 'value' => ['shareType' => Share::SHARE_TYPE_USER, 'shareWith' => 'test']],
- ], [], true, $this->getUserMock('test', 'Test')
+ ], [], true, $this->getUserMock('test', 'Test'),
],
[
'test', true, false, ['test-group'], [['test-group', 'test', 2, 0, []]],
[
['label' => 'Test', 'value' => ['shareType' => Share::SHARE_TYPE_USER, 'shareWith' => 'test']],
- ], [], true, $this->getUserMock('test', 'Test')
+ ], [], true, $this->getUserMock('test', 'Test'),
],
[
'test',
@@ -267,7 +277,7 @@ class UserPluginTest extends TestCase {
true,
['abc', 'xyz'],
[
- ['abc', 'test', 2, 0, ['test1' => 'Test One']],
+ ['abc', 'test', 2, 0, [$this->getUserMock('test1', 'Test One')]],
['xyz', 'test', 2, 0, []],
],
[],
@@ -283,7 +293,7 @@ class UserPluginTest extends TestCase {
false,
['abc', 'xyz'],
[
- ['abc', 'test', 2, 0, ['test1' => 'Test One']],
+ ['abc', 'test', 2, 0, [$this->getUserMock('test1', 'Test One')]],
['xyz', 'test', 2, 0, []],
],
[],
@@ -298,12 +308,12 @@ class UserPluginTest extends TestCase {
['abc', 'xyz'],
[
['abc', 'test', 2, 0, [
- 'test1' => 'Test One',
- 'test2' => 'Test Two',
+ $this->getUserMock('test1', 'Test One'),
+ $this->getUserMock('test2', 'Test Two'),
]],
['xyz', 'test', 2, 0, [
- 'test1' => 'Test One',
- 'test2' => 'Test Two',
+ $this->getUserMock('test1', 'Test One'),
+ $this->getUserMock('test2', 'Test Two'),
]],
],
[],
@@ -321,12 +331,12 @@ class UserPluginTest extends TestCase {
['abc', 'xyz'],
[
['abc', 'test', 2, 0, [
- 'test1' => 'Test One',
- 'test2' => 'Test Two',
+ $this->getUserMock('test1', 'Test One'),
+ $this->getUserMock('test2', 'Test Two'),
]],
['xyz', 'test', 2, 0, [
- 'test1' => 'Test One',
- 'test2' => 'Test Two',
+ $this->getUserMock('test1', 'Test One'),
+ $this->getUserMock('test2', 'Test Two'),
]],
],
[],
@@ -341,10 +351,10 @@ class UserPluginTest extends TestCase {
['abc', 'xyz'],
[
['abc', 'test', 2, 0, [
- 'test' => 'Test One',
+ $this->getUserMock('test', 'Test One'),
]],
['xyz', 'test', 2, 0, [
- 'test2' => 'Test Two',
+ $this->getUserMock('test2', 'Test Two'),
]],
],
[
@@ -363,10 +373,10 @@ class UserPluginTest extends TestCase {
['abc', 'xyz'],
[
['abc', 'test', 2, 0, [
- 'test' => 'Test One',
+ $this->getUserMock('test', 'Test One'),
]],
['xyz', 'test', 2, 0, [
- 'test2' => 'Test Two',
+ $this->getUserMock('test2', 'Test Two'),
]],
],
[
@@ -410,31 +420,36 @@ class UserPluginTest extends TestCase {
->method('getUser')
->willReturn($this->user);
- if(!$shareWithGroupOnly) {
+ if (!$shareWithGroupOnly) {
$this->userManager->expects($this->once())
->method('searchDisplayName')
->with($searchTerm, $this->limit, $this->offset)
->willReturn($userResponse);
} else {
+ $groups = array_combine($groupResponse, array_map(function ($gid) {
+ return $this->getGroupMock($gid);
+ }, $groupResponse));
if ($singleUser !== false) {
- $this->groupManager->expects($this->exactly(2))
- ->method('getUserGroupIds')
- ->withConsecutive(
- [$this->user],
- [$singleUser]
- )
+ $this->groupManager->method('getUserGroups')
+ ->with($this->user)
+ ->willReturn($groups);
+
+ $this->groupManager->method('getUserGroupIds')
+ ->with($singleUser)
->willReturn($groupResponse);
} else {
$this->groupManager->expects($this->once())
- ->method('getUserGroupIds')
+ ->method('getUserGroups')
->with($this->user)
- ->willReturn($groupResponse);
+ ->willReturn($groups);
}
- $this->groupManager->expects($this->exactly(sizeof($groupResponse)))
- ->method('displayNamesInGroup')
- ->with($this->anything(), $searchTerm, $this->limit, $this->offset)
- ->willReturnMap($userResponse);
+ foreach ($userResponse as $groupDefinition) {
+ [$gid, $search, $limit, $offset, $users] = $groupDefinition;
+ $groups[$gid]->method('searchDisplayName')
+ ->with($search, $limit, $offset)
+ ->willReturn($users);
+ }
}
if ($singleUser !== false) {
@@ -457,24 +472,24 @@ class UserPluginTest extends TestCase {
$inputUsers = [
'alice' => 'Alice',
'bob' => 'Bob',
- 'carol' => 'Carol'
+ 'carol' => 'Carol',
];
return [
[
$inputUsers,
['alice', 'carol'],
- 'bob'
+ 'bob',
],
[
$inputUsers,
['alice', 'bob', 'carol'],
- 'dave'
+ 'dave',
],
[
$inputUsers,
['alice', 'bob', 'carol'],
- null
- ]
+ null,
+ ],
];
}
@@ -489,8 +504,8 @@ class UserPluginTest extends TestCase {
$this->session->expects($this->once())
->method('getUser')
- ->willReturnCallback(function() use ($currentUserId) {
- if($currentUserId !== null) {
+ ->willReturnCallback(function () use ($currentUserId) {
+ if ($currentUserId !== null) {
return $this->getUserMock($currentUserId, $currentUserId);
}
return null;
@@ -506,55 +521,55 @@ class UserPluginTest extends TestCase {
'test',
['groupA'],
[
- [ 'uid' => 'test1', 'groups' => ['groupA'] ],
- [ 'uid' => 'test2', 'groups' => ['groupB'] ]
+ ['uid' => 'test1', 'groups' => ['groupA']],
+ ['uid' => 'test2', 'groups' => ['groupB']],
],
- ['test1']
+ ['test1'],
],
[
'test',
['groupA'],
[
- [ 'uid' => 'test1', 'groups' => ['groupA'] ],
- [ 'uid' => 'test2', 'groups' => ['groupB', 'groupA'] ]
+ ['uid' => 'test1', 'groups' => ['groupA']],
+ ['uid' => 'test2', 'groups' => ['groupB', 'groupA']],
],
- ['test1', 'test2']
+ ['test1', 'test2'],
],
[
'test',
['groupA'],
[
- [ 'uid' => 'test1', 'groups' => ['groupA', 'groupC'] ],
- [ 'uid' => 'test2', 'groups' => ['groupB', 'groupA'] ]
+ ['uid' => 'test1', 'groups' => ['groupA', 'groupC']],
+ ['uid' => 'test2', 'groups' => ['groupB', 'groupA']],
],
- ['test1', 'test2']
+ ['test1', 'test2'],
],
[
'test',
['groupC', 'groupB'],
[
- [ 'uid' => 'test1', 'groups' => ['groupA', 'groupC'] ],
- [ 'uid' => 'test2', 'groups' => ['groupB', 'groupA'] ]
+ ['uid' => 'test1', 'groups' => ['groupA', 'groupC']],
+ ['uid' => 'test2', 'groups' => ['groupB', 'groupA']],
],
- ['test1', 'test2']
+ ['test1', 'test2'],
],
[
'test',
[],
[
- [ 'uid' => 'test1', 'groups' => ['groupA'] ],
- [ 'uid' => 'test2', 'groups' => ['groupB', 'groupA'] ]
+ ['uid' => 'test1', 'groups' => ['groupA']],
+ ['uid' => 'test2', 'groups' => ['groupB', 'groupA']],
],
- []
+ [],
],
[
'test',
['groupC', 'groupB'],
[
- [ 'uid' => 'test1', 'groups' => [] ],
- [ 'uid' => 'test2', 'groups' => [] ]
+ ['uid' => 'test1', 'groups' => []],
+ ['uid' => 'test2', 'groups' => []],
],
- []
+ [],
],
];
}
@@ -570,7 +585,7 @@ class UserPluginTest extends TestCase {
}, $matchingUsers);
$mappedResult = array_map(function ($user) {
- return ['label' => $user, 'value' => [ 'shareType' => 0, 'shareWith' => $user ]];
+ return ['label' => $user, 'value' => ['shareType' => 0, 'shareWith' => $user]];
}, $result);
$this->userManager->expects($this->once())
diff --git a/tests/lib/Command/BackgroundJobsTest.php b/tests/lib/Command/BackgroundJobsTest.php
index fc506be644a..972daf51a7a 100644
--- a/tests/lib/Command/BackgroundJobsTest.php
+++ b/tests/lib/Command/BackgroundJobsTest.php
@@ -1,27 +1,27 @@
<?php
/**
-* The MIT License (MIT)
-*
-* Copyright (c) 2015 Christian Kampka <christian@kampka.net>
-*
-* Permission is hereby granted, free of charge, to any person obtaining a copy
-* of this software and associated documentation files (the "Software"), to deal
-* in the Software without restriction, including without limitation the rights
-* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-* copies of the Software, and to permit persons to whom the Software is
-* furnished to do so, subject to the following conditions:
-*
-* The above copyright notice and this permission notice shall be included in
-* all copies or substantial portions of the Software.
-*
-* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-* THE SOFTWARE.
-*/
+ * The MIT License (MIT)
+ *
+ * Copyright (c) 2015 Christian Kampka <christian@kampka.net>
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
namespace Test\Command;
diff --git a/tests/lib/Group/Dummy.php b/tests/lib/Group/Dummy.php
index 3be04159938..d687b6a3dda 100644
--- a/tests/lib/Group/Dummy.php
+++ b/tests/lib/Group/Dummy.php
@@ -1,24 +1,24 @@
<?php
/**
-* ownCloud
-*
-* @author Robin Appelman
-* @copyright 2012 Robin Appelman icewind@owncloud.com
-*
-* 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,
-* 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
-*
-*/
+ * ownCloud
+ *
+ * @author Robin Appelman
+ * @copyright 2012 Robin Appelman icewind@owncloud.com
+ *
+ * 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,
+ * 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
namespace Test\Group;
diff --git a/tests/lib/LargeFileHelperGetFileSizeTest.php b/tests/lib/LargeFileHelperGetFileSizeTest.php
index 530615f46b4..3ad8f5b8806 100644
--- a/tests/lib/LargeFileHelperGetFileSizeTest.php
+++ b/tests/lib/LargeFileHelperGetFileSizeTest.php
@@ -9,9 +9,9 @@
namespace Test;
/**
-* Tests whether LargeFileHelper is able to determine file size at all.
-* Large files are not considered yet.
-*/
+ * Tests whether LargeFileHelper is able to determine file size at all.
+ * Large files are not considered yet.
+ */
class LargeFileHelperGetFileSizeTest extends TestCase {
/** @var string */
protected $filename;
diff --git a/tests/lib/NaturalSortTest.php b/tests/lib/NaturalSortTest.php
index 1408a64dadd..30e439655d7 100644
--- a/tests/lib/NaturalSortTest.php
+++ b/tests/lib/NaturalSortTest.php
@@ -25,8 +25,8 @@ class NaturalSortTest extends \Test\TestCase {
}
/**
- * @dataProvider defaultCollatorDataProvider
- */
+ * @dataProvider defaultCollatorDataProvider
+ */
public function testDefaultCollatorCompare($array, $sorted)
{
$comparator = new \OC\NaturalSort(new \OC\NaturalSort_DefaultCollator());
@@ -190,10 +190,10 @@ class NaturalSortTest extends \Test\TestCase {
}
/**
- * Data provider for natural sorting with \OC\NaturalSort_DefaultCollator.
- * Must provide the same result as in core/js/tests/specs/coreSpec.js
- * @return array test cases
- */
+ * Data provider for natural sorting with \OC\NaturalSort_DefaultCollator.
+ * Must provide the same result as in core/js/tests/specs/coreSpec.js
+ * @return array test cases
+ */
public function defaultCollatorDataProvider()
{
return [
diff --git a/tests/lib/PublicNamespace/UtilTest.php b/tests/lib/PublicNamespace/UtilTest.php
index 7892501aaa0..a69d1069b9d 100644
--- a/tests/lib/PublicNamespace/UtilTest.php
+++ b/tests/lib/PublicNamespace/UtilTest.php
@@ -24,10 +24,10 @@ namespace Test\PublicNamespace;
class UtilTest extends \Test\TestCase {
/**
- * @dataProvider channelProvider
- *
- * @param string $channel
- */
+ * @dataProvider channelProvider
+ *
+ * @param string $channel
+ */
public function testOverrideChannel($channel) {
\OCP\Util::setChannel($channel);
$actual = \OCP\Util::getChannel($channel);
diff --git a/tests/lib/Share/Backend.php b/tests/lib/Share/Backend.php
index 1a443229dff..72451d54567 100644
--- a/tests/lib/Share/Backend.php
+++ b/tests/lib/Share/Backend.php
@@ -1,23 +1,23 @@
<?php
/**
-* ownCloud
-*
-* @author Michael Gapczynski
-* @copyright 2012 Michael Gapczynski mtgap@owncloud.com
-*
-* 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,
-* 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
-*/
+ * ownCloud
+ *
+ * @author Michael Gapczynski
+ * @copyright 2012 Michael Gapczynski mtgap@owncloud.com
+ *
+ * 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,
+ * 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
namespace Test\Share;
diff --git a/tests/lib/Share/HelperTest.php b/tests/lib/Share/HelperTest.php
index 2056e6bd1e2..941cb5b737d 100644
--- a/tests/lib/Share/HelperTest.php
+++ b/tests/lib/Share/HelperTest.php
@@ -1,23 +1,23 @@
<?php
/**
-* ownCloud
-*
-* @author Bjoern Schiessle
-* @copyright 2014 Bjoern Schiessle <schiessle@owncloud.com>
-*
-* 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,
-* 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
-*/
+ * ownCloud
+ *
+ * @author Bjoern Schiessle
+ * @copyright 2014 Bjoern Schiessle <schiessle@owncloud.com>
+ *
+ * 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,
+ * 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
namespace Test\Share;
diff --git a/tests/lib/Share/SearchResultSorterTest.php b/tests/lib/Share/SearchResultSorterTest.php
index 17869436428..63c3aead62e 100644
--- a/tests/lib/Share/SearchResultSorterTest.php
+++ b/tests/lib/Share/SearchResultSorterTest.php
@@ -1,23 +1,23 @@
<?php
/**
-* ownCloud
-*
-* @author Arthur Schiwon
-* @copyright 2014 Arthur Schiwon <blizzz@owncloud.com>
-*
-* 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,
-* 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
-*/
+ * ownCloud
+ *
+ * @author Arthur Schiwon
+ * @copyright 2014 Arthur Schiwon <blizzz@owncloud.com>
+ *
+ * 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,
+ * 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
namespace Test\Share;
diff --git a/tests/lib/Share/ShareTest.php b/tests/lib/Share/ShareTest.php
index c4464efa5dd..80dc8694b12 100644
--- a/tests/lib/Share/ShareTest.php
+++ b/tests/lib/Share/ShareTest.php
@@ -1,23 +1,23 @@
<?php
/**
-* ownCloud
-*
-* @author Michael Gapczynski
-* @copyright 2012 Michael Gapczynski mtgap@owncloud.com
-*
-* 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,
-* 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
-*/
+ * ownCloud
+ *
+ * @author Michael Gapczynski
+ * @copyright 2012 Michael Gapczynski mtgap@owncloud.com
+ *
+ * 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,
+ * 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
namespace Test\Share;
use OC\Share\Share;
diff --git a/tests/lib/SystemTag/SystemTagManagerTest.php b/tests/lib/SystemTag/SystemTagManagerTest.php
index 552e1627629..9eea05b7966 100644
--- a/tests/lib/SystemTag/SystemTagManagerTest.php
+++ b/tests/lib/SystemTag/SystemTagManagerTest.php
@@ -6,7 +6,7 @@
* later.
* See the COPYING-README file.
*
-*/
+ */
namespace Test\SystemTag;
diff --git a/tests/lib/SystemTag/SystemTagObjectMapperTest.php b/tests/lib/SystemTag/SystemTagObjectMapperTest.php
index 986686dc93e..b729079fbad 100644
--- a/tests/lib/SystemTag/SystemTagObjectMapperTest.php
+++ b/tests/lib/SystemTag/SystemTagObjectMapperTest.php
@@ -6,7 +6,7 @@
* later.
* See the COPYING-README file.
*
-*/
+ */
namespace Test\SystemTag;
diff --git a/tests/lib/TagsTest.php b/tests/lib/TagsTest.php
index 463ec5809dd..a789d07b12e 100644
--- a/tests/lib/TagsTest.php
+++ b/tests/lib/TagsTest.php
@@ -1,24 +1,24 @@
<?php
/**
-* ownCloud
-*
-* @author Thomas Tanghus
-* @copyright 2012-13 Thomas Tanghus (thomas@tanghus.net)
-*
-* 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,
-* 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
-*
-*/
+ * ownCloud
+ *
+ * @author Thomas Tanghus
+ * @copyright 2012-13 Thomas Tanghus (thomas@tanghus.net)
+ *
+ * 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,
+ * 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
namespace Test;
use OCP\IUser;
@@ -261,8 +261,8 @@ class TagsTest extends \Test\TestCase {
}
/**
- * @depends testTagAs
- */
+ * @depends testTagAs
+ */
public function testUnTag() {
$objIds = [1, 2, 3, 4, 5, 6, 7, 8, 9];
diff --git a/tests/lib/User/AvatarUserDummy.php b/tests/lib/User/AvatarUserDummy.php
index 123825de50f..87e1cfc5f83 100644
--- a/tests/lib/User/AvatarUserDummy.php
+++ b/tests/lib/User/AvatarUserDummy.php
@@ -1,24 +1,24 @@
<?php
/**
-* ownCloud
-*
-* @author Arthur Schiwon
-* @copyright 2013 Arthur Schiwon blizzz@owncloud.com
-*
-* 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,
-* 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
-*
-*/
+ * ownCloud
+ *
+ * @author Arthur Schiwon
+ * @copyright 2013 Arthur Schiwon blizzz@owncloud.com
+ *
+ * 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,
+ * 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
namespace Test\User;
diff --git a/tests/lib/User/Backend.php b/tests/lib/User/Backend.php
index 1c7d482c480..3fb08777abb 100644
--- a/tests/lib/User/Backend.php
+++ b/tests/lib/User/Backend.php
@@ -1,24 +1,24 @@
<?php
/**
-* ownCloud
-*
-* @author Robin Appelman
-* @copyright 2012 Robin Appelman icewind@owncloud.com
-*
-* 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,
-* 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
-*
-*/
+ * ownCloud
+ *
+ * @author Robin Appelman
+ * @copyright 2012 Robin Appelman icewind@owncloud.com
+ *
+ * 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,
+ * 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
namespace Test\User;
diff --git a/tests/lib/User/DatabaseTest.php b/tests/lib/User/DatabaseTest.php
index 65d483734d9..3546cb17d2f 100644
--- a/tests/lib/User/DatabaseTest.php
+++ b/tests/lib/User/DatabaseTest.php
@@ -1,24 +1,24 @@
<?php
/**
-* ownCloud
-*
-* @author Robin Appelman
-* @copyright 2012 Robin Appelman icewind@owncloud.com
-*
-* 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,
-* 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
-*
-*/
+ * ownCloud
+ *
+ * @author Robin Appelman
+ * @copyright 2012 Robin Appelman icewind@owncloud.com
+ *
+ * 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,
+ * 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
namespace Test\User;
diff --git a/tests/lib/User/Dummy.php b/tests/lib/User/Dummy.php
index 7eb5cc41ba8..a543e7e58b6 100644
--- a/tests/lib/User/Dummy.php
+++ b/tests/lib/User/Dummy.php
@@ -1,24 +1,24 @@
<?php
/**
-* ownCloud
-*
-* @author Robin Appelman
-* @copyright 2012 Robin Appelman icewind@owncloud.com
-*
-* 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,
-* 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
-*
-*/
+ * ownCloud
+ *
+ * @author Robin Appelman
+ * @copyright 2012 Robin Appelman icewind@owncloud.com
+ *
+ * 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,
+ * 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
namespace Test\User;