-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathprodutos.php
137 lines (121 loc) · 8.03 KB
/
produtos.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
<?php
include("global.php");
include("tabletemplate.php");
include_once ("./backend/conexao.php");
?>
<!DOCTYPE html>
<html :class="{ 'theme-dark': dark }" x-data="data()" lang="pt-BR">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Produtos - CoopAF</title>
<link
href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap"
rel="stylesheet"
/>
<link rel="stylesheet" href="./assets/css/tailwind.output.css" /><link rel="stylesheet" href="./assets/css/corescustomizadas.css" />
<link rel="stylesheet" href="./assets/css/fontawesome/css/all.css">
<script
src="https://cdn.jsdelivr.net/gh/alpinejs/[email protected]/dist/alpine.min.js"
defer
></script>
<script src="./assets/js/init-alpine.js"></script>
<!-- <script src="./assets/js/filter.js"></script> -->
</head>
<body>
<div class="flex h-screen bg-gray-50 dark:bg-gray-900" :class="{ 'overflow-hidden': isSideMenuOpen}">
<?php
include("./sidebar.php");
?>
<div class="flex flex-col flex-1">
<?php include("header.php") ?>
<main class="h-full pb-16 overflow-y-auto">
<div class="container px-6 mx-auto grid">
<h2 class="my-6 text-2xl font-semibold text-gray-700 dark:text-gray-200"> Produtos </h2>
<a class="flex items-center justify-between p-4 mb-8 text-sm font-semibold text-verdecoopaf-100 bg-verdecoopaf-600 rounded-lg shadow-md focus:outline-none focus:shadow-outline-verdecoopaf" href="produtos_adicionar.php">
<div class="flex items-center">
<i class="fas fa-pumpkin w-5 h-4 mr-2"></i>
<span>Adicionar novo produto</span>
</div>
</a>
<!-- <input type="button" @click="toggleProfileMenu" @keydown.escape="closeProfileMenu" aria-label="Profile" aria-haspopup="true" id="openSearchPageBtn"> -->
<!-- <input type="button"
class="align-middle rounded-full focus:shadow-outline-verdecoopaf focus:outline-none"
@click="toggleProfileMenu"
@keydown.escape="closeProfileMenu"
aria-label="Account"
aria-haspopup="true">
<span style="position: relative" class="mb-4 text-gray-700 dark:text-gray-400">
Filtrar produtor:
<input class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-verdecoopaf-400 focus:outline-none focus:shadow-outline-verdecoopaf dark:text-gray-300 dark:focus:shadow-outline-gray form-input" placeholder="Pesquise um nome">
<template x-if="isProfileMenuOpen">
<ul
x-transition:leave="transition ease-in duration-150"
x-transition:leave-start="opacity-100"
x-transition:leave-end="opacity-0"
@click.away="closeProfileMenu"
@keydown.escape="closeProfileMenu"
class="absolute left-0 w-56 p-2 mt-2 space-y-2 text-gray-600 bg-white border border-gray-100 rounded-md shadow-md dark:border-gray-700 dark:text-gray-300 dark:bg-gray-700"
aria-label="submenu" id="filterlist">
</ul>
</template>
</span> -->
<?php
// se o $_GET["p"] não esta vazio, coloca ele na variavel, se nao, define numero da pagina como 1
$numDaPag = !empty($_GET["p"])?intval($_GET["p"]):1;
// altere esses dados ↓↓↓
$itensPorPag = 15;
$queryDados = "SELECT produto_cod, produto_nome, produto_quantidadeemestoque, produto_precoantigo, produto_tipocontagem, produtor_nome from produto join produtor using(produtor_cod) limit $itensPorPag offset ".($numDaPag-1)*$itensPorPag;
$queryQtdDeLinhas = "SELECT count(produto_cod) from produto";
// não precisa alterar essa linha ↓↓↓
$qtdDeLinhas = mysqli_fetch_array(mysqli_query($con, $queryQtdDeLinhas))[0];
tabela(array(
"titulo" => "Produtos",
"nomeColunas" => array(
"Código",
"Produto",
"Produtor",
"Quantidade em estoque",
"Preço",
"Ações"
),
"templateColunas" => array(
function($exibe){return "<span>$exibe[produto_cod]</span>";},
function($exibe){return "<span>$exibe[produto_nome]</span>";},
function($exibe){return "<span>$exibe[produtor_nome]</span>";},
function($exibe){return "<span>$exibe[produto_quantidadeemestoque] $exibe[produto_tipocontagem]</span>";},
function($exibe){
return formatPreco($exibe["produto_precoantigo"]);
},
function($exibe){
return "
<div class='flex items-center space-x-4 text-sm'>
<a href='produtos_editar.php?cod=$exibe[produto_cod]'>
<button class='flex items-center justify-between px-2 py-2 text-sm font-medium leading-5 text-verdecoopaf-600 rounded-lg dark:text-gray-400 focus:outline-none focus:shadow-outline-gray' aria-label='Edit'>
<svg class='w-5 h-5' aria-hidden='true' fill='currentColor' viewBox='0 0 20 20'>
<path d='M13.586 3.586a2 2 0 112.828 2.828l-.793.793-2.828-2.828.793-.793zM11.379 5.793L3 14.172V17h2.828l8.38-8.379-2.83-2.828z'></path>
</svg>
</button>
</a>
<a href='produtos_excluir.php?cod=$exibe[produto_cod]'>
<button class='flex items-center justify-between px-2 py-2 text-sm font-medium leading-5 text-verdecoopaf-600 rounded-lg dark:text-gray-400 focus:outline-none focus:shadow-outline-gray' aria-label='Delete'>
<svg class='w-5 h-5' aria-hidden='true' fill='currentColor' viewBox='0 0 20 20'>
<path fill-rule='evenodd' d='M9 2a1 1 0 00-.894.553L7.382 4H4a1 1 0 000 2v10a2 2 0 002 2h8a2 2 0 002-2V6a1 1 0 100-2h-3.382l-.724-1.447A1 1 0 0011 2H9zM7 8a1 1 0 012 0v6a1 1 0 11-2 0V8zm5-1a1 1 0 00-1 1v6a1 1 0 102 0V8a1 1 0 00-1-1z' clip-rule='evenodd'></path>
</svg>
</button>
</a>
</div>
";},
),
"dados" => mysqli_query($con, $queryDados),
"numDaPag" => $numDaPag,
"qtdDeLinhas" => $qtdDeLinhas,
"itensPorPag" => $itensPorPag
));
?>
</div>
</main>
</div>
</div>
</body>
</html>