/
listing1-14.txt
75 lines (50 loc) · 2.17 KB
/
listing1-14.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<!--- Application.cfc (Version 9) --->
<cfcomponent output="false">
<cfset this.name = "OurApplication">
<cfset this.applicationTimeout = createTimeSpan(0,2,0,0)>
<cfset this.clientManagement = false>
<cfset this.sessionManagement = true>
<cffunction name="onApplicationStart" returnType="boolean" output="false">
<cfset application.dsn = "foo">
<cfset application.adminEmail = "ray@camdenfamily.com">
<cfreturn true>
</cffunction>
<cffunction name="onRequestStart" returnType="boolean" output="false">
<cfargument name="thePage" type="string" required="true">
<cfinclude template="udfs.cfm">
<cfreturn true>
</cffunction>
<cffunction name="onRequestEnd" returnType="void" output="true">
<cfargument name="thePage" type="string" required="true">
<cfoutput>
<p align="right">
Copyright #year(now())#
</p>
</cfoutput>
</cffunction>
<cffunction name="onSessionStart" returnType="void" output="false">
<cfset session.started = now()>
<cfset session.numberofpagesvisited = 0>
</cffunction>
<cffunction name="onError" returnType="void" output="false">
<cfargument name="exception" required="true">
<cfargument name="eventname" type="string" required="true">
<cfmail to="#application.adminEmail#" from="#application.adminEmail#"
subject="Error!" type="html">
<cfdump var="#exception#" label="Exception">
<cfdump var="#cgi#" label="cgi">
<cfdump var="#form#" label="form">
</cfmail>
<cflocation url="error.cfm" addToken="false">
</cffunction>
<cffunction name="onSessionEnd" returnType="void" output="false">
<cfargument name="sessionScope" type="struct" required="true">
<cfargument name="appScope" type="struct" required="false">
<cfset var duration = dateDiff("n", arguments.sessionScope.started, now())>
<cflog file="#this.name#" text="Session timed out after #duration# minutes.">
</cffunction>
<cffunction name="onApplicationEnd" returnType="void" output="false">
<cfargument name="applicationScope" required="true">
<cflog file="#this.name#" text="Application timed out.">
</cffunction>
</cfcomponent>