[ic] Difference in Dates
Michael Goldfarb
interchange-users@icdevgroup.org
Thu Feb 27 11:03:01 2003
>I need to have an "if" block that checks if the current date is more
than 7
>days later than a date in a database field. I've looked at the time
tag >and
>I'm wondering what the best way to do this would be. Any pointers
would be
>much appreciated. Thanks!
>
>- Grant
We do some similar date comparisons for a coupon add-on that we have
implemented for a few of our clients.
The way that we do it is to store the dates in the database in this
format:
YMD
For instance, February 27, 2003 would be stored as:
20030227
You can get that value in IC by using:
[convert-date fmt="%Y%m%d"][data-session time][/convert-date]
Then, we run similar "if" statements as the one you mentioned above by
assigning scratch variables to the two dates to be compared.
For instance, you can set a scratch variable of today's date with
something like:
[tmp today_date][convert-date fmt="%Y%m%d"][data-session
time][/convert-date][/tmp]
You can then set another scratch variable with the date from the
database in a number of ways. We use a query like this:
[query sql="select start_date, end_date from coupons where coupon_code =
'[scratch coupon_entered]'" list=1]
[tmp coupon_date][sql-param start_date][/tmp]
[/query]
Finally, you can run an "if" statement comparing the two scratch
variables created above with something like this:
[if type="scratch" term="today_date" op=">" compare="[scratch
coupon_date]"]
foo
[else]
bar
[/else]
[/if]
Hope this helps get you started.