GetLocaleDisplayName

Description

Gets a locale value and displays the name in a manner that is appropriate to a specific locale. By default, gets the current locale in the current locale’s language.

Returns

The localized display name of the locale, in the language of the specified locale.

Function syntax

GetLocaleDisplayName([locale, inLocale])

History

ColdFusion MX 7: Added this function.

Parameters

Parameter

Description

locale

The locale whose name you want. The default is the current ColdFusion locale, or if no ColdFusion locale has been set, the JVM locale.

inlocale

The locale in which to return the name. The default is the current ColdFusion locale, or if no ColdFusion locale has been set, the JVM locale.

Example

The following example expands on the GetLocale example to show the use of the GetLocaleDisplayName function to display locale names in the current locale and in other locales. It lets you select a locale from all supported locales, changes the ColdFusion locale to the selected locales, and displays the old and new locale names.

<html> 
<head> 
    <title>Displaying locales</title> 
</head> 
 
<body> 
<h3>Example: Changing and Displaying Locales</h3> 
<cfoutput> 
    <!--- For each new request, the locale gets reset to the JVM locale ---> 
    Initial locale's ColdFusion name: #GetLocale()#<br> 
    Initial locale's display name: #GetLocaleDisplayName()#<br> 
    <br> 
    <!--- Do this only if the form was submitted. ---> 
    <cfif IsDefined("form.mylocale")> 
        <b>Changing locale to #form.mylocale#</b><br> 
        <br> 
        <!--- Set the locale to the submitted value. 
            SetLocale returns the old ColdFusion locale name.---> 
        <cfset oldlocale=SetLocale("#form.mylocale#")> 
        <!--- Get the current locale's ColdFusion name. 
            It should have changed. ---> 
        <cfset newlocale=GetLocale()> 
        New locale's ColdFusion name: #newlocale#<br> 
        New locale's display name in current locale: #GetLocaleDisplayName()#<br> 
        New locale's display name in old locale: 
            #GetLocaleDisplayName(newlocale, oldlocale)#<br> 
        New locale's display name in en_US: 
            #GetLocaleDisplayName(newlocale, "en_US")#<br> 
        <br> 
        Old locale's display name in current locale: 
            #GetLocaleDisplayName(oldlocale)#<br> 
        Old locale's display name in en_US: 
            #GetLocaleDisplayName(oldlocale, "en_US")#<br> 
    </cfif> 
 
    <!--- Self-submitting form to select the new locale. ---> 
    <cfform> 
        <h3>Please select the new locale:</h3> 
        <cfselect name="mylocale"> 
            <!--- The server.coldfusion.supportedlocales variable is a  
                    list of all supported locale names. Use a list cfloop tag  
                    to create an HTML option tag for each name in the list. ---> 
            <cfloop index="i" list="#server.coldfusion.supportedlocales#"> 
            <!--- In the select box, we use the US English display names for  
                    the locales. You can change en_US to your prefered locale. ---> 
                <option value="#i#">#GetLocaleDisplayName(i, "en_US")#</option> 
            </cfloop> 
        </cfselect><br> 
        <br> 
        <cfinput type="submit" name="submitit" value="Change Locale"> 
    </cfform> 
</cfoutput> 
 
</body> 
</html>