private function factions() { $class = get_class(new Faction()); $this->log($this->verb . ' Factions'); $url = $this->baseUrl . "faction?c:limit=100"; $data = $this->getCensusData($url); if (!$data) { return false; } // Collection of Eloquent objects from API $apiCollection = new Collection(); foreach ($data->faction_list as $faction) { $values = []; $values['id'] = isset($faction->faction_id) ? $faction->faction_id : null; $values['name'] = isset($faction->name->en) ? $faction->name->en : null; $values['slug'] = isset($faction->name->en) ? Str::camel($faction->name->en) : null; $apiCollection->add(new Faction($values)); } // Local factions $factions = Faction::all(); $this->addModels($class, $factions, $apiCollection); $this->deleteModels($class, $factions, $apiCollection); $this->updateModels($class, Faction::all(), $apiCollection, ['name', 'slug']); }