<?php
ini_set("display_errors","1");
ini_set("display_startup_errors","1");
set_magic_quotes_runtime(0);
include("include/dbcommon.php");
include("include/Current_Patients_variables.php");
// check if logged in
if(!@$_SESSION["UserID"] || !CheckSecurity(@$_SESSION["OwnerID"],"Edit"))
{
$_SESSION["MyURL"]=$_SERVER["SCRIPT_NAME"]."?".$_SERVER["QUERY_STRING"];
header("Location: login.php?message=expired");
return;
}
$filename="";
$message="";
$error_happened=false;
$readevalues=false;
//connect database
$conn = db_connect();
$keys=array();
$keys["Primary"]=postvalue("editid1");
// prepare data for saving
if(@$_POST["a"]=="edited")
{
$strWhere=KeyWhere($keys);
$strSQL = "update ".AddTableWrappers($strOriginalTableName)." set ";
$evalues=array();
$efilename_values=array();
$files_delete=array();
$files_move=array();
// processing Patient Name - start
$value = postvalue("value_Patient_Name");
$type=postvalue("type_Patient_Name");
$value=prepare_for_db("Patient Name",$value,$type);
if(!($value===false))
$evalues["Patient Name"]=$value;
// processibng Patient Name - end
// processing Date of Birth - start
$value = postvalue("value_Date_of_Birth");
$type=postvalue("type_Date_of_Birth");
$value=prepare_for_db("Date of Birth",$value,$type);
if(!($value===false))
$evalues["Date of Birth"]=$value;
// processibng Date of Birth - end
// processing Unit Number - start
$value = postvalue("value_Unit_Number");
$type=postvalue("type_Unit_Number");
$value=prepare_for_db("Unit Number",$value,$type);
if(!($value===false))
$evalues["Unit Number"]=$value;
// processibng Unit Number - end
// processing Sex - start
$value = postvalue("value_Sex");
$type=postvalue("type_Sex");
$value=prepare_for_db("Sex",$value,$type);
if(!($value===false))
$evalues["Sex"]=$value;
// processibng Sex - end
// processing Ward - start
$value = postvalue("value_Ward");
$type=postvalue("type_Ward");
$value=prepare_for_db("Ward",$value,$type);
if(!($value===false))
$evalues["Ward"]=$value;
// processibng Ward - end
// processing Bed - start
$value = postvalue("value_Bed");
$type=postvalue("type_Bed");
$value=prepare_for_db("Bed",$value,$type);
if(!($value===false))
$evalues["Bed"]=$value;
// processibng Bed - end
// processing Consultant - start
$value = postvalue("value_Consultant");
$type=postvalue("type_Consultant");
$value=prepare_for_db("Consultant",$value,$type);
if(!($value===false))
$evalues["Consultant"]=$value;
// processibng Consultant - end
// processing Code - start
$value = postvalue("value_Code");
$type=postvalue("type_Code");
$value=prepare_for_db("Code",$value,$type);
if(!($value===false))
$evalues["Code"]=$value;
// processibng Code - end
// processing Category - start
$value = postvalue("value_Category");
$type=postvalue("type_Category");
$value=prepare_for_db("Category",$value,$type);
if(!($value===false))
$evalues["Category"]=$value;
// processibng Category - end
// processing Admission Date - start
$value = postvalue("value_Admission_Date");
$type=postvalue("type_Admission_Date");
$value=prepare_for_db("Admission Date",$value,$type);
if(!($value===false))
$evalues["Admission Date"]=$value;
// processibng Admission Date - end
// processing Diagnosis - start
$value = postvalue("value_Diagnosis");
$type=postvalue("type_Diagnosis");
$value=prepare_for_db("Diagnosis",$value,$type);
if(!($value===false))
$evalues["Diagnosis"]=$value;
// processibng Diagnosis - end
// processing Allergies - start
$value = postvalue("value_Allergies");
$type=postvalue("type_Allergies");
$value=prepare_for_db("Allergies",$value,$type);
if(!($value===false))
$evalues["Allergies"]=$value;
// processibng Allergies - end
// processing Notes - start
$value = postvalue("value_Notes");
$type=postvalue("type_Notes");
$value=prepare_for_db("Notes",$value,$type);
if(!($value===false))
$evalues["Notes"]=$value;
// processibng Notes - end
// processing Nurses - start
$value = postvalue("value_Nurses");
$type=postvalue("type_Nurses");
$value=prepare_for_db("Nurses",$value,$type);
if(!($value===false))
$evalues["Nurses"]=$value;
// processibng Nurses - end
// processing Social Services - start
$value = postvalue("value_Social_Services");
$type=postvalue("type_Social_Services");
$value=prepare_for_db("Social Services",$value,$type);
if(!($value===false))
$evalues["Social Services"]=$value;
// processibng Social Services - end
// processing Team - start
$value = postvalue("value_Team");
$type=postvalue("type_Team");
$value=prepare_for_db("Team",$value,$type);
if(!($value===false))
$evalues["Team"]=$value;
// processibng Team - end
foreach($efilename_values as $ekey=>$value)
$evalues[$ekey]=$value;
// do event
$retval=true;
if(function_exists("BeforeEdit"))
$retval=BeforeEdit($evalues,$strWhere);
if($retval)
{
// construct SQL string
foreach($evalues as $ekey=>$value)
$strSQL.=AddFieldWrappers($ekey)."=".add_db_quotes($ekey,$value).", ";
if(substr($strSQL,-2)==", ")
$strSQL=substr($strSQL,0,strlen($strSQL)-2);
$strSQL.=" where ".$strWhere;
set_error_handler("edit_error_handler");
db_exec($strSQL,$conn);
set_error_handler("error_handler");
if(!$error_happened)
{
// delete & move files
foreach ($files_delete as $file)
{
if(file_exists($file))
@unlink($file);
}
foreach ($files_move as $file)
move_uploaded_file($file[0],$file[1]);
$message="<div class=message><<< "."Record updated"." >>></div>";
// after edit event
if(function_exists("AfterEdit"))
AfterEdit();
}
}
else
$readevalues=true;
}
// get current values and show edit controls
$strSQL = $gstrSQL;
$strWhere=KeyWhere($keys);
$strSQL = AddWhere($strSQL,$strWhere);
LogInfo($strSQL);
$rs=db_query($strSQL,$conn);
$data=db_fetch_array($rs);
if($readevalues)
{
$data["Patient Name"]=$evalues["Patient Name"];
$data["Date of Birth"]=$evalues["Date of Birth"];
$data["Unit Number"]=$evalues["Unit Number"];
$data["Sex"]=$evalues["Sex"];
$data["Ward"]=$evalues["Ward"];
$data["Bed"]=$evalues["Bed"];
$data["Consultant"]=$evalues["Consultant"];
$data["Code"]=$evalues["Code"];
$data["Category"]=$evalues["Category"];
$data["Admission Date"]=$evalues["Admission Date"];
$data["Diagnosis"]=$evalues["Diagnosis"];
$data["Allergies"]=$evalues["Allergies"];
$data["Notes"]=$evalues["Notes"];
$data["Nurses"]=$evalues["Nurses"];
$data["Social Services"]=$evalues["Social Services"];
$data["Team"]=$evalues["Team"];
}
include('libs/Smarty.class.php');
$smarty = new Smarty();
// include files
$includes="";
// validation stuff
$bodyonload="";
$onsubmit="";
$includes.="<script language=\"JavaScript\" src=\"include/validate.js\"></script>\r\n";
$includes.="<script language=\"JavaScript\">\r\n";
$includes.="var TEXT_FIELDS_REQUIRED='".addslashes("The Following fields are Required")."';\r\n";
$includes.="var TEXT_FIELDS_ZIPCODES='".addslashes("")."';\r\n";
$includes.="var TEXT_FIELDS_EMAILS='".addslashes("The Following fields must be valid Emails")."';\r\n";
$includes.="var TEXT_FIELDS_NUMBERS='".addslashes("The Following fields must be Numbers")."';\r\n";
$includes.="var TEXT_FIELDS_CURRENCY='".addslashes("The Following fields must be currency")."';\r\n";
$includes.="var TEXT_FIELDS_PHONE='".addslashes("The Following fields must be Phone Numbers")."';\r\n";
$includes.="var TEXT_FIELDS_PASSWORD1='".addslashes("The Following fields must be valid Passwords")."';\r\n";
$includes.="var TEXT_FIELDS_PASSWORD2='".addslashes("should be at least 4 characters long")."';\r\n";
$includes.="var TEXT_FIELDS_PASSWORD3='".addslashes("Cannot be 'password'")."';\r\n";
$includes.="var TEXT_FIELDS_STATE='".addslashes("The Following fields must be State Names")."';\r\n";
$includes.="var TEXT_FIELDS_SSN='".addslashes("The Following fields must be Social Security Numbers")."';\r\n";
$includes.="var TEXT_FIELDS_DATE='".addslashes("The Following fields must be valid dates")."';\r\n";
$includes.="var TEXT_FIELDS_TIME='".addslashes("The Following fields must be valid time in 24-hours format")."';\r\n";
$includes.="var TEXT_FIELDS_CC='".addslashes("The Following fields must be valid Credit Card Numbers")."';\r\n";
$includes.="var TEXT_FIELDS_SSN='".addslashes("The Following fields must be Social Security Numbers")."';\r\n";
$includes.="</script>\r\n";
$validatetype="";
$validatetype.="IsRequired";
if($validatetype)
$bodyonload.="define('value_Patient_Name','".$validatetype."','Patient Name');";
$validatetype="";
$validatetype.="IsRequired";
if($validatetype)
$bodyonload.="define('value_Date_of_Birth','".$validatetype."','Date of Birth');";
$validatetype="";
$validatetype.="IsRequired";
if($validatetype)
$bodyonload.="define('value_Unit_Number','".$validatetype."','Unit Number');";
$validatetype="";
$validatetype.="IsRequired";
if($validatetype)
$bodyonload.="define('value_Sex','".$validatetype."','Sex');";
$validatetype="";
$validatetype.="IsRequired";
if($validatetype)
$bodyonload.="define('value_Ward','".$validatetype."','Ward');";
$validatetype="";
$validatetype.="IsRequired";
if($validatetype)
$bodyonload.="define('value_Consultant','".$validatetype."','Consultant');";
$validatetype="";
$validatetype.="IsRequired";
if($validatetype)
$bodyonload.="define('value_Category','".$validatetype."','Category');";
$validatetype="";
$validatetype.="IsRequired";
if($validatetype)
$bodyonload.="define('value_Admission_Date','".$validatetype."','Admission Date');";
if($bodyonload)
{
$onsubmit="return validate();";
$bodyonload="onload=\"".$bodyonload."\"";
}
$includes.="<script language=\"JavaScript\" src=\"include/jsfunctions.js\"></script>\r\n";
$includes.="<script language=\"JavaScript\">\r\n".
"var locale_dateformat = ".$locale_info["LOCALE_IDATE"].";\r\n".
"var locale_datedelimiter = \"".$locale_info["LOCALE_SDATE"]."\";\r\n".
"var bLoading=false;\r\n".
"var TEXT_PLEASE_SELECT='".addslashes("Please select")."';\r\n".
"</script>\r\n";
// include datepicker files
$includes.="<script language=\"JavaScript\" src=\"include/calendar.js\"></script>\r\n";
$smarty->assign("includes",$includes);
$smarty->assign("bodyonload",$bodyonload);
if(strlen($onsubmit))
$onsubmit="onSubmit=\"".$onsubmit."\"";
$smarty->assign("onsubmit",$onsubmit);
$smarty->assign("key1",htmlspecialchars($keys["Primary"]));
$smarty->assign("show_key1", htmlspecialchars(GetData($data,"Primary", "")));
$smarty->assign("message",$message);
$max_filesize_set=0;
$readonlyfields=array();
$smarty->assign("value_Patient_Name",@$data["Patient Name"]);
$smarty->assign("value_Date_of_Birth",@$data["Date of Birth"]);
$smarty->assign("value_Unit_Number",@$data["Unit Number"]);
$smarty->assign("value_Sex",@$data["Sex"]);
$smarty->assign("value_Ward",@$data["Ward"]);
$smarty->assign("value_Bed",@$data["Bed"]);
$smarty->assign("value_Consultant",@$data["Consultant"]);
$smarty->assign("value_Code",@$data["Code"]);
$smarty->assign("value_Category",@$data["Category"]);
$smarty->assign("value_Admission_Date",@$data["Admission Date"]);
$smarty->assign("value_Diagnosis",@$data["Diagnosis"]);
$smarty->assign("value_Allergies",@$data["Allergies"]);
$smarty->assign("value_Notes",@$data["Notes"]);
$smarty->assign("value_Nurses",@$data["Nurses"]);
$smarty->assign("value_Social_Services",@$data["Social Services"]);
$smarty->assign("value_Team",@$data["Team"]);
$linkdata="";
$smarty->assign("linkdata",$linkdata);
$where=$strWhere;
$smarty->display("Current_Patients_edit.htm");
function edit_error_handler($errno, $errstr, $errfile, $errline)
{
global $readevalues, $message, $error_happened;
$message="<div class=message><<< Record was NOT updated >>><br><br>".$errstr."</div>";
$readevalues=true;
$error_happened=true;
}
?>