public function acaraDetail($slug)
 {
     if ($slug == 'kajian') {
         $acara = null;
     } else {
         $acara = Acara::where('active', '1')->where('slug', $slug)->first();
     }
     return view('sub.acaraDetail', compact('acara'));
 }
 public function get_data_for_dashboard()
 {
     $userid = Users::where('id', '=', Session::get('user_id'))->first()->id;
     $data['user'] = Users::find(Session::get('user_id'));
     $data['komunitas'] = Komunitas::orderBy('avg_rate', 'DESC')->take(5)->get();
     $data['rekomen'] = $this->predict->recommendation($userid);
     $data['rating'] = $this->rating->count_rate_row_by_id($userid);
     $data['cek'] = $this->predict->has_recommendation($userid);
     $data['rand'] = Komunitas::orderByRaw("RAND()")->take(5)->get();
     // $data['test'] = $this->komunitas->get_recommendation($userid);
     // $data['komunitas'] = $this->komunitas->get_initial_recommendation();
     $data['acara'] = Acara::where('tanggal', '>=', DB::raw('CURDATE()'))->take(4)->orderBy('tanggal', 'ASC')->get();
     // $count = Komunitas::where('id_kategori', '=', 1)->count();
     $allkom = $this->predict->has_recommendation($userid);
     //var_dump($allkom);
     //var_dump($data['test']);
     return View::make('dashboard', $data);
 }
 public function update(Request $request)
 {
     //dd($request->all());
     $validator = Validator::make($request->all(), self::validator()['acara']['rules']);
     if ($validator->fails()) {
         return back()->withErrors($validator)->withInput();
     } else {
         /*$check=Acara::where('title',$request->title)->where('id','!=',$request->id)->orWhereNull('id')->get();
         
               if(count($check)>0)
               {
                 //dd($check);
                 return back()->withInput()->with('status','Title yang anda masukkan sudah di gunakan');
               }*/
         $period = explode('-', $request->period);
         $period[0] = $this->resource->change_time_format($period[0]);
         $period[1] = $this->resource->change_time_format($period[1]);
         //echo "start: ".$period[0]." to ".$period[1];
         $period[0] = $this->resource->change_date_format($period[0]);
         $period[1] = $this->resource->change_date_format($period[1]);
         //echo "start: ".$period[0]." to ".$period[1];
         $start_date = $this->resource->change_date($period[0]);
         $end_date = $this->resource->change_date($period[1]);
         $slug = $this->resource->get_slug($request->title);
         //echo "start :".$period[0] ." to "."end :".$period[1];
         $video = "";
         foreach ($request->video as $value) {
             $test = $this->resource->test_url($value);
             if (!$test) {
                 return back()->withInput()->with('status', 'Anda hanya bise memasukkan url pada video');
             }
             if ($video) {
                 $video = $video . ',' . $value;
             } else {
                 $video = $value;
             }
         }
         //dd($video);
         //ini image
         $image = $request->image;
         $file = array('image' => $image);
         // doing the validation, passing post data, rules and the messages
         $validator = Validator::make($file, self::validator()['acara']['img']);
         $acara = Acara::where('id', $request->id)->first();
         if ($image) {
             if ($validator->fails()) {
                 // send back to the page with the input data and errors
                 return back()->withInput()->withErrors($validator);
             } else {
                 //delete previous image
                 if (File::exists($acara->image)) {
                     File::delete($acara->image);
                 }
                 $path = 'assets/images/acaras/';
                 $filename = $slug . '.' . $image->getClientOriginalExtension();
                 $pathImage = public_path($path . $filename);
                 $user = Auth::user();
                 //insert into Database
                 $acara->update(array('title' => $request->title, 'slug' => $slug, 'content' => $request->content, 'start_date' => $start_date, 'end_date' => $end_date, 'image' => $path . $filename, 'active' => $request->active, 'video' => $video, 'user_id' => $user->id));
                 Image::make($image->getRealPath())->resize(200, 200)->save($pathImage);
             }
         } else {
             $acara->update(array('title' => $request->title, 'slug' => $slug, 'content' => $request->content, 'start_date' => $start_date, 'end_date' => $end_date, 'active' => $request->active, 'video' => $video));
         }
         Session::flash('status', 'Upload successfully');
         return redirect('admin/acara');
     }
 }
 public function fetch_event_list()
 {
     $data['user'] = Users::find(Session::get('user_id'));
     $data['acara'] = Acara::where('tanggal', '>=', DB::raw('CURDATE()'))->paginate(10);
     return View::make('list_acara', $data);
 }