<?php namespace App\Http\Controllers;

use App\Models\Reportklentekkebun;
use Illuminate\Http\Request;
use Illuminate\Pagination\LengthAwarePaginator as Paginator;
use Validator, Input, Redirect ; 


class ReportklentekkebunController extends Controller {

	protected $layout = "layouts.main";
	protected $data = array();	
	public $module = 'reportklentekkebun';
	static $per_page	= '50';

	public function __construct()
	{
		
		        
		parent::__construct();
		$this->model = new Reportklentekkebun();
		$this->info = $this->model->makeInfo( $this->module);
		$this->access = array();
	
		$this->data = array_merge(array(
			'pageTitle'	=> 	$this->info['title'],
			'pageNote'	=>  $this->info['note'],
			'pageModule'=> 'reportklentekkebun',
			'return'	=> self::returnUrl()
			
		),$this->data);

        
		
	}

	public function index( Request $request )
	{
 
		// Make Sure users Logged 
		if(!\Auth::check()) 
			return redirect('user/login')->with('status', 'error')->with('message','You are not login');
						// Call stored procedure with parameter
						$date = $request->input('filter_tgl',date('Y-m-d')); // Example parameter
						$results = \DB::select("CALL GetRekapKlentekPerHari(?)", [$date]);

						// Pass the results to the view
						$this->data['results'] = $results;
		// Render into template
		return view( $this->module.'.index',$this->data);
	}	


	function show( Request $request , $id ) 
	{
		/* Handle import , export and view */
		$task =$id ;
		switch( $task)
		{
            case 'viewKlentekKebun':
                return $this->viewKlentekKebun( $request);
                break;
			case 'viewKlentekRayon':
				return $this->viewKlentekRayon( $request);
				break;
			case 'getTableDataKebun':
				return $this->getTableDataKebun( $request);
				break;
			case 'getTableDataRayon':
				return $this->getTableDataRayon( $request);;
				break;
			default:
				return 0;	
				break;	
		}
	}

	public function viewKlentekKebun( Request $request )
	{
		        
		// Make Sure users Logged 
		if(!\Auth::check()) 
			return redirect('user/login')->with('status', 'error')->with('message','You are not login');
						
		// Render into template
		return view( $this->module.'.klentekkebun',$this->data);
	}

	public function getTableDataKebun(Request $request)
	{
		$date = $request->input('date', date('Y-m-d'));
		$results = \DB::select("CALL sp_monitoring_klentek_kebun_tabel(?)", [$date]);
		return response()->json($results);
	}

	public function viewKlentekRayon(Request $request)
	{
		if (!\Auth::check()) {
			return redirect('user/login')->with('status', 'error')->with('message', 'You are not login');
		}
		return view($this->module . '.klentekrayon', $this->data);
	}

	public function getTableDataRayon(Request $request)
	{
		$kodeRayon = $request->input('kode_rayon');
		$date = $request->input('date', date('Y-m-d'));
		$results = \DB::select("CALL sp_monitoring_klentek_rayon_tabel(?, ?)", [$kodeRayon, $date]);
		return response()->json($results);
	}
}