/**
  * @see ISimulationObserver::onPenaltyShoot()
  */
 public function onPenaltyShoot(SimulationMatch $match, SimulationPlayer $player, SimulationPlayer $goaly, $successful)
 {
     if ($successful) {
         YouthMatchesDataService::createMatchReportItem($this->_websoccer, $this->_db, $match->id, $match->minute, 'ymreport_penalty_success', array('player' => $player->name), $player->team->id == $match->homeTeam->id);
     } else {
         YouthMatchesDataService::createMatchReportItem($this->_websoccer, $this->_db, $match->id, $match->minute, 'ymreport_penalty_failure', array('player' => $player->name), $player->team->id == $match->homeTeam->id);
     }
 }
 /**
  * Create a match report item.
  * 
  * @see ISimulatorObserver::onSubstitution()
  */
 public function onSubstitution(SimulationMatch $match, SimulationSubstitution $substitution)
 {
     YouthMatchesDataService::createMatchReportItem($this->_websoccer, $this->_db, $match->id, $match->minute, 'ymreport_substitution', array('in' => $substitution->playerIn->name, 'out' => $substitution->playerOut->name), $substitution->playerIn->team->id == $match->homeTeam->id);
 }