make(true); } public static function getOptions() { return Variety::orderBy('name')->get()->pluck('name','id')->toArray(); } public static function getOptionsWithSpecie() { $varieties = Variety::with('specie')->get(); $data = []; foreach ($varieties as $variety) { $data[] = ['id' => $variety->id, 'text' => (isset($variety->specie->name) ? $variety->specie->name . ' ' : '') . $variety->name]; } return collect($data)->sortBy('text')->values()->all(); } public static function getAll() { return Variety::orderBy('name','asc')->get(); } public static function get($id) { return Variety::find($id); } public static function getWithImages($id) { $variety = self::get($id); $variety->getMedia(); // $variety = $variety->toArray(); foreach ($variety->media as $key => $media) { $variety->media[$key]['url'] = $media->getUrl(); } return $variety; } public static function store($data) { return isset($data['id']) ? self::update($data) : self::create($data); } public static function create($data) { return Variety::create($data); } public static function update($data) { $variety = self::get($data['id']); $variety->update($data); return $variety; } public static function destroy($id) { return Variety::destroy($id); } public static function storeImages($variety, $files) { if ($files) { foreach ($files as $file) { $variety->addMedia($file)->toMediaCollection('images'); } } } }