Browse Source

- Add a Statistics widget to see who is connected

pull/16/head
Jaussoin Timothée 12 years ago
parent
commit
1437719d70
  1. 12
      app/models/sessionx/SessionxDAO.php
  2. 1
      app/views/admin.tpl
  3. 30
      app/widgets/Statistics/Statistics.php
  4. 14
      app/widgets/Statistics/statistics.tpl
  5. 2
      themes/movim/css/style.css

12
app/models/sessionx/SessionxDAO.php

@ -244,6 +244,18 @@ class SessionxDAO extends SQL {
$this->run('Sessionx');
}
function getAll() {
$this->_sql = '
select * from sessionx';
$this->prepare(
'Sessionx',
array()
);
return $this->run('Sessionx');
}
function getConnected() {
$this->_sql = '
select count(*) from sessionx';

1
app/views/admin.tpl

@ -6,6 +6,7 @@
</div>
<div class="moving_block" >
<?php $this->widget('Admin');?>
<?php $this->widget('Statistics');?>
</div>
</div>
</div>

30
app/widgets/Statistics/Statistics.php

@ -0,0 +1,30 @@
<?php
/**
* @package Widgets
*
* @file Statistics.php
* This file is part of MOVIM.
*
* @brief The administration widget.
*
* @author Timothée Jaussoin <edhelas@gmail.com>
* *
* Copyright (C)2014 MOVIM project
*
* See COPYING for licensing information.
*/
use Modl\SessionxDAO;
class Statistics extends WidgetBase {
function load() {
$sd = new SessionxDAO;
$this->view->assign('sessions', $sd->getAll());
}
function getTime($rid) {
$seconds = $rid*30;
return prepareDate(time() - $seconds, true);
}
}

14
app/widgets/Statistics/statistics.tpl

@ -0,0 +1,14 @@
<div id="statistics" class="tabelem padded" title="{$c->t("Statistics")}">
<ul class="list">
<li class="title">
<a class="action">{$c->t('Since')}</a>
{$c->t('Sessions')} - {$sessions|count}
</li>
{loop="$sessions"}
<li>
<a class="action">{$c->getTime($value->rid)}</a>
<a>{$value->username}@{$value->host}</a>
</li>
{/loop}
</ul>
</div>

2
themes/movim/css/style.css

@ -496,6 +496,7 @@ ul.list li.title {
ul.list li.title a.action {
padding: 0;
padding-right: 1em;
line-height: 1em;
}
ul.list li a {
@ -506,6 +507,7 @@ ul.list li a {
ul.list li a.action {
float: right;
padding: 0.4em;
line-height: 2em;
}
ul.list li a.action:hover {

Loading…
Cancel
Save