Merge remote-tracking branch 'upstream/master' into master-sync-upstream

This commit is contained in:
Lukas Reschke 2016-06-21 11:18:22 +02:00
commit 2b493e2f9d
No known key found for this signature in database
GPG Key ID: 9AB0ADB949B6898C
142 changed files with 1744 additions and 285 deletions

@ -1 +1 @@
Subproject commit 12f9071624285bf465157730fc8d43d7a7d7fbd2
Subproject commit 509385e674563e48a977bf8285c826963835528e

View File

@ -14,7 +14,10 @@ OC.L10N.register(
"Allowed characters {count} of {max}" : "Dozwolone znaki {count} z {max}",
"{count} unread comments" : "{count} nieprzeczytanych komentarzy",
"Comment" : "Komentarz",
"<strong>Comments</strong> for files <em>(always listed in stream)</em>" : "<strong>Komentarze</strong> dla plików <em>(zawsze wypisane w strumieniu)</em>",
"You commented" : "Skomentowałeś/łaś",
"%1$s commented" : "%1$s skomentował",
"You commented on %2$s" : "Skomentowałeś/łaś %2$s",
"%1$s commented on %2$s" : "%1$s skomentował %2$s"
},
"nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);");

View File

@ -12,7 +12,10 @@
"Allowed characters {count} of {max}" : "Dozwolone znaki {count} z {max}",
"{count} unread comments" : "{count} nieprzeczytanych komentarzy",
"Comment" : "Komentarz",
"<strong>Comments</strong> for files <em>(always listed in stream)</em>" : "<strong>Komentarze</strong> dla plików <em>(zawsze wypisane w strumieniu)</em>",
"You commented" : "Skomentowałeś/łaś",
"%1$s commented" : "%1$s skomentował",
"You commented on %2$s" : "Skomentowałeś/łaś %2$s",
"%1$s commented on %2$s" : "%1$s skomentował %2$s"
},"pluralForm" :"nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"
}

View File

@ -14,7 +14,10 @@ OC.L10N.register(
"Allowed characters {count} of {max}" : "当前字数: {count},最大允许:{max}",
"{count} unread comments" : "{count} 条未读评论",
"Comment" : "评论",
"<strong>Comments</strong> for files <em>(always listed in stream)</em>" : "文件的<strong>评论</strong><em>(始终在数据流中列出)</em>",
"You commented" : "您的评论",
"%1$s commented" : "%1$s 已评论",
"You commented on %2$s" : "你评论了 %2$s",
"%1$s commented on %2$s" : "%1$s 评论了 %2$s"
},
"nplurals=1; plural=0;");

View File

@ -12,7 +12,10 @@
"Allowed characters {count} of {max}" : "当前字数: {count},最大允许:{max}",
"{count} unread comments" : "{count} 条未读评论",
"Comment" : "评论",
"<strong>Comments</strong> for files <em>(always listed in stream)</em>" : "文件的<strong>评论</strong><em>(始终在数据流中列出)</em>",
"You commented" : "您的评论",
"%1$s commented" : "%1$s 已评论",
"You commented on %2$s" : "你评论了 %2$s",
"%1$s commented on %2$s" : "%1$s 评论了 %2$s"
},"pluralForm" :"nplurals=1; plural=0;"
}

View File

@ -24,5 +24,8 @@
<post-migration>
<job>OCA\DAV\Migration\Classification</job>
</post-migration>
<live-migration>
<job>OCA\DAV\Migration\GenerateBirthdays</job>
</live-migration>
</repair-steps>
</info>

View File

@ -32,6 +32,7 @@ use OCA\DAV\Connector\Sabre\Principal;
use OCA\DAV\DAV\GroupPrincipalBackend;
use OCA\DAV\HookManager;
use OCA\DAV\Migration\Classification;
use OCA\DAV\Migration\GenerateBirthdays;
use \OCP\AppFramework\App;
use OCP\AppFramework\IAppContainer;
use OCP\Contacts\IManager;
@ -116,6 +117,16 @@ class Application extends App {
$c->getServer()->getUserManager()
);
});
$container->registerService('OCA\DAV\Migration\GenerateBirthdays', function ($c) {
/** @var IAppContainer $c */
/** @var BirthdayService $b */
$b = $c->query('BirthdayService');
return new GenerateBirthdays(
$b,
$c->getServer()->getUserManager()
);
});
}
/**
@ -164,18 +175,4 @@ class Application extends App {
return $this->getContainer()->query('SyncService');
}
public function generateBirthdays() {
try {
/** @var BirthdayService $migration */
$migration = $this->getContainer()->query('BirthdayService');
$userManager = $this->getContainer()->getServer()->getUserManager();
$userManager->callForAllUsers(function($user) use($migration) {
/** @var IUser $user */
$migration->syncUser($user->getUID());
});
} catch (\Exception $ex) {
$this->getContainer()->getServer()->getLogger()->logException($ex);
}
}
}

View File

@ -31,8 +31,10 @@ namespace OCA\DAV\Connector\Sabre;
use Exception;
use OC\AppFramework\Http\Request;
use OC\Authentication\Exceptions\PasswordLoginForbiddenException;
use OC\Authentication\TwoFactorAuth\Manager;
use OC\User\Session;
use OCA\DAV\Connector\Sabre\Exception\PasswordLoginForbidden;
use OCP\IRequest;
use OCP\ISession;
use Sabre\DAV\Auth\Backend\AbstractBasic;
@ -115,15 +117,19 @@ class Auth extends AbstractBasic {
return true;
} else {
\OC_Util::setupFS(); //login hooks may need early access to the filesystem
if($this->userSession->logClientIn($username, $password)) {
$this->userSession->createSessionToken($this->request, $this->userSession->getUser()->getUID(), $username, $password);
\OC_Util::setupFS($this->userSession->getUser()->getUID());
$this->session->set(self::DAV_AUTHENTICATED, $this->userSession->getUser()->getUID());
try {
if ($this->userSession->logClientIn($username, $password, $this->request)) {
\OC_Util::setupFS($this->userSession->getUser()->getUID());
$this->session->set(self::DAV_AUTHENTICATED, $this->userSession->getUser()->getUID());
$this->session->close();
return true;
} else {
$this->session->close();
return false;
}
} catch (PasswordLoginForbiddenException $ex) {
$this->session->close();
return true;
} else {
$this->session->close();
return false;
throw new PasswordLoginForbidden();
}
}
}

View File

@ -0,0 +1,54 @@
<?php
/**
* @author Christoph Wurst <christoph@owncloud.com>
*
* @copyright Copyright (c) 2016, ownCloud, Inc.
* @license AGPL-3.0
*
* This code is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License, version 3,
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License, version 3,
* along with this program. If not, see <http://www.gnu.org/licenses/>
*
*/
namespace OCA\DAV\Connector\Sabre\Exception;
use DOMElement;
use Sabre\DAV\Server;
use Sabre\DAV\Exception\NotAuthenticated;
class PasswordLoginForbidden extends NotAuthenticated {
const NS_OWNCLOUD = 'http://owncloud.org/ns';
public function getHTTPCode() {
return 401;
}
/**
* This method allows the exception to include additional information
* into the WebDAV error response
*
* @param Server $server
* @param DOMElement $errorNode
* @return void
*/
public function serialize(Server $server, DOMElement $errorNode) {
// set ownCloud namespace
$errorNode->setAttribute('xmlns:o', self::NS_OWNCLOUD);
$error = $errorNode->ownerDocument->createElementNS('o:', 'o:hint', 'password login forbidden');
$errorNode->appendChild($error);
}
}

View File

@ -0,0 +1,70 @@
<?php
/**
* @author Thomas Müller <thomas.mueller@tmit.eu>
*
* @copyright Copyright (c) 2016, ownCloud, Inc.
* @license AGPL-3.0
*
* This code is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License, version 3,
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License, version 3,
* along with this program. If not, see <http://www.gnu.org/licenses/>
*
*/
namespace OCA\DAV\Migration;
use OCA\DAV\CalDAV\BirthdayService;
use OCP\IUser;
use OCP\IUserManager;
use OCP\Migration\IOutput;
use OCP\Migration\IRepairStep;
class GenerateBirthdays implements IRepairStep {
/** @var BirthdayService */
private $birthdayService;
/** @var IUserManager */
private $userManager;
/**
* GenerateBirthdays constructor.
*
* @param BirthdayService $birthdayService
* @param IUserManager $userManager
*/
public function __construct(BirthdayService $birthdayService, IUserManager $userManager) {
$this->birthdayService = $birthdayService;
$this->userManager = $userManager;
}
/**
* @inheritdoc
*/
public function getName() {
return 'Regenerate birthday calendar for all users';
}
/**
* @inheritdoc
*/
public function run(IOutput $output) {
$output->startProgress();
$this->userManager->callForAllUsers(function($user) use ($output) {
/** @var IUser $user */
$output->advance(1, $user->getDisplayName());
$this->birthdayService->syncUser($user->getUID());
});
$output->finishProgress();
}
}

View File

@ -159,7 +159,7 @@ class AuthTest extends TestCase {
$user = $this->getMockBuilder('\OCP\IUser')
->disableOriginalConstructor()
->getMock();
$user->expects($this->exactly(4))
$user->expects($this->exactly(3))
->method('getUID')
->will($this->returnValue('MyTestUser'));
$this->userSession
@ -167,7 +167,7 @@ class AuthTest extends TestCase {
->method('isLoggedIn')
->will($this->returnValue(true));
$this->userSession
->expects($this->exactly(4))
->expects($this->exactly(3))
->method('getUser')
->will($this->returnValue($user));
$this->session
@ -178,12 +178,8 @@ class AuthTest extends TestCase {
$this->userSession
->expects($this->once())
->method('logClientIn')
->with('MyTestUser', 'MyTestPassword')
->with('MyTestUser', 'MyTestPassword', $this->request)
->will($this->returnValue(true));
$this->userSession
->expects($this->once())
->method('createSessionToken')
->with($this->request, 'MyTestUser', 'MyTestUser', 'MyTestPassword');
$this->session
->expects($this->once())
->method('set')
@ -212,6 +208,25 @@ class AuthTest extends TestCase {
$this->assertFalse($this->invokePrivate($this->auth, 'validateUserPass', ['MyTestUser', 'MyTestPassword']));
}
/**
* @expectedException \OCA\DAV\Connector\Sabre\Exception\PasswordLoginForbidden
*/
public function testValidateUserPassWithPasswordLoginForbidden() {
$this->userSession
->expects($this->once())
->method('isLoggedIn')
->will($this->returnValue(false));
$this->userSession
->expects($this->once())
->method('logClientIn')
->with('MyTestUser', 'MyTestPassword')
->will($this->throwException(new \OC\Authentication\Exceptions\PasswordLoginForbiddenException()));
$this->session
->expects($this->once())
->method('close');
$this->invokePrivate($this->auth, 'validateUserPass', ['MyTestUser', 'MyTestPassword']);
}
public function testAuthenticateAlreadyLoggedInWithoutCsrfTokenForNonGet() {
$request = $this->getMockBuilder('Sabre\HTTP\RequestInterface')
@ -626,17 +641,14 @@ class AuthTest extends TestCase {
->method('logClientIn')
->with('username', 'password')
->will($this->returnValue(true));
$this->userSession
->expects($this->once())
->method('createSessionToken');
$user = $this->getMockBuilder('\OCP\IUser')
->disableOriginalConstructor()
->getMock();
$user->expects($this->exactly(4))
$user->expects($this->exactly(3))
->method('getUID')
->will($this->returnValue('MyTestUser'));
$this->userSession
->expects($this->exactly(4))
->expects($this->exactly(3))
->method('getUser')
->will($this->returnValue($user));
$response = $this->auth->check($server->httpRequest, $server->httpResponse);

View File

@ -15,6 +15,7 @@ OC.L10N.register(
"Could not change the password. Maybe the old password was not correct." : "不能修改密码。旧密码可能不正确。",
"Could not update the private key password." : "不能更新私有密钥。",
"The old password was not correct, please try again." : "原始密码错误,请重试。",
"The current log-in password was not correct, please try again." : "当前登录密码不正确,请重试。",
"Private key password successfully updated." : "私钥密码成功更新。",
"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." : "无效的私有密钥。请到您的个人配置里去更新私有密钥,来恢复对加密文件的访问。",
"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" : "加密应用被启用了,但是你的加密密钥没有初始化,请重新登出登录系统一次。",

View File

@ -13,6 +13,7 @@
"Could not change the password. Maybe the old password was not correct." : "不能修改密码。旧密码可能不正确。",
"Could not update the private key password." : "不能更新私有密钥。",
"The old password was not correct, please try again." : "原始密码错误,请重试。",
"The current log-in password was not correct, please try again." : "当前登录密码不正确,请重试。",
"Private key password successfully updated." : "私钥密码成功更新。",
"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." : "无效的私有密钥。请到您的个人配置里去更新私有密钥,来恢复对加密文件的访问。",
"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" : "加密应用被启用了,但是你的加密密钥没有初始化,请重新登出登录系统一次。",

View File

@ -1,7 +1,27 @@
OC.L10N.register(
"federatedfilesharing",
{
"Federated sharing" : "Compartició federada",
"Invalid Federated Cloud ID" : "ID de núvol federat invàlid",
"Sharing %s failed, because this item is already shared with %s" : "Ha fallat en compartir %s, perquè l'element ja està compartit amb %s",
"Open documentation" : "Obre la documentació"
"Not allowed to create a federated share with the same user" : "No està permés crear una compartició federada amb el mateix usuari",
"File is already shared with %s" : "El fitxer ja està compartit amb %s",
"Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "La compartició de %s ha fallat, no es pot trobar %s, potser el servidor està actualment innacessible.",
"You received \"/%3$s\" as a remote share from %1$s (on behalf of %2$s)" : "Has rebut \"/%3$s\" com una compartició remota des de %1$s (de part de %2$s)",
"You received \"/%3$s\" as a remote share from %1$s" : "Has rebut \"/%3$s\" com una compartició remota de %1$s",
"Accept" : "Acceptar",
"Decline" : "Denegar",
"Share with me through my #ownCloud Federated Cloud ID, see %s" : "Comparteix amb mi a través del meu #ownCloud ID de Núvol Federat, consulteu %s",
"Share with me through my #ownCloud Federated Cloud ID" : "Comparteix amb mi a través del meu #ownCloud ID de Núvol Federat",
"Federated Cloud Sharing" : "Compartició federada de núvol",
"Open documentation" : "Obre la documentació",
"Allow users on this server to send shares to other servers" : "Permet als usuaris d'aquest servidor enviar comparticions a d'altres servidors",
"Allow users on this server to receive shares from other servers" : "Permet als usuaris d'aquest servidor rebre comparticions a d'altres servidors",
"Federated Cloud" : "Núvol federat",
"Your Federated Cloud ID:" : "El teu ID de Núvol Federat:",
"Share it:" : "Comparteix-lo:",
"Add to your website" : "Afegeix a la teva pàgina web",
"Share with me via ownCloud" : "Comparteix amb mi amb ownCloud",
"HTML Code:" : "Codi HTML:"
},
"nplurals=2; plural=(n != 1);");

View File

@ -1,5 +1,25 @@
{ "translations": {
"Federated sharing" : "Compartició federada",
"Invalid Federated Cloud ID" : "ID de núvol federat invàlid",
"Sharing %s failed, because this item is already shared with %s" : "Ha fallat en compartir %s, perquè l'element ja està compartit amb %s",
"Open documentation" : "Obre la documentació"
"Not allowed to create a federated share with the same user" : "No està permés crear una compartició federada amb el mateix usuari",
"File is already shared with %s" : "El fitxer ja està compartit amb %s",
"Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "La compartició de %s ha fallat, no es pot trobar %s, potser el servidor està actualment innacessible.",
"You received \"/%3$s\" as a remote share from %1$s (on behalf of %2$s)" : "Has rebut \"/%3$s\" com una compartició remota des de %1$s (de part de %2$s)",
"You received \"/%3$s\" as a remote share from %1$s" : "Has rebut \"/%3$s\" com una compartició remota de %1$s",
"Accept" : "Acceptar",
"Decline" : "Denegar",
"Share with me through my #ownCloud Federated Cloud ID, see %s" : "Comparteix amb mi a través del meu #ownCloud ID de Núvol Federat, consulteu %s",
"Share with me through my #ownCloud Federated Cloud ID" : "Comparteix amb mi a través del meu #ownCloud ID de Núvol Federat",
"Federated Cloud Sharing" : "Compartició federada de núvol",
"Open documentation" : "Obre la documentació",
"Allow users on this server to send shares to other servers" : "Permet als usuaris d'aquest servidor enviar comparticions a d'altres servidors",
"Allow users on this server to receive shares from other servers" : "Permet als usuaris d'aquest servidor rebre comparticions a d'altres servidors",
"Federated Cloud" : "Núvol federat",
"Your Federated Cloud ID:" : "El teu ID de Núvol Federat:",
"Share it:" : "Comparteix-lo:",
"Add to your website" : "Afegeix a la teva pàgina web",
"Share with me via ownCloud" : "Comparteix amb mi amb ownCloud",
"HTML Code:" : "Codi HTML:"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@ -5,7 +5,10 @@ OC.L10N.register(
"Invalid Federated Cloud ID" : "Ongeldige Federated Cloud ID",
"Sharing %s failed, because this item is already shared with %s" : "Delen van %s is mislukt, omdat het object al wordt gedeeld met %s",
"Not allowed to create a federated share with the same user" : "Het is niet toegestaan om een gefedereerde share met dezelfde gebruikersserver te maken",
"File is already shared with %s" : "Bestand is al gedeeld met %s",
"Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "Delen van %s mislukt, kon %s niet vinden, misschien is de server niet bereikbaar.",
"You received \"/%3$s\" as a remote share from %1$s (on behalf of %2$s)" : "U ontving \"/%3$s\" als een externe share van %1$s (namens %2$s)",
"You received \"/%3$s\" as a remote share from %1$s" : "U ontving \"/%3$s\" as een externe share van %1$s",
"Accept" : "Accepteren",
"Decline" : "Afwijzen",
"Share with me through my #Nextcloud Federated Cloud ID, see %s" : "Deel met mij via mijn #Nextcloud federated Cloud ID, zie %s",

View File

@ -3,7 +3,10 @@
"Invalid Federated Cloud ID" : "Ongeldige Federated Cloud ID",
"Sharing %s failed, because this item is already shared with %s" : "Delen van %s is mislukt, omdat het object al wordt gedeeld met %s",
"Not allowed to create a federated share with the same user" : "Het is niet toegestaan om een gefedereerde share met dezelfde gebruikersserver te maken",
"File is already shared with %s" : "Bestand is al gedeeld met %s",
"Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "Delen van %s mislukt, kon %s niet vinden, misschien is de server niet bereikbaar.",
"You received \"/%3$s\" as a remote share from %1$s (on behalf of %2$s)" : "U ontving \"/%3$s\" als een externe share van %1$s (namens %2$s)",
"You received \"/%3$s\" as a remote share from %1$s" : "U ontving \"/%3$s\" as een externe share van %1$s",
"Accept" : "Accepteren",
"Decline" : "Afwijzen",
"Share with me through my #Nextcloud Federated Cloud ID, see %s" : "Deel met mij via mijn #Nextcloud federated Cloud ID, zie %s",

View File

@ -1,6 +1,7 @@
OC.L10N.register(
"federatedfilesharing",
{
"Federated sharing" : "Sfederowane udostępnianie",
"Sharing %s failed, because this item is already shared with %s" : "Współdzielenie %s nie powiodło się, ponieważ element jest już współdzielony z %s",
"File is already shared with %s" : "Plik jest już współdzielony z %s",
"Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "Współdzielenie %s nie powiodło się, nie można odnaleźć %s. Prawdopobnie serwer nie jest teraz osiągalny.",

View File

@ -1,4 +1,5 @@
{ "translations": {
"Federated sharing" : "Sfederowane udostępnianie",
"Sharing %s failed, because this item is already shared with %s" : "Współdzielenie %s nie powiodło się, ponieważ element jest już współdzielony z %s",
"File is already shared with %s" : "Plik jest już współdzielony z %s",
"Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "Współdzielenie %s nie powiodło się, nie można odnaleźć %s. Prawdopobnie serwer nie jest teraz osiągalny.",

View File

@ -60,7 +60,7 @@ $(document).ready(function () {
// remove trusted server from list
$( "#listOfTrustedServers" ).on('click', 'li > .icon-delete', function() {
var $this = $(this).parent();
id = $this.attr('id');
var id = $this.attr('id');
$.ajax({
url: OC.generateUrl('/apps/federation/trusted-servers/' + id),
type: 'DELETE',

View File

@ -21,6 +21,7 @@ OC.L10N.register(
"Invalid directory." : "Dossier non valide.",
"Files" : "Fichiers",
"All files" : "Tous les fichiers",
"File could not be found" : "Ce fichier n'a pu être trouvé.",
"Home" : "Mes fichiers",
"Close" : "Fermer",
"Favorites" : "Favoris",

View File

@ -19,6 +19,7 @@
"Invalid directory." : "Dossier non valide.",
"Files" : "Fichiers",
"All files" : "Tous les fichiers",
"File could not be found" : "Ce fichier n'a pu être trouvé.",
"Home" : "Mes fichiers",
"Close" : "Fermer",
"Favorites" : "Favoris",

View File

@ -21,6 +21,7 @@ OC.L10N.register(
"Invalid directory." : "תיקייה שגויה.",
"Files" : "קבצים",
"All files" : "כל הקבצים",
"File could not be found" : "הקובץ לא ניתן לאיתור",
"Home" : "בית",
"Close" : "סגירה",
"Favorites" : "מועדפים",
@ -33,8 +34,14 @@ OC.L10N.register(
"Uploading..." : "העלאה...",
"..." : "...",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "{hours}:{minutes}:{seconds} hour{plural_s} left",
"{hours}:{minutes}h" : "{hours}:{minutes}שעות",
"{minutes}:{seconds} minute{plural_s} left" : "{minutes}:{seconds} דקות{plural_s} נשארו",
"{minutes}:{seconds}m" : "{minutes}:{seconds}דקות",
"{seconds} second{plural_s} left" : "{seconds} שניות{plural_s} נשארו",
"{seconds}s" : "{seconds}שניות",
"Any moment now..." : "עכשיו בכל רגע...",
"Soon..." : "בקרוב...",
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize} מתוך {totalSize} ({bitrate})",
"File upload is in progress. Leaving the page now will cancel the upload." : "מתבצעת כעת העלאת קבצים. עזיבה של העמוד תבטל את ההעלאה.",
"Actions" : "פעולות",
"Download" : "הורדה",

View File

@ -19,6 +19,7 @@
"Invalid directory." : "תיקייה שגויה.",
"Files" : "קבצים",
"All files" : "כל הקבצים",
"File could not be found" : "הקובץ לא ניתן לאיתור",
"Home" : "בית",
"Close" : "סגירה",
"Favorites" : "מועדפים",
@ -31,8 +32,14 @@
"Uploading..." : "העלאה...",
"..." : "...",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "{hours}:{minutes}:{seconds} hour{plural_s} left",
"{hours}:{minutes}h" : "{hours}:{minutes}שעות",
"{minutes}:{seconds} minute{plural_s} left" : "{minutes}:{seconds} דקות{plural_s} נשארו",
"{minutes}:{seconds}m" : "{minutes}:{seconds}דקות",
"{seconds} second{plural_s} left" : "{seconds} שניות{plural_s} נשארו",
"{seconds}s" : "{seconds}שניות",
"Any moment now..." : "עכשיו בכל רגע...",
"Soon..." : "בקרוב...",
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize} מתוך {totalSize} ({bitrate})",
"File upload is in progress. Leaving the page now will cancel the upload." : "מתבצעת כעת העלאת קבצים. עזיבה של העמוד תבטל את ההעלאה.",
"Actions" : "פעולות",
"Download" : "הורדה",

View File

@ -21,6 +21,7 @@ OC.L10N.register(
"Invalid directory." : "Ongeldige directory.",
"Files" : "Bestanden",
"All files" : "Alle bestanden",
"File could not be found" : "Bestand kon niet worden gevonden",
"Home" : "Thuis",
"Close" : "Sluiten",
"Favorites" : "Favorieten",
@ -32,6 +33,15 @@ OC.L10N.register(
"Could not get result from server." : "Kon het resultaat van de server niet terugkrijgen.",
"Uploading..." : "Uploading...",
"..." : "...",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "{hours}:{minutes}:{seconds} uur{plural_s} over",
"{hours}:{minutes}h" : "{hours}:{minutes}h",
"{minutes}:{seconds} minute{plural_s} left" : "{minutes}:{seconds} minuten{plural_s} over",
"{minutes}:{seconds}m" : "{minutes}:{seconds}m",
"{seconds} second{plural_s} left" : "{seconds} seconden{plural_s} over",
"{seconds}s" : "{seconds}en",
"Any moment now..." : "Heel snel nu...",
"Soon..." : "Binnenkort...",
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize} van {totalSize} ({bitrate})",
"File upload is in progress. Leaving the page now will cancel the upload." : "Bestandsupload is bezig. Wanneer de pagina nu verlaten wordt, stopt de upload.",
"Actions" : "Acties",
"Download" : "Downloaden",
@ -86,7 +96,7 @@ OC.L10N.register(
"A file or folder has been <strong>changed</strong>" : "Een bestand of map is <strong>gewijzigd</strong>",
"Limit notifications about creation and changes to your <strong>favorite files</strong> <em>(Stream only)</em>" : "Beperk meldingen over aanmaken en wijzigen aan uw <strong>favoriete bestanden</strong> <em>(Alleen stream)</em>",
"A file or folder has been <strong>deleted</strong>" : "Een bestand of map is <strong>verwijderd</strong>",
"A file or folder has been <strong>restored</strong>" : "Een bestand of een mmaps is <strong>hersteld</strong>",
"A file or folder has been <strong>restored</strong>" : "Een bestand of een map is <strong>hersteld</strong>",
"You created %1$s" : "Gecreëerd: %1$s",
"%2$s created %1$s" : "%2$s creëerde %1$s",
"%1$s was created in a public folder" : "%1$s werd gecreëerd in een openbare map",

View File

@ -19,6 +19,7 @@
"Invalid directory." : "Ongeldige directory.",
"Files" : "Bestanden",
"All files" : "Alle bestanden",
"File could not be found" : "Bestand kon niet worden gevonden",
"Home" : "Thuis",
"Close" : "Sluiten",
"Favorites" : "Favorieten",
@ -30,6 +31,15 @@
"Could not get result from server." : "Kon het resultaat van de server niet terugkrijgen.",
"Uploading..." : "Uploading...",
"..." : "...",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "{hours}:{minutes}:{seconds} uur{plural_s} over",
"{hours}:{minutes}h" : "{hours}:{minutes}h",
"{minutes}:{seconds} minute{plural_s} left" : "{minutes}:{seconds} minuten{plural_s} over",
"{minutes}:{seconds}m" : "{minutes}:{seconds}m",
"{seconds} second{plural_s} left" : "{seconds} seconden{plural_s} over",
"{seconds}s" : "{seconds}en",
"Any moment now..." : "Heel snel nu...",
"Soon..." : "Binnenkort...",
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize} van {totalSize} ({bitrate})",
"File upload is in progress. Leaving the page now will cancel the upload." : "Bestandsupload is bezig. Wanneer de pagina nu verlaten wordt, stopt de upload.",
"Actions" : "Acties",
"Download" : "Downloaden",
@ -84,7 +94,7 @@
"A file or folder has been <strong>changed</strong>" : "Een bestand of map is <strong>gewijzigd</strong>",
"Limit notifications about creation and changes to your <strong>favorite files</strong> <em>(Stream only)</em>" : "Beperk meldingen over aanmaken en wijzigen aan uw <strong>favoriete bestanden</strong> <em>(Alleen stream)</em>",
"A file or folder has been <strong>deleted</strong>" : "Een bestand of map is <strong>verwijderd</strong>",
"A file or folder has been <strong>restored</strong>" : "Een bestand of een mmaps is <strong>hersteld</strong>",
"A file or folder has been <strong>restored</strong>" : "Een bestand of een map is <strong>hersteld</strong>",
"You created %1$s" : "Gecreëerd: %1$s",
"%2$s created %1$s" : "%2$s creëerde %1$s",
"%1$s was created in a public folder" : "%1$s werd gecreëerd in een openbare map",

View File

@ -21,6 +21,7 @@ OC.L10N.register(
"Invalid directory." : "Zła ścieżka.",
"Files" : "Pliki",
"All files" : "Wszystkie pliki",
"File could not be found" : "Nie można odnaleźć pliku",
"Home" : "Dom",
"Close" : "Zamknij",
"Favorites" : "Ulubione",
@ -32,8 +33,15 @@ OC.L10N.register(
"Could not get result from server." : "Nie można uzyskać wyniku z serwera.",
"Uploading..." : "Wgrywanie....",
"..." : "...",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "Pozostało {hours}:{minutes}:{seconds} hour{plural_s} ",
"{hours}:{minutes}h" : "{hours}:{minutes}godz.",
"{minutes}:{seconds} minute{plural_s} left" : "Pozostało {minutes}:{seconds} minute{plural_s}",
"{minutes}:{seconds}m" : "{minutes}:{seconds}min.",
"{seconds} second{plural_s} left" : "Pozostało sekund: {seconds}",
"{seconds}s" : "{seconds} s",
"Any moment now..." : "Jeszcze chwilę...",
"Soon..." : "Wkrótce...",
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize} z {totalSize} ({bitrate})",
"File upload is in progress. Leaving the page now will cancel the upload." : "Wysyłanie pliku jest w toku. Jeśli opuścisz tę stronę, wysyłanie zostanie przerwane.",
"Actions" : "Akcje",
"Download" : "Pobierz",
@ -49,6 +57,10 @@ OC.L10N.register(
"This directory is unavailable, please check the logs or contact the administrator" : "Ten folder jest niedostępny, proszę sprawdzić logi lub skontaktować się z administratorem.",
"Could not move \"{file}\", target exists" : "Nie można było przenieść „{file}” plik o takiej nazwie już istnieje",
"Could not move \"{file}\"" : "Nie można było przenieść \"{file}\"",
"{newName} already exists" : "{newName} już istnieje",
"Could not rename \"{fileName}\", it does not exist any more" : "Nie można zmienić nazwy \"{fileName}\", plik nie istnieje",
"The name \"{targetName}\" is already used in the folder \"{dir}\". Please choose a different name." : "Nazwa \"{targetName}\" jest juz używana w folderze \"{dir}\". Proszę wybrać inną nazwę.",
"Could not rename \"{fileName}\"" : "Nie można zmienić nazwy \"{fileName}\"",
"Could not create file \"{file}\"" : "Nie można było utworzyć pliku \"{file}\"",
"Could not create file \"{file}\" because it already exists" : "Nie można było utworzyć pliku \"{file}\", ponieważ ten plik już istnieje.",
"Could not create folder \"{dir}\"" : "Nie można utworzyć folderu „{dir}”",
@ -71,8 +83,10 @@ OC.L10N.register(
"Storage of {owner} is almost full ({usedSpacePercent}%)" : "Miejsce dla {owner} jest na wyczerpaniu ({usedSpacePercent}%)",
"Your storage is almost full ({usedSpacePercent}%)" : "Twój magazyn jest prawie pełny ({usedSpacePercent}%)",
"Path" : "Ścieżka",
"_%n byte_::_%n bytes_" : ["%n bajt","%n bajty","%n bajtów"],
"Favorited" : "Ulubione",
"Favorite" : "Ulubione",
"Local link" : "Lokalny odnośnik",
"Folder" : "Folder",
"New folder" : "Nowy folder",
"{newname} already exists" : "{newname} już istnieje",
@ -80,6 +94,7 @@ OC.L10N.register(
"An error occurred while trying to update the tags" : "Wystąpił błąd podczas aktualizacji tagów",
"A new file or folder has been <strong>created</strong>" : "Nowy plik lub folder został <strong>utworzony</strong>",
"A file or folder has been <strong>changed</strong>" : "Plik lub folder został <strong>zmieniony</strong>",
"Limit notifications about creation and changes to your <strong>favorite files</strong> <em>(Stream only)</em>" : "Ogranicz powiadomienia o utworzeniu i zmianach do swoich <strong>ulubionych plkow</strong> <em>(Tylko w strumieniu aktywności)</em>",
"A file or folder has been <strong>deleted</strong>" : "Plik lub folder został <strong>usunięty</strong>",
"A file or folder has been <strong>restored</strong>" : "Plik lub folder został <strong>przywrócy</strong>",
"You created %1$s" : "Utworzyłeś %1$s",
@ -99,15 +114,20 @@ OC.L10N.register(
"Maximum upload size" : "Maksymalny rozmiar wysyłanego pliku",
"max. possible: " : "maks. możliwy:",
"Save" : "Zapisz",
"With PHP-FPM it might take 5 minutes for changes to be applied." : "Z PHP-FPM zastosowanie zmian może zająć 5 minut.",
"Missing permissions to edit from here." : "Brakuje uprawnień do edycji.",
"Settings" : "Ustawienia",
"Show hidden files" : "Pokaż ukryte pliki",
"WebDAV" : "WebDAV",
"Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Użyj tego adresu aby uzyskać <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">dostęp do swoich plików poprzez WebDAV</a>",
"No files in here" : "Brak plików",
"Upload some content or sync with your devices!" : "Wgraj coś, albo wykonaj synchronizację ze swoimi urządzeniami.",
"No entries found in this folder" : "Brak wpisów w tym folderze",
"Select all" : "Wybierz wszystko",
"Upload too large" : "Ładowany plik jest za duży",
"The files you are trying to upload exceed the maximum size for file uploads on this server." : "Pliki, które próbujesz przesłać, przekraczają maksymalną dopuszczalną wielkość.",
"No favorites" : "Brak ulubionych",
"Files and folders you mark as favorite will show up here" : "Pliki i katalogi, które oznaczysz jako ulubione wyświetlą się tutaj",
"Text file" : "Plik tekstowy",
"New text file.txt" : "Nowy plik tekstowy.txt"
},

View File

@ -19,6 +19,7 @@
"Invalid directory." : "Zła ścieżka.",
"Files" : "Pliki",
"All files" : "Wszystkie pliki",
"File could not be found" : "Nie można odnaleźć pliku",
"Home" : "Dom",
"Close" : "Zamknij",
"Favorites" : "Ulubione",
@ -30,8 +31,15 @@
"Could not get result from server." : "Nie można uzyskać wyniku z serwera.",
"Uploading..." : "Wgrywanie....",
"..." : "...",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "Pozostało {hours}:{minutes}:{seconds} hour{plural_s} ",
"{hours}:{minutes}h" : "{hours}:{minutes}godz.",
"{minutes}:{seconds} minute{plural_s} left" : "Pozostało {minutes}:{seconds} minute{plural_s}",
"{minutes}:{seconds}m" : "{minutes}:{seconds}min.",
"{seconds} second{plural_s} left" : "Pozostało sekund: {seconds}",
"{seconds}s" : "{seconds} s",
"Any moment now..." : "Jeszcze chwilę...",
"Soon..." : "Wkrótce...",
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize} z {totalSize} ({bitrate})",
"File upload is in progress. Leaving the page now will cancel the upload." : "Wysyłanie pliku jest w toku. Jeśli opuścisz tę stronę, wysyłanie zostanie przerwane.",
"Actions" : "Akcje",
"Download" : "Pobierz",
@ -47,6 +55,10 @@
"This directory is unavailable, please check the logs or contact the administrator" : "Ten folder jest niedostępny, proszę sprawdzić logi lub skontaktować się z administratorem.",
"Could not move \"{file}\", target exists" : "Nie można było przenieść „{file}” plik o takiej nazwie już istnieje",
"Could not move \"{file}\"" : "Nie można było przenieść \"{file}\"",
"{newName} already exists" : "{newName} już istnieje",
"Could not rename \"{fileName}\", it does not exist any more" : "Nie można zmienić nazwy \"{fileName}\", plik nie istnieje",
"The name \"{targetName}\" is already used in the folder \"{dir}\". Please choose a different name." : "Nazwa \"{targetName}\" jest juz używana w folderze \"{dir}\". Proszę wybrać inną nazwę.",
"Could not rename \"{fileName}\"" : "Nie można zmienić nazwy \"{fileName}\"",
"Could not create file \"{file}\"" : "Nie można było utworzyć pliku \"{file}\"",
"Could not create file \"{file}\" because it already exists" : "Nie można było utworzyć pliku \"{file}\", ponieważ ten plik już istnieje.",
"Could not create folder \"{dir}\"" : "Nie można utworzyć folderu „{dir}”",
@ -69,8 +81,10 @@
"Storage of {owner} is almost full ({usedSpacePercent}%)" : "Miejsce dla {owner} jest na wyczerpaniu ({usedSpacePercent}%)",
"Your storage is almost full ({usedSpacePercent}%)" : "Twój magazyn jest prawie pełny ({usedSpacePercent}%)",
"Path" : "Ścieżka",
"_%n byte_::_%n bytes_" : ["%n bajt","%n bajty","%n bajtów"],
"Favorited" : "Ulubione",
"Favorite" : "Ulubione",
"Local link" : "Lokalny odnośnik",
"Folder" : "Folder",
"New folder" : "Nowy folder",
"{newname} already exists" : "{newname} już istnieje",
@ -78,6 +92,7 @@
"An error occurred while trying to update the tags" : "Wystąpił błąd podczas aktualizacji tagów",
"A new file or folder has been <strong>created</strong>" : "Nowy plik lub folder został <strong>utworzony</strong>",
"A file or folder has been <strong>changed</strong>" : "Plik lub folder został <strong>zmieniony</strong>",
"Limit notifications about creation and changes to your <strong>favorite files</strong> <em>(Stream only)</em>" : "Ogranicz powiadomienia o utworzeniu i zmianach do swoich <strong>ulubionych plkow</strong> <em>(Tylko w strumieniu aktywności)</em>",
"A file or folder has been <strong>deleted</strong>" : "Plik lub folder został <strong>usunięty</strong>",
"A file or folder has been <strong>restored</strong>" : "Plik lub folder został <strong>przywrócy</strong>",
"You created %1$s" : "Utworzyłeś %1$s",
@ -97,15 +112,20 @@
"Maximum upload size" : "Maksymalny rozmiar wysyłanego pliku",
"max. possible: " : "maks. możliwy:",
"Save" : "Zapisz",
"With PHP-FPM it might take 5 minutes for changes to be applied." : "Z PHP-FPM zastosowanie zmian może zająć 5 minut.",
"Missing permissions to edit from here." : "Brakuje uprawnień do edycji.",
"Settings" : "Ustawienia",
"Show hidden files" : "Pokaż ukryte pliki",
"WebDAV" : "WebDAV",
"Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Użyj tego adresu aby uzyskać <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">dostęp do swoich plików poprzez WebDAV</a>",
"No files in here" : "Brak plików",
"Upload some content or sync with your devices!" : "Wgraj coś, albo wykonaj synchronizację ze swoimi urządzeniami.",
"No entries found in this folder" : "Brak wpisów w tym folderze",
"Select all" : "Wybierz wszystko",
"Upload too large" : "Ładowany plik jest za duży",
"The files you are trying to upload exceed the maximum size for file uploads on this server." : "Pliki, które próbujesz przesłać, przekraczają maksymalną dopuszczalną wielkość.",
"No favorites" : "Brak ulubionych",
"Files and folders you mark as favorite will show up here" : "Pliki i katalogi, które oznaczysz jako ulubione wyświetlą się tutaj",
"Text file" : "Plik tekstowy",
"New text file.txt" : "Nowy plik tekstowy.txt"
},"pluralForm" :"nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"

View File

@ -21,6 +21,7 @@ OC.L10N.register(
"Invalid directory." : "无效文件夹。",
"Files" : "文件",
"All files" : "全部文件",
"File could not be found" : "文件未找到",
"Home" : "家庭",
"Close" : "关闭",
"Favorites" : "收藏",
@ -32,6 +33,15 @@ OC.L10N.register(
"Could not get result from server." : "不能从服务器得到结果",
"Uploading..." : "上传中...",
"..." : "...",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "剩余时间:{hours}:{minutes}:{seconds} ",
"{hours}:{minutes}h" : "{hours}:{minutes}",
"{minutes}:{seconds} minute{plural_s} left" : "剩余分钟:{minutes}:{seconds} ",
"{minutes}:{seconds}m" : "{minutes}:{seconds}",
"{seconds} second{plural_s} left" : "剩下{seconds} 秒",
"{seconds}s" : "{seconds}秒",
"Any moment now..." : "现在任何时候...",
"Soon..." : "很快...",
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize} / {totalSize} ({bitrate})",
"File upload is in progress. Leaving the page now will cancel the upload." : "文件正在上传中。现在离开此页会导致上传动作被取消。",
"Actions" : "动作",
"Download" : "下载",
@ -77,6 +87,7 @@ OC.L10N.register(
"_%n byte_::_%n bytes_" : ["%n 字节"],
"Favorited" : "已收藏",
"Favorite" : "收藏",
"Local link" : "本地链接",
"Folder" : "文件夹",
"New folder" : "增加文件夹",
"{newname} already exists" : "{newname} 已经存在",
@ -107,7 +118,9 @@ OC.L10N.register(
"With PHP-FPM it might take 5 minutes for changes to be applied." : "对于 PHP-FPM 这个值改变后可能需要 5 分钟才会生效。",
"Missing permissions to edit from here." : "没有从这里进行编辑的权限",
"Settings" : "设置",
"Show hidden files" : "显示隐藏文件",
"WebDAV" : "WebDAV",
"Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "使用这个地址 <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">通过 WebDAV 访问您的文件</a>",
"No files in here" : "无文件",
"Upload some content or sync with your devices!" : "上传一些内容或者与设备同步!",
"No entries found in this folder" : "此文件夹中无项目",

View File

@ -19,6 +19,7 @@
"Invalid directory." : "无效文件夹。",
"Files" : "文件",
"All files" : "全部文件",
"File could not be found" : "文件未找到",
"Home" : "家庭",
"Close" : "关闭",
"Favorites" : "收藏",
@ -30,6 +31,15 @@
"Could not get result from server." : "不能从服务器得到结果",
"Uploading..." : "上传中...",
"..." : "...",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "剩余时间:{hours}:{minutes}:{seconds} ",
"{hours}:{minutes}h" : "{hours}:{minutes}",
"{minutes}:{seconds} minute{plural_s} left" : "剩余分钟:{minutes}:{seconds} ",
"{minutes}:{seconds}m" : "{minutes}:{seconds}",
"{seconds} second{plural_s} left" : "剩下{seconds} 秒",
"{seconds}s" : "{seconds}秒",
"Any moment now..." : "现在任何时候...",
"Soon..." : "很快...",
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize} / {totalSize} ({bitrate})",
"File upload is in progress. Leaving the page now will cancel the upload." : "文件正在上传中。现在离开此页会导致上传动作被取消。",
"Actions" : "动作",
"Download" : "下载",
@ -75,6 +85,7 @@
"_%n byte_::_%n bytes_" : ["%n 字节"],
"Favorited" : "已收藏",
"Favorite" : "收藏",
"Local link" : "本地链接",
"Folder" : "文件夹",
"New folder" : "增加文件夹",
"{newname} already exists" : "{newname} 已经存在",
@ -105,7 +116,9 @@
"With PHP-FPM it might take 5 minutes for changes to be applied." : "对于 PHP-FPM 这个值改变后可能需要 5 分钟才会生效。",
"Missing permissions to edit from here." : "没有从这里进行编辑的权限",
"Settings" : "设置",
"Show hidden files" : "显示隐藏文件",
"WebDAV" : "WebDAV",
"Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "使用这个地址 <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">通过 WebDAV 访问您的文件</a>",
"No files in here" : "无文件",
"Upload some content or sync with your devices!" : "上传一些内容或者与设备同步!",
"No entries found in this folder" : "此文件夹中无项目",

View File

@ -9,7 +9,7 @@
},
"require": {
"icewind/smb": "1.1.0",
"icewind/streams": "0.4"
"icewind/streams": "0.4.1"
}
}

View File

@ -4,8 +4,8 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
"This file is @generated automatically"
],
"hash": "8de0823d3d0a167ee24450a111cb67b9",
"content-hash": "6733058865c1765823b31cfbb24552e1",
"hash": "8ed3150b0b3e916ad66558242b4cf2a0",
"content-hash": "70722dcee13b3ac1c1951479b7431c97",
"packages": [
{
"name": "icewind/smb",
@ -51,16 +51,16 @@
},
{
"name": "icewind/streams",
"version": "0.4.0",
"version": "0.4.1",
"source": {
"type": "git",
"url": "https://github.com/icewind1991/Streams.git",
"reference": "9ca40274645a967ecc3408b0ca2e6255ead1d1d3"
"reference": "d3620e8dc410c86c2ba55579803679c4e0b289ac"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/icewind1991/Streams/zipball/9ca40274645a967ecc3408b0ca2e6255ead1d1d3",
"reference": "9ca40274645a967ecc3408b0ca2e6255ead1d1d3",
"url": "https://api.github.com/repos/icewind1991/Streams/zipball/d3620e8dc410c86c2ba55579803679c4e0b289ac",
"reference": "d3620e8dc410c86c2ba55579803679c4e0b289ac",
"shasum": ""
},
"require": {
@ -88,7 +88,7 @@
}
],
"description": "A set of generic stream wrappers",
"time": "2016-03-17 12:32:25"
"time": "2016-06-02 14:37:52"
}
],
"packages-dev": [],

View File

@ -42,13 +42,6 @@ return array(
'Icewind\\SMB\\Server' => $vendorDir . '/icewind/smb/src/Server.php',
'Icewind\\SMB\\Share' => $vendorDir . '/icewind/smb/src/Share.php',
'Icewind\\SMB\\System' => $vendorDir . '/icewind/smb/src/System.php',
'Icewind\\SMB\\Test\\AbstractShare' => $vendorDir . '/icewind/smb/tests/AbstractShare.php',
'Icewind\\SMB\\Test\\NativeShare' => $vendorDir . '/icewind/smb/tests/NativeShare.php',
'Icewind\\SMB\\Test\\NativeStream' => $vendorDir . '/icewind/smb/tests/NativeStream.php',
'Icewind\\SMB\\Test\\Parser' => $vendorDir . '/icewind/smb/tests/Parser.php',
'Icewind\\SMB\\Test\\Server' => $vendorDir . '/icewind/smb/tests/Server.php',
'Icewind\\SMB\\Test\\Share' => $vendorDir . '/icewind/smb/tests/Share.php',
'Icewind\\SMB\\Test\\TestCase' => $vendorDir . '/icewind/smb/tests/TestCase.php',
'Icewind\\SMB\\TimeZoneProvider' => $vendorDir . '/icewind/smb/src/TimeZoneProvider.php',
'Icewind\\Streams\\CallbackWrapper' => $vendorDir . '/icewind/streams/src/CallbackWrapper.php',
'Icewind\\Streams\\Directory' => $vendorDir . '/icewind/streams/src/Directory.php',
@ -60,14 +53,6 @@ return array(
'Icewind\\Streams\\Path' => $vendorDir . '/icewind/streams/src/Path.php',
'Icewind\\Streams\\RetryWrapper' => $vendorDir . '/icewind/streams/src/RetryWrapper.php',
'Icewind\\Streams\\SeekableWrapper' => $vendorDir . '/icewind/streams/src/SeekableWrapper.php',
'Icewind\\Streams\\Tests\\DirectoryFilter' => $vendorDir . '/icewind/streams/tests/DirectoryFilter.php',
'Icewind\\Streams\\Tests\\DirectoryWrapper' => $vendorDir . '/icewind/streams/tests/DirectoryWrapper.php',
'Icewind\\Streams\\Tests\\DirectoryWrapperDummy' => $vendorDir . '/icewind/streams/tests/DirectoryWrapper.php',
'Icewind\\Streams\\Tests\\DirectoryWrapperNull' => $vendorDir . '/icewind/streams/tests/DirectoryWrapper.php',
'Icewind\\Streams\\Tests\\PartialWrapper' => $vendorDir . '/icewind/streams/tests/RetryWrapper.php',
'Icewind\\Streams\\Tests\\RetryWrapper' => $vendorDir . '/icewind/streams/tests/RetryWrapper.php',
'Icewind\\Streams\\Tests\\SeekableWrapper' => $vendorDir . '/icewind/streams/tests/SeekableWrapper.php',
'Icewind\\Streams\\Tests\\UrlCallBack' => $vendorDir . '/icewind/streams/tests/UrlCallBack.php',
'Icewind\\Streams\\Url' => $vendorDir . '/icewind/streams/src/Url.php',
'Icewind\\Streams\\UrlCallback' => $vendorDir . '/icewind/streams/src/UrlCallBack.php',
'Icewind\\Streams\\Wrapper' => $vendorDir . '/icewind/streams/src/Wrapper.php',

View File

@ -1,47 +1,4 @@
[
{
"name": "icewind/streams",
"version": "0.4.0",
"version_normalized": "0.4.0.0",
"source": {
"type": "git",
"url": "https://github.com/icewind1991/Streams.git",
"reference": "9ca40274645a967ecc3408b0ca2e6255ead1d1d3"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/icewind1991/Streams/zipball/9ca40274645a967ecc3408b0ca2e6255ead1d1d3",
"reference": "9ca40274645a967ecc3408b0ca2e6255ead1d1d3",
"shasum": ""
},
"require": {
"php": ">=5.3"
},
"require-dev": {
"phpunit/phpunit": "^4.8",
"satooshi/php-coveralls": "v1.0.0"
},
"time": "2016-03-17 12:32:25",
"type": "library",
"installation-source": "dist",
"autoload": {
"psr-4": {
"Icewind\\Streams\\Tests\\": "tests/",
"Icewind\\Streams\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Robin Appelman",
"email": "icewind@owncloud.com"
}
],
"description": "A set of generic stream wrappers"
},
{
"name": "icewind/smb",
"version": "v1.1.0",
@ -85,5 +42,48 @@
}
],
"description": "php wrapper for smbclient and libsmbclient-php"
},
{
"name": "icewind/streams",
"version": "0.4.1",
"version_normalized": "0.4.1.0",
"source": {
"type": "git",
"url": "https://github.com/icewind1991/Streams.git",
"reference": "d3620e8dc410c86c2ba55579803679c4e0b289ac"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/icewind1991/Streams/zipball/d3620e8dc410c86c2ba55579803679c4e0b289ac",
"reference": "d3620e8dc410c86c2ba55579803679c4e0b289ac",
"shasum": ""
},
"require": {
"php": ">=5.3"
},
"require-dev": {
"phpunit/phpunit": "^4.8",
"satooshi/php-coveralls": "v1.0.0"
},
"time": "2016-06-02 14:37:52",
"type": "library",
"installation-source": "dist",
"autoload": {
"psr-4": {
"Icewind\\Streams\\Tests\\": "tests/",
"Icewind\\Streams\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Robin Appelman",
"email": "icewind@owncloud.com"
}
],
"description": "A set of generic stream wrappers"
}
]

View File

@ -44,7 +44,7 @@ class RetryWrapper extends Wrapper {
$result = parent::stream_read($count);
$bytesReceived = strlen($result);
while ($bytesReceived < $count && !$this->stream_eof()) {
while (strlen($result) > 0 && $bytesReceived < $count && !$this->stream_eof()) {
$result .= parent::stream_read($count - $bytesReceived);
$bytesReceived = strlen($result);
}
@ -54,11 +54,13 @@ class RetryWrapper extends Wrapper {
public function stream_write($data) {
$bytesToSend = strlen($data);
$result = parent::stream_write($data);
$bytesWritten = parent::stream_write($data);
$result = $bytesWritten;
while ($result < $bytesToSend && !$this->stream_eof()) {
while ($bytesWritten > 0 && $result < $bytesToSend && !$this->stream_eof()) {
$dataLeft = substr($data, $result);
$result += parent::stream_write($dataLeft);
$bytesWritten = parent::stream_write($dataLeft);
$result += $bytesWritten;
}
return $result;

View File

@ -854,7 +854,7 @@ MountConfigListView.prototype = _.extend({
this.configureAuthMechanism($tr, storageConfig.authMechanism, onCompletion);
if (storageConfig.backendOptions) {
$td.children().each(function() {
$td.find('input, select').each(function() {
var input = $(this);
var val = storageConfig.backendOptions[input.data('parameter')];
if (val !== undefined) {
@ -1001,7 +1001,7 @@ MountConfigListView.prototype = _.extend({
newElement = $('<input type="password" class="'+classes.join(' ')+'" data-parameter="'+parameter+'" placeholder="'+ trimmedPlaceholder+'" />');
} else if (placeholder.type === MountConfigListView.ParameterTypes.BOOLEAN) {
var checkboxId = _.uniqueId('checkbox_');
newElement = $('<input type="checkbox" id="'+checkboxId+'" class="'+classes.join(' ')+'" data-parameter="'+parameter+'" /><label for="'+checkboxId+'">'+ trimmedPlaceholder+'</label>');
newElement = $('<div><label><input type="checkbox" id="'+checkboxId+'" class="'+classes.join(' ')+'" data-parameter="'+parameter+'" />'+ trimmedPlaceholder+'</label></div>');
} else if (placeholder.type === MountConfigListView.ParameterTypes.HIDDEN) {
newElement = $('<input type="hidden" class="'+classes.join(' ')+'" data-parameter="'+parameter+'" />');
} else {

View File

@ -7,6 +7,8 @@ OC.L10N.register(
"Step 1 failed. Exception: %s" : "Stap 1 is mislukt. Uitzondering: %s",
"Step 2 failed. Exception: %s" : "Stap 2 is mislukt. Uitzondering: %s",
"External storage" : "Externe opslag",
"Dropbox App Configuration" : "Dropbox app configuratie",
"Google Drive App Configuration" : "Google Drive app configuratie",
"Personal" : "Persoonlijk",
"System" : "Systeem",
"Grant access" : "Sta toegang toe",
@ -16,6 +18,7 @@ OC.L10N.register(
"Error generating key pair" : "Fout bij genereren sleutelpaar",
"All users. Type to select user or group." : "Alle gebruikers. Tikken om een gebruiker of groep te selecteren.",
"(group)" : "(groep)",
"Compatibility with Mac NFD encoding (slow)" : "Compatibiliteit met Mac NFD encoding (traag)",
"Admin defined" : "Beheerder gedefinieerd",
"Saved" : "Bewaard",
"Empty response from the server" : "Lege reactie van de server",

View File

@ -5,6 +5,8 @@
"Step 1 failed. Exception: %s" : "Stap 1 is mislukt. Uitzondering: %s",
"Step 2 failed. Exception: %s" : "Stap 2 is mislukt. Uitzondering: %s",
"External storage" : "Externe opslag",
"Dropbox App Configuration" : "Dropbox app configuratie",
"Google Drive App Configuration" : "Google Drive app configuratie",
"Personal" : "Persoonlijk",
"System" : "Systeem",
"Grant access" : "Sta toegang toe",
@ -14,6 +16,7 @@
"Error generating key pair" : "Fout bij genereren sleutelpaar",
"All users. Type to select user or group." : "Alle gebruikers. Tikken om een gebruiker of groep te selecteren.",
"(group)" : "(groep)",
"Compatibility with Mac NFD encoding (slow)" : "Compatibiliteit met Mac NFD encoding (traag)",
"Admin defined" : "Beheerder gedefinieerd",
"Saved" : "Bewaard",
"Empty response from the server" : "Lege reactie van de server",

View File

@ -127,6 +127,7 @@ class GlobalStoragesController extends StoragesController {
* @param array $applicableUsers users for which to mount the storage
* @param array $applicableGroups groups for which to mount the storage
* @param int $priority priority
* @param bool $testOnly whether to storage should only test the connection or do more things
*
* @return DataResponse
*/

View File

@ -237,6 +237,7 @@ abstract class StoragesController extends Controller {
* on whether the remote storage is available or not.
*
* @param StorageConfig $storage storage configuration
* @param bool $testOnly whether to storage should only test the connection or do more things
*/
protected function updateStorageStatus(StorageConfig &$storage, $testOnly = true) {
try {
@ -291,6 +292,7 @@ abstract class StoragesController extends Controller {
* Get an external storage entry.
*
* @param int $id storage id
* @param bool $testOnly whether to storage should only test the connection or do more things
*
* @return DataResponse
*/

View File

@ -107,6 +107,7 @@ class UserGlobalStoragesController extends StoragesController {
* Get an external storage entry.
*
* @param int $id storage id
* @param bool $testOnly whether to storage should only test the connection or do more things
* @return DataResponse
*
* @NoAdminRequired
@ -139,6 +140,7 @@ class UserGlobalStoragesController extends StoragesController {
*
* @param int $id storage id
* @param array $backendOptions backend-specific options
* @param bool $testOnly whether to storage should only test the connection or do more things
*
* @return DataResponse
*

View File

@ -159,6 +159,7 @@ class UserStoragesController extends StoragesController {
* @param string $authMechanism authentication mechanism identifier
* @param array $backendOptions backend-specific options
* @param array $mountOptions backend-specific mount options
* @param bool $testOnly whether to storage should only test the connection or do more things
*
* @return DataResponse
*

View File

@ -32,6 +32,7 @@ namespace OCA\Files_External\Lib\Storage;
use GuzzleHttp\Exception\RequestException;
use Icewind\Streams\IteratorDirectory;
use Icewind\Streams\RetryWrapper;
use OCP\Files\StorageNotAvailableException;
require_once __DIR__ . '/../../../3rdparty/Dropbox/autoload.php';
@ -94,6 +95,8 @@ class Dropbox extends \OC\Files\Storage\Common {
if ($list) {
try {
$response = $this->dropbox->getMetaData($path);
} catch (\Dropbox_Exception_Forbidden $e) {
throw new StorageNotAvailableException('Dropbox API rate limit exceeded', StorageNotAvailableException::STATUS_ERROR, $e);
} catch (\Exception $exception) {
\OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR);
return false;
@ -127,6 +130,8 @@ class Dropbox extends \OC\Files\Storage\Common {
return $response;
}
return null;
} catch (\Dropbox_Exception_Forbidden $e) {
throw new StorageNotAvailableException('Dropbox API rate limit exceeded', StorageNotAvailableException::STATUS_ERROR, $e);
} catch (\Exception $exception) {
if ($exception instanceof \Dropbox_Exception_NotFound) {
// don't log, might be a file_exist check

View File

@ -168,11 +168,11 @@ class Google extends \OC\Files\Storage\Common {
$path = trim($path, '/');
$this->driveFiles[$path] = $file;
if ($file === false) {
// Set all child paths as false
// Remove all children
$len = strlen($path);
foreach ($this->driveFiles as $key => $file) {
if (substr($key, 0, $len) === $path) {
$this->driveFiles[$key] = false;
unset($this->driveFiles[$key]);
}
}
}

View File

@ -51,13 +51,17 @@
break;
case DefinitionParameter::VALUE_BOOLEAN: ?>
<?php $checkboxId = uniqid("checkbox_"); ?>
<div>
<label>
<input type="checkbox"
id="<?php p($checkboxId); ?>"
<?php if (!empty($classes)): ?> class="checkbox <?php p(implode(' ', $classes)); ?>"<?php endif; ?>
data-parameter="<?php p($parameter->getName()); ?>"
<?php if ($value === true): ?> checked="checked"<?php endif; ?>
/>
<label for="<?php p($checkboxId); ?>"><?php p($placeholder); ?></label>
<?php p($placeholder); ?>
</label>
</div>
<?php
break;
case DefinitionParameter::VALUE_HIDDEN: ?>

View File

@ -24,6 +24,9 @@ docker_image=xenopathic/ceph-keystone
echo "Fetch recent ${docker_image} docker image"
docker pull ${docker_image}
# debian 8 default comes without loaded loop module. please run "sudo modprobe loop" if you get an error here:
lsmod | grep '^loop' || { echo "Error: kernel module loop not loaded. Needed by docker image ${docker_image}"; exit 1; }
# retrieve current folder to place the config in the parent folder
thisFolder=`echo $0 | sed 's#env/start-swift-ceph\.sh##'`

View File

@ -32,14 +32,14 @@ $l = \OC::$server->getL10N('files_sharing');
\OC::$CLASSPATH['OC_Share_Backend_Folder'] = 'files_sharing/lib/share/folder.php';
\OC::$CLASSPATH['OC\Files\Storage\Shared'] = 'files_sharing/lib/sharedstorage.php';
$application = new \OCA\Files_Sharing\AppInfo\Application();
$application->registerMountProviders();
\OCA\Files_Sharing\Helper::registerHooks();
\OCP\Share::registerBackend('file', 'OC_Share_Backend_File');
\OCP\Share::registerBackend('folder', 'OC_Share_Backend_Folder', 'file');
$application = new \OCA\Files_Sharing\AppInfo\Application();
$application->registerMountProviders();
$eventDispatcher = \OC::$server->getEventDispatcher();
$eventDispatcher->addListener(
'OCA\Files::loadAdditionalScripts',

View File

@ -27,6 +27,25 @@ OC.L10N.register(
"Invalid ownCloud url" : "נתיב ownCloud לא חוקי",
"Shared by" : "שותף על־ידי",
"Sharing" : "שיתוף",
"Share API is disabled" : "שיתוף API מנוטרל",
"Wrong share ID, share doesn't exist" : "מספר זיהוי שיתוף שגוי, שיתוף אינו קיים",
"Could not delete share" : "לא ניתן היה למחוק את השיתוף",
"Please specify a file or folder path" : "יש לספק נתיב לקובץ או תיקייה",
"Wrong path, file/folder doesn't exist" : "נתיב שגוי, קובץ/תיקייה אינם קיימים",
"Please specify a valid user" : "יש לספק משתמש חוקי",
"Group sharing is disabled by the administrator" : "שיתוף קבוצתי מנוטרל על ידי המנהל",
"Please specify a valid group" : "יש לספק קבוצה חוקית",
"Public link sharing is disabled by the administrator" : "שיתוף ציבורי מנוטרל על ידי המנהל",
"Public upload disabled by the administrator" : "שיתוף ציבורי מנוטרל על ידי המנהל",
"Public upload is only possible for publicly shared folders" : "העלאה ציבורית אפשרית רק אל תיקיות משותפות ציבוריות",
"Invalid date, date format must be YYYY-MM-DD" : "תאריך לא חוקי, תבנית התאריך חייבת להיות YYYY-MM-DD",
"Sharing %s failed because the back end does not allow shares from type %s" : "שיתוף %s נכשל כיוון שהצד האחרוי ינו מאפשר שיתוף מסוג %s",
"Unknown share type" : "סוג שיתוף אינו מוכר",
"Not a directory" : "אינה תיקייה",
"Could not lock path" : "לא ניתן היה לנעול נתיב",
"Can't change permissions for public share links" : "לא ניתן לשנות הרשאות לקישורי שיתוף ציבוריים",
"Wrong or no update parameter given" : "משתנה עדכון שניתן שגוי או לא קיים",
"Cannot increase permissions" : "לא ניתן להעלות הרשאות",
"A file or folder has been <strong>shared</strong>" : "קובץ או תיקייה <strong>שותפו<strong/>",
"A file or folder was shared from <strong>another server</strong>" : "קובץ או תיקייה שותפו מ- <strong>שרת אחר</strong>",
"A public shared file or folder was <strong>downloaded</strong>" : "קובץ או תיקייה עם שיתוף ציבורי <strong>הורדו</strong>",

View File

@ -25,6 +25,25 @@
"Invalid ownCloud url" : "נתיב ownCloud לא חוקי",
"Shared by" : "שותף על־ידי",
"Sharing" : "שיתוף",
"Share API is disabled" : "שיתוף API מנוטרל",
"Wrong share ID, share doesn't exist" : "מספר זיהוי שיתוף שגוי, שיתוף אינו קיים",
"Could not delete share" : "לא ניתן היה למחוק את השיתוף",
"Please specify a file or folder path" : "יש לספק נתיב לקובץ או תיקייה",
"Wrong path, file/folder doesn't exist" : "נתיב שגוי, קובץ/תיקייה אינם קיימים",
"Please specify a valid user" : "יש לספק משתמש חוקי",
"Group sharing is disabled by the administrator" : "שיתוף קבוצתי מנוטרל על ידי המנהל",
"Please specify a valid group" : "יש לספק קבוצה חוקית",
"Public link sharing is disabled by the administrator" : "שיתוף ציבורי מנוטרל על ידי המנהל",
"Public upload disabled by the administrator" : "שיתוף ציבורי מנוטרל על ידי המנהל",
"Public upload is only possible for publicly shared folders" : "העלאה ציבורית אפשרית רק אל תיקיות משותפות ציבוריות",
"Invalid date, date format must be YYYY-MM-DD" : "תאריך לא חוקי, תבנית התאריך חייבת להיות YYYY-MM-DD",
"Sharing %s failed because the back end does not allow shares from type %s" : "שיתוף %s נכשל כיוון שהצד האחרוי ינו מאפשר שיתוף מסוג %s",
"Unknown share type" : "סוג שיתוף אינו מוכר",
"Not a directory" : "אינה תיקייה",
"Could not lock path" : "לא ניתן היה לנעול נתיב",
"Can't change permissions for public share links" : "לא ניתן לשנות הרשאות לקישורי שיתוף ציבוריים",
"Wrong or no update parameter given" : "משתנה עדכון שניתן שגוי או לא קיים",
"Cannot increase permissions" : "לא ניתן להעלות הרשאות",
"A file or folder has been <strong>shared</strong>" : "קובץ או תיקייה <strong>שותפו<strong/>",
"A file or folder was shared from <strong>another server</strong>" : "קובץ או תיקייה שותפו מ- <strong>שרת אחר</strong>",
"A public shared file or folder was <strong>downloaded</strong>" : "קובץ או תיקייה עם שיתוף ציבורי <strong>הורדו</strong>",

View File

@ -115,7 +115,8 @@ class Application extends App {
$server = $c->query('ServerContainer');
return new MountProvider(
$server->getConfig(),
$server->getShareManager()
$server->getShareManager(),
$server->getLogger()
);
});

View File

@ -89,8 +89,17 @@ class Storage extends DAV implements ISharedStorage {
'user' => $options['token'],
'password' => (string)$options['password']
));
}
$this->getWatcher()->setPolicy(\OC\Files\Cache\Watcher::CHECK_ONCE);
public function getWatcher($path = '', $storage = null) {
if (!$storage) {
$storage = $this;
}
if (!isset($this->watcher)) {
$this->watcher = new Watcher($storage);
$this->watcher->setPolicy(\OC\Files\Cache\Watcher::CHECK_ONCE);
}
return $this->watcher;
}
public function getRemoteUser() {

View File

@ -1,7 +1,6 @@
<?php
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Robin Appelman <icewind@owncloud.com>
*
* @copyright Copyright (c) 2016, ownCloud, Inc.
* @license AGPL-3.0
@ -20,7 +19,15 @@
*
*/
use OCA\DAV\AppInfo\Application;
namespace OCA\Files_Sharing\External;
$app = new Application();
$app->generateBirthdays();
class Watcher extends \OC\Files\Cache\Watcher {
/**
* remove deleted files in $path from the cache
*
* @param string $path
*/
public function cleanFolder($path) {
// not needed, the scanner takes care of this
}
}

View File

@ -277,19 +277,23 @@ class Helper {
/**
* get default share folder
*
* @param \OC\Files\View
* @return string
*/
public static function getShareFolder() {
public static function getShareFolder($view = null) {
if ($view === null) {
$view = Filesystem::getView();
}
$shareFolder = \OC::$server->getConfig()->getSystemValue('share_folder', '/');
$shareFolder = Filesystem::normalizePath($shareFolder);
if (!Filesystem::file_exists($shareFolder)) {
if (!$view->file_exists($shareFolder)) {
$dir = '';
$subdirs = explode('/', $shareFolder);
foreach ($subdirs as $subdir) {
$dir = $dir . '/' . $subdir;
if (!Filesystem::is_dir($dir)) {
Filesystem::mkdir($dir);
if (!$view->is_dir($dir)) {
$view->mkdir($dir);
}
}
}

View File

@ -26,6 +26,7 @@ namespace OCA\Files_Sharing;
use OCP\Files\Config\IMountProvider;
use OCP\Files\Storage\IStorageFactory;
use OCP\IConfig;
use OCP\ILogger;
use OCP\IUser;
use OCP\Share\IManager;
@ -40,13 +41,20 @@ class MountProvider implements IMountProvider {
*/
protected $shareManager;
/**
* @var ILogger
*/
protected $logger;
/**
* @param \OCP\IConfig $config
* @param IManager $shareManager
* @param ILogger $logger
*/
public function __construct(IConfig $config, IManager $shareManager) {
public function __construct(IConfig $config, IManager $shareManager, ILogger $logger) {
$this->config = $config;
$this->shareManager = $shareManager;
$this->logger = $logger;
}
@ -67,15 +75,20 @@ class MountProvider implements IMountProvider {
$mounts = [];
foreach ($shares as $share) {
$mounts[] = new SharedMount(
'\OC\Files\Storage\Shared',
$mounts,
[
'user' => $user->getUID(),
'newShare' => $share,
],
$storageFactory
);
try {
$mounts[] = new SharedMount(
'\OC\Files\Storage\Shared',
$mounts,
[
'user' => $user->getUID(),
'newShare' => $share,
],
$storageFactory
);
} catch (\Exception $e) {
$this->logger->logException($e);
$this->logger->error('Error while trying to create shared mount');
}
}
// array_filter removes the null values from the array

View File

@ -81,7 +81,7 @@ class SharedMount extends MountPoint implements MoveableMount {
$parent = dirname($share->getTarget());
if (!$this->recipientView->is_dir($parent)) {
$parent = Helper::getShareFolder();
$parent = Helper::getShareFolder($this->recipientView);
}
$newMountPoint = $this->generateUniqueTarget(

View File

@ -2,6 +2,27 @@ OC.L10N.register(
"systemtags",
{
"Tags" : "Etiquetes",
"Tagged files" : "Fitxers marcats",
"Select tags to filter by" : "Selecciona les marques per filtrar-ne",
"Please select tags to filter by" : "Si us plau selecciona les marques per filtrar-ne",
"No files found for the selected tags" : "No s'han trobat fitxers per les marques sel·leccionades",
"<strong>System tags</strong> for a file have been modified" : "Les <strong>Marques de Sistema</strong> d'un fitxer s'han modificat",
"You assigned system tag %3$s" : "Has assignat la marca de sistema %3$s",
"%1$s assigned system tag %3$s" : "%1$s ha assignat la marca de sistema %3$s",
"You unassigned system tag %3$s" : "Has des-assignat la marca de sistema %3$s",
"%1$s unassigned system tag %3$s" : "%1$s ha des-assignat la marca de sistema %3$s",
"You created system tag %2$s" : "Has creat la marca de sistema %2$s",
"%1$s created system tag %2$s" : "%1$s ha creat la marca de sistema %2$s",
"You deleted system tag %2$s" : "Has esborrat la marca de sistema %2$s",
"%1$s deleted system tag %2$s" : "%1$s ha esborrat la marca de sistema %2$s",
"You updated system tag %3$s to %2$s" : "Has actualitzat les marques de sistema de la %3$s a la %2$s",
"%1$s updated system tag %3$s to %2$s" : "%1$s ha actualitzat les marques de sistema de la %3$s a la %2$s",
"You assigned system tag %3$s to %2$s" : "Has assignat les marques de sistema de la %3$s a la %2$s",
"%1$s assigned system tag %3$s to %2$s" : "%1$s ha assignat les marques de sistema de la %3$s a la %2$s",
"You unassigned system tag %3$s from %2$s" : "Has des-assignat les marques de sistema de la %3$s a la %2$s",
"%1$s unassigned system tag %3$s from %2$s" : "%1$s ha des-assignat les marques de sistema de la %3$s a la %2$s",
"%s (restricted)" : "%s (restringit)",
"%s (invisible)" : "%s (invisible)",
"No files in here" : "No hi ha arxius",
"No entries found in this folder" : "No hi ha entrades en aquesta carpeta",
"Name" : "Nom",

View File

@ -1,5 +1,26 @@
{ "translations": {
"Tags" : "Etiquetes",
"Tagged files" : "Fitxers marcats",
"Select tags to filter by" : "Selecciona les marques per filtrar-ne",
"Please select tags to filter by" : "Si us plau selecciona les marques per filtrar-ne",
"No files found for the selected tags" : "No s'han trobat fitxers per les marques sel·leccionades",
"<strong>System tags</strong> for a file have been modified" : "Les <strong>Marques de Sistema</strong> d'un fitxer s'han modificat",
"You assigned system tag %3$s" : "Has assignat la marca de sistema %3$s",
"%1$s assigned system tag %3$s" : "%1$s ha assignat la marca de sistema %3$s",
"You unassigned system tag %3$s" : "Has des-assignat la marca de sistema %3$s",
"%1$s unassigned system tag %3$s" : "%1$s ha des-assignat la marca de sistema %3$s",
"You created system tag %2$s" : "Has creat la marca de sistema %2$s",
"%1$s created system tag %2$s" : "%1$s ha creat la marca de sistema %2$s",
"You deleted system tag %2$s" : "Has esborrat la marca de sistema %2$s",
"%1$s deleted system tag %2$s" : "%1$s ha esborrat la marca de sistema %2$s",
"You updated system tag %3$s to %2$s" : "Has actualitzat les marques de sistema de la %3$s a la %2$s",
"%1$s updated system tag %3$s to %2$s" : "%1$s ha actualitzat les marques de sistema de la %3$s a la %2$s",
"You assigned system tag %3$s to %2$s" : "Has assignat les marques de sistema de la %3$s a la %2$s",
"%1$s assigned system tag %3$s to %2$s" : "%1$s ha assignat les marques de sistema de la %3$s a la %2$s",
"You unassigned system tag %3$s from %2$s" : "Has des-assignat les marques de sistema de la %3$s a la %2$s",
"%1$s unassigned system tag %3$s from %2$s" : "%1$s ha des-assignat les marques de sistema de la %3$s a la %2$s",
"%s (restricted)" : "%s (restringit)",
"%s (invisible)" : "%s (invisible)",
"No files in here" : "No hi ha arxius",
"No entries found in this folder" : "No hi ha entrades en aquesta carpeta",
"Name" : "Nom",

View File

@ -21,6 +21,7 @@ OC.L10N.register(
"%1$s assigned system tag %3$s to %2$s" : "%1$s wees systeem tag %3$s aan %2$s toe",
"You unassigned system tag %3$s from %2$s" : "Je maakte toewijzing systeem tag %3$s van %2$s ongedaan",
"%1$s unassigned system tag %3$s from %2$s" : "%1$s verwijderde systeem tag %3$s van %2$s",
"%s (restricted)" : "%s (beperkt)",
"%s (invisible)" : "%s (onzichtbaar)",
"No files in here" : "Hier geen bestanden",
"No entries found in this folder" : "Niets gevonden in deze map",

View File

@ -19,6 +19,7 @@
"%1$s assigned system tag %3$s to %2$s" : "%1$s wees systeem tag %3$s aan %2$s toe",
"You unassigned system tag %3$s from %2$s" : "Je maakte toewijzing systeem tag %3$s van %2$s ongedaan",
"%1$s unassigned system tag %3$s from %2$s" : "%1$s verwijderde systeem tag %3$s van %2$s",
"%s (restricted)" : "%s (beperkt)",
"%s (invisible)" : "%s (onzichtbaar)",
"No files in here" : "Hier geen bestanden",
"No entries found in this folder" : "Niets gevonden in deze map",

View File

@ -188,6 +188,10 @@ class Listener {
$activity->setAffectedUser($user);
foreach ($tags as $tag) {
// don't publish activity for non-admins if tag is invisible
if (!$tag->isUserVisible() && !$this->groupManager->isAdmin($user)) {
continue;
}
if ($event->getEvent() === MapperEvent::EVENT_ASSIGN) {
$activity->setSubject(Extension::ASSIGN_TAG, [
$actor,

View File

@ -1,7 +1,19 @@
OC.L10N.register(
"updatenotification",
{
"Update notifications" : "Notificacions d'actualització",
"{version} is available. Get more information on how to update." : "Hi ha disponible la versió {version}. Obtingueu més informació sobre com actualitzar.",
"Updater" : "Actualitzador"
"Updated channel" : "Canal actualitzat",
"ownCloud core" : "Nucli d'ownCloud",
"Update for %1$s to version %2$s is available." : "L'actualització per %1$s a la versió %2$s està disponible.",
"Updater" : "Actualitzador",
"A new version is available: %s" : "Una nova versió està disponible: %s",
"Open updater" : "Obrir actualitzador",
"Your version is up to date." : "La teva versió està actualitzada.",
"Checked on %s" : "Comprovat en %s",
"Update channel:" : "Actualitzar canal:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Sempre podràs actualitzar a una versió més recent / canal experimental. Però mai es pot fer un \"downgrade\" a un canal més estable.",
"Notify members of the following groups about available updates:" : "Notificar als membres dels següents grups sobre les actualitzacions disponibles:",
"Only notification for app updates are available, because the selected update channel for ownCloud itself does not allow notifications." : "Només notificació d'actualitzacions d'aplicacions estan disponibles, degut a que el canal d'actualització per ownCloud seleccionat no permet les notificacions."
},
"nplurals=2; plural=(n != 1);");

View File

@ -1,5 +1,17 @@
{ "translations": {
"Update notifications" : "Notificacions d'actualització",
"{version} is available. Get more information on how to update." : "Hi ha disponible la versió {version}. Obtingueu més informació sobre com actualitzar.",
"Updater" : "Actualitzador"
"Updated channel" : "Canal actualitzat",
"ownCloud core" : "Nucli d'ownCloud",
"Update for %1$s to version %2$s is available." : "L'actualització per %1$s a la versió %2$s està disponible.",
"Updater" : "Actualitzador",
"A new version is available: %s" : "Una nova versió està disponible: %s",
"Open updater" : "Obrir actualitzador",
"Your version is up to date." : "La teva versió està actualitzada.",
"Checked on %s" : "Comprovat en %s",
"Update channel:" : "Actualitzar canal:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Sempre podràs actualitzar a una versió més recent / canal experimental. Però mai es pot fer un \"downgrade\" a un canal més estable.",
"Notify members of the following groups about available updates:" : "Notificar als membres dels següents grups sobre les actualitzacions disponibles:",
"Only notification for app updates are available, because the selected update channel for ownCloud itself does not allow notifications." : "Només notificació d'actualitzacions d'aplicacions estan disponibles, degut a que el canal d'actualització per ownCloud seleccionat no permet les notificacions."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@ -1,14 +1,19 @@
OC.L10N.register(
"updatenotification",
{
"Update notifications" : "Bijwerken meldingen",
"{version} is available. Get more information on how to update." : "{version} is beschikbaar. Meer informatie over het bijwerken.",
"Updated channel" : "Bijgewerkt kanaal",
"ownCloud core" : "ownCloud core",
"Update for %1$s to version %2$s is available." : "Update voor %1$s naar versie %2$s is beschikbaar.",
"Updater" : "Updater",
"A new version is available: %s" : "Er is een nieuwe versie beschikbaar: %s",
"Open updater" : "Open updater",
"Your version is up to date." : "Uw versie is up to date.",
"Checked on %s" : "Gecontroleerd op %s",
"Update channel:" : "Bijwerkkanaal:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "U kunt altijd updaten naar een nieuwere versie of experimenteel kanaal. Maar terug naar een oudere versie of een stabieler kanaal is niet mogelijk."
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "U kunt altijd updaten naar een nieuwere versie of experimenteel kanaal. Maar terug naar een oudere versie of een stabieler kanaal is niet mogelijk.",
"Notify members of the following groups about available updates:" : "Geef een melding over beschikbare updates aan leden van de volgende groepen:",
"Only notification for app updates are available, because the selected update channel for ownCloud itself does not allow notifications." : "Er zin alleen meldingen voor app updates beschikbaar, omdat het geselecteerde ownCloud update kanaal zelf geen meldingen toestaat."
},
"nplurals=2; plural=(n != 1);");

View File

@ -1,12 +1,17 @@
{ "translations": {
"Update notifications" : "Bijwerken meldingen",
"{version} is available. Get more information on how to update." : "{version} is beschikbaar. Meer informatie over het bijwerken.",
"Updated channel" : "Bijgewerkt kanaal",
"ownCloud core" : "ownCloud core",
"Update for %1$s to version %2$s is available." : "Update voor %1$s naar versie %2$s is beschikbaar.",
"Updater" : "Updater",
"A new version is available: %s" : "Er is een nieuwe versie beschikbaar: %s",
"Open updater" : "Open updater",
"Your version is up to date." : "Uw versie is up to date.",
"Checked on %s" : "Gecontroleerd op %s",
"Update channel:" : "Bijwerkkanaal:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "U kunt altijd updaten naar een nieuwere versie of experimenteel kanaal. Maar terug naar een oudere versie of een stabieler kanaal is niet mogelijk."
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "U kunt altijd updaten naar een nieuwere versie of experimenteel kanaal. Maar terug naar een oudere versie of een stabieler kanaal is niet mogelijk.",
"Notify members of the following groups about available updates:" : "Geef een melding over beschikbare updates aan leden van de volgende groepen:",
"Only notification for app updates are available, because the selected update channel for ownCloud itself does not allow notifications." : "Er zin alleen meldingen voor app updates beschikbaar, omdat het geselecteerde ownCloud update kanaal zelf geen meldingen toestaat."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@ -12,6 +12,8 @@ OC.L10N.register(
"Your version is up to date." : "Posiadasz aktualną wersję.",
"Checked on %s" : "Sprawdzone na %s",
"Update channel:" : "Kanał aktualizacji:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Możesz zawsze zaktualizować swoją wersję do nowego / ekperymentalnego kanału. Jednakże nie możesz powrócić do poprzedniej stabilniejszej wersji. "
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Możesz zawsze zaktualizować swoją wersję do nowego / ekperymentalnego kanału. Jednakże nie możesz powrócić do poprzedniej stabilniejszej wersji. ",
"Notify members of the following groups about available updates:" : "Powiadom członków następujących grup o dostępnych aktualizacjach: ",
"Only notification for app updates are available, because the selected update channel for ownCloud itself does not allow notifications." : "Tylko powiadomienia o aktualizacjach aplikacji są dostępne, gdyż wybrany kanał aktualizacji ownCloud nie zezwala na powiadomienia. "
},
"nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);");

View File

@ -10,6 +10,8 @@
"Your version is up to date." : "Posiadasz aktualną wersję.",
"Checked on %s" : "Sprawdzone na %s",
"Update channel:" : "Kanał aktualizacji:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Możesz zawsze zaktualizować swoją wersję do nowego / ekperymentalnego kanału. Jednakże nie możesz powrócić do poprzedniej stabilniejszej wersji. "
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Możesz zawsze zaktualizować swoją wersję do nowego / ekperymentalnego kanału. Jednakże nie możesz powrócić do poprzedniej stabilniejszej wersji. ",
"Notify members of the following groups about available updates:" : "Powiadom członków następujących grup o dostępnych aktualizacjach: ",
"Only notification for app updates are available, because the selected update channel for ownCloud itself does not allow notifications." : "Tylko powiadomienia o aktualizacjach aplikacji są dostępne, gdyż wybrany kanał aktualizacji ownCloud nie zezwala na powiadomienia. "
},"pluralForm" :"nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"
}

View File

@ -4,6 +4,7 @@ OC.L10N.register(
"Update notifications" : "Posodobi obvestila",
"{version} is available. Get more information on how to update." : "Na voljo je nova različica {version}. Na voljo je več podrobnosti o nadgradnji.",
"Updated channel" : "Posodobljen kanal",
"ownCloud core" : "Jedro ownCloud",
"Update for %1$s to version %2$s is available." : "Posodobitev %1$s na različico %2$s je na voljo.",
"Updater" : "Posodabljalnik",
"A new version is available: %s" : "Na voljo je nova različica: %s",

View File

@ -2,6 +2,7 @@
"Update notifications" : "Posodobi obvestila",
"{version} is available. Get more information on how to update." : "Na voljo je nova različica {version}. Na voljo je več podrobnosti o nadgradnji.",
"Updated channel" : "Posodobljen kanal",
"ownCloud core" : "Jedro ownCloud",
"Update for %1$s to version %2$s is available." : "Posodobitev %1$s na različico %2$s je na voljo.",
"Updater" : "Posodabljalnik",
"A new version is available: %s" : "Na voljo je nova različica: %s",

View File

@ -13,6 +13,7 @@ OC.L10N.register(
" Could not set configuration %s" : " לא ניתן היה לקבוע הגדרות %s",
"Action does not exist" : "פעולה לא קיימת",
"The Base DN appears to be wrong" : "בסיס DN נראה כשגוי",
"Testing configuration…" : "בדיקת תצורה...",
"Configuration incorrect" : "הגדרה שגויה",
"Configuration incomplete" : "הגדרה לא מלאה",
"Configuration OK" : "הגדרה בסדר",
@ -95,6 +96,7 @@ OC.L10N.register(
"Test Base DN" : "בדיקת DN בסיסי",
"Avoids automatic LDAP requests. Better for bigger setups, but requires some LDAP knowledge." : "נמנע מבקשות אוטומטיות של LDAP. מועדף עבור התקנות גדולות, אבל מחייב ידע מסויים של LDAP.",
"Manually enter LDAP filters (recommended for large directories)" : "הכנסת מסנני LDAP ידנית (מומלץ עבוק תיקיות גדולות)",
"%s access is limited to users meeting these criteria:" : "%s גישה מוגבלת למשתמשים שעונים על קריטריונים אלו:",
"The filter specifies which LDAP users shall have access to the %s instance." : "הסינון קובע לאיזו משתמשי LDAP תהיה יכולת כניסה למקרה %s.",
"Verify settings and count users" : "מאמת הגדרות וסופר משתמשים",
"Saving" : "שמירה",

View File

@ -11,6 +11,7 @@
" Could not set configuration %s" : " לא ניתן היה לקבוע הגדרות %s",
"Action does not exist" : "פעולה לא קיימת",
"The Base DN appears to be wrong" : "בסיס DN נראה כשגוי",
"Testing configuration…" : "בדיקת תצורה...",
"Configuration incorrect" : "הגדרה שגויה",
"Configuration incomplete" : "הגדרה לא מלאה",
"Configuration OK" : "הגדרה בסדר",
@ -93,6 +94,7 @@
"Test Base DN" : "בדיקת DN בסיסי",
"Avoids automatic LDAP requests. Better for bigger setups, but requires some LDAP knowledge." : "נמנע מבקשות אוטומטיות של LDAP. מועדף עבור התקנות גדולות, אבל מחייב ידע מסויים של LDAP.",
"Manually enter LDAP filters (recommended for large directories)" : "הכנסת מסנני LDAP ידנית (מומלץ עבוק תיקיות גדולות)",
"%s access is limited to users meeting these criteria:" : "%s גישה מוגבלת למשתמשים שעונים על קריטריונים אלו:",
"The filter specifies which LDAP users shall have access to the %s instance." : "הסינון קובע לאיזו משתמשי LDAP תהיה יכולת כניסה למקרה %s.",
"Verify settings and count users" : "מאמת הגדרות וסופר משתמשים",
"Saving" : "שמירה",

View File

@ -4,6 +4,6 @@
"behat/behat": "^3.0",
"guzzlehttp/guzzle": "~5.0",
"jarnaiz/behat-junit-formatter": "^1.3",
"sabre/dav": "3.0.x-dev"
"sabre/dav": "3.0.9"
}
}

View File

@ -214,7 +214,7 @@ trait WebDav {
}
$value = $keys[$key];
if ($value !== $expectedValue) {
if ($value != $expectedValue) {
throw new \Exception("Property \"$key\" found with value \"$value\", expected \"$expectedValue\"");
}
}
@ -434,5 +434,51 @@ trait WebDav {
$this->response = $ex->getResponse();
}
}
}
/**
* @When user :user favorites element :path
*/
public function userFavoritesElement($user, $path){
$this->response = $this->changeFavStateOfAnElement($user, $path, 1, 0, null);
}
/**
* @When user :user unfavorites element :path
*/
public function userUnfavoritesElement($user, $path){
$this->response = $this->changeFavStateOfAnElement($user, $path, 0, 0, null);
}
/*Set the elements of a proppatch, $folderDepth requires 1 to see elements without children*/
public function changeFavStateOfAnElement($user, $path, $favOrUnfav, $folderDepth, $properties = null){
$fullUrl = substr($this->baseUrl, 0, -4);
$settings = array(
'baseUri' => $fullUrl,
'userName' => $user,
);
if ($user === 'admin') {
$settings['password'] = $this->adminUser[1];
} else {
$settings['password'] = $this->regularUser;
}
$client = new SClient($settings);
if (!$properties) {
$properties = [
'{http://owncloud.org/ns}favorite' => $favOrUnfav
];
}
$response = $client->proppatch($this->davPath . '/' . ltrim($path, '/'), $properties, $folderDepth);
return $response;
}
/**
* @Then /^as "([^"]*)" gets properties of file "([^"]*)" with$/
* @param string $user
* @param string $path
* @param \Behat\Gherkin\Node\TableNode|null $propertiesTable
*/
public function asGetsPropertiesOfFileWith($user, $path, $propertiesTable) {
$this->asGetsPropertiesOfFolderWith($user, $path, $propertiesTable);
}
}

View File

@ -0,0 +1,55 @@
Feature: dav-v2
Background:
Given using api version "1"
Scenario: moving a file new endpoint way
Given using dav path "remote.php/dav"
And As an "admin"
And user "user0" exists
When User "user0" moves file "/files/user0/textfile0.txt" to "/files/user0/FOLDER/textfile0.txt"
Then the HTTP status code should be "201"
Scenario: download a file with range using new endpoint
Given using dav path "remote.php/dav"
And As an "admin"
And user "user0" exists
And As an "user0"
When Downloading file "/files/user0/welcome.txt" with range "bytes=51-77"
Then Downloaded content should be "example file for developers"
Scenario: Downloading a file on the new endpoint should serve security headers
Given using dav path "remote.php/dav/files/admin/"
And As an "admin"
When Downloading file "welcome.txt"
Then The following headers should be set
|Content-Disposition|attachment; filename*=UTF-8''welcome.txt; filename="welcome.txt"|
|Content-Security-Policy|default-src 'none';|
|X-Content-Type-Options |nosniff|
|X-Download-Options|noopen|
|X-Frame-Options|Sameorigin|
|X-Permitted-Cross-Domain-Policies|none|
|X-Robots-Tag|none|
|X-XSS-Protection|1; mode=block|
And Downloaded content should start with "Welcome to your ownCloud account!"
Scenario: Doing a GET with a web login should work without CSRF token on the new backend
Given Logging in using web as "admin"
When Sending a "GET" to "/remote.php/dav/files/admin/welcome.txt" without requesttoken
Then Downloaded content should start with "Welcome to your ownCloud account!"
Then the HTTP status code should be "200"
Scenario: Doing a GET with a web login should work with CSRF token on the new backend
Given Logging in using web as "admin"
When Sending a "GET" to "/remote.php/dav/files/admin/welcome.txt" with requesttoken
Then Downloaded content should start with "Welcome to your ownCloud account!"
Then the HTTP status code should be "200"
Scenario: Doing a PROPFIND with a web login should not work without CSRF token on the new backend
Given Logging in using web as "admin"
When Sending a "PROPFIND" to "/remote.php/dav/files/admin/welcome.txt" without requesttoken
Then the HTTP status code should be "401"
Scenario: Doing a PROPFIND with a web login should work with CSRF token on the new backend
Given Logging in using web as "admin"
When Sending a "PROPFIND" to "/remote.php/dav/files/admin/welcome.txt" with requesttoken
Then the HTTP status code should be "207"

View File

@ -0,0 +1,42 @@
Feature: favorite
Background:
Given using api version "1"
Scenario: Favorite a folder
Given using dav path "remote.php/webdav"
And As an "admin"
And user "user0" exists
When user "user0" favorites element "/FOLDER"
Then as "user0" gets properties of folder "/FOLDER" with
|{http://owncloud.org/ns}favorite|
And the single response should contain a property "{http://owncloud.org/ns}favorite" with value "1"
Scenario: Favorite and unfavorite a folder
Given using dav path "remote.php/webdav"
And As an "admin"
And user "user0" exists
When user "user0" favorites element "/FOLDER"
And user "user0" unfavorites element "/FOLDER"
Then as "user0" gets properties of folder "/FOLDER" with
|{http://owncloud.org/ns}favorite|
And the single response should contain a property "{http://owncloud.org/ns}favorite" with value ""
Scenario: Favorite a file
Given using dav path "remote.php/webdav"
And As an "admin"
And user "user0" exists
When user "user0" favorites element "/textfile0.txt"
Then as "user0" gets properties of file "/textfile0.txt" with
|{http://owncloud.org/ns}favorite|
And the single response should contain a property "{http://owncloud.org/ns}favorite" with value "1"
Scenario: Favorite and unfavorite a file
Given using dav path "remote.php/webdav"
And As an "admin"
And user "user0" exists
When user "user0" favorites element "/textfile0.txt"
And user "user0" unfavorites element "/textfile0.txt"
Then as "user0" gets properties of file "/textfile0.txt" with
|{http://owncloud.org/ns}favorite|
And the single response should contain a property "{http://owncloud.org/ns}favorite" with value ""

View File

@ -92,43 +92,6 @@ Feature: webdav-related
|X-XSS-Protection|1; mode=block|
And Downloaded content should start with "Welcome to your ownCloud account!"
Scenario: Downloading a file on the new endpoint should serve security headers
Given using dav path "remote.php/dav/files/admin/"
And As an "admin"
When Downloading file "/welcome.txt"
Then The following headers should be set
|Content-Disposition|attachment; filename*=UTF-8''welcome.txt; filename="welcome.txt"|
|Content-Security-Policy|default-src 'none';|
|X-Content-Type-Options |nosniff|
|X-Download-Options|noopen|
|X-Frame-Options|Sameorigin|
|X-Permitted-Cross-Domain-Policies|none|
|X-Robots-Tag|none|
|X-XSS-Protection|1; mode=block|
And Downloaded content should start with "Welcome to your ownCloud account!"
Scenario: Doing a GET with a web login should work without CSRF token on the new backend
Given Logging in using web as "admin"
When Sending a "GET" to "/remote.php/dav/files/admin/welcome.txt" without requesttoken
Then Downloaded content should start with "Welcome to your ownCloud account!"
Then the HTTP status code should be "200"
Scenario: Doing a GET with a web login should work with CSRF token on the new backend
Given Logging in using web as "admin"
When Sending a "GET" to "/remote.php/dav/files/admin/welcome.txt" with requesttoken
Then Downloaded content should start with "Welcome to your ownCloud account!"
Then the HTTP status code should be "200"
Scenario: Doing a PROPFIND with a web login should not work without CSRF token on the new backend
Given Logging in using web as "admin"
When Sending a "PROPFIND" to "/remote.php/dav/files/admin/welcome.txt" without requesttoken
Then the HTTP status code should be "401"
Scenario: Doing a PROPFIND with a web login should work with CSRF token on the new backend
Given Logging in using web as "admin"
When Sending a "PROPFIND" to "/remote.php/dav/files/admin/welcome.txt" with requesttoken
Then the HTTP status code should be "207"
Scenario: Doing a GET with a web login should work without CSRF token on the old backend
Given Logging in using web as "admin"
When Sending a "GET" to "/remote.php/webdav/welcome.txt" without requesttoken

View File

@ -376,26 +376,26 @@ a.two-factor-cancel {
}
#body-login .grouptop input,
.grouptop input {
margin-bottom: 0;
border-bottom: 0;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
margin-bottom: 0 !important;
border-bottom: 0 !important;
border-bottom-left-radius: 0 !important;
border-bottom-right-radius: 0 !important;
}
#body-login .groupmiddle input,
.groupmiddle input {
margin-top: 0;
margin-bottom: 0;
border-top: 0;
border-bottom: 0;
border-radius: 0;
margin-top: 0 !important;
margin-bottom: 0 !important;
border-top: 0 !important;
border-bottom: 0 !important;
border-radius: 0 !important;
box-shadow: 0 1px 0 rgba(0,0,0,.1) inset !important;
}
#body-login .groupbottom input,
.groupbottom input {
margin-top: 0;
border-top: 0;
border-top-right-radius: 0;
border-top-left-radius: 0;
margin-top: 0 !important;
border-top: 0 !important;
border-top-right-radius: 0 !important;
border-top-left-radius: 0 !important;
box-shadow: 0 1px 0 rgba(0,0,0,.1) inset !important;
}
#body-login .groupbottom input[type=submit] {

View File

@ -43,7 +43,8 @@ $(document).ready(function() {
$('input[checked]').trigger('click');
$('#showAdvanced').click(function() {
$('#showAdvanced').click(function(e) {
e.preventDefault();
$('#datadirContent').slideToggle(250);
$('#databaseBackend').slideToggle(250);
$('#databaseField').slideToggle(250);

View File

@ -130,7 +130,7 @@ OC.L10N.register(
"Good password" : "Contraseña buena",
"Strong password" : "Contraseña muy buena",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Su servidor web aún no está configurado adecuadamente para permitir sincronización de archivos ya que la interfaz WebDAV parece no estar funcionando.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Su servidor no ha sido correctamente configurado para resolver \"{url}\". Puede encontrar más información en nuestra <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Su servidor no ha sido correctamente configurado para resolver \"{url}\". Puede encontrar más información en nuestra <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Este servidor no tiene una conexión a Internet. Esto significa que algunas de las características como el montaje de almacenamiento externo, las notificaciones sobre actualizaciones o instalación de aplicaciones de terceros no funcionan. Podría no funcionar el acceso a los archivos de forma remota y el envío de correos electrónicos de notificación. Sugerimos habilitar la conexión a Internet de este servidor, si quiere tener todas las funciones.",
"No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "La memoria caché no ha sido configurada. Para mejorar su desempeño, por favor, configure la memcache si está disponible. Puede encontrar más información en nuestra <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>",
"/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "PHP no tiene acceso a /dev/urandom lo cual es desaconsejable por razones de seguridad. Puede encontrar más información en nuestra our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>.",

View File

@ -128,7 +128,7 @@
"Good password" : "Contraseña buena",
"Strong password" : "Contraseña muy buena",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Su servidor web aún no está configurado adecuadamente para permitir sincronización de archivos ya que la interfaz WebDAV parece no estar funcionando.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Su servidor no ha sido correctamente configurado para resolver \"{url}\". Puede encontrar más información en nuestra <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Su servidor no ha sido correctamente configurado para resolver \"{url}\". Puede encontrar más información en nuestra <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Este servidor no tiene una conexión a Internet. Esto significa que algunas de las características como el montaje de almacenamiento externo, las notificaciones sobre actualizaciones o instalación de aplicaciones de terceros no funcionan. Podría no funcionar el acceso a los archivos de forma remota y el envío de correos electrónicos de notificación. Sugerimos habilitar la conexión a Internet de este servidor, si quiere tener todas las funciones.",
"No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "La memoria caché no ha sido configurada. Para mejorar su desempeño, por favor, configure la memcache si está disponible. Puede encontrar más información en nuestra <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>",
"/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "PHP no tiene acceso a /dev/urandom lo cual es desaconsejable por razones de seguridad. Puede encontrar más información en nuestra our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>.",

View File

@ -297,6 +297,7 @@ OC.L10N.register(
"Contact your system administrator if this message persists or appeared unexpectedly." : "Veuillez contacter votre administrateur système si ce message persiste ou apparaît de façon inattendue.",
"Thank you for your patience." : "Merci de votre patience.",
"Two-step verification" : "Vérification en deux étapes",
"Cancel login" : "Annuler la connexion",
"An error occured while verifying the token" : "Une erreur est survenue lors de la vérification du jeton",
"You are accessing the server from an untrusted domain." : "Vous accédez au serveur à partir d'un domaine non approuvé.",
"Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domains\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "Veuillez contacter votre administrateur. Si vous être l'administrateur de cette instance, configurez la variable \"trusted_domains\" dans le fichier config/config.php. Un exemple de configuration est fournit dans le fichier config/config.sample.php.",

View File

@ -295,6 +295,7 @@
"Contact your system administrator if this message persists or appeared unexpectedly." : "Veuillez contacter votre administrateur système si ce message persiste ou apparaît de façon inattendue.",
"Thank you for your patience." : "Merci de votre patience.",
"Two-step verification" : "Vérification en deux étapes",
"Cancel login" : "Annuler la connexion",
"An error occured while verifying the token" : "Une erreur est survenue lors de la vérification du jeton",
"You are accessing the server from an untrusted domain." : "Vous accédez au serveur à partir d'un domaine non approuvé.",
"Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domains\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "Veuillez contacter votre administrateur. Si vous être l'administrateur de cette instance, configurez la variable \"trusted_domains\" dans le fichier config/config.php. Un exemple de configuration est fournit dans le fichier config/config.sample.php.",

View File

@ -27,8 +27,11 @@ OC.L10N.register(
"Error unfavoriting" : "שגיאה בהסרת מועדפים",
"Couldn't send mail to following users: %s " : "לא ניתן היה לשלוח דואר אלקטרוני למשתמשים הבאים %s ",
"Preparing update" : "מכין עדכון",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair warning: " : "אזהרת תיקון:",
"Repair error: " : "שגיאת תיקון:",
"Please use the command line updater because automatic updating is disabled in the config.php." : "יש להשתמש בעדכון על בסיס שורת פקודה כיוון שעדכון אוטומטי מנוטרל בקובץ config.php.",
"[%d / %d]: Checking table %s" : "[%d / %d]: בודק טבלה %s",
"Turned on maintenance mode" : "הפעלת מצב אחזקה",
"Turned off maintenance mode" : "כיבוי מצב אחזקה",
"Maintenance mode is kept active" : "מצב אחזקה נשמר פעיל",
@ -95,6 +98,7 @@ OC.L10N.register(
"Dec." : "דצמ׳",
"<a href=\"{docUrl}\">There were problems with the code integrity check. More information…</a>" : "<a href=\"{docUrl}\">קיימות בעיות עם בדיקת תקינות קוד. למידע נוסף…</a>",
"Settings" : "הגדרות",
"Problem loading page, reloading in 5 seconds" : "בעיה בטעינת העמוד, טעינה מחדש בעוד 5 שניות.",
"Saving..." : "שמירה…",
"Dismiss" : "שחרור",
"seconds ago" : "שניות",
@ -126,10 +130,18 @@ OC.L10N.register(
"Good password" : "סיסמא טובה",
"Strong password" : "סיסמא חזקה",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "שרת האינטרנט שלך אינו מוגדר כהלכה לאפשר סנכרון כיוון שממשק ה־WebDAV כנראה שבור.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "שרת האינטרנט שלך לא מוגדר כהלכה לפתור \"{url}\". מידע נוסף קיים <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">במסמכים</a> שלנו.",
"This server has no working Internet connection. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "לשרת זה אין חיבור אינטרנט פעיל. לפיכך חלק מהתכונות כגון עגינת אחסון חיצוני, הודעות על עדכונים או התקנת יישומי צד שלישי לא יעבדו. ייתכן ולא יעבדו גם כניסה לקבצים מבחוץ ושליחת הודעות דואר אלקטרוני. אנו ממליצים לאפשר חיבור אינטרנט לשרת זה אם ברצונך שיהיו לך את כל התכונות.",
"No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "לא הוגדר זיכרון מטמון. על מנת לשפר את הביצועים יש להגדיר memcache אם קיים. מידע נוסף ניתן לצפות ב- <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">מסמכי התיעוד</a>.",
"/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "/dev/urandom אינו ניתן לקריאה על ידי PHP אשר אינו מומלץ בשל סיבות אבטחה. מידע נוסף ניתן לראות ב- <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">מסמכי התיעוד</a> שלנו.",
"You are currently running PHP {version}. We encourage you to upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "כרגע המערכת מריצה PHP {version}. מומלץ מאוד לשדרג את גרסת ה- PHP vשלך כדי לנצל את <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">עדכוני הביצועים והאבטחה המופקים על ידי קבוצת ה- PHP</a> ברגע שההפצה אליך תתמוך בזה.",
"The reverse proxy headers configuration is incorrect, or you are accessing ownCloud from a trusted proxy. If you are not accessing ownCloud from a trusted proxy, this is a security issue and can allow an attacker to spoof their IP address as visible to ownCloud. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "תצורת כותרות פרוקסי ההפוכה אינה נכונה, או שהגישה ל- ownCloud מתבצעת מ- proxy אמין. אם הגישה ל- ownCloud אינה מ- proxy אמין, מדובר בבעיית אבטחה שמאפשרת לתוקף לזייף את כתובת ה- IP כגלויה ל- ownCloud. מידע נוסף ניתן למצוא ב- <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">מסמכי התיעוד</a> שלנו.",
"Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Memcached מוגדר כמטמון מופץ, אבל מותקן מודול PHP \"memcache\" מוטעה. רק \\OC\\Memcache\\Memcached תומך ב- \"memcached\" אבל לא ב- \"memcache\". ניתן לצפות ב- <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki בנושא שני המודולים</a>.",
"Some files have not passed the integrity check. Further information on how to resolve this issue can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "חלק מהקבצים לא עברו את בדיקת השלמות. מידע נוסף איך לפתור את הבעיה ניתן למצוא ב- to resolve this issue can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">מסמכי התיעוד</a> שלנו. (<a href=\"{codeIntegrityDownloadEndpoint}\">רשימה של קבצים לא תקינים…</a> / <a href=\"{rescanEndpoint}\">סריקה מחדש…</a>)",
"Error occurred while checking server setup" : "שגיאה אירעה בזמן בדיקת התקנת השרת",
"Your data directory and your files are probably accessible from the Internet. The .htaccess file is not working. We strongly suggest that you configure your web server in a way that the data directory is no longer accessible or you move the data directory outside the web server document root." : "כנראה וניתן לגשת אל תיקיית data והקבצים שלך מהאינטרנט. קובץ .htaccess אינו עובד. אנו ממליצים בכל תוקף שתגדיר את השרת בצורה כזאת שלא ניתן יהיה לגשת לתיקיית ה- data או להעביר את תיקיית ה- dta מחוץ לנתיב המסמכים של שרת האינטרנט.",
"The \"{header}\" HTTP header is not configured to equal to \"{expected}\". This is a potential security or privacy risk and we recommend adjusting this setting." : "כותרת ה- HTTP \"{header}\" אינה מוגדרת להיות שווה ל- \"{expected}\". הדבר מהווה פוטנציאל סיכון אבטחה או פגיעה בפרטיות ואנו ממליצים לתקן את הגדרה זו.",
"The \"Strict-Transport-Security\" HTTP header is not configured to at least \"{seconds}\" seconds. For enhanced security we recommend enabling HSTS as described in our <a href=\"{docUrl}\" rel=\"noreferrer\">security tips</a>." : "כותרת HTTP \"Strict-Transport-Security\" אינה מוגדרת לפחות \"{seconds}\" שניות. להגברת האבטחה אנו ממליצים לאפשר HSTS כפי שמוסבר ב- <a href=\"{docUrl}\" rel=\"noreferrer\">טיפים לאבטחה</a> שלנו.",
"You are accessing this site via HTTP. We strongly suggest you configure your server to require using HTTPS instead as described in our <a href=\"{docUrl}\">security tips</a>." : "הנך נכנס לאתר באמצעות פרוטוקול HTTP. אנו ממליצים מאוד להגדיר את השרת לעבוד עם פרוטוקול HTTPS במקום כפי שמוסבר ב- <a href=\"{docUrl}\">טיפים לאבטחה</a> שלנו.",
"Shared" : "שותף",
"Shared with {recipients}" : "שיתוף עם {recipients}",
@ -152,6 +164,7 @@ OC.L10N.register(
"Send" : "שליחה",
"Sending ..." : "מתבצעת שליחה ...",
"Email sent" : "הודעת הדוא״ל נשלחה",
"Send link via email" : "שליחת קישור באמצעות דואר אלקטרוני",
"Shared with you and the group {group} by {owner}" : "שותף אתך ועם הקבוצה {group} שבבעלות {owner}",
"Shared with you by {owner}" : "שותף אתך על ידי {owner}",
"group" : "קבוצה",
@ -168,6 +181,7 @@ OC.L10N.register(
"Share details could not be loaded for this item." : "לא ניתן היה לטעון מידע שיתוף לפריט זה",
"No users or groups found for {search}" : "לא אותרו משתמשים או קבוצות עבור {search}",
"No users found for {search}" : "לא אותרו משתמשים עבור {search}",
"An error occurred. Please try again" : "אירעה שגיאה. יש לנסות שנית",
"{sharee} (group)" : "{sharee} (קבוצה)",
"{sharee} (at {server})" : "{sharee} (ב- {server})",
"{sharee} (remote)" : "{sharee} (מרוחק)",
@ -181,6 +195,7 @@ OC.L10N.register(
"Warning" : "אזהרה",
"Error while sending notification" : "שגיאה בזמן שליחת הודעה",
"Non-existing tag #{tag}" : "תגית לא קיימת #{tag}",
"restricted" : "מוגבל",
"invisible" : "בלתי גלוי",
"({scope})" : "({scope})",
"Delete" : "מחיקה",
@ -200,6 +215,7 @@ OC.L10N.register(
"new" : "חדש",
"_download %n file_::_download %n files_" : ["הורד %n קובץ","הורדו %n קבצים"],
"The upgrade is in progress, leaving this page might interrupt the process in some environments." : "מתבצע עכשיו שדרוג, מעבר מדף זה עלול לפגוע בתהליך בסביבות הפעלה מסויימות.",
"Updating to {version}" : "מעדכן ל- {version}",
"An error occurred." : "אירעה שגיאה.",
"Please reload the page." : "יש להעלות מחדש דף זה.",
"The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "העדכון בוצע בהצלחה. למידע נוסף <a href=\"{url}\">ניתן לבדוק בהודעת הפורום שלנו</a> המכסה נושא זו.",
@ -264,7 +280,9 @@ OC.L10N.register(
"Search" : "חיפוש",
"Server side authentication failed!" : "אימות לצד שרת נכשל!",
"Please contact your administrator." : "יש ליצור קשר עם המנהל.",
"An internal error occurred." : "אירעה שגיאה פנימית.",
"Please try again or contact your administrator." : "יש לנסות שוב ליצור קשר עם המנהל שלך.",
"Username or email" : "שם משתמש או דואר אלקטרוני",
"Log in" : "כניסה",
"Wrong password. Reset it?" : "סיסמא שגוייה. האם לאפס אותה?",
"Wrong password." : "סיסמא שגוייה.",
@ -278,6 +296,11 @@ OC.L10N.register(
"This means only administrators can use the instance." : "לפיכך רק מנהלים יכולים להשתמש בהפעלה זו.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "יש ליצור קשר עם מנהל המערכת אם הודעה שו נמשכת או מופיעה באופן בלתי צפוי. ",
"Thank you for your patience." : "תודה על הסבלנות.",
"Two-step verification" : "אימות דו-שלבי",
"Enhanced security has been enabled for your account. Please authenticate using a second factor." : "אבטחה מורחבת הופעלה בחשבון שלך. יש לאמת באמצעות גורם שני.",
"Cancel login" : "ביטול התחברות",
"Please authenticate using the selected factor." : "יש לאמת באמצעות גורם נבחר.",
"An error occured while verifying the token" : "שגיאה אירעה בזמן אימות המחרוזת",
"You are accessing the server from an untrusted domain." : "נכנסת לשרת משם מתחם / דומיין שאינו מהימן.",
"Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domains\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "יש ליצור קשר עם המנהל שלך. אם הנך המנהל של הפעלה זו, יש להגדיר את הגדרות ה- \"trusted_domains\" של config/config.php. דוגמת תצורה ניתן לראות ב- config/config.sample.php.",
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "בהתאם לתצורה שלך, כמנהל יתכן ותוכל להשתמש בכפתור מטה להפיכת שם המתחם / דומיין למהימן.",
@ -290,6 +313,10 @@ OC.L10N.register(
"Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "יש לוודא שמסד הנתונים, תיקיית config ותיקיית data גובו לפני ההמשך.",
"Start update" : "התחלת עדכון",
"To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "למניעת פסקי זמן בהתקנות גדולות, ניתן במקום להריץ את הפקודה הבאה בתיקיית ההתקנה שלך:",
"Detailed logs" : "לוג פרטים",
"Update needed" : "עדכון נדרש",
"Please use the command line updater because you have a big instance." : "יש להשתמש בעדכון על בסיס שורת פקודה כיוון שמדובר בעדכון גדול.",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "לעזרה, ניתן לצפות ב<a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">מסמכי התיעוד</a>.",
"This %s instance is currently in maintenance mode, which may take a while." : "הפעלה %s זו כרגע במצב אחזקה, שתמשך זמן מה.",
"This page will refresh itself when the %s instance is available again." : "עמוד זה ירענן את עצמו כשהפעלת %s תהיה זמינה שוב."
},

View File

@ -25,8 +25,11 @@
"Error unfavoriting" : "שגיאה בהסרת מועדפים",
"Couldn't send mail to following users: %s " : "לא ניתן היה לשלוח דואר אלקטרוני למשתמשים הבאים %s ",
"Preparing update" : "מכין עדכון",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair warning: " : "אזהרת תיקון:",
"Repair error: " : "שגיאת תיקון:",
"Please use the command line updater because automatic updating is disabled in the config.php." : "יש להשתמש בעדכון על בסיס שורת פקודה כיוון שעדכון אוטומטי מנוטרל בקובץ config.php.",
"[%d / %d]: Checking table %s" : "[%d / %d]: בודק טבלה %s",
"Turned on maintenance mode" : "הפעלת מצב אחזקה",
"Turned off maintenance mode" : "כיבוי מצב אחזקה",
"Maintenance mode is kept active" : "מצב אחזקה נשמר פעיל",
@ -93,6 +96,7 @@
"Dec." : "דצמ׳",
"<a href=\"{docUrl}\">There were problems with the code integrity check. More information…</a>" : "<a href=\"{docUrl}\">קיימות בעיות עם בדיקת תקינות קוד. למידע נוסף…</a>",
"Settings" : "הגדרות",
"Problem loading page, reloading in 5 seconds" : "בעיה בטעינת העמוד, טעינה מחדש בעוד 5 שניות.",
"Saving..." : "שמירה…",
"Dismiss" : "שחרור",
"seconds ago" : "שניות",
@ -124,10 +128,18 @@
"Good password" : "סיסמא טובה",
"Strong password" : "סיסמא חזקה",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "שרת האינטרנט שלך אינו מוגדר כהלכה לאפשר סנכרון כיוון שממשק ה־WebDAV כנראה שבור.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "שרת האינטרנט שלך לא מוגדר כהלכה לפתור \"{url}\". מידע נוסף קיים <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">במסמכים</a> שלנו.",
"This server has no working Internet connection. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "לשרת זה אין חיבור אינטרנט פעיל. לפיכך חלק מהתכונות כגון עגינת אחסון חיצוני, הודעות על עדכונים או התקנת יישומי צד שלישי לא יעבדו. ייתכן ולא יעבדו גם כניסה לקבצים מבחוץ ושליחת הודעות דואר אלקטרוני. אנו ממליצים לאפשר חיבור אינטרנט לשרת זה אם ברצונך שיהיו לך את כל התכונות.",
"No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "לא הוגדר זיכרון מטמון. על מנת לשפר את הביצועים יש להגדיר memcache אם קיים. מידע נוסף ניתן לצפות ב- <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">מסמכי התיעוד</a>.",
"/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "/dev/urandom אינו ניתן לקריאה על ידי PHP אשר אינו מומלץ בשל סיבות אבטחה. מידע נוסף ניתן לראות ב- <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">מסמכי התיעוד</a> שלנו.",
"You are currently running PHP {version}. We encourage you to upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "כרגע המערכת מריצה PHP {version}. מומלץ מאוד לשדרג את גרסת ה- PHP vשלך כדי לנצל את <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">עדכוני הביצועים והאבטחה המופקים על ידי קבוצת ה- PHP</a> ברגע שההפצה אליך תתמוך בזה.",
"The reverse proxy headers configuration is incorrect, or you are accessing ownCloud from a trusted proxy. If you are not accessing ownCloud from a trusted proxy, this is a security issue and can allow an attacker to spoof their IP address as visible to ownCloud. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "תצורת כותרות פרוקסי ההפוכה אינה נכונה, או שהגישה ל- ownCloud מתבצעת מ- proxy אמין. אם הגישה ל- ownCloud אינה מ- proxy אמין, מדובר בבעיית אבטחה שמאפשרת לתוקף לזייף את כתובת ה- IP כגלויה ל- ownCloud. מידע נוסף ניתן למצוא ב- <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">מסמכי התיעוד</a> שלנו.",
"Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Memcached מוגדר כמטמון מופץ, אבל מותקן מודול PHP \"memcache\" מוטעה. רק \\OC\\Memcache\\Memcached תומך ב- \"memcached\" אבל לא ב- \"memcache\". ניתן לצפות ב- <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki בנושא שני המודולים</a>.",
"Some files have not passed the integrity check. Further information on how to resolve this issue can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "חלק מהקבצים לא עברו את בדיקת השלמות. מידע נוסף איך לפתור את הבעיה ניתן למצוא ב- to resolve this issue can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">מסמכי התיעוד</a> שלנו. (<a href=\"{codeIntegrityDownloadEndpoint}\">רשימה של קבצים לא תקינים…</a> / <a href=\"{rescanEndpoint}\">סריקה מחדש…</a>)",
"Error occurred while checking server setup" : "שגיאה אירעה בזמן בדיקת התקנת השרת",
"Your data directory and your files are probably accessible from the Internet. The .htaccess file is not working. We strongly suggest that you configure your web server in a way that the data directory is no longer accessible or you move the data directory outside the web server document root." : "כנראה וניתן לגשת אל תיקיית data והקבצים שלך מהאינטרנט. קובץ .htaccess אינו עובד. אנו ממליצים בכל תוקף שתגדיר את השרת בצורה כזאת שלא ניתן יהיה לגשת לתיקיית ה- data או להעביר את תיקיית ה- dta מחוץ לנתיב המסמכים של שרת האינטרנט.",
"The \"{header}\" HTTP header is not configured to equal to \"{expected}\". This is a potential security or privacy risk and we recommend adjusting this setting." : "כותרת ה- HTTP \"{header}\" אינה מוגדרת להיות שווה ל- \"{expected}\". הדבר מהווה פוטנציאל סיכון אבטחה או פגיעה בפרטיות ואנו ממליצים לתקן את הגדרה זו.",
"The \"Strict-Transport-Security\" HTTP header is not configured to at least \"{seconds}\" seconds. For enhanced security we recommend enabling HSTS as described in our <a href=\"{docUrl}\" rel=\"noreferrer\">security tips</a>." : "כותרת HTTP \"Strict-Transport-Security\" אינה מוגדרת לפחות \"{seconds}\" שניות. להגברת האבטחה אנו ממליצים לאפשר HSTS כפי שמוסבר ב- <a href=\"{docUrl}\" rel=\"noreferrer\">טיפים לאבטחה</a> שלנו.",
"You are accessing this site via HTTP. We strongly suggest you configure your server to require using HTTPS instead as described in our <a href=\"{docUrl}\">security tips</a>." : "הנך נכנס לאתר באמצעות פרוטוקול HTTP. אנו ממליצים מאוד להגדיר את השרת לעבוד עם פרוטוקול HTTPS במקום כפי שמוסבר ב- <a href=\"{docUrl}\">טיפים לאבטחה</a> שלנו.",
"Shared" : "שותף",
"Shared with {recipients}" : "שיתוף עם {recipients}",
@ -150,6 +162,7 @@
"Send" : "שליחה",
"Sending ..." : "מתבצעת שליחה ...",
"Email sent" : "הודעת הדוא״ל נשלחה",
"Send link via email" : "שליחת קישור באמצעות דואר אלקטרוני",
"Shared with you and the group {group} by {owner}" : "שותף אתך ועם הקבוצה {group} שבבעלות {owner}",
"Shared with you by {owner}" : "שותף אתך על ידי {owner}",
"group" : "קבוצה",
@ -166,6 +179,7 @@
"Share details could not be loaded for this item." : "לא ניתן היה לטעון מידע שיתוף לפריט זה",
"No users or groups found for {search}" : "לא אותרו משתמשים או קבוצות עבור {search}",
"No users found for {search}" : "לא אותרו משתמשים עבור {search}",
"An error occurred. Please try again" : "אירעה שגיאה. יש לנסות שנית",
"{sharee} (group)" : "{sharee} (קבוצה)",
"{sharee} (at {server})" : "{sharee} (ב- {server})",
"{sharee} (remote)" : "{sharee} (מרוחק)",
@ -179,6 +193,7 @@
"Warning" : "אזהרה",
"Error while sending notification" : "שגיאה בזמן שליחת הודעה",
"Non-existing tag #{tag}" : "תגית לא קיימת #{tag}",
"restricted" : "מוגבל",
"invisible" : "בלתי גלוי",
"({scope})" : "({scope})",
"Delete" : "מחיקה",
@ -198,6 +213,7 @@
"new" : "חדש",
"_download %n file_::_download %n files_" : ["הורד %n קובץ","הורדו %n קבצים"],
"The upgrade is in progress, leaving this page might interrupt the process in some environments." : "מתבצע עכשיו שדרוג, מעבר מדף זה עלול לפגוע בתהליך בסביבות הפעלה מסויימות.",
"Updating to {version}" : "מעדכן ל- {version}",
"An error occurred." : "אירעה שגיאה.",
"Please reload the page." : "יש להעלות מחדש דף זה.",
"The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "העדכון בוצע בהצלחה. למידע נוסף <a href=\"{url}\">ניתן לבדוק בהודעת הפורום שלנו</a> המכסה נושא זו.",
@ -262,7 +278,9 @@
"Search" : "חיפוש",
"Server side authentication failed!" : "אימות לצד שרת נכשל!",
"Please contact your administrator." : "יש ליצור קשר עם המנהל.",
"An internal error occurred." : "אירעה שגיאה פנימית.",
"Please try again or contact your administrator." : "יש לנסות שוב ליצור קשר עם המנהל שלך.",
"Username or email" : "שם משתמש או דואר אלקטרוני",
"Log in" : "כניסה",
"Wrong password. Reset it?" : "סיסמא שגוייה. האם לאפס אותה?",
"Wrong password." : "סיסמא שגוייה.",
@ -276,6 +294,11 @@
"This means only administrators can use the instance." : "לפיכך רק מנהלים יכולים להשתמש בהפעלה זו.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "יש ליצור קשר עם מנהל המערכת אם הודעה שו נמשכת או מופיעה באופן בלתי צפוי. ",
"Thank you for your patience." : "תודה על הסבלנות.",
"Two-step verification" : "אימות דו-שלבי",
"Enhanced security has been enabled for your account. Please authenticate using a second factor." : "אבטחה מורחבת הופעלה בחשבון שלך. יש לאמת באמצעות גורם שני.",
"Cancel login" : "ביטול התחברות",
"Please authenticate using the selected factor." : "יש לאמת באמצעות גורם נבחר.",
"An error occured while verifying the token" : "שגיאה אירעה בזמן אימות המחרוזת",
"You are accessing the server from an untrusted domain." : "נכנסת לשרת משם מתחם / דומיין שאינו מהימן.",
"Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domains\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "יש ליצור קשר עם המנהל שלך. אם הנך המנהל של הפעלה זו, יש להגדיר את הגדרות ה- \"trusted_domains\" של config/config.php. דוגמת תצורה ניתן לראות ב- config/config.sample.php.",
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "בהתאם לתצורה שלך, כמנהל יתכן ותוכל להשתמש בכפתור מטה להפיכת שם המתחם / דומיין למהימן.",
@ -288,6 +311,10 @@
"Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "יש לוודא שמסד הנתונים, תיקיית config ותיקיית data גובו לפני ההמשך.",
"Start update" : "התחלת עדכון",
"To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "למניעת פסקי זמן בהתקנות גדולות, ניתן במקום להריץ את הפקודה הבאה בתיקיית ההתקנה שלך:",
"Detailed logs" : "לוג פרטים",
"Update needed" : "עדכון נדרש",
"Please use the command line updater because you have a big instance." : "יש להשתמש בעדכון על בסיס שורת פקודה כיוון שמדובר בעדכון גדול.",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "לעזרה, ניתן לצפות ב<a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">מסמכי התיעוד</a>.",
"This %s instance is currently in maintenance mode, which may take a while." : "הפעלה %s זו כרגע במצב אחזקה, שתמשך זמן מה.",
"This page will refresh itself when the %s instance is available again." : "עמוד זה ירענן את עצמו כשהפעלת %s תהיה זמינה שוב."
},"pluralForm" :"nplurals=2; plural=(n != 1);"

View File

@ -195,6 +195,7 @@ OC.L10N.register(
"Warning" : "Waarschuwing",
"Error while sending notification" : "Fout bij versturen melding",
"Non-existing tag #{tag}" : "Niet bestaande tag #{tag}",
"restricted" : "beperkt",
"invisible" : "onzichtbaar",
"({scope})" : "({scope})",
"Delete" : "Verwijder",
@ -295,6 +296,11 @@ OC.L10N.register(
"This means only administrators can use the instance." : "Dat betekent dat alleen beheerders deze installatie kunnen gebruiken.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Neem contact op met uw systeembeheerder als deze melding aanhoudt of onverwacht verscheen.",
"Thank you for your patience." : "Bedankt voor uw geduld.",
"Two-step verification" : "Twee-staps verificatie",
"Enhanced security has been enabled for your account. Please authenticate using a second factor." : "Aanvullende beveiliging is ingeschakeld voor uw account. Log in met een tweede factor.",
"Cancel login" : "Inlog annuleren",
"Please authenticate using the selected factor." : "Log in met de geselecteerde factor.",
"An error occured while verifying the token" : "Er trad een fout op bij het verifiëren van het token",
"You are accessing the server from an untrusted domain." : "U benadert de server vanaf een niet vertrouwd domein.",
"Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domains\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "Neem contact op met uw beheerder. Als u de beheerder van deze service bent, configureer dan de \"trusted_domains\" instelling in config/config.php. Een voorbeeldconfiguratie is gegeven in config/config.sample.php.",
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Afhankelijk van uw configuratie zou u als beheerder ook de onderstaande knop kunnen gebruiken om dit domein te vertrouwen.",

View File

@ -193,6 +193,7 @@
"Warning" : "Waarschuwing",
"Error while sending notification" : "Fout bij versturen melding",
"Non-existing tag #{tag}" : "Niet bestaande tag #{tag}",
"restricted" : "beperkt",
"invisible" : "onzichtbaar",
"({scope})" : "({scope})",
"Delete" : "Verwijder",
@ -293,6 +294,11 @@
"This means only administrators can use the instance." : "Dat betekent dat alleen beheerders deze installatie kunnen gebruiken.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Neem contact op met uw systeembeheerder als deze melding aanhoudt of onverwacht verscheen.",
"Thank you for your patience." : "Bedankt voor uw geduld.",
"Two-step verification" : "Twee-staps verificatie",
"Enhanced security has been enabled for your account. Please authenticate using a second factor." : "Aanvullende beveiliging is ingeschakeld voor uw account. Log in met een tweede factor.",
"Cancel login" : "Inlog annuleren",
"Please authenticate using the selected factor." : "Log in met de geselecteerde factor.",
"An error occured while verifying the token" : "Er trad een fout op bij het verifiëren van het token",
"You are accessing the server from an untrusted domain." : "U benadert de server vanaf een niet vertrouwd domein.",
"Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domains\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "Neem contact op met uw beheerder. Als u de beheerder van deze service bent, configureer dan de \"trusted_domains\" instelling in config/config.php. Een voorbeeldconfiguratie is gegeven in config/config.sample.php.",
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Afhankelijk van uw configuratie zou u als beheerder ook de onderstaande knop kunnen gebruiken om dit domein te vertrouwen.",

View File

@ -13,6 +13,7 @@ OC.L10N.register(
"No valid crop data provided" : "Brak danych do przycięcia",
"Crop is not square" : "Przycięcie nie jest prostokątem",
"Couldn't reset password because the token is invalid" : "Nie można zresetować hasła, ponieważ token jest niepoprawny",
"Couldn't reset password because the token is expired" : "Nie można zresetować hasła, ponieważ token wygasł",
"Couldn't send reset email. Please make sure your username is correct." : "Nie mogę wysłać maila resetującego. Sprawdź czy nazwa użytkownika jest poprawna.",
"%s password reset" : "%s reset hasła",
"Couldn't send reset email. Please contact your administrator." : "Nie mogę wysłać maila resetującego. Skontaktuj się z administratorem.",
@ -25,8 +26,11 @@ OC.L10N.register(
"Error unfavoriting" : "Błąd przy usuwaniu z ulubionych",
"Couldn't send mail to following users: %s " : "Nie można było wysłać wiadomości do następujących użytkowników: %s",
"Preparing update" : "Przygotowuję aktualizację",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair warning: " : "Ostrzeżenie naprawiania:",
"Repair error: " : "Błąd naprawiania:",
"Please use the command line updater because automatic updating is disabled in the config.php." : "Użyj aktualizatora z linii poleceń, ponieważ automatyczna aktualizacja jest zablokowana w config.php.",
"[%d / %d]: Checking table %s" : "[%d / %d]: Sprawdzanie tabeli %s",
"Turned on maintenance mode" : "Włączony tryb konserwacji",
"Turned off maintenance mode" : "Wyłączony tryb konserwacji",
"Maintenance mode is kept active" : "Tryb konserwacji pozostaje aktywny",
@ -91,6 +95,7 @@ OC.L10N.register(
"Oct." : "Paź.",
"Nov." : "Lis.",
"Dec." : "Gru.",
"<a href=\"{docUrl}\">There were problems with the code integrity check. More information…</a>" : "<a href=\"{docUrl}\">Sprawdzenie spójności kodu nie wykazało problemów. Więcej informacji…</a>",
"Settings" : "Ustawienia",
"Problem loading page, reloading in 5 seconds" : "Błąd podczas ładowania strony, odświeżanie w ciągu 5 sekund.",
"Saving..." : "Zapisywanie...",
@ -123,6 +128,8 @@ OC.L10N.register(
"So-so password" : "Mało skomplikowane hasło",
"Good password" : "Dobre hasło",
"Strong password" : "Mocne hasło",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Serwer WWW nie jest jeszcze na tyle poprawnie skonfigurowany, aby umożliwić synchronizację plików, ponieważ interfejs WebDAV wydaje się być uszkodzony.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Serwer WWW nie jest poprawnie skonfigurowany, aby wyświetlić \"{url}\". Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentacji</a>.",
"Error occurred while checking server setup" : "Pojawił się błąd podczas sprawdzania ustawień serwera",
"Shared" : "Udostępniono",
"Shared with {recipients}" : "Współdzielony z {recipients}",
@ -158,6 +165,8 @@ OC.L10N.register(
"change" : "zmiany",
"delete" : "usuń",
"access control" : "kontrola dostępu",
"Could not unshare" : "Nie udało się usunąć udostępnienia",
"No users or groups found for {search}" : "Nie znaleziono użytkowników lub grup dla {search}",
"No users found for {search}" : "Nie znaleziono użytkowników dla {search}",
"An error occurred. Please try again" : "Wystąpił błąd. Proszę spróbować ponownie.",
"Share" : "Udostępnij",
@ -165,9 +174,12 @@ OC.L10N.register(
"Share with users…" : "Współdziel z użytkownikami...",
"Share with users, groups or remote users…" : "Współdziel z użytkownikami, grupami lub zdalnym użytkownikiem...",
"Share with users or groups…" : "Współdziel z użytkownikami lub grupami...",
"Share with users or remote users…" : "Współdziel z użytkownikami lub zdalnymi użytkownikami...",
"Error removing share" : "Błąd podczas usuwania współdzielenia",
"Warning" : "Ostrzeżenie",
"Error while sending notification" : "Błąd podczas wysyłania powiadomienia",
"Non-existing tag #{tag}" : "Znacznik #{tag} nie istnieje",
"restricted" : "ograniczone",
"invisible" : "niewidoczny",
"Delete" : "Usuń",
"Rename" : "Zmień nazwę",
@ -259,6 +271,11 @@ OC.L10N.register(
"This means only administrators can use the instance." : "To oznacza, że tylko administratorzy mogą w tej chwili używać aplikacji.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Skontaktuj się z administratorem, jeśli ten komunikat pojawił się nieoczekiwanie lub wyświetla się ciągle.",
"Thank you for your patience." : "Dziękuję za cierpliwość.",
"Two-step verification" : "Weryfikacja dwuskładnikowa",
"Enhanced security has been enabled for your account. Please authenticate using a second factor." : "Dla Twojego konta uruchomiono wzmocnioną ochronę. Uwierzytelnij przy pomocy drugiego składnika.",
"Cancel login" : "Anuluj logowanie",
"Please authenticate using the selected factor." : "Uwierzytelnij przy pomocy wybranego składnika",
"An error occured while verifying the token" : "Wystąpił błąd podczas weryfikacji tokena",
"You are accessing the server from an untrusted domain." : "Dostajesz się do serwera z niezaufanej domeny.",
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "W zależności od konfiguracji, jako administrator możesz także użyć poniższego przycisku aby zaufać tej domenie.",
"Add \"%s\" as trusted domain" : "Dodaj \"%s\" jako domenę zaufaną",
@ -272,6 +289,7 @@ OC.L10N.register(
"To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "Aby uniknąć timeout-ów przy większych instalacjach, możesz zamiast tego uruchomić następującą komendę w katalogu Twojej instalacji:",
"Detailed logs" : "Szczegółowe logi",
"Update needed" : "Wymagana aktualizacja",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Aby uzyskać pomoc, zajrzyj do <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentacji</a>.",
"This page will refresh itself when the %s instance is available again." : "Strona odświeży się gdy instancja %s będzie ponownie dostępna."
},
"nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);");

View File

@ -11,6 +11,7 @@
"No valid crop data provided" : "Brak danych do przycięcia",
"Crop is not square" : "Przycięcie nie jest prostokątem",
"Couldn't reset password because the token is invalid" : "Nie można zresetować hasła, ponieważ token jest niepoprawny",
"Couldn't reset password because the token is expired" : "Nie można zresetować hasła, ponieważ token wygasł",
"Couldn't send reset email. Please make sure your username is correct." : "Nie mogę wysłać maila resetującego. Sprawdź czy nazwa użytkownika jest poprawna.",
"%s password reset" : "%s reset hasła",
"Couldn't send reset email. Please contact your administrator." : "Nie mogę wysłać maila resetującego. Skontaktuj się z administratorem.",
@ -23,8 +24,11 @@
"Error unfavoriting" : "Błąd przy usuwaniu z ulubionych",
"Couldn't send mail to following users: %s " : "Nie można było wysłać wiadomości do następujących użytkowników: %s",
"Preparing update" : "Przygotowuję aktualizację",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair warning: " : "Ostrzeżenie naprawiania:",
"Repair error: " : "Błąd naprawiania:",
"Please use the command line updater because automatic updating is disabled in the config.php." : "Użyj aktualizatora z linii poleceń, ponieważ automatyczna aktualizacja jest zablokowana w config.php.",
"[%d / %d]: Checking table %s" : "[%d / %d]: Sprawdzanie tabeli %s",
"Turned on maintenance mode" : "Włączony tryb konserwacji",
"Turned off maintenance mode" : "Wyłączony tryb konserwacji",
"Maintenance mode is kept active" : "Tryb konserwacji pozostaje aktywny",
@ -89,6 +93,7 @@
"Oct." : "Paź.",
"Nov." : "Lis.",
"Dec." : "Gru.",
"<a href=\"{docUrl}\">There were problems with the code integrity check. More information…</a>" : "<a href=\"{docUrl}\">Sprawdzenie spójności kodu nie wykazało problemów. Więcej informacji…</a>",
"Settings" : "Ustawienia",
"Problem loading page, reloading in 5 seconds" : "Błąd podczas ładowania strony, odświeżanie w ciągu 5 sekund.",
"Saving..." : "Zapisywanie...",
@ -121,6 +126,8 @@
"So-so password" : "Mało skomplikowane hasło",
"Good password" : "Dobre hasło",
"Strong password" : "Mocne hasło",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Serwer WWW nie jest jeszcze na tyle poprawnie skonfigurowany, aby umożliwić synchronizację plików, ponieważ interfejs WebDAV wydaje się być uszkodzony.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Serwer WWW nie jest poprawnie skonfigurowany, aby wyświetlić \"{url}\". Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentacji</a>.",
"Error occurred while checking server setup" : "Pojawił się błąd podczas sprawdzania ustawień serwera",
"Shared" : "Udostępniono",
"Shared with {recipients}" : "Współdzielony z {recipients}",
@ -156,6 +163,8 @@
"change" : "zmiany",
"delete" : "usuń",
"access control" : "kontrola dostępu",
"Could not unshare" : "Nie udało się usunąć udostępnienia",
"No users or groups found for {search}" : "Nie znaleziono użytkowników lub grup dla {search}",
"No users found for {search}" : "Nie znaleziono użytkowników dla {search}",
"An error occurred. Please try again" : "Wystąpił błąd. Proszę spróbować ponownie.",
"Share" : "Udostępnij",
@ -163,9 +172,12 @@
"Share with users…" : "Współdziel z użytkownikami...",
"Share with users, groups or remote users…" : "Współdziel z użytkownikami, grupami lub zdalnym użytkownikiem...",
"Share with users or groups…" : "Współdziel z użytkownikami lub grupami...",
"Share with users or remote users…" : "Współdziel z użytkownikami lub zdalnymi użytkownikami...",
"Error removing share" : "Błąd podczas usuwania współdzielenia",
"Warning" : "Ostrzeżenie",
"Error while sending notification" : "Błąd podczas wysyłania powiadomienia",
"Non-existing tag #{tag}" : "Znacznik #{tag} nie istnieje",
"restricted" : "ograniczone",
"invisible" : "niewidoczny",
"Delete" : "Usuń",
"Rename" : "Zmień nazwę",
@ -257,6 +269,11 @@
"This means only administrators can use the instance." : "To oznacza, że tylko administratorzy mogą w tej chwili używać aplikacji.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Skontaktuj się z administratorem, jeśli ten komunikat pojawił się nieoczekiwanie lub wyświetla się ciągle.",
"Thank you for your patience." : "Dziękuję za cierpliwość.",
"Two-step verification" : "Weryfikacja dwuskładnikowa",
"Enhanced security has been enabled for your account. Please authenticate using a second factor." : "Dla Twojego konta uruchomiono wzmocnioną ochronę. Uwierzytelnij przy pomocy drugiego składnika.",
"Cancel login" : "Anuluj logowanie",
"Please authenticate using the selected factor." : "Uwierzytelnij przy pomocy wybranego składnika",
"An error occured while verifying the token" : "Wystąpił błąd podczas weryfikacji tokena",
"You are accessing the server from an untrusted domain." : "Dostajesz się do serwera z niezaufanej domeny.",
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "W zależności od konfiguracji, jako administrator możesz także użyć poniższego przycisku aby zaufać tej domenie.",
"Add \"%s\" as trusted domain" : "Dodaj \"%s\" jako domenę zaufaną",
@ -270,6 +287,7 @@
"To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "Aby uniknąć timeout-ów przy większych instalacjach, możesz zamiast tego uruchomić następującą komendę w katalogu Twojej instalacji:",
"Detailed logs" : "Szczegółowe logi",
"Update needed" : "Wymagana aktualizacja",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Aby uzyskać pomoc, zajrzyj do <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentacji</a>.",
"This page will refresh itself when the %s instance is available again." : "Strona odświeży się gdy instancja %s będzie ponownie dostępna."
},"pluralForm" :"nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"
}

View File

@ -195,6 +195,7 @@ OC.L10N.register(
"Warning" : "警告",
"Error while sending notification" : "发送通知时出现错误",
"Non-existing tag #{tag}" : "标签 #{tag} 不存在",
"restricted" : "受限",
"invisible" : "不可见",
"({scope})" : "({scope})",
"Delete" : "删除",
@ -295,6 +296,11 @@ OC.L10N.register(
"This means only administrators can use the instance." : "这意味着只有管理员才能在实例上操作。",
"Contact your system administrator if this message persists or appeared unexpectedly." : "如果这个消息一直存在或不停出现,请联系你的系统管理员。",
"Thank you for your patience." : "感谢让你久等了。",
"Two-step verification" : "两步验证",
"Enhanced security has been enabled for your account. Please authenticate using a second factor." : "您的帐户已启用增强安全性,请使用第二因子验证。",
"Cancel login" : "取消登录",
"Please authenticate using the selected factor." : "请使用所选择的因素验证。",
"An error occured while verifying the token" : "在验证令牌时出错",
"You are accessing the server from an untrusted domain." : "您正在访问来自不信任域名的服务器。",
"Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domains\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "请联系你的系统管理员。如果你是系统管理员,配置 config/config.php 文件中参数 \"trusted_domain\" 设置。可以在 config/config.sample.php 文件中找到例子。",
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "基于你的配置,作为系统管理员,你可能还能点击下面的按钮来信任这个域。",

View File

@ -193,6 +193,7 @@
"Warning" : "警告",
"Error while sending notification" : "发送通知时出现错误",
"Non-existing tag #{tag}" : "标签 #{tag} 不存在",
"restricted" : "受限",
"invisible" : "不可见",
"({scope})" : "({scope})",
"Delete" : "删除",
@ -293,6 +294,11 @@
"This means only administrators can use the instance." : "这意味着只有管理员才能在实例上操作。",
"Contact your system administrator if this message persists or appeared unexpectedly." : "如果这个消息一直存在或不停出现,请联系你的系统管理员。",
"Thank you for your patience." : "感谢让你久等了。",
"Two-step verification" : "两步验证",
"Enhanced security has been enabled for your account. Please authenticate using a second factor." : "您的帐户已启用增强安全性,请使用第二因子验证。",
"Cancel login" : "取消登录",
"Please authenticate using the selected factor." : "请使用所选择的因素验证。",
"An error occured while verifying the token" : "在验证令牌时出错",
"You are accessing the server from an untrusted domain." : "您正在访问来自不信任域名的服务器。",
"Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domains\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "请联系你的系统管理员。如果你是系统管理员,配置 config/config.php 文件中参数 \"trusted_domain\" 设置。可以在 config/config.sample.php 文件中找到例子。",
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "基于你的配置,作为系统管理员,你可能还能点击下面的按钮来信任这个域。",

View File

@ -18,6 +18,7 @@ OC.L10N.register(
"_%n hour ago_::_%n hours ago_" : ["fa %n hora","fa %n hores"],
"_%n minute ago_::_%n minutes ago_" : ["fa %n minut","fa %n minuts"],
"seconds ago" : "segons enrere",
"File name contains at least one invalid character" : "El nom del fitxer conté al menys un caràcter invàlid",
"App directory already exists" : "La carpeta de l'aplicació ja existeix",
"Can't create app folder. Please fix permissions. %s" : "No es pot crear la carpeta de l'aplicació. Arregleu els permisos. %s",
"No source specified when installing app" : "No heu especificat la font en instal·lar l'aplicació",
@ -43,6 +44,7 @@ OC.L10N.register(
"For the best results, please consider using a GNU/Linux server instead." : "Per millors resultats, millor considereu utilitzar un servidor GNU/Linux.",
"Set an admin username." : "Establiu un nom d'usuari per l'administrador.",
"Set an admin password." : "Establiu una contrasenya per l'administrador.",
"Invalid Federated Cloud ID" : "ID de núvol federat invàlid",
"%s shared »%s« with you" : "%s ha compartit »%s« amb tu",
"Sharing %s failed, because the file does not exist" : "Ha fallat en compartir %s, perquè el fitxer no existeix",
"You are not allowed to share %s" : "No se us permet compartir %s",
@ -53,6 +55,8 @@ OC.L10N.register(
"Sharing %s failed, because %s is not a member of the group %s" : "Ha fallat en compartir %s, perquè %s no és membre del grup %s",
"You need to provide a password to create a public link, only protected links are allowed" : "Heu de proporcionar una contrasenya per crear un enllaç públic. Només es permeten enllaços segurs.",
"Sharing %s failed, because sharing with links is not allowed" : "Ha fallat en compartir %s, perquè no es permet compartir amb enllaços",
"Not allowed to create a federated share with the same user" : "No està permés crear una compartició federada amb el mateix usuari",
"Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "La compartició de %s ha fallat, no es pot trobar %s, potser el servidor està actualment innacessible.",
"Share type %s is not valid for %s" : "La compartició tipus %s no és vàlida per %s",
"Setting permissions for %s failed, because the permissions exceed permissions granted to %s" : "Ha fallat en establir els permisos per %s perquè aquests excedeixen els permesos per a %s",
"Setting permissions for %s failed, because the item was not found" : "Ha fallat en establir els permisos per %s, perquè no s'ha trobat l'element",

View File

@ -16,6 +16,7 @@
"_%n hour ago_::_%n hours ago_" : ["fa %n hora","fa %n hores"],
"_%n minute ago_::_%n minutes ago_" : ["fa %n minut","fa %n minuts"],
"seconds ago" : "segons enrere",
"File name contains at least one invalid character" : "El nom del fitxer conté al menys un caràcter invàlid",
"App directory already exists" : "La carpeta de l'aplicació ja existeix",
"Can't create app folder. Please fix permissions. %s" : "No es pot crear la carpeta de l'aplicació. Arregleu els permisos. %s",
"No source specified when installing app" : "No heu especificat la font en instal·lar l'aplicació",
@ -41,6 +42,7 @@
"For the best results, please consider using a GNU/Linux server instead." : "Per millors resultats, millor considereu utilitzar un servidor GNU/Linux.",
"Set an admin username." : "Establiu un nom d'usuari per l'administrador.",
"Set an admin password." : "Establiu una contrasenya per l'administrador.",
"Invalid Federated Cloud ID" : "ID de núvol federat invàlid",
"%s shared »%s« with you" : "%s ha compartit »%s« amb tu",
"Sharing %s failed, because the file does not exist" : "Ha fallat en compartir %s, perquè el fitxer no existeix",
"You are not allowed to share %s" : "No se us permet compartir %s",
@ -51,6 +53,8 @@
"Sharing %s failed, because %s is not a member of the group %s" : "Ha fallat en compartir %s, perquè %s no és membre del grup %s",
"You need to provide a password to create a public link, only protected links are allowed" : "Heu de proporcionar una contrasenya per crear un enllaç públic. Només es permeten enllaços segurs.",
"Sharing %s failed, because sharing with links is not allowed" : "Ha fallat en compartir %s, perquè no es permet compartir amb enllaços",
"Not allowed to create a federated share with the same user" : "No està permés crear una compartició federada amb el mateix usuari",
"Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "La compartició de %s ha fallat, no es pot trobar %s, potser el servidor està actualment innacessible.",
"Share type %s is not valid for %s" : "La compartició tipus %s no és vàlida per %s",
"Setting permissions for %s failed, because the permissions exceed permissions granted to %s" : "Ha fallat en establir els permisos per %s perquè aquests excedeixen els permesos per a %s",
"Setting permissions for %s failed, because the item was not found" : "Ha fallat en establir els permisos per %s, perquè no s'ha trobat l'element",

View File

@ -9,6 +9,7 @@ OC.L10N.register(
"It has been detected that the sample configuration has been copied. This can break your installation and is unsupported. Please read the documentation before performing changes on config.php" : "התגלה שדוגמת התצורה הועתקה. דבר זה עלול לשבור את ההתקנה ולא נתמך.יש לקרוא את מסמכי התיעוד לפני שמבצעים שינויים ב- config.php",
"PHP %s or higher is required." : "נדרש PHP בגרסת %s ומעלה.",
"PHP with a version lower than %s is required." : "נדרש PHP בגרסה נמוכה מ- %s.",
"%sbit or higher PHP required." : "נדרש PHP בגרסת %s ומעלה.",
"Following databases are supported: %s" : "מסדי הנתונים הבאים נתמכים: %s",
"The command line tool %s could not be found" : "כלי שורת הפקודה %s לא אותר",
"The library %s is not available." : "הספריה %s אינה זמינה.",
@ -98,6 +99,8 @@ OC.L10N.register(
"Sharing %s failed, because the sharing backend for %s could not find its source" : "השיתוף %s נכשל, כיוון שבצד אחורי לשיתוף עבור %s לא ניתן היה לאתר את מקורו",
"Sharing %s failed, because the file could not be found in the file cache" : "השיתוף %s נכשל, כייון שלא ניתן היה למצוא את הקובץ בזכרון המטמון",
"Cannot increase permissions of %s" : "לא ניתן להגדיל את ההיתרים של %s",
"Files can't be shared with delete permissions" : "קובץ לא ניתן לשיתוף בפעולת מחיקת הרשאות",
"Files can't be shared with create permissions" : "קובץ לא ניתן לשיתוף בפעולת יצירת הרשאות",
"Expiration date is in the past" : "תאריך תפוגה הנו בעבר",
"Cannot set expiration date more than %s days in the future" : "לא ניתן להגדיר את תאריך התפוגה מעל %s ימים בעתיד",
"Could not find category \"%s\"" : "לא ניתן למצוא את הקטגוריה „%s“",
@ -107,12 +110,14 @@ OC.L10N.register(
"Username contains whitespace at the beginning or at the end" : "שם המשתמש מכיל רווח בתחילתו או בסופו",
"A valid password must be provided" : "יש לספק ססמה תקנית",
"The username is already being used" : "השם משתמש כבר בשימוש",
"Login canceled by app" : "התחברות בוטלה על ידי יישום",
"User disabled" : "משתמש מנוטרל",
"Help" : "עזרה",
"Personal" : "אישי",
"Users" : "משתמשים",
"Admin" : "מנהל",
"Recommended" : "מומלץ",
"App \"%s\" cannot be installed because appinfo file cannot be read." : "יישום \"%s\" לא ניתן להתקנה כיוון שקובץ appinfo לא ניתן לקריאה.",
"App \"%s\" cannot be installed because it is not compatible with this version of ownCloud." : "היישום \"%s\" לא ניתן להתקנה כיוון שאינו תואם לגרסה זו של ownCloud.",
"App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "היישום \"%s\" לא ניתן להתקנה כיוון שיחסי התלות הבאים אינם מתקיימים: %s",
"No app name specified" : "לא הוגדר שם יישום",

View File

@ -7,6 +7,7 @@
"It has been detected that the sample configuration has been copied. This can break your installation and is unsupported. Please read the documentation before performing changes on config.php" : "התגלה שדוגמת התצורה הועתקה. דבר זה עלול לשבור את ההתקנה ולא נתמך.יש לקרוא את מסמכי התיעוד לפני שמבצעים שינויים ב- config.php",
"PHP %s or higher is required." : "נדרש PHP בגרסת %s ומעלה.",
"PHP with a version lower than %s is required." : "נדרש PHP בגרסה נמוכה מ- %s.",
"%sbit or higher PHP required." : "נדרש PHP בגרסת %s ומעלה.",
"Following databases are supported: %s" : "מסדי הנתונים הבאים נתמכים: %s",
"The command line tool %s could not be found" : "כלי שורת הפקודה %s לא אותר",
"The library %s is not available." : "הספריה %s אינה זמינה.",
@ -96,6 +97,8 @@
"Sharing %s failed, because the sharing backend for %s could not find its source" : "השיתוף %s נכשל, כיוון שבצד אחורי לשיתוף עבור %s לא ניתן היה לאתר את מקורו",
"Sharing %s failed, because the file could not be found in the file cache" : "השיתוף %s נכשל, כייון שלא ניתן היה למצוא את הקובץ בזכרון המטמון",
"Cannot increase permissions of %s" : "לא ניתן להגדיל את ההיתרים של %s",
"Files can't be shared with delete permissions" : "קובץ לא ניתן לשיתוף בפעולת מחיקת הרשאות",
"Files can't be shared with create permissions" : "קובץ לא ניתן לשיתוף בפעולת יצירת הרשאות",
"Expiration date is in the past" : "תאריך תפוגה הנו בעבר",
"Cannot set expiration date more than %s days in the future" : "לא ניתן להגדיר את תאריך התפוגה מעל %s ימים בעתיד",
"Could not find category \"%s\"" : "לא ניתן למצוא את הקטגוריה „%s“",
@ -105,12 +108,14 @@
"Username contains whitespace at the beginning or at the end" : "שם המשתמש מכיל רווח בתחילתו או בסופו",
"A valid password must be provided" : "יש לספק ססמה תקנית",
"The username is already being used" : "השם משתמש כבר בשימוש",
"Login canceled by app" : "התחברות בוטלה על ידי יישום",
"User disabled" : "משתמש מנוטרל",
"Help" : "עזרה",
"Personal" : "אישי",
"Users" : "משתמשים",
"Admin" : "מנהל",
"Recommended" : "מומלץ",
"App \"%s\" cannot be installed because appinfo file cannot be read." : "יישום \"%s\" לא ניתן להתקנה כיוון שקובץ appinfo לא ניתן לקריאה.",
"App \"%s\" cannot be installed because it is not compatible with this version of ownCloud." : "היישום \"%s\" לא ניתן להתקנה כיוון שאינו תואם לגרסה זו של ownCloud.",
"App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "היישום \"%s\" לא ניתן להתקנה כיוון שיחסי התלות הבאים אינם מתקיימים: %s",
"No app name specified" : "לא הוגדר שם יישום",

View File

@ -157,7 +157,7 @@ OC.L10N.register(
"Please check that the data directory contains a file \".ocdata\" in its root." : "Preverite, ali je v korenu podatkovne mape datoteka \".ocdata\".",
"Could not obtain lock type %d on \"%s\"." : "Ni mogoče pridobiti zaklepa %d na \"%s\".",
"Storage unauthorized. %s" : "Dostop do shrambe ni overjen. %s",
"Storage incomplete configuration. %s" : "Nepopolna konfiguracija shrambe. %s",
"Storage incomplete configuration. %s" : "Nepopolna nastavitev shrambe. %s",
"Storage connection error. %s" : "Napaka povezave do shrambe. %s",
"Storage not available" : "Shramba ni na voljo",
"Storage connection timeout. %s" : "Povezava do shrambe je časovno potekla. %s"

View File

@ -155,7 +155,7 @@
"Please check that the data directory contains a file \".ocdata\" in its root." : "Preverite, ali je v korenu podatkovne mape datoteka \".ocdata\".",
"Could not obtain lock type %d on \"%s\"." : "Ni mogoče pridobiti zaklepa %d na \"%s\".",
"Storage unauthorized. %s" : "Dostop do shrambe ni overjen. %s",
"Storage incomplete configuration. %s" : "Nepopolna konfiguracija shrambe. %s",
"Storage incomplete configuration. %s" : "Nepopolna nastavitev shrambe. %s",
"Storage connection error. %s" : "Napaka povezave do shrambe. %s",
"Storage not available" : "Shramba ni na voljo",
"Storage connection timeout. %s" : "Povezava do shrambe je časovno potekla. %s"

View File

@ -2,8 +2,12 @@ OC.L10N.register(
"lib",
{
"Cannot write into \"config\" directory!" : "无法写入“config”目录",
"This can usually be fixed by giving the webserver write access to the config directory" : "给 WEB 服务器 Config 目录设置写权限可以修复这个问题。",
"See %s" : "查看 %s",
"Sample configuration detected" : "示例配置检测",
"PHP %s or higher is required." : "要求 PHP 版本 %s 或者更高。",
"The command line tool %s could not be found" : "命令行工具 %s 未找到",
"The library %s is not available." : "库文件 %s 不可用",
"Unknown filetype" : "未知的文件类型",
"Invalid image" : "无效的图像",
"today" : "今天",

View File

@ -1,7 +1,11 @@
{ "translations": {
"Cannot write into \"config\" directory!" : "无法写入“config”目录",
"This can usually be fixed by giving the webserver write access to the config directory" : "给 WEB 服务器 Config 目录设置写权限可以修复这个问题。",
"See %s" : "查看 %s",
"Sample configuration detected" : "示例配置检测",
"PHP %s or higher is required." : "要求 PHP 版本 %s 或者更高。",
"The command line tool %s could not be found" : "命令行工具 %s 未找到",
"The library %s is not available." : "库文件 %s 不可用",
"Unknown filetype" : "未知的文件类型",
"Invalid image" : "无效的图像",
"today" : "今天",

View File

@ -27,6 +27,7 @@
*/
namespace OC;
use OC\Cache\CappedMemoryCache;
use OCP\IDBConnection;
use OCP\PreConditionNotMetException;
@ -58,14 +59,15 @@ class AllConfig implements \OCP\IConfig {
* - deleteAllUserValues
* - deleteAppFromAllUsers
*
* @var array $userCache
* @var CappedMemoryCache $userCache
*/
private $userCache = array();
private $userCache;
/**
* @param SystemConfig $systemConfig
*/
function __construct(SystemConfig $systemConfig) {
$this->userCache = new CappedMemoryCache();
$this->systemConfig = $systemConfig;
}

View File

@ -26,6 +26,7 @@ namespace OC\AppFramework\Middleware\Security;
use OC\AppFramework\Middleware\Security\Exceptions\SecurityException;
use OC\AppFramework\Utility\ControllerMethodReflector;
use OC\Authentication\Exceptions\PasswordLoginForbiddenException;
use OC\User\Session;
use OCP\AppFramework\Controller;
use OCP\AppFramework\Http;
@ -89,8 +90,12 @@ class CORSMiddleware extends Middleware {
$pass = $this->request->server['PHP_AUTH_PW'];
$this->session->logout();
if(!$this->session->logClientIn($user, $pass)) {
throw new SecurityException('CORS requires basic auth', Http::STATUS_UNAUTHORIZED);
try {
if (!$this->session->logClientIn($user, $pass, $this->request)) {
throw new SecurityException('CORS requires basic auth', Http::STATUS_UNAUTHORIZED);
}
} catch (PasswordLoginForbiddenException $ex) {
throw new SecurityException('Password login forbidden, use token instead', Http::STATUS_UNAUTHORIZED);
}
}
}

View File

@ -1,7 +1,7 @@
<?php
/**
* @author Joas Schilling <nickvergessen@owncloud.com>
* @author Thomas Müller <thomas.mueller@tmit.eu>
* @author Christoph Wurst <christoph@owncloud.com>
*
* @copyright Copyright (c) 2016, ownCloud, Inc.
* @license AGPL-3.0
@ -20,7 +20,10 @@
*
*/
use OCA\DAV\AppInfo\Application;
namespace OC\Authentication\Exceptions;
$app = new Application();
$app->generateBirthdays();
use Exception;
class PasswordLoginForbiddenException extends Exception {
}

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