public function actionDefault($id)
 {
     $solution = $this->solutionRepository->find($id);
     $this->setupCourseRegistry($solution);
     if (!$this->courseRegistry->unit->hasReviewsPhaseStarted() && !$this->user->isAllowed('solution', 'viewAnytime')) {
         throw new \Nette\Application\BadRequestException('Forbidden', 403);
     }
     if ($this->user->isAllowed('solution', 'viewLog')) {
         $this->template->solutionLog = $this->logRepository->findByEntity('Solution', $id);
     }
 }
 public function logEvent(\LeanMapper\Entity $entity, $action)
 {
     $log = new Log();
     $log->entity_name = $entity->getConventionalName();
     $log->entity_identifier = $entity->id;
     $log->user = $this->userRepository->find($this->user->id);
     $log->logged_at = new DateTime();
     $log->action = $action;
     $this->logRepository->persist($log);
 }