public function edit($id, Requests\EditMediaRequest $request) { $media = \App\Media::get()->where('id', intval($id))->toArray(); if (empty($media)) { App: abort(404); } $data = $request->all(); unset($data['_token']); unset($data['newSeriesAbbr']); unset($data['newSeriesName']); unset($data['newCollectionName']); unset($data['newMediumName']); if ($data['numberInCollection'] == '') { $data['numberInCollection'] = NULL; } if ($data['credit'] == '') { $data['credit'] = NULL; } if ($data['summary'] == '') { $data['summary'] = NULL; } \App\Media::where('id', intval($id))->update($data); return redirect('/'); }
public function editForm() { $eventNames = \App\Event::get()->pluck('name', 'id')->toArray(); $mediaNames = \App\Media::get()->pluck('name', 'id')->toArray(); $eventIDs = \App\Event::get()->pluck('id')->toArray(); $mediaIDs = \App\Media::get()->pluck('id')->toArray(); $mediaToEvents = array(); $eventToMedia = array(); foreach ($eventIDs as $eventID) { $eventToMedia[$eventID] = \App\Media::join('event_media', 'media.id', '=', 'event_media.mediaID')->where('event_media.eventID', $eventID)->get()->pluck('name', 'id')->toArray(); } foreach ($mediaIDs as $mediaID) { $mediaToEvents[$mediaID] = \App\Event::join('event_media', 'events.id', '=', 'event_media.eventID')->where('event_media.mediaID', $mediaID)->get()->pluck('name', 'id')->toArray(); } return view('forms/editRelationships')->with(['eventNames' => $eventNames, 'mediaNames' => $mediaNames, 'eventToMedia' => $eventToMedia, 'mediaToEvents' => $mediaToEvents]); }
public function index() { /* Get data for timeline */ $eventDates = \App\Event::select('timelineDate')->distinct()->get()->pluck('timelineDate')->toArray(); $mediaDates = \App\Media::select('timelineDate')->distinct()->get()->pluck('timelineDate')->toArray(); $dates = array_unique(array_merge($eventDates, $mediaDates), SORT_REGULAR); usort($dates, array('\\App\\Http\\Controllers\\TimelineController', 'dateCompare')); $media = array(); $events = array(); foreach ($dates as $date) { $eventsForThisDate = \App\Event::get()->where('timelineDate', $date)->toArray(); $mediaForThisDate = \App\Media::get()->where('timelineDate', $date)->toArray(); usort($eventsForThisDate, array('\\App\\Http\\Controllers\\TimelineController', 'itemCompare')); usort($mediaForThisDate, array('\\App\\Http\\Controllers\\TimelineController', 'itemCompare')); $media[$date] = $mediaForThisDate; $events[$date] = $eventsForThisDate; } /* Get data for filters */ $mediums = \App\Media::select('medium')->distinct()->get()->pluck('medium')->toArray(); $tags = \App\EventTag::select('tag')->distinct()->get()->pluck('tag')->toArray(); $series = \App\Series::get()->pluck('seriesAbbreviation'); sort($mediums); sort($tags); $eventIDToTags = array(); $eventIDs = \App\Event::get()->pluck('id'); foreach ($eventIDs as $eventID) { $eventIDToTags[$eventID] = \App\EventTag::select('tag')->where('eventID', $eventID)->get()->pluck('tag')->toArray(); } $seriesToCollections = array(); foreach ($series as $thisSeries) { $seriesToCollections[$thisSeries] = \App\Media::select('collection')->where('series', $thisSeries)->distinct()->get()->pluck('collection')->toArray(); } /* Get event-media relationships */ $eventMediaPairs = \App\EventMedia::get(array('eventID', 'mediaID'))->toArray(); return view('timeline')->with(['seriesToCollections' => $seriesToCollections, 'eventMediaPairs' => $eventMediaPairs, 'eventIDToTags' => $eventIDToTags, 'mediums' => $mediums, 'events' => $events, 'dates' => $dates, 'media' => $media, 'tags' => $tags]); }
/** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { $images = Media::get(); return view('media.index', compact('images')); }