root/galaxy-central/eggs/Paste-1.6-py2.6.egg/paste/evalexception/mochikit/MochiKit.js @ 3

リビジョン 3, 110.4 KB (コミッタ: kohda, 14 年 前)

Install Unix tools  http://hannonlab.cshl.edu/galaxy_unix_tools/galaxy.html

行番号 
1/***
2
3    MochiKit.MochiKit 1.3.1 : PACKED VERSION
4
5    THIS FILE IS AUTOMATICALLY GENERATED.  If creating patches, please
6    diff against the source tree, not this file.
7
8    See <http://mochikit.com/> for documentation, downloads, license, etc.
9
10    (c) 2005 Bob Ippolito.  All rights Reserved.
11
12***/
13
14if(typeof (dojo)!="undefined"){
15dojo.provide("MochiKit.Base");
16}
17if(typeof (MochiKit)=="undefined"){
18MochiKit={};
19}
20if(typeof (MochiKit.Base)=="undefined"){
21MochiKit.Base={};
22}
23MochiKit.Base.VERSION="1.3.1";
24MochiKit.Base.NAME="MochiKit.Base";
25MochiKit.Base.update=function(_1,_2){
26if(_1===null){
27_1={};
28}
29for(var i=1;i<arguments.length;i++){
30var o=arguments[i];
31if(typeof (o)!="undefined"&&o!==null){
32for(var k in o){
33_1[k]=o[k];
34}
35}
36}
37return _1;
38};
39MochiKit.Base.update(MochiKit.Base,{__repr__:function(){
40return "["+this.NAME+" "+this.VERSION+"]";
41},toString:function(){
42return this.__repr__();
43},counter:function(n){
44if(arguments.length===0){
45n=1;
46}
47return function(){
48return n++;
49};
50},clone:function(_7){
51var me=arguments.callee;
52if(arguments.length==1){
53me.prototype=_7;
54return new me();
55}
56},flattenArguments:function(_9){
57var res=[];
58var m=MochiKit.Base;
59var _12=m.extend(null,arguments);
60while(_12.length){
61var o=_12.shift();
62if(o&&typeof (o)=="object"&&typeof (o.length)=="number"){
63for(var i=o.length-1;i>=0;i--){
64_12.unshift(o[i]);
65}
66}else{
67res.push(o);
68}
69}
70return res;
71},extend:function(_13,obj,_15){
72if(!_15){
73_15=0;
74}
75if(obj){
76var l=obj.length;
77if(typeof (l)!="number"){
78if(typeof (MochiKit.Iter)!="undefined"){
79obj=MochiKit.Iter.list(obj);
80l=obj.length;
81}else{
82throw new TypeError("Argument not an array-like and MochiKit.Iter not present");
83}
84}
85if(!_13){
86_13=[];
87}
88for(var i=_15;i<l;i++){
89_13.push(obj[i]);
90}
91}
92return _13;
93},updatetree:function(_17,obj){
94if(_17===null){
95_17={};
96}
97for(var i=1;i<arguments.length;i++){
98var o=arguments[i];
99if(typeof (o)!="undefined"&&o!==null){
100for(var k in o){
101var v=o[k];
102if(typeof (_17[k])=="object"&&typeof (v)=="object"){
103arguments.callee(_17[k],v);
104}else{
105_17[k]=v;
106}
107}
108}
109}
110return _17;
111},setdefault:function(_19,obj){
112if(_19===null){
113_19={};
114}
115for(var i=1;i<arguments.length;i++){
116var o=arguments[i];
117for(var k in o){
118if(!(k in _19)){
119_19[k]=o[k];
120}
121}
122}
123return _19;
124},keys:function(obj){
125var _20=[];
126for(var _21 in obj){
127_20.push(_21);
128}
129return _20;
130},items:function(obj){
131var _22=[];
132var e;
133for(var _24 in obj){
134var v;
135try{
136v=obj[_24];
137}
138catch(e){
139continue;
140}
141_22.push([_24,v]);
142}
143return _22;
144},_newNamedError:function(_25,_26,_27){
145_27.prototype=new MochiKit.Base.NamedError(_25.NAME+"."+_26);
146_25[_26]=_27;
147},operator:{truth:function(a){
148return !!a;
149},lognot:function(a){
150return !a;
151},identity:function(a){
152return a;
153},not:function(a){
154return ~a;
155},neg:function(a){
156return -a;
157},add:function(a,b){
158return a+b;
159},sub:function(a,b){
160return a-b;
161},div:function(a,b){
162return a/b;
163},mod:function(a,b){
164return a%b;
165},mul:function(a,b){
166return a*b;
167},and:function(a,b){
168return a&b;
169},or:function(a,b){
170return a|b;
171},xor:function(a,b){
172return a^b;
173},lshift:function(a,b){
174return a<<b;
175},rshift:function(a,b){
176return a>>b;
177},zrshift:function(a,b){
178return a>>>b;
179},eq:function(a,b){
180return a==b;
181},ne:function(a,b){
182return a!=b;
183},gt:function(a,b){
184return a>b;
185},ge:function(a,b){
186return a>=b;
187},lt:function(a,b){
188return a<b;
189},le:function(a,b){
190return a<=b;
191},ceq:function(a,b){
192return MochiKit.Base.compare(a,b)===0;
193},cne:function(a,b){
194return MochiKit.Base.compare(a,b)!==0;
195},cgt:function(a,b){
196return MochiKit.Base.compare(a,b)==1;
197},cge:function(a,b){
198return MochiKit.Base.compare(a,b)!=-1;
199},clt:function(a,b){
200return MochiKit.Base.compare(a,b)==-1;
201},cle:function(a,b){
202return MochiKit.Base.compare(a,b)!=1;
203},logand:function(a,b){
204return a&&b;
205},logor:function(a,b){
206return a||b;
207},contains:function(a,b){
208return b in a;
209}},forwardCall:function(_30){
210return function(){
211return this[_30].apply(this,arguments);
212};
213},itemgetter:function(_31){
214return function(arg){
215return arg[_31];
216};
217},typeMatcher:function(){
218var _33={};
219for(var i=0;i<arguments.length;i++){
220var typ=arguments[i];
221_33[typ]=typ;
222}
223return function(){
224for(var i=0;i<arguments.length;i++){
225if(!(typeof (arguments[i]) in _33)){
226return false;
227}
228}
229return true;
230};
231},isNull:function(){
232for(var i=0;i<arguments.length;i++){
233if(arguments[i]!==null){
234return false;
235}
236}
237return true;
238},isUndefinedOrNull:function(){
239for(var i=0;i<arguments.length;i++){
240var o=arguments[i];
241if(!(typeof (o)=="undefined"||o===null)){
242return false;
243}
244}
245return true;
246},isEmpty:function(obj){
247return !MochiKit.Base.isNotEmpty.apply(this,arguments);
248},isNotEmpty:function(obj){
249for(var i=0;i<arguments.length;i++){
250var o=arguments[i];
251if(!(o&&o.length)){
252return false;
253}
254}
255return true;
256},isArrayLike:function(){
257for(var i=0;i<arguments.length;i++){
258var o=arguments[i];
259var typ=typeof (o);
260if((typ!="object"&&!(typ=="function"&&typeof (o.item)=="function"))||o===null||typeof (o.length)!="number"){
261return false;
262}
263}
264return true;
265},isDateLike:function(){
266for(var i=0;i<arguments.length;i++){
267var o=arguments[i];
268if(typeof (o)!="object"||o===null||typeof (o.getTime)!="function"){
269return false;
270}
271}
272return true;
273},xmap:function(fn){
274if(fn===null){
275return MochiKit.Base.extend(null,arguments,1);
276}
277var _36=[];
278for(var i=1;i<arguments.length;i++){
279_36.push(fn(arguments[i]));
280}
281return _36;
282},map:function(fn,lst){
283var m=MochiKit.Base;
284var itr=MochiKit.Iter;
285var _39=m.isArrayLike;
286if(arguments.length<=2){
287if(!_39(lst)){
288if(itr){
289lst=itr.list(lst);
290if(fn===null){
291return lst;
292}
293}else{
294throw new TypeError("Argument not an array-like and MochiKit.Iter not present");
295}
296}
297if(fn===null){
298return m.extend(null,lst);
299}
300var _40=[];
301for(var i=0;i<lst.length;i++){
302_40.push(fn(lst[i]));
303}
304return _40;
305}else{
306if(fn===null){
307fn=Array;
308}
309var _41=null;
310for(i=1;i<arguments.length;i++){
311if(!_39(arguments[i])){
312if(itr){
313return itr.list(itr.imap.apply(null,arguments));
314}else{
315throw new TypeError("Argument not an array-like and MochiKit.Iter not present");
316}
317}
318var l=arguments[i].length;
319if(_41===null||_41>l){
320_41=l;
321}
322}
323_40=[];
324for(i=0;i<_41;i++){
325var _42=[];
326for(var j=1;j<arguments.length;j++){
327_42.push(arguments[j][i]);
328}
329_40.push(fn.apply(this,_42));
330}
331return _40;
332}
333},xfilter:function(fn){
334var _44=[];
335if(fn===null){
336fn=MochiKit.Base.operator.truth;
337}
338for(var i=1;i<arguments.length;i++){
339var o=arguments[i];
340if(fn(o)){
341_44.push(o);
342}
343}
344return _44;
345},filter:function(fn,lst,_45){
346var _46=[];
347var m=MochiKit.Base;
348if(!m.isArrayLike(lst)){
349if(MochiKit.Iter){
350lst=MochiKit.Iter.list(lst);
351}else{
352throw new TypeError("Argument not an array-like and MochiKit.Iter not present");
353}
354}
355if(fn===null){
356fn=m.operator.truth;
357}
358if(typeof (Array.prototype.filter)=="function"){
359return Array.prototype.filter.call(lst,fn,_45);
360}else{
361if(typeof (_45)=="undefined"||_45===null){
362for(var i=0;i<lst.length;i++){
363var o=lst[i];
364if(fn(o)){
365_46.push(o);
366}
367}
368}else{
369for(i=0;i<lst.length;i++){
370o=lst[i];
371if(fn.call(_45,o)){
372_46.push(o);
373}
374}
375}
376}
377return _46;
378},_wrapDumbFunction:function(_47){
379return function(){
380switch(arguments.length){
381case 0:
382return _47();
383case 1:
384return _47(arguments[0]);
385case 2:
386return _47(arguments[0],arguments[1]);
387case 3:
388return _47(arguments[0],arguments[1],arguments[2]);
389}
390var _48=[];
391for(var i=0;i<arguments.length;i++){
392_48.push("arguments["+i+"]");
393}
394return eval("(func("+_48.join(",")+"))");
395};
396},method:function(_49,_50){
397var m=MochiKit.Base;
398return m.bind.apply(this,m.extend([_50,_49],arguments,2));
399},bind:function(_51,_52){
400if(typeof (_51)=="string"){
401_51=_52[_51];
402}
403var _53=_51.im_func;
404var _54=_51.im_preargs;
405var _55=_51.im_self;
406var m=MochiKit.Base;
407if(typeof (_51)=="function"&&typeof (_51.apply)=="undefined"){
408_51=m._wrapDumbFunction(_51);
409}
410if(typeof (_53)!="function"){
411_53=_51;
412}
413if(typeof (_52)!="undefined"){
414_55=_52;
415}
416if(typeof (_54)=="undefined"){
417_54=[];
418}else{
419_54=_54.slice();
420}
421m.extend(_54,arguments,2);
422var _56=function(){
423var _57=arguments;
424var me=arguments.callee;
425if(me.im_preargs.length>0){
426_57=m.concat(me.im_preargs,_57);
427}
428var _52=me.im_self;
429if(!_52){
430_52=this;
431}
432return me.im_func.apply(_52,_57);
433};
434_56.im_self=_55;
435_56.im_func=_53;
436_56.im_preargs=_54;
437return _56;
438},bindMethods:function(_58){
439var _59=MochiKit.Base.bind;
440for(var k in _58){
441var _60=_58[k];
442if(typeof (_60)=="function"){
443_58[k]=_59(_60,_58);
444}
445}
446},registerComparator:function(_61,_62,_63,_64){
447MochiKit.Base.comparatorRegistry.register(_61,_62,_63,_64);
448},_primitives:{"boolean":true,"string":true,"number":true},compare:function(a,b){
449if(a==b){
450return 0;
451}
452var _65=(typeof (a)=="undefined"||a===null);
453var _66=(typeof (b)=="undefined"||b===null);
454if(_65&&_66){
455return 0;
456}else{
457if(_65){
458return -1;
459}else{
460if(_66){
461return 1;
462}
463}
464}
465var m=MochiKit.Base;
466var _67=m._primitives;
467if(!(typeof (a) in _67&&typeof (b) in _67)){
468try{
469return m.comparatorRegistry.match(a,b);
470}
471catch(e){
472if(e!=m.NotFound){
473throw e;
474}
475}
476}
477if(a<b){
478return -1;
479}else{
480if(a>b){
481return 1;
482}
483}
484var _68=m.repr;
485throw new TypeError(_68(a)+" and "+_68(b)+" can not be compared");
486},compareDateLike:function(a,b){
487return MochiKit.Base.compare(a.getTime(),b.getTime());
488},compareArrayLike:function(a,b){
489var _69=MochiKit.Base.compare;
490var _70=a.length;
491var _71=0;
492if(_70>b.length){
493_71=1;
494_70=b.length;
495}else{
496if(_70<b.length){
497_71=-1;
498}
499}
500for(var i=0;i<_70;i++){
501var cmp=_69(a[i],b[i]);
502if(cmp){
503return cmp;
504}
505}
506return _71;
507},registerRepr:function(_73,_74,_75,_76){
508MochiKit.Base.reprRegistry.register(_73,_74,_75,_76);
509},repr:function(o){
510if(typeof (o)=="undefined"){
511return "undefined";
512}else{
513if(o===null){
514return "null";
515}
516}
517try{
518if(typeof (o.__repr__)=="function"){
519return o.__repr__();
520}else{
521if(typeof (o.repr)=="function"&&o.repr!=arguments.callee){
522return o.repr();
523}
524}
525return MochiKit.Base.reprRegistry.match(o);
526}
527catch(e){
528if(typeof (o.NAME)=="string"&&(o.toString==Function.prototype.toString||o.toString==Object.prototype.toString)){
529return o.NAME;
530}
531}
532try{
533var _77=(o+"");
534}
535catch(e){
536return "["+typeof (o)+"]";
537}
538if(typeof (o)=="function"){
539o=_77.replace(/^\s+/,"");
540var idx=o.indexOf("{");
541if(idx!=-1){
542o=o.substr(0,idx)+"{...}";
543}
544}
545return _77;
546},reprArrayLike:function(o){
547var m=MochiKit.Base;
548return "["+m.map(m.repr,o).join(", ")+"]";
549},reprString:function(o){
550return ("\""+o.replace(/(["\\])/g,"\\$1")+"\"").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r");
551},reprNumber:function(o){
552return o+"";
553},registerJSON:function(_79,_80,_81,_82){
554MochiKit.Base.jsonRegistry.register(_79,_80,_81,_82);
555},evalJSON:function(){
556return eval("("+arguments[0]+")");
557},serializeJSON:function(o){
558var _83=typeof (o);
559if(_83=="undefined"){
560return "undefined";
561}else{
562if(_83=="number"||_83=="boolean"){
563return o+"";
564}else{
565if(o===null){
566return "null";
567}
568}
569}
570var m=MochiKit.Base;
571var _84=m.reprString;
572if(_83=="string"){
573return _84(o);
574}
575var me=arguments.callee;
576var _85;
577if(typeof (o.__json__)=="function"){
578_85=o.__json__();
579if(o!==_85){
580return me(_85);
581}
582}
583if(typeof (o.json)=="function"){
584_85=o.json();
585if(o!==_85){
586return me(_85);
587}
588}
589if(_83!="function"&&typeof (o.length)=="number"){
590var res=[];
591for(var i=0;i<o.length;i++){
592var val=me(o[i]);
593if(typeof (val)!="string"){
594val="undefined";
595}
596res.push(val);
597}
598return "["+res.join(", ")+"]";
599}
600try{
601_85=m.jsonRegistry.match(o);
602return me(_85);
603}
604catch(e){
605if(e!=m.NotFound){
606throw e;
607}
608}
609if(_83=="function"){
610return null;
611}
612res=[];
613for(var k in o){
614var _87;
615if(typeof (k)=="number"){
616_87="\""+k+"\"";
617}else{
618if(typeof (k)=="string"){
619_87=_84(k);
620}else{
621continue;
622}
623}
624val=me(o[k]);
625if(typeof (val)!="string"){
626continue;
627}
628res.push(_87+":"+val);
629}
630return "{"+res.join(", ")+"}";
631},objEqual:function(a,b){
632return (MochiKit.Base.compare(a,b)===0);
633},arrayEqual:function(_88,arr){
634if(_88.length!=arr.length){
635return false;
636}
637return (MochiKit.Base.compare(_88,arr)===0);
638},concat:function(){
639var _90=[];
640var _91=MochiKit.Base.extend;
641for(var i=0;i<arguments.length;i++){
642_91(_90,arguments[i]);
643}
644return _90;
645},keyComparator:function(key){
646var m=MochiKit.Base;
647var _93=m.compare;
648if(arguments.length==1){
649return function(a,b){
650return _93(a[key],b[key]);
651};
652}
653var _94=m.extend(null,arguments);
654return function(a,b){
655var _95=0;
656for(var i=0;(_95===0)&&(i<_94.length);i++){
657var key=_94[i];
658_95=_93(a[key],b[key]);
659}
660return _95;
661};
662},reverseKeyComparator:function(key){
663var _96=MochiKit.Base.keyComparator.apply(this,arguments);
664return function(a,b){
665return _96(b,a);
666};
667},partial:function(_97){
668var m=MochiKit.Base;
669return m.bind.apply(this,m.extend([_97,undefined],arguments,1));
670},listMinMax:function(_98,lst){
671if(lst.length===0){
672return null;
673}
674var cur=lst[0];
675var _100=MochiKit.Base.compare;
676for(var i=1;i<lst.length;i++){
677var o=lst[i];
678if(_100(o,cur)==_98){
679cur=o;
680}
681}
682return cur;
683},objMax:function(){
684return MochiKit.Base.listMinMax(1,arguments);
685},objMin:function(){
686return MochiKit.Base.listMinMax(-1,arguments);
687},findIdentical:function(lst,_101,_102,end){
688if(typeof (end)=="undefined"||end===null){
689end=lst.length;
690}
691for(var i=(_102||0);i<end;i++){
692if(lst[i]===_101){
693return i;
694}
695}
696return -1;
697},findValue:function(lst,_104,_105,end){
698if(typeof (end)=="undefined"||end===null){
699end=lst.length;
700}
701var cmp=MochiKit.Base.compare;
702for(var i=(_105||0);i<end;i++){
703if(cmp(lst[i],_104)===0){
704return i;
705}
706}
707return -1;
708},nodeWalk:function(node,_107){
709var _108=[node];
710var _109=MochiKit.Base.extend;
711while(_108.length){
712var res=_107(_108.shift());
713if(res){
714_109(_108,res);
715}
716}
717},nameFunctions:function(_110){
718var base=_110.NAME;
719if(typeof (base)=="undefined"){
720base="";
721}else{
722base=base+".";
723}
724for(var name in _110){
725var o=_110[name];
726if(typeof (o)=="function"&&typeof (o.NAME)=="undefined"){
727try{
728o.NAME=base+name;
729}
730catch(e){
731}
732}
733}
734},queryString:function(_113,_114){
735if(typeof (MochiKit.DOM)!="undefined"&&arguments.length==1&&(typeof (_113)=="string"||(typeof (_113.nodeType)!="undefined"&&_113.nodeType>0))){
736var kv=MochiKit.DOM.formContents(_113);
737_113=kv[0];
738_114=kv[1];
739}else{
740if(arguments.length==1){
741var o=_113;
742_113=[];
743_114=[];
744for(var k in o){
745var v=o[k];
746if(typeof (v)!="function"){
747_113.push(k);
748_114.push(v);
749}
750}
751}
752}
753var rval=[];
754var len=Math.min(_113.length,_114.length);
755var _118=MochiKit.Base.urlEncode;
756for(var i=0;i<len;i++){
757v=_114[i];
758if(typeof (v)!="undefined"&&v!==null){
759rval.push(_118(_113[i])+"="+_118(v));
760}
761}
762return rval.join("&");
763},parseQueryString:function(_119,_120){
764var _121=_119.replace(/\+/g,"%20").split("&");
765var o={};
766var _122;
767if(typeof (decodeURIComponent)!="undefined"){
768_122=decodeURIComponent;
769}else{
770_122=unescape;
771}
772if(_120){
773for(var i=0;i<_121.length;i++){
774var pair=_121[i].split("=");
775var name=_122(pair[0]);
776var arr=o[name];
777if(!(arr instanceof Array)){
778arr=[];
779o[name]=arr;
780}
781arr.push(_122(pair[1]));
782}
783}else{
784for(i=0;i<_121.length;i++){
785pair=_121[i].split("=");
786o[_122(pair[0])]=_122(pair[1]);
787}
788}
789return o;
790}});
791MochiKit.Base.AdapterRegistry=function(){
792this.pairs=[];
793};
794MochiKit.Base.AdapterRegistry.prototype={register:function(name,_124,wrap,_126){
795if(_126){
796this.pairs.unshift([name,_124,wrap]);
797}else{
798this.pairs.push([name,_124,wrap]);
799}
800},match:function(){
801for(var i=0;i<this.pairs.length;i++){
802var pair=this.pairs[i];
803if(pair[1].apply(this,arguments)){
804return pair[2].apply(this,arguments);
805}
806}
807throw MochiKit.Base.NotFound;
808},unregister:function(name){
809for(var i=0;i<this.pairs.length;i++){
810var pair=this.pairs[i];
811if(pair[0]==name){
812this.pairs.splice(i,1);
813return true;
814}
815}
816return false;
817}};
818MochiKit.Base.EXPORT=["counter","clone","extend","update","updatetree","setdefault","keys","items","NamedError","operator","forwardCall","itemgetter","typeMatcher","isCallable","isUndefined","isUndefinedOrNull","isNull","isEmpty","isNotEmpty","isArrayLike","isDateLike","xmap","map","xfilter","filter","bind","bindMethods","NotFound","AdapterRegistry","registerComparator","compare","registerRepr","repr","objEqual","arrayEqual","concat","keyComparator","reverseKeyComparator","partial","merge","listMinMax","listMax","listMin","objMax","objMin","nodeWalk","zip","urlEncode","queryString","serializeJSON","registerJSON","evalJSON","parseQueryString","findValue","findIdentical","flattenArguments","method"];
819MochiKit.Base.EXPORT_OK=["nameFunctions","comparatorRegistry","reprRegistry","jsonRegistry","compareDateLike","compareArrayLike","reprArrayLike","reprString","reprNumber"];
820MochiKit.Base._exportSymbols=function(_127,_128){
821if(typeof (MochiKit.__export__)=="undefined"){
822MochiKit.__export__=(MochiKit.__compat__||(typeof (JSAN)=="undefined"&&typeof (dojo)=="undefined"));
823}
824if(!MochiKit.__export__){
825return;
826}
827var all=_128.EXPORT_TAGS[":all"];
828for(var i=0;i<all.length;i++){
829_127[all[i]]=_128[all[i]];
830}
831};
832MochiKit.Base.__new__=function(){
833var m=this;
834m.forward=m.forwardCall;
835m.find=m.findValue;
836if(typeof (encodeURIComponent)!="undefined"){
837m.urlEncode=function(_130){
838return encodeURIComponent(_130).replace(/\'/g,"%27");
839};
840}else{
841m.urlEncode=function(_131){
842return escape(_131).replace(/\+/g,"%2B").replace(/\"/g,"%22").rval.replace(/\'/g,"%27");
843};
844}
845m.NamedError=function(name){
846this.message=name;
847this.name=name;
848};
849m.NamedError.prototype=new Error();
850m.update(m.NamedError.prototype,{repr:function(){
851if(this.message&&this.message!=this.name){
852return this.name+"("+m.repr(this.message)+")";
853}else{
854return this.name+"()";
855}
856},toString:m.forwardCall("repr")});
857m.NotFound=new m.NamedError("MochiKit.Base.NotFound");
858m.listMax=m.partial(m.listMinMax,1);
859m.listMin=m.partial(m.listMinMax,-1);
860m.isCallable=m.typeMatcher("function");
861m.isUndefined=m.typeMatcher("undefined");
862m.merge=m.partial(m.update,null);
863m.zip=m.partial(m.map,null);
864m.comparatorRegistry=new m.AdapterRegistry();
865m.registerComparator("dateLike",m.isDateLike,m.compareDateLike);
866m.registerComparator("arrayLike",m.isArrayLike,m.compareArrayLike);
867m.reprRegistry=new m.AdapterRegistry();
868m.registerRepr("arrayLike",m.isArrayLike,m.reprArrayLike);
869m.registerRepr("string",m.typeMatcher("string"),m.reprString);
870m.registerRepr("numbers",m.typeMatcher("number","boolean"),m.reprNumber);
871m.jsonRegistry=new m.AdapterRegistry();
872var all=m.concat(m.EXPORT,m.EXPORT_OK);
873m.EXPORT_TAGS={":common":m.concat(m.EXPORT_OK),":all":all};
874m.nameFunctions(this);
875};
876MochiKit.Base.__new__();
877if(!MochiKit.__compat__){
878compare=MochiKit.Base.compare;
879}
880MochiKit.Base._exportSymbols(this,MochiKit.Base);
881if(typeof (dojo)!="undefined"){
882dojo.provide("MochiKit.Iter");
883dojo.require("MochiKit.Base");
884}
885if(typeof (JSAN)!="undefined"){
886JSAN.use("MochiKit.Base",[]);
887}
888try{
889if(typeof (MochiKit.Base)=="undefined"){
890throw "";
891}
892}
893catch(e){
894throw "MochiKit.Iter depends on MochiKit.Base!";
895}
896if(typeof (MochiKit.Iter)=="undefined"){
897MochiKit.Iter={};
898}
899MochiKit.Iter.NAME="MochiKit.Iter";
900MochiKit.Iter.VERSION="1.3.1";
901MochiKit.Base.update(MochiKit.Iter,{__repr__:function(){
902return "["+this.NAME+" "+this.VERSION+"]";
903},toString:function(){
904return this.__repr__();
905},registerIteratorFactory:function(name,_132,_133,_134){
906MochiKit.Iter.iteratorRegistry.register(name,_132,_133,_134);
907},iter:function(_135,_136){
908var self=MochiKit.Iter;
909if(arguments.length==2){
910return self.takewhile(function(a){
911return a!=_136;
912},_135);
913}
914if(typeof (_135.next)=="function"){
915return _135;
916}else{
917if(typeof (_135.iter)=="function"){
918return _135.iter();
919}
920}
921try{
922return self.iteratorRegistry.match(_135);
923}
924catch(e){
925var m=MochiKit.Base;
926if(e==m.NotFound){
927e=new TypeError(typeof (_135)+": "+m.repr(_135)+" is not iterable");
928}
929throw e;
930}
931},count:function(n){
932if(!n){
933n=0;
934}
935var m=MochiKit.Base;
936return {repr:function(){
937return "count("+n+")";
938},toString:m.forwardCall("repr"),next:m.counter(n)};
939},cycle:function(p){
940var self=MochiKit.Iter;
941var m=MochiKit.Base;
942var lst=[];
943var _139=self.iter(p);
944return {repr:function(){
945return "cycle(...)";
946},toString:m.forwardCall("repr"),next:function(){
947try{
948var rval=_139.next();
949lst.push(rval);
950return rval;
951}
952catch(e){
953if(e!=self.StopIteration){
954throw e;
955}
956if(lst.length===0){
957this.next=function(){
958throw self.StopIteration;
959};
960}else{
961var i=-1;
962this.next=function(){
963i=(i+1)%lst.length;
964return lst[i];
965};
966}
967return this.next();
968}
969}};
970},repeat:function(elem,n){
971var m=MochiKit.Base;
972if(typeof (n)=="undefined"){
973return {repr:function(){
974return "repeat("+m.repr(elem)+")";
975},toString:m.forwardCall("repr"),next:function(){
976return elem;
977}};
978}
979return {repr:function(){
980return "repeat("+m.repr(elem)+", "+n+")";
981},toString:m.forwardCall("repr"),next:function(){
982if(n<=0){
983throw MochiKit.Iter.StopIteration;
984}
985n-=1;
986return elem;
987}};
988},next:function(_141){
989return _141.next();
990},izip:function(p,q){
991var m=MochiKit.Base;
992var next=MochiKit.Iter.next;
993var _144=m.map(iter,arguments);
994return {repr:function(){
995return "izip(...)";
996},toString:m.forwardCall("repr"),next:function(){
997return m.map(next,_144);
998}};
999},ifilter:function(pred,seq){
1000var m=MochiKit.Base;
1001seq=MochiKit.Iter.iter(seq);
1002if(pred===null){
1003pred=m.operator.truth;
1004}
1005return {repr:function(){
1006return "ifilter(...)";
1007},toString:m.forwardCall("repr"),next:function(){
1008while(true){
1009var rval=seq.next();
1010if(pred(rval)){
1011return rval;
1012}
1013}
1014return undefined;
1015}};
1016},ifilterfalse:function(pred,seq){
1017var m=MochiKit.Base;
1018seq=MochiKit.Iter.iter(seq);
1019if(pred===null){
1020pred=m.operator.truth;
1021}
1022return {repr:function(){
1023return "ifilterfalse(...)";
1024},toString:m.forwardCall("repr"),next:function(){
1025while(true){
1026var rval=seq.next();
1027if(!pred(rval)){
1028return rval;
1029}
1030}
1031return undefined;
1032}};
1033},islice:function(seq){
1034var self=MochiKit.Iter;
1035var m=MochiKit.Base;
1036seq=self.iter(seq);
1037var _147=0;
1038var stop=0;
1039var step=1;
1040var i=-1;
1041if(arguments.length==2){
1042stop=arguments[1];
1043}else{
1044if(arguments.length==3){
1045_147=arguments[1];
1046stop=arguments[2];
1047}else{
1048_147=arguments[1];
1049stop=arguments[2];
1050step=arguments[3];
1051}
1052}
1053return {repr:function(){
1054return "islice("+["...",_147,stop,step].join(", ")+")";
1055},toString:m.forwardCall("repr"),next:function(){
1056var rval;
1057while(i<_147){
1058rval=seq.next();
1059i++;
1060}
1061if(_147>=stop){
1062throw self.StopIteration;
1063}
1064_147+=step;
1065return rval;
1066}};
1067},imap:function(fun,p,q){
1068var m=MochiKit.Base;
1069var self=MochiKit.Iter;
1070var _151=m.map(self.iter,m.extend(null,arguments,1));
1071var map=m.map;
1072var next=self.next;
1073return {repr:function(){
1074return "imap(...)";
1075},toString:m.forwardCall("repr"),next:function(){
1076return fun.apply(this,map(next,_151));
1077}};
1078},applymap:function(fun,seq,self){
1079seq=MochiKit.Iter.iter(seq);
1080var m=MochiKit.Base;
1081return {repr:function(){
1082return "applymap(...)";
1083},toString:m.forwardCall("repr"),next:function(){
1084return fun.apply(self,seq.next());
1085}};
1086},chain:function(p,q){
1087var self=MochiKit.Iter;
1088var m=MochiKit.Base;
1089if(arguments.length==1){
1090return self.iter(arguments[0]);
1091}
1092var _153=m.map(self.iter,arguments);
1093return {repr:function(){
1094return "chain(...)";
1095},toString:m.forwardCall("repr"),next:function(){
1096while(_153.length>1){
1097try{
1098return _153[0].next();
1099}
1100catch(e){
1101if(e!=self.StopIteration){
1102throw e;
1103}
1104_153.shift();
1105}
1106}
1107if(_153.length==1){
1108var arg=_153.shift();
1109this.next=m.bind("next",arg);
1110return this.next();
1111}
1112throw self.StopIteration;
1113}};
1114},takewhile:function(pred,seq){
1115var self=MochiKit.Iter;
1116seq=self.iter(seq);
1117return {repr:function(){
1118return "takewhile(...)";
1119},toString:MochiKit.Base.forwardCall("repr"),next:function(){
1120var rval=seq.next();
1121if(!pred(rval)){
1122this.next=function(){
1123throw self.StopIteration;
1124};
1125this.next();
1126}
1127return rval;
1128}};
1129},dropwhile:function(pred,seq){
1130seq=MochiKit.Iter.iter(seq);
1131var m=MochiKit.Base;
1132var bind=m.bind;
1133return {"repr":function(){
1134return "dropwhile(...)";
1135},"toString":m.forwardCall("repr"),"next":function(){
1136while(true){
1137var rval=seq.next();
1138if(!pred(rval)){
1139break;
1140}
1141}
1142this.next=bind("next",seq);
1143return rval;
1144}};
1145},_tee:function(_155,sync,_157){
1146sync.pos[_155]=-1;
1147var m=MochiKit.Base;
1148var _158=m.listMin;
1149return {repr:function(){
1150return "tee("+_155+", ...)";
1151},toString:m.forwardCall("repr"),next:function(){
1152var rval;
1153var i=sync.pos[_155];
1154if(i==sync.max){
1155rval=_157.next();
1156sync.deque.push(rval);
1157sync.max+=1;
1158sync.pos[_155]+=1;
1159}else{
1160rval=sync.deque[i-sync.min];
1161sync.pos[_155]+=1;
1162if(i==sync.min&&_158(sync.pos)!=sync.min){
1163sync.min+=1;
1164sync.deque.shift();
1165}
1166}
1167return rval;
1168}};
1169},tee:function(_159,n){
1170var rval=[];
1171var sync={"pos":[],"deque":[],"max":-1,"min":-1};
1172if(arguments.length==1){
1173n=2;
1174}
1175var self=MochiKit.Iter;
1176_159=self.iter(_159);
1177var _tee=self._tee;
1178for(var i=0;i<n;i++){
1179rval.push(_tee(i,sync,_159));
1180}
1181return rval;
1182},list:function(_161){
1183var m=MochiKit.Base;
1184if(typeof (_161.slice)=="function"){
1185return _161.slice();
1186}else{
1187if(m.isArrayLike(_161)){
1188return m.concat(_161);
1189}
1190}
1191var self=MochiKit.Iter;
1192_161=self.iter(_161);
1193var rval=[];
1194try{
1195while(true){
1196rval.push(_161.next());
1197}
1198}
1199catch(e){
1200if(e!=self.StopIteration){
1201throw e;
1202}
1203return rval;
1204}
1205return undefined;
1206},reduce:function(fn,_162,_163){
1207var i=0;
1208var x=_163;
1209var self=MochiKit.Iter;
1210_162=self.iter(_162);
1211if(arguments.length<3){
1212try{
1213x=_162.next();
1214}
1215catch(e){
1216if(e==self.StopIteration){
1217e=new TypeError("reduce() of empty sequence with no initial value");
1218}
1219throw e;
1220}
1221i++;
1222}
1223try{
1224while(true){
1225x=fn(x,_162.next());
1226}
1227}
1228catch(e){
1229if(e!=self.StopIteration){
1230throw e;
1231}
1232}
1233return x;
1234},range:function(){
1235var _165=0;
1236var stop=0;
1237var step=1;
1238if(arguments.length==1){
1239stop=arguments[0];
1240}else{
1241if(arguments.length==2){
1242_165=arguments[0];
1243stop=arguments[1];
1244}else{
1245if(arguments.length==3){
1246_165=arguments[0];
1247stop=arguments[1];
1248step=arguments[2];
1249}else{
1250throw new TypeError("range() takes 1, 2, or 3 arguments!");
1251}
1252}
1253}
1254if(step===0){
1255throw new TypeError("range() step must not be 0");
1256}
1257return {next:function(){
1258if((step>0&&_165>=stop)||(step<0&&_165<=stop)){
1259throw MochiKit.Iter.StopIteration;
1260}
1261var rval=_165;
1262_165+=step;
1263return rval;
1264},repr:function(){
1265return "range("+[_165,stop,step].join(", ")+")";
1266},toString:MochiKit.Base.forwardCall("repr")};
1267},sum:function(_166,_167){
1268var x=_167||0;
1269var self=MochiKit.Iter;
1270_166=self.iter(_166);
1271try{
1272while(true){
1273x+=_166.next();
1274}
1275}
1276catch(e){
1277if(e!=self.StopIteration){
1278throw e;
1279}
1280}
1281return x;
1282},exhaust:function(_168){
1283var self=MochiKit.Iter;
1284_168=self.iter(_168);
1285try{
1286while(true){
1287_168.next();
1288}
1289}
1290catch(e){
1291if(e!=self.StopIteration){
1292throw e;
1293}
1294}
1295},forEach:function(_169,func,self){
1296var m=MochiKit.Base;
1297if(arguments.length>2){
1298func=m.bind(func,self);
1299}
1300if(m.isArrayLike(_169)){
1301try{
1302for(var i=0;i<_169.length;i++){
1303func(_169[i]);
1304}
1305}
1306catch(e){
1307if(e!=MochiKit.Iter.StopIteration){
1308throw e;
1309}
1310}
1311}else{
1312self=MochiKit.Iter;
1313self.exhaust(self.imap(func,_169));
1314}
1315},every:function(_171,func){
1316var self=MochiKit.Iter;
1317try{
1318self.ifilterfalse(func,_171).next();
1319return false;
1320}
1321catch(e){
1322if(e!=self.StopIteration){
1323throw e;
1324}
1325return true;
1326}
1327},sorted:function(_172,cmp){
1328var rval=MochiKit.Iter.list(_172);
1329if(arguments.length==1){
1330cmp=MochiKit.Base.compare;
1331}
1332rval.sort(cmp);
1333return rval;
1334},reversed:function(_173){
1335var rval=MochiKit.Iter.list(_173);
1336rval.reverse();
1337return rval;
1338},some:function(_174,func){
1339var self=MochiKit.Iter;
1340try{
1341self.ifilter(func,_174).next();
1342return true;
1343}
1344catch(e){
1345if(e!=self.StopIteration){
1346throw e;
1347}
1348return false;
1349}
1350},iextend:function(lst,_175){
1351if(MochiKit.Base.isArrayLike(_175)){
1352for(var i=0;i<_175.length;i++){
1353lst.push(_175[i]);
1354}
1355}else{
1356var self=MochiKit.Iter;
1357_175=self.iter(_175);
1358try{
1359while(true){
1360lst.push(_175.next());
1361}
1362}
1363catch(e){
1364if(e!=self.StopIteration){
1365throw e;
1366}
1367}
1368}
1369return lst;
1370},groupby:function(_176,_177){
1371var m=MochiKit.Base;
1372var self=MochiKit.Iter;
1373if(arguments.length<2){
1374_177=m.operator.identity;
1375}
1376_176=self.iter(_176);
1377var pk=undefined;
1378var k=undefined;
1379var v;
1380function fetch(){
1381v=_176.next();
1382k=_177(v);
1383}
1384function eat(){
1385var ret=v;
1386v=undefined;
1387return ret;
1388}
1389var _180=true;
1390return {repr:function(){
1391return "groupby(...)";
1392},next:function(){
1393while(k==pk){
1394fetch();
1395if(_180){
1396_180=false;
1397break;
1398}
1399}
1400pk=k;
1401return [k,{next:function(){
1402if(v==undefined){
1403fetch();
1404}
1405if(k!=pk){
1406throw self.StopIteration;
1407}
1408return eat();
1409}}];
1410}};
1411},groupby_as_array:function(_181,_182){
1412var m=MochiKit.Base;
1413var self=MochiKit.Iter;
1414if(arguments.length<2){
1415_182=m.operator.identity;
1416}
1417_181=self.iter(_181);
1418var _183=[];
1419var _184=true;
1420var _185;
1421while(true){
1422try{
1423var _186=_181.next();
1424var key=_182(_186);
1425}
1426catch(e){
1427if(e==self.StopIteration){
1428break;
1429}
1430throw e;
1431}
1432if(_184||key!=_185){
1433var _187=[];
1434_183.push([key,_187]);
1435}
1436_187.push(_186);
1437_184=false;
1438_185=key;
1439}
1440return _183;
1441},arrayLikeIter:function(_188){
1442var i=0;
1443return {repr:function(){
1444return "arrayLikeIter(...)";
1445},toString:MochiKit.Base.forwardCall("repr"),next:function(){
1446if(i>=_188.length){
1447throw MochiKit.Iter.StopIteration;
1448}
1449return _188[i++];
1450}};
1451},hasIterateNext:function(_189){
1452return (_189&&typeof (_189.iterateNext)=="function");
1453},iterateNextIter:function(_190){
1454return {repr:function(){
1455return "iterateNextIter(...)";
1456},toString:MochiKit.Base.forwardCall("repr"),next:function(){
1457var rval=_190.iterateNext();
1458if(rval===null||rval===undefined){
1459throw MochiKit.Iter.StopIteration;
1460}
1461return rval;
1462}};
1463}});
1464MochiKit.Iter.EXPORT_OK=["iteratorRegistry","arrayLikeIter","hasIterateNext","iterateNextIter",];
1465MochiKit.Iter.EXPORT=["StopIteration","registerIteratorFactory","iter","count","cycle","repeat","next","izip","ifilter","ifilterfalse","islice","imap","applymap","chain","takewhile","dropwhile","tee","list","reduce","range","sum","exhaust","forEach","every","sorted","reversed","some","iextend","groupby","groupby_as_array"];
1466MochiKit.Iter.__new__=function(){
1467var m=MochiKit.Base;
1468this.StopIteration=new m.NamedError("StopIteration");
1469this.iteratorRegistry=new m.AdapterRegistry();
1470this.registerIteratorFactory("arrayLike",m.isArrayLike,this.arrayLikeIter);
1471this.registerIteratorFactory("iterateNext",this.hasIterateNext,this.iterateNextIter);
1472this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
1473m.nameFunctions(this);
1474};
1475MochiKit.Iter.__new__();
1476if(!MochiKit.__compat__){
1477reduce=MochiKit.Iter.reduce;
1478}
1479MochiKit.Base._exportSymbols(this,MochiKit.Iter);
1480if(typeof (dojo)!="undefined"){
1481dojo.provide("MochiKit.Logging");
1482dojo.require("MochiKit.Base");
1483}
1484if(typeof (JSAN)!="undefined"){
1485JSAN.use("MochiKit.Base",[]);
1486}
1487try{
1488if(typeof (MochiKit.Base)=="undefined"){
1489throw "";
1490}
1491}
1492catch(e){
1493throw "MochiKit.Logging depends on MochiKit.Base!";
1494}
1495if(typeof (MochiKit.Logging)=="undefined"){
1496MochiKit.Logging={};
1497}
1498MochiKit.Logging.NAME="MochiKit.Logging";
1499MochiKit.Logging.VERSION="1.3.1";
1500MochiKit.Logging.__repr__=function(){
1501return "["+this.NAME+" "+this.VERSION+"]";
1502};
1503MochiKit.Logging.toString=function(){
1504return this.__repr__();
1505};
1506MochiKit.Logging.EXPORT=["LogLevel","LogMessage","Logger","alertListener","logger","log","logError","logDebug","logFatal","logWarning"];
1507MochiKit.Logging.EXPORT_OK=["logLevelAtLeast","isLogMessage","compareLogMessage"];
1508MochiKit.Logging.LogMessage=function(num,_192,info){
1509this.num=num;
1510this.level=_192;
1511this.info=info;
1512this.timestamp=new Date();
1513};
1514MochiKit.Logging.LogMessage.prototype={repr:function(){
1515var m=MochiKit.Base;
1516return "LogMessage("+m.map(m.repr,[this.num,this.level,this.info]).join(", ")+")";
1517},toString:MochiKit.Base.forwardCall("repr")};
1518MochiKit.Base.update(MochiKit.Logging,{logLevelAtLeast:function(_194){
1519var self=MochiKit.Logging;
1520if(typeof (_194)=="string"){
1521_194=self.LogLevel[_194];
1522}
1523return function(msg){
1524var _196=msg.level;
1525if(typeof (_196)=="string"){
1526_196=self.LogLevel[_196];
1527}
1528return _196>=_194;
1529};
1530},isLogMessage:function(){
1531var _197=MochiKit.Logging.LogMessage;
1532for(var i=0;i<arguments.length;i++){
1533if(!(arguments[i] instanceof _197)){
1534return false;
1535}
1536}
1537return true;
1538},compareLogMessage:function(a,b){
1539return MochiKit.Base.compare([a.level,a.info],[b.level,b.info]);
1540},alertListener:function(msg){
1541alert("num: "+msg.num+"\nlevel: "+msg.level+"\ninfo: "+msg.info.join(" "));
1542}});
1543MochiKit.Logging.Logger=function(_198){
1544this.counter=0;
1545if(typeof (_198)=="undefined"||_198===null){
1546_198=-1;
1547}
1548this.maxSize=_198;
1549this._messages=[];
1550this.listeners={};
1551this.useNativeConsole=false;
1552};
1553MochiKit.Logging.Logger.prototype={clear:function(){
1554this._messages.splice(0,this._messages.length);
1555},logToConsole:function(msg){
1556if(typeof (window)!="undefined"&&window.console&&window.console.log){
1557window.console.log(msg);
1558}else{
1559if(typeof (opera)!="undefined"&&opera.postError){
1560opera.postError(msg);
1561}else{
1562if(typeof (printfire)=="function"){
1563printfire(msg);
1564}
1565}
1566}
1567},dispatchListeners:function(msg){
1568for(var k in this.listeners){
1569var pair=this.listeners[k];
1570if(pair.ident!=k||(pair[0]&&!pair[0](msg))){
1571continue;
1572}
1573pair[1](msg);
1574}
1575},addListener:function(_199,_200,_201){
1576if(typeof (_200)=="string"){
1577_200=MochiKit.Logging.logLevelAtLeast(_200);
1578}
1579var _202=[_200,_201];
1580_202.ident=_199;
1581this.listeners[_199]=_202;
1582},removeListener:function(_203){
1583delete this.listeners[_203];
1584},baseLog:function(_204,_205){
1585var msg=new MochiKit.Logging.LogMessage(this.counter,_204,MochiKit.Base.extend(null,arguments,1));
1586this._messages.push(msg);
1587this.dispatchListeners(msg);
1588if(this.useNativeConsole){
1589this.logToConsole(msg.level+": "+msg.info.join(" "));
1590}
1591this.counter+=1;
1592while(this.maxSize>=0&&this._messages.length>this.maxSize){
1593this._messages.shift();
1594}
1595},getMessages:function(_206){
1596var _207=0;
1597if(!(typeof (_206)=="undefined"||_206===null)){
1598_207=Math.max(0,this._messages.length-_206);
1599}
1600return this._messages.slice(_207);
1601},getMessageText:function(_208){
1602if(typeof (_208)=="undefined"||_208===null){
1603_208=30;
1604}
1605var _209=this.getMessages(_208);
1606if(_209.length){
1607var lst=map(function(m){
1608return "\n  ["+m.num+"] "+m.level+": "+m.info.join(" ");
1609},_209);
1610lst.unshift("LAST "+_209.length+" MESSAGES:");
1611return lst.join("");
1612}
1613return "";
1614},debuggingBookmarklet:function(_210){
1615if(typeof (MochiKit.LoggingPane)=="undefined"){
1616alert(this.getMessageText());
1617}else{
1618MochiKit.LoggingPane.createLoggingPane(_210||false);
1619}
1620}};
1621MochiKit.Logging.__new__=function(){
1622this.LogLevel={ERROR:40,FATAL:50,WARNING:30,INFO:20,DEBUG:10};
1623var m=MochiKit.Base;
1624m.registerComparator("LogMessage",this.isLogMessage,this.compareLogMessage);
1625var _211=m.partial;
1626var _212=this.Logger;
1627var _213=_212.prototype.baseLog;
1628m.update(this.Logger.prototype,{debug:_211(_213,"DEBUG"),log:_211(_213,"INFO"),error:_211(_213,"ERROR"),fatal:_211(_213,"FATAL"),warning:_211(_213,"WARNING")});
1629var self=this;
1630var _214=function(name){
1631return function(){
1632self.logger[name].apply(self.logger,arguments);
1633};
1634};
1635this.log=_214("log");
1636this.logError=_214("error");
1637this.logDebug=_214("debug");
1638this.logFatal=_214("fatal");
1639this.logWarning=_214("warning");
1640this.logger=new _212();
1641this.logger.useNativeConsole=true;
1642this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
1643m.nameFunctions(this);
1644};
1645if(typeof (printfire)=="undefined"&&typeof (document)!="undefined"&&document.createEvent&&typeof (dispatchEvent)!="undefined"){
1646printfire=function(){
1647printfire.args=arguments;
1648var ev=document.createEvent("Events");
1649ev.initEvent("printfire",false,true);
1650dispatchEvent(ev);
1651};
1652}
1653MochiKit.Logging.__new__();
1654MochiKit.Base._exportSymbols(this,MochiKit.Logging);
1655if(typeof (dojo)!="undefined"){
1656dojo.provide("MochiKit.DateTime");
1657}
1658if(typeof (MochiKit)=="undefined"){
1659MochiKit={};
1660}
1661if(typeof (MochiKit.DateTime)=="undefined"){
1662MochiKit.DateTime={};
1663}
1664MochiKit.DateTime.NAME="MochiKit.DateTime";
1665MochiKit.DateTime.VERSION="1.3.1";
1666MochiKit.DateTime.__repr__=function(){
1667return "["+this.NAME+" "+this.VERSION+"]";
1668};
1669MochiKit.DateTime.toString=function(){
1670return this.__repr__();
1671};
1672MochiKit.DateTime.isoDate=function(str){
1673str=str+"";
1674if(typeof (str)!="string"||str.length===0){
1675return null;
1676}
1677var iso=str.split("-");
1678if(iso.length===0){
1679return null;
1680}
1681return new Date(iso[0],iso[1]-1,iso[2]);
1682};
1683MochiKit.DateTime._isoRegexp=/(\d{4,})(?:-(\d{1,2})(?:-(\d{1,2})(?:[T ](\d{1,2}):(\d{1,2})(?::(\d{1,2})(?:\.(\d+))?)?(?:(Z)|([+-])(\d{1,2})(?::(\d{1,2}))?)?)?)?)?/;
1684MochiKit.DateTime.isoTimestamp=function(str){
1685str=str+"";
1686if(typeof (str)!="string"||str.length===0){
1687return null;
1688}
1689var res=str.match(MochiKit.DateTime._isoRegexp);
1690if(typeof (res)=="undefined"||res===null){
1691return null;
1692}
1693var year,month,day,hour,min,sec,msec;
1694year=parseInt(res[1],10);
1695if(typeof (res[2])=="undefined"||res[2]===""){
1696return new Date(year);
1697}
1698month=parseInt(res[2],10)-1;
1699day=parseInt(res[3],10);
1700if(typeof (res[4])=="undefined"||res[4]===""){
1701return new Date(year,month,day);
1702}
1703hour=parseInt(res[4],10);
1704min=parseInt(res[5],10);
1705sec=(typeof (res[6])!="undefined"&&res[6]!=="")?parseInt(res[6],10):0;
1706if(typeof (res[7])!="undefined"&&res[7]!==""){
1707msec=Math.round(1000*parseFloat("0."+res[7]));
1708}else{
1709msec=0;
1710}
1711if((typeof (res[8])=="undefined"||res[8]==="")&&(typeof (res[9])=="undefined"||res[9]==="")){
1712return new Date(year,month,day,hour,min,sec,msec);
1713}
1714var ofs;
1715if(typeof (res[9])!="undefined"&&res[9]!==""){
1716ofs=parseInt(res[10],10)*3600000;
1717if(typeof (res[11])!="undefined"&&res[11]!==""){
1718ofs+=parseInt(res[11],10)*60000;
1719}
1720if(res[9]=="-"){
1721ofs=-ofs;
1722}
1723}else{
1724ofs=0;
1725}
1726return new Date(Date.UTC(year,month,day,hour,min,sec,msec)-ofs);
1727};
1728MochiKit.DateTime.toISOTime=function(date,_221){
1729if(typeof (date)=="undefined"||date===null){
1730return null;
1731}
1732var hh=date.getHours();
1733var mm=date.getMinutes();
1734var ss=date.getSeconds();
1735var lst=[((_221&&(hh<10))?"0"+hh:hh),((mm<10)?"0"+mm:mm),((ss<10)?"0"+ss:ss)];
1736return lst.join(":");
1737};
1738MochiKit.DateTime.toISOTimestamp=function(date,_225){
1739if(typeof (date)=="undefined"||date===null){
1740return null;
1741}
1742var sep=_225?"T":" ";
1743var foot=_225?"Z":"";
1744if(_225){
1745date=new Date(date.getTime()+(date.getTimezoneOffset()*60000));
1746}
1747return MochiKit.DateTime.toISODate(date)+sep+MochiKit.DateTime.toISOTime(date,_225)+foot;
1748};
1749MochiKit.DateTime.toISODate=function(date){
1750if(typeof (date)=="undefined"||date===null){
1751return null;
1752}
1753var _228=MochiKit.DateTime._padTwo;
1754return [date.getFullYear(),_228(date.getMonth()+1),_228(date.getDate())].join("-");
1755};
1756MochiKit.DateTime.americanDate=function(d){
1757d=d+"";
1758if(typeof (d)!="string"||d.length===0){
1759return null;
1760}
1761var a=d.split("/");
1762return new Date(a[2],a[0]-1,a[1]);
1763};
1764MochiKit.DateTime._padTwo=function(n){
1765return (n>9)?n:"0"+n;
1766};
1767MochiKit.DateTime.toPaddedAmericanDate=function(d){
1768if(typeof (d)=="undefined"||d===null){
1769return null;
1770}
1771var _230=MochiKit.DateTime._padTwo;
1772return [_230(d.getMonth()+1),_230(d.getDate()),d.getFullYear()].join("/");
1773};
1774MochiKit.DateTime.toAmericanDate=function(d){
1775if(typeof (d)=="undefined"||d===null){
1776return null;
1777}
1778return [d.getMonth()+1,d.getDate(),d.getFullYear()].join("/");
1779};
1780MochiKit.DateTime.EXPORT=["isoDate","isoTimestamp","toISOTime","toISOTimestamp","toISODate","americanDate","toPaddedAmericanDate","toAmericanDate"];
1781MochiKit.DateTime.EXPORT_OK=[];
1782MochiKit.DateTime.EXPORT_TAGS={":common":MochiKit.DateTime.EXPORT,":all":MochiKit.DateTime.EXPORT};
1783MochiKit.DateTime.__new__=function(){
1784var base=this.NAME+".";
1785for(var k in this){
1786var o=this[k];
1787if(typeof (o)=="function"&&typeof (o.NAME)=="undefined"){
1788try{
1789o.NAME=base+k;
1790}
1791catch(e){
1792}
1793}
1794}
1795};
1796MochiKit.DateTime.__new__();
1797if(typeof (MochiKit.Base)!="undefined"){
1798MochiKit.Base._exportSymbols(this,MochiKit.DateTime);
1799}else{
1800(function(_231,_232){
1801if((typeof (JSAN)=="undefined"&&typeof (dojo)=="undefined")||(typeof (MochiKit.__compat__)=="boolean"&&MochiKit.__compat__)){
1802var all=_232.EXPORT_TAGS[":all"];
1803for(var i=0;i<all.length;i++){
1804_231[all[i]]=_232[all[i]];
1805}
1806}
1807})(this,MochiKit.DateTime);
1808}
1809if(typeof (dojo)!="undefined"){
1810dojo.provide("MochiKit.Format");
1811}
1812if(typeof (MochiKit)=="undefined"){
1813MochiKit={};
1814}
1815if(typeof (MochiKit.Format)=="undefined"){
1816MochiKit.Format={};
1817}
1818MochiKit.Format.NAME="MochiKit.Format";
1819MochiKit.Format.VERSION="1.3.1";
1820MochiKit.Format.__repr__=function(){
1821return "["+this.NAME+" "+this.VERSION+"]";
1822};
1823MochiKit.Format.toString=function(){
1824return this.__repr__();
1825};
1826MochiKit.Format._numberFormatter=function(_233,_234,_235,_236,_237,_238,_239,_240,_241){
1827return function(num){
1828num=parseFloat(num);
1829if(typeof (num)=="undefined"||num===null||isNaN(num)){
1830return _233;
1831}
1832var _242=_234;
1833var _243=_235;
1834if(num<0){
1835num=-num;
1836}else{
1837_242=_242.replace(/-/,"");
1838}
1839var me=arguments.callee;
1840var fmt=MochiKit.Format.formatLocale(_236);
1841if(_237){
1842num=num*100;
1843_243=fmt.percent+_243;
1844}
1845num=MochiKit.Format.roundToFixed(num,_238);
1846var _245=num.split(/\./);
1847var _246=_245[0];
1848var frac=(_245.length==1)?"":_245[1];
1849var res="";
1850while(_246.length<_239){
1851_246="0"+_246;
1852}
1853if(_240){
1854while(_246.length>_240){
1855var i=_246.length-_240;
1856res=fmt.separator+_246.substring(i,_246.length)+res;
1857_246=_246.substring(0,i);
1858}
1859}
1860res=_246+res;
1861if(_238>0){
1862while(frac.length<_241){
1863frac=frac+"0";
1864}
1865res=res+fmt.decimal+frac;
1866}
1867return _242+res+_243;
1868};
1869};
1870MochiKit.Format.numberFormatter=function(_248,_249,_250){
1871if(typeof (_249)=="undefined"){
1872_249="";
1873}
1874var _251=_248.match(/((?:[0#]+,)?[0#]+)(?:\.([0#]+))?(%)?/);
1875if(!_251){
1876throw TypeError("Invalid pattern");
1877}
1878var _252=_248.substr(0,_251.index);
1879var _253=_248.substr(_251.index+_251[0].length);
1880if(_252.search(/-/)==-1){
1881_252=_252+"-";
1882}
1883var _254=_251[1];
1884var frac=(typeof (_251[2])=="string"&&_251[2]!="")?_251[2]:"";
1885var _255=(typeof (_251[3])=="string"&&_251[3]!="");
1886var tmp=_254.split(/,/);
1887var _257;
1888if(typeof (_250)=="undefined"){
1889_250="default";
1890}
1891if(tmp.length==1){
1892_257=null;
1893}else{
1894_257=tmp[1].length;
1895}
1896var _258=_254.length-_254.replace(/0/g,"").length;
1897var _259=frac.length-frac.replace(/0/g,"").length;
1898var _260=frac.length;
1899var rval=MochiKit.Format._numberFormatter(_249,_252,_253,_250,_255,_260,_258,_257,_259);
1900var m=MochiKit.Base;
1901if(m){
1902var fn=arguments.callee;
1903var args=m.concat(arguments);
1904rval.repr=function(){
1905return [self.NAME,"(",map(m.repr,args).join(", "),")"].join("");
1906};
1907}
1908return rval;
1909};
1910MochiKit.Format.formatLocale=function(_262){
1911if(typeof (_262)=="undefined"||_262===null){
1912_262="default";
1913}
1914if(typeof (_262)=="string"){
1915var rval=MochiKit.Format.LOCALE[_262];
1916if(typeof (rval)=="string"){
1917rval=arguments.callee(rval);
1918MochiKit.Format.LOCALE[_262]=rval;
1919}
1920return rval;
1921}else{
1922return _262;
1923}
1924};
1925MochiKit.Format.twoDigitAverage=function(_263,_264){
1926if(_264){
1927var res=_263/_264;
1928if(!isNaN(res)){
1929return MochiKit.Format.twoDigitFloat(_263/_264);
1930}
1931}
1932return "0";
1933};
1934MochiKit.Format.twoDigitFloat=function(_265){
1935var sign=(_265<0?"-":"");
1936var s=Math.floor(Math.abs(_265)*100).toString();
1937if(s=="0"){
1938return s;
1939}
1940if(s.length<3){
1941while(s.charAt(s.length-1)=="0"){
1942s=s.substring(0,s.length-1);
1943}
1944return sign+"0."+s;
1945}
1946var head=sign+s.substring(0,s.length-2);
1947var tail=s.substring(s.length-2,s.length);
1948if(tail=="00"){
1949return head;
1950}else{
1951if(tail.charAt(1)=="0"){
1952return head+"."+tail.charAt(0);
1953}else{
1954return head+"."+tail;
1955}
1956}
1957};
1958MochiKit.Format.lstrip=function(str,_270){
1959str=str+"";
1960if(typeof (str)!="string"){
1961return null;
1962}
1963if(!_270){
1964return str.replace(/^\s+/,"");
1965}else{
1966return str.replace(new RegExp("^["+_270+"]+"),"");
1967}
1968};
1969MochiKit.Format.rstrip=function(str,_271){
1970str=str+"";
1971if(typeof (str)!="string"){
1972return null;
1973}
1974if(!_271){
1975return str.replace(/\s+$/,"");
1976}else{
1977return str.replace(new RegExp("["+_271+"]+$"),"");
1978}
1979};
1980MochiKit.Format.strip=function(str,_272){
1981var self=MochiKit.Format;
1982return self.rstrip(self.lstrip(str,_272),_272);
1983};
1984MochiKit.Format.truncToFixed=function(_273,_274){
1985_273=Math.floor(_273*Math.pow(10,_274));
1986var res=(_273*Math.pow(10,-_274)).toFixed(_274);
1987if(res.charAt(0)=="."){
1988res="0"+res;
1989}
1990return res;
1991};
1992MochiKit.Format.roundToFixed=function(_275,_276){
1993return MochiKit.Format.truncToFixed(_275+0.5*Math.pow(10,-_276),_276);
1994};
1995MochiKit.Format.percentFormat=function(_277){
1996return MochiKit.Format.twoDigitFloat(100*_277)+"%";
1997};
1998MochiKit.Format.EXPORT=["truncToFixed","roundToFixed","numberFormatter","formatLocale","twoDigitAverage","twoDigitFloat","percentFormat","lstrip","rstrip","strip"];
1999MochiKit.Format.LOCALE={en_US:{separator:",",decimal:".",percent:"%"},de_DE:{separator:".",decimal:",",percent:"%"},fr_FR:{separator:" ",decimal:",",percent:"%"},"default":"en_US"};
2000MochiKit.Format.EXPORT_OK=[];
2001MochiKit.Format.EXPORT_TAGS={":all":MochiKit.Format.EXPORT,":common":MochiKit.Format.EXPORT};
2002MochiKit.Format.__new__=function(){
2003var base=this.NAME+".";
2004var k,v,o;
2005for(k in this.LOCALE){
2006o=this.LOCALE[k];
2007if(typeof (o)=="object"){
2008o.repr=function(){
2009return this.NAME;
2010};
2011o.NAME=base+"LOCALE."+k;
2012}
2013}
2014for(k in this){
2015o=this[k];
2016if(typeof (o)=="function"&&typeof (o.NAME)=="undefined"){
2017try{
2018o.NAME=base+k;
2019}
2020catch(e){
2021}
2022}
2023}
2024};
2025MochiKit.Format.__new__();
2026if(typeof (MochiKit.Base)!="undefined"){
2027MochiKit.Base._exportSymbols(this,MochiKit.Format);
2028}else{
2029(function(_278,_279){
2030if((typeof (JSAN)=="undefined"&&typeof (dojo)=="undefined")||(typeof (MochiKit.__compat__)=="boolean"&&MochiKit.__compat__)){
2031var all=_279.EXPORT_TAGS[":all"];
2032for(var i=0;i<all.length;i++){
2033_278[all[i]]=_279[all[i]];
2034}
2035}
2036})(this,MochiKit.Format);
2037}
2038if(typeof (dojo)!="undefined"){
2039dojo.provide("MochiKit.Async");
2040dojo.require("MochiKit.Base");
2041}
2042if(typeof (JSAN)!="undefined"){
2043JSAN.use("MochiKit.Base",[]);
2044}
2045try{
2046if(typeof (MochiKit.Base)=="undefined"){
2047throw "";
2048}
2049}
2050catch(e){
2051throw "MochiKit.Async depends on MochiKit.Base!";
2052}
2053if(typeof (MochiKit.Async)=="undefined"){
2054MochiKit.Async={};
2055}
2056MochiKit.Async.NAME="MochiKit.Async";
2057MochiKit.Async.VERSION="1.3.1";
2058MochiKit.Async.__repr__=function(){
2059return "["+this.NAME+" "+this.VERSION+"]";
2060};
2061MochiKit.Async.toString=function(){
2062return this.__repr__();
2063};
2064MochiKit.Async.Deferred=function(_280){
2065this.chain=[];
2066this.id=this._nextId();
2067this.fired=-1;
2068this.paused=0;
2069this.results=[null,null];
2070this.canceller=_280;
2071this.silentlyCancelled=false;
2072this.chained=false;
2073};
2074MochiKit.Async.Deferred.prototype={repr:function(){
2075var _281;
2076if(this.fired==-1){
2077_281="unfired";
2078}else{
2079if(this.fired===0){
2080_281="success";
2081}else{
2082_281="error";
2083}
2084}
2085return "Deferred("+this.id+", "+_281+")";
2086},toString:MochiKit.Base.forwardCall("repr"),_nextId:MochiKit.Base.counter(),cancel:function(){
2087var self=MochiKit.Async;
2088if(this.fired==-1){
2089if(this.canceller){
2090this.canceller(this);
2091}else{
2092this.silentlyCancelled=true;
2093}
2094if(this.fired==-1){
2095this.errback(new self.CancelledError(this));
2096}
2097}else{
2098if((this.fired===0)&&(this.results[0] instanceof self.Deferred)){
2099this.results[0].cancel();
2100}
2101}
2102},_pause:function(){
2103this.paused++;
2104},_unpause:function(){
2105this.paused--;
2106if((this.paused===0)&&(this.fired>=0)){
2107this._fire();
2108}
2109},_continue:function(res){
2110this._resback(res);
2111this._unpause();
2112},_resback:function(res){
2113this.fired=((res instanceof Error)?1:0);
2114this.results[this.fired]=res;
2115this._fire();
2116},_check:function(){
2117if(this.fired!=-1){
2118if(!this.silentlyCancelled){
2119throw new MochiKit.Async.AlreadyCalledError(this);
2120}
2121this.silentlyCancelled=false;
2122return;
2123}
2124},callback:function(res){
2125this._check();
2126if(res instanceof MochiKit.Async.Deferred){
2127throw new Error("Deferred instances can only be chained if they are the result of a callback");
2128}
2129this._resback(res);
2130},errback:function(res){
2131this._check();
2132var self=MochiKit.Async;
2133if(res instanceof self.Deferred){
2134throw new Error("Deferred instances can only be chained if they are the result of a callback");
2135}
2136if(!(res instanceof Error)){
2137res=new self.GenericError(res);
2138}
2139this._resback(res);
2140},addBoth:function(fn){
2141if(arguments.length>1){
2142fn=MochiKit.Base.partial.apply(null,arguments);
2143}
2144return this.addCallbacks(fn,fn);
2145},addCallback:function(fn){
2146if(arguments.length>1){
2147fn=MochiKit.Base.partial.apply(null,arguments);
2148}
2149return this.addCallbacks(fn,null);
2150},addErrback:function(fn){
2151if(arguments.length>1){
2152fn=MochiKit.Base.partial.apply(null,arguments);
2153}
2154return this.addCallbacks(null,fn);
2155},addCallbacks:function(cb,eb){
2156if(this.chained){
2157throw new Error("Chained Deferreds can not be re-used");
2158}
2159this.chain.push([cb,eb]);
2160if(this.fired>=0){
2161this._fire();
2162}
2163return this;
2164},_fire:function(){
2165var _284=this.chain;
2166var _285=this.fired;
2167var res=this.results[_285];
2168var self=this;
2169var cb=null;
2170while(_284.length>0&&this.paused===0){
2171var pair=_284.shift();
2172var f=pair[_285];
2173if(f===null){
2174continue;
2175}
2176try{
2177res=f(res);
2178_285=((res instanceof Error)?1:0);
2179if(res instanceof MochiKit.Async.Deferred){
2180cb=function(res){
2181self._continue(res);
2182};
2183this._pause();
2184}
2185}
2186catch(err){
2187_285=1;
2188if(!(err instanceof Error)){
2189err=new MochiKit.Async.GenericError(err);
2190}
2191res=err;
2192}
2193}
2194this.fired=_285;
2195this.results[_285]=res;
2196if(cb&&this.paused){
2197res.addBoth(cb);
2198res.chained=true;
2199}
2200}};
2201MochiKit.Base.update(MochiKit.Async,{evalJSONRequest:function(){
2202return eval("("+arguments[0].responseText+")");
2203},succeed:function(_287){
2204var d=new MochiKit.Async.Deferred();
2205d.callback.apply(d,arguments);
2206return d;
2207},fail:function(_288){
2208var d=new MochiKit.Async.Deferred();
2209d.errback.apply(d,arguments);
2210return d;
2211},getXMLHttpRequest:function(){
2212var self=arguments.callee;
2213if(!self.XMLHttpRequest){
2214var _289=[function(){
2215return new XMLHttpRequest();
2216},function(){
2217return new ActiveXObject("Msxml2.XMLHTTP");
2218},function(){
2219return new ActiveXObject("Microsoft.XMLHTTP");
2220},function(){
2221return new ActiveXObject("Msxml2.XMLHTTP.4.0");
2222},function(){
2223throw new MochiKit.Async.BrowserComplianceError("Browser does not support XMLHttpRequest");
2224}];
2225for(var i=0;i<_289.length;i++){
2226var func=_289[i];
2227try{
2228self.XMLHttpRequest=func;
2229return func();
2230}
2231catch(e){
2232}
2233}
2234}
2235return self.XMLHttpRequest();
2236},_nothing:function(){
2237},_xhr_onreadystatechange:function(d){
2238if(this.readyState==4){
2239try{
2240this.onreadystatechange=null;
2241}
2242catch(e){
2243try{
2244this.onreadystatechange=MochiKit.Async._nothing;
2245}
2246catch(e){
2247}
2248}
2249var _290=null;
2250try{
2251_290=this.status;
2252if(!_290&&MochiKit.Base.isNotEmpty(this.responseText)){
2253_290=304;
2254}
2255}
2256catch(e){
2257}
2258if(_290==200||_290==304){
2259d.callback(this);
2260}else{
2261var err=new MochiKit.Async.XMLHttpRequestError(this,"Request failed");
2262if(err.number){
2263d.errback(err);
2264}else{
2265d.errback(err);
2266}
2267}
2268}
2269},_xhr_canceller:function(req){
2270try{
2271req.onreadystatechange=null;
2272}
2273catch(e){
2274try{
2275req.onreadystatechange=MochiKit.Async._nothing;
2276}
2277catch(e){
2278}
2279}
2280req.abort();
2281},sendXMLHttpRequest:function(req,_293){
2282if(typeof (_293)=="undefined"||_293===null){
2283_293="";
2284}
2285var m=MochiKit.Base;
2286var self=MochiKit.Async;
2287var d=new self.Deferred(m.partial(self._xhr_canceller,req));
2288try{
2289req.onreadystatechange=m.bind(self._xhr_onreadystatechange,req,d);
2290req.send(_293);
2291}
2292catch(e){
2293try{
2294req.onreadystatechange=null;
2295}
2296catch(ignore){
2297}
2298d.errback(e);
2299}
2300return d;
2301},doSimpleXMLHttpRequest:function(url){
2302var self=MochiKit.Async;
2303var req=self.getXMLHttpRequest();
2304if(arguments.length>1){
2305var m=MochiKit.Base;
2306var qs=m.queryString.apply(null,m.extend(null,arguments,1));
2307if(qs){
2308url+="?"+qs;
2309}
2310}
2311req.open("GET",url,true);
2312return self.sendXMLHttpRequest(req);
2313},loadJSONDoc:function(url){
2314var self=MochiKit.Async;
2315var d=self.doSimpleXMLHttpRequest.apply(self,arguments);
2316d=d.addCallback(self.evalJSONRequest);
2317return d;
2318},wait:function(_296,_297){
2319var d=new MochiKit.Async.Deferred();
2320var m=MochiKit.Base;
2321if(typeof (_297)!="undefined"){
2322d.addCallback(function(){
2323return _297;
2324});
2325}
2326var _298=setTimeout(m.bind("callback",d),Math.floor(_296*1000));
2327d.canceller=function(){
2328try{
2329clearTimeout(_298);
2330}
2331catch(e){
2332}
2333};
2334return d;
2335},callLater:function(_299,func){
2336var m=MochiKit.Base;
2337var _300=m.partial.apply(m,m.extend(null,arguments,1));
2338return MochiKit.Async.wait(_299).addCallback(function(res){
2339return _300();
2340});
2341}});
2342MochiKit.Async.DeferredLock=function(){
2343this.waiting=[];
2344this.locked=false;
2345this.id=this._nextId();
2346};
2347MochiKit.Async.DeferredLock.prototype={__class__:MochiKit.Async.DeferredLock,acquire:function(){
2348d=new MochiKit.Async.Deferred();
2349if(this.locked){
2350this.waiting.push(d);
2351}else{
2352this.locked=true;
2353d.callback(this);
2354}
2355return d;
2356},release:function(){
2357if(!this.locked){
2358throw TypeError("Tried to release an unlocked DeferredLock");
2359}
2360this.locked=false;
2361if(this.waiting.length>0){
2362this.locked=true;
2363this.waiting.shift().callback(this);
2364}
2365},_nextId:MochiKit.Base.counter(),repr:function(){
2366var _301;
2367if(this.locked){
2368_301="locked, "+this.waiting.length+" waiting";
2369}else{
2370_301="unlocked";
2371}
2372return "DeferredLock("+this.id+", "+_301+")";
2373},toString:MochiKit.Base.forwardCall("repr")};
2374MochiKit.Async.DeferredList=function(list,_303,_304,_305,_306){
2375this.list=list;
2376this.resultList=new Array(this.list.length);
2377this.chain=[];
2378this.id=this._nextId();
2379this.fired=-1;
2380this.paused=0;
2381this.results=[null,null];
2382this.canceller=_306;
2383this.silentlyCancelled=false;
2384if(this.list.length===0&&!_303){
2385this.callback(this.resultList);
2386}
2387this.finishedCount=0;
2388this.fireOnOneCallback=_303;
2389this.fireOnOneErrback=_304;
2390this.consumeErrors=_305;
2391var _307=0;
2392MochiKit.Base.map(MochiKit.Base.bind(function(d){
2393d.addCallback(MochiKit.Base.bind(this._cbDeferred,this),_307,true);
2394d.addErrback(MochiKit.Base.bind(this._cbDeferred,this),_307,false);
2395_307+=1;
2396},this),this.list);
2397};
2398MochiKit.Base.update(MochiKit.Async.DeferredList.prototype,MochiKit.Async.Deferred.prototype);
2399MochiKit.Base.update(MochiKit.Async.DeferredList.prototype,{_cbDeferred:function(_308,_309,_310){
2400this.resultList[_308]=[_309,_310];
2401this.finishedCount+=1;
2402if(this.fired!==0){
2403if(_309&&this.fireOnOneCallback){
2404this.callback([_308,_310]);
2405}else{
2406if(!_309&&this.fireOnOneErrback){
2407this.errback(_310);
2408}else{
2409if(this.finishedCount==this.list.length){
2410this.callback(this.resultList);
2411}
2412}
2413}
2414}
2415if(!_309&&this.consumeErrors){
2416_310=null;
2417}
2418return _310;
2419}});
2420MochiKit.Async.gatherResults=function(_311){
2421var d=new MochiKit.Async.DeferredList(_311,false,true,false);
2422d.addCallback(function(_312){
2423var ret=[];
2424for(var i=0;i<_312.length;i++){
2425ret.push(_312[i][1]);
2426}
2427return ret;
2428});
2429return d;
2430};
2431MochiKit.Async.maybeDeferred=function(func){
2432var self=MochiKit.Async;
2433var _313;
2434try{
2435var r=func.apply(null,MochiKit.Base.extend([],arguments,1));
2436if(r instanceof self.Deferred){
2437_313=r;
2438}else{
2439if(r instanceof Error){
2440_313=self.fail(r);
2441}else{
2442_313=self.succeed(r);
2443}
2444}
2445}
2446catch(e){
2447_313=self.fail(e);
2448}
2449return _313;
2450};
2451MochiKit.Async.EXPORT=["AlreadyCalledError","CancelledError","BrowserComplianceError","GenericError","XMLHttpRequestError","Deferred","succeed","fail","getXMLHttpRequest","doSimpleXMLHttpRequest","loadJSONDoc","wait","callLater","sendXMLHttpRequest","DeferredLock","DeferredList","gatherResults","maybeDeferred"];
2452MochiKit.Async.EXPORT_OK=["evalJSONRequest"];
2453MochiKit.Async.__new__=function(){
2454var m=MochiKit.Base;
2455var ne=m.partial(m._newNamedError,this);
2456ne("AlreadyCalledError",function(_316){
2457this.deferred=_316;
2458});
2459ne("CancelledError",function(_317){
2460this.deferred=_317;
2461});
2462ne("BrowserComplianceError",function(msg){
2463this.message=msg;
2464});
2465ne("GenericError",function(msg){
2466this.message=msg;
2467});
2468ne("XMLHttpRequestError",function(req,msg){
2469this.req=req;
2470this.message=msg;
2471try{
2472this.number=req.status;
2473}
2474catch(e){
2475}
2476});
2477this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
2478m.nameFunctions(this);
2479};
2480MochiKit.Async.__new__();
2481MochiKit.Base._exportSymbols(this,MochiKit.Async);
2482if(typeof (dojo)!="undefined"){
2483dojo.provide("MochiKit.DOM");
2484dojo.require("MochiKit.Iter");
2485}
2486if(typeof (JSAN)!="undefined"){
2487JSAN.use("MochiKit.Iter",[]);
2488}
2489try{
2490if(typeof (MochiKit.Iter)=="undefined"){
2491throw "";
2492}
2493}
2494catch(e){
2495throw "MochiKit.DOM depends on MochiKit.Iter!";
2496}
2497if(typeof (MochiKit.DOM)=="undefined"){
2498MochiKit.DOM={};
2499}
2500MochiKit.DOM.NAME="MochiKit.DOM";
2501MochiKit.DOM.VERSION="1.3.1";
2502MochiKit.DOM.__repr__=function(){
2503return "["+this.NAME+" "+this.VERSION+"]";
2504};
2505MochiKit.DOM.toString=function(){
2506return this.__repr__();
2507};
2508MochiKit.DOM.EXPORT=["formContents","currentWindow","currentDocument","withWindow","withDocument","registerDOMConverter","coerceToDOM","createDOM","createDOMFunc","getNodeAttribute","setNodeAttribute","updateNodeAttributes","appendChildNodes","replaceChildNodes","removeElement","swapDOM","BUTTON","TT","PRE","H1","H2","H3","BR","CANVAS","HR","LABEL","TEXTAREA","FORM","STRONG","SELECT","OPTION","OPTGROUP","LEGEND","FIELDSET","P","UL","OL","LI","TD","TR","THEAD","TBODY","TFOOT","TABLE","TH","INPUT","SPAN","A","DIV","IMG","getElement","$","computedStyle","getElementsByTagAndClassName","addToCallStack","addLoadEvent","focusOnLoad","setElementClass","toggleElementClass","addElementClass","removeElementClass","swapElementClass","hasElementClass","escapeHTML","toHTML","emitHTML","setDisplayForElement","hideElement","showElement","scrapeText","elementDimensions","elementPosition","setElementDimensions","setElementPosition","getViewportDimensions","setOpacity"];
2509MochiKit.DOM.EXPORT_OK=["domConverters"];
2510MochiKit.DOM.Dimensions=function(w,h){
2511this.w=w;
2512this.h=h;
2513};
2514MochiKit.DOM.Dimensions.prototype.repr=function(){
2515var repr=MochiKit.Base.repr;
2516return "{w: "+repr(this.w)+", h: "+repr(this.h)+"}";
2517};
2518MochiKit.DOM.Coordinates=function(x,y){
2519this.x=x;
2520this.y=y;
2521};
2522MochiKit.DOM.Coordinates.prototype.repr=function(){
2523var repr=MochiKit.Base.repr;
2524return "{x: "+repr(this.x)+", y: "+repr(this.y)+"}";
2525};
2526MochiKit.DOM.Coordinates.prototype.toString=function(){
2527return this.repr();
2528};
2529MochiKit.Base.update(MochiKit.DOM,{setOpacity:function(elem,o){
2530elem=MochiKit.DOM.getElement(elem);
2531MochiKit.DOM.updateNodeAttributes(elem,{"style":{"opacity":o,"-moz-opacity":o,"-khtml-opacity":o,"filter":" alpha(opacity="+(o*100)+")"}});
2532},getViewportDimensions:function(){
2533var d=new MochiKit.DOM.Dimensions();
2534var w=MochiKit.DOM._window;
2535var b=MochiKit.DOM._document.body;
2536if(w.innerWidth){
2537d.w=w.innerWidth;
2538d.h=w.innerHeight;
2539}else{
2540if(b.parentElement.clientWidth){
2541d.w=b.parentElement.clientWidth;
2542d.h=b.parentElement.clientHeight;
2543}else{
2544if(b&&b.clientWidth){
2545d.w=b.clientWidth;
2546d.h=b.clientHeight;
2547}
2548}
2549}
2550return d;
2551},elementDimensions:function(elem){
2552var self=MochiKit.DOM;
2553if(typeof (elem.w)=="number"||typeof (elem.h)=="number"){
2554return new self.Dimensions(elem.w||0,elem.h||0);
2555}
2556elem=self.getElement(elem);
2557if(!elem){
2558return undefined;
2559}
2560if(self.computedStyle(elem,"display")!="none"){
2561return new self.Dimensions(elem.offsetWidth||0,elem.offsetHeight||0);
2562}
2563var s=elem.style;
2564var _322=s.visibility;
2565var _323=s.position;
2566s.visibility="hidden";
2567s.position="absolute";
2568s.display="";
2569var _324=elem.offsetWidth;
2570var _325=elem.offsetHeight;
2571s.display="none";
2572s.position=_323;
2573s.visibility=_322;
2574return new self.Dimensions(_324,_325);
2575},elementPosition:function(elem,_326){
2576var self=MochiKit.DOM;
2577elem=self.getElement(elem);
2578if(!elem){
2579return undefined;
2580}
2581var c=new self.Coordinates(0,0);
2582if(elem.x&&elem.y){
2583c.x+=elem.x||0;
2584c.y+=elem.y||0;
2585return c;
2586}else{
2587if(elem.parentNode===null||self.computedStyle(elem,"display")=="none"){
2588return undefined;
2589}
2590}
2591var box=null;
2592var _329=null;
2593var d=MochiKit.DOM._document;
2594var de=d.documentElement;
2595var b=d.body;
2596if(elem.getBoundingClientRect){
2597box=elem.getBoundingClientRect();
2598c.x+=box.left+(de.scrollLeft||b.scrollLeft)-(de.clientLeft||b.clientLeft);
2599c.y+=box.top+(de.scrollTop||b.scrollTop)-(de.clientTop||b.clientTop);
2600}else{
2601if(d.getBoxObjectFor){
2602box=d.getBoxObjectFor(elem);
2603c.x+=box.x;
2604c.y+=box.y;
2605}else{
2606if(elem.offsetParent){
2607c.x+=elem.offsetLeft;
2608c.y+=elem.offsetTop;
2609_329=elem.offsetParent;
2610if(_329!=elem){
2611while(_329){
2612c.x+=_329.offsetLeft;
2613c.y+=_329.offsetTop;
2614_329=_329.offsetParent;
2615}
2616}
2617var ua=navigator.userAgent.toLowerCase();
2618if((typeof (opera)!="undefined"&&parseFloat(opera.version())<9)||(ua.indexOf("safari")!=-1&&self.computedStyle(elem,"position")=="absolute")){
2619c.x-=b.offsetLeft;
2620c.y-=b.offsetTop;
2621}
2622}
2623}
2624}
2625if(typeof (_326)!="undefined"){
2626_326=arguments.callee(_326);
2627if(_326){
2628c.x-=(_326.x||0);
2629c.y-=(_326.y||0);
2630}
2631}
2632if(elem.parentNode){
2633_329=elem.parentNode;
2634}else{
2635_329=null;
2636}
2637while(_329&&_329.tagName!="BODY"&&_329.tagName!="HTML"){
2638c.x-=_329.scrollLeft;
2639c.y-=_329.scrollTop;
2640if(_329.parentNode){
2641_329=_329.parentNode;
2642}else{
2643_329=null;
2644}
2645}
2646return c;
2647},setElementDimensions:function(elem,_332,_333){
2648elem=MochiKit.DOM.getElement(elem);
2649if(typeof (_333)=="undefined"){
2650_333="px";
2651}
2652MochiKit.DOM.updateNodeAttributes(elem,{"style":{"width":_332.w+_333,"height":_332.h+_333}});
2653},setElementPosition:function(elem,_334,_335){
2654elem=MochiKit.DOM.getElement(elem);
2655if(typeof (_335)=="undefined"){
2656_335="px";
2657}
2658MochiKit.DOM.updateNodeAttributes(elem,{"style":{"left":_334.x+_335,"top":_334.y+_335}});
2659},currentWindow:function(){
2660return MochiKit.DOM._window;
2661},currentDocument:function(){
2662return MochiKit.DOM._document;
2663},withWindow:function(win,func){
2664var self=MochiKit.DOM;
2665var _337=self._document;
2666var _338=self._win;
2667var rval;
2668try{
2669self._window=win;
2670self._document=win.document;
2671rval=func();
2672}
2673catch(e){
2674self._window=_338;
2675self._document=_337;
2676throw e;
2677}
2678self._window=_338;
2679self._document=_337;
2680return rval;
2681},formContents:function(elem){
2682var _339=[];
2683var _340=[];
2684var m=MochiKit.Base;
2685var self=MochiKit.DOM;
2686if(typeof (elem)=="undefined"||elem===null){
2687elem=self._document;
2688}else{
2689elem=self.getElement(elem);
2690}
2691m.nodeWalk(elem,function(elem){
2692var name=elem.name;
2693if(m.isNotEmpty(name)){
2694var _341=elem.nodeName;
2695if(_341=="INPUT"&&(elem.type=="radio"||elem.type=="checkbox")&&!elem.checked){
2696return null;
2697}
2698if(_341=="SELECT"){
2699if(elem.selectedIndex>=0){
2700var opt=elem.options[elem.selectedIndex];
2701_339.push(name);
2702_340.push((opt.value)?opt.value:opt.text);
2703return null;
2704}
2705_339.push(name);
2706_340.push("");
2707return null;
2708}
2709if(_341=="FORM"||_341=="P"||_341=="SPAN"||_341=="DIV"){
2710return elem.childNodes;
2711}
2712_339.push(name);
2713_340.push(elem.value||"");
2714return null;
2715}
2716return elem.childNodes;
2717});
2718return [_339,_340];
2719},withDocument:function(doc,func){
2720var self=MochiKit.DOM;
2721var _344=self._document;
2722var rval;
2723try{
2724self._document=doc;
2725rval=func();
2726}
2727catch(e){
2728self._document=_344;
2729throw e;
2730}
2731self._document=_344;
2732return rval;
2733},registerDOMConverter:function(name,_345,wrap,_346){
2734MochiKit.DOM.domConverters.register(name,_345,wrap,_346);
2735},coerceToDOM:function(node,ctx){
2736var im=MochiKit.Iter;
2737var self=MochiKit.DOM;
2738var iter=im.iter;
2739var _350=im.repeat;
2740var imap=im.imap;
2741var _352=self.domConverters;
2742var _353=self.coerceToDOM;
2743var _354=MochiKit.Base.NotFound;
2744while(true){
2745if(typeof (node)=="undefined"||node===null){
2746return null;
2747}
2748if(typeof (node.nodeType)!="undefined"&&node.nodeType>0){
2749return node;
2750}
2751if(typeof (node)=="number"||typeof (node)=="boolean"){
2752node=node.toString();
2753}
2754if(typeof (node)=="string"){
2755return self._document.createTextNode(node);
2756}
2757if(typeof (node.toDOM)=="function"){
2758node=node.toDOM(ctx);
2759continue;
2760}
2761if(typeof (node)=="function"){
2762node=node(ctx);
2763continue;
2764}
2765var _355=null;
2766try{
2767_355=iter(node);
2768}
2769catch(e){
2770}
2771if(_355){
2772return imap(_353,_355,_350(ctx));
2773}
2774try{
2775node=_352.match(node,ctx);
2776continue;
2777}
2778catch(e){
2779if(e!=_354){
2780throw e;
2781}
2782}
2783return self._document.createTextNode(node.toString());
2784}
2785return undefined;
2786},setNodeAttribute:function(node,attr,_357){
2787var o={};
2788o[attr]=_357;
2789try{
2790return MochiKit.DOM.updateNodeAttributes(node,o);
2791}
2792catch(e){
2793}
2794return null;
2795},getNodeAttribute:function(node,attr){
2796var self=MochiKit.DOM;
2797var _358=self.attributeArray.renames[attr];
2798node=self.getElement(node);
2799try{
2800if(_358){
2801return node[_358];
2802}
2803return node.getAttribute(attr);
2804}
2805catch(e){
2806}
2807return null;
2808},updateNodeAttributes:function(node,_359){
2809var elem=node;
2810var self=MochiKit.DOM;
2811if(typeof (node)=="string"){
2812elem=self.getElement(node);
2813}
2814if(_359){
2815var _360=MochiKit.Base.updatetree;
2816if(self.attributeArray.compliant){
2817for(var k in _359){
2818var v=_359[k];
2819if(typeof (v)=="object"&&typeof (elem[k])=="object"){
2820_360(elem[k],v);
2821}else{
2822if(k.substring(0,2)=="on"){
2823if(typeof (v)=="string"){
2824v=new Function(v);
2825}
2826elem[k]=v;
2827}else{
2828elem.setAttribute(k,v);
2829}
2830}
2831}
2832}else{
2833var _361=self.attributeArray.renames;
2834for(k in _359){
2835v=_359[k];
2836var _362=_361[k];
2837if(k=="style"&&typeof (v)=="string"){
2838elem.style.cssText=v;
2839}else{
2840if(typeof (_362)=="string"){
2841elem[_362]=v;
2842}else{
2843if(typeof (elem[k])=="object"&&typeof (v)=="object"){
2844_360(elem[k],v);
2845}else{
2846if(k.substring(0,2)=="on"){
2847if(typeof (v)=="string"){
2848v=new Function(v);
2849}
2850elem[k]=v;
2851}else{
2852elem.setAttribute(k,v);
2853}
2854}
2855}
2856}
2857}
2858}
2859}
2860return elem;
2861},appendChildNodes:function(node){
2862var elem=node;
2863var self=MochiKit.DOM;
2864if(typeof (node)=="string"){
2865elem=self.getElement(node);
2866}
2867var _363=[self.coerceToDOM(MochiKit.Base.extend(null,arguments,1),elem)];
2868var _364=MochiKit.Base.concat;
2869while(_363.length){
2870var n=_363.shift();
2871if(typeof (n)=="undefined"||n===null){
2872}else{
2873if(typeof (n.nodeType)=="number"){
2874elem.appendChild(n);
2875}else{
2876_363=_364(n,_363);
2877}
2878}
2879}
2880return elem;
2881},replaceChildNodes:function(node){
2882var elem=node;
2883var self=MochiKit.DOM;
2884if(typeof (node)=="string"){
2885elem=self.getElement(node);
2886arguments[0]=elem;
2887}
2888var _365;
2889while((_365=elem.firstChild)){
2890elem.removeChild(_365);
2891}
2892if(arguments.length<2){
2893return elem;
2894}else{
2895return self.appendChildNodes.apply(this,arguments);
2896}
2897},createDOM:function(name,_366){
2898var elem;
2899var self=MochiKit.DOM;
2900var m=MochiKit.Base;
2901if(typeof (_366)=="string"||typeof (_366)=="number"){
2902var args=m.extend([name,null],arguments,1);
2903return arguments.callee.apply(this,args);
2904}
2905if(typeof (name)=="string"){
2906if(_366&&"name" in _366&&!self.attributeArray.compliant){
2907name=("<"+name+" name=\""+self.escapeHTML(_366.name)+"\">");
2908}
2909elem=self._document.createElement(name);
2910}else{
2911elem=name;
2912}
2913if(_366){
2914self.updateNodeAttributes(elem,_366);
2915}
2916if(arguments.length<=2){
2917return elem;
2918}else{
2919var args=m.extend([elem],arguments,2);
2920return self.appendChildNodes.apply(this,args);
2921}
2922},createDOMFunc:function(){
2923var m=MochiKit.Base;
2924return m.partial.apply(this,m.extend([MochiKit.DOM.createDOM],arguments));
2925},swapDOM:function(dest,src){
2926var self=MochiKit.DOM;
2927dest=self.getElement(dest);
2928var _369=dest.parentNode;
2929if(src){
2930src=self.getElement(src);
2931_369.replaceChild(src,dest);
2932}else{
2933_369.removeChild(dest);
2934}
2935return src;
2936},getElement:function(id){
2937var self=MochiKit.DOM;
2938if(arguments.length==1){
2939return ((typeof (id)=="string")?self._document.getElementById(id):id);
2940}else{
2941return MochiKit.Base.map(self.getElement,arguments);
2942}
2943},computedStyle:function(_371,_372,_373){
2944if(arguments.length==2){
2945_373=_372;
2946}
2947var self=MochiKit.DOM;
2948var el=self.getElement(_371);
2949var _375=self._document;
2950if(!el||el==_375){
2951return undefined;
2952}
2953if(el.currentStyle){
2954return el.currentStyle[_372];
2955}
2956if(typeof (_375.defaultView)=="undefined"){
2957return undefined;
2958}
2959if(_375.defaultView===null){
2960return undefined;
2961}
2962var _376=_375.defaultView.getComputedStyle(el,null);
2963if(typeof (_376)=="undefined"||_376===null){
2964return undefined;
2965}
2966return _376.getPropertyValue(_373);
2967},getElementsByTagAndClassName:function(_377,_378,_379){
2968var self=MochiKit.DOM;
2969if(typeof (_377)=="undefined"||_377===null){
2970_377="*";
2971}
2972if(typeof (_379)=="undefined"||_379===null){
2973_379=self._document;
2974}
2975_379=self.getElement(_379);
2976var _380=(_379.getElementsByTagName(_377)||self._document.all);
2977if(typeof (_378)=="undefined"||_378===null){
2978return MochiKit.Base.extend(null,_380);
2979}
2980var _381=[];
2981for(var i=0;i<_380.length;i++){
2982var _382=_380[i];
2983var _383=_382.className.split(" ");
2984for(var j=0;j<_383.length;j++){
2985if(_383[j]==_378){
2986_381.push(_382);
2987break;
2988}
2989}
2990}
2991return _381;
2992},_newCallStack:function(path,once){
2993var rval=function(){
2994var _386=arguments.callee.callStack;
2995for(var i=0;i<_386.length;i++){
2996if(_386[i].apply(this,arguments)===false){
2997break;
2998}
2999}
3000if(once){
3001try{
3002this[path]=null;
3003}
3004catch(e){
3005}
3006}
3007};
3008rval.callStack=[];
3009return rval;
3010},addToCallStack:function(_387,path,func,once){
3011var self=MochiKit.DOM;
3012var _388=_387[path];
3013var _389=_388;
3014if(!(typeof (_388)=="function"&&typeof (_388.callStack)=="object"&&_388.callStack!==null)){
3015_389=self._newCallStack(path,once);
3016if(typeof (_388)=="function"){
3017_389.callStack.push(_388);
3018}
3019_387[path]=_389;
3020}
3021_389.callStack.push(func);
3022},addLoadEvent:function(func){
3023var self=MochiKit.DOM;
3024self.addToCallStack(self._window,"onload",func,true);
3025},focusOnLoad:function(_390){
3026var self=MochiKit.DOM;
3027self.addLoadEvent(function(){
3028_390=self.getElement(_390);
3029if(_390){
3030_390.focus();
3031}
3032});
3033},setElementClass:function(_391,_392){
3034var self=MochiKit.DOM;
3035var obj=self.getElement(_391);
3036if(self.attributeArray.compliant){
3037obj.setAttribute("class",_392);
3038}else{
3039obj.setAttribute("className",_392);
3040}
3041},toggleElementClass:function(_393){
3042var self=MochiKit.DOM;
3043for(var i=1;i<arguments.length;i++){
3044var obj=self.getElement(arguments[i]);
3045if(!self.addElementClass(obj,_393)){
3046self.removeElementClass(obj,_393);
3047}
3048}
3049},addElementClass:function(_394,_395){
3050var self=MochiKit.DOM;
3051var obj=self.getElement(_394);
3052var cls=obj.className;
3053if(cls.length===0){
3054self.setElementClass(obj,_395);
3055return true;
3056}
3057if(cls==_395){
3058return false;
3059}
3060var _397=obj.className.split(" ");
3061for(var i=0;i<_397.length;i++){
3062if(_397[i]==_395){
3063return false;
3064}
3065}
3066self.setElementClass(obj,cls+" "+_395);
3067return true;
3068},removeElementClass:function(_398,_399){
3069var self=MochiKit.DOM;
3070var obj=self.getElement(_398);
3071var cls=obj.className;
3072if(cls.length===0){
3073return false;
3074}
3075if(cls==_399){
3076self.setElementClass(obj,"");
3077return true;
3078}
3079var _400=obj.className.split(" ");
3080for(var i=0;i<_400.length;i++){
3081if(_400[i]==_399){
3082_400.splice(i,1);
3083self.setElementClass(obj,_400.join(" "));
3084return true;
3085}
3086}
3087return false;
3088},swapElementClass:function(_401,_402,_403){
3089var obj=MochiKit.DOM.getElement(_401);
3090var res=MochiKit.DOM.removeElementClass(obj,_402);
3091if(res){
3092MochiKit.DOM.addElementClass(obj,_403);
3093}
3094return res;
3095},hasElementClass:function(_404,_405){
3096var obj=MochiKit.DOM.getElement(_404);
3097var _406=obj.className.split(" ");
3098for(var i=1;i<arguments.length;i++){
3099var good=false;
3100for(var j=0;j<_406.length;j++){
3101if(_406[j]==arguments[i]){
3102good=true;
3103break;
3104}
3105}
3106if(!good){
3107return false;
3108}
3109}
3110return true;
3111},escapeHTML:function(s){
3112return s.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;");
3113},toHTML:function(dom){
3114return MochiKit.DOM.emitHTML(dom).join("");
3115},emitHTML:function(dom,lst){
3116if(typeof (lst)=="undefined"||lst===null){
3117lst=[];
3118}
3119var _409=[dom];
3120var self=MochiKit.DOM;
3121var _410=self.escapeHTML;
3122var _411=self.attributeArray;
3123while(_409.length){
3124dom=_409.pop();
3125if(typeof (dom)=="string"){
3126lst.push(dom);
3127}else{
3128if(dom.nodeType==1){
3129lst.push("<"+dom.nodeName.toLowerCase());
3130var _412=[];
3131var _413=_411(dom);
3132for(var i=0;i<_413.length;i++){
3133var a=_413[i];
3134_412.push([" ",a.name,"=\"",_410(a.value),"\""]);
3135}
3136_412.sort();
3137for(i=0;i<_412.length;i++){
3138var _414=_412[i];
3139for(var j=0;j<_414.length;j++){
3140lst.push(_414[j]);
3141}
3142}
3143if(dom.hasChildNodes()){
3144lst.push(">");
3145_409.push("</"+dom.nodeName.toLowerCase()+">");
3146var _415=dom.childNodes;
3147for(i=_415.length-1;i>=0;i--){
3148_409.push(_415[i]);
3149}
3150}else{
3151lst.push("/>");
3152}
3153}else{
3154if(dom.nodeType==3){
3155lst.push(_410(dom.nodeValue));
3156}
3157}
3158}
3159}
3160return lst;
3161},setDisplayForElement:function(_416,_417){
3162var m=MochiKit.Base;
3163var _418=m.extend(null,arguments,1);
3164MochiKit.Iter.forEach(m.filter(null,m.map(MochiKit.DOM.getElement,_418)),function(_417){
3165_417.style.display=_416;
3166});
3167},scrapeText:function(node,_419){
3168var rval=[];
3169(function(node){
3170var cn=node.childNodes;
3171if(cn){
3172for(var i=0;i<cn.length;i++){
3173arguments.callee.call(this,cn[i]);
3174}
3175}
3176var _421=node.nodeValue;
3177if(typeof (_421)=="string"){
3178rval.push(_421);
3179}
3180})(MochiKit.DOM.getElement(node));
3181if(_419){
3182return rval;
3183}else{
3184return rval.join("");
3185}
3186},__new__:function(win){
3187var m=MochiKit.Base;
3188this._document=document;
3189this._window=win;
3190this.domConverters=new m.AdapterRegistry();
3191var _422=this._document.createElement("span");
3192var _423;
3193if(_422&&_422.attributes&&_422.attributes.length>0){
3194var _424=m.filter;
3195_423=function(node){
3196return _424(_423.ignoreAttrFilter,node.attributes);
3197};
3198_423.ignoreAttr={};
3199MochiKit.Iter.forEach(_422.attributes,function(a){
3200_423.ignoreAttr[a.name]=a.value;
3201});
3202_423.ignoreAttrFilter=function(a){
3203return (_423.ignoreAttr[a.name]!=a.value);
3204};
3205_423.compliant=false;
3206_423.renames={"class":"className","checked":"defaultChecked","usemap":"useMap","for":"htmlFor"};
3207}else{
3208_423=function(node){
3209return node.attributes;
3210};
3211_423.compliant=true;
3212_423.renames={};
3213}
3214this.attributeArray=_423;
3215var _425=this.createDOMFunc;
3216this.UL=_425("ul");
3217this.OL=_425("ol");
3218this.LI=_425("li");
3219this.TD=_425("td");
3220this.TR=_425("tr");
3221this.TBODY=_425("tbody");
3222this.THEAD=_425("thead");
3223this.TFOOT=_425("tfoot");
3224this.TABLE=_425("table");
3225this.TH=_425("th");
3226this.INPUT=_425("input");
3227this.SPAN=_425("span");
3228this.A=_425("a");
3229this.DIV=_425("div");
3230this.IMG=_425("img");
3231this.BUTTON=_425("button");
3232this.TT=_425("tt");
3233this.PRE=_425("pre");
3234this.H1=_425("h1");
3235this.H2=_425("h2");
3236this.H3=_425("h3");
3237this.BR=_425("br");
3238this.HR=_425("hr");
3239this.LABEL=_425("label");
3240this.TEXTAREA=_425("textarea");
3241this.FORM=_425("form");
3242this.P=_425("p");
3243this.SELECT=_425("select");
3244this.OPTION=_425("option");
3245this.OPTGROUP=_425("optgroup");
3246this.LEGEND=_425("legend");
3247this.FIELDSET=_425("fieldset");
3248this.STRONG=_425("strong");
3249this.CANVAS=_425("canvas");
3250this.hideElement=m.partial(this.setDisplayForElement,"none");
3251this.showElement=m.partial(this.setDisplayForElement,"block");
3252this.removeElement=this.swapDOM;
3253this.$=this.getElement;
3254this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
3255m.nameFunctions(this);
3256}});
3257MochiKit.DOM.__new__(((typeof (window)=="undefined")?this:window));
3258if(!MochiKit.__compat__){
3259withWindow=MochiKit.DOM.withWindow;
3260withDocument=MochiKit.DOM.withDocument;
3261}
3262MochiKit.Base._exportSymbols(this,MochiKit.DOM);
3263if(typeof (dojo)!="undefined"){
3264dojo.provide("MochiKit.LoggingPane");
3265dojo.require("MochiKit.Logging");
3266dojo.require("MochiKit.Base");
3267}
3268if(typeof (JSAN)!="undefined"){
3269JSAN.use("MochiKit.Logging",[]);
3270JSAN.use("MochiKit.Base",[]);
3271}
3272try{
3273if(typeof (MochiKit.Base)=="undefined"||typeof (MochiKit.Logging)=="undefined"){
3274throw "";
3275}
3276}
3277catch(e){
3278throw "MochiKit.LoggingPane depends on MochiKit.Base and MochiKit.Logging!";
3279}
3280if(typeof (MochiKit.LoggingPane)=="undefined"){
3281MochiKit.LoggingPane={};
3282}
3283MochiKit.LoggingPane.NAME="MochiKit.LoggingPane";
3284MochiKit.LoggingPane.VERSION="1.3.1";
3285MochiKit.LoggingPane.__repr__=function(){
3286return "["+this.NAME+" "+this.VERSION+"]";
3287};
3288MochiKit.LoggingPane.toString=function(){
3289return this.__repr__();
3290};
3291MochiKit.LoggingPane.createLoggingPane=function(_426){
3292var m=MochiKit.LoggingPane;
3293_426=!(!_426);
3294if(m._loggingPane&&m._loggingPane.inline!=_426){
3295m._loggingPane.closePane();
3296m._loggingPane=null;
3297}
3298if(!m._loggingPane||m._loggingPane.closed){
3299m._loggingPane=new m.LoggingPane(_426,MochiKit.Logging.logger);
3300}
3301return m._loggingPane;
3302};
3303MochiKit.LoggingPane.LoggingPane=function(_427,_428){
3304if(typeof (_428)=="undefined"||_428===null){
3305_428=MochiKit.Logging.logger;
3306}
3307this.logger=_428;
3308var _429=MochiKit.Base.update;
3309var _430=MochiKit.Base.updatetree;
3310var bind=MochiKit.Base.bind;
3311var _431=MochiKit.Base.clone;
3312var win=window;
3313var uid="_MochiKit_LoggingPane";
3314if(typeof (MochiKit.DOM)!="undefined"){
3315win=MochiKit.DOM.currentWindow();
3316}
3317if(!_427){
3318var url=win.location.href.split("?")[0].replace(/[:\/.><&]/g,"_");
3319var name=uid+"_"+url;
3320var nwin=win.open("",name,"dependent,resizable,height=200");
3321if(!nwin){
3322alert("Not able to open debugging window due to pop-up blocking.");
3323return undefined;
3324}
3325nwin.document.write("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\" "+"\"http://www.w3.org/TR/html4/loose.dtd\">"+"<html><head><title>[MochiKit.LoggingPane]</title></head>"+"<body></body></html>");
3326nwin.document.close();
3327nwin.document.title+=" "+win.document.title;
3328win=nwin;
3329}
3330var doc=win.document;
3331this.doc=doc;
3332var _434=doc.getElementById(uid);
3333var _435=!!_434;
3334if(_434&&typeof (_434.loggingPane)!="undefined"){
3335_434.loggingPane.logger=this.logger;
3336_434.loggingPane.buildAndApplyFilter();
3337return _434.loggingPane;
3338}
3339if(_435){
3340var _436;
3341while((_436=_434.firstChild)){
3342_434.removeChild(_436);
3343}
3344}else{
3345_434=doc.createElement("div");
3346_434.id=uid;
3347}
3348_434.loggingPane=this;
3349var _437=doc.createElement("input");
3350var _438=doc.createElement("input");
3351var _439=doc.createElement("button");
3352var _440=doc.createElement("button");
3353var _441=doc.createElement("button");
3354var _442=doc.createElement("button");
3355var _443=doc.createElement("div");
3356var _444=doc.createElement("div");
3357var _445=uid+"_Listener";
3358this.colorTable=_431(this.colorTable);
3359var _446=[];
3360var _447=null;
3361var _448=function(msg){
3362var _449=msg.level;
3363if(typeof (_449)=="number"){
3364_449=MochiKit.Logging.LogLevel[_449];
3365}
3366return _449;
3367};
3368var _450=function(msg){
3369return msg.info.join(" ");
3370};
3371var _451=bind(function(msg){
3372var _452=_448(msg);
3373var text=_450(msg);
3374var c=this.colorTable[_452];
3375var p=doc.createElement("span");
3376p.className="MochiKit-LogMessage MochiKit-LogLevel-"+_452;
3377p.style.cssText="margin: 0px; white-space: -moz-pre-wrap; white-space: -o-pre-wrap; white-space: pre-wrap; white-space: pre-line; word-wrap: break-word; wrap-option: emergency; color: "+c;
3378p.appendChild(doc.createTextNode(_452+": "+text));
3379_444.appendChild(p);
3380_444.appendChild(doc.createElement("br"));
3381if(_443.offsetHeight>_443.scrollHeight){
3382_443.scrollTop=0;
3383}else{
3384_443.scrollTop=_443.scrollHeight;
3385}
3386},this);
3387var _454=function(msg){
3388_446[_446.length]=msg;
3389_451(msg);
3390};
3391var _455=function(){
3392var _456,infore;
3393try{
3394_456=new RegExp(_437.value);
3395infore=new RegExp(_438.value);
3396}
3397catch(e){
3398logDebug("Error in filter regex: "+e.message);
3399return null;
3400}
3401return function(msg){
3402return (_456.test(_448(msg))&&infore.test(_450(msg)));
3403};
3404};
3405var _457=function(){
3406while(_444.firstChild){
3407_444.removeChild(_444.firstChild);
3408}
3409};
3410var _458=function(){
3411_446=[];
3412_457();
3413};
3414var _459=bind(function(){
3415if(this.closed){
3416return;
3417}
3418this.closed=true;
3419if(MochiKit.LoggingPane._loggingPane==this){
3420MochiKit.LoggingPane._loggingPane=null;
3421}
3422this.logger.removeListener(_445);
3423_434.loggingPane=null;
3424if(_427){
3425_434.parentNode.removeChild(_434);
3426}else{
3427this.win.close();
3428}
3429},this);
3430var _460=function(){
3431_457();
3432for(var i=0;i<_446.length;i++){
3433var msg=_446[i];
3434if(_447===null||_447(msg)){
3435_451(msg);
3436}
3437}
3438};
3439this.buildAndApplyFilter=function(){
3440_447=_455();
3441_460();
3442this.logger.removeListener(_445);
3443this.logger.addListener(_445,_447,_454);
3444};
3445var _461=bind(function(){
3446_446=this.logger.getMessages();
3447_460();
3448},this);
3449var _462=bind(function(_463){
3450_463=_463||window.event;
3451key=_463.which||_463.keyCode;
3452if(key==13){
3453this.buildAndApplyFilter();
3454}
3455},this);
3456var _464="display: block; z-index: 1000; left: 0px; bottom: 0px; position: fixed; width: 100%; background-color: white; font: "+this.logFont;
3457if(_427){
3458_464+="; height: 10em; border-top: 2px solid black";
3459}else{
3460_464+="; height: 100%;";
3461}
3462_434.style.cssText=_464;
3463if(!_435){
3464doc.body.appendChild(_434);
3465}
3466_464={"cssText":"width: 33%; display: inline; font: "+this.logFont};
3467_430(_437,{"value":"FATAL|ERROR|WARNING|INFO|DEBUG","onkeypress":_462,"style":_464});
3468_434.appendChild(_437);
3469_430(_438,{"value":".*","onkeypress":_462,"style":_464});
3470_434.appendChild(_438);
3471_464="width: 8%; display:inline; font: "+this.logFont;
3472_439.appendChild(doc.createTextNode("Filter"));
3473_439.onclick=bind("buildAndApplyFilter",this);
3474_439.style.cssText=_464;
3475_434.appendChild(_439);
3476_440.appendChild(doc.createTextNode("Load"));
3477_440.onclick=_461;
3478_440.style.cssText=_464;
3479_434.appendChild(_440);
3480_441.appendChild(doc.createTextNode("Clear"));
3481_441.onclick=_458;
3482_441.style.cssText=_464;
3483_434.appendChild(_441);
3484_442.appendChild(doc.createTextNode("Close"));
3485_442.onclick=_459;
3486_442.style.cssText=_464;
3487_434.appendChild(_442);
3488_443.style.cssText="overflow: auto; width: 100%";
3489_444.style.cssText="width: 100%; height: "+(_427?"8em":"100%");
3490_443.appendChild(_444);
3491_434.appendChild(_443);
3492this.buildAndApplyFilter();
3493_461();
3494if(_427){
3495this.win=undefined;
3496}else{
3497this.win=win;
3498}
3499this.inline=_427;
3500this.closePane=_459;
3501this.closed=false;
3502return this;
3503};
3504MochiKit.LoggingPane.LoggingPane.prototype={"logFont":"8pt Verdana,sans-serif","colorTable":{"ERROR":"red","FATAL":"darkred","WARNING":"blue","INFO":"black","DEBUG":"green"}};
3505MochiKit.LoggingPane.EXPORT_OK=["LoggingPane"];
3506MochiKit.LoggingPane.EXPORT=["createLoggingPane"];
3507MochiKit.LoggingPane.__new__=function(){
3508this.EXPORT_TAGS={":common":this.EXPORT,":all":MochiKit.Base.concat(this.EXPORT,this.EXPORT_OK)};
3509MochiKit.Base.nameFunctions(this);
3510MochiKit.LoggingPane._loggingPane=null;
3511};
3512MochiKit.LoggingPane.__new__();
3513MochiKit.Base._exportSymbols(this,MochiKit.LoggingPane);
3514if(typeof (dojo)!="undefined"){
3515dojo.provide("MochiKit.Color");
3516dojo.require("MochiKit.Base");
3517}
3518if(typeof (JSAN)!="undefined"){
3519JSAN.use("MochiKit.Base",[]);
3520}
3521try{
3522if(typeof (MochiKit.Base)=="undefined"){
3523throw "";
3524}
3525}
3526catch(e){
3527throw "MochiKit.Color depends on MochiKit.Base";
3528}
3529if(typeof (MochiKit.Color)=="undefined"){
3530MochiKit.Color={};
3531}
3532MochiKit.Color.NAME="MochiKit.Color";
3533MochiKit.Color.VERSION="1.3.1";
3534MochiKit.Color.__repr__=function(){
3535return "["+this.NAME+" "+this.VERSION+"]";
3536};
3537MochiKit.Color.toString=function(){
3538return this.__repr__();
3539};
3540MochiKit.Color.Color=function(red,_466,blue,_468){
3541if(typeof (_468)=="undefined"||_468===null){
3542_468=1;
3543}
3544this.rgb={r:red,g:_466,b:blue,a:_468};
3545};
3546MochiKit.Color.Color.prototype={__class__:MochiKit.Color.Color,colorWithAlpha:function(_469){
3547var rgb=this.rgb;
3548var m=MochiKit.Color;
3549return m.Color.fromRGB(rgb.r,rgb.g,rgb.b,_469);
3550},colorWithHue:function(hue){
3551var hsl=this.asHSL();
3552hsl.h=hue;
3553var m=MochiKit.Color;
3554return m.Color.fromHSL(hsl);
3555},colorWithSaturation:function(_473){
3556var hsl=this.asHSL();
3557hsl.s=_473;
3558var m=MochiKit.Color;
3559return m.Color.fromHSL(hsl);
3560},colorWithLightness:function(_474){
3561var hsl=this.asHSL();
3562hsl.l=_474;
3563var m=MochiKit.Color;
3564return m.Color.fromHSL(hsl);
3565},darkerColorWithLevel:function(_475){
3566var hsl=this.asHSL();
3567hsl.l=Math.max(hsl.l-_475,0);
3568var m=MochiKit.Color;
3569return m.Color.fromHSL(hsl);
3570},lighterColorWithLevel:function(_476){
3571var hsl=this.asHSL();
3572hsl.l=Math.min(hsl.l+_476,1);
3573var m=MochiKit.Color;
3574return m.Color.fromHSL(hsl);
3575},blendedColor:function(_477,_478){
3576if(typeof (_478)=="undefined"||_478===null){
3577_478=0.5;
3578}
3579var sf=1-_478;
3580var s=this.rgb;
3581var d=_477.rgb;
3582var df=_478;
3583return MochiKit.Color.Color.fromRGB((s.r*sf)+(d.r*df),(s.g*sf)+(d.g*df),(s.b*sf)+(d.b*df),(s.a*sf)+(d.a*df));
3584},compareRGB:function(_481){
3585var a=this.asRGB();
3586var b=_481.asRGB();
3587return MochiKit.Base.compare([a.r,a.g,a.b,a.a],[b.r,b.g,b.b,b.a]);
3588},isLight:function(){
3589return this.asHSL().b>0.5;
3590},isDark:function(){
3591return (!this.isLight());
3592},toHSLString:function(){
3593var c=this.asHSL();
3594var ccc=MochiKit.Color.clampColorComponent;
3595var rval=this._hslString;
3596if(!rval){
3597var mid=(ccc(c.h,360).toFixed(0)+","+ccc(c.s,100).toPrecision(4)+"%"+","+ccc(c.l,100).toPrecision(4)+"%");
3598var a=c.a;
3599if(a>=1){
3600a=1;
3601rval="hsl("+mid+")";
3602}else{
3603if(a<=0){
3604a=0;
3605}
3606rval="hsla("+mid+","+a+")";
3607}
3608this._hslString=rval;
3609}
3610return rval;
3611},toRGBString:function(){
3612var c=this.rgb;
3613var ccc=MochiKit.Color.clampColorComponent;
3614var rval=this._rgbString;
3615if(!rval){
3616var mid=(ccc(c.r,255).toFixed(0)+","+ccc(c.g,255).toFixed(0)+","+ccc(c.b,255).toFixed(0));
3617if(c.a!=1){
3618rval="rgba("+mid+","+c.a+")";
3619}else{
3620rval="rgb("+mid+")";
3621}
3622this._rgbString=rval;
3623}
3624return rval;
3625},asRGB:function(){
3626return MochiKit.Base.clone(this.rgb);
3627},toHexString:function(){
3628var m=MochiKit.Color;
3629var c=this.rgb;
3630var ccc=MochiKit.Color.clampColorComponent;
3631var rval=this._hexString;
3632if(!rval){
3633rval=("#"+m.toColorPart(ccc(c.r,255))+m.toColorPart(ccc(c.g,255))+m.toColorPart(ccc(c.b,255)));
3634this._hexString=rval;
3635}
3636return rval;
3637},asHSV:function(){
3638var hsv=this.hsv;
3639var c=this.rgb;
3640if(typeof (hsv)=="undefined"||hsv===null){
3641hsv=MochiKit.Color.rgbToHSV(this.rgb);
3642this.hsv=hsv;
3643}
3644return MochiKit.Base.clone(hsv);
3645},asHSL:function(){
3646var hsl=this.hsl;
3647var c=this.rgb;
3648if(typeof (hsl)=="undefined"||hsl===null){
3649hsl=MochiKit.Color.rgbToHSL(this.rgb);
3650this.hsl=hsl;
3651}
3652return MochiKit.Base.clone(hsl);
3653},toString:function(){
3654return this.toRGBString();
3655},repr:function(){
3656var c=this.rgb;
3657var col=[c.r,c.g,c.b,c.a];
3658return this.__class__.NAME+"("+col.join(", ")+")";
3659}};
3660MochiKit.Base.update(MochiKit.Color.Color,{fromRGB:function(red,_486,blue,_487){
3661var _488=MochiKit.Color.Color;
3662if(arguments.length==1){
3663var rgb=red;
3664red=rgb.r;
3665_486=rgb.g;
3666blue=rgb.b;
3667if(typeof (rgb.a)=="undefined"){
3668_487=undefined;
3669}else{
3670_487=rgb.a;
3671}
3672}
3673return new _488(red,_486,blue,_487);
3674},fromHSL:function(hue,_489,_490,_491){
3675var m=MochiKit.Color;
3676return m.Color.fromRGB(m.hslToRGB.apply(m,arguments));
3677},fromHSV:function(hue,_492,_493,_494){
3678var m=MochiKit.Color;
3679return m.Color.fromRGB(m.hsvToRGB.apply(m,arguments));
3680},fromName:function(name){
3681var _495=MochiKit.Color.Color;
3682if(name.charAt(0)=="\""){
3683name=name.substr(1,name.length-2);
3684}
3685var _496=_495._namedColors[name.toLowerCase()];
3686if(typeof (_496)=="string"){
3687return _495.fromHexString(_496);
3688}else{
3689if(name=="transparent"){
3690return _495.transparentColor();
3691}
3692}
3693return null;
3694},fromString:function(_497){
3695var self=MochiKit.Color.Color;
3696var _498=_497.substr(0,3);
3697if(_498=="rgb"){
3698return self.fromRGBString(_497);
3699}else{
3700if(_498=="hsl"){
3701return self.fromHSLString(_497);
3702}else{
3703if(_497.charAt(0)=="#"){
3704return self.fromHexString(_497);
3705}
3706}
3707}
3708return self.fromName(_497);
3709},fromHexString:function(_499){
3710if(_499.charAt(0)=="#"){
3711_499=_499.substring(1);
3712}
3713var _500=[];
3714var i,hex;
3715if(_499.length==3){
3716for(i=0;i<3;i++){
3717hex=_499.substr(i,1);
3718_500.push(parseInt(hex+hex,16)/255);
3719}
3720}else{
3721for(i=0;i<6;i+=2){
3722hex=_499.substr(i,2);
3723_500.push(parseInt(hex,16)/255);
3724}
3725}
3726var _501=MochiKit.Color.Color;
3727return _501.fromRGB.apply(_501,_500);
3728},_fromColorString:function(pre,_503,_504,_505){
3729if(_505.indexOf(pre)===0){
3730_505=_505.substring(_505.indexOf("(",3)+1,_505.length-1);
3731}
3732var _506=_505.split(/\s*,\s*/);
3733var _507=[];
3734for(var i=0;i<_506.length;i++){
3735var c=_506[i];
3736var val;
3737var _508=c.substring(c.length-3);
3738if(c.charAt(c.length-1)=="%"){
3739val=0.01*parseFloat(c.substring(0,c.length-1));
3740}else{
3741if(_508=="deg"){
3742val=parseFloat(c)/360;
3743}else{
3744if(_508=="rad"){
3745val=parseFloat(c)/(Math.PI*2);
3746}else{
3747val=_504[i]*parseFloat(c);
3748}
3749}
3750}
3751_507.push(val);
3752}
3753return this[_503].apply(this,_507);
3754},fromComputedStyle:function(elem,_509,_510){
3755var d=MochiKit.DOM;
3756var cls=MochiKit.Color.Color;
3757for(elem=d.getElement(elem);elem;elem=elem.parentNode){
3758var _511=d.computedStyle.apply(d,arguments);
3759if(!_511){
3760continue;
3761}
3762var _512=cls.fromString(_511);
3763if(!_512){
3764break;
3765}
3766if(_512.asRGB().a>0){
3767return _512;
3768}
3769}
3770return null;
3771},fromBackground:function(elem){
3772var cls=MochiKit.Color.Color;
3773return cls.fromComputedStyle(elem,"backgroundColor","background-color")||cls.whiteColor();
3774},fromText:function(elem){
3775var cls=MochiKit.Color.Color;
3776return cls.fromComputedStyle(elem,"color","color")||cls.blackColor();
3777},namedColors:function(){
3778return MochiKit.Base.clone(MochiKit.Color.Color._namedColors);
3779}});
3780MochiKit.Base.update(MochiKit.Color,{clampColorComponent:function(v,_513){
3781v*=_513;
3782if(v<0){
3783return 0;
3784}else{
3785if(v>_513){
3786return _513;
3787}else{
3788return v;
3789}
3790}
3791},_hslValue:function(n1,n2,hue){
3792if(hue>6){
3793hue-=6;
3794}else{
3795if(hue<0){
3796hue+=6;
3797}
3798}
3799var val;
3800if(hue<1){
3801val=n1+(n2-n1)*hue;
3802}else{
3803if(hue<3){
3804val=n2;
3805}else{
3806if(hue<4){
3807val=n1+(n2-n1)*(4-hue);
3808}else{
3809val=n1;
3810}
3811}
3812}
3813return val;
3814},hsvToRGB:function(hue,_516,_517,_518){
3815if(arguments.length==1){
3816var hsv=hue;
3817hue=hsv.h;
3818_516=hsv.s;
3819_517=hsv.v;
3820_518=hsv.a;
3821}
3822var red;
3823var _519;
3824var blue;
3825if(_516===0){
3826red=0;
3827_519=0;
3828blue=0;
3829}else{
3830var i=Math.floor(hue*6);
3831var f=(hue*6)-i;
3832var p=_517*(1-_516);
3833var q=_517*(1-(_516*f));
3834var t=_517*(1-(_516*(1-f)));
3835switch(i){
3836case 1:
3837red=q;
3838_519=_517;
3839blue=p;
3840break;
3841case 2:
3842red=p;
3843_519=_517;
3844blue=t;
3845break;
3846case 3:
3847red=p;
3848_519=q;
3849blue=_517;
3850break;
3851case 4:
3852red=t;
3853_519=p;
3854blue=_517;
3855break;
3856case 5:
3857red=_517;
3858_519=p;
3859blue=q;
3860break;
3861case 6:
3862case 0:
3863red=_517;
3864_519=t;
3865blue=p;
3866break;
3867}
3868}
3869return {r:red,g:_519,b:blue,a:_518};
3870},hslToRGB:function(hue,_521,_522,_523){
3871if(arguments.length==1){
3872var hsl=hue;
3873hue=hsl.h;
3874_521=hsl.s;
3875_522=hsl.l;
3876_523=hsl.a;
3877}
3878var red;
3879var _524;
3880var blue;
3881if(_521===0){
3882red=_522;
3883_524=_522;
3884blue=_522;
3885}else{
3886var m2;
3887if(_522<=0.5){
3888m2=_522*(1+_521);
3889}else{
3890m2=_522+_521-(_522*_521);
3891}
3892var m1=(2*_522)-m2;
3893var f=MochiKit.Color._hslValue;
3894var h6=hue*6;
3895red=f(m1,m2,h6+2);
3896_524=f(m1,m2,h6);
3897blue=f(m1,m2,h6-2);
3898}
3899return {r:red,g:_524,b:blue,a:_523};
3900},rgbToHSV:function(red,_528,blue,_529){
3901if(arguments.length==1){
3902var rgb=red;
3903red=rgb.r;
3904_528=rgb.g;
3905blue=rgb.b;
3906_529=rgb.a;
3907}
3908var max=Math.max(Math.max(red,_528),blue);
3909var min=Math.min(Math.min(red,_528),blue);
3910var hue;
3911var _532;
3912var _533=max;
3913if(min==max){
3914hue=0;
3915_532=0;
3916}else{
3917var _534=(max-min);
3918_532=_534/max;
3919if(red==max){
3920hue=(_528-blue)/_534;
3921}else{
3922if(_528==max){
3923hue=2+((blue-red)/_534);
3924}else{
3925hue=4+((red-_528)/_534);
3926}
3927}
3928hue/=6;
3929if(hue<0){
3930hue+=1;
3931}
3932if(hue>1){
3933hue-=1;
3934}
3935}
3936return {h:hue,s:_532,v:_533,a:_529};
3937},rgbToHSL:function(red,_535,blue,_536){
3938if(arguments.length==1){
3939var rgb=red;
3940red=rgb.r;
3941_535=rgb.g;
3942blue=rgb.b;
3943_536=rgb.a;
3944}
3945var max=Math.max(red,Math.max(_535,blue));
3946var min=Math.min(red,Math.min(_535,blue));
3947var hue;
3948var _537;
3949var _538=(max+min)/2;
3950var _539=max-min;
3951if(_539===0){
3952hue=0;
3953_537=0;
3954}else{
3955if(_538<=0.5){
3956_537=_539/(max+min);
3957}else{
3958_537=_539/(2-max-min);
3959}
3960if(red==max){
3961hue=(_535-blue)/_539;
3962}else{
3963if(_535==max){
3964hue=2+((blue-red)/_539);
3965}else{
3966hue=4+((red-_535)/_539);
3967}
3968}
3969hue/=6;
3970if(hue<0){
3971hue+=1;
3972}
3973if(hue>1){
3974hue-=1;
3975}
3976}
3977return {h:hue,s:_537,l:_538,a:_536};
3978},toColorPart:function(num){
3979num=Math.round(num);
3980var _540=num.toString(16);
3981if(num<16){
3982return "0"+_540;
3983}
3984return _540;
3985},__new__:function(){
3986var m=MochiKit.Base;
3987this.Color.fromRGBString=m.bind(this.Color._fromColorString,this.Color,"rgb","fromRGB",[1/255,1/255,1/255,1]);
3988this.Color.fromHSLString=m.bind(this.Color._fromColorString,this.Color,"hsl","fromHSL",[1/360,0.01,0.01,1]);
3989var _541=1/3;
3990var _542={black:[0,0,0],blue:[0,0,1],brown:[0.6,0.4,0.2],cyan:[0,1,1],darkGray:[_541,_541,_541],gray:[0.5,0.5,0.5],green:[0,1,0],lightGray:[2*_541,2*_541,2*_541],magenta:[1,0,1],orange:[1,0.5,0],purple:[0.5,0,0.5],red:[1,0,0],transparent:[0,0,0,0],white:[1,1,1],yellow:[1,1,0]};
3991var _543=function(name,r,g,b,a){
3992var rval=this.fromRGB(r,g,b,a);
3993this[name]=function(){
3994return rval;
3995};
3996return rval;
3997};
3998for(var k in _542){
3999var name=k+"Color";
4000var _545=m.concat([_543,this.Color,name],_542[k]);
4001this.Color[name]=m.bind.apply(null,_545);
4002}
4003var _546=function(){
4004for(var i=0;i<arguments.length;i++){
4005if(!(arguments[i] instanceof Color)){
4006return false;
4007}
4008}
4009return true;
4010};
4011var _547=function(a,b){
4012return a.compareRGB(b);
4013};
4014m.nameFunctions(this);
4015m.registerComparator(this.Color.NAME,_546,_547);
4016this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
4017}});
4018MochiKit.Color.EXPORT=["Color"];
4019MochiKit.Color.EXPORT_OK=["clampColorComponent","rgbToHSL","hslToRGB","rgbToHSV","hsvToRGB","toColorPart"];
4020MochiKit.Color.__new__();
4021MochiKit.Base._exportSymbols(this,MochiKit.Color);
4022MochiKit.Color.Color._namedColors={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};
4023if(typeof (dojo)!="undefined"){
4024dojo.provide("MochiKit.Signal");
4025dojo.require("MochiKit.Base");
4026dojo.require("MochiKit.DOM");
4027}
4028if(typeof (JSAN)!="undefined"){
4029JSAN.use("MochiKit.Base",[]);
4030JSAN.use("MochiKit.DOM",[]);
4031}
4032try{
4033if(typeof (MochiKit.Base)=="undefined"){
4034throw "";
4035}
4036}
4037catch(e){
4038throw "MochiKit.Signal depends on MochiKit.Base!";
4039}
4040try{
4041if(typeof (MochiKit.DOM)=="undefined"){
4042throw "";
4043}
4044}
4045catch(e){
4046throw "MochiKit.Signal depends on MochiKit.DOM!";
4047}
4048if(typeof (MochiKit.Signal)=="undefined"){
4049MochiKit.Signal={};
4050}
4051MochiKit.Signal.NAME="MochiKit.Signal";
4052MochiKit.Signal.VERSION="1.3.1";
4053MochiKit.Signal._observers=[];
4054MochiKit.Signal.Event=function(src,e){
4055this._event=e||window.event;
4056this._src=src;
4057};
4058MochiKit.Base.update(MochiKit.Signal.Event.prototype,{__repr__:function(){
4059var repr=MochiKit.Base.repr;
4060var str="{event(): "+repr(this.event())+", src(): "+repr(this.src())+", type(): "+repr(this.type())+", target(): "+repr(this.target())+", modifier(): "+"{alt: "+repr(this.modifier().alt)+", ctrl: "+repr(this.modifier().ctrl)+", meta: "+repr(this.modifier().meta)+", shift: "+repr(this.modifier().shift)+", any: "+repr(this.modifier().any)+"}";
4061if(this.type()&&this.type().indexOf("key")===0){
4062str+=", key(): {code: "+repr(this.key().code)+", string: "+repr(this.key().string)+"}";
4063}
4064if(this.type()&&(this.type().indexOf("mouse")===0||this.type().indexOf("click")!=-1||this.type()=="contextmenu")){
4065str+=", mouse(): {page: "+repr(this.mouse().page)+", client: "+repr(this.mouse().client);
4066if(this.type()!="mousemove"){
4067str+=", button: {left: "+repr(this.mouse().button.left)+", middle: "+repr(this.mouse().button.middle)+", right: "+repr(this.mouse().button.right)+"}}";
4068}else{
4069str+="}";
4070}
4071}
4072if(this.type()=="mouseover"||this.type()=="mouseout"){
4073str+=", relatedTarget(): "+repr(this.relatedTarget());
4074}
4075str+="}";
4076return str;
4077},toString:function(){
4078return this.__repr__();
4079},src:function(){
4080return this._src;
4081},event:function(){
4082return this._event;
4083},type:function(){
4084return this._event.type||undefined;
4085},target:function(){
4086return this._event.target||this._event.srcElement;
4087},relatedTarget:function(){
4088if(this.type()=="mouseover"){
4089return (this._event.relatedTarget||this._event.fromElement);
4090}else{
4091if(this.type()=="mouseout"){
4092return (this._event.relatedTarget||this._event.toElement);
4093}
4094}
4095return undefined;
4096},modifier:function(){
4097var m={};
4098m.alt=this._event.altKey;
4099m.ctrl=this._event.ctrlKey;
4100m.meta=this._event.metaKey||false;
4101m.shift=this._event.shiftKey;
4102m.any=m.alt||m.ctrl||m.shift||m.meta;
4103return m;
4104},key:function(){
4105var k={};
4106if(this.type()&&this.type().indexOf("key")===0){
4107if(this.type()=="keydown"||this.type()=="keyup"){
4108k.code=this._event.keyCode;
4109k.string=(MochiKit.Signal._specialKeys[k.code]||"KEY_UNKNOWN");
4110return k;
4111}else{
4112if(this.type()=="keypress"){
4113k.code=0;
4114k.string="";
4115if(typeof (this._event.charCode)!="undefined"&&this._event.charCode!==0&&!MochiKit.Signal._specialMacKeys[this._event.charCode]){
4116k.code=this._event.charCode;
4117k.string=String.fromCharCode(k.code);
4118}else{
4119if(this._event.keyCode&&typeof (this._event.charCode)=="undefined"){
4120k.code=this._event.keyCode;
4121k.string=String.fromCharCode(k.code);
4122}
4123}
4124return k;
4125}
4126}
4127}
4128return undefined;
4129},mouse:function(){
4130var m={};
4131var e=this._event;
4132if(this.type()&&(this.type().indexOf("mouse")===0||this.type().indexOf("click")!=-1||this.type()=="contextmenu")){
4133m.client=new MochiKit.DOM.Coordinates(0,0);
4134if(e.clientX||e.clientY){
4135m.client.x=(!e.clientX||e.clientX<0)?0:e.clientX;
4136m.client.y=(!e.clientY||e.clientY<0)?0:e.clientY;
4137}
4138m.page=new MochiKit.DOM.Coordinates(0,0);
4139if(e.pageX||e.pageY){
4140m.page.x=(!e.pageX||e.pageX<0)?0:e.pageX;
4141m.page.y=(!e.pageY||e.pageY<0)?0:e.pageY;
4142}else{
4143var de=MochiKit.DOM._document.documentElement;
4144var b=MochiKit.DOM._document.body;
4145m.page.x=e.clientX+(de.scrollLeft||b.scrollLeft)-(de.clientLeft||b.clientLeft);
4146m.page.y=e.clientY+(de.scrollTop||b.scrollTop)-(de.clientTop||b.clientTop);
4147}
4148if(this.type()!="mousemove"){
4149m.button={};
4150m.button.left=false;
4151m.button.right=false;
4152m.button.middle=false;
4153if(e.which){
4154m.button.left=(e.which==1);
4155m.button.middle=(e.which==2);
4156m.button.right=(e.which==3);
4157}else{
4158m.button.left=!!(e.button&1);
4159m.button.right=!!(e.button&2);
4160m.button.middle=!!(e.button&4);
4161}
4162}
4163return m;
4164}
4165return undefined;
4166},stop:function(){
4167this.stopPropagation();
4168this.preventDefault();
4169},stopPropagation:function(){
4170if(this._event.stopPropagation){
4171this._event.stopPropagation();
4172}else{
4173this._event.cancelBubble=true;
4174}
4175},preventDefault:function(){
4176if(this._event.preventDefault){
4177this._event.preventDefault();
4178}else{
4179this._event.returnValue=false;
4180}
4181}});
4182MochiKit.Signal._specialMacKeys={3:"KEY_ENTER",63289:"KEY_NUM_PAD_CLEAR",63276:"KEY_PAGE_UP",63277:"KEY_PAGE_DOWN",63275:"KEY_END",63273:"KEY_HOME",63234:"KEY_ARROW_LEFT",63232:"KEY_ARROW_UP",63235:"KEY_ARROW_RIGHT",63233:"KEY_ARROW_DOWN",63302:"KEY_INSERT",63272:"KEY_DELETE"};
4183for(i=63236;i<=63242;i++){
4184MochiKit.Signal._specialMacKeys[i]="KEY_F"+(i-63236+1);
4185}
4186MochiKit.Signal._specialKeys={8:"KEY_BACKSPACE",9:"KEY_TAB",12:"KEY_NUM_PAD_CLEAR",13:"KEY_ENTER",16:"KEY_SHIFT",17:"KEY_CTRL",18:"KEY_ALT",19:"KEY_PAUSE",20:"KEY_CAPS_LOCK",27:"KEY_ESCAPE",32:"KEY_SPACEBAR",33:"KEY_PAGE_UP",34:"KEY_PAGE_DOWN",35:"KEY_END",36:"KEY_HOME",37:"KEY_ARROW_LEFT",38:"KEY_ARROW_UP",39:"KEY_ARROW_RIGHT",40:"KEY_ARROW_DOWN",44:"KEY_PRINT_SCREEN",45:"KEY_INSERT",46:"KEY_DELETE",59:"KEY_SEMICOLON",91:"KEY_WINDOWS_LEFT",92:"KEY_WINDOWS_RIGHT",93:"KEY_SELECT",106:"KEY_NUM_PAD_ASTERISK",107:"KEY_NUM_PAD_PLUS_SIGN",109:"KEY_NUM_PAD_HYPHEN-MINUS",110:"KEY_NUM_PAD_FULL_STOP",111:"KEY_NUM_PAD_SOLIDUS",144:"KEY_NUM_LOCK",145:"KEY_SCROLL_LOCK",186:"KEY_SEMICOLON",187:"KEY_EQUALS_SIGN",188:"KEY_COMMA",189:"KEY_HYPHEN-MINUS",190:"KEY_FULL_STOP",191:"KEY_SOLIDUS",192:"KEY_GRAVE_ACCENT",219:"KEY_LEFT_SQUARE_BRACKET",220:"KEY_REVERSE_SOLIDUS",221:"KEY_RIGHT_SQUARE_BRACKET",222:"KEY_APOSTROPHE"};
4187for(var i=48;i<=57;i++){
4188MochiKit.Signal._specialKeys[i]="KEY_"+(i-48);
4189}
4190for(i=65;i<=90;i++){
4191MochiKit.Signal._specialKeys[i]="KEY_"+String.fromCharCode(i);
4192}
4193for(i=96;i<=105;i++){
4194MochiKit.Signal._specialKeys[i]="KEY_NUM_PAD_"+(i-96);
4195}
4196for(i=112;i<=123;i++){
4197MochiKit.Signal._specialKeys[i]="KEY_F"+(i-112+1);
4198}
4199MochiKit.Base.update(MochiKit.Signal,{__repr__:function(){
4200return "["+this.NAME+" "+this.VERSION+"]";
4201},toString:function(){
4202return this.__repr__();
4203},_unloadCache:function(){
4204var self=MochiKit.Signal;
4205var _548=self._observers;
4206for(var i=0;i<_548.length;i++){
4207self._disconnect(_548[i]);
4208}
4209delete self._observers;
4210try{
4211window.onload=undefined;
4212}
4213catch(e){
4214}
4215try{
4216window.onunload=undefined;
4217}
4218catch(e){
4219}
4220},_listener:function(src,func,obj,_549){
4221var E=MochiKit.Signal.Event;
4222if(!_549){
4223return MochiKit.Base.bind(func,obj);
4224}
4225obj=obj||src;
4226if(typeof (func)=="string"){
4227return function(_551){
4228obj[func].apply(obj,[new E(src,_551)]);
4229};
4230}else{
4231return function(_552){
4232func.apply(obj,[new E(src,_552)]);
4233};
4234}
4235},connect:function(src,sig,_554,_555){
4236src=MochiKit.DOM.getElement(src);
4237var self=MochiKit.Signal;
4238if(typeof (sig)!="string"){
4239throw new Error("'sig' must be a string");
4240}
4241var obj=null;
4242var func=null;
4243if(typeof (_555)!="undefined"){
4244obj=_554;
4245func=_555;
4246if(typeof (_555)=="string"){
4247if(typeof (_554[_555])!="function"){
4248throw new Error("'funcOrStr' must be a function on 'objOrFunc'");
4249}
4250}else{
4251if(typeof (_555)!="function"){
4252throw new Error("'funcOrStr' must be a function or string");
4253}
4254}
4255}else{
4256if(typeof (_554)!="function"){
4257throw new Error("'objOrFunc' must be a function if 'funcOrStr' is not given");
4258}else{
4259func=_554;
4260}
4261}
4262if(typeof (obj)=="undefined"||obj===null){
4263obj=src;
4264}
4265var _556=!!(src.addEventListener||src.attachEvent);
4266var _557=self._listener(src,func,obj,_556);
4267if(src.addEventListener){
4268src.addEventListener(sig.substr(2),_557,false);
4269}else{
4270if(src.attachEvent){
4271src.attachEvent(sig,_557);
4272}
4273}
4274var _558=[src,sig,_557,_556,_554,_555];
4275self._observers.push(_558);
4276return _558;
4277},_disconnect:function(_559){
4278if(!_559[3]){
4279return;
4280}
4281var src=_559[0];
4282var sig=_559[1];
4283var _560=_559[2];
4284if(src.removeEventListener){
4285src.removeEventListener(sig.substr(2),_560,false);
4286}else{
4287if(src.detachEvent){
4288src.detachEvent(sig,_560);
4289}else{
4290throw new Error("'src' must be a DOM element");
4291}
4292}
4293},disconnect:function(_561){
4294var self=MochiKit.Signal;
4295var _562=self._observers;
4296var m=MochiKit.Base;
4297if(arguments.length>1){
4298var src=MochiKit.DOM.getElement(arguments[0]);
4299var sig=arguments[1];
4300var obj=arguments[2];
4301var func=arguments[3];
4302for(var i=_562.length-1;i>=0;i--){
4303var o=_562[i];
4304if(o[0]===src&&o[1]===sig&&o[4]===obj&&o[5]===func){
4305self._disconnect(o);
4306_562.splice(i,1);
4307return true;
4308}
4309}
4310}else{
4311var idx=m.findIdentical(_562,_561);
4312if(idx>=0){
4313self._disconnect(_561);
4314_562.splice(idx,1);
4315return true;
4316}
4317}
4318return false;
4319},disconnectAll:function(src,sig){
4320src=MochiKit.DOM.getElement(src);
4321var m=MochiKit.Base;
4322var _563=m.flattenArguments(m.extend(null,arguments,1));
4323var self=MochiKit.Signal;
4324var _564=self._disconnect;
4325var _565=self._observers;
4326if(_563.length===0){
4327for(var i=_565.length-1;i>=0;i--){
4328var _566=_565[i];
4329if(_566[0]===src){
4330_564(_566);
4331_565.splice(i,1);
4332}
4333}
4334}else{
4335var sigs={};
4336for(var i=0;i<_563.length;i++){
4337sigs[_563[i]]=true;
4338}
4339for(var i=_565.length-1;i>=0;i--){
4340var _566=_565[i];
4341if(_566[0]===src&&_566[1] in sigs){
4342_564(_566);
4343_565.splice(i,1);
4344}
4345}
4346}
4347},signal:function(src,sig){
4348var _568=MochiKit.Signal._observers;
4349src=MochiKit.DOM.getElement(src);
4350var args=MochiKit.Base.extend(null,arguments,2);
4351var _569=[];
4352for(var i=0;i<_568.length;i++){
4353var _570=_568[i];
4354if(_570[0]===src&&_570[1]===sig){
4355try{
4356_570[2].apply(src,args);
4357}
4358catch(e){
4359_569.push(e);
4360}
4361}
4362}
4363if(_569.length==1){
4364throw _569[0];
4365}else{
4366if(_569.length>1){
4367var e=new Error("Multiple errors thrown in handling 'sig', see errors property");
4368e.errors=_569;
4369throw e;
4370}
4371}
4372}});
4373MochiKit.Signal.EXPORT_OK=[];
4374MochiKit.Signal.EXPORT=["connect","disconnect","signal","disconnectAll"];
4375MochiKit.Signal.__new__=function(win){
4376var m=MochiKit.Base;
4377this._document=document;
4378this._window=win;
4379try{
4380this.connect(window,"onunload",this._unloadCache);
4381}
4382catch(e){
4383}
4384this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
4385m.nameFunctions(this);
4386};
4387MochiKit.Signal.__new__(this);
4388if(!MochiKit.__compat__){
4389connect=MochiKit.Signal.connect;
4390disconnect=MochiKit.Signal.disconnect;
4391disconnectAll=MochiKit.Signal.disconnectAll;
4392signal=MochiKit.Signal.signal;
4393}
4394MochiKit.Base._exportSymbols(this,MochiKit.Signal);
4395if(typeof (dojo)!="undefined"){
4396dojo.provide("MochiKit.Visual");
4397dojo.require("MochiKit.Base");
4398dojo.require("MochiKit.DOM");
4399dojo.require("MochiKit.Color");
4400}
4401if(typeof (JSAN)!="undefined"){
4402JSAN.use("MochiKit.Base",[]);
4403JSAN.use("MochiKit.DOM",[]);
4404JSAN.use("MochiKit.Color",[]);
4405}
4406try{
4407if(typeof (MochiKit.Base)=="undefined"||typeof (MochiKit.DOM)=="undefined"||typeof (MochiKit.Color)=="undefined"){
4408throw "";
4409}
4410}
4411catch(e){
4412throw "MochiKit.Visual depends on MochiKit.Base, MochiKit.DOM and MochiKit.Color!";
4413}
4414if(typeof (MochiKit.Visual)=="undefined"){
4415MochiKit.Visual={};
4416}
4417MochiKit.Visual.NAME="MochiKit.Visual";
4418MochiKit.Visual.VERSION="1.3.1";
4419MochiKit.Visual.__repr__=function(){
4420return "["+this.NAME+" "+this.VERSION+"]";
4421};
4422MochiKit.Visual.toString=function(){
4423return this.__repr__();
4424};
4425MochiKit.Visual._RoundCorners=function(e,_571){
4426e=MochiKit.DOM.getElement(e);
4427this._setOptions(_571);
4428if(this.options.__unstable__wrapElement){
4429e=this._doWrap(e);
4430}
4431var _572=this.options.color;
4432var C=MochiKit.Color.Color;
4433if(this.options.color=="fromElement"){
4434_572=C.fromBackground(e);
4435}else{
4436if(!(_572 instanceof C)){
4437_572=C.fromString(_572);
4438}
4439}
4440this.isTransparent=(_572.asRGB().a<=0);
4441var _574=this.options.bgColor;
4442if(this.options.bgColor=="fromParent"){
4443_574=C.fromBackground(e.offsetParent);
4444}else{
4445if(!(_574 instanceof C)){
4446_574=C.fromString(_574);
4447}
4448}
4449this._roundCornersImpl(e,_572,_574);
4450};
4451MochiKit.Visual._RoundCorners.prototype={_doWrap:function(e){
4452var _575=e.parentNode;
4453var doc=MochiKit.DOM.currentDocument();
4454if(typeof (doc.defaultView)=="undefined"||doc.defaultView===null){
4455return e;
4456}
4457var _576=doc.defaultView.getComputedStyle(e,null);
4458if(typeof (_576)=="undefined"||_576===null){
4459return e;
4460}
4461var _577=MochiKit.DOM.DIV({"style":{display:"block",marginTop:_576.getPropertyValue("padding-top"),marginRight:_576.getPropertyValue("padding-right"),marginBottom:_576.getPropertyValue("padding-bottom"),marginLeft:_576.getPropertyValue("padding-left"),padding:"0px"}});
4462_577.innerHTML=e.innerHTML;
4463e.innerHTML="";
4464e.appendChild(_577);
4465return e;
4466},_roundCornersImpl:function(e,_578,_579){
4467if(this.options.border){
4468this._renderBorder(e,_579);
4469}
4470if(this._isTopRounded()){
4471this._roundTopCorners(e,_578,_579);
4472}
4473if(this._isBottomRounded()){
4474this._roundBottomCorners(e,_578,_579);
4475}
4476},_renderBorder:function(el,_580){
4477var _581="1px solid "+this._borderColor(_580);
4478var _582="border-left: "+_581;
4479var _583="border-right: "+_581;
4480var _584="style='"+_582+";"+_583+"'";
4481el.innerHTML="<div "+_584+">"+el.innerHTML+"</div>";
4482},_roundTopCorners:function(el,_585,_586){
4483var _587=this._createCorner(_586);
4484for(var i=0;i<this.options.numSlices;i++){
4485_587.appendChild(this._createCornerSlice(_585,_586,i,"top"));
4486}
4487el.style.paddingTop=0;
4488el.insertBefore(_587,el.firstChild);
4489},_roundBottomCorners:function(el,_588,_589){
4490var _590=this._createCorner(_589);
4491for(var i=(this.options.numSlices-1);i>=0;i--){
4492_590.appendChild(this._createCornerSlice(_588,_589,i,"bottom"));
4493}
4494el.style.paddingBottom=0;
4495el.appendChild(_590);
4496},_createCorner:function(_591){
4497var dom=MochiKit.DOM;
4498return dom.DIV({style:{backgroundColor:_591.toString()}});
4499},_createCornerSlice:function(_592,_593,n,_594){
4500var _595=MochiKit.DOM.SPAN();
4501var _596=_595.style;
4502_596.backgroundColor=_592.toString();
4503_596.display="block";
4504_596.height="1px";
4505_596.overflow="hidden";
4506_596.fontSize="1px";
4507var _597=this._borderColor(_592,_593);
4508if(this.options.border&&n===0){
4509_596.borderTopStyle="solid";
4510_596.borderTopWidth="1px";
4511_596.borderLeftWidth="0px";
4512_596.borderRightWidth="0px";
4513_596.borderBottomWidth="0px";
4514_596.height="0px";
4515_596.borderColor=_597.toString();
4516}else{
4517if(_597){
4518_596.borderColor=_597.toString();
4519_596.borderStyle="solid";
4520_596.borderWidth="0px 1px";
4521}
4522}
4523if(!this.options.compact&&(n==(this.options.numSlices-1))){
4524_596.height="2px";
4525}
4526this._setMargin(_595,n,_594);
4527this._setBorder(_595,n,_594);
4528return _595;
4529},_setOptions:function(_598){
4530this.options={corners:"all",color:"fromElement",bgColor:"fromParent",blend:true,border:false,compact:false,__unstable__wrapElement:false};
4531MochiKit.Base.update(this.options,_598);
4532this.options.numSlices=(this.options.compact?2:4);
4533},_whichSideTop:function(){
4534var _599=this.options.corners;
4535if(this._hasString(_599,"all","top")){
4536return "";
4537}
4538var _600=(_599.indexOf("tl")!=-1);
4539var _601=(_599.indexOf("tr")!=-1);
4540if(_600&&_601){
4541return "";
4542}
4543if(_600){
4544return "left";
4545}
4546if(_601){
4547return "right";
4548}
4549return "";
4550},_whichSideBottom:function(){
4551var _602=this.options.corners;
4552if(this._hasString(_602,"all","bottom")){
4553return "";
4554}
4555var _603=(_602.indexOf("bl")!=-1);
4556var _604=(_602.indexOf("br")!=-1);
4557if(_603&&_604){
4558return "";
4559}
4560if(_603){
4561return "left";
4562}
4563if(_604){
4564return "right";
4565}
4566return "";
4567},_borderColor:function(_605,_606){
4568if(_605=="transparent"){
4569return _606;
4570}else{
4571if(this.options.border){
4572return this.options.border;
4573}else{
4574if(this.options.blend){
4575return _606.blendedColor(_605);
4576}
4577}
4578}
4579return "";
4580},_setMargin:function(el,n,_607){
4581var _608=this._marginSize(n)+"px";
4582var _609=(_607=="top"?this._whichSideTop():this._whichSideBottom());
4583var _610=el.style;
4584if(_609=="left"){
4585_610.marginLeft=_608;
4586_610.marginRight="0px";
4587}else{
4588if(_609=="right"){
4589_610.marginRight=_608;
4590_610.marginLeft="0px";
4591}else{
4592_610.marginLeft=_608;
4593_610.marginRight=_608;
4594}
4595}
4596},_setBorder:function(el,n,_611){
4597var _612=this._borderSize(n)+"px";
4598var _613=(_611=="top"?this._whichSideTop():this._whichSideBottom());
4599var _614=el.style;
4600if(_613=="left"){
4601_614.borderLeftWidth=_612;
4602_614.borderRightWidth="0px";
4603}else{
4604if(_613=="right"){
4605_614.borderRightWidth=_612;
4606_614.borderLeftWidth="0px";
4607}else{
4608_614.borderLeftWidth=_612;
4609_614.borderRightWidth=_612;
4610}
4611}
4612},_marginSize:function(n){
4613if(this.isTransparent){
4614return 0;
4615}
4616var o=this.options;
4617if(o.compact&&o.blend){
4618var _615=[1,0];
4619return _615[n];
4620}else{
4621if(o.compact){
4622var _616=[2,1];
4623return _616[n];
4624}else{
4625if(o.blend){
4626var _617=[3,2,1,0];
4627return _617[n];
4628}else{
4629var _618=[5,3,2,1];
4630return _618[n];
4631}
4632}
4633}
4634},_borderSize:function(n){
4635var o=this.options;
4636var _619;
4637if(o.compact&&(o.blend||this.isTransparent)){
4638return 1;
4639}else{
4640if(o.compact){
4641_619=[1,0];
4642}else{
4643if(o.blend){
4644_619=[2,1,1,1];
4645}else{
4646if(o.border){
4647_619=[0,2,0,0];
4648}else{
4649if(this.isTransparent){
4650_619=[5,3,2,1];
4651}else{
4652return 0;
4653}
4654}
4655}
4656}
4657}
4658return _619[n];
4659},_hasString:function(str){
4660for(var i=1;i<arguments.length;i++){
4661if(str.indexOf(arguments[i])!=-1){
4662return true;
4663}
4664}
4665return false;
4666},_isTopRounded:function(){
4667return this._hasString(this.options.corners,"all","top","tl","tr");
4668},_isBottomRounded:function(){
4669return this._hasString(this.options.corners,"all","bottom","bl","br");
4670},_hasSingleTextChild:function(el){
4671return (el.childNodes.length==1&&el.childNodes[0].nodeType==3);
4672}};
4673MochiKit.Visual.roundElement=function(e,_620){
4674new MochiKit.Visual._RoundCorners(e,_620);
4675};
4676MochiKit.Visual.roundClass=function(_621,_622,_623){
4677var _624=MochiKit.DOM.getElementsByTagAndClassName(_621,_622);
4678for(var i=0;i<_624.length;i++){
4679MochiKit.Visual.roundElement(_624[i],_623);
4680}
4681};
4682MochiKit.Visual.Color=MochiKit.Color.Color;
4683MochiKit.Visual.getElementsComputedStyle=MochiKit.DOM.computedStyle;
4684MochiKit.Visual.__new__=function(){
4685var m=MochiKit.Base;
4686m.nameFunctions(this);
4687this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
4688};
4689MochiKit.Visual.EXPORT=["roundElement","roundClass"];
4690MochiKit.Visual.EXPORT_OK=[];
4691MochiKit.Visual.__new__();
4692MochiKit.Base._exportSymbols(this,MochiKit.Visual);
4693if(typeof (MochiKit)=="undefined"){
4694MochiKit={};
4695}
4696if(typeof (MochiKit.MochiKit)=="undefined"){
4697MochiKit.MochiKit={};
4698}
4699MochiKit.MochiKit.NAME="MochiKit.MochiKit";
4700MochiKit.MochiKit.VERSION="1.3.1";
4701MochiKit.MochiKit.__repr__=function(){
4702return "["+this.NAME+" "+this.VERSION+"]";
4703};
4704MochiKit.MochiKit.toString=function(){
4705return this.__repr__();
4706};
4707MochiKit.MochiKit.SUBMODULES=["Base","Iter","Logging","DateTime","Format","Async","DOM","LoggingPane","Color","Signal","Visual"];
4708if(typeof (JSAN)!="undefined"||typeof (dojo)!="undefined"){
4709if(typeof (dojo)!="undefined"){
4710dojo.provide("MochiKit.MochiKit");
4711dojo.require("MochiKit.*");
4712}
4713if(typeof (JSAN)!="undefined"){
4714JSAN.use("MochiKit.Base",[]);
4715JSAN.use("MochiKit.Iter",[]);
4716JSAN.use("MochiKit.Logging",[]);
4717JSAN.use("MochiKit.DateTime",[]);
4718JSAN.use("MochiKit.Format",[]);
4719JSAN.use("MochiKit.Async",[]);
4720JSAN.use("MochiKit.DOM",[]);
4721JSAN.use("MochiKit.LoggingPane",[]);
4722JSAN.use("MochiKit.Color",[]);
4723JSAN.use("MochiKit.Signal",[]);
4724JSAN.use("MochiKit.Visual",[]);
4725}
4726(function(){
4727var _625=MochiKit.Base.extend;
4728var self=MochiKit.MochiKit;
4729var _626=self.SUBMODULES;
4730var _627=[];
4731var _628=[];
4732var _629={};
4733var i,k,m,all;
4734for(i=0;i<_626.length;i++){
4735m=MochiKit[_626[i]];
4736_625(_627,m.EXPORT);
4737_625(_628,m.EXPORT_OK);
4738for(k in m.EXPORT_TAGS){
4739_629[k]=_625(_629[k],m.EXPORT_TAGS[k]);
4740}
4741all=m.EXPORT_TAGS[":all"];
4742if(!all){
4743all=_625(null,m.EXPORT,m.EXPORT_OK);
4744}
4745var j;
4746for(j=0;j<all.length;j++){
4747k=all[j];
4748self[k]=m[k];
4749}
4750}
4751self.EXPORT=_627;
4752self.EXPORT_OK=_628;
4753self.EXPORT_TAGS=_629;
4754}());
4755}else{
4756if(typeof (MochiKit.__compat__)=="undefined"){
4757MochiKit.__compat__=true;
4758}
4759(function(){
4760var _630=document.getElementsByTagName("script");
4761var _631="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
4762var base=null;
4763var _632=null;
4764var _633={};
4765var i;
4766for(i=0;i<_630.length;i++){
4767var src=_630[i].getAttribute("src");
4768if(!src){
4769continue;
4770}
4771_633[src]=true;
4772if(src.match(/MochiKit.js$/)){
4773base=src.substring(0,src.lastIndexOf("MochiKit.js"));
4774_632=_630[i];
4775}
4776}
4777if(base===null){
4778return;
4779}
4780var _634=MochiKit.MochiKit.SUBMODULES;
4781for(var i=0;i<_634.length;i++){
4782if(MochiKit[_634[i]]){
4783continue;
4784}
4785var uri=base+_634[i]+".js";
4786if(uri in _633){
4787continue;
4788}
4789if(document.documentElement&&document.documentElement.namespaceURI==_631){
4790var s=document.createElementNS(_631,"script");
4791s.setAttribute("id","MochiKit_"+base+_634[i]);
4792s.setAttribute("src",uri);
4793s.setAttribute("type","application/x-javascript");
4794_632.parentNode.appendChild(s);
4795}else{
4796document.write("<script src=\""+uri+"\" type=\"text/javascript\"></script>");
4797}
4798}
4799})();
4800}
4801
4802
Note: リポジトリブラウザについてのヘルプは TracBrowser を参照してください。