...
Element | Control | Functional Description | Technical Rules |
---|---|---|---|
Name field | text input | User stores and edits Forecast name | Defaults to "MIT-All Forecast", key is COMMON (which is MITALL) |
Show's actuals and commitments | checkbox | User clicks on it to show and hide existing commitments | Defaults to checked, should be placed closer to grid it controls |
Show/Hide Accordion | button | Shows and hides all commitments in GL block | Overrideable by the Show Actuals and Commitments checkbox (if user hides people block, clicks hide all, then clicks show all, people block is visible) |
Person name field | text input | User can search for person (autocomplete) including TBHs | After third keydown, set timeout for 300 miliseconds, if no further keydown, execute search call (wait until the user pauses). Make timeout length a setting, let us play with it, hide setting for January release and default to best guess. Show default if users complain. |
Appointment field | dropdown list (select) | Until you choose a person, the only thing in the Appointment field is "choose a person". If you choose a person, the appointment field gets filled with the one or more appointments they have. If they choose a TBH, the appointment is filled in by the choice. | Until appointment is chosen, other people fields to the right are hidden. Once appointment call to backend is made and speculation id is returned, other fields are then shown with default values from call. |
Start Date | text input with calendar widget | Normal calendar widget behavior (opens auto on focus of field, can be overridden by user) | Normal Calendar widget behavior |
End Date | text input with calendar widget | Normal calendar widget behavior | Normal Calendar widget behavior |
Allocation | text input | User enters number | Floating number rounded to nearest two decimals (percentage) |
Hours per week | text input | User enters number | Floating number rounded to nearest two decimals. |
Tuition | text input | User enters number for tuition | Floating number locked to two decimals (money). |
Comment | text area | User enters description. User can grow text box if wanted | Shrink text area to make inline row, let them expand it they want. |
Add Row | button | Adds new row of the same type below existing lines |
|
Save button | button |
|
|
...