diff options
author | M. Voerman <rekordc@gmail.com> | 2013-01-25 12:36:24 +0100 |
---|---|---|
committer | M. Voerman <rekordc@gmail.com> | 2013-01-25 12:36:24 +0100 |
commit | ec8a73c7431a9a09848f1d06ca7ccb8b8fc8bc0e (patch) | |
tree | ccd8e6fe89dc4607fc7e1d04d2c5c9e62c78c662 | |
parent | 7129985c3eb6d05afe7e1546e5071641496b0760 (diff) | |
download | vdr-vipclient-ec8a73c7431a9a09848f1d06ca7ccb8b8fc8bc0e.tar.gz vdr-vipclient-ec8a73c7431a9a09848f1d06ca7ccb8b8fc8bc0e.tar.bz2 |
Resume added
-rw-r--r-- | History | 3 | ||||
-rw-r--r-- | index.html | 43 | ||||
-rw-r--r-- | settings.js | 29 |
3 files changed, 56 insertions, 19 deletions
@@ -1,4 +1,5 @@ -0.14 +0.14 Resume add. (Uses "VDR on SmartTV" plugin) + 0.13 Bug fixes. Cosmetic fixes. @@ -217,7 +217,7 @@ function onDataAvailableEvent(event) { function updateStreamInfo() { -alert("What can this stream do : " + mediaPlayer.getCapabilities()); +//alert("What can this stream do : " + mediaPlayer.getCapabilities()); var mpCap = ""; if (mediaPlayer.getCapabilities() & 1) { // bit is set @@ -247,7 +247,7 @@ if (mediaPlayer.getCapabilities() & 64) { // bit is set mpCap = mpCap + "CAPABILITY_TIMESHIFT "; } - alert (mpCap); +// alert (mpCap); var streamInfo = mediaPlayer.getStreamInfo(); var cList = streamInfo.availableComponents; @@ -1848,7 +1848,7 @@ try { // MPD Section function MPD(ev) { - alert("Media player state changed: state=" + ev.state + ", reason=" + ev.reason + ", code=" + ev.code); +// alert("Media player state changed: state=" + ev.state + ", reason=" + ev.reason + ", code=" + ev.code); if ( ev.state == 6 && ev.reason == "HostUnreachable" ) { showDisplay("ERRR", false, 100, 0 ); @@ -1972,7 +1972,7 @@ if (DelisOK) { case "Accept": case "MediaPlayPause": mediaList.style.opacity = 0; - setTimeout("GetMarks(); position = 0; playRec(recLink[currMed]);",100); + setTimeout("GetMarks(); getResume(); playRec(recLink[currMed]+ '?time=' + position);",100); break; case "Red": DelRec(); @@ -2136,6 +2136,7 @@ if (DelisOK) { } break; case "MediaStop": + setResume(); osdepginfo.style.opacity = 0; isFullscreen = 0; play(channels[currChan]); isFullscreen = 1; if (isRecording == 1) { @@ -2242,6 +2243,7 @@ try { recDura[i] = (x[i].getElementsByTagName("duration")[0].childNodes[0].nodeValue); recStrt[i] = (x[i].getElementsByTagName("start")[0].childNodes[0].nodeValue); rec_New[i] = (x[i].getElementsByTagName("isnew")[0].childNodes[0].nodeValue); + recGUID[i] = (x[i].getElementsByTagName("guid")[0].childNodes[0].nodeValue); } MakeRecList(); getRecOK = 1; @@ -2265,13 +2267,40 @@ try { { var y = x[i].childNodes[0].nodeValue.split(":"); recMark[i] = Number(y[0]*3600) + Number(y[1]*60) + Number(y[2]); - alert(recMark[i]); +// alert(recMark[i]); } } catch(e) { alert("Getting Marks problem: " + e); } } +function setResume() { +try { + var xmlhttp = new XMLHttpRequest(); + xmlhttp.open("POST", recServ + "/setResume.xml?guid=" + recGUID[currMed] + "&resume=" + position, false); + xmlhttp.send(); + } catch(e) { + alert("Setting Resume problem: " + e); + } + +} + +function getResume() { +position = 0; +try { + var xmlhttp = new XMLHttpRequest(); + xmlhttp.open("GET", recServ + "/getResume.xml?guid=" + recGUID[currMed], false); + xmlhttp.send(); + xmlDoc=xmlhttp.responseXML; + position = Number(xmlDoc.getElementsByTagName("resume")[0].childNodes[0].nodeValue); + } catch(e) { + alert("Getting Resume problem: " + e); + } + +} + + + function DelRec() { try { @@ -2432,7 +2461,7 @@ function recordStop() { } function onStateChanged(ev) { - alert("Media player state changed: state=" + ev.state + ", reason=" + ev.reason + ", code=" + ev.code); +// alert("Media player state changed: state=" + ev.state + ", reason=" + ev.reason + ", code=" + ev.code); if ( ( ev.state == 6 && ev.reason == "HostUnreachable" ) || ( ev.state == 2 && ev.reason == "PositionEnd" )) { BackToTV(); @@ -2449,7 +2478,7 @@ function BackToTV() { function onRecorderStateChanged(event) { - alert("EVENT! " + event.reason + " *** " + event.state); +// alert("EVENT! " + event.reason + " *** " + event.state); RECicon = "\uE003"; // 0xE003 0x83 Fixed width blank switch (event.state) { case mediaRecorder.STATE_IDLE: diff --git a/settings.js b/settings.js index 477f3b3..2657fc9 100644 --- a/settings.js +++ b/settings.js @@ -9,6 +9,15 @@ var Xfactor = 1280 / 720; var Yfactor = 720 / 576; +var server_ip = "http://192.168.3.15"; +var StartVolume = 15; // Volume on (re)start of the portal. +var currChan = 10; // default channel + +// +// +// +// +// var showClock = 0; // 0 = no, 1 = yes var SwitchGuide = 0; // 0 = no, 1 = yes @@ -27,15 +36,12 @@ NN[3] = "TIMER"; NN[4] = "-----"; var ShowProtectedChannels = 1; // Default don't show protected channels. -var StartVolume = 30; // Volume on (re)start of the portal. var VolumeStep = 5; // Steps the volume buttons make -var currChan = 10; // default channel var ChanGroup = 0; // default TV group var minChan = new Array(); var maxChan = new Array(); var defChan = new Array(); var baseChn = new Array(); var protChn = new Array(); var ServerAdres = new Array(); // Define settings for Channels. // Server for Recordings -var server_ip = "http://192.168.3.15"; var recServ = server_ip + ":8000"; var RestFulAPI = server_ip + ":8002"; var MPDAddress = server_ip + ":8888"; @@ -210,14 +216,15 @@ var audiotype = 0; // used for selecting "cfg.media.audio.typepriority","normal, var subsmode = 0; // "cfg.media.subtitling.modepriority","Teletext,DVB" var substype = 0; // "cfg.media.subtitling.typepriority","normal,hearing_impaired" -var recTitl = new Array(); -var recLink = new Array(); -var recDesc = new Array(); -var recDura = new Array(); -var recStrt = new Array(); -var recList = new Array(); -var recMark = new Array(); -var rec_New = new Array(); +var recTitl = new Array(); // title of recording +var recLink = new Array(); // link to get recording +var recDesc = new Array(); // description of the recording +var recDura = new Array(); // duration of the recording +var recStrt = new Array(); // date of recording +var recList = new Array(); // used to verify if the right recording is going to be deleted +var recMark = new Array(); // marks made in the recording, eg by Noad, Markad +var rec_New = new Array(); // Flag if recording is new (unseen) +var recGUID = new Array(); // GUID of recording var posMark = 0; var recMap = 0; |