2 // store all objects here
6 // parsing values from xml-element
7 //debug('init EPGList'+xml);
9 this.xmlitems = xml.getElementsByTagName("e2eventlist").item(0).getElementsByTagName("e2event");
10 } catch (e) { debug("EPGList parsing Error");}
12 this.getArray = function(sortbytime){
13 debug("sort EPGList by time "+sortbytime);
14 if (sortbytime = true){
15 var sort1 = new Array();
16 for(var i=0;i<this.xmlitems.length;i++){
17 var xv = new EPGEvent(this.xmlitems.item(i));
18 sort1.push(new Array(xv.startTime,xv));
20 sort1.sort(this.sortFunction);
21 var sort2 = new Array();
22 for(var i=0;i<sort1.length;i++){
23 sort2.push(sort1[i][1]);
27 var listxy = new Array();
28 for (var i=0;i<this.xmlitems.length;i++){
29 var xv = new EPGEvent(this.xmlitems.item(i));
35 this.sortFunction = function(a,b){
41 //START class EPGEvent
42 function EPGEvent(xml){
43 // parsing values from xml-element
45 this.eventID = xml.getElementsByTagName('e2eventid').item(0).firstChild.data;
46 this.startTime = xml.getElementsByTagName('e2eventstart').item(0).firstChild.data;
47 this.duration = xml.getElementsByTagName('e2eventduration').item(0).firstChild.data;
48 this.title = xml.getElementsByTagName('e2eventtitle').item(0).firstChild.data;
49 this.serviceRef = xml.getElementsByTagName('e2eventservicereference').item(0).firstChild.data;
50 this.serviceName = xml.getElementsByTagName('e2eventservicename').item(0).firstChild.data;
51 this.fileName = xml.getElementsByTagName('e2filename').item(0).firstChild.data;
53 //debug("EPGEvent parsing Error");
56 this.description = xml.getElementsByTagName('e2eventdescription').item(0).firstChild.data;
57 } catch (e) { this.description= 'N/A'; }
60 this.descriptionE = xml.getElementsByTagName('e2eventdescriptionextended').item(0).firstChild.data;
61 } catch (e) { this.descriptionE = 'N/A'; }
63 this.getFilename = function ()
67 this.getEventId = function ()
71 this.getTimeStart = function ()
73 var date = new Date(parseInt(this.startTime)*1000);
76 this.getTimeStartString = function ()
78 var h = this.getTimeStart().getHours();
79 var m = this.getTimeStart().getMinutes();
85 this.getTimeDay = function ()
87 var Wochentag = new Array("So", "Mo", "Di", "Mi", "Do", "Fr", "Sa");
88 var wday = Wochentag[this.getTimeStart().getDay()];
89 var day = this.getTimeStart().getDate();
90 var month = this.getTimeStart().getMonth()+1;
91 var year = this.getTimeStart().getFullYear();
93 return wday+". "+day+"."+month+"."+year;
95 this.getTimeBegin = function(){
96 return this.getTimeStart().getTime()/1000
98 this.getTimeEnd = function ()
100 var date = new Date((parseInt(this.startTime)+parseInt(this.duration))*1000);
101 return date.getTime()/1000
103 this.getTimeEndString = function ()
105 var date = new Date((parseInt(this.startTime)+parseInt(this.duration))*1000);
106 var h = date.getHours();
107 var m = date.getMinutes();
113 this.getDuration = function ()
115 return new Date(parseInt(this.duration)*1000);
117 this.getTitle = function ()
121 this.getDescription = function ()
123 return this.description;
125 this.getDescriptionExtended = function ()
127 return this.descriptionE;
129 this.getServiceReference = function ()
131 return encodeURIComponent(this.serviceRef);
133 this.getServiceName = function ()
135 return this.serviceName.replace(" "," ");
140 //START class Service
141 function ServiceReference(xml){
142 // parsing values from xml-element
143 //debug('init ServiceReference'+xml);
145 this.servicereference = xml.getElementsByTagName('e2servicereference').item(0).firstChild.data;
146 this.servicename = xml.getElementsByTagName('e2servicename').item(0).firstChild.data;
148 //debug("Service parsing Error "+e);
151 this.getServiceReference = function(){
152 return encodeURIComponent(this.servicereference);
155 this.getServiceName = function(){
156 return this.servicename.replace('"', '"');
158 this.setServiceReference = function(toInsert){
159 this.servicereference = toInsert;
162 this.setServiceName = function(toInsert){
163 this.servicename = toInsert.replace('"', '"');
168 //START class ServiceList
169 function ServiceList(xml){
170 // parsing values from xml-element
171 //debug('init ServiceList'+xml);
173 this.xmlitems = xml.getElementsByTagName("e2servicelist").item(0).getElementsByTagName("e2service");
175 //debug("Service parsing Error");
177 this.getArray = function(){
178 var listxy = new Array();
179 for (var i=0;i<this.xmlitems.length;i++){
180 var xv = new ServiceReference(this.xmlitems.item(i));
186 //END class ServiceList
188 //START class MovieList
189 function MovieList(xml){
190 // parsing values from xml-element
191 debug('init MovieList'+xml);
193 this.xmlitems = xml.getElementsByTagName("e2movielist").item(0).getElementsByTagName("e2movie");
195 debug("MovieList parsing Error");
197 this.getArray = function(){
198 var listxy = new Array();
199 for(var i=0;i<this.xmlitems.length;i++){
200 //debug("parsing movie "+i+" of "+this.xmlitems.length);
201 var xv = new Movie(this.xmlitems.item(i));
207 //END class MovieList
211 // parsing values from xml-element
212 //debug('init Movie');
214 this.servicereference = xml.getElementsByTagName('e2servicereference').item(0).firstChild.data;
216 this.servicereference = "N/A";
219 this.servicename = xml.getElementsByTagName('e2servicename').item(0).firstChild.data;
221 this.servicename = "N/A";
224 this.title = xml.getElementsByTagName('e2title').item(0).firstChild.data;
229 this.descriptionextended = xml.getElementsByTagName('e2descriptionextended').item(0).firstChild.data;
231 this.descriptionextended = "N/A";
234 this.description = xml.getElementsByTagName('e2description').item(0).firstChild.data;
236 this.description = "N/A";
239 this.tags = xml.getElementsByTagName('e2tags').item(0).firstChild.data;
241 this.tags = "no tags"; // no whitespaces... tags will be splittet later
244 this.filename = xml.getElementsByTagName('e2filename').item(0).firstChild.data;
246 this.filename = "n/a";
248 this.getServiceReference = function(){
249 return encodeURIComponent(this.servicereference);
251 this.getServiceName = function(){
252 return this.servicename.replace('"', '"');
254 this.getTitle = function(){
257 this.getDescription = function(){
258 return this.description;
260 this.getDescriptionExtended = function(){
261 return this.descriptionextended;
263 this.getTags = function(){
264 return this.tags.split(" ");
266 this.getFilename = function(){
267 return encodeURIComponent(this.filename);
273 //START class TimerList
274 function TimerList(xml){
275 // parsing values from xml-element
276 debug('init TimerList'+xml);
278 this.xmlitems = xml.getElementsByTagName("e2timerlist").item(0).getElementsByTagName("e2timer");
280 debug("TimerList parsing Error");
282 this.getArray = function(){
283 var listxy = new Array();
284 for(var i=0;i<this.xmlitems.length;i++){
285 //debug("parsing timer "+i+" of "+this.xmlitems.length);
286 var xv = new Timer(this.xmlitems.item(i));
292 //END class TimerList
296 // parsing values from xml-element
297 //debug('init Timer');
299 this.servicereference = xml.getElementsByTagName('e2servicereference').item(0).firstChild.data;
301 this.servicereference = "N/A";
304 this.servicename = xml.getElementsByTagName('e2servicename').item(0).firstChild.data;
306 this.servicename = "N/A";
309 this.eventid = xml.getElementsByTagName('e2eit').item(0).firstChild.data;
311 this.eventid = "N/A";
314 this.name = xml.getElementsByTagName('e2name').item(0).firstChild.data;
319 this.description = xml.getElementsByTagName('e2description').item(0).firstChild.data;
321 this.description = "N/A";
324 this.descriptionextended = xml.getElementsByTagName('e2descriptionextended').item(0).firstChild.data;
326 this.descriptionextended = "N/A";
329 this.disabled = xml.getElementsByTagName('e2disabled').item(0).firstChild.data;
334 this.timebegin = xml.getElementsByTagName('e2timebegin').item(0).firstChild.data;
336 this.timebegin = "N/A";
339 this.timeend = xml.getElementsByTagName('e2timeend').item(0).firstChild.data;
341 this.timeend = "N/A";
344 this.duration = xml.getElementsByTagName('e2duration').item(0).firstChild.data;
349 this.startprepare = xml.getElementsByTagName('e2startprepare').item(0).firstChild.data;
351 this.startprepare = "N/A";
354 this.justplay = xml.getElementsByTagName('e2justplay').item(0).firstChild.data;
359 this.afterevent = xml.getElementsByTagName('e2afterevent').item(0).firstChild.data;
361 this.afterevent = "0";
364 this.logentries = xml.getElementsByTagName('e2logentries').item(0).firstChild.data;
366 this.logentries = "N/A";
369 this.tfilename = xml.getElementsByTagName('e2filename').item(0).firstChild.data;
371 this.tfilename = "N/A";
374 this.backoff = xml.getElementsByTagName('e2backoff').item(0).firstChild.data;
376 this.backoff = "N/A";
379 this.nextactivation = xml.getElementsByTagName('e2nextactivation').item(0).firstChild.data;
381 this.nextactivation = "N/A";
384 this.firsttryprepare = xml.getElementsByTagName('e2firsttryprepare').item(0).firstChild.data;
386 this.firsttryprepare = "N/A";
389 this.state = xml.getElementsByTagName('e2state').item(0).firstChild.data;
394 this.repeated = xml.getElementsByTagName('e2repeated').item(0).firstChild.data;
399 this.dontsave = xml.getElementsByTagName('e2dontsave').item(0).firstChild.data;
401 this.dontsave = "N/A";
404 this.cancled = xml.getElementsByTagName('e2cancled').item(0).firstChild.data;
406 this.cancled = "N/A";
409 this.getServiceReference = function(){
410 return encodeURIComponent(this.servicereference);
412 this.getServiceName = function(){
413 return this.servicename.replace('"', '"');
415 this.getEventID = function(){
418 this.getName = function(){
421 this.getDescription = function(){
422 return this.description;
424 this.getDescriptionExtended = function(){
425 return this.descriptionextended;
427 this.getDisabled = function(){
428 return this.disabled;
430 this.getTimeBegin = function(){
431 return this.timebegin;
433 this.getTimeEnd = function(){
436 this.getDuration = function(){
437 return parseInt(this.duration);
439 this.getStartPrepare = function(){
440 return this.startprepare;
442 this.getJustplay = function(){
443 return this.justplay;
445 this.getAfterevent = function(){
446 return this.afterevent;
448 this.getLogentries = function(){
449 return this.logentries;
451 this.getFilename = function(){
452 return this.tfilename;
454 this.getBackoff = function(){
457 this.getNextActivation = function(){
458 return this.nextactivation;
460 this.getFirsttryprepare = function(){
461 return this.firsttryprepare;
463 this.getState = function(){
466 this.getRepeated = function(){
467 return this.repeated;
469 this.getDontSave = function(){
470 return this.dontsave;
472 this.isCancled = function(){
476 // START SimpleXMLResult ehemals TimerAddResult
477 function SimpleXMLResult(xml){
478 // parsing values from xml-element
479 debug('init SimpleXMLResult'+xml);
481 this.xmlitems = xml.getElementsByTagName("e2simplexmlresult").item(0);
483 debug("SimpleXMLResult parsing e2simplexmlresult"+e);
486 this.state = this.xmlitems.getElementsByTagName("e2state").item(0).firstChild.data;
488 debug("SimpleXMLResult parsing e2state"+e);
491 this.statetext = this.xmlitems.getElementsByTagName("e2statetext").item(0).firstChild.data;
493 debug("SimpleXMLResult parsing e2statetext"+e);
496 this.getState = function(){
497 if(this.state == 'True'){
503 this.getStateText = function(){
504 return this.statetext;
507 // END SimpleXMLResult
509 //START class Settings
510 function Settings(xml){
511 // parsing values from xml-element
512 //debug('init ServiceList'+xml);
514 this.xmlitems = xml.getElementsByTagName("e2settings").item(0).getElementsByTagName("e2setting");
515 debug(this.xmlitems);
517 //debug("Service parsing Error");
519 this.getArray = function(){
520 var listxy = new Array();
521 for (var i=0;i<this.xmlitems.length;i++){
522 var xv = new Setting(this.xmlitems.item(i));
530 //START class Setting
531 function Setting(xml){
532 // parsing values from xml-element
533 //debug('init ServiceReference'+xml);
535 this.settingvalue = xml.getElementsByTagName('e2settingvalue').item(0).firstChild.data;
536 this.settingname = xml.getElementsByTagName('e2settingname').item(0).firstChild.data;
539 //debug("Service parsing Error "+e);
542 this.getSettingValue = function(){
543 return this.settingvalue;
546 this.getSettingName = function(){
547 return this.settingname;