CREATE SCHEMA Workouts;


CREATE TABLE Workouts.Exercises (
    id SERIAL PRIMARY KEY,
    name VARCHAR(128) UNIQUE NOT NULL,
    muscleTarget MuscleGroup NOT NULL,
    forceType Force NOT NULL DEFAULT 'Push',
    mechanicsType Mechanic NOT NULL DEFAULT 'Compound',
    instructions VARCHAR(4096) NOT NULL DEFAULT '',
    videoLink VARCHAR(1024),
    tutorialLink VARCHAR(1024)
);

CREATE INDEX exercises_forceType ON workouts.exercises USING btree (forceType);
CREATE INDEX exercises_mechanicsType ON workouts.exercises USING btree (mechanicsType);
CREATE INDEX exercises_muscleTarget ON workouts.exercises USING btree (muscleTarget);
CREATE INDEX exercises_name ON workouts.exercises USING btree (name);

INSERT INTO Workouts.Exercises
    (name, muscleTarget, forceType, mechanicsType, instructions, videoLink, tutorialLink)
VALUES (
    'Barbell Bench Press',
    'Chest',
    'Push',
    'Compound',
    'Preparation\n\nLie supine on bench. Dismount barbell from rack over upper chest using wide oblique overhand grip.\n\nExecution\nLower weight to chest. Press bar upward until arms are extended. Repeat.',
    'https://exrx.glorb.com/api/video/51453f31e81987c67e79c3ec4000ba3e/10697',
    'https://exrx.net/WeightExercises/PectoralSternal/BBBenchPress'
);


INSERT INTO Workouts.Exercises
    (name, muscleTarget, forceType, mechanicsType, instructions, videoLink, tutorialLink)
VALUES (
    'Barbell Squat (High Bar)',
    'Thighs',
    'Push',
    'Compound',
    'Preparation\n\nFrom rack with barbell at upper chest height, position bar high on back of shoulders and grasp barbell to sides. Dismount bar from rack and stand with shoulder width stance.\nExecution\n\nSquat down by bending hips back while allowing knees to bend forward, keeping back straight and knees pointed same direction as feet. Descend until thighs are just past parallel to floor. Extend knees and hips until legs are straight. Return and repeat.',
    'https://exrx.glorb.com/api/video/3a149c0a8908503bce86276bcf74e547/10080',
    'https://exrx.net/WeightExercises/Quadriceps/BBSquat'
);


INSERT INTO Workouts.Exercises
    (name, muscleTarget, forceType, mechanicsType, instructions, videoLink, tutorialLink)
VALUES (
    'Barbell Deadlift',
    'Glutes',
    'Pull',
    'Compound',
    'Preparation\n\nWith feet flat beneath bar squat down and grasp bar with shoulder width or slightly wider overhand or mixed grip.\n\nExecution\n\nLift bar by extending hips and knees to full extension. Pull shoulders back at top of lift if rounded. Return weights to floor by bending hips back while allowing knees to bend forward, keeping back straight and knees pointed same direction as feet. Repeat.',
    'https://exrx.glorb.com/api/video/508d5717dd3dc74d685a11925aa7afe4/10458',
    'https://exrx.net/WeightExercises/GluteusMaximus/BBDeadlift'
);


INSERT INTO Workouts.Exercises
    (name, muscleTarget, forceType, mechanicsType, instructions, videoLink, tutorialLink)
VALUES (
    'Barbell Standing Leg Calf Raise',
    'Calves',
    'Push',
    'Isolation',
    'Preparation\n\nSet barbell on power rack upper chest height with calf block under barbell. Position back of shoulders under barbell with both hands to sides. Position toes and balls of feet on calf block with arches and heels extending off. Lean barbell against rack and raise from supports by extending knees and hips. Support barbell against verticals with both hands to sides.\n\nExecution\n\nRaise heels by extending ankles as high as possible. Lower heels by bending ankles until calves are stretched. Repeat.',
    'https://exrx.glorb.com/api/video/3f3d82424fce04b41e0764c3fdb461b5/9908',
    'https://exrx.net/WeightExercises/Gastrocnemius/BBStandingCalfRaise'
);


INSERT INTO Workouts.Exercises
    (name, muscleTarget, forceType, mechanicsType, instructions, videoLink, tutorialLink)
VALUES (
    'Barbell Bent-over Row',
    'Back',
    'Pull',
    'Compound',
    'Preparation\n\nBend knees slightly and bend over bar with back straight. Grasp bar with wide overhand grip.\n\nExecution\n\nPull bar to upper waist. Return until arms are extended and shoulders are stretched downward. Repeat.',
    'https://exrx.glorb.com/api/video/3a149c0a8908503bce86276bcf74e547/10080',
    'https://exrx.net/WeightExercises/Quadriceps/BBSquat'
);
