Learning ColdFusion 8: Javascript Object Notation (JSON) Part II - Remote Method Calls

<cffunction
	name="GetWeekDateQuery"
	access="remote"
	returntype="query"
	returnformat="JSON"
	output="false"
	hint="Given a date, it will return all dates in that week in a single row query.">
 
	<!--- Define arguments. --->
	<cfargument
		name="Date"
		type="date"
		required="false"
		default="#Now()#"
		/>
 
	<!--- Define the local scope. --->
	<cfset var LOCAL = {} />
 
	<!--- Get first day of week. --->
	<cfset LOCAL.Sunday = (
		Fix( ARGUMENTS.Date ) -
		DayOfWeek( ARGUMENTS.Date ) +
		1
		) />
 
	<!--- Create week query. --->
	<cfset LOCAL.Week = QueryNew(
		"Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday",
		"VARCHAR, VARCHAR, VARCHAR, VARCHAR, VARCHAR, VARCHAR, VARCHAR"
		) />
 
	<!--- Add a single row to the query. --->
	<cfset QueryAddRow( LOCAL.Week ) />
 
	<!--- Set each cell value. --->
	<cfset LOCAL.Week[ "Sunday" ][ 1 ] = DateFormat(
		LOCAL.Sunday,
		"mm-dd-yyyy"
		) />
 
	<cfset LOCAL.Week[ "Monday" ][ 1 ] = DateFormat(
		(LOCAL.Sunday + 1),
		"mm-dd-yyyy"
		) />
 
	<cfset LOCAL.Week[ "Tuesday" ][ 1 ] = DateFormat(
		(LOCAL.Sunday + 2),
		"mm-dd-yyyy"
		) />
 
	<cfset LOCAL.Week[ "Wednesday" ][ 1 ] = DateFormat(
		(LOCAL.Sunday + 3),
		"mm-dd-yyyy"
		) />
 
	<cfset LOCAL.Week[ "Thursday" ][ 1 ] = DateFormat(
		(LOCAL.Sunday + 4),
		"mm-dd-yyyy"
		) />
 
	<cfset LOCAL.Week[ "Friday" ][ 1 ] = DateFormat(
		(LOCAL.Sunday + 5),
		"mm-dd-yyyy"
		) />
 
	<cfset LOCAL.Week[ "Saturday" ][ 1 ] = DateFormat(
		(LOCAL.Sunday + 6),
		"mm-dd-yyyy"
		) />
 
 
	<!--- Return week. --->
	<cfreturn LOCAL.Week />
</cffunction>

For Cut-and-Paste