remove warning from pentest
[roojs1] / buildSDK / doc_templates / class.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
3
4 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
6         <head>
7                 <meta http-equiv="content-type" content="text/html; charset={+Options.encoding+}" />
8                 <meta name="generator" content="JsDoc Toolkit" />
9                 {! Link.base = "../"; /* all generated links will be relative to this */ !}
10                 
11                 <title>JsDoc Reference - {+data.alias+}</title>
12                 
13                 
14         <link rel="stylesheet" type="text/css" href="../../css/roojs.css" />            
15         <link rel="stylesheet" type="text/css" href="../default.css" />
16         
17         
18         <script type="text/javascript" src="../page.js">
19         
20         </script>
21          
22                 
23         </head>
24
25         <body onload="RooDocsPage.onload();">
26          
27         
28 <div class="body-wrap">
29
30     <!-- ============================== links to methods. ================================= --> 
31
32     <div class="top-tools">
33     <!--
34         <a class="inner-link" href="#{+data.alias+}-props"><img src="resources/s.gif" class="item-icon icon-prop">Properties</a>
35         <a class="inner-link" href="#{+data.alias+}-methods"><img src="resources/s.gif" class="item-icon icon-method">Methods</a>
36         <a class="inner-link" href="#{+data.alias+}-events"><img src="resources/s.gif" class="item-icon icon-event">Events</a>
37         <a class="inner-link" href="#{+data.alias+}-configs"><img src="resources/s.gif" class="item-icon icon-config">Config Options</a>
38         <a class="bookmark" href="NEED_TO_CREATE_DIRECT_LINK_HREF"><img src="resources/s.gif" class="item-icon icon-fav">Direct Link</a>
39         -->
40     </div>
41
42     
43 <!-- ============================== inheritance Block. ================================= -->    
44         <if test="data.augments.length">
45                 <div class="inheritance res-block">
46                    <pre class="res-block-inner">{!
47                                 var iblock_indent = 0;
48                                  data.augments.reverse().map(
49                                         function($) {  
50                                                 output += iblock_indent ? ('<img src="../../images/default/s.gif" height="1" width="' + 
51                                                         iblock_indent + '"/><img src="../../images/default/tree/elbow-end.gif" class="elbow"/>') : '';
52                                                 output += new Link().toSymbol($) + "\n"; 
53                                                 iblock_indent += 20;
54                                         }
55                                 )
56                         !}<img src="../../images/default/s.gif" height="1"  width="{+ iblock_indent +}"/><img class="elbow" src="../../images/default/tree/elbow-end.gif"/>{+data.alias+} 
57
58                    </pre>
59                 </div>
60        </if>
61 <!-- ============================== class title / details ============================ -->
62     
63     {! 
64                         var fullpath = data.alias.split('.');
65                         var cls = fullpath.pop();
66                         var packge = fullpath.join(".");
67                          
68                         
69                         
70         !}
71     <h1 class="classTitle">
72                                 {!
73                                         var classType = "";
74                                         
75                                         if (data.isBuiltin()) {
76                                                 classType += "Built-In ";
77                                         }
78                                         
79                                         if (data.isNamespace) {
80                                                 if (data.is('FUNCTION')) {
81                                                         classType += "Function ";
82                                                 }
83                                                 classType += "Namespace ";
84                                         }
85                                         else {
86                                                 classType += "Class ";
87                                         }
88                                 !}
89                                 {+classType+}{+data.alias+}
90                         </h1>
91                         
92     <table cellspacing="0" class="class-summary-table">
93         <if test="packge.length">
94                 <tr><td class="label">Package:</td><td class="hd-info">{+packge+}</td></tr>
95         </if>
96         <tr><td class="label">Defined In:</td><td class="hd-info">
97                         <if test="data.srcFile.length">{# isn't defined in any file #}
98                                         {+new Link({ 
99                         url : './src/' + Link.srcFileFlatName(data.srcFile),
100                         text : Link.srcFileRelName(data.srcFile)
101                     })+}.
102                         </if>
103         </td></tr>
104         <tr><td class="label">Class:</td><td class="hd-info">{+cls+}</td></tr>
105         
106         <if test="data.childClasses.length">
107         <tr><td class="label">Subclasses:</td><td class="hd-info">
108                 {+
109                         data.childClasses
110                         .sort()
111                         .map(
112                                 function($) { return new Link().toSymbol($); }
113                         )
114                         .join(", ")
115                 +}
116
117         
118         
119         </td></tr>
120         </if>
121         <if test="data.augments.length">
122         
123                 <tr><td class="label">Extends:</td><td class="hd-info">
124                         {+
125                                 new Link().toSymbol(data.augments[data.augments.length -1])
126                                 
127                         +}
128         
129                 </td></tr>    
130         </if>
131         
132     </table>
133
134     
135 <!-- ============================== class summary ========================== -->                        
136     <div class="description">
137         {+resolveLinks(data.desc)+}
138     </div>
139
140         
141 <!-- ============================== Class comment block... ========================== -->                                       
142
143 <div class="comments">
144         <b>Class Comments / Notes</B> =>  
145         <u onclick="parent.CommentDialog.showCommentId = '{+data.alias+}';">[Add Your comment/notes about this class]</u>
146         <br/>
147         <iframe frameborder="0"  id="comments-{+data.memberOf+}" style="border: none;width:100%;" 
148                 src="/blog.php/GtkDjsComments/{+data.alias+}.html"></iframe>
149 </div>
150         
151
152                 
153 <!-- ============================== config options ========================== -->                                               
154                  
155     
156     {!
157         
158          
159          
160         var cfgProperties = [];
161         if (!data.comment.getTag('singleton').length) {
162                 cfgProperties = data.configToArray();
163                 cfgProperties = cfgProperties.sort(makeSortby("name"));
164                 
165         }
166         
167                 
168                 
169         !}
170                 
171     <div class="hr"></div>
172     <a id="{+data.alias+}-configs"></a>
173                 
174     <if test="!cfgProperties.length">
175     
176      <table cellspacing="0" class="member-table">
177       <caption class="Empty">Config Options - Has None</caption>
178      </table>
179     
180     </if>
181      
182     <if test="cfgProperties.length">
183         
184       <table cellspacing="0" class="member-table">   
185       <caption>Config Options (Usually are also Properties)</caption>
186     
187         
188         <tr>
189             <th class="sig-header" colspan="2">Options</th>
190             
191             <th class="msource-header">Defined By</th>
192         </tr>
193         
194         
195         
196         <for each="dtag" in="cfgProperties">
197         
198                 <tr class="config-row expandable config-row-alt{+$dtag_i % 2+}{+ ((dtag.memberOf == data.alias) ?   " notInherited" : "") +}">
199                    <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
200                     <td class="sig">
201
202                         <a id="{+dtag.memberOf+}-cfg-{+dtag.name+}" name=".{+dtag.name+}"></a>
203                         <div class="fixedFont">
204                                 <b  class="itemname">{+dtag.name+}</b> : {+((dtag.type) ? (new Link().toSymbol(dtag.type)) : "" )+}
205                                 
206                                 
207                         </div>
208                   
209                         <div class="mdesc">
210                             <div class="short">{+resolveLinks(summarize(dtag.desc))+}</div> 
211                         </div>
212                         
213                         <div class="mdesc">
214                             <div class="long">
215                     {+resolveLinks(dtag.desc)+}
216                     {+dtag.optvalues ? ("<BR/>Possible Values: " + dtag.optvalues.map(function(v) { return v.length ? v : "<B>Empty</B>"; }).join(", ")) : '' +}
217                 </div> 
218                         </div>
219                         
220                         
221
222                     </td>
223                     <td class="msource">
224                         {# - fixme - add inheritied as link here #}
225                         {+ (dtag.memberOf == data.alias) ? dtag.memberOf :  new Link().toSymbol(dtag.memberOf) +}
226                                 
227                     </td>
228                 </tr>
229         </for>
230         
231     </table>
232   </if>         
233   
234   
235   
236   
237   
238   
239   
240   
241   <!-- ============================== public properties ==================== -->        
242   
243   
244   
245     <a id="{+data.alias+}-props"></a>      
246     
247     {! 
248                 var ownProperties = [];
249                 var psorted = data.properties.sort(makeSortby("name"));
250                 psorted.filter(
251                         
252                         function($){
253                                 if (/$.hide/.test($.desc)) {
254                                         return false;
255                                 }
256                                 if ( !$.isNamespace || (($.memberOf != data.alias) && $.isStatic)) {
257                                         if ($.isStatic)  ownProperties.push($);
258                                 }
259                                 return true;
260                 
261                         }
262                 );
263      
264     !}
265
266     <if test="!ownProperties.length">
267     
268      <table cellspacing="0" class="member-table">
269       <caption class="Empty">Public Properties - Has None</caption>
270      </table>
271     
272     </if>
273      
274     <if test="ownProperties.length">
275         
276       <table cellspacing="0" class="member-table">   
277       <caption>Public Properties </caption>
278         <tr>
279             <th class="sig-header" colspan="2">Property</th>
280             <th class="sig-header">Description</th>
281             <th class="msource-header">Defined By</th>
282         </tr>
283         
284       
285                     
286           
287         <for each="member" in="ownProperties">   
288          
289         
290         
291           <tr class="property-row config-row-alt{+$member_i % 2+}{!
292
293                 if (member.memberOf == data.alias) {
294                         output += " notInherited";
295                  }
296                   
297                  !}">
298             <td class="micon">
299                 <a class="exi" href="#expand">&nbsp;</a>
300             </td>
301             <td class="sig">
302                <a id="{+member.memberOf+}-prop-{+member.name+}" name=".{+member.name+}"></a>
303                <div class="fixedFont">
304                     <span class="attributes">{!
305                         if (member.isPrivate) output += "&lt;private&gt; ";
306                         if (member.isInner) output += "&lt;inner&gt; ";
307                         
308                         if (member.isConstant) output += "&lt;constant&gt; ";
309                         if (member.isStatic) output += ""+data.alias +".";
310                      !}</span><b  class="itemname">{+member.name+}</b> :
311                      <span type="etype">{+((member.type) ? (new Link().toSymbol(member.type)) : "" )+}</span>
312                      </div>
313             </td>
314             <td class="sig">
315                 <div class="mdesc">
316
317
318                    <div class="short">
319                         {+resolveLinks(summarize(member.desc))+}
320                    
321                    
322                    
323                    </div> 
324                     
325                     <div class="long">
326                     
327                         {+resolveLinks(member.desc)+}                        
328                  
329                 </div>
330                 </div>
331             </td>
332             
333             <td class="msource">  
334             {+ (member.memberOf == data.alias) ? member.memberOf :  new Link().toSymbol(member.memberOf) +}
335             </td>             
336                 
337           </tr>
338         </for>
339         
340          
341         
342       
343         <!-- TODO: implement this alt row.  also notice non-linked "Defined by" when property is a part of this class.     
344         <tr class="property-row alt">
345              
346         -->
347
348     </table>
349   
350     </if>
351   <!-- ============================== methods summary / details ======================== -->
352   
353   
354   <a id="{+data.alias+}-methods"></a>
355         <!-- constructor?? -->
356         {! 
357                 var ownMethods = [];
358         
359                 if (data.comment.getTag('class').length && 
360                         !data.isBuiltin() && 
361                         !data.comment.getTag('singleton').length &&
362                         !data.comment.getTag('static').length
363                         ) {
364                         data.isInherited = false;
365                         ownMethods.push(data);
366                 }
367                 
368                 var msorted = data.methods.sort(makeSortby("name"));
369         !}
370         <!-- static's first 
371         
372         
373         -->
374         {!
375                 msorted.filter(
376                                 function($){
377                                         
378                                         if (/@hide/.test($.desc)) {
379                                                 return false;
380                                         }
381                                         
382                                         if (!$.isEvent && (data.comment.getTag("instanceOf").length || data.comment.getTag("singleton").length)) {
383                                                 if ($.isStatic && (data.comment.getTag("instanceOf").length || data.comment.getTag("singleton").length) &&
384                                                         ($.memberOf != data.alias)) {
385                                                                 return true;
386                                                         }
387                                                 $.isInherited = ($.memberOf != data.alias);
388                                                 ownMethods.push($);
389                                                 return true;
390                                         }
391                                         
392                                         
393                                         if ($.isNamespace || $.isEvent || (($.memberOf != data.alias) && $.isStatic)){
394                                                 return true;
395                                         }
396                                         if ($.isStatic) {
397                                                 $.isInherited = ($.memberOf != data.alias);
398                                                 ownMethods.push($);
399                                         }
400                                         
401                                         return true;
402                                 }
403                         );
404         !}
405         <!-- then dynamics first -->
406         {!      
407                 msorted.filter(
408                                 function($){
409                                         if (/@hide/.test($.desc)) {
410                                                 return false;
411                                         }
412                                         if (data.comment.getTag("instanceOf").length  || data.comment.getTag("singleton").length) {
413                                                 return true;
414                                         }
415                                         if ($.isNamespace || $.isEvent || (($.memberOf != data.alias) && $.isStatic)){
416                                                 
417                                                 return true;
418                                         }
419                                         if (!$.isStatic) {
420                                                 $.isInherited = ($.memberOf != data.alias);
421                                                 ownMethods.push($);
422                                         }
423                                         
424                                         return true;
425                                 }
426                         );
427                  
428         !}
429   
430   
431     <if test="!ownMethods.length">
432     
433      <table cellspacing="0" class="member-table">
434       <caption class="Empty">Public Methods - Has None</caption>
435      </table>
436     
437     </if>
438     <if test="ownMethods.length">
439     
440       <table cellspacing="0" class="member-table">
441       <caption>Public Methods</caption>
442         <tr>
443             <th class="sig-header" colspan="2">Method</th>            
444             <th class="msource-header">Defined By</th>
445
446         </tr>
447         
448         
449         
450          
451         
452         <for each="member" in="ownMethods">
453           
454           <tr class="method-row config-row-alt{+$member_i % 2+}{!
455                   if (member.is("CONSTRUCTOR") && !member.params.length) {
456                           output += '';
457                  } else {
458                           output += ' expandable';
459                         }
460                   
461                   
462                 if (!member.isInherited) {
463                         output += " notInherited";
464                  }
465                   
466                  !}">
467             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
468            
469            
470             <td class="sig">
471                 <a id="{+member.memberOf+}-method-{+member.name+}"   name=".{+member.name+}"></a>
472                 <div class="fixedFont">
473                         <span class="attributes">{!
474                                         if (member.is('CONSTRUCTOR')) {
475                                                 output += "new <B>" + member.memberOf + (member.memberOf.length ? "." : "") +"</B>";
476                                         } else {
477                                                 
478                                                 
479                                                 if (member.isPrivate) output += "&lt;private&gt; ";
480                                                 if (member.isInner) output += "&lt;inner&gt; ";
481                                                 if (member.isStatic || data.comment.getTag("singleton").length || data.comment.getTag("instanceOf").length) {
482                                                         output +=  data.alias + ".";    
483                                                 }
484                                         }
485                                 !}</span><b class="itemname">{+member.name+}</b>
486                                 
487                                  {+makeSignature(member.params)+} 
488                         
489                                 <if test="member.returns.length">
490                                          : 
491                                         <for each="item" in="member.returns">
492                                                 <if test="$item_i > 0"> or </if>
493                                                 {+((item.type) ? (new Link().toSymbol(item.type)) : "" )+}
494                                         
495                                         </for>
496                                         
497                                 </if>
498                         
499                 </div>
500                 <div class="mdesc">
501                 <if test="!member.is('CONSTRUCTOR')">
502                    <div class="short">{+resolveLinks(summarize(member.desc))+}</div> 
503                  </if>
504                  <if test="member.is('CONSTRUCTOR')">
505                         <div class="short">Create a new {+data.alias +}</div> 
506                  </if>
507                  
508                     <div class="long">
509                         <if test="!member.is('CONSTRUCTOR')">
510                                 {+resolveLinks(member.desc)+}
511                     
512                                 <if test="member.example">
513                                         <pre class="code">{+member.example+}</pre>
514                                 </if>
515                         </if>
516                         
517                         <if test="member.is('CONSTRUCTOR')">
518                                 Create a new {+data.alias +}
519                         </if>
520                         <if test="member.params.length">
521                                 <dl class="detailList">
522                                 <dt class="heading">Parameters:</dt>
523                                 <for each="item" in="member.params">
524                                         <dt>
525                                                 {+((item.type)?"<span class=\"fixedFont\">"+(new Link().toSymbol(item.type))+"</span> " : "")+} <b>{+item.name+}</b>
526                                                 <if test="item.isOptional"><i>Optional
527                                                         <if test="item.defaultValue">, 
528                                                         Default: {+item.defaultValue+}
529                                                 </if></i></if>
530                                         </dt>
531                                         <dd>{+resolveLinks(item.desc)+}</dd>
532                                 </for>
533                                 </dl>
534                         </if>
535                         <if test="member.deprecated">
536                                 <dl class="detailList">
537                                 <dt class="heading">Deprecated:</dt>
538                                 <dt>
539                                         {+member.deprecated+}
540                                 </dt>
541                                 </dl>
542                         </if>
543                         <if test="member.since.length">
544                                 <dl class="detailList">
545                                 <dt class="heading">Since:</dt>
546                                         <dd>{+ member.since +}</dd>
547                                 </dl>
548                                 </dl>
549                         </if>
550                         <if test="member.exceptions.length">
551                                 <dl class="detailList">
552                                 <dt class="heading">Throws:</dt>
553                                 <for each="item" in="member.exceptions">
554                                         <dt>
555                                                 {+((item.type)?"<span class=\"fixedFont\">{"+(new Link().toSymbol(item.type))+"}</span> " : "")+} <b>{+item.name+}</b>
556                                         </dt>
557                                         <dd>{+resolveLinks(item.desc)+}</dd>
558                                 </for>
559                                 </dl>
560                         </if>
561                         <if test="member.returns.length">
562                                 <dl class="detailList">
563                                 <dt class="heading">Returns:</dt>
564                                 <for each="item" in="member.returns">
565                                         <dd>{+((item.type)?"<span class=\"fixedFont\">"+(new Link().toSymbol(item.type))+"</span> " : "")+} {+resolveLinks(item.desc)+}</dd>
566                                 </for>
567                                 </dl>
568                         </if>
569                         <if test="member.requires.length">
570                                 <dl class="detailList">
571                                 <dt class="heading">Requires:</dt>
572                                 <for each="item" in="member.requires">
573                                         <dd>{+ resolveLinks(item) +}</dd>
574                                 </for>
575                                 </dl>
576                         </if>
577                         <if test="member.see.length">
578                                 <dl class="detailList">
579                                 <dt class="heading">See:</dt>
580                                 <for each="item" in="member.see">
581                                         <dd>{+ new Link().toSymbol(item) +}</dd>
582                                 </for>
583                                 </dl>
584                         </if>
585
586                     
587                     
588                      
589                     </div>                    
590                 </div>
591
592             </td>
593             <td class="msource">
594                 <if test="!member.is('CONSTRUCTOR')">
595                         {+ (member.memberOf == data.alias) ? member.memberOf :  new Link().toSymbol(member.memberOf) +}
596                 </if>&nbsp;
597             </td>
598         </tr>
599         </for>
600                                                        
601     </table>
602 </if>
603   
604   <!-- ============================== events summary / details ======================== -->
605   
606   
607   <a id="{+data.alias+}-events"></a>
608     
609   
610         {! 
611                 
612                 
613                 var ownEvents = data.methods.filter(
614                                 function($){
615                                         
616                                         return $.isEvent && !$.comment.getTag('hide').length;
617                                                 
618                                 }
619                         ).sort(makeSortby("name"));
620                  
621         !}
622    <if test="!ownEvents.length">
623     
624      <table cellspacing="0" class="member-table">
625       <caption class="Empty">Events - Has None</caption>
626      </table>
627     
628     </if>
629   
630     
631     <if test="ownEvents.length">
632     
633       <table cellspacing="0" class="member-table">
634                 <caption>Events</caption>
635               <thead>
636                 <tr>
637                     <th class="sig-header" colspan="2">Event</th>            
638                     <th class="msource-header">Defined By</th>
639
640                 </tr>
641               </thead>  
642         
643         
644          
645         
646         <for each="member" in="ownEvents">
647           <tr class="method-row expandable config-row-alt{+$member_i % 2+}{!
648
649                 if (member.memberOf == data.alias) {
650                         output += " notInherited";
651                  }
652                   
653                  !}">
654             <td class="micon"><a class="exi" href="#expand">&nbsp;</a></td>
655             
656             <td class="sig">
657                 <a id="{+member.memberOf+}-event-{+member.name+}"></a>
658                 
659                <div class="fixedFont">
660                 <b class="itemname">{+member.name.substring(1)+}</b> {+makeSignature(member.params)+} 
661                 
662                 </div>
663
664                 <div class="mdesc">
665
666                    <div class="short">{+resolveLinks(summarize(member.desc))+}
667                    
668                 </div> 
669                     
670                     <div class="long">
671                     
672                         {+resolveLinks(member.desc)+}
673                     
674                         <if test="member.example">
675                                 <pre class="code">{+member.example+}</pre>
676                         </if>
677                         
678                 
679                         <if test="member.params.length">
680                                 <dl class="detailList">
681                                 <dt class="heading">Parameters:</dt>
682                                 <for each="item" in="member.params">
683                                         <dt>
684                                                 {+((item.type)?"<span class=\"fixedFont\">"+(new Link().toSymbol(item.type))+"</span> " : "")+}<b>{+item.name+}</b>
685                                                 <if test="item.isOptional"><i>Optional
686                                                         <if test="item.defaultValue">, 
687                                                         Default: {+item.defaultValue+}
688                                                 </if></i></if>
689                                         </dt>
690                                         <dd>{+resolveLinks(item.desc)+}</dd>
691                                 </for>
692                                 </dl>
693                         </if>
694                         <if test="member.deprecated">
695                                 <dl class="detailList">
696                                 <dt class="heading">Deprecated:</dt>
697                                 <dt>
698                                         {+member.deprecated+}
699                                 </dt>
700                                 </dl>
701                         </if>
702                         <if test="member.since.length">
703                                 <dl class="detailList">
704                                 <dt class="heading">Since:</dt>
705                                         <dd>{+ member.since +}</dd>
706                                 </dl>
707                                 </dl>
708                         </if>
709                         <if test="member.exceptions.length">
710                                 <dl class="detailList">
711                                 <dt class="heading">Throws:</dt>
712                                 <for each="item" in="member.exceptions">
713                                         <dt>
714                                                 {+((item.type)?"<span class=\"light fixedFont\">{"+(new Link().toSymbol(item.type))+"}</span> " : "")+} <b>{+item.name+}</b>
715                                         </dt>
716                                         <dd>{+resolveLinks(item.desc)+}</dd>
717                                 </for>
718                                 </dl>
719                         </if>
720                         <if test="member.returns.length">
721                                 <dl class="detailList">
722                                 <dt class="heading">Returns:</dt>
723                                 <for each="item" in="member.returns">
724                                         <dd>{+((item.type)?"<span class=\"light fixedFont\">{"+(new Link().toSymbol(item.type))+"}</span> " : "")+}{+resolveLinks(item.desc)+}</dd>
725                                 </for>
726                                 </dl>
727                         </if>
728                         <if test="member.requires.length">
729                                 <dl class="detailList">
730                                 <dt class="heading">Requires:</dt>
731                                 <for each="item" in="member.requires">
732                                         <dd>{+ resolveLinks(item) +}</dd>
733                                 </for>
734                                 </dl>
735                         </if>
736                         <if test="member.see.length">
737                                 <dl class="detailList">
738                                 <dt class="heading">See:</dt>
739                                 <for each="item" in="member.see">
740                                         <dd>{+ new Link().toSymbol(item) +}</dd>
741                                 </for>
742                                 </dl>
743                         </if>
744
745                     
746                     
747                      
748                     </div>                    
749                 </div>
750
751             </td>
752             <td class="msource">
753                 {+ (member.memberOf == data.alias) ? member.memberOf :  new Link().toSymbol(member.memberOf) +}
754             </td>
755         </tr>
756         </for>
757                                                        
758     </table>
759 </if>
760   
761   
762   
763  
764 <!-- ============================== footer ================================= -->
765                 <div class="fineprint" style="clear:both">
766                         <if test="Options.copyright">&copy;{+Options.copyright+}<br /></if>
767                         Documentation generated by <a href="http://www.akbkhome.com" target="_blankt">Introspection Doc Generator</a>  on {+new Date()+}
768                         Based on 
769                         <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a>  
770                 </div>
771         </body>
772 </html>