...

Create Multiple Date Values

drumsinheaven
05-10-2011, 07:11 PM
Hello,

I'm trying to create a simple coldfusion script to display the correct operating hours of a building based on the date. I've got it working but I would like to add multiple dates to some of the rules. ie. If it is 5/3/11 or 5/4/11 or 5/5/11 display xyz hours. Here's what I've got thus far.

<cfoutput><h3>Today is #DateFormat(Now(),"dddd, mmmm d, yyyy")#</h3>
<cfset dow = dayofWeek(now())>
<cfset doy = dayofYear(now())>
<p>Building Hours: <cfif doy is #dayofYear(CreateDate(2011, 5, 9) or (2011, 5, 10)#>12:00pm - 8:00pm<cfelseif doy is #dayofYear(CreateDate(2011, 5, 11))#>8:00am - 6:00pm<cfelseif dow is 2 or 3 or 4 or 5>6:00am - 10:00pm<cfelseif dow is 6>6:00am - 8:00pm<cfelseif dow is 7>10:00am - 8:00pm<cfelseif dow is 1>10:00am - 10:00pm</p></cfif>

Thanks!

Gjslick
05-11-2011, 07:15 PM
If statements must be "[comparison] OR [comparison]", not "if something is this OR that".

So your first cfif should look something like this:
<cfif doy is dayOfYear(createDate(2011, 5, 9)) OR doy is dayOfYear(createDate(2011, 5, 10))>


Your entire if statement block should probably look something along these lines:
<cfif doy is dayOfYear(createDate(2011, 5, 9)) OR doy is dayOfYear(createDate(2011, 5, 10))>
12:00pm - 8:00pm
<cfelseif doy is dayofYear(createDate(2011, 5, 11))>
8:00am - 6:00pm
<cfelseif dow is 2 OR dow is 3 OR dow is 4 OR dow is 5>
6:00am - 10:00pm
<cfelseif dow is 6>
6:00am - 8:00pm
<cfelseif dow is 7>
10:00am - 8:00pm
<cfelseif dow is 1>
10:00am - 10:00pm
</cfif>


Btw, you don't need to use the # signs inside the <cfif> tag. I removed them in the above code.

-Greg

drumsinheaven
05-12-2011, 03:49 PM
Thanks. It works. So cool!



EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum