Merge pull request #61 from ThomasRubini/recipe_edit
This commit is contained in:
commit
cd1e1eb01b
@ -28,33 +28,23 @@ final class RecipeController
|
||||
|
||||
public function editAction(Array $A_urlParams = null, Array $A_postParams = null)
|
||||
{
|
||||
// demo array, remove this when we use the real edit function
|
||||
$A_returnArray = array(
|
||||
"recipeName" => "Pâte à crêpe",
|
||||
"recipeDescription" => "Légère et délicate, la pâte à crêpe est idéale pour des crêpes fines et croustillantes. Avec sa texture est onctueuse et son goût subtil, c'est un plat traditionnel français populaire chez tout le monde.",
|
||||
"recipeDifficutly" => "Facile",
|
||||
"recipeType" => array(),
|
||||
"recipeTime" => "45",
|
||||
"recipeIngredients" => array(
|
||||
"Farine" => "300g",
|
||||
"Sucre" => "3 cuillère à soupe",
|
||||
"Beurre fondu" => "50g",
|
||||
"Rhum" => "5cl",
|
||||
"Œuf" => "3",
|
||||
"Huile" => "2 cuillères à soupe",
|
||||
"Lait" => "60cl"
|
||||
),
|
||||
"recipeInstructions" => "Mettre la farine dans une terrine et former un puits.\nY déposer les oeufs entiers, le sucre, l'huile et le beurre.\nMélanger délicatement avec un fouet en ajoutant au fur et à mesure le lait. La pâte ainsi obtenue doit avoir une consistance d'un liquide légèrement épais.\nParfumer de rhum.\nFaire chauffer une poêle antiadhésive et la huiler très légèrement à l'aide d'un papier Essuie-tout. Y verser une louche de pâte, la répartir dans la poêle puis attendre qu'elle soit cuite d'un côté avant de la retourner. Cuire ainsi toutes les crêpes à feu doux."
|
||||
);
|
||||
Session::login_or_die();
|
||||
|
||||
if(count($A_urlParams)!=1){
|
||||
return View::show("errors/404");
|
||||
}
|
||||
|
||||
$O_recipeModel = new RecipeModel();
|
||||
$A_returnArray = $O_recipeModel->getFullRecipe($A_urlParams[0]);
|
||||
if ($A_returnArray === null) {
|
||||
return View::show("errors/404");
|
||||
}
|
||||
|
||||
if ($A_returnArray["AUTHOR_ID"] !== $_SESSION["ID"]) {
|
||||
die("You are not the owner of this recipe");
|
||||
}
|
||||
|
||||
// need to send an array with names even if content is empty
|
||||
View::show("recipe/edit", $A_returnArray);
|
||||
|
||||
// print_r($A_urlParams);
|
||||
// $O_recetteModel = new RecipeIngredientsModel();
|
||||
// $O_recetteModel->getByID("");
|
||||
// View::show('helloworld/testform', array('formData' => $A_postParams));
|
||||
|
||||
}
|
||||
|
||||
public function searchAction(Array $A_urlParams = null, Array $A_postParams = null, Array $A_getParams = null)
|
||||
|
@ -3,7 +3,8 @@ function getOrEmpty($A_Dict, $S_keyName) {
|
||||
if (isset($A_Dict[$S_keyName])) {
|
||||
return $A_Dict[$S_keyName];
|
||||
} else {
|
||||
if($S_keyName == "recipeType" || $S_keyName == "recipeIngredients")
|
||||
echo "$S_keyName EMPTY";
|
||||
if($S_keyName == "TYPE" || $S_keyName == "INGREDIENTS")
|
||||
return array();
|
||||
return "";
|
||||
}
|
||||
@ -18,36 +19,36 @@ function getOrEmpty($A_Dict, $S_keyName) {
|
||||
<input type="file" name="recipeImage" id="recipeImage" required>
|
||||
|
||||
<label for="recipeName">Nom de la recette :</label>
|
||||
<input type="text" name="recipeName" id="recipeName" placeholder="Nom du plat" value="<?= getOrEmpty($A_view, "recipeName") ?>" required>
|
||||
<input type="text" name="recipeName" id="recipeName" placeholder="Nom du plat" value="<?= getOrEmpty($A_view, "NAME") ?>" required>
|
||||
</br>
|
||||
<label for="recipeDescription">Description de la recette</label>
|
||||
</br>
|
||||
<textarea name="recipeDescription" id="recipeDescription"><?= getOrEmpty($A_view, "recipeDescription") ?></textarea>
|
||||
<textarea name="recipeDescription" id="recipeDescription"><?= getOrEmpty($A_view, "DESC") ?></textarea>
|
||||
|
||||
<section>
|
||||
<h1>Informations alimentaires</h1>
|
||||
|
||||
<label for="recipeFifficulte">Niveau de difficulé :</label>
|
||||
<select name="recipeDifficulte" id="recipeDifficulte" required>
|
||||
<option value="tresFacile" <?= getOrEmpty($A_view, "recipeDifficutly")=="Très facile"? 'selected="selected"' : "" ?> >Très facile</option>
|
||||
<option value="facile" <?= getOrEmpty($A_view, "recipeDifficutly")=="Facile"? 'selected="selected"' : "" ?>>Facile</option>
|
||||
<option value="moyen" <?= getOrEmpty($A_view, "recipeDifficutly")=="Moyen"? 'selected="selected"' : "" ?>>Moyen</option>
|
||||
<option value="difficile" <?= getOrEmpty($A_view, "recipeDifficutly")=="Difficle"? 'selected="selected"' : "" ?>>Difficile</option>
|
||||
<option value="tresFacile" <?= getOrEmpty($A_view, "DIFFICULTY_NAME")=="Très facile"? 'selected="selected"' : "" ?> >Très facile</option>
|
||||
<option value="facile" <?= getOrEmpty($A_view, "DIFFICULTY_NAME")=="Facile"? 'selected="selected"' : "" ?>>Facile</option>
|
||||
<option value="moyen" <?= getOrEmpty($A_view, "DIFFICULTY_NAME")=="Moyen"? 'selected="selected"' : "" ?>>Moyen</option>
|
||||
<option value="difficile" <?= getOrEmpty($A_view, "DIFFICULTY_NAME")=="Difficle"? 'selected="selected"' : "" ?>>Difficile</option>
|
||||
</select>
|
||||
|
||||
|
||||
<legend>Type de plat :</legend>
|
||||
<input type="checkbox" name="recipeVegan" id="recipeVegan" <?= in_array("Végan", getOrEmpty($A_view, "recipeType"))? "checked":"" ?> >
|
||||
<input type="checkbox" name="recipeVegan" id="recipeVegan" <?= in_array("Végan", getOrEmpty($A_view, "TYPE"))? "checked":"" ?> >
|
||||
<label for="recipeVegan">Végan</label>
|
||||
<input type="checkbox" name="recipeLactoseFree" id="recipeLactoseFree" <?= in_array("Sans lactose", getOrEmpty($A_view, "recipeType"))? "checked":"" ?> >
|
||||
<input type="checkbox" name="recipeLactoseFree" id="recipeLactoseFree" <?= in_array("Sans lactose", getOrEmpty($A_view, "TYPE"))? "checked":"" ?> >
|
||||
<label for="recipeLactoseFree">Sans lactose</label>
|
||||
<input type="checkbox" name="recipeGlutenFree" id="recipeGlutenFree" <?= in_array("Sans gluten", getOrEmpty($A_view, "recipeType"))? "checked":"" ?> >
|
||||
<input type="checkbox" name="recipeGlutenFree" id="recipeGlutenFree" <?= in_array("Sans gluten", getOrEmpty($A_view, "TYPE"))? "checked":"" ?> >
|
||||
<label for="recipeGlutenFree">Sans gluten</label>
|
||||
|
||||
</br>
|
||||
|
||||
<label for="recipeTime">Temps de préparation :</label>
|
||||
<input type="number" name="recipeTime" id="recipeTime" min="5" max="1500" step="5" placeholder="Temps de préparation" value="<?= getOrEmpty($A_view, "recipeTime") ?>" required>
|
||||
<input type="number" name="recipeTime" id="recipeTime" min="5" max="1500" step="5" placeholder="Temps de préparation" value="<?= getOrEmpty($A_view, "TIME") ?>" required>
|
||||
<label for="recipeTime">minutes</label>
|
||||
|
||||
</section>
|
||||
@ -59,15 +60,15 @@ function getOrEmpty($A_Dict, $S_keyName) {
|
||||
|
||||
<ul class="recipeIngredients">
|
||||
<?php
|
||||
$ingredients = getOrEmpty($A_view, "recipeIngredients");
|
||||
$ingredients = getOrEmpty($A_view, "INGREDIENTS");
|
||||
if(sizeof($ingredients) > 0) {
|
||||
$i = 1;
|
||||
foreach($ingredients as $ingredientName => $ingredientValue) {
|
||||
foreach($ingredients as $ingredient) {
|
||||
echo '<li>
|
||||
<label for="recipeIngredient'.$i.'">Ingrédient :</label>
|
||||
<input type="text" name="recipeIngredient'.$i.'" id="recipeIngredient'.$i.'" placeholder="Farine" value="'.$ingredientName.'">
|
||||
<input type="text" name="recipeIngredient'.$i.'" id="recipeIngredient'.$i.'" placeholder="Farine" value="'.$ingredient["NAME"].'">
|
||||
<label for="recipeQuantity'.$i.'">Quantité :</label>
|
||||
<input type="text" name="recipeQuantity'.$i.'" id="recipeIngredient'.$i.'" placeholder="500g" value="'.$ingredientValue.'">
|
||||
<input type="text" name="recipeQuantity'.$i.'" id="recipeIngredient'.$i.'" placeholder="500g" value="'.$ingredient["QUANTITY"].'">
|
||||
</li>';
|
||||
$i++;
|
||||
}
|
||||
@ -97,7 +98,7 @@ function getOrEmpty($A_Dict, $S_keyName) {
|
||||
|
||||
<ol class="recipeInstructions">
|
||||
<?php
|
||||
$preparation = getOrEmpty($A_view, "recipeInstructions");
|
||||
$preparation = getOrEmpty($A_view, "RECIPE");
|
||||
if(!empty($preparation)) {
|
||||
$steps = explode("\n", $preparation);
|
||||
$i = 1;
|
||||
|
Loading…
Reference in New Issue
Block a user