diff options
-rw-r--r-- | apps/files/l10n/nl.js | 11 | ||||
-rw-r--r-- | apps/files/l10n/nl.json | 11 | ||||
-rw-r--r-- | apps/files_external/l10n/ja.js | 1 | ||||
-rw-r--r-- | apps/files_external/l10n/ja.json | 1 | ||||
-rw-r--r-- | apps/files_external/l10n/nl.js | 1 | ||||
-rw-r--r-- | apps/files_external/l10n/nl.json | 1 | ||||
-rw-r--r-- | apps/files_external/lib/config.php | 9 | ||||
-rw-r--r-- | lib/autoloader.php | 6 | ||||
-rw-r--r-- | lib/private/route/cachingrouter.php | 7 | ||||
-rw-r--r-- | lib/private/route/router.php | 21 | ||||
-rw-r--r-- | lib/private/server.php | 5 | ||||
-rw-r--r-- | settings/l10n/nl.js | 7 | ||||
-rw-r--r-- | settings/l10n/nl.json | 7 | ||||
-rw-r--r-- | tests/lib/appframework/routing/RoutingTest.php | 6 |
14 files changed, 70 insertions, 24 deletions
diff --git a/apps/files/l10n/nl.js b/apps/files/l10n/nl.js index 95054067597..f99d3314230 100644 --- a/apps/files/l10n/nl.js +++ b/apps/files/l10n/nl.js @@ -40,6 +40,17 @@ OC.L10N.register( "Unable to determine date" : "Kon datum niet vaststellen", "This operation is forbidden" : "Deze taak is verboden", "This directory is unavailable, please check the logs or contact the administrator" : "Deze map is niet beschikbaar. Verifieer de logs of neem contact op met de beheerder", + "Could not move \"{file}\", target exists" : "Kon \"{file}\" niet verplaatsen, doel bestaat al", + "Could not move \"{file}\"" : "Kon \"{file}\" niet verplaatsen", + "{newName} already exists" : "{newName} bestaat al", + "Could not rename \"{fileName}\", it does not exist any more" : "Kon \"{fileName}\" niet hernoemen, het bestaat niet meer", + "The name \"{targetName}\" is already used in the folder \"{dir}\". Please choose a different name." : "De naam \"{targetName}\" bestaat al in map \"{dir}\". Kies een andere naam.", + "Could not rename \"{fileName}\"" : "Kon \"{fileName}\" niet hernoemen", + "Could not create file \"{file}\"" : "Kon \"{file}\" niet aanmaken", + "Could not create file \"{file}\" because it already exists" : "Kon \"{file}\" niet aanmaken omdat het al bestaat", + "Could not create folder \"{dir}\"" : "Kon map \"{dir}\" niet aanmaken", + "Could not create folder \"{dir}\" because it already exists" : "Kon map \"{dir}\" niet aanmaken omdat die al bestaat", + "Error deleting file \"{fileName}\"." : "Fout bij verwijderen bestand \"{fileName}\".", "No entries in this folder match '{filter}'" : "Niets in deze map komt overeen met '{filter}'", "Name" : "Naam", "Size" : "Grootte", diff --git a/apps/files/l10n/nl.json b/apps/files/l10n/nl.json index 81f906d40b3..aaf4edcfdd4 100644 --- a/apps/files/l10n/nl.json +++ b/apps/files/l10n/nl.json @@ -38,6 +38,17 @@ "Unable to determine date" : "Kon datum niet vaststellen", "This operation is forbidden" : "Deze taak is verboden", "This directory is unavailable, please check the logs or contact the administrator" : "Deze map is niet beschikbaar. Verifieer de logs of neem contact op met de beheerder", + "Could not move \"{file}\", target exists" : "Kon \"{file}\" niet verplaatsen, doel bestaat al", + "Could not move \"{file}\"" : "Kon \"{file}\" niet verplaatsen", + "{newName} already exists" : "{newName} bestaat al", + "Could not rename \"{fileName}\", it does not exist any more" : "Kon \"{fileName}\" niet hernoemen, het bestaat niet meer", + "The name \"{targetName}\" is already used in the folder \"{dir}\". Please choose a different name." : "De naam \"{targetName}\" bestaat al in map \"{dir}\". Kies een andere naam.", + "Could not rename \"{fileName}\"" : "Kon \"{fileName}\" niet hernoemen", + "Could not create file \"{file}\"" : "Kon \"{file}\" niet aanmaken", + "Could not create file \"{file}\" because it already exists" : "Kon \"{file}\" niet aanmaken omdat het al bestaat", + "Could not create folder \"{dir}\"" : "Kon map \"{dir}\" niet aanmaken", + "Could not create folder \"{dir}\" because it already exists" : "Kon map \"{dir}\" niet aanmaken omdat die al bestaat", + "Error deleting file \"{fileName}\"." : "Fout bij verwijderen bestand \"{fileName}\".", "No entries in this folder match '{filter}'" : "Niets in deze map komt overeen met '{filter}'", "Name" : "Naam", "Size" : "Grootte", diff --git a/apps/files_external/l10n/ja.js b/apps/files_external/l10n/ja.js index 38c98caf7aa..5518f6afa78 100644 --- a/apps/files_external/l10n/ja.js +++ b/apps/files_external/l10n/ja.js @@ -33,6 +33,7 @@ OC.L10N.register( "Every time the filesystem is used" : "ファイルシステム利用時には毎回", "All users. Type to select user or group." : "すべてのユーザー。ユーザー、グループを追加", "(group)" : "(グループ)", + "Admin defined" : "管理者設定済", "Saved" : "保存されました", "Access key" : "アクセスキー", "Secret key" : "シークレットキー", diff --git a/apps/files_external/l10n/ja.json b/apps/files_external/l10n/ja.json index be6f88f3155..8134ed16cd5 100644 --- a/apps/files_external/l10n/ja.json +++ b/apps/files_external/l10n/ja.json @@ -31,6 +31,7 @@ "Every time the filesystem is used" : "ファイルシステム利用時には毎回", "All users. Type to select user or group." : "すべてのユーザー。ユーザー、グループを追加", "(group)" : "(グループ)", + "Admin defined" : "管理者設定済", "Saved" : "保存されました", "Access key" : "アクセスキー", "Secret key" : "シークレットキー", diff --git a/apps/files_external/l10n/nl.js b/apps/files_external/l10n/nl.js index cb015b104cb..05d1a3f6de5 100644 --- a/apps/files_external/l10n/nl.js +++ b/apps/files_external/l10n/nl.js @@ -33,6 +33,7 @@ OC.L10N.register( "Every time the filesystem is used" : "Elke keer bij gebruik bestandssysteem", "All users. Type to select user or group." : "Alle gebruikers. Tikken om een gebruiker of groep te selecteren.", "(group)" : "(groep)", + "Admin defined" : "Beheerder gedefinieerd", "Saved" : "Bewaard", "Access key" : "Access Key", "Secret key" : "Geheime sleutel", diff --git a/apps/files_external/l10n/nl.json b/apps/files_external/l10n/nl.json index 1a80aa31e30..e30870e4ae1 100644 --- a/apps/files_external/l10n/nl.json +++ b/apps/files_external/l10n/nl.json @@ -31,6 +31,7 @@ "Every time the filesystem is used" : "Elke keer bij gebruik bestandssysteem", "All users. Type to select user or group." : "Alle gebruikers. Tikken om een gebruiker of groep te selecteren.", "(group)" : "(groep)", + "Admin defined" : "Beheerder gedefinieerd", "Saved" : "Bewaard", "Access key" : "Access Key", "Secret key" : "Geheime sleutel", diff --git a/apps/files_external/lib/config.php b/apps/files_external/lib/config.php index 6c900f0f224..fac31445532 100644 --- a/apps/files_external/lib/config.php +++ b/apps/files_external/lib/config.php @@ -33,10 +33,9 @@ use phpseclib\Crypt\AES; use \OCA\Files_External\Appinfo\Application; -use \OCA\Files_External\Lib\BackendConfig; -use \OCA\Files_External\Service\BackendService; use \OCA\Files_External\Lib\Backend\LegacyBackend; use \OCA\Files_External\Lib\StorageConfig; +use \OCA\Files_External\Lib\Backend\Backend; /** * Class to configure mount.json globally and for users @@ -75,7 +74,7 @@ class OC_Mount_Config { return true; } - /* + /** * Hook that mounts the given user's visible mount points * * @param array $data @@ -245,6 +244,7 @@ class OC_Mount_Config { * @param string $class backend class name * @param array $options backend configuration options * @return int see self::STATUS_* + * @throws Exception */ public static function getBackendStatus($class, $options, $isPersonal) { if (self::$skipTest) { @@ -255,6 +255,7 @@ class OC_Mount_Config { } if (class_exists($class)) { try { + /** @var \OC\Files\Storage\Common $storage */ $storage = new $class($options); try { @@ -322,7 +323,7 @@ class OC_Mount_Config { * Get backend dependency message * TODO: move into AppFramework along with templates * - * @param BackendConfig[] $backends + * @param Backend[] $backends * @return string */ public static function dependencyMessage($backends) { diff --git a/lib/autoloader.php b/lib/autoloader.php index e41b4a08a6a..f0fbd9e9f27 100644 --- a/lib/autoloader.php +++ b/lib/autoloader.php @@ -170,11 +170,7 @@ class Autoloader { // No cache or cache miss $pathsToRequire = array(); foreach ($this->findClass($class) as $path) { - if ($path[0] === '/') { - $fullPath = file_exists($path) ? $path : false; - } else { - $fullPath = stream_resolve_include_path($path); - } + $fullPath = stream_resolve_include_path($path); if ($fullPath && $this->isValidPath($fullPath)) { $pathsToRequire[] = $fullPath; } diff --git a/lib/private/route/cachingrouter.php b/lib/private/route/cachingrouter.php index 734aa5aea4b..2d10b8ab691 100644 --- a/lib/private/route/cachingrouter.php +++ b/lib/private/route/cachingrouter.php @@ -22,6 +22,8 @@ namespace OC\Route; +use OCP\ILogger; + class CachingRouter extends Router { /** * @var \OCP\ICache @@ -30,10 +32,11 @@ class CachingRouter extends Router { /** * @param \OCP\ICache $cache + * @param ILogger $logger */ - public function __construct($cache) { + public function __construct($cache, ILogger $logger) { $this->cache = $cache; - parent::__construct(); + parent::__construct($logger); } /** diff --git a/lib/private/route/router.php b/lib/private/route/router.php index f4abfae0f43..6d3b7c742bb 100644 --- a/lib/private/route/router.php +++ b/lib/private/route/router.php @@ -30,8 +30,10 @@ namespace OC\Route; +use OCP\ILogger; use OCP\Route\IRouter; use OCP\AppFramework\App; +use Symfony\Component\Routing\Exception\RouteNotFoundException; use Symfony\Component\Routing\Matcher\UrlMatcher; use Symfony\Component\Routing\Generator\UrlGenerator; use Symfony\Component\Routing\RequestContext; @@ -78,7 +80,13 @@ class Router implements IRouter { protected $loadedApps = array(); - public function __construct() { + /** + * @var ILogger + */ + protected $logger; + + public function __construct(ILogger $logger) { + $this->logger = $logger; $baseUrl = \OC_Helper::linkTo('', 'index.php'); if (!\OC::$CLI) { $method = $_SERVER['REQUEST_METHOD']; @@ -127,6 +135,7 @@ class Router implements IRouter { /** * loads the api routes + * * @return void */ public function loadRoutes($app = null) { @@ -290,6 +299,7 @@ class Router implements IRouter { /** * Get the url generator + * * @return \Symfony\Component\Routing\Generator\UrlGenerator * */ @@ -311,11 +321,17 @@ class Router implements IRouter { */ public function generate($name, $parameters = array(), $absolute = false) { $this->loadRoutes(); - return $this->getGenerator()->generate($name, $parameters, $absolute); + try { + return $this->getGenerator()->generate($name, $parameters, $absolute); + } catch (RouteNotFoundException $e) { + $this->logger->logException($e); + return ''; + } } /** * To isolate the variable scope used inside the $file it is required in it's own method + * * @param string $file the route file location to include * @param string $appName */ @@ -331,6 +347,7 @@ class Router implements IRouter { * \OCA\MyApp\AppInfo\Application. If that class does not exist, a default * App will be intialized. This makes it optional to ship an * appinfo/application.php by using the built in query resolver + * * @param array $routes the application routes * @param string $appName the name of the app. */ diff --git a/lib/private/server.php b/lib/private/server.php index ea5937dfea4..7f3e3af6994 100644 --- a/lib/private/server.php +++ b/lib/private/server.php @@ -297,10 +297,11 @@ class Server extends SimpleContainer implements IServerContainer { }); $this->registerService('Router', function (Server $c) { $cacheFactory = $c->getMemCacheFactory(); + $logger = $c->getLogger(); if ($cacheFactory->isAvailable()) { - $router = new \OC\Route\CachingRouter($cacheFactory->create('route')); + $router = new \OC\Route\CachingRouter($cacheFactory->create('route'), $logger); } else { - $router = new \OC\Route\Router(); + $router = new \OC\Route\Router($logger); } return $router; }); diff --git a/settings/l10n/nl.js b/settings/l10n/nl.js index 4f8fb58f53a..f28a9f3b17e 100644 --- a/settings/l10n/nl.js +++ b/settings/l10n/nl.js @@ -12,12 +12,10 @@ OC.L10N.register( "Log" : "Log", "Tips & tricks" : "Tips & trucs", "Updates" : "Updates", - "Authentication error" : "Authenticatie fout", - "Your full name has been changed." : "Uw volledige naam is gewijzigd.", - "Unable to change full name" : "Kan de volledige naam niet wijzigen", "Couldn't remove app." : "Kon app niet verwijderen.", "Language changed" : "Taal aangepast", "Invalid request" : "Ongeldige aanvraag", + "Authentication error" : "Authenticatie fout", "Admins can't remove themself from the admin group" : "Admins kunnen zichzelf niet uit de admin groep verwijderen", "Unable to add user to group %s" : "Niet in staat om gebruiker toe te voegen aan groep %s", "Unable to remove user from group %s" : "Niet in staat om gebruiker te verwijderen uit groep %s", @@ -53,6 +51,8 @@ OC.L10N.register( "Invalid user" : "Ongeldige gebruiker", "Unable to change mail address" : "Kan e-mailadres niet wijzigen", "Email saved" : "E-mail bewaard", + "Your full name has been changed." : "Uw volledige naam is gewijzigd.", + "Unable to change full name" : "Kan de volledige naam niet wijzigen", "Are you really sure you want add \"{domain}\" as trusted domain?" : "Weet u zeker dat u \"{domain}\" als een vertrouwd domein wilt toevoegen?", "Add trusted domain" : "Vertrouwd domein toevoegen", "Migration in progress. Please wait until the migration is finished" : "Migratie bezig. Wacht tot het proces klaar is.", @@ -192,6 +192,7 @@ OC.L10N.register( "More" : "Meer", "Less" : "Minder", "The logfile is bigger than 100 MB. Downloading it may take some time!" : "Het logbestand is groter dan 100MB. Downloaden kost even tijd!", + "What to log" : "Wat loggen", "SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLite wordt gebruikt als database. Voor grotere installaties adviseren we om te schakelen naar een andere database engine.", "Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Vooral wanneer de desktop client wordt gebruik voor bestandssynchronisatie wordt gebruik van sqlite afgeraden.", "To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" href=\"%s\">documentation ↗</a>." : "Om te migreren naar een andere database moet u de commandoregel tool gebruiken: 'occ db:convert-type', lees de <a target=\"_blank\" href=\"%s\">documentatie ↗</a>.", diff --git a/settings/l10n/nl.json b/settings/l10n/nl.json index dc4f66e406d..b9a7baadde1 100644 --- a/settings/l10n/nl.json +++ b/settings/l10n/nl.json @@ -10,12 +10,10 @@ "Log" : "Log", "Tips & tricks" : "Tips & trucs", "Updates" : "Updates", - "Authentication error" : "Authenticatie fout", - "Your full name has been changed." : "Uw volledige naam is gewijzigd.", - "Unable to change full name" : "Kan de volledige naam niet wijzigen", "Couldn't remove app." : "Kon app niet verwijderen.", "Language changed" : "Taal aangepast", "Invalid request" : "Ongeldige aanvraag", + "Authentication error" : "Authenticatie fout", "Admins can't remove themself from the admin group" : "Admins kunnen zichzelf niet uit de admin groep verwijderen", "Unable to add user to group %s" : "Niet in staat om gebruiker toe te voegen aan groep %s", "Unable to remove user from group %s" : "Niet in staat om gebruiker te verwijderen uit groep %s", @@ -51,6 +49,8 @@ "Invalid user" : "Ongeldige gebruiker", "Unable to change mail address" : "Kan e-mailadres niet wijzigen", "Email saved" : "E-mail bewaard", + "Your full name has been changed." : "Uw volledige naam is gewijzigd.", + "Unable to change full name" : "Kan de volledige naam niet wijzigen", "Are you really sure you want add \"{domain}\" as trusted domain?" : "Weet u zeker dat u \"{domain}\" als een vertrouwd domein wilt toevoegen?", "Add trusted domain" : "Vertrouwd domein toevoegen", "Migration in progress. Please wait until the migration is finished" : "Migratie bezig. Wacht tot het proces klaar is.", @@ -190,6 +190,7 @@ "More" : "Meer", "Less" : "Minder", "The logfile is bigger than 100 MB. Downloading it may take some time!" : "Het logbestand is groter dan 100MB. Downloaden kost even tijd!", + "What to log" : "Wat loggen", "SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLite wordt gebruikt als database. Voor grotere installaties adviseren we om te schakelen naar een andere database engine.", "Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Vooral wanneer de desktop client wordt gebruik voor bestandssynchronisatie wordt gebruik van sqlite afgeraden.", "To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" href=\"%s\">documentation ↗</a>." : "Om te migreren naar een andere database moet u de commandoregel tool gebruiken: 'occ db:convert-type', lees de <a target=\"_blank\" href=\"%s\">documentatie ↗</a>.", diff --git a/tests/lib/appframework/routing/RoutingTest.php b/tests/lib/appframework/routing/RoutingTest.php index 51c191fdfb7..b063ef32835 100644 --- a/tests/lib/appframework/routing/RoutingTest.php +++ b/tests/lib/appframework/routing/RoutingTest.php @@ -74,7 +74,7 @@ class RoutingTest extends \Test\TestCase )); // router mock - $router = $this->getMock("\OC\Route\Router", array('create')); + $router = $this->getMock("\OC\Route\Router", array('create'), [\OC::$server->getLogger()]); // load route configuration $container = new DIContainer('app1'); @@ -124,7 +124,7 @@ class RoutingTest extends \Test\TestCase $route = $this->mockRoute($container, $verb, $controllerName, $actionName, $requirements, $defaults); // router mock - $router = $this->getMock("\OC\Route\Router", array('create')); + $router = $this->getMock("\OC\Route\Router", array('create'), [\OC::$server->getLogger()]); // we expect create to be called once: $router @@ -148,7 +148,7 @@ class RoutingTest extends \Test\TestCase private function assertResource($yaml, $resourceName, $url, $controllerName, $paramName) { // router mock - $router = $this->getMock("\OC\Route\Router", array('create')); + $router = $this->getMock("\OC\Route\Router", array('create'), [\OC::$server->getLogger()]); // route mocks $container = new DIContainer('app1'); |