function getAirlines($callsign = null) { if (is_null($this->airlines)) { $this->airlines = Airline::get(); } if (!is_null($callsign)) { return $this->airlines->first(function ($key, $airline) use($callsign) { return preg_match('/^' . $airline->icao . '[0-9]{1,5}[A-Z]{0,2}$/', $callsign); }); } return $this->airlines; }
protected function prepareDatabase() { // Get database records for all airlines, airports, registrations $this->airlines = Airline::get(); $this->registrations = Registration::get()->each(function ($registration) { $registration->prefix = str_replace('-', '', $registration->prefix); if (!$registration->regex) { $registration->prefix .= '.*'; } }); }