Merge pull request #105 from ThomasRubini/fixes

This commit is contained in:
Thomas Rubini 2023-01-25 23:13:33 +01:00 committed by GitHub
commit ab45425529
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 16 additions and 11 deletions

View File

@ -41,7 +41,7 @@ final class RecipeController
} }
} }
View::show("recipe/edit", array("POST_URI" => "/recipe/update", "RECIPE" => $O_recipe)); View::show("recipe/edit", array("POST_URI" => "/recipe/update/".$O_recipe->I_ID, "RECIPE" => $O_recipe));
} }
public function newAction(Array $A_urlParams = null, Array $A_postParams = null) public function newAction(Array $A_urlParams = null, Array $A_postParams = null)
@ -79,9 +79,13 @@ final class RecipeController
public function updateAction(Array $A_urlParams = null, Array $A_postParams = null) public function updateAction(Array $A_urlParams = null, Array $A_postParams = null)
{ {
if(count($A_urlParams)!=1){
throw new HTTPSpecialCaseException(404);
}
Session::login_or_die(); Session::login_or_die();
$O_recipe = RecipeModel::getByID(Utils::getOrDie($A_postParams, "recipeID")); $O_recipe = RecipeModel::getByID(Utils::intOrDie($A_urlParams[0]));
if ($O_recipe->I_AUTHOR_ID !== $_SESSION["ID"]) { if ($O_recipe->I_AUTHOR_ID !== $_SESSION["ID"]) {
if(!Session::is_admin()){ if(!Session::is_admin()){
@ -126,7 +130,7 @@ final class RecipeController
if (count($A_urlParams) !== 1 ) throw new HTTPSpecialCaseException(404); if (count($A_urlParams) !== 1 ) throw new HTTPSpecialCaseException(404);
$O_recipe = RecipeModel::getRecipeByID($A_urlParams[0]); $O_recipe = RecipeModel::getByID($A_urlParams[0]);
header("Content-Type: image"); header("Content-Type: image");
if (isset($O_recipe)) { if (isset($O_recipe)) {

View File

@ -55,7 +55,7 @@ final class DifficultyModel
if ($row === false) return null; if ($row === false) return null;
$O_diff = new DifficultyModel($row["NAME"]); $O_diff = new DifficultyModel($row["NAME"]);
$O_diff->I_ID = $I_id; $O_diff->I_ID = $row["ID"];
return $O_diff; return $O_diff;
} }
public static function deleteByID($I_id) public static function deleteByID($I_id)

View File

@ -50,7 +50,7 @@ final class RecipeModel
public function update() public function update()
{ {
$O_model = Model::get(); $O_model = Model::get();
$stmt = $O_model->prepare("UPDATE RECIPE SET NAME=:name, TIME=:time, DESCR=:descr, RECIPE:recipe, DIFFICULTY_ID=:difficulty_id, AUTHOR_ID=:author_id WHERE ID=:id"); $stmt = $O_model->prepare("UPDATE RECIPE SET NAME=:name, TIME=:time, DESCR=:descr, RECIPE=:recipe, DIFFICULTY_ID=:difficulty_id, AUTHOR_ID=:author_id WHERE ID=:id");
$stmt->bindParam("id", $this->I_ID); $stmt->bindParam("id", $this->I_ID);
$stmt->bindParam("name", $this->S_NAME); $stmt->bindParam("name", $this->S_NAME);
$stmt->bindParam("time", $this->I_TIME); $stmt->bindParam("time", $this->I_TIME);
@ -73,7 +73,7 @@ final class RecipeModel
return $O_recipe; return $O_recipe;
} }
public static function getRecipeByID($I_id) public static function getByID($I_id)
{ {
$O_model = Model::get(); $O_model = Model::get();
$stmt = $O_model->prepare("SELECT * FROM RECIPE WHERE ID=:id"); $stmt = $O_model->prepare("SELECT * FROM RECIPE WHERE ID=:id");
@ -157,7 +157,7 @@ final class RecipeModel
public static function getFullRecipeById($I_id) public static function getFullRecipeById($I_id)
{ {
$O_recipe = self::getRecipeByID($I_id); $O_recipe = self::getByID($I_id);
$O_recipe->getFullRecipe(); $O_recipe->getFullRecipe();
return $O_recipe; return $O_recipe;
} }

View File

@ -39,10 +39,11 @@ if ($O_recipe === null) {
<label for="recipeFifficulte">Niveau de difficulé&nbsp;:</label> <label for="recipeFifficulte">Niveau de difficulé&nbsp;:</label>
<select name="recipeDifficulty" id="recipeDifficulte" required> <select name="recipeDifficulty" id="recipeDifficulte" required>
<option value="tresFacile" <?= $S_difficultyName==="Très facile"? 'selected="selected"' : "" ?> >Très facile</option> <?php
<option value="facile" <?= $S_difficultyName==="Facile"? 'selected="selected"' : "" ?>>Facile</option> $A_difficulties = array("Très facile", "Facile", "Moyen", "Difficile");
<option value="moyen" <?= $S_difficultyName==="Moyen"? 'selected="selected"' : "" ?>>Moyen</option> foreach($A_difficulties as $S_difficulty){?>
<option value="difficile" <?= $S_difficultyName==="Difficle"? 'selected="selected"' : "" ?>>Difficile</option> <option value="<?=$S_difficulty?>" <?= $S_difficultyName===$S_difficulty? 'selected="selected"' : "" ?> ><?=$S_difficulty?></option>
<?php } ?>
</select> </select>