-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcalculo_carrinho.ajax.php
138 lines (49 loc) · 2.48 KB
/
calculo_carrinho.ajax.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
<?php
include_once 'xajax_core/xajax.inc.php';
require_once 'wcm/config.php';
require_once 'wcm/model/bancodedados.class.php';
require_once 'wcm/model/produto.class.php';
require_once 'wcm/model/data.class.php';
function calculaValorQuantidade($idProduto, $quantidade, $modal = true) {
$objResponse=new xajaxResponse();
$objBd = new BancodeDados();
$objProduto = new Produto();
$_SESSION['carrinho'][$idProduto]['quantidade'] = $quantidade;
$objProduto->obterProduto($idProduto);
if ($objProduto->getQuantidade() < $quantidade) {
$_SESSION['carrinho'][$idProduto]['quantidade'] = $quantidade = $objProduto->getQuantidade();
$_SESSION['mensagem_estoque'] = 'Quantidade do produto em estoque: ' . $objProduto->getQuantidade();
}
$valorTotalProduto = $valorTotalCarrinho = ($quantidade * $objProduto->getValor());
$valorTotalProduto = 'R$ ' . Data::formataMoeda($valorTotalProduto);
foreach($_SESSION['carrinho'] as $key => $value) {
if ($value['produto'] == $idProduto) {
continue;
}
$objProduto = new Produto();
$objProduto->obterProduto($value['produto']);
$valorTotalCarrinho += ($objProduto->getValor() * $value['quantidade']);
}
$valorSubTotalCarrinho = 'R$ ' . Data::formataMoeda($valorTotalCarrinho);
if (isset($_SESSION['fechamento']['valorFrete'])) {
$valorTotalCarrinho += Data::formataMoedaBD($_SESSION['fechamento']['valorFrete']);
}
$_SESSION['fechamento']['valorTotal'] = $valorTotalCarrinho;
$valorTotalCarrinho = 'R$ ' . Data::formataMoeda($valorTotalCarrinho);
$script = "document.getElementById('valorTotalProdutoModal$idProduto').innerHTML='$valorTotalProduto';";
$script .= "document.getElementById('valorTotalCarrinhoModal').innerHTML='Total: $valorTotalCarrinho';";
if (!$modal) {
$script .= "document.getElementById('quantidadeModal$idProduto').value='$quantidade';";
$script .= "document.getElementById('valorTotalProduto$idProduto').innerHTML='$valorTotalProduto';";
$script .= "document.getElementById('valorSubtotalCarrinho').innerHTML='$valorSubTotalCarrinho';";
$script .= "document.getElementById('valorTotalCarrinho').innerHTML='$valorTotalCarrinho';";
}
$objResponse->script($script);
return $objResponse;
}
/*** a new xajax object ***/
$xajax = new xajax();
/*** register the PHP functions ***/
$xajax->register(XAJAX_FUNCTION, 'calculaValorQuantidade');
$xajax->processRequest();
?>