public function getList() { $mods = Mod::with(array('versions' => function ($query) { $query->orderBy('modversions.updated_at', 'desc'); }))->get(); return View::make('mod.list')->with(array('mods' => $mods)); }
public function getTableMods($version = 'all') { $cache_key = 'table-mods-' . $version; if (Cache::tags('mods')->has($cache_key)) { $mods_array = Cache::tags('mods')->get($cache_key); } else { $mods_array = []; $mod_id_array = []; $version = $this->getVersion($version); if ($version == 'all') { $raw_mods = Mod::with('versions')->with('authors')->get(); } else { $raw_version = MinecraftVersion::where('name', '=', $version)->with('mods')->first(); $raw_mods = $raw_version->mods()->with('authors')->with('versions')->get(); } foreach ($raw_mods as $mod) { if ($mod->mod_list_hide == 1) { continue; } if (in_array($mod->id, $mod_id_array)) { continue; } $mods_array[] = $this->buildModArray($mod); $mod_id_array[] = $mod->id; } Cache::tags('mods')->forever($cache_key, $mods_array); } return $this->buildDTModOutput($mods_array); }