コード例 #1
0
 public function index()
 {
     $user = Auth::user();
     if ($user->role() !== User::ROLE_MODERATOR) {
         abort(404);
     }
     $propositionsFactory = new PropositionFactory();
     $viewUser = ['fullName' => $user->firstName() . " " . $user->lastName(), 'firstName' => $user->firstName(), 'lastName' => $user->lastName(), 'contactEmail' => $user->contactEmail(), 'email' => $user->email(), 'avatar' => $user->avatar(), 'belongsToSchool' => $user->belongsToSchool(), 'schoolEmail' => $user->googleEmail(), 'role' => $user->role(), 'propositionsCount' => $propositionsFactory->getPropositionsCountByUser($user->userId())];
     $viewPropositions = array();
     foreach ($propositionsFactory->getQueuedPropositionsExeptUsers($user->userId()) as $proposition) {
         $viewPropositions[$proposition->propositionId()] = ['id' => $proposition->propositionId(), 'propositionSort' => $proposition->propositionSort(), 'propositionLong' => $proposition->propositionLong(), 'proposer' => $proposition->proposerId(), 'propositionCreationDate' => Carbon::createFromTimestamp(strtotime($proposition->date_created()))->diffForHumans(), 'userHasVoted' => $propositionsFactory->getUserVoteStatus($proposition->propositionId(), $user->userId()), 'deadline' => $proposition->deadline(), 'statusId' => $proposition->status(), 'ending_in' => Carbon::now()->diffInDays(Carbon::createFromTimestamp(strtotime($proposition->deadline())), false)];
     }
     return view('moderator.approval_new', ['fullName' => $user->firstName() . " " . $user->lastName(), 'user' => $viewUser, 'propositions' => $viewPropositions]);
 }