예제 #1
0
        $filter['f_sbr'] = __paramInit('int', 'f_sbr', null);
        $filter['f_login'] = __paramInit('string_no_slashes', 'f_login', null);
        $filter['f_akkr'] = __paramInit('int', 'f_akkr', null);
        $filter['f_sum'] = __paramInit('int', 'f_sum', null);
        $filter['f_status'] = __paramInit('int', 'f_status', null, -1);
        $filter['f_orderby'] = __paramInit('string_no_slashes', 'f_orderby', null, 'sbr');
        $filter['f_desc'] = __paramInit('bool', 'f_desc', null, false);
        $filter['f_actdate'] = __paramInit('string_no_slashes', 'f_actdate', null);
        if (preg_match('#\\d?\\d.\\d?\\d.\\d\\d\\d\\d#', $filter['f_actdate'])) {
            $filter['f_actdate_pg'] = preg_replace('#(\\d?\\d).(\\d?\\d).(\\d\\d\\d\\d)#', '$3-$2-$1', $filter['f_actdate']);
        }
        $filter['f_invdate'] = __paramInit('string_no_slashes', 'f_invdate', null);
        if (preg_match('#\\d?\\d.\\d?\\d.\\d\\d\\d\\d#', $filter['f_invdate'])) {
            $filter['f_invdate_pg'] = preg_replace('#(\\d?\\d).(\\d?\\d).(\\d\\d\\d\\d)#', '$3-$2-$1', $filter['f_invdate']);
        }
        $pagesCount = $sbr->getInvoicesPagesCount($filter);
        $page = __paramInit('int', 'page', null, 1);
        if ($pagesCount > 0 && $page > $pagesCount) {
            header_location_exit('/404.php');
        }
        // формируем строку параметров
        $filterParams = '';
        foreach ($filter as $key => $value) {
            $filterParams .= '&' . $key . '=' . $value;
        }
        $orderLink = './?site=invoice' . $filterParams;
        $filter['f_limit'] = sbr_adm::INVOICES_PAGE_SIZE;
        $filter['f_offset'] = ($page - 1) * $filter['f_limit'];
        $data = $sbr->getInvoices($filter);
        break;
}