Commit ee8d28da by David Ormsbee

Fix webcam capture for Firefox

parent 256c112d
...@@ -40,7 +40,12 @@ ...@@ -40,7 +40,12 @@
.fail(function() { alert("error"); }); .fail(function() { alert("error"); });
} }
function initSnapshotHandler(name) { function initSnapshotHandler(names) {
var name = names.pop();
if (name == undefined) {
return;
}
var video = $('#' + name + '_video'); var video = $('#' + name + '_video');
var canvas = $('#' + name + '_canvas'); var canvas = $('#' + name + '_canvas');
var image = $('#' + name + "_image"); var image = $('#' + name + "_image");
...@@ -52,7 +57,7 @@ ...@@ -52,7 +57,7 @@
var ctx = canvas[0].getContext('2d'); var ctx = canvas[0].getContext('2d');
var localMediaStream = null; var localMediaStream = null;
function snapshot() { function snapshot(event) {
if (localMediaStream) { if (localMediaStream) {
ctx.drawImage(video[0], 0, 0); ctx.drawImage(video[0], 0, 0);
image[0].src = canvas[0].toDataURL('image/png'); image[0].src = canvas[0].toDataURL('image/png');
...@@ -73,11 +78,8 @@ ...@@ -73,11 +78,8 @@
nextButton.addClass('disabled'); nextButton.addClass('disabled');
captureButton.show(); captureButton.show();
// captureButton.removeClass('is-hidden');
resetButton.hide(); resetButton.hide();
// resetButton.addClass('is-hidden');
approveButton.hide(); approveButton.hide();
// approveButton.addClass('is-hidden');
return false; return false;
} }
...@@ -91,14 +93,8 @@ ...@@ -91,14 +93,8 @@
// Initialize state for this picture taker // Initialize state for this picture taker
captureButton.show(); captureButton.show();
//captureButton.removeClass('is-hidden');
resetButton.hide(); resetButton.hide();
//resetButton.addClass('is-hidden');
approveButton.hide(); approveButton.hide();
//approveButton.addClass('is-hidden');
nextButton.addClass('disabled'); nextButton.addClass('disabled');
// Connect event handlers... // Connect event handlers...
...@@ -110,36 +106,12 @@ ...@@ -110,36 +106,12 @@
navigator.getUserMedia({video: true}, function(stream) { navigator.getUserMedia({video: true}, function(stream) {
video[0].src = window.URL.createObjectURL(stream); video[0].src = window.URL.createObjectURL(stream);
localMediaStream = stream; localMediaStream = stream;
}, onVideoFail);
}
function initPhotoBlocks() { // We do this in a recursive call on success because Firefox seems to
// Photo wrapping // simply eat the request if you stack up two on top of each other before
/* $('.block-photo .control-redo').addClass('is-hidden'); // the user has a chance to approve the first one.
$('.block-photo .control-approve').addClass('is-hidden'); initSnapshotHandler(names);
$('.block-photo .m-btn-primary').addClass('disabled'); }, onVideoFail);
$( "#wrapper-facephoto .control-do" ).click(function(e) {
e.preventDefault();
$(this).toggleClass('is-hidden');
$('#wrapper-facephoto .control-redo').toggleClass('is-shown');
$('#wrapper-facephoto .control-approve').toggleClass('is-shown');
});
$( "#wrapper-facephoto .control-approve" ).click(function(e) {
e.preventDefault();
$(this).addClass('approved');
$('#wrapper-facephoto .m-btn-primary').removeClass('disabled');
});
$( "#wrapper-idphoto .control-do" ).click(function(e) {
e.preventDefault();
$(this).toggleClass('is-hidden');
$('#wrapper-idphoto .control-redo').toggleClass('is-shown');
$('#wrapper-idphoto .control-approve').toggleClass('is-shown');
});
$( "#wrapper-idphoto .control-approve" ).click(function(e) {
e.preventDefault();
$(this).addClass('approved');
$('#wrapper-idphoto .m-btn-primary').removeClass('disabled');
}); */
} }
$(document).ready(function() { $(document).ready(function() {
...@@ -153,10 +125,8 @@ ...@@ -153,10 +125,8 @@
$("#pay_button_frame").addClass('disabled'); $("#pay_button_frame").addClass('disabled');
initPhotoBlocks();
initVideoCapture(); initVideoCapture();
initSnapshotHandler("face"); initSnapshotHandler(["face", "photo_id"]);
initSnapshotHandler("photo_id");
}); });
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment