| as yet unclassified |
| date
|
^ Date newDay: day monthNumber: month year: year
|
| date: aDate
|
day _ aDate dayOfMonth.
month _ aDate monthIndex.
year _ aDate year.
|
| dateIsValid
|
[self date] on: Error do: [:e | ^ false].
^ true
|
| days
|
^ 1 to: 31
|
| endYear
|
^ endYear
|
| endYear: anInteger
|
endYear _ anInteger
|
| initialize
|
startYear _ Date today year - 1.
endYear _ Date today year + 5.
self date: Date today.
|
| labelForDay: aNumber
|
^ aNumber
|
| labelForMonth: aNumber
|
^ Date nameOfMonth: aNumber
|
| labelForYear: aNumber
|
^ aNumber
|
| months
|
^ 1 to: 12
|
| renderContentOn: html
|
html selectFromList: self months selected: month callback: [:i | month _ i] labels: [:ea | self labelForMonth: ea].
html selectFromList: self days selected: day callback: [:i | day _ i] labels: [:ea | self labelForDay: ea].
html selectFromList: self yearRange selected: year callback: [:i | year _ i] labels: [:ea | self labelForYear: ea].
self dateIsValid ifFalse: [self renderValidationErrorOn: html].
|
| renderValidationErrorOn: html
|
html spanClass: 'error' with: 'invalid date'
|
| startYear
|
^ startYear
|
| startYear: anInteger
|
startYear _ anInteger
|
| yearRange
|
^ self startYear to: self endYear
|