From 74fcb2bfcb7effbd2ba3975f70b2eabf5310f47e Mon Sep 17 00:00:00 2001 From: Max Matteo Staack Date: Sat, 4 May 2019 19:31:53 +0200 Subject: [PATCH] fix #614 --- public/assets/javascript/check_in.js | 22 +++++++++++++++++-- resources/views/ManageEvent/CheckIn.blade.php | 1 + 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/public/assets/javascript/check_in.js b/public/assets/javascript/check_in.js index 285053a0..2fe00c93 100644 --- a/public/assets/javascript/check_in.js +++ b/public/assets/javascript/check_in.js @@ -107,9 +107,27 @@ var checkinApp = new Vue({ } qrcode.callback = this.QrCheckin; - navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia; - navigator.getUserMedia({ + // FIX SAFARI CAMERA + if (navigator.mediaDevices === undefined) { + navigator.mediaDevices = {}; + } + + if (navigator.mediaDevices.getUserMedia === undefined) { + navigator.mediaDevices.getUserMedia = function(constraints) { + var getUserMedia = navigator.webkitGetUserMedia || navigator.mozGetUserMedia; + + if (!getUserMedia) { + return Promise.reject(new Error('getUserMedia is not implemented in this browser')); + } + + return new Promise(function(resolve, reject) { + getUserMedia.call(navigator, constraints, resolve, reject); + }); + } + } + + navigator.mediaDevices.getUserMedia({ video: { facingMode: 'environment' }, diff --git a/resources/views/ManageEvent/CheckIn.blade.php b/resources/views/ManageEvent/CheckIn.blade.php index e7b5b1b7..9ee72094 100644 --- a/resources/views/ManageEvent/CheckIn.blade.php +++ b/resources/views/ManageEvent/CheckIn.blade.php @@ -14,6 +14,7 @@ @include('Shared/Layouts/ViewJavascript') +