
<!---
This file is Copyright ? 1998-2009 by Home Care Business Services. This work may not be reproduced, in whole or in part, 
using any medium, including, but not limited to, electronic transmission, CD-ROM or published in print, without the express 
permission of Home Care Business Services.

$Revision: 1.22 $
$Id: mainpage.cfm,v 1.22 2010/03/22 22:03:42 arlen Exp $
$Date: 2010/03/22 22:03:42 $
--->

<!--- This code checks the Username & Password entered against the Employee table --->
<!--- If correct, SESSION variables are set to keep track of parameters used by the site --->

<cfparam name = 'form.which' default = '' />
<cfset session.EmpLevel=0>
<cfset Session.IsAgencyLogin = ""> 
<cfset Session.IsPyhsician = ""> 
<cfset Session.QBInUse = ""> 


 <cfif IsDefined("form.agencyname")>
<cfif isdefined('form.agencyname')>
	 <cfset session.isSuperUser="Yes">
	 <cfset session.SuperAgencyId = form.agencyname />
	 <cfset session.EmpLevel="">
   	<cflocation url = 'index_super1.cfm?superlogin=y' addtoken = 'no' />
	<cfelse>
	<cfset session.isSuperUser="No">
	</cfif>
	
	
	<cfset MM_redirectLoginSuccess="header1.cfm">
	<cfset MM_redirectLoginFailed="login_failed.cfm">
	
	<cfquery   name="Login"   datasource="#Application.DataSrc#">
		SELECT 
		Employee.Login_Id,Agency.Agency_Id,Agency.Survey,Agency.Agency_Name, Agency.QBInUse, Agency.Agency_Login, Agency.Agency_State
		,Agency.PPInUse, Agency.PatientFileManagerInUse
		,Agency.Agency_Medicare_ID,Employee.Level,  Agency.AgencyType, Agency.CAHPS,Agency.TurboClaim, Agency.Telephony, Agency.EligAuto, Agency.BillingSvcs
		,Employee.Employee_Id, Employee.Username, Employee.Password, Employee.Block,Employee.Email, Employee.Authority_Level, Employee.EmployeeType
		,CONCAT(Employee.First_Name, " ", Employee.Last_Name) AS Full_Name, Employee.First_Name, Employee.Last_Name
		,Physician.Employee_ID, Physician.Physician_ID, Physician.Portal
		,Agency.Agency_contact_Phone,Employee.Home_Phone
		FROM #Request.prefix_db_lookup#.Employee 
		LEFT JOIN #Request.prefix_db_lookup#.Agency ON Employee.Agency_ID = Agency.Agency_ID
		LEFT OUTER JOIN #Request.prefix_db_lookup#.Physician ON Employee.Employee_Id = Physician.Employee_Id
		WHERE Username = <cfqueryparam cfsqltype="cf_sql_varchar" value="#form.agencyname#" maxlength="64">
		AND Agency.Status = <cfqueryparam cfsqltype="cf_sql_varchar" value="active" maxlength="8">
		AND Employee.Status = <cfqueryparam cfsqltype="cf_sql_varchar" value="active" maxlength="8">
	</cfquery>

			
		<cfset Session.IsAgencyLogin = "0"> 
		<cfset thetimestamp=#CreateODBCDateTime(Now())#>
		<cfset session.firstname=#login.first_name#>
		<cfset session.EmpLevel=#login.Level#>

	<cfif Login.RecordCount NEQ 0>
		<cfif Login.Portal eq 1 and Login.PPInUse eq 0>

			<cflocation url="#MM_redirectLoginFailed#" addtoken="no">
		<cfelse>
			<cfquery  name="InsertLogon" datasource="#Application.DataSrc#">
				INSERT INTO
				#Request.prefix_db_lookup#.Logon
				(Agency_ID,	Employee_ID, Logon_Date,User_IP)
				VALUES
				(#Login.Agency_ID#, #Login.Employee_ID#, #thetimestamp#,'#REMOTE_ADDR#' )
			</cfquery>
		</cfif>
	</cfif>

	<!--- ok now check for the case sensative --->
	<cfset comparison = Compare(form.agencyname, Login.Username)>

	
	
	
	<cfif Login.EmployeeType eq 'Physician'>
		<cfset Session.IsPyhsician = 1>
		<cfif Login.QBInUse eq 1>
			<cfset Session.QBInUse = 1> 
		</cfif>
	<cfelse>
		<cfif Login.QBInUse eq 1>
			<cfset Session.QBInUse = 1> 
		</cfif>	
	</cfif>
	
	
		<cfif Login.RecordCount NEQ 0 and comparison eq 0 and  Login.EmployeeType eq 'Physician'>
			<cftry>	 
				<cfset session.ULoginID = #Login.Login_Id# />
				<cfinclude template="session.cfm">
				<cflock scope="Session" timeout="10" type="Exclusive">
				<cfset Session.LogonDate = #thetimestamp#>
				</cflock>
				<cfif IsDefined("URL.accessdenied") AND false>
					<cfset MM_redirectLoginSuccess=URL.accessdenied>
				</cfif>
				<cfif Session.PhysicianPortal eq 1>
					<cfset MM_redirectLoginSuccess="physicianportal/index.cfm">
				</cfif>
				<cflocation url="#MM_redirectLoginSuccess#" addtoken="no">
				<cfcatch type="Lock">
				
				<cfmail to="error@myhomecarebiz.com" from="error@myhomecarebiz.com" 
				subject="MHB Login Timeout: #dateformat(now(),'yymmdd-hhmmss')#" type="html">
					<font face="Verdana, Arial, Helvetica, sans-serif" size="2">
					<p><b>A timeout occured on the website.</b></p>
					
					<table align=left>
					<tr><td nowrap valign=top><b>Error Date/Time</b></td><td>#DateFormat(now(),"mm/dd/yyyy")# #TimeFormat(now(),"hh:mm:ss")#</td></tr> 
					<tr><td nowrap valign=top colspan=2><hr></td></tr> 
					<cfif isDefined("session.agencyname")>
						<tr><td nowrap valign=top><b>Agency Login</b></td><td>#session.agencylogin#</td></tr>	 
						<tr><td nowrap valign=top><b>Agency Name</b></td><td>#session.agencyname#</td></tr>	 
						<tr><td nowrap valign=top><b>Agency ID</b></td><td>#session.agencyid#</td></tr>	 
						<tr><td nowrap valign=top><b>Display Name</b></td><td>#session.display#</td></tr> 
						<tr><td nowrap valign=top><b>User ID</b></td><td>#Session.EmployeeID#</td></tr>
						<tr><td nowrap valign=top><b>User Name</b></td><td>#session.username#</td></tr> 
					</cfif>
					<tr><td nowrap valign=top colspan=2><hr></td></tr> 
					<tr><td nowrap valign=top><b>Server</b></td><td>#CGI.SERVER_NAME#</td></tr> 
					<tr><td nowrap valign=top><b>DSN</b></td><td>#Application.DataSrc#</td></tr> 
					<tr><td nowrap valign=top colspan=2><hr></td></tr> 
					<tr><td nowrap valign=top colspan=2>
					
					<br /><br />
					<b>CGI Variables:</b><br />
					<cfdump var="#CGI#"><br />
					<b>Application Variables:</b><br />
					<cfdump var="#Application#"><br />
					<b>Session Variables:</b><br />
					<cfdump var="#Session#">
					<cfif isDefined("form") >
						<b>Form Variables:</b><br />
						<cfdump var="#FORM#">
					</cfif>
					</font>
					</td></tr>
					</table>
				</cfmail>
				</cfcatch>
			</cftry>
		</cfif>
	
	                 

  <cfif form.which neq ''>
   <cflocation url = #form.which# addtoken = 'no' />
  <cfelse>
   <cflocation url="#MM_redirectLoginFailed#" addtoken="no">
  </cfif>
  
 <cfelse>
 
  <cfset MM_LoginAction=CGI.SCRIPT_NAME>
  <cfif CGI.QUERY_STRING NEQ "">
    <cfset MM_LoginAction=MM_LoginAction & "?" & XMLFormat(CGI.QUERY_STRING)>
  </cfif>
</cfif>

