<?php
if (!defined("root")) {
	define("root", $_SERVER['DOCUMENT_ROOT']);
}
require(root."/___simple_config.php");
session_start();
require(root."/".adminFolder."/_common.php");
require(root."/".adminFolder."/_lib/db.php");
require(root."/".adminFolder."/_lib/main.php");
require(root."/".adminFolder."/_lib/auth.php");
require(root."/".adminFolder."/_lib/bootstraps.php");
$pageSubOf = "pages";
$pageName = "contacts";
$pageTitle = "Contacts";
$thisUrl = "contacts";
$ajax_page = "ajax_contacts.php";
$pageUrl = "/".adminFolder."/$thisUrl";
$a = cekpost(cleanQuery($_GET["a"]), "");
$err = "";
if ($a=="section_main") {
	if (!authorizedModule("contacts_main", $ses_kduser)) {
		unAuthorizedAccess("contacts_main");
	} else {
		$fil_kdcontact_cat = trim(cekpost(cleanQuery($_REQUEST["fil_kdcontact_cat"]), ""));
		$fil_info = trim(cekpost(cleanQuery($_REQUEST["fil_info"]), ""));
		$fil_isactive = trim(cekpost(cleanQuery($_REQUEST["fil_isactive"]), ""));
		$swhere = '';
		if ($fil_kdcontact_cat!="") { $swhere .= " AND a.kdcontact_act = '$fil_kdcontact_cat' "; }
		if ($fil_info!="") { $swhere .= " AND a.info LIKE '%$fil_info%' "; }
		if ($fil_isactive!="") { $swhere .= " AND a.isactive = '$fil_isactive' "; }
		$rs=array(); $q="SELECT a.*, nama FROM contacts a LEFT JOIN contact_cats b ON b.kdcontact_cat=a.kdcontact_cat WHERE 1=1 $swhere";
		callRS($rs, $q);
		if (count($rs)!=0) {
			$ld = 20;
			$cp = cekpost(cleanQuery($_GET["cp"]), "1");
			$tp = intval(count($rs) / $ld) + (count($rs)%$ld==0?0:1);
			$sr = ($cp-1) * $ld;
			$pagination = '';
			if ($tp!=1) {
				$pagination .= ('<ul class="pagination pagination-sm">');
					$disabled = '';
					$purl = '#';
					$onclick = '';
					if ($cp<=1) {
						$disabled = 'disabled';
						$onclick = ' onclick="return false;" ';
					}
					$pagination .= ('<li class="'.$disabled.'"><a href="'.$purl.'" '.($onclick!=""?$onclick:'onclick="filterReload(\''.$pageName.'\', 1);return false;"').'>&lt;&lt;</a></li>');
					$pagination .= ('<li class="'.$disabled.'"><a href="'.$purl.'" '.($onclick!=""?$onclick:'onclick="filterReload(\''.$pageName.'\', '.($cp-1).');return false;"').'>&lt;</a></li>');
					for ($c=1;$c<=$tp;$c++) {
						$active = '';
						$purl = '#';
						$disabled = '';
						$onclick = '';
						if ($c==$cp) {
							$active = 'active';
						} else {
							$purl = '#';
							$onclick = ' onclick="filterReload(\''.$pageName.'\', '.$c.');return false;" ';
						}
						$pagination .= ('<li class="'.$active.' '.$disabled.'"><a href="'.$purl.'" '.$onclick.'>'.$c.'</a></li>');
					}
					$disabled = '';
					$onclick = '';
					if ($cp>=$tp) {
						$disabled = 'disabled';
						$onclick = ' onclick="return false;" ';
					}
					$pagination .= ('<li class="'.$disabled.'"><a href="#" '.($onclick!=""?$onclick:'onclick="filterReload(\''.$pageName.'\', '.($cp+1).');return false;"').'>&gt;</a></li>');
					$pagination .= ('<li class="'.$disabled.'"><a href="#" '.($onclick!=""?$onclick:'onclick="filterReload(\''.$pageName.'\', '.$tp.');return false;"').'>&gt;&gt;</a></li>');
				$pagination .= ('</ul>');
			}
			cout('<div class="alert alert-info" role="alert"><strong>Total whole data</strong> <span class="badge">'.count($rs).'</span></div>');
			
			if ($tp!=1) {
				cout($pagination);
			}
			cout('<table class="table table-striped table-bordered">');
				cout('<thead>');
					cout('<tr>');
						cout('<th class="text-center">#ID</th>');
						if (authorizedModule("contacts_element_type", $ses_kduser)) {
							cout('<th class="text-center">Contact Type</th>');
						}
						if (authorizedModule("contacts_element_info", $ses_kduser)) {
							cout('<th class="text-center">Info</th>');
						}
						if (authorizedModule("contacts_element_active", $ses_kduser)) {
							cout('<th class="text-center">Active Status</th>');
						}
						cout('<th class=""></th>');
					cout('</tr>');
				cout('</thead>');
				cout('<tbody>');
				$cnt = 0;
				for ($i=$sr;$i<count($rs) && $cnt<$ld;$i++) {
					$cnt++;
					$kdcontact = $rs[$i]["kdcontact"];
					if (intval($rs[$i]["isactive"])==0) {
						$isactive = '<a href="#" title="Activate" onclick="chActive(\''.$pageName.'\', '.$kdcontact.', '.$rs[$i]["isactive"].');return false;">Non-Active</a>';
					} else {
						$isactive = '<a href="#" title="Deactivate" onclick="chActive(\''.$pageName.'\', '.$kdcontact.', '.$rs[$i]["isactive"].');return false;">Active</a>';
					}
					cout('<tr>');
						cout('<td class="text-center">'.$kdcontact.'</td>');
						if (authorizedModule("contacts_element_type", $ses_kduser)) {
							cout('<td class="text-center">'.$rs[$i]["nama"].'</td>');
						}
						if (authorizedModule("contacts_element_info", $ses_kduser)) {
							cout('<td class="text-center"><a href="'.$pageUrl.'/view/'.$kdcontact.'/">'.$rs[$i]["info"].'</a></td>');
						}
						if (authorizedModule("contacts_element_active", $ses_kduser)) {
							cout('<td class="text-center isactive'.$kdcontact.'">'.$isactive.'</td>');
						}
						cout('<td class="text-center">');
							if (authorizedModule("contacts_edit", $ses_kduser)) {
								cout('<a href="'.$pageUrl.'/edit/'.$kdcontact.'/"><span class="glyphicon glyphicon-pencil"></span><span class="hidden-xs hidden-sm"> Edit</span></a>');
								cout(BSTextSeparator());
							}
							if (authorizedModule("contacts_delete", $ses_kduser)) {
								cout('<a href="'.$pageUrl.'/delete/'.$kdcontact.'/"><span class="glyphicon glyphicon-trash"></span><span class="hidden-xs hidden-sm"> Delete</span></a>');
							}
						cout('</td>');
					cout('</tr>');
				}
				cout('</tbody>');
			cout('</table>');
			
			if ($tp!=1) {
				cout($pagination);
			}
			cout('<div class="alert alert-info" role="alert"><strong>Total whole data</strong> <span class="badge">'.count($rs).'</span></div>');
			$act_ket = "Contacts: Main List";
			if ($swhere!="") { $act_ket .= ": ".cleanQuery($swhere).""; }
			updateUserActivities($act_ket);
		} else {
			cout('<div class="alert alert-info" role="alert">');
				cout('<strong>No data available.</strong> Please add new data for display.');
			cout('</div>');
		}
	}
}
if ($a=="chactive") {
	$kd = cekpost(cleanQuery($_REQUEST["kd"]), "");
	$ca = cekpost(cleanQuery($_REQUEST["ca"]), "");
	$kd = (trim($kd)=="undefined")?'':$kd;
	$ca = (trim($ca)=="undefined")?'':$ca;
	if ($kd!="" && $kd!=0 && $ca!="") {
		$na = $ca==0?1:0;
		$modby = $_SESSION["user"]["inisial"];
		$modtime = time();
		$qu = "UPDATE contacts SET isactive='$na', modby='$modby', modtime='$modtime' WHERE kdcontact='$kd'";
		execRS($qu);
		$act_ket = "Contacts: Ch. Active [kd: $kd][from Act: $ca][to Act: $na]";
		updateUserActivities($act_ket);
		if (intval($na)==0) {
			$isactive = '<a href="#" title="Activate" onclick="chActive(\''.$pageName.'\', '.$kd.', '.$na.');return false;">Non-Active</a>';
		} else {
			$isactive = '<a href="#" title="Deactivate" onclick="chActive(\''.$pageName.'\', '.$kd.', '.$na.');return false;">Active</a>';
		}
		echo $isactive;
	}
}
if ($a=="section_view") {
	if (!authorizedModule("contacts_view", $ses_kduser)) {
		unAuthorizedAccess("contacts_view");
	} else {
		$id = cekpost(cleanQuery($_GET["id"]), "0");
		$rs=array(); $q="SELECT a.*, nama FROM contacts a LEFT JOIN contact_cats b ON b.kdcontact_cat=a.kdcontact_cat WHERE kdcontact='$id'";
		callRS($rs, $q);
		if (intval($rs[0]["isactive"])==0) {
			$isactive = '<a href="#" title="Activate" onclick="chActive(\''.$pageName.'\', '.$rs[0]["kdcontact"].', '.$rs[0]["isactive"].');return false;">Non-Active</a>';
		} else {
			$isactive = '<a href="#" title="Deactivate" onclick="chActive(\''.$pageName.'\', '.$rs[0]["kdcontact"].', '.$rs[0]["isactive"].');return false;">Active</a>';
		}
		$creby = (trim($rs[0]["creby"])!=""?'By: <strong>'.$rs[0]["creby"].'</strong>':'By: &lt;<em>no data</em>&gt;').(trim($rs[0]["cretime"])?' ('.date('d M Y, H:i:s A', $rs[0]["cretime"]).')':' &lt;<em>no data</em>&gt;');
		$modby = (trim($rs[0]["modby"])!=""?'By: <strong>'.$rs[0]["modby"].'</strong>':'By: &lt;<em>no data</em>&gt;').(trim($rs[0]["modtime"])?' ('.date('d M Y, H:i:s A', $rs[0]["modtime"]).')':' &lt;<em>no data</em>&gt;');
		cout('<dl class="dl-horizontal dldata">');
			if (authorizedModule("contacts_element_type", $ses_kduser)) {
				cout('<dt>Contact Type</dt>');
				cout('<dd>'.$rs[0]["nama"].'</dd>');
			}
			if (authorizedModule("contacts_element_info", $ses_kduser)) {
				cout('<dt>Info</dt>');
				cout('<dd>'.$rs[0]["info"].'</dd>');
			}
			if (authorizedModule("contacts_element_active", $ses_kduser)) {
				cout('<dt>Active Status</dt>');
				cout('<dd class="isactive'.$rs[0]["kdcontact"].'">'.$isactive.'</dd>');
			}
			if (authorizedModule("contacts_element_creation", $ses_kduser)) {
				cout('<dt>Created</dt>');
				cout('<dd>'.$creby.'</dd>');
			}
			if (authorizedModule("contacts_element_modification", $ses_kduser)) {
				cout('<dt>Modified</dt>');
				cout('<dd>'.$modby.'</dd>');
			}
			
		cout('</dl>');
		
		$act_ket = "Contacts: View: [kdcontact: ".$rs[0]["kdcontact"]."][namabank: ".$rs[0]["namabank"]."][inisial: ".$rs[0]["inisial"]."]";
		updateUserActivities($act_ket);
		exit;
	}
}
if ($a=="do_delete") {
	$kirim = cekpost(cleanQuery($_REQUEST["kirim"]), "");
	if ($kirim=="1") {
		$delby = $_SESSION["user"]["inisial"];
		$deltime = time();
		$kdcontact = cekpost(cleanQuery($_POST["kdcontact"]), "0");
		$rs=array(); $q="SELECT * FROM contacts WHERE kdcontact='$kdcontact'";
		callRS($rs, $q);
		
		$q = "DELETE FROM contacts WHERE kdcontact='$kdcontact'";
		execRS($q);
		$act_ket = "Contacts: Delete: Deleted [kdcontact: $kdcontact][namabank: ".$rs[0]["namabank"]."][inisial: ".$rs[0]["inisial"]."][isactive: ".$rs[0]["isactive"]."]";
		updateUserActivities($act_ket);
		cout('<script type="text/javascript">parent.window.location="'.$pageUrl.'/";</script>');
		exit;
	}
}
if ($a=="section_delete") {
	if (!authorizedModule("contacts_delete", $ses_kduser)) {
		unAuthorizedAccess("contacts_delete");
	} else {
		$id = cekpost(cleanQuery($_GET["id"]), "0");
		$rs=array(); $q="SELECT a.*, nama FROM contacts a LEFT JOIN contact_cats b ON b.kdcontact_cat=a.kdcontact_cat WHERE kdcontact='$id'";
		callRS($rs, $q);
		
		cout('<form method="post" target="quick_iframe" action="/'.adminFolder.'/_ajax/'.$ajax_page.'?a=do_delete" role="form">');
			cout('<input type="hidden" name="kirim" id="kirim" value="1" />');
			cout('<input type="hidden" name="kdcontact" id="kdcontact" value="'.$rs[0]["kdcontact"].'" />');
			cout('<dl class="dl-horizontal dldata">');
				if (authorizedModule("contacts_element_type", $ses_kduser)) {
					cout('<dt>Contact Type</dt>');
					cout('<dd>'.$rs[0]["nama"].'</dd>');
				}
				if (authorizedModule("contacts_element_info", $ses_kduser)) {
					cout('<dt>Info</dt>');
					cout('<dd>'.$rs[0]["info"].'</dd>');
				}
				cout('<dt></dt>');
				cout('<dd><button class="btn btn-primary" type="submit">Delete</button></dd>');
			cout('</dl>');
		cout('</form>');
		$viewFrame = 0;
		if ($viewFrame==1) {
			cout('<iframe name="quick_iframe" id="quick_iframe" src="/'.adminFolder.'/_ajax/index.php" width="300" height="100" style="overflow:;border:1px red solid;" visibility="" scrolling="yes" frameborder="1"></iframe>');
		} else {
			cout('<iframe name="quick_iframe" id="quick_iframe" src="/'.adminFolder.'/_ajax/index.php" width="300" height="11" style="overflow:hidden;" visibility="hidden" scrolling="no" frameborder="0"></iframe>');
		}
		$act_ket = "Contacts: Deleting... [kd: ".$rs[0]["kd"]."][nama: ".$rs[0]["nama"]."]";
		updateUserActivities($act_ket);
		exit;
	}
}
if ($a=="do_edit") {
	$kirim = cekpost(cleanQuery($_REQUEST["kirim"]), "");
	$err = "";
	if ($kirim=="1") {
		$kdcontact = cekpost(cleanQuery($_REQUEST["kdcontact"]), "0");
		$kdcontact_cat = cekpost(cleanQuery($_REQUEST["kdcontact_cat"]), "0");
		$info = cekpost(cleanQuery($_REQUEST["info"]), "");
		$namarek = cekpost(cleanQuery($_REQUEST["namarek"]), "");
		$isactive = cekpost(cleanQuery($_REQUEST["isactive"]), 0);
		if ($kdcontact_cat=="") { $err.= BSErrorMessage('Contact Type must be chosen'); }
		if ($info=="") { $err.= BSErrorMessage('Info must be filled'); }
		if ($err=="") {
			$modby = $_SESSION["user"]["inisial"];
			$modtime = time();
			$q = "UPDATE contacts SET kdcontact_cat='$kdcontact_cat', info='$info', isactive='$isactive', modby='$modby', modtime='$modtime' 
				WHERE kdcontact='$kdcontact'";
			execRS($q);
			$act_ket = "Contacts: Edit: Updated [kdcontact: $kdcontact][kdcontact_cat: $kdcontact_cat][info: $info][isactive: $isactive]";
			updateUserActivities($act_ket);
			cout('<script type="text/javascript">parent.window.location="'.$pageUrl.'/view/'.$kdcontact.'/";</script>');
		} else {
			cout('<script type="text/javascript">parent.showError(\''.$err.'\');</script>');
		}
		exit;
	}
	exit;
}
if ($a=="section_edit") {
	if (!authorizedModule("contacts_edit", $ses_kduser)) {
		unAuthorizedAccess("contacts_edit");
	} else {
		$id = cekpost(cleanQuery($_GET["id"]), "0");
		$rs=array(); $q="SELECT * FROM contacts WHERE kdcontact='$id'";
		callRS($rs, $q);
		cout('<form method="post" target="quick_iframe" action="/'.adminFolder.'/_ajax/'.$ajax_page.'?a=do_edit" role="form">');
			cout('<input type="hidden" name="kirim" id="kirim" value="1" />');
			cout('<input type="hidden" name="kdcontact" id="kdcontact" value="'.$rs[0]["kdcontact"].'" />');
			cout('<dl class="dl-horizontal dldata">');
				if (authorizedModule("contacts_element_type", $ses_kduser)) {
					cout('<dt><label for="kdcontact_cat">Contact Type</label></dt>');
					cout('<dd>');
						cout('<select name="kdcontact_cat" id="kdcontact_cat" class="form-control">');
							cout('<option value="">- Choose Contact Cat. -</option>');
							$rsx=array();$qx="SELECT * FROM contact_cats";
							callRS($rsx, $qx);
							for ($x=0;$x<count($rsx);$x++) {
								$sel = intval($rsx[$x]["kdcontact_cat"])==intval($rs[0]["kdcontact_cat"])?' selected="selected" ':'';
								cout('<option value="'.$rsx[$x]["kdcontact_cat"].'" '.$sel.'>'.$rsx[$x]["nama"].'</option>');
							}
						cout('</select>');
					cout('</dd>');
				}
				if (authorizedModule("contacts_element_info", $ses_kduser)) {
					cout('<dt><label for="info">Info</label></dt>');
					cout('<dd><input class="form-control" type="text" name="info" id="info" value="'.$rs[0]["info"].'" /></dd>');
				}
				if (authorizedModule("contacts_element_active", $ses_kduser)) {
					$isactive0 = intval($rs[0]["isactive"])==0?'selected="selected"':'';
					$isactive1 = intval($rs[0]["isactive"])==1?'selected="selected"':'';
					cout('<dt><label for="isactive">Active Status</label></dt>');
					cout('<dd>
						<select name="isactive" id="isactive" class="form-control">
							<option value="0" '.$isactive0.'>Non-Active</option>
							<option value="1" '.$isactive1.'>Active</option>
						</select>
					</dd>');
				}
				cout('<dt></dt>');
				cout('<dd class="err"></dd>');
				
				cout('<dt></dt>');
				cout('<dd><button class="btn btn-primary" type="submit">Update</button></dd>');
			cout('</dl>');
		cout('</form>');
		cout('<script>parent.bindDatePicker(\'.tanggal\');</script>');
		$viewFrame = 0;
		if ($viewFrame==1) {
			cout('<iframe name="quick_iframe" id="quick_iframe" src="/'.adminFolder.'/_ajax/index.php" width="300" height="100" style="overflow:;border:1px red solid;" visibility="" scrolling="yes" frameborder="1"></iframe>');
		} else {
			cout('<iframe name="quick_iframe" id="quick_iframe" src="/'.adminFolder.'/_ajax/index.php" width="300" height="11" style="overflow:hidden;" visibility="hidden" scrolling="no" frameborder="0"></iframe>');
		}
		$act_ket = "Contacts: Editing... [kd: ".$rs[0]["kd"]."][nama: ".$rs[0]["nama"]."]";
		updateUserActivities($act_ket);
		exit;
	}
}
if ($a=="do_add") {
	$kirim = cekpost(cleanQuery($_REQUEST["kirim"]), "");
	$err = "";
	if ($kirim=="1") {
		$kdcontact_cat = cekpost(cleanQuery($_REQUEST["kdcontact_cat"]), "");
		$info = cekpost(cleanQuery($_REQUEST["info"]), "");
		$isactive = cekpost(cleanQuery($_REQUEST["isactive"]), 0);
		if ($kdcontact_cat=="") { $err.= BSErrorMessage('Contact Type must be chosen'); }
		if ($info=="") { $err.= BSErrorMessage('Info must be filled'); }
		if ($err=="") {
			$creby = $_SESSION["user"]["inisial"];
			$cretime = time();
			$kdcontact = getID("contacts", "kdcontact");
			$q = "INSERT INTO contacts (kdcontact, kdcontact_cat, info, isactive, creby, cretime) 
				VALUES ('$kdcontact', '$kdcontact_cat', '$info', '$isactive', '$creby', '$cretime')";
			execRS($q);
			$act_ket = "Contacts: Add [kd: $kd][kdcontact_cat: $kdcontact_cat][info: $info][isactive: $isactive]";
			updateUserActivities($act_ket);
			cout('<script type="text/javascript">parent.window.location="'.$pageUrl.'/view/'.$kdcontact.'/";</script>');
		} else {
			cout('<script type="text/javascript">parent.showError(\''.$err.'\');</script>');
		}
		exit;
	}
	exit;
}
if ($a=="section_add") {
	if (!authorizedModule("contacts_add", $ses_kduser)) {
		unAuthorizedAccess("contacts_add");
	} else {
		cout('<form method="post" target="quick_iframe" action="/'.adminFolder.'/_ajax/'.$ajax_page.'?a=do_add" role="form">');
			cout('<input type="hidden" name="kirim" id="kirim" value="1" />');
			cout('<dl class="dl-horizontal dldata">');
				cout('<dt><label for="kdcontact_cat">Contact Type</label></dt>');
				cout('<dd>');
					cout('<select name="kdcontact_cat" id="kdcontact_cat" class="form-control">');
						cout('<option value="">- Choose Contact Cat. -</option>');
						$rsx=array();$qx="SELECT * FROM contact_cats";
						callRS($rsx, $qx);
						for ($x=0;$x<count($rsx);$x++) {
							cout('<option value="'.$rsx[$x]["kdcontact_cat"].'">'.$rsx[$x]["nama"].'</option>');
						}
					cout('</select>');
				cout('</dd>');
				
				cout('<dt><label for="info">Info</label></dt>');
				cout('<dd><input class="form-control" type="text" name="info" id="info" placeholder="Fill Info" /></dd>');
				
				cout('<dt><label for="isactive">Active Status</label></dt>');
				cout('<dd>
					<select name="isactive" id="isactive" class="form-control">
						<option value="0">Non-Active</option>
						<option value="1">Active</option>
					</select>
				</dd>');
				
				cout('<dt></dt>');
				cout('<dd class="err"></dd>');
				
				cout('<dt></dt>');
				cout('<dd><button class="btn btn-primary" type="submit">Add</button></dd>');
			cout('</dl>');
		cout('</form>');
		$viewFrame = 0;
		if ($viewFrame==1) {
			cout('<iframe name="quick_iframe" id="quick_iframe" src="/'.adminFolder.'/_ajax/index.php" width="300" height="100" style="overflow:;border:1px red solid;" visibility="" scrolling="yes" frameborder="1"></iframe>');
		} else {
			cout('<iframe name="quick_iframe" id="quick_iframe" src="/'.adminFolder.'/_ajax/index.php" width="300" height="11" style="overflow:hidden;" visibility="hidden" scrolling="no" frameborder="0"></iframe>');
		}
		$act_ket = "Contacts: Adding...";
		updateUserActivities($act_ket);
		exit;
	}
}
?>