// add title h2 all tab page product, stylesheets stats

git-svn-id: http://dev.prestashop.com/svn/v1/branches/1.5.x@10841 b9a71923-0436-4b27-9f14-aed3839534dd
This commit is contained in:
vKham
2011-12-01 17:39:44 +00:00
parent 16e07c2766
commit 8e2102c8ce
26 changed files with 120 additions and 102 deletions
+11 -2
View File
@@ -244,8 +244,17 @@ form#product_form h4 { font-size:18px; font-weight:normal;}
/*STATCONTAINER*/ /*STATCONTAINER*/
#statsContainer {margin-left:220px; padding:0 0 0 20px;} #statsContainer {margin-left:220px; padding:0 0 0 20px;}
#statsContainer #calendar { background-color: #EBEDF4;border: 1px solid #C2C4D9; display: block; margin: 10px 0;min-height: 25px; padding: 10px;} #statsContainer #calendar { background-color: #EEEEEE;border-top: 1px solid #CCCCCC; display: block; margin: 10px 0;min-height: 25px; padding: 5px;}
#statsContainer #calendar input, #statsContainer #calendar p { float:left; margin-right:5px;} #statsContainer #calendar form { float:right;}
#statsContainer #calendar input, #statsContainer #calendar p { float:left;}
#statsContainer #calendar input.submitDateDay { border-top-right-radius: 0px; border-bottom-right-radius:0px; border-right:none;}
#statsContainer #calendar input.submitDateMonth { border-radius:0px;}
#statsContainer #calendar input.submitDateYear { border-top-left-radius: 0px; border-bottom-left-radius:0px; border-left:none; margin-right:10px;}
#statsContainer #calendar input.submitDateDayPrev { border-top-right-radius: 0px; border-bottom-right-radius:0px; border-right:none;}
#statsContainer #calendar input.submitDateMonthPrev { border-radius:0px;}
#statsContainer #calendar input.submitDateYearPrev { border-top-left-radius: 0px; border-bottom-left-radius:0px; border-left:none; margin-right:10px;}
#statsContainer #calendar p { margin:2px;}
#statsContainer #calendar p span { float:left; display:block; padding:3px;}
#statsContainer .blocStats { background-color: #EBEDF4;border: 1px solid #C2C4D9; display: block; position:relative; padding: 10px;} #statsContainer .blocStats { background-color: #EBEDF4;border: 1px solid #C2C4D9; display: block; position:relative; padding: 10px;}
#statsContainer .blocStats h2 { font-weight:normal; margin:0;} #statsContainer .blocStats h2 { font-weight:normal; margin:0;}
#statsContainer .blocStats form { position:absolute; top:10px; right:5px;} #statsContainer .blocStats form { position:absolute; top:10px; right:5px;}
@@ -1,14 +1,15 @@
<h4>{l s='Available quantities for sale'}</h4>
<div class="separation"></div>
<div class="hint" style="display:block; position:'auto';"> <div class="hint" style="display:block; position:'auto';">
<p>{l s='This interface allows you to manage the available quantities for sale of the current product and its combinations on the current shop.'}</p> <p>{l s='This interface allows you to manage the available quantities for sale of the current product and its combinations on the current shop.'}</p>
<p>{l s='You can manually specify the quantities for the product / each product combinations, or choose to automatically determine these quantities based on your stock.'}</p> <p>{l s='You can manually specify the quantities for the product / each product combinations, or choose to automatically determine these quantities based on your stock.'}</p>
<p>{l s='In this case, the quantities correspond to the quantitites of the real stock in the warehouses associated to the current shop or current group of shops.'}</p> <p>{l s='In this case, the quantities correspond to the quantitites of the real stock in the warehouses associated to the current shop or current group of shops.'}</p>
</div> </div>
<br /> <br />
<h4>{l s='Available quantities for sale'}</h4> <h4>{l s='Available quantities for sale'}</h4>
<div class="separation"></div> <div class="separation"></div>
{if $show_quantities == true} {if $show_quantities == true}
<div class="warn" id="available_quantity_ajax_msg" style="display: none;"></div> <div class="warn" id="available_quantity_ajax_msg" style="display: none;"></div>
<div class="error" id="available_quantity_ajax_error_msg" style="display: none;"></div> <div class="error" id="available_quantity_ajax_error_msg" style="display: none;"></div>
@@ -1,10 +1,9 @@
<h4>{l s='Suppliers of the current product'}</h4>
<div class="separation"></div>
<div class="hint" style="display:block; position:'auto';"> <div class="hint" style="display:block; position:'auto';">
<p>{l s='This interface allows you to specify the suppliers of the current product and eventually its combinations.'}</p> <p>{l s='This interface allows you to specify the suppliers of the current product and eventually its combinations.'}</p>
<p>{l s='It is also possible to specify for each product/product combinations the supplier reference according to previously associated suppliers.'}</p> <p>{l s='It is also possible to specify for each product/product combinations the supplier reference according to previously associated suppliers.'}</p>
</div> </div>
<br />
<h4>{l s='Suppliers of the current product'}</h4>
<div class="separation"></div>
<p>{l s='Please choose the suppliers associated to this product, and the default one.'}</p> <p>{l s='Please choose the suppliers associated to this product, and the default one.'}</p>
{assign var=confirm value="Are you sure you want to delete entered product information?"} {assign var=confirm value="Are you sure you want to delete entered product information?"}
<a class="button bt-icon" href="{$link->getAdminLink('AdminSuppliers')}&addsupplier" onclick="return confirm(' {$confirm} ')"> <a class="button bt-icon" href="{$link->getAdminLink('AdminSuppliers')}&addsupplier" onclick="return confirm(' {$confirm} ')">
@@ -1,10 +1,9 @@
<div class="hint" style="display:block; position:'auto';"> <h4>{l s='Product location in warehouses'}</h4>
<div class="separation"></div>
<div class="hint" style="display:block; position:'auto';">
<p>{l s='This interface allows you to specify in which warehouses the product is stocked.'}</p> <p>{l s='This interface allows you to specify in which warehouses the product is stocked.'}</p>
<p>{l s='It is also possible to specify for each product/product combinations its location in each warehouse.'}</p> <p>{l s='It is also possible to specify for each product/product combinations its location in each warehouse.'}</p>
</div> </div>
<br />
<h4>{l s='Product location in warehouses'}</h4>
<div class="separation"></div>
<p>{l s='Please choose the warehouses associated to this product, and the default one.'}</p> <p>{l s='Please choose the warehouses associated to this product, and the default one.'}</p>
{assign var=confirm value="Are you sure you want to delete entered product information?"} {assign var=confirm value="Are you sure you want to delete entered product information?"}
+8 -8
View File
@@ -27,16 +27,16 @@
<div id="statsContainer"> <div id="statsContainer">
<div id="calendar"> <div id="calendar">
<form action="{$current}&token={$token}{if $action && $table}&{$action}{$table}{/if}{if $identifier && $id}&{$identifier}={$id}{/if}" method="post" id="calendar_form" name="calendar_form"> <form action="{$current}&token={$token}{if $action && $table}&{$action}{$table}{/if}{if $identifier && $id}&{$identifier}={$id}{/if}" method="post" id="calendar_form" name="calendar_form">
<input type="submit" name="submitDateDay" class="button" value="{$translations.Day}"> <input type="submit" name="submitDateDay" class="button submitDateDay" value="{$translations.Day}">
<input type="submit" name="submitDateMonth" class="button" value="{$translations.Month}"> <input type="submit" name="submitDateMonth" class="button submitDateMonth" value="{$translations.Month}">
<input type="submit" name="submitDateYear" class="button" value="{$translations.Year}"> <input type="submit" name="submitDateYear" class="button submitDateYear" value="{$translations.Year}">
<input type="submit" name="submitDateDayPrev" class="button" value="{$translations.Day}-1"> <input type="submit" name="submitDateDayPrev" class="button submitDateDayPrev" value="{$translations.Day}-1">
<input type="submit" name="submitDateMonthPrev" class="button" value="{$translations.Month}-1"> <input type="submit" name="submitDateMonthPrev" class="button submitDateMonthPrev" value="{$translations.Month}-1">
<input type="submit" name="submitDateYearPrev" class="button" value="{$translations.Year}-1"> <input type="submit" name="submitDateYearPrev" class="button submitDateYearPrev" value="{$translations.Year}-1">
<p>{if isset($translations.From)}{$translations.From}{else}{l s='From:'}{/if} <p><span>{if isset($translations.From)}{$translations.From}{else}{l s='From:'}{/if}</span>
<input type="text" name="datepickerFrom" id="datepickerFrom" value="{$datepickerFrom}" class="datepicker"> <input type="text" name="datepickerFrom" id="datepickerFrom" value="{$datepickerFrom}" class="datepicker">
</p> </p>
<p>{if isset($translations.To)}{$translations.To}{else}{l s='From:'}{/if} <p><span>{if isset($translations.To)}{$translations.To}{else}<span>{l s='From:'}</span>{/if}</span>
<input type="text" name="datepickerTo" id="datepickerTo" value="{$datepickerTo}" class="datepicker"> <input type="text" name="datepickerTo" id="datepickerTo" value="{$datepickerTo}" class="datepicker">
</p> </p>
<input type="submit" name="submitDatePicker" id="submitDatePicker" class="button" value="{if isset($translations.Save)}{$translations.Save}{else}{l s=' Save '}{/if}" /> <input type="submit" name="submitDatePicker" id="submitDatePicker" class="button" value="{if isset($translations.Save)}{$translations.Save}{else}{l s=' Save '}{/if}" />
+13
View File
@@ -40,6 +40,8 @@
'Category' => 'override/classes/Category.php', 'Category' => 'override/classes/Category.php',
'ChartCore' => 'classes/Chart.php', 'ChartCore' => 'classes/Chart.php',
'Chart' => 'override/classes/Chart.php', 'Chart' => 'override/classes/Chart.php',
'CollectionCore' => 'classes/Collection.php',
'Collection' => '',
'CombinationCore' => 'classes/Combination.php', 'CombinationCore' => 'classes/Combination.php',
'Combination' => 'override/classes/Combination.php', 'Combination' => 'override/classes/Combination.php',
'CompareProductCore' => 'classes/CompareProduct.php', 'CompareProductCore' => 'classes/CompareProduct.php',
@@ -230,6 +232,8 @@
'CacheMemcache' => 'override/classes/cache/CacheMemcache.php', 'CacheMemcache' => 'override/classes/cache/CacheMemcache.php',
'CacheXcacheCore' => 'classes/cache/CacheXcache.php', 'CacheXcacheCore' => 'classes/cache/CacheXcache.php',
'CacheXcache' => 'override/classes/cache/CacheXcache.php', 'CacheXcache' => 'override/classes/cache/CacheXcache.php',
'CSVCore' => 'classes/csv/CSV.php',
'CSV' => 'override/classes/CSV.php',
'DbCore' => 'classes/db/Db.php', 'DbCore' => 'classes/db/Db.php',
'Db' => 'override/classes/db/Db.php', 'Db' => 'override/classes/db/Db.php',
'DbMySQLiCore' => 'classes/db/DbMySQLi.php', 'DbMySQLiCore' => 'classes/db/DbMySQLi.php',
@@ -258,8 +262,12 @@
'OrderDiscount' => 'override/classes/OrderDiscount.php', 'OrderDiscount' => 'override/classes/OrderDiscount.php',
'OrderHistoryCore' => 'classes/order/OrderHistory.php', 'OrderHistoryCore' => 'classes/order/OrderHistory.php',
'OrderHistory' => 'override/classes/OrderHistory.php', 'OrderHistory' => 'override/classes/OrderHistory.php',
'OrderInvoiceCore' => 'classes/order/OrderInvoice.php',
'OrderInvoice' => '',
'OrderMessageCore' => 'classes/order/OrderMessage.php', 'OrderMessageCore' => 'classes/order/OrderMessage.php',
'OrderMessage' => 'override/classes/OrderMessage.php', 'OrderMessage' => 'override/classes/OrderMessage.php',
'OrderPaymentCore' => 'classes/order/OrderPayment.php',
'OrderPayment' => '',
'OrderReturnCore' => 'classes/order/OrderReturn.php', 'OrderReturnCore' => 'classes/order/OrderReturn.php',
'OrderReturn' => 'override/classes/OrderReturn.php', 'OrderReturn' => 'override/classes/OrderReturn.php',
'OrderReturnStateCore' => 'classes/order/OrderReturnState.php', 'OrderReturnStateCore' => 'classes/order/OrderReturnState.php',
@@ -278,6 +286,7 @@
'HTMLTemplateOrderReturn' => '', 'HTMLTemplateOrderReturn' => '',
'HTMLTemplateOrderSlipCore' => 'classes/pdf/HTMLTemplateOrderSlip.php', 'HTMLTemplateOrderSlipCore' => 'classes/pdf/HTMLTemplateOrderSlip.php',
'HTMLTemplateOrderSlip' => '', 'HTMLTemplateOrderSlip' => '',
'HTMLTemplateSupplyOrderForm' => 'classes/pdf/HTMLTemplateSupplyOrderForm.php',
'PDFGeneratorCore' => 'classes/pdf/PDFGenerator.php', 'PDFGeneratorCore' => 'classes/pdf/PDFGenerator.php',
'PDFGenerator' => '', 'PDFGenerator' => '',
'GroupShopCore' => 'classes/shop/GroupShop.php', 'GroupShopCore' => 'classes/shop/GroupShop.php',
@@ -312,6 +321,8 @@
'SupplyOrderState' => '', 'SupplyOrderState' => '',
'WarehouseCore' => 'classes/stock/Warehouse.php', 'WarehouseCore' => 'classes/stock/Warehouse.php',
'Warehouse' => '', 'Warehouse' => '',
'WarehouseProductLocationCore' => 'classes/stock/WarehouseProductLocation.php',
'WarehouseProductLocation' => '',
'TaxCore' => 'classes/tax/Tax.php', 'TaxCore' => 'classes/tax/Tax.php',
'Tax' => 'override/classes/tax/Tax.php', 'Tax' => 'override/classes/tax/Tax.php',
'TaxCalculatorCore' => 'classes/tax/TaxCalculator.php', 'TaxCalculatorCore' => 'classes/tax/TaxCalculator.php',
@@ -421,6 +432,7 @@
'AdminLanguagesController' => '', 'AdminLanguagesController' => '',
'AdminLocalizationControllerCore' => 'controllers/admin/AdminLocalizationController.php', 'AdminLocalizationControllerCore' => 'controllers/admin/AdminLocalizationController.php',
'AdminLocalizationController' => '', 'AdminLocalizationController' => '',
'AdminLoginController' => 'controllers/admin/AdminLoginController.php',
'AdminLogsControllerCore' => 'controllers/admin/AdminLogsController.php', 'AdminLogsControllerCore' => 'controllers/admin/AdminLogsController.php',
'AdminLogsController' => '', 'AdminLogsController' => '',
'AdminManufacturersControllerCore' => 'controllers/admin/AdminManufacturersController.php', 'AdminManufacturersControllerCore' => 'controllers/admin/AdminManufacturersController.php',
@@ -486,6 +498,7 @@
'AdminStatsTabController' => '', 'AdminStatsTabController' => '',
'AdminStatusesControllerCore' => 'controllers/admin/AdminStatusesController.php', 'AdminStatusesControllerCore' => 'controllers/admin/AdminStatusesController.php',
'AdminStatusesController' => '', 'AdminStatusesController' => '',
'AdminStockConfigurationController' => 'controllers/admin/AdminStockConfigurationController.php',
'AdminStockCoverControllerCore' => 'controllers/admin/AdminStockCoverController.php', 'AdminStockCoverControllerCore' => 'controllers/admin/AdminStockCoverController.php',
'AdminStockCoverController' => '', 'AdminStockCoverController' => '',
'AdminStockInstantStateControllerCore' => 'controllers/admin/AdminStockInstantStateController.php', 'AdminStockInstantStateControllerCore' => 'controllers/admin/AdminStockInstantStateController.php',
+2 -1
View File
@@ -3,6 +3,7 @@
<modules type="native"> <modules type="native">
<module name="autoupgrade"/> <module name="autoupgrade"/>
<module name="bankwire"/> <module name="bankwire"/>
<module name="birthdaypresent"/>
<module name="blockadvertising"/> <module name="blockadvertising"/>
<module name="blockbestsellers"/> <module name="blockbestsellers"/>
<module name="blockcart"/> <module name="blockcart"/>
@@ -96,7 +97,7 @@
<module name="dejala"/> <module name="dejala"/>
<module name="dibs"/> <module name="dibs"/>
<module name="ebay"/> <module name="ebay"/>
<module name="envoimoinscher"/> <module name="envoimoinscher"/>
<module name="ekomi"/> <module name="ekomi"/>
<module name="fedexcarrier"/> <module name="fedexcarrier"/>
<module name="fianetfraud"/> <module name="fianetfraud"/>
+6 -6
View File
@@ -107,7 +107,7 @@ class Pagesnotfound extends Module
$this->_html .= '<div class="conf confirm"><img src="../img/admin/ok.gif" /> '.$this->l('Pages not found have been deleted.').'</div>'; $this->_html .= '<div class="conf confirm"><img src="../img/admin/ok.gif" /> '.$this->l('Pages not found have been deleted.').'</div>';
} }
$this->_html .= '<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend>'; $this->_html .= '<div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>';
if (!file_exists(dirname(__FILE__).'/../../.htaccess')) if (!file_exists(dirname(__FILE__).'/../../.htaccess'))
$this->_html .= '<div class="warning warn">'.$this->l('You <b>must</b> use a .htaccess file to redirect 404 errors to the page "404.php"').'</div>'; $this->_html .= '<div class="warning warn">'.$this->l('You <b>must</b> use a .htaccess file to redirect 404 errors to the page "404.php"').'</div>';
@@ -136,17 +136,17 @@ class Pagesnotfound extends Module
else else
$this->_html .= '<div class="conf confirm"><img src="../img/admin/ok.gif" /> '.$this->l('No pages registered').'</div>'; $this->_html .= '<div class="conf confirm"><img src="../img/admin/ok.gif" /> '.$this->l('No pages registered').'</div>';
$this->_html .= '</fieldset>'; $this->_html .= '</div>';
if (count($pages)) if (count($pages))
$this->_html .= '<div class="clear">&nbsp;</div> $this->_html .= '<div class="clear">&nbsp;</div>
<fieldset><legend><img src="../img/admin/delete.gif" /> '.$this->l('Empty database').'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Empty database').'</h2>
<form action="'.Tools::htmlEntitiesUtf8($_SERVER['REQUEST_URI']).'" method="post"> <form action="'.Tools::htmlEntitiesUtf8($_SERVER['REQUEST_URI']).'" method="post">
<input type="submit" class="button" name="submitDeletePNF" value="'.$this->l('Empty ALL pages not found in this period').'"> <input type="submit" class="button" name="submitDeletePNF" value="'.$this->l('Empty ALL pages not found in this period').'">
<input type="submit" class="button" name="submitTruncatePNF" value="'.$this->l('Empty ALL pages not found').'"> <input type="submit" class="button" name="submitTruncatePNF" value="'.$this->l('Empty ALL pages not found').'">
</form> </form>
</fieldset>'; </div>';
$this->_html .= '<br /> $this->_html .= '<br />
<fieldset><legend><img src="../img/admin/comment.gif" /> '.$this->l('Guide').'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Guide').'</h2>
<h2>'.$this->l('404 errors').'</h2> <h2>'.$this->l('404 errors').'</h2>
<p>'.$this->l('A 404 error is an HTTP error code which means that the file requested by the user cannot be found. <p>'.$this->l('A 404 error is an HTTP error code which means that the file requested by the user cannot be found.
In your case it means that one of your visitors entered a wrong URL in the address bar or that you or another website has a dead link. In your case it means that one of your visitors entered a wrong URL in the address bar or that you or another website has a dead link.
@@ -157,7 +157,7 @@ class Pagesnotfound extends Module
<i>ErrorDocument 404 '.__PS_BASE_URI__.'404.php</i>. '. <i>ErrorDocument 404 '.__PS_BASE_URI__.'404.php</i>. '.
$this->l('A user requesting a page which doesn\'t exist will be redirected to the page.').' <i>'.__PS_BASE_URI__.'404.php</i>. '. $this->l('A user requesting a page which doesn\'t exist will be redirected to the page.').' <i>'.__PS_BASE_URI__.'404.php</i>. '.
$this->l('This module logs the accesses to this page: the page requested, the referrer and the number of times that it occurred.').'</p><br /> $this->l('This module logs the accesses to this page: the page requested, the referrer and the number of times that it occurred.').'</p><br />
</fieldset>'; </div>';
return $this->_html; return $this->_html;
} }
+8 -8
View File
@@ -105,8 +105,8 @@ class SEKeywords extends ModuleGraph
$this->csvExport(array('type' => 'pie')); $this->csvExport(array('type' => 'pie'));
$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($this->_query.ModuleGraph::getDateBetween().$this->_query2); $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($this->_query.ModuleGraph::getDateBetween().$this->_query2);
$total = count($result); $total = count($result);
$this->html = '<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend> $this->html = '<div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>
'.$total.' '.($total == 1 ? $this->l('keyword matches your query.') : $this->l('keywords match your query.')).'<div class="clear">&nbsp;</div>'; '.$total.' '.($total == 1 ? $this->l('keyword matches your query.') : $this->l('keywords match your query.')).'';
if ($result && $total) if ($result && $total)
{ {
$table = ' $table = '
@@ -124,20 +124,20 @@ class SEKeywords extends ModuleGraph
} }
$table .= '</tbody></table></div>'; $table .= '</tbody></table></div>';
$this->html .= '<div>'.$this->engine(array('type' => 'pie')).'</div> $this->html .= '<div>'.$this->engine(array('type' => 'pie')).'</div>
<br class="clear" /> <br/>
<p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1&exportType=language"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p><br class="clear" /> <p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1&exportType=language"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p><br/>
<form action="'.Tools::htmlentitiesUTF8($_SERVER['REQUEST_URI']).'" method="post"> <form action="'.Tools::htmlentitiesUTF8($_SERVER['REQUEST_URI']).'" method="post">
'.$this->l('Filter by keyword').' <input type="text" name="SEK_FILTER_KW" value="'.Tools::htmlentitiesUTF8(Configuration::get('SEK_FILTER_KW')).'" /> '.$this->l('Filter by keyword').' <input type="text" name="SEK_FILTER_KW" value="'.Tools::htmlentitiesUTF8(Configuration::get('SEK_FILTER_KW')).'" />
'.$this->l('and min occurrences').' <input type="text" name="SEK_MIN_OCCURENCES" value="'.(int)Configuration::get('SEK_MIN_OCCURENCES').'" /> '.$this->l('and min occurrences').' <input type="text" name="SEK_MIN_OCCURENCES" value="'.(int)Configuration::get('SEK_MIN_OCCURENCES').'" />
<input type="submit" class="button" name="submitSEK" value="'.$this->l(' Apply ').'" /> <input type="submit" class="button" name="submitSEK" value="'.$this->l(' Apply ').'" />
</form> </form>
<br class="clear" />'.$table; <br/>'.$table;
} }
else else
$this->html .= '<p><strong>'.$this->l('No keywords').'</strong></p>'; $this->html .= '<p><strong>'.$this->l('No keywords').'</strong></p>';
$this->html .= '</fieldset><br class="clear" /> $this->html .= '</div><br/>
<fieldset><legend><img src="../img/admin/comment.gif" /> '.$this->l('Guide').'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Guide').'</h2>
<h2>'.$this->l('Identify external search engines\' keywords').'</h2> <h2>'.$this->l('Identify external search engines\' keywords').'</h2>
<p>'.$this->l('One of the most common ways of finding a website through a search engine. <p>'.$this->l('One of the most common ways of finding a website through a search engine.
Identifying the most popular keywords entered by your new visitors allows you to see which products you should put in front if you want to attract more visitors and potential customers.').' Identifying the most popular keywords entered by your new visitors allows you to see which products you should put in front if you want to attract more visitors and potential customers.').'
@@ -146,7 +146,7 @@ class SEKeywords extends ModuleGraph
<p>'.$this->l('When a visitor comes to your website, the server notes their previous location. This module parses the URL and finds the keywords in it. <p>'.$this->l('When a visitor comes to your website, the server notes their previous location. This module parses the URL and finds the keywords in it.
Currently, it manages the following search engines:').'<b> Google, AOL, Yandex, Ask, NHL, Yahoo, Baidu, Lycos, Exalead, Live, Voila</b> '.$this->l('and').' <b>Altavista</b>. '. Currently, it manages the following search engines:').'<b> Google, AOL, Yandex, Ask, NHL, Yahoo, Baidu, Lycos, Exalead, Live, Voila</b> '.$this->l('and').' <b>Altavista</b>. '.
$this->l('Soon it will be possible to dynamically add new search engines and contribute to this module.').'</p><br /> $this->l('Soon it will be possible to dynamically add new search engines and contribute to this module.').'</p><br />
</fieldset>'; </div>';
return $this->html; return $this->html;
} }
@@ -109,10 +109,10 @@ class StatsBestCategories extends ModuleGrid
$this->csvExport($engineParams); $this->csvExport($engineParams);
$this->_html = ' $this->_html = '
<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>
'.$this->engine($engineParams).' '.$this->engine($engineParams).'
<br /><a href="'.htmlentities($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a> <br /><a href="'.htmlentities($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a>
</fieldset>'; </div>';
return $this->_html; return $this->_html;
} }
@@ -109,11 +109,11 @@ class StatsBestCustomers extends ModuleGrid
if (Tools::getValue('export')) if (Tools::getValue('export'))
$this->csvExport($engineParams); $this->csvExport($engineParams);
$this->_html = ' $this->_html = '
<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>
'.$this->engine($engineParams).' '.$this->engine($engineParams).'
<p><a href="'.htmlentities($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p> <p><a href="'.htmlentities($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p>
</fieldset><br /> </div><br />
<fieldset><legend><img src="../img/admin/comment.gif" /> '.$this->l('Guide').'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Guide').'</h2>
<h2 >'.$this->l('Develop clients\' loyalty').'</h2> <h2 >'.$this->l('Develop clients\' loyalty').'</h2>
<p class="space"> <p class="space">
'.$this->l('Keeping a client is more profitable than gaining a new one. Thus, it is necessary to develop their loyalty, in other words to make them want to come back to your webshop.').' <br /> '.$this->l('Keeping a client is more profitable than gaining a new one. Thus, it is necessary to develop their loyalty, in other words to make them want to come back to your webshop.').' <br />
@@ -127,7 +127,7 @@ class StatsBestCustomers extends ModuleGrid
</ul> </ul>
'.$this->l('These operations encourage clients to buy products and visit your webshop regularly.').' <br /> '.$this->l('These operations encourage clients to buy products and visit your webshop regularly.').' <br />
</p><br /> </p><br />
</fieldset>'; </div>';
return $this->_html; return $this->_html;
} }
@@ -137,7 +137,7 @@ class StatsBestProducts extends ModuleGrid
$this->csvExport($engineParams); $this->csvExport($engineParams);
$this->_html = ' $this->_html = '
<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>
'.$this->engine($engineParams).' '.$this->engine($engineParams).'
<p><a href="'.htmlentities($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p> <p><a href="'.htmlentities($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p>
</fieldset>'; </fieldset>';
@@ -101,10 +101,10 @@ class StatsBestSuppliers extends ModuleGrid
if (Tools::getValue('export') == 1) if (Tools::getValue('export') == 1)
$this->csvExport($engineParams); $this->csvExport($engineParams);
$this->_html = ' $this->_html = '
<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>
'.$this->engine($engineParams).' '.$this->engine($engineParams).'
<p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p> <p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p>
</fieldset>'; </div>';
return $this->_html; return $this->_html;
} }
@@ -102,10 +102,10 @@ class StatsBestVouchers extends ModuleGrid
$this->csvExport($engineParams); $this->csvExport($engineParams);
$this->_html = ' $this->_html = '
<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>
'.$this->engine($engineParams).' '.$this->engine($engineParams).'
<br /><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a> <br /><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a>
</fieldset>'; </div>';
return $this->_html; return $this->_html;
} }
+2 -2
View File
@@ -67,7 +67,7 @@ class StatsCarrier extends ModuleGraph
if (Tools::getValue('export')) if (Tools::getValue('export'))
$this->csvExport(array('type' => 'pie', 'option' => Tools::getValue('id_order_state'))); $this->csvExport(array('type' => 'pie', 'option' => Tools::getValue('id_order_state')));
$this->_html = ' $this->_html = '
<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>
<form action="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'" method="post" style="float: right;"> <form action="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'" method="post" style="float: right;">
<select name="id_order_state"> <select name="id_order_state">
<option value="0"'.((!Tools::getValue('id_order_state')) ? ' selected="selected"' : '').'>'.$this->l('All').'</option>'; <option value="0"'.((!Tools::getValue('id_order_state')) ? ' selected="selected"' : '').'>'.$this->l('All').'</option>';
@@ -78,7 +78,7 @@ class StatsCarrier extends ModuleGraph
</form> </form>
<p><img src="../img/admin/down.gif" />'.$this->l('This graph represents the carrier distribution for your orders. You can also limit it to orders in one state.').'</p> <p><img src="../img/admin/down.gif" />'.$this->l('This graph represents the carrier distribution for your orders. You can also limit it to orders in one state.').'</p>
'.($result['total'] ? $this->engine(array('type' => 'pie', 'option' => Tools::getValue('id_order_state'))).'<br /><br /> <a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1&exportType=language"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a>' : $this->l('No valid orders for this period.')).' '.($result['total'] ? $this->engine(array('type' => 'pie', 'option' => Tools::getValue('id_order_state'))).'<br /><br /> <a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1&exportType=language"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a>' : $this->l('No valid orders for this period.')).'
</fieldset>'; </div>';
return $this->_html; return $this->_html;
} }
+7 -8
View File
@@ -169,12 +169,12 @@ class StatsCatalog extends Module
$html = ' $html = '
<script type="text/javascript" language="javascript">$(\'#calendar\').slideToggle();</script> <script type="text/javascript" language="javascript">$(\'#calendar\').slideToggle();</script>
<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>
<label>
'.$this->l('Choose a category').'
</label>
<div class="margin-form"> <div class="margin-form">
<form action="" method="post" id="categoriesForm"> <form action="" method="post" id="categoriesForm">
<label>
'.$this->l('Choose a category').'
</label>
<select name="id_category" onchange="$(\'#categoriesForm\').submit();"> <select name="id_category" onchange="$(\'#categoriesForm\').submit();">
<option value="0">'.$this->l('All').'</option>'; <option value="0">'.$this->l('All').'</option>';
foreach ($categories as $category) foreach ($categories as $category)
@@ -185,7 +185,6 @@ class StatsCatalog extends Module
</select> </select>
</form> </form>
</div> </div>
<div class="clear space"></div>
<table> <table>
'.$this->returnLine($this->l('Products available:'), (int)$total).' '.$this->returnLine($this->l('Products available:'), (int)$total).'
'.$this->returnLine($this->l('Average price (base price):'), Tools::displayPrice($averagePrice, $this->context->currency)).' '.$this->returnLine($this->l('Average price (base price):'), Tools::displayPrice($averagePrice, $this->context->currency)).'
@@ -203,12 +202,12 @@ class StatsCatalog extends Module
<span style="color:red;font-weight:bold">*</span> <span style="color:red;font-weight:bold">*</span>
'.$this->l('Average conversion rate for the product page. It is possible to purchase a product without viewing the product page, so this rate can be greater than 1.').' '.$this->l('Average conversion rate for the product page. It is possible to purchase a product without viewing the product page, so this rate can be greater than 1.').'
</div> </div>
</fieldset>'; </div>';
if (count($productsNB) && count($productsNB) < 50) if (count($productsNB) && count($productsNB) < 50)
{ {
$html .= '<br /> $html .= '<br />
<fieldset><legend><img src="../modules/'.$this->name.'/basket_delete.png" /> '.$this->l('Products never purchased').'</legend> <div class="blocStats"><h2 class="icon-basket_delete.png"> '.$this->l('Products never purchased').'</h2>
<table cellpadding="0" cellspacing="0" class="table"> <table cellpadding="0" cellspacing="0" class="table">
<tr><th>'.$this->l('ID').'</th><th>'.$this->l('Name').'</th><th>'.$this->l('Edit / View').'</th></tr>'; <tr><th>'.$this->l('ID').'</th><th>'.$this->l('Name').'</th><th>'.$this->l('Edit / View').'</th></tr>';
foreach ($productsNB as $product) foreach ($productsNB as $product)
@@ -223,7 +222,7 @@ class StatsCatalog extends Module
</tr>'; </tr>';
$html .= ' $html .= '
</table> </table>
</fieldset>'; </div>';
} }
return $html; return $html;
} }
+4 -4
View File
@@ -122,7 +122,7 @@ class StatsEquipment extends ModuleGraph
$equipment = $this->getEquipment(); $equipment = $this->getEquipment();
$this->html = ' $this->html = '
<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>
<p><img src="../img/admin/down.gif" />'.$this->l('Determine the percentage of web browsers used by your customers.').'</p> <p><img src="../img/admin/down.gif" />'.$this->l('Determine the percentage of web browsers used by your customers.').'</p>
'.$this->engine(array('type' => 'pie', 'option' => 'wb')).'<br /><br /> '.$this->engine(array('type' => 'pie', 'option' => 'wb')).'<br /><br />
<p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1&exportType=browser"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p> <p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1&exportType=browser"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p>
@@ -139,9 +139,9 @@ class StatsEquipment extends ModuleGraph
$this->html .= '</table>'; $this->html .= '</table>';
} }
$this->html .= ' $this->html .= '
</fieldset> </div>
<br /> <br />
<fieldset><legend><img src="../img/admin/comment.gif" /> '.$this->l('Guide').'</legend> <div class="blocStats"><h2 class="icon-guide"> '.$this->l('Guide').'</h2>
<h2>'.$this->l('Ensure that your website is accessible to all.').'</h2> <h2>'.$this->l('Ensure that your website is accessible to all.').'</h2>
<p> <p>
'.$this->l('When managing Websites, it is important to keep track of software used by visitors in order to be sure that the site displays the same way for everyone. '.$this->l('When managing Websites, it is important to keep track of software used by visitors in order to be sure that the site displays the same way for everyone.
@@ -150,7 +150,7 @@ class StatsEquipment extends ModuleGraph
That is why it is a good idea to keep tabs on the percentage of users for each type of software before adding or changing something that only a limited number of users will be able to access.').' That is why it is a good idea to keep tabs on the percentage of users for each type of software before adding or changing something that only a limited number of users will be able to access.').'
</p><br /> </p><br />
</fieldset>'; </div>';
return $this->html; return $this->html;
} }
+8 -8
View File
@@ -128,7 +128,7 @@ class StatsForecast extends Module
$dataTable[$row['fix_date']] = $row; $dataTable[$row['fix_date']] = $row;
$this->_html .= '<div> $this->_html .= '<div>
<div class="blocStats"><h2>'.$this->displayName.'</h2> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>
<p>'.$this->l('All amounts are without taxes.').'</p> <p>'.$this->l('All amounts are without taxes.').'</p>
<form id="granularity" action="'.$ru.'#granularity" method="post"> <form id="granularity" action="'.$ru.'#granularity" method="post">
<input type="hidden" name="submitGranularity" value="1" /> <input type="hidden" name="submitGranularity" value="1" />
@@ -304,7 +304,7 @@ class StatsForecast extends Module
$orders = Db::getInstance()->getValue($sql); $orders = Db::getInstance()->getValue($sql);
$this->_html .= '<br /> $this->_html .= '<br />
<div class="blocStats"><h2>'.$this->l('Conversion').'</h2> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Conversion').'</h2>
<span style="float:left;text-align:center;margin-right:10px;padding-top:15px">'.$this->l('Visitors').'<br />'.$visitors.'</span> <span style="float:left;text-align:center;margin-right:10px;padding-top:15px">'.$this->l('Visitors').'<br />'.$visitors.'</span>
<span style="float:left;text-align:center;margin-right:10px"> <span style="float:left;text-align:center;margin-right:10px">
<img src="../modules/'.$this->name.'/next.png"><br />'.round(100 * $customers / max(1, $visitors)).' %<br /> <img src="../modules/'.$this->name.'/next.png"><br />'.round(100 * $customers / max(1, $visitors)).' %<br />
@@ -346,7 +346,7 @@ class StatsForecast extends Module
$this->_html .= ' $this->_html .= '
<br />'; <br />';
$this->_html .= '<div class="blocStats"><h2>'.$this->l('Payment distibution').'</h2> $this->_html .= '<div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Payment distibution').'</h2>
<form id="cat" action="'.$ru.'#payment" method="post" > <form id="cat" action="'.$ru.'#payment" method="post" >
<input type="hidden" name="submitIdZone" value="1" /> <input type="hidden" name="submitIdZone" value="1" />
'.$this->l('Zone:').' <select name="stats_id_zone" onchange="this.form.submit();"> '.$this->l('Zone:').' <select name="stats_id_zone" onchange="this.form.submit();">
@@ -369,7 +369,7 @@ class StatsForecast extends Module
</table> </table>
</div> </div>
<br /> <br />
<div class="blocStats"><h2>'.$this->l('Category distribution').'</h2> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Category distribution').'</h2>
<form id="cat" action="'.$ru.'#cat" method="post" > <form id="cat" action="'.$ru.'#cat" method="post" >
<input type="hidden" name="submitIdZone" value="1" /> <input type="hidden" name="submitIdZone" value="1" />
'.$this->l('Zone:').' <select name="stats_id_zone" onchange="this.form.submit();"> '.$this->l('Zone:').' <select name="stats_id_zone" onchange="this.form.submit();">
@@ -394,7 +394,7 @@ class StatsForecast extends Module
</table> </table>
</div> </div>
<br /> <br />
<div class="blocStats"><h2>'.$this->l('Language distribution').'</h2> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Language distribution').'</h2>
<table class="table" border="0" cellspacing="0" cellspacing="0"> <table class="table" border="0" cellspacing="0" cellspacing="0">
<tr><th>'.$this->l('Customers').'</th><th>'.$this->l('Sales').'</th><th>'.$this->l('%').'</th><th colspan="2">'.$this->l('Growth').'</th></tr>'; <tr><th>'.$this->l('Customers').'</th><th>'.$this->l('Sales').'</th><th>'.$this->l('%').'</th><th colspan="2">'.$this->l('Growth').'</th></tr>';
foreach ($ca['lang'] as $ophone => $amount) foreach ($ca['lang'] as $ophone => $amount)
@@ -413,7 +413,7 @@ class StatsForecast extends Module
</table> </table>
</div> </div>
<br /> <br />
<div class="blocStats"><h2>'.$this->l('Zone distribution').'</h2> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Zone distribution').'</h2>
<table class="table" border="0" cellspacing="0" cellspacing="0"> <table class="table" border="0" cellspacing="0" cellspacing="0">
<tr><th>'.$this->l('Zone').'</th><th>'.$this->l('Count').'</th><th>'.$this->l('Total').'</th><th>'.$this->l('% Count').'</th><th>'.$this->l('% Sales').'</th></tr>'; <tr><th>'.$this->l('Zone').'</th><th>'.$this->l('Count').'</th><th>'.$this->l('Total').'</th><th>'.$this->l('% Count').'</th><th>'.$this->l('% Sales').'</th></tr>';
foreach ($ca['zones'] as $zone) foreach ($ca['zones'] as $zone)
@@ -429,7 +429,7 @@ class StatsForecast extends Module
</table> </table>
</div> </div>
<br /> <br />
<div class="blocStats"><h2>'.$this->l('Currency distribution').'</h2> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Currency distribution').'</h2>
<form id="cat" action="'.$ru.'#currencies" method="post" > <form id="cat" action="'.$ru.'#currencies" method="post" >
<input type="hidden" name="submitIdZone" value="1" /> <input type="hidden" name="submitIdZone" value="1" />
'.$this->l('Zone:').' <select name="stats_id_zone" onchange="this.form.submit();"> '.$this->l('Zone:').' <select name="stats_id_zone" onchange="this.form.submit();">
@@ -453,7 +453,7 @@ class StatsForecast extends Module
</table> </table>
</div> </div>
<br /> <br />
<div class="blocStats"><h2>'.$this->l('Attribute distribution').'</h2> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Attribute distribution').'</h2>
<table class="table" border="0" cellspacing="0" cellspacing="0"> <table class="table" border="0" cellspacing="0" cellspacing="0">
<tr><th>'.$this->l('Group').'</th><th>'.$this->l('Attribute').'</th><th>'.$this->l('Count').'</th></tr>'; <tr><th>'.$this->l('Group').'</th><th>'.$this->l('Attribute').'</th><th>'.$this->l('Count').'</th></tr>';
foreach ($ca['attributes'] as $attribut) foreach ($ca['attributes'] as $attribut)
+4 -5
View File
@@ -84,14 +84,13 @@ class StatsOrigin extends ModuleGraph
if (Tools::getValue('export')) if (Tools::getValue('export'))
if (Tools::getValue('exportType') == 'top') if (Tools::getValue('exportType') == 'top')
$this->csvExport(array('type' => 'pie')); $this->csvExport(array('type' => 'pie'));
$this->_html = '<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->l('Origin').'</legend>'; $this->_html = '<div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Origin').'</h2>';
if (count($websites)) if (count($websites))
{ {
$this->_html .= ' $this->_html .= '
<p><img src="../img/admin/down.gif" />'.$this->l('Here is the percentage of the 10 most popular referrer websites by which visitors went through to get to your shop.').'</p> <p><img src="../img/admin/down.gif" />'.$this->l('Here is the percentage of the 10 most popular referrer websites by which visitors went through to get to your shop.').'</p>
<div>'.$this->engine(array('type' => 'pie')).'</div> <div>'.$this->engine(array('type' => 'pie')).'</div>
<p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1&exportType=top"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p><br /><br /> <p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1&exportType=top"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p><br /><br />
<div style="overflow-y: scroll; height: 600px;">
<table class="table " border="0" cellspacing="0" cellspacing="0"> <table class="table " border="0" cellspacing="0" cellspacing="0">
<tr> <tr>
@@ -106,8 +105,8 @@ class StatsOrigin extends ModuleGraph
} }
else else
$this->_html .= '<p><strong>'.$this->l('Direct links only').'</strong></p>'; $this->_html .= '<p><strong>'.$this->l('Direct links only').'</strong></p>';
$this->_html .= '</fieldset><br /> $this->_html .= '</div><br />
<fieldset><legend><img src="../img/admin/comment.gif" /> '.$this->l('Guide').'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Guide').'</h2>
<h2>'.$this->l('What is a referrer website?').'</h2> <h2>'.$this->l('What is a referrer website?').'</h2>
<p> <p>
'.$this->l('When visiting a webpage, the referrer is the URL of the previous webpage from which a link was followed.').'<br /> '.$this->l('When visiting a webpage, the referrer is the URL of the previous webpage from which a link was followed.').'<br />
@@ -118,7 +117,7 @@ class StatsOrigin extends ModuleGraph
<li class="bullet">'.$this->l('A partner with whom you made a link exchange in order to bring in sales or attract new customers').'</li> <li class="bullet">'.$this->l('A partner with whom you made a link exchange in order to bring in sales or attract new customers').'</li>
</ul> </ul>
</p> </p>
</fieldset>'; </div>';
return $this->_html; return $this->_html;
} }
@@ -55,7 +55,7 @@ class StatsPersonalInfos extends ModuleGraph
public function hookAdminStatsModules($params) public function hookAdminStatsModules($params)
{ {
$this->html = '<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend>'; $this->html = '<div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>';
if (count(Customer::getCustomers())) if (count(Customer::getCustomers()))
{ {
if (Tools::getValue('export')) if (Tools::getValue('export'))
@@ -92,8 +92,8 @@ class StatsPersonalInfos extends ModuleGraph
else else
$this->html .= '<p>'.$this->l('No customers registered yet.').'</p>'; $this->html .= '<p>'.$this->l('No customers registered yet.').'</p>';
$this->html .= ' $this->html .= '
</fieldset><br /> </div><br />
<fieldset><legend><img src="../img/admin/comment.gif" /> '.$this->l('Guide').'</legend> <div class="blocStats"><h2 class="icon-guide">'.$this->l('Guide').'</h2>
<h2>'.$this->l('Target your audience').'</h2> <h2>'.$this->l('Target your audience').'</h2>
<p> <p>
'.$this->l('In order for each message to have an impact, you need to know to whom it should be addressed.').' '.$this->l('In order for each message to have an impact, you need to know to whom it should be addressed.').'
@@ -108,7 +108,7 @@ class StatsPersonalInfos extends ModuleGraph
<li class="bullet">'.$this->l('Contacting a group of clients by e-mail / newsletter.').'</li> <li class="bullet">'.$this->l('Contacting a group of clients by e-mail / newsletter.').'</li>
</ul> </ul>
</p><br /> </p><br />
</fieldset>'; </div>';
return $this->html; return $this->html;
} }
+7 -9
View File
@@ -155,7 +155,7 @@ class StatsProduct extends ModuleGraph
if (!Tools::getValue('exportType')) if (!Tools::getValue('exportType'))
$this->csvExport(array('layers' => 2, 'type' => 'line', 'option' => '42')); $this->csvExport(array('layers' => 2, 'type' => 'line', 'option' => '42'));
$this->html = '<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend>'; $this->html = '<div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>';
if ($id_product = (int)Tools::getValue('id_product')) if ($id_product = (int)Tools::getValue('id_product'))
{ {
if (Tools::getValue('export')) if (Tools::getValue('export'))
@@ -181,7 +181,7 @@ class StatsProduct extends ModuleGraph
if ($totalBought) if ($totalBought)
{ {
$sales = $this->getSales($id_product, $this->context->language->id); $sales = $this->getSales($id_product, $this->context->language->id);
$this->html .= '<br class="clear" /> $this->html .= '
<h3>'.$this->l('Sales').'</h3> <h3>'.$this->l('Sales').'</h3>
<div style="overflow-y: scroll; height: '.min(400, (count($sales) + 1) * 32).'px;"> <div style="overflow-y: scroll; height: '.min(400, (count($sales) + 1) * 32).'px;">
<table class="table" border="0" cellspacing="0" cellspacing="0"> <table class="table" border="0" cellspacing="0" cellspacing="0">
@@ -250,11 +250,9 @@ class StatsProduct extends ModuleGraph
</select> </select>
</form> </form>
</div> </div>
<div class="clear space"></div> '.$this->l('Click on a product to access its statistics.').'
'.$this->l('Click on a product to access its statistics.').'
<div class="clear space"></div>
<h2>'.$this->l('Products available').'</h2> <h2>'.$this->l('Products available').'</h2>
<div style="overflow-y: scroll; height: 600px;"> <div>
<table class="table" border="0" cellspacing="0" cellspacing="0"> <table class="table" border="0" cellspacing="0" cellspacing="0">
<thead> <thead>
<tr> <tr>
@@ -278,8 +276,8 @@ class StatsProduct extends ModuleGraph
<a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a><br />'; <a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a><br />';
} }
$this->html .= '</fieldset><br /> $this->html .= '</div><br />
<fieldset><legend><img src="../img/admin/comment.gif" /> '.$this->l('Guide').'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Guide').'</h2>
<h2>'.$this->l('Number of purchases compared to number of viewings').'</h2> <h2>'.$this->l('Number of purchases compared to number of viewings').'</h2>
<p> <p>
'.$this->l('After choosing a category and selecting a product, informational graphs will appear. Then, you will be able to analyze them.').' '.$this->l('After choosing a category and selecting a product, informational graphs will appear. Then, you will be able to analyze them.').'
@@ -290,7 +288,7 @@ class StatsProduct extends ModuleGraph
</li> </li>
</ul> </ul>
</p> </p>
</fieldset>'; </div>';
return $this->html; return $this->html;
} }
@@ -109,7 +109,7 @@ class StatsRegistrations extends ModuleGraph
if (Tools::getValue('export')) if (Tools::getValue('export'))
$this->csvExport(array('layers' => 0, 'type' => 'line')); $this->csvExport(array('layers' => 0, 'type' => 'line'));
$this->_html = ' $this->_html = '
<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>
<p> <p>
'.$this->l('Visitors who have stopped at the registering step:').' '.(int)($totalBlocked).($totalRegistrations ? ' ('.number_format(100*$totalBlocked/($totalRegistrations+$totalBlocked), 2).'%)' : '').'<br /> '.$this->l('Visitors who have stopped at the registering step:').' '.(int)($totalBlocked).($totalRegistrations ? ' ('.number_format(100*$totalBlocked/($totalRegistrations+$totalBlocked), 2).'%)' : '').'<br />
'.$this->l('Visitors who have placed an order directly after registration:').' '.(int)($totalBuyers).($totalRegistrations ? ' ('.number_format(100*$totalBuyers/($totalRegistrations), 2).'%)' : '').' '.$this->l('Visitors who have placed an order directly after registration:').' '.(int)($totalBuyers).($totalRegistrations ? ' ('.number_format(100*$totalBuyers/($totalRegistrations), 2).'%)' : '').'
@@ -117,8 +117,8 @@ class StatsRegistrations extends ModuleGraph
<p>'.$this->l('Total customer accounts:').' '.$totalRegistrations.'</p> <p>'.$this->l('Total customer accounts:').' '.$totalRegistrations.'</p>
<div>'.$this->engine(array('type' => 'line')).'</div> <div>'.$this->engine(array('type' => 'line')).'</div>
<p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p> <p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p>
</fieldset><br /> </div><br />
<fieldset><legend><img src="../img/admin/comment.gif" /> '.$this->l('Guide').'</legend> <div class="blocStats"><h2 class="icon-guide">'.$this->l('Guide').'</legend>
<h2>'.$this->l('Number of customer accounts created').'</h2> <h2>'.$this->l('Number of customer accounts created').'</h2>
<p>'.$this->l('The total number of accounts created is not in itself important information. However, it is beneficial to analyze the number created over time. This will indicate whether or not things are on the right track.').'</p> <p>'.$this->l('The total number of accounts created is not in itself important information. However, it is beneficial to analyze the number created over time. This will indicate whether or not things are on the right track.').'</p>
<br /><h3>'.$this->l('How to act on the registrations\' evolution?').'</h3> <br /><h3>'.$this->l('How to act on the registrations\' evolution?').'</h3>
@@ -132,7 +132,7 @@ class StatsRegistrations extends ModuleGraph
<li>'.$this->l('Design and user-friendliness are more important than ever: an ill-chosen or hard-to-follow graphical theme can turn off visitors. You should strike the right balance between an innovative design and letting visitors move around easily. Proper spelling and clarity also inspire more customer confidence in your shop.').'</li> <li>'.$this->l('Design and user-friendliness are more important than ever: an ill-chosen or hard-to-follow graphical theme can turn off visitors. You should strike the right balance between an innovative design and letting visitors move around easily. Proper spelling and clarity also inspire more customer confidence in your shop.').'</li>
</ul> </ul>
</p><br /> </p><br />
</fieldset>'; </div>';
return $this->_html; return $this->_html;
} }
+4 -4
View File
@@ -67,7 +67,7 @@ class StatsSales extends ModuleGraph
$this->csvExport(array('type' => 'pie', 'option' => '3-'.(int)Tools::getValue('id_country'))); $this->csvExport(array('type' => 'pie', 'option' => '3-'.(int)Tools::getValue('id_country')));
$this->_html = ' $this->_html = '
<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>
<form action="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'" method="post" style="float: right; margin-left: 10px;"> <form action="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'" method="post" style="float: right; margin-left: 10px;">
<select name="id_country"> <select name="id_country">
<option value="0"'.((!Tools::getValue('id_order_state')) ? ' selected="selected"' : '').'>'.$this->l('All').'</option>'; <option value="0"'.((!Tools::getValue('id_order_state')) ? ' selected="selected"' : '').'>'.$this->l('All').'</option>';
@@ -91,15 +91,15 @@ class StatsSales extends ModuleGraph
</p><br /> </p><br />
'.($totals['orderCount'] ? $this->engine(array('type' => 'pie', 'option' => '3-'.(int)Tools::getValue('id_country'))) : $this->l('No orders for this period.')).'</center> '.($totals['orderCount'] ? $this->engine(array('type' => 'pie', 'option' => '3-'.(int)Tools::getValue('id_country'))) : $this->l('No orders for this period.')).'</center>
<p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=3"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p> <p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=3"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p>
</fieldset> </div >
<br /> <br />
<fieldset><legend><img src="../img/admin/comment.gif" /> '.$this->l('Guide').'</legend> <div class="blocStats"><h2 class="icon-guide">'.$this->l('Guide').'</h2>
<h2>'.$this->l('Various order statuses').'</h2> <h2>'.$this->l('Various order statuses').'</h2>
<p> <p>
'.$this->l('In your back-office, you can find the following order statuses : Awaiting check payment, Payment accepted, Preparation in progress, Shipping, Delivered, Cancelled, Refund, Payment error, Out of stock, and Awaiting bank wire payment.').'<br /> '.$this->l('In your back-office, you can find the following order statuses : Awaiting check payment, Payment accepted, Preparation in progress, Shipping, Delivered, Cancelled, Refund, Payment error, Out of stock, and Awaiting bank wire payment.').'<br />
'.$this->l('Statuses cannot be removed from the back-office, but you have the option to add more.').' '.$this->l('Statuses cannot be removed from the back-office, but you have the option to add more.').'
</p> </p>
</fieldset>'; </div >';
return $this->_html; return $this->_html;
} }
+3 -3
View File
@@ -98,7 +98,7 @@ class StatsSearch extends ModuleGraph
$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($this->_query.ModuleGraph::getDateBetween().$this->_query2); $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($this->_query.ModuleGraph::getDateBetween().$this->_query2);
$this->_html = ' $this->_html = '
<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend>'; <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>';
$table = '<div style="overflow-y: scroll; height: 600px;"> $table = '<div style="overflow-y: scroll; height: 600px;">
<table class="table" border="0" cellspacing="0" cellspacing="0"> <table class="table" border="0" cellspacing="0" cellspacing="0">
<thead> <thead>
@@ -125,8 +125,8 @@ class StatsSearch extends ModuleGraph
<p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p> <p><a href="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'&export=1"><img src="../img/admin/asterisk.gif" />'.$this->l('CSV Export').'</a></p>
<br class="clear" />'.$table; <br class="clear" />'.$table;
else else
$this->_html .= '<p><strong>'.$this->l('No keywords searched more than once found.').'</strong></p>'; $this->_html .= '<p>'.$this->l('No keywords searched more than once found.').'</p>';
$this->_html .= '</fieldset>'; $this->_html .= '</div>';
return $this->_html; return $this->_html;
} }
+2 -2
View File
@@ -84,7 +84,7 @@ class StatsStock extends Module
$this->html .= ' $this->html .= '
<script type="text/javascript">$(\'#calendar\').slideToggle();</script> <script type="text/javascript">$(\'#calendar\').slideToggle();</script>
<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->l('Stock value').'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->l('Stock value').'</h2>
<form action="'.$ru.'" method="post"> <form action="'.$ru.'" method="post">
<input type="hidden" name="submitCategory" value="1" /> <input type="hidden" name="submitCategory" value="1" />
'.$this->l('Category').' : <select name="statsstock_id_category" onchange="this.form.submit();"> '.$this->l('Category').' : <select name="statsstock_id_category" onchange="this.form.submit();">
@@ -139,7 +139,7 @@ class StatsStock extends Module
<td>'.Tools::displayPrice($rollup['stockvalue'], $currency).'</td> <td>'.Tools::displayPrice($rollup['stockvalue'], $currency).'</td>
</tr> </tr>
</table> </table>
<p>* '.$this->l('Average price when the product has attributes.').'</p></fieldset>'; <p>* '.$this->l('Average price when the product has attributes.').'</p></div>';
return $this->html; return $this->html;
} }
+4 -4
View File
@@ -85,7 +85,7 @@ class StatsVisits extends ModuleGraph
if (Tools::getValue('export')) if (Tools::getValue('export'))
$this->csvExport(array('layers' => 2, 'type' => 'line', 'option' => 3)); $this->csvExport(array('layers' => 2, 'type' => 'line', 'option' => 3));
$this->html = ' $this->html = '
<fieldset><legend><img src="../modules/'.$this->name.'/logo.gif" /> '.$this->displayName.'</legend> <div class="blocStats"><h2 class="icon-'.$this->name.'">'.$this->displayName.'</h2>
<p> <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.').' <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.').' '.$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.').'
@@ -94,9 +94,9 @@ class StatsVisits extends ModuleGraph
<p>'.$this->l('Total visits:').' '.$totalVisits.'</p> <p>'.$this->l('Total visits:').' '.$totalVisits.'</p>
<p>'.$this->l('Total visitors:').' '.$totalGuests.'</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>' : '').' '.($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> </div>
<br /> <br />
<fieldset><legend><img src="../img/admin/comment.gif" /> '.$this->l('Guide').'</legend> <div class="blocStats"><h2 class="icon-guide">'.$this->l('Guide').'</h2>
<h2>'.$this->l('Determine the interest of a visit').'</h2> <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 /> '.$this->l('The visitors\' evolution graph strongly resembles the visits\' graph, but provides additional information:').'<br />
<ul> <ul>
@@ -104,7 +104,7 @@ class StatsVisits extends ModuleGraph
<li>'.$this->l('Otherwise, the conclusion is not so simple. The problem can be aesthetic or ergonomic, or else the offer is not sufficient. It is also possible that these visitors mistakenly came here without particular interest for your shop; this phenomenon often happens with the search engines.').'</li> <li>'.$this->l('Otherwise, the conclusion is not so simple. The problem can be aesthetic or ergonomic, or else the offer is not sufficient. It is also possible that these visitors mistakenly came here without particular interest for your shop; this phenomenon often happens with the search engines.').'</li>
</ul> </ul>
'.$this->l('This information is mostly qualitative: you have to determine the interest of a disjointed visit.').'<br /> '.$this->l('This information is mostly qualitative: you have to determine the interest of a disjointed visit.').'<br />
</fieldset>'; </div>';
return $this->html; return $this->html;
} }