Beispiel #1
0
 /**
  * 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]);
 }