/** * Display the review page * @param int $id * @return Response */ public function studioReviews($id, Request $request) { if (!$request->ajax()) { dd("NO ASYNC REQUEST"); } $studio = Studio::find($id); $isStudioProfile = false; $reviews = Review::where('user_id', $studio->user->id)->orderBy('created_at', 'desc')->get(); if (Auth::check()) { if ($studio->user_id == Auth::User()->id) { $isStudioProfile = true; } } return view('ajax.reviews', ['profile' => $studio, 'isSelf' => $isStudioProfile, 'reviews' => $reviews]); }
/** * Upload Tattoo * * @return View */ public function uploadTattoo(Request $request) { $user = Auth::user(); if ($request->hasFile('tattoo')) { //upload an image to the /img/tmp directory and return the filepath. // dd($request); $file = $request->file('tattoo'); $tmpFilePath = '/uploads/images/original/'; $tmpFileName = 'tattoo-' . time() . '-' . $file->getClientOriginalName(); //save original file $file = $file->move(public_path() . $tmpFilePath, $tmpFileName); $path = $tmpFilePath . $tmpFileName; //edit image $img = \Image::make($file); $img->backup(); // reset image (return to backup state) $img->reset(); $img->fit(360); //240*240 $img->save('uploads/images/thumbnail/' . $tmpFileName); // reset image (return to backup state) $img->reset(); $img->fit(120); //100*100 $img->save('uploads/images/small/' . $tmpFileName); //save tattoo in DB $tattoo = new Tattoo(); $tattoo->title = $request->input('title'); $tattoo->url = $tmpFileName; $tattoo->description = $request->input('description'); $tattoo->user_id = $user->id; $tattoo->approved = false; if ($request->input('type') == 'member') { if ($request->input('id') == $user->id) { $tattoo->approved = false; //member - self tattoos ll never be approved for public place, only visible to member page(always, no approval needed) $tattoo->save(); } return redirect('member/' . $request->input('id'))->with('success', "Successfully uploaded!"); } elseif ($request->input('type') == 'artist') { $artist = Artist::find($request->input('id'))->first(); //if uploaded by self if ($artist->user->id == $user->id) { $tattoo->approved = true; } $artist->tattoos()->save($tattoo); return redirect('artist/' . $request->input('id'))->with('success', "Successfully uploaded!"); } elseif ($request->input('type') == 'studio') { $studio = Studio::find($request->input('id'))->first(); //if uploaded by self if ($studio->user->id == $user->id) { $tattoo->approved = true; } $studio->tattoos()->save($tattoo); return redirect('studio/' . $request->input('id'))->with('success', "Successfully uploaded!"); } else { session()->flash('error', "Error in uploading tattoo!! Please try again.."); } } else { session()->flash('error', "Please select a file!!"); } return redirect('/'); }
/** * Display Studio profile * * @return View */ public function studio($id) { $studio = Studio::find($id); $tattoos = Tattoo::whereIn('artist_id', $studio->artists->lists('user_id'))->get(); $studio->cover = url('uploads/images/large/' . $studio->cover); return view('pages.studio', ['studio' => $studio, 'tattoos' => $tattoos]); }