コード例 #1
0
function getTableHeader(stdClass $fieldsFilter, $atributos)
{
    $return = $checked = '';
    if ($atributos['checked'] == 'checked') {
        $checked = '<th><input type="checkbox" onclick="checkAll(\'frm-' . $atributos['id'] . '\', this);" value="all" name="checkAllSelected"></th>';
    }
    if (!empty($fieldsFilter->head['campos'])) {
        $colspans = getColspanRow(count($fieldsFilter->head['campos']), count($fieldsFilter->body['campos']));
        $return .= '<tr>';
        foreach ($fieldsFilter->head['campos'] as $fieldName) {
            $colspan = array_shift($colspans['head']);
            $return .= "<th colspan=\"{$colspan}\" fieldname=\"{$fieldName->fieldName}\">{$fieldName->headFieldName}</th>";
        }
        $return .= '</tr>';
        $return .= '<tr>';
        foreach ($fieldsFilter->body['campos'] as $fieldName) {
            $colspan = array_shift($colspans['body']);
            $return .= "<th colspan=\"{$colspan}\" fieldname=\"{$fieldName->fieldName}\">{$fieldName->headFieldName}</th>";
        }
        $return .= '</tr>';
    } else {
        $return .= '<tr>';
        $return .= $checked;
        foreach ($fieldsFilter->body['campos'] as $fieldName) {
            $return .= "<th fieldname=\"{$fieldName->fieldName}\">{$fieldName->headFieldName}</th>";
        }
        $return .= '</tr>';
    }
    return '<thead>' . $return . '</thead>';
}
コード例 #2
0
function getTableBody($result, stdClass $fieldsFilter, array $atributos, $totalRegistros, $SUMMARY_COLS_CSS = null)
{
    ## DEFINIENDO la variable GET pagina-start para la url de los registros
    $paginador = explode(',', $atributos['paginador']);
    ////CONSTRUYE PARTE DE LA URL DEL PAGINADOR
    $urlSeg = explode('?', $paginador[1]);
    $urlSegA = $urlSeg[1];
    $urlSegB = explode('=', $urlSegA);
    $urlSegUrl = $urlSegB[0];
    $paginaStart = is_int((int) get('' . $urlSegUrl . 'pagina-start')) && (int) get('' . $urlSegUrl . 'pagina-start') > 0 ? get('' . $urlSegUrl . 'pagina-start') : 1;
    ## FIN DEFINICIÓN la variable GET pagina-start para la url de los registros
    $return = $footer = $html = '';
    $groupId = 0;
    if (isResult($result) && !empty($fieldsFilter->head['campos'])) {
        $total = 0;
        while ($row = mysql_fetch_array($result)) {
            if ($groupId != $row['groupId']) {
                $colspans = getColspanRow(count($fieldsFilter->head['campos']), count($fieldsFilter->body['campos']));
                if ($groupId > 0) {
                    $footer = getTableFooter($fieldsFilter->body['campos'], $atributos['fieldTotal'], $total, '', '');
                }
                $groupId = $row['groupId'];
                $dataRowHead = getDataRow($row, $fieldsFilter->head['campos'], $fieldsFilter->head['args'], $colspans['head']);
                $dataRowBody = getDataRow($row, $fieldsFilter->body['campos'], $fieldsFilter->body['args'], $colspans['body'], $atributos['fieldTotal'], $SUMMARY_COLS_CSS);
                $eventHead = !empty($dataRowHead['args']) && !empty($fieldsFilter->head['url']) ? "onclick=sendRow(this,\"{$fieldsFilter->head['url']}&{$dataRowHead['args']}\",\"{$fieldsFilter->head['panel']}\");" : '';
                $html .= "{$footer}<tr {$eventHead} >{$dataRowHead['html']}</tr>";
                $total = $dataRowBody['value'];
                $eventBody = !empty($dataRowBody['args']) && !empty($fieldsFilter->body['url']) ? "onclick=sendRow(this,\"{$fieldsFilter->body['url']}&pagina-start={$paginaStart}&{$dataRowBody['args']}\",\"{$fieldsFilter->body['panel']}\");" : '';
                $html .= "<tr {$eventBody} >{$dataRowBody['html']}</tr>";
            } else {
                $colspans = getColspanRow(count($fieldsFilter->head['campos']), count($fieldsFilter->body['campos']));
                $dataRowBody = getDataRow($row, $fieldsFilter->body['campos'], $fieldsFilter->body['args'], $colspans['body'], $atributos['fieldTotal'], $SUMMARY_COLS_CSS);
                $total += $dataRowBody['value'];
                $eventBody = !empty($dataRowBody['args']) ? "onclick=sendRow(this,\"{$fieldsFilter->body['url']}&pagina-start={$paginaStart}&{$dataRowBody['args']}\",\"{$fieldsFilter->body['panel']}\");" : '';
                $html .= "<tr {$eventBody} >{$dataRowBody['html']}</tr>";
            }
        }
        $footer = getTableFooter($fieldsFilter->body['campos'], $atributos['fieldTotal'], $total, '', '');
        //            var_dump($total);
        $return = '<tbody>' . $html . $footer . '</tbody>';
    } elseif (isResult($result) && !empty($fieldsFilter->body['campos'])) {
        $total = 0;
        while ($row = mysql_fetch_array($result)) {
            $checked = getChecked($row, $atributos['checked']);
            $colspans = getColspanRow(count($fieldsFilter->head['campos']), count($fieldsFilter->body['campos']));
            $dataRowBody = getDataRow($row, $fieldsFilter->body['campos'], $fieldsFilter->body['args'], $colspans['body'], $atributos['fieldTotal'], $SUMMARY_COLS_CSS);
            $eventBody = !empty($dataRowBody['args']) && !empty($fieldsFilter->body['url']) ? "onclick=sendRow(this,\"{$fieldsFilter->body['url']}&pagina-start={$paginaStart}&{$dataRowBody['args']}\",\"{$fieldsFilter->body['panel']}\");" : '';
            $html .= "<tr {$eventBody} >{$checked}{$dataRowBody['html']}</tr>";
            $total += $dataRowBody['value'];
        }
        $footer = getTableFooter($fieldsFilter->body['campos'], $atributos['fieldTotal'], $total, $atributos['checked'], 'tfoot', $totalRegistros);
        $return = '<tbody>' . $html . '</tbody>' . $footer;
    }
    return $return;
}