<?php
 require "../commonincludefiles.php";
 
 $arr = array();
 $total = 0;
	
	if($_REQUEST['branch_id']!=""){
	
		 $college_id	= $_SESSION["VedantnrCollegeId"];
		 $start   	= isset($_REQUEST['start'])  ? $_REQUEST['start']  :  0;
		 $limit   	= isset($_REQUEST['limit'])  ? $_REQUEST['limit']  : 30;
		 $sort    	= isset($_REQUEST['sort'])   ? $_REQUEST['sort']   : '';
		 $dir     	= isset($_REQUEST['dir'])    ? $_REQUEST['dir']    : 'ASC';
		 $filters 	= isset($_REQUEST['filter']) ? $_REQUEST['filter'] : null;
 
 
	if (is_array($filters)) {
		$encoded = false;
	} else {
		$encoded = true;
		$filters = json_decode($filters);
	}
	$where = '';
	$qs = '';
	if (is_array($filters)) {
		for ($i=0;$i<count($filters);$i++){
			$filter = $filters[$i];
			if ($encoded) {
				$field = $filter->field;
				$value = $filter->value;
				$compare = isset($filter->comparison) ? $filter->comparison : null;
				$filterType = $filter->type;
			} else {
				$field = $filter['field'];
				$value = $filter['data']['value'];
				$compare = isset($filter['data']['comparison']) ? $filter['data']['comparison'] : null;
				$filterType = $filter['data']['type'];
			}
			switch($filterType){
				case 'string' : 
					if($field == "studentname") {
						$qs .= " AND (student_surname LIKE '%".$value."%' or 
								 student_firstname LIKE '%".$value."%' or student_lastname LIKE '%".$value."%') ";
					}
					elseif($field == "semester_name") {
						$qs .= " AND semester_name LIKE '%".$value."%'  ";
					}
					
					break;
				case 'list' :
					if (strstr($value,','))
					{
						   if(strcmp($field,"branch_name")==0)
						   {
								$fi = explode(',',$value);
								
								for ($q=0;$q < count($fi);$q++)
								{
									$fi[$q] = " '".$fi[$q]."' ";
								}
								$value = implode(',',$fi);
								$field = "sm.branch_id";
								$qs .= " AND ".$field." IN (".$value.")";
								
						
							}
						else{
								$fi = explode(',',$value);
								for ($q=0;$q < count($fi);$q++){
									$fi[$q] = "'".$fi[$q]."'";
								}
								$value = implode(',',$fi);
								$qs .= " AND ".$field." IN (".$value.")";
							}	
					  }
					else
					{
							if(strcmp($field,"branch_name")==0)
							{
								
								 $field = "sm.branch_id";
								 $qs .= " AND ".$field." = '".$value."'";
							 }
							 else
							 {
								 $qs .= " AND ".$field." = '".$value."'";
							 }
					}	
					
				break;
				case 'boolean' : $qs .= " AND ".$field." = ".($value); break;
				case 'numeric' :
					switch ($compare) {
						case 'eq' : $qs .= " AND ".$field." = ".$value; break;
						case 'lt' : $qs .= " AND ".$field." < ".$value; break;
						case 'gt' : $qs .= " AND ".$field." > ".$value; break;
					}
				break;
				case 'date' :
					switch ($compare) {
						case 'eq' : $qs .= " AND ".$field." = '".date('Y-m-d',strtotime($value))."'"; break;
						case 'lt' : $qs .= " AND ".$field." < '".date('Y-m-d',strtotime($value))."'"; break;
						case 'gt' : $qs .= " AND ".$field." > '".date('Y-m-d',strtotime($value))."'"; break;
					}
				break;
			}
		}
		$where .= $qs;
	}
	
	$sortorder="";
    $order_field = "sm.branch_id ";
    $order_type  = "ASC";
	
	if ($sort != "") 
	{
	   if($sort=="branch_name")
	   { 
		  $order_field = "branch_id";
		  $order_type  = $dir;
	   }	
	   
	   else
	   { 
		 $order_field = $sort;
		 $order_type  = $dir;
	   } 		
	}	       		              
		
		if($_REQUEST['branch_id'] != "All"){
			$where .= " and sm.branch_id = '".Escape($_REQUEST['branch_id'])."'";
		}
		
		
		$objStudentMgmt = new StudentMgmt();		
		$k=0;		
		
		$total = $objStudentMgmt->inquiryCountstudentGridFilter_all(0,0,$where,"","");
		$rs = $objStudentMgmt->viewstudentGridFilter_all($limit,$start,$where,$order_field,$order_type);
		
		while($obj = dbObject($rs)) {
		
			$arr[$k] = $obj;   
		    $k++;
		}
	}
	echo '{"total":"'.$total.'","data":'.json_encode($arr).'}';
?>