12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113 |
- /***
- MochiKit.MochiKit 1.4 : PACKED VERSION
- THIS FILE IS AUTOMATICALLY GENERATED. If creating patches, please
- diff against the source tree, not this file.
- See <http://mochikit.com/> for documentation, downloads, license, etc.
- (c) 2005 Bob Ippolito. All rights Reserved.
- ***/
- if(typeof (dojo)!="undefined"){
- dojo.provide("MochiKit.Base");
- }
- if(typeof (MochiKit)=="undefined"){
- MochiKit={};
- }
- if(typeof (MochiKit.Base)=="undefined"){
- MochiKit.Base={};
- }
- if(typeof (MochiKit.__export__)=="undefined"){
- MochiKit.__export__=(MochiKit.__compat__||(typeof (JSAN)=="undefined"&&typeof (dojo)=="undefined"));
- }
- MochiKit.Base.VERSION="1.4";
- MochiKit.Base.NAME="MochiKit.Base";
- MochiKit.Base.update=function(_1,_2){
- if(_1===null){
- _1={};
- }
- for(var i=1;i<arguments.length;i++){
- var o=arguments[i];
- if(typeof (o)!="undefined"&&o!==null){
- for(var k in o){
- _1[k]=o[k];
- }
- }
- }
- return _1;
- };
- MochiKit.Base.update(MochiKit.Base,{__repr__:function(){
- return "["+this.NAME+" "+this.VERSION+"]";
- },toString:function(){
- return this.__repr__();
- },camelize:function(_6){
- var _7=_6.split("-");
- var cc=_7[0];
- for(var i=1;i<_7.length;i++){
- cc+=_7[i].charAt(0).toUpperCase()+_7[i].substring(1);
- }
- return cc;
- },counter:function(n){
- if(arguments.length===0){
- n=1;
- }
- return function(){
- return n++;
- };
- },clone:function(_b){
- var me=arguments.callee;
- if(arguments.length==1){
- me.prototype=_b;
- return new me();
- }
- },_flattenArray:function(_d,_e){
- for(var i=0;i<_e.length;i++){
- var o=_e[i];
- if(o instanceof Array){
- arguments.callee(_d,o);
- }else{
- _d.push(o);
- }
- }
- return _d;
- },flattenArray:function(lst){
- return MochiKit.Base._flattenArray([],lst);
- },flattenArguments:function(lst){
- var res=[];
- var m=MochiKit.Base;
- var _15=m.extend(null,arguments);
- while(_15.length){
- var o=_15.shift();
- if(o&&typeof (o)=="object"&&typeof (o.length)=="number"){
- for(var i=o.length-1;i>=0;i--){
- _15.unshift(o[i]);
- }
- }else{
- res.push(o);
- }
- }
- return res;
- },extend:function(_18,obj,_1a){
- if(!_1a){
- _1a=0;
- }
- if(obj){
- var l=obj.length;
- if(typeof (l)!="number"){
- if(typeof (MochiKit.Iter)!="undefined"){
- obj=MochiKit.Iter.list(obj);
- l=obj.length;
- }else{
- throw new TypeError("Argument not an array-like and MochiKit.Iter not present");
- }
- }
- if(!_18){
- _18=[];
- }
- for(var i=_1a;i<l;i++){
- _18.push(obj[i]);
- }
- }
- return _18;
- },updatetree:function(_1d,obj){
- if(_1d===null){
- _1d={};
- }
- for(var i=1;i<arguments.length;i++){
- var o=arguments[i];
- if(typeof (o)!="undefined"&&o!==null){
- for(var k in o){
- var v=o[k];
- if(typeof (_1d[k])=="object"&&typeof (v)=="object"){
- arguments.callee(_1d[k],v);
- }else{
- _1d[k]=v;
- }
- }
- }
- }
- return _1d;
- },setdefault:function(_23,obj){
- if(_23===null){
- _23={};
- }
- for(var i=1;i<arguments.length;i++){
- var o=arguments[i];
- for(var k in o){
- if(!(k in _23)){
- _23[k]=o[k];
- }
- }
- }
- return _23;
- },keys:function(obj){
- var _29=[];
- for(var _2a in obj){
- _29.push(_2a);
- }
- return _29;
- },values:function(obj){
- var _2c=[];
- for(var _2d in obj){
- _2c.push(obj[_2d]);
- }
- return _2c;
- },items:function(obj){
- var _2f=[];
- var e;
- for(var _31 in obj){
- var v;
- try{
- v=obj[_31];
- }
- catch(e){
- continue;
- }
- _2f.push([_31,v]);
- }
- return _2f;
- },_newNamedError:function(_33,_34,_35){
- _35.prototype=new MochiKit.Base.NamedError(_33.NAME+"."+_34);
- _33[_34]=_35;
- },operator:{truth:function(a){
- return !!a;
- },lognot:function(a){
- return !a;
- },identity:function(a){
- return a;
- },not:function(a){
- return ~a;
- },neg:function(a){
- return -a;
- },add:function(a,b){
- return a+b;
- },sub:function(a,b){
- return a-b;
- },div:function(a,b){
- return a/b;
- },mod:function(a,b){
- return a%b;
- },mul:function(a,b){
- return a*b;
- },and:function(a,b){
- return a&b;
- },or:function(a,b){
- return a|b;
- },xor:function(a,b){
- return a^b;
- },lshift:function(a,b){
- return a<<b;
- },rshift:function(a,b){
- return a>>b;
- },zrshift:function(a,b){
- return a>>>b;
- },eq:function(a,b){
- return a==b;
- },ne:function(a,b){
- return a!=b;
- },gt:function(a,b){
- return a>b;
- },ge:function(a,b){
- return a>=b;
- },lt:function(a,b){
- return a<b;
- },le:function(a,b){
- return a<=b;
- },seq:function(a,b){
- return a===b;
- },sne:function(a,b){
- return a!==b;
- },ceq:function(a,b){
- return MochiKit.Base.compare(a,b)===0;
- },cne:function(a,b){
- return MochiKit.Base.compare(a,b)!==0;
- },cgt:function(a,b){
- return MochiKit.Base.compare(a,b)==1;
- },cge:function(a,b){
- return MochiKit.Base.compare(a,b)!=-1;
- },clt:function(a,b){
- return MochiKit.Base.compare(a,b)==-1;
- },cle:function(a,b){
- return MochiKit.Base.compare(a,b)!=1;
- },logand:function(a,b){
- return a&&b;
- },logor:function(a,b){
- return a||b;
- },contains:function(a,b){
- return b in a;
- }},forwardCall:function(_73){
- return function(){
- return this[_73].apply(this,arguments);
- };
- },itemgetter:function(_74){
- return function(arg){
- return arg[_74];
- };
- },typeMatcher:function(){
- var _76={};
- for(var i=0;i<arguments.length;i++){
- var typ=arguments[i];
- _76[typ]=typ;
- }
- return function(){
- for(var i=0;i<arguments.length;i++){
- if(!(typeof (arguments[i]) in _76)){
- return false;
- }
- }
- return true;
- };
- },isNull:function(){
- for(var i=0;i<arguments.length;i++){
- if(arguments[i]!==null){
- return false;
- }
- }
- return true;
- },isUndefinedOrNull:function(){
- for(var i=0;i<arguments.length;i++){
- var o=arguments[i];
- if(!(typeof (o)=="undefined"||o===null)){
- return false;
- }
- }
- return true;
- },isEmpty:function(obj){
- return !MochiKit.Base.isNotEmpty.apply(this,arguments);
- },isNotEmpty:function(obj){
- for(var i=0;i<arguments.length;i++){
- var o=arguments[i];
- if(!(o&&o.length)){
- return false;
- }
- }
- return true;
- },isArrayLike:function(){
- for(var i=0;i<arguments.length;i++){
- var o=arguments[i];
- var typ=typeof (o);
- if((typ!="object"&&!(typ=="function"&&typeof (o.item)=="function"))||o===null||typeof (o.length)!="number"||o.nodeType===3){
- return false;
- }
- }
- return true;
- },isDateLike:function(){
- for(var i=0;i<arguments.length;i++){
- var o=arguments[i];
- if(typeof (o)!="object"||o===null||typeof (o.getTime)!="function"){
- return false;
- }
- }
- return true;
- },xmap:function(fn){
- if(fn===null){
- return MochiKit.Base.extend(null,arguments,1);
- }
- var _87=[];
- for(var i=1;i<arguments.length;i++){
- _87.push(fn(arguments[i]));
- }
- return _87;
- },map:function(fn,lst){
- var m=MochiKit.Base;
- var itr=MochiKit.Iter;
- var _8d=m.isArrayLike;
- if(arguments.length<=2){
- if(!_8d(lst)){
- if(itr){
- lst=itr.list(lst);
- if(fn===null){
- return lst;
- }
- }else{
- throw new TypeError("Argument not an array-like and MochiKit.Iter not present");
- }
- }
- if(fn===null){
- return m.extend(null,lst);
- }
- var _8e=[];
- for(var i=0;i<lst.length;i++){
- _8e.push(fn(lst[i]));
- }
- return _8e;
- }else{
- if(fn===null){
- fn=Array;
- }
- var _90=null;
- for(i=1;i<arguments.length;i++){
- if(!_8d(arguments[i])){
- if(itr){
- return itr.list(itr.imap.apply(null,arguments));
- }else{
- throw new TypeError("Argument not an array-like and MochiKit.Iter not present");
- }
- }
- var l=arguments[i].length;
- if(_90===null||_90>l){
- _90=l;
- }
- }
- _8e=[];
- for(i=0;i<_90;i++){
- var _92=[];
- for(var j=1;j<arguments.length;j++){
- _92.push(arguments[j][i]);
- }
- _8e.push(fn.apply(this,_92));
- }
- return _8e;
- }
- },xfilter:function(fn){
- var _95=[];
- if(fn===null){
- fn=MochiKit.Base.operator.truth;
- }
- for(var i=1;i<arguments.length;i++){
- var o=arguments[i];
- if(fn(o)){
- _95.push(o);
- }
- }
- return _95;
- },filter:function(fn,lst,_9a){
- var _9b=[];
- var m=MochiKit.Base;
- if(!m.isArrayLike(lst)){
- if(MochiKit.Iter){
- lst=MochiKit.Iter.list(lst);
- }else{
- throw new TypeError("Argument not an array-like and MochiKit.Iter not present");
- }
- }
- if(fn===null){
- fn=m.operator.truth;
- }
- if(typeof (Array.prototype.filter)=="function"){
- return Array.prototype.filter.call(lst,fn,_9a);
- }else{
- if(typeof (_9a)=="undefined"||_9a===null){
- for(var i=0;i<lst.length;i++){
- var o=lst[i];
- if(fn(o)){
- _9b.push(o);
- }
- }
- }else{
- for(i=0;i<lst.length;i++){
- o=lst[i];
- if(fn.call(_9a,o)){
- _9b.push(o);
- }
- }
- }
- }
- return _9b;
- },_wrapDumbFunction:function(_9f){
- return function(){
- switch(arguments.length){
- case 0:
- return _9f();
- case 1:
- return _9f(arguments[0]);
- case 2:
- return _9f(arguments[0],arguments[1]);
- case 3:
- return _9f(arguments[0],arguments[1],arguments[2]);
- }
- var _a0=[];
- for(var i=0;i<arguments.length;i++){
- _a0.push("arguments["+i+"]");
- }
- return eval("(func("+_a0.join(",")+"))");
- };
- },methodcaller:function(_a2){
- var _a3=MochiKit.Base.extend(null,arguments,1);
- if(typeof (_a2)=="function"){
- return function(obj){
- return _a2.apply(obj,_a3);
- };
- }else{
- return function(obj){
- return obj[_a2].apply(obj,_a3);
- };
- }
- },method:function(_a6,_a7){
- var m=MochiKit.Base;
- return m.bind.apply(this,m.extend([_a7,_a6],arguments,2));
- },compose:function(f1,f2){
- var _ab=[];
- var m=MochiKit.Base;
- if(arguments.length===0){
- throw new TypeError("compose() requires at least one argument");
- }
- for(var i=0;i<arguments.length;i++){
- var fn=arguments[i];
- if(typeof (fn)!="function"){
- throw new TypeError(m.repr(fn)+" is not a function");
- }
- _ab.push(fn);
- }
- return function(){
- var _af=arguments;
- for(var i=_ab.length-1;i>=0;i--){
- _af=[_ab[i].apply(this,_af)];
- }
- return _af[0];
- };
- },bind:function(_b1,_b2){
- if(typeof (_b1)=="string"){
- _b1=_b2[_b1];
- }
- var _b3=_b1.im_func;
- var _b4=_b1.im_preargs;
- var _b5=_b1.im_self;
- var m=MochiKit.Base;
- if(typeof (_b1)=="function"&&typeof (_b1.apply)=="undefined"){
- _b1=m._wrapDumbFunction(_b1);
- }
- if(typeof (_b3)!="function"){
- _b3=_b1;
- }
- if(typeof (_b2)!="undefined"){
- _b5=_b2;
- }
- if(typeof (_b4)=="undefined"){
- _b4=[];
- }else{
- _b4=_b4.slice();
- }
- m.extend(_b4,arguments,2);
- var _b7=function(){
- var _b8=arguments;
- var me=arguments.callee;
- if(me.im_preargs.length>0){
- _b8=m.concat(me.im_preargs,_b8);
- }
- var _ba=me.im_self;
- if(!_ba){
- _ba=this;
- }
- return me.im_func.apply(_ba,_b8);
- };
- _b7.im_self=_b5;
- _b7.im_func=_b3;
- _b7.im_preargs=_b4;
- return _b7;
- },bindMethods:function(_bb){
- var _bc=MochiKit.Base.bind;
- for(var k in _bb){
- var _be=_bb[k];
- if(typeof (_be)=="function"){
- _bb[k]=_bc(_be,_bb);
- }
- }
- },registerComparator:function(_bf,_c0,_c1,_c2){
- MochiKit.Base.comparatorRegistry.register(_bf,_c0,_c1,_c2);
- },_primitives:{"boolean":true,"string":true,"number":true},compare:function(a,b){
- if(a==b){
- return 0;
- }
- var _c5=(typeof (a)=="undefined"||a===null);
- var _c6=(typeof (b)=="undefined"||b===null);
- if(_c5&&_c6){
- return 0;
- }else{
- if(_c5){
- return -1;
- }else{
- if(_c6){
- return 1;
- }
- }
- }
- var m=MochiKit.Base;
- var _c8=m._primitives;
- if(!(typeof (a) in _c8&&typeof (b) in _c8)){
- try{
- return m.comparatorRegistry.match(a,b);
- }
- catch(e){
- if(e!=m.NotFound){
- throw e;
- }
- }
- }
- if(a<b){
- return -1;
- }else{
- if(a>b){
- return 1;
- }
- }
- var _c9=m.repr;
- throw new TypeError(_c9(a)+" and "+_c9(b)+" can not be compared");
- },compareDateLike:function(a,b){
- return MochiKit.Base.compare(a.getTime(),b.getTime());
- },compareArrayLike:function(a,b){
- var _ce=MochiKit.Base.compare;
- var _cf=a.length;
- var _d0=0;
- if(_cf>b.length){
- _d0=1;
- _cf=b.length;
- }else{
- if(_cf<b.length){
- _d0=-1;
- }
- }
- for(var i=0;i<_cf;i++){
- var cmp=_ce(a[i],b[i]);
- if(cmp){
- return cmp;
- }
- }
- return _d0;
- },registerRepr:function(_d3,_d4,_d5,_d6){
- MochiKit.Base.reprRegistry.register(_d3,_d4,_d5,_d6);
- },repr:function(o){
- if(typeof (o)=="undefined"){
- return "undefined";
- }else{
- if(o===null){
- return "null";
- }
- }
- try{
- if(typeof (o.__repr__)=="function"){
- return o.__repr__();
- }else{
- if(typeof (o.repr)=="function"&&o.repr!=arguments.callee){
- return o.repr();
- }
- }
- return MochiKit.Base.reprRegistry.match(o);
- }
- catch(e){
- if(typeof (o.NAME)=="string"&&(o.toString==Function.prototype.toString||o.toString==Object.prototype.toString)){
- return o.NAME;
- }
- }
- try{
- var _d8=(o+"");
- }
- catch(e){
- return "["+typeof (o)+"]";
- }
- if(typeof (o)=="function"){
- o=_d8.replace(/^\s+/,"");
- var idx=o.indexOf("{");
- if(idx!=-1){
- o=o.substr(0,idx)+"{...}";
- }
- }
- return _d8;
- },reprArrayLike:function(o){
- var m=MochiKit.Base;
- return "["+m.map(m.repr,o).join(", ")+"]";
- },reprString:function(o){
- return ("\""+o.replace(/(["\\])/g,"\\$1")+"\"").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r");
- },reprNumber:function(o){
- return o+"";
- },registerJSON:function(_de,_df,_e0,_e1){
- MochiKit.Base.jsonRegistry.register(_de,_df,_e0,_e1);
- },evalJSON:function(){
- return eval("("+arguments[0]+")");
- },serializeJSON:function(o){
- var _e3=typeof (o);
- if(_e3=="number"||_e3=="boolean"){
- return o+"";
- }else{
- if(o===null){
- return "null";
- }
- }
- var m=MochiKit.Base;
- var _e5=m.reprString;
- if(_e3=="string"){
- return _e5(o);
- }
- var me=arguments.callee;
- var _e7;
- if(typeof (o.__json__)=="function"){
- _e7=o.__json__();
- if(o!==_e7){
- return me(_e7);
- }
- }
- if(typeof (o.json)=="function"){
- _e7=o.json();
- if(o!==_e7){
- return me(_e7);
- }
- }
- if(_e3!="function"&&typeof (o.length)=="number"){
- var res=[];
- for(var i=0;i<o.length;i++){
- var val=me(o[i]);
- if(typeof (val)!="string"){
- val="undefined";
- }
- res.push(val);
- }
- return "["+res.join(", ")+"]";
- }
- try{
- _e7=m.jsonRegistry.match(o);
- if(o!==_e7){
- return me(_e7);
- }
- }
- catch(e){
- if(e!=m.NotFound){
- throw e;
- }
- }
- if(_e3=="undefined"){
- throw new TypeError("undefined can not be serialized as JSON");
- }
- if(_e3=="function"){
- return null;
- }
- res=[];
- for(var k in o){
- var _ec;
- if(typeof (k)=="number"){
- _ec="\""+k+"\"";
- }else{
- if(typeof (k)=="string"){
- _ec=_e5(k);
- }else{
- continue;
- }
- }
- val=me(o[k]);
- if(typeof (val)!="string"){
- continue;
- }
- res.push(_ec+":"+val);
- }
- return "{"+res.join(", ")+"}";
- },objEqual:function(a,b){
- return (MochiKit.Base.compare(a,b)===0);
- },arrayEqual:function(_ef,arr){
- if(_ef.length!=arr.length){
- return false;
- }
- return (MochiKit.Base.compare(_ef,arr)===0);
- },concat:function(){
- var _f1=[];
- var _f2=MochiKit.Base.extend;
- for(var i=0;i<arguments.length;i++){
- _f2(_f1,arguments[i]);
- }
- return _f1;
- },keyComparator:function(key){
- var m=MochiKit.Base;
- var _f6=m.compare;
- if(arguments.length==1){
- return function(a,b){
- return _f6(a[key],b[key]);
- };
- }
- var _f9=m.extend(null,arguments);
- return function(a,b){
- var _fc=0;
- for(var i=0;(_fc===0)&&(i<_f9.length);i++){
- var key=_f9[i];
- _fc=_f6(a[key],b[key]);
- }
- return _fc;
- };
- },reverseKeyComparator:function(key){
- var _100=MochiKit.Base.keyComparator.apply(this,arguments);
- return function(a,b){
- return _100(b,a);
- };
- },partial:function(func){
- var m=MochiKit.Base;
- return m.bind.apply(this,m.extend([func,undefined],arguments,1));
- },listMinMax:function(_105,lst){
- if(lst.length===0){
- return null;
- }
- var cur=lst[0];
- var _108=MochiKit.Base.compare;
- for(var i=1;i<lst.length;i++){
- var o=lst[i];
- if(_108(o,cur)==_105){
- cur=o;
- }
- }
- return cur;
- },objMax:function(){
- return MochiKit.Base.listMinMax(1,arguments);
- },objMin:function(){
- return MochiKit.Base.listMinMax(-1,arguments);
- },findIdentical:function(lst,_10c,_10d,end){
- if(typeof (end)=="undefined"||end===null){
- end=lst.length;
- }
- if(typeof (_10d)=="undefined"||_10d===null){
- _10d=0;
- }
- for(var i=_10d;i<end;i++){
- if(lst[i]===_10c){
- return i;
- }
- }
- return -1;
- },mean:function(){
- var sum=0;
- var m=MochiKit.Base;
- var args=m.extend(null,arguments);
- var _113=args.length;
- while(args.length){
- var o=args.shift();
- if(o&&typeof (o)=="object"&&typeof (o.length)=="number"){
- _113+=o.length-1;
- for(var i=o.length-1;i>=0;i--){
- sum+=o[i];
- }
- }else{
- sum+=o;
- }
- }
- if(_113<=0){
- throw new TypeError("mean() requires at least one argument");
- }
- return sum/_113;
- },median:function(){
- var data=MochiKit.Base.flattenArguments(arguments);
- if(data.length===0){
- throw new TypeError("median() requires at least one argument");
- }
- data.sort(compare);
- if(data.length%2==0){
- var _117=data.length/2;
- return (data[_117]+data[_117-1])/2;
- }else{
- return data[(data.length-1)/2];
- }
- },findValue:function(lst,_119,_11a,end){
- if(typeof (end)=="undefined"||end===null){
- end=lst.length;
- }
- if(typeof (_11a)=="undefined"||_11a===null){
- _11a=0;
- }
- var cmp=MochiKit.Base.compare;
- for(var i=_11a;i<end;i++){
- if(cmp(lst[i],_119)===0){
- return i;
- }
- }
- return -1;
- },nodeWalk:function(node,_11f){
- var _120=[node];
- var _121=MochiKit.Base.extend;
- while(_120.length){
- var res=_11f(_120.shift());
- if(res){
- _121(_120,res);
- }
- }
- },nameFunctions:function(_123){
- var base=_123.NAME;
- if(typeof (base)=="undefined"){
- base="";
- }else{
- base=base+".";
- }
- for(var name in _123){
- var o=_123[name];
- if(typeof (o)=="function"&&typeof (o.NAME)=="undefined"){
- try{
- o.NAME=base+name;
- }
- catch(e){
- }
- }
- }
- },queryString:function(_127,_128){
- if(typeof (MochiKit.DOM)!="undefined"&&arguments.length==1&&(typeof (_127)=="string"||(typeof (_127.nodeType)!="undefined"&&_127.nodeType>0))){
- var kv=MochiKit.DOM.formContents(_127);
- _127=kv[0];
- _128=kv[1];
- }else{
- if(arguments.length==1){
- var o=_127;
- _127=[];
- _128=[];
- for(var k in o){
- var v=o[k];
- if(typeof (v)=="function"){
- continue;
- }else{
- if(typeof (v)!="string"&&typeof (v.length)=="number"){
- for(var i=0;i<v.length;i++){
- _127.push(k);
- _128.push(v[i]);
- }
- }else{
- _127.push(k);
- _128.push(v);
- }
- }
- }
- }
- }
- var rval=[];
- var len=Math.min(_127.length,_128.length);
- var _130=MochiKit.Base.urlEncode;
- for(var i=0;i<len;i++){
- v=_128[i];
- if(typeof (v)!="undefined"&&v!==null){
- rval.push(_130(_127[i])+"="+_130(v));
- }
- }
- return rval.join("&");
- },parseQueryString:function(_131,_132){
- var qstr=(_131[0]=="?")?_131.substring(1):_131;
- var _134=qstr.replace(/\+/g,"%20").split(/(\&\;|\&\#38\;|\&|\&)/);
- var o={};
- var _136;
- if(typeof (decodeURIComponent)!="undefined"){
- _136=decodeURIComponent;
- }else{
- _136=unescape;
- }
- if(_132){
- for(var i=0;i<_134.length;i++){
- var pair=_134[i].split("=");
- if(pair.length!==2){
- continue;
- }
- var name=_136(pair[0]);
- var arr=o[name];
- if(!(arr instanceof Array)){
- arr=[];
- o[name]=arr;
- }
- arr.push(_136(pair[1]));
- }
- }else{
- for(i=0;i<_134.length;i++){
- pair=_134[i].split("=");
- if(pair.length!==2){
- continue;
- }
- o[_136(pair[0])]=_136(pair[1]);
- }
- }
- return o;
- }});
- MochiKit.Base.AdapterRegistry=function(){
- this.pairs=[];
- };
- MochiKit.Base.AdapterRegistry.prototype={register:function(name,_13c,wrap,_13e){
- if(_13e){
- this.pairs.unshift([name,_13c,wrap]);
- }else{
- this.pairs.push([name,_13c,wrap]);
- }
- },match:function(){
- for(var i=0;i<this.pairs.length;i++){
- var pair=this.pairs[i];
- if(pair[1].apply(this,arguments)){
- return pair[2].apply(this,arguments);
- }
- }
- throw MochiKit.Base.NotFound;
- },unregister:function(name){
- for(var i=0;i<this.pairs.length;i++){
- var pair=this.pairs[i];
- if(pair[0]==name){
- this.pairs.splice(i,1);
- return true;
- }
- }
- return false;
- }};
- MochiKit.Base.EXPORT=["flattenArray","noop","camelize","counter","clone","extend","update","updatetree","setdefault","keys","values","items","NamedError","operator","forwardCall","itemgetter","typeMatcher","isCallable","isUndefined","isUndefinedOrNull","isNull","isEmpty","isNotEmpty","isArrayLike","isDateLike","xmap","map","xfilter","filter","methodcaller","compose","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","average","mean","median"];
- MochiKit.Base.EXPORT_OK=["nameFunctions","comparatorRegistry","reprRegistry","jsonRegistry","compareDateLike","compareArrayLike","reprArrayLike","reprString","reprNumber"];
- MochiKit.Base._exportSymbols=function(_144,_145){
- if(!MochiKit.__export__){
- return;
- }
- var all=_145.EXPORT_TAGS[":all"];
- for(var i=0;i<all.length;i++){
- _144[all[i]]=_145[all[i]];
- }
- };
- MochiKit.Base.__new__=function(){
- var m=this;
- m.noop=m.operator.identity;
- m.forward=m.forwardCall;
- m.find=m.findValue;
- if(typeof (encodeURIComponent)!="undefined"){
- m.urlEncode=function(_149){
- return encodeURIComponent(_149).replace(/\'/g,"%27");
- };
- }else{
- m.urlEncode=function(_14a){
- return escape(_14a).replace(/\+/g,"%2B").replace(/\"/g,"%22").rval.replace(/\'/g,"%27");
- };
- }
- m.NamedError=function(name){
- this.message=name;
- this.name=name;
- };
- m.NamedError.prototype=new Error();
- m.update(m.NamedError.prototype,{repr:function(){
- if(this.message&&this.message!=this.name){
- return this.name+"("+m.repr(this.message)+")";
- }else{
- return this.name+"()";
- }
- },toString:m.forwardCall("repr")});
- m.NotFound=new m.NamedError("MochiKit.Base.NotFound");
- m.listMax=m.partial(m.listMinMax,1);
- m.listMin=m.partial(m.listMinMax,-1);
- m.isCallable=m.typeMatcher("function");
- m.isUndefined=m.typeMatcher("undefined");
- m.merge=m.partial(m.update,null);
- m.zip=m.partial(m.map,null);
- m.average=m.mean;
- m.comparatorRegistry=new m.AdapterRegistry();
- m.registerComparator("dateLike",m.isDateLike,m.compareDateLike);
- m.registerComparator("arrayLike",m.isArrayLike,m.compareArrayLike);
- m.reprRegistry=new m.AdapterRegistry();
- m.registerRepr("arrayLike",m.isArrayLike,m.reprArrayLike);
- m.registerRepr("string",m.typeMatcher("string"),m.reprString);
- m.registerRepr("numbers",m.typeMatcher("number","boolean"),m.reprNumber);
- m.jsonRegistry=new m.AdapterRegistry();
- var all=m.concat(m.EXPORT,m.EXPORT_OK);
- m.EXPORT_TAGS={":common":m.concat(m.EXPORT_OK),":all":all};
- m.nameFunctions(this);
- };
- MochiKit.Base.__new__();
- if(MochiKit.__export__){
- compare=MochiKit.Base.compare;
- compose=MochiKit.Base.compose;
- serializeJSON=MochiKit.Base.serializeJSON;
- }
- MochiKit.Base._exportSymbols(this,MochiKit.Base);
- if(typeof (dojo)!="undefined"){
- dojo.provide("MochiKit.Iter");
- dojo.require("MochiKit.Base");
- }
- if(typeof (JSAN)!="undefined"){
- JSAN.use("MochiKit.Base",[]);
- }
- try{
- if(typeof (MochiKit.Base)=="undefined"){
- throw "";
- }
- }
- catch(e){
- throw "MochiKit.Iter depends on MochiKit.Base!";
- }
- if(typeof (MochiKit.Iter)=="undefined"){
- MochiKit.Iter={};
- }
- MochiKit.Iter.NAME="MochiKit.Iter";
- MochiKit.Iter.VERSION="1.4";
- MochiKit.Base.update(MochiKit.Iter,{__repr__:function(){
- return "["+this.NAME+" "+this.VERSION+"]";
- },toString:function(){
- return this.__repr__();
- },registerIteratorFactory:function(name,_14e,_14f,_150){
- MochiKit.Iter.iteratorRegistry.register(name,_14e,_14f,_150);
- },iter:function(_151,_152){
- var self=MochiKit.Iter;
- if(arguments.length==2){
- return self.takewhile(function(a){
- return a!=_152;
- },_151);
- }
- if(typeof (_151.next)=="function"){
- return _151;
- }else{
- if(typeof (_151.iter)=="function"){
- return _151.iter();
- }
- }
- try{
- return self.iteratorRegistry.match(_151);
- }
- catch(e){
- var m=MochiKit.Base;
- if(e==m.NotFound){
- e=new TypeError(typeof (_151)+": "+m.repr(_151)+" is not iterable");
- }
- throw e;
- }
- },count:function(n){
- if(!n){
- n=0;
- }
- var m=MochiKit.Base;
- return {repr:function(){
- return "count("+n+")";
- },toString:m.forwardCall("repr"),next:m.counter(n)};
- },cycle:function(p){
- var self=MochiKit.Iter;
- var m=MochiKit.Base;
- var lst=[];
- var _15c=self.iter(p);
- return {repr:function(){
- return "cycle(...)";
- },toString:m.forwardCall("repr"),next:function(){
- try{
- var rval=_15c.next();
- lst.push(rval);
- return rval;
- }
- catch(e){
- if(e!=self.StopIteration){
- throw e;
- }
- if(lst.length===0){
- this.next=function(){
- throw self.StopIteration;
- };
- }else{
- var i=-1;
- this.next=function(){
- i=(i+1)%lst.length;
- return lst[i];
- };
- }
- return this.next();
- }
- }};
- },repeat:function(elem,n){
- var m=MochiKit.Base;
- if(typeof (n)=="undefined"){
- return {repr:function(){
- return "repeat("+m.repr(elem)+")";
- },toString:m.forwardCall("repr"),next:function(){
- return elem;
- }};
- }
- return {repr:function(){
- return "repeat("+m.repr(elem)+", "+n+")";
- },toString:m.forwardCall("repr"),next:function(){
- if(n<=0){
- throw MochiKit.Iter.StopIteration;
- }
- n-=1;
- return elem;
- }};
- },next:function(_162){
- return _162.next();
- },izip:function(p,q){
- var m=MochiKit.Base;
- var self=MochiKit.Iter;
- var next=self.next;
- var _168=m.map(self.iter,arguments);
- return {repr:function(){
- return "izip(...)";
- },toString:m.forwardCall("repr"),next:function(){
- return m.map(next,_168);
- }};
- },ifilter:function(pred,seq){
- var m=MochiKit.Base;
- seq=MochiKit.Iter.iter(seq);
- if(pred===null){
- pred=m.operator.truth;
- }
- return {repr:function(){
- return "ifilter(...)";
- },toString:m.forwardCall("repr"),next:function(){
- while(true){
- var rval=seq.next();
- if(pred(rval)){
- return rval;
- }
- }
- return undefined;
- }};
- },ifilterfalse:function(pred,seq){
- var m=MochiKit.Base;
- seq=MochiKit.Iter.iter(seq);
- if(pred===null){
- pred=m.operator.truth;
- }
- return {repr:function(){
- return "ifilterfalse(...)";
- },toString:m.forwardCall("repr"),next:function(){
- while(true){
- var rval=seq.next();
- if(!pred(rval)){
- return rval;
- }
- }
- return undefined;
- }};
- },islice:function(seq){
- var self=MochiKit.Iter;
- var m=MochiKit.Base;
- seq=self.iter(seq);
- var _174=0;
- var stop=0;
- var step=1;
- var i=-1;
- if(arguments.length==2){
- stop=arguments[1];
- }else{
- if(arguments.length==3){
- _174=arguments[1];
- stop=arguments[2];
- }else{
- _174=arguments[1];
- stop=arguments[2];
- step=arguments[3];
- }
- }
- return {repr:function(){
- return "islice("+["...",_174,stop,step].join(", ")+")";
- },toString:m.forwardCall("repr"),next:function(){
- var rval;
- while(i<_174){
- rval=seq.next();
- i++;
- }
- if(_174>=stop){
- throw self.StopIteration;
- }
- _174+=step;
- return rval;
- }};
- },imap:function(fun,p,q){
- var m=MochiKit.Base;
- var self=MochiKit.Iter;
- var _17e=m.map(self.iter,m.extend(null,arguments,1));
- var map=m.map;
- var next=self.next;
- return {repr:function(){
- return "imap(...)";
- },toString:m.forwardCall("repr"),next:function(){
- return fun.apply(this,map(next,_17e));
- }};
- },applymap:function(fun,seq,self){
- seq=MochiKit.Iter.iter(seq);
- var m=MochiKit.Base;
- return {repr:function(){
- return "applymap(...)";
- },toString:m.forwardCall("repr"),next:function(){
- return fun.apply(self,seq.next());
- }};
- },chain:function(p,q){
- var self=MochiKit.Iter;
- var m=MochiKit.Base;
- if(arguments.length==1){
- return self.iter(arguments[0]);
- }
- var _189=m.map(self.iter,arguments);
- return {repr:function(){
- return "chain(...)";
- },toString:m.forwardCall("repr"),next:function(){
- while(_189.length>1){
- try{
- return _189[0].next();
- }
- catch(e){
- if(e!=self.StopIteration){
- throw e;
- }
- _189.shift();
- }
- }
- if(_189.length==1){
- var arg=_189.shift();
- this.next=m.bind("next",arg);
- return this.next();
- }
- throw self.StopIteration;
- }};
- },takewhile:function(pred,seq){
- var self=MochiKit.Iter;
- seq=self.iter(seq);
- return {repr:function(){
- return "takewhile(...)";
- },toString:MochiKit.Base.forwardCall("repr"),next:function(){
- var rval=seq.next();
- if(!pred(rval)){
- this.next=function(){
- throw self.StopIteration;
- };
- this.next();
- }
- return rval;
- }};
- },dropwhile:function(pred,seq){
- seq=MochiKit.Iter.iter(seq);
- var m=MochiKit.Base;
- var bind=m.bind;
- return {"repr":function(){
- return "dropwhile(...)";
- },"toString":m.forwardCall("repr"),"next":function(){
- while(true){
- var rval=seq.next();
- if(!pred(rval)){
- break;
- }
- }
- this.next=bind("next",seq);
- return rval;
- }};
- },_tee:function(_194,sync,_196){
- sync.pos[_194]=-1;
- var m=MochiKit.Base;
- var _198=m.listMin;
- return {repr:function(){
- return "tee("+_194+", ...)";
- },toString:m.forwardCall("repr"),next:function(){
- var rval;
- var i=sync.pos[_194];
- if(i==sync.max){
- rval=_196.next();
- sync.deque.push(rval);
- sync.max+=1;
- sync.pos[_194]+=1;
- }else{
- rval=sync.deque[i-sync.min];
- sync.pos[_194]+=1;
- if(i==sync.min&&_198(sync.pos)!=sync.min){
- sync.min+=1;
- sync.deque.shift();
- }
- }
- return rval;
- }};
- },tee:function(_19b,n){
- var rval=[];
- var sync={"pos":[],"deque":[],"max":-1,"min":-1};
- if(arguments.length==1||typeof (n)=="undefined"||n===null){
- n=2;
- }
- var self=MochiKit.Iter;
- _19b=self.iter(_19b);
- var _tee=self._tee;
- for(var i=0;i<n;i++){
- rval.push(_tee(i,sync,_19b));
- }
- return rval;
- },list:function(_1a2){
- var m=MochiKit.Base;
- if(typeof (_1a2.slice)=="function"){
- return _1a2.slice();
- }else{
- if(m.isArrayLike(_1a2)){
- return m.concat(_1a2);
- }
- }
- var self=MochiKit.Iter;
- _1a2=self.iter(_1a2);
- var rval=[];
- try{
- while(true){
- rval.push(_1a2.next());
- }
- }
- catch(e){
- if(e!=self.StopIteration){
- throw e;
- }
- return rval;
- }
- return undefined;
- },reduce:function(fn,_1a7,_1a8){
- var i=0;
- var x=_1a8;
- var self=MochiKit.Iter;
- _1a7=self.iter(_1a7);
- if(arguments.length<3){
- try{
- x=_1a7.next();
- }
- catch(e){
- if(e==self.StopIteration){
- e=new TypeError("reduce() of empty sequence with no initial value");
- }
- throw e;
- }
- i++;
- }
- try{
- while(true){
- x=fn(x,_1a7.next());
- }
- }
- catch(e){
- if(e!=self.StopIteration){
- throw e;
- }
- }
- return x;
- },range:function(){
- var _1ac=0;
- var stop=0;
- var step=1;
- if(arguments.length==1){
- stop=arguments[0];
- }else{
- if(arguments.length==2){
- _1ac=arguments[0];
- stop=arguments[1];
- }else{
- if(arguments.length==3){
- _1ac=arguments[0];
- stop=arguments[1];
- step=arguments[2];
- }else{
- throw new TypeError("range() takes 1, 2, or 3 arguments!");
- }
- }
- }
- if(step===0){
- throw new TypeError("range() step must not be 0");
- }
- return {next:function(){
- if((step>0&&_1ac>=stop)||(step<0&&_1ac<=stop)){
- throw MochiKit.Iter.StopIteration;
- }
- var rval=_1ac;
- _1ac+=step;
- return rval;
- },repr:function(){
- return "range("+[_1ac,stop,step].join(", ")+")";
- },toString:MochiKit.Base.forwardCall("repr")};
- },sum:function(_1b0,_1b1){
- if(typeof (_1b1)=="undefined"||_1b1===null){
- _1b1=0;
- }
- var x=_1b1;
- var self=MochiKit.Iter;
- _1b0=self.iter(_1b0);
- try{
- while(true){
- x+=_1b0.next();
- }
- }
- catch(e){
- if(e!=self.StopIteration){
- throw e;
- }
- }
- return x;
- },exhaust:function(_1b4){
- var self=MochiKit.Iter;
- _1b4=self.iter(_1b4);
- try{
- while(true){
- _1b4.next();
- }
- }
- catch(e){
- if(e!=self.StopIteration){
- throw e;
- }
- }
- },forEach:function(_1b6,func,self){
- var m=MochiKit.Base;
- if(arguments.length>2){
- func=m.bind(func,self);
- }
- if(m.isArrayLike(_1b6)){
- try{
- for(var i=0;i<_1b6.length;i++){
- func(_1b6[i]);
- }
- }
- catch(e){
- if(e!=MochiKit.Iter.StopIteration){
- throw e;
- }
- }
- }else{
- self=MochiKit.Iter;
- self.exhaust(self.imap(func,_1b6));
- }
- },every:function(_1bb,func){
- var self=MochiKit.Iter;
- try{
- self.ifilterfalse(func,_1bb).next();
- return false;
- }
- catch(e){
- if(e!=self.StopIteration){
- throw e;
- }
- return true;
- }
- },sorted:function(_1be,cmp){
- var rval=MochiKit.Iter.list(_1be);
- if(arguments.length==1){
- cmp=MochiKit.Base.compare;
- }
- rval.sort(cmp);
- return rval;
- },reversed:function(_1c1){
- var rval=MochiKit.Iter.list(_1c1);
- rval.reverse();
- return rval;
- },some:function(_1c3,func){
- var self=MochiKit.Iter;
- try{
- self.ifilter(func,_1c3).next();
- return true;
- }
- catch(e){
- if(e!=self.StopIteration){
- throw e;
- }
- return false;
- }
- },iextend:function(lst,_1c7){
- if(MochiKit.Base.isArrayLike(_1c7)){
- for(var i=0;i<_1c7.length;i++){
- lst.push(_1c7[i]);
- }
- }else{
- var self=MochiKit.Iter;
- _1c7=self.iter(_1c7);
- try{
- while(true){
- lst.push(_1c7.next());
- }
- }
- catch(e){
- if(e!=self.StopIteration){
- throw e;
- }
- }
- }
- return lst;
- },groupby:function(_1ca,_1cb){
- var m=MochiKit.Base;
- var self=MochiKit.Iter;
- if(arguments.length<2){
- _1cb=m.operator.identity;
- }
- _1ca=self.iter(_1ca);
- var pk=undefined;
- var k=undefined;
- var v;
- function fetch(){
- v=_1ca.next();
- k=_1cb(v);
- }
- function eat(){
- var ret=v;
- v=undefined;
- return ret;
- }
- var _1d2=true;
- var _1d3=m.compare;
- return {repr:function(){
- return "groupby(...)";
- },next:function(){
- while(_1d3(k,pk)===0){
- fetch();
- if(_1d2){
- _1d2=false;
- break;
- }
- }
- pk=k;
- return [k,{next:function(){
- if(v==undefined){
- fetch();
- }
- if(_1d3(k,pk)!==0){
- throw self.StopIteration;
- }
- return eat();
- }}];
- }};
- },groupby_as_array:function(_1d4,_1d5){
- var m=MochiKit.Base;
- var self=MochiKit.Iter;
- if(arguments.length<2){
- _1d5=m.operator.identity;
- }
- _1d4=self.iter(_1d4);
- var _1d8=[];
- var _1d9=true;
- var _1da;
- var _1db=m.compare;
- while(true){
- try{
- var _1dc=_1d4.next();
- var key=_1d5(_1dc);
- }
- catch(e){
- if(e==self.StopIteration){
- break;
- }
- throw e;
- }
- if(_1d9||_1db(key,_1da)!==0){
- var _1de=[];
- _1d8.push([key,_1de]);
- }
- _1de.push(_1dc);
- _1d9=false;
- _1da=key;
- }
- return _1d8;
- },arrayLikeIter:function(_1df){
- var i=0;
- return {repr:function(){
- return "arrayLikeIter(...)";
- },toString:MochiKit.Base.forwardCall("repr"),next:function(){
- if(i>=_1df.length){
- throw MochiKit.Iter.StopIteration;
- }
- return _1df[i++];
- }};
- },hasIterateNext:function(_1e1){
- return (_1e1&&typeof (_1e1.iterateNext)=="function");
- },iterateNextIter:function(_1e2){
- return {repr:function(){
- return "iterateNextIter(...)";
- },toString:MochiKit.Base.forwardCall("repr"),next:function(){
- var rval=_1e2.iterateNext();
- if(rval===null||rval===undefined){
- throw MochiKit.Iter.StopIteration;
- }
- return rval;
- }};
- }});
- MochiKit.Iter.EXPORT_OK=["iteratorRegistry","arrayLikeIter","hasIterateNext","iterateNextIter",];
- MochiKit.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"];
- MochiKit.Iter.__new__=function(){
- var m=MochiKit.Base;
- if(typeof (StopIteration)!="undefined"){
- this.StopIteration=StopIteration;
- }else{
- this.StopIteration=new m.NamedError("StopIteration");
- }
- this.iteratorRegistry=new m.AdapterRegistry();
- this.registerIteratorFactory("arrayLike",m.isArrayLike,this.arrayLikeIter);
- this.registerIteratorFactory("iterateNext",this.hasIterateNext,this.iterateNextIter);
- this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
- m.nameFunctions(this);
- };
- MochiKit.Iter.__new__();
- if(MochiKit.__export__){
- reduce=MochiKit.Iter.reduce;
- }
- MochiKit.Base._exportSymbols(this,MochiKit.Iter);
- if(typeof (dojo)!="undefined"){
- dojo.provide("MochiKit.Logging");
- dojo.require("MochiKit.Base");
- }
- if(typeof (JSAN)!="undefined"){
- JSAN.use("MochiKit.Base",[]);
- }
- try{
- if(typeof (MochiKit.Base)=="undefined"){
- throw "";
- }
- }
- catch(e){
- throw "MochiKit.Logging depends on MochiKit.Base!";
- }
- if(typeof (MochiKit.Logging)=="undefined"){
- MochiKit.Logging={};
- }
- MochiKit.Logging.NAME="MochiKit.Logging";
- MochiKit.Logging.VERSION="1.4";
- MochiKit.Logging.__repr__=function(){
- return "["+this.NAME+" "+this.VERSION+"]";
- };
- MochiKit.Logging.toString=function(){
- return this.__repr__();
- };
- MochiKit.Logging.EXPORT=["LogLevel","LogMessage","Logger","alertListener","logger","log","logError","logDebug","logFatal","logWarning"];
- MochiKit.Logging.EXPORT_OK=["logLevelAtLeast","isLogMessage","compareLogMessage"];
- MochiKit.Logging.LogMessage=function(num,_1e6,info){
- this.num=num;
- this.level=_1e6;
- this.info=info;
- this.timestamp=new Date();
- };
- MochiKit.Logging.LogMessage.prototype={repr:function(){
- var m=MochiKit.Base;
- return "LogMessage("+m.map(m.repr,[this.num,this.level,this.info]).join(", ")+")";
- },toString:MochiKit.Base.forwardCall("repr")};
- MochiKit.Base.update(MochiKit.Logging,{logLevelAtLeast:function(_1e9){
- var self=MochiKit.Logging;
- if(typeof (_1e9)=="string"){
- _1e9=self.LogLevel[_1e9];
- }
- return function(msg){
- var _1ec=msg.level;
- if(typeof (_1ec)=="string"){
- _1ec=self.LogLevel[_1ec];
- }
- return _1ec>=_1e9;
- };
- },isLogMessage:function(){
- var _1ed=MochiKit.Logging.LogMessage;
- for(var i=0;i<arguments.length;i++){
- if(!(arguments[i] instanceof _1ed)){
- return false;
- }
- }
- return true;
- },compareLogMessage:function(a,b){
- return MochiKit.Base.compare([a.level,a.info],[b.level,b.info]);
- },alertListener:function(msg){
- alert("num: "+msg.num+"\nlevel: "+msg.level+"\ninfo: "+msg.info.join(" "));
- }});
- MochiKit.Logging.Logger=function(_1f2){
- this.counter=0;
- if(typeof (_1f2)=="undefined"||_1f2===null){
- _1f2=-1;
- }
- this.maxSize=_1f2;
- this._messages=[];
- this.listeners={};
- this.useNativeConsole=false;
- };
- MochiKit.Logging.Logger.prototype={clear:function(){
- this._messages.splice(0,this._messages.length);
- },logToConsole:function(msg){
- if(typeof (window)!="undefined"&&window.console&&window.console.log){
- window.console.log(msg.replace(/%/g,"\uff05"));
- }else{
- if(typeof (opera)!="undefined"&&opera.postError){
- opera.postError(msg);
- }else{
- if(typeof (printfire)=="function"){
- printfire(msg);
- }else{
- if(typeof (Debug)!="undefined"&&Debug.writeln){
- Debug.writeln(msg);
- }else{
- if(typeof (debug)!="undefined"&&debug.trace){
- debug.trace(msg);
- }
- }
- }
- }
- }
- },dispatchListeners:function(msg){
- for(var k in this.listeners){
- var pair=this.listeners[k];
- if(pair.ident!=k||(pair[0]&&!pair[0](msg))){
- continue;
- }
- pair[1](msg);
- }
- },addListener:function(_1f7,_1f8,_1f9){
- if(typeof (_1f8)=="string"){
- _1f8=MochiKit.Logging.logLevelAtLeast(_1f8);
- }
- var _1fa=[_1f8,_1f9];
- _1fa.ident=_1f7;
- this.listeners[_1f7]=_1fa;
- },removeListener:function(_1fb){
- delete this.listeners[_1fb];
- },baseLog:function(_1fc,_1fd){
- var msg=new MochiKit.Logging.LogMessage(this.counter,_1fc,MochiKit.Base.extend(null,arguments,1));
- this._messages.push(msg);
- this.dispatchListeners(msg);
- if(this.useNativeConsole){
- this.logToConsole(msg.level+": "+msg.info.join(" "));
- }
- this.counter+=1;
- while(this.maxSize>=0&&this._messages.length>this.maxSize){
- this._messages.shift();
- }
- },getMessages:function(_1ff){
- var _200=0;
- if(!(typeof (_1ff)=="undefined"||_1ff===null)){
- _200=Math.max(0,this._messages.length-_1ff);
- }
- return this._messages.slice(_200);
- },getMessageText:function(_201){
- if(typeof (_201)=="undefined"||_201===null){
- _201=30;
- }
- var _202=this.getMessages(_201);
- if(_202.length){
- var lst=map(function(m){
- return "\n ["+m.num+"] "+m.level+": "+m.info.join(" ");
- },_202);
- lst.unshift("LAST "+_202.length+" MESSAGES:");
- return lst.join("");
- }
- return "";
- },debuggingBookmarklet:function(_205){
- if(typeof (MochiKit.LoggingPane)=="undefined"){
- alert(this.getMessageText());
- }else{
- MochiKit.LoggingPane.createLoggingPane(_205||false);
- }
- }};
- MochiKit.Logging.__new__=function(){
- this.LogLevel={ERROR:40,FATAL:50,WARNING:30,INFO:20,DEBUG:10};
- var m=MochiKit.Base;
- m.registerComparator("LogMessage",this.isLogMessage,this.compareLogMessage);
- var _207=m.partial;
- var _208=this.Logger;
- var _209=_208.prototype.baseLog;
- m.update(this.Logger.prototype,{debug:_207(_209,"DEBUG"),log:_207(_209,"INFO"),error:_207(_209,"ERROR"),fatal:_207(_209,"FATAL"),warning:_207(_209,"WARNING")});
- var self=this;
- var _20b=function(name){
- return function(){
- self.logger[name].apply(self.logger,arguments);
- };
- };
- this.log=_20b("log");
- this.logError=_20b("error");
- this.logDebug=_20b("debug");
- this.logFatal=_20b("fatal");
- this.logWarning=_20b("warning");
- this.logger=new _208();
- this.logger.useNativeConsole=true;
- this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
- m.nameFunctions(this);
- };
- if(typeof (printfire)=="undefined"&&typeof (document)!="undefined"&&document.createEvent&&typeof (dispatchEvent)!="undefined"){
- printfire=function(){
- printfire.args=arguments;
- var ev=document.createEvent("Events");
- ev.initEvent("printfire",false,true);
- dispatchEvent(ev);
- };
- }
- MochiKit.Logging.__new__();
- MochiKit.Base._exportSymbols(this,MochiKit.Logging);
- if(typeof (dojo)!="undefined"){
- dojo.provide("MochiKit.DateTime");
- }
- if(typeof (MochiKit)=="undefined"){
- MochiKit={};
- }
- if(typeof (MochiKit.DateTime)=="undefined"){
- MochiKit.DateTime={};
- }
- MochiKit.DateTime.NAME="MochiKit.DateTime";
- MochiKit.DateTime.VERSION="1.4";
- MochiKit.DateTime.__repr__=function(){
- return "["+this.NAME+" "+this.VERSION+"]";
- };
- MochiKit.DateTime.toString=function(){
- return this.__repr__();
- };
- MochiKit.DateTime.isoDate=function(str){
- str=str+"";
- if(typeof (str)!="string"||str.length===0){
- return null;
- }
- var iso=str.split("-");
- if(iso.length===0){
- return null;
- }
- return new Date(iso[0],iso[1]-1,iso[2]);
- };
- MochiKit.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}))?)?)?)?)?/;
- MochiKit.DateTime.isoTimestamp=function(str){
- str=str+"";
- if(typeof (str)!="string"||str.length===0){
- return null;
- }
- var res=str.match(MochiKit.DateTime._isoRegexp);
- if(typeof (res)=="undefined"||res===null){
- return null;
- }
- var year,_213,day,hour,min,sec,msec;
- year=parseInt(res[1],10);
- if(typeof (res[2])=="undefined"||res[2]===""){
- return new Date(year);
- }
- _213=parseInt(res[2],10)-1;
- day=parseInt(res[3],10);
- if(typeof (res[4])=="undefined"||res[4]===""){
- return new Date(year,_213,day);
- }
- hour=parseInt(res[4],10);
- min=parseInt(res[5],10);
- sec=(typeof (res[6])!="undefined"&&res[6]!=="")?parseInt(res[6],10):0;
- if(typeof (res[7])!="undefined"&&res[7]!==""){
- msec=Math.round(1000*parseFloat("0."+res[7]));
- }else{
- msec=0;
- }
- if((typeof (res[8])=="undefined"||res[8]==="")&&(typeof (res[9])=="undefined"||res[9]==="")){
- return new Date(year,_213,day,hour,min,sec,msec);
- }
- var ofs;
- if(typeof (res[9])!="undefined"&&res[9]!==""){
- ofs=parseInt(res[10],10)*3600000;
- if(typeof (res[11])!="undefined"&&res[11]!==""){
- ofs+=parseInt(res[11],10)*60000;
- }
- if(res[9]=="-"){
- ofs=-ofs;
- }
- }else{
- ofs=0;
- }
- return new Date(Date.UTC(year,_213,day,hour,min,sec,msec)-ofs);
- };
- MochiKit.DateTime.toISOTime=function(date,_21b){
- if(typeof (date)=="undefined"||date===null){
- return null;
- }
- var hh=date.getHours();
- var mm=date.getMinutes();
- var ss=date.getSeconds();
- var lst=[((_21b&&(hh<10))?"0"+hh:hh),((mm<10)?"0"+mm:mm),((ss<10)?"0"+ss:ss)];
- return lst.join(":");
- };
- MochiKit.DateTime.toISOTimestamp=function(date,_221){
- if(typeof (date)=="undefined"||date===null){
- return null;
- }
- var sep=_221?"T":" ";
- var foot=_221?"Z":"";
- if(_221){
- date=new Date(date.getTime()+(date.getTimezoneOffset()*60000));
- }
- return MochiKit.DateTime.toISODate(date)+sep+MochiKit.DateTime.toISOTime(date,_221)+foot;
- };
- MochiKit.DateTime.toISODate=function(date){
- if(typeof (date)=="undefined"||date===null){
- return null;
- }
- var _225=MochiKit.DateTime._padTwo;
- return [date.getFullYear(),_225(date.getMonth()+1),_225(date.getDate())].join("-");
- };
- MochiKit.DateTime.americanDate=function(d){
- d=d+"";
- if(typeof (d)!="string"||d.length===0){
- return null;
- }
- var a=d.split("/");
- return new Date(a[2],a[0]-1,a[1]);
- };
- MochiKit.DateTime._padTwo=function(n){
- return (n>9)?n:"0"+n;
- };
- MochiKit.DateTime.toPaddedAmericanDate=function(d){
- if(typeof (d)=="undefined"||d===null){
- return null;
- }
- var _22a=MochiKit.DateTime._padTwo;
- return [_22a(d.getMonth()+1),_22a(d.getDate()),d.getFullYear()].join("/");
- };
- MochiKit.DateTime.toAmericanDate=function(d){
- if(typeof (d)=="undefined"||d===null){
- return null;
- }
- return [d.getMonth()+1,d.getDate(),d.getFullYear()].join("/");
- };
- MochiKit.DateTime.EXPORT=["isoDate","isoTimestamp","toISOTime","toISOTimestamp","toISODate","americanDate","toPaddedAmericanDate","toAmericanDate"];
- MochiKit.DateTime.EXPORT_OK=[];
- MochiKit.DateTime.EXPORT_TAGS={":common":MochiKit.DateTime.EXPORT,":all":MochiKit.DateTime.EXPORT};
- MochiKit.DateTime.__new__=function(){
- var base=this.NAME+".";
- for(var k in this){
- var o=this[k];
- if(typeof (o)=="function"&&typeof (o.NAME)=="undefined"){
- try{
- o.NAME=base+k;
- }
- catch(e){
- }
- }
- }
- };
- MochiKit.DateTime.__new__();
- if(typeof (MochiKit.Base)!="undefined"){
- MochiKit.Base._exportSymbols(this,MochiKit.DateTime);
- }else{
- (function(_22f,_230){
- if((typeof (JSAN)=="undefined"&&typeof (dojo)=="undefined")||(MochiKit.__export__===false)){
- var all=_230.EXPORT_TAGS[":all"];
- for(var i=0;i<all.length;i++){
- _22f[all[i]]=_230[all[i]];
- }
- }
- })(this,MochiKit.DateTime);
- }
- if(typeof (dojo)!="undefined"){
- dojo.provide("MochiKit.Format");
- }
- if(typeof (MochiKit)=="undefined"){
- MochiKit={};
- }
- if(typeof (MochiKit.Format)=="undefined"){
- MochiKit.Format={};
- }
- MochiKit.Format.NAME="MochiKit.Format";
- MochiKit.Format.VERSION="1.4";
- MochiKit.Format.__repr__=function(){
- return "["+this.NAME+" "+this.VERSION+"]";
- };
- MochiKit.Format.toString=function(){
- return this.__repr__();
- };
- MochiKit.Format._numberFormatter=function(_233,_234,_235,_236,_237,_238,_239,_23a,_23b){
- return function(num){
- num=parseFloat(num);
- if(typeof (num)=="undefined"||num===null||isNaN(num)){
- return _233;
- }
- var _23d=_234;
- var _23e=_235;
- if(num<0){
- num=-num;
- }else{
- _23d=_23d.replace(/-/,"");
- }
- var me=arguments.callee;
- var fmt=MochiKit.Format.formatLocale(_236);
- if(_237){
- num=num*100;
- _23e=fmt.percent+_23e;
- }
- num=MochiKit.Format.roundToFixed(num,_238);
- var _241=num.split(/\./);
- var _242=_241[0];
- var frac=(_241.length==1)?"":_241[1];
- var res="";
- while(_242.length<_239){
- _242="0"+_242;
- }
- if(_23a){
- while(_242.length>_23a){
- var i=_242.length-_23a;
- res=fmt.separator+_242.substring(i,_242.length)+res;
- _242=_242.substring(0,i);
- }
- }
- res=_242+res;
- if(_238>0){
- while(frac.length<_23b){
- frac=frac+"0";
- }
- res=res+fmt.decimal+frac;
- }
- return _23d+res+_23e;
- };
- };
- MochiKit.Format.numberFormatter=function(_246,_247,_248){
- if(typeof (_247)=="undefined"){
- _247="";
- }
- var _249=_246.match(/((?:[0#]+,)?[0#]+)(?:\.([0#]+))?(%)?/);
- if(!_249){
- throw TypeError("Invalid pattern");
- }
- var _24a=_246.substr(0,_249.index);
- var _24b=_246.substr(_249.index+_249[0].length);
- if(_24a.search(/-/)==-1){
- _24a=_24a+"-";
- }
- var _24c=_249[1];
- var frac=(typeof (_249[2])=="string"&&_249[2]!="")?_249[2]:"";
- var _24e=(typeof (_249[3])=="string"&&_249[3]!="");
- var tmp=_24c.split(/,/);
- var _250;
- if(typeof (_248)=="undefined"){
- _248="default";
- }
- if(tmp.length==1){
- _250=null;
- }else{
- _250=tmp[1].length;
- }
- var _251=_24c.length-_24c.replace(/0/g,"").length;
- var _252=frac.length-frac.replace(/0/g,"").length;
- var _253=frac.length;
- var rval=MochiKit.Format._numberFormatter(_247,_24a,_24b,_248,_24e,_253,_251,_250,_252);
- var m=MochiKit.Base;
- if(m){
- var fn=arguments.callee;
- var args=m.concat(arguments);
- rval.repr=function(){
- return [self.NAME,"(",map(m.repr,args).join(", "),")"].join("");
- };
- }
- return rval;
- };
- MochiKit.Format.formatLocale=function(_258){
- if(typeof (_258)=="undefined"||_258===null){
- _258="default";
- }
- if(typeof (_258)=="string"){
- var rval=MochiKit.Format.LOCALE[_258];
- if(typeof (rval)=="string"){
- rval=arguments.callee(rval);
- MochiKit.Format.LOCALE[_258]=rval;
- }
- return rval;
- }else{
- return _258;
- }
- };
- MochiKit.Format.twoDigitAverage=function(_25a,_25b){
- if(_25b){
- var res=_25a/_25b;
- if(!isNaN(res)){
- return MochiKit.Format.twoDigitFloat(_25a/_25b);
- }
- }
- return "0";
- };
- MochiKit.Format.twoDigitFloat=function(_25d){
- var sign=(_25d<0?"-":"");
- var s=Math.floor(Math.abs(_25d)*100).toString();
- if(s=="0"){
- return s;
- }
- if(s.length<3){
- while(s.charAt(s.length-1)=="0"){
- s=s.substring(0,s.length-1);
- }
- return sign+"0."+s;
- }
- var head=sign+s.substring(0,s.length-2);
- var tail=s.substring(s.length-2,s.length);
- if(tail=="00"){
- return head;
- }else{
- if(tail.charAt(1)=="0"){
- return head+"."+tail.charAt(0);
- }else{
- return head+"."+tail;
- }
- }
- };
- MochiKit.Format.lstrip=function(str,_263){
- str=str+"";
- if(typeof (str)!="string"){
- return null;
- }
- if(!_263){
- return str.replace(/^\s+/,"");
- }else{
- return str.replace(new RegExp("^["+_263+"]+"),"");
- }
- };
- MochiKit.Format.rstrip=function(str,_265){
- str=str+"";
- if(typeof (str)!="string"){
- return null;
- }
- if(!_265){
- return str.replace(/\s+$/,"");
- }else{
- return str.replace(new RegExp("["+_265+"]+$"),"");
- }
- };
- MochiKit.Format.strip=function(str,_267){
- var self=MochiKit.Format;
- return self.rstrip(self.lstrip(str,_267),_267);
- };
- MochiKit.Format.truncToFixed=function(_269,_26a){
- _269=Math.floor(_269*Math.pow(10,_26a));
- var res=(_269*Math.pow(10,-_26a)).toFixed(_26a);
- if(res.charAt(0)=="."){
- res="0"+res;
- }
- return res;
- };
- MochiKit.Format.roundToFixed=function(_26c,_26d){
- return MochiKit.Format.truncToFixed(_26c+0.5*Math.pow(10,-_26d),_26d);
- };
- MochiKit.Format.percentFormat=function(_26e){
- return MochiKit.Format.twoDigitFloat(100*_26e)+"%";
- };
- MochiKit.Format.EXPORT=["truncToFixed","roundToFixed","numberFormatter","formatLocale","twoDigitAverage","twoDigitFloat","percentFormat","lstrip","rstrip","strip"];
- MochiKit.Format.LOCALE={en_US:{separator:",",decimal:".",percent:"%"},de_DE:{separator:".",decimal:",",percent:"%"},fr_FR:{separator:" ",decimal:",",percent:"%"},"default":"en_US"};
- MochiKit.Format.EXPORT_OK=[];
- MochiKit.Format.EXPORT_TAGS={":all":MochiKit.Format.EXPORT,":common":MochiKit.Format.EXPORT};
- MochiKit.Format.__new__=function(){
- var base=this.NAME+".";
- var k,v,o;
- for(k in this.LOCALE){
- o=this.LOCALE[k];
- if(typeof (o)=="object"){
- o.repr=function(){
- return this.NAME;
- };
- o.NAME=base+"LOCALE."+k;
- }
- }
- for(k in this){
- o=this[k];
- if(typeof (o)=="function"&&typeof (o.NAME)=="undefined"){
- try{
- o.NAME=base+k;
- }
- catch(e){
- }
- }
- }
- };
- MochiKit.Format.__new__();
- if(typeof (MochiKit.Base)!="undefined"){
- MochiKit.Base._exportSymbols(this,MochiKit.Format);
- }else{
- (function(_273,_274){
- if((typeof (JSAN)=="undefined"&&typeof (dojo)=="undefined")||(MochiKit.__export__===false)){
- var all=_274.EXPORT_TAGS[":all"];
- for(var i=0;i<all.length;i++){
- _273[all[i]]=_274[all[i]];
- }
- }
- })(this,MochiKit.Format);
- }
- if(typeof (dojo)!="undefined"){
- dojo.provide("MochiKit.Async");
- dojo.require("MochiKit.Base");
- }
- if(typeof (JSAN)!="undefined"){
- JSAN.use("MochiKit.Base",[]);
- }
- try{
- if(typeof (MochiKit.Base)=="undefined"){
- throw "";
- }
- }
- catch(e){
- throw "MochiKit.Async depends on MochiKit.Base!";
- }
- if(typeof (MochiKit.Async)=="undefined"){
- MochiKit.Async={};
- }
- MochiKit.Async.NAME="MochiKit.Async";
- MochiKit.Async.VERSION="1.4";
- MochiKit.Async.__repr__=function(){
- return "["+this.NAME+" "+this.VERSION+"]";
- };
- MochiKit.Async.toString=function(){
- return this.__repr__();
- };
- MochiKit.Async.Deferred=function(_277){
- this.chain=[];
- this.id=this._nextId();
- this.fired=-1;
- this.paused=0;
- this.results=[null,null];
- this.canceller=_277;
- this.silentlyCancelled=false;
- this.chained=false;
- };
- MochiKit.Async.Deferred.prototype={repr:function(){
- var _278;
- if(this.fired==-1){
- _278="unfired";
- }else{
- if(this.fired===0){
- _278="success";
- }else{
- _278="error";
- }
- }
- return "Deferred("+this.id+", "+_278+")";
- },toString:MochiKit.Base.forwardCall("repr"),_nextId:MochiKit.Base.counter(),cancel:function(){
- var self=MochiKit.Async;
- if(this.fired==-1){
- if(this.canceller){
- this.canceller(this);
- }else{
- this.silentlyCancelled=true;
- }
- if(this.fired==-1){
- this.errback(new self.CancelledError(this));
- }
- }else{
- if((this.fired===0)&&(this.results[0] instanceof self.Deferred)){
- this.results[0].cancel();
- }
- }
- },_resback:function(res){
- this.fired=((res instanceof Error)?1:0);
- this.results[this.fired]=res;
- this._fire();
- },_check:function(){
- if(this.fired!=-1){
- if(!this.silentlyCancelled){
- throw new MochiKit.Async.AlreadyCalledError(this);
- }
- this.silentlyCancelled=false;
- return;
- }
- },callback:function(res){
- this._check();
- if(res instanceof MochiKit.Async.Deferred){
- throw new Error("Deferred instances can only be chained if they are the result of a callback");
- }
- this._resback(res);
- },errback:function(res){
- this._check();
- var self=MochiKit.Async;
- if(res instanceof self.Deferred){
- throw new Error("Deferred instances can only be chained if they are the result of a callback");
- }
- if(!(res instanceof Error)){
- res=new self.GenericError(res);
- }
- this._resback(res);
- },addBoth:function(fn){
- if(arguments.length>1){
- fn=MochiKit.Base.partial.apply(null,arguments);
- }
- return this.addCallbacks(fn,fn);
- },addCallback:function(fn){
- if(arguments.length>1){
- fn=MochiKit.Base.partial.apply(null,arguments);
- }
- return this.addCallbacks(fn,null);
- },addErrback:function(fn){
- if(arguments.length>1){
- fn=MochiKit.Base.partial.apply(null,arguments);
- }
- return this.addCallbacks(null,fn);
- },addCallbacks:function(cb,eb){
- if(this.chained){
- throw new Error("Chained Deferreds can not be re-used");
- }
- this.chain.push([cb,eb]);
- if(this.fired>=0){
- this._fire();
- }
- return this;
- },_fire:function(){
- var _283=this.chain;
- var _284=this.fired;
- var res=this.results[_284];
- var self=this;
- var cb=null;
- while(_283.length>0&&this.paused===0){
- var pair=_283.shift();
- var f=pair[_284];
- if(f===null){
- continue;
- }
- try{
- res=f(res);
- _284=((res instanceof Error)?1:0);
- if(res instanceof MochiKit.Async.Deferred){
- cb=function(res){
- self._resback(res);
- self.paused--;
- if((self.paused===0)&&(self.fired>=0)){
- self._fire();
- }
- };
- this.paused++;
- }
- }
- catch(err){
- _284=1;
- if(!(err instanceof Error)){
- err=new MochiKit.Async.GenericError(err);
- }
- res=err;
- }
- }
- this.fired=_284;
- this.results[_284]=res;
- if(cb&&this.paused){
- res.addBoth(cb);
- res.chained=true;
- }
- }};
- MochiKit.Base.update(MochiKit.Async,{evalJSONRequest:function(){
- return eval("("+arguments[0].responseText+")");
- },succeed:function(_28b){
- var d=new MochiKit.Async.Deferred();
- d.callback.apply(d,arguments);
- return d;
- },fail:function(_28d){
- var d=new MochiKit.Async.Deferred();
- d.errback.apply(d,arguments);
- return d;
- },getXMLHttpRequest:function(){
- var self=arguments.callee;
- if(!self.XMLHttpRequest){
- var _290=[function(){
- return new XMLHttpRequest();
- },function(){
- return new ActiveXObject("Msxml2.XMLHTTP");
- },function(){
- return new ActiveXObject("Microsoft.XMLHTTP");
- },function(){
- return new ActiveXObject("Msxml2.XMLHTTP.4.0");
- },function(){
- throw new MochiKit.Async.BrowserComplianceError("Browser does not support XMLHttpRequest");
- }];
- for(var i=0;i<_290.length;i++){
- var func=_290[i];
- try{
- self.XMLHttpRequest=func;
- return func();
- }
- catch(e){
- }
- }
- }
- return self.XMLHttpRequest();
- },_xhr_onreadystatechange:function(d){
- var m=MochiKit.Base;
- if(this.readyState==4){
- try{
- this.onreadystatechange=null;
- }
- catch(e){
- try{
- this.onreadystatechange=m.noop;
- }
- catch(e){
- }
- }
- var _295=null;
- try{
- _295=this.status;
- if(!_295&&m.isNotEmpty(this.responseText)){
- _295=304;
- }
- }
- catch(e){
- }
- if(_295==200||_295==304){
- d.callback(this);
- }else{
- var err=new MochiKit.Async.XMLHttpRequestError(this,"Request failed");
- if(err.number){
- d.errback(err);
- }else{
- d.errback(err);
- }
- }
- }
- },_xhr_canceller:function(req){
- try{
- req.onreadystatechange=null;
- }
- catch(e){
- try{
- req.onreadystatechange=MochiKit.Base.noop;
- }
- catch(e){
- }
- }
- req.abort();
- },sendXMLHttpRequest:function(req,_299){
- if(typeof (_299)=="undefined"||_299===null){
- _299="";
- }
- var m=MochiKit.Base;
- var self=MochiKit.Async;
- var d=new self.Deferred(m.partial(self._xhr_canceller,req));
- try{
- req.onreadystatechange=m.bind(self._xhr_onreadystatechange,req,d);
- req.send(_299);
- }
- catch(e){
- try{
- req.onreadystatechange=null;
- }
- catch(ignore){
- }
- d.errback(e);
- }
- return d;
- },doXHR:function(url,opts){
- var m=MochiKit.Base;
- opts=m.update({method:"GET",sendContent:""},opts);
- var self=MochiKit.Async;
- var req=self.getXMLHttpRequest();
- if(opts.queryString){
- var qs=m.queryString(opts.queryString);
- if(qs){
- url+="?"+qs;
- }
- }
- req.open(opts.method,url,true,opts.username,opts.password);
- if(req.overrideMimeType&&opts.mimeType){
- req.overrideMimeType(opts.mimeType);
- }
- if(opts.headers){
- var _2a3=opts.headers;
- if(!m.isArrayLike(_2a3)){
- _2a3=m.items(_2a3);
- }
- for(var i=0;i<_2a3.length;i++){
- var _2a5=_2a3[i];
- var name=_2a5[0];
- var _2a7=_2a5[1];
- req.setRequestHeader(name,_2a7);
- }
- }
- return self.sendXMLHttpRequest(req,opts.sendContent);
- },_buildURL:function(url){
- if(arguments.length>1){
- var m=MochiKit.Base;
- var qs=m.queryString.apply(null,m.extend(null,arguments,1));
- if(qs){
- return url+"?"+qs;
- }
- }
- return url;
- },doSimpleXMLHttpRequest:function(url){
- var self=MochiKit.Async;
- url=self._buildURL.apply(self,arguments);
- return self.doXHR(url);
- },loadJSONDoc:function(url){
- var self=MochiKit.Async;
- url=self._buildURL.apply(self,arguments);
- var d=self.doXHR(url,{"mimeType":"text/plain","headers":[["Accept","application/json"]]});
- d=d.addCallback(self.evalJSONRequest);
- return d;
- },wait:function(_2b0,_2b1){
- var d=new MochiKit.Async.Deferred();
- var m=MochiKit.Base;
- if(typeof (_2b1)!="undefined"){
- d.addCallback(function(){
- return _2b1;
- });
- }
- var _2b4=setTimeout(m.bind("callback",d),Math.floor(_2b0*1000));
- d.canceller=function(){
- try{
- clearTimeout(_2b4);
- }
- catch(e){
- }
- };
- return d;
- },callLater:function(_2b5,func){
- var m=MochiKit.Base;
- var _2b8=m.partial.apply(m,m.extend(null,arguments,1));
- return MochiKit.Async.wait(_2b5).addCallback(function(res){
- return _2b8();
- });
- }});
- MochiKit.Async.DeferredLock=function(){
- this.waiting=[];
- this.locked=false;
- this.id=this._nextId();
- };
- MochiKit.Async.DeferredLock.prototype={__class__:MochiKit.Async.DeferredLock,acquire:function(){
- var d=new MochiKit.Async.Deferred();
- if(this.locked){
- this.waiting.push(d);
- }else{
- this.locked=true;
- d.callback(this);
- }
- return d;
- },release:function(){
- if(!this.locked){
- throw TypeError("Tried to release an unlocked DeferredLock");
- }
- this.locked=false;
- if(this.waiting.length>0){
- this.locked=true;
- this.waiting.shift().callback(this);
- }
- },_nextId:MochiKit.Base.counter(),repr:function(){
- var _2bb;
- if(this.locked){
- _2bb="locked, "+this.waiting.length+" waiting";
- }else{
- _2bb="unlocked";
- }
- return "DeferredLock("+this.id+", "+_2bb+")";
- },toString:MochiKit.Base.forwardCall("repr")};
- MochiKit.Async.DeferredList=function(list,_2bd,_2be,_2bf,_2c0){
- MochiKit.Async.Deferred.apply(this,[_2c0]);
- this.list=list;
- var _2c1=[];
- this.resultList=_2c1;
- this.finishedCount=0;
- this.fireOnOneCallback=_2bd;
- this.fireOnOneErrback=_2be;
- this.consumeErrors=_2bf;
- var cb=MochiKit.Base.bind(this._cbDeferred,this);
- for(var i=0;i<list.length;i++){
- var d=list[i];
- _2c1.push(undefined);
- d.addCallback(cb,i,true);
- d.addErrback(cb,i,false);
- }
- if(list.length===0&&!_2bd){
- this.callback(this.resultList);
- }
- };
- MochiKit.Async.DeferredList.prototype=new MochiKit.Async.Deferred();
- MochiKit.Async.DeferredList.prototype._cbDeferred=function(_2c5,_2c6,_2c7){
- this.resultList[_2c5]=[_2c6,_2c7];
- this.finishedCount+=1;
- if(this.fired==-1){
- if(_2c6&&this.fireOnOneCallback){
- this.callback([_2c5,_2c7]);
- }else{
- if(!_2c6&&this.fireOnOneErrback){
- this.errback(_2c7);
- }else{
- if(this.finishedCount==this.list.length){
- this.callback(this.resultList);
- }
- }
- }
- }
- if(!_2c6&&this.consumeErrors){
- _2c7=null;
- }
- return _2c7;
- };
- MochiKit.Async.gatherResults=function(_2c8){
- var d=new MochiKit.Async.DeferredList(_2c8,false,true,false);
- d.addCallback(function(_2ca){
- var ret=[];
- for(var i=0;i<_2ca.length;i++){
- ret.push(_2ca[i][1]);
- }
- return ret;
- });
- return d;
- };
- MochiKit.Async.maybeDeferred=function(func){
- var self=MochiKit.Async;
- var _2cf;
- try{
- var r=func.apply(null,MochiKit.Base.extend([],arguments,1));
- if(r instanceof self.Deferred){
- _2cf=r;
- }else{
- if(r instanceof Error){
- _2cf=self.fail(r);
- }else{
- _2cf=self.succeed(r);
- }
- }
- }
- catch(e){
- _2cf=self.fail(e);
- }
- return _2cf;
- };
- MochiKit.Async.EXPORT=["AlreadyCalledError","CancelledError","BrowserComplianceError","GenericError","XMLHttpRequestError","Deferred","succeed","fail","getXMLHttpRequest","doSimpleXMLHttpRequest","loadJSONDoc","wait","callLater","sendXMLHttpRequest","DeferredLock","DeferredList","gatherResults","maybeDeferred","doXHR"];
- MochiKit.Async.EXPORT_OK=["evalJSONRequest"];
- MochiKit.Async.__new__=function(){
- var m=MochiKit.Base;
- var ne=m.partial(m._newNamedError,this);
- ne("AlreadyCalledError",function(_2d3){
- this.deferred=_2d3;
- });
- ne("CancelledError",function(_2d4){
- this.deferred=_2d4;
- });
- ne("BrowserComplianceError",function(msg){
- this.message=msg;
- });
- ne("GenericError",function(msg){
- this.message=msg;
- });
- ne("XMLHttpRequestError",function(req,msg){
- this.req=req;
- this.message=msg;
- try{
- this.number=req.status;
- }
- catch(e){
- }
- });
- this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
- m.nameFunctions(this);
- };
- MochiKit.Async.__new__();
- MochiKit.Base._exportSymbols(this,MochiKit.Async);
- if(typeof (dojo)!="undefined"){
- dojo.provide("MochiKit.DOM");
- dojo.require("MochiKit.Base");
- }
- if(typeof (JSAN)!="undefined"){
- JSAN.use("MochiKit.Base",[]);
- }
- try{
- if(typeof (MochiKit.Base)=="undefined"){
- throw "";
- }
- }
- catch(e){
- throw "MochiKit.DOM depends on MochiKit.Base!";
- }
- if(typeof (MochiKit.DOM)=="undefined"){
- MochiKit.DOM={};
- }
- MochiKit.DOM.NAME="MochiKit.DOM";
- MochiKit.DOM.VERSION="1.4";
- MochiKit.DOM.__repr__=function(){
- return "["+this.NAME+" "+this.VERSION+"]";
- };
- MochiKit.DOM.toString=function(){
- return this.__repr__();
- };
- MochiKit.DOM.EXPORT=["removeEmptyTextNodes","formContents","currentWindow","currentDocument","withWindow","withDocument","registerDOMConverter","coerceToDOM","createDOM","createDOMFunc","isChildNode","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","$","getElementsByTagAndClassName","addToCallStack","addLoadEvent","focusOnLoad","setElementClass","toggleElementClass","addElementClass","removeElementClass","swapElementClass","hasElementClass","escapeHTML","toHTML","emitHTML","scrapeText"];
- MochiKit.DOM.EXPORT_OK=["domConverters"];
- MochiKit.DOM.DEPRECATED=[["computedStyle","MochiKit.Style.computedStyle","1.4"],["elementDimensions","MochiKit.Style.getElementDimensions","1.4"],["elementPosition","MochiKit.Style.getElementPosition","1.4"],["hideElement","MochiKit.Style.hideElement","1.4"],["setElementDimensions","MochiKit.Style.setElementDimensions","1.4"],["setElementPosition","MochiKit.Style.setElementPosition","1.4"],["setDisplayForElement","MochiKit.Style.setDisplayForElement","1.4"],["setOpacity","MochiKit.Style.setOpacity","1.4"],["showElement","MochiKit.Style.showElement","1.4"],["Coordinates","MochiKit.Style.Coordinates","1.4"],["Dimensions","MochiKit.Style.Dimensions","1.4"]];
- MochiKit.DOM.getViewportDimensions=new Function(""+"if (!MochiKit[\"Style\"]) {"+" throw new Error(\"This function has been deprecated and depends on MochiKit.Style.\");"+"}"+"return MochiKit.Style.getViewportDimensions.apply(this, arguments);");
- MochiKit.Base.update(MochiKit.DOM,{currentWindow:function(){
- return MochiKit.DOM._window;
- },currentDocument:function(){
- return MochiKit.DOM._document;
- },withWindow:function(win,func){
- var self=MochiKit.DOM;
- var _2dc=self._document;
- var _2dd=self._win;
- var rval;
- try{
- self._window=win;
- self._document=win.document;
- rval=func();
- }
- catch(e){
- self._window=_2dd;
- self._document=_2dc;
- throw e;
- }
- self._window=_2dd;
- self._document=_2dc;
- return rval;
- },formContents:function(elem){
- var _2e0=[];
- var _2e1=[];
- var m=MochiKit.Base;
- var self=MochiKit.DOM;
- if(typeof (elem)=="undefined"||elem===null){
- elem=self._document;
- }else{
- elem=self.getElement(elem);
- }
- m.nodeWalk(elem,function(elem){
- var name=elem.name;
- if(m.isNotEmpty(name)){
- var _2e6=elem.tagName.toUpperCase();
- if(_2e6==="INPUT"&&(elem.type=="radio"||elem.type=="checkbox")&&!elem.checked){
- return null;
- }
- if(_2e6==="SELECT"){
- if(elem.type=="select-one"){
- if(elem.selectedIndex>=0){
- var opt=elem.options[elem.selectedIndex];
- _2e0.push(name);
- _2e1.push(opt.value);
- return null;
- }
- _2e0.push(name);
- _2e1.push("");
- return null;
- }else{
- var opts=elem.options;
- if(!opts.length){
- _2e0.push(name);
- _2e1.push("");
- return null;
- }
- for(var i=0;i<opts.length;i++){
- var opt=opts[i];
- if(!opt.selected){
- continue;
- }
- _2e0.push(name);
- _2e1.push(opt.value);
- }
- return null;
- }
- }
- if(_2e6==="FORM"||_2e6==="P"||_2e6==="SPAN"||_2e6==="DIV"){
- return elem.childNodes;
- }
- _2e0.push(name);
- _2e1.push(elem.value||"");
- return null;
- }
- return elem.childNodes;
- });
- return [_2e0,_2e1];
- },withDocument:function(doc,func){
- var self=MochiKit.DOM;
- var _2ed=self._document;
- var rval;
- try{
- self._document=doc;
- rval=func();
- }
- catch(e){
- self._document=_2ed;
- throw e;
- }
- self._document=_2ed;
- return rval;
- },registerDOMConverter:function(name,_2f0,wrap,_2f2){
- MochiKit.DOM.domConverters.register(name,_2f0,wrap,_2f2);
- },coerceToDOM:function(node,ctx){
- var m=MochiKit.Base;
- var im=MochiKit.Iter;
- var self=MochiKit.DOM;
- if(im){
- var iter=im.iter;
- var _2f9=im.repeat;
- var map=m.map;
- }
- var _2fb=self.domConverters;
- var _2fc=arguments.callee;
- var _2fd=m.NotFound;
- while(true){
- if(typeof (node)=="undefined"||node===null){
- return null;
- }
- if(typeof (node.nodeType)!="undefined"&&node.nodeType>0){
- return node;
- }
- if(typeof (node)=="number"||typeof (node)=="boolean"){
- node=node.toString();
- }
- if(typeof (node)=="string"){
- return self._document.createTextNode(node);
- }
- if(typeof (node.__dom__)=="function"){
- node=node.__dom__(ctx);
- continue;
- }
- if(typeof (node.dom)=="function"){
- node=node.dom(ctx);
- continue;
- }
- if(typeof (node)=="function"){
- node=node.apply(ctx,[ctx]);
- continue;
- }
- if(im){
- var _2fe=null;
- try{
- _2fe=iter(node);
- }
- catch(e){
- }
- if(_2fe){
- return map(_2fc,_2fe,_2f9(ctx));
- }
- }
- try{
- node=_2fb.match(node,ctx);
- continue;
- }
- catch(e){
- if(e!=_2fd){
- throw e;
- }
- }
- return self._document.createTextNode(node.toString());
- }
- return undefined;
- },isChildNode:function(node,_300){
- var self=MochiKit.DOM;
- if(typeof (node)=="string"){
- node=self.getElement(node);
- }
- if(typeof (_300)=="string"){
- _300=self.getElement(_300);
- }
- if(node===_300){
- return true;
- }
- while(node&&node.tagName.toUpperCase()!="BODY"){
- node=node.parentNode;
- if(node===_300){
- return true;
- }
- }
- return false;
- },setNodeAttribute:function(node,attr,_304){
- var o={};
- o[attr]=_304;
- try{
- return MochiKit.DOM.updateNodeAttributes(node,o);
- }
- catch(e){
- }
- return null;
- },getNodeAttribute:function(node,attr){
- var self=MochiKit.DOM;
- var _309=self.attributeArray.renames[attr];
- node=self.getElement(node);
- try{
- if(_309){
- return node[_309];
- }
- return node.getAttribute(attr);
- }
- catch(e){
- }
- return null;
- },updateNodeAttributes:function(node,_30b){
- var elem=node;
- var self=MochiKit.DOM;
- if(typeof (node)=="string"){
- elem=self.getElement(node);
- }
- if(_30b){
- var _30e=MochiKit.Base.updatetree;
- if(self.attributeArray.compliant){
- for(var k in _30b){
- var v=_30b[k];
- if(typeof (v)=="object"&&typeof (elem[k])=="object"){
- _30e(elem[k],v);
- }else{
- if(k.substring(0,2)=="on"){
- if(typeof (v)=="string"){
- v=new Function(v);
- }
- elem[k]=v;
- }else{
- elem.setAttribute(k,v);
- }
- }
- }
- }else{
- var _311=self.attributeArray.renames;
- for(k in _30b){
- v=_30b[k];
- var _312=_311[k];
- if(k=="style"&&typeof (v)=="string"){
- elem.style.cssText=v;
- }else{
- if(typeof (_312)=="string"){
- elem[_312]=v;
- }else{
- if(typeof (elem[k])=="object"&&typeof (v)=="object"){
- _30e(elem[k],v);
- }else{
- if(k.substring(0,2)=="on"){
- if(typeof (v)=="string"){
- v=new Function(v);
- }
- elem[k]=v;
- }else{
- elem.setAttribute(k,v);
- }
- }
- }
- }
- }
- }
- }
- return elem;
- },appendChildNodes:function(node){
- var elem=node;
- var self=MochiKit.DOM;
- if(typeof (node)=="string"){
- elem=self.getElement(node);
- }
- var _316=[self.coerceToDOM(MochiKit.Base.extend(null,arguments,1),elem)];
- var _317=MochiKit.Base.concat;
- while(_316.length){
- var n=_316.shift();
- if(typeof (n)=="undefined"||n===null){
- }else{
- if(typeof (n.nodeType)=="number"){
- elem.appendChild(n);
- }else{
- _316=_317(n,_316);
- }
- }
- }
- return elem;
- },replaceChildNodes:function(node){
- var elem=node;
- var self=MochiKit.DOM;
- if(typeof (node)=="string"){
- elem=self.getElement(node);
- arguments[0]=elem;
- }
- var _31c;
- while((_31c=elem.firstChild)){
- elem.removeChild(_31c);
- }
- if(arguments.length<2){
- return elem;
- }else{
- return self.appendChildNodes.apply(this,arguments);
- }
- },createDOM:function(name,_31e){
- var elem;
- var self=MochiKit.DOM;
- var m=MochiKit.Base;
- if(typeof (_31e)=="string"||typeof (_31e)=="number"){
- var args=m.extend([name,null],arguments,1);
- return arguments.callee.apply(this,args);
- }
- if(typeof (name)=="string"){
- var _323=self._xhtml;
- if(_31e&&!self.attributeArray.compliant){
- var _324="";
- if("name" in _31e){
- _324+=" name=\""+self.escapeHTML(_31e.name)+"\"";
- }
- if(name=="input"&&"type" in _31e){
- _324+=" type=\""+self.escapeHTML(_31e.type)+"\"";
- }
- if(_324){
- name="<"+name+_324+">";
- _323=false;
- }
- }
- var d=self._document;
- if(_323&&d===document){
- elem=d.createElementNS("http://www.w3.org/1999/xhtml",name);
- }else{
- elem=d.createElement(name);
- }
- }else{
- elem=name;
- }
- if(_31e){
- self.updateNodeAttributes(elem,_31e);
- }
- if(arguments.length<=2){
- return elem;
- }else{
- var args=m.extend([elem],arguments,2);
- return self.appendChildNodes.apply(this,args);
- }
- },createDOMFunc:function(){
- var m=MochiKit.Base;
- return m.partial.apply(this,m.extend([MochiKit.DOM.createDOM],arguments));
- },removeElement:function(elem){
- var e=MochiKit.DOM.getElement(elem);
- e.parentNode.removeChild(e);
- return e;
- },swapDOM:function(dest,src){
- var self=MochiKit.DOM;
- dest=self.getElement(dest);
- var _32c=dest.parentNode;
- if(src){
- src=self.getElement(src);
- _32c.replaceChild(src,dest);
- }else{
- _32c.removeChild(dest);
- }
- return src;
- },getElement:function(id){
- var self=MochiKit.DOM;
- if(arguments.length==1){
- return ((typeof (id)=="string")?self._document.getElementById(id):id);
- }else{
- return MochiKit.Base.map(self.getElement,arguments);
- }
- },getElementsByTagAndClassName:function(_32f,_330,_331){
- var self=MochiKit.DOM;
- if(typeof (_32f)=="undefined"||_32f===null){
- _32f="*";
- }
- if(typeof (_331)=="undefined"||_331===null){
- _331=self._document;
- }
- _331=self.getElement(_331);
- var _333=(_331.getElementsByTagName(_32f)||self._document.all);
- if(typeof (_330)=="undefined"||_330===null){
- return MochiKit.Base.extend(null,_333);
- }
- var _334=[];
- for(var i=0;i<_333.length;i++){
- var _336=_333[i];
- var cls=_336.className;
- if(!cls){
- continue;
- }
- var _338=cls.split(" ");
- for(var j=0;j<_338.length;j++){
- if(_338[j]==_330){
- _334.push(_336);
- break;
- }
- }
- }
- return _334;
- },_newCallStack:function(path,once){
- var rval=function(){
- var _33d=arguments.callee.callStack;
- for(var i=0;i<_33d.length;i++){
- if(_33d[i].apply(this,arguments)===false){
- break;
- }
- }
- if(once){
- try{
- this[path]=null;
- }
- catch(e){
- }
- }
- };
- rval.callStack=[];
- return rval;
- },addToCallStack:function(_33f,path,func,once){
- var self=MochiKit.DOM;
- var _344=_33f[path];
- var _345=_344;
- if(!(typeof (_344)=="function"&&typeof (_344.callStack)=="object"&&_344.callStack!==null)){
- _345=self._newCallStack(path,once);
- if(typeof (_344)=="function"){
- _345.callStack.push(_344);
- }
- _33f[path]=_345;
- }
- _345.callStack.push(func);
- },addLoadEvent:function(func){
- var self=MochiKit.DOM;
- self.addToCallStack(self._window,"onload",func,true);
- },focusOnLoad:function(_348){
- var self=MochiKit.DOM;
- self.addLoadEvent(function(){
- _348=self.getElement(_348);
- if(_348){
- _348.focus();
- }
- });
- },setElementClass:function(_34a,_34b){
- var self=MochiKit.DOM;
- var obj=self.getElement(_34a);
- if(self.attributeArray.compliant){
- obj.setAttribute("class",_34b);
- }else{
- obj.setAttribute("className",_34b);
- }
- },toggleElementClass:function(_34e){
- var self=MochiKit.DOM;
- for(var i=1;i<arguments.length;i++){
- var obj=self.getElement(arguments[i]);
- if(!self.addElementClass(obj,_34e)){
- self.removeElementClass(obj,_34e);
- }
- }
- },addElementClass:function(_352,_353){
- var self=MochiKit.DOM;
- var obj=self.getElement(_352);
- var cls=obj.className;
- if(cls==undefined||cls.length===0){
- self.setElementClass(obj,_353);
- return true;
- }
- if(cls==_353){
- return false;
- }
- var _357=cls.split(" ");
- for(var i=0;i<_357.length;i++){
- if(_357[i]==_353){
- return false;
- }
- }
- self.setElementClass(obj,cls+" "+_353);
- return true;
- },removeElementClass:function(_359,_35a){
- var self=MochiKit.DOM;
- var obj=self.getElement(_359);
- var cls=obj.className;
- if(cls==undefined||cls.length===0){
- return false;
- }
- if(cls==_35a){
- self.setElementClass(obj,"");
- return true;
- }
- var _35e=cls.split(" ");
- for(var i=0;i<_35e.length;i++){
- if(_35e[i]==_35a){
- _35e.splice(i,1);
- self.setElementClass(obj,_35e.join(" "));
- return true;
- }
- }
- return false;
- },swapElementClass:function(_360,_361,_362){
- var obj=MochiKit.DOM.getElement(_360);
- var res=MochiKit.DOM.removeElementClass(obj,_361);
- if(res){
- MochiKit.DOM.addElementClass(obj,_362);
- }
- return res;
- },hasElementClass:function(_365,_366){
- var obj=MochiKit.DOM.getElement(_365);
- var cls=obj.className;
- if(!cls){
- return false;
- }
- var _369=cls.split(" ");
- for(var i=1;i<arguments.length;i++){
- var good=false;
- for(var j=0;j<_369.length;j++){
- if(_369[j]==arguments[i]){
- good=true;
- break;
- }
- }
- if(!good){
- return false;
- }
- }
- return true;
- },escapeHTML:function(s){
- return s.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">");
- },toHTML:function(dom){
- return MochiKit.DOM.emitHTML(dom).join("");
- },emitHTML:function(dom,lst){
- if(typeof (lst)=="undefined"||lst===null){
- lst=[];
- }
- var _371=[dom];
- var self=MochiKit.DOM;
- var _373=self.escapeHTML;
- var _374=self.attributeArray;
- while(_371.length){
- dom=_371.pop();
- if(typeof (dom)=="string"){
- lst.push(dom);
- }else{
- if(dom.nodeType==1){
- lst.push("<"+dom.tagName.toLowerCase());
- var _375=[];
- var _376=_374(dom);
- for(var i=0;i<_376.length;i++){
- var a=_376[i];
- _375.push([" ",a.name,"=\"",_373(a.value),"\""]);
- }
- _375.sort();
- for(i=0;i<_375.length;i++){
- var _379=_375[i];
- for(var j=0;j<_379.length;j++){
- lst.push(_379[j]);
- }
- }
- if(dom.hasChildNodes()){
- lst.push(">");
- _371.push("</"+dom.tagName.toLowerCase()+">");
- var _37b=dom.childNodes;
- for(i=_37b.length-1;i>=0;i--){
- _371.push(_37b[i]);
- }
- }else{
- lst.push("/>");
- }
- }else{
- if(dom.nodeType==3){
- lst.push(_373(dom.nodeValue));
- }
- }
- }
- }
- return lst;
- },scrapeText:function(node,_37d){
- var rval=[];
- (function(node){
- var cn=node.childNodes;
- if(cn){
- for(var i=0;i<cn.length;i++){
- arguments.callee.call(this,cn[i]);
- }
- }
- var _382=node.nodeValue;
- if(typeof (_382)=="string"){
- rval.push(_382);
- }
- })(MochiKit.DOM.getElement(node));
- if(_37d){
- return rval;
- }else{
- return rval.join("");
- }
- },removeEmptyTextNodes:function(_383){
- _383=MochiKit.DOM.getElement(_383);
- for(var i=0;i<_383.childNodes.length;i++){
- var node=_383.childNodes[i];
- if(node.nodeType==3&&!/\S/.test(node.nodeValue)){
- node.parentNode.removeChild(node);
- }
- }
- },__new__:function(win){
- var m=MochiKit.Base;
- if(typeof (document)!="undefined"){
- this._document=document;
- this._xhtml=document.createElementNS&&document.createElement("testname").localName=="testname";
- }else{
- if(MochiKit.MockDOM){
- this._document=MochiKit.MockDOM.document;
- }
- }
- this._window=win;
- this.domConverters=new m.AdapterRegistry();
- var _388=this._document.createElement("span");
- var _389;
- if(_388&&_388.attributes&&_388.attributes.length>0){
- var _38a=m.filter;
- _389=function(node){
- return _38a(_389.ignoreAttrFilter,node.attributes);
- };
- _389.ignoreAttr={};
- var _38c=_388.attributes;
- var _38d=_389.ignoreAttr;
- for(var i=0;i<_38c.length;i++){
- var a=_38c[i];
- _38d[a.name]=a.value;
- }
- _389.ignoreAttrFilter=function(a){
- return (_389.ignoreAttr[a.name]!=a.value);
- };
- _389.compliant=false;
- _389.renames={"class":"className","checked":"defaultChecked","usemap":"useMap","for":"htmlFor","readonly":"readOnly","colspan":"colSpan","bgcolor":"bgColor"};
- }else{
- _389=function(node){
- return node.attributes;
- };
- _389.compliant=true;
- _389.renames={};
- }
- this.attributeArray=_389;
- var _392=function(_393,arr){
- var _395=arr[1].split(".");
- var str="";
- var obj={};
- str+="if (!MochiKit."+_395[1]+") { throw new Error(\"";
- str+="This function has been deprecated and depends on MochiKit.";
- str+=_395[1]+".\");}";
- str+="return MochiKit."+_395[1]+"."+arr[0];
- str+=".apply(this, arguments);";
- obj[_395[2]]=new Function(str);
- MochiKit.Base.update(MochiKit[_393],obj);
- };
- for(var i;i<MochiKit.DOM.DEPRECATED.length;i++){
- _392("DOM",MochiKit.DOM.DEPRECATED[i]);
- }
- var _398=this.createDOMFunc;
- this.UL=_398("ul");
- this.OL=_398("ol");
- this.LI=_398("li");
- this.TD=_398("td");
- this.TR=_398("tr");
- this.TBODY=_398("tbody");
- this.THEAD=_398("thead");
- this.TFOOT=_398("tfoot");
- this.TABLE=_398("table");
- this.TH=_398("th");
- this.INPUT=_398("input");
- this.SPAN=_398("span");
- this.A=_398("a");
- this.DIV=_398("div");
- this.IMG=_398("img");
- this.BUTTON=_398("button");
- this.TT=_398("tt");
- this.PRE=_398("pre");
- this.H1=_398("h1");
- this.H2=_398("h2");
- this.H3=_398("h3");
- this.BR=_398("br");
- this.HR=_398("hr");
- this.LABEL=_398("label");
- this.TEXTAREA=_398("textarea");
- this.FORM=_398("form");
- this.P=_398("p");
- this.SELECT=_398("select");
- this.OPTION=_398("option");
- this.OPTGROUP=_398("optgroup");
- this.LEGEND=_398("legend");
- this.FIELDSET=_398("fieldset");
- this.STRONG=_398("strong");
- this.CANVAS=_398("canvas");
- this.$=this.getElement;
- this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
- m.nameFunctions(this);
- }});
- MochiKit.DOM.__new__(((typeof (window)=="undefined")?this:window));
- if(MochiKit.__export__){
- withWindow=MochiKit.DOM.withWindow;
- withDocument=MochiKit.DOM.withDocument;
- }
- MochiKit.Base._exportSymbols(this,MochiKit.DOM);
- if(typeof (dojo)!="undefined"){
- dojo.provide("MochiKit.Style");
- dojo.require("MochiKit.Base");
- dojo.require("MochiKit.DOM");
- }
- if(typeof (JSAN)!="undefined"){
- JSAN.use("MochiKit.Base",[]);
- }
- try{
- if(typeof (MochiKit.Base)=="undefined"){
- throw "";
- }
- }
- catch(e){
- throw "MochiKit.Style depends on MochiKit.Base!";
- }
- try{
- if(typeof (MochiKit.DOM)=="undefined"){
- throw "";
- }
- }
- catch(e){
- throw "MochiKit.Style depends on MochiKit.DOM!";
- }
- if(typeof (MochiKit.Style)=="undefined"){
- MochiKit.Style={};
- }
- MochiKit.Style.NAME="MochiKit.Style";
- MochiKit.Style.VERSION="1.4";
- MochiKit.Style.__repr__=function(){
- return "["+this.NAME+" "+this.VERSION+"]";
- };
- MochiKit.Style.toString=function(){
- return this.__repr__();
- };
- MochiKit.Style.EXPORT_OK=[];
- MochiKit.Style.EXPORT=["setOpacity","getOpacity","setStyle","getStyle","computedStyle","getElementDimensions","elementDimensions","setElementDimensions","getElementPosition","elementPosition","setElementPosition","setDisplayForElement","hideElement","showElement","getViewportDimensions","getViewportPosition","Dimensions","Coordinates"];
- MochiKit.Style.Dimensions=function(w,h){
- this.w=w;
- this.h=h;
- };
- MochiKit.Style.Dimensions.prototype.__repr__=function(){
- var repr=MochiKit.Base.repr;
- return "{w: "+repr(this.w)+", h: "+repr(this.h)+"}";
- };
- MochiKit.Style.Dimensions.prototype.toString=function(){
- return this.__repr__();
- };
- MochiKit.Style.Coordinates=function(x,y){
- this.x=x;
- this.y=y;
- };
- MochiKit.Style.Coordinates.prototype.__repr__=function(){
- var repr=MochiKit.Base.repr;
- return "{x: "+repr(this.x)+", y: "+repr(this.y)+"}";
- };
- MochiKit.Style.Coordinates.prototype.toString=function(){
- return this.__repr__();
- };
- MochiKit.Base.update(MochiKit.Style,{computedStyle:function(elem,_3a0){
- var dom=MochiKit.DOM;
- var d=dom._document;
- elem=dom.getElement(elem);
- _3a0=MochiKit.Base.camelize(_3a0);
- if(!elem||elem==d){
- return undefined;
- }
- if(_3a0=="opacity"&&elem.filters){
- try{
- return elem.filters.item("DXImageTransform.Microsoft.Alpha").opacity/100;
- }
- catch(e){
- try{
- return elem.filters.item("alpha").opacity/100;
- }
- catch(e){
- }
- }
- }
- if(elem.currentStyle){
- return elem.currentStyle[_3a0];
- }
- if(typeof (d.defaultView)=="undefined"){
- return undefined;
- }
- if(d.defaultView===null){
- return undefined;
- }
- var _3a3=d.defaultView.getComputedStyle(elem,null);
- if(typeof (_3a3)=="undefined"||_3a3===null){
- return undefined;
- }
- var _3a4=_3a0.replace(/([A-Z])/g,"-$1").toLowerCase();
- return _3a3.getPropertyValue(_3a4);
- },getStyle:function(elem,_3a6){
- elem=MochiKit.DOM.getElement(elem);
- var _3a7=elem.style[MochiKit.Base.camelize(_3a6)];
- if(!_3a7){
- if(document.defaultView&&document.defaultView.getComputedStyle){
- var css=document.defaultView.getComputedStyle(elem,null);
- _3a7=css?css.getPropertyValue(_3a6):null;
- }else{
- if(elem.currentStyle){
- _3a7=elem.currentStyle[MochiKit.Base.camelize(_3a6)];
- }
- }
- }
- if(/Opera/.test(navigator.userAgent)&&(MochiKit.Base.find(["left","top","right","bottom"],_3a6)!=-1)){
- if(MochiKit.Style.getStyle(elem,"position")=="static"){
- _3a7="auto";
- }
- }
- return _3a7=="auto"?null:_3a7;
- },setStyle:function(elem,_3aa){
- elem=MochiKit.DOM.getElement(elem);
- for(name in _3aa){
- elem.style[MochiKit.Base.camelize(name)]=_3aa[name];
- }
- },getOpacity:function(elem){
- var _3ac;
- if(_3ac=MochiKit.Style.getStyle(elem,"opacity")){
- return parseFloat(_3ac);
- }
- if(_3ac=(MochiKit.Style.getStyle(elem,"filter")||"").match(/alpha\(opacity=(.*)\)/)){
- if(_3ac[1]){
- return parseFloat(_3ac[1])/100;
- }
- }
- return 1;
- },setOpacity:function(elem,o){
- elem=MochiKit.DOM.getElement(elem);
- var self=MochiKit.Style;
- if(o==1){
- var _3b0=/Gecko/.test(navigator.userAgent)&&!(/Konqueror|Safari|KHTML/.test(navigator.userAgent));
- self.setStyle(elem,{opacity:_3b0?0.999999:1});
- if(/MSIE/.test(navigator.userAgent)){
- self.setStyle(elem,{filter:self.getStyle(elem,"filter").replace(/alpha\([^\)]*\)/gi,"")});
- }
- }else{
- if(o<0.00001){
- o=0;
- }
- self.setStyle(elem,{opacity:o});
- if(/MSIE/.test(navigator.userAgent)){
- self.setStyle(elem,{filter:self.getStyle(elem,"filter").replace(/alpha\([^\)]*\)/gi,"")+"alpha(opacity="+o*100+")"});
- }
- }
- },getElementPosition:function(elem,_3b2){
- var self=MochiKit.Style;
- var dom=MochiKit.DOM;
- elem=dom.getElement(elem);
- if(!elem||(!(elem.x&&elem.y)&&(!elem.parentNode==null||self.computedStyle(elem,"display")=="none"))){
- return undefined;
- }
- var c=new self.Coordinates(0,0);
- var box=null;
- var _3b7=null;
- var d=MochiKit.DOM._document;
- var de=d.documentElement;
- var b=d.body;
- if(!elem.parentNode&&elem.x&&elem.y){
- c.x+=elem.x||0;
- c.y+=elem.y||0;
- }else{
- if(elem.getBoundingClientRect){
- box=elem.getBoundingClientRect();
- c.x+=box.left+(de.scrollLeft||b.scrollLeft)-(de.clientLeft||0);
- c.y+=box.top+(de.scrollTop||b.scrollTop)-(de.clientTop||0);
- }else{
- if(elem.offsetParent){
- c.x+=elem.offsetLeft;
- c.y+=elem.offsetTop;
- _3b7=elem.offsetParent;
- if(_3b7!=elem){
- while(_3b7){
- c.x+=_3b7.offsetLeft;
- c.y+=_3b7.offsetTop;
- _3b7=_3b7.offsetParent;
- }
- }
- var ua=navigator.userAgent.toLowerCase();
- if((typeof (opera)!="undefined"&&parseFloat(opera.version())<9)||(ua.indexOf("safari")!=-1&&self.computedStyle(elem,"position")=="absolute")){
- c.x-=b.offsetLeft;
- c.y-=b.offsetTop;
- }
- }
- }
- }
- if(typeof (_3b2)!="undefined"){
- _3b2=arguments.callee(_3b2);
- if(_3b2){
- c.x-=(_3b2.x||0);
- c.y-=(_3b2.y||0);
- }
- }
- if(elem.parentNode){
- _3b7=elem.parentNode;
- }else{
- _3b7=null;
- }
- while(_3b7){
- var _3bc=_3b7.tagName.toUpperCase();
- if(_3bc==="BODY"||_3bc==="HTML"){
- break;
- }
- c.x-=_3b7.scrollLeft;
- c.y-=_3b7.scrollTop;
- if(_3b7.parentNode){
- _3b7=_3b7.parentNode;
- }else{
- _3b7=null;
- }
- }
- return c;
- },setElementPosition:function(elem,_3be,_3bf){
- elem=MochiKit.DOM.getElement(elem);
- if(typeof (_3bf)=="undefined"){
- _3bf="px";
- }
- var _3c0={};
- var _3c1=MochiKit.Base.isUndefinedOrNull;
- if(!_3c1(_3be.x)){
- _3c0["left"]=_3be.x+_3bf;
- }
- if(!_3c1(_3be.y)){
- _3c0["top"]=_3be.y+_3bf;
- }
- MochiKit.DOM.updateNodeAttributes(elem,{"style":_3c0});
- },getElementDimensions:function(elem){
- var self=MochiKit.Style;
- var dom=MochiKit.DOM;
- if(typeof (elem.w)=="number"||typeof (elem.h)=="number"){
- return new self.Dimensions(elem.w||0,elem.h||0);
- }
- elem=dom.getElement(elem);
- if(!elem){
- return undefined;
- }
- var disp=self.computedStyle(elem,"display");
- if(disp!="none"&&disp!=""&&typeof (disp)!="undefined"){
- return new self.Dimensions(elem.offsetWidth||0,elem.offsetHeight||0);
- }
- var s=elem.style;
- var _3c7=s.visibility;
- var _3c8=s.position;
- s.visibility="hidden";
- s.position="absolute";
- s.display="";
- var _3c9=elem.offsetWidth;
- var _3ca=elem.offsetHeight;
- s.display="none";
- s.position=_3c8;
- s.visibility=_3c7;
- return new self.Dimensions(_3c9,_3ca);
- },setElementDimensions:function(elem,_3cc,_3cd){
- elem=MochiKit.DOM.getElement(elem);
- if(typeof (_3cd)=="undefined"){
- _3cd="px";
- }
- var _3ce={};
- var _3cf=MochiKit.Base.isUndefinedOrNull;
- if(!_3cf(_3cc.w)){
- _3ce["width"]=_3cc.w+_3cd;
- }
- if(!_3cf(_3cc.h)){
- _3ce["height"]=_3cc.h+_3cd;
- }
- MochiKit.DOM.updateNodeAttributes(elem,{"style":_3ce});
- },setDisplayForElement:function(_3d0,_3d1){
- var _3d2=MochiKit.Base.extend(null,arguments,1);
- var _3d3=MochiKit.DOM.getElement;
- for(var i=0;i<_3d2.length;i++){
- var _3d1=_3d3(_3d2[i]);
- if(_3d1){
- _3d1.style.display=_3d0;
- }
- }
- },getViewportDimensions:function(){
- var d=new MochiKit.Style.Dimensions();
- var w=MochiKit.DOM._window;
- var b=MochiKit.DOM._document.body;
- if(w.innerWidth){
- d.w=w.innerWidth;
- d.h=w.innerHeight;
- }else{
- if(b.parentElement.clientWidth){
- d.w=b.parentElement.clientWidth;
- d.h=b.parentElement.clientHeight;
- }else{
- if(b&&b.clientWidth){
- d.w=b.clientWidth;
- d.h=b.clientHeight;
- }
- }
- }
- return d;
- },getViewportPosition:function(){
- var c=new MochiKit.Style.Coordinates(0,0);
- var d=MochiKit.DOM._document;
- var de=d.documentElement;
- var db=d.body;
- if(de&&(de.scrollTop||de.scrollLeft)){
- c.x=de.scrollLeft;
- c.y=de.scrollTop;
- }else{
- if(db){
- c.x=db.scrollLeft;
- c.y=db.scrollTop;
- }
- }
- return c;
- },__new__:function(){
- var m=MochiKit.Base;
- this.elementPosition=this.getElementPosition;
- this.elementDimensions=this.getElementDimensions;
- this.hideElement=m.partial(this.setDisplayForElement,"none");
- this.showElement=m.partial(this.setDisplayForElement,"block");
- this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
- m.nameFunctions(this);
- }});
- MochiKit.Style.__new__();
- MochiKit.Base._exportSymbols(this,MochiKit.Style);
- if(typeof (dojo)!="undefined"){
- dojo.provide("MochiKit.LoggingPane");
- dojo.require("MochiKit.Logging");
- dojo.require("MochiKit.Base");
- }
- if(typeof (JSAN)!="undefined"){
- JSAN.use("MochiKit.Logging",[]);
- JSAN.use("MochiKit.Base",[]);
- }
- try{
- if(typeof (MochiKit.Base)=="undefined"||typeof (MochiKit.Logging)=="undefined"){
- throw "";
- }
- }
- catch(e){
- throw "MochiKit.LoggingPane depends on MochiKit.Base and MochiKit.Logging!";
- }
- if(typeof (MochiKit.LoggingPane)=="undefined"){
- MochiKit.LoggingPane={};
- }
- MochiKit.LoggingPane.NAME="MochiKit.LoggingPane";
- MochiKit.LoggingPane.VERSION="1.4";
- MochiKit.LoggingPane.__repr__=function(){
- return "["+this.NAME+" "+this.VERSION+"]";
- };
- MochiKit.LoggingPane.toString=function(){
- return this.__repr__();
- };
- MochiKit.LoggingPane.createLoggingPane=function(_3dd){
- var m=MochiKit.LoggingPane;
- _3dd=!(!_3dd);
- if(m._loggingPane&&m._loggingPane.inline!=_3dd){
- m._loggingPane.closePane();
- m._loggingPane=null;
- }
- if(!m._loggingPane||m._loggingPane.closed){
- m._loggingPane=new m.LoggingPane(_3dd,MochiKit.Logging.logger);
- }
- return m._loggingPane;
- };
- MochiKit.LoggingPane.LoggingPane=function(_3df,_3e0){
- if(typeof (_3e0)=="undefined"||_3e0===null){
- _3e0=MochiKit.Logging.logger;
- }
- this.logger=_3e0;
- var _3e1=MochiKit.Base.update;
- var _3e2=MochiKit.Base.updatetree;
- var bind=MochiKit.Base.bind;
- var _3e4=MochiKit.Base.clone;
- var win=window;
- var uid="_MochiKit_LoggingPane";
- if(typeof (MochiKit.DOM)!="undefined"){
- win=MochiKit.DOM.currentWindow();
- }
- if(!_3df){
- var url=win.location.href.split("?")[0].replace(/[#:\/.><&-]/g,"_");
- var name=uid+"_"+url;
- var nwin=win.open("",name,"dependent,resizable,height=200");
- if(!nwin){
- alert("Not able to open debugging window due to pop-up blocking.");
- return undefined;
- }
- nwin.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>");
- nwin.document.close();
- nwin.document.title+=" "+win.document.title;
- win=nwin;
- }
- var doc=win.document;
- this.doc=doc;
- var _3eb=doc.getElementById(uid);
- var _3ec=!!_3eb;
- if(_3eb&&typeof (_3eb.loggingPane)!="undefined"){
- _3eb.loggingPane.logger=this.logger;
- _3eb.loggingPane.buildAndApplyFilter();
- return _3eb.loggingPane;
- }
- if(_3ec){
- var _3ed;
- while((_3ed=_3eb.firstChild)){
- _3eb.removeChild(_3ed);
- }
- }else{
- _3eb=doc.createElement("div");
- _3eb.id=uid;
- }
- _3eb.loggingPane=this;
- var _3ee=doc.createElement("input");
- var _3ef=doc.createElement("input");
- var _3f0=doc.createElement("button");
- var _3f1=doc.createElement("button");
- var _3f2=doc.createElement("button");
- var _3f3=doc.createElement("button");
- var _3f4=doc.createElement("div");
- var _3f5=doc.createElement("div");
- var _3f6=uid+"_Listener";
- this.colorTable=_3e4(this.colorTable);
- var _3f7=[];
- var _3f8=null;
- var _3f9=function(msg){
- var _3fb=msg.level;
- if(typeof (_3fb)=="number"){
- _3fb=MochiKit.Logging.LogLevel[_3fb];
- }
- return _3fb;
- };
- var _3fc=function(msg){
- return msg.info.join(" ");
- };
- var _3fe=bind(function(msg){
- var _400=_3f9(msg);
- var text=_3fc(msg);
- var c=this.colorTable[_400];
- var p=doc.createElement("span");
- p.className="MochiKit-LogMessage MochiKit-LogLevel-"+_400;
- p.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;
- p.appendChild(doc.createTextNode(_400+": "+text));
- _3f5.appendChild(p);
- _3f5.appendChild(doc.createElement("br"));
- if(_3f4.offsetHeight>_3f4.scrollHeight){
- _3f4.scrollTop=0;
- }else{
- _3f4.scrollTop=_3f4.scrollHeight;
- }
- },this);
- var _404=function(msg){
- _3f7[_3f7.length]=msg;
- _3fe(msg);
- };
- var _406=function(){
- var _407,_408;
- try{
- _407=new RegExp(_3ee.value);
- _408=new RegExp(_3ef.value);
- }
- catch(e){
- logDebug("Error in filter regex: "+e.message);
- return null;
- }
- return function(msg){
- return (_407.test(_3f9(msg))&&_408.test(_3fc(msg)));
- };
- };
- var _40a=function(){
- while(_3f5.firstChild){
- _3f5.removeChild(_3f5.firstChild);
- }
- };
- var _40b=function(){
- _3f7=[];
- _40a();
- };
- var _40c=bind(function(){
- if(this.closed){
- return;
- }
- this.closed=true;
- if(MochiKit.LoggingPane._loggingPane==this){
- MochiKit.LoggingPane._loggingPane=null;
- }
- this.logger.removeListener(_3f6);
- _3eb.loggingPane=null;
- if(_3df){
- _3eb.parentNode.removeChild(_3eb);
- }else{
- this.win.close();
- }
- },this);
- var _40d=function(){
- _40a();
- for(var i=0;i<_3f7.length;i++){
- var msg=_3f7[i];
- if(_3f8===null||_3f8(msg)){
- _3fe(msg);
- }
- }
- };
- this.buildAndApplyFilter=function(){
- _3f8=_406();
- _40d();
- this.logger.removeListener(_3f6);
- this.logger.addListener(_3f6,_3f8,_404);
- };
- var _410=bind(function(){
- _3f7=this.logger.getMessages();
- _40d();
- },this);
- var _411=bind(function(_412){
- _412=_412||window.event;
- key=_412.which||_412.keyCode;
- if(key==13){
- this.buildAndApplyFilter();
- }
- },this);
- var _413="display: block; z-index: 1000; left: 0px; bottom: 0px; position: fixed; width: 100%; background-color: white; font: "+this.logFont;
- if(_3df){
- _413+="; height: 10em; border-top: 2px solid black";
- }else{
- _413+="; height: 100%;";
- }
- _3eb.style.cssText=_413;
- if(!_3ec){
- doc.body.appendChild(_3eb);
- }
- _413={"cssText":"width: 33%; display: inline; font: "+this.logFont};
- _3e2(_3ee,{"value":"FATAL|ERROR|WARNING|INFO|DEBUG","onkeypress":_411,"style":_413});
- _3eb.appendChild(_3ee);
- _3e2(_3ef,{"value":".*","onkeypress":_411,"style":_413});
- _3eb.appendChild(_3ef);
- _413="width: 8%; display:inline; font: "+this.logFont;
- _3f0.appendChild(doc.createTextNode("Filter"));
- _3f0.onclick=bind("buildAndApplyFilter",this);
- _3f0.style.cssText=_413;
- _3eb.appendChild(_3f0);
- _3f1.appendChild(doc.createTextNode("Load"));
- _3f1.onclick=_410;
- _3f1.style.cssText=_413;
- _3eb.appendChild(_3f1);
- _3f2.appendChild(doc.createTextNode("Clear"));
- _3f2.onclick=_40b;
- _3f2.style.cssText=_413;
- _3eb.appendChild(_3f2);
- _3f3.appendChild(doc.createTextNode("Close"));
- _3f3.onclick=_40c;
- _3f3.style.cssText=_413;
- _3eb.appendChild(_3f3);
- _3f4.style.cssText="overflow: auto; width: 100%";
- _3f5.style.cssText="width: 100%; height: "+(_3df?"8em":"100%");
- _3f4.appendChild(_3f5);
- _3eb.appendChild(_3f4);
- this.buildAndApplyFilter();
- _410();
- if(_3df){
- this.win=undefined;
- }else{
- this.win=win;
- }
- this.inline=_3df;
- this.closePane=_40c;
- this.closed=false;
- return this;
- };
- MochiKit.LoggingPane.LoggingPane.prototype={"logFont":"8pt Verdana,sans-serif","colorTable":{"ERROR":"red","FATAL":"darkred","WARNING":"blue","INFO":"black","DEBUG":"green"}};
- MochiKit.LoggingPane.EXPORT_OK=["LoggingPane"];
- MochiKit.LoggingPane.EXPORT=["createLoggingPane"];
- MochiKit.LoggingPane.__new__=function(){
- this.EXPORT_TAGS={":common":this.EXPORT,":all":MochiKit.Base.concat(this.EXPORT,this.EXPORT_OK)};
- MochiKit.Base.nameFunctions(this);
- MochiKit.LoggingPane._loggingPane=null;
- };
- MochiKit.LoggingPane.__new__();
- MochiKit.Base._exportSymbols(this,MochiKit.LoggingPane);
- if(typeof (dojo)!="undefined"){
- dojo.provide("MochiKit.Color");
- dojo.require("MochiKit.Base");
- dojo.require("MochiKit.DOM");
- dojo.require("MochiKit.Style");
- }
- if(typeof (JSAN)!="undefined"){
- JSAN.use("MochiKit.Base",[]);
- JSAN.use("MochiKit.DOM",[]);
- JSAN.use("MochiKit.Style",[]);
- }
- try{
- if(typeof (MochiKit.Base)=="undefined"){
- throw "";
- }
- }
- catch(e){
- throw "MochiKit.Color depends on MochiKit.Base";
- }
- try{
- if(typeof (MochiKit.Base)=="undefined"){
- throw "";
- }
- }
- catch(e){
- throw "MochiKit.Color depends on MochiKit.DOM";
- }
- try{
- if(typeof (MochiKit.Base)=="undefined"){
- throw "";
- }
- }
- catch(e){
- throw "MochiKit.Color depends on MochiKit.Style";
- }
- if(typeof (MochiKit.Color)=="undefined"){
- MochiKit.Color={};
- }
- MochiKit.Color.NAME="MochiKit.Color";
- MochiKit.Color.VERSION="1.4";
- MochiKit.Color.__repr__=function(){
- return "["+this.NAME+" "+this.VERSION+"]";
- };
- MochiKit.Color.toString=function(){
- return this.__repr__();
- };
- MochiKit.Color.Color=function(red,_415,blue,_417){
- if(typeof (_417)=="undefined"||_417===null){
- _417=1;
- }
- this.rgb={r:red,g:_415,b:blue,a:_417};
- };
- MochiKit.Color.Color.prototype={__class__:MochiKit.Color.Color,colorWithAlpha:function(_418){
- var rgb=this.rgb;
- var m=MochiKit.Color;
- return m.Color.fromRGB(rgb.r,rgb.g,rgb.b,_418);
- },colorWithHue:function(hue){
- var hsl=this.asHSL();
- hsl.h=hue;
- var m=MochiKit.Color;
- return m.Color.fromHSL(hsl);
- },colorWithSaturation:function(_41e){
- var hsl=this.asHSL();
- hsl.s=_41e;
- var m=MochiKit.Color;
- return m.Color.fromHSL(hsl);
- },colorWithLightness:function(_421){
- var hsl=this.asHSL();
- hsl.l=_421;
- var m=MochiKit.Color;
- return m.Color.fromHSL(hsl);
- },darkerColorWithLevel:function(_424){
- var hsl=this.asHSL();
- hsl.l=Math.max(hsl.l-_424,0);
- var m=MochiKit.Color;
- return m.Color.fromHSL(hsl);
- },lighterColorWithLevel:function(_427){
- var hsl=this.asHSL();
- hsl.l=Math.min(hsl.l+_427,1);
- var m=MochiKit.Color;
- return m.Color.fromHSL(hsl);
- },blendedColor:function(_42a,_42b){
- if(typeof (_42b)=="undefined"||_42b===null){
- _42b=0.5;
- }
- var sf=1-_42b;
- var s=this.rgb;
- var d=_42a.rgb;
- var df=_42b;
- return 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));
- },compareRGB:function(_430){
- var a=this.asRGB();
- var b=_430.asRGB();
- return MochiKit.Base.compare([a.r,a.g,a.b,a.a],[b.r,b.g,b.b,b.a]);
- },isLight:function(){
- return this.asHSL().b>0.5;
- },isDark:function(){
- return (!this.isLight());
- },toHSLString:function(){
- var c=this.asHSL();
- var ccc=MochiKit.Color.clampColorComponent;
- var rval=this._hslString;
- if(!rval){
- var mid=(ccc(c.h,360).toFixed(0)+","+ccc(c.s,100).toPrecision(4)+"%"+","+ccc(c.l,100).toPrecision(4)+"%");
- var a=c.a;
- if(a>=1){
- a=1;
- rval="hsl("+mid+")";
- }else{
- if(a<=0){
- a=0;
- }
- rval="hsla("+mid+","+a+")";
- }
- this._hslString=rval;
- }
- return rval;
- },toRGBString:function(){
- var c=this.rgb;
- var ccc=MochiKit.Color.clampColorComponent;
- var rval=this._rgbString;
- if(!rval){
- var mid=(ccc(c.r,255).toFixed(0)+","+ccc(c.g,255).toFixed(0)+","+ccc(c.b,255).toFixed(0));
- if(c.a!=1){
- rval="rgba("+mid+","+c.a+")";
- }else{
- rval="rgb("+mid+")";
- }
- this._rgbString=rval;
- }
- return rval;
- },asRGB:function(){
- return MochiKit.Base.clone(this.rgb);
- },toHexString:function(){
- var m=MochiKit.Color;
- var c=this.rgb;
- var ccc=MochiKit.Color.clampColorComponent;
- var rval=this._hexString;
- if(!rval){
- rval=("#"+m.toColorPart(ccc(c.r,255))+m.toColorPart(ccc(c.g,255))+m.toColorPart(ccc(c.b,255)));
- this._hexString=rval;
- }
- return rval;
- },asHSV:function(){
- var hsv=this.hsv;
- var c=this.rgb;
- if(typeof (hsv)=="undefined"||hsv===null){
- hsv=MochiKit.Color.rgbToHSV(this.rgb);
- this.hsv=hsv;
- }
- return MochiKit.Base.clone(hsv);
- },asHSL:function(){
- var hsl=this.hsl;
- var c=this.rgb;
- if(typeof (hsl)=="undefined"||hsl===null){
- hsl=MochiKit.Color.rgbToHSL(this.rgb);
- this.hsl=hsl;
- }
- return MochiKit.Base.clone(hsl);
- },toString:function(){
- return this.toRGBString();
- },repr:function(){
- var c=this.rgb;
- var col=[c.r,c.g,c.b,c.a];
- return this.__class__.NAME+"("+col.join(", ")+")";
- }};
- MochiKit.Base.update(MochiKit.Color.Color,{fromRGB:function(red,_447,blue,_449){
- var _44a=MochiKit.Color.Color;
- if(arguments.length==1){
- var rgb=red;
- red=rgb.r;
- _447=rgb.g;
- blue=rgb.b;
- if(typeof (rgb.a)=="undefined"){
- _449=undefined;
- }else{
- _449=rgb.a;
- }
- }
- return new _44a(red,_447,blue,_449);
- },fromHSL:function(hue,_44d,_44e,_44f){
- var m=MochiKit.Color;
- return m.Color.fromRGB(m.hslToRGB.apply(m,arguments));
- },fromHSV:function(hue,_452,_453,_454){
- var m=MochiKit.Color;
- return m.Color.fromRGB(m.hsvToRGB.apply(m,arguments));
- },fromName:function(name){
- var _457=MochiKit.Color.Color;
- if(name.charAt(0)=="\""){
- name=name.substr(1,name.length-2);
- }
- var _458=_457._namedColors[name.toLowerCase()];
- if(typeof (_458)=="string"){
- return _457.fromHexString(_458);
- }else{
- if(name=="transparent"){
- return _457.transparentColor();
- }
- }
- return null;
- },fromString:function(_459){
- var self=MochiKit.Color.Color;
- var _45b=_459.substr(0,3);
- if(_45b=="rgb"){
- return self.fromRGBString(_459);
- }else{
- if(_45b=="hsl"){
- return self.fromHSLString(_459);
- }else{
- if(_459.charAt(0)=="#"){
- return self.fromHexString(_459);
- }
- }
- }
- return self.fromName(_459);
- },fromHexString:function(_45c){
- if(_45c.charAt(0)=="#"){
- _45c=_45c.substring(1);
- }
- var _45d=[];
- var i,hex;
- if(_45c.length==3){
- for(i=0;i<3;i++){
- hex=_45c.substr(i,1);
- _45d.push(parseInt(hex+hex,16)/255);
- }
- }else{
- for(i=0;i<6;i+=2){
- hex=_45c.substr(i,2);
- _45d.push(parseInt(hex,16)/255);
- }
- }
- var _460=MochiKit.Color.Color;
- return _460.fromRGB.apply(_460,_45d);
- },_fromColorString:function(pre,_462,_463,_464){
- if(_464.indexOf(pre)===0){
- _464=_464.substring(_464.indexOf("(",3)+1,_464.length-1);
- }
- var _465=_464.split(/\s*,\s*/);
- var _466=[];
- for(var i=0;i<_465.length;i++){
- var c=_465[i];
- var val;
- var _46a=c.substring(c.length-3);
- if(c.charAt(c.length-1)=="%"){
- val=0.01*parseFloat(c.substring(0,c.length-1));
- }else{
- if(_46a=="deg"){
- val=parseFloat(c)/360;
- }else{
- if(_46a=="rad"){
- val=parseFloat(c)/(Math.PI*2);
- }else{
- val=_463[i]*parseFloat(c);
- }
- }
- }
- _466.push(val);
- }
- return this[_462].apply(this,_466);
- },fromComputedStyle:function(elem,_46c){
- var d=MochiKit.DOM;
- var cls=MochiKit.Color.Color;
- for(elem=d.getElement(elem);elem;elem=elem.parentNode){
- var _46f=MochiKit.Style.computedStyle.apply(d,arguments);
- if(!_46f){
- continue;
- }
- var _470=cls.fromString(_46f);
- if(!_470){
- break;
- }
- if(_470.asRGB().a>0){
- return _470;
- }
- }
- return null;
- },fromBackground:function(elem){
- var cls=MochiKit.Color.Color;
- return cls.fromComputedStyle(elem,"backgroundColor","background-color")||cls.whiteColor();
- },fromText:function(elem){
- var cls=MochiKit.Color.Color;
- return cls.fromComputedStyle(elem,"color","color")||cls.blackColor();
- },namedColors:function(){
- return MochiKit.Base.clone(MochiKit.Color.Color._namedColors);
- }});
- MochiKit.Base.update(MochiKit.Color,{clampColorComponent:function(v,_476){
- v*=_476;
- if(v<0){
- return 0;
- }else{
- if(v>_476){
- return _476;
- }else{
- return v;
- }
- }
- },_hslValue:function(n1,n2,hue){
- if(hue>6){
- hue-=6;
- }else{
- if(hue<0){
- hue+=6;
- }
- }
- var val;
- if(hue<1){
- val=n1+(n2-n1)*hue;
- }else{
- if(hue<3){
- val=n2;
- }else{
- if(hue<4){
- val=n1+(n2-n1)*(4-hue);
- }else{
- val=n1;
- }
- }
- }
- return val;
- },hsvToRGB:function(hue,_47c,_47d,_47e){
- if(arguments.length==1){
- var hsv=hue;
- hue=hsv.h;
- _47c=hsv.s;
- _47d=hsv.v;
- _47e=hsv.a;
- }
- var red;
- var _481;
- var blue;
- if(_47c===0){
- red=0;
- _481=0;
- blue=0;
- }else{
- var i=Math.floor(hue*6);
- var f=(hue*6)-i;
- var p=_47d*(1-_47c);
- var q=_47d*(1-(_47c*f));
- var t=_47d*(1-(_47c*(1-f)));
- switch(i){
- case 1:
- red=q;
- _481=_47d;
- blue=p;
- break;
- case 2:
- red=p;
- _481=_47d;
- blue=t;
- break;
- case 3:
- red=p;
- _481=q;
- blue=_47d;
- break;
- case 4:
- red=t;
- _481=p;
- blue=_47d;
- break;
- case 5:
- red=_47d;
- _481=p;
- blue=q;
- break;
- case 6:
- case 0:
- red=_47d;
- _481=t;
- blue=p;
- break;
- }
- }
- return {r:red,g:_481,b:blue,a:_47e};
- },hslToRGB:function(hue,_489,_48a,_48b){
- if(arguments.length==1){
- var hsl=hue;
- hue=hsl.h;
- _489=hsl.s;
- _48a=hsl.l;
- _48b=hsl.a;
- }
- var red;
- var _48e;
- var blue;
- if(_489===0){
- red=_48a;
- _48e=_48a;
- blue=_48a;
- }else{
- var m2;
- if(_48a<=0.5){
- m2=_48a*(1+_489);
- }else{
- m2=_48a+_489-(_48a*_489);
- }
- var m1=(2*_48a)-m2;
- var f=MochiKit.Color._hslValue;
- var h6=hue*6;
- red=f(m1,m2,h6+2);
- _48e=f(m1,m2,h6);
- blue=f(m1,m2,h6-2);
- }
- return {r:red,g:_48e,b:blue,a:_48b};
- },rgbToHSV:function(red,_495,blue,_497){
- if(arguments.length==1){
- var rgb=red;
- red=rgb.r;
- _495=rgb.g;
- blue=rgb.b;
- _497=rgb.a;
- }
- var max=Math.max(Math.max(red,_495),blue);
- var min=Math.min(Math.min(red,_495),blue);
- var hue;
- var _49c;
- var _49d=max;
- if(min==max){
- hue=0;
- _49c=0;
- }else{
- var _49e=(max-min);
- _49c=_49e/max;
- if(red==max){
- hue=(_495-blue)/_49e;
- }else{
- if(_495==max){
- hue=2+((blue-red)/_49e);
- }else{
- hue=4+((red-_495)/_49e);
- }
- }
- hue/=6;
- if(hue<0){
- hue+=1;
- }
- if(hue>1){
- hue-=1;
- }
- }
- return {h:hue,s:_49c,v:_49d,a:_497};
- },rgbToHSL:function(red,_4a0,blue,_4a2){
- if(arguments.length==1){
- var rgb=red;
- red=rgb.r;
- _4a0=rgb.g;
- blue=rgb.b;
- _4a2=rgb.a;
- }
- var max=Math.max(red,Math.max(_4a0,blue));
- var min=Math.min(red,Math.min(_4a0,blue));
- var hue;
- var _4a7;
- var _4a8=(max+min)/2;
- var _4a9=max-min;
- if(_4a9===0){
- hue=0;
- _4a7=0;
- }else{
- if(_4a8<=0.5){
- _4a7=_4a9/(max+min);
- }else{
- _4a7=_4a9/(2-max-min);
- }
- if(red==max){
- hue=(_4a0-blue)/_4a9;
- }else{
- if(_4a0==max){
- hue=2+((blue-red)/_4a9);
- }else{
- hue=4+((red-_4a0)/_4a9);
- }
- }
- hue/=6;
- if(hue<0){
- hue+=1;
- }
- if(hue>1){
- hue-=1;
- }
- }
- return {h:hue,s:_4a7,l:_4a8,a:_4a2};
- },toColorPart:function(num){
- num=Math.round(num);
- var _4ab=num.toString(16);
- if(num<16){
- return "0"+_4ab;
- }
- return _4ab;
- },__new__:function(){
- var m=MochiKit.Base;
- this.Color.fromRGBString=m.bind(this.Color._fromColorString,this.Color,"rgb","fromRGB",[1/255,1/255,1/255,1]);
- this.Color.fromHSLString=m.bind(this.Color._fromColorString,this.Color,"hsl","fromHSL",[1/360,0.01,0.01,1]);
- var _4ad=1/3;
- var _4ae={black:[0,0,0],blue:[0,0,1],brown:[0.6,0.4,0.2],cyan:[0,1,1],darkGray:[_4ad,_4ad,_4ad],gray:[0.5,0.5,0.5],green:[0,1,0],lightGray:[2*_4ad,2*_4ad,2*_4ad],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]};
- var _4af=function(name,r,g,b,a){
- var rval=this.fromRGB(r,g,b,a);
- this[name]=function(){
- return rval;
- };
- return rval;
- };
- for(var k in _4ae){
- var name=k+"Color";
- var _4b8=m.concat([_4af,this.Color,name],_4ae[k]);
- this.Color[name]=m.bind.apply(null,_4b8);
- }
- var _4b9=function(){
- for(var i=0;i<arguments.length;i++){
- if(!(arguments[i] instanceof Color)){
- return false;
- }
- }
- return true;
- };
- var _4bb=function(a,b){
- return a.compareRGB(b);
- };
- m.nameFunctions(this);
- m.registerComparator(this.Color.NAME,_4b9,_4bb);
- this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
- }});
- MochiKit.Color.EXPORT=["Color"];
- MochiKit.Color.EXPORT_OK=["clampColorComponent","rgbToHSL","hslToRGB","rgbToHSV","hsvToRGB","toColorPart"];
- MochiKit.Color.__new__();
- MochiKit.Base._exportSymbols(this,MochiKit.Color);
- MochiKit.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"};
- if(typeof (dojo)!="undefined"){
- dojo.provide("MochiKit.Signal");
- dojo.require("MochiKit.Base");
- dojo.require("MochiKit.DOM");
- dojo.require("MochiKit.Style");
- }
- if(typeof (JSAN)!="undefined"){
- JSAN.use("MochiKit.Base",[]);
- JSAN.use("MochiKit.DOM",[]);
- JSAN.use("MochiKit.Style",[]);
- }
- try{
- if(typeof (MochiKit.Base)=="undefined"){
- throw "";
- }
- }
- catch(e){
- throw "MochiKit.Signal depends on MochiKit.Base!";
- }
- try{
- if(typeof (MochiKit.DOM)=="undefined"){
- throw "";
- }
- }
- catch(e){
- throw "MochiKit.Signal depends on MochiKit.DOM!";
- }
- try{
- if(typeof (MochiKit.Style)=="undefined"){
- throw "";
- }
- }
- catch(e){
- throw "MochiKit.Signal depends on MochiKit.Style!";
- }
- if(typeof (MochiKit.Signal)=="undefined"){
- MochiKit.Signal={};
- }
- MochiKit.Signal.NAME="MochiKit.Signal";
- MochiKit.Signal.VERSION="1.4";
- MochiKit.Signal._observers=[];
- MochiKit.Signal.Event=function(src,e){
- this._event=e||window.event;
- this._src=src;
- };
- MochiKit.Base.update(MochiKit.Signal.Event.prototype,{__repr__:function(){
- var repr=MochiKit.Base.repr;
- var 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)+"}";
- if(this.type()&&this.type().indexOf("key")===0){
- str+=", key(): {code: "+repr(this.key().code)+", string: "+repr(this.key().string)+"}";
- }
- if(this.type()&&(this.type().indexOf("mouse")===0||this.type().indexOf("click")!=-1||this.type()=="contextmenu")){
- str+=", mouse(): {page: "+repr(this.mouse().page)+", client: "+repr(this.mouse().client);
- if(this.type()!="mousemove"){
- str+=", button: {left: "+repr(this.mouse().button.left)+", middle: "+repr(this.mouse().button.middle)+", right: "+repr(this.mouse().button.right)+"}}";
- }else{
- str+="}";
- }
- }
- if(this.type()=="mouseover"||this.type()=="mouseout"){
- str+=", relatedTarget(): "+repr(this.relatedTarget());
- }
- str+="}";
- return str;
- },toString:function(){
- return this.__repr__();
- },src:function(){
- return this._src;
- },event:function(){
- return this._event;
- },type:function(){
- return this._event.type||undefined;
- },target:function(){
- return this._event.target||this._event.srcElement;
- },_relatedTarget:null,relatedTarget:function(){
- if(this._relatedTarget!==null){
- return this._relatedTarget;
- }
- var elem=null;
- if(this.type()=="mouseover"){
- elem=(this._event.relatedTarget||this._event.fromElement);
- }else{
- if(this.type()=="mouseout"){
- elem=(this._event.relatedTarget||this._event.toElement);
- }
- }
- if(elem!==null){
- this._relatedTarget=elem;
- return elem;
- }
- return undefined;
- },_modifier:null,modifier:function(){
- if(this._modifier!==null){
- return this._modifier;
- }
- var m={};
- m.alt=this._event.altKey;
- m.ctrl=this._event.ctrlKey;
- m.meta=this._event.metaKey||false;
- m.shift=this._event.shiftKey;
- m.any=m.alt||m.ctrl||m.shift||m.meta;
- this._modifier=m;
- return m;
- },_key:null,key:function(){
- if(this._key!==null){
- return this._key;
- }
- var k={};
- if(this.type()&&this.type().indexOf("key")===0){
- if(this.type()=="keydown"||this.type()=="keyup"){
- k.code=this._event.keyCode;
- k.string=(MochiKit.Signal._specialKeys[k.code]||"KEY_UNKNOWN");
- this._key=k;
- return k;
- }else{
- if(this.type()=="keypress"){
- k.code=0;
- k.string="";
- if(typeof (this._event.charCode)!="undefined"&&this._event.charCode!==0&&!MochiKit.Signal._specialMacKeys[this._event.charCode]){
- k.code=this._event.charCode;
- k.string=String.fromCharCode(k.code);
- }else{
- if(this._event.keyCode&&typeof (this._event.charCode)=="undefined"){
- k.code=this._event.keyCode;
- k.string=String.fromCharCode(k.code);
- }
- }
- this._key=k;
- return k;
- }
- }
- }
- return undefined;
- },_mouse:null,mouse:function(){
- if(this._mouse!==null){
- return this._mouse;
- }
- var m={};
- var e=this._event;
- if(this.type()&&(this.type().indexOf("mouse")===0||this.type().indexOf("click")!=-1||this.type()=="contextmenu")){
- m.client=new MochiKit.Style.Coordinates(0,0);
- if(e.clientX||e.clientY){
- m.client.x=(!e.clientX||e.clientX<0)?0:e.clientX;
- m.client.y=(!e.clientY||e.clientY<0)?0:e.clientY;
- }
- m.page=new MochiKit.Style.Coordinates(0,0);
- if(e.pageX||e.pageY){
- m.page.x=(!e.pageX||e.pageX<0)?0:e.pageX;
- m.page.y=(!e.pageY||e.pageY<0)?0:e.pageY;
- }else{
- var de=MochiKit.DOM._document.documentElement;
- var b=MochiKit.DOM._document.body;
- m.page.x=e.clientX+(de.scrollLeft||b.scrollLeft)-(de.clientLeft||0);
- m.page.y=e.clientY+(de.scrollTop||b.scrollTop)-(de.clientTop||0);
- }
- if(this.type()!="mousemove"){
- m.button={};
- m.button.left=false;
- m.button.right=false;
- m.button.middle=false;
- if(e.which){
- m.button.left=(e.which==1);
- m.button.middle=(e.which==2);
- m.button.right=(e.which==3);
- }else{
- m.button.left=!!(e.button&1);
- m.button.right=!!(e.button&2);
- m.button.middle=!!(e.button&4);
- }
- }
- this._mouse=m;
- return m;
- }
- return undefined;
- },stop:function(){
- this.stopPropagation();
- this.preventDefault();
- },stopPropagation:function(){
- if(this._event.stopPropagation){
- this._event.stopPropagation();
- }else{
- this._event.cancelBubble=true;
- }
- },preventDefault:function(){
- if(this._event.preventDefault){
- this._event.preventDefault();
- }else{
- if(this._confirmUnload===null){
- this._event.returnValue=false;
- }
- }
- },_confirmUnload:null,confirmUnload:function(msg){
- if(this.type()=="beforeunload"){
- this._confirmUnload=msg;
- this._event.returnValue=msg;
- }
- }});
- MochiKit.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"};
- (function(){
- var _4ca=MochiKit.Signal._specialMacKeys;
- for(i=63236;i<=63242;i++){
- _4ca[i]="KEY_F"+(i-63236+1);
- }
- })();
- MochiKit.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"};
- (function(){
- var _4cb=MochiKit.Signal._specialKeys;
- for(var i=48;i<=57;i++){
- _4cb[i]="KEY_"+(i-48);
- }
- for(i=65;i<=90;i++){
- _4cb[i]="KEY_"+String.fromCharCode(i);
- }
- for(i=96;i<=105;i++){
- _4cb[i]="KEY_NUM_PAD_"+(i-96);
- }
- for(i=112;i<=123;i++){
- _4cb[i]="KEY_F"+(i-112+1);
- }
- })();
- MochiKit.Base.update(MochiKit.Signal,{__repr__:function(){
- return "["+this.NAME+" "+this.VERSION+"]";
- },toString:function(){
- return this.__repr__();
- },_unloadCache:function(){
- var self=MochiKit.Signal;
- var _4ce=self._observers;
- for(var i=0;i<_4ce.length;i++){
- self._disconnect(_4ce[i]);
- }
- delete self._observers;
- try{
- window.onload=undefined;
- }
- catch(e){
- }
- try{
- window.onunload=undefined;
- }
- catch(e){
- }
- },_listener:function(src,func,obj,_4d3){
- var self=MochiKit.Signal;
- var E=self.Event;
- if(!_4d3){
- return MochiKit.Base.bind(func,obj);
- }
- obj=obj||src;
- if(typeof (func)=="string"){
- return function(_4d6){
- obj[func].apply(obj,[new E(src,_4d6)]);
- };
- }else{
- return function(_4d7){
- func.apply(obj,[new E(src,_4d7)]);
- };
- }
- },_browserAlreadyHasMouseEnterAndLeave:function(){
- return /MSIE/.test(navigator.userAgent);
- },_mouseEnterListener:function(src,sig,func,obj){
- var E=MochiKit.Signal.Event;
- return function(_4dd){
- var e=new E(src,_4dd);
- try{
- e.relatedTarget().nodeName;
- }
- catch(err){
- return;
- }
- e.stop();
- if(MochiKit.DOM.isChildNode(e.relatedTarget(),src)){
- return;
- }
- e.type=function(){
- return sig;
- };
- if(typeof (func)=="string"){
- return obj[func].apply(obj,[e]);
- }else{
- return func.apply(obj,[e]);
- }
- };
- },_getDestPair:function(_4df,_4e0){
- var obj=null;
- var func=null;
- if(typeof (_4e0)!="undefined"){
- obj=_4df;
- func=_4e0;
- if(typeof (_4e0)=="string"){
- if(typeof (_4df[_4e0])!="function"){
- throw new Error("'funcOrStr' must be a function on 'objOrFunc'");
- }
- }else{
- if(typeof (_4e0)!="function"){
- throw new Error("'funcOrStr' must be a function or string");
- }
- }
- }else{
- if(typeof (_4df)!="function"){
- throw new Error("'objOrFunc' must be a function if 'funcOrStr' is not given");
- }else{
- func=_4df;
- }
- }
- return [obj,func];
- },connect:function(src,sig,_4e5,_4e6){
- src=MochiKit.DOM.getElement(src);
- var self=MochiKit.Signal;
- if(typeof (sig)!="string"){
- throw new Error("'sig' must be a string");
- }
- var _4e8=self._getDestPair(_4e5,_4e6);
- var obj=_4e8[0];
- var func=_4e8[1];
- if(typeof (obj)=="undefined"||obj===null){
- obj=src;
- }
- var _4eb=!!(src.addEventListener||src.attachEvent);
- if(_4eb&&(sig==="onmouseenter"||sig==="onmouseleave")&&!self._browserAlreadyHasMouseEnterAndLeave()){
- var _4ec=self._mouseEnterListener(src,sig.substr(2),func,obj);
- if(sig==="onmouseenter"){
- sig="onmouseover";
- }else{
- sig="onmouseout";
- }
- }else{
- var _4ec=self._listener(src,func,obj,_4eb);
- }
- if(src.addEventListener){
- src.addEventListener(sig.substr(2),_4ec,false);
- }else{
- if(src.attachEvent){
- src.attachEvent(sig,_4ec);
- }
- }
- var _4ed=[src,sig,_4ec,_4eb,_4e5,_4e6,true];
- self._observers.push(_4ed);
- if(!_4eb&&typeof (src.__connect__)=="function"){
- var args=MochiKit.Base.extend([_4ed],arguments,1);
- src.__connect__.apply(src,args);
- }
- return _4ed;
- },_disconnect:function(_4ef){
- if(!_4ef[6]){
- return;
- }
- _4ef[6]=false;
- if(!_4ef[3]){
- return;
- }
- var src=_4ef[0];
- var sig=_4ef[1];
- var _4f2=_4ef[2];
- if(src.removeEventListener){
- src.removeEventListener(sig.substr(2),_4f2,false);
- }else{
- if(src.detachEvent){
- src.detachEvent(sig,_4f2);
- }else{
- throw new Error("'src' must be a DOM element");
- }
- }
- },disconnect:function(_4f3){
- var self=MochiKit.Signal;
- var _4f5=self._observers;
- var m=MochiKit.Base;
- if(arguments.length>1){
- var src=MochiKit.DOM.getElement(arguments[0]);
- var sig=arguments[1];
- var obj=arguments[2];
- var func=arguments[3];
- for(var i=_4f5.length-1;i>=0;i--){
- var o=_4f5[i];
- if(o[0]===src&&o[1]===sig&&o[4]===obj&&o[5]===func){
- self._disconnect(o);
- if(!self._lock){
- _4f5.splice(i,1);
- }else{
- self._dirty=true;
- }
- return true;
- }
- }
- }else{
- var idx=m.findIdentical(_4f5,_4f3);
- if(idx>=0){
- self._disconnect(_4f3);
- if(!self._lock){
- _4f5.splice(idx,1);
- }else{
- self._dirty=true;
- }
- return true;
- }
- }
- return false;
- },disconnectAllTo:function(_4fe,_4ff){
- var self=MochiKit.Signal;
- var _501=self._observers;
- var _502=self._disconnect;
- var _503=self._lock;
- var _504=self._dirty;
- if(typeof (_4ff)==="undefined"){
- _4ff=null;
- }
- for(var i=_501.length-1;i>=0;i--){
- var _506=_501[i];
- if(_506[4]===_4fe&&(_4ff===null||_506[5]===_4ff)){
- _502(_506);
- if(_503){
- _504=true;
- }else{
- _501.splice(i,1);
- }
- }
- }
- self._dirty=_504;
- },disconnectAll:function(src,sig){
- src=MochiKit.DOM.getElement(src);
- var m=MochiKit.Base;
- var _50a=m.flattenArguments(m.extend(null,arguments,1));
- var self=MochiKit.Signal;
- var _50c=self._disconnect;
- var _50d=self._observers;
- var i,_50f;
- var _510=self._lock;
- var _511=self._dirty;
- if(_50a.length===0){
- for(i=_50d.length-1;i>=0;i--){
- _50f=_50d[i];
- if(_50f[0]===src){
- _50c(_50f);
- if(!_510){
- _50d.splice(i,1);
- }else{
- _511=true;
- }
- }
- }
- }else{
- var sigs={};
- for(i=0;i<_50a.length;i++){
- sigs[_50a[i]]=true;
- }
- for(i=_50d.length-1;i>=0;i--){
- _50f=_50d[i];
- if(_50f[0]===src&&_50f[1] in sigs){
- _50c(_50f);
- if(!_510){
- _50d.splice(i,1);
- }else{
- _511=true;
- }
- }
- }
- }
- self._dirty=_511;
- },signal:function(src,sig){
- var self=MochiKit.Signal;
- var _516=self._observers;
- src=MochiKit.DOM.getElement(src);
- var args=MochiKit.Base.extend(null,arguments,2);
- var _518=[];
- self._lock=true;
- for(var i=0;i<_516.length;i++){
- var _51a=_516[i];
- if(_51a[0]===src&&_51a[1]===sig){
- try{
- _51a[2].apply(src,args);
- }
- catch(e){
- _518.push(e);
- }
- }
- }
- self._lock=false;
- if(self._dirty){
- self._dirty=false;
- for(var i=_516.length-1;i>=0;i--){
- if(!_516[i][6]){
- _516.splice(i,1);
- }
- }
- }
- if(_518.length==1){
- throw _518[0];
- }else{
- if(_518.length>1){
- var e=new Error("Multiple errors thrown in handling 'sig', see errors property");
- e.errors=_518;
- throw e;
- }
- }
- }});
- MochiKit.Signal.EXPORT_OK=[];
- MochiKit.Signal.EXPORT=["connect","disconnect","signal","disconnectAll","disconnectAllTo"];
- MochiKit.Signal.__new__=function(win){
- var m=MochiKit.Base;
- this._document=document;
- this._window=win;
- this._lock=false;
- this._dirty=false;
- try{
- this.connect(window,"onunload",this._unloadCache);
- }
- catch(e){
- }
- this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
- m.nameFunctions(this);
- };
- MochiKit.Signal.__new__(this);
- if(MochiKit.__export__){
- connect=MochiKit.Signal.connect;
- disconnect=MochiKit.Signal.disconnect;
- disconnectAll=MochiKit.Signal.disconnectAll;
- signal=MochiKit.Signal.signal;
- }
- MochiKit.Base._exportSymbols(this,MochiKit.Signal);
- if(typeof (dojo)!="undefined"){
- dojo.provide("MochiKit.Visual");
- dojo.require("MochiKit.Base");
- dojo.require("MochiKit.DOM");
- dojo.require("MochiKit.Style");
- dojo.require("MochiKit.Color");
- }
- if(typeof (JSAN)!="undefined"){
- JSAN.use("MochiKit.Base",[]);
- JSAN.use("MochiKit.DOM",[]);
- JSAN.use("MochiKit.Style",[]);
- JSAN.use("MochiKit.Color",[]);
- }
- try{
- if(typeof (MochiKit.Base)==="undefined"||typeof (MochiKit.DOM)==="undefined"||typeof (MochiKit.Style)==="undefined"||typeof (MochiKit.Color)==="undefined"){
- throw "";
- }
- }
- catch(e){
- throw "MochiKit.Visual depends on MochiKit.Base, MochiKit.DOM, MochiKit.Style and MochiKit.Color!";
- }
- if(typeof (MochiKit.Visual)=="undefined"){
- MochiKit.Visual={};
- }
- MochiKit.Visual.NAME="MochiKit.Visual";
- MochiKit.Visual.VERSION="1.4";
- MochiKit.Visual.__repr__=function(){
- return "["+this.NAME+" "+this.VERSION+"]";
- };
- MochiKit.Visual.toString=function(){
- return this.__repr__();
- };
- MochiKit.Visual._RoundCorners=function(e,_51f){
- e=MochiKit.DOM.getElement(e);
- this._setOptions(_51f);
- if(this.options.__unstable__wrapElement){
- e=this._doWrap(e);
- }
- var _520=this.options.color;
- var C=MochiKit.Color.Color;
- if(this.options.color==="fromElement"){
- _520=C.fromBackground(e);
- }else{
- if(!(_520 instanceof C)){
- _520=C.fromString(_520);
- }
- }
- this.isTransparent=(_520.asRGB().a<=0);
- var _522=this.options.bgColor;
- if(this.options.bgColor==="fromParent"){
- _522=C.fromBackground(e.offsetParent);
- }else{
- if(!(_522 instanceof C)){
- _522=C.fromString(_522);
- }
- }
- this._roundCornersImpl(e,_520,_522);
- };
- MochiKit.Visual._RoundCorners.prototype={_doWrap:function(e){
- var _524=e.parentNode;
- var doc=MochiKit.DOM.currentDocument();
- if(typeof (doc.defaultView)==="undefined"||doc.defaultView===null){
- return e;
- }
- var _526=doc.defaultView.getComputedStyle(e,null);
- if(typeof (_526)==="undefined"||_526===null){
- return e;
- }
- var _527=MochiKit.DOM.DIV({"style":{display:"block",marginTop:_526.getPropertyValue("padding-top"),marginRight:_526.getPropertyValue("padding-right"),marginBottom:_526.getPropertyValue("padding-bottom"),marginLeft:_526.getPropertyValue("padding-left"),padding:"0px"}});
- _527.innerHTML=e.innerHTML;
- e.innerHTML="";
- e.appendChild(_527);
- return e;
- },_roundCornersImpl:function(e,_529,_52a){
- if(this.options.border){
- this._renderBorder(e,_52a);
- }
- if(this._isTopRounded()){
- this._roundTopCorners(e,_529,_52a);
- }
- if(this._isBottomRounded()){
- this._roundBottomCorners(e,_529,_52a);
- }
- },_renderBorder:function(el,_52c){
- var _52d="1px solid "+this._borderColor(_52c);
- var _52e="border-left: "+_52d;
- var _52f="border-right: "+_52d;
- var _530="style='"+_52e+";"+_52f+"'";
- el.innerHTML="<div "+_530+">"+el.innerHTML+"</div>";
- },_roundTopCorners:function(el,_532,_533){
- var _534=this._createCorner(_533);
- for(var i=0;i<this.options.numSlices;i++){
- _534.appendChild(this._createCornerSlice(_532,_533,i,"top"));
- }
- el.style.paddingTop=0;
- el.insertBefore(_534,el.firstChild);
- },_roundBottomCorners:function(el,_537,_538){
- var _539=this._createCorner(_538);
- for(var i=(this.options.numSlices-1);i>=0;i--){
- _539.appendChild(this._createCornerSlice(_537,_538,i,"bottom"));
- }
- el.style.paddingBottom=0;
- el.appendChild(_539);
- },_createCorner:function(_53b){
- var dom=MochiKit.DOM;
- return dom.DIV({style:{backgroundColor:_53b.toString()}});
- },_createCornerSlice:function(_53d,_53e,n,_540){
- var _541=MochiKit.DOM.SPAN();
- var _542=_541.style;
- _542.backgroundColor=_53d.toString();
- _542.display="block";
- _542.height="1px";
- _542.overflow="hidden";
- _542.fontSize="1px";
- var _543=this._borderColor(_53d,_53e);
- if(this.options.border&&n===0){
- _542.borderTopStyle="solid";
- _542.borderTopWidth="1px";
- _542.borderLeftWidth="0px";
- _542.borderRightWidth="0px";
- _542.borderBottomWidth="0px";
- _542.height="0px";
- _542.borderColor=_543.toString();
- }else{
- if(_543){
- _542.borderColor=_543.toString();
- _542.borderStyle="solid";
- _542.borderWidth="0px 1px";
- }
- }
- if(!this.options.compact&&(n==(this.options.numSlices-1))){
- _542.height="2px";
- }
- this._setMargin(_541,n,_540);
- this._setBorder(_541,n,_540);
- return _541;
- },_setOptions:function(_544){
- this.options={corners:"all",color:"fromElement",bgColor:"fromParent",blend:true,border:false,compact:false,__unstable__wrapElement:false};
- MochiKit.Base.update(this.options,_544);
- this.options.numSlices=(this.options.compact?2:4);
- },_whichSideTop:function(){
- var _545=this.options.corners;
- if(this._hasString(_545,"all","top")){
- return "";
- }
- var _546=(_545.indexOf("tl")!=-1);
- var _547=(_545.indexOf("tr")!=-1);
- if(_546&&_547){
- return "";
- }
- if(_546){
- return "left";
- }
- if(_547){
- return "right";
- }
- return "";
- },_whichSideBottom:function(){
- var _548=this.options.corners;
- if(this._hasString(_548,"all","bottom")){
- return "";
- }
- var _549=(_548.indexOf("bl")!=-1);
- var _54a=(_548.indexOf("br")!=-1);
- if(_549&&_54a){
- return "";
- }
- if(_549){
- return "left";
- }
- if(_54a){
- return "right";
- }
- return "";
- },_borderColor:function(_54b,_54c){
- if(_54b=="transparent"){
- return _54c;
- }else{
- if(this.options.border){
- return this.options.border;
- }else{
- if(this.options.blend){
- return _54c.blendedColor(_54b);
- }
- }
- }
- return "";
- },_setMargin:function(el,n,_54f){
- var _550=this._marginSize(n)+"px";
- var _551=(_54f=="top"?this._whichSideTop():this._whichSideBottom());
- var _552=el.style;
- if(_551=="left"){
- _552.marginLeft=_550;
- _552.marginRight="0px";
- }else{
- if(_551=="right"){
- _552.marginRight=_550;
- _552.marginLeft="0px";
- }else{
- _552.marginLeft=_550;
- _552.marginRight=_550;
- }
- }
- },_setBorder:function(el,n,_555){
- var _556=this._borderSize(n)+"px";
- var _557=(_555=="top"?this._whichSideTop():this._whichSideBottom());
- var _558=el.style;
- if(_557=="left"){
- _558.borderLeftWidth=_556;
- _558.borderRightWidth="0px";
- }else{
- if(_557=="right"){
- _558.borderRightWidth=_556;
- _558.borderLeftWidth="0px";
- }else{
- _558.borderLeftWidth=_556;
- _558.borderRightWidth=_556;
- }
- }
- },_marginSize:function(n){
- if(this.isTransparent){
- return 0;
- }
- var o=this.options;
- if(o.compact&&o.blend){
- var _55b=[1,0];
- return _55b[n];
- }else{
- if(o.compact){
- var _55c=[2,1];
- return _55c[n];
- }else{
- if(o.blend){
- var _55d=[3,2,1,0];
- return _55d[n];
- }else{
- var _55e=[5,3,2,1];
- return _55e[n];
- }
- }
- }
- },_borderSize:function(n){
- var o=this.options;
- var _561;
- if(o.compact&&(o.blend||this.isTransparent)){
- return 1;
- }else{
- if(o.compact){
- _561=[1,0];
- }else{
- if(o.blend){
- _561=[2,1,1,1];
- }else{
- if(o.border){
- _561=[0,2,0,0];
- }else{
- if(this.isTransparent){
- _561=[5,3,2,1];
- }else{
- return 0;
- }
- }
- }
- }
- }
- return _561[n];
- },_hasString:function(str){
- for(var i=1;i<arguments.length;i++){
- if(str.indexOf(arguments[i])!=-1){
- return true;
- }
- }
- return false;
- },_isTopRounded:function(){
- return this._hasString(this.options.corners,"all","top","tl","tr");
- },_isBottomRounded:function(){
- return this._hasString(this.options.corners,"all","bottom","bl","br");
- },_hasSingleTextChild:function(el){
- return (el.childNodes.length==1&&el.childNodes[0].nodeType==3);
- }};
- MochiKit.Visual.roundElement=function(e,_566){
- new MochiKit.Visual._RoundCorners(e,_566);
- };
- MochiKit.Visual.roundClass=function(_567,_568,_569){
- var _56a=MochiKit.DOM.getElementsByTagAndClassName(_567,_568);
- for(var i=0;i<_56a.length;i++){
- MochiKit.Visual.roundElement(_56a[i],_569);
- }
- };
- MochiKit.Visual.tagifyText=function(_56c,_56d){
- var _56d=_56d||"position:relative";
- if(/MSIE/.test(navigator.userAgent)){
- _56d+=";zoom:1";
- }
- _56c=MochiKit.DOM.getElement(_56c);
- var ma=MochiKit.Base.map;
- ma(function(_56f){
- if(_56f.nodeType==3){
- ma(function(_570){
- _56c.insertBefore(MochiKit.DOM.SPAN({style:_56d},_570==" "?String.fromCharCode(160):_570),_56f);
- },_56f.nodeValue.split(""));
- MochiKit.DOM.removeElement(_56f);
- }
- },_56c.childNodes);
- };
- MochiKit.Visual.forceRerendering=function(_571){
- try{
- _571=MochiKit.DOM.getElement(_571);
- var n=document.createTextNode(" ");
- _571.appendChild(n);
- _571.removeChild(n);
- }
- catch(e){
- }
- };
- MochiKit.Visual.multiple=function(_573,_574,_575){
- _575=MochiKit.Base.update({speed:0.1,delay:0},_575||{});
- var _576=_575.delay;
- var _577=0;
- MochiKit.Base.map(function(_578){
- _575.delay=_577*_575.speed+_576;
- new _574(_578,_575);
- _577+=1;
- },_573);
- };
- MochiKit.Visual.PAIRS={"slide":["slideDown","slideUp"],"blind":["blindDown","blindUp"],"appear":["appear","fade"],"size":["grow","shrink"]};
- MochiKit.Visual.toggle=function(_579,_57a,_57b){
- _579=MochiKit.DOM.getElement(_579);
- _57a=(_57a||"appear").toLowerCase();
- _57b=MochiKit.Base.update({queue:{position:"end",scope:(_579.id||"global"),limit:1}},_57b||{});
- var v=MochiKit.Visual;
- v[_579.style.display!="none"?v.PAIRS[_57a][1]:v.PAIRS[_57a][0]](_579,_57b);
- };
- MochiKit.Visual.Transitions={};
- MochiKit.Visual.Transitions.linear=function(pos){
- return pos;
- };
- MochiKit.Visual.Transitions.sinoidal=function(pos){
- return (-Math.cos(pos*Math.PI)/2)+0.5;
- };
- MochiKit.Visual.Transitions.reverse=function(pos){
- return 1-pos;
- };
- MochiKit.Visual.Transitions.flicker=function(pos){
- return ((-Math.cos(pos*Math.PI)/4)+0.75)+Math.random()/4;
- };
- MochiKit.Visual.Transitions.wobble=function(pos){
- return (-Math.cos(pos*Math.PI*(9*pos))/2)+0.5;
- };
- MochiKit.Visual.Transitions.pulse=function(pos){
- return (Math.floor(pos*10)%2==0?(pos*10-Math.floor(pos*10)):1-(pos*10-Math.floor(pos*10)));
- };
- MochiKit.Visual.Transitions.none=function(pos){
- return 0;
- };
- MochiKit.Visual.Transitions.full=function(pos){
- return 1;
- };
- MochiKit.Visual.ScopedQueue=function(){
- this.__init__();
- };
- MochiKit.Base.update(MochiKit.Visual.ScopedQueue.prototype,{__init__:function(){
- this.effects=[];
- this.interval=null;
- },add:function(_585){
- var _586=new Date().getTime();
- var _587=(typeof (_585.options.queue)=="string")?_585.options.queue:_585.options.queue.position;
- var ma=MochiKit.Base.map;
- switch(_587){
- case "front":
- ma(function(e){
- if(e.state=="idle"){
- e.startOn+=_585.finishOn;
- e.finishOn+=_585.finishOn;
- }
- },this.effects);
- break;
- case "end":
- var _58a;
- ma(function(e){
- var i=e.finishOn;
- if(i>=(_58a||i)){
- _58a=i;
- }
- },this.effects);
- _586=_58a||_586;
- break;
- case "break":
- ma(function(e){
- e.finalize();
- },this.effects);
- break;
- }
- _585.startOn+=_586;
- _585.finishOn+=_586;
- if(!_585.options.queue.limit||this.effects.length<_585.options.queue.limit){
- this.effects.push(_585);
- }
- if(!this.interval){
- this.interval=this.startLoop(MochiKit.Base.bind(this.loop,this),40);
- }
- },startLoop:function(func,_58f){
- return setInterval(func,_58f);
- },remove:function(_590){
- this.effects=MochiKit.Base.filter(function(e){
- return e!=_590;
- },this.effects);
- if(this.effects.length==0){
- this.stopLoop(this.interval);
- this.interval=null;
- }
- },stopLoop:function(_592){
- clearInterval(_592);
- },loop:function(){
- var _593=new Date().getTime();
- MochiKit.Base.map(function(_594){
- _594.loop(_593);
- },this.effects);
- }});
- MochiKit.Visual.Queues={instances:{},get:function(_595){
- if(typeof (_595)!="string"){
- return _595;
- }
- if(!this.instances[_595]){
- this.instances[_595]=new MochiKit.Visual.ScopedQueue();
- }
- return this.instances[_595];
- }};
- MochiKit.Visual.Queue=MochiKit.Visual.Queues.get("global");
- MochiKit.Visual.DefaultOptions={transition:MochiKit.Visual.Transitions.sinoidal,duration:1,fps:25,sync:false,from:0,to:1,delay:0,queue:"parallel"};
- MochiKit.Visual.Base=function(){
- };
- MochiKit.Visual.Base.prototype={__class__:MochiKit.Visual.Base,start:function(_596){
- var v=MochiKit.Visual;
- this.options=MochiKit.Base.setdefault(_596||{},v.DefaultOptions);
- this.currentFrame=0;
- this.state="idle";
- this.startOn=this.options.delay*1000;
- this.finishOn=this.startOn+(this.options.duration*1000);
- this.event("beforeStart");
- if(!this.options.sync){
- v.Queues.get(typeof (this.options.queue)=="string"?"global":this.options.queue.scope).add(this);
- }
- },loop:function(_598){
- if(_598>=this.startOn){
- if(_598>=this.finishOn){
- return this.finalize();
- }
- var pos=(_598-this.startOn)/(this.finishOn-this.startOn);
- var _59a=Math.round(pos*this.options.fps*this.options.duration);
- if(_59a>this.currentFrame){
- this.render(pos);
- this.currentFrame=_59a;
- }
- }
- },render:function(pos){
- if(this.state=="idle"){
- this.state="running";
- this.event("beforeSetup");
- this.setup();
- this.event("afterSetup");
- }
- if(this.state=="running"){
- if(this.options.transition){
- pos=this.options.transition(pos);
- }
- pos*=(this.options.to-this.options.from);
- pos+=this.options.from;
- this.event("beforeUpdate");
- this.update(pos);
- this.event("afterUpdate");
- }
- },cancel:function(){
- if(!this.options.sync){
- MochiKit.Visual.Queues.get(typeof (this.options.queue)=="string"?"global":this.options.queue.scope).remove(this);
- }
- this.state="finished";
- },finalize:function(){
- this.render(1);
- this.cancel();
- this.event("beforeFinish");
- this.finish();
- this.event("afterFinish");
- },setup:function(){
- },finish:function(){
- },update:function(_59c){
- },event:function(_59d){
- if(this.options[_59d+"Internal"]){
- this.options[_59d+"Internal"](this);
- }
- if(this.options[_59d]){
- this.options[_59d](this);
- }
- },repr:function(){
- return "["+this.__class__.NAME+", options:"+MochiKit.Base.repr(this.options)+"]";
- }};
- MochiKit.Visual.Parallel=function(_59e,_59f){
- this.__init__(_59e,_59f);
- };
- MochiKit.Visual.Parallel.prototype=new MochiKit.Visual.Base();
- MochiKit.Base.update(MochiKit.Visual.Parallel.prototype,{__init__:function(_5a0,_5a1){
- this.effects=_5a0||[];
- this.start(_5a1);
- },update:function(_5a2){
- MochiKit.Base.map(function(_5a3){
- _5a3.render(_5a2);
- },this.effects);
- },finish:function(){
- MochiKit.Base.map(function(_5a4){
- _5a4.finalize();
- },this.effects);
- }});
- MochiKit.Visual.Opacity=function(_5a5,_5a6){
- this.__init__(_5a5,_5a6);
- };
- MochiKit.Visual.Opacity.prototype=new MochiKit.Visual.Base();
- MochiKit.Base.update(MochiKit.Visual.Opacity.prototype,{__init__:function(_5a7,_5a8){
- var b=MochiKit.Base;
- var s=MochiKit.Style;
- this.element=MochiKit.DOM.getElement(_5a7);
- if(this.element.currentStyle&&(!this.element.currentStyle.hasLayout)){
- s.setStyle(this.element,{zoom:1});
- }
- _5a8=b.update({from:s.getOpacity(this.element)||0,to:1},_5a8||{});
- this.start(_5a8);
- },update:function(_5ab){
- MochiKit.Style.setOpacity(this.element,_5ab);
- }});
- MochiKit.Visual.Move=function(_5ac,_5ad){
- this.__init__(_5ac,_5ad);
- };
- MochiKit.Visual.Move.prototype=new MochiKit.Visual.Base();
- MochiKit.Base.update(MochiKit.Visual.Move.prototype,{__init__:function(_5ae,_5af){
- this.element=MochiKit.DOM.getElement(_5ae);
- _5af=MochiKit.Base.update({x:0,y:0,mode:"relative"},_5af||{});
- this.start(_5af);
- },setup:function(){
- MochiKit.DOM.makePositioned(this.element);
- var s=this.element.style;
- var _5b1=s.visibility;
- var _5b2=s.display;
- if(_5b2=="none"){
- s.visibility="hidden";
- s.display="";
- }
- this.originalLeft=parseFloat(MochiKit.Style.getStyle(this.element,"left")||"0");
- this.originalTop=parseFloat(MochiKit.Style.getStyle(this.element,"top")||"0");
- if(this.options.mode=="absolute"){
- this.options.x-=this.originalLeft;
- this.options.y-=this.originalTop;
- }
- if(_5b2=="none"){
- s.visibility=_5b1;
- s.display=_5b2;
- }
- },update:function(_5b3){
- MochiKit.Style.setStyle(this.element,{left:Math.round(this.options.x*_5b3+this.originalLeft)+"px",top:Math.round(this.options.y*_5b3+this.originalTop)+"px"});
- }});
- MochiKit.Visual.Scale=function(_5b4,_5b5,_5b6){
- this.__init__(_5b4,_5b5,_5b6);
- };
- MochiKit.Visual.Scale.prototype=new MochiKit.Visual.Base();
- MochiKit.Base.update(MochiKit.Visual.Scale.prototype,{__init__:function(_5b7,_5b8,_5b9){
- this.element=MochiKit.DOM.getElement(_5b7);
- _5b9=MochiKit.Base.update({scaleX:true,scaleY:true,scaleContent:true,scaleFromCenter:false,scaleMode:"box",scaleFrom:100,scaleTo:_5b8},_5b9||{});
- this.start(_5b9);
- },setup:function(){
- this.restoreAfterFinish=this.options.restoreAfterFinish||false;
- this.elementPositioning=MochiKit.Style.getStyle(this.element,"position");
- var ma=MochiKit.Base.map;
- var b=MochiKit.Base.bind;
- this.originalStyle={};
- ma(b(function(k){
- this.originalStyle[k]=this.element.style[k];
- },this),["top","left","width","height","fontSize"]);
- this.originalTop=this.element.offsetTop;
- this.originalLeft=this.element.offsetLeft;
- var _5bd=MochiKit.Style.getStyle(this.element,"font-size")||"100%";
- ma(b(function(_5be){
- if(_5bd.indexOf(_5be)>0){
- this.fontSize=parseFloat(_5bd);
- this.fontSizeType=_5be;
- }
- },this),["em","px","%"]);
- this.factor=(this.options.scaleTo-this.options.scaleFrom)/100;
- if(/^content/.test(this.options.scaleMode)){
- this.dims=[this.element.scrollHeight,this.element.scrollWidth];
- }else{
- if(this.options.scaleMode=="box"){
- this.dims=[this.element.offsetHeight,this.element.offsetWidth];
- }else{
- this.dims=[this.options.scaleMode.originalHeight,this.options.scaleMode.originalWidth];
- }
- }
- },update:function(_5bf){
- var _5c0=(this.options.scaleFrom/100)+(this.factor*_5bf);
- if(this.options.scaleContent&&this.fontSize){
- MochiKit.Style.setStyle(this.element,{fontSize:this.fontSize*_5c0+this.fontSizeType});
- }
- this.setDimensions(this.dims[0]*_5c0,this.dims[1]*_5c0);
- },finish:function(){
- if(this.restoreAfterFinish){
- MochiKit.Style.setStyle(this.element,this.originalStyle);
- }
- },setDimensions:function(_5c1,_5c2){
- var d={};
- var r=Math.round;
- if(/MSIE/.test(navigator.userAgent)){
- r=Math.ceil;
- }
- if(this.options.scaleX){
- d.width=r(_5c2)+"px";
- }
- if(this.options.scaleY){
- d.height=r(_5c1)+"px";
- }
- if(this.options.scaleFromCenter){
- var topd=(_5c1-this.dims[0])/2;
- var _5c6=(_5c2-this.dims[1])/2;
- if(this.elementPositioning=="absolute"){
- if(this.options.scaleY){
- d.top=this.originalTop-topd+"px";
- }
- if(this.options.scaleX){
- d.left=this.originalLeft-_5c6+"px";
- }
- }else{
- if(this.options.scaleY){
- d.top=-topd+"px";
- }
- if(this.options.scaleX){
- d.left=-_5c6+"px";
- }
- }
- }
- MochiKit.Style.setStyle(this.element,d);
- }});
- MochiKit.Visual.Highlight=function(_5c7,_5c8){
- this.__init__(_5c7,_5c8);
- };
- MochiKit.Visual.Highlight.prototype=new MochiKit.Visual.Base();
- MochiKit.Base.update(MochiKit.Visual.Highlight.prototype,{__init__:function(_5c9,_5ca){
- this.element=MochiKit.DOM.getElement(_5c9);
- _5ca=MochiKit.Base.update({startcolor:"#ffff99"},_5ca||{});
- this.start(_5ca);
- },setup:function(){
- var b=MochiKit.Base;
- var s=MochiKit.Style;
- if(s.getStyle(this.element,"display")=="none"){
- this.cancel();
- return;
- }
- this.oldStyle={backgroundImage:s.getStyle(this.element,"background-image")};
- s.setStyle(this.element,{backgroundImage:"none"});
- if(!this.options.endcolor){
- this.options.endcolor=MochiKit.Color.Color.fromBackground(this.element).toHexString();
- }
- if(b.isUndefinedOrNull(this.options.restorecolor)){
- this.options.restorecolor=s.getStyle(this.element,"background-color");
- }
- this._base=b.map(b.bind(function(i){
- return parseInt(this.options.startcolor.slice(i*2+1,i*2+3),16);
- },this),[0,1,2]);
- this._delta=b.map(b.bind(function(i){
- return parseInt(this.options.endcolor.slice(i*2+1,i*2+3),16)-this._base[i];
- },this),[0,1,2]);
- },update:function(_5cf){
- var m="#";
- MochiKit.Base.map(MochiKit.Base.bind(function(i){
- m+=MochiKit.Color.toColorPart(Math.round(this._base[i]+this._delta[i]*_5cf));
- },this),[0,1,2]);
- MochiKit.Style.setStyle(this.element,{backgroundColor:m});
- },finish:function(){
- MochiKit.Style.setStyle(this.element,MochiKit.Base.update(this.oldStyle,{backgroundColor:this.options.restorecolor}));
- }});
- MochiKit.Visual.ScrollTo=function(_5d2,_5d3){
- this.__init__(_5d2,_5d3);
- };
- MochiKit.Visual.ScrollTo.prototype=new MochiKit.Visual.Base();
- MochiKit.Base.update(MochiKit.Visual.ScrollTo.prototype,{__init__:function(_5d4,_5d5){
- this.element=MochiKit.DOM.getElement(_5d4);
- this.start(_5d5||{});
- },setup:function(){
- var p=MochiKit.Position;
- p.prepare();
- var _5d7=p.cumulativeOffset(this.element);
- if(this.options.offset){
- _5d7.y+=this.options.offset;
- }
- var max;
- if(window.innerHeight){
- max=window.innerHeight-window.height;
- }else{
- if(document.documentElement&&document.documentElement.clientHeight){
- max=document.documentElement.clientHeight-document.body.scrollHeight;
- }else{
- if(document.body){
- max=document.body.clientHeight-document.body.scrollHeight;
- }
- }
- }
- this.scrollStart=p.windowOffset.y;
- this.delta=(_5d7.y>max?max:_5d7.y)-this.scrollStart;
- },update:function(_5d9){
- var p=MochiKit.Position;
- p.prepare();
- window.scrollTo(p.windowOffset.x,this.scrollStart+(_5d9*this.delta));
- }});
- MochiKit.Visual.fade=function(_5db,_5dc){
- var s=MochiKit.Style;
- var _5de=MochiKit.DOM.getElement(_5db).style.opacity||"";
- _5dc=MochiKit.Base.update({from:s.getOpacity(_5db)||1,to:0,afterFinishInternal:function(_5df){
- if(_5df.options.to!==0){
- return;
- }
- s.hideElement(_5df.element);
- s.setStyle(_5df.element,{opacity:_5de});
- }},_5dc||{});
- return new MochiKit.Visual.Opacity(_5db,_5dc);
- };
- MochiKit.Visual.appear=function(_5e0,_5e1){
- var s=MochiKit.Style;
- var v=MochiKit.Visual;
- _5e1=MochiKit.Base.update({from:(s.getStyle(_5e0,"display")=="none"?0:s.getOpacity(_5e0)||0),to:1,afterFinishInternal:function(_5e4){
- v.forceRerendering(_5e4.element);
- },beforeSetupInternal:function(_5e5){
- s.setOpacity(_5e5.element,_5e5.options.from);
- s.showElement(_5e5.element);
- }},_5e1||{});
- return new v.Opacity(_5e0,_5e1);
- };
- MochiKit.Visual.puff=function(_5e6,_5e7){
- var s=MochiKit.Style;
- var v=MochiKit.Visual;
- _5e6=MochiKit.DOM.getElement(_5e6);
- var _5ea={opacity:_5e6.style.opacity||"",position:s.getStyle(_5e6,"position"),top:_5e6.style.top,left:_5e6.style.left,width:_5e6.style.width,height:_5e6.style.height};
- _5e7=MochiKit.Base.update({beforeSetupInternal:function(_5eb){
- MochiKit.Position.absolutize(_5eb.effects[0].element);
- },afterFinishInternal:function(_5ec){
- s.hideElement(_5ec.effects[0].element);
- s.setStyle(_5ec.effects[0].element,_5ea);
- }},_5e7||{});
- return new v.Parallel([new v.Scale(_5e6,200,{sync:true,scaleFromCenter:true,scaleContent:true,restoreAfterFinish:true}),new v.Opacity(_5e6,{sync:true,to:0})],_5e7);
- };
- MochiKit.Visual.blindUp=function(_5ed,_5ee){
- var d=MochiKit.DOM;
- _5ed=d.getElement(_5ed);
- var _5f0=d.makeClipping(_5ed);
- _5ee=MochiKit.Base.update({scaleContent:false,scaleX:false,restoreAfterFinish:true,afterFinishInternal:function(_5f1){
- MochiKit.Style.hideElement(_5f1.element);
- d.undoClipping(_5f1.element,_5f0);
- }},_5ee||{});
- return new MochiKit.Visual.Scale(_5ed,0,_5ee);
- };
- MochiKit.Visual.blindDown=function(_5f2,_5f3){
- var d=MochiKit.DOM;
- var s=MochiKit.Style;
- _5f2=d.getElement(_5f2);
- var _5f6=s.getElementDimensions(_5f2);
- var _5f7;
- _5f3=MochiKit.Base.update({scaleContent:false,scaleX:false,scaleFrom:0,scaleMode:{originalHeight:_5f6.h,originalWidth:_5f6.w},restoreAfterFinish:true,afterSetupInternal:function(_5f8){
- _5f7=d.makeClipping(_5f8.element);
- s.setStyle(_5f8.element,{height:"0px"});
- s.showElement(_5f8.element);
- },afterFinishInternal:function(_5f9){
- d.undoClipping(_5f9.element,_5f7);
- }},_5f3||{});
- return new MochiKit.Visual.Scale(_5f2,100,_5f3);
- };
- MochiKit.Visual.switchOff=function(_5fa,_5fb){
- var d=MochiKit.DOM;
- _5fa=d.getElement(_5fa);
- var _5fd=_5fa.style.opacity||"";
- var _5fe;
- var _5fb=MochiKit.Base.update({duration:0.3,scaleFromCenter:true,scaleX:false,scaleContent:false,restoreAfterFinish:true,beforeSetupInternal:function(_5ff){
- d.makePositioned(_5ff.element);
- _5fe=d.makeClipping(_5ff.element);
- },afterFinishInternal:function(_600){
- MochiKit.Style.hideElement(_600.element);
- d.undoClipping(_600.element,_5fe);
- d.undoPositioned(_600.element);
- MochiKit.Style.setStyle(_600.element,{opacity:_5fd});
- }},_5fb||{});
- var v=MochiKit.Visual;
- return new v.appear(_5fa,{duration:0.4,from:0,transition:v.Transitions.flicker,afterFinishInternal:function(_602){
- new v.Scale(_602.element,1,_5fb);
- }});
- };
- MochiKit.Visual.dropOut=function(_603,_604){
- var d=MochiKit.DOM;
- var s=MochiKit.Style;
- _603=d.getElement(_603);
- var _607={top:s.getStyle(_603,"top"),left:s.getStyle(_603,"left"),opacity:_603.style.opacity||""};
- _604=MochiKit.Base.update({duration:0.5,beforeSetupInternal:function(_608){
- d.makePositioned(_608.effects[0].element);
- },afterFinishInternal:function(_609){
- s.hideElement(_609.effects[0].element);
- d.undoPositioned(_609.effects[0].element);
- s.setStyle(_609.effects[0].element,_607);
- }},_604||{});
- var v=MochiKit.Visual;
- return new v.Parallel([new v.Move(_603,{x:0,y:100,sync:true}),new v.Opacity(_603,{sync:true,to:0})],_604);
- };
- MochiKit.Visual.shake=function(_60b,_60c){
- var d=MochiKit.DOM;
- var v=MochiKit.Visual;
- var s=MochiKit.Style;
- _60b=d.getElement(_60b);
- _60c=MochiKit.Base.update({x:-20,y:0,duration:0.05,afterFinishInternal:function(_610){
- d.undoPositioned(_610.element);
- s.setStyle(_610.element,_611);
- }},_60c||{});
- var _611={top:s.getStyle(_60b,"top"),left:s.getStyle(_60b,"left")};
- return new v.Move(_60b,{x:20,y:0,duration:0.05,afterFinishInternal:function(_612){
- new v.Move(_612.element,{x:-40,y:0,duration:0.1,afterFinishInternal:function(_613){
- new v.Move(_613.element,{x:40,y:0,duration:0.1,afterFinishInternal:function(_614){
- new v.Move(_614.element,{x:-40,y:0,duration:0.1,afterFinishInternal:function(_615){
- new v.Move(_615.element,{x:40,y:0,duration:0.1,afterFinishInternal:function(_616){
- new v.Move(_616.element,_60c);
- }});
- }});
- }});
- }});
- }});
- };
- MochiKit.Visual.slideDown=function(_617,_618){
- var d=MochiKit.DOM;
- var b=MochiKit.Base;
- var s=MochiKit.Style;
- _617=d.getElement(_617);
- if(!_617.firstChild){
- throw "MochiKit.Visual.slideDown must be used on a element with a child";
- }
- d.removeEmptyTextNodes(_617);
- var _61c=s.getStyle(_617.firstChild,"bottom")||0;
- var _61d=s.getElementDimensions(_617);
- var _61e;
- _618=b.update({scaleContent:false,scaleX:false,scaleFrom:0,scaleMode:{originalHeight:_61d.h,originalWidth:_61d.w},restoreAfterFinish:true,afterSetupInternal:function(_61f){
- d.makePositioned(_61f.element);
- d.makePositioned(_61f.element.firstChild);
- if(/Opera/.test(navigator.userAgent)){
- s.setStyle(_61f.element,{top:""});
- }
- _61e=d.makeClipping(_61f.element);
- s.setStyle(_61f.element,{height:"0px"});
- s.showElement(_61f.element);
- },afterUpdateInternal:function(_620){
- s.setStyle(_620.element.firstChild,{bottom:(_620.dims[0]-_620.element.clientHeight)+"px"});
- },afterFinishInternal:function(_621){
- d.undoClipping(_621.element,_61e);
- if(/MSIE/.test(navigator.userAgent)){
- d.undoPositioned(_621.element);
- d.undoPositioned(_621.element.firstChild);
- }else{
- d.undoPositioned(_621.element.firstChild);
- d.undoPositioned(_621.element);
- }
- s.setStyle(_621.element.firstChild,{bottom:_61c});
- }},_618||{});
- return new MochiKit.Visual.Scale(_617,100,_618);
- };
- MochiKit.Visual.slideUp=function(_622,_623){
- var d=MochiKit.DOM;
- var b=MochiKit.Base;
- var s=MochiKit.Style;
- _622=d.getElement(_622);
- if(!_622.firstChild){
- throw "MochiKit.Visual.slideUp must be used on a element with a child";
- }
- d.removeEmptyTextNodes(_622);
- var _627=s.getStyle(_622.firstChild,"bottom");
- var _628;
- _623=b.update({scaleContent:false,scaleX:false,scaleMode:"box",scaleFrom:100,restoreAfterFinish:true,beforeStartInternal:function(_629){
- d.makePositioned(_629.element);
- d.makePositioned(_629.element.firstChild);
- if(/Opera/.test(navigator.userAgent)){
- s.setStyle(_629.element,{top:""});
- }
- _628=d.makeClipping(_629.element);
- s.showElement(_629.element);
- },afterUpdateInternal:function(_62a){
- s.setStyle(_62a.element.firstChild,{bottom:(_62a.dims[0]-_62a.element.clientHeight)+"px"});
- },afterFinishInternal:function(_62b){
- s.hideElement(_62b.element);
- d.undoClipping(_62b.element,_628);
- d.undoPositioned(_62b.element.firstChild);
- d.undoPositioned(_62b.element);
- s.setStyle(_62b.element.firstChild,{bottom:_627});
- }},_623||{});
- return new MochiKit.Visual.Scale(_622,0,_623);
- };
- MochiKit.Visual.squish=function(_62c,_62d){
- var d=MochiKit.DOM;
- var b=MochiKit.Base;
- var _630;
- _62d=b.update({restoreAfterFinish:true,beforeSetupInternal:function(_631){
- _630=d.makeClipping(_631.element);
- },afterFinishInternal:function(_632){
- MochiKit.Style.hideElement(_632.element);
- d.undoClipping(_632.element,_630);
- }},_62d||{});
- return new MochiKit.Visual.Scale(_62c,/Opera/.test(navigator.userAgent)?1:0,_62d);
- };
- MochiKit.Visual.grow=function(_633,_634){
- var d=MochiKit.DOM;
- var v=MochiKit.Visual;
- var s=MochiKit.Style;
- _633=d.getElement(_633);
- _634=MochiKit.Base.update({direction:"center",moveTransition:v.Transitions.sinoidal,scaleTransition:v.Transitions.sinoidal,opacityTransition:v.Transitions.full},_634||{});
- var _638={top:_633.style.top,left:_633.style.left,height:_633.style.height,width:_633.style.width,opacity:_633.style.opacity||""};
- var dims=s.getElementDimensions(_633);
- var _63a,_63b;
- var _63c,_63d;
- switch(_634.direction){
- case "top-left":
- _63a=_63b=_63c=_63d=0;
- break;
- case "top-right":
- _63a=dims.w;
- _63b=_63d=0;
- _63c=-dims.w;
- break;
- case "bottom-left":
- _63a=_63c=0;
- _63b=dims.h;
- _63d=-dims.h;
- break;
- case "bottom-right":
- _63a=dims.w;
- _63b=dims.h;
- _63c=-dims.w;
- _63d=-dims.h;
- break;
- case "center":
- _63a=dims.w/2;
- _63b=dims.h/2;
- _63c=-dims.w/2;
- _63d=-dims.h/2;
- break;
- }
- var _63e=MochiKit.Base.update({beforeSetupInternal:function(_63f){
- s.setStyle(_63f.effects[0].element,{height:"0px"});
- s.showElement(_63f.effects[0].element);
- },afterFinishInternal:function(_640){
- d.undoClipping(_640.effects[0].element);
- d.undoPositioned(_640.effects[0].element);
- s.setStyle(_640.effects[0].element,_638);
- }},_634||{});
- return new v.Move(_633,{x:_63a,y:_63b,duration:0.01,beforeSetupInternal:function(_641){
- s.hideElement(_641.element);
- d.makeClipping(_641.element);
- d.makePositioned(_641.element);
- },afterFinishInternal:function(_642){
- new v.Parallel([new v.Opacity(_642.element,{sync:true,to:1,from:0,transition:_634.opacityTransition}),new v.Move(_642.element,{x:_63c,y:_63d,sync:true,transition:_634.moveTransition}),new v.Scale(_642.element,100,{scaleMode:{originalHeight:dims.h,originalWidth:dims.w},sync:true,scaleFrom:/Opera/.test(navigator.userAgent)?1:0,transition:_634.scaleTransition,restoreAfterFinish:true})],_63e);
- }});
- };
- MochiKit.Visual.shrink=function(_643,_644){
- var d=MochiKit.DOM;
- var v=MochiKit.Visual;
- var s=MochiKit.Style;
- _643=d.getElement(_643);
- _644=MochiKit.Base.update({direction:"center",moveTransition:v.Transitions.sinoidal,scaleTransition:v.Transitions.sinoidal,opacityTransition:v.Transitions.none},_644||{});
- var _648={top:_643.style.top,left:_643.style.left,height:_643.style.height,width:_643.style.width,opacity:_643.style.opacity||""};
- var dims=s.getElementDimensions(_643);
- var _64a,_64b;
- switch(_644.direction){
- case "top-left":
- _64a=_64b=0;
- break;
- case "top-right":
- _64a=dims.w;
- _64b=0;
- break;
- case "bottom-left":
- _64a=0;
- _64b=dims.h;
- break;
- case "bottom-right":
- _64a=dims.w;
- _64b=dims.h;
- break;
- case "center":
- _64a=dims.w/2;
- _64b=dims.h/2;
- break;
- }
- var _64c;
- var _64d=MochiKit.Base.update({beforeStartInternal:function(_64e){
- _64c=d.makePositioned(_64e.effects[0].element);
- d.makeClipping(_64e.effects[0].element);
- },afterFinishInternal:function(_64f){
- s.hideElement(_64f.effects[0].element);
- d.undoClipping(_64f.effects[0].element,_64c);
- d.undoPositioned(_64f.effects[0].element);
- s.setStyle(_64f.effects[0].element,_648);
- }},_644||{});
- return new v.Parallel([new v.Opacity(_643,{sync:true,to:0,from:1,transition:_644.opacityTransition}),new v.Scale(_643,/Opera/.test(navigator.userAgent)?1:0,{sync:true,transition:_644.scaleTransition,restoreAfterFinish:true}),new v.Move(_643,{x:_64a,y:_64b,sync:true,transition:_644.moveTransition})],_64d);
- };
- MochiKit.Visual.pulsate=function(_650,_651){
- var d=MochiKit.DOM;
- var v=MochiKit.Visual;
- var b=MochiKit.Base;
- var _655=d.getElement(_650).style.opacity||"";
- _651=b.update({duration:3,from:0,afterFinishInternal:function(_656){
- MochiKit.Style.setStyle(_656.element,{opacity:_655});
- }},_651||{});
- var _657=_651.transition||v.Transitions.sinoidal;
- var _658=b.bind(function(pos){
- return _657(1-v.Transitions.pulse(pos));
- },_657);
- b.bind(_658,_657);
- return new v.Opacity(_650,b.update({transition:_658},_651));
- };
- MochiKit.Visual.fold=function(_65a,_65b){
- var d=MochiKit.DOM;
- var v=MochiKit.Visual;
- var s=MochiKit.Style;
- _65a=d.getElement(_65a);
- var _65f={top:_65a.style.top,left:_65a.style.left,width:_65a.style.width,height:_65a.style.height};
- var _660=d.makeClipping(_65a);
- _65b=MochiKit.Base.update({scaleContent:false,scaleX:false,afterFinishInternal:function(_661){
- new v.Scale(_65a,1,{scaleContent:false,scaleY:false,afterFinishInternal:function(_662){
- s.hideElement(_662.element);
- d.undoClipping(_662.element,_660);
- s.setStyle(_662.element,_65f);
- }});
- }},_65b||{});
- return new v.Scale(_65a,5,_65b);
- };
- MochiKit.Visual.Color=MochiKit.Color.Color;
- MochiKit.Visual.getElementsComputedStyle=MochiKit.DOM.computedStyle;
- MochiKit.Visual.__new__=function(){
- var m=MochiKit.Base;
- m.nameFunctions(this);
- this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
- };
- MochiKit.Visual.EXPORT=["roundElement","roundClass","tagifyText","multiple","toggle","Base","Parallel","Opacity","Move","Scale","Highlight","ScrollTo","fade","appear","puff","blindUp","blindDown","switchOff","dropOut","shake","slideDown","slideUp","squish","grow","shrink","pulsate","fold"];
- MochiKit.Visual.EXPORT_OK=["PAIRS"];
- MochiKit.Visual.__new__();
- MochiKit.Base._exportSymbols(this,MochiKit.Visual);
- if(typeof (MochiKit)=="undefined"){
- MochiKit={};
- }
- if(typeof (MochiKit.MochiKit)=="undefined"){
- MochiKit.MochiKit={};
- }
- MochiKit.MochiKit.NAME="MochiKit.MochiKit";
- MochiKit.MochiKit.VERSION="1.4";
- MochiKit.MochiKit.__repr__=function(){
- return "["+this.NAME+" "+this.VERSION+"]";
- };
- MochiKit.MochiKit.toString=function(){
- return this.__repr__();
- };
- MochiKit.MochiKit.SUBMODULES=["Base","Iter","Logging","DateTime","Format","Async","DOM","Style","LoggingPane","Color","Signal","Visual"];
- if(typeof (JSAN)!="undefined"||typeof (dojo)!="undefined"){
- if(typeof (dojo)!="undefined"){
- dojo.provide("MochiKit.MochiKit");
- dojo.require("MochiKit.*");
- }
- if(typeof (JSAN)!="undefined"){
- (function(lst){
- for(var i=0;i<lst.length;i++){
- JSAN.use("MochiKit."+lst[i],[]);
- }
- })(MochiKit.MochiKit.SUBMODULES);
- }
- (function(){
- var _666=MochiKit.Base.extend;
- var self=MochiKit.MochiKit;
- var _668=self.SUBMODULES;
- var _669=[];
- var _66a=[];
- var _66b={};
- var i,k,m,all;
- for(i=0;i<_668.length;i++){
- m=MochiKit[_668[i]];
- _666(_669,m.EXPORT);
- _666(_66a,m.EXPORT_OK);
- for(k in m.EXPORT_TAGS){
- _66b[k]=_666(_66b[k],m.EXPORT_TAGS[k]);
- }
- all=m.EXPORT_TAGS[":all"];
- if(!all){
- all=_666(null,m.EXPORT,m.EXPORT_OK);
- }
- var j;
- for(j=0;j<all.length;j++){
- k=all[j];
- self[k]=m[k];
- }
- }
- self.EXPORT=_669;
- self.EXPORT_OK=_66a;
- self.EXPORT_TAGS=_66b;
- }());
- }else{
- if(typeof (MochiKit.__compat__)=="undefined"){
- MochiKit.__compat__=true;
- }
- (function(){
- if(typeof (document)=="undefined"){
- return;
- }
- var _671=document.getElementsByTagName("script");
- var _672="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
- var base=null;
- var _674=null;
- var _675={};
- var i;
- for(i=0;i<_671.length;i++){
- var src=_671[i].getAttribute("src");
- if(!src){
- continue;
- }
- _675[src]=true;
- if(src.match(/MochiKit.js$/)){
- base=src.substring(0,src.lastIndexOf("MochiKit.js"));
- _674=_671[i];
- }
- }
- if(base===null){
- return;
- }
- var _678=MochiKit.MochiKit.SUBMODULES;
- for(var i=0;i<_678.length;i++){
- if(MochiKit[_678[i]]){
- continue;
- }
- var uri=base+_678[i]+".js";
- if(uri in _675){
- continue;
- }
- if(document.documentElement&&document.documentElement.namespaceURI==_672){
- var s=document.createElementNS(_672,"script");
- s.setAttribute("id","MochiKit_"+base+_678[i]);
- s.setAttribute("src",uri);
- s.setAttribute("type","application/x-javascript");
- _674.parentNode.appendChild(s);
- }else{
- document.write("<script src=\""+uri+"\" type=\"text/javascript\"></script>");
- }
- }
- })();
- }
|