inserted parentControl-functions into streaming, timer-edits and others
[enigma2-plugins.git] / webinterface / src / web-data / objects.js
1 // $Header$
2 // store all objects here
3
4 //START class EPGList
5 function EPGList(xml){
6         // parsing values from xml-element
7         //debug('init EPGList'+xml);
8         try{
9                 this.xmlitems = xml.getElementsByTagName("e2eventlist").item(0).getElementsByTagName("e2event");
10         } catch (e) { debug("EPGList parsing Error");}
11         
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));
19                         }
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]);
24                         }
25                         return sort2;
26                 }else{
27                         var listxy = new Array();
28                         for (var i=0;i<this.xmlitems.length;i++){
29                                 var xv = new EPGEvent(this.xmlitems.item(i));
30                                 listxy.push(xv);                        
31                         }
32                         return listxy;
33                 }
34         }
35         this.sortFunction = function(a,b){
36           return a[0] - b[0];
37         }
38 }
39 //END class EPGList
40
41 //START class EPGEvent
42 function EPGEvent(xml){ 
43         // parsing values from xml-element
44         try{
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;
52         } catch (e) {
53                 //debug("EPGEvent parsing Error");
54         }       
55         try{
56                 this.description = xml.getElementsByTagName('e2eventdescription').item(0).firstChild.data;
57         } catch (e) {   this.description= 'N/A';        }
58         
59         try{
60                 this.descriptionE = xml.getElementsByTagName('e2eventdescriptionextended').item(0).firstChild.data;
61         } catch (e) {   this.descriptionE = 'N/A';      }
62
63         this.getFilename = function ()
64         {
65                 return this.fileName;
66         }
67         this.getEventId = function ()
68         {
69                 return this.eventID;
70         }
71         this.getTimeStart = function ()
72         {
73                 var date = new Date(parseInt(this.startTime)*1000);
74                 return date;
75         }
76         this.getTimeStartString = function ()
77         {
78                 var h = this.getTimeStart().getHours();
79                 var m = this.getTimeStart().getMinutes();
80                 if (m < 10){
81                         m="0"+m;
82                 }
83                 return h+":"+m;
84         }
85         this.getTimeDay = function ()
86         {
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();
92                 
93                 return wday+".&nbsp;"+day+"."+month+"."+year;
94         }
95         this.getTimeBegin = function(){
96                 return this.getTimeStart().getTime()/1000
97         }
98         this.getTimeEnd = function ()
99         {
100                 var date = new Date((parseInt(this.startTime)+parseInt(this.duration))*1000);
101                 return date.getTime()/1000
102         }
103         this.getTimeEndString = function ()
104         {
105                 var date = new Date((parseInt(this.startTime)+parseInt(this.duration))*1000);
106                 var h = date.getHours();
107                 var m = date.getMinutes();
108                 if (m < 10){
109                         m="0"+m;
110                 }
111                 return h+":"+m;
112         }
113         this.getDuration = function ()
114         {
115                 return  new Date(parseInt(this.duration)*1000);
116         }
117         this.getTitle = function ()
118         {
119                 return this.title;
120         }
121         this.getDescription = function ()
122         {
123                 return this.description;
124         }
125         this.getDescriptionExtended = function ()
126         {
127                 return this.descriptionE;
128         }
129         this.getServiceReference = function ()
130         {
131                 return encodeURIComponent(this.serviceRef);
132         }
133         this.getServiceName = function ()
134         {
135                 return this.serviceName.replace(" ","&nbsp;");
136         }
137 }
138 //END class EPGEvent
139
140 //START class Service
141 function ServiceReference(xml){ 
142         // parsing values from xml-element
143         //debug('init ServiceReference'+xml);
144         try{
145                 this.servicereference = xml.getElementsByTagName('e2servicereference').item(0).firstChild.data;
146                 this.servicename = xml.getElementsByTagName('e2servicename').item(0).firstChild.data;
147         } catch (e) {
148                 //debug("Service parsing Error "+e);
149         }
150         
151         this.getServiceReference = function(){
152                 return encodeURIComponent(this.servicereference);
153         }
154         this.getClearServiceReference = function(){
155                 return this.servicereference;
156         }
157                 
158         this.getServiceName = function(){
159                 return this.servicename.replace('&quot;', '"');
160         }
161         this.setServiceReference = function(toInsert){
162                 this.servicereference = toInsert;
163         }
164                 
165         this.setServiceName = function(toInsert){
166                 this.servicename = toInsert.replace('&quot;', '"');
167         }
168 }       
169 //END class Service
170
171 //START class ServiceList
172 function ServiceList(xml){
173         // parsing values from xml-element
174         //debug('init ServiceList'+xml);
175         try{
176                 this.xmlitems = xml.getElementsByTagName("e2servicelist").item(0).getElementsByTagName("e2service");
177         } catch (e) {
178                 //debug("Service parsing Error");
179         }
180         this.getArray = function(){
181                 var listxy = new Array();
182                 try{
183                         for (var i=0;i<this.xmlitems.length;i++){
184                                 var xv = new ServiceReference(this.xmlitems.item(i));
185                                 listxy.push(xv);
186                         }                       
187                 }catch (e){}
188                 
189                 return listxy;
190         }
191 }
192 //END class ServiceList
193
194 //START class MovieList
195 function MovieList(xml){
196         // parsing values from xml-element
197         debug('init MovieList'+xml);
198         try{
199                 this.xmlitems = xml.getElementsByTagName("e2movielist").item(0).getElementsByTagName("e2movie");
200         } catch (e) {
201                 debug("MovieList parsing Error");
202         }
203         this.getArray = function(){
204                 var listxy = new Array();
205                 for(var i=0;i<this.xmlitems.length;i++){
206                         //debug("parsing movie "+i+" of "+this.xmlitems.length);
207                         var xv = new Movie(this.xmlitems.item(i));
208                         listxy.push(xv);                        
209                 }
210                 return listxy;
211         }
212 }
213 //END class MovieList
214
215 //START class Movie
216 function Movie(xml){    
217         // parsing values from xml-element
218         //debug('init Movie');
219         try{
220                 this.servicereference = xml.getElementsByTagName('e2servicereference').item(0).firstChild.data;
221         } catch (e) {
222                 this.servicereference = "N/A";
223         }
224         try{
225                 this.servicename = xml.getElementsByTagName('e2servicename').item(0).firstChild.data;
226         } catch (e) {
227                 this.servicename = "N/A";
228         }
229         try{
230                 this.title = xml.getElementsByTagName('e2title').item(0).firstChild.data;
231         } catch (e) {
232                 this.title = "N/A";
233         }
234         try{
235                 this.descriptionextended = xml.getElementsByTagName('e2descriptionextended').item(0).firstChild.data;
236         } catch (e) {
237                 this.descriptionextended = "N/A";
238         }
239         try{
240                 this.description = xml.getElementsByTagName('e2description').item(0).firstChild.data;
241         } catch (e) {
242                 this.description = "N/A";
243         }
244         try{
245                 this.tags = xml.getElementsByTagName('e2tags').item(0).firstChild.data;
246         } catch (e) {
247                 this.tags = "no&nbsp;tags"; // no whitespaces... tags will be splittet later
248         }
249         try{
250                 this.filename = xml.getElementsByTagName('e2filename').item(0).firstChild.data;
251         } catch (e) {
252                 this.filename = "n/a";
253         }
254         try{
255                 this.filesize = xml.getElementsByTagName('e2filesize').item(0).firstChild.data;
256         } catch (e) {
257                 this.filesize = 0;
258         }
259         try{
260                 this.startTime = xml.getElementsByTagName('e2time').item(0).firstChild.data;
261         } catch (e) {
262                 this.startTime = "0";
263         }
264         try{
265                 this.length = xml.getElementsByTagName('e2length').item(0).firstChild.data;
266         } catch (e) {
267                 this.length = "0";
268         }
269         
270                 
271         
272
273         this.getLength = function ()
274         {
275                 return this.length;
276         }
277         this.getTimeStart = function ()
278         {
279                 var date = new Date(parseInt(this.startTime)*1000);
280                 return date;
281         }
282         this.getTimeStartString = function ()
283         {
284                 var h = this.getTimeStart().getHours();
285                 var m = this.getTimeStart().getMinutes();
286                 if (m < 10){
287                         m="0"+m;
288                 }
289                 return h+":"+m;
290         }
291         this.getTimeDay = function ()
292         {
293                 var Wochentag = new Array("So", "Mo", "Di", "Mi", "Do", "Fr", "Sa");
294                 var wday = Wochentag[this.getTimeStart().getDay()];
295                 var day = this.getTimeStart().getDate();
296                 var month = this.getTimeStart().getMonth()+1;
297                 var year = this.getTimeStart().getFullYear();
298                 
299                 return wday+".&nbsp;"+day+"."+month+"."+year;
300         }
301
302         this.getServiceReference = function(){
303                 return encodeURIComponent(this.servicereference);
304         }
305         this.getServiceName = function(){
306                 return this.servicename.replace('&quot;', '"');
307         }       
308         this.getTitle = function(){
309                 return this.title;
310         }       
311         this.getDescription = function(){
312                 return this.description;
313         }       
314         this.getDescriptionExtended = function(){
315                 return this.descriptionextended;
316         }       
317         this.getTags = function(){              
318                 return this.tags.split(" ");
319         }       
320         this.getFilename = function(){          
321                 return encodeURIComponent(this.filename);
322                 
323         }       
324         this.getFilesizeMB = function(){                
325                 return Math.round((parseInt(this.filesize)/1024)/1024)+"MB";
326                 
327         }       
328 }       
329 //END class Movie
330
331 //START class TimerList
332 function TimerList(xml){
333         // parsing values from xml-element
334         try{
335                 this.xmlitems = xml.getElementsByTagName("e2timerlist").item(0).getElementsByTagName("e2timer");
336         } catch (e) {
337                 debug("TimerList parsing Error");
338         }
339         this.getArray = function(){
340                 var listxy = new Array();
341                 for(var i=0;i<this.xmlitems.length;i++){
342                         //debug("parsing timer "+i+" of "+this.xmlitems.length);
343                         var xv = new Timer(this.xmlitems.item(i));
344                         listxy.push(xv);                        
345                 }
346                 return listxy;
347         }
348 }
349 //END class TimerList
350
351 //START class Timer
352 function Timer(xml){    
353         // parsing values from xml-element
354         //debug('init Timer');
355         try{
356                 this.servicereference = xml.getElementsByTagName('e2servicereference').item(0).firstChild.data;
357         } catch (e) {
358                 this.servicereference = "N/A";
359         }
360         try{
361                 this.servicename = xml.getElementsByTagName('e2servicename').item(0).firstChild.data;
362         } catch (e) {
363                 this.servicename = "N/A";
364         }
365         try{
366                 this.eventid = xml.getElementsByTagName('e2eit').item(0).firstChild.data;
367         } catch (e) {
368                 this.eventid = "N/A";
369         }
370         try{
371                 this.name = xml.getElementsByTagName('e2name').item(0).firstChild.data;
372         } catch (e) {
373                 this.name = "N/A";
374         }
375         try{
376                 this.description = xml.getElementsByTagName('e2description').item(0).firstChild.data;
377         } catch (e) {
378                 this.description = "N/A";
379         }
380         try{
381                 this.descriptionextended = xml.getElementsByTagName('e2descriptionextended').item(0).firstChild.data;
382         } catch (e) {
383                 this.descriptionextended = "N/A";
384         }
385         try{
386                 this.disabled = xml.getElementsByTagName('e2disabled').item(0).firstChild.data;
387         } catch (e) {
388                 this.disabled = "0";
389         }
390         try{
391                 this.timebegin = xml.getElementsByTagName('e2timebegin').item(0).firstChild.data;
392         } catch (e) {
393                 this.timebegin = "N/A";
394         }
395         try{
396                 this.timeend = xml.getElementsByTagName('e2timeend').item(0).firstChild.data;
397         } catch (e) {
398                 this.timeend = "N/A";
399         }
400         try{
401                 this.duration = xml.getElementsByTagName('e2duration').item(0).firstChild.data;
402         } catch (e) {           
403                 this.duration = "0";
404         }
405         try{
406                 this.startprepare = xml.getElementsByTagName('e2startprepare').item(0).firstChild.data;
407         } catch (e) {
408                 this.startprepare = "N/A";
409         }
410         try{
411                 this.justplay = xml.getElementsByTagName('e2justplay').item(0).firstChild.data;
412         } catch (e) {
413                 this.justplay = "";
414         }
415         try{
416                 this.afterevent = xml.getElementsByTagName('e2afterevent').item(0).firstChild.data;
417         } catch (e) {
418                 this.afterevent = "0";
419         }
420         try{
421                 this.logentries = xml.getElementsByTagName('e2logentries').item(0).firstChild.data;
422         } catch (e) {
423                 this.logentries = "N/A";
424         }
425         try{
426                 this.tfilename = xml.getElementsByTagName('e2filename').item(0).firstChild.data;
427         } catch (e) {
428                 this.tfilename = "N/A";
429         }
430         try{
431                 this.backoff = xml.getElementsByTagName('e2backoff').item(0).firstChild.data;
432         } catch (e) {
433                 this.backoff = "N/A";
434         }
435         try{
436                 this.nextactivation = xml.getElementsByTagName('e2nextactivation').item(0).firstChild.data;
437         } catch (e) {
438                 this.nextactivation = "N/A";
439         }
440         try{
441                 this.firsttryprepare = xml.getElementsByTagName('e2firsttryprepare').item(0).firstChild.data;
442         } catch (e) {
443                 this.firsttryprepare = "N/A";
444         }
445         try{
446                 this.state = xml.getElementsByTagName('e2state').item(0).firstChild.data;
447         } catch (e) {
448                 this.state = "N/A";
449         }
450         try{
451                 this.repeated = xml.getElementsByTagName('e2repeated').item(0).firstChild.data;
452         } catch (e) {
453                 this.repeated = "0";
454         }
455         try{
456                 this.dontsave = xml.getElementsByTagName('e2dontsave').item(0).firstChild.data;
457         } catch (e) {
458                 this.dontsave = "N/A";
459         }
460         try{
461                 this.cancled = xml.getElementsByTagName('e2cancled').item(0).firstChild.data;
462         } catch (e) {
463                 this.cancled = "N/A";
464         }
465         try{
466                 this.color = xml.getElementsByTagName('e2color').item(0).firstChild.data;
467         } catch (e) {
468                 this.color = "N/A";
469         }
470         try{
471                 this.toggledisabled = xml.getElementsByTagName('e2toggledisabled').item(0).firstChild.data;
472         } catch (e) {
473                 this.toggledisabled = "N/A";
474         }
475         try{
476                 this.toggledisabledimg = xml.getElementsByTagName('e2toggledisabledimg').item(0).firstChild.data;
477         } catch (e) {
478                 this.toggledisabledimg = "N/A";
479         }
480
481         this.getColor = function(){
482                 return this.color;
483         }
484         this.getToggleDisabled = function(){
485                 return this.toggledisabled;
486         }
487         this.getToggleDisabledIMG = function(){
488                 return this.toggledisabledimg;
489         }
490         
491         this.getServiceReference = function(){
492                 return encodeURIComponent(this.servicereference);
493         }
494         this.getServiceName = function(){
495                 return this.servicename.replace('&quot;', '"');
496         }       
497         this.getEventID = function(){
498                 return this.eventid;
499         }       
500         this.getName = function(){
501                 return this.name;
502         }       
503         this.getDescription = function(){
504                 return this.description;
505         }       
506         this.getDescriptionExtended = function(){
507                 return this.descriptionextended;
508         }       
509         this.getDisabled = function(){
510                 return this.disabled;
511         }
512         this.getTimeBegin = function(){
513                 return this.timebegin;
514         }       
515         this.getTimeEnd = function(){
516                 return this.timeend;
517         }       
518         this.getDuration = function(){
519                 return parseInt(this.duration);
520         }       
521         this.getStartPrepare = function(){
522                 return this.startprepare;
523         }       
524         this.getJustplay = function(){
525                 return this.justplay;
526         }       
527         this.getAfterevent = function(){
528                 return this.afterevent;
529         }       
530         this.getLogentries = function(){
531                 return this.logentries;
532         }       
533         this.getFilename = function(){
534                 return this.tfilename;
535         }       
536         this.getBackoff = function(){
537                 return this.backoff;
538         }       
539         this.getNextActivation = function(){
540                 return this.nextactivation;
541         }       
542         this.getFirsttryprepare = function(){
543                 return this.firsttryprepare;
544         }       
545         this.getState = function(){
546                 return this.state;
547         }       
548         this.getRepeated = function(){
549                 return this.repeated;
550         }       
551         this.getDontSave = function(){
552                 return this.dontsave;
553         }       
554         this.isCancled = function(){
555                 return this.cancled;
556         }       
557 }
558 // START SimpleXMLResult ehemals TimerAddResult
559 function SimpleXMLResult(xml){
560         // parsing values from xml-element
561         debug('init SimpleXMLResult'+xml);
562         try{
563                 this.xmlitems = xml.getElementsByTagName("e2simplexmlresult").item(0);
564                 debug(xml.getElementsByTagName("e2simplexmlresult").length);
565         } catch (e) {
566                 debug("SimpleXMLResult parsing e2simplexmlresult"+e);
567         }
568         try{
569                 this.state = this.xmlitems.getElementsByTagName("e2state").item(0).firstChild.data;
570         } catch (e) {
571                 debug("SimpleXMLResult parsing e2state"+e);
572         }
573         try{
574                 this.statetext = this.xmlitems.getElementsByTagName("e2statetext").item(0).firstChild.data;
575         } catch (e) {
576                 debug("SimpleXMLResult parsing e2statetext"+e);
577         }
578         
579         this.getState = function(){
580                 if(this.state == 'True'){
581                         return true;
582                 }else{
583                         return false;
584                 }
585         }
586         this.getStateText = function(){
587                         return this.statetext;
588         }
589 }
590 // END SimpleXMLResult
591
592 //START class Settings
593 function Settings(xml){
594         // parsing values from xml-element
595         //debug('init ServiceList'+xml);
596         try{
597                 this.xmlitems = xml.getElementsByTagName("e2settings").item(0).getElementsByTagName("e2setting");
598                 debug(this.xmlitems);
599         } catch (e) {
600                 //debug("Service parsing Error");
601         }
602         this.getArray = function(){
603                 var listxy = new Array();
604                 for (var i=0;i<this.xmlitems.length;i++){
605                         var xv = new Setting(this.xmlitems.item(i));
606                         listxy.push(xv);                        
607                 }
608                 return listxy;
609         }
610 }
611 //END class Settings
612
613 //START class Setting
614 function Setting(xml){  
615         // parsing values from xml-element
616         //debug('init ServiceReference'+xml);
617         try{
618                 this.settingvalue = xml.getElementsByTagName('e2settingvalue').item(0).firstChild.data;
619                 this.settingname = xml.getElementsByTagName('e2settingname').item(0).firstChild.data;
620                 
621         } catch (e) {
622                 //debug("Service parsing Error "+e);
623         }
624         
625         this.getSettingValue = function(){
626                 return this.settingvalue;
627         }
628                 
629         this.getSettingName = function(){
630                 return this.settingname;
631         }
632         
633 }
634 //START class FileList
635 function FileList(xml){
636         // parsing values from xml-element
637         debug('init FileList'+xml);
638         try{
639                 this.xmlitems = xml.getElementsByTagName("e2filelist").item(0).getElementsByTagName("e2file");
640         } catch (e) {
641                 debug("FileList parsing Error");
642         }
643         this.getArray = function(){
644                 var listxy = new Array();
645                 for(var i=0;i<this.xmlitems.length;i++){
646                         //debug("parsing File "+i+" of "+this.xmlitems.length);
647                         var xv = new File(this.xmlitems.item(i));
648                         listxy.push(xv);                        
649                 }
650                 return listxy;
651         }
652 }
653 //END class FileList
654
655 //START class File
656 function File(xml){     
657         // parsing values from xml-element
658         //debug('init Movie');
659         try{
660                 this.servicereference = xml.getElementsByTagName('e2servicereference').item(0).firstChild.data;
661         } catch (e) {
662                 this.servicereference = "N/A";
663         }
664         this.getServiceReference = function(){
665                 return this.servicereference;
666         }
667         this.getNameOnly = function(){
668                 if(this.root == '/') {
669                         return this.servicereference;
670                 } else {
671                         return this.servicereference.replace(new RegExp('.*'+this.root, "i"), '');
672                 }
673         }
674         try{
675                 this.isdirectory = xml.getElementsByTagName('e2isdirectory').item(0).firstChild.data;
676         } catch (e) {
677                 this.isdirectory = "N/A";
678         }
679         this.getIsDirectory = function(){
680                 return this.isdirectory;
681         }
682         try{
683                 this.root = xml.getElementsByTagName('e2root').item(0).firstChild.data;
684         } catch (e) {
685                 this.root = "N/A";
686         }
687         this.getRoot = function(){
688                 return this.root;
689         }
690 }       
691 //END class File
692
693
694
695 //START class NoteList
696 function NoteList(xml){
697         // parsing values from xml-element
698         try{
699                 this.xmlitems = xml.getElementsByTagName("e2noteslist").item(0).getElementsByTagName("e2note");
700         } catch (e) {
701                 debug("NoteList parsing Error");
702         }
703         this.getArray = function(){
704                 var listxy = new Array();
705                 for(var i=0;i<this.xmlitems.length;i++){
706                         var xv = new Note(this.xmlitems.item(i));
707                         listxy.push(xv);                        
708                 }
709                 return listxy;
710         }
711 }
712 //END class NoteList
713
714 //START class Note
715 function Note(xml){     
716         try{
717                 this.filename = xml.getElementsByTagName('e2notename').item(0).firstChild.data;
718         } catch (e) {
719                 this.filename = "N/A";
720         }
721         try{
722                 this.saved = xml.getElementsByTagName('e2notesaved').item(0).firstChild.data;
723         } catch (e) {
724                 this.saved = "N/A";
725         }
726         try{
727                 this.nameold = xml.getElementsByTagName('e2notenameold').item(0).firstChild.data;
728         } catch (e) {
729                 this.nameold = "False";
730         }
731         try{
732                 this.content = xml.getElementsByTagName('e2notecontent').item(0).firstChild.data;
733         } catch (e) {
734                 this.content = " ";
735         }
736         try{
737                 this.size = xml.getElementsByTagName('e2notesize').item(0).firstChild.data;
738         } catch (e) {
739                 this.size = "N/A";
740         }
741         try{
742                 this.mtime = new Date(parseInt(xml.getElementsByTagName('e2notemtime').item(0).firstChild.data)*1000);
743         } catch (e) {
744                 this.mtime = "N/A";
745         }
746         try{
747                 this.ctime = new Date(parseInt(xml.getElementsByTagName('e2notectime').item(0).firstChild.data)*1000);
748         } catch (e) {
749                 this.ctime = "N/A";
750         }
751
752         this.getMTime = function()
753         {
754                 var Wochentag = new Array("So", "Mo", "Di", "Mi", "Do", "Fr", "Sa");
755                 var wday = Wochentag[this.mtime.getDay()];
756                 var day = this.mtime.getDate();
757                 var month = this.mtime.getMonth()+1;
758                 var year = this.mtime.getFullYear();
759                 return wday+".&nbsp;"+day+"."+month+"."+year+" "+this.mtime.getHours()+":"+this.mtime.getMinutes();
760         }
761         this.getCTime = function()
762         {
763                 var Wochentag = new Array("So", "Mo", "Di", "Mi", "Do", "Fr", "Sa");
764                 var wday = Wochentag[this.ctime.getDay()];
765                 var day = this.ctime.getDate();
766                 var month = this.ctime.getMonth()+1;
767                 var year = this.ctime.getFullYear();
768                 return wday+".&nbsp;"+day+"."+month+"."+year+" "+this.ctime.getHours()+":"+this.ctime.getMinutes();
769         }
770 }
771 //END class NoteList