
org.grails.scaffolding.registry.input.LocaleInputRenderer.groovy Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of fields Show documentation
Show all versions of fields Show documentation
Fields integration for Grails
The newest version!
package org.grails.scaffolding.registry.input
import org.grails.scaffolding.model.property.DomainProperty
import org.grails.scaffolding.registry.DomainInputRenderer
import groovy.transform.CompileStatic
/**
* The default renderer for rendering {@link Locale} properties
*
* @author James Kleeh
*/
@CompileStatic
class LocaleInputRenderer implements MapToSelectInputRenderer {
String getOptionValue(Locale locale) {
locale.country ? "${locale.language}, ${locale.country}, ${locale.displayName}" : "${locale.language}, ${locale.displayName}"
}
String getOptionKey(Locale locale) {
locale.country ? "${locale.language}_${locale.country}" : locale.language
}
Map getOptions() {
Locale.availableLocales.collectEntries {
if (it.country || it.language) {
[(getOptionKey(it)): getOptionValue(it)]
} else {
[:]
}
}
}
Locale getDefaultOption() {
Locale.default
}
@Override
boolean supports(DomainProperty property) {
property.type in Locale
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy