Lines 1-20
Link Here
|
|
|
1 |
var div_take_image = document.getElementById('take_patron_image'); |
2 |
var mediaConfig = { video: true }; |
3 |
var errBack = function( error ) { |
4 |
div_take_image.style.display = 'none'; |
5 |
if( error.name = "NotAllowedError" ){ |
6 |
alert("No permission to use camera"); |
7 |
} else { |
8 |
alert("Cannot load camera interface"); |
9 |
} |
10 |
}; |
11 |
|
1 |
function initializeCamera( camera_form ){ |
12 |
function initializeCamera( camera_form ){ |
2 |
// Grab elements, create settings, etc. |
13 |
// Grab elements, create settings, etc. |
3 |
console.log(camera_form); |
14 |
console.log(camera_form); |
4 |
var context = camera_form.find("#canvas")[0].getContext('2d'); |
15 |
var context = camera_form.find("#canvas")[0].getContext('2d'); |
5 |
var video = camera_form.find("#video")[0]; |
16 |
var video = camera_form.find("#video")[0]; |
6 |
var mediaConfig = { video: true }; |
|
|
7 |
var errBack = function( error ) { |
8 |
if( error.name = "NotAllowedError" ){ |
9 |
alert("No permission to use camera"); |
10 |
} else { |
11 |
alert("Cannot load camera interface"); |
12 |
} |
13 |
}; |
14 |
navigator.getMedia = ( navigator.getUserMedia || // use the proper vendor prefix |
15 |
navigator.webkitGetUserMedia || |
16 |
navigator.mozGetUserMedia || |
17 |
navigator.msGetUserMedia ); |
18 |
|
17 |
|
19 |
// Put video listeners into place |
18 |
// Put video listeners into place |
20 |
if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) { |
19 |
if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) { |
Lines 28-33
function initializeCamera( camera_form ){
Link Here
|
28 |
} |
27 |
} |
29 |
/* Legacy code below! */ |
28 |
/* Legacy code below! */ |
30 |
else { |
29 |
else { |
|
|
30 |
navigator.getMedia = ( navigator.getUserMedia || // use the proper vendor prefix |
31 |
navigator.webkitGetUserMedia || |
32 |
navigator.mozGetUserMedia || |
33 |
navigator.msGetUserMedia ); |
34 |
|
31 |
navigator.getMedia( |
35 |
navigator.getMedia( |
32 |
mediaConfig, |
36 |
mediaConfig, |
33 |
function(stream) { |
37 |
function(stream) { |
Lines 72-94
function initializeCamera( camera_form ){
Link Here
|
72 |
}); |
76 |
}); |
73 |
} |
77 |
} |
74 |
|
78 |
|
75 |
navigator.getMedia = ( navigator.getUserMedia || // use the proper vendor prefix |
79 |
// Detect webcam, and make 'Take' button available. |
76 |
navigator.webkitGetUserMedia || |
80 |
if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) { |
77 |
navigator.mozGetUserMedia || |
81 |
navigator.mediaDevices.getUserMedia(mediaConfig).then( |
78 |
navigator.msGetUserMedia ); |
82 |
function(stream) { |
|
|
83 |
div_take_image.style.display = 'block'; |
84 |
stream.getTracks().forEach(function(track) { |
85 |
if (track.readyState == 'live' && track.kind === 'video') { |
86 |
track.stop(); |
87 |
} |
88 |
}); |
89 |
}, |
90 |
errBack |
91 |
); |
92 |
} else { |
93 |
navigator.getMedia = ( navigator.getUserMedia || // use the proper vendor prefix |
94 |
navigator.webkitGetUserMedia || |
95 |
navigator.mozGetUserMedia || |
96 |
navigator.msGetUserMedia ); |
79 |
|
97 |
|
80 |
var div_take_image = document.getElementById('take_patron_image'); |
98 |
navigator.getMedia( |
81 |
navigator.getMedia({video: true}, function(stream) { |
99 |
mediaConfig, |
82 |
div_take_image.style.display = 'block'; |
100 |
function(stream) { |
83 |
stream.getTracks().forEach(function(track) { |
101 |
div_take_image.style.display = 'block'; |
84 |
if (track.readyState == 'live' && track.kind === 'video') { |
102 |
stream.getTracks().forEach(function(track) { |
85 |
track.stop(); |
103 |
if (track.readyState == 'live' && track.kind === 'video') { |
86 |
} |
104 |
track.stop(); |
87 |
}); |
105 |
} |
88 |
}, function() { |
106 |
}); |
89 |
div_take_image.style.display = 'none'; |
107 |
}, |
90 |
} |
108 |
function() { |
91 |
); |
109 |
div_take_image.style.display = 'none'; |
|
|
110 |
} |
111 |
); |
112 |
} |
92 |
|
113 |
|
93 |
|
114 |
|
94 |
$(document).ready(function(){ |
115 |
$(document).ready(function(){ |
95 |
- |
|
|