Add instant record functionality - needs fine-tuning but at least works for now
authorStephan Reichholf <sreichholf@users.schwerkraft.elitedvb.net>
Sat, 7 Mar 2009 11:09:31 +0000 (11:09 +0000)
committerStephan Reichholf <sreichholf@users.schwerkraft.elitedvb.net>
Sat, 7 Mar 2009 11:09:31 +0000 (11:09 +0000)
webinterface/src/web-data/img/record.png [new file with mode: 0644]
webinterface/src/web-data/timer.js
webinterface/src/web-data/tools.js
webinterface/src/web-data/tpl/default/index.html

diff --git a/webinterface/src/web-data/img/record.png b/webinterface/src/web-data/img/record.png
new file mode 100644 (file)
index 0000000..9a8b187
Binary files /dev/null and b/webinterface/src/web-data/img/record.png differ
index e0ae914..766212e 100644 (file)
@@ -719,6 +719,14 @@ function sendToggleTimerDisable(justplay,begin,end,repeated,channel,name,descrip
         "&deleteOldOnSave=1", incomingTimerAddResult, false);
 }
 
+function recordNowDecision(recordNowCurrent) {
+       var recordNow = "infinite";
+       if(recordNowCurrent == true){
+               recordNow = "current" 
+       }
+       doRequest(url_recordnow+"?recordnow="+recordNow, incomingTimerAddResult, false);
+}
+
 function incomingWriteTimerListNow(request){
        var result = new SimpleXMLResult(getXML(request));
        notify(result.getStateText(), result.getState());
index 4a5fd67..b616c07 100644 (file)
@@ -724,6 +724,19 @@ function getBouquetEpg(){
        loadServiceEPGNowNext(currentBouquet);
        loadServiceEPGNowNext(currentBouquet, true);
 }
+
+
+function recordNowPopup(){
+       var result = confirm(   "OK: Record current event\n" +
+                                                       "Cancel: Start infinite recording"
+       )
+       
+       if( result === true || result === false){
+               recordNowDecision(result);
+       }
+}
+
+
 //+++++++++++++++++++++++++++++++++++++++++++++++++++++
 //+++++++++++++++++++++++++++++++++++++++++++++++++++++
 //++++ volume functions                            ++++
@@ -1189,68 +1202,60 @@ if( typeof Array.prototype.splice==='undefined' ) {
        };
 }
 
-//Recording
-function incomingRecordingPushed(request) {
-       if(request.readyState == 4){
-               var timers = new TimerList(getXML(request)).getArray();
-               debug("[incomingRecordingPushed] Got " + timers.length + " timers");
-               
-               var aftereventReadable = ['Nothing', 'Standby', 'Deepstandby/Shutdown', 'Auto'];
-               var justplayReadable = ['record', 'zap'];
-               var OnOff = ['on', 'off'];
-               
-               var namespace = [];
-               
-               for ( var i = 0; i <timers.length; i++){
-                       var timer = timers[i];
-
-                       if(ownLazyNumber(timer.getDontSave()) == 1) {
-                               var beginDate = new Date(Number(timer.getTimeBegin())*1000);
-                               var endDate = new Date(Number(timer.getTimeEnd())*1000);
-                               namespace[i] = {
-                               'servicereference': timer.getServiceReference(),
-                               'servicename': timer.getServiceName() ,
-                               'title': timer.getName(), 
-                               'description': timer.getDescription(), 
-                               'descriptionextended': timer.getDescriptionExtended(), 
-                               'begin': timer.getTimeBegin(),
-                               'beginDate': beginDate.toLocaleString(),
-                               'end': timer.getTimeEnd(),
-                               'endDate': endDate.toLocaleString(),
-                               'state': timer.getState(),
-                               'duration': Math.ceil((timer.getDuration()/60)),
-                               'dirname': timer.getDirname(),
-                               'tags': timer.getTags(),
-                               'repeated': timer.getRepeated(),
-                               'repeatedReadable': repeatedReadable(timer.getRepeated()),
-                               'justplay': timer.getJustplay(),
-                               'justplayReadable': justplayReadable[Number(timer.getJustplay())],
-                               'afterevent': timer.getAfterevent(),
-                               'aftereventReadable': aftereventReadable[Number(timer.getAfterevent())],
-                               'disabled': timer.getDisabled(),
-                               'onOff': OnOff[Number(timer.getDisabled())]
-                               };
-                       }
-               }
-               var data = { recordings : namespace };
-               openPopup("Record Now", 'tplTimerListItem', data, 900, 500, "Record now window");
-       }
-}
-
-
-function recordingPushed() {
-       doRequest(url_timerlist, incomingRecordingPushed, false);
-}
+////Recording
+//function incomingRecordingPushed(request) {
+//     if(request.readyState == 4){
+//             var timers = new TimerList(getXML(request)).getArray();
+//             debug("[incomingRecordingPushed] Got " + timers.length + " timers");
+//             
+//             var aftereventReadable = ['Nothing', 'Standby', 'Deepstandby/Shutdown', 'Auto'];
+//             var justplayReadable = ['record', 'zap'];
+//             var OnOff = ['on', 'off'];
+//             
+//             var namespace = [];
+//             
+//             for ( var i = 0; i <timers.length; i++){
+//                     var timer = timers[i];
+//
+//                     if(ownLazyNumber(timer.getDontSave()) == 1) {
+//                             var beginDate = new Date(Number(timer.getTimeBegin())*1000);
+//                             var endDate = new Date(Number(timer.getTimeEnd())*1000);
+//                             namespace[i] = {
+//                             'servicereference': timer.getServiceReference(),
+//                             'servicename': timer.getServiceName() ,
+//                             'title': timer.getName(), 
+//                             'description': timer.getDescription(), 
+//                             'descriptionextended': timer.getDescriptionExtended(), 
+//                             'begin': timer.getTimeBegin(),
+//                             'beginDate': beginDate.toLocaleString(),
+//                             'end': timer.getTimeEnd(),
+//                             'endDate': endDate.toLocaleString(),
+//                             'state': timer.getState(),
+//                             'duration': Math.ceil((timer.getDuration()/60)),
+//                             'dirname': timer.getDirname(),
+//                             'tags': timer.getTags(),
+//                             'repeated': timer.getRepeated(),
+//                             'repeatedReadable': repeatedReadable(timer.getRepeated()),
+//                             'justplay': timer.getJustplay(),
+//                             'justplayReadable': justplayReadable[Number(timer.getJustplay())],
+//                             'afterevent': timer.getAfterevent(),
+//                             'aftereventReadable': aftereventReadable[Number(timer.getAfterevent())],
+//                             'disabled': timer.getDisabled(),
+//                             'onOff': OnOff[Number(timer.getDisabled())]
+//                             };
+//                     }
+//             }
+//             var data = { recordings : namespace };
+//             openPopup("Record Now", 'tplTimerListItem', data, 900, 500, "Record now window");
+//     }
+//}
+//
+//
+//function recordingPushed() {
+//     doRequest(url_timerlist, incomingRecordingPushed, false);
+//}
 
 
-function recordingPushedDecision(recordNowNothing,recordNowUndefinitely,recordNowCurrent) {
-       var recordNow = recordNowNothing;
-       recordNow = (recordNow === "") ? recordNowUndefinitely: recordNow;
-       recordNow = (recordNow === "") ? recordNowCurrent: recordNow;
-       if(recordNow !== "nothing" && recordNow !== "") {
-               doRequest(url_recordnow+"?recordnow="+recordNow, incomingTimerAddResult, false);
-       }
-}
 
 function ifChecked(rObj) {
        if(rObj.checked) {
index 453e1c5..70cb559 100644 (file)
@@ -85,6 +85,9 @@
                                <div>
                                        <a href="#" onClick="openSignalPanel()">
                                                <img border="0" src="/web-data/img/signal.png" alt="Signal" title="Show Signal Panel">
+                                       </a><br>
+                                       <a href="#" onClick="recordNowPopup()">
+                                               <img border="0" src="/web-data/img/record.png" alt="R" title="Instant Record">
                                        </a>
                                </div>                  
                        </div>