Compare commits

..

No commits in common. "4ccb8ac05e6a38be54f04673e6bc0efc2ccad282" and "3f67fe27d0f46053f7fe694ba59329441af007fd" have entirely different histories.

16 changed files with 387 additions and 221 deletions

View File

@ -2,40 +2,9 @@
namespace Lycoreco\Apps\Index\Controllers; namespace Lycoreco\Apps\Index\Controllers;
use Lycoreco\Apps\Recipes\Models\CategoryModel;
use Lycoreco\Apps\Recipes\Models\RecipeModel;
use Lycoreco\Apps\Recipes\Models\RecipeUserMenu;
use Lycoreco\Includes\BaseController; use Lycoreco\Includes\BaseController;
require_once(INCLUDES_PATH . '/Const/recipes.php');
class HomepageController extends BaseController class HomepageController extends BaseController
{ {
protected $template_name = APPS_PATH . '/Index/Templates/index.php'; protected $template_name = APPS_PATH . '/Index/Templates/index.php';
public function get_context_data() {
$context = parent::get_context_data();
$context['latest_recipes'] = RecipeModel::filter(array(
[
'name' => 'obj.status',
'type' => '=',
'value' => 'publish'
]),
['-obj.created_at'],
3
);
$context['categories'] = CategoryModel::filter();
$dayNumber = date("w");
$dayofweek = DAYS_OF_WEEK[$dayNumber];
if(CURRENT_USER) {
$context['usermenu_recipe_prefetch'] = RecipeUserMenu::get_prefetch_recipes(CURRENT_USER, $dayofweek);
}
else {
$context['usermenu_recipe_prefetch'] = [ ];
}
return $context;
}
} }

View File

@ -1,6 +1,4 @@
<?php <?php the_header(
require_once APPS_PATH . '/Recipes/components.php';
the_header(
'Welcome', 'Welcome',
"Discover delicious recipes using the ingredients you already have. Fridgebites helps you create tasty meals with what's in your fridge", "Discover delicious recipes using the ingredients you already have. Fridgebites helps you create tasty meals with what's in your fridge",
'frontpage', 'frontpage',
@ -34,21 +32,42 @@ the_header(
<!-- Additional required wrapper --> <!-- Additional required wrapper -->
<div class="swiper-wrapper"> <div class="swiper-wrapper">
<!-- Slides --> <!-- Slides -->
<?php foreach($context['latest_recipes'] as $recipe): ?>
<div class="swiper-slide"> <div class="swiper-slide">
<a href="<?= $recipe->get_absolute_url() ?>" class="recent-recipe hover-anim"> <a href="#" class="recent-recipe hover-anim">
<div class="recipe-img"> <div class="recipe-img">
<img src="<?= $recipe->get_image_url() ?>" alt="Recipe 1" class="recipe-img__img"> <img src="media/recipe1.png" alt="Recipe 1" class="recipe-img__img">
</div> </div>
<div class="recipe-info"> <div class="recipe-info">
<p class="recipe-info__title"><?= $recipe->field_title ?></p> <p class="recipe-info__title">Spaghetti Bolognese</p>
<p class="recipe-info__meta"><i class="fa-solid fa-user"></i> <?= $recipe->author_username ?></p> <p class="recipe-info__meta"><i class="fa-solid fa-user"></i> GreenDavid004</p>
</div>
</a>
</div>
<div class="swiper-slide">
<a href="#" class="recent-recipe hover-anim">
<div class="recipe-img">
<img src="media/recipe1.jpeg" alt="Recipe 1" class="recipe-img__img">
</div>
<div class="recipe-info">
<p class="recipe-info__title">Spaghetti Bolognese</p>
<p class="recipe-info__meta"><i class="fa-solid fa-user"></i> GreenDavid004</p>
</div>
</a>
</div>
<div class="swiper-slide">
<a href="#" class="recent-recipe hover-anim">
<div class="recipe-img">
<img src="media/recipe1.jpeg" alt="Recipe 1" class="recipe-img__img">
</div>
<div class="recipe-info">
<p class="recipe-info__title">Spaghetti Bolognese</p>
<p class="recipe-info__meta"><i class="fa-solid fa-user"></i> GreenDavid004</p>
</div> </div>
</a> </a>
</div> </div>
<?php endforeach; ?>
</div> </div>
<!-- If we need pagination --> <!-- If we need pagination -->
@ -67,14 +86,87 @@ the_header(
<div class="swiper categories-swiper"> <div class="swiper categories-swiper">
<div class="swiper-wrapper"> <div class="swiper-wrapper">
<?php foreach($context['categories'] as $cat): ?>
<div class="swiper-slide"> <div class="swiper-slide">
<a href="<?= get_permalink('recipes:catalog') . '?category=' . $cat->get_id() ?>" class="category hover-anim"> <a href="#" class="category hover-anim">
<p class="category-title"><?= $cat->field_name ?></p> <!-- <div class="category-img">
<img src="media/category1.png" alt="Category 1" class="category-img__img">
</div> -->
<p class="category-title">Mexican</p>
</a>
</div>
<div class="swiper-slide">
<a href="#" class="category hover-anim">
<!-- <div class="category-img">
<img src="media/category1.png" alt="Category 1" class="category-img__img">
</div> -->
<p class="category-title">Mexican</p>
</a>
</div>
<div class="swiper-slide">
<a href="#" class="category hover-anim">
<!-- <div class="category-img">
<img src="media/category1.png" alt="Category 1" class="category-img__img">
</div> -->
<p class="category-title">Mexican</p>
</a>
</div>
<div class="swiper-slide">
<a href="#" class="category hover-anim">
<!-- <div class="category-img">
<img src="media/category1.png" alt="Category 1" class="category-img__img">
</div> -->
<p class="category-title">Mexican</p>
</a>
</div>
<div class="swiper-slide">
<a href="#" class="category hover-anim">
<!-- <div class="category-img">
<img src="media/category1.png" alt="Category 1" class="category-img__img">
</div> -->
<p class="category-title">Mexican</p>
</a>
</div>
<div class="swiper-slide">
<a href="#" class="category hover-anim">
<!-- <div class="category-img">
<img src="media/category1.png" alt="Category 1" class="category-img__img">
</div> -->
<p class="category-title">Mexican</p>
</a>
</div>
<div class="swiper-slide">
<a href="#" class="category hover-anim">
<!-- <div class="category-img">
<img src="media/category1.png" alt="Category 1" class="category-img__img">
</div> -->
<p class="category-title">Mexican</p>
</a>
</div>
<div class="swiper-slide">
<a href="#" class="category hover-anim">
<!-- <div class="category-img">
<img src="media/category1.png" alt="Category 1" class="category-img__img">
</div> -->
<p class="category-title">Mexican</p>
</a>
</div>
<div class="swiper-slide">
<a href="#" class="category hover-anim">
<!-- <div class="category-img">
<img src="media/category1.png" alt="Category 1" class="category-img__img">
</div> -->
<p class="category-title">Mexican</p>
</a> </a>
</div> </div>
<?php endforeach; ?>
</div> </div>
<div class="swiper-button-prev"></div> <div class="swiper-button-prev"></div>
@ -186,18 +278,137 @@ the_header(
</a> </a>
</div> </div>
</div> </div>
<?php if(CURRENT_USER): ?>
<div class="daily-meals"> <div class="daily-meals">
<h2 class="title">Your Menu for <?= date("l"); ?></h2> <h2 class="title">Your Menu for Monday</h2>
<div class="daily-meals-grid"> <div class="daily-meals-grid">
<?php <a href="#" class="daily-meal hover-anim">
foreach ($context['usermenu_recipe_prefetch'] as $recipe_pref) { <div class="meal-img">
the_product_recipes_item($recipe_pref['origin'], $recipe_pref['relations']); <img src="media/recipe1.jpeg" alt="meal-img">
} </div>
?> <div class="daily-meal-info">
<div class="daily-meal-title">
<h3>Goulash</h3>
<span class="meta"><i class="fa-regular fa-clock"></i>120mins to make</span>
</div>
<div class="daily-meal-ingredients">
<ul class="ingredients-list">
<li>Ground beef</li>
<li>Tomato sauce</li>
<li>Onion</li>
<li>Macaroni</li>
<li>Garlic</li>
<li>Cheese</li>
</ul>
</div>
</div>
</a>
<a href="#" class="daily-meal hover-anim">
<div class="meal-img">
<img src="media/recipe1.jpeg" alt="meal-img">
</div>
<div class="daily-meal-info">
<div class="daily-meal-title">
<h3>Goulash</h3>
<span class="meta"><i class="fa-regular fa-clock"></i>120mins to make</span>
</div>
<div class="daily-meal-ingredients">
<ul class="ingredients-list">
<li>Ground beef</li>
<li>Tomato sauce</li>
<li>Onion</li>
<li>Macaroni</li>
<li>Garlic</li>
<li>Cheese</li>
</ul>
</div>
</div>
</a>
<a href="#" class="daily-meal hover-anim">
<div class="meal-img">
<img src="media/recipe1.jpeg" alt="meal-img">
</div>
<div class="daily-meal-info">
<div class="daily-meal-title">
<h3>Goulash</h3>
<span class="meta"><i class="fa-regular fa-clock"></i>120mins to make</span>
</div>
<div class="daily-meal-ingredients">
<ul class="ingredients-list">
<li>Ground beef</li>
<li>Tomato sauce</li>
<li>Onion</li>
<li>Macaroni</li>
<li>Garlic</li>
<li>Cheese</li>
</ul>
</div>
</div>
</a>
<a href="#" class="daily-meal hover-anim">
<div class="meal-img">
<img src="media/recipe1.jpeg" alt="meal-img">
</div>
<div class="daily-meal-info">
<div class="daily-meal-title">
<h3>Goulash</h3>
<span class="meta"><i class="fa-regular fa-clock"></i>120mins to make</span>
</div>
<div class="daily-meal-ingredients">
<ul class="ingredients-list">
<li>Ground beef</li>
<li>Tomato sauce</li>
<li>Onion</li>
<li>Macaroni</li>
<li>Garlic</li>
<li>Cheese</li>
</ul>
</div>
</div>
</a>
<a href="#" class="daily-meal hover-anim">
<div class="meal-img">
<img src="media/recipe1.jpeg" alt="meal-img">
</div>
<div class="daily-meal-info">
<div class="daily-meal-title">
<h3>Goulash</h3>
<span class="meta"><i class="fa-regular fa-clock"></i>120mins to make</span>
</div>
<div class="daily-meal-ingredients">
<ul class="ingredients-list">
<li>Ground beef</li>
<li>Tomato sauce</li>
<li>Onion</li>
<li>Macaroni</li>
<li>Garlic</li>
<li>Cheese</li>
</ul>
</div>
</div>
</a>
<a href="#" class="daily-meal hover-anim">
<div class="meal-img">
<img src="media/recipe1.jpeg" alt="meal-img">
</div>
<div class="daily-meal-info">
<div class="daily-meal-title">
<h3>Goulash</h3>
<span class="meta"><i class="fa-regular fa-clock"></i>120mins to make</span>
</div>
<div class="daily-meal-ingredients">
<ul class="ingredients-list">
<li>Ground beef</li>
<li>Tomato sauce</li>
<li>Onion</li>
<li>Macaroni</li>
<li>Garlic</li>
<li>Cheese</li>
</ul>
</div>
</div>
</a>
</div> </div>
</div> </div>
<?php endif; ?>
</div> </div>

View File

@ -9,7 +9,7 @@ use Lycoreco\Apps\Recipes\Models\{
}; };
use Lycoreco\Includes\BaseController; use Lycoreco\Includes\BaseController;
define('CATALOG_MAX_RECIPES', 10); define('CATALOG_MAX_RECIPES', 20);
class CatalogController extends BaseController class CatalogController extends BaseController
{ {
@ -45,12 +45,10 @@ class CatalogController extends BaseController
); );
} }
$context['recipes_count'] = RecipeModel::count($fields);
$context['recipes'] = RecipeModel::filter( $context['recipes'] = RecipeModel::filter(
$fields, $fields,
['-obj.created_at'], ['-obj.created_at'],
CATALOG_MAX_RECIPES, CATALOG_MAX_RECIPES
offset: calc_page_offset(CATALOG_MAX_RECIPES, $context['page'])
); );
return $context; return $context;

View File

@ -2,26 +2,12 @@
namespace Lycoreco\Apps\Recipes\Controllers; namespace Lycoreco\Apps\Recipes\Controllers;
use Lycoreco\Apps\Recipes\Models\RecipeUserMenu;
use Lycoreco\Includes\BaseController; use Lycoreco\Includes\BaseController;
require_once(INCLUDES_PATH . '/Const/recipes.php');
class DailyMealsController extends BaseController class DailyMealsController extends BaseController
{ {
protected $template_name = APPS_PATH . '/Recipes/Templates/daily-meals.php'; protected $template_name = APPS_PATH . '/Recipes/Templates/daily-meals.php';
protected $allow_role = 'user';
function get_context_data() {
$context = parent::get_context_data();
$context['weeks'] = array();
foreach (DAYS_OF_WEEK as $week) {
$context['weeks'][$week] = RecipeUserMenu::get_prefetch_recipes(CURRENT_USER, $week);
}
return $context;
}
} }

View File

@ -2,48 +2,24 @@
namespace Lycoreco\Apps\Recipes\Controllers; namespace Lycoreco\Apps\Recipes\Controllers;
use Lycoreco\Apps\Recipes\Models\FavoriteModel;
use Lycoreco\Apps\Recipes\Models\RecipeModel; use Lycoreco\Apps\Recipes\Models\RecipeModel;
use Lycoreco\Includes\BaseController; use Lycoreco\Includes\BaseController;
define('FAVORITES_MAX_RECIPES', 500); define('FAVORITES_MAX_RECIPES', 20);
class FavoritesController extends BaseController class FavoritesController extends BaseController
{ {
protected $template_name = APPS_PATH . '/Recipes/Templates/favorites.php'; protected $template_name = APPS_PATH . '/Recipes/Templates/favorites.php';
protected $allow_role = 'user';
public function get_context_data() public function get_context_data()
{ {
$context = parent::get_context_data(); $context = parent::get_context_data();
$favorite_recipes = FavoriteModel::filter(array(
[
'name' => 'obj.user_id',
'type' => '=',
'value' => CURRENT_USER->get_id()
]
));
$fav_ids = array_map(function($recipe) {
return $recipe->field_recipe_id;
}, $favorite_recipes);
if(!empty($fav_ids)) { $context['recipes'] = RecipeModel::filter(
$context['recipes'] = RecipeModel::filter( [],
array( ['-obj.created_at'],
[ FAVORITES_MAX_RECIPES
'name' => 'obj.id', );
'type' => 'IN',
'value' => $fav_ids
]
),
['-obj.created_at'],
FAVORITES_MAX_RECIPES
);
}
else {
$context['recipes'] = [];
}
return $context; return $context;
} }

View File

@ -16,9 +16,7 @@ class RecipeModel extends BaseModel
public $field_created_at; public $field_created_at;
public $category_name; public $category_name;
public $author_username;
public $is_in_favorite = 0; public $is_in_favorite = 0;
public $in_usermenu = false;
const STATUS = [['publish', 'Publish'], ['pending', 'Pending']]; const STATUS = [['publish', 'Publish'], ['pending', 'Pending']];
@ -32,12 +30,6 @@ class RecipeModel extends BaseModel
], ],
'join_table' => 'categories tb1 ON tb1.id = obj.category_id' 'join_table' => 'categories tb1 ON tb1.id = obj.category_id'
], ],
[
'field' => [
'us.username AS author_username'
],
'join_table' => 'users us ON us.id = obj.author_id'
],
[ [
'field' => [ 'field' => [
@ -71,16 +63,6 @@ class RecipeModel extends BaseModel
] ]
)); ));
} }
if(CURRENT_USER) {
$add_fields = array_merge($add_fields, array(
[
"field" => [
"MAX(m.dayofweek) AS in_usermenu"
],
"join_table" => "recipe_usermenu m ON m.recipe_id = obj.id AND m.user_id = " . CURRENT_USER->get_id()
]
));
}
return $add_fields; return $add_fields;
} }

View File

@ -2,7 +2,6 @@
namespace Lycoreco\Apps\Recipes\Models; namespace Lycoreco\Apps\Recipes\Models;
use Lycoreco\Apps\Users\Models\UserModel;
use Lycoreco\Includes\Model\BaseModel; use Lycoreco\Includes\Model\BaseModel;
class RecipeUserMenu extends BaseModel class RecipeUserMenu extends BaseModel
@ -40,7 +39,7 @@ class RecipeUserMenu extends BaseModel
{ {
require_once INCLUDES_PATH . '/Const/recipes.php'; require_once INCLUDES_PATH . '/Const/recipes.php';
if (!in_array($this->field_dayofweek, DAYS_OF_WEEK)) if(!in_array($this->field_dayofweek, DAYS_OF_WEEK))
return ['Day of Week is not valid']; return ['Day of Week is not valid'];
$recipe = RecipeModel::get(array( $recipe = RecipeModel::get(array(
@ -50,44 +49,9 @@ class RecipeUserMenu extends BaseModel
'value' => $this->field_recipe_id 'value' => $this->field_recipe_id
] ]
)); ));
if (!$recipe) if(!$recipe)
return ['Recipe does not exist']; return ['Recipe does not exist'];
return true; return true;
} }
}
public static function get_prefetch_recipes(UserModel $user, string $week) {
$usermenus = RecipeUserMenu::filter(array(
[
'name' => 'obj.user_id',
'type' => '=',
'value' => $user->get_id(),
],
[
'name' => 'obj.dayofweek',
'type' => '=',
'value' => $week
]
), count: 100);
if(empty($usermenus))
return [];
$usermenu_ids = array_map(function($usermenu) {
return $usermenu->field_recipe_id;
}, $usermenus);
$recipes = RecipeModel::filter(array(
[
'name' => 'obj.id',
'type' => 'IN',
'value' => $usermenu_ids
]
));
$prefetch_recipes_ings = prefetch_related($recipes, 'Recipes:IngredientInRecipeModel', 'recipe_id');
return $prefetch_recipes_ings;
}
}

View File

@ -13,15 +13,12 @@ the_header(
?> ?>
<div class="container"> <div class="container">
<div class="catalog"> <div class="catalog">
<div class="catalog-items__inner"> <div class="catalog-items">
<div class="catalog-items"> <?php
<?php foreach ($context['recipes'] as $recipe) {
foreach ($context['recipes'] as $recipe) { the_product_item($recipe);
the_product_item($recipe); }
} ?>
?>
</div>
<?php the_pagination($context['recipes_count'], CATALOG_MAX_RECIPES, $context["page"]); ?>
</div> </div>
<div class="filters-container"> <div class="filters-container">
<div class="filters"> <div class="filters">

View File

@ -1,18 +0,0 @@
<a href="<?= $recipe->get_absolute_url() ?>" class="daily-meal hover-anim">
<div class="meal-img">
<img src="<?= $recipe->get_image_url() ?>" alt="meal-img">
</div>
<div class="daily-meal-info">
<div class="daily-meal-title">
<h3><?= $recipe->field_title ?></h3>
<span class="meta"><i class="fa-regular fa-clock"></i><?= $recipe->field_estimated_time ?>mins to make</span>
</div>
<div class="daily-meal-ingredients">
<ul class="ingredients-list">
<?php for ($i=0; $i < count($ingredients) && $i <= 6; $i++): ?>
<li><?= $ingredients[$i]->ingredient_name ?></li>
<?php endfor; ?>
</ul>
</div>
</div>
</a>

View File

@ -1,5 +1,4 @@
<?php <?php
require_once APPS_PATH . '/Recipes/components.php';
require_once(INCLUDES_PATH . '/Const/recipes.php'); require_once(INCLUDES_PATH . '/Const/recipes.php');
the_header( the_header(
@ -15,17 +14,137 @@ the_header(
<div class="container"> <div class="container">
<div class="daily-recipes"> <div class="daily-recipes">
<?php <?php
foreach ($context['weeks'] as $day => $recipe_prefetches) { foreach (DAYS_OF_WEEK as $day) {
?> ?>
<div class="daily-meals"> <div class="daily-meals">
<h2 class="title">Your Menu for <?= ucfirst($day) ?></h2> <h2 class="title">Your Menu for <?= ucfirst($day) ?></h2>
<div class="daily-meals-grid"> <div class="daily-meals-grid">
<a href="#" class="daily-meal hover-anim">
<?php <div class="meal-img">
foreach ($recipe_prefetches as $recipe_pref) { <img src="media/recipe1.jpeg" alt="meal-img">
the_product_recipes_item($recipe_pref['origin'], $recipe_pref['relations']); </div>
} <div class="daily-meal-info">
?> <div class="daily-meal-title">
<h3>Goulash</h3>
<span class="meta"><i class="fa-regular fa-clock"></i>120mins to make</span>
</div>
<div class="daily-meal-ingredients">
<ul class="ingredients-list">
<li>Ground beef</li>
<li>Tomato sauce</li>
<li>Onion</li>
<li>Macaroni</li>
<li>Garlic</li>
<li>Cheese</li>
</ul>
</div>
</div>
</a>
<a href="#" class="daily-meal hover-anim">
<div class="meal-img">
<img src="media/recipe1.jpeg" alt="meal-img">
</div>
<div class="daily-meal-info">
<div class="daily-meal-title">
<h3>Goulash</h3>
<span class="meta"><i class="fa-regular fa-clock"></i>120mins to make</span>
</div>
<div class="daily-meal-ingredients">
<ul class="ingredients-list">
<li>Ground beef</li>
<li>Tomato sauce</li>
<li>Onion</li>
<li>Macaroni</li>
<li>Garlic</li>
<li>Cheese</li>
</ul>
</div>
</div>
</a>
<a href="#" class="daily-meal hover-anim">
<div class="meal-img">
<img src="media/recipe1.jpeg" alt="meal-img">
</div>
<div class="daily-meal-info">
<div class="daily-meal-title">
<h3>Goulash</h3>
<span class="meta"><i class="fa-regular fa-clock"></i>120mins to make</span>
</div>
<div class="daily-meal-ingredients">
<ul class="ingredients-list">
<li>Ground beef</li>
<li>Tomato sauce</li>
<li>Onion</li>
<li>Macaroni</li>
<li>Garlic</li>
<li>Cheese</li>
</ul>
</div>
</div>
</a>
<a href="#" class="daily-meal hover-anim">
<div class="meal-img">
<img src="media/recipe1.jpeg" alt="meal-img">
</div>
<div class="daily-meal-info">
<div class="daily-meal-title">
<h3>Goulash</h3>
<span class="meta"><i class="fa-regular fa-clock"></i>120mins to make</span>
</div>
<div class="daily-meal-ingredients">
<ul class="ingredients-list">
<li>Ground beef</li>
<li>Tomato sauce</li>
<li>Onion</li>
<li>Macaroni</li>
<li>Garlic</li>
<li>Cheese</li>
</ul>
</div>
</div>
</a>
<a href="#" class="daily-meal hover-anim">
<div class="meal-img">
<img src="media/recipe1.jpeg" alt="meal-img">
</div>
<div class="daily-meal-info">
<div class="daily-meal-title">
<h3>Goulash</h3>
<span class="meta"><i class="fa-regular fa-clock"></i>120mins to make</span>
</div>
<div class="daily-meal-ingredients">
<ul class="ingredients-list">
<li>Ground beef</li>
<li>Tomato sauce</li>
<li>Onion</li>
<li>Macaroni</li>
<li>Garlic</li>
<li>Cheese</li>
</ul>
</div>
</div>
</a>
<a href="#" class="daily-meal hover-anim">
<div class="meal-img">
<img src="media/recipe1.jpeg" alt="meal-img">
</div>
<div class="daily-meal-info">
<div class="daily-meal-title">
<h3>Goulash</h3>
<span class="meta"><i class="fa-regular fa-clock"></i>120mins to make</span>
</div>
<div class="daily-meal-ingredients">
<ul class="ingredients-list">
<li>Ground beef</li>
<li>Tomato sauce</li>
<li>Onion</li>
<li>Macaroni</li>
<li>Garlic</li>
<li>Cheese</li>
</ul>
</div>
</div>
</a>
</div> </div>
</div> </div>
<?php <?php

View File

@ -13,21 +13,16 @@ the_header(
<div class="container"> <div class="container">
<div class="favorites"> <div class="favorites">
<?php if(!empty($context['recipes'])): ?>
<div class="favorites-items"> <div class="favorites-items">
<?php <?php
for( $i = 0; $i < 5; $i++) {
foreach ($context['recipes'] as $recipe) { foreach ($context['recipes'] as $recipe) {
the_product_item($recipe); the_product_item($recipe);
} }
}
?> ?>
</div> </div>
<?php else: ?>
<div class="nothing">
Nothing to show
</div>
<?php endif; ?>
</div> </div>
</div> </div>

View File

@ -12,7 +12,7 @@ the_header(
?> ?>
<div id="recipe-id" hidden><?= $context['recipe']->get_id() ?></div> <div id="recipe-id" hidden><?= $context['recipe']->get_id() ?></div>
<div id="in-usermenu" hidden><?= $context['recipe']->in_usermenu; ?></div> <div id="in-usermenu" hidden></div>
<div class="container"> <div class="container">
<div class="single-recipe"> <div class="single-recipe">

View File

@ -5,8 +5,4 @@ use Lycoreco\Apps\Recipes\Models\RecipeModel;
function the_product_item(RecipeModel $recipe) function the_product_item(RecipeModel $recipe)
{ {
include APPS_PATH . '/Recipes/Templates/components/catalog-item.php'; include APPS_PATH . '/Recipes/Templates/components/catalog-item.php';
}
function the_product_recipes_item(RecipeModel $recipe, array $ingredients)
{
include APPS_PATH . '/Recipes/Templates/components/recipe-ings-item.php';
} }

View File

@ -15,16 +15,7 @@ document.addEventListener('click', (e) => {
const options = document.querySelectorAll('.dropdown-item'); const options = document.querySelectorAll('.dropdown-item');
const inUsermenu = document.getElementById('in-usermenu').textContent;
if (inUsermenu) {
options.forEach(option => {
if (option.getAttribute('data-value') === inUsermenu && option.getAttribute('data-value') !== 'remove') {
option.classList.add('dropdown-selected');
toggleBtn.textContent = option.textContent;
}
});
}
options.forEach(option => { options.forEach(option => {
option.addEventListener('click', async (e) => { option.addEventListener('click', async (e) => {
const selectedValue = option.getAttribute('data-value'); const selectedValue = option.getAttribute('data-value');

View File

@ -133,13 +133,13 @@ function the_pagination(int $count, int $elem_per_page, int $current_page)
continue; continue;
$GET['page'] = $i; $GET['page'] = $i;
?> ?>
<li><a class="btn btn-secondary" href="<?php the_GET_request($GET) ?>"><?php echo $i ?></a></li> <li><a class="btn page-btn" href="<?php the_GET_request($GET) ?>"><?php echo $i ?></a></li>
<?php endfor; ?> <?php endfor; ?>
<!-- Current page --> <!-- Current page -->
<?php if ($current_page > 0 && $current_page <= $total_pages): ?> <?php if ($current_page > 0 && $current_page <= $total_pages): ?>
<li> <li>
<div class="btn btn-primary"><?php echo $current_page ?></div> <div class="btn active page-btn"><?php echo $current_page ?></div>
</li> </li>
<?php endif ?> <?php endif ?>
@ -147,7 +147,7 @@ function the_pagination(int $count, int $elem_per_page, int $current_page)
<?php for ($i = $current_page + 1; $i <= $total_pages && $i <= $current_page + 2; $i++): <?php for ($i = $current_page + 1; $i <= $total_pages && $i <= $current_page + 2; $i++):
$GET['page'] = $i; $GET['page'] = $i;
?> ?>
<li><a class="btn btn-secondary" href="<?php the_GET_request($GET) ?>"><?php echo $i ?></a></li> <li><a class="btn page-btn" href="<?php the_GET_request($GET) ?>"><?php echo $i ?></a></li>
<?php endfor; ?> <?php endfor; ?>
</ul> </ul>
</nav> </nav>

View File

@ -1,5 +1,5 @@
<?php <?php
define('DAYS_OF_WEEK', array( define('DAYS_OF_WEEK', array(
1 => 'monday', 2 => 'tuesday', 3 => 'wednesday', 4 => 'thursday', 5 => 'friday', 6 => 'saturday', 0 => 'sunday' 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday'
)); ));