Location: PHPKode > scripts > Symptoms and Diseases Database > Symptoms-and-diseases-database/patient_symptoms_view.php
<?php
// This script and data application were generated by AppGini 4.52
// Download AppGini for free from http://www.bigprof.com/appgini/download/

	$d=dirname(__FILE__);
	include("$d/defaultLang.php");
	include("$d/language.php");
	include("$d/lib.php");
	@include("$d/hooks/patient_symptoms.php");
	include("$d/patient_symptoms_dml.php");

	// mm: can the current member access this page?
	$perm=getTablePermissions('patient_symptoms');
	if(!$perm[0]){
		echo StyleSheet();
		echo "<div class=\"error\">".$Translation['tableAccessDenied']."</div>";
		echo '<script language="javaScript">setInterval("window.location=\'index.php?signOut=1\'", 2000);</script>';
		exit;
	}

	$x = new DataList;
	$x->TableName = "patient_symptoms";

	// Fields that can be displayed in the table view
	$x->QueryFieldsTV=array(
		"`patient_symptoms`.`id`" => "ID",
		"if(char_length(`patients1`.`last_name`) || char_length(`patients1`.`first_name`), concat_ws('', `patients1`.`last_name`, ', ', `patients1`.`first_name`), '') /* Patient */" => "Patient",
		"`symptoms1`.`name` /* Symptom */" => "Symptom",
		"if(`patient_symptoms`.`observation_date`,date_format(`patient_symptoms`.`observation_date`,'%m/%d/%Y'),'')" => "Observation date",
		"`patient_symptoms`.`observation_time`" => "Observation time",
		"`patient_symptoms`.`symptom_value`" => "Symptom value"
	);
	// Fields that can be displayed in the csv file
	$x->QueryFieldsCSV=array(
		"`patient_symptoms`.`id`" => "ID",
		"if(char_length(`patients1`.`last_name`) || char_length(`patients1`.`first_name`), concat_ws('', `patients1`.`last_name`, ', ', `patients1`.`first_name`), '') /* Patient */" => "Patient",
		"`symptoms1`.`name` /* Symptom */" => "Symptom",
		"if(`patient_symptoms`.`observation_date`,date_format(`patient_symptoms`.`observation_date`,'%m/%d/%Y'),'')" => "Observation date",
		"`patient_symptoms`.`observation_time`" => "Observation time",
		"`patient_symptoms`.`symptom_value`" => "Symptom value"
	);
	// Fields that can be filtered
	$x->QueryFieldsFilters=array(
		"`patient_symptoms`.`id`" => "ID",
		"if(char_length(`patients1`.`last_name`) || char_length(`patients1`.`first_name`), concat_ws('', `patients1`.`last_name`, ', ', `patients1`.`first_name`), '') /* Patient */" => "Patient",
		"`symptoms1`.`name` /* Symptom */" => "Symptom",
		"`patient_symptoms`.`observation_date`" => "Observation date",
		"`patient_symptoms`.`observation_time`" => "Observation time",
		"`patient_symptoms`.`symptom_value`" => "Symptom value"
	);

	// Fields that can be quick searched
	$x->QueryFieldsQS=array(
		"`patient_symptoms`.`id`" => "ID",
		"if(char_length(`patients1`.`last_name`) || char_length(`patients1`.`first_name`), concat_ws('', `patients1`.`last_name`, ', ', `patients1`.`first_name`), '') /* Patient */" => "Patient",
		"`symptoms1`.`name` /* Symptom */" => "Symptom",
		"if(`patient_symptoms`.`observation_date`,date_format(`patient_symptoms`.`observation_date`,'%m/%d/%Y'),'')" => "Observation date",
		"`patient_symptoms`.`observation_time`" => "Observation time",
		"`patient_symptoms`.`symptom_value`" => "Symptom value"
	);

	$x->QueryFrom="`patient_symptoms` LEFT JOIN `patients` as patients1 ON `patient_symptoms`.`patient`=patients1.`id` LEFT JOIN `symptoms` as symptoms1 ON `patient_symptoms`.`symptom`=symptoms1.`id` ";
	$x->QueryWhere='';
	$x->QueryOrder='';

	$x->DataHeight = 300;
	$x->AllowSelection = 1;
	$x->HideTableView = ($perm[2]==0 ? 1 : 0);
	$x->AllowDelete = $perm[4];
	$x->AllowInsert = $perm[1];
	$x->AllowUpdate = $perm[3];
	$x->SeparateDV = 1;
	$x->AllowDeleteOfParents = 0;
	$x->AllowFilters = 1;
	$x->AllowSavingFilters = 0;
	$x->AllowSorting = 1;
	$x->AllowNavigation = 1;
	$x->AllowPrinting = 1;
	$x->AllowPrintingMultiSelection = 1;
	$x->AllowCSV = 1;
	$x->RecordsPerPage = 20;
	$x->QuickSearch = 3;
	$x->QuickSearchText = $Translation["quick search"];
	$x->ScriptFileName = "patient_symptoms_view.php";
	$x->RedirectAfterInsert = "patient_symptoms_view.php?SelectedID=#ID#";
	$x->TableTitle = "Patient symptoms";
	$x->PrimaryKey = "`patient_symptoms`.`id`";
	$x->DefaultSortField = '2';
	$x->DefaultSortDirection = 'asc';

	$x->ColWidth   = array(150, 150, 150, 150, 150);
	$x->ColCaption = array("Patient", "Symptom", "Observation date", "Observation time", "Symptom value");
	$x->ColNumber  = array(2, 3, 4, 5, 6);

	$x->Template = 'templates/patient_symptoms_templateTV.html';
	$x->SelectedTemplate = 'templates/patient_symptoms_templateTVS.html';
	$x->ShowTableHeader = 1;
	$x->ShowRecordSlots = 0;
	$x->HighlightColor = '#FFF0C2';

	// mm: build the query based on current member's permissions
	if($perm[2]==1){ // view owner only
		$x->QueryFrom.=', membership_userrecords';
		$x->QueryWhere="where `patient_symptoms`.`id`=membership_userrecords.pkValue and membership_userrecords.tableName='patient_symptoms' and lcase(membership_userrecords.memberID)='".getLoggedMemberID()."'";
	}elseif($perm[2]==2){ // view group only
		$x->QueryFrom.=', membership_userrecords';
		$x->QueryWhere="where `patient_symptoms`.`id`=membership_userrecords.pkValue and membership_userrecords.tableName='patient_symptoms' and membership_userrecords.groupID='".getLoggedGroupID()."'";
	}elseif($perm[2]==3){ // view all
		// no further action
	}elseif($perm[2]==0){ // view none
		$x->QueryFields = array("Not enough permissions" => "NEP");
		$x->QueryFrom = '`patient_symptoms`';
		$x->QueryWhere = '';
		$x->DefaultSortField = '';
	}

	// handle date sorting correctly
	if($_POST['SortField']=='4' || $_POST['SortField']=='`patient_symptoms`.`observation_date`' || $_POST['SortField']=='patient_symptoms.observation_date'){
		$_POST['SortField']='`patient_symptoms`.`observation_date`';
		$SortFieldNumeric=4;
	}
	if($_GET['SortField']=='4' || $_GET['SortField']=='`patient_symptoms`.`observation_date`' || $_GET['SortField']=='patient_symptoms.observation_date'){
		$_GET['SortField']='`patient_symptoms`.`observation_date`';
		$SortFieldNumeric=4;
	}
	// end of date sorting handler

	// hook: patient_symptoms_init
	$render=TRUE;
	if(function_exists('patient_symptoms_init')){
		$args=array();
		$render=patient_symptoms_init($x, getMemberInfo(), $args);
	}

	if($render) $x->Render();

	// hook: patient_symptoms_header
	$headerCode='';
	if(function_exists('patient_symptoms_header')){
		$args=array();
		$headerCode=patient_symptoms_header($x->ContentType, getMemberInfo(), $args);
	}  
	if(!$headerCode){
		include("$d/header.php"); 
	}else{
		ob_start(); include("$d/header.php"); $dHeader=ob_get_contents(); ob_end_clean();
		echo str_replace('<%%HEADER%%>', $dHeader, $headerCode);
	}

	echo $x->HTML;
	// hook: patient_symptoms_footer
	$footerCode='';
	if(function_exists('patient_symptoms_footer')){
		$args=array();
		$footerCode=patient_symptoms_footer($x->ContentType, getMemberInfo(), $args);
	}  
	if(!$footerCode){
		include("$d/footer.php"); 
	}else{
		ob_start(); include("$d/footer.php"); $dFooter=ob_get_contents(); ob_end_clean();
		echo str_replace('<%%FOOTER%%>', $dFooter, $footerCode);
	}
?>
Return current item: Symptoms and Diseases Database