/** * Store a newly created resource in storage. * * @param Request $request * @return Response */ public function store(Request $request) { $rules = ['nama' => 'required|max:50', 'kategori' => 'required', 'singkat' => 'required|max:2048', 'lengkap' => 'required|max:65536', 'kecamatan' => 'required', 'alamat' => 'required|max:255', 'latitude' => 'required', 'longitude' => 'required']; $v = Validator::make($request->all(), $rules); if ($v->fails()) { return redirect()->back()->withInput($request->all())->withErrors($v); } else { $peta = new Peta(); $peta->kategori_id = $request->input('kategori'); $peta->nama_lokasi = $request->input('nama'); $peta->slug_nama = str_slug($request->input('nama')); $peta->deskripsi_singkat = $request->input('singkat'); $peta->deskripsi_lengkap = $request->input('lengkap'); $peta->alamat = $request->input('alamat'); $peta->kecamatan_id = $request->input('kecamatan'); $peta->latitude = $request->input('latitude'); $peta->longitude = $request->input('longitude'); $peta->save(); for ($i = 0; $i < count($request->input('files')); $i++) { $namafoto = $request->input('nama'); $a = $i + 1; $ekstensi = explode('.', $request->input('files')[$i]); $newname = str_slug($namafoto . ' ' . $a) . '.' . $ekstensi[1]; rename($request->input('files')[$i], 'assets/img/cagar-budaya/' . $newname); $foto = new Foto(); $foto->peta_id = Peta::max('id'); $foto->keterangan_foto = $namafoto . ' ' . $a; $foto->nama_file = $newname; $foto->url_foto = 'assets/img/cagar-budaya/' . $newname; $foto->save(); } $video = new Video(); $video->peta_id = Peta::max('id'); $video->nama_video = $request->input('nama') . ' Video'; $video->link_video = $request->input('video'); $video->save(); return redirect('admin/peta')->with('message', 'Data peta cagar budaya berhasil ditambahkan!'); } }
public function addToDB($collect, $streams, $users) { // Images $collection = collect($collect); $tids = $this->formatCollection(Image::all(['tid'])); $filtered = $collection->filter(function ($item) use($tids) { return !in_array($item['tid'], $tids); }); Image::insert($filtered->toArray()); // Videos $collection = collect($streams); $tids = $this->formatCollection(Video::all(['tid'])); $filtered = $collection->filter(function ($item) use($tids) { return !in_array($item['tid'], $tids); }); Video::insert($filtered->toArray()); // Users $collection = collect($users); $usernames = array_map('strtolower', $this->formatCollection(User::all(['user']), true)); $filtered = $collection->filter(function ($item) use($usernames) { return !in_array(strtolower($item['user']), $usernames); }); User::insert($filtered->toArray()); }