Added new property for Recipe

This commit is contained in:
Stepan 2025-07-02 20:41:41 +02:00
parent 1f43f408cc
commit ae65ec769a

View File

@ -16,6 +16,7 @@ class RecipeModel extends BaseModel
public $field_created_at; public $field_created_at;
public $category_name; public $category_name;
public $is_in_favorite = 0;
const STATUS = [['publish', 'Publish'], ['pending', 'Pending']]; const STATUS = [['publish', 'Publish'], ['pending', 'Pending']];
@ -48,6 +49,23 @@ class RecipeModel extends BaseModel
'status' => 'string', 'status' => 'string',
'created_at' => 'DateTime' 'created_at' => 'DateTime'
]; ];
protected static function get_additional_fields(){
$add_fields = parent::get_additional_fields();
// If user is authorized, we also check product in thw wishlist
if(CURRENT_USER) {
$add_fields = array_merge($add_fields, array(
[
"field" => [
"MAX(CASE WHEN fav.user_id = ". CURRENT_USER->get_id() ." THEN 1 ELSE 0 END) AS is_in_favorite"
],
"join_table" => "recipe_favorites fav ON fav.recipe_id = obj.id"
]
));
}
return $add_fields;
}
public static function init_table() public static function init_table()
{ {
$result = db_query('CREATE TABLE ' . static::$table_name . ' ( $result = db_query('CREATE TABLE ' . static::$table_name . ' (