</div>
                </div>
                {{--Resultados--}}
                <div class="col-xs-12 col-sm-9">
                    <div id="results">
                    @if(count($ads)===0)
                        <div style="margin-top:30px;font-size:16px;font-weight:bold;color:#666;">
                            No se encontraron resultados con los criterios de búsqueda elegidos.
                        </div>
                    @endif
                    @foreach($ads as $ad)
                        <div class="row row-ad" style="margin-top:30px;">
                            <input type="hidden" class="ad-id" value="{{ $ad->ad_id }}">
                            {{--Slider de thumbnails--}}
                            <?php 
$thumbs = \App\AdPic::where('ad_id', $ad->ad_id)->get();
?>
                            @if(count($thumbs))
                            <div class="hidden-xs col-sm-4 slider-container" style="padding-right:0;">
                                <ul class="thumbs-slider">
                                @foreach($thumbs as $thumb)
                                    @if(substr($thumb->filename, 0, 4) === 'http')
                                    <li style="background-image: url('{{ $thumb->filename }}');
                                        background-size: cover;">&nbsp;</li>
                                    @else
                                    <li style="background-image: url('{{ asset('ads/thumbnails/thumb_'.$thumb->filename) }}');
                                        background-size: cover;">&nbsp;</li>
                                    @endif
                                @endforeach
                                </ul>
                                <div class="slide-counter text-right" style="width:100%;">
 public function delete(Request $request)
 {
     //users to be deleted
     $data = [];
     //check for single delete
     if (isset($request->id)) {
         $data[] = $request->id;
     }
     //check for mass delete if no single delete
     if (empty($data)) {
         $data = $request->input('user_id');
     }
     //delete
     if (!empty($data)) {
         foreach ($data as $k => $v) {
             $u = User::find($v);
             //get all user ads
             $userAds = Ad::where('user_id', $u->user_id)->get();
             if (!$userAds->isEmpty()) {
                 foreach ($userAds as $ka => $va) {
                     //delete ads images
                     $more_pics = AdPic::where('ad_id', $va->ad_id)->get();
                     if (!$more_pics->isEmpty()) {
                         foreach ($more_pics as $km => $vm) {
                             @unlink(public_path('uf/adata/') . '740_' . $vm->ad_pic);
                             @unlink(public_path('uf/adata/') . '1000_' . $vm->ad_pic);
                             $vm->delete();
                         }
                     }
                     if (!empty($va->ad_pic)) {
                         @unlink(public_path('uf/adata/') . '740_' . $va->ad_pic);
                         @unlink(public_path('uf/adata/') . '1000_' . $va->ad_pic);
                     }
                     $va->delete();
                 }
             }
             //check for avatar and delete if any
             if (!empty($u->avatar)) {
                 @unlink(public_path('uf/udata/') . '100_' . $u->avatar);
             }
             $u->delete();
         }
         //clear cache, set message, redirect to list
         Cache::flush();
         session()->flash('message', trans('admin_common.User and All User Ads Deleted'));
         return redirect(url('admin/user'));
     }
     //nothing for deletion set message and redirect
     session()->flash('message', trans('admin_common.Nothing for deletion'));
     return redirect(url('admin/user'));
 }
 public function deleteimg(Request $request)
 {
     $id = 0;
     $ad_id = 0;
     if (isset($request->id)) {
         $id = $request->id;
     }
     if (isset($request->ad_id)) {
         $ad_id = $request->ad_id;
     }
     //delete
     if (!empty($id) && !empty($ad_id)) {
         $pic = AdPic::where('ad_id', $ad_id)->where('ad_pic_id', $id)->first();
         if ($pic) {
             @unlink(public_path('uf/adata/') . '740_' . $pic->ad_pic);
             @unlink(public_path('uf/adata/') . '1000_' . $pic->ad_pic);
             $pic->delete();
         }
         //clear cache, set message, redirect to list
         Cache::flush();
         return redirect(url('admin/ad/edit/' . $ad_id));
     }
     return redirect(url('admin/ad/edit/' . $ad_id));
 }
 public function postAdEdit(Request $request)
 {
     $rules = ['ad_title' => 'required|max:255', 'category_id' => 'required|integer|not_in:0', 'ad_description' => 'required|min:50', 'type_id' => 'required|integer|not_in:0', 'ad_image.*' => 'mimes:jpeg,bmp,png|max:300', 'location_id' => 'required|integer|not_in:0', 'ad_puslisher_name' => 'required|string|max:255', 'ad_email' => 'required|email|max:255', 'policy_agree' => 'required'];
     $messages = ['require_one_of_array' => 'You need to upload at least one ad pic.'];
     $validator = Validator::make($request->all(), $rules, $messages);
     /**
      * type 1 common ads validation
      */
     $validator->sometimes(['ad_price_type_1'], 'required|numeric|not_in:0', function ($input) {
         if ($input->category_type == 1 && $input->price_radio == 1) {
             return true;
         }
         return false;
     });
     $validator->sometimes(['condition_id_type_1'], 'required|integer|not_in:0', function ($input) {
         return $input->category_type == 1 ? 1 : 0;
     });
     /**
      * type 2 estate ads validation
      */
     $validator->sometimes(['ad_price_type_2'], 'required|numeric|not_in:0', function ($input) {
         if ($input->category_type == 2) {
             return true;
         }
         return false;
     });
     $validator->sometimes(['estate_type_id'], 'required|integer|not_in:0', function ($input) {
         return $input->category_type == 2 ? 1 : 0;
     });
     $validator->sometimes(['estate_sq_m'], 'required|numeric|not_in:0', function ($input) {
         return $input->category_type == 2 ? 1 : 0;
     });
     /**
      * type 3 cars ads validation
      */
     $validator->sometimes(['car_brand_id'], 'required|integer|not_in:0', function ($input) {
         return $input->category_type == 3 ? 1 : 0;
     });
     $validator->sometimes(['car_model_id'], 'required|integer|not_in:0', function ($input) {
         return $input->category_type == 3 ? 1 : 0;
     });
     $validator->sometimes(['car_engine_id'], 'required|integer|not_in:0', function ($input) {
         return $input->category_type == 3 ? 1 : 0;
     });
     $validator->sometimes(['car_transmission_id'], 'required|integer|not_in:0', function ($input) {
         return $input->category_type == 3 ? 1 : 0;
     });
     $validator->sometimes(['car_modification_id'], 'required|integer|not_in:0', function ($input) {
         return $input->category_type == 3 ? 1 : 0;
     });
     $validator->sometimes(['car_year'], 'required|integer|not_in:0', function ($input) {
         return $input->category_type == 3 ? 1 : 0;
     });
     $validator->sometimes(['car_kilometeres'], 'required|integer|not_in:0', function ($input) {
         return $input->category_type == 3 ? 1 : 0;
     });
     $validator->sometimes(['car_condition_id'], 'required|integer|not_in:0', function ($input) {
         return $input->category_type == 3 ? 1 : 0;
     });
     $validator->sometimes(['condition_id_type_3'], 'required|integer|not_in:0', function ($input) {
         return $input->category_type == 3 ? 1 : 0;
     });
     $validator->sometimes(['ad_price_type_3'], 'required|numeric|not_in:0', function ($input) {
         return $input->category_type == 3 ? 1 : 0;
     });
     if ($validator->fails()) {
         $this->throwValidationException($request, $validator);
     }
     $ad_data = $request->all();
     //fill aditional fields
     $ad_data['user_id'] = $request->user()->user_id;
     $ad_data['ad_publish_date'] = date('Y-m-d H:i:s');
     $ad_data['ad_valid_until'] = date('Y-m-d', mktime(null, null, null, date('m') + 1, date('d'), date('Y')));
     $ad_data['ad_ip'] = Util::getRemoteAddress();
     $ad_data['ad_description'] = Util::nl2br(strip_tags($ad_data['ad_description']));
     switch ($ad_data['category_type']) {
         case 1:
             if ($ad_data['price_radio'] == 1) {
                 $ad_data['ad_price'] = $ad_data['ad_price_type_1'];
                 $ad_data['ad_free'] = 0;
             } else {
                 $ad_data['ad_price'] = 0;
                 $ad_data['ad_free'] = 1;
             }
             $ad_data['condition_id'] = $ad_data['condition_id_type_1'];
             break;
         case 2:
             $ad_data['ad_price'] = $ad_data['ad_price_type_2'];
             $ad_data['condition_id'] = $ad_data['condition_id_type_2'];
             break;
         case 3:
             $ad_data['ad_price'] = $ad_data['ad_price_type_3'];
             $ad_data['condition_id'] = $ad_data['condition_id_type_3'];
             break;
     }
     $ad_data['ad_description_hash'] = md5($ad_data['ad_description']);
     //save ad
     $ad = Ad::find($ad_data['ad_id']);
     $ad->update($ad_data);
     //upload and fix ad images
     $ad_image = Input::file('ad_image');
     if (!empty(array_filter($ad_image))) {
         //delete current image
         if (!empty($ad->ad_pic)) {
             @unlink(public_path('uf/adata/') . '740_' . $ad->ad_pic);
             @unlink(public_path('uf/adata/') . '1000_' . $ad->ad_pic);
         }
         $more_pics = AdPic::where('ad_id', $ad->ad_id)->get();
         if (!$more_pics->isEmpty()) {
             foreach ($more_pics as $k => $v) {
                 @unlink(public_path('uf/adata/') . '740_' . $v->ad_pic);
                 @unlink(public_path('uf/adata/') . '1000_' . $v->ad_pic);
                 $v->delete();
             }
         }
         //save new images
         $destination_path = public_path('uf/adata/');
         $first_image_uploaded = 0;
         foreach ($ad_image as $k) {
             if (!empty($k) && $k->isValid()) {
                 $file_name = $ad->ad_id . '_' . md5(time() + rand(0, 9999)) . '.' . $k->getClientOriginalExtension();
                 $k->move($destination_path, $file_name);
                 $img = Image::make($destination_path . $file_name);
                 $width = $img->width();
                 $height = $img->height();
                 if ($width == $height || $width > $height) {
                     $img->heighten(1000, function ($constraint) {
                         $constraint->upsize();
                     })->save($destination_path . '1000_' . $file_name);
                 } else {
                     $img->widen(1000, function ($constraint) {
                         $constraint->upsize();
                     })->save($destination_path . '1000_' . $file_name);
                 }
                 if (!$first_image_uploaded) {
                     $img->resizeCanvas(740, 740, 'top')->save($destination_path . '740_' . $file_name);
                     $ad->ad_pic = $file_name;
                     $ad->save();
                     $first_image_uploaded = 1;
                 } else {
                     $adPic = new AdPic();
                     $adPic->ad_id = $ad->ad_id;
                     $adPic->ad_pic = $file_name;
                     $adPic->save();
                 }
                 @unlink($destination_path . $file_name);
             }
         }
     }
     $ad->ad_category_info = $this->category->getParentsByIdFlat($ad->category_id);
     $ad->ad_location_info = $this->location->getParentsByIdFlat($ad->location_id);
     $ad->pics = AdPic::where('ad_id', $ad->ad_id)->get();
     $ad->same_ads = Ad::where([['ad_description_hash', $ad->ad_description_hash], ['ad_id', '<>', $ad->ad_id]])->get();
     //send info mail
     Mail::send('emails.ad_edit', ['user' => $request->user(), 'ad' => $ad], function ($m) use($request) {
         $m->from('*****@*****.**', 'dclassifieds ad edit');
         $m->to($request->user()->email)->subject('Your ad is edited!');
     });
     //send control mail
     Mail::send('emails.control_ad_activation', ['user' => $request->user(), 'ad' => $ad], function ($m) use($request) {
         $m->from('*****@*****.**', '[CONTROL] dclassifieds');
         $m->to('*****@*****.**')->to('*****@*****.**')->subject('[CONTROL] dclasssifieds ad edit');
     });
     Cache::flush();
     //set flash message and return
     session()->flash('message', 'Your ad is saved.');
     return redirect()->back();
 }