$render=explode(" ",$_POST['partial_render']);
if($_POST['source']=='tbl'){
$_SESSION['inicio']=$_POST['tbl_first'];
$_SESSION['paginas']=$paginas=$_POST['tbl_rows'];
}
if(isset($_SESSION['inicio'])){
//valor normal
}else{
$_SESSION['inicio']='0';
}
if(isset($_SESSION['paginas'])){
//valor normal
}else{
$_SESSION['paginas']='10';
}
if($render[0]=='atual' or $render[0]=='tbl'){
$atual = " LIMIT ".$_SESSION['inicio'].',' .$_SESSION['paginas'];
}else{
$atual = '';
}
$result = "SELECT * FROM produtos p INNER JOIN categorias c ON c.id_categoria=p.categoria".$atual;
$result = $pdo->query($result);
if($_POST['source']=='tbl'){
$resposta='';
while ($linha = $result->fetch(PDO::FETCH_ASSOC)){
$resposta.='
<tr data-ri="'.$linha['id_produto'].'" class="ui-widget-content ui-datatable-even" role="row">
<td role="gridcell" class="">'.$linha['codigo'].'</td>
<td role="gridcell" class="">'.$linha['produto'].'</td>
<td role="gridcell" class="p-text-center">'.$linha['categoria'].'</td>
<td role="gridcell" class="p-text-right">'.$linha['quantidade'].'</td>
<td role="gridcell" class="p-text-right">'.$linha['preco'].'</td>
</tr>';
}
}
if($_POST['source']=='xls'){
$render[0]='vazio';
$resposta='vazio';
$tasks = array();
while ($row = $result->fetch(PDO::FETCH_ASSOC)){
$tasks[]=$row;
}
$conteudo='';
$heading = false;
if(!empty($tasks))
foreach($tasks as $row) {
if(!$heading) {
$conteudo.= implode("\t", array_keys($row)) . "\n";
$heading = true;
}
$conteudo.= implode("\t", array_values($row)) . "\n";
}
$eval='DinarteCoelho.download(\'data:application/vnd.ms-excel;base64,'.base64_encode($conteudo).'\', \'application/vnd.ms-excel\', \'products.xls\', \'dinartecoelho.download_ui_data_dataexporter_basic.php\')';
}
if($_POST['source']=='xlsx'){
$render[0]='vazio';
$resposta='vazio';
$tasks = array();
while ($row = $result->fetch(PDO::FETCH_ASSOC)){
$tasks[]=$row;
}
$conteudo='';
$heading = false;
if(!empty($tasks))
foreach($tasks as $row) {
if(!$heading) {
$conteudo.= implode("\t", array_keys($row)) . "\n";
$heading = true;
}
$conteudo.= implode("\t", array_values($row)) . "\n";
}
$eval='DinarteCoelho.download(\'data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64,'.base64_encode($conteudo).'\', \'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\', \'products.xlsx\', \'dinartecoelho.download_ui_data_dataexporter_basic.php\')';
}
if($_POST['source']=='pdf'){
$render[0]='vazio';
$resposta='vazio';
include_once '../../../pdf-php-master/src/Cezpdf.php';
$pdf = new CezPDF('a4');
$pdf->selectFont('Helvetica');
$data = array();
while ($row = $result->fetch(PDO::FETCH_ASSOC)){
$data[]=$row;
}
$pdf->ezText("\n<b>Tabela de Produtos</b>", 12);
$pdf->ezText("<b>Dados da consulta</b>", 10);
$pdf->ezTable($data, $cols, '', ['showHeadings' => 1, 'shaded' => 1, 'gridlines' => 31, 'cols' => 1, 'innerLineThickness' => 1, 'outerLineThickness' => 1]);
$eval='DinarteCoelho.download(\'data:application/pdf;base64,'.base64_encode($pdf->output()).'\', \'application/pdf\', \'products.pdf\', \'dinartecoelho.download_ui_data_dataexporter_basic.php\')';
}
if($_POST['source']=='csv'){
$render[0]='vazio';
$resposta='vazio';
$tasks = array();
while ($row = $result->fetch(PDO::FETCH_ASSOC)){
$tasks[]=$row;
}
$conteudo='';
$heading = false;
if(!empty($tasks))
foreach($tasks as $row) {
if(!$heading) {
$conteudo.= implode("\t", array_keys($row)) . "\n";
$heading = true;
}
$conteudo.= implode("\t", array_values($row)) . "\n";
}
$conteudo = str_replace(' ',';',$conteudo);
$eval='DinarteCoelho.download(\'data:text/csv; charset=UTF-8;base64,'.base64_encode($conteudo).'\', \'text/csv; charset=UTF-8\', \'products.csv\', \'dinartecoelho.download_ui_data_dataexporter_basic.php\')';
}
if($_POST['source']=='xml'){
$render[0]='vazio';
$resposta='vazio';
while ($row = $result->fetch(PDO::FETCH_ASSOC)){
$produtosArray[]=$row;
}
$doc = new DOMDocument('1.0');
$doc->formatOutput = true;
$root = $doc->createElement('produtos');
$root = $doc->appendChild($root);
for($i=0; $i<count($produtosArray); $i++){
$produtoId = $produtosArray[$i]['id_produto'];
$produtoFoto = $produtosArray[$i]['foto'];
$produtoName = $produtosArray[$i]['produto'];
$produtoCodigo = $produtosArray[$i]['codigo'];
$produtoDescricao = $produtosArray[$i]['descricao'];
$produtoCategoria = $produtosArray[$i]['categoria'];
$produtoPreco = $produtosArray[$i]['preco'];
$produtoEstoque = $produtosArray[$i]['estoque'];
$produtoQuantidade = $produtosArray[$i]['quantidade'];
$produto = $doc->createElement('produto');
$produto->setAttribute('id', $produtoId);
$produto = $root->appendChild($produto);
$name = $doc->createElement('nome', $produtoName);
$produto->appendChild($name);
$codigo = $doc->createElement('codigo', $produtoCodigo);
$produto->appendChild($codigo);
$foto = $doc->createElement('foto', $produtoFoto);
$produto->appendChild($foto);
$descricao = $doc->createElement('descricao', $produtoDescricao);
$produto->appendChild($descricao);
$categoria = $doc->createElement('categoria', $produtoCategoria);
$produto->appendChild($categoria);
$preco = $doc->createElement('preco', $produtoPreco);
$produto->appendChild($preco);
$estoque = $doc->createElement('Estoque', $produtoEstoque);
$produto->appendChild($estoque);
$quantidade = $doc->createElement('quantidade', $produtoQuantidade);
$produto->appendChild($quantidade);
}
$eval='DinarteCoelho.download(\'data:text/xml; charset=UTF-8;base64,'.base64_encode($doc->saveXML()).'\', \'text/xml; charset=UTF-8\', \'products.xml\', \'dinartecoelho.download_ui_data_dataexporter_basic.php\')';
}
if($_POST['source']=='txt'){
$render[0]='vazio';
$resposta='vazio';
$tasks = array();
while ($row = $result->fetch(PDO::FETCH_ASSOC)){
$tasks[]=$row;
}
$conteudo='';
$heading = false;
if(!empty($tasks))
foreach($tasks as $row) {
if(!$heading) {
$conteudo.= implode("\t", array_keys($row)) . "\n";
$heading = true;
}
$conteudo.= implode("\t", array_values($row)) . "\n";
}
$conteudo = str_replace(' ','|',$conteudo);
$eval='DinarteCoelho.download(\'data:text/plain; charset=UTF-8;base64,'.base64_encode($conteudo).'\', \'text/plain; charset=UTF-8\', \'products.txt\', \'dinartecoelho.download_ui_data_dataexporter_basic.php\')';
}
dc.cw("DataTable", "widget_tbl", {
id: "tbl"
, paginator: {
id: ['paginacao_topo', 'paginacao_base']
, rows: <?php echo $num_pag;?>
, rowCount: <?php echo $total_rgtr;?>
, page: 0
, currentPageTemplate: '({currentPage} of {totalPages})'
}
, groupColumnIndexes: []
, disableContextMenuIfEmpty: false
});