public function putEdit(Request $request)
 {
     if (!ACL::hasPermission('winners2014', 'edit')) {
         return redirect(route('winners2014'))->withErrors(['Você não pode editar os ganhadores de 2014.']);
     }
     $this->validate($request, ['category' => 'required', 'position' => 'required', 'name' => 'required|max:50', 'city' => 'required|max:45', 'state' => 'required|max:2|min:2', 'quantityVotes' => 'required|numeric', 'image' => 'image|mimes:jpeg,bmp,gif,png'], ['category.required' => 'Escolha a categoria', 'position.required' => 'Escolha a posição', 'name.required' => 'Informe o nome do ganhador', 'name.max' => 'O nome do ganhador não pode passar de :max caracteres', 'city.required' => 'Informe o nome da cidade do ganhador', 'city.max' => 'O nome da cidade não pode passar de :max caracteres', 'state.required' => 'Informe o Estado do ganhador', 'state.max' => 'O UF do Estado deve ter apenas :max caracteres', 'state.min' => 'O UF do Estado deve ter apenas :min caracteres', 'quantityVotes.required' => 'Informe a quantidade de votos', 'quantityVotes.numeric' => 'Somente números são aceitos', 'image.image' => 'Envie um formato de imagem válida', 'image.mimes' => 'Formatos suportados: .jpg, .gif, .bmp e .png']);
     $winner = WinnersLastYear::find($request->winnersLastYearId);
     $winner->category = $request->category;
     $winner->position = $request->position;
     $winner->name = $request->name;
     $winner->city = $request->city;
     $winner->state = $request->state;
     $winner->quantityVotes = $request->quantityVotes;
     if ($request->photo) {
         //DELETE OLD PHOTO
         if ($request->currentPhoto != "") {
             if (File::exists($this->folder . $request->currentPhoto)) {
                 File::delete($this->folder . $request->currentPhoto);
             }
         }
         $extension = $request->photo->getClientOriginalExtension();
         $namePhoto = Carbon::now()->format('YmdHis') . "." . $extension;
         $img = Image::make($request->file('photo'));
         if ($request->photoCropAreaW > 0 or $request->photoCropAreaH > 0 or $request->photoPositionX or $request->photoPositionY) {
             $img->crop($request->photoCropAreaW, $request->photoCropAreaH, $request->photoPositionX, $request->photoPositionY);
         }
         $img->resize($this->photoWidth, $this->photoHeight)->save($this->folder . $namePhoto);
         $winner->photo = $namePhoto;
     }
     $winner->save();
     $success = "Ganhador editado com sucesso";
     return redirect(route('winners2014'))->with(compact('success'));
 }
 public function index()
 {
     $page = 'ganhadores-2014';
     $websiteSettings = \App\Exceptions\Handler::readFile("websiteSettings.json");
     $pages = Pages::where('slug', '=', $page)->first();
     $advertising = Advertising::orderByRaw("RAND()")->get();
     foreach ($advertising as $ad) {
         array_add($ad, "image", Advertising::imageVideo($ad->url));
         array_set($ad, "url", Advertising::embedVideo($ad->url, 1));
     }
     $calls = Calls::orderByRaw("RAND()")->limit(2)->get();
     $winners = WinnersLastYear::orderBy('winnersLastYearId', 'ASC')->get();
     return view('website.winners2014')->with(compact('page', 'websiteSettings', 'pages', 'advertising', 'calls', 'winners'));
 }