Kinky Calendar Leap Year Update

Posted March 4, 2008 at 3:37 PM

Tags: ColdFusion

Just a quick update - Peter Bell pointed out to me that my ColdFusion Kinky Calendar system was breaking on my site. I took a quick look, and indeed it was. Oh No! So, I threw on my ColdFusion ninja suit and jumped into action. The problem was a little mysterious to debug, but I finally narrowed it down to a leap year problem. The leap year itself was not causing the problem; the problem was that I had some code that looked like this:

 Launch code in new window » Download code as text file »

  • CreateDate(
  • (Year( start_date ) - 1),
  • Month( start_date ),
  • Day( start_date )
  • )

The problem here is that on February 29th of this year, the above code tried to create the 29th of last year. Of course, there was no February 29th of last year. This was an easy fix with some conditional logic.

Thanks Peter for bringing that to my attention. I have updated the Kinky Calendar project page with a new ZIP download.

Download Code Snippet ZIP File

Post Comment  |  Ask Ben  |  Other Searches  |  Print Page



Learning ColdFusion 9 - ColdFusion 9 tutorials, samples, examples, demos

Reader Comments

Mar 4, 2008 at 4:06 PM // reply »
18 Comments

Can you tell us which file (line numbers) were changed so we can update our copies?


Mar 4, 2008 at 4:55 PM // reply »
36 Comments

Why not use DateAdd("yyyy",-1,start_date) ?


Mar 5, 2008 at 4:14 AM // reply »
2 Comments

Thanks! Sometimes February has only 28 days :-)


Mar 6, 2008 at 8:57 AM // reply »
7,572 Comments

@Sami,

It was the _functions.cfm file. It was several different lines for the month repeat and the year repeat. It's probably just easiest to download the ZIP and replace that function. Or, if you just want to swap out those case statements:

<!--- Repeat monthly. --->
<cfcase value="4">

and

<!--- Repeat yearly. --->
<cfcase value="5">

@Steve,

Hmmm, not sure. I think you might be on to something :) I love when I overlook the most obvious solution! Thanks Steve.


Mar 6, 2008 at 10:10 AM // reply »
7,572 Comments

@Steve,

Thanks for the tip. I updated the code with your DateAdd() suggestion. Seems to work like a charm.


May 23, 2008 at 7:38 PM // reply »
1 Comments

Thanks for the information ....


Aug 2, 2008 at 10:51 PM // reply »
1 Comments

I have not gotten this thing to work AT ALL.

There is a request variable somewhere that keeps giving me an error

Please post a working copy without the request.dsn.username VARIABLES!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


Aug 4, 2008 at 8:35 AM // reply »
7,572 Comments

I cannot post a version without that or none of it would work. I use that variable to pull data out of the database.


Post Comment  |  Ask Ben

Recent Blog Comments
Jim
Mar 19, 2010 at 4:49 PM
Nobody Puts Baby In The Corner!
Wow. This is like suddenly finding a support group for your secret shame. I'm not alone! I always liked this movie, even though it is extremely cheesy. I just wish Jennifer Grey hadn't gotten the ... read »
Mar 19, 2010 at 4:47 PM
Application.cfc OnRequest() Method Affects OnError() Arguments
@Jason and @Ben, I've been doing some CF9 refactoring on our systems and noticed an odd occurrence with onError as well. Found a way to work around my problem, but what I saw was... Background: Our ... read »
Jim
Mar 19, 2010 at 4:44 PM
Shoot 'Em Up Starring Clive Owen And Paul Giamatti
I actually enjoyed this movie quite a lot. It was different, certainly, but I think they were going for more of a Quentin Tarentino-"wow, that was weird"-vibe than an actual spoof. Once I realize ... read »
Mar 19, 2010 at 4:34 PM
An Intensive Exploration Of jQuery With Ben Nadel (Video Presentation)
Hey I guess the video is down. Is there anyway you can upload to youtube or vimeo or some other service? Greatly appreciated. ... read »
Mar 19, 2010 at 4:24 PM
ColdFusion CFPOP - My First Look
@Ben Thanks for the follow up! The root of the problem had to do with being able to trace bounced emails to specific records in a DB table. Let's say you run an email campaign and you get 1,000 bou ... read »
Mar 19, 2010 at 4:15 PM
SQL COUNT( NULLIF( .. ) ) Is Totally Awesome
Thank you Ben and Tony! Either of these work for the summary report I am working on and the info is much appreciated! I think I like Tony's a little better because I won't have to educate every ... read »
Mar 19, 2010 at 3:35 PM
ColdFusion Path Usage And Manipulation Overview
@Ben, Sorry. Clarification. expandpath worked for me in application.cfc, but not in other templates. ... read »
Mar 19, 2010 at 3:33 PM
ColdFusion Path Usage And Manipulation Overview
@Ben, Never did. Worked around it and moved on. Here is what I ended up with in onApplicationStart: // chop off "\application.cfc" application.appdir = GetCurrentTemplatePath().ReplaceFirst( "[\\\ ... read »