Commit b1a79183 authored by Aldo's avatar Aldo 🐛

Merge branch 'develop' into 'master'

Product kan aangepast worden (formaat, bodem en saus)

See merge request !4
parents 6f60daf3 f2b06892
......@@ -8,18 +8,11 @@ require "src/functions/require.php";
require "vendor/autoload.php";
require "src/twig.php";
require "src/functions/ingelogd.php";
// haal $idProduct van ander page
require "src/functions/updateProduct.php";
require "src/functions/updateProduct.php"; // geeft eventueel $vervangProduct door aan winkelmand.php
require "src/functions/winkelmand.php";
// vervang oud $idProduct met nieuw $idProduct indien in winkelmand aanwezig was
if (isset($winkelmand)) {
// $oudProduct; // komt uit post;
// $nieuwProduct; // komt uit updateProduct
}
require "src/functions/winkelmand.php";
......@@ -35,14 +28,18 @@ require "src/presentation/layout_parts/header.php";
$view = $twig->render(
"overzicht.twig",
"productForm.twig",
array(
"account" => $account,
"postcode" => $postcode,
"bedrijfId" => $bedrijfId,
"winkelmand" => $winkelmand,
"productLijst" => $productLijst,
'mandProductLijst' => $mandProductLijst,
"idProduct" => $idProduct,
"bedrijfId" => $bedrijfId,
"product" => $product,
"formaatLijst" => $formaatLijst,
'bodemLijst' => $bodemLijst,
"sausLijst" => $sausLijst,
// "ingredientLijst" => $ingredientLijst,
// debug
"geenWaarde" => $geenWaarde
......
......@@ -33,3 +33,6 @@ html {
margin-top: 0;
margin-bottom: 0;
}
form.ui.form.left.floated.eerste {
float: left;
}
......@@ -39,4 +39,8 @@ html {
width: 100%;
margin-top: 0;
margin-bottom: 0;
}
form.ui.form.left.floated.eerste {
float: left;
}
\ No newline at end of file
.mijn-padding-right{padding-right:1em}body{background-color:#fff}.ui.menu .item img.logo{margin-right:1.5em}.main.container{margin-top:7em}.wireframe{margin-top:2em}body{padding-bottom:6em;margin-bottom:10em;-webkit-font-smoothing:antialiased;-moz-font-smoothing:grayscale}html{position:relative;min-height:100%;height:unset}.ui.footer.segment{padding-bottom:2em;padding-top:2em;position:absolute;bottom:0;width:100%;margin-top:0;margin-bottom:0}
\ No newline at end of file
.mijn-padding-right{padding-right:1em}body{background-color:#fff}.ui.menu .item img.logo{margin-right:1.5em}.main.container{margin-top:7em}.wireframe{margin-top:2em}body{padding-bottom:6em;margin-bottom:10em;-webkit-font-smoothing:antialiased;-moz-font-smoothing:grayscale}html{position:relative;min-height:100%;height:unset}.ui.footer.segment{padding-bottom:2em;padding-top:2em;position:absolute;bottom:0;width:100%;margin-top:0;margin-bottom:0}form.ui.form.left.floated.eerste{float:left}
\ No newline at end of file
<?php
namespace pizza\functions\helpers;
class Form
{
function test_input($data)
{
$data = trim($data); // zonder whitespace in begin of einde
$data = stripslashes($data); // geen \
$data = htmlspecialchars($data); // geen speciale tekens
return $data;
}
}
......@@ -3,6 +3,24 @@
* Maakt vars indien ze niet bestaan
* dit voor geen undefined vars door te gevens aan twig
*/
foreach (array('account', 'postcode', 'bedrijfId', 'winkelmand', 'productLijst', 'accountById', 'plaats', 'mandProductLijst', 'idBedrijfLijst', 'geenBedrijfVoorPostcode', 'keuzeBedrijfLijst', 'geenWaarde') as $var) {
foreach (array(
'account',
'postcode',
'bedrijfId',
'winkelmand',
'productLijst',
'accountById',
'plaats',
'mandProductLijst',
'idBedrijfLijst',
'geenBedrijfVoorPostcode',
'keuzeBedrijfLijst',
'idProduct',
'product',
'formaatLijst',
'bodemLijst',
'sausLijst',
'geenWaarde'
) as $var) {
if (!isset($$var)) $$var = null;
}
......@@ -60,18 +60,18 @@ if (isset($account)) {
}
// DEBUG
$msgSuccess["header"] = "Dit gaf je in";
array_push($msgSuccess["msg"], $email);
array_push($msgSuccess["msg"], $wachtwoord1);
array_push($msgSuccess["msg"], $wachtwoord2);
array_push($msgSuccess["msg"], $telefoonnummer);
array_push($msgSuccess["msg"], $geboortedatum);
array_push($msgSuccess["msg"], $voornaam);
array_push($msgSuccess["msg"], $naam);
array_push($msgSuccess["msg"], $straat);
array_push($msgSuccess["msg"], $nummer);
array_push($msgSuccess["msg"], $gemeente);
array_push($msgSuccess["msg"], $postcode);
// $msgSuccess["header"] = "Dit gaf je in";
// array_push($msgSuccess["msg"], $email);
// array_push($msgSuccess["msg"], $wachtwoord1);
// array_push($msgSuccess["msg"], $wachtwoord2);
// array_push($msgSuccess["msg"], $telefoonnummer);
// array_push($msgSuccess["msg"], $geboortedatum);
// array_push($msgSuccess["msg"], $voornaam);
// array_push($msgSuccess["msg"], $naam);
// array_push($msgSuccess["msg"], $straat);
// array_push($msgSuccess["msg"], $nummer);
// array_push($msgSuccess["msg"], $gemeente);
// array_push($msgSuccess["msg"], $postcode);
// TODO: vervolledig controle
if ($wachtwoord1 != $wachtwoord2) {
......
<?php
use pizza\functions\helpers\Form;
use pizza\business\product\SausService;
use pizza\business\product\BodemService;
use pizza\business\product\FormaatService;
use pizza\business\product\ProductService;
use pizza\business\product\IngredientLijnService;
if (isset($_POST["actie"]["main"]) && $_POST["actie"]["main"] == "winkelmand") {
if (isset($_POST["actie"]["sub"]) && $_POST["actie"]["sub"] == "updateProduct") {
if (isset($_POST["idProduct"])) {
$idProduct = $_POST["idProduct"];
// haal volledig product op (voor in form)
$productSvc = new ProductService;
$product = $productSvc->getProductById($idProduct);
// haal keuzes op
$formaatSvc = new FormaatService;
$formaatLijst = $formaatSvc->getAll();
$bodemSvc = new BodemService;
$bodemLijst = $bodemSvc->getAll();
$sausSvc = new SausService;
$sausLijst = $sausSvc->getAll();
}
}
}
if (isset($_POST["actie"]) && $_POST["actie"] == "nieuwProduct") {
$form = new Form;
if (isset($_POST["idProduct"])) {
$vorigIdProduct = $form->test_input($_POST["idProduct"]);
}
if (isset($_POST["idFormaat"])) {
$idFormaat = $form->test_input($_POST["idFormaat"]);
}
if (isset($_POST["idBodem"])) {
$idBodem = $form->test_input($_POST["idBodem"]);
}
if (isset($_POST["idSaus"])) {
$idSaus = $form->test_input($_POST["idSaus"]);
}
// controleer of verschil met vorig product
$productSvc = new ProductService;
$product = $productSvc->getProductById($vorigIdProduct);
$vorigIdFormaat = $product->product->getIdFormaat();
$vorigIdBodem = $product->product->getIdBodem();
$vorigIdSaus = $product->product->getIdSaus();
$pasFormaatAan = ($idFormaat != $vorigIdFormaat) ? true : false;
$pasBodemAan = ($idBodem != $vorigIdBodem) ? true : false;
$pasSausAan = ($idSaus != $vorigIdSaus) ? true : false;
if ($product && ($pasFormaatAan || $pasBodemAan || $pasSausAan)) {
$idProduct = $productSvc->create(
$product->product->getNaam(),
$product->product->getOmschrijving(),
$idFormaat,
$idBodem,
$idSaus
);
// maak de ingredientlijn hetzelfde als $product
$ingredientIdLijst = [];
$ingredientLijnSvc = new IngredientLijnService;
$ingredientLijst = $ingredientLijnSvc->getByIdProduct($vorigIdProduct);
foreach ($ingredientLijst as $key => $value) {
// echo $value->getIdIngredient();
array_push($ingredientIdLijst, $value->getIdIngredient());
}
// maak nieuwe ingredientlijst (van $ingredientIdLijst) voor nieuw $idProduct
foreach ($ingredientIdLijst as $idIngredient) {
// echo $value . " ";
$ingredientLijnSvc->create($idIngredient, $idProduct);
}
// haal volledige product op
if ($idProduct) {
$product = $productSvc->getProductById($idProduct);
// vervang $vorigeIdProduct met $idProduct in winkelmandje
$vervangProduct = true;
$oudProduct = $vorigIdProduct;
$nieuwProduct = $idProduct;
$msgSuccess["header"] = "Pizza aangepast";
array_push($msgSuccess["msg"],"En winkelmandje geüpdatet");
array_push($msgSuccess["msg"], "Keer terug naar het <a href='index.php'>overzicht</a>, of <a href='bestel.php'>voltooi je bestelling</a>");
}
}
// if ($pasIngredientenAan) {}
// haal keuzes op
$formaatSvc = new FormaatService;
$formaatLijst = $formaatSvc->getAll();
$bodemSvc = new BodemService;
$bodemLijst = $bodemSvc->getAll();
$sausSvc = new SausService;
$sausLijst = $sausSvc->getAll();
}
......@@ -61,6 +61,15 @@ if (isset($_POST["actie"]["main"]) && $_POST["actie"]["main"] == "winkelmand") {
}
// vervang oud $idProduct met nieuw $idProduct indien in winkelmand aanwezig was
if (isset($vervangProduct) && $vervangProduct) {
$oudProduct;
$nieuwProduct;
winkelmand(null, null, null, null, $nieuwProduct, $oudProduct);
}
//Haal alles op van cookie
if ($ingelogd) {
$winkelmand = winkelmand($ingelogd, $account);
......@@ -166,7 +175,6 @@ function winkelmand($ingelogd = null, $account = null, $nieuwePostcode = null, $
$key = array_search($oudProduct, $producten);
unset($producten[$key]);
}
//plaats
if ($nieuwePostcode) {
$postcode = $nieuwePostcode;
......
......@@ -34,12 +34,18 @@
</div>
{% set totaal = totaal + item.product.prijs %}
<form action="?" class="ui form" method="POST">
<form action="?" class="ui form left floated eerste" method="POST">
<input class="transition hidden" name="actie[main]" readonly type="text" value="winkelmand">
<input class="transition hidden" name="actie[sub]" readonly type="text" value="verwijderProduct">
<input class="transition hidden" name="idProduct" readonly type="text" value="{{ item.idProduct }}">
<div class="ui button submit button" tabindex="0">Verwijder</div>
</form>
<form action="mijnpizza.php" class="ui form left floated " method="POST">
<input class="transition hidden" name="actie[main]" readonly type="text" value="winkelmand">
<input class="transition hidden" name="actie[sub]" readonly type="text" value="updateProduct">
<input class="transition hidden" name="idProduct" readonly type="text" value="{{ item.idProduct }}">
<button class="ui button submit button" tabindex="0">Pas aan</button>
</form>
<div class="ui hidden divider"></div>
{% endfor %}
......
......@@ -65,18 +65,18 @@
</div>
{% set totaal = totaal + item.product.prijs %}
{# todo float left #}
<form action="?" class="ui form left floated" method="POST">
<form action="?" class="ui form left floated eerste" method="POST">
<input class="transition hidden" name="actie[main]" readonly type="text" value="winkelmand">
<input class="transition hidden" name="actie[sub]" readonly type="text" value="verwijderProduct">
<input class="transition hidden" name="idProduct" readonly type="text" value="{{ item.idProduct }}">
<button class="ui button submit button" tabindex="0">Verwijder</button>
</form>
{# <form action="?" class="ui form left floated" method="POST">
<form action="mijnpizza.php" class="ui form left floated " method="POST">
<input class="transition hidden" name="actie[main]" readonly type="text" value="winkelmand">
<input class="transition hidden" name="actie[sub]" readonly type="text" value="updateProduct">
<input class="transition hidden" name="idProduct" readonly type="text" value="{{ item.idProduct }}">
<button class="ui button submit button" tabindex="0">Pas aan</button>
</form> #}
</form>
<div class="ui hidden divider"></div>
{% endfor %}
......
{# {{ dump(idProduct) }} #}
{# {{ dump(product.bestandsdelen) }} #}
{# {{ dump(ingredienten) }} #}
{# {{ dump(ingredientLijst) }} #}
<div class="ui items">
<div class="item">
<div class="ui small image">
<img src="https://via.placeholder.com/300x200">
</div>
<div class="content">
<div class="header">{{ product.product.naam }}</div>
<div class="meta">
<span class="price">{{ product.prijs }}</span>
<span class="formaat">{{ product.bestandsdelen.0.naam}}</span>
<span class="bodem">{{ product.bestandsdelen.1.naam}}</span>
<span class="saus">{{ product.bestandsdelen.2.naam}}</span>
</div>
<div class="description">
<p>
{{ product.product.omschrijving }}</br>
</p>
</div>
<div class="extra">
Ingredienten:
{% for ingredient in product.bestandsdelen.3 %}
{{ ingredient.naam }}
{% endfor %}<br>
</div>
</div>
</div>
</div>
<form action="?" class="ui form" method="POST">
<h3 class="ui dividing header">Pas je pizza aan</h3>
<input class="transition hidden" name="actie" readonly type="text" value="nieuwProduct">
<input class="transition hidden" name="idProduct" readonly type="text" value="{{idProduct}}">
<div class="three fields">
<div class="field">
<label>Formaat</label>
<div class="ui selection dropdown">
<input type="hidden" name="idFormaat" {% if product.bestandsdelen.0.idFormaat is defined %}
value="{{product.bestandsdelen.0.idFormaat}}" {% endif %}>
<i class="dropdown icon"></i>
<div class="default text">Kies je formaat</div>
<div class="menu">
{% for formaat in formaatLijst %}
<div class="item" value="{{ formaat.idFormaat }}" data-value="{{formaat.idFormaat}}">
{{ formaat.prijs }} - {{formaat.naam}} </div>
{% endfor %}
</div>
</div>
</div><div class="field">
<label>Bodem</label>
<div class="ui selection dropdown">
<input type="hidden" name="idBodem" {% if product.bestandsdelen.1.idBodem is defined %}
value="{{product.bestandsdelen.1.idBodem}}" {% endif %}>
<i class="dropdown icon"></i>
<div class="default text">Kies je bodem</div>
<div class="menu">
{% for bodem in bodemLijst %}
<div class="item" value="{{ bodem.idBodem }}" data-value="{{bodem.idBodem}}">
{{ bodem.prijs }} - {{bodem.naam}} </div>
{% endfor %}
</div>
</div>
</div><div class="field">
<label>Saus</label>
<div class="ui selection dropdown">
<input type="hidden" name="idSaus" {% if product.bestandsdelen.2.idSaus is defined %}
value="{{product.bestandsdelen.2.idSaus}}" {% endif %}>
<i class="dropdown icon"></i>
<div class="default text">Kies je saus</div>
<div class="menu">
{% for saus in sausLijst %}
<div class="item" value="{{ saus.idSaus }}" data-value="{{saus.idSaus}}">
{{ saus.prijs }} - {{saus.naam}} </div>
{% endfor %}
</div>
</div>
</div>
</div>
<div class="ui button submit button primary " tabindex="0">
Pas pizza aan</div>
</form>
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment