package HTML::Dojo::common; 1; __DATA__ __CPAN_COMMON__ iframe_history.html

The Dojo Toolkit -- iframe_history.html

This file is used in Dojo's back/fwd button management.

__CPAN_COMMON__ flash6_gateway.swf CWS xVKsE}H[~E6VobK&!H5p ƫ%U#@U U9rDHV3ӯ.&W{0g9Y`y߆O%" {"@')ﻂ7 0%8QZɣrm@~½ ~.՞ 0R}y#_IA;isz K/{aÃBD=ԙ:l_;"(Dz")QR)NYCR#UVURʕJ\Q6B;{~9ʹIN T7Y1XMNN~ү{V8ΟcպVXd24lڭ1fby5Ǟa)]~v7[k pe=oZ8PYbK)f9hϙbfƨ(e-p5̛˦).cȨÕ|e넀_7M:!818V7$`'`= 8 c+@}TLwSWa9, lX6$5[UTlwuUZQ UmAHv5B.[~P3?@BrS:>6Wo1ⶐ7Mɢ%oVAy}2):キ#:0zu>:p pH3=`M "&Oc$Q %2q:$;4ƗQΆI}tl\&i@.c'GF'5rΑ9(Eݶ)@tO 9ىnFH;޺b/l_~>b*k_l?opuն݅iy'3@K1˱IB!M`GY/MQ H|qx)G7+ذ(|0@W|Pvf*h%FYV`k Zpߕ1OHWAU`A4m!.z.HO}@:`չSWY1|7=Qz _ZYR %ja)K} A 6S4!*M?mkDp &~by1Gl#0fGw=O@ߏ>Sݾww'^Sp n5- ?f-ɦ_T{CB#pb>a@h Ef^L q Hϻ`#.<{K:d s/}{}{WNö{Nܛ+j2d]=պ$gJo3>Ǐ30{[in[m:Qm~sG?dS5X 4v0TfrhOW,r v:[44 6e8㳤|pX[}riLl/e}+ {s399eΆ;su퇺ҽl̦gd#{+zɐ$CBZ .f1aSu}Fy U/93C9ĩmѢ0RPoǟhȱgQ vj0A=EyQ]NX̄ \ŀQR'9ghy6"$$rfJLq\&@ m =_L⯣e^Řΰ}Hiڙdy&%[!ct)yz^f$3 ޡzD ifX7S.#C$U1K5$]e^l )lsщR(_a)x$0L×ɡ\r]qh,ap݁vAfvbP:)Y.,6xŚ6*N)s|CJgUJψZ(-^RќWhɑH @袊TAcuC2W55_+]f[Fud!shٛ$ĝ9LG^h)we[ʶr{R`l1IhUU,4P:+3o7S1ke٫iAUCnW5YWnOu[Ǔ徭,@8ԲkH k3|ul-j";Q!m{=MJՋ FR gCV1Qk]lcW TI2# ?P0ӨI0 Y56JC汅>[<RZ {qg9cK9Ք9p֓ m'$%>W&G׊%Un#CAG35 $ "Hc6U&1mY1 er%\$·?Z 8!R}{=gDݑ/ 7ܣ|zPiwߍ)F&穢gC#5_N }I.Ԏ>ZD2T*[XgNLnq$ͣ0{^Ld^uo&~b;e+[iGr\K \p[edDNKKx*2\WCŬHg`DEaTӳHJRd#K"T,G1>Z RKҾJ0xŸ\o/΢ Q3"9r4xُ]@-9^X.3beTZK.Wr:˕L[3Ku{BfH@B $t1Ȝ4<)lF=:D ϳ>1?@ %駭;*GŞVy*;)_h<ـ`3}Yi$tQŜ'qs`Z¢$zY3Ly@` 2֓5>VRDzI6Ɠ9,y-Neo)9ʱ"D9HOP XD!5ObՅTjQP})Dh GAc>>ǸGvJv킏Ci>QC'H7Փ!jP=ETTOZCίCkxFwv3 2Lb/88l4W"u󬗈NJvVrd:@dN\pe:sءdYa#9K3uw%ZTY@,[R5Q( gBgLP4QI yXkYn}s fS19Z؈iUgT~ /TH?rnr!>x1OÞdze;,7+ TF_¿P}C+TJJIgMUZIu(Oz @tSJ\KtnHEH񜢞)ѳا@L| 6z%٣dt/YySb &<㷞ge†4{y0ċi/c4`3S,f{xXFG 47T>i'[KMo[o.v[;~\9;÷o߷~osn|?^h@~% .`&W Y HZ|XEat@Z zAG7mobB So Z;j m~7Ə"' 𛤳 xCBk>!^~ր7}Onҗ{;ޭ9wC#e61vǫނn}e7^ikroqnQs ݧp?4j92#Ϣ֧tsN8F{-OgƜIU)NʅS0J{}. D?Hg |5WVWXި~dr<V_u\k_AU,>ɡ=|T&5.A!xfy$5fGئyV][H@!Ŀ, AL+OOcݳ2T[>ڻp͟42z~a;\+uPEw<?kEq)&j4A?kx«p0(tj 'X:uiݑ_%vJ7QdXWEƺJvɱZE󭓛Ekғg=lf1 w~:ZL|p6Jm DH$J8=xnʈWZ/qQI,CutCJut«utMPG#ut٩X-iE So-YLs?*HMVv@޵oQo*8wVޛ@y3? WppEJ !b @$eǫ\2q>Ubgi6=}KQIk7>yymz^w|8+-w@REwo=0_dҼI:=XdqR겜LYM*s bɅi_iJ1xRxFL0Cv~5pv,^.]HtttmnsV+O*<:l}aDЬYlOUA9:ǩI:eFT f`̍Vۉ)}{{&3>K]r%VOG4U`WPE<ۤ*t%6, )ucs2a7-է(ɳ~Eێ9דw(l!|įIU~bXRZݞ:6Ԓ | R${ާ:44B PZp$/HYTpl4'~"隯s7 %? -\k٣=  +.9JpC^%rrR 7.X뺂qԭX/j pxrq:n|d!Ge*S]W$^MjK-(uM[=;sxIJja2v#vEĝV)7[O)=Y=ISZ;&RD|yM8˃#fYVp>"  ~5Ͽ}: $ M଼v-UЂA<ĐkA<&~Ȱ=!#y"#wAFtAK56^%1v 9搞29nsHϘCzV5Z|TvkXn8 W K)*@)CucnDof{IKۿ[Ugh<9vFU;E>K!ixm&PP%])IUe?럪 # [{eoUO4-t;)hcn\Jcƚ9p#Up?\i7_ 1fRF(81~EHXeF$,\օc]W톯hxg͆Mq$qX­N‡? \a-=q]Dl(rU7Blkt6ΆSٌ-b+\歎IxA]f}3}l7S / I$5o6ᵿYyB3r_:^D`bsK—MO7yN':OME9 cLY5?J~|;I"78 B.cMUs,"mR:?g?PPs O<`\Ȟ*9ɂOڮBMC_Z0=‘7pq'tˎ8ETȗP[E`  I?~Y}=B_Q_~ATUk*u:BB8?ʡOq83wpšg_qh?ϡ 9eK9=C8"V|prIfͲRfy,6S2ple|lE#,,OfyVۤBZ|\s-xV@bW"o`n7h/?/; 15/R?;ҸϰIz!i?/O;.ˢ]Tרש9*KX{~Z|&LeŸlqȟlqy?l_W)N65{-NDITW@m%q5DPPYBި0PJN$\RcZ7%E2HҿZk1@8P"p~zJ`'39`4`H1Hsv)P3D6%ӡ$SN &vÞ(^G"׊7І9z7G谈Qr1&_y%҂Q {nZ2Df'0PG Ђa!6iZp m 6Z_,ݯd"DAIx~p`PHA~lX)n |=,8Ҧs_; dS=sKuTX"kDj[\he)\m%A9EkfVrXZ oHsl[⻂"t{^e08A?$*5&^b'& ̓.zZyoM$p^ .UVsƝ'wj'KQU1ͬ!~4 EvvP3#1M02QFdP]@c({Lx\!ћἩ/6$fx[VMքH/,g{BNML]Vxݨt H` X ^dCL^wRS@2[ሾA\OJBYĂh3tQ$G_es)ϥç,֤*< Fqs* 59Ӌ8?*594B*4B%T+*4B^V*4BThV*4]zş' k2s!;.)w=V~un`MZ;vdgV PF]GZkESdR | ?%n>Jv#Rj77'DȦԢs~9b/$;ڰ7(G:A=G?OS|؄RIvޝn2H ;,ǿ"YpYqَILlYK6VN4dӲol,"fiÛ:t:ܗ[U6\oWK|.mbo .q4E/zPv_bC*\vЋF:841ƂFLz&-ϖL$D D ;) 9Yd,(G+x۽kOwΗF=DbP;8~e6wtͱJnb*&ؤȆfw!PK Qs͵Rsmک9`Q"v;Ψ~`YܪVQsͭIu,9=Qރ\{?.,,׫j-c_SV}K<5ˎW"*p 4!K3,ui 1{IQė^]@Ct!wڜ$$0HV:DOHWuYwFי&|dgZXDQfPoM7_u [)~]JOܝ *ڝFCA[+~omIzomI*[dr~Kv_hm< yt_?-·xH$9Eaŏ:x?^tU??FX8ci?.~'D;-ΤU#P,gl'@!Ήߠg`1F*]7վ[\c_!CHAiv}sh]KM/ƽ Dҽth` 22)͕\N.MSE,< p3f),GgYeh|i6B/nd CDlh.@Mm ؂A8؋(ub ݘXqP)'X8(Ks[*i!O0>)d;9 f=PZQ2UfA%;U)9WU:<;:AЭkzAC礧xsƌIeH%RR ŠII!iVK!I\ H\NڢZ)WߏG7*nC\ֆ0KclF)6KY]hӃBv8+ ? I&ʩ(5MtR`ku傁8DR~)˓'Ph4i0vQ[mq&qH Xu/J&ebX<Ѝ$ b#n|WJ ْ́$ O;Dhu?wΫ=ŊǢȽ,aɟ>rې]%1Qo]Ԡ@=p lonqT*ulkeVF_+O /oOXqU<^y ^-ݔxE˳5%ߞs_%pJ)>Crq?g!"yjvqZ\*Wd LyXU-aH%U2X) T' @l-Yt@A,tfׇ񖮅+\U0a~yDKMc;Oi&dAH`_CĞU̩kPvB*70« MƥrpVU.ǘ۳v, Tg!d\:YeU%KGGeUvdXAm)&f;NleGfYe̲.6:pbWu>|o7JG$b!XG߫Nku3,K0yknoCSsio>-1 i6,׎j˗N&z/EgwyA!k0N-RUˬ&!e$fYKĊ7HZsĘ(f98;oeNK#abUD,#Z gyr`.XAC3X^־~1o&wvΐFq&U49m?{wh;^@`E4x]~G*/ȹq GަpmH$=M-#ؕZq24T%Z nW5쏟esLRP hACB&8ܯccl@\el05$sˍwkā)ilP3zyסeHrySvbEhPԦ FGK!G$֙pt} A˗ hyX~GjՁtgAv{ayJ45D/lH|i4/&T[`è%i u$GqX/Nh KH ԥUN86xB5R8s7;En}uС5Fc 6c2< ᓄXipv􋚕C?4?4-IZ?)aЅV׮13D&ʇaS3"02!Us?}[8/N[{ Ux#;(u++S[VեƕI9 + )mۙ"9Ӭ"`ӋYxU]u ~Z"@ljú&AƬd8>9إrl#5AYBŞ @h Gןvϸm]~4G^\\/h6+ZUSlaNOS|%]}DR"G) 0AI}OUt>C,sPsvxG>0ENJXt7!!s])uͳH xsc"2/CN \|9p9qr1p-,MZOIE|@ G+;z,8E҆p_+OA@|> e忄VZ.-̗XF@Cgœ*K R@(pp#rcStXy|/\+̓\iP #ԉH: u:BSψ,_S\(g7BP`X-ŠϧfJ  jhxF^5sj\toBC}tS)LOA@K9 H,xqf8~TYL ѻىpfyAҚ))d, Rl+E% */Οbu~%tYM3A1 wNxׯeGG2r{ߔi޽:#֫z\"PsE F9eFi|tV"bǞW J+tAݔ`|ZXwnK-WUeJUeUeya/Z/-k^{+_S!VO[<=;b/:>OsJ*`A4]6VLJΒ0f0/C9f %Dgc8 %\B"9܂b/#q$Vr7E'1<tmi+\a#W,W}*Ġ\~f <"p9C~::BzNG!yyySN̷]=;+1pJ=FNR`hzbZz4,#5Je`f3SJ3h<7 F2j(<3Rם0G1[jn吴nG_-4WQW}ӤYux-GxoV/ 1mG+9*қԑntdty\Gzo9,"?D3~>\`nHK`hQ 8śjhnw%ѲKiFPQ>g[P)YHxFȾZ]n"̙E84|&*<&޽L)ƫE4wŭY3#B mؓEU iRʾ 8N\G =_)C7صn[c\hzbfF  - s? KZ`Bmxc "N߹< /jilXcfݪ9ǪF0Ki$`#-"s{\(ovJ'jxWUP% C1t|gej Ֆ{ʛhf*avս $Y7hYzz[^5)߈qeУ6zgۗzQgSÛ:Dz-}[Q~ mQVds$Q-lۥ}cY{j1l̸jĢk~ {@]n&z_BQ62kڣ^:*?%.daq mZX3o}yl^UJC=9xrD< pXDya#RB?p$_l?|-*dfe Ts*qCTc|m)%/$i .Gk76EQ2sAY^B!$r*S#Bw)f 7b0mQ~VQ!v3&oifdh-mmN6'i^B.[`\f[q) 㶀ڪf6iY#(P[Af -~:E]W xu)Ӷ9JXe$hn15ͽ0Wű܄ZS.dW~Z'~oi ݄oMqlYkۤd;oji=H1sm"6L.+6w`u;̷"0Nyf/&gK)M`݁Allڙu5#о|^oj8Og}zS`ݘpIj )@k N*Q==G1 +y!O-kW%+T;(YNj샃]T_L{Z`f֩QW>`%p*q$*BTFbL,\.+ׂ._{^^bDv[>eTH>wuVs>mP0ַҥ2 Og = x56|(e6bRyazC#>j!|Z59]z'`z[kL/XcZ!O&TqdO^ NF "2|MQ]Qٗȇ?Ǣ9E+2>"0Vp(jN19&K`uE/A>YКWDSf "؁HSe#A‡ hҠ$.Gr ] ]h`&.+|h,$oXE0[&c00[&L"fdLdLƹh[l|IGdLkdD ̄ɸ:[ N"ÄԑP5ʂ`DAI~"W%"0U% &j¼E¿Sw§0ËX.KZFpղG*H"SzyI 'z!4. k9z}<46~2'k߳Nfh$% ؇*~8u=c )v,g N'x2 -IK2rQu&ջiN#sܲ gs\)[˾[ |)-Ǿ|6QDyb@?z?ATqI{РqFW;Pe: :I cb`G*ԏb=>~ɛNa᝖;V$-Ji5wX+RiG^ri)i Û؜z=t˳%Fb OKX,ji\2Ĵq?š5|Uߊ"6W]^Hq(2 erD<ľJ^?`$CiE'E0}v;NnNTQǚyk˔Y.ʍ 1}%yX3uK}@Z~>4gTʙ9Lbi)*z1tzIB.SҘOهF#mJ-YL5&-ms1o?4xZV32^<3dȷl_Ftͣ= &" 5h,JԵXFhU\lɈ&܃; e{roWj9žvM=/SX]39&_X8J 4_EjDjR ccUKtWCmt^Xzov_ʲ:o7I1{fkm07ɬkqFwlWFu0I|('LiГyuZ]NXld;=:8tR\B 2+iauGQ̫63  K}@*g%)|j)KSC=P3tȖd JI0ml!XSUeΏjA5EɰVjJ7R: o*DZ_P -G(UfǥfbxL#krf]C@m!Zc8y \E}o=ɜ rZѼiHx@n85>&M;Et 爲Mn>6Bvdh<3eoQ|kz;,Y2в7%ۏ7SlM|f.oonbn9t1[Xi`& {/'Y ZǂBΟŧ/=1C<&V$o唚+.qA #HȆr%N/ͦysPܼn4 #"{+nZ# /ZkK*K\M Vy7mmϙEv<ƆVac>/I-i.&scDƸ̭ټf3xIxdyS\ueysDqFd lz|)F@٥)S=Sxx 2Yk{?x̹?o"/%FXϻYB?}H_*'9 y2!(7::Sz4W*34[LW07`0e-e Cldf/M ]d%kGX 2?hMӳ{:!kђu‰ SH~GZVOBk,b=}4&raȬTI||pC8LAPo,ߩp'zޟ?`nF;wţ;I*fo)/Ȉo_Mji4 9.Gl Hؽ J3'S0y|B*xutSߋmm[!%/<)$l%kœ 9q4vQ7uԶu>`ܑh bQMKUzd` Y9׼\i ~0B-k.K}boթ &c0Z{IoD=TbMDXBt} )ƬVHW W Wx 雕݊gƥihy D>tK߇} !60f}qs=QP݇(COTaF[mG.]|)#n1t6!5AHCX)ݜ@[{Wj,Ǖ#dFRR~. w; vV0Š>/uɝ8(3ix"TLH1 >FK[> \+ů_vsv8O+jYS{v> F: J9I?Y)#ky%I|(ҝH!"b9hϹϾOr]fG "`_sBl`!~kXJ\lⷿA?@e2UZ1 O~*UeTXĆYO-+]}|zM5q<Imu(:f<0hyg2#9ԳM~D?G-Ҟ1״~ʧ3YN NN X,x]g*_4M!GsyOݧ%. gP[DC[j՛BuHy ͱA>l%uvٻ]`R]5ZZ 7zȀQq`Zʼni1uUF& qKYhF<9ٳ0ⲩ<ΫB`Z.F5/Ezg#85=El:MuN" vBYaMxm9I6K؏^@{DVn빍nN#e_K62J%%=Yj麻X^z\'n ZףctXJ`5+A3^Vk o}聪9E5'uͤ l.ZK#^Z\\dMCW]Fϛ ?֥ ٛ `$pT`TIGiavp3>NT8fՄ,A }IP$*|LQ*xwb󧺡$vצ4 ; KEmlO3L oI} +Q&3;- zGRt$C PY1UޔwFf0hU}ʿ@V1ho0SC`N`xlEI4IN9 Xl5 DVCI-M/v@7. yͥ l("R "" 2Dnnj^g'R3`~=yw#}& zNN#Xx;^op>p@>qڕ.Wͪ/Y%Jh}H!ч܆0U"OVL*TfOD5ӌfB~.q « Kw߬cYkfֿ-~,Ѩ`RIo{7PX@܏!.? c!λ81Wt7 X5ZڠFךw:o濭ky'f==s7+bvfgW/%辏%!yI{qջCĘ^1G16 1Ӵu+Q9M[)W:1gG0f8Ӝv*DZ6eN.G;A8KvM3L)y[:/,8n[7į蹻щcyӹۮ[Qjeg "*dpDtZ/,Xn)]تu<)vY,$+q cē8ddZ@:k& M-]L(R )'꦳]A7EWtٟЅ{uyϹ}w} ;~eOKW&>qr}Ip go Α>o½ ow K<~`8Jv\?Dpw$^pCgnķ1Dl0CzĊx( GEa@7bnd*<؎ ƴbiC#£F/$ NFa&!8α}un˰^Ct7aM16Q|w=칉 or /vqXCWg6y,Q:wv:OCpr{0'QfOb*qlG;SM0p pﻘXK&:PQKESkFGڤ,d QbMwȩZV\jEQ+sTQ\jUQs 0Kbw] ,#AO.[yr%}m~6 t- }JuEů\=6C_򯷹Pzh_JyׄBt]R M\y!ɳQyq7 :Sr7q88o Ϋ;S0YbtBd|6$=emG{)iB*7nqOqn%8.OլL9W,ƖOkxEx4˅~ ӮJ="乢W+k R}!`^e+/2YfSBQ4ҫR:ӫ Y8Sz/D{@KN|PFpaĠ6a;R$FF2?K^Ou*ϥ¶':dk<3'e~}dU>V[t-ZCٲY>LbwOACh%zn8A;;)@a/tf7ހErVNuqp11@tf 8^xp,9{vPFG O%(@L #E-tr_yN!= 9F} C7Q-`鏂n⅁(@n;CB m(')~~A[|RrFnw>l{3aD|?;N> R]zÛQR7C-"h CmJ&gX&qEXд4IKV"X Ko.ܶoW2eN"Q4n0bq`ǡح"tLsͬoX '3_Z?rnsEP|!Y,4\,K"!B&d$=;M(JtAPK$ oZ6|em~vgyݴ 9[D/2N'd __CPAN_COMMON__ Storage_version8.swf CWS xڬn+8V8N$v1iv2BmɐhPJRvUvBhWbtS {IQ4Iz!{{P?@Mr<_wzs[w}`zn_ӫ&MnsA*u=mhznM, ,ݶ~g(zpu3w7= ip vޛUٺ 놱4Q ͠jަWo5L'zrޅm=БEaJf]ө@&vc{Xl6vu4%5|R0G;h*(91#7=O?=-Ro6Sh9Y,;s|/e >]5-֡xSXmTD>)5mx  ˰7a%$Zq &7m[rngá%l5,`s/m 2?)4_$h͸ mL)" U¬?L' LKMdIy *,U'1X)+oХN`~'1˜aL}t c0fb3ad> B §1rf ENb*5\)+ ?^AKCr aAoZ<84ڕ+[ [kj3 |) mdK&Ifsm̖ zD5}Kvbd[Ƹ4Zr֜v]&W _q{)hIR9O1p' -Y4-8q*Z(0j %vTT%ϕm(@gij/XS` 6Ll54 R.e(1'3@a0+aAck$zBX 4՞r-4f/FOsdCyi%.zB (/!.M^ty~^7K3QmL`DlL7> ~<;# `"|WJ"sˆJfWbc7ze,F ]_xNSr!c$ X& EGB/D0P ^l ]w-]vo}|}, POlC_ =%zvZ;5^{FP}i3z}dX}aB \{Id03rB) ǀ=)({.I#AX7^H@dzLi|쇒MRͧVc_REV"FؑcGƎD|(8h|xf8Z mZbeQ6b]B!ly=t\ o@^5. UҺXjOXJh" oDiܤ; \v3b{[A5b z W#Bg ;^1>m~(CVPk_HJ&y3ӂCpa}AG*slw['B4l泿{'ܼ[ ]QSËfq1[=q=Q!kv_v|b/_gEȯEv+Tߕx}{;q?$juxo۫S{i;#\Ai'56L].,VYmyVp =vP$#WmB^Ng}ە7,=kJj-XC:s; |͍7[:(f] z8Ѭc;WX]a S].&ՏuY`#)BʷWaujCePܝLa*h|Ty|` % Z /To>C=X0Ni8ZrÎ>t~!Қ*ũ( M)V팠MtB0^Ų;}b?#߼hؽHJw Ux[_I³,]*l]~%tҿ]\$oPp um-2M^,s%5Ӟ2_,%k\>^&wd4 x MzU U8$P OqJ KN7bE/s __CPAN_COMMON__ README The Dojo Toolkit ---------------- Dojo is a portable JavaScript toolkit for web application developers and JavaScript professionals. Dojo solves real-world problems by providing powerful abstractions and solid, tested implementations. Getting Started --------------- To use Dojo in your application, download one of the pre-built editions from the Dojo website, http://dojotoolkit.org. Once you have downloaded the file you will need to unzip the archive in your website root. At a minimum, you will need to extract: src/ (folder) dojo.js iframe_history.html To begin using dojo, include dojo in your pages by using: Depending on the edition that you have downloaded, this base dojo.js file may or may not include the modules you wish to use in your application. The files which have been "baked in" to the dojo.js that is part of your distribution are listed in the file build.txt that is part of the top-level directory that is created when you unpack the archive. To ensure modules you wish to use are available, use dojo.require() to request them. A very rich application might include: Note that only those modules which are *not* already "baked in" to dojo.js by the edition's build process are requested by dojo.require(). This helps make your application faster without forcing you to use a build tool while in development. See "Building Dojo" and "Working From Source" for more details. Compatibility ------------- In addition to it's suite of unit-tests for core system components, Dojo has been tested on almost every modern browser, including: - IE 5.5+ - Mozilla 1.5+, Firefox 1.0+ - Safari 1.3.9+ - Konqueror 3.4+ - Opera 8.5+ Note that some widgets and features may not perform exactly the same on every browser due to browser implementation differences. For those looking to use Dojo in non-browser environments, please see "Working From Source". Documentation and Getting Help ------------------------------ Articles outlining major Dojo systems are linked from: http://dojotoolkit.org/docs/ Toolkit APIs are listed in outline form at: http://dojotoolkit.org/docs/apis/ And documented in full at: http://manual.dojotoolkit.org/ The project also maintains a JotSpot Wiki at: http://dojo.jot.com/ A FAQ has been extracted from mailing list traffic: http://dojo.jot.com/FAQ And the main Dojo user mailing list is archived and made searchable at: http://news.gmane.org/gmane.comp.web.dojo.user/ You can sign up for this list, which is a great place to ask questions, at: http://dojotoolkit.org/mailman/listinfo/dojo-interest The Dojo developers also tend to hang out in IRC and help people with Dojo problems. You're most likely to find them at: irc.freenode.net #dojo Note that 3PM Wed PST in #dojo-meeting is reserved for a weekly meeting between project developers, although anyone is welcome to participate. Working From Source ------------------- The core of Dojo is a powerful package system that allows developers to optimize Dojo for deployment while using *exactly the same* application code in development. Therefore, working from source is almost exactly like working from a pre-built edition. Pre-built editions are significantly faster to load than working from source, but are not as flexible when in development. There are multiple ways to get the source. Nightly snapshots of the Dojo source repository are available at: http://archive.dojotoolkit.org/nightly.tgz Anonymous Subversion access is also available: %> svn co http://svn.dojotoolkit.org/dojo/trunk/ dojo Each of these sources will include some extra directories not included in the pre-packaged editions, including command-line tests and build tools for constructing your own packages. Running the command-line unit test suite requires Ant 1.6. If it is installed and in your path, you can run the tests using: %> cd buildscripts %> ant test The command-line test harness makes use of Rhino, a JavaScript interpreter written in Java. Once you have a copy of Dojo's source tree, you have a copy of Rhino. From the root directory, you can use Rhino interactively to load Dojo: %> java -jar buildscripts/lib/js.jar Rhino 1.5 release 3 2002 01 27 js> load("dojo.js"); js> print(dojo); [object Object] js> quit(); This environment is wonderful for testing raw JavaScript functionality in, or even for scripting your system. Since Rhino has full access to anything in Java's classpath, the sky is the limit! Building Dojo ------------- Dojo requires Ant 1.6.x in order to build correctly. While using Dojo from source does *NOT* require that you make a build, speeding up your application by constructing a custom profile build does. Once you have Ant and a source snapshot of Dojo, you can make your own profile build ("edition") which includes only those modules your application uses by customizing one of the files in: [dojo]/buildscripts/profiles/ These files are named *.profile.js and each one contains a list of modules to include in a build. If we created a new profile called "test.profile.js", we could then make a profile build using it by doing: %> cd buildscripts %> ant -Dprofile=test -Ddocless=true release intern-strings If the build is successful, your newly minted and compressed profile build will be placed in [dojo]/release/dojo/ ------------------------------------------------------------------------------- Copyright (c) 2004-2006, The Dojo Foundation, All Rights Reserved vim:ts=4:et:tw=80:shiftwidth=4: __CPAN_COMMON__ LICENSE Dojo is availble under *either* the terms of the modified BSD license *or* the Academic Free License version 2.1. As a recipient of Dojo, you may choose which license to receive this code under (except as noted in per-module LICENSE files). Some modules may not be the copyright of the Dojo Foundation. These modules contain explicit declarations of copyright in both the LICENSE files in the directories in which they reside and in the code itself. No external contributions are allowed under licenses which are fundamentally incompatible with the AFL or BSD licenses that Dojo is distributed under. The text of the AFL and BSD licenses is reproduced below. ------------------------------------------------------------------------------- The "New" BSD License: ********************** Copyright (c) 2005-2006, The Dojo Foundation All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the Dojo Foundation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------------------------------- The Academic Free License, v. 2.1: ********************************** This Academic Free License (the "License") applies to any original work of authorship (the "Original Work") whose owner (the "Licensor") has placed the following notice immediately following the copyright notice for the Original Work: Licensed under the Academic Free License version 2.1 1) Grant of Copyright License. Licensor hereby grants You a world-wide, royalty-free, non-exclusive, perpetual, sublicenseable license to do the following: a) to reproduce the Original Work in copies; b) to prepare derivative works ("Derivative Works") based upon the Original Work; c) to distribute copies of the Original Work and Derivative Works to the public; d) to perform the Original Work publicly; and e) to display the Original Work publicly. 2) Grant of Patent License. Licensor hereby grants You a world-wide, royalty-free, non-exclusive, perpetual, sublicenseable license, under patent claims owned or controlled by the Licensor that are embodied in the Original Work as furnished by the Licensor, to make, use, sell and offer for sale the Original Work and Derivative Works. 3) Grant of Source Code License. The term "Source Code" means the preferred form of the Original Work for making modifications to it and all available documentation describing how to modify the Original Work. Licensor hereby agrees to provide a machine-readable copy of the Source Code of the Original Work along with each copy of the Original Work that Licensor distributes. Licensor reserves the right to satisfy this obligation by placing a machine-readable copy of the Source Code in an information repository reasonably calculated to permit inexpensive and convenient access by You for as long as Licensor continues to distribute the Original Work, and by publishing the address of that information repository in a notice immediately following the copyright notice that applies to the Original Work. 4) Exclusions From License Grant. Neither the names of Licensor, nor the names of any contributors to the Original Work, nor any of their trademarks or service marks, may be used to endorse or promote products derived from this Original Work without express prior written permission of the Licensor. Nothing in this License shall be deemed to grant any rights to trademarks, copyrights, patents, trade secrets or any other intellectual property of Licensor except as expressly stated herein. No patent license is granted to make, use, sell or offer to sell embodiments of any patent claims other than the licensed claims defined in Section 2. No right is granted to the trademarks of Licensor even if such marks are included in the Original Work. Nothing in this License shall be interpreted to prohibit Licensor from licensing under different terms from this License any Original Work that Licensor otherwise would have a right to license. 5) This section intentionally omitted. 6) Attribution Rights. You must retain, in the Source Code of any Derivative Works that You create, all copyright, patent or trademark notices from the Source Code of the Original Work, as well as any notices of licensing and any descriptive text identified therein as an "Attribution Notice." You must cause the Source Code for any Derivative Works that You create to carry a prominent Attribution Notice reasonably calculated to inform recipients that You have modified the Original Work. 7) Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that the copyright in and to the Original Work and the patent rights granted herein by Licensor are owned by the Licensor or are sublicensed to You under the terms of this License with the permission of the contributor(s) of those copyrights and patent rights. Except as expressly stated in the immediately proceeding sentence, the Original Work is provided under this License on an "AS IS" BASIS and WITHOUT WARRANTY, either express or implied, including, without limitation, the warranties of NON-INFRINGEMENT, MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU. This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No license to Original Work is granted hereunder except under this disclaimer. 8) Limitation of Liability. Under no circumstances and under no legal theory, whether in tort (including negligence), contract, or otherwise, shall the Licensor be liable to any person for any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or the use of the Original Work including, without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses. This limitation of liability shall not apply to liability for death or personal injury resulting from Licensor's negligence to the extent applicable law prohibits such limitation. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so this exclusion and limitation may not apply to You. 9) Acceptance and Termination. If You distribute copies of the Original Work or a Derivative Work, You must make a reasonable effort under the circumstances to obtain the express assent of recipients to the terms of this License. Nothing else but this License (or another written agreement between Licensor and You) grants You permission to create Derivative Works based upon the Original Work or to exercise any of the rights granted in Section 1 herein, and any attempt to do so except under the terms of this License (or another written agreement between Licensor and You) is expressly prohibited by U.S. copyright law, the equivalent laws of other countries, and by international treaty. Therefore, by exercising any of the rights granted to You in Section 1 herein, You indicate Your acceptance of this License and all of its terms and conditions. 10) Termination for Patent Action. This License shall terminate automatically and You may no longer exercise any of the rights granted to You by this License as of the date You commence an action, including a cross-claim or counterclaim, against Licensor or any licensee alleging that the Original Work infringes a patent. This termination provision shall not apply for an action alleging patent infringement by combinations of the Original Work with other software or hardware. 11) Jurisdiction, Venue and Governing Law. Any action or suit relating to this License may be brought only in the courts of a jurisdiction wherein the Licensor resides or in which Licensor conducts its primary business, and under the laws of that jurisdiction excluding its conflict-of-law provisions. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any use of the Original Work outside the scope of this License or after its termination shall be subject to the requirements and penalties of the U.S. Copyright Act, 17 U.S.C. § 101 et seq., the equivalent laws of other countries, and international treaty. This section shall survive the termination of this License. 12) Attorneys Fees. In any action to enforce the terms of this License or seeking damages relating thereto, the prevailing party shall be entitled to recover its costs and expenses, including, without limitation, reasonable attorneys' fees and costs incurred in connection with such action, including any appeal of such action. This section shall survive the termination of this License. 13) Miscellaneous. This License represents the complete agreement concerning the subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. 14) Definition of "You" in This License. "You" throughout this License, whether in upper or lower case, means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License. For legal entities, "You" includes any entity that controls, is controlled by, or is under common control with you. For purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. 15) Right to Use. You may use the Original Work in all ways not otherwise restricted or conditioned by this License or by law, and Licensor promises not to interfere with or be responsible for such uses by You. This license is Copyright (C) 2003-2004 Lawrence E. Rosen. All rights reserved. Permission is hereby granted to copy and distribute this license without modification. This license may not be modified without the express written permission of its copyright owner.