| 
<?php$this->data['header'] = 'SimpleSAMLphp Statistics';
 
 $this->data['jquery'] = array('version' => '1.6', 'core' => TRUE, 'ui' => TRUE, 'css' => TRUE);
 
 // $this->data['hideLanguageBar'] = TRUE;
 
 $this->data['head'] ='';
 $this->data['head'] .= '<script type="text/javascript">
 $(document).ready(function() {
 $("#tabdiv").tabs();
 });
 </script>';
 
 $this->includeAtTemplateBase('includes/header.php');
 
 
 function getBaseURL($t, $type = 'get', $key = NULL, $value = NULL) {
 $vars = array(
 'rule' => $t->data['selected.rule'],
 'time' => $t->data['selected.time'],
 'res' => $t->data['selected.timeres'],
 );
 if (isset($t->data['selected.delimiter'])) $vars['d'] = $t->data['selected.delimiter'];
 if (!empty($t->data['selected.rule2']) && $t->data['selected.rule2'] !== '_') $vars['rule2'] = $t->data['selected.rule2'];
 
 if (isset($key)) {
 if (isset($vars[$key])) unset($vars[$key]);
 if (isset($value)) $vars[$key] = $value;
 }
 
 if ($type === 'get') {
 return 'showstats.php?' . http_build_query($vars, '', '&');
 } else {
 $text = '';
 foreach($vars AS $k => $v) {
 $text .= '<input type="hidden" name="' . $k . '" value="'. htmlspecialchars($v) . '" />' . "\n";
 }
 return $text;
 }
 
 }
 
 
 
 ?>
 
 <style type="text/css" media="all">
 .ui-tabs-panel { padding: .5em }
 div#content {
 margin: .4em ! important;
 }
 .tableview {
 border-collapse: collapse;
 border: 1px solid #ccc;
 margin: 1em;
 width: 80%;
 }
 .tableview th, .tableview td{
 border: 1px solid: #ccc;
 padding: 0px 5px;
 }
 .tableview th {
 background: #e5e5e5;
 }
 .tableview tr.total td {
 color: #500; font-weight: bold;
 }
 .tableview tr.even td {
 background: #f5f5f5;
 border-top: 1px solid #e0e0e0;
 border-bottom: 1px solid #e0e0e0;
 }
 .tableview th.value, .tableview td.value {
 text-align: right;
 }
 div.corner_t {
 max-width: none ! important;
 }
 table.timeseries tr.odd td {
 background-color: #f4f4f4;
 }
 table.timeseries td {
 padding-right: 2em; border: 1px solid #ccc
 }
 td.datacontent {
 text-align: right;
 }
 </style>
 
 <?php
 echo('<h1>'. $this->data['available.rules'][$this->data['selected.rule']]['name'] . '</h1>');
 echo('<p>' . $this->data['available.rules'][$this->data['selected.rule']]['descr'] . '</p>');
 
 // echo('<pre>');
 // print_r($this->data);
 // exit;
 
 
 // Report settings
 echo '<table class="selecttime" style="width: 100%; border: 1px solid #ccc; background: #eee; margin: 1px 0px; padding: 0px">';
 echo('<tr><td style="width: 50px; padding: 0px"><img style="margin: 0px" src="../../resources/icons/crystal_project/kchart.32x32.png" alt="Report settings" /></td>');
 
 // Select report
 echo '<td>';
 echo '<form style="display: inline">';
 echo getBaseURL($this, 'post', 'rule');
 echo '<select onChange="submit();" name="rule">';
 foreach ($this->data['available.rules'] AS $key => $rule) {
 if ($key === $this->data['selected.rule']) {
 echo '<option selected="selected" value="' . $key . '">' . $rule['name'] . '</option>';
 } else {
 echo '<option value="' . $key . '">' . $rule['name'] . '</option>';
 }
 }
 echo '</select></form>';
 echo '</td>';
 
 
 // Select delimiter
 echo '<td style="text-align: right">';
 
 #echo('<pre>here'); print_r($this->data['delimiterPresentation']); echo('</pre>');
 
 echo '<form style="display: inline">';
 echo getBaseURL($this, 'post', 'd');
 echo '<select onChange="submit();" name="d">';
 foreach ($this->data['availdelimiters'] AS $key => $delim) {
 
 $delimName = $delim;
 if(array_key_exists($delim, $this->data['delimiterPresentation'])) $delimName = $this->data['delimiterPresentation'][$delim];
 
 if ($key == '_') {
 echo '<option value="_">Total</option>';
 } elseif (isset($_REQUEST['d']) && $delim == $_REQUEST['d']) {
 echo '<option selected="selected" value="' . htmlspecialchars($delim) . '">' . htmlspecialchars($delimName) . '</option>';
 } else {
 echo '<option  value="' . htmlspecialchars($delim) . '">' . htmlspecialchars($delimName) . '</option>';
 }
 }
 echo '</select></form>';
 echo '</td>';
 
 echo '</table>';
 
 // End report settings
 
 
 
 
 // Select time and date
 echo '<table class="selecttime" style="width: 100%; border: 1px solid #ccc; background: #eee; margin: 1px 0px; padding: 0px">';
 echo('<tr><td style="width: 50px; padding: 0px"><img style="margin: 0px" src="../../resources/icons/crystal_project/date.32x32.png" alt="Select date and time" /></td>');
 
 
 
 
 
 
 if (isset($this->data['available.times.prev'])) {
 
 echo('<td style=""><a href="' . getBaseURL($this, 'get', 'time', $this->data['available.times.prev']) . '">« Previous</a></td>');
 } else {
 echo('<td style="color: #ccc">« Previous</td>');
 }
 
 
 echo '<td style="text-align: right">';
 echo '<form style="display: inline">';
 echo getBaseURL($this, 'post', 'res');
 // echo '<input type="hidden" name="rule" value="' . $this->data['selected.rule'] . '" />';
 echo '<select onChange="submit();" name="res">';
 foreach ($this->data['available.timeres'] AS $key => $timeresname) {
 if ($key == $this->data['selected.timeres']) {
 echo '<option selected="selected" value="' . $key . '">' . $timeresname . '</option>';
 } else {
 echo '<option  value="' . $key . '">' . $timeresname . '</option>';
 }
 }
 echo '</select></form>';
 echo '</td>';
 
 
 echo '<td style="text-align: left">';
 echo '<form style="display: inline">';
 echo getBaseURL($this, 'post', 'time');
 // echo '<input type="hidden" name="rule" value="' . $this->data['selected.rule'] . '" />';
 echo '<select onChange="submit();" name="time">';
 foreach ($this->data['available.times'] AS $key => $timedescr) {
 if ($key == $this->data['selected.time']) {
 echo '<option selected="selected" value="' . $key . '">' . $timedescr . '</option>';
 } else {
 echo '<option  value="' . $key . '">' . $timedescr . '</option>';
 }
 }
 echo '</select></form>';
 echo '</td>';
 
 if (isset($this->data['available.times.next'])) {
 echo('<td style="text-align: right; padding-right: 4px"><a href="' . getBaseURL($this, 'get', 'time', $this->data['available.times.next']) . '">Next »</a></td>');
 } else {
 echo('<td style="color: #ccc; text-align: right; padding-right: 4px">Next »</td>');
 }
 
 
 
 
 echo '</tr></table>';
 
 
 
 
 
 
 
 echo '<div id="tabdiv"><ul class="tabset_tabs">
 <li><a href="#graph">Graph</a></li>
 <li><a href="#table">Summary table</a></li>
 <li><a href="#debug">Time serie</a></li>
 </ul>';
 echo '
 
 <div id="graph" class="tabset_content">';
 
 
 echo '<img src="' . htmlspecialchars($this->data['imgurl']) . '" />';
 
 
 echo '<form style="display: inline">';
 echo('<p style="text-align: right">Compare with total from this dataset ');
 echo getBaseURL($this, 'post', 'rule2');
 echo '<select onChange="submit();" name="rule2">';
 echo '    <option value="_">None</option>';
 foreach ($this->data['available.rules'] AS $key => $rule) {
 if ($key === $this->data['selected.rule2']) {
 echo '<option selected="selected" value="' . $key . '">' . $rule['name'] . '</option>';
 } else {
 echo '<option value="' . $key . '">' . $rule['name'] . '</option>';
 }
 }
 echo '</select></form>';
 
 
 echo '</div>'; # end graph content.
 
 
 
 /**
 * Handle table view - - - - - -
 */
 $classint = array('odd', 'even'); $i = 0;
 echo '<div id="table" class="tabset_content">';
 
 if (isset($this->data['pieimgurl'])) {
 echo('<img src="' . $this->data['pieimgurl'] . '" />');
 }
 echo '<table class="tableview"><tr><th class="value">Value</th><th class="category">Data range</th>';
 
 foreach ( $this->data['summaryDataset'] as $key => $value ) {
 $clint = $classint[$i++ % 2];
 
 $keyName = $key;
 if(array_key_exists($key, $this->data['delimiterPresentation'])) $keyName = $this->data['delimiterPresentation'][$key];
 
 if ($key === '_') {
 echo '<tr class="total '  . $clint . '"><td  class="value">' . $value . '</td><td class="category">' . $keyName . '</td></tr>';
 } else {
 echo '<tr class="' . $clint . '"><td  class="value">' . $value . '</td><td class="category">' . $keyName . '</td></tr>';
 }
 }
 
 echo '</table></div>';
 //  - - - - - - - End table view - - - - - - -
 
 
 //
 //  echo('<pre>');
 // print_r($this->data['results']);
 // exit;
 
 
 echo '<div id="debug" >';
 
 #echo $this->data['selected.time'];
 #echo '<input style="width: 80%" value="' . htmlspecialchars($this->data['imgurl']) . '" />';
 
 echo '<table class="timeseries" style="">';
 echo('<tr><th>Time</th><th>Total</th>');
 foreach($this->data['topdelimiters'] AS $key) {
 $keyName = $key;
 if(array_key_exists($key, $this->data['delimiterPresentation'])) $keyName = $this->data['delimiterPresentation'][$key];
 echo('<th>' . $keyName . '</th>');
 }
 echo('</tr>');
 
 
 $i = 0;
 foreach ($this->data['debugdata'] AS $slot => $dd) {
 echo('<tr class="' . ((++$i % 2) == 0 ? 'odd' : 'even') . '">');
 echo('<td style="">' . $dd[0] . '</td>');
 echo('<td class="datacontent">' . $dd[1] . '</td>');
 
 foreach($this->data['topdelimiters'] AS $key) {
 echo('<td class="datacontent">' .
 (array_key_exists($key, $this->data['results'][$slot]) ? $this->data['results'][$slot][$key] : ' ') .
 '</td>');
 }
 echo('</tr>');
 }
 echo '</table>';
 
 
 echo '</div>'; # End debug tab content
 echo('</div>'); # End tab div
 
 
 
 $this->includeAtTemplateBase('includes/footer.php');
 
 
 |