public function fromEventsFacts($request, $stdEventFacts) { $result = ''; $correctedPlaceTitles = ESINHandler::correctPlaceTitles($request, $stdEventFacts); $usedEvents = array(); for ($i = 0; $i < count($stdEventFacts); $i++) { $id = $stdEventFacts[$i]; $event = $this->fromEvent($request, $id, $i, $correctedPlaceTitles); if (!$event) { for ($j = count($stdEventFacts); $request->getVal("event_fact{$j}"); $j++) { if ($request->getVal("event_fact{$j}") == 'Alt ' . $id) { $event = $this->fromEvent($request, $id, $j, $correctedPlaceTitles); $usedEvents[$j] = true; } } } if ($event) { $result .= $event; } } for ($i = count($stdEventFacts); $request->getVal("event_fact{$i}"); $i++) { if (!@$usedEvents[$i]) { $type = $request->getVal("event_fact{$i}"); $result .= $this->fromEvent($request, $type, $i, $correctedPlaceTitles); } } return $result; }