Server Time:
Monday May 12 2008 07:09 AM  
Your Time:
  
HostMySite.Com is sponsoring this tutorial, please visit their site today!
This tutorial is sponsored by HostMySite.Com - ColdFusion Hosting

Format your date in spanish.
by: Diego Benitez
Email this tutorial to a friend Display Printer Friendly Format
[Download in PDF Format] [Download in FlashPaper Format]

Format your date in spanish With ColdFusion!

The following custom tag will allow you to display your dates in spanish, let me show you how the tag itself works:

<!--- All you have to do is call the function as
   <cf_dateformates date = (a ODBC date) format = "(the format you want it to print out)"
         formats:
         yyyy eq. 2004
         yy eq. 04
         y eq. 4
         mmmm eq. Enero
         mmm eq. Ene
         mm eq. 01
         m eq. 1
         dddd eq. Lunes
         ddd eq. Lun
         dd eq. 01
         d eq. 1
         Date:
             Make sure that it is a ODBC date, to make it a odbcdate you can apply the following.
             createODBCdate(createdate(year,month,day))
             or for the server current date you can do
             createODBCdate(now())
             good luck and enjoy translating your date to spanish.
--->

<cfif Not IsDefined("Attributes.Date") and Not IsDefined("Attributes.Format")>

<font color="#FF0000" size="4" face="Verdana, Arial, Helvetica, sans-serif">
    You have to specify a date.</font>
    <cfabort>
</cfif>

<!--- first define the months in spanish --->
<cfif dateformat(Attributes.Date, 'mmmm') EQ 'January'>
    <cfset month = "Enero">
<cfelseif dateformat(Attributes.Date, 'mmmm') EQ 'February'>
    <cfset month = "Febrero">
<cfelseif dateformat(Attributes.Date, 'mmmm') EQ 'March'>
    <cfset month = "Marzo">
<cfelseif dateformat(Attributes.Date, 'mmmm') EQ 'April'>
    <cfset month = "Abril">
<cfelseif dateformat(Attributes.Date, 'mmmm') EQ 'May'>
    <cfset month = "Mayo">
<cfelseif dateformat(Attributes.Date, 'mmmm') EQ 'June'>
    <cfset month = "Junio">
<cfelseif dateformat(Attributes.Date, 'mmmm') EQ 'July'>
    <cfset month = "Julio">
<cfelseif dateformat(Attributes.Date, 'mmmm'') EQ 'August'>
    <cfset month = "Agosto">
<cfelseif dateformat(Attributes.Date,'mmmm') EQ 'September'>
    <cfset month = "Septiembre">
<cfelseif dateformat(Attributes.Date, 'mmmm') EQ 'October'>
    <cfset month = "Octubre">
<cfelseif dateformat(Attributes.Date,'mmmm') EQ 'November'>
    <cfset month = "Noviembre">
<cfelseif dateformat(Attributes.Date, 'mmmm') EQ 'December'>
    <cfset month = "Diciembre">
</cfif>

<!--- Now define the days in spanish --->
<cfif dateformat(Attributes.Date, 'dddd') EQ 'Monday'>
    <cfset day = "Lunes">
<cfelseif dateformat(Attributes.Date, 'dddd') EQ 'Tuesday'>
    <cfset day = "Martes">
<cfelseif dateformat(Attributes.Date, 'dddd') EQ 'Wednesday'>
    
<cfset day = "Miércoles">
<cfelseif dateformat(Attributes.Date, 'dddd') EQ 'Thursday'>
    
<cfset day = "Jueves">
<cfelseif dateformat(Attributes.Date, 'dddd') EQ 'Friday'>
    
<cfset day = "Viernes">
<cfelseif dateformat(Attributes.Date, 'dddd') EQ 'Saturday'>
    
<cfset day = "Sabado">
<cfelseif dateformat(Attributes.Date, 'dddd') EQ 'Sunday'>
    
<cfset day = "Domingo">
</cfif>

<!--- now process the actual tag to return values, First do the months values --->
<cfif find("mmmm","#attributes.format#")>
    <cfset attributes.format = replace(attributes.format,'mmmm','#month#')>
<cfelseif find("mmm","#attributes.format#")>
    
<cfset attributes.format = replace(attributes.format,'mmm','#left("#month#", 3)#')>
<cfelseif find("mm","#attributes.format#")>
    
<cfset attributes.format = replace(attributes.format,'mm','#dateformat(Attributes.Date, 'mm')#')>
<cfelseif find("m","#attributes.format#")>
    
<cfset attributes.format = replace(attributes.format,'m','#dateformat(Attributes.Date, 'm')#')>
</cfif>

<!--- Next, do the days values --->
<cfif find("dddd","#attributes.format#")>
    
<cfset attributes.format = replace(attributes.format,'dddd','#day#')>
<cfelseif find("ddd","#attributes.format#")>
    
<cfset attributes.format = replace(attributes.format,'ddd','#left("#month#",3)#')>
<cfelseif find("dd","#attributes.format#")>
    
<cfset attributes.format = replace(attributes.format,'dd','#dateformat(Attributes.Date, 'dd')#')>
<cfelseif find("d","#attributes.format#")>
    
<cfset attributes.format = replace(attributes.format,'d','#dateformat(Attributes.Date, 'd')#')>
</cfif>


<cfif find("yyyy","#attributes.format#")>
    
<cfset attributes.format = replace(attributes.format,'yyyy','#dateformat(Attributes.Date, 'yyyy')#')>
</cfif>

<!--- Next, do the years values --->
<cfif find("yy","#attributes.format#")>
    
<cfset attributes.format = replace(attributes.format,'yy','#dateformat(Attributes.Date, 'yy')#')>
</cfif>
<cfif find("y","#attributes.format#")>
    <cfset attributes.format = replace(attributes.format,'y','#dateformat(Attributes.Date, 'y')#')>
</cfif>

<!--- now, let's pass the value on the page, for the visitor to see --->
<cfoutput>#attributes.format#</cfoutput>

That's it, you can now have your dates displayed in spanish!


Date added: Thu. January 29, 2004
Posted by: Diego Benitez | Views: 8756 | Tested Platforms: CFMX | Difficulty: Intermediate
Categories Listed: Dates/Time

HostMySite.Com is sponsoring this tutorial, please visit their site today!
This tutorial is sponsored by HostMySite.Com - ColdFusion Hosting

This author's other tutorials:
QueryStringSet
Replaces or Adds a variable with its value on a cgi.Query_String alike. It supports multiple values at the same time separated by commas - Date added: Wed. January 11, 2006
how to format a date/time using bind
here is a long way but the only one i found to format a date/time using the <cfformgroup type="repeater" query="queryname"> - Date added: Thu. March 10, 2005
Please rate this tutorial:
5 Stars 4 Stars 3 Stars 2 Stars 1 Stars
Comments on this tutorial
Read previous comments on this particular tutorial
how do i call it
How do I get it to show up on a page... do I put the code above in the custom tag folder and call it using <cf_SpanishDate = createODBCdate(NOW() = "mmmm eq. Enero")>
Posted by: Matt Crocker
Posted on: 06/30/2004 11:01 AM
You call it...
<cf_dateformates date = (a ODBC date) format = "(the format you want it to print out)">

eg.

<cf_dateformates date= #createODBCdate(now()# format = "dd de mmmm de yyyy">

print out:
1 de Julio de 2004

Posted by: Diego Benitez
Posted on: 07/01/2004 03:30 PM
PERENNIAL DATES
How do I type perennial dates in Spanish?
Posted by: JANITA
Posted on: 10/23/2007 04:33 PM
Post a new comment on this tutorial
post a new comment on this particular tutorial
Your Name:
Your Email:
Comment Title:
Comments:
Key Phrase:
 
Skyscrapper Banner Advertisement
ColdFusion Hosting by HostMySite

You are 1 of 636 active sessions! | Privacy | Company
Copyright © 2002 EasyCFM.Com, LLC. (Easy ColdFusion Tutorials) All Rights Reserved
All other trademarks and copyrights are the property of their respective holders.
ColdFusion Hosting ColdFusion Hosting
ADD TO:
Blink
Del.icio.us
Digg
Furl
Google
Simpy
Spurl
Y! MyWeb