<?php
/**
 * Manually Developed CI View - accesslogdetail_wb.php
 *
 * @package			AIR\views
 * @version			2.7
 * @uses
 * @see
 * @copyright		2015, BizyCorp Internal Systems Development
 * @license			private, All rights reserved
 * @author			Mohamed Roshan <roshan@ekwa.com>
 *
 */
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
 * Manually Developed CI View
 *
 * This is to view grid view of acces log details in wb
 *
 * @package			AIR\views
 * @version			2.7
 * @uses
 * @see
 * @copyright		2015, BizyCorp Internal Systems Development
 * @license			private, All rights reserved
 * @author			Mohamed Roshan <roshan@ekwa.com>
 * @created			Jul 18, 2014
 * @modified
 * @modification
 *
*/
class Accesslogdetail_wb{
	// Just a dummy clas for phpdoc to catch the doc header.
}

$user_id = '';
$user_name = '';
$user_type = '';
if(isset($_SESSION['user_name'])){
	$user_id = $_SESSION['user_id'];
	$user_name = $_SESSION['user_name'];
	$user_type = $_SESSION['user_type'];
}
elseif(isset($_COOKIE['user_name'])){
	$user_id = $_COOKIE['user_id'];
	$user_name = $_COOKIE['user_name'];
	$user_type = $_COOKIE['user_type'];
}

/**
 * Common js/css file header file
 */
require_once('js-css-loader.php');
$filter_data = $startDate.'/'.$endDate.'/'.$staffName;

$log_create = new log_object();
$log_create->set_userDetails($user_name, $user_type);
$log_create->set_otherDetails(array('Mode'=>'Access log details view','Data'=>'-'));
$log_create->init();
?>
<style>
body{ margin:0;}
</style>
<div id="divBench" style="width:100%;height:96.9%;"></div>

<script>

//CORS handling 
window.addEventListener("message", receiveMessage, false);
function receiveMessage(event){
	switch (event.data){
	case "setSize":
		wb.getWb().setSizes();
		break;
  	}
}
//---------------------------

var wbContainer;
var wb;
var dataGrid;
var rowid;

//now initiate work bench and attache it to page layout.
var wb = new workbenchObj();
wb.workBench = document.getElementById("divBench"); //assigning wb container of this page to wb object
wb.url = '<?php echo site_url()?>/accesslog_controller/accessReport/accesslogdetail_gridview';
wb.gridreloadurl = '<?php echo site_url()?>/accesslog_controller/accesslogreport_details/FALSE/0/0/accesslogdetail_gridfeed/XML/<?php echo $filter_data; ?>';

//wb.form = myform;
wb.formVar = 'myform';

//can pass properties to manuputate toolbar objects
wb.gridLayoutWidth = 400;
wb.toolBarComponent='grid'; 
wb.toolBarDefaultitems=true;      //add defult items
wb.toolBarNotSet=['add','edit','delete'];

wb.toolBarVar='gridtoolbar';
wb.defFrmSaveHandling = false; //Save will be handled by callback
wb.toolBarIconpath = '<?php echo base_url('public/img/common/imgs/'),'/';?>';

//form related variables
wb.formBarComponent='form';    
wb.formBarDefaultitems = true;
//wb.formBarIconpath = '<?php echo base_url('public/img/common/imgs/'),'/';?>'; 
//wb.formUrl = '<?php echo site_url()?>/departments_controller/data_form';
//following not required for non ajax loading WCD
//wb.formDataUrl = '<?php echo site_url()?>/templates/save';
//wb.formDelUrl = '<?php echo site_url()?>/templates/delete';
wb.formWidth = 800;
wb.searchOnEnter = true;

/*======== Begin callback function list==========*/

var resetButtons = false; //If delete button was pressed 
// callback functions to load in wb 
var doAddForms = function (){
	if (debug) console.log('Add form url:-',wb.formUrl);
  	if (resetButtons) resetSaveBtn();
	myLayout = wb.getFormLayout();
  	myLayout.attachURL(wb.formUrl+'/add'); 
	return true;
};//End of doAddForms

var doSaveForm = function (){
	var myLayout = wb.getFormLayout();
	ifr = myLayout.getFrame();
	var formstatus = ifr.contentWindow.submitForm();
   	return formstatus
};//End of doSaveForm

var doResetForm = function (){
	var returnVal = false; //set returnstatu WCD
  	var myLayout = wb.getFormLayout();
	if (_isIE) {
    	myLayout.getFrame().contentWindow.document.getElementById("departmentForm").reset();
    } else {
    	myLayout.getFrame().contentDocument.getElementById("departmentForm").reset();
    }
	return returnVal;    
};//End of doResetForm 

var doEditForm = function () {
	var row_id = dataGrid.getSelectedRowId();
	if (debug) console.log('Edit grid row id : :-',row_id);
  	
  	if (resetButtons) resetSaveBtn();
	
	var url = wb.formUrl + '/edit/' + row_id;
	if (debug) console.log('Edit form URL :-',url);
	
	var myLayout = wb.getFormLayout();
  	//myLayout.attachURL(url,true); 
	myLayout.attachURL(url); 
	
	return true;		
};//end of doEditForm

var doDeleteForm = function (){ 
	var row_id = dataGrid.getSelectedRowId();
  	if (debug) console.log('Delete grid row id : :-',row_id);	
  	//if buttons were changed by view
  	if (resetButtons) resetSaveBtn();
  	
	var myForm = wb.getFormToolbar();
	formBar =myForm.toolbar;
	formBar.setItemImage('save','cancel.png');
  	formBar.setItemText('save','Delete');	
  	formBar.hideItem('reset');	
  	resetButtons = true;
	
	var url = wb.formUrl+'/delete/' + row_id;
	if (debug) console.log('Delete URL :-',url);
	var myLayout = wb.getFormLayout();
	myLayout.attachURL(url);
	
	return true; 
};//End of doDeleteTMForm

/* Function used to reset the save button properties changed by 'doDeleteForm'
** and 'doFormView' functions. 
*/
function resetSaveBtn(){
  	var myForm = wb.getFormToolbar();
	formBar =myForm.toolbar;
	formBar.setItemImage('save','save.gif');
  	formBar.setItemText('save','Save');
  	formBar.showItem('save');
  	formBar.showItem('reset');
  	resetButtons = false ;
} // End resetSaveBtn

/*========End of callback function list==========*/

/*
 * following callback function variables must be declared befor passing to wb. 
 * otherwise it will return undifiend error 
 */
 
wb.setGridAddCallback(doAddForms);
wb.setFormSaveCallback(doSaveForm);
wb.setGridEditCallback(doEditForm);
wb.setGridDelCallback(doDeleteForm);
wb.setFormResetCallback(doResetForm);  

//after setting up all wb properties finallay initiat wb.
wb.init();
wb.toolBarVar.hideItem('search');
</script>

<!-- FOR HELP TOUR -->
<link rel="stylesheet" href="http://www.bizydads.com/frameworks/zurb-joyride-1d1cb89/joyride-2.0.3.css">
<script type="text/javascript" src="http://www.bizydads.com/frameworks/zurb-joyride-1d1cb89/jquery-1.8.3.js"></script>
<script type="text/javascript" src="http://www.bizydads.com/frameworks/zurb-joyride-1d1cb89/jquery.cookie.js"></script>
<script type="text/javascript" src="http://www.bizydads.com/frameworks/zurb-joyride-1d1cb89/modernizr.mq.js"></script>
<script type="text/javascript" src="http://www.bizydads.com/frameworks/zurb-joyride-1d1cb89/jquery.joyride-2.0.3.js"></script>
<style>
<!--
.joyride-tip-guide{
	width:0px !importent;
}
-->
</style>
<script>
/* Page Help */
wb.toolBarVar.addButton('helpFile',20,'Page Help','help_on.gif','help.gif');//Page Help button
//Add custom 'Page Help' button  event handler
//now attache events for new buttons
var help = wb.toolBarVar.attachEvent('onClick', function(buttonid){
	var toolBar = document.getElementsByClassName("dhx_toolbar_btn");//getting toolbar items by class names
	//adding ids to toolbar items
	for(x=0; x<toolBar.length;x++){
		var toolBarItmeIdName = 'toolTip_'+x;
		toolBar[x].setAttribute("id",toolBarItmeIdName);
	}
	
	var cell_tip = document.getElementsByClassName(" ev_dhx_skyblue");//getting gird rows but class name
	cell_tip[0].parentNode.firstChild.nextSibling.setAttribute("id",'gridId_test');//adding id to 1st grid row
	
	var pagingBar = document.getElementsByClassName("dhx_toolbar_text");//getting toolbar items by class names
	for(x=0; x<pagingBar.length;x++){
		var paging_IdName = 'paging_'+x;
		pagingBar[x].setAttribute("id",paging_IdName);//adding id to 1st grid row
	}
	
  	if(buttonid=='helpFile'){$('#joyRideTipContent').joyride({});}//load joyride
});
</script>
<!-- Tip Content -->
<ol id="joyRideTipContent">
	<li data-id="" data-button="Start the tour" data-options="tipLocation:top"><h2>Introduction</h2><p>Guidelines for access log details view.</p></li>
	<li data-id="toolTip_0" data-button="Next" data-options="tipLocation:bottom"><h2>Refresh</h2><p>Just reloads the grid to the original state.</p></li>
	<li data-id="gridId_test" data-button="Next" data-options="tipLocation:bottom"><h2>Report Grid</h2><p>Report Details grid.</p></li>
	<li data-id="paging_0" data-button="Next" data-options="tipLocation:top"><h2>Records For Page</h2><p>Shows the number of records displayed in the grid.</p></li>
	<li data-id="toolTip_7" data-button="Next" data-options="tipLocation:top"><h2>Page</h2><p>Click on down arrow, scroll down and click on the page number to navigate to another page.</p></li>
	<li data-id="toolTip_8" data-button="Close" data-options="tipLocation:top"><h2>Rows Per Page</h2><p>Click on down arrow, scroll down and click on option to change rows shown per page.</p></li>	
</ol>
<!-- End of tip contents -->