Exemplo n.º 1
0
 public function addToLightboxByName($image_id, $name_lightbox)
 {
     if (Request::ajax()) {
         if (Auth::user()->check()) {
             $lightbox = Lightbox::where('name', '=', $name_lightbox)->where('user_id', '=', Auth::user()->get()->id)->get()->toArray();
             if (count($lightbox) == 0) {
                 //Add to Lightbox-Images table
                 $lightbox = new Lightbox();
                 $lightbox->user_id = Auth::user()->get()->id;
                 $lightbox->name = $name_lightbox;
                 $lightbox->save();
                 $lightbox_id = $lightbox->id;
             } else {
                 $lightbox_id = $lightbox['id'];
             }
             $lightbox_images = LightboxImages::where('lightbox_id', '=', $lightbox_id)->where('image_id', '=', $image_id)->get()->toArray();
             $count = count($lightbox_images);
             if ($count == 0) {
                 //Add to Lightbox-Images table
                 $data = LightboxImages::create(array('lightbox_id' => $lightbox_id, 'image_id' => $image_id));
             } else {
                 $data = true;
             }
             if ($data) {
                 return Response::json(['result' => 'success', 'message' => 'Added to your lightbox successfully.', 'count' => $count]);
             } else {
                 return Response::json(['result' => 'failed', 'message' => 'Sory, could not add to your lightbox.']);
             }
         } else {
             //Not Login, add by ip address
             $client_ip = Request::server('REMOTE_ADDR');
             $lightbox = Lightbox::where('name', '=', $client_ip)->first();
             if (!$lightbox) {
                 //Add to Lightbox table
                 $lightbox = new Lightbox();
                 $lightbox->user_id = 0;
                 $lightbox->name = $client_ip;
                 $lightbox->save();
             }
             $lightbox_id = $lightbox->id;
             $count = Lightbox::select('lightbox.name')->join('lightbox_images', 'lightbox_images.lightbox_id', '=', 'lightbox.id')->where('lightbox.name', '=', $client_ip)->where('lightbox_images.image_id', '=', $image_id)->get()->count();
             if ($count == 0) {
                 //Add to Lightbox-Images table
                 $data = LightboxImages::create(array('lightbox_id' => $lightbox_id, 'image_id' => $image_id));
             }
             return Response::json(['result' => 'success', 'case' => 'favorites', 'count' => $count]);
             //return Response::json(['result'=>'failed', 'message'=>'Please login first.']);
         }
     }
     return Redirect::route('home');
 }