-- ===== LOOKUP DATA =====

INSERT INTO role (name) VALUES 
('ADMIN'), ('USER');

INSERT INTO cuisine (name) VALUES 
('Italian'), ('Mexican'), ('Asian'), ('Mediterranean');

INSERT INTO category (name) VALUES 
('Dessert'), ('Main'), ('Salad'), ('Soup');

INSERT INTO tags (text) VALUES 
('Vegan'), ('Quick'), ('Healthy'), ('Spicy');

INSERT INTO allergen (name) VALUES 
('Gluten'), ('Milk'), ('Nuts');

INSERT INTO ingredient (name) VALUES 
('Tomato'), ('Cheese'), ('Chicken'), ('Rice'), ('Onion');


-- ===== USERS =====

INSERT INTO "user" (username, email, password) VALUES
('user1', 'user1@test.com', 'Password1'),
('user2', 'user2@test.com', 'Password2'),
('user3', 'user3@test.com', 'Password3');


-- ===== USER RELATIONS =====

INSERT INTO user_role VALUES
(1,1),(2,2),(3,2);

INSERT INTO user_allergen VALUES
(1,1),(2,2);


-- ===== PREFERENCES =====

INSERT INTO preferences (user_id, calorie_limit, spice_level, max_proteins, max_cooking_time)
VALUES
(1,2000,3,100,60),
(2,1800,2,80,45);

INSERT INTO preferences_cuisine VALUES
(1,1),(1,2),(2,3);


-- ===== RECIPES =====

INSERT INTO recipe (name, total_time, calories, cuisine_id)
VALUES
('Pasta',25,400,1),
('Tacos',20,500,2),
('Rice Bowl',30,450,3),
('Salad',15,200,4);


-- ===== RELATIONS =====

INSERT INTO recipe_category VALUES
(1,2),(2,2),(3,2),(4,3);

INSERT INTO recipe_tags VALUES
(1,1),(1,2),(2,4);

INSERT INTO recipe_ingredient VALUES
(1,1,'200g'),
(1,2,'100g'),
(2,3,'150g'),
(3,4,'200g'),
(4,5,'50g');

INSERT INTO ingredient_allergen VALUES
(2,2);


-- ===== INSTRUCTIONS =====

INSERT INTO instruction (recipe_id, step_number, text) VALUES
(1,1,'Cook pasta'),
(1,2,'Add sauce'),
(2,1,'Cook meat');

INSERT INTO instruction_media (instruction_id, url, type)
VALUES
(1,'img1.jpg','image');


-- ===== FORUM =====

INSERT INTO forumpost (user_id, recipe_id) VALUES
(1,1),(2,2);

INSERT INTO forumpost_like VALUES
(1,1),(2,1);

INSERT INTO forumpost_comment (user_id, forumpost_id, content)
VALUES
(1,1,'Nice!'),
(2,1,'Looks good');


-- ===== USER ACTIONS =====

INSERT INTO recipe_favorite VALUES
(1,1),(2,2);

INSERT INTO recipe_attempt VALUES
(1,1),(2,2);

INSERT INTO recipe_review (user_id, recipe_id, rating, comment)
VALUES
(1,1,5,'Great'),
(2,2,4,'Good');

INSERT INTO recipe_view_big (user_id, recipe_id)
SELECT 
    (random()*1000)::int,
    (random()*1000)::int
FROM generate_series(1, 1000000);


INSERT INTO recipe_dislike VALUES
(1,2);