summaryrefslogtreecommitdiffstats
path: root/appinfo
diff options
context:
space:
mode:
authorBernhard Posselt <dev@bernhard-posselt.com>2016-04-19 18:15:31 +0200
committerBernhard Posselt <dev@bernhard-posselt.com>2016-04-19 18:15:31 +0200
commita0b0aeea3964c5fecc6863f9e80d3f7c8bea4e25 (patch)
tree08d2681de47c986175e11a7d24b41209a17cbf22 /appinfo
parente2637ac62e61dbc9bfeaa1e87fd46497c2fb10e0 (diff)
Fix #978
Diffstat (limited to 'appinfo')
-rw-r--r--appinfo/application.php20
1 files changed, 17 insertions, 3 deletions
diff --git a/appinfo/application.php b/appinfo/application.php
index dfe036166..4c8a3769a 100644
--- a/appinfo/application.php
+++ b/appinfo/application.php
@@ -59,6 +59,7 @@ class Application extends App {
/**
* App config parser
*/
+ /** @noinspection PhpParamsInspection */
$this->registerService(AppConfig::class, function($c) {
$config = new AppConfig(
$c->query(INavigationManager::class),
@@ -73,14 +74,17 @@ class Application extends App {
/**
* Core
*/
+ /** @noinspection PhpParamsInspection */
$this->registerService('LoggerParameters', function($c) {
return ['app' => $c->query('AppName')];
});
+ /** @noinspection PhpParamsInspection */
$this->registerService('databaseType', function($c) {
return $c->query(IConfig::class)->getSystemValue('dbtype');
});
+ /** @noinspection PhpParamsInspection */
$this->registerService('ConfigView', function($c) {
$fs = $c->query(IRootFolder::class);
$path = 'news/config';
@@ -92,6 +96,7 @@ class Application extends App {
});
+ /** @noinspection PhpParamsInspection */
$this->registerService(Config::class, function($c) {
$config = new Config(
$c->query('ConfigView'),
@@ -102,6 +107,7 @@ class Application extends App {
return $config;
});
+ /** @noinspection PhpParamsInspection */
$this->registerService(HTMLPurifier::class, function($c) {
$directory = $c->query(IConfig::class)
->getSystemValue('datadirectory') . '/news/cache/purifier';
@@ -127,14 +133,19 @@ class Application extends App {
/**
* Fetchers
*/
+ /** @noinspection PhpParamsInspection */
$this->registerService(PicoFeedConfig::class, function($c) {
// FIXME: move this into a separate class for testing?
$config = $c->query(Config::class);
- $appConfig = $c->query(AppConfig::class);
$proxy = $c->query(ProxyConfigParser::class);
- $userAgent = 'ownCloud News/' . $appConfig->getConfig('version') .
- ' (+https://owncloud.org/; 1 subscriber;)';
+ // use chrome's user agent string since mod_security rules
+ // assume that only browsers can send user agent strings. This
+ // can lead to blocked feed updates like joomla.org
+ // For more information see
+ // https://www.atomicorp.com/wiki/index.php/WAF_309925
+ $userAgent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36' .
+ '(KHTML, like Gecko) Chrome/50.0.2661.75 Safari/537.36';
$pico = new PicoFeedConfig();
$pico->setClientUserAgent($userAgent)
@@ -166,6 +177,7 @@ class Application extends App {
return $pico;
});
+ /** @noinspection PhpParamsInspection */
$this->registerService(Fetcher::class, function($c) {
$fetcher = new Fetcher();
@@ -186,6 +198,7 @@ class Application extends App {
* @param string $file path relative to this file, __DIR__ will be prepended
*/
private function registerFileContents($key, $file) {
+ /** @noinspection PhpParamsInspection */
$this->registerService($key, function () use ($file) {
return file_get_contents(__DIR__ . '/' . $file);
});
@@ -217,6 +230,7 @@ class Application extends App {
* @param string $factory fully qualified factory class name
*/
private function registerFactory($key, $factory) {
+ /** @noinspection PhpParamsInspection */
$this->registerService($key, function ($c) use ($factory) {
return $c->query($factory)->build();
});