[*] BO #PSFV-94 : Added AdminStatsController && AdminStatsTabController && norm of statistic modules
git-svn-id: http://dev.prestashop.com/svn/v1/branches/1.5.x@10005 b9a71923-0436-4b27-9f14-aed3839534dd
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
{*
|
||||
* 2007-2011 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2011 PrestaShop SA
|
||||
* @version Release: $Revision: 8971 $
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*}
|
||||
|
||||
<div style="float:left">
|
||||
<div id="calendar">
|
||||
<fieldset style="width:230px; font-size:13px;">
|
||||
<legend>
|
||||
<img src="../img/admin/date.png" />
|
||||
{$translations.Calendar}
|
||||
</legend>
|
||||
<div>
|
||||
<form action="{$current}&token={$token}" method="post">
|
||||
<input type="submit" name="submitDateDay" class="button" value="{$translations.Day}">
|
||||
<input type="submit" name="submitDateMonth" class="button" value="{$translations.Month}">
|
||||
<input type="submit" name="submitDateYear" class="button" value="{$translations.Year}"><br />
|
||||
<input type="submit" name="submitDateDayPrev" class="button" value="{$translations.Day}-1" style="margin-top:2px">
|
||||
<input type="submit" name="submitDateMonthPrev" class="button" value="{$translations.Month}-1" style="margin-top:2px">
|
||||
<input type="submit" name="submitDateYearPrev" class="button" value="{$translations.Year}-1" style="margin-top:2px">
|
||||
<p>{if isset($translations.From)}{$translations.From}{else}{l s='From:'}{/if}
|
||||
<input type="text" name="datepickerFrom" id="datepickerFrom" value="{$datepickerFrom}">
|
||||
</p>
|
||||
<p>{if isset($translations.To)}{$translations.To}{else}{l s='From:'}{/if}
|
||||
<input type="text" name="datepickerTo" id="datepickerTo" value="{$datepickerTo}">
|
||||
</p>
|
||||
<input type="submit" name="submitDatePicker" class="button" value="{if isset($translations.Save)}{$translations.Save}{else}{l s=' Save '}{/if}" />
|
||||
</form>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="clear space"> </div>
|
||||
</div>
|
||||
@@ -0,0 +1,60 @@
|
||||
{*
|
||||
* 2007-2011 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2011 PrestaShop SA
|
||||
* @version Release: $Revision: 8971 $
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*}
|
||||
|
||||
<form action="{$current}&token={$token}" method="post">
|
||||
<fieldset style="width:230px;">
|
||||
<legend>
|
||||
<img src="../img/admin/tab-preferences.gif" />{l s='Settings'}
|
||||
</legend>
|
||||
<p>
|
||||
<strong>{l s='Graph engine'} </strong><br />
|
||||
{if count($array_graph_engines)}
|
||||
<select name="PS_STATS_RENDER">';
|
||||
{foreach $array_graph_engines as $k => $value}
|
||||
<option value="{$k}" {if $k == $graph_engine}selected="selected"{/if}>{$value[0]}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
{else}
|
||||
{l s='No graph engine module installed'}
|
||||
{/if}
|
||||
<p>
|
||||
|
||||
<p>
|
||||
<strong>{l s='Grid engine'} </strong><br />
|
||||
{if count($array_grid_engines)}
|
||||
<select name="PS_STATS_GRID_RENDER">
|
||||
{foreach $array_grid_engines as $k => $value}
|
||||
<option value="{$k}" {if $k == $grid_engine}selected="selected"{/if}>{$value[0]}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
{else}
|
||||
{l s='No grid engine module installed'}
|
||||
{/if}
|
||||
</p>
|
||||
<p><input type="submit" value="{l s=' Save '}" name="submitSettings" class="button" /></p>
|
||||
</fieldset>
|
||||
</form>
|
||||
<div class="clear space"> </div>
|
||||
@@ -0,0 +1,47 @@
|
||||
{*
|
||||
* 2007-2011 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2011 PrestaShop SA
|
||||
* @version Release: $Revision: 8971 $
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*}
|
||||
|
||||
<fieldset style="width:230px">
|
||||
<legend>
|
||||
<img src="../img/admin/navigation.png" /> {l s='Navigation'}
|
||||
</legend>
|
||||
{if count($modules)}
|
||||
{foreach $modules as $module}
|
||||
{if $module_instance[$module.name]}
|
||||
<h4>
|
||||
<img src="../modules/{$module.name}/logo.gif" />
|
||||
<a href="{$current}&token={$token}&module={$module.name}">{$module_instance[$module.name]->displayName}</a>
|
||||
</h4>
|
||||
{/if}
|
||||
{/foreach}
|
||||
{else}
|
||||
{l s='No module installed'}
|
||||
{/if}
|
||||
</fieldset>
|
||||
<div class="clear space"> </div>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
{*
|
||||
* 2007-2011 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2011 PrestaShop SA
|
||||
* @version Release: $Revision: 8897 $
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*}
|
||||
|
||||
<div style="margin-left:280px;">
|
||||
{if $module_name}
|
||||
{if $module_instance && $module_instance->active}
|
||||
{$hook}
|
||||
{else}
|
||||
{l s='Module not found'}
|
||||
{/if}
|
||||
{else}
|
||||
<h3 class="space">{l s='Please select a module in the left column.'}</h3>
|
||||
{/if}
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
|
||||
@@ -30,28 +30,28 @@ if (!defined('_PS_VERSION_'))
|
||||
|
||||
class StatsVisits extends ModuleGraph
|
||||
{
|
||||
private $_html = '';
|
||||
private $_query = '';
|
||||
private $_query2 = '';
|
||||
private $_option;
|
||||
private $html = '';
|
||||
private $_query = '';
|
||||
private $_query2 = '';
|
||||
private $_option;
|
||||
|
||||
function __construct()
|
||||
{
|
||||
$this->name = 'statsvisits';
|
||||
$this->tab = 'analytics_stats';
|
||||
$this->version = 1.0;
|
||||
public function __construct()
|
||||
{
|
||||
$this->name = 'statsvisits';
|
||||
$this->tab = 'analytics_stats';
|
||||
$this->version = 1.0;
|
||||
$this->author = 'PrestaShop';
|
||||
$this->need_instance = 0;
|
||||
|
||||
parent::__construct();
|
||||
|
||||
$this->displayName = $this->l('Visits and Visitors');
|
||||
$this->description = $this->l('Display statistics about your visits and visitors.');
|
||||
}
|
||||
$this->displayName = $this->l('Visits and Visitors');
|
||||
$this->description = $this->l('Display statistics about your visits and visitors.');
|
||||
}
|
||||
|
||||
public function install()
|
||||
{
|
||||
return (parent::install() AND $this->registerHook('AdminStatsModules'));
|
||||
return parent::install() && $this->registerHook('AdminStatsModules');
|
||||
}
|
||||
|
||||
public function getTotalVisits()
|
||||
@@ -84,19 +84,19 @@ class StatsVisits extends ModuleGraph
|
||||
$totalGuests = $this->getTotalGuests();
|
||||
if (Tools::getValue('export'))
|
||||
$this->csvExport(array('layers' => 2, 'type' => 'line', 'option' => 3));
|
||||
$this->_html = '
|
||||
<fieldset class="width3"><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend>
|
||||
<p><center>
|
||||
$this->html = '
|
||||
<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend>
|
||||
<p>
|
||||
<img src="../img/admin/down.gif" />'.$this->l('A visit corresponds to an internet user coming to your shop. Until the end of their session, only one visit is counted.').'
|
||||
'.$this->l('A visitor is an unknown person, who has not registered or logged on, surfing on your shop. A visitor can come and visit your shop many times.').'
|
||||
</center></p>
|
||||
</p>
|
||||
<div style="margin-top:20px"></div>
|
||||
<p>'.$this->l('Total visits:').' '.$totalVisits.'</p>
|
||||
<p>'.$this->l('Total visitors:').' '.$totalGuests.'</p>
|
||||
'.($totalVisits ? $this->engine($graphParams).'<p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p>' : '').'
|
||||
</fieldset>
|
||||
<br class="clear" />
|
||||
<fieldset class="width3"><legend><img src="../img/admin/comment.gif" /> '.$this->l('Guide').'</legend>
|
||||
<br />
|
||||
<fieldset><legend><img src="../img/admin/comment.gif" /> '.$this->l('Guide').'</legend>
|
||||
<h2>'.$this->l('Determine the interest of a visit').'</h2>
|
||||
'.$this->l('The visitors\' evolution graph strongly resembles the visits\' graph, but provides additional information:').'<br />
|
||||
<ul>
|
||||
@@ -106,7 +106,7 @@ class StatsVisits extends ModuleGraph
|
||||
'.$this->l('This information is mostly qualitative: you have to determine the interest of a disjointed visit.').'<br />
|
||||
</fieldset>';
|
||||
|
||||
return $this->_html;
|
||||
return $this->html;
|
||||
}
|
||||
|
||||
public function setOption($option, $layers = 1)
|
||||
@@ -141,8 +141,8 @@ class StatsVisits extends ModuleGraph
|
||||
for ($i = 0; $i < $layers; $i++)
|
||||
{
|
||||
$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($this->_query[$i].$this->getDate().' GROUP BY LEFT(date_add, 4)');
|
||||
foreach ($result AS $row)
|
||||
$this->_values[$i][(int)(substr($row['date_add'], 0, 4))] = (int)($row['total']);
|
||||
foreach ($result as $row)
|
||||
$this->_values[$i][(int)substr($row['date_add'], 0, 4)] = (int)$row['total'];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -151,8 +151,8 @@ class StatsVisits extends ModuleGraph
|
||||
for ($i = 0; $i < $layers; $i++)
|
||||
{
|
||||
$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($this->_query[$i].$this->getDate().' GROUP BY LEFT(date_add, 7)');
|
||||
foreach ($result AS $row)
|
||||
$this->_values[$i][(int)(substr($row['date_add'], 5, 2))] = (int)($row['total']);
|
||||
foreach ($result as $row)
|
||||
$this->_values[$i][(int)substr($row['date_add'], 5, 2)] = (int)$row['total'];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -161,8 +161,8 @@ class StatsVisits extends ModuleGraph
|
||||
for ($i = 0; $i < $layers; $i++)
|
||||
{
|
||||
$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($this->_query[$i].$this->getDate().' GROUP BY LEFT(date_add, 10)');
|
||||
foreach ($result AS $row)
|
||||
$this->_values[$i][(int)(substr($row['date_add'], 8, 2))] = (int)($row['total']);
|
||||
foreach ($result as $row)
|
||||
$this->_values[$i][(int)substr($row['date_add'], 8, 2)] = (int)$row['total'];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -171,8 +171,8 @@ class StatsVisits extends ModuleGraph
|
||||
for ($i = 0; $i < $layers; $i++)
|
||||
{
|
||||
$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($this->_query[$i].$this->getDate().' GROUP BY LEFT(date_add, 13)');
|
||||
foreach ($result AS $row)
|
||||
$this->_values[$i][(int)(substr($row['date_add'], 11, 2))] = (int)($row['total']);
|
||||
foreach ($result as $row)
|
||||
$this->_values[$i][(int)substr($row['date_add'], 11, 2)] = (int)$row['total'];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user