User Guide

Table Of Contents
Sample IM message handling application 1055
and FirstName like '#listFirst(message, " ")#%'
and LastName like '#listlast(message, " ")#%'
<!--- No space: the user entered a first or a last name. --->
<cfelse>
and (FirstName like '#listFirst(message, " ")#%'
or LastName like '#listFirst(message, " ")#%')
</cfif>
</cfquery>
<!--- Generate and return the message.--->
<cfscript>
retrunVal = structNew();
retrunVal.command = "submit";
retrunVal.buddyID = arguments.CFEvent.data.SENDER;
//No records were found.
if (employees.recordCount eq 0) {
retrunVal.message = "No records found for '#message#'";
}
//One record was found.
else if (employees.recordCount eq 1) {
// Whitespace in the message text results in bad formatting,
// so the source cannot be indented.
retrunVal.message = "Requested information:
#employees.firstName# #employees.lastName#
#employees.Department#
#employees.Phone#";
}
//Multiple possibilities were found.
else if (employees.recordCount gt 1) {
//If more than ten were found, return only the first ten.
if (employees.recordCount gt 10)
{
retrunVal.message = "First 10 of #employees.recordCount# records";
}else{
retrunVal.message = "Records found: #employees.recordCount#";
}
// The session.users structure contains the found names.
// The record key is a number that is also returned in front of the
// name in the message.
session.users = structNew();
for(i=1; i lte min(10, employees.recordCount); i=i+1)
{
// These two lines are formatted to prevent extra white space.
retrunVal.message = retrunVal.message & "
#i# - #employees.firstName[i]# #employees.lastName[i]#";
// The following two lines must be a single line in the source
session.users[i]="#employees.firstName[i]#
#employees.lastName[i]#";
}
}
return retrunVal;
</cfscript>
</cffunction>
</cfcomponent>