Skip to content

Commit

Permalink
submit datepicker time input
Browse files Browse the repository at this point in the history
  • Loading branch information
lauraschlimmer committed Nov 19, 2014
1 parent dc82a85 commit ecb6229
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 6 deletions.
20 changes: 15 additions & 5 deletions fnordmetric-webui/fnordmetric-webui-datepicker.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ if (FnordMetric.views === undefined) {
}

/* generate html for time input and handle input */
FnordMetric.util.timeInput = function(selectedTimestamp, elem) {
FnordMetric.util.timeInput = function(selectedTimestamp, elem, callback) {
var selectedMinutes =
FnordMetric.util.appendLeadingZero(
selectedTimestamp.getMinutes());
Expand Down Expand Up @@ -45,13 +45,14 @@ FnordMetric.util.timeInput = function(selectedTimestamp, elem) {

hour_input.addEventListener('focus', function(e) {
e.preventDefault();
FnordMetric.util.validatedTimeInput(this, "hour");
FnordMetric.util.validatedTimeInput(this, "hour", callback);
}, false);

minute_input.addEventListener('focus', function(e) {
e.preventDefault();
FnordMetric.util.validatedTimeInput(this, "minute");
FnordMetric.util.validatedTimeInput(this, "minute", callback);
}, false);

}

function getValues() {
Expand All @@ -67,7 +68,7 @@ FnordMetric.util.timeInput = function(selectedTimestamp, elem) {

return {
"render" : render,
"getValues" : getValues
"getValues" : getValues,
}
}

Expand Down Expand Up @@ -146,7 +147,15 @@ FnordMetric.util.DatePicker = function(elem, dp_input, viewport, callback) {
return name;
}


function onSelect(date, month, year) {
/* fallback for time inputs */
var date = (date == undefined) ?
selectedDate : date;
var month = (month == undefined)?
selectedMonth : month;
var year = (year == undefined) ?
selectedYear : year;
var inputs = timeInput.getValues();
var hours = inputs.hours;
var minutes = inputs.minutes;
Expand Down Expand Up @@ -297,7 +306,8 @@ FnordMetric.util.DatePicker = function(elem, dp_input, viewport, callback) {

dp_widget.innerHTML = "";
dp_widget.className += " active";
timeInput = FnordMetric.util.timeInput(selectedTimestamp, dp_widget);
timeInput = FnordMetric.util.timeInput(
selectedTimestamp, dp_widget, onSelect);
timeInput.render();
renderCalendar(currYear, currMonth);
}
Expand Down
6 changes: 5 additions & 1 deletion fnordmetric-webui/fnordmetric-webui-util.js
Original file line number Diff line number Diff line change
Expand Up @@ -559,10 +559,14 @@ FnordMetric.util.isNavKey = function(keycode) {
}


FnordMetric.util.validatedTimeInput = function (time_input, type) {
FnordMetric.util.validatedTimeInput = function (time_input, type, callback) {
var input = time_input.value;

time_input.addEventListener('keydown', function(e) {
if (e.keyCode == 13) {
callback();
return;
}
if (FnordMetric.util.isNumKey(e.keyCode)) {
var n = String.fromCharCode(e.keyCode);
input = time_input.value;
Expand Down

0 comments on commit ecb6229

Please sign in to comment.