diff --git a/productMods/edit/forms/css/customForm.css b/productMods/edit/forms/css/customForm.css
index f9447cd6..3a3a4047 100644
--- a/productMods/edit/forms/css/customForm.css
+++ b/productMods/edit/forms/css/customForm.css
@@ -125,3 +125,14 @@ vertical-align:top;
#ie67DisableWrapper {
display: none;
}
+
+/**********
+dateTime
+**********/
+fieldset#dateTime {
+ margin-top: 0.5em;
+}
+
+fieldset#dateTime label {
+ display: inline;
+}
\ No newline at end of file
diff --git a/productMods/templates/freemarker/widgets/edit/DateTimeWithPrecision.ftl b/productMods/templates/freemarker/widgets/edit/DateTimeWithPrecision.ftl
index 67c195db..b754ee4d 100644
--- a/productMods/templates/freemarker/widgets/edit/DateTimeWithPrecision.ftl
+++ b/productMods/templates/freemarker/widgets/edit/DateTimeWithPrecision.ftl
@@ -61,63 +61,28 @@ parameters from within the original custom form -->
<#if specLevel gte 1>
<#-- Only text input field in the mix. We should have some validation to ensure it's a valid year (4 digits, integer, etc) -->
Year<#if reqLevel gte 1> * #if>
- required #if>/>
+ required #if>/>
#if>
<#if specLevel gte 2>
Month<#if reqLevel gte 2> * #if>
required #if>>
- selected="selected"#if>>month
- selected="selected"#if>>1
- selected="selected"#if>>2
- selected="selected"#if>>3
- selected="selected"#if>>4
- selected="selected"#if>>5
- selected="selected"#if>>6
- selected="selected"#if>>7
- selected="selected"#if>>8
- selected="selected"#if>>9
- selected="selected"#if>>10
- selected="selected"#if>>11
- selected="selected"#if>>12
+ selected="selected"#if>>month
+ <#assign numMonths = 12 />
+ <#list 1..numMonths as currentMonth>
+ selected="selected"#if>>${currentMonth}
+ #list>
#if>
<#if specLevel gte 3>
Day<#if reqLevel gte 3> * #if>
required #if>>
- selected="selected"#if>>day
- selected="selected"#if>>1
- selected="selected"#if>>2
- selected="selected"#if>>3
- selected="selected"#if>>4
- selected="selected"#if>>5
- selected="selected"#if>>6
- selected="selected"#if>>7
- selected="selected"#if>>8
- selected="selected"#if>>9
- selected="selected"#if>>10
- selected="selected"#if>>11
- selected="selected"#if>>12
- selected="selected"#if>>13
- selected="selected"#if>>14
- selected="selected"#if>>15
- selected="selected"#if>>16
- selected="selected"#if>>17
- selected="selected"#if>>18
- selected="selected"#if>>19
- selected="selected"#if>>20
- selected="selected"#if>>21
- selected="selected"#if>>22
- selected="selected"#if>>23
- selected="selected"#if>>24
- selected="selected"#if>>25
- selected="selected"#if>>26
- selected="selected"#if>>27
- selected="selected"#if>>28
- selected="selected"#if>>29
- selected="selected"#if>>30
- selected="selected"#if>>31
+ selected="selected"#if>>day
+ <#assign numDays = 31 />
+ <#list 1..numDays as currentDay>
+ selected="selected"#if>>${currentDay}
+ #list>
#if>
@@ -125,163 +90,45 @@ parameters from within the original custom form -->
<#-- We'll need to make this more flexible to support 24 hour display down the road. For now assuming 12h with am/pm -->
Hour<#if reqLevel gte 4> * #if>
required #if>>
- selected="selected"#if>>hour
- selected="selected"#if>>12am
- selected="selected"#if>>1am
- selected="selected"#if>>2am
- selected="selected"#if>>3am
- selected="selected"#if>>4am
- selected="selected"#if>>5am
- selected="selected"#if>>6am
- selected="selected"#if>>7am
- selected="selected"#if>>8am
- selected="selected"#if>>9am
- selected="selected"#if>>10am
- selected="selected"#if>>11am
- selected="selected"#if>>12pm
- selected="selected"#if>>1pm
- selected="selected"#if>>2pm
- selected="selected"#if>>3pm
- selected="selected"#if>>4pm
- selected="selected"#if>>5pm
- selected="selected"#if>>6pm
- selected="selected"#if>>7pm
- selected="selected"#if>>8pm
- selected="selected"#if>>9pm
- selected="selected"#if>>10pm
- selected="selected"#if>>11pm
+ selected="selected"#if>>hour
+ <#assign numHours = 23 />
+ <#list 0..numHours as currentHour>
+ <#if currentHour_index == 0>
+ <#assign displayHour = 12 />
+ <#elseif (currentHour > 12)>
+ <#assign displayHour = currentHour - 12 />
+ <#else>
+ <#assign displayHour = currentHour />
+ #if>
+ <#if (currentHour < 12)>
+ <#assign meridiem = "am" />
+ <#else>
+ <#assign meridiem = "pm" />
+ #if>
+ selected="selected"#if>>${displayHour + meridiem}
+ #list>
#if>
<#if specLevel gte 5>
Minutes<#if reqLevel gte 5> * #if>
required #if>>
- selected="selected"#if>>minutes
- selected="selected"#if>>1
- selected="selected"#if>>2
- selected="selected"#if>>3
- selected="selected"#if>>4
- selected="selected"#if>>5
- selected="selected"#if>>6
- selected="selected"#if>>7
- selected="selected"#if>>8
- selected="selected"#if>>9
- selected="selected"#if>>10
- selected="selected"#if>>11
- selected="selected"#if>>12
- selected="selected"#if>>13
- selected="selected"#if>>14
- selected="selected"#if>>15
- selected="selected"#if>>16
- selected="selected"#if>>17
- selected="selected"#if>>18
- selected="selected"#if>>19
- selected="selected"#if>>20
- selected="selected"#if>>21
- selected="selected"#if>>22
- selected="selected"#if>>23
- selected="selected"#if>>24
- selected="selected"#if>>25
- selected="selected"#if>>26
- selected="selected"#if>>27
- selected="selected"#if>>28
- selected="selected"#if>>29
- selected="selected"#if>>30
- selected="selected"#if>>31
- selected="selected"#if>>32
- selected="selected"#if>>33
- selected="selected"#if>>34
- selected="selected"#if>>35
- selected="selected"#if>>36
- selected="selected"#if>>37
- selected="selected"#if>>38
- selected="selected"#if>>39
- selected="selected"#if>>40
- selected="selected"#if>>41
- selected="selected"#if>>42
- selected="selected"#if>>43
- selected="selected"#if>>44
- selected="selected"#if>>45
- selected="selected"#if>>46
- selected="selected"#if>>47
- selected="selected"#if>>48
- selected="selected"#if>>49
- selected="selected"#if>>50
- selected="selected"#if>>51
- selected="selected"#if>>52
- selected="selected"#if>>53
- selected="selected"#if>>54
- selected="selected"#if>>55
- selected="selected"#if>>56
- selected="selected"#if>>57
- selected="selected"#if>>58
- selected="selected"#if>>59
+ selected="selected"#if>>minutes
+ <#assign numMinutes = 59 />
+ <#list 1..numMinutes as currentMinute>
+ selected="selected"#if>>${currentMinute}
+ #list>
#if>
<#if specLevel gte 6>
Seconds<#if reqLevel gte 6> * #if>
required #if>>
- selected="selected"#if>>seconds
- selected="selected"#if>>1
- selected="selected"#if>>2
- selected="selected"#if>>3
- selected="selected"#if>>4
- selected="selected"#if>>5
- selected="selected"#if>>6
- selected="selected"#if>>7
- selected="selected"#if>>8
- selected="selected"#if>>9
- selected="selected"#if>>10
- selected="selected"#if>>11
- selected="selected"#if>>12
- selected="selected"#if>>13
- selected="selected"#if>>14
- selected="selected"#if>>15
- selected="selected"#if>>16
- selected="selected"#if>>17
- selected="selected"#if>>18
- selected="selected"#if>>19
- selected="selected"#if>>20
- selected="selected"#if>>21
- selected="selected"#if>>22
- selected="selected"#if>>23
- selected="selected"#if>>24
- selected="selected"#if>>25
- selected="selected"#if>>26
- selected="selected"#if>>27
- selected="selected"#if>>28
- selected="selected"#if>>29
- selected="selected"#if>>30
- selected="selected"#if>>31
- selected="selected"#if>>32
- selected="selected"#if>>33
- selected="selected"#if>>34
- selected="selected"#if>>35
- selected="selected"#if>>36
- selected="selected"#if>>37
- selected="selected"#if>>38
- selected="selected"#if>>39
- selected="selected"#if>>40
- selected="selected"#if>>41
- selected="selected"#if>>42
- selected="selected"#if>>43
- selected="selected"#if>>44
- selected="selected"#if>>45
- selected="selected"#if>>46
- selected="selected"#if>>47
- selected="selected"#if>>48
- selected="selected"#if>>49
- selected="selected"#if>>50
- selected="selected"#if>>51
- selected="selected"#if>>52
- selected="selected"#if>>53
- selected="selected"#if>>54
- selected="selected"#if>>55
- selected="selected"#if>>56
- selected="selected"#if>>57
- selected="selected"#if>>58
- selected="selected"#if>>59
+ selected="selected"#if>>seconds
+ <#assign numMinutes = 59 />
+ <#list 1..numMinutes as currentSecond>
+ selected="selected"#if>>${currentSecond}
+ #list>
#if>