Added Session Metadata info to the Request section of the WDT

This commit is contained in:
Florin Patan 2012-05-26 23:51:24 +03:00
parent 9e9519913d
commit 8dd2af77a4
2 changed files with 28 additions and 0 deletions

View File

@ -34,6 +34,10 @@
<b>Route name</b>
<span>{{ request_route }}</span>
</div>
<div class="sf-toolbar-info-piece">
<b>Has session</b>
<span>{% if collector.sessionmetadata|length %}yes{% else %}no{% endif %}</span>
</div>
{% endspaceless %}
{% endset %}
{% include 'WebProfilerBundle:Profiler:toolbar_item.html.twig' with { 'link': profiler_url } %}
@ -109,6 +113,16 @@
{% include 'WebProfilerBundle:Profiler:bag.html.twig' with { 'bag': collector.responseheaders } only %}
<h2>Session Metadata</h2>
{% if collector.sessionmetadata|length %}
{% include 'WebProfilerBundle:Profiler:table.html.twig' with { 'data': collector.sessionmetadata } only %}
{% else %}
<p>
<em>No session metadata</em>
</p>
{% endif %}
<h2>Session Attributes</h2>
{% if collector.sessionattributes|length %}

View File

@ -59,6 +59,14 @@ class RequestDataCollector extends DataCollector
$content = false;
}
$sessionMetadata = array();
if ($request->hasSession()) {
$sessionMetadata['Created'] = date(DATE_RFC822, $request->getSession()->getMetadataBag()->getCreated());
$sessionMetadata['Last used'] = date(DATE_RFC822, $request->getSession()->getMetadataBag()->getLastUsed());
$sessionMetadata['Lifetime'] = $request->getSession()->getMetadataBag()->getLifetime();
}
$this->data = array(
'format' => $request->getRequestFormat(),
'content' => $content,
@ -71,6 +79,7 @@ class RequestDataCollector extends DataCollector
'request_cookies' => $request->cookies->all(),
'request_attributes' => $attributes,
'response_headers' => $responseHeaders,
'session_metadata' => $sessionMetadata,
'session_attributes' => $request->hasSession() ? $request->getSession()->all() : array(),
'flashes' => $request->hasSession() ? $request->getSession()->getFlashBag()->peekAll() : array(),
'path_info' => $request->getPathInfo(),
@ -117,6 +126,11 @@ class RequestDataCollector extends DataCollector
return new ResponseHeaderBag($this->data['response_headers']);
}
public function getSessionMetadata()
{
return $this->data['session_metadata'];
}
public function getSessionAttributes()
{
return $this->data['session_attributes'];