/**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/1.jpg', 'exercise_id' => 1, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/2.jpg', 'exercise_id' => 1, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/3.jpg', 'exercise_id' => 2, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/4.jpg', 'exercise_id' => 2, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/5.jpg', 'exercise_id' => 3, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/6.jpg', 'exercise_id' => 3, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/7.jpg', 'exercise_id' => 4, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/8.jpg', 'exercise_id' => 4, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/9.jpg', 'exercise_id' => 5, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/10.jpg', 'exercise_id' => 5, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/11.jpg', 'exercise_id' => 6, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/12.jpg', 'exercise_id' => 6, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/13.jpg', 'exercise_id' => 7, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/14.jpg', 'exercise_id' => 7, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/15.jpg', 'exercise_id' => 8, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/16.jpg', 'exercise_id' => 8, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/17.jpg', 'exercise_id' => 9, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/18.jpg', 'exercise_id' => 9, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/19.jpg', 'exercise_id' => 9, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/20.jpg', 'exercise_id' => 9, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/21.jpg', 'exercise_id' => 10, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/22.jpg', 'exercise_id' => 10, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/23.jpg', 'exercise_id' => 11, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
     DB::table('exercise_images')->insert(['url' => ExerciseImage::getUrlAppend() . 'exercises/normal/24.jpg', 'exercise_id' => 11, 'created_at' => Carbon::now()->format('Y-m-d H:i:s')]);
 }
 public static function boot()
 {
     parent::boot();
     // cause a delete of a exercise to cascade to children so they are also deleted
     static::deleting(function ($exercise) {
         $images = $exercise->images()->get(['url']);
         ExerciseImage::deleteImages($images);
         ExerciseImage::deleteThumbnail($exercise->thumbnail_url);
     });
 }
 /**
  * Responds to requests to GET /exercises/edit/{id}/images/delete/{imageId}
  */
 public function getDeleteImages($id, $imageId)
 {
     $exercise = Exercise::find($id);
     $user = Auth::user();
     if ($exercise->created_by_id != $user->id || !$user->hasRole('administrator')) {
         return view('errors.403');
     }
     $exercise_image = ExerciseImage::find($imageId);
     $exercise_image->delete();
     return redirect('exercises/edit/' . $id . '/images');
 }