From 80efed22b3c0d43d285ebade7eb99259da2071b5 Mon Sep 17 00:00:00 2001 From: Christian Franke Date: Wed, 19 Mar 2014 16:35:56 +0100 Subject: Reload images if mjpegplexer is broken --- cam_public/view.html | 1 + cam_public/view.js | 8 ++++++++ public/cam.html | 1 + public/js/cctv-control.js | 31 ++++++++++++++++++++++--------- 4 files changed, 32 insertions(+), 9 deletions(-) create mode 100644 cam_public/view.js diff --git a/cam_public/view.html b/cam_public/view.html index d6bc329..4b846ab 100644 --- a/cam_public/view.html +++ b/cam_public/view.html @@ -6,6 +6,7 @@ #cam { width: 100%; height: auto; min-height: 100%; min-width: 1024px; position: fixed; top: 0; left: 0; margin: 0; padding: 0 } body { padding: 0px; margin: 0px; } + diff --git a/cam_public/view.js b/cam_public/view.js new file mode 100644 index 0000000..1630d1b --- /dev/null +++ b/cam_public/view.js @@ -0,0 +1,8 @@ +function reloadSrc() { + var camImage = document.getElementById('cam'); + if (camImage) + camImage.setAttribute('src', camImage.getAttribute('src')); + window.setTimeout(reloadSrc, 5000); +} + +reloadSrc(); diff --git a/public/cam.html b/public/cam.html index 5ab2aaf..4149c77 100644 --- a/public/cam.html +++ b/public/cam.html @@ -8,6 +8,7 @@
+

23

diff --git a/public/js/cctv-control.js b/public/js/cctv-control.js index 8f8e777..8ac8b0c 100644 --- a/public/js/cctv-control.js +++ b/public/js/cctv-control.js @@ -12,9 +12,9 @@ // This Software is licensed under the GPL Version 3, 29 June 2007 var cam = 0; -var camHost = "192.168.1.20:8080"; -var controlHost = "192.168.1.20:8080"; -var submitHost = "192.168.1.20:8080"; +var camHost = "192.168.1.66:8080"; +var controlHost = "192.168.1.66:8080"; +var submitHost = "192.168.1.66:8080"; var formActive = 0; //crazy errors if boolean is used here... //create event which is triggered when DOM is ready @@ -30,9 +30,16 @@ function initReady(fn) { } } +function reloadSrc() { + var camImage = document.getElementById('camImage'); + camImage.setAttribute('src', camImage.getAttribute('src')); + window.setTimeout(reloadSrc, 5000); +} + //hide the form, and switch on camera function initViewer() { var display = document.getElementById('screen'); + var camImage = document.getElementById('camImage'); var tempCam = parseInt(localStorage.getItem('cam')); formActive = localStorage.getItem("formActive"); @@ -43,7 +50,8 @@ function initViewer() { //if form was displayed, when page was reloaded, display form if (formActive == 1) { displayCamNumber(); - display.innerHTML += ''; + camImage.setAttribute('src', + 'http://' + camHost + '/cam/' + cam + '/stream.mjpeg'); showForm(); } else { @@ -51,25 +59,30 @@ function initViewer() { document.getElementById('form').style.visibility = "hidden"; changeCam(); } + + reloadSrc(); } function displayCamNumber() { - var display = document.getElementById('screen'); - camDisplay = cam + 1; - display.innerHTML = '

' + camDisplay + '

'; + var camNumber = cam + 1; + var camDisplay = document.getElementsByClassName('camNumber')[0]; + + camDisplay.innerText = camNumber; } //change currently displayed camera to the one in cam variable function changeCam() { var display = document.getElementById('screen'); + var camImage = document.getElementById('camImage'); if (cam <= 7 && cam >= 0) { displayCamNumber(); - display.innerHTML += ''; + camImage.setAttribute('src', + 'http://' + camHost + '/cam/' + cam + '/stream.mjpeg'); localStorage.setItem("cam", cam); } else { - display.innerHTML = ''; + camImage.setAttribute('src', 'img/testbild.gif'); } } -- cgit v1.2.1