/**
  * Update the specified resource in storage.
  *
  * @param  \Gladiator\Requests\FeaturedReportbackRequest  $request
  * @param  \Gladiator\Models\Competition  $competition
  * @param  \Gladiator\Models\Message  $message
  * @return \Illuminate\Http\Response
  */
 public function updateFeaturedReportback(FeaturedReportbackRequest $request, Competition $competition, Message $message)
 {
     $reportback = FeaturedReportback::where('competition_id', '=', $competition->id)->where('message_id', '=', $message->id)->first();
     // @TODO: Make a function for this, potentially move it out of this controller.
     if (!isset($reportback)) {
         $reportback = new FeaturedReportback();
         $reportback->competition_id = $competition->id;
         $reportback->message_id = $message->id;
         $reportback->save();
     }
     $reportback->fill($request->all())->save();
     return redirect()->route('competitions.message', [$competition, $competition->contest])->with('status', 'Featured reportback has been updated!');
 }
Пример #2
0
 protected function getFeaturedReportback()
 {
     if (!isset($this->competition)) {
         return;
     }
     $featuredReportback = FeaturedReportback::where('competition_id', '=', $this->competition->id)->where('message_id', '=', $this->message->id)->first();
     if (isset($featuredReportback) && isset($featuredReportback->reportback_id) && isset($featuredReportback->reportback_item_id)) {
         $reportback = $this->manager->appendReportbackItemToMessage($featuredReportback->reportback_id, $featuredReportback->reportback_item_id);
         if ($reportback) {
             return $featuredReportback = ['shoutout' => $featuredReportback->shoutout, 'image_url' => $reportback->media->uri, 'caption' => $reportback->caption];
         }
     }
     return null;
 }