$sport_id) { $matches = LogifutureData::load($logifuture_sport_id); // Notice::note($matches, 'b'); if ($echo_data) { Notice::note($matches, 'g'); } if (! is_array($matches)) { return; } if (! isset($matches['error'])) { foreach ($matches as $match) { // Notice::note($match, 'r'); if (strpos($match['sportCategory'], 'Simulated Reality') === false) { $event = MapEvent::filter($sport_id, $match); FindFixture::find($event); // Notice::note($event, 'r'); if (isset($event['id'])) { // Notice::note($event, 'b'); $event_id_collector[] = $event['id']; DB::transaction(function () use ($event, $sport_id) { EventBookmaker::updateOrCreate([ 'event_id' => $event['id'], 'sport_id' => $sport_id, 'bookmaker_id' => Nuh::$options['bookmaker_id'], ], ['in_feed' => 1, 'bmoid' => $event['id'], 'starttime' => $event['starttime']]); }, 5); switch ($sport_id) { case 1: Soccer::get($event, $match); break; case 2: Icehockey::get($event, $match); break; case 3: Basketball::get($event, $match); break; case 5: Tennis::get($event, $match); break; default: Notice::note('SPORT NOT IMPLEMENTED', 'r', 1); break; } } } } } } if ($event_id_collector) { if ($debug) { Notice::note($event_id_collector, 'r'); } EventBookmaker::whereNotIn('event_id', $event_id_collector)->where('bookmaker_id', Nuh::$options['bookmaker_id'])->update(['in_feed' => 0]); $tables = ['odds_2ways', 'odds_2ways_s1', 'odds_3ways', 'odds_totals', 'odds_points', 'odds_ggng', 'odds_dc', 'odds_tq', 'odds_points_q1', 'odds_totals_q1']; foreach ($tables as $table) { DB::transaction(function () use ($table, $event_id_collector) { DB::table($table)->where('bookmaker_id', Nuh::$options['bookmaker_id'])->whereNotIn('event_id', $event_id_collector)->update(['flags' => 0]); }, 5); } } } }