public function index() { $urls = []; $routes = Route::getRoutes(); foreach ($routes as $route) { $path = $route->getPath(); $actions = $route->getAction(); $params = $route->parameterNames(); $controller = $actions['controller']; if (starts_with($path, '_') or str_contains($controller, 'RedirectController') or count($params)) { continue; } $urls[] = url($path); } foreach (Campus::all() as $item) { $urls[] = url($item->url); } foreach (Event::all() as $item) { $urls[] = url($item->url); } foreach (Series::withDrafts()->get() as $item) { $urls[] = url($item->url); } foreach (Staff::all() as $item) { $urls[] = url($item->url); } foreach (MissionLocation::all() as $item) { $urls[] = url($item->url); } foreach (Video::withDrafts()->get() as $item) { $urls[] = url($item->url); } return response()->json($urls); }
/** * Define your route model bindings, pattern filters, etc. * * @param \Illuminate\Routing\Router $router * @return void */ public function boot(Router $router) { // parent::boot($router); $router->model('campus', 'FaithPromise\\Shared\\Models\\Campus'); $router->model('study', 'FaithPromise\\Shared\\Models\\Study'); $router->model('event', 'FaithPromise\\Shared\\Models\\Event'); $router->model('organization', 'FaithPromise\\Shared\\Models\\Organization'); $router->model('staff', 'FaithPromise\\Shared\\Models\\Staff'); $router->model('series', 'FaithPromise\\Shared\\Models\\Series'); $router->bind('series_video', function ($value, $route) { $series = $route->parameter('series'); return \FaithPromise\Shared\Models\Video::where('series_id', '=', $series->id)->where('slug', '=', $value)->first(); }); }
private function getItem($id) { return Video::withDrafts()->with(['speaker' => function ($query) { $query->select('id', 'slug', 'display_name'); }])->find($id); }
private function importVideos() { $table = 'videos'; $items = $this->getVideos(); Video::unguard(); DB::table($table)->truncate(); foreach ($items as $item) { $series = Series::findBySlug($item->series_slug); $speaker = Staff::findBySlug($item->speaker_slug); $data = get_object_vars($item); unset($data['series_slug']); unset($data['speaker_slug']); $model = new Video($data); $model->series_id = $series->id; $model->speaker_id = is_null($speaker) ? null : $speaker->id; $model->save(); } }
public function video($series, $video) { $videos = Video::with('Series')->where('series_id', '=', $series->id)->orderBy('sermon_date', 'asc')->get(); return view('series_video', ['series' => $series, 'video' => $video, 'videos' => $videos]); }