Compare commits

...

44 Commits

Author SHA1 Message Date
Côme Chilliet a3f245359b fix: Remove static vars from core classes
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-13 13:10:54 +01:00
Côme Chilliet 6d110f5059 fix: Remove static vars from applications
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-13 13:10:25 +01:00
Côme Chilliet acf629d31c fix: Remove static vars from user_ldap
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-13 13:09:44 +01:00
Côme Chilliet 36614e023f fix: Remove static vars in TaskProcessing, TextProcessing, TextToImage
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-13 12:00:16 +01:00
Côme Chilliet 8725a904b8 fix: Remove static var in Memcache/Redis
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-13 11:58:29 +01:00
Côme Chilliet 31861e0162 fix: Remove static var in AppManager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-13 11:57:21 +01:00
Côme Chilliet 1405ee194c fix: Remove useless static property in OCP\Util
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-13 10:44:31 +01:00
Côme Chilliet aab803f8dc feat: Add a psalm plugin to forbid static properties and variables
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-13 10:26:28 +01:00
Côme Chilliet 91540a84ba feat: Add support for application namespaces in testing:static-hunt
Also fixed recursive globbing and added a few manual skip.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-13 09:11:13 +01:00
Côme Chilliet 5e337d28e6 feat: Add command in testing application to hunt for static properties
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-12 16:34:33 +01:00
Côme Chilliet 90146ee6fa fix: Remove static var in NaturalSort
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-12 16:32:21 +01:00
Côme Chilliet 4d08ffe5a9 fix: cleanup some of the static vars
We’re gonna need a psalm rule

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-12 13:04:38 +01:00
Côme Chilliet 1ee9a07912 fix: Change back base.php to have the same behavior as before
Isolated OC in its own file instead so that index.php can do finer init.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-12 12:22:17 +01:00
Carl Schwan 1d301dd4ba feat: enabled frankenphp worker mode
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-03-12 12:14:43 +01:00
Carl Schwan cd5c190de2 feat: frankenphp
To test:

1. Install frankenphp https://frankenphp.dev/docs/#rpm-packages
2. Install some extensions: sudo dnf in php-zts-intl  php-zts-apcu php-zts-pdo_sqlite php-zts-pdo php-zts-gd php-zts-zip
3. Make /var/lib/php-zts/session writable for your user
4. `frankenphp run`

This is only for the classic mode for now

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-03-12 12:12:53 +01:00
Carl Schwan 83956e9f04 Merge pull request #58854 from nextcloud/jtr/refactor-View-getLocalFile
refactor(view): `getLocalFile` path handling
2026-03-12 10:05:19 +01:00
Kate c8380b1b62 Merge pull request #58869 from nextcloud/fix/pwd-confirmation 2026-03-12 09:54:15 +01:00
Nextcloud bot 5ff62d5baf fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-03-12 00:19:26 +00:00
Josh eb5a9085ee Merge pull request #58855 from nextcloud/jtr/test-drop-testTouchFloat
tests - Fix `Implicit conversion from float 500.5 to int loses precision` in ViewTest
2026-03-11 15:07:57 -04:00
Benjamin Gaussorgues 3904da98e6 Merge pull request #58864 from nextcloud/fix/cached_exporter_hardening 2026-03-11 18:30:22 +01:00
Côme Chilliet 9b54383532 Merge pull request #58835 from nextcloud/chore/fix-merge-leftover
Remove leftover useless path assignements in View
2026-03-11 16:52:55 +01:00
Joas Schilling 78cfe3742a Merge pull request #58853 from nextcloud/bugfix/noid/remove-wildcard-csp
fix(videoverification): Remove CSP wildcard for video verification
2026-03-11 15:25:59 +01:00
Ferdinand Thiessen 9b54b06de5 fix(SecurityMiddleware): return header to distinguish error type
Currently we return a 403 (Forbidden) when the password confirmation
failed - which itself seems to be inappropriate as its basically a login
failing so a 401 (not authorized) is more appropriate.

This is especially a problem because APIs might return 403 internally
for good reason (e.g. user missing permission) but 401 would not be a
problem.

But as this is a breaking change so my solution to be able to
distinguish API error from password confirmation error is:

Add a header inside the response that marks failed password confirmation
`X-NC-Auth-NotConfirmed`.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-03-11 15:11:29 +01:00
Benjamin Gaussorgues 509784cff2 chore(metrics): harden Cached exporter
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-03-11 13:01:21 +01:00
Hamza f0f38fd04c Merge pull request #58862 from nextcloud/fix/add-note-example-contact
fix:(dav): add note to example contact
2026-03-11 12:19:41 +01:00
Hamza 9f5c3e39a7 fix:(dav): add note to example contact
Signed-off-by: Hamza <hamzamahjoubi221@gmail.com>
2026-03-11 11:21:37 +01:00
Joas Schilling a304a54775 Merge pull request #58836 from nextcloud/feat/noid/unify-generated-by-ai-tag-handling
feat(systemtags): Add methods to directly do "Generated by AI" tag
2026-03-11 10:02:20 +01:00
Josh 8895970019 test(ViewTest): disable Nextcloud not PHP - drop testTouchFloat()
Our interface contract (and implementations) in IStorage are:
`public function touch(string $path, ?int $mtime = null): bool {`

This wasn't always the case but it is today, so testTouchFloat() no longer makes sense; it's not testing our code, just PHP.

Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-03-10 22:12:42 -04:00
Josh 0a7420d0a4 chore(View): fixup for php-cs
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-03-10 21:40:44 -04:00
Nextcloud bot 1a70d192f3 fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-03-11 00:26:43 +00:00
Josh 14e837ce11 refactor(View): add typing to getAbsolutePath and clarify contract
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-03-10 19:42:16 -04:00
Josh af78da59bc refactor(View): improve readability of getLocalFile and resolvePath
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-03-10 19:21:47 -04:00
Joas Schilling dc529fa86d fix(videoverification): Remove CSP wildcard for video verification
spreed does it via AddContentSecurityPolicyEvent event by now

Signed-off-by: Joas Schilling <coding@schilljs.com>
2026-03-10 22:35:43 +01:00
Côme Chilliet a119716a7d Merge pull request #58826 from nextcloud/carl/code-cleaning-storage-cache
refactor(cache-storage): Make Storage and StorageGlobal psalm strict
2026-03-10 22:01:43 +01:00
Kate 44ec45e941 Merge pull request #58841 from nextcloud/chore/deps/haze-2.2.0 2026-03-10 19:22:20 +01:00
Robin Appelman 38a42d9ad4 Merge pull request #53733 from nextcloud/copy-all-permissions
fix: give target file all permissions on copy
2026-03-10 18:09:33 +01:00
provokateurin aa65c7598e chore(deps): Update haze to 2.2.0
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-03-10 16:25:56 +01:00
Robin Appelman cf124e7c75 fix: make objectstore copy consistent with changed local storage behavior
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-03-10 16:07:38 +01:00
Carl Schwan 783e2ac625 refactor(external-storage-services): Modernize code
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-03-10 15:27:46 +01:00
Robin Appelman 7dccf5f257 fix: give target file all permissions on copy
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-03-10 15:27:35 +01:00
Joas Schilling 1425df49d0 feat(systemtags): Add methods to directly do "Generated by AI" tag
Signed-off-by: Joas Schilling <coding@schilljs.com>
2026-03-10 15:19:30 +01:00
Côme Chilliet b0240a43af chore: Remove other useless assignment of 'path' key for FileInfo
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-10 15:12:06 +01:00
Côme Chilliet 347d786a14 chore: Remove useless assignement
Because of the order we merged PRs, this line was not removed while the
 value is not used anymore, let’s cleanup.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-10 15:09:54 +01:00
Carl Schwan 140bfa2d1f refactor(cache-storage): Make Storage and StorageGlobal psalm strict
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-03-10 14:20:31 +01:00
219 changed files with 2546 additions and 2329 deletions
+49
View File
@@ -0,0 +1,49 @@
localhost {
php_server {
worker index.php
}
log {
level ERROR
output stderr
}
encode gzip
redir /.well-known/carddav /remote.php/dav 301
redir /.well-known/caldav /remote.php/dav 301
# Rule: Maps most RFC 8615 compliant well-known URIs to our main frontend controller (/index.php) by default
@wellKnown {
path "/.well-known/"
not {
path /.well-known/acme-challenge
path /.well-known/pki-validation
}
}
rewrite @wellKnown /index.php
rewrite /ocm-provider/ /index.php
@forbidden {
path /.htaccess
path /data/*
path /config/*
path /db_structure
path /.xml
path /README
path /3rdparty/*
path /lib/*
path /templates/*
path /occ
path /build
path /tests
path /console.php
path /autotest
path /issue
path /indi
path /db_
path /console
}
respond @forbidden 404
}
+1 -1
View File
@@ -23,7 +23,7 @@ OC.L10N.register(
"Could not reload comments" : "Kon reactie niet opnieuw laden",
"Failed to mark comments as read" : "Kon reacties niet als gelezen markeren",
"Unable to load the comments list" : "Kan reactielijst niet laden",
"No comments yet, start the conversation!" : "Nog geen reacties, start de discussie!",
"No comments yet, start the conversation!" : "Nog geen reacties, start het gesprek!",
"No more messages" : "Geen berichten meer",
"Retry" : "Opnieuw proberen",
"_1 new comment_::_{unread} new comments_" : ["1 nieuwe reactie","{unread} nieuwe reacties"],
+1 -1
View File
@@ -21,7 +21,7 @@
"Could not reload comments" : "Kon reactie niet opnieuw laden",
"Failed to mark comments as read" : "Kon reacties niet als gelezen markeren",
"Unable to load the comments list" : "Kan reactielijst niet laden",
"No comments yet, start the conversation!" : "Nog geen reacties, start de discussie!",
"No comments yet, start the conversation!" : "Nog geen reacties, start het gesprek!",
"No more messages" : "Geen berichten meer",
"Retry" : "Opnieuw proberen",
"_1 new comment_::_{unread} new comments_" : ["1 nieuwe reactie","{unread} nieuwe reacties"],
@@ -15,6 +15,7 @@ use OCP\AppFramework\Services\IAppConfig;
use OCP\Files\AppData\IAppDataFactory;
use OCP\Files\IAppData;
use OCP\Files\NotFoundException;
use OCP\IL10N;
use Psr\Log\LoggerInterface;
use Symfony\Component\Uid\Uuid;
@@ -26,6 +27,7 @@ class ExampleContactService {
private readonly IAppConfig $appConfig,
private readonly LoggerInterface $logger,
private readonly CardDavBackend $cardDav,
private readonly IL10N $l,
) {
$this->appData = $appDataFactory->get(Application::APP_ID);
}
@@ -131,6 +133,9 @@ class ExampleContactService {
} else {
$vcard->add('REV', $newRev);
}
if (!$vcard->Note) {
$vcard->add('note', $this->l->t('This is an example contact'));
}
// Level 3 means that the document is invalid
// https://sabre.io/vobject/vcard/#validating-vcard
@@ -18,6 +18,7 @@ use OCP\Files\IAppData;
use OCP\Files\NotFoundException;
use OCP\Files\SimpleFS\ISimpleFile;
use OCP\Files\SimpleFS\ISimpleFolder;
use OCP\IL10N;
use PHPUnit\Framework\MockObject\MockObject;
use Psr\Log\LoggerInterface;
use Symfony\Component\Uid\Uuid;
@@ -31,6 +32,7 @@ class ExampleContactServiceTest extends TestCase {
protected LoggerInterface&MockObject $logger;
protected IAppConfig&MockObject $appConfig;
protected IAppData&MockObject $appData;
protected IL10N&MockObject $l;
protected function setUp(): void {
parent::setUp();
@@ -39,6 +41,7 @@ class ExampleContactServiceTest extends TestCase {
$this->appDataFactory = $this->createMock(IAppDataFactory::class);
$this->logger = $this->createMock(LoggerInterface::class);
$this->appConfig = $this->createMock(IAppConfig::class);
$this->l = $this->createMock((IL10N::class));
$this->appData = $this->createMock(IAppData::class);
$this->appDataFactory->method('get')
@@ -50,6 +53,7 @@ class ExampleContactServiceTest extends TestCase {
$this->appConfig,
$this->logger,
$this->cardDav,
$this->l,
);
}
+4
View File
@@ -122,6 +122,7 @@ OC.L10N.register(
"General" : "Yleiset",
"Sort favorites first" : "Järjestä suosikit ensiksi",
"Sort folders before files" : "Järjestä kansiot ennen tiedostoja",
"Enable folder tree view" : "Käytä kansiopuunäkymää",
"Default view" : "Oletusnäkymä",
"All files" : "Kaikki tiedostot",
"Personal files" : "Henkilökohtaiset tiedostot",
@@ -131,6 +132,8 @@ OC.L10N.register(
"Selection" : "Valinta",
"Select all files" : "Valitse kaikki tiedostot",
"Deselect all" : "Poista valinnat",
"Select or deselect" : "Valitse tai poista valinta",
"Select a range" : "Valitse väliltä",
"Navigation" : "Navigointi",
"Go to parent folder" : "Siirry ylätason kansioon",
"Go to file above" : "Siirry yllä olevaan tiedostoon",
@@ -139,6 +142,7 @@ OC.L10N.register(
"Go right in grid" : "Siirry oikealle ruudukossa",
"View" : "Näytä",
"Toggle grid view" : "Ruudukkonäkymä päälle/pois",
"Show those shortcuts" : "Näytä pikanäppäimet",
"Warnings" : "Varoitukset",
"Warn before changing a file extension" : "Varoita ennen tiedostopäätteen muuttamista",
"Warn before deleting a file" : "Varoita ennen tiedoston poistamista",
+4
View File
@@ -120,6 +120,7 @@
"General" : "Yleiset",
"Sort favorites first" : "Järjestä suosikit ensiksi",
"Sort folders before files" : "Järjestä kansiot ennen tiedostoja",
"Enable folder tree view" : "Käytä kansiopuunäkymää",
"Default view" : "Oletusnäkymä",
"All files" : "Kaikki tiedostot",
"Personal files" : "Henkilökohtaiset tiedostot",
@@ -129,6 +130,8 @@
"Selection" : "Valinta",
"Select all files" : "Valitse kaikki tiedostot",
"Deselect all" : "Poista valinnat",
"Select or deselect" : "Valitse tai poista valinta",
"Select a range" : "Valitse väliltä",
"Navigation" : "Navigointi",
"Go to parent folder" : "Siirry ylätason kansioon",
"Go to file above" : "Siirry yllä olevaan tiedostoon",
@@ -137,6 +140,7 @@
"Go right in grid" : "Siirry oikealle ruudukossa",
"View" : "Näytä",
"Toggle grid view" : "Ruudukkonäkymä päälle/pois",
"Show those shortcuts" : "Näytä pikanäppäimet",
"Warnings" : "Varoitukset",
"Warn before changing a file extension" : "Varoita ennen tiedostopäätteen muuttamista",
"Warn before deleting a file" : "Varoita ennen tiedoston poistamista",
@@ -14,19 +14,14 @@ use OCA\Files_External\Event\StorageUpdatedEvent;
use OCA\Files_External\Lib\StorageConfig;
use OCA\Files_External\MountConfig;
use OCP\IGroup;
use Override;
/**
* Service class to manage global external storage
*/
class GlobalStoragesService extends StoragesService {
/**
* Triggers $signal for all applicable users of the given
* storage
*
* @param StorageConfig $storage storage data
* @param string $signal signal to trigger
*/
protected function triggerHooks(StorageConfig $storage, $signal) {
#[Override]
protected function triggerHooks(StorageConfig $storage, $signal): void {
// FIXME: Use as expression in empty once PHP 5.4 support is dropped
$applicableUsers = $storage->getApplicableUsers();
$applicableGroups = $storage->getApplicableGroups();
@@ -55,15 +50,8 @@ class GlobalStoragesService extends StoragesService {
);
}
/**
* Triggers signal_create_mount or signal_delete_mount to
* accommodate for additions/deletions in applicableUsers
* and applicableGroups fields.
*
* @param StorageConfig $oldStorage old storage config
* @param StorageConfig $newStorage new storage config
*/
protected function triggerChangeHooks(StorageConfig $oldStorage, StorageConfig $newStorage) {
#[Override]
protected function triggerChangeHooks(StorageConfig $oldStorage, StorageConfig $newStorage): void {
// if mount point changed, it's like a deletion + creation
if ($oldStorage->getMountPoint() !== $newStorage->getMountPoint()) {
$this->eventDispatcher->dispatchTyped(new StorageDeletedEvent($oldStorage));
@@ -139,16 +127,13 @@ class GlobalStoragesService extends StoragesService {
}
}
/**
* Get the visibility type for this controller, used in validation
*
* @return int BackendService::VISIBILITY_* constants
*/
public function getVisibilityType() {
#[Override]
public function getVisibilityType(): int {
return BackendService::VISIBILITY_ADMIN;
}
protected function isApplicable(StorageConfig $config) {
#[Override]
protected function isApplicable(StorageConfig $config): bool {
return true;
}
@@ -157,16 +142,14 @@ class GlobalStoragesService extends StoragesService {
*
* @return StorageConfig[] map of storage id to storage config
*/
public function getStorageForAllUsers() {
public function getStorageForAllUsers(): array {
$mounts = $this->dbConfig->getAllMounts();
$configs = array_map([$this, 'getStorageConfigFromDBMount'], $mounts);
$configs = array_filter($configs, function ($config) {
return $config instanceof StorageConfig;
});
$keys = array_map(function (StorageConfig $config) {
return $config->getId();
}, $configs);
$keys = array_map(static fn (StorageConfig $config) => $config->getId(), $configs);
return array_combine($keys, $configs);
}
@@ -31,14 +31,10 @@ use Psr\Log\LoggerInterface;
/**
* Service class to manage external storage
*
* @psalm-import-type ExternalMountInfo from DBConfigService
*/
abstract class StoragesService {
/**
* @param BackendService $backendService
* @param DBConfigService $dbConfig
* @param IEventDispatcher $eventDispatcher
*/
public function __construct(
protected BackendService $backendService,
protected DBConfigService $dbConfig,
@@ -47,24 +43,21 @@ abstract class StoragesService {
) {
}
protected function readDBConfig() {
/**
* @return list<ExternalMountInfo>
*/
protected function readDBConfig(): array {
return $this->dbConfig->getAdminMounts();
}
protected function getStorageConfigFromDBMount(array $mount) {
$applicableUsers = array_filter($mount['applicable'], function ($applicable) {
return $applicable['type'] === DBConfigService::APPLICABLE_TYPE_USER;
});
$applicableUsers = array_map(function ($applicable) {
return $applicable['value'];
}, $applicableUsers);
protected function getStorageConfigFromDBMount(array $mount): ?StorageConfig {
$applicableUsers = array_filter($mount['applicable'], static fn (array $applicable): bool
=> $applicable['type'] === DBConfigService::APPLICABLE_TYPE_USER);
$applicableUsers = array_map(static fn (array $applicable) => $applicable['value'], $applicableUsers);
$applicableGroups = array_filter($mount['applicable'], function ($applicable) {
return $applicable['type'] === DBConfigService::APPLICABLE_TYPE_GROUP;
});
$applicableGroups = array_map(function ($applicable) {
return $applicable['value'];
}, $applicableGroups);
$applicableGroups = array_filter($mount['applicable'], static fn (array $applicable): bool
=> $applicable['type'] === DBConfigService::APPLICABLE_TYPE_GROUP);
$applicableGroups = array_map(static fn (array $applicable) => $applicable['value'], $applicableGroups);
try {
$config = $this->createStorage(
@@ -99,18 +92,14 @@ abstract class StoragesService {
/**
* Read the external storage config
*
* @return array map of storage id to storage config
* @return array<int, StorageConfig> map of storage id to storage config
*/
protected function readConfig() {
protected function readConfig(): array {
$mounts = $this->readDBConfig();
$configs = array_map([$this, 'getStorageConfigFromDBMount'], $mounts);
$configs = array_filter($configs, function ($config) {
return $config instanceof StorageConfig;
});
$configs = array_map($this->getStorageConfigFromDBMount(...), $mounts);
$configs = array_filter($configs);
$keys = array_map(function (StorageConfig $config) {
return $config->getId();
}, $configs);
$keys = array_map(static fn (StorageConfig $config): int => $config->getId(), $configs);
return array_combine($keys, $configs);
}
@@ -139,18 +128,15 @@ abstract class StoragesService {
/**
* Check whether this storage service should provide access to a storage
*
* @param StorageConfig $config
* @return bool
*/
abstract protected function isApplicable(StorageConfig $config);
abstract protected function isApplicable(StorageConfig $config): bool;
/**
* Gets all storages, valid or not
*
* @return StorageConfig[] array of storage configs
*/
public function getAllStorages() {
public function getAllStorages(): array {
return $this->readConfig();
}
@@ -159,18 +145,16 @@ abstract class StoragesService {
*
* @return StorageConfig[]
*/
public function getStorages() {
return array_filter($this->getAllStorages(), [$this, 'validateStorage']);
public function getStorages(): array {
return array_filter($this->getAllStorages(), $this->validateStorage(...));
}
/**
* Validate storage
* FIXME: De-duplicate with StoragesController::validate()
*
* @param StorageConfig $storage
* @return bool
*/
protected function validateStorage(StorageConfig $storage) {
protected function validateStorage(StorageConfig $storage): bool {
/** @var Backend */
$backend = $storage->getBackend();
/** @var AuthMechanism */
@@ -180,25 +164,19 @@ abstract class StoragesService {
// not permitted to use backend
return false;
}
if (!$authMechanism->isVisibleFor($this->getVisibilityType())) {
// not permitted to use auth mechanism
return false;
}
return true;
// permitted to use auth mechanism
return $authMechanism->isVisibleFor($this->getVisibilityType());
}
/**
* Get the visibility type for this controller, used in validation
*
* @return int BackendService::VISIBILITY_* constants
* @return BackendService::VISIBILITY_*
*/
abstract public function getVisibilityType();
abstract public function getVisibilityType(): int;
/**
* @return integer
*/
protected function getType() {
protected function getType(): int {
return DBConfigService::MOUNT_TYPE_ADMIN;
}
@@ -209,7 +187,7 @@ abstract class StoragesService {
*
* @return StorageConfig storage config, with added id
*/
public function addStorage(StorageConfig $newStorage) {
public function addStorage(StorageConfig $newStorage): StorageConfig {
$allStorages = $this->readConfig();
$configId = $this->dbConfig->addMount(
@@ -275,7 +253,7 @@ abstract class StoragesService {
?array $applicableUsers = null,
?array $applicableGroups = null,
?int $priority = null,
) {
): StorageConfig {
$backend = $this->backendService->getBackend($backendIdentifier);
if (!$backend) {
$backend = new InvalidBackend($backendIdentifier);
@@ -313,7 +291,7 @@ abstract class StoragesService {
* @param string $mountType hook mount type param
* @param array $applicableArray array of applicable users/groups for which to trigger the hook
*/
protected function triggerApplicableHooks($signal, $mountPoint, $mountType, $applicableArray): void {
protected function triggerApplicableHooks(string $signal, string $mountPoint, string $mountType, array $applicableArray): void {
$this->eventDispatcher->dispatchTyped(new InvalidateMountCacheEvent(null));
foreach ($applicableArray as $applicable) {
Util::emitHook(
@@ -335,7 +313,7 @@ abstract class StoragesService {
* @param StorageConfig $storage storage data
* @param string $signal signal to trigger
*/
abstract protected function triggerHooks(StorageConfig $storage, $signal);
abstract protected function triggerHooks(StorageConfig $storage, string $signal): void;
/**
* Triggers signal_create_mount or signal_delete_mount to
@@ -345,7 +323,7 @@ abstract class StoragesService {
* @param StorageConfig $oldStorage old storage data
* @param StorageConfig $newStorage new storage data
*/
abstract protected function triggerChangeHooks(StorageConfig $oldStorage, StorageConfig $newStorage);
abstract protected function triggerChangeHooks(StorageConfig $oldStorage, StorageConfig $newStorage): void;
/**
* Update storage to the configuration
@@ -355,7 +333,7 @@ abstract class StoragesService {
* @return StorageConfig storage config
* @throws NotFoundException if the given storage does not exist in the config
*/
public function updateStorage(StorageConfig $updatedStorage) {
public function updateStorage(StorageConfig $updatedStorage): StorageConfig {
$id = $updatedStorage->getId();
$existingMount = $this->dbConfig->getMountById($id);
@@ -435,7 +413,7 @@ abstract class StoragesService {
*
* @throws NotFoundException if no storage was found with the given id
*/
public function removeStorage(int $id) {
public function removeStorage(int $id): void {
$existingMount = $this->dbConfig->getMountById($id);
if (!is_array($existingMount)) {
@@ -454,29 +432,6 @@ abstract class StoragesService {
$this->updateOverwriteHomeFolders();
}
/**
* Construct the storage implementation
*
* @param StorageConfig $storageConfig
* @return int
*/
private function getStorageId(StorageConfig $storageConfig) {
try {
$class = $storageConfig->getBackend()->getStorageClass();
/** @var \OC\Files\Storage\Storage $storage */
$storage = new $class($storageConfig->getBackendOptions());
// auth mechanism should fire first
$storage = $storageConfig->getBackend()->wrapStorage($storage);
$storage = $storageConfig->getAuthMechanism()->wrapStorage($storage);
/** @var \OC\Files\Storage\Storage $storage */
return $storage->getStorageCache()->getNumericId();
} catch (\Exception $e) {
return -1;
}
}
public function updateOverwriteHomeFolders(): void {
$appIdsList = $this->appConfig->getValueArray(FilesApplication::APP_ID, ConfigLexicon::OVERWRITES_HOME_FOLDERS);
@@ -13,6 +13,7 @@ use OCP\IAppConfig;
use OCP\IGroupManager;
use OCP\IUser;
use OCP\IUserSession;
use Override;
/**
* Service class to read global storages applicable to the user
@@ -33,20 +34,8 @@ class UserGlobalStoragesService extends GlobalStoragesService {
$this->userSession = $userSession;
}
/**
* Replace config hash ID with real IDs, for migrating legacy storages
*
* @param StorageConfig[] $storages Storages with real IDs
* @param StorageConfig[] $storagesWithConfigHash Storages with config hash IDs
*/
protected function setRealStorageIds(array &$storages, array $storagesWithConfigHash) {
// as a read-only view, storage IDs don't need to be real
foreach ($storagesWithConfigHash as $storage) {
$storages[$storage->getId()] = $storage;
}
}
protected function readDBConfig() {
#[Override]
protected function readDBConfig(): array {
$userMounts = $this->dbConfig->getAdminMountsFor(DBConfigService::APPLICABLE_TYPE_USER, $this->getUser()->getUID());
$globalMounts = $this->dbConfig->getAdminMountsFor(DBConfigService::APPLICABLE_TYPE_GLOBAL, null);
$groups = $this->groupManager->getUserGroupIds($this->getUser());
@@ -58,18 +47,18 @@ class UserGlobalStoragesService extends GlobalStoragesService {
return array_merge($userMounts, $groupMounts, $globalMounts);
}
#[Override]
public function addStorage(StorageConfig $newStorage): never {
throw new \DomainException('UserGlobalStoragesService writing disallowed');
}
#[Override]
public function updateStorage(StorageConfig $updatedStorage): never {
throw new \DomainException('UserGlobalStoragesService writing disallowed');
}
/**
* @param integer $id
*/
public function removeStorage($id): never {
#[Override]
public function removeStorage(int $id): never {
throw new \DomainException('UserGlobalStoragesService writing disallowed');
}
@@ -79,7 +68,7 @@ class UserGlobalStoragesService extends GlobalStoragesService {
*
* @return StorageConfig[]
*/
public function getUniqueStorages() {
public function getUniqueStorages(): array {
$storages = $this->getStorages();
$storagesByMountpoint = [];
@@ -116,20 +105,17 @@ class UserGlobalStoragesService extends GlobalStoragesService {
* @param StorageConfig $storage
* @return int
*/
protected function getPriorityType(StorageConfig $storage) {
protected function getPriorityType(StorageConfig $storage): int {
$applicableUsers = $storage->getApplicableUsers();
$applicableGroups = $storage->getApplicableGroups();
if ($applicableUsers && $applicableUsers[0] !== 'all') {
return 2;
}
if ($applicableGroups) {
return 1;
}
return 0;
return $applicableGroups ? 1 : 0;
}
protected function isApplicable(StorageConfig $config) {
protected function isApplicable(StorageConfig $config): bool {
$applicableUsers = $config->getApplicableUsers();
$applicableGroups = $config->getApplicableGroups();
@@ -155,7 +141,7 @@ class UserGlobalStoragesService extends GlobalStoragesService {
* @param IUser|null $user user to get the storages for, if not set the currently logged in user will be used
* @return StorageConfig[] array of storage configs
*/
public function getAllStoragesForUser(?IUser $user = null) {
public function getAllStoragesForUser(?IUser $user = null): array {
if (is_null($user)) {
$user = $this->getUser();
}
@@ -12,10 +12,10 @@ use OCA\Files_External\Event\StorageCreatedEvent;
use OCA\Files_External\Event\StorageDeletedEvent;
use OCA\Files_External\Lib\StorageConfig;
use OCA\Files_External\MountConfig;
use OCA\Files_External\NotFoundException;
use OCP\EventDispatcher\IEventDispatcher;
use OCP\IAppConfig;
use OCP\IUserSession;
use Override;
/**
* Service class to manage user external storage
@@ -38,7 +38,8 @@ class UserStoragesService extends StoragesService {
parent::__construct($backendService, $dbConfig, $eventDispatcher, $appConfig);
}
protected function readDBConfig() {
#[Override]
protected function readDBConfig(): array {
return $this->dbConfig->getUserMountsFor(DBConfigService::APPLICABLE_TYPE_USER, $this->getUser()->getUID());
}
@@ -49,7 +50,7 @@ class UserStoragesService extends StoragesService {
* @param StorageConfig $storage storage data
* @param string $signal signal to trigger
*/
protected function triggerHooks(StorageConfig $storage, $signal) {
protected function triggerHooks(StorageConfig $storage, string $signal): void {
$user = $this->getUser()->getUID();
// trigger hook for the current user
@@ -69,7 +70,7 @@ class UserStoragesService extends StoragesService {
* @param StorageConfig $oldStorage old storage data
* @param StorageConfig $newStorage new storage data
*/
protected function triggerChangeHooks(StorageConfig $oldStorage, StorageConfig $newStorage) {
protected function triggerChangeHooks(StorageConfig $oldStorage, StorageConfig $newStorage): void {
// if mount point changed, it's like a deletion + creation
if ($oldStorage->getMountPoint() !== $newStorage->getMountPoint()) {
$this->eventDispatcher->dispatchTyped(new StorageDeletedEvent($oldStorage));
@@ -79,31 +80,19 @@ class UserStoragesService extends StoragesService {
}
}
protected function getType() {
#[Override]
protected function getType(): int {
return DBConfigService::MOUNT_TYPE_PERSONAL;
}
/**
* Add new storage to the configuration
*
* @param StorageConfig $newStorage storage attributes
*
* @return StorageConfig storage config, with added id
*/
public function addStorage(StorageConfig $newStorage) {
#[Override]
public function addStorage(StorageConfig $newStorage): StorageConfig {
$newStorage->setApplicableUsers([$this->getUser()->getUID()]);
return parent::addStorage($newStorage);
}
/**
* Update storage to the configuration
*
* @param StorageConfig $updatedStorage storage attributes
*
* @return StorageConfig storage config
* @throws NotFoundException if the given storage does not exist in the config
*/
public function updateStorage(StorageConfig $updatedStorage) {
#[Override]
public function updateStorage(StorageConfig $updatedStorage): StorageConfig {
// verify ownership through $this->isApplicable() and otherwise throws an exception
$this->getStorage($updatedStorage->getId());
@@ -111,20 +100,18 @@ class UserStoragesService extends StoragesService {
return parent::updateStorage($updatedStorage);
}
/**
* Get the visibility type for this controller, used in validation
*
* @return int BackendService::VISIBILITY_* constants
*/
#[Override]
public function getVisibilityType(): int {
return BackendService::VISIBILITY_PERSONAL;
}
#[Override]
protected function isApplicable(StorageConfig $config): bool {
return ($config->getApplicableUsers() === [$this->getUser()->getUID()]) && $config->getType() === StorageConfig::MOUNT_TYPE_PERSONAL;
}
public function removeStorage($id) {
#[Override]
public function removeStorage(int $id): void {
// verify ownership through $this->isApplicable() and otherwise throws an exception
$this->getStorage($id);
parent::removeStorage($id);
+3
View File
@@ -165,6 +165,7 @@ OC.L10N.register(
"Unshare" : "Lopeta jakaminen",
"Cannot copy, please copy the link manually" : "Kopioiminen ei onnistu. Kopioi linkki manuaalisesti",
"Copy internal link" : "Kopioi sisäinen linkki",
"For people who already have access" : "Henkilöille, joilla on jo käyttöoikeus",
"Internal link" : "Sisäinen linkki",
"Shared via link by {initiator}" : "Jaettu linkin kautta käyttäjältä {initiator}",
"File request ({label})" : "Tiedostopyyntö ({label})",
@@ -247,6 +248,7 @@ OC.L10N.register(
"Toggle list of others with access to this directory" : "Vaihda näkymää kansioon käyttöoikeuden omaavista käyttäjistä",
"Toggle list of others with access to this file" : "Vaihda näkymää tiedostoon käyttöoikeuden omaavista käyttäjistä",
"Shares" : "Jaot",
"Shares from apps or other sources which are not included in internal or external shares." : "Jaot muista sovelluksista tai lähteistä, jotka eivät sisälly sisäisiin tai ulkoisiin jakoihin.",
"Type names or teams" : "Kirjoita nimet tai tiimit",
"Type an email" : "Kirjoita sähköpostiosoite",
"Unable to load the shares list" : "Jakolistan haku epäonnistui",
@@ -255,6 +257,7 @@ OC.L10N.register(
"Shared with you by {owner}" : "{owner} jakoi tämän kanssasi",
"Internal shares" : "Sisäiset jaot",
"External shares" : "Ulkoiset jaot",
"Additional shares" : "Muut jaot",
"Link to a file" : "Linkki tiedostoon",
"_Accept share_::_Accept shares_" : ["Hyväksy jako","Hyväksy jaot"],
"Open in Files" : "Avaa tiedostosovelluksessa",
+3
View File
@@ -163,6 +163,7 @@
"Unshare" : "Lopeta jakaminen",
"Cannot copy, please copy the link manually" : "Kopioiminen ei onnistu. Kopioi linkki manuaalisesti",
"Copy internal link" : "Kopioi sisäinen linkki",
"For people who already have access" : "Henkilöille, joilla on jo käyttöoikeus",
"Internal link" : "Sisäinen linkki",
"Shared via link by {initiator}" : "Jaettu linkin kautta käyttäjältä {initiator}",
"File request ({label})" : "Tiedostopyyntö ({label})",
@@ -245,6 +246,7 @@
"Toggle list of others with access to this directory" : "Vaihda näkymää kansioon käyttöoikeuden omaavista käyttäjistä",
"Toggle list of others with access to this file" : "Vaihda näkymää tiedostoon käyttöoikeuden omaavista käyttäjistä",
"Shares" : "Jaot",
"Shares from apps or other sources which are not included in internal or external shares." : "Jaot muista sovelluksista tai lähteistä, jotka eivät sisälly sisäisiin tai ulkoisiin jakoihin.",
"Type names or teams" : "Kirjoita nimet tai tiimit",
"Type an email" : "Kirjoita sähköpostiosoite",
"Unable to load the shares list" : "Jakolistan haku epäonnistui",
@@ -253,6 +255,7 @@
"Shared with you by {owner}" : "{owner} jakoi tämän kanssasi",
"Internal shares" : "Sisäiset jaot",
"External shares" : "Ulkoiset jaot",
"Additional shares" : "Muut jaot",
"Link to a file" : "Linkki tiedostoon",
"_Accept share_::_Accept shares_" : ["Hyväksy jako","Hyväksy jaot"],
"Open in Files" : "Avaa tiedostosovelluksessa",
@@ -7,7 +7,6 @@
*/
namespace OCA\Files_Sharing\Controller;
use OC\Security\CSP\ContentSecurityPolicy;
use OC\ServerNotAvailableException;
use OCA\DAV\Connector\Sabre\PublicAuth;
use OCA\FederatedFileSharing\FederatedShareProvider;
@@ -93,15 +92,7 @@ class ShareController extends AuthPublicShareController {
$this->eventDispatcher->dispatchTyped(new BeforeTemplateRenderedEvent($this->share, BeforeTemplateRenderedEvent::SCOPE_PUBLIC_SHARE_AUTH));
$response = new TemplateResponse('core', 'publicshareauth', $templateParameters, 'guest');
if ($this->share->getSendPasswordByTalk()) {
$csp = new ContentSecurityPolicy();
$csp->addAllowedConnectDomain('*');
$csp->addAllowedMediaDomain('blob:');
$response->setContentSecurityPolicy($csp);
}
return $response;
return new TemplateResponse('core', 'publicshareauth', $templateParameters, 'guest');
}
/**
@@ -112,15 +103,7 @@ class ShareController extends AuthPublicShareController {
$this->eventDispatcher->dispatchTyped(new BeforeTemplateRenderedEvent($this->share, BeforeTemplateRenderedEvent::SCOPE_PUBLIC_SHARE_AUTH));
$response = new TemplateResponse('core', 'publicshareauth', $templateParameters, 'guest');
if ($this->share->getSendPasswordByTalk()) {
$csp = new ContentSecurityPolicy();
$csp->addAllowedConnectDomain('*');
$csp->addAllowedMediaDomain('blob:');
$response->setContentSecurityPolicy($csp);
}
return $response;
return new TemplateResponse('core', 'publicshareauth', $templateParameters, 'guest');
}
/**
@@ -131,15 +114,7 @@ class ShareController extends AuthPublicShareController {
$this->eventDispatcher->dispatchTyped(new BeforeTemplateRenderedEvent($this->share, BeforeTemplateRenderedEvent::SCOPE_PUBLIC_SHARE_AUTH));
$response = new TemplateResponse('core', 'publicshareauth', $templateParameters, 'guest');
if ($this->share->getSendPasswordByTalk()) {
$csp = new ContentSecurityPolicy();
$csp->addAllowedConnectDomain('*');
$csp->addAllowedMediaDomain('blob:');
$response->setContentSecurityPolicy($csp);
}
return $response;
return new TemplateResponse('core', 'publicshareauth', $templateParameters, 'guest');
}
/**
+1 -1
View File
@@ -4,7 +4,7 @@ OC.L10N.register(
"Profile" : "Profil",
"This application provides the profile" : "Denne applikation leverer profilen",
"Provides a customisable user profile interface." : "Leverer en brugerdefinerbar brugerprofil grænseflade.",
"Searching …" : "Søger ...",
"Searching …" : "Søger …",
"Not found" : "Ikke fundet",
"Insert" : "Indsæt",
"You have not added any info yet" : "Du har ikke tilføjet nogen information endnu",
+1 -1
View File
@@ -2,7 +2,7 @@
"Profile" : "Profil",
"This application provides the profile" : "Denne applikation leverer profilen",
"Provides a customisable user profile interface." : "Leverer en brugerdefinerbar brugerprofil grænseflade.",
"Searching …" : "Søger ...",
"Searching …" : "Søger …",
"Not found" : "Ikke fundet",
"Insert" : "Indsæt",
"You have not added any info yet" : "Du har ikke tilføjet nogen information endnu",
+5
View File
@@ -16,6 +16,11 @@
<types>
<authentication/>
</types>
<commands>
<command>OCA\Testing\Command\StaticHunt</command>
</commands>
<category>monitoring</category>
<bugs>https://github.com/nextcloud/server/issues</bugs>
<dependencies>
@@ -9,6 +9,7 @@ return array(
'Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php',
'OCA\\Testing\\AlternativeHomeUserBackend' => $baseDir . '/../lib/AlternativeHomeUserBackend.php',
'OCA\\Testing\\AppInfo\\Application' => $baseDir . '/../lib/AppInfo/Application.php',
'OCA\\Testing\\Command\\StaticHunt' => $baseDir . '/../lib/Command/StaticHunt.php',
'OCA\\Testing\\Controller\\ConfigController' => $baseDir . '/../lib/Controller/ConfigController.php',
'OCA\\Testing\\Controller\\LockingController' => $baseDir . '/../lib/Controller/LockingController.php',
'OCA\\Testing\\Controller\\RateLimitTestController' => $baseDir . '/../lib/Controller/RateLimitTestController.php',
@@ -24,6 +24,7 @@ class ComposerStaticInitTesting
'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php',
'OCA\\Testing\\AlternativeHomeUserBackend' => __DIR__ . '/..' . '/../lib/AlternativeHomeUserBackend.php',
'OCA\\Testing\\AppInfo\\Application' => __DIR__ . '/..' . '/../lib/AppInfo/Application.php',
'OCA\\Testing\\Command\\StaticHunt' => __DIR__ . '/..' . '/../lib/Command/StaticHunt.php',
'OCA\\Testing\\Controller\\ConfigController' => __DIR__ . '/..' . '/../lib/Controller/ConfigController.php',
'OCA\\Testing\\Controller\\LockingController' => __DIR__ . '/..' . '/../lib/Controller/LockingController.php',
'OCA\\Testing\\Controller\\RateLimitTestController' => __DIR__ . '/..' . '/../lib/Controller/RateLimitTestController.php',
+110
View File
@@ -0,0 +1,110 @@
<?php
declare(strict_types=1);
/**
* SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
namespace OCA\Testing\Command;
use OCP\App\IAppManager;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
class StaticHunt extends Command {
private const array SKIP_REGEX = [
'@/templates/.+.php$@',
'@/ajax/.+.php$@',
'@/register_command.php$@',
];
public function __construct(
private IAppManager $appManager,
) {
parent::__construct();
}
protected function configure() {
$this
->setName('testing:static-hunt')
->setDescription('Hunt for static properties in classes');
}
protected function execute(InputInterface $input, OutputInterface $output): int {
$folders = [
'' => __DIR__ . '/../../../../lib/private/legacy',
'\\OC' => __DIR__ . '/../../../../lib/private',
'\\OC\\Core' => __DIR__ . '/../../../../core',
];
$apps = $this->appManager->getAllAppsInAppsFolders();
foreach ($apps as $app) {
$info = $this->appManager->getAppInfo($app);
if (!isset($info['namespace'])) {
continue;
}
$folders['\\OCA\\' . $info['namespace']] = $this->appManager->getAppPath($app) . '/lib';
}
$stats = [
'classes' => 0,
'properties' => 0,
];
foreach ($folders as $namespace => $folder) {
$this->scanFolder($folder, $namespace, $output, $stats);
}
$output->writeln('<info>Found ' . $stats['properties'] . ' static properties spread among ' . $stats['classes'] . ' classes</info>');
return 0;
}
private function scanFolder(string $folder, string $namespace, OutputInterface $output, array &$stats): void {
$folder = realpath($folder);
$output->writeln('Folder ' . $folder, OutputInterface::VERBOSITY_VERBOSE);
foreach ($this->recursiveGlob($folder) as $filename) {
try {
$filename = realpath($filename);
if (($namespace === '\\OC') && str_contains($filename, 'lib/private/legacy')) {
// Skip legacy in OC as its scanned with an empty namespace separately
continue;
}
foreach (self::SKIP_REGEX as $skipRegex) {
if (preg_match($skipRegex, $filename)) {
continue 2;
}
}
$classname = $namespace . substr(str_replace('/', '\\', substr($filename, strlen($folder))), 0, -4);
$output->writeln('Class ' . $classname, OutputInterface::VERBOSITY_VERBOSE);
if (!class_exists($classname)) {
continue;
}
$rClass = new \ReflectionClass($classname);
$staticProperties = $rClass->getStaticProperties();
if (empty($staticProperties)) {
continue;
}
$stats['classes']++;
$output->writeln('<info># ' . str_replace(\OC::$SERVERROOT, '', $filename) . " $classname</info>");
foreach ($staticProperties as $property => $value) {
$propertyObject = $rClass->getProperty($property);
$stats['properties']++;
$output->write("$propertyObject");
}
$output->writeln('');
} catch (\Throwable $t) {
$output->writeln("$t");
}
}
}
private function recursiveGlob(string $path, int $depth = 1): \Generator {
$pattern = $path . str_repeat('/*', $depth);
yield from glob($pattern . '.php');
if (!empty(glob($pattern, GLOB_ONLYDIR))) {
yield from $this->recursiveGlob($path, $depth + 1);
}
}
}
@@ -17,7 +17,7 @@ use OCP\Security\IHasher;
use OCP\Security\ISecureRandom;
class BackupCodeStorage {
private static $CODE_LENGTH = 16;
private const CODE_LENGTH = 16;
public function __construct(
private BackupCodeMapper $mapper,
@@ -40,7 +40,7 @@ class BackupCodeStorage {
$uid = $user->getUID();
foreach (range(1, min([$number, 20])) as $i) {
$code = $this->random->generate(self::$CODE_LENGTH, ISecureRandom::CHAR_HUMAN_READABLE);
$code = $this->random->generate(self::CODE_LENGTH, ISecureRandom::CHAR_HUMAN_READABLE);
$dbCode = new BackupCode();
$dbCode->setUserId($uid);
+1 -2
View File
@@ -571,7 +571,7 @@ class Configuration {
*/
public function getConfigTranslationArray(): array {
//TODO: merge them into one representation
static $array = [
return [
'ldap_host' => 'ldapHost',
'ldap_port' => 'ldapPort',
'ldap_backup_host' => 'ldapBackupHost',
@@ -644,7 +644,6 @@ class Configuration {
'ldap_attr_anniversarydate' => 'ldapAttributeAnniversaryDate',
'ldap_attr_pronouns' => 'ldapAttributePronouns',
];
return $array;
}
/**
+13 -16
View File
@@ -16,7 +16,7 @@ use OCP\Util;
use Psr\Log\LoggerInterface;
class Wizard extends LDAPUtility {
protected static ?IL10N $l = null;
private IL10N $l;
protected ?\LDAP\Connection $cr = null;
protected WizardResult $result;
protected LoggerInterface $logger;
@@ -40,9 +40,7 @@ class Wizard extends LDAPUtility {
protected Access $access,
) {
parent::__construct($ldap);
if (is_null(static::$l)) {
static::$l = Server::get(IL10NFactory::class)->get('user_ldap');
}
$this->l = Server::get(IL10NFactory::class)->get('user_ldap');
$this->result = new WizardResult();
$this->logger = Server::get(LoggerInterface::class);
}
@@ -94,7 +92,7 @@ class Wizard extends LDAPUtility {
$filter = $this->configuration->ldapGroupFilter;
if (empty($filter)) {
$output = self::$l->n('%n group found', '%n groups found', 0);
$output = $this->l->n('%n group found', '%n groups found', 0);
$this->result->addChange('ldap_group_count', $output);
return $this->result;
}
@@ -110,9 +108,9 @@ class Wizard extends LDAPUtility {
}
if ($groupsTotal > 1000) {
$output = self::$l->t('> 1000 groups found');
$output = $this->l->t('> 1000 groups found');
} else {
$output = self::$l->n(
$output = $this->l->n(
'%n group found',
'%n groups found',
$groupsTotal
@@ -130,9 +128,9 @@ class Wizard extends LDAPUtility {
$usersTotal = $this->countEntries($filter, 'users');
if ($usersTotal > 1000) {
$output = self::$l->t('> 1000 users found');
$output = $this->l->t('> 1000 users found');
} else {
$output = self::$l->n(
$output = $this->l->n(
'%n user found',
'%n users found',
$usersTotal
@@ -216,7 +214,7 @@ class Wizard extends LDAPUtility {
}
}
throw new \Exception(self::$l->t('Could not detect user display name attribute. Please specify it yourself in advanced LDAP settings.'));
throw new \Exception($this->l->t('Could not detect user display name attribute. Please specify it yourself in advanced LDAP settings.'));
}
/**
@@ -431,7 +429,7 @@ class Wizard extends LDAPUtility {
natsort($groupNames);
$this->result->addOptions($dbKey, array_values($groupNames));
} else {
throw new \Exception(self::$l->t('Could not find the desired feature'));
throw new \Exception($this->l->t('Could not find the desired feature'));
}
$setFeatures = $this->configuration->$confKey;
@@ -1024,7 +1022,7 @@ class Wizard extends LDAPUtility {
$host = $this->configuration->ldapHost;
$hostInfo = parse_url((string)$host);
if (!is_string($host) || !$hostInfo) {
throw new \Exception(self::$l->t('Invalid Host'));
throw new \Exception($this->l->t('Invalid Host'));
}
$this->logger->debug(
'Wiz: Attempting to connect',
@@ -1032,7 +1030,7 @@ class Wizard extends LDAPUtility {
);
$cr = $this->ldap->connect($host, (string)$port);
if (!$this->ldap->isResource($cr)) {
throw new \Exception(self::$l->t('Invalid Host'));
throw new \Exception($this->l->t('Invalid Host'));
}
/** @var \LDAP\Connection $cr */
@@ -1219,7 +1217,7 @@ class Wizard extends LDAPUtility {
//sorting in the web UI. Therefore: array_values
$this->result->addOptions($dbkey, array_values($availableFeatures));
} else {
throw new \Exception(self::$l->t('Could not find the desired feature'));
throw new \Exception($this->l->t('Could not find the desired feature'));
}
$setFeatures = $this->configuration->$confkey;
@@ -1307,7 +1305,7 @@ class Wizard extends LDAPUtility {
* @return array<array{port:int,tls:bool}>
*/
private function getDefaultLdapPortSettings(): array {
static $settings = [
return [
['port' => 7636, 'tls' => false],
['port' => 636, 'tls' => false],
['port' => 7389, 'tls' => true],
@@ -1315,7 +1313,6 @@ class Wizard extends LDAPUtility {
['port' => 7389, 'tls' => false],
['port' => 389, 'tls' => false],
];
return $settings;
}
/**
+4 -3
View File
@@ -6,6 +6,7 @@ declare(strict_types=1);
* SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
namespace OCA\WorkflowEngine\Command;
use OCA\WorkflowEngine\Helper\ScopeContext;
@@ -43,11 +44,11 @@ class Index extends Command {
}
protected function mappedScope(string $scope): int {
static $scopes = [
return match($scope) {
'admin' => IManager::SCOPE_ADMIN,
'user' => IManager::SCOPE_USER,
];
return $scopes[$scope] ?? -1;
default => -1,
};
}
protected function execute(InputInterface $input, OutputInterface $output): int {
+8 -7
View File
@@ -65,6 +65,9 @@ class Manager implements IManager {
/** @var CappedMemoryCache<int[]> */
protected CappedMemoryCache $operationsByScope;
/** @var array<class-string<IOperation>, ScopeContext[]> $scopesByOperation */
private array $scopesByOperation = [];
public function __construct(
protected readonly IDBConnection $connection,
protected readonly ContainerInterface $container,
@@ -128,10 +131,8 @@ class Manager implements IManager {
* @return ScopeContext[]
*/
public function getAllConfiguredScopesForOperation(string $operationClass): array {
/** @var array<class-string<IOperation>, ScopeContext[]> $scopesByOperation */
static $scopesByOperation = [];
if (isset($scopesByOperation[$operationClass])) {
return $scopesByOperation[$operationClass];
if (isset($this->scopesByOperation[$operationClass])) {
return $this->scopesByOperation[$operationClass];
}
try {
@@ -152,7 +153,7 @@ class Manager implements IManager {
$query->setParameters(['operationClass' => $operationClass]);
$result = $query->executeQuery();
$scopesByOperation[$operationClass] = [];
$this->scopesByOperation[$operationClass] = [];
while ($row = $result->fetchAssociative()) {
$scope = new ScopeContext($row['type'], $row['value']);
@@ -160,10 +161,10 @@ class Manager implements IManager {
continue;
}
$scopesByOperation[$operationClass][$scope->getHash()] = $scope;
$this->scopesByOperation[$operationClass][$scope->getHash()] = $scope;
}
return $scopesByOperation[$operationClass];
return $this->scopesByOperation[$operationClass];
}
public function getAllOperations(ScopeContext $scopeContext): array {
-8
View File
@@ -3440,14 +3440,6 @@
<code><![CDATA[self::SCAN_RECURSIVE_INCOMPLETE]]></code>
</InvalidArgument>
</file>
<file src="lib/private/Files/Cache/Storage.php">
<InvalidNullableReturnType>
<code><![CDATA[array]]></code>
</InvalidNullableReturnType>
<NullableReturnStatement>
<code><![CDATA[self::getGlobalCache()->getStorageInfo($storageId)]]></code>
</NullableReturnStatement>
</file>
<file src="lib/private/Files/Config/MountProviderCollection.php">
<InvalidOperand>
<code><![CDATA[$user]]></code>
+54
View File
@@ -0,0 +1,54 @@
<?php
declare(strict_types=1);
/**
* SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
use PhpParser\Node\Stmt\Property;
use Psalm\CodeLocation;
use Psalm\IssueBuffer;
use Psalm\Plugin\EventHandler\AfterClassLikeVisitInterface;
use Psalm\Plugin\EventHandler\AfterStatementAnalysisInterface;
use Psalm\Plugin\EventHandler\Event\AfterClassLikeVisitEvent;
use Psalm\Plugin\EventHandler\Event\AfterStatementAnalysisEvent;
/**
* Complains about static property in classes and static vars in methods
*/
class StaticVarsChecker implements AfterClassLikeVisitInterface, AfterStatementAnalysisInterface {
public static function afterClassLikeVisit(AfterClassLikeVisitEvent $event): void {
$classLike = $event->getStmt();
$statementsSource = $event->getStatementsSource();
foreach ($classLike->stmts as $stmt) {
if ($stmt instanceof Property) {
if ($stmt->isStatic()) {
IssueBuffer::maybeAdd(
// ImpureStaticProperty is close enough, all static properties are impure to my eyes
new \Psalm\Issue\ImpureStaticProperty(
'Static property should not be used as they do not follow requests lifecycle',
new CodeLocation($statementsSource, $stmt),
)
);
}
}
}
}
public static function afterStatementAnalysis(AfterStatementAnalysisEvent $event): ?bool {
$stmt = $event->getStmt();
if ($stmt instanceof PhpParser\Node\Stmt\Static_) {
IssueBuffer::maybeAdd(
// Same logic
new \Psalm\Issue\ImpureStaticVariable(
'Static var should not be used as they do not follow requests lifecycle and are hard to reset',
new CodeLocation($event->getStatementsSource(), $stmt),
)
);
}
return null;
}
}
+23
View File
@@ -0,0 +1,23 @@
<?php
declare(strict_types=1);
/**
* SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
class StaticVarsTest {
public static $forbiddenStaticProperty;
protected static $forbiddenProtectedStaticProperty;
private static $forbiddenPrivateStaticProperty;
private static $forbiddenPrivateStaticPropertyWithValue = [];
public function normalFunction(): void {
static $forbiddenStaticVar = false;
}
public static function staticFunction(): void {
static $forbiddenStaticVar = false;
}
}
+2
View File
@@ -18,6 +18,8 @@ return (require __DIR__ . '/rector-shared.php')
$nextcloudDir . '/lib/private/Settings/AuthorizedGroupMapper.php',
$nextcloudDir . '/apps/settings/lib/Service/AuthorizedGroupService.php',
$nextcloudDir . '/lib/private/Files/Storage/Storage.php',
$nextcloudDir . '/lib/private/Files/Cache/Storage.php',
$nextcloudDir . '/lib/private/Files/Cache/StorageGlobal.php',
$nextcloudDir . '/lib/private/Files/Storage/Wrapper/Wrapper.php',
$nextcloudDir . '/build/psalm/ITypedQueryBuilderTest.php',
$nextcloudDir . '/lib/private/DB/QueryBuilder/TypedQueryBuilder.php',
@@ -23,7 +23,7 @@ use Symfony\Component\Console\Output\OutputInterface;
use Symfony\Component\Console\Question\ConfirmationQuestion;
class GenerateCommand extends Command implements CompletionAwareInterface {
protected static $_templateSimple
private const string TEMPLATE
= '<?php
declare(strict_types=1);
@@ -197,7 +197,7 @@ class {{classname}} extends SimpleMigrationStep {
$schemaBody,
date('Y')
];
$code = str_replace($placeHolders, $replacements, self::$_templateSimple);
$code = str_replace($placeHolders, $replacements, self::TEMPLATE);
$dir = $ms->getMigrationsDirectory();
$this->ensureMigrationDirExists($dir);
+1
View File
@@ -204,6 +204,7 @@ OC.L10N.register(
"Search people" : "Etsi ihmisiä",
"People" : "Ihmiset",
"Filter in current view" : "Suodata nykyisessä näkymässä",
"Search connected services" : "Etsi liitetyistä palveluista",
"Results" : "Tulokset",
"Load more results" : "Lataa lisää tuloksia",
"Search in" : "Etsi kohteesta",
+1
View File
@@ -202,6 +202,7 @@
"Search people" : "Etsi ihmisiä",
"People" : "Ihmiset",
"Filter in current view" : "Suodata nykyisessä näkymässä",
"Search connected services" : "Etsi liitetyistä palveluista",
"Results" : "Tulokset",
"Load more results" : "Lataa lisää tuloksia",
"Search in" : "Etsi kohteesta",
+1 -1
View File
@@ -281,7 +281,7 @@ OC.L10N.register(
"Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "Je bestanden zijn versleuteld. Het is niet mogelijk om je gegevens terug te krijgen als je wachtwoord wordt gereset. Als je niet zeker weer wat je moet doen, neem dan contact op met je beheerder voordat je verdergaat. Wil je echt verder gaan?",
"I know what I'm doing" : "Ik weet wat ik doe",
"Resetting password" : "Resetten wachtwoord",
"Schedule work & meetings, synced with all your devices." : "Plan je werk & afspraken, gesynced met al je toestellen.",
"Schedule work & meetings, synced with all your devices." : "Plan je werk & vergaderingen, gesynchroniseerd met al je apparaten.",
"Keep your colleagues and friends in one place without leaking their private info." : "Bewaar je collega's en vrienden op één plaats zonder hun persoonlijke gegevens te laten uitlekken.",
"Simple email app nicely integrated with Files, Contacts and Calendar." : "Simpele e-mailapp, handig geïntegreerd met Bestanden, Contactpersonen en Agenda.",
"Chatting, video calls, screen sharing, online meetings and web conferencing in your browser and with mobile apps." : "Chatten, videobellen, schermdelen, online vergaderingen en webconferenties - in de browser en met mobiele apps.",
+1 -1
View File
@@ -279,7 +279,7 @@
"Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "Je bestanden zijn versleuteld. Het is niet mogelijk om je gegevens terug te krijgen als je wachtwoord wordt gereset. Als je niet zeker weer wat je moet doen, neem dan contact op met je beheerder voordat je verdergaat. Wil je echt verder gaan?",
"I know what I'm doing" : "Ik weet wat ik doe",
"Resetting password" : "Resetten wachtwoord",
"Schedule work & meetings, synced with all your devices." : "Plan je werk & afspraken, gesynced met al je toestellen.",
"Schedule work & meetings, synced with all your devices." : "Plan je werk & vergaderingen, gesynchroniseerd met al je apparaten.",
"Keep your colleagues and friends in one place without leaking their private info." : "Bewaar je collega's en vrienden op één plaats zonder hun persoonlijke gegevens te laten uitlekken.",
"Simple email app nicely integrated with Files, Contacts and Calendar." : "Simpele e-mailapp, handig geïntegreerd met Bestanden, Contactpersonen en Agenda.",
"Chatting, video calls, screen sharing, online meetings and web conferencing in your browser and with mobile apps." : "Chatten, videobellen, schermdelen, online vergaderingen en webconferenties - in de browser en met mobiele apps.",
Generated
+31 -28
View File
@@ -2,11 +2,11 @@
"nodes": {
"crane": {
"locked": {
"lastModified": 1760924934,
"narHash": "sha256-tuuqY5aU7cUkR71sO2TraVKK2boYrdW3gCSXUkF4i44=",
"lastModified": 1763938834,
"narHash": "sha256-j8iB0Yr4zAvQLueCZ5abxfk6fnG/SJ5JnGUziETjwfg=",
"owner": "ipetkov",
"repo": "crane",
"rev": "c6b4d5308293d0d04fcfeee92705017537cad02f",
"rev": "d9e753122e51cee64eb8d2dddfe11148f339f5a2",
"type": "github"
},
"original": {
@@ -18,15 +18,15 @@
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1766661267,
"narHash": "sha256-QN1r/zNqvXHwWqlRAnRtFf4CQwIOJx58PtdExIzAw94=",
"owner": "edolstra",
"lastModified": 1767039857,
"narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=",
"owner": "NixOS",
"repo": "flake-compat",
"rev": "f275e157c50c3a9a682b4c9b4aa4db7a4cd3b5f2",
"rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab",
"type": "github"
},
"original": {
"owner": "edolstra",
"owner": "NixOS",
"repo": "flake-compat",
"type": "github"
}
@@ -57,11 +57,11 @@
]
},
"locked": {
"lastModified": 1764593611,
"narHash": "sha256-6SdexcO69Dlu14YN2xuB1A6JHWSrcqMj7Na9oK7IT2M=",
"lastModified": 1773062095,
"narHash": "sha256-u+cK9IoJokO4YzQwMc2s8Vti0RL/LVSrROOEn2opc5U=",
"owner": "nix-community",
"repo": "flakelight",
"rev": "0d63256401341f528dd628f1a8e96d3afecade7a",
"rev": "c99e4d5f40e578cb2d8f460ea2bbd5dc26316d24",
"type": "github"
},
"original": {
@@ -76,14 +76,17 @@
"mill-scale": "mill-scale",
"nixpkgs": [
"nixpkgs"
],
"phps": [
"phps"
]
},
"locked": {
"lastModified": 1768845737,
"narHash": "sha256-lbZkWotPUuZjH7MqupZCkzY7sFGaE1cvRcuju/n0ACE=",
"lastModified": 1773151599,
"narHash": "sha256-zcIsBArZ2Ax/7OLXSH7Q1ona+TY9vi5H2S71KxJuTIg=",
"ref": "refs/heads/main",
"rev": "036232285c06719c83f27c0786b8446850795694",
"revCount": 329,
"rev": "0105c60a094915f7fc1fb617bc967c32d7557d84",
"revCount": 373,
"type": "git",
"url": "https://codeberg.org/icewind/haze.git"
},
@@ -102,11 +105,11 @@
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1763591898,
"narHash": "sha256-aHSMj7CIa9EJYxdf05wOWRGp0KRsT/TAox7uwVSdDb8=",
"lastModified": 1772297202,
"narHash": "sha256-UEzHO/tCmhPhr8RpWtbm1MTa7ABobwt3nCjrcuDAPm0=",
"ref": "refs/heads/main",
"rev": "2d9b2da2c9f384f93ef977c48f8ee35ce586529b",
"revCount": 66,
"rev": "8690e1514863b934de12f2a503c9431d186ce30b",
"revCount": 68,
"type": "git",
"url": "https://codeberg.org/icewind/mill-scale.git"
},
@@ -117,11 +120,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1769089682,
"narHash": "sha256-9yA/LIuAVQq0lXelrZPjLuLVuZdm03p8tfmHhnDIkms=",
"lastModified": 1772822230,
"narHash": "sha256-yf3iYLGbGVlIthlQIk5/4/EQDZNNEmuqKZkQssMljuw=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "078d69f03934859a181e81ba987c2bb033eebfc5",
"rev": "71caefce12ba78d84fe618cf61644dce01cf3a96",
"type": "github"
},
"original": {
@@ -142,11 +145,11 @@
]
},
"locked": {
"lastModified": 1766935672,
"narHash": "sha256-XkSpJep7KTV1qwDz0qOnqar2Vj8iNvq38C4w2tYfbjo=",
"lastModified": 1772365008,
"narHash": "sha256-/ynkWKeZ1dyRIUkQas0AB35semWAwCbTKXu+/q+8MGg=",
"owner": "fossar",
"repo": "nix-phps",
"rev": "4628eecc30d4d25ffbff6ea4fbb30698dbdd3f71",
"rev": "f47eb877bf1c219809e4357eec2fdab8e3263b7b",
"type": "github"
},
"original": {
@@ -173,11 +176,11 @@
]
},
"locked": {
"lastModified": 1761964689,
"narHash": "sha256-Zo3LQQDz+64EQ9zor/WmeNTFLoZkjmhp0UY3G0D3seE=",
"lastModified": 1764557621,
"narHash": "sha256-kX5PoY8hQZ80+amMQgOO9t8Tc1JZ70gYRnzaVD4AA+o=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "63d22578600f70d293aede6bc737efef60ebd97f",
"rev": "93316876c2229460a5d6f5f052766cc4cef538ce",
"type": "github"
},
"original": {
+5 -1
View File
@@ -1,3 +1,4 @@
# The flake is compatible with >=stable30, so make sure to backport all changes to stable30 and up.
{
nixConfig = {
extra-substituters = [ "https://fossar.cachix.org" ];
@@ -16,7 +17,10 @@
};
haze = {
url = "git+https://codeberg.org/icewind/haze.git";
inputs.nixpkgs.follows = "nixpkgs";
inputs = {
nixpkgs.follows = "nixpkgs";
phps.follows = "phps";
};
};
};
+109 -72
View File
@@ -19,90 +19,127 @@ use OCP\Server;
use OCP\Template\ITemplateManager;
use Psr\Log\LoggerInterface;
try {
require_once __DIR__ . '/lib/base.php';
require_once __DIR__ . '/lib/OC.php';
OC::handleRequest();
} catch (ServiceUnavailableException $ex) {
Server::get(LoggerInterface::class)->error($ex->getMessage(), [
'app' => 'index',
'exception' => $ex,
]);
\OC::boot();
//show the user a detailed error page
Server::get(ITemplateManager::class)->printExceptionErrorPage($ex, 503);
} catch (HintException $ex) {
function cleanupStaticCrap() {
// FIXME needed because these use a static var
\OC_Hook::clear();
\OC_Util::$styles = [];
\OC_Util::$headers = [];
\OC_User::setIncognitoMode(false);
\OC_User::$_setupedBackends = [];
\OC_App::reset();
\OC_Helper::reset();
}
$handler = static function () {
try {
Server::get(ITemplateManager::class)->printErrorPage($ex->getMessage(), $ex->getHint(), 503);
} catch (Exception $ex2) {
// In worker mode, script name is empty in FrankenPHP
if ($_SERVER['SCRIPT_NAME'] === '') {
$_SERVER['SCRIPT_NAME'] = $_SERVER['PHP_SELF'];
}
cleanupStaticCrap();
OC::init();
OC::handleRequest();
} catch (ServiceUnavailableException $ex) {
Server::get(LoggerInterface::class)->error($ex->getMessage(), [
'app' => 'index',
'exception' => $ex,
]);
//show the user a detailed error page
Server::get(ITemplateManager::class)->printExceptionErrorPage($ex, 503);
} catch (HintException $ex) {
try {
Server::get(ITemplateManager::class)->printErrorPage($ex->getMessage(), $ex->getHint(), 503);
} catch (Exception $ex2) {
try {
Server::get(LoggerInterface::class)->error($ex->getMessage(), [
'app' => 'index',
'exception' => $ex,
]);
Server::get(LoggerInterface::class)->error($ex2->getMessage(), [
'app' => 'index',
'exception' => $ex2,
]);
} catch (Throwable $e) {
// no way to log it properly - but to avoid a white page of death we try harder and ignore this one here
}
//show the user a detailed error page
Server::get(ITemplateManager::class)->printExceptionErrorPage($ex, 500);
}
} catch (LoginException $ex) {
$request = Server::get(IRequest::class);
/**
* Routes with the @CORS annotation and other API endpoints should
* not return a webpage, so we only print the error page when html is accepted,
* otherwise we reply with a JSON array like the SecurityMiddleware would do.
*/
if (stripos($request->getHeader('Accept'), 'html') === false) {
http_response_code(401);
header('Content-Type: application/json; charset=utf-8');
echo json_encode(['message' => $ex->getMessage()]);
exit();
}
Server::get(ITemplateManager::class)->printErrorPage($ex->getMessage(), $ex->getMessage(), 401);
} catch (MaxDelayReached $ex) {
$request = Server::get(IRequest::class);
/**
* Routes with the @CORS annotation and other API endpoints should
* not return a webpage, so we only print the error page when html is accepted,
* otherwise we reply with a JSON array like the BruteForceMiddleware would do.
*/
if (stripos($request->getHeader('Accept'), 'html') === false) {
http_response_code(429);
header('Content-Type: application/json; charset=utf-8');
echo json_encode(['message' => $ex->getMessage()]);
exit();
}
http_response_code(429);
Server::get(ITemplateManager::class)->printGuestPage('core', '429');
} catch (Exception $ex) {
Server::get(LoggerInterface::class)->error($ex->getMessage(), [
'app' => 'index',
'exception' => $ex,
]);
//show the user a detailed error page
Server::get(ITemplateManager::class)->printExceptionErrorPage($ex, 500);
} catch (Error $ex) {
try {
Server::get(LoggerInterface::class)->error($ex->getMessage(), [
'app' => 'index',
'exception' => $ex,
]);
Server::get(LoggerInterface::class)->error($ex2->getMessage(), [
'app' => 'index',
'exception' => $ex2,
]);
} catch (Throwable $e) {
// no way to log it properly - but to avoid a white page of death we try harder and ignore this one here
}
} catch (Error $e) {
http_response_code(500);
header('Content-Type: text/plain; charset=utf-8');
print("Internal Server Error\n\n");
print("The server encountered an internal error and was unable to complete your request.\n");
print("Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report.\n");
print("More details can be found in the webserver log.\n");
//show the user a detailed error page
throw $ex;
}
Server::get(ITemplateManager::class)->printExceptionErrorPage($ex, 500);
}
} catch (LoginException $ex) {
$request = Server::get(IRequest::class);
/**
* Routes with the @CORS annotation and other API endpoints should
* not return a webpage, so we only print the error page when html is accepted,
* otherwise we reply with a JSON array like the SecurityMiddleware would do.
*/
if (stripos($request->getHeader('Accept'), 'html') === false) {
http_response_code(401);
header('Content-Type: application/json; charset=utf-8');
echo json_encode(['message' => $ex->getMessage()]);
exit();
}
Server::get(ITemplateManager::class)->printErrorPage($ex->getMessage(), $ex->getMessage(), 401);
} catch (MaxDelayReached $ex) {
$request = Server::get(IRequest::class);
/**
* Routes with the @CORS annotation and other API endpoints should
* not return a webpage, so we only print the error page when html is accepted,
* otherwise we reply with a JSON array like the BruteForceMiddleware would do.
*/
if (stripos($request->getHeader('Accept'), 'html') === false) {
http_response_code(429);
header('Content-Type: application/json; charset=utf-8');
echo json_encode(['message' => $ex->getMessage()]);
exit();
}
http_response_code(429);
Server::get(ITemplateManager::class)->printGuestPage('core', '429');
} catch (Exception $ex) {
Server::get(LoggerInterface::class)->error($ex->getMessage(), [
'app' => 'index',
'exception' => $ex,
]);
};
//show the user a detailed error page
Server::get(ITemplateManager::class)->printExceptionErrorPage($ex, 500);
} catch (Error $ex) {
try {
Server::get(LoggerInterface::class)->error($ex->getMessage(), [
'app' => 'index',
'exception' => $ex,
]);
} catch (Error $e) {
http_response_code(500);
header('Content-Type: text/plain; charset=utf-8');
print("Internal Server Error\n\n");
print("The server encountered an internal error and was unable to complete your request.\n");
print("Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report.\n");
print("More details can be found in the webserver log.\n");
if (function_exists('frankenphp_handle_request')) {
$maxRequests = (int)($_SERVER['MAX_REQUESTS'] ?? 0);
for ($nbRequests = 0; !$maxRequests || $nbRequests < $maxRequests; ++$nbRequests) {
$keepRunning = \frankenphp_handle_request($handler);
throw $ex;
// Call the garbage collector to reduce the chances of it being triggered in the middle of a page generation
gc_collect_cycles();
if (!$keepRunning) {
break;
}
}
Server::get(ITemplateManager::class)->printExceptionErrorPage($ex, 500);
} else {
$handler();
}
+1299
View File
File diff suppressed because it is too large Load Diff
+4 -1281
View File
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -163,9 +163,6 @@ OC.L10N.register(
"Set an admin Login." : "تعيين مُعرف تسجيل دخول المدير.",
"Set an admin password." : "تعيين كلمة مرور للمدير",
"Cannot create or write into the data directory %s" : "لا يمكن الإنشاء أو الكتابة في دليل البيانات %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "يجب أن تقوم الواجهة الخلفية للمشاركة (Sharing backend) %s بتطبيق الواجهة OCP\\Share_Backend",
"Sharing backend %s not found" : "لم يتم العثور على الواجهة الخلفية (Sharing backend) %s",
"Sharing backend for %s not found" : "مشاركة الخلفية لـ %s غير موجود",
"%1$s shared %2$s with you" : "قام%1$s بمشاركة %2$s معك",
"Open %s" : "إفتَح %s",
"%1$s via %2$s" : "%1$s عبر %2$s",
@@ -438,6 +435,9 @@ OC.L10N.register(
"Summarizes text by reducing its length without losing key information." : "يُلَخِّص النص بتقليل طوله دون فقدان المعنى.",
"Extracts topics from a text and outputs them separated by commas." : "يستخلص المواضيع من النص و إخراجها مفصولة بفواصل.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "\"Mac OS X\" غير مدعوم؛ و %s سوف لن يعمل بالشكل الصحيح على هذه المنصة. استعمله على مسؤوليتك!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "يجب أن تقوم الواجهة الخلفية للمشاركة (Sharing backend) %s بتطبيق الواجهة OCP\\Share_Backend",
"Sharing backend %s not found" : "لم يتم العثور على الواجهة الخلفية (Sharing backend) %s",
"Sharing backend for %s not found" : "مشاركة الخلفية لـ %s غير موجود",
"Application is not enabled" : "التطبيق غير مفعّل",
"Authentication error" : "لم يتم التأكد من الشخصية بنجاح",
"Token expired. Please reload page." : "انتهت صلاحية الكلمة , يرجى اعادة تحميل الصفحة"
+3 -3
View File
@@ -161,9 +161,6 @@
"Set an admin Login." : "تعيين مُعرف تسجيل دخول المدير.",
"Set an admin password." : "تعيين كلمة مرور للمدير",
"Cannot create or write into the data directory %s" : "لا يمكن الإنشاء أو الكتابة في دليل البيانات %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "يجب أن تقوم الواجهة الخلفية للمشاركة (Sharing backend) %s بتطبيق الواجهة OCP\\Share_Backend",
"Sharing backend %s not found" : "لم يتم العثور على الواجهة الخلفية (Sharing backend) %s",
"Sharing backend for %s not found" : "مشاركة الخلفية لـ %s غير موجود",
"%1$s shared %2$s with you" : "قام%1$s بمشاركة %2$s معك",
"Open %s" : "إفتَح %s",
"%1$s via %2$s" : "%1$s عبر %2$s",
@@ -436,6 +433,9 @@
"Summarizes text by reducing its length without losing key information." : "يُلَخِّص النص بتقليل طوله دون فقدان المعنى.",
"Extracts topics from a text and outputs them separated by commas." : "يستخلص المواضيع من النص و إخراجها مفصولة بفواصل.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "\"Mac OS X\" غير مدعوم؛ و %s سوف لن يعمل بالشكل الصحيح على هذه المنصة. استعمله على مسؤوليتك!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "يجب أن تقوم الواجهة الخلفية للمشاركة (Sharing backend) %s بتطبيق الواجهة OCP\\Share_Backend",
"Sharing backend %s not found" : "لم يتم العثور على الواجهة الخلفية (Sharing backend) %s",
"Sharing backend for %s not found" : "مشاركة الخلفية لـ %s غير موجود",
"Application is not enabled" : "التطبيق غير مفعّل",
"Authentication error" : "لم يتم التأكد من الشخصية بنجاح",
"Token expired. Please reload page." : "انتهت صلاحية الكلمة , يرجى اعادة تحميل الصفحة"
+3 -3
View File
@@ -132,9 +132,6 @@ OC.L10N.register(
"Set an admin Login." : "Afitar la cuenta d'alministración",
"Set an admin password." : "Afitar una contraseña d'alministrador",
"Cannot create or write into the data directory %s" : "Nun se pue crear o escribir nel direutoriu de datos «%s»",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend de compartición «%s» ha implmentar la interfaz OCP\\Share_Backend",
"Sharing backend %s not found" : "Nun s'atopó'l backend de compartición «%s»",
"Sharing backend for %s not found" : "Nun s'atopó'l backend de compartición pa: %s",
"%1$s via %2$s" : "%1$s per %2$s",
"Unknown share type" : "Tipu de compartición desconocida",
"You are not allowed to share %s" : "Nun tienes permisu pa compartir «%s»",
@@ -212,6 +209,9 @@ OC.L10N.register(
"Result" : "Resultáu",
"Summarizes text by reducing its length without losing key information." : "Resume'l testu amenorgando la so llongura ensin perder la información importante.",
"Extracts topics from a text and outputs them separated by commas." : "Estrái temes d'un testu y devuélvelos separtaos per comes.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend de compartición «%s» ha implmentar la interfaz OCP\\Share_Backend",
"Sharing backend %s not found" : "Nun s'atopó'l backend de compartición «%s»",
"Sharing backend for %s not found" : "Nun s'atopó'l backend de compartición pa: %s",
"Application is not enabled" : "L'aplicación nun ta activada",
"Authentication error" : "Error de l'autenticación"
},
+3 -3
View File
@@ -130,9 +130,6 @@
"Set an admin Login." : "Afitar la cuenta d'alministración",
"Set an admin password." : "Afitar una contraseña d'alministrador",
"Cannot create or write into the data directory %s" : "Nun se pue crear o escribir nel direutoriu de datos «%s»",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend de compartición «%s» ha implmentar la interfaz OCP\\Share_Backend",
"Sharing backend %s not found" : "Nun s'atopó'l backend de compartición «%s»",
"Sharing backend for %s not found" : "Nun s'atopó'l backend de compartición pa: %s",
"%1$s via %2$s" : "%1$s per %2$s",
"Unknown share type" : "Tipu de compartición desconocida",
"You are not allowed to share %s" : "Nun tienes permisu pa compartir «%s»",
@@ -210,6 +207,9 @@
"Result" : "Resultáu",
"Summarizes text by reducing its length without losing key information." : "Resume'l testu amenorgando la so llongura ensin perder la información importante.",
"Extracts topics from a text and outputs them separated by commas." : "Estrái temes d'un testu y devuélvelos separtaos per comes.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend de compartición «%s» ha implmentar la interfaz OCP\\Share_Backend",
"Sharing backend %s not found" : "Nun s'atopó'l backend de compartición «%s»",
"Sharing backend for %s not found" : "Nun s'atopó'l backend de compartición pa: %s",
"Application is not enabled" : "L'aplicación nun ta activada",
"Authentication error" : "Error de l'autenticación"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
+3 -3
View File
@@ -125,9 +125,6 @@ OC.L10N.register(
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Моля, премахтене настройката за open_basedir от вашия php.ini или преминете към 64-битово PHP.",
"Set an admin password." : "Задай парола за администратор.",
"Cannot create or write into the data directory %s" : "Неуспешно създаване или записване в директорията с данни \"data\" %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Споделянето на сървърния %s трябва да поддържа OCP\\Share_Backend интерфейс.",
"Sharing backend %s not found" : "Споделянето на сървърния %s не е открито.",
"Sharing backend for %s not found" : "Споделянето на сървъра за %s не е открито.",
"%1$s via %2$s" : "%1$s чрез %2$s",
"Unknown share type" : "Неизвестен тип споделяне",
"You are not allowed to share %s" : "Не ти е разрешено да споделяш %s.",
@@ -233,6 +230,9 @@ OC.L10N.register(
"Translate" : "Превод",
"Target language" : "Целеви език",
"Result" : "Резултат",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Споделянето на сървърния %s трябва да поддържа OCP\\Share_Backend интерфейс.",
"Sharing backend %s not found" : "Споделянето на сървърния %s не е открито.",
"Sharing backend for %s not found" : "Споделянето на сървъра за %s не е открито.",
"Application is not enabled" : "Приложението не е включено",
"Authentication error" : "Грешка при удостоверяването",
"Token expired. Please reload page." : "Изтекла сесия. Моля, презареди страницата."
+3 -3
View File
@@ -123,9 +123,6 @@
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Моля, премахтене настройката за open_basedir от вашия php.ini или преминете към 64-битово PHP.",
"Set an admin password." : "Задай парола за администратор.",
"Cannot create or write into the data directory %s" : "Неуспешно създаване или записване в директорията с данни \"data\" %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Споделянето на сървърния %s трябва да поддържа OCP\\Share_Backend интерфейс.",
"Sharing backend %s not found" : "Споделянето на сървърния %s не е открито.",
"Sharing backend for %s not found" : "Споделянето на сървъра за %s не е открито.",
"%1$s via %2$s" : "%1$s чрез %2$s",
"Unknown share type" : "Неизвестен тип споделяне",
"You are not allowed to share %s" : "Не ти е разрешено да споделяш %s.",
@@ -231,6 +228,9 @@
"Translate" : "Превод",
"Target language" : "Целеви език",
"Result" : "Резултат",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Споделянето на сървърния %s трябва да поддържа OCP\\Share_Backend интерфейс.",
"Sharing backend %s not found" : "Споделянето на сървърния %s не е открито.",
"Sharing backend for %s not found" : "Споделянето на сървъра за %s не е открито.",
"Application is not enabled" : "Приложението не е включено",
"Authentication error" : "Грешка при удостоверяването",
"Token expired. Please reload page." : "Изтекла сесия. Моля, презареди страницата."
+1 -1
View File
@@ -40,7 +40,6 @@ OC.L10N.register(
"Role" : "Roll",
"Additional settings" : "Stummoù ouzhpenn",
"Set an admin password." : "Lakaat ur ger-tremenn merour.",
"Sharing backend for %s not found" : "Rannadenn backend evit %s n'eo ket bet kavet",
"Sunday" : "Sul",
"Monday" : "Lun",
"Wednesday" : "Merc'her",
@@ -75,6 +74,7 @@ OC.L10N.register(
"Summary" : "Diverrañ",
"Translate" : "Treiñ",
"Origin text" : "Testenn orin",
"Sharing backend for %s not found" : "Rannadenn backend evit %s n'eo ket bet kavet",
"Application is not enabled" : "N'eo ket aotreet ar meziant",
"Authentication error" : "Fazi dilesa",
"Token expired. Please reload page." : "Jedouer re gozh. Adkargit ar bajenn."
+1 -1
View File
@@ -38,7 +38,6 @@
"Role" : "Roll",
"Additional settings" : "Stummoù ouzhpenn",
"Set an admin password." : "Lakaat ur ger-tremenn merour.",
"Sharing backend for %s not found" : "Rannadenn backend evit %s n'eo ket bet kavet",
"Sunday" : "Sul",
"Monday" : "Lun",
"Wednesday" : "Merc'her",
@@ -73,6 +72,7 @@
"Summary" : "Diverrañ",
"Translate" : "Treiñ",
"Origin text" : "Testenn orin",
"Sharing backend for %s not found" : "Rannadenn backend evit %s n'eo ket bet kavet",
"Application is not enabled" : "N'eo ket aotreet ar meziant",
"Authentication error" : "Fazi dilesa",
"Token expired. Please reload page." : "Jedouer re gozh. Adkargit ar bajenn."
+3 -3
View File
@@ -160,9 +160,6 @@ OC.L10N.register(
"Set an admin Login." : "Definiu un inici de sessió per a l'administrador.",
"Set an admin password." : "Definiu una contrasenya per a l'administrador.",
"Cannot create or write into the data directory %s" : "No es pot crear la carpeta de dades %s ni escriure-hi",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El rerefons d'ús compartit %s ha d'implementar la interfície OCP\\Share_Backend",
"Sharing backend %s not found" : "No s'ha trobat el rerefons d'ús compartit %s",
"Sharing backend for %s not found" : "No s'ha trobat el rerefons d'ús compartit per a %s",
"%1$s shared %2$s with you" : "%1$s ha compartit %2$s amb tu",
"Open %s" : "Obre %s",
"%1$s via %2$s" : "%1$s mitjançant %2$s",
@@ -434,6 +431,9 @@ OC.L10N.register(
"Generate headline" : "Genera un titular",
"Summarizes text by reducing its length without losing key information." : "Resumeix el text reduint-ne la longitud sense perdre la informació clau.",
"Extracts topics from a text and outputs them separated by commas." : "Extreu els temes d'un text i els retorna separats per comes.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El rerefons d'ús compartit %s ha d'implementar la interfície OCP\\Share_Backend",
"Sharing backend %s not found" : "No s'ha trobat el rerefons d'ús compartit %s",
"Sharing backend for %s not found" : "No s'ha trobat el rerefons d'ús compartit per a %s",
"Application is not enabled" : "L'aplicació no està habilitada",
"Authentication error" : "Error d'autenticació",
"Token expired. Please reload page." : "El testimoni ha caducat. Torneu a carregar la pàgina."
+3 -3
View File
@@ -158,9 +158,6 @@
"Set an admin Login." : "Definiu un inici de sessió per a l'administrador.",
"Set an admin password." : "Definiu una contrasenya per a l'administrador.",
"Cannot create or write into the data directory %s" : "No es pot crear la carpeta de dades %s ni escriure-hi",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El rerefons d'ús compartit %s ha d'implementar la interfície OCP\\Share_Backend",
"Sharing backend %s not found" : "No s'ha trobat el rerefons d'ús compartit %s",
"Sharing backend for %s not found" : "No s'ha trobat el rerefons d'ús compartit per a %s",
"%1$s shared %2$s with you" : "%1$s ha compartit %2$s amb tu",
"Open %s" : "Obre %s",
"%1$s via %2$s" : "%1$s mitjançant %2$s",
@@ -432,6 +429,9 @@
"Generate headline" : "Genera un titular",
"Summarizes text by reducing its length without losing key information." : "Resumeix el text reduint-ne la longitud sense perdre la informació clau.",
"Extracts topics from a text and outputs them separated by commas." : "Extreu els temes d'un text i els retorna separats per comes.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El rerefons d'ús compartit %s ha d'implementar la interfície OCP\\Share_Backend",
"Sharing backend %s not found" : "No s'ha trobat el rerefons d'ús compartit %s",
"Sharing backend for %s not found" : "No s'ha trobat el rerefons d'ús compartit per a %s",
"Application is not enabled" : "L'aplicació no està habilitada",
"Authentication error" : "Error d'autenticació",
"Token expired. Please reload page." : "El testimoni ha caducat. Torneu a carregar la pàgina."
+3 -3
View File
@@ -167,9 +167,6 @@ OC.L10N.register(
"Set an admin Login." : "Nastavte přihlašovací jméno správce.",
"Set an admin password." : "Nastavte heslo pro účet správce.",
"Cannot create or write into the data directory %s" : "Nedaří se vytvořit nebo zapisovat do datového adresáře %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Je třeba, aby podpůrná vrstva pro sdílení %s implementovala rozhraní OCP\\Share_Backend",
"Sharing backend %s not found" : "Podpůrná vrstva pro sdílení %s nenalezena",
"Sharing backend for %s not found" : "Úložiště sdílení pro %s nenalezeno",
"%1$s shared %2$s with you" : "%1$s vám nasdílel(a) %2$s",
"Open %s" : "Otevřít %s",
"%1$s via %2$s" : "%1$s prostřednictvím %2$s",
@@ -474,6 +471,9 @@ OC.L10N.register(
"Summarizes text by reducing its length without losing key information." : "Vytvoří stručný souhrn textu tím, že zkrátí jeho délku aniž by byly ztraceny klíčové informace",
"Extracts topics from a text and outputs them separated by commas." : "Vyzíská témata z textu a vypíše je oddělované čárkami.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "macOS není podporován a %s nebude na této platformě správně fungovat. Používejte pouze na vlastní nebezpečí!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Je třeba, aby podpůrná vrstva pro sdílení %s implementovala rozhraní OCP\\Share_Backend",
"Sharing backend %s not found" : "Podpůrná vrstva pro sdílení %s nenalezena",
"Sharing backend for %s not found" : "Úložiště sdílení pro %s nenalezeno",
"Application is not enabled" : "Aplikace není povolena",
"Authentication error" : "Chyba při ověřování se",
"Token expired. Please reload page." : "Platnost tokenu skončila. Načtěte stránku znovu."
+3 -3
View File
@@ -165,9 +165,6 @@
"Set an admin Login." : "Nastavte přihlašovací jméno správce.",
"Set an admin password." : "Nastavte heslo pro účet správce.",
"Cannot create or write into the data directory %s" : "Nedaří se vytvořit nebo zapisovat do datového adresáře %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Je třeba, aby podpůrná vrstva pro sdílení %s implementovala rozhraní OCP\\Share_Backend",
"Sharing backend %s not found" : "Podpůrná vrstva pro sdílení %s nenalezena",
"Sharing backend for %s not found" : "Úložiště sdílení pro %s nenalezeno",
"%1$s shared %2$s with you" : "%1$s vám nasdílel(a) %2$s",
"Open %s" : "Otevřít %s",
"%1$s via %2$s" : "%1$s prostřednictvím %2$s",
@@ -472,6 +469,9 @@
"Summarizes text by reducing its length without losing key information." : "Vytvoří stručný souhrn textu tím, že zkrátí jeho délku aniž by byly ztraceny klíčové informace",
"Extracts topics from a text and outputs them separated by commas." : "Vyzíská témata z textu a vypíše je oddělované čárkami.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "macOS není podporován a %s nebude na této platformě správně fungovat. Používejte pouze na vlastní nebezpečí!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Je třeba, aby podpůrná vrstva pro sdílení %s implementovala rozhraní OCP\\Share_Backend",
"Sharing backend %s not found" : "Podpůrná vrstva pro sdílení %s nenalezena",
"Sharing backend for %s not found" : "Úložiště sdílení pro %s nenalezeno",
"Application is not enabled" : "Aplikace není povolena",
"Authentication error" : "Chyba při ověřování se",
"Token expired. Please reload page." : "Platnost tokenu skončila. Načtěte stránku znovu."
+3 -3
View File
@@ -166,9 +166,6 @@ OC.L10N.register(
"Set an admin Login." : "Sæt et admin login.",
"Set an admin password." : "Angiv et admin kodeord.",
"Cannot create or write into the data directory %s" : "Kan ikke oprette eller skrive ind i datamappen %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Delingsbackend'en %s skal implementere grænsefladen OCP\\Share_Backend",
"Sharing backend %s not found" : "Delingsbackend'en %s blev ikke fundet",
"Sharing backend for %s not found" : "Delingsbackend'en for %s blev ikke fundet",
"%1$s shared %2$s with you" : " %1$s delte %2$s med dig",
"Open %s" : "Åbn %s",
"%1$s via %2$s" : "%1$s via %2$s",
@@ -465,6 +462,9 @@ OC.L10N.register(
"Summarizes text by reducing its length without losing key information." : "Opsummerer tekst ved at reducere dens længde uden at miste nøgleinformation.",
"Extracts topics from a text and outputs them separated by commas." : "Uddrager emner fra en tekst og skriver dem adskilt af kommaer.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Mac OS X understøttes ikke, og %s vil ikke fungere korrekt på denne platform. Brug det på eget ansvar!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Delingsbackend'en %s skal implementere grænsefladen OCP\\Share_Backend",
"Sharing backend %s not found" : "Delingsbackend'en %s blev ikke fundet",
"Sharing backend for %s not found" : "Delingsbackend'en for %s blev ikke fundet",
"Application is not enabled" : "Programmet er ikke aktiveret",
"Authentication error" : "Adgangsfejl",
"Token expired. Please reload page." : "Adgang er udløbet. Genindlæs siden."
+3 -3
View File
@@ -164,9 +164,6 @@
"Set an admin Login." : "Sæt et admin login.",
"Set an admin password." : "Angiv et admin kodeord.",
"Cannot create or write into the data directory %s" : "Kan ikke oprette eller skrive ind i datamappen %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Delingsbackend'en %s skal implementere grænsefladen OCP\\Share_Backend",
"Sharing backend %s not found" : "Delingsbackend'en %s blev ikke fundet",
"Sharing backend for %s not found" : "Delingsbackend'en for %s blev ikke fundet",
"%1$s shared %2$s with you" : " %1$s delte %2$s med dig",
"Open %s" : "Åbn %s",
"%1$s via %2$s" : "%1$s via %2$s",
@@ -463,6 +460,9 @@
"Summarizes text by reducing its length without losing key information." : "Opsummerer tekst ved at reducere dens længde uden at miste nøgleinformation.",
"Extracts topics from a text and outputs them separated by commas." : "Uddrager emner fra en tekst og skriver dem adskilt af kommaer.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Mac OS X understøttes ikke, og %s vil ikke fungere korrekt på denne platform. Brug det på eget ansvar!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Delingsbackend'en %s skal implementere grænsefladen OCP\\Share_Backend",
"Sharing backend %s not found" : "Delingsbackend'en %s blev ikke fundet",
"Sharing backend for %s not found" : "Delingsbackend'en for %s blev ikke fundet",
"Application is not enabled" : "Programmet er ikke aktiveret",
"Authentication error" : "Adgangsfejl",
"Token expired. Please reload page." : "Adgang er udløbet. Genindlæs siden."
+3 -3
View File
@@ -167,9 +167,6 @@ OC.L10N.register(
"Set an admin Login." : "Anmeldename für Andministration setzen.",
"Set an admin password." : "Ein Administrationspasswort setzen.",
"Cannot create or write into the data directory %s" : "Das Datenverzeichnis %s kann nicht erstellt oder es kann darin nicht geschrieben werden.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Freigabe-Backend %s muss in der OCP\\Share_Backend - Schnittstelle implementiert werden",
"Sharing backend %s not found" : "Freigabe-Backend %s nicht gefunden",
"Sharing backend for %s not found" : "Freigabe-Backend für %s nicht gefunden",
"%1$s shared %2$s with you" : "%1$s hat %2$s mit dir geteilt",
"Open %s" : "%s öffnen",
"%1$s via %2$s" : "%1$s über %2$s",
@@ -474,6 +471,9 @@ OC.L10N.register(
"Summarizes text by reducing its length without losing key information." : "Fasst Text zusammen, indem die Länge reduziert wird, ohne dass wichtige Informationen verloren gehen.",
"Extracts topics from a text and outputs them separated by commas." : "Extrahiert Themen aus einem Text und gibt sie durch Kommas getrennt aus.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Mac OS X wird nicht unterstützt und %s wird unter dieser Plattform nicht richtig funktionieren. Verwendung auf eigene Gefahr!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Freigabe-Backend %s muss in der OCP\\Share_Backend - Schnittstelle implementiert werden",
"Sharing backend %s not found" : "Freigabe-Backend %s nicht gefunden",
"Sharing backend for %s not found" : "Freigabe-Backend für %s nicht gefunden",
"Application is not enabled" : "Die Anwendung ist nicht aktiviert",
"Authentication error" : "Authentifizierungsfehler",
"Token expired. Please reload page." : "Token abgelaufen. Bitte lade die Seite neu."
+3 -3
View File
@@ -165,9 +165,6 @@
"Set an admin Login." : "Anmeldename für Andministration setzen.",
"Set an admin password." : "Ein Administrationspasswort setzen.",
"Cannot create or write into the data directory %s" : "Das Datenverzeichnis %s kann nicht erstellt oder es kann darin nicht geschrieben werden.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Freigabe-Backend %s muss in der OCP\\Share_Backend - Schnittstelle implementiert werden",
"Sharing backend %s not found" : "Freigabe-Backend %s nicht gefunden",
"Sharing backend for %s not found" : "Freigabe-Backend für %s nicht gefunden",
"%1$s shared %2$s with you" : "%1$s hat %2$s mit dir geteilt",
"Open %s" : "%s öffnen",
"%1$s via %2$s" : "%1$s über %2$s",
@@ -472,6 +469,9 @@
"Summarizes text by reducing its length without losing key information." : "Fasst Text zusammen, indem die Länge reduziert wird, ohne dass wichtige Informationen verloren gehen.",
"Extracts topics from a text and outputs them separated by commas." : "Extrahiert Themen aus einem Text und gibt sie durch Kommas getrennt aus.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Mac OS X wird nicht unterstützt und %s wird unter dieser Plattform nicht richtig funktionieren. Verwendung auf eigene Gefahr!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Freigabe-Backend %s muss in der OCP\\Share_Backend - Schnittstelle implementiert werden",
"Sharing backend %s not found" : "Freigabe-Backend %s nicht gefunden",
"Sharing backend for %s not found" : "Freigabe-Backend für %s nicht gefunden",
"Application is not enabled" : "Die Anwendung ist nicht aktiviert",
"Authentication error" : "Authentifizierungsfehler",
"Token expired. Please reload page." : "Token abgelaufen. Bitte lade die Seite neu."
+3 -3
View File
@@ -167,9 +167,6 @@ OC.L10N.register(
"Set an admin Login." : "Anmeldename für Andministration setzen.",
"Set an admin password." : "Ein Administrationspasswort setzen.",
"Cannot create or write into the data directory %s" : "Das Datenverzeichnis %s kann nicht erstellt oder es kann darin nicht geschrieben werden.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Freigabe-Backend %s muss in der OCP\\Share_Backend - Schnittstelle implementiert werden",
"Sharing backend %s not found" : "Freigabe-Backend %s nicht gefunden",
"Sharing backend for %s not found" : "Freigabe-Backend für %s nicht gefunden",
"%1$s shared %2$s with you" : "%1$s hat %2$s mit Ihnen geteilt",
"Open %s" : "%s öffnen",
"%1$s via %2$s" : "%1$s über %2$s",
@@ -474,6 +471,9 @@ OC.L10N.register(
"Summarizes text by reducing its length without losing key information." : "Fasst Text zusammen, indem die Länge reduziert wird, ohne dass wichtige Informationen verloren gehen.",
"Extracts topics from a text and outputs them separated by commas." : "Extrahiert Themen aus einem Text und gibt sie durch Kommas getrennt aus.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Mac OS X wird nicht unterstützt und %s wird unter dieser Plattform nicht richtig funktionieren. Verwendung auf eigene Gefahr!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Freigabe-Backend %s muss in der OCP\\Share_Backend - Schnittstelle implementiert werden",
"Sharing backend %s not found" : "Freigabe-Backend %s nicht gefunden",
"Sharing backend for %s not found" : "Freigabe-Backend für %s nicht gefunden",
"Application is not enabled" : "Die Anwendung ist nicht aktiviert",
"Authentication error" : "Authentifizierungsfehler",
"Token expired. Please reload page." : "Token abgelaufen. Bitte laden Sie die Seite neu."
+3 -3
View File
@@ -165,9 +165,6 @@
"Set an admin Login." : "Anmeldename für Andministration setzen.",
"Set an admin password." : "Ein Administrationspasswort setzen.",
"Cannot create or write into the data directory %s" : "Das Datenverzeichnis %s kann nicht erstellt oder es kann darin nicht geschrieben werden.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Freigabe-Backend %s muss in der OCP\\Share_Backend - Schnittstelle implementiert werden",
"Sharing backend %s not found" : "Freigabe-Backend %s nicht gefunden",
"Sharing backend for %s not found" : "Freigabe-Backend für %s nicht gefunden",
"%1$s shared %2$s with you" : "%1$s hat %2$s mit Ihnen geteilt",
"Open %s" : "%s öffnen",
"%1$s via %2$s" : "%1$s über %2$s",
@@ -472,6 +469,9 @@
"Summarizes text by reducing its length without losing key information." : "Fasst Text zusammen, indem die Länge reduziert wird, ohne dass wichtige Informationen verloren gehen.",
"Extracts topics from a text and outputs them separated by commas." : "Extrahiert Themen aus einem Text und gibt sie durch Kommas getrennt aus.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Mac OS X wird nicht unterstützt und %s wird unter dieser Plattform nicht richtig funktionieren. Verwendung auf eigene Gefahr!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Freigabe-Backend %s muss in der OCP\\Share_Backend - Schnittstelle implementiert werden",
"Sharing backend %s not found" : "Freigabe-Backend %s nicht gefunden",
"Sharing backend for %s not found" : "Freigabe-Backend für %s nicht gefunden",
"Application is not enabled" : "Die Anwendung ist nicht aktiviert",
"Authentication error" : "Authentifizierungsfehler",
"Token expired. Please reload page." : "Token abgelaufen. Bitte laden Sie die Seite neu."
+3 -3
View File
@@ -166,9 +166,6 @@ OC.L10N.register(
"Set an admin Login." : "Ορίστε τo όνομα χρήστη διαχειριστή.",
"Set an admin password." : "Εισάγετε συνθηματικό διαχειριστή.",
"Cannot create or write into the data directory %s" : "Δεν είναι δυνατή η δημιουργία ή εγγραφή στον κατάλογο δεδομένων %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Το σύστημα διαμοιρασμού %s πρέπει να υλοποιεί την διεπαφή OCP\\Share_Backend",
"Sharing backend %s not found" : "Το σύστημα διαμοιρασμού %s δεν βρέθηκε",
"Sharing backend for %s not found" : "Το σύστημα διαμοιρασμού για το %s δεν βρέθηκε",
"%1$s shared %2$s with you" : "Ο/Η %1$s μοιράστηκε το %2$s μαζί σας",
"Open %s" : "Άνοιγμα %s",
"%1$s via %2$s" : "%1$s μέσω %2$s",
@@ -468,6 +465,9 @@ OC.L10N.register(
"Summarizes text by reducing its length without losing key information." : "Περιγράφει συνοπτικά το κείμενο μειώνοντας το μήκος του χωρίς να χάνονται βασικές πληροφορίες.",
"Extracts topics from a text and outputs them separated by commas." : "Εξάγει θέματα από ένα κείμενο και τα εμφανίζει χωρισμένα με κόμματα.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Το Mac OS X δεν υποστηρίζεται και το %s δεν θα λειτουργεί σωστά σε αυτήν την πλατφόρμα. Χρησιμοποιήστε το με δική σας ευθύνη!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Το σύστημα διαμοιρασμού %s πρέπει να υλοποιεί την διεπαφή OCP\\Share_Backend",
"Sharing backend %s not found" : "Το σύστημα διαμοιρασμού %s δεν βρέθηκε",
"Sharing backend for %s not found" : "Το σύστημα διαμοιρασμού για το %s δεν βρέθηκε",
"Application is not enabled" : "Δεν ενεργοποιήθηκε η εφαρμογή",
"Authentication error" : "Σφάλμα πιστοποίησης",
"Token expired. Please reload page." : "Το αναγνωριστικό έληξε. Παρακαλούμε φορτώστε ξανά την σελίδα."
+3 -3
View File
@@ -164,9 +164,6 @@
"Set an admin Login." : "Ορίστε τo όνομα χρήστη διαχειριστή.",
"Set an admin password." : "Εισάγετε συνθηματικό διαχειριστή.",
"Cannot create or write into the data directory %s" : "Δεν είναι δυνατή η δημιουργία ή εγγραφή στον κατάλογο δεδομένων %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Το σύστημα διαμοιρασμού %s πρέπει να υλοποιεί την διεπαφή OCP\\Share_Backend",
"Sharing backend %s not found" : "Το σύστημα διαμοιρασμού %s δεν βρέθηκε",
"Sharing backend for %s not found" : "Το σύστημα διαμοιρασμού για το %s δεν βρέθηκε",
"%1$s shared %2$s with you" : "Ο/Η %1$s μοιράστηκε το %2$s μαζί σας",
"Open %s" : "Άνοιγμα %s",
"%1$s via %2$s" : "%1$s μέσω %2$s",
@@ -466,6 +463,9 @@
"Summarizes text by reducing its length without losing key information." : "Περιγράφει συνοπτικά το κείμενο μειώνοντας το μήκος του χωρίς να χάνονται βασικές πληροφορίες.",
"Extracts topics from a text and outputs them separated by commas." : "Εξάγει θέματα από ένα κείμενο και τα εμφανίζει χωρισμένα με κόμματα.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Το Mac OS X δεν υποστηρίζεται και το %s δεν θα λειτουργεί σωστά σε αυτήν την πλατφόρμα. Χρησιμοποιήστε το με δική σας ευθύνη!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Το σύστημα διαμοιρασμού %s πρέπει να υλοποιεί την διεπαφή OCP\\Share_Backend",
"Sharing backend %s not found" : "Το σύστημα διαμοιρασμού %s δεν βρέθηκε",
"Sharing backend for %s not found" : "Το σύστημα διαμοιρασμού για το %s δεν βρέθηκε",
"Application is not enabled" : "Δεν ενεργοποιήθηκε η εφαρμογή",
"Authentication error" : "Σφάλμα πιστοποίησης",
"Token expired. Please reload page." : "Το αναγνωριστικό έληξε. Παρακαλούμε φορτώστε ξανά την σελίδα."
+3 -3
View File
@@ -167,9 +167,6 @@ OC.L10N.register(
"Set an admin Login." : "Set an admin Login.",
"Set an admin password." : "Set an admin password.",
"Cannot create or write into the data directory %s" : "Cannot create or write into the data directory %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Sharing backend %s must implement the interface OCP\\Share_Backend",
"Sharing backend %s not found" : "Sharing backend %s not found",
"Sharing backend for %s not found" : "Sharing backend for %s not found",
"%1$s shared %2$s with you" : "%1$s shared %2$s with you",
"Open %s" : "Open %s",
"%1$s via %2$s" : "%1$s via %2$s",
@@ -474,6 +471,9 @@ OC.L10N.register(
"Summarizes text by reducing its length without losing key information." : "Summarizes text by reducing its length without losing key information.",
"Extracts topics from a text and outputs them separated by commas." : "Extracts topics from a text and outputs them separated by commas.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Sharing backend %s must implement the interface OCP\\Share_Backend",
"Sharing backend %s not found" : "Sharing backend %s not found",
"Sharing backend for %s not found" : "Sharing backend for %s not found",
"Application is not enabled" : "Application is not enabled",
"Authentication error" : "Authentication error",
"Token expired. Please reload page." : "Token expired. Please reload page."
+3 -3
View File
@@ -165,9 +165,6 @@
"Set an admin Login." : "Set an admin Login.",
"Set an admin password." : "Set an admin password.",
"Cannot create or write into the data directory %s" : "Cannot create or write into the data directory %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Sharing backend %s must implement the interface OCP\\Share_Backend",
"Sharing backend %s not found" : "Sharing backend %s not found",
"Sharing backend for %s not found" : "Sharing backend for %s not found",
"%1$s shared %2$s with you" : "%1$s shared %2$s with you",
"Open %s" : "Open %s",
"%1$s via %2$s" : "%1$s via %2$s",
@@ -472,6 +469,9 @@
"Summarizes text by reducing its length without losing key information." : "Summarizes text by reducing its length without losing key information.",
"Extracts topics from a text and outputs them separated by commas." : "Extracts topics from a text and outputs them separated by commas.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Sharing backend %s must implement the interface OCP\\Share_Backend",
"Sharing backend %s not found" : "Sharing backend %s not found",
"Sharing backend for %s not found" : "Sharing backend for %s not found",
"Application is not enabled" : "Application is not enabled",
"Authentication error" : "Authentication error",
"Token expired. Please reload page." : "Token expired. Please reload page."
+3 -3
View File
@@ -94,9 +94,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Ŝajnas, ke tiu servilo %s uzas 32-bitan PHP-version, kaj ke la agordo „open_basedir“ ekzistas. Tio kaŭzos problemojn pri dosieroj pli grandaj ol 4 GB, kaj do estas tre malrekomendita.",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Bv. forigi la agordon „open_basedir“ de via php.ini, aŭ uzu 64-bitan version de PHP.",
"Set an admin password." : "Agordi pasvorton de administranto.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Kunhava interna servo %s devas realigi la interfacon „OCP\\Share_Backend“",
"Sharing backend %s not found" : "Kunhava interna servo %s ne troviĝas",
"Sharing backend for %s not found" : "Kunhava interna servo por %s ne troviĝas",
"%1$s via %2$s" : "%1$s pere de %2$s",
"Unknown share type" : "Nekonata kunhava tipo",
"You are not allowed to share %s" : "Vi ne permesatas kunhavigi %s",
@@ -178,6 +175,9 @@ OC.L10N.register(
"Text" : "Teksto",
"Summary" : "Resumo",
"Translate" : "Traduku",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Kunhava interna servo %s devas realigi la interfacon „OCP\\Share_Backend“",
"Sharing backend %s not found" : "Kunhava interna servo %s ne troviĝas",
"Sharing backend for %s not found" : "Kunhava interna servo por %s ne troviĝas",
"Application is not enabled" : "La aplikaĵo ne estas ŝaltita",
"Authentication error" : "Aŭtentiga eraro",
"Token expired. Please reload page." : "Ĵetono eksvalidiĝis. Bonvolu reŝargi la paĝon."
+3 -3
View File
@@ -92,9 +92,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Ŝajnas, ke tiu servilo %s uzas 32-bitan PHP-version, kaj ke la agordo „open_basedir“ ekzistas. Tio kaŭzos problemojn pri dosieroj pli grandaj ol 4 GB, kaj do estas tre malrekomendita.",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Bv. forigi la agordon „open_basedir“ de via php.ini, aŭ uzu 64-bitan version de PHP.",
"Set an admin password." : "Agordi pasvorton de administranto.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Kunhava interna servo %s devas realigi la interfacon „OCP\\Share_Backend“",
"Sharing backend %s not found" : "Kunhava interna servo %s ne troviĝas",
"Sharing backend for %s not found" : "Kunhava interna servo por %s ne troviĝas",
"%1$s via %2$s" : "%1$s pere de %2$s",
"Unknown share type" : "Nekonata kunhava tipo",
"You are not allowed to share %s" : "Vi ne permesatas kunhavigi %s",
@@ -176,6 +173,9 @@
"Text" : "Teksto",
"Summary" : "Resumo",
"Translate" : "Traduku",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Kunhava interna servo %s devas realigi la interfacon „OCP\\Share_Backend“",
"Sharing backend %s not found" : "Kunhava interna servo %s ne troviĝas",
"Sharing backend for %s not found" : "Kunhava interna servo por %s ne troviĝas",
"Application is not enabled" : "La aplikaĵo ne estas ŝaltita",
"Authentication error" : "Aŭtentiga eraro",
"Token expired. Please reload page." : "Ĵetono eksvalidiĝis. Bonvolu reŝargi la paĝon."
+3 -3
View File
@@ -166,9 +166,6 @@ OC.L10N.register(
"Set an admin Login." : "Establecer un usuario administrador.",
"Set an admin password." : "Configurar la contraseña del administrador.",
"Cannot create or write into the data directory %s" : "No se puede crear o escribir en la carpeta de datos %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El motor compartido %s debe implementar la interfaz OCP\\Share_Backend",
"Sharing backend %s not found" : "El motor compartido %s no se ha encontrado",
"Sharing backend for %s not found" : "Motor compartido para %s no encontrado",
"%1$s shared %2$s with you" : "%1$s ha compartido %2$s contigo",
"Open %s" : "Abrir %s",
"%1$s via %2$s" : "%1$s vía %2$s",
@@ -468,6 +465,9 @@ OC.L10N.register(
"Summarizes text by reducing its length without losing key information." : "Resume el texto reduciendo su longitud sin perder información clave.",
"Extracts topics from a text and outputs them separated by commas." : "Extrae los tópicos de un texto y genera una salida separada por comas. ",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Mac OS X no está soportado y %s no funcionará bien en esta plataforma. ¡Úsela bajo su propio riesgo! ",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El motor compartido %s debe implementar la interfaz OCP\\Share_Backend",
"Sharing backend %s not found" : "El motor compartido %s no se ha encontrado",
"Sharing backend for %s not found" : "Motor compartido para %s no encontrado",
"Application is not enabled" : "La aplicación no está habilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "Token caducado. Por favor, recarge la página."
+3 -3
View File
@@ -164,9 +164,6 @@
"Set an admin Login." : "Establecer un usuario administrador.",
"Set an admin password." : "Configurar la contraseña del administrador.",
"Cannot create or write into the data directory %s" : "No se puede crear o escribir en la carpeta de datos %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El motor compartido %s debe implementar la interfaz OCP\\Share_Backend",
"Sharing backend %s not found" : "El motor compartido %s no se ha encontrado",
"Sharing backend for %s not found" : "Motor compartido para %s no encontrado",
"%1$s shared %2$s with you" : "%1$s ha compartido %2$s contigo",
"Open %s" : "Abrir %s",
"%1$s via %2$s" : "%1$s vía %2$s",
@@ -466,6 +463,9 @@
"Summarizes text by reducing its length without losing key information." : "Resume el texto reduciendo su longitud sin perder información clave.",
"Extracts topics from a text and outputs them separated by commas." : "Extrae los tópicos de un texto y genera una salida separada por comas. ",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Mac OS X no está soportado y %s no funcionará bien en esta plataforma. ¡Úsela bajo su propio riesgo! ",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El motor compartido %s debe implementar la interfaz OCP\\Share_Backend",
"Sharing backend %s not found" : "El motor compartido %s no se ha encontrado",
"Sharing backend for %s not found" : "Motor compartido para %s no encontrado",
"Application is not enabled" : "La aplicación no está habilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "Token caducado. Por favor, recarge la página."
+3 -3
View File
@@ -71,9 +71,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -148,6 +145,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -69,9 +69,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -146,6 +143,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -63,9 +63,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Favor de eliminar el ajuste open_basedir de su archivo php.ini o cambie a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"%1$s shared %2$s with you" : "%1$s ha compartido \"%2$s\" con usted",
"Open %s" : "Abrir %s",
"%1$s via %2$s" : "%1$s vía %2$s",
@@ -145,6 +142,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Favor de recarga la página."
+3 -3
View File
@@ -61,9 +61,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Favor de eliminar el ajuste open_basedir de su archivo php.ini o cambie a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"%1$s shared %2$s with you" : "%1$s ha compartido \"%2$s\" con usted",
"Open %s" : "Abrir %s",
"%1$s via %2$s" : "%1$s vía %2$s",
@@ -143,6 +140,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Favor de recarga la página."
+3 -3
View File
@@ -71,9 +71,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Open %s" : "Abrir %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
@@ -150,6 +147,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -69,9 +69,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Open %s" : "Abrir %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
@@ -148,6 +145,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -70,9 +70,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -148,6 +145,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -68,9 +68,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -146,6 +143,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -70,9 +70,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -148,6 +145,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -68,9 +68,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -146,6 +143,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -70,9 +70,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -148,6 +145,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -68,9 +68,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -146,6 +143,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -121,9 +121,6 @@ OC.L10N.register(
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Cannot create or write into the data directory %s" : "No se puede crear ni escribir en el directorio de datos %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"%1$s via %2$s" : "%1$s a través de %2$s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
@@ -229,6 +226,9 @@ OC.L10N.register(
"Translate" : "Traducir",
"Target language" : "Lenguaje de destino",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -119,9 +119,6 @@
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Cannot create or write into the data directory %s" : "No se puede crear ni escribir en el directorio de datos %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"%1$s via %2$s" : "%1$s a través de %2$s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
@@ -227,6 +224,9 @@
"Translate" : "Traducir",
"Target language" : "Lenguaje de destino",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -70,9 +70,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -148,6 +145,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -68,9 +68,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -146,6 +143,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -69,9 +69,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -146,6 +143,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -67,9 +67,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -144,6 +141,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -138,9 +138,6 @@ OC.L10N.register(
"Set an admin Login." : "Establecer un usuario administrador.",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Cannot create or write into the data directory %s" : "No se puede crear o escribir en el directorio de datos %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"%1$s shared %2$s with you" : "%1$s le compartió %2$s",
"Open %s" : "Abrir %s",
"%1$s via %2$s" : "%1$s vía %2$s",
@@ -372,6 +369,9 @@ OC.L10N.register(
"Generate headline" : "Generar titular",
"Summarizes text by reducing its length without losing key information." : "Resume el texto reduciendo su longitud sin perder información clave.",
"Extracts topics from a text and outputs them separated by commas." : "Extrae los temas de un texto y genera una salida separada por comas. ",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -136,9 +136,6 @@
"Set an admin Login." : "Establecer un usuario administrador.",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Cannot create or write into the data directory %s" : "No se puede crear o escribir en el directorio de datos %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"%1$s shared %2$s with you" : "%1$s le compartió %2$s",
"Open %s" : "Abrir %s",
"%1$s via %2$s" : "%1$s vía %2$s",
@@ -370,6 +367,9 @@
"Generate headline" : "Generar titular",
"Summarizes text by reducing its length without losing key information." : "Resume el texto reduciendo su longitud sin perder información clave.",
"Extracts topics from a text and outputs them separated by commas." : "Extrae los temas de un texto y genera una salida separada por comas. ",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -69,9 +69,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -146,6 +143,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -67,9 +67,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -144,6 +141,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -69,9 +69,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -146,6 +143,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -67,9 +67,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -144,6 +141,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -70,9 +70,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -147,6 +144,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -68,9 +68,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -145,6 +142,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -69,9 +69,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -146,6 +143,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -67,9 +67,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -144,6 +141,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -70,9 +70,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -147,6 +144,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -68,9 +68,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -145,6 +142,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -71,9 +71,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -149,6 +146,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -69,9 +69,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -147,6 +144,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -69,9 +69,6 @@ OC.L10N.register(
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -146,6 +143,9 @@ OC.L10N.register(
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -67,9 +67,6 @@
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Al parecer esta instancia %s está corriendo en un ambiente PHP de 32-bits y el open_basedir ha sido configurado en el archivo php.ini. Esto generará problemas con archivos de más de 4GB de tamaño y es altamente desalentado. ",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Por favor elimina el ajuste open_basedir de tu archivo php.ini o cambia a PHP de 64 bits. ",
"Set an admin password." : "Establecer la contraseña del administrador.",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Unknown share type" : "Tipo de elemento compartido desconocido",
"You are not allowed to share %s" : "No tienes permitido compartir %s",
"Cannot increase permissions of %s" : "No se pueden incrementar los permisos de %s",
@@ -144,6 +141,9 @@
"Summary" : "Resumen",
"Translate" : "Traducir",
"Result" : "Resultado",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "El backend %s que comparte debe implementar la interface OCP\\Share_Backend",
"Sharing backend %s not found" : "No fue encontrado el Backend que comparte %s ",
"Sharing backend for %s not found" : "No fue encontrado el Backend que comparte para %s",
"Application is not enabled" : "La aplicación está deshabilitada",
"Authentication error" : "Error de autenticación",
"Token expired. Please reload page." : "La ficha ha expirado. Por favor recarga la página."
+3 -3
View File
@@ -167,9 +167,6 @@ OC.L10N.register(
"Set an admin Login." : "Lisa peakasutaja kasutajanimi.",
"Set an admin password." : "Lisa peakasutaja salasõna.",
"Cannot create or write into the data directory %s" : "Ei õnnestu luua „%s“ andmekausta või sealt lugeda",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Jagamise tagarakend %s peab kasutusele võtma OCP\\Share_Backend liidese",
"Sharing backend %s not found" : "Jagamise tagarakendit %s ei leitud",
"Sharing backend for %s not found" : "Jagamise tagarakendit %s jaoks ei leitud",
"%1$s shared %2$s with you" : "%1$s jagas sinuga: %2$s",
"Open %s" : "Ava %s ",
"%1$s via %2$s" : "%1$s %2$s kaudu",
@@ -454,6 +451,9 @@ OC.L10N.register(
"The translated text" : "Tõlgitud tekst",
"Generate headline" : "Alapealkirja loomine",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Mac OS X ei ole toetatud ja %s ei pruugi korralikult toimida sellel platvormil. Kasuta seda omal vastutusel!",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Jagamise tagarakend %s peab kasutusele võtma OCP\\Share_Backend liidese",
"Sharing backend %s not found" : "Jagamise tagarakendit %s ei leitud",
"Sharing backend for %s not found" : "Jagamise tagarakendit %s jaoks ei leitud",
"Application is not enabled" : "Rakendus pole sisse lülitatud",
"Authentication error" : "Autentimise viga",
"Token expired. Please reload page." : "Kontrollkood aegus. Paelun laadi leht uuesti."

Some files were not shown because too many files have changed in this diff Show More