This will improve loading times on large transaction tables. Thanks @feeleep75 for helping with this one. * Do not use SQL_CALC_NUM_ROWS since it will do a full table scan * Allow admins to disable account transaction summaries to speed up page loads on large tables * added new admin setting under system to Disable TX Summaries Fixes #1065 once merged
43 lines
1.7 KiB
PHP
43 lines
1.7 KiB
PHP
<?php
|
|
|
|
// Make sure we are called from index.php
|
|
if (!defined('SECURITY')) die('Hacking attempt');
|
|
|
|
// Check user to ensure they are admin
|
|
if (!$user->isAuthenticated() || !$user->isAdmin($_SESSION['USERDATA']['id'])) {
|
|
header("HTTP/1.1 404 Page not found");
|
|
die("404 Page not found");
|
|
}
|
|
|
|
if (!$smarty->isCached('master.tpl', $smarty_cache_key)) {
|
|
$iLimit = 30;
|
|
$debug->append('No cached version available, fetching from backend', 3);
|
|
empty($_REQUEST['start']) ? $start = 0 : $start = $_REQUEST['start'];
|
|
$aTransactions = $transaction->getTransactions($start, @$_REQUEST['filter'], $iLimit);
|
|
$aTransactionTypes = $transaction->getTypes();
|
|
if (!$aTransactions) $_SESSION['POPUP'][] = array('CONTENT' => 'Could not find any transaction', 'TYPE' => 'errormsg');
|
|
if (!$setting->getValue('disable_transactionsummary')) {
|
|
$aTransactionSummary = $transaction->getTransactionSummary();
|
|
$smarty->assign('SUMMARY', $aTransactionSummary);
|
|
}
|
|
$smarty->assign('LIMIT', $iLimit);
|
|
$smarty->assign('TRANSACTIONS', $aTransactions);
|
|
$smarty->assign('TRANSACTIONTYPES', $aTransactionTypes);
|
|
$smarty->assign('TXSTATUS', array('' => '', 'Confirmed' => 'Confirmed', 'Unconfirmed' => 'Unconfirmed', 'Orphan' => 'Orphan'));
|
|
$smarty->assign('DISABLE_TRANSACTIONSUMMARY', $setting->getValue('disable_transactionsummary'));
|
|
} else {
|
|
$debug->append('Using cached page', 3);
|
|
}
|
|
|
|
// Gernerate the GET URL for filters
|
|
if (isset($_REQUEST['filter'])) {
|
|
$strFilters = '';
|
|
foreach (@$_REQUEST['filter'] as $filter => $value) {
|
|
$filter = "filter[$filter]";
|
|
$strFilters .= "&$filter=$value";
|
|
}
|
|
$smarty->assign('FILTERS', $strFilters);
|
|
}
|
|
$smarty->assign('CONTENT', 'default.tpl');
|
|
?>
|