Skip to content

Commit

Permalink
SessionAudits mvc
Browse files Browse the repository at this point in the history
  • Loading branch information
rchavik committed May 16, 2014
1 parent 1f1b6a2 commit a5883dd
Show file tree
Hide file tree
Showing 5 changed files with 274 additions and 2 deletions.
14 changes: 12 additions & 2 deletions Config/admin_menu.php
Expand Up @@ -9,6 +9,16 @@
'action' => 'index',
),
'children' => array(
'sessions' => array(
'title' => 'Session Audit',
'url' => array(
'admin' => true,
'plugin' => 'audit',
'controller' => 'session_audits',
'action' => 'index',
),
'weight' => 1,
),
'records' => array(
'title' => 'Audit Records',
'url' => array(
Expand All @@ -17,7 +27,7 @@
'controller' => 'audits',
'action' => 'index',
),
'weight' => 1,
'weight' => 5,
),
'setting' => array(
'title' => 'Settings',
Expand All @@ -27,7 +37,7 @@
'controller' => 'audit_settings',
'action' => 'index',
),
'weight' => 5,
'weight' => 10,
)
),
));
45 changes: 45 additions & 0 deletions Controller/SessionAuditsController.php
@@ -0,0 +1,45 @@
<?php

App::uses('AuditAppController', 'Audit.Controller');

/**
* SessionAudits Controller
*
* @property SessionAudit $SessionAudit
* @property PaginatorComponent $Paginator
*/
class SessionAuditsController extends AuditAppController {

/**
* Components
*
* @var array
*/
public $components = array('Paginator');

/**
* admin_index method
*
* @return void
*/
public function admin_index() {
$this->SessionAudit->recursive = 0;
$this->set('sessionAudits', $this->paginate());
}

/**
* admin_view method
*
* @throws NotFoundException
* @param string $id
* @return void
*/
public function admin_view($id = null) {
if (!$this->SessionAudit->exists($id)) {
throw new NotFoundException(__d('croogo', 'Invalid session audit'));
}
$options = array('conditions' => array('SessionAudit.' . $this->SessionAudit->primaryKey => $id));
$this->set('sessionAudit', $this->SessionAudit->find('first', $options));
}

}
36 changes: 36 additions & 0 deletions Model/SessionAudit.php
@@ -0,0 +1,36 @@
<?php

App::uses('AuditAppModel', 'Audit.Model');

/**
* SessionAudit Model
*
* @property User $User
* @property Source $Source
* @property Session $Session
*/
class SessionAudit extends AppModel {

/**
* belongsTo associations
*
* @var array
*/
public $belongsTo = array(
'User' => array(
'className' => 'User',
'foreignKey' => 'user_id',
'conditions' => '',
'fields' => '',
'order' => ''
),
'Source' => array(
'className' => 'User',
'foreignKey' => 'source_id',
'conditions' => '',
'fields' => '',
'order' => ''
),
);

}
69 changes: 69 additions & 0 deletions View/SessionAudits/admin_index.ctp
@@ -0,0 +1,69 @@
<?php
$this->viewVars['title_for_layout'] = __d('croogo', 'Session Audits');
$this->extend('/Common/admin_index');

$this->Html
->addCrumb('', '/admin', array('icon' => 'home'))
->addCrumb(__d('croogo', 'Session Audits'), array('action' => 'index'));

?>

<div class="sessionAudits index">
<table class="table table-striped">
<tr>
<th>
<?php echo $this->Paginator->sort('id'); ?><br />
<?php echo $this->Paginator->sort('session_id'); ?><br />
<?php echo $this->Paginator->sort('event'); ?>
</th>
<th><?php echo $this->Paginator->sort('user_id'); ?></th>
<th><?php echo $this->Paginator->sort('source_id'); ?></th>
<th><?php echo $this->Paginator->sort('remote_addr'); ?></th>
<th>
<?php echo $this->Paginator->sort('ua'); ?><br />
<?php echo $this->Paginator->sort('referer'); ?><br />
<?php echo $this->Paginator->sort('created'); ?>
</th>
<th class="actions"><?php echo __d('croogo', 'Actions'); ?></th>
</tr>
<?php foreach ($sessionAudits as $sessionAudit): ?>
<tr>
<td>
<?php echo h($sessionAudit['SessionAudit']['id']); ?>&nbsp;<br />
<?php echo h($sessionAudit['SessionAudit']['session_id']); ?>&nbsp;<br />
<?php echo h($sessionAudit['SessionAudit']['event']); ?>&nbsp;
</td>
<td>
<?php
echo $this->Html->link($sessionAudit['User']['name'], array(
'plugin' => 'users', 'controller' => 'users', 'action' => 'view',
$sessionAudit['User']['id']
));
?>
</td>
<td>
<?php
echo $this->Html->link($sessionAudit['Source']['name'], array(
'plugin' => 'users', 'controller' => 'users', 'action' => 'view',
$sessionAudit['Source']['id'],
));
?>
</td>
<td><?php echo h($sessionAudit['SessionAudit']['remote_addr']); ?>&nbsp;</td>
<td>
<?php
list($ua,)= explode(' ', $sessionAudit['SessionAudit']['ua']);
echo $this->Html->tag('span', $ua, array(
'title' => $sessionAudit['SessionAudit']['ua'],
));
?>&nbsp;</br>
<?php echo h($sessionAudit['SessionAudit']['referer']); ?>&nbsp;<br />
<?php echo h($sessionAudit['SessionAudit']['created']); ?>&nbsp;
</td>
<td class="item-actions">
<?php echo $this->Croogo->adminRowAction('', array('action' => 'view', $sessionAudit['SessionAudit']['id']), array('icon' => 'eye-open')); ?>
</td>
</tr>
<?php endforeach; ?>
</table>
</div>
112 changes: 112 additions & 0 deletions View/SessionAudits/admin_view.ctp
@@ -0,0 +1,112 @@
<?php
$this->viewVars['title_for_layout'] = sprintf('%s: %s', __d('croogo', 'Session Audits'), h($sessionAudit['SessionAudit']['id']));

$this->Html
->addCrumb('', '/admin', array('icon' => 'home'))
->addCrumb(__d('croogo', 'Session Audits'), array('action' => 'index'));

?>
<h2 class="hidden-desktop"><?php echo __d('croogo', 'Session Audit'); ?></h2>

<div class="row-fluid">
<div class="span12 actions">
<ul class="nav-buttons">
<li><?php echo $this->Html->link(__d('croogo', 'Edit Session Audit'), array('action' => 'edit', $sessionAudit['SessionAudit']['id']), array('button' => 'default')); ?> </li>
<li><?php echo $this->Form->postLink(__d('croogo', 'Delete Session Audit'), array('action' => 'delete', $sessionAudit['SessionAudit']['id']), array('button' => 'danger', 'escape' => true), __d('croogo', 'Are you sure you want to delete # %s?', $sessionAudit['SessionAudit']['id'])); ?> </li>
<li><?php echo $this->Html->link(__d('croogo', 'List Session Audits'), array('action' => 'index'), array('button' => 'default')); ?> </li>
<li><?php echo $this->Html->link(__d('croogo', 'New Session Audit'), array('action' => 'add'), array('button' => 'success')); ?> </li>
<li><?php echo $this->Html->link(__d('croogo', 'List Users'), array('controller' => 'users', 'action' => 'index')); ?> </li>
<li><?php echo $this->Html->link(__d('croogo', 'New User'), array('controller' => 'users', 'action' => 'add')); ?> </li>
</ul>
</div>
</div>

<div class="sessionAudits view">
<dl class="inline">
<dt><?php echo __d('croogo', 'Id'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['id']); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Event'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['event']); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'User'); ?></dt>
<dd>
<?php echo $this->Html->link($sessionAudit['User']['name'], array('controller' => 'users', 'action' => 'view', $sessionAudit['User']['id'])); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Source'); ?></dt>
<dd>
<?php echo $this->Html->link($sessionAudit['Source']['name'], array('controller' => 'users', 'action' => 'view', $sessionAudit['Source']['id'])); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Host'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['host']); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Ua'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['ua']); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Referer'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['referer']); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Server Name'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['server_name']); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Server Address'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['server_address']); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Server Port'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['server_port']); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Remote Addr'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['remote_addr']); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Request Scheme'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['request_scheme']); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Request Time'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['request_time']); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Request Time Float'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['request_time_float']); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Description'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['description']); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Session Id'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['session_id']); ?>
&nbsp;
</dd>
<dt><?php echo __d('croogo', 'Created'); ?></dt>
<dd>
<?php echo h($sessionAudit['SessionAudit']['created']); ?>
&nbsp;
</dd>
</dl>
</div>

0 comments on commit a5883dd

Please sign in to comment.