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>'; }
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; }