aboutsummaryrefslogtreecommitdiffstats
path: root/lib/private/appframework/http/request.php
diff options
context:
space:
mode:
authorBernhard Posselt <dev@bernhard-posselt.com>2015-01-15 14:19:56 +0100
committerBernhard Posselt <dev@bernhard-posselt.com>2015-01-15 15:22:52 +0100
commitbb0c88a577e67e7537a32f0e63ab00403fe3531c (patch)
tree148ed0db1fdcf16752839dc0bfc6112b5c8531b1 /lib/private/appframework/http/request.php
parent2fbe8bbcba2e6387669f0028cb5a3d314336efe4 (diff)
downloadnextcloud-server-bb0c88a577e67e7537a32f0e63ab00403fe3531c.tar.gz
nextcloud-server-bb0c88a577e67e7537a32f0e63ab00403fe3531c.zip
always set url parameters when they are available in the app dispatch
prefer url parameters passed into the main method. If they are not present, use the containers urlParameters add space
Diffstat (limited to 'lib/private/appframework/http/request.php')
-rw-r--r--lib/private/appframework/http/request.php22
1 files changed, 15 insertions, 7 deletions
diff --git a/lib/private/appframework/http/request.php b/lib/private/appframework/http/request.php
index 350694dca81..6012033fe52 100644
--- a/lib/private/appframework/http/request.php
+++ b/lib/private/appframework/http/request.php
@@ -68,12 +68,12 @@ class Request implements \ArrayAccess, \Countable, IRequest {
$this->items['params'] = array();
if(!array_key_exists('method', $vars)) {
- $vars['method'] = 'GET';
+ $vars['method'] = 'GET';
}
foreach($this->allowedKeys as $name) {
$this->items[$name] = isset($vars[$name])
- ? $vars[$name]
+ ? $vars[$name]
: array();
}
@@ -83,7 +83,7 @@ class Request implements \ArrayAccess, \Countable, IRequest {
if(count($params) > 0) {
$this->items['params'] = $params;
if($vars['method'] === 'POST') {
- $this->items['post'] = $params;
+ $this->items['post'] = $params;
}
}
// Handle application/x-www-form-urlencoded for methods other than GET
@@ -91,12 +91,12 @@ class Request implements \ArrayAccess, \Countable, IRequest {
} elseif($vars['method'] !== 'GET'
&& $vars['method'] !== 'POST'
&& strpos($this->getHeader('Content-Type'), 'application/x-www-form-urlencoded') !== false) {
-
+
parse_str(file_get_contents($this->inputStream), $params);
if(is_array($params)) {
$this->items['params'] = $params;
}
- }
+ }
$this->items['parameters'] = array_merge(
$this->items['get'],
@@ -107,6 +107,14 @@ class Request implements \ArrayAccess, \Countable, IRequest {
}
+ public function setUrlParameters($parameters) {
+ $this->items['urlParams'] = $parameters;
+ $this->items['parameters'] = array_merge(
+ $this->items['parameters'],
+ $this->items['urlParams']
+ );
+ }
+
// Countable method.
public function count() {
return count(array_keys($this->items['parameters']));
@@ -207,8 +215,8 @@ class Request implements \ArrayAccess, \Countable, IRequest {
return $this->items['method'];
break;
default;
- return isset($this[$name])
- ? $this[$name]
+ return isset($this[$name])
+ ? $this[$name]
: null;
break;
}