/**
  * Assigns variables to the template engine.
  */
 public function assignVariables()
 {
     // call assignVariables event
     EventHandler::fireAction($this, 'assignVariables');
     // assign variables
     WCF::getTPL()->assign(array('isRegistered' => WCF::getUser()->userID > 0, 'canAddContest' => WCF::getUser()->getPermission('user.contest.canAddContest'), 'availableClasses' => $this->classList ? $this->classList->getObjects() : array(), 'availableJurys' => $this->juryList ? $this->juryList->getObjects() : array(), 'availableParticipants' => $this->participantList ? $this->participantList->getObjects() : array(), 'availableSponsors' => $this->sponsorList ? $this->sponsorList->getObjects() : array(), 'availablePrices' => $this->priceList ? $this->priceList->getObjects() : array(), 'availableTags' => MODULE_TAGGING ? $this->tagList->getObjects() : array(), 'latestEntries' => $this->latestEntryList ? $this->latestEntryList->getObjects() : array(), 'latestSolutions' => $this->latestSolutionList ? $this->latestSolutionList->getObjects() : array(), 'advertiseParticipant' => $this->advertiseParticipant, 'advertiseSponsor' => $this->advertiseSponsor, 'advertiseJury' => $this->advertiseJury));
 }
 /**
  * @see Page::readData()
  */
 public function readData()
 {
     parent::readData();
     if ($this->classID) {
         $class = new ContestClass($this->classID);
         $val = WCF::getLanguage()->get($class->description);
         if (!empty($val)) {
             $this->description[] = $val;
         }
     }
     // read entries
     $this->entryList->sqlLimit = $this->itemsPerPage;
     $this->entryList->sqlOffset = ($this->pageNo - 1) * $this->itemsPerPage;
     $this->entryList->readObjects();
     // init todo list
     require_once WCF_DIR . 'lib/data/contest/crew/todo/ContestCrewTodoList.class.php';
     $this->todoList = new ContestCrewTodoList();
     $this->todoList->readObjects();
     // init sidebar
     $this->sidebar = new ContestSidebar();
     // read tags
     if (MODULE_TAGGING) {
         $this->tagList->readObjects();
         $this->tags = $this->tagList->getObjects();
     }
 }