Fix create form and add edit Recettes / delete Recettes
This commit is contained in:
77
views/recettes/create.php
Normal file
77
views/recettes/create.php
Normal file
@@ -0,0 +1,77 @@
|
||||
<?php use App\Domain\Recettes\Recette;
|
||||
use App\Infrastructure\View as V; ?>
|
||||
|
||||
<div class="main-body">
|
||||
<div class="content">
|
||||
<div class="recette-add-form-all">
|
||||
<form id="recette-form-complete" class="recette-form recette-form-add" action="/api/recettes/create" method="POST">
|
||||
<div class="recette-form-group form-group">
|
||||
<label for="nom">Titre : </label>
|
||||
<input type="text" class="form-control" id="recette-form-nom" name="nom" placeholder="Titre de votre recette">
|
||||
</div>
|
||||
<div class="recette-form-group form-group">
|
||||
<label for="temps">Temps (en min) : </label>
|
||||
<input type="number" class="form-control" id="recette-form-temps" name="temps" placeholder="Temps de préparation">
|
||||
</div>
|
||||
<div class="recette-form-group form-group">
|
||||
<label for="image">Photo du plat : </label>
|
||||
<input type="file" class="form-control" id="recette-form-photo" name="image" placeholder="ajouter votre image">
|
||||
</div>
|
||||
<div class="recette-form-group form-group" id="recette-form-div-ingr">
|
||||
<label for="ingr">Ingredients</label>
|
||||
<select multiple class="form-control" id="recette-form-ingr" name="ingr" placeholder="Ingredients">
|
||||
<?php foreach( V::arg( 'ingredients') as $ingr ): ?>
|
||||
<option value="<?php echo $ingr->getID(); ?>"><?php echo $ingr->nom_ingredient; ?></option>
|
||||
<?php endforeach; ?>
|
||||
</select>
|
||||
</div>
|
||||
<div class="recette-form-group form-group" id="recette-form-div-tag">
|
||||
<label for="tag">Tag</label>
|
||||
<select multiple class="form-control" id="recette-form-tag" name="tag" placeholder="Tag">
|
||||
<?php foreach( V::arg( 'tags') as $tag ): ?>
|
||||
<option value="<?php echo $tag->getID(); ?>"><?php echo $tag->nom_tag; ?></option>
|
||||
<?php endforeach; ?>
|
||||
</select>
|
||||
</div>
|
||||
<div class="recette-form-group form-group" id="recette-form-div-desc">
|
||||
<label for="description">Description</label>
|
||||
<textarea type="texte" class="form-control" id="recette-form-description" name="description" placeholder="Description..."></textarea>
|
||||
</div>
|
||||
|
||||
<button type='submit' class='btn btn-primary'>Confirmer</button>
|
||||
</form>
|
||||
<div class="recette-form-add-additional">
|
||||
<form id="recette-form-ingr-add" class="recette-form recette-form-add-ingr" action="" method="POST">
|
||||
<div class="recette-form-group form-group">
|
||||
<label for="name">Nom de l'Ingrédient</label>
|
||||
<input type="texte" class="form-control" id="recette-form-ingr-nom" name="name" placeholder="Nom de l'ingrédient" value="">
|
||||
</div>
|
||||
<div class="recette-form-group form-group">
|
||||
<label for="image">Photo de l'Ingrédient</label>
|
||||
<input type="file" class="form-control" id="recette-form-ingr-photo" name="image">
|
||||
</div>
|
||||
|
||||
<button id="submit-ingr" type='submit' class='btn btn-primary'>Confirmer</button>
|
||||
<div id="recette-form-div-err-ingr" class="err">
|
||||
Erreur
|
||||
</div>
|
||||
</form>
|
||||
<form id="recette-form-tag-add" class="recette-form recette-form-add-tag" action="" method="POST">
|
||||
<div class="recette-form-group form-group">
|
||||
<label for="tag">Tags</label>
|
||||
<input type="text" class="form-control" id="recette-form-tag-nom" name="name" placeholder="Nom de l'ingrédient">
|
||||
</div>
|
||||
|
||||
<button type='submit' class='btn btn-primary'>Confirmer</button>
|
||||
<div id="recette-form-div-err-tag" class="err">
|
||||
Erreur
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
const IS_EDIT = false; const RECETTE_ID = 0;
|
||||
</script>
|
||||
<script src="<?php V::assetUrl( 'js/form.js' ); ?>" defer></script>
|
||||
77
views/recettes/edit.php
Normal file
77
views/recettes/edit.php
Normal file
@@ -0,0 +1,77 @@
|
||||
<?php use App\Domain\Recettes\Recette;
|
||||
use App\Infrastructure\View as V; ?>
|
||||
<?php /** @var Recette $R */$R = V::arg( 'recette'); ?>
|
||||
<div class="main-body">
|
||||
<div class="content">
|
||||
<div class="recette-add-form-all">
|
||||
<form id="recette-form-complete" class="recette-form recette-form-add" action="/api/recettes/edit" method="POST">
|
||||
<div class="recette-form-group form-group">
|
||||
<label for="nom">Titre : </label>
|
||||
<input type="text" class="form-control" id="recette-form-nom" name="nom" placeholder="Titre de votre recette" value="<?php echo $R->titre_recette; ?>">
|
||||
</div>
|
||||
<div class="recette-form-group form-group">
|
||||
<label for="temps">Temps (en min) : </label>
|
||||
<input type="number" class="form-control" id="recette-form-temps" name="temps" placeholder="Temps de préparation" value="<?php echo $R->temps_de_preparation; ?>">
|
||||
</div>
|
||||
<div class="recette-form-group form-group">
|
||||
<label for="image">Photo du plat : </label>
|
||||
<input type="file" class="form-control" id="recette-form-photo" name="image" placeholder="ajouter votre image">
|
||||
</div>
|
||||
<div class="recette-form-group form-group" id="recette-form-div-ingr">
|
||||
<label for="ingr">Ingredients</label>
|
||||
<select multiple class="form-control" id="recette-form-ingr" name="ingr" placeholder="Ingredients">
|
||||
<?php foreach( V::arg( 'ingredients') as $ingr ): ?>
|
||||
<option value="<?php echo $ingr->getID(); ?>" <?php echo in_array( $ingr->getId(), V::arg( 'recetteIngr') ) ? "selected" : ""; ?> ><?php echo $ingr->nom_ingredient; ?></option>
|
||||
<?php endforeach; ?>
|
||||
</select>
|
||||
</div>
|
||||
<div class="recette-form-group form-group" id="recette-form-div-tag">
|
||||
<label for="tag">Tag</label>
|
||||
<select multiple class="form-control" id="recette-form-tag" name="tag" placeholder="Tag">
|
||||
<?php foreach( V::arg( 'tags') as $tag ): ?>
|
||||
<option value="<?php echo $tag->getID(); ?>" <?php echo in_array( $tag->getId(), V::arg( 'recetteTags' ) ) ? "selected" : ""; ?> ><?php echo $tag->nom_tag; ?></option>
|
||||
<?php endforeach; ?>
|
||||
</select>
|
||||
</div>
|
||||
<div class="recette-form-group form-group" id="recette-form-div-desc">
|
||||
<label for="description">Description</label>
|
||||
<textarea type="texte" class="form-control" id="recette-form-description" name="description" placeholder="Description..."><?php echo $R->description_recette; ?></textarea>
|
||||
</div>
|
||||
|
||||
<button type='submit' class='btn btn-primary'>Confirmer</button>
|
||||
</form>
|
||||
<div class="recette-form-add-additional">
|
||||
<form id="recette-form-ingr-add" class="recette-form recette-form-add-ingr" action="" method="POST">
|
||||
<div class="recette-form-group form-group">
|
||||
<label for="name">Nom de l'Ingrédient</label>
|
||||
<input type="texte" class="form-control" id="recette-form-ingr-nom" name="name" placeholder="Nom de l'ingrédient" value="">
|
||||
</div>
|
||||
<div class="recette-form-group form-group">
|
||||
<label for="image">Photo de l'Ingrédient</label>
|
||||
<input type="file" class="form-control" id="recette-form-ingr-photo" name="image">
|
||||
</div>
|
||||
|
||||
<button id="submit-ingr" type='submit' class='btn btn-primary'>Confirmer</button>
|
||||
<div id="recette-form-div-err-ingr" class="err">
|
||||
Erreur
|
||||
</div>
|
||||
</form>
|
||||
<form id="recette-form-tag-add" class="recette-form recette-form-add-tag" action="" method="POST">
|
||||
<div class="recette-form-group form-group">
|
||||
<label for="tag">Tags</label>
|
||||
<input type="text" class="form-control" id="recette-form-tag-nom" name="name" placeholder="Nom de l'ingrédient">
|
||||
</div>
|
||||
|
||||
<button type='submit' class='btn btn-primary'>Confirmer</button>
|
||||
<div id="recette-form-div-err-tag" class="err">
|
||||
Erreur
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
const IS_EDIT = true; const RECETTE_ID = <?php echo $R->getId(); ?>;
|
||||
</script>
|
||||
<script src="<?php V::assetUrl( 'js/form.js' ); ?>" defer></script>
|
||||
@@ -5,7 +5,7 @@
|
||||
<div id="recetteList" class="recettes">
|
||||
<?php if( V::arg( 'recettesList' ) != null ) foreach( V::arg( 'recettesList' ) as $recette ): ?>
|
||||
<a class="recette-icone" href="<?php V::routeUrl( 'recettes->show', $recette->slug ); ?>">
|
||||
<img class="recette-preview-image" src="random-recette.jpg">
|
||||
<img class="recette-preview-image" src="<?php echo $recette->photo; ?>">
|
||||
<div class="recette-icone-content">
|
||||
<h3><?php echo $recette->titre_recette; ?></h3>
|
||||
<ul>
|
||||
|
||||
53
views/recettes/show.php
Normal file
53
views/recettes/show.php
Normal file
@@ -0,0 +1,53 @@
|
||||
<?php use App\Domain\Recettes\Recette;
|
||||
use App\Infrastructure\View as V; ?>
|
||||
<?php /** @var Recette $R */ $R = V::arg( 'recette' ); ?>
|
||||
|
||||
<div class="content">
|
||||
<div class="recette-title">
|
||||
<h1><?php echo $R->titre_recette; ?></h1>
|
||||
</div>
|
||||
<div class="recette-content">
|
||||
<div class="recette-div-info">
|
||||
<div class="recette-div-image">
|
||||
<img class="recette-image" src="<?php echo $R->photo; ?>">
|
||||
</div>
|
||||
<div class="recette-div-liste-info">
|
||||
<?php if( \App\Helpers\Authentification::isLoggedIn() ): ?>
|
||||
<ul class="recette-list-buttons">
|
||||
<li><a class="recette-button" href="#" id="delete" data-id="<?php echo $R->num_recette; ?>">Supprimer</a></li>
|
||||
<li><a class="recette-button" href="<?php V::routeUrl( 'recettes->edit', $R->getID() ); ?>">Modifier</a></li>
|
||||
</ul>
|
||||
<?php endif; ?>
|
||||
<ul class="recette-liste-info">
|
||||
<li class="recette-liste-info-elem"><?php echo $R->publication_date; ?></li>
|
||||
<li class="recette-liste-info-elem"><?php echo $R->temps_de_preparation; ?> minutes</li>
|
||||
<li class="recette-liste-info-elem"><?php echo $R->getNumberOfIngredients(); ?> ingrédients</li>
|
||||
</ul>
|
||||
<ul class="recette-liste-tag">
|
||||
<?php foreach( $R->getAllLinkedTags() as $tag ): ?>
|
||||
<li class="tag tag-unselected"><?php echo $tag->nom_tag; ?></li>
|
||||
<?php endforeach; ?>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class = "recette-desc">
|
||||
<h3>Ingrédients :</h3>
|
||||
<ul>
|
||||
<?php foreach( $R->getAllLinkedIngredients() as $ingr ): ?>
|
||||
<li><?php echo $ingr->nom_ingredient; ?></li>
|
||||
<?php endforeach; ?>
|
||||
</ul>
|
||||
<div id="description">
|
||||
<?php echo $R->getHTMLDescription(); ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
document.getElementById( 'delete' ).addEventListener( 'click', e => {
|
||||
if( window.confirm( "Êtes-vous sur de vouloir supprimer cette recette ? ") ){
|
||||
let id = document.getElementById( 'delete' ).getAttribute( 'data-id' );
|
||||
window.location.href = "/recettes/delete/" + id;
|
||||
}
|
||||
})
|
||||
</script>
|
||||
Reference in New Issue
Block a user