$path = CONF_ADMIN_FILE . '?m=logs&s=payments&'; /** отбор записей **/ if (!empty($_GET['do']) && 'filter' === $_GET['do']) { $retFields = array('order_id' => !empty($_GET['order_id']) ? $_GET['order_id'] : false, 'records' => !empty($_GET['records']) && validate::checkNaturalNumber($_GET['records']) ? validate::checkNaturalNumber($_GET['records']) : 30); /////////////////////////////////////////////////////////////// // Проверка данных, полученных из формы и формирование запроса /////////////////////////////////////////////////////////////// /** ORDER ID **/ !empty($retFields['order_id']) ? $strWhere .= " AND order_id LIKE " . secure::escQuoteData($retFields['order_id']) : null; /** текущий обработанный URL **/ $path .= 'do=filter&order_id=' . $retFields['order_id'] . '&records=' . $retFields['records'] . '&'; } /** смещение, всегда 0 (затем берется из $_GET) **/ $offset = !empty($_GET['offset']) && validate::checkNaturalNumber($_GET['offset']) ? validate::checkNaturalNumber($_GET['offset']) : 0; $strLimit = array('strLimit' => $offset . ',' . $retFields['records'], 'calcRows' => true); if ($arrLogsPayments = $payments->dbGetLogPayments($strWhere, false, $strLimit, false)) { foreach ($arrLogsPayments as $key => &$value) { // вычисляем имя файла $fName = strtolower($value['payment_type']) . '_' . date('Y-m-d', strtotime($value['date'])) . '_payment.log'; $arrLogsPayments[$key]['file'] = file_exists('core/data/log/' . $fName) ? $fName : false; } } /** формируем страницы **/ $allRecords = $payments->dbCntLogPayments(); // получаем общее количество строк $strPages = strings::generatePage($allRecords, $offset, $retFields['records'], $path, true); // формируем странциы $smarty->assignByRef('arrLogsPayments', $arrLogsPayments); $smarty->assignByRef('allRecords', $allRecords); //передаем в шаблон общее количество записей $smarty->assignByRef('strPages', $strPages);