From: =?Windows-1252?Q?Enregistr=E9_par_Windows_Internet_Explorer_8?= Subject: Site3-TGM table Date: Wed, 18 Nov 2009 18:07:28 +0100 MIME-Version: 1.0 Content-Type: multipart/related; type="text/html"; boundary="----=_NextPart_000_0000_01CA6879.FD267D10" X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6002.18005 This is a multi-part message in MIME format. ------=_NextPart_000_0000_01CA6879.FD267D10 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Location: http://epp.eurostat.ec.europa.eu/tgm/table.do?tab=table&init=1&plugin=1&language=fr&pcode=tps00001 =EF=BB=BF Site3-TGM table = ...Veuillez attendre

Eurostat=20

  • Tablea= u=20
  • M=C3=A9tadonn=C3=A9es
  • Informations<= /SPAN>=20
  • Sauvegarder=20
  • Imprimer
  • D=C3=A9monstration =

Population totale - Au 1er janvier

Ensemble des = habitants=20 d'une zone donn=C3=A9e au 1<sup>er</sup> janvier d'une = ann=C3=A9e donn=C3=A9e (ou,=20 ... Plus
=20 Codes
time geo 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009
Union europ=C3=A9enne (27 pays) 480920265 (b) 481617952 482767710 483797218 484613561 486617424 488756726 491023535 492975207 495305424 497663393 (p) 499723520 (p)
Union europ=C3=A9enne (25 pays) 450110972 (b) 450898986 452121349 453217293 454888983 456998809 459244201 461603958 463646244 466061015 468494528 (p) 470618353 (p)
Zone euro (BE, DE, IE, GR, ES, FR, IT, CY, LU, MT, NL, AT, PT, = SK, SI,=20 FI) : 311626496 312725496 314046498 315587827 317522551 319536129 321550032 323250660 325196554 327121928 328629982 (p)
Zone euro (BE, DE, IE, GR, ES, FR, IT, CY, LU, MT, NL, AT, PT, = SI, FI)=20 305571289 306233114 307326839 308667715 310208876 312143390 314156076 316165210 317861480 319802917 321720930 323217728 (p)
Belgique 10192264 10213752 10239085 10263414 10309725 10355844 10396421 10445852 10511382 10584534 10666866 10750000 (p)
Bulgarie 8283200 8230371 8190876 8149468 7891095 7845841 7801273 7761049 7718750 7679290 7640238 7606551
R=C3=A9publique tch=C3=A8que 10299125 10289621 10278098 10266546 10206436 10203269 10211455 10220577 10251079 10287189 10381130 10467542
Danemark 5294860 5313577 5330020 5349212 5368354 5383507 5397640 5411405 5427459 5447084 5475791 5511451
Allemagne (incluant l'ex-RDA =C3=A0 partir de 1991) 82057379 82037011 82163475 82259540 82440309 82536680 82531671 82500849 82437995 82314906 82217837 82002356 (p)
Estonie 1393074 1379237 1372071 1366959 1361242 1356045 1351069 1347510 1344684 1342409 1340935 1340415
Irlande 3693582 3732201 3777763 3832973 3899876 3963665 4027732 4109173 4209019 4312526 4401335 4450014 (p)
Gr=C3=A8ce 10808358 10861402 10903757 10931206 10968708 11006377 11040650 11082751 11125179 11171740 11213785 11260402 (p)
Espagne 39639388 39802827 40049708 40476723 40964244 41663702 42345342 43038035 43758250 44474631 45283259 45828172
France 59934884 60158533 60545022 60979315 61399344 61831779 62251817 62637596 62998773 63623209 63982881 64350759 (p)
Italie 56904379 56909109 56923524 56960692 56993742 57321070 57888245 58462375 58751711 59131287 59619290 60045068 (p)
Chypre 675215 682862 690497 697549 705539 715137 730367 749175 766414 778684 789269 796875 (p)
Lettonie 2420789 2399248 2381715 2364254 2345768 2331480 2319203 2306434 2294590 2281305 2270894 2261294
Lituanie 3562261 3536401 3512074 3486998 3475586 3462553 3445857 3425324 3403284 3384879 3366357 3349872
Luxembourg (Grand-Duch=C3=A9) 422050 427350 433600 439000 444050 448300 454960 461230 469086 476187 483799 493500
Hongrie 10279724 10253416 10221644 10200298 10174853 10142362 10116742 10097549 10076581 10066158 10045401 10030975 (p)
Malte 376513 378518 380201 391415 (bi) 394641 397296 399867 402668 405006 407810 410290 413609
Pays-Bas 15654192 15760225 15863950 15987075 16105285 16192572 16258032 16305526 16334210 16357992 16405399 16485787 (p)
Autriche 7971116 7982461 8002186 8020946 8065146 8102175 8140122 8206524 8265925 8282984 8318592 8355260
Pologne 38659979 38666983 38653559 38253955 38242197 38218531 38190608 38173835 38157055 38125479 38115641 38135876
Portugal 10109697 10148883 10195014 10256658 10329340 10407465 10474685 10529255 10569592 10599095 10617575 10627250 (p)
Roumanie 22526093 22488595 22455485 22430457 21833483 21772774 21711252 21658528 21610213 21565119 21528627 21498616
Slov=C3=A9nie 1984923 1978334 1987755 1990094 1994026 1995033 1996433 1997590 2003358 2010377 2010269 (b) 2032362
Slovaquie 5387650 5393382 5398657 5378783 5378951 5379161 5380053 5384822 5389180 5393637 5400998 5412254
Finlande 5147349 5159646 5171302 5181115 5194901 5206295 5219732 5236611 5255580 5276955 5300484 5326314
Su=C3=A8de 8847625 8854322 8861426 8882792 8909128 8940788 8975670 9011392 9047752 9113257 9182927 9256347
Royaume-Uni 58394596 58579685 58785246 58999781 59217592 59437723 59699828 60059900 60393100 60816701 61193524 (p) 61634599 (p)
Croatie 4536812 (s) 4527459 (s) 4497735 (s) 4438868 (s) 4444608 4442744 4441733 4443901 4442884 4441238 4436401 4435056
Ancienne R=C3=A9publique yougoslave de Mac=C3=A9doine 2002340 2012705 2021578 2031112 2038651 2023654 2029892 2035196 2038514 2041941 2045177 2048619 (p)
Turquie 64641675 65786563 66889425 67895581 68838069 69770026 70692009 71610009 72519974 69689256 (b) 70586256 71517100
Islande 272381 275712 279049 283361 286575 288471 290570 293577 299891 307672 315459 319368
Liechtenstein 31320 32015 32426 32863 33525 33863 34294 34600 34905 35168 35356 35589
Norv=C3=A8ge 4417599 4445329 4478497 4503436 4524066 4552252 4577457 4606363 4640219 4681134 4737171 4799252
Suisse 7096465 7123537 7164444 7204055 7255653 7313853 7364148 7415102 7459128 7508739 7593494 7701856 (p)
Association Europ=C3=A9enne de Libre Echange (AELE) (CH, IS, LI, = NO) 11817765 (b) 11876593 11954416 12023715 12099819 12188439 12266469 12349642 12434143 12532713 12681480 12856065 = (p)
:=3DNon disponible b=3DRupture = de s=C3=A9rie=20 p=3DValeur provisoire i=3DVoir texte = explicatif=20 s=3DEstimation Eurostat =
v1.2.1 (P)  Support on-line    Avis=20 juridique=20
------=_NextPart_000_0000_01CA6879.FD267D10 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://epp.eurostat.ec.europa.eu/tgm/web/stylesheets/tgm.css BODY { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } FORM { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } A { COLOR: #0099cc; TEXT-DECORATION: underline } #wrapper { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 100%; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } #header { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } #menu { BORDER-BOTTOM: #0099cc 17px solid; PADDING-BOTTOM: 0px; MARGIN: 0px; = PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; DISPLAY: block; = FLOAT: left; PADDING-TOP: 0px } #menu H1 { POSITION: absolute; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: = 0px; WIDTH: 55px; PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(../images/common/EurostatLogo.gif) no-repeat right top; HEIGHT: = 44px; TOP: 0px; RIGHT: 0px; PADDING-TOP: 0px } #menu H1 A { WIDTH: 55px; DISPLAY: block; HEIGHT: 44px } #menu H1 SPAN { VISIBILITY: hidden; FONT-SIZE: 1px } #tabs { PADDING-BOTTOM: 0px; MARGIN: 0px 0px -4px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FLOAT: left; PADDING-TOP: 0px } HTML > BODY #tabs { MARGIN: 0px } #tabs UL { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 1px 12px 0px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px } #tabs UL LI.selected { PADDING-BOTTOM: 0px; MARGIN: 0px 2px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; BACKGROUND: url(../images/common/tabsFrameL.gif) #09c no-repeat = left top; PADDING-TOP: 0px } #tabs UL LI.selected SPAN { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 6px; PADDING-RIGHT: = 6px; FONT: bold 11px Verdana, Tahoma, sans-serif; BACKGROUND: = url(../images/common/tabsFrameR.gif) no-repeat right top; COLOR: #09c; = TEXT-DECORATION: none; PADDING-TOP: 0px } #tabs UL LI.selected SPAN EM { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 12px; FONT: bold 11px/30px Verdana, Tahoma, sans-serif; BACKGROUND: = url(../images/common/tabArrowDown_Selected.gif) no-repeat right 50%; = FLOAT: left; COLOR: #fff; TEXT-DECORATION: none; PADDING-TOP: 0px } #tabs UL LI { PADDING-BOTTOM: 0px; BACKGROUND-COLOR: #fff; MARGIN: 0px 2px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FLOAT: left; PADDING-TOP: 0px } #tabs UL LI SPAN { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; BACKGROUND: url(../images/common/tabsFrameL.gif) no-repeat left = top; FLOAT: left; HEIGHT: 26px; PADDING-TOP: 0px } #tabs UL LI SPAN A { PADDING-BOTTOM: 8px; MARGIN: 0px; PADDING-LEFT: 6px; PADDING-RIGHT: = 6px; FONT: bold 11px Verdana, Tahoma, sans-serif; BACKGROUND: = url(../images/common/tabsFrameR.gif) no-repeat right top; FLOAT: left; = COLOR: #09c; TEXT-DECORATION: none; PADDING-TOP: 9px } #tabs UL LI SPAN A:hover { COLOR: #ff8c00; TEXT-DECORATION: none } #tabs UL LI SPAN A EM { PADDING-BOTTOM: 0px; FONT-STYLE: normal; PADDING-LEFT: 0px; = PADDING-RIGHT: 12px; BACKGROUND: url(../images/common/tabArrowDown.gif) = no-repeat right 50%; PADDING-TOP: 0px } #tabs UL LI.selected SPAN A EM { PADDING-BOTTOM: 0px; FONT-STYLE: normal; PADDING-LEFT: 0px; = PADDING-RIGHT: 12px; BACKGROUND: = url(../images/common/tabArrowDown_Selected.gif) no-repeat right 50%; = PADDING-TOP: 0px } #buttons { PADDING-BOTTOM: 0px; MARGIN: 0px 56px 0px 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; PADDING-TOP: 5px } #buttons UL { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: = 0px; PADDING-RIGHT: 0px; FLOAT: right; PADDING-TOP: 0px } #buttons UL LI { PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 6px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FLOAT: left; PADDING-TOP: 0px } #buttons UL LI.table { BACKGROUND: url(../images/common/table_select.gif) no-repeat left top } #buttons UL LI.graph { BACKGROUND: url(../images/common/graph_select.gif) no-repeat left top } #buttons UL LI.map { BACKGROUND: url(../images/common/map_select.gif) no-repeat left top } #buttons UL LI.page { BACKGROUND: url(../images/common/page_select.gif) no-repeat left top } #buttons UL LI.info { BACKGROUND: url(../images/common/info_select.gif) no-repeat left top } #buttons UL LI.save { BACKGROUND: url(../images/common/save_select.gif) no-repeat left top } #buttons UL LI.print { BACKGROUND: url(../images/common/print_select.gif) no-repeat left top } #buttons UL LI.demoTour { WIDTH: 34px; BACKGROUND: url(../images/common/demoTour.gif) no-repeat = left top } #buttons UL LI.print2 { DISPLAY: none } #buttons UL LI.folder { BACKGROUND: url(../images/common/folder_select.gif) no-repeat left top } #buttons UL LI.table A { BACKGROUND: url(../images/common/table.gif) no-repeat left top } #buttons UL LI.graph A { BACKGROUND: url(../images/common/graph.gif) no-repeat left top } #buttons UL LI.map A { BACKGROUND: url(../images/common/map.gif) no-repeat left top } #buttons UL LI.page A { BACKGROUND: url(../images/common/page.gif) no-repeat left top } #buttons UL LI.page_unavailable { BACKGROUND: url(../images/common/page_select.gif) no-repeat left top } #buttons UL LI.info_unavailable { BACKGROUND: url(../images/common/info_select.gif) no-repeat left top } #buttons UL LI.info A { BACKGROUND: url(../images/common/info.gif) no-repeat left top } #buttons UL LI.save A { BACKGROUND: url(../images/common/save.gif) no-repeat left top } #buttons UL LI.print A { BACKGROUND: url(../images/common/print.gif) no-repeat left top } #buttons UL LI.demoTour A { WIDTH: 34px; BACKGROUND: url(../images/common/demoTour.gif) no-repeat = left top } #buttons UL LI.folder A { BACKGROUND: url(../images/common/folder.gif) no-repeat left top } .graphDisabled { BACKGROUND: url(../images/common/graph_select.gif) no-repeat left top } .mapDisabled { BACKGROUND: url(../images/common/map_select.gif) no-repeat left top } #buttons UL LI A { WIDTH: 20px; DISPLAY: block; HEIGHT: 20px } #buttons UL LI { WIDTH: 20px; DISPLAY: block; HEIGHT: 20px } #buttons UL LI A SPAN { LINE-HEIGHT: 1px; VISIBILITY: hidden; FONT-SIZE: 0px } #buttons UL LI SPAN { LINE-HEIGHT: 1px; VISIBILITY: hidden; FONT-SIZE: 0px } #title { BORDER-BOTTOM: #000 1px solid; PADDING-BOTTOM: 4px; MARGIN: 0px 12px = 15px 5px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; DISPLAY: block; FONT: = 11px Arial, Verdana, sans-serif; COLOR: #333333; CLEAR: both; = PADDING-TOP: 10px } #title H2 { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FONT: bold 16px Arial, Verdana, sans-serif; COLOR: #333333; = PADDING-TOP: 0px } #title H2 A { COLOR: #0099cc; TEXT-DECORATION: underline } #title A { COLOR: #0099cc; TEXT-DECORATION: underline } #title H3 { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FONT: bold 12px Arial, Verdana, sans-serif; COLOR: #333333; = PADDING-TOP: 0px } #printGraph TABLE.printData { BACKGROUND-COLOR: #f8f5e9; FONT: 11px Arial, Arial, sans-serif } #printMap TABLE.printData { BACKGROUND-COLOR: #f8f5e9; FONT: 11px Arial, Arial, sans-serif } #table TABLE.printData { BACKGROUND-COLOR: #f8f5e9; FONT: 11px Arial, Arial, sans-serif } #printMap #infoContent { BORDER-BOTTOM: #444 1px solid; BORDER-LEFT: #444 1px solid; = PADDING-BOTTOM: 4px; MARGIN: 0px; PADDING-LEFT: 4px; PADDING-RIGHT: 4px; = BORDER-TOP: #444 1px solid; BORDER-RIGHT: #444 1px solid; PADDING-TOP: = 4px } #printGraph #infoContent { BORDER-BOTTOM: #444 1px solid; BORDER-LEFT: #444 1px solid; = PADDING-BOTTOM: 4px; MARGIN: 0px; PADDING-LEFT: 4px; PADDING-RIGHT: 4px; = BORDER-TOP: #444 1px solid; BORDER-RIGHT: #444 1px solid; PADDING-TOP: = 4px } SPAN.labeled { FONT-WEIGHT: bold } TABLE.printData TR TD A { COLOR: #0099cc; TEXT-DECORATION: underline } TABLE.printData TR { BACKGROUND-COLOR: #f8f5e9 } #title H2 A:hover { COLOR: #ff8c00; TEXT-DECORATION: none } #main { PADDING-BOTTOM: 0px; MARGIN: -8px 5px 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; HEIGHT: auto !important; PADDING-TOP: 0px } #map { Z-INDEX: 0; POSITION: relative; PADDING-BOTTOM: 0px; MARGIN: 0px 0px = 2px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FLOAT: left; PADDING-TOP: = 0px } #map #SVGimport { Z-INDEX: 80; BORDER-BOTTOM: #000 1px solid; TEXT-ALIGN: center; = BORDER-LEFT: #000 1px solid; PADDING-BOTTOM: 0px; MARGIN: 14px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; DISPLAY: block; BORDER-TOP: #000 = 1px solid; BORDER-RIGHT: #000 1px solid; PADDING-TOP: 0px } HTML > BODY #map #SVGimport { FLOAT: left } #desc { Z-INDEX: 280; POSITION: absolute; PADDING-BOTTOM: 1px; MARGIN: 0px; = PADDING-LEFT: 1px; WIDTH: 140px; PADDING-RIGHT: 1px; DISPLAY: block; = FONT: 10px Verdana, Tahoma, sans-serif; HEIGHT: 14px; TOP: -8px; = PADDING-TOP: 1px; LEFT: 260px } #map #SVGimport IMG { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } #graph { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } #graph #SVGimport { BORDER-BOTTOM: #818181 1px solid; BORDER-LEFT: #818181 1px solid; = PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 430px; = PADDING-RIGHT: 0px; DISPLAY: block; HEIGHT: 384px; OVERFLOW: auto; = BORDER-TOP: #818181 1px solid; BORDER-RIGHT: #818181 1px solid; = PADDING-TOP: 0px } #graph #SVGimport IMG { PADDING-BOTTOM: 0px; BORDER-RIGHT-WIDTH: 0px; MARGIN: 0px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BORDER-TOP-WIDTH: 0px; = BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; PADDING-TOP: 0px } #map #navMapElements { POSITION: relative; WIDTH: 100%; DISPLAY: block; HEIGHT: 100% } #map #navMapElements SPAN { Z-INDEX: 40; POSITION: absolute; BACKGROUND-COLOR: transparent; WIDTH: = 20px; DISPLAY: block; BACKGROUND-REPEAT: no-repeat; BACKGROUND-POSITION: = left top; HEIGHT: 20px } #map #navMapElements SPAN A { WIDTH: 20px; DISPLAY: block; HEIGHT: 20px } #map #navMapElements SPAN A EM { VISIBILITY: hidden; FONT-SIZE: 0px } #map #navMapElements SPAN.NW { BACKGROUND-IMAGE: url(../images/map/NWarrow.gif); TOP: 0px; LEFT: 0px } #map #navMapElements SPAN.N { BACKGROUND-IMAGE: url(../images/map/Narrow.gif); BACKGROUND-POSITION: = right top; MARGIN-LEFT: -10px; TOP: 0px; LEFT: 50% } #map #navMapElements SPAN.NE { BACKGROUND-IMAGE: url(../images/map/NEarrow.gif); MARGIN-LEFT: -20px; = TOP: 0px; LEFT: 100% } #map #navMapElements SPAN.E { BACKGROUND-IMAGE: url(../images/map/Earrow.gif); MARGIN-TOP: -20px; = BACKGROUND-POSITION: right top; MARGIN-LEFT: -20px; TOP: 50%; LEFT: 100% } #map #navMapElements SPAN.SE { BACKGROUND-IMAGE: url(../images/map/SEarrow.gif); MARGIN-TOP: -20px; = MARGIN-LEFT: -20px; TOP: 100%; LEFT: 100% } #map #navMapElements SPAN.S { BACKGROUND-IMAGE: url(../images/map/Sarrow.gif); MARGIN-TOP: -20px; = BACKGROUND-POSITION: left bottom; MARGIN-LEFT: -10px; TOP: 100%; LEFT: = 50% } #map #navMapElements SPAN.SW { BACKGROUND-IMAGE: url(../images/map/SWarrow.gif); MARGIN-TOP: -20px; = TOP: 100%; LEFT: 0px } #map #navMapElements SPAN.W { BACKGROUND-IMAGE: url(../images/map/Warrow.gif); MARGIN-TOP: -10px; = TOP: 50%; LEFT: 0px } #mapTools { BORDER-BOTTOM: #818181 1px solid; BORDER-LEFT: #818181 1px solid; = PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #f8f5e9; MARGIN: 30px 7px 10px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; DISPLAY: block; FONT: 11px Arial, = Verdana, sans-Serif; CLEAR: left; BORDER-TOP: #818181 1px solid; = BORDER-RIGHT: #818181 1px solid; PADDING-TOP: 0px } .mapToolsDyn { HEIGHT: 51px } #mapTools P { PADDING-BOTTOM: 0px; MARGIN: -10px 0px 0px 80px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: 11px Arial, Verdana, sans-Serif; PADDING-TOP: = 0px } #mapTools SPAN { TEXT-ALIGN: center; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: = 0px; PADDING-RIGHT: 0px; DISPLAY: block; FONT: bold 11px Arial, Verdana, = sans-Serif; COLOR: #ff0000; PADDING-TOP: 20px } #mapButtons { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } #mapButtons UL { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: = 0px; PADDING-RIGHT: 0px; PADDING-TOP: 20px } #mapButtons UL LI { PADDING-BOTTOM: 0px; BORDER-RIGHT-WIDTH: 0px; MARGIN: 0px 4px; = PADDING-LEFT: 0px; WIDTH: 16px; PADDING-RIGHT: 0px; DISPLAY: block; = FLOAT: left; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; HEIGHT: = 16px; BORDER-LEFT-WIDTH: 0px; PADDING-TOP: 0px } #mapButtons UL LI.Wzoom { BACKGROUND: url(../images/map/WorldZoom.gif) #ff8c00 no-repeat left top } #mapButtons UL LI.ZoomIn { BACKGROUND: url(../images/map/ZoomIn.gif) #ff8c00 no-repeat left top } #mapButtons UL LI.ZoomOut { BACKGROUND: url(../images/map/ZoomOut.gif) #ff8c00 no-repeat left top } #mapButtons UL LI A { WIDTH: 16px; DISPLAY: block; HEIGHT: 16px } #mapButtons UL LI A EM { VISIBILITY: hidden; FONT-SIZE: 0px } #Options { PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 70px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: 11px Arial, Verdana, sans-Serif; PADDING-TOP: = 0px } #Options UL { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: = 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px } #Options UL LI { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FLOAT: left; PADDING-TOP: 0px } #Options UL LI LABEL { PADDING-BOTTOM: 0px; LINE-HEIGHT: 20px; MARGIN: 0px 3px; PADDING-LEFT: = 0px; PADDING-RIGHT: 0px; FLOAT: left; VERTICAL-ALIGN: middle; = PADDING-TOP: 0px } #Options UL LI LABEL INPUT { MARGIN: 5px 0px 0px } #leftColumn { PADDING-BOTTOM: 0px; MARGIN: 0px 5px 0px 0px; PADDING-LEFT: 0px; WIDTH: = 420px; PADDING-RIGHT: 0px; FLOAT: left; PADDING-TOP: 0px } #rightColumn { BORDER-BOTTOM: #818181 1px solid; TEXT-ALIGN: right; BORDER-LEFT: = #818181 1px solid; PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #f8f5e9; = MARGIN: 0px; PADDING-LEFT: 5px; WIDTH: 250px; PADDING-RIGHT: 5px; FLOAT: = left; BORDER-TOP: #818181 1px solid; BORDER-RIGHT: #818181 1px solid; = PADDING-TOP: 5px } SPAN.close { PADDING-BOTTOM: 4px; MARGIN: 0px 2px 0px 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 12px; BACKGROUND: url(../images/common/closeButt.gif) = no-repeat right 50%; PADDING-TOP: 0px } SPAN.open { PADDING-BOTTOM: 4px; MARGIN: 0px 2px 0px 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 12px; BACKGROUND: url(../images/common/openButt.gif) = no-repeat right 50%; PADDING-TOP: 0px } SPAN.close A { FONT: 10px Arial, Verdana, sans-Serif; COLOR: #085e7a; TEXT-DECORATION: = none } SPAN.open A { FONT: 10px Arial, Verdana, sans-Serif; COLOR: #085e7a; TEXT-DECORATION: = none } TABLE.infoTabs { Z-INDEX: 80; POSITION: relative; PADDING-BOTTOM: 0px; MARGIN: 0px; = PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; DISPLAY: block; = PADDING-TOP: 0px } #infoTabs { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } #infoTabs UL { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: = 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px } #infoTabs UL LI { PADDING-BOTTOM: 0px; MARGIN: 1px 1px -1px 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; WHITE-SPACE: nowrap; BACKGROUND: = url(../images/common/bgInfoTabs.gif) #c9e6fd repeat-x left bottom; = FLOAT: left; PADDING-TOP: 0px } #infoTabs UL LI.selected { BACKGROUND-IMAGE: none; BORDER-BOTTOM: #fff 1px solid; PADDING-BOTTOM: = 0px; BACKGROUND-COLOR: #fff; MARGIN: 0px 1px -1px 0px; PADDING-LEFT: = 0px; PADDING-RIGHT: 0px; FLOAT: left; PADDING-TOP: 0px } #infoTabs UL LI.selected EM { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FONT: 9px Arial, Verdana, sans-Serif; BACKGROUND: = url(../images/common/infoTabsL.gif) no-repeat left bottom; FLOAT: left; = COLOR: #353b3c; CURSOR: hand; TEXT-DECORATION: none; PADDING-TOP: 0px } #infoTabs UL LI.selected EM SPAN { PADDING-BOTTOM: 3px; MARGIN: 0px; PADDING-LEFT: 6px; PADDING-RIGHT: = 6px; BACKGROUND: url(../images/common/infoTabsR.gif) no-repeat right = bottom; FLOAT: left; PADDING-TOP: 7px } #infoTabs UL LI A { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FONT: 9px Arial, Verdana, sans-Serif; BACKGROUND: = url(../images/common/infoTabsL.gif) no-repeat left bottom; FLOAT: left; = COLOR: #353b3c; CURSOR: hand; TEXT-DECORATION: none; PADDING-TOP: 0px } #infoTabs UL LI A SPAN { PADDING-BOTTOM: 3px; MARGIN: 0px; PADDING-LEFT: 6px; PADDING-RIGHT: = 6px; BACKGROUND: url(../images/common/infoTabsR.gif) no-repeat right = bottom; FLOAT: left; PADDING-TOP: 7px } #rightColumn #infoContent { Z-INDEX: 30; BORDER-BOTTOM: #818181 1px solid; POSITION: relative; = TEXT-ALIGN: left; BORDER-LEFT: #818181 1px solid; PADDING-BOTTOM: 8px; = BACKGROUND-COLOR: #fff; MARGIN: 0px; MIN-HEIGHT: 335px; PADDING-LEFT: = 8px; PADDING-RIGHT: 8px; HEIGHT: auto !important; BORDER-TOP: #818181 = 1px solid; BORDER-RIGHT: #818181 1px solid; PADDING-TOP: 8px } HTML > BODY #infoContent { =09 } #rightColumn #printGraph #infoContent { BORDER-BOTTOM: #818181 1px solid; TEXT-ALIGN: left; BORDER-LEFT: = #818181 1px solid; PADDING-BOTTOM: 8px; BACKGROUND-COLOR: #fff; MARGIN: = 0px; PADDING-LEFT: 8px; PADDING-RIGHT: 8px; BORDER-TOP: #818181 1px = solid; BORDER-RIGHT: #818181 1px solid; PADDING-TOP: 8px } #infoContent TABLE { FONT: 11px Arial, Verdana, sans-Serif } #infoContent TABLE.data CAPTION { TEXT-ALIGN: left; PADDING-BOTTOM: 12px; MARGIN: 0px; PADDING-LEFT: 0px; = WIDTH: 100%; PADDING-RIGHT: 0px; FONT: bold 14px Arial, Verdana, = sans-Serif; COLOR: #4a8b9f; PADDING-TOP: 0px } #infoContent TABLE.data CAPTION SPAN { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 20px; PADDING-RIGHT: = 0px; FONT: 14px Arial, Verdana, sans-Serif; BACKGROUND: = url(../images/map/data_icon1.gif) no-repeat left 50%; COLOR: #4a8b9f; = PADDING-TOP: 0px } #infoContent TABLE.data TR TH { TEXT-ALIGN: center; PADDING-BOTTOM: 12px; MARGIN: 0px; PADDING-LEFT: = 3px; PADDING-RIGHT: 3px; PADDING-TOP: 3px } #infoContent TABLE.data TR TD { BORDER-BOTTOM: #cdcdcd 1px solid; PADDING-BOTTOM: 3px; MARGIN: 0px; = PADDING-LEFT: 4px; PADDING-RIGHT: 2px; PADDING-TOP: 3px } #infoContent TABLE.data TR TD.notLegend { PADDING-BOTTOM: 3px; MARGIN: 0px; PADDING-LEFT: 4px; PADDING-RIGHT: = 2px; BORDER-BOTTOM-WIDTH: 0px; PADDING-TOP: 3px } #infoContent TABLE.data TR TD.notLegend SPAN { MARGIN: 0px 1px; FONT-WEIGHT: bold } #infoContent TABLE.data TR TD.last { BORDER-BOTTOM-STYLE: none } TD SPAN.ico { BORDER-BOTTOM: #000 1px solid; BORDER-LEFT: #000 1px solid; WIDTH: = 72px; DISPLAY: block; HEIGHT: 17px; BORDER-TOP: #000 1px solid; = BORDER-RIGHT: #000 1px solid } TD SPAN.Graph_ico { BORDER-RIGHT-WIDTH: 0px; WIDTH: 16px; DISPLAY: block; BORDER-TOP-WIDTH: = 0px; BORDER-BOTTOM-WIDTH: 0px; HEIGHT: 16px; BORDER-LEFT-WIDTH: 0px } .n1 { BACKGROUND: #fff290 } .n2 { BACKGROUND: #ffe100 } .n3 { BACKGROUND: #b3d733 } .n4 { BACKGROUND: #66cc66 } .n5 { BACKGROUND: #329966 } .n6 { BACKGROUND: url(../images/common/data_icon2.gif) #fff290 no-repeat left = top } #infoContent UL.info { BORDER-BOTTOM-STYLE: none; PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; = MARGIN: 6px 0px 0px 5px; PADDING-LEFT: 0px; WIDTH: 99%; PADDING-RIGHT: = 0px; FONT: 11px Arial, Verdana, sans-Serif; PADDING-TOP: 0px } #infoContent UL.info LI.sep { BORDER-BOTTOM: #444 1px solid; PADDING-BOTTOM: 4px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } HTML > BODY #infoContent UL.info { MARGIN: 20px 0px 0px 5px } #infoContent UL.info LI { PADDING-BOTTOM: 1px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 1px } HTML > BODY #infoContent UL.info LI { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } #infoContent SPAN.numClass { PADDING-BOTTOM: 0px; MARGIN: 2px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; DISPLAY: block; FONT: 11px Arial, Verdana, sans-Serif; PADDING-TOP: = 0px } #infoContent SPAN.numClass LABEL { FONT: 11px Arial, Verdana, sans-Serif } #infoContent SPAN.numClass SELECT { FONT: 11px Arial, Verdana, sans-Serif } UL.ColorGroups { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: = 0px; WIDTH: 100%; PADDING-RIGHT: 0px; DISPLAY: block; PADDING-TOP: 0px } UL.ColorGroups LI { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FLOAT: left; PADDING-TOP: 0px } UL.ColorGroups LI LABEL { FLOAT: left } UL.ColorGroups LI INPUT { FONT: 11px Arial, Verdana, sans-Serif; FLOAT: left } UL.ColorGroups LI SPAN { BORDER-BOTTOM: #444 1px solid; BORDER-LEFT: #444 1px solid; = PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 16px; = PADDING-RIGHT: 0px; DISPLAY: block; FLOAT: left; HEIGHT: 16px; = BORDER-TOP: #444 1px solid; BORDER-RIGHT: #444 1px solid; PADDING-TOP: = 0px } UL.ColorGroups LI SPAN EM.g1 { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 16px; = PADDING-RIGHT: 0px; DISPLAY: block; FLOAT: left; HEIGHT: 8px; FONT-SIZE: = 0px; PADDING-TOP: 0px } UL.ColorGroups LI SPAN EM.g2 { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 16px; = PADDING-RIGHT: 0px; DISPLAY: block; FLOAT: left; HEIGHT: 8px; FONT-SIZE: = 0px; PADDING-TOP: 0px } UL.ColorGroups LI SPAN EM.hidden { LINE-HEIGHT: 0px; WIDTH: 0px; DISPLAY: block; FLOAT: left; HEIGHT: 0px; = VISIBILITY: hidden; FONT-SIZE: 0px } #infoContent H4 { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 100%; = PADDING-RIGHT: 0px; DISPLAY: block; FONT: bold 11px Arial, Verdana, = sans-Serif; FLOAT: left; PADDING-TOP: 0px } UL.methods { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: = 0px; WIDTH: 110px; PADDING-RIGHT: 0px; DISPLAY: block; FONT: 11px Arial, = Verdana, sans-Serif; FLOAT: left; PADDING-TOP: 0px } UL.methods LI { PADDING-BOTTOM: 0px; MARGIN: 1px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FONT: 11px Arial, Verdana, sans-Serif; PADDING-TOP: 0px } UL.methods LI.last { BACKGROUND-COLOR: #f8f5e9; DISPLAY: block } DIV.manualinput { TEXT-ALIGN: left; PADDING-BOTTOM: 4px; BACKGROUND-COLOR: #f8f5e9; = PADDING-LEFT: 4px; PADDING-RIGHT: 4px; FONT: 11px Arial, Verdana, = sans-Serif; FLOAT: left; PADDING-TOP: 4px } DL.min_max { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } DL.min_max DT { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FLOAT: left; FONT-WEIGHT: bold; PADDING-TOP: 0px } DL.min_max DD { PADDING-BOTTOM: 5px; MARGIN: 0px 0px 0px 5px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } DL.inputFields { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FLOAT: left; PADDING-TOP: 0px } DL.inputFields DT { MARGIN: 2px 0px; FLOAT: left; FONT-WEIGHT: normal } DL.inputFields DD INPUT { BORDER-BOTTOM: #555 1px solid; BORDER-LEFT: #555 1px solid; = PADDING-BOTTOM: 0px; MARGIN: 2px 0px; PADDING-LEFT: 2px; WIDTH: 40px; = PADDING-RIGHT: 0px; FONT: 11px Arial, Verdana, sans-Serif; HEIGHT: 14px; = BORDER-TOP: #555 1px solid; BORDER-RIGHT: #555 1px solid; PADDING-TOP: = 0px } #istogram { BORDER-BOTTOM: #cdcdcd 1px solid; BORDER-LEFT: #cdcdcd 1px solid; = PADDING-BOTTOM: 0px; MARGIN: 10px 0px 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: 11px Arial, Verdana, sans-Serif; HEIGHT: = 110px; BORDER-TOP: #cdcdcd 1px solid; BORDER-RIGHT: #cdcdcd 1px solid; = PADDING-TOP: 0px } HTML > BODY #istogram { FLOAT: left } #istogram INPUT { FLOAT: left } #butt { PADDING-BOTTOM: 0px; MARGIN: -20px 0px 0px; PADDING-LEFT: 0px; WIDTH: = 100%; PADDING-RIGHT: 0px; DISPLAY: block; PADDING-TOP: 20px } HTML > BODY #butt { PADDING-BOTTOM: 0px; MARGIN: -10px 0px 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FLOAT: left; PADDING-TOP: 0px } #butt INPUT { BORDER-BOTTOM: #b2b2b2 3px solid; BORDER-LEFT: #b2b2b2 3px solid; = BACKGROUND-COLOR: #f8f5e9; FONT: 11px Arial, Verdana, sans-Serif; = BORDER-TOP: #b2b2b2 3px solid; BORDER-RIGHT: #b2b2b2 3px solid } #infoContent DL.d1 { PADDING-BOTTOM: 0px; MARGIN: 0px 8px 0px 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FLOAT: left; PADDING-TOP: 0px } #infoContent DL.d1 DT { PADDING-BOTTOM: 0px; MARGIN: 2px 0px 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: bold 11px Arial, Verdana, sans-Serif; = PADDING-TOP: 0px } #infoContent DL.d2 DT { PADDING-BOTTOM: 0px; MARGIN: 2px 0px 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: bold 11px Arial, Verdana, sans-Serif; = PADDING-TOP: 0px } #infoContent DL.d2 DT { PADDING-BOTTOM: 0px; MARGIN: 2px 0px 2px 78px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } #infoContent DL.d1 DD { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FONT: 11px Arial, Verdana, sans-Serif; PADDING-TOP: 0px } #infoContent DL.d2 DD { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FONT: 11px Arial, Verdana, sans-Serif; PADDING-TOP: 0px } #infoContent DL.d2 DD { MARGIN: -2px 0px 0px } #infoContent DL.d2 DD LABEL { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 100%; = PADDING-RIGHT: 0px; DISPLAY: block; PADDING-TOP: 0px } #infoContent LABEL.layers { DISPLAY: block; FONT: 11px Arial, Verdana, sans-Serif } #infoContent DL.d1 DD SELECT { BORDER-BOTTOM: #cdcdcd 1px solid; BORDER-LEFT: #cdcdcd 1px solid; = MARGIN: 0px 0px 15px; FONT: 11px/11px Arial, Verdana, sans-Serif; = BORDER-TOP: #cdcdcd 1px solid; BORDER-RIGHT: #cdcdcd 1px solid } #infoContent DL.d2 DD SELECT { BORDER-BOTTOM: #cdcdcd 1px solid; BORDER-LEFT: #cdcdcd 1px solid; = MARGIN: 0px 0px 15px; FONT: 11px/11px Arial, Verdana, sans-Serif; = BORDER-TOP: #cdcdcd 1px solid; BORDER-RIGHT: #cdcdcd 1px solid } #infoContent DL.d1 DD SELECT { WIDTH: 70px; HEIGHT: 180px } HTML > BODY #infoContent DL.d1 DD SELECT { HEIGHT: auto } #infoContent DL.d2 DD SELECT { MARGIN: 0px 0px 0px 5px; WIDTH: 130px; HEIGHT: 180px } HTML > BODY #infoContent DL.d2 DD SELECT { HEIGHT: 172px } #infoContent DL.d2 { PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 5px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } #infoContent H4.Headform { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } UL.TypeM { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 10px 0px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 11px Arial, Verdana, = sans-Serif; FLOAT: left; PADDING-TOP: 0px } UL.TypeM LI { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; DISPLAY: block; PADDING-TOP: 0px } UL.TypeM LI UL { PADDING-BOTTOM: 4px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: = 4px; PADDING-RIGHT: 4px; BACKGROUND: #f8f5e9; PADDING-TOP: 4px } DL.compare { PADDING-BOTTOM: 4px; MARGIN: 6px 0px; PADDING-LEFT: 4px; PADDING-RIGHT: = 4px; BACKGROUND: #f8f5e9; PADDING-TOP: 4px } DL.compare DT { BORDER-BOTTOM: #b2b2b2 1px solid; PADDING-BOTTOM: 2px; MARGIN: 0px 0px = 4px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT-WEIGHT: normal; = PADDING-TOP: 0px } DL.compare DD { PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 2px; PADDING-LEFT: 0px; WIDTH: = 100%; PADDING-RIGHT: 0px; PADDING-TOP: 0px } DL.compare DD SELECT { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } DL.compare DD INPUT { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } UL.TypeM SELECT { WIDTH: 98px; FONT: 11px Arial, Verdana, sans-Serif } #infoContent UL.compare { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: = 0px; WIDTH: 100%; PADDING-RIGHT: 0px; DISPLAY: block; FONT: 11px Arial, = Verdana, sans-Serif; FLOAT: left; PADDING-TOP: 0px } #infoContent UL.compare LI { DISPLAY: block } #infoContent UL.compare LI SELECT { WIDTH: 100px; FONT: 11px Arial, Verdana, sans-Serif } #legalNotice { POSITION: absolute; FONT: 11px Arial, Verdana, sans-Serif; TOP: 28px; = RIGHT: 63px } #legalNotice A { COLOR: #fff; TEXT-DECORATION: none } #legalNotice A:hover { COLOR: #fff; TEXT-DECORATION: none } INPUT.butt_on { BORDER-BOTTOM: #b2b2b2 3px solid; BORDER-LEFT: #b2b2b2 3px solid; = PADDING-BOTTOM: 0px; BACKGROUND-COLOR: #f8f5e9; MARGIN: 10px 0px; = PADDING-LEFT: 4px; PADDING-RIGHT: 4px; FONT: 11px Arial, Verdana, = sans-Serif; BORDER-TOP: #b2b2b2 3px solid; BORDER-RIGHT: #b2b2b2 3px = solid; PADDING-TOP: 0px } #rightColumn #scrollingArea { WIDTH: 95%; HEIGHT: 300px; OVERFLOW: auto } #printGraph #rightColumn #scrollingArea { WIDTH: 95%; OVERFLOW: auto } UL.chartOptions { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: = 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px } UL.chartOptions LI { PADDING-BOTTOM: 3px; MARGIN: 0px; PADDING-LEFT: 18px; PADDING-RIGHT: = 0px; FONT: 11px Arial, Verdana, sans-Serif; PADDING-TOP: 3px } UL.chartOptions LI LABEL { PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 2px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; DISPLAY: block; PADDING-TOP: 2px } .column { BACKGROUND: url(../images/graph/columnIcon.gif) #f8f5e9 no-repeat left = 50% } .bar { BACKGROUND: url(../images/graph/barIcon.gif) no-repeat left 50% } .line { BACKGROUND: url(../images/graph/lineIcon.gif) #f8f5e9 no-repeat left = 50% } .pie { BACKGROUND: url(../images/graph/pieIcon.gif) no-repeat left 50% } .XYscatter { BACKGROUND: url(../images/graph/XYscatterIcon.gif) #f8f5e9 no-repeat = left 50% } UL.majorAxis { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 20px 0px 10px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 11px Arial, Verdana, = sans-Serif; PADDING-TOP: 0px } UL.majorAxis LI SELECT { WIDTH: 40%; FONT: 11px Arial, Verdana, sans-Serif } DIV.butt_on_line { WIDTH: 100%; DISPLAY: block; FLOAT: left } #table_import { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; HEIGHT: 350px; OVERFLOW: auto; PADDING-TOP: 0px } TABLE.widtheigt { WIDTH: 200px } TR.alt { BACKGROUND-COLOR: #f8f5e9 } .alt { BACKGROUND-COLOR: #f8f5e9 } #tableheader TABLE { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } TABLE.infoData TH { PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #c9e4f1; MARGIN: 0px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: bold 12px Arial, Verdana, = sans-Serif; PADDING-TOP: 5px } TABLE.widtheigt TD { PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #c9e4f1; MARGIN: 0px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: bold 12px Arial, Verdana, = sans-Serif; PADDING-TOP: 5px } TABLE.infoData TH { BORDER-BOTTOM: #0099cc 3px solid; PADDING-BOTTOM: 5px; = BACKGROUND-COLOR: #c9e4f1; MARGIN: 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: 10px Arial, Verdana, sans-Serif; BORDER-TOP: = #0099cc 3px solid; PADDING-TOP: 5px } TABLE.infoData TD { TEXT-ALIGN: center; BORDER-LEFT: #cdcdcd 1px dashed; PADDING-BOTTOM: = 3px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 11px = Arial, Verdana, sans-Serif; PADDING-TOP: 3px } TABLE.widtheigt TD { TEXT-ALIGN: center; BORDER-LEFT: #cdcdcd 1px dashed; PADDING-BOTTOM: = 3px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 11px = Arial, Verdana, sans-Serif; PADDING-TOP: 3px } TABLE.infoData { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 100%; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } TABLE.infoData TD { =09 } TABLE.infoData TH.vertical { BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px } #table_import TABLE.infoData TD { TEXT-ALIGN: center } #table_import TABLE.infoData TH.vertical { =09 } TABLE TR TD TABLE.infoData TH.vertical { =09 } #tableheader TABLE TH { TEXT-ALIGN: center; PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; WIDTH: = 47px; PADDING-RIGHT: 0px; FONT: 10px Arial,verdana , san-serif; = PADDING-TOP: 0px } TABLE.infoData TH.vertical { BORDER-BOTTOM: #cdcdcd 1px solid; TEXT-ALIGN: left; PADDING-BOTTOM: = 0px; MARGIN: 0px; PADDING-LEFT: 12px; PADDING-RIGHT: 0px; FONT: bold = 12px Arial, Verdana, sans-Serif; BACKGROUND: #c9e4f1; PADDING-TOP: 0px } TABLE.widtheigt TH.vertical { BORDER-BOTTOM: #cdcdcd 1px solid; TEXT-ALIGN: left; PADDING-BOTTOM: = 0px; MARGIN: 0px; PADDING-LEFT: 12px; PADDING-RIGHT: 0px; FONT: bold = 12px Arial, Verdana, sans-Serif; BACKGROUND: #c9e4f1; PADDING-TOP: 0px } #copyrightsPrint { PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #f8f5e9; MARGIN: 0px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 10px Tahoma, Arial, = Verdana, sans-Serif; BORDER-TOP: #393939 2px solid; PADDING-TOP: 5px } #copyrightsPrint SPAN { PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 15px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; COLOR: #393939; PADDING-TOP: 0px } #copyrights { PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 20px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: 10px Tahoma, Arial, Verdana, sans-Serif; = PADDING-TOP: 0px } #table #copyrights { PADDING-BOTTOM: 3px; BACKGROUND-COLOR: #09c; MARGIN: 0px; PADDING-LEFT: = 20px; PADDING-RIGHT: 0px; FONT: 10px Tahoma, Arial, Verdana, sans-Serif; = COLOR: #fff; PADDING-TOP: 3px } #section_wrapper UL.tableSave { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px 0px 0px 10px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px } UL.tableSave LI { TEXT-ALIGN: left; PADDING-BOTTOM: 3px; MARGIN: 0px; PADDING-LEFT: 5px; = PADDING-RIGHT: 0px; FONT: 11px Tahoma, Arial, Verdana, sans-Serif; = PADDING-TOP: 3px } UL.tableSave LI A { MARGIN: 0px 10px 0px 0px; COLOR: #09c; TEXT-DECORATION: underline } UL.tableSave LI A:hover { TEXT-DECORATION: none } #footer { PADDING-BOTTOM: 3px; MARGIN: 0px; PADDING-LEFT: 20px; PADDING-RIGHT: = 0px; FONT: 11px Tahoma, Arial, Verdana, sans-Serif; PADDING-TOP: 3px } #footer A { COLOR: #09c; TEXT-DECORATION: underline } #footer A:hover { COLOR: #09c; TEXT-DECORATION: underline } #footer P { PADDING-BOTTOM: 0px; MARGIN: 3px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; DISPLAY: block; PADDING-TOP: 0px } FIELDSET.labels { BORDER-BOTTOM: #f8f5e9 2px solid; BORDER-LEFT: #f8f5e9 2px solid; = DISPLAY: block; FONT: 11px Arial, Verdana, sans-Serif; BORDER-TOP: = #f8f5e9 2px solid; BORDER-RIGHT: #f8f5e9 2px solid } FIELDSET.labels LEGEND { FONT-WEIGHT: bold } FIELDSET.labels LABEL { DISPLAY: block } FIELDSET.sorting { BORDER-BOTTOM: #f8f5e9 2px solid; BORDER-LEFT: #f8f5e9 2px solid; = DISPLAY: block; FONT: 11px Arial, Verdana, sans-Serif; BORDER-TOP: = #f8f5e9 2px solid; BORDER-RIGHT: #f8f5e9 2px solid } FIELDSET.sorting LEGEND { FONT-WEIGHT: bold } FIELDSET.sorting LABEL { DISPLAY: block } FIELDSET.sorting SELECT { PADDING-BOTTOM: 0px; MARGIN: 5px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FONT: 11px Tahoma, Arial, Verdana, sans-Serif; PADDING-TOP: 0px } #group { PADDING-BOTTOM: 0px; BACKGROUND-COLOR: #f8f5e9; MARGIN: 0px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px } #group LABEL { WIDTH: 90px } #group SELECT { MARGIN: 10px 5px 0px 0px; WIDTH: 100px; FLOAT: right } #tableheader { BORDER-BOTTOM: #0099cc 3px solid; PADDING-BOTTOM: 0px; MARGIN: 0px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; DISPLAY: block; BORDER-TOP: = #0099cc 3px solid; PADDING-TOP: 0px } #tableheader TABLE.infodata { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } #tableheader TABLE.infodata TH.labels { TEXT-ALIGN: right; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; BACKGROUND: url(../images/table/label_sep.gif) = #c9e4f1 no-repeat 50% 50%; BORDER-RIGHT: #09c 3px solid; PADDING-TOP: = 0px } TH.labels { TEXT-ALIGN: right; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; BACKGROUND: url(../images/table/label_sep.gif) = #c9e4f1 no-repeat 50% 50%; BORDER-RIGHT: #09c 3px solid; PADDING-TOP: = 0px } #tableheader TABLE.infodata TH.labels TABLE { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 100%; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } TH.labels TABLE { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 100%; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } #tableheader TABLE.infodata TH.labels TABLE TD { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 50%; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } TH.labels TABLE TD { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 50%; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } SPAN.error { BORDER-BOTTOM: #1f44af 1px solid; BORDER-LEFT: #1f44af 1px solid; = PADDING-BOTTOM: 3px; BACKGROUND-COLOR: #b0ecff; PADDING-LEFT: 3px; = PADDING-RIGHT: 3px; DISPLAY: block; FONT: 11px Tahoma, Arial, Verdana, = sans-Serif; FLOAT: left; COLOR: #1f44af; BORDER-TOP: #1f44af 1px solid; = BORDER-RIGHT: #1f44af 1px solid; PADDING-TOP: 3px } BODY#description { PADDING-BOTTOM: 10px; PADDING-LEFT: 10px; PADDING-RIGHT: 10px; FONT: = 11px/140% Tahoma, Arial, Verdana, sans-Serif; COLOR: #000; PADDING-TOP: = 10px } BODY#description #title { PADDING-BOTTOM: 4px; MARGIN: 0px 12px 0px -5px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } BODY#description #title H2 { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } BODY#description B { BORDER-BOTTOM: #1f44af 1px solid; PADDING-BOTTOM: 4px; MARGIN: 15px 0px = 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; DISPLAY: block; FONT-FAMILY: = Arial, Verdana, sans-serif; COLOR: #1f44af; FONT-SIZE: 18px; = FONT-WEIGHT: bold; PADDING-TOP: 0px } BODY#description U { COLOR: #393939; FONT-WEIGHT: bold } UL.tableSave { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } UL.tableSave LI { PADDING-BOTTOM: 6px; MARGIN: 2px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 6px } UL.tableSave LI A { PADDING-BOTTOM: 6px; PADDING-LEFT: 32px; PADDING-RIGHT: 8px; = PADDING-TOP: 6px } .htm { BACKGROUND: url(../images/common/htm24.gif) no-repeat left top } .zip { BACKGROUND: url(../images/common/zip24.gif) no-repeat left top } .xls { BACKGROUND: url(../images/common/xls24.gif) no-repeat left top } .xml { BACKGROUND: url(../images/common/xml24.gif) no-repeat left top } .tsv { BACKGROUND: url(../images/common/tsv24.gif) no-repeat left top } #additional_info { PADDING-BOTTOM: 0px; MARGIN: 20px 0px 0px 12px; PADDING-LEFT: 0px; = WIDTH: 257px; PADDING-RIGHT: 0px; FONT: 11px Tahoma, Arial, Verdana, = sans-Serif; BACKGROUND: url(../images/common/AdditionalBody.gif) = repeat-y left top; PADDING-TOP: 0px } #additional_info H4 { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 3px; PADDING-RIGHT: = 0px; BACKGROUND: url(../images/common/AdditionalHeader.gif) no-repeat = left top; HEIGHT: 32px; COLOR: #0099cc; PADDING-TOP: 5px } #additional_info P { PADDING-BOTTOM: 10px; MARGIN: 0px; PADDING-LEFT: 6px; PADDING-RIGHT: = 6px; FONT: 10px/130% Tahoma, Arial, Verdana, sans-Serif; BACKGROUND: = url(../images/common/AdditionalFooter.gif) no-repeat left bottom; = PADDING-TOP: 0px } SPAN.anim { WIDTH: 100%; DISPLAY: block; FONT: 11px/130% Tahoma, Arial, Verdana, = sans-Serif; FLOAT: left } UL.circle_legend { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: = 0px; PADDING-RIGHT: 0px; FONT: 11px Tahoma, Arial, Verdana, sans-Serif; = BACKGROUND: url(../images/common/WhiteCircle.gif) no-repeat left top; = HEIGHT: 107px; PADDING-TOP: 0px } UL.circle_legend LI { PADDING-BOTTOM: 0px; MARGIN: 0px 0px 31px 61px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } UL.circle_legend LI.pad { MARGIN: 0px 0px 42px 61px } DIV.LinkRow { TEXT-ALIGN: right; MARGIN: 10px; DISPLAY: block; FONT: 11px Verdana, = Arial, san-serif } DIV.LinkRow SPAN { PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 20px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } DIV.LinkRow SPAN.PrintTable { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; DISPLAY: = block; BACKGROUND: url(../images/common/leftCorners.gif) #0099cc = no-repeat left top; FLOAT: right; PADDING-TOP: 0px } DIV.LinkRow SPAN.PrintTable A { PADDING-BOTTOM: 0px; LINE-HEIGHT: 25px; MARGIN: 0px; PADDING-LEFT: = 15px; PADDING-RIGHT: 15px; DISPLAY: block; BACKGROUND: = url(../images/common/rightCorners.gif) no-repeat right top; FLOAT: left; = HEIGHT: 25px; COLOR: #fff; TEXT-DECORATION: underline; PADDING-TOP: 0px } DIV.LinkRow SPAN.View { FLOAT: right } DIV.LinkRow SPAN.View A { PADDING-BOTTOM: 0px; LINE-HEIGHT: 25px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; HEIGHT: 25px; COLOR: #09c; TEXT-DECORATION: = underline; PADDING-TOP: 0px } DIV.LinkRow SPAN.View A EM { FONT-STYLE: normal; FONT-WEIGHT: bold } #printGraph H2 { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; DISPLAY: block; FONT: bold 16px Arial, Verdana, sans-serif; COLOR: = #333333; CLEAR: both; PADDING-TOP: 0px } #printMap H2 { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; DISPLAY: block; FONT: bold 16px Arial, Verdana, sans-serif; COLOR: = #333333; CLEAR: both; PADDING-TOP: 0px } #table H2 { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; DISPLAY: block; FONT: bold 16px Arial, Verdana, sans-serif; COLOR: = #333333; CLEAR: both; PADDING-TOP: 0px } #section { MARGIN: 0px; WIDTH: 100%; FONT: 11px Verdana, Arial , san-serif; COLOR: = #333333 } #section_header { Z-INDEX: 12; POSITION: relative; TEXT-ALIGN: right; PADDING-BOTTOM: = 0px; LINE-HEIGHT: 14px; PADDING-LEFT: 0px; WIDTH: 98%; PADDING-RIGHT: = 20px; DISPLAY: block; FLOAT: left; HEIGHT: 24px; PADDING-TOP: 0px } #section_header H3 { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; BACKGROUND: url(../images/common/tabSectionL.gif) no-repeat left = top; FLOAT: left; PADDING-TOP: 0px } #section_header H3 SPAN { PADDING-BOTTOM: 6px; MARGIN: 0px; PADDING-LEFT: 12px; PADDING-RIGHT: = 12px; FONT: bold 11px Verdana, arial, san-serif; BACKGROUND: = url(../images/common/tabSectionR.gif) no-repeat right top; FLOAT: left; = PADDING-TOP: 6px } #section_body { Z-INDEX: 3; POSITION: relative; TEXT-ALIGN: right; PADDING-BOTTOM: 0px; = MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; = DISPLAY: block; BACKGROUND: url(../images/common/sectionBodyL.gif) = #f8f5e9 repeat-y left top; FLOAT: left; HEIGHT: auto !important; CLEAR: = both; TOP: -1px; PADDING-TOP: 0px } #section_wrapper { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 100%; = PADDING-RIGHT: 0px; BACKGROUND: url(../images/common/cornerDivR.gif) = no-repeat right top; FLOAT: left; CLEAR: both; PADDING-TOP: 0px } #section_wrapper A { COLOR: #0099cc; TEXT-DECORATION: underline } #section_footer { Z-INDEX: 3; POSITION: relative; PADDING-BOTTOM: 0px; MARGIN: 0px; = PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; BACKGROUND: = url(../images/common/sectionFooterL.gif) no-repeat left bottom; FLOAT: = left; TOP: -2px; PADDING-TOP: 0px } #section_footer SPAN { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 100%; = PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(../images/common/sectionFooterR.gif) no-repeat right bottom; FLOAT: = left; PADDING-TOP: 0px } DIV.xlsList { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px 10px; PADDING-LEFT: = 0px; WIDTH: 94%; PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(../images/common/bottom_sep.gif) repeat-x left bottom; FLOAT: left; = CLEAR: left; PADDING-TOP: 0px } DIV.txtList { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px 10px; PADDING-LEFT: = 0px; WIDTH: 94%; PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(../images/common/bottom_sep.gif) repeat-x left bottom; FLOAT: left; = CLEAR: left; PADDING-TOP: 0px } DIV.htmlList { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px 10px; PADDING-LEFT: = 0px; WIDTH: 94%; PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(../images/common/bottom_sep.gif) repeat-x left bottom; FLOAT: left; = CLEAR: left; PADDING-TOP: 0px } DIV.spssList { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px 10px; PADDING-LEFT: = 0px; WIDTH: 94%; PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(../images/common/bottom_sep.gif) repeat-x left bottom; FLOAT: left; = CLEAR: left; PADDING-TOP: 0px } DIV.pcAxisList { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px 10px; PADDING-LEFT: = 0px; WIDTH: 94%; PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(../images/common/bottom_sep.gif) repeat-x left bottom; FLOAT: left; = CLEAR: left; PADDING-TOP: 0px } DIV.xmlList { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px 10px; PADDING-LEFT: = 0px; WIDTH: 94%; PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(../images/common/bottom_sep.gif) repeat-x left bottom; FLOAT: left; = CLEAR: left; PADDING-TOP: 0px } DIV.tsvList { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px 10px; PADDING-LEFT: = 0px; WIDTH: 94%; PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(../images/common/bottom_sep.gif) repeat-x left bottom; FLOAT: left; = CLEAR: left; PADDING-TOP: 0px } DIV.zipList { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px 10px; PADDING-LEFT: = 0px; WIDTH: 94%; PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(../images/common/bottom_sep.gif) repeat-x left bottom; FLOAT: left; = CLEAR: left; PADDING-TOP: 0px } DIV.table { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px 10px; PADDING-LEFT: = 0px; WIDTH: 94%; PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(../images/common/bottom_sep.gif) repeat-x left bottom; FLOAT: left; = CLEAR: left; PADDING-TOP: 0px } DIV.graph { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px 10px; PADDING-LEFT: = 0px; WIDTH: 94%; PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(../images/common/bottom_sep.gif) repeat-x left bottom; FLOAT: left; = CLEAR: left; PADDING-TOP: 0px } DIV.map { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px 10px; PADDING-LEFT: = 0px; WIDTH: 94%; PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(../images/common/bottom_sep.gif) repeat-x left bottom; FLOAT: left; = CLEAR: left; PADDING-TOP: 0px } DIV.common { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px 10px; PADDING-LEFT: = 0px; WIDTH: 94%; PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(../images/common/bottom_sep.gif) repeat-x left bottom; FLOAT: left; = CLEAR: left; PADDING-TOP: 0px } DIV.last { BACKGROUND: none transparent scroll repeat 0% 0% } #section_wrapper H4 { PADDING-BOTTOM: 10px; MARGIN: 10px; PADDING-LEFT: 8px; WIDTH: 50px; = PADDING-RIGHT: 8px; DISPLAY: block; FONT-FAMILY: Tahoma, Verdana, = san-serif; WHITE-SPACE: nowrap; FLOAT: left; HEIGHT: 12px; FONT-SIZE: = 11px; FONT-WEIGHT: normal; PADDING-TOP: 50px } #section_wrapper H4.demo { TEXT-ALIGN: center; PADDING-BOTTOM: 10px; MARGIN: 10px -40px 10px 10px; = PADDING-LEFT: 0px; WIDTH: 41px; PADDING-RIGHT: 0px; DISPLAY: block; = FONT-FAMILY: Tahoma, Verdana, san-serif; WHITE-SPACE: nowrap; FLOAT: = left; HEIGHT: 12px; FONT-SIZE: 11px; FONT-WEIGHT: normal; PADDING-TOP: = 50px } DIV.xlsList H4 { BACKGROUND: url(../images/common/xlsGroup.gif) no-repeat left top } DIV.txtList H4 { BACKGROUND: url(../images/common/txtGroup.gif) no-repeat left top } DIV.htmlList H4 { BACKGROUND: url(../images/common/htmlGroup.gif) no-repeat left top } DIV.spssList H4 { BACKGROUND: url(../images/common/spssGroup.gif) no-repeat left top } DIV.pcAxisList H4 { BACKGROUND: url(../images/common/pcAxisGroup.gif) no-repeat left top } DIV.xmlList H4 { BACKGROUND: url(../images/common/xmlGroup.gif) no-repeat left top } DIV.tsvList H4 { BACKGROUND: url(../images/common/tsvGroup.gif) no-repeat left top } DIV.zipList H4 { BACKGROUND: url(../images/common/zipGroup.gif) no-repeat left top } DIV.table H4 { BACKGROUND: url(../images/common/tableTour.gif) no-repeat left top } DIV.graph H4 { BACKGROUND: url(../images/common/graphTour.gif) no-repeat left top } DIV.map H4 { BACKGROUND: url(../images/common/mapTour.gif) no-repeat left top } DIV.common H4 { BACKGROUND: url(../images/common/commonTour.gif) no-repeat left top } #section_wrapper DL.d1 { MARGIN: 20px 0px 0px 20px; WIDTH: 30%; DISPLAY: block; FLOAT: left } #section_wrapper DL { PADDING-BOTTOM: 20px; MARGIN: 20px 0px 0px 20px; PADDING-LEFT: 0px; = WIDTH: 30%; PADDING-RIGHT: 0px; FLOAT: left; PADDING-TOP: 0px } #section_wrapper DL DT { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FONT-WEIGHT: bold; PADDING-TOP: 0px } #section_wrapper DL DD { PADDING-BOTTOM: 0px; MARGIN: 4px 0px 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } #section_wrapper UL.demo { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 30px 0px 0px 70px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px } #section_wrapper UL { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 20px 0px 0px 100px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px } #section_wrapper UL LI { MARGIN: 4px 0px 0px } #section A EM { FONT-STYLE: normal; FONT-WEIGHT: bold } LI.HeaderList { BORDER-BOTTOM: #b2b2b2 1px solid; PADDING-BOTTOM: 6px; LIST-STYLE-TYPE: = none; MARGIN: 0px 0px 5px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; = PADDING-TOP: 0px } #section_wrapper UL.pieCo { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 20px 0px 0px 10px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px } #section_wrapper UL.pieCo LI { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 20px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } #section_wrapper UL.pieCo LI SELECT { MARGIN: 10px 0px 0px } .maparea { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } .dataList { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 10px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; DISPLAY: block; PADDING-TOP: 0px } #svgImport SPAN.spacer { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; DISPLAY: block; FONT: 8px/8px verdana; HEIGHT: 8px; PADDING-TOP: = 0px } #section_wrapper P { TEXT-ALIGN: left; MARGIN: 10px 0px 10px 10px; WIDTH: 95%; FLOAT: left } #section_wrapper P EM { FONT-STYLE: normal; FONT-WEIGHT: bold } #infoContent DL.marginZero { PADDING-BOTTOM: 0px; MARGIN: 0px 0px 4px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; DISPLAY: block; PADDING-TOP: 0px } #infoContent DL.marginZero DT { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } #dimension { TEXT-ALIGN: right; PADDING-BOTTOM: 0px; MARGIN: 0px 0px 3px; = PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; PADDING-TOP: 0px } #dimension SPAN.selectBox { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: bold 11px Arial, Verdana, sans-Serif; FLOAT: = left; PADDING-TOP: 0px } #dimension SPAN.selectBox SELECT { MARGIN: 0px; WIDTH: auto; FONT: 11px Arial, Verdana, sans-Serif } #dimension SPAN.radioChoices { PADDING-BOTTOM: 0px; MARGIN: 0px 6px 0px 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: bold 11px Arial, Verdana, sans-Serif; = PADDING-TOP: 0px } #dimension SPAN.radioChoices LABEL { FONT: 11px Arial, Verdana, sans-Serif } #dimension SPAN INPUT.butt_on1 { BORDER-BOTTOM: #b2b2b2 3px solid; BORDER-LEFT: #b2b2b2 3px solid; = PADDING-BOTTOM: 0px; BACKGROUND-COLOR: #f8f5e9; MARGIN: 0px 0px 0px = 15px; PADDING-LEFT: 4px; PADDING-RIGHT: 4px; FONT: 11px Arial, Verdana, = sans-Serif; BORDER-TOP: #b2b2b2 3px solid; BORDER-RIGHT: #b2b2b2 3px = solid; PADDING-TOP: 0px } .ScrollTable-container { WIDTH: 100% } .ScrollTable THEAD TR { POSITION: relative } .ScrollTable TBODY { OVERFLOW-X: hidden; OVERFLOW-Y: auto; WIDTH: 100% } .ScrollTable TBODY TR { HEIGHT: auto } .ScrollTable TBODY TR TD:unknown { PADDING-RIGHT: 20px } .ScrollTable { HEIGHT: 400px } .ScrollTable THEAD TR TH { BORDER-BOTTOM: #0099cc 3px solid; TEXT-ALIGN: center; BACKGROUND-COLOR: = #c9e4f1; FONT: 11px Arial, Verdana, sans-Serif; HEIGHT: 25px; COLOR: = #000; BORDER-TOP: #0099cc 3px solid } .ScrollTable TBODY { WIDTH: 100%; HEIGHT: 375px } .ScrollTable TBODY TR TD { TEXT-ALIGN: center; BORDER-LEFT: #cdcdcd 1px dashed; PADDING-BOTTOM: = 3px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 11px = Arial, Verdana, sans-Serif; PADDING-TOP: 3px } .ScrollTable TBODY TR TH { BORDER-BOTTOM: #cdcdcd 1px solid; TEXT-ALIGN: left; PADDING-BOTTOM: = 0px; MARGIN: 0px; PADDING-LEFT: 12px; WIDTH: 15%; PADDING-RIGHT: 10px; = FONT: bold 12px Arial, Verdana, sans-Serif; WHITE-SPACE: nowrap; = BACKGROUND: #c9e4f1; PADDING-TOP: 0px } TH.labels { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } TH.labels SPAN.horizontalDim { MARGIN: 0px 10px 0px 0px; FLOAT: right } TH.labels SPAN.verticalDim { TEXT-ALIGN: left; MARGIN: 0px 0px 0px 10px; FLOAT: left } SPAN.horizLabel { MARGIN: 0px 10px 0px 0px; FLOAT: right } SPAN.vertLabel { MARGIN: 0px 0px 0px 10px; FLOAT: left } #expect { BORDER-BOTTOM: #000 1px dashed; PADDING-BOTTOM: 4px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: 11px Arial, Verdana, serif; BORDER-TOP: #000 = 1px dashed; PADDING-TOP: 4px } #expect SPAN { FONT-WEIGHT: bold } LI.expect { BORDER-BOTTOM: #000 1px dashed; PADDING-BOTTOM: 2px; MARGIN: 4px 0px = 0px; PADDING-LEFT: 2px; WIDTH: 99%; PADDING-RIGHT: 0px; FONT: 11px = Arial, Verdana, serif; HEIGHT: auto !important; BORDER-TOP: #000 1px = dashed; PADDING-TOP: 2px } LI.expect SPAN { FONT-WEIGHT: bold } #progressBar { POSITION: absolute; TEXT-ALIGN: center; WIDTH: 100%; FONT: bold 11px = Verdana, Arial, sans-serif; COLOR: #fff; TOP: 29px } #progressBar TABLE { PADDING-BOTTOM: 0px; MARGIN: 0px auto; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: bold 11px Verdana, Arial, sans-serif; COLOR: = #fff; TOP: 29px; PADDING-TOP: 0px } #progressBar TABLE TR TD { PADDING-BOTTOM: 0px; PADDING-LEFT: 10px; PADDING-RIGHT: 10px; = PADDING-TOP: 0px } .hide { DISPLAY: none } .show { DISPLAY: block } #scaleSize { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } FIELDSET.L1 { BORDER-BOTTOM: #f8f5e9 2px solid; TEXT-ALIGN: center; BORDER-LEFT: = #f8f5e9 2px solid; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 3px; = WIDTH: 80px; PADDING-RIGHT: 3px; FONT: 11px Arial, Verdana, sans-Serif; = FLOAT: left; HEIGHT: 234px; BORDER-TOP: #f8f5e9 2px solid; BORDER-RIGHT: = #f8f5e9 2px solid; PADDING-TOP: 3px } FIELDSET.L1 LEGEND { FONT-WEIGHT: bold } FIELDSET.L2 LEGEND { FONT-WEIGHT: bold } FIELDSET.L1 SELECT { BORDER-BOTTOM: #cdcdcd 1px solid; BORDER-LEFT: #cdcdcd 1px solid; = MARGIN: 0px 0px 2px; WIDTH: 70px; FONT: 11px Arial, Verdana, sans-Serif; = HEIGHT: 180px; BORDER-TOP: #cdcdcd 1px solid; BORDER-RIGHT: #cdcdcd 1px = solid } FIELDSET.L2 { BORDER-BOTTOM: #f8f5e9 2px solid; TEXT-ALIGN: center; BORDER-LEFT: = #f8f5e9 2px solid; PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 4px; = PADDING-LEFT: 3px; WIDTH: 130px; PADDING-RIGHT: 3px; FONT: 11px Arial, = Verdana, sans-Serif; HEIGHT: 234px; BORDER-TOP: #f8f5e9 2px solid; = BORDER-RIGHT: #f8f5e9 2px solid; PADDING-TOP: 3px } FIELDSET.L2 SELECT { WIDTH: 120px; FONT: 11px Arial, Verdana, sans-Serif; FLOAT: left; = HEIGHT: 180px } FIELDSET.L1 LABEL { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FLOAT: left; PADDING-TOP: 0px } FIELDSET.L1 INPUT { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FLOAT: right; PADDING-TOP: 0px } FIELDSET.spacer { PADDING-BOTTOM: 4px; MARGIN: 0px 0px 15px; PADDING-LEFT: 4px; = PADDING-RIGHT: 4px; PADDING-TOP: 4px } FIELDSET.spacer INPUT { MARGIN: 0px 0px 0px 5px } FIELDSET.scaling { BORDER-BOTTOM: #f8f5e9 2px solid; BORDER-LEFT: #f8f5e9 2px solid; FONT: = 11px Arial, Verdana, sans-Serif; BORDER-TOP: #f8f5e9 2px solid; = BORDER-RIGHT: #f8f5e9 2px solid } FIELDSET.scaling LEGEND { FONT-WEIGHT: bold } FIELDSET.scaling LABEL { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; DISPLAY: block; PADDING-TOP: 0px } FIELDSET.scaling LABEL.groupby { BORDER-BOTTOM: #f8f5e9 1px solid; PADDING-BOTTOM: 2px; = BACKGROUND-COLOR: #f8f5e9; MARGIN: 0px 0px -2px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } FIELDSET.scaling INPUT { FONT: 11px Arial, Verdana, sans-Serif } FIELDSET.scaling INPUT.textfield { PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 5px; PADDING-LEFT: 0px; WIDTH: = 50px; PADDING-RIGHT: 0px; FONT: 11px Arial, Verdana, sans-Serif; = PADDING-TOP: 0px } FIELDSET.scaling UL { PADDING-BOTTOM: 0px; BACKGROUND-COLOR: #f8f5e9; LIST-STYLE-TYPE: none; = MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; = PADDING-TOP: 0px } FIELDSET.scaling UL LI { PADDING-BOTTOM: 0px; MARGIN: 2px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 10px; PADDING-TOP: 0px } FIELDSET.scaling UL LI SPAN { PADDING-BOTTOM: 0px; MARGIN: 2px 0px; PADDING-LEFT: 5px; PADDING-RIGHT: = 30px; PADDING-TOP: 0px } FIELDSET.scaling P.BgWhite { PADDING-BOTTOM: 0px; BACKGROUND-COLOR: #fff; MARGIN: 0px; PADDING-LEFT: = 5px; PADDING-RIGHT: 0px; PADDING-TOP: 0px } FIELDSET.scaling P { PADDING-BOTTOM: 0px; LINE-HEIGHT: 140%; BACKGROUND-COLOR: #f8f5e9; = MARGIN: 0px; PADDING-LEFT: 4px; PADDING-RIGHT: 4px; PADDING-TOP: 0px } #table H2.normal { PADDING-BOTTOM: 0px; MARGIN: 0px 0px 10px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: 12px Arial, Verdana, sans-serif; PADDING-TOP: = 0px } UL.series { PADDING-BOTTOM: 0px; BACKGROUND-COLOR: #f8f5e9; LIST-STYLE-TYPE: none; = MARGIN: 0px 0px 5px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 11px = Arial, Verdana, sans-serif; PADDING-TOP: 0px } UL.series LI { PADDING-BOTTOM: 3px; MARGIN: 0px; PADDING-LEFT: 3px; PADDING-RIGHT: = 3px; PADDING-TOP: 3px } UL.series LI SELECT { FONT: 11px Arial, Verdana, sans-serif } #error { TEXT-ALIGN: center; WIDTH: 100% } #error P { TEXT-ALIGN: left; MARGIN: 20% auto 0px; WIDTH: 50% } #error P IMG { PADDING-BOTTOM: 0px; BORDER-RIGHT-WIDTH: 0px; MARGIN: 0px 10px 10px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FLOAT: left; BORDER-TOP-WIDTH: = 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; PADDING-TOP: 0px } #error P SPAN { TEXT-ALIGN: left; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: 11px Arial, Verdana, sans-serif; PADDING-TOP: = 0px } #help { Z-INDEX: 90; POSITION: absolute; TOP: 2px; RIGHT: 2px } ------=_NextPart_000_0000_01CA6879.FD267D10 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://epp.eurostat.ec.europa.eu/tgm/web/stylesheets/print.css #tabs { DISPLAY: none } #buttons { DISPLAY: none } #footer { DISPLAY: none } H1 { FONT-FAMILY: Georgia, verdana, san-serif; LETTER-SPACING: -1px; = FONT-SIZE: 41px; FONT-WEIGHT: normal } #printGraph H2 { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; DISPLAY: block; FONT: bold 16px Arial, Verdana, sans-serif; COLOR: = #333333; CLEAR: both; PADDING-TOP: 0px } #printMap H2 { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; DISPLAY: block; FONT: bold 16px Arial, Verdana, sans-serif; COLOR: = #333333; CLEAR: both; PADDING-TOP: 0px } #table H2 { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; DISPLAY: block; FONT: bold 16px Arial, Verdana, sans-serif; COLOR: = #333333; CLEAR: both; PADDING-TOP: 0px } #title H2 A { BORDER-BOTTOM: #000 1px solid; PADDING-BOTTOM: 0px; LINE-HEIGHT: 140%; = MARGIN: 8px 0px 5px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: = Georgia, verdana, san-serif; LETTER-SPACING: -1px; COLOR: #ccc; = FONT-SIZE: 21px; FONT-WEIGHT: normal; PADDING-TOP: 0px } #table H2.normal { PADDING-BOTTOM: 0px; MARGIN: 0px 0px 10px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: 12px Arial, Verdana, sans-serif; PADDING-TOP: = 0px } TABLE.infoData { WIDTH: 100%; FONT-FAMILY: arial,verdana, san-serif } TABLE.infoData TR TH { BORDER-BOTTOM: #09c 3px solid; FONT-FAMILY: Arial, Verdana, Sans-serif; = FONT-SIZE: 10px; BORDER-TOP: #09c 3px solid } TABLE.infoData TR TD { PADDING-BOTTOM: 0px; PADDING-LEFT: 4px; PADDING-RIGHT: 0px; = FONT-FAMILY: verdana, arial, san-serif; FONT-SIZE: 11px; PADDING-TOP: = 0px } TABLE.infoData TH.vertical { WIDTH: 70px; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px } TH.labels { BORDER-RIGHT: #09c 3px solid } TH.labels SPAN { MARGIN: 0px 5px } .vertLabel { TEXT-ALIGN: left; MARGIN: 0px 4px 0px 0px; DISPLAY: block; FONT-SIZE: = 11px } .horizLabel { TEXT-ALIGN: right; MARGIN: 0px 0px 0px 4px; DISPLAY: block; FONT-SIZE: = 11px } TABLE.infoData TR.alt TD { BACKGROUND-COLOR: #f8f5e9 } TABLE.infoData TH { BORDER-BOTTOM: #0099cc 3px solid; PADDING-BOTTOM: 5px; = BACKGROUND-COLOR: #c9e6fd; MARGIN: 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: bold 12px Arial, Verdana, sans-Serif; = PADDING-TOP: 5px } TABLE.widtheigt TD { BORDER-BOTTOM: #0099cc 3px solid; PADDING-BOTTOM: 5px; = BACKGROUND-COLOR: #c9e6fd; MARGIN: 0px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; FONT: bold 12px Arial, Verdana, sans-Serif; = PADDING-TOP: 5px } TABLE.infoData TD { TEXT-ALIGN: center; BORDER-LEFT: #cdcdcd 1px dashed; PADDING-BOTTOM: = 3px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 11px = Arial, Verdana, sans-Serif; PADDING-TOP: 3px } TABLE.widtheigt TD { TEXT-ALIGN: center; BORDER-LEFT: #cdcdcd 1px dashed; PADDING-BOTTOM: = 3px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 11px = Arial, Verdana, sans-Serif; PADDING-TOP: 3px } #table_import TABLE.infoData TD { WIDTH: 45px } #table_import TABLE.infoData TH.vertical { WIDTH: 110px } #tableheader TABLE TH { TEXT-ALIGN: center; PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; WIDTH: = 46px; PADDING-RIGHT: 0px; PADDING-TOP: 0px } #tableheader TABLE.infodata TR TH.labels { BORDER-BOTTOM: #09c 3px solid; PADDING-BOTTOM: 0px; MARGIN: 0px; = PADDING-LEFT: 0px; WIDTH: 120px; PADDING-RIGHT: 0px; BACKGROUND: = url(../images/table/label_sep.gif) #c9e6fd no-repeat 50% 50%; = BORDER-RIGHT: #09c 3px solid; PADDING-TOP: 0px } TABLE.infoData TH.vertical { BORDER-BOTTOM: #cdcdcd 1px solid; TEXT-ALIGN: left; PADDING-BOTTOM: = 0px; MARGIN: 0px; PADDING-LEFT: 12px; PADDING-RIGHT: 0px; FONT: bold = 12px Arial, Verdana, sans-Serif; BACKGROUND: #c9e4f1; PADDING-TOP: 0px } TABLE.widtheigt TH.vertical { BORDER-BOTTOM: #cdcdcd 1px solid; TEXT-ALIGN: left; PADDING-BOTTOM: = 0px; MARGIN: 0px; PADDING-LEFT: 12px; PADDING-RIGHT: 0px; FONT: bold = 12px Arial, Verdana, sans-Serif; BACKGROUND: #c9e4f1; PADDING-TOP: 0px } #copyrights { DISPLAY: none } #legalNotice { DISPLAY: none } DIV.LinkRow { DISPLAY: none } #printGraph TABLE.printData { BACKGROUND-COLOR: #f8f5e9; FONT: 11px Arial, Verdana, sans-serif } #printMap TABLE.printData { BACKGROUND-COLOR: #f8f5e9; FONT: 11px Arial, Verdana, sans-serif } #Table TABLE.printData { BACKGROUND-COLOR: #f8f5e9; FONT: 11px Arial, Verdana, sans-serif } #copyrightsPrint { PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #f8f5e9; MARGIN: 0px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT: 10px Tahoma, Arial, = Verdana, sans-Serif; BORDER-TOP: #393939 2px solid; PADDING-TOP: 5px } TABLE.printData TR TD A { COLOR: #095f7b; TEXT-DECORATION: none } SPAN.horizLabel { MARGIN: 0px 10px 0px 0px; FLOAT: right } SPAN.vertLabel { MARGIN: 0px 0px 0px 10px; FLOAT: left } TABLE.printdata SPAN.labeled { FONT-WEIGHT: bold } ------=_NextPart_000_0000_01CA6879.FD267D10 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://epp.eurostat.ec.europa.eu/tgm/web/js/mootools.js /* Script: Moo.js My Object Oriented javascript. =09 Dependancies: Has no dependancies. =09 Author: Valerio Proietti, License: MIT-style license. Credits: - Class is slightly based on Base.js = (c) 2006 Dean Edwards, = License - Some functions are based on those found in prototype.js = (c) 2005 Sam Stephenson sam [at] conio = [dot] net, MIT-style license - Documentation by Aaron Newton (aaron.newton [at] cnet [dot] com) and = Valerio Proietti. */ /* Class: Class The base class object of the framework. =09 Arguments: properties - the collection of properties that apply to the class. = Creates a new class, its initialize method will fire upon class = instantiation. =09 Example: >var Cat =3D new Class({ > initialize: function(name){ > this.name =3D name; > } >}); >var myCat =3D new Cat('Micia'); >alert myCat.name; //alerts 'Micia' */ var Class =3D function(properties){ var klass =3D function(){ for (var p in this){ if (this[p]) this[p]._proto_ =3D this; } if (arguments[0] !=3D 'noinit' && this.initialize) return = this.initialize.apply(this, arguments); }; klass.extend =3D this.extend; klass.implement =3D this.implement; klass.prototype =3D properties; return klass; }; /* Property: empty Returns an empty function */ Class.empty =3D function(){}; /* Property: create same as new Class. see */ Class.create =3D function(properties){ return new Class(properties); }; Class.prototype =3D { /* Property: extend Returns the copy of the Class extended with the passed in properties. =09 Arguments: properties - the properties to add to the base class in this new = Class. =09 Example: >var Animal =3D new Class({ > initialize: function(age){ > this.age =3D age; > } >}); >var Cat =3D Animal.extend({ > initialize: function(name, age){ > this.parent(age); //will call the previous initialize; > this.name =3D name; > } >}); >var myCat =3D new Cat('Micia', 20); >alert myCat.name; //alerts 'Micia' >alert myCat.age; //alerts 20 */ extend: function(properties){ var pr0t0typ3 =3D new this('noinit'); for (var property in properties){ var previous =3D pr0t0typ3[property]; var current =3D properties[property]; if (previous && previous !=3D current) current =3D = previous.parentize(current) || current; pr0t0typ3[property] =3D current; } return new Class(pr0t0typ3); }, =09 /*=09 Property: implement Implements the passed in properties to the base Class prototypes, = altering the base class, unlike . Arguments: properties - the properties to add to the base class. =09 Example: >var Animal =3D new Class({ > initialize: function(age){ > this.age =3D age; > } >}); >Animal.implement({ > setName: function(name){ > this.name =3D name > } >}); >var myAnimal =3D new Animal(20); >myAnimal.setName('Micia'); >alert(myAnimal.name); //alerts 'Micia' */ =09 implement: function(properties){ for (var property in properties) this.prototype[property] =3D = properties[property]; } }; /* Section: Object related Functions */ /* Function: Object.extend Copies all the properties from the second passed object to the first = passed Object. If you do myWhatever.extend =3D Object.extend the first parameter will = become myWhatever, and your extend function will only need one = parameter. =09 Example: >var firstOb =3D { > 'name': 'John', > 'lastName': 'Doe' >}; >var secondOb =3D { > 'age': '20', > 'sex': 'male', > 'lastName': 'Dorian' >}; >Object.extend(firstOb, secondOb); >//firstOb will become:=20 >{ > 'name': 'John', > 'lastName': 'Dorian', > 'age': '20', > 'sex': 'male' >}; =09 Returns: The first object, extended. */ Object.extend =3D function(){ var args =3D arguments; if (args[1]) args =3D [args[0], args[1]]; else args =3D [this, args[0]]; for (var property in args[1]) args[0][property] =3D args[1][property]; return args[0]; }; /* Function: Object.Native Will add a .extend method to the objects passed as a parameter, = equivalent to Arguments: a number of classes/native javascript objects */ Object.Native =3D function(){ for (var i =3D 0; i < arguments.length; i++) arguments[i].extend =3D = Class.prototype.implement; }; new Object.Native(Function, Array, String, Number); Function.extend({ parentize: function(current){ var previous =3D this; return function(){ this.parent =3D previous; return current.apply(this, arguments); }; } }); /*=20 Script: Function.js Contains Function prototypes, utility functions and Chain. Dependencies:=20 Author: Valerio Proietti, License: MIT-style license. Credits: - Some functions are inspired by those found in prototype.js = (c) 2005 Sam Stephenson sam [at] conio = [dot] net, MIT-style license */ /* Class: Function A collection of The Function Object prototype methods. */ Function.extend({ =09 /* Property: pass Shortcut to create closures with arguments and bind. =09 Returns: a function. =09 Arguments: args - the arguments to pass to that function (array or single = variable) bind - optional, the object that the "this" of the function will refer = to. =09 Example: >myFunction.pass([arg1, arg2], myElement); */ =09 pass: function(args, bind){ var fn =3D this; if ($type(args) !=3D 'array') args =3D [args]; return function(){ return fn.apply(bind || fn._proto_ || fn, args); }; }, =09 /* Property: bind method to easily create closures with "this" altered. =09 Arguments: bind - optional, the object that the "this" of the function will refer = to. =09 Returns: a function. =09 Example: >function myFunction(){ > this.setStyle('color', 'red'); > // note that 'this' here refers to myFunction, not an element > // we'll need to bind this function to the element we want to alter >}; >var myBoundFunction =3D myFunction.bind(myElement); >myBoundFunction(); // this will make the element myElement red. */ =09 bind: function(bind){ var fn =3D this; return function(){ return fn.apply(bind, arguments); }; }, =09 /* Property: bindAsEventListener cross browser method to pass event firer =09 Arguments: bind - optional, the object that the "this" of the function will refer = to. =09 Returns: a function with the parameter bind as its "this" and as a pre-passed = argument event or window.event, depending on the browser. =09 Example: >function myFunction(event){ > alert(event.clientx) //returns the coordinates of the mouse.. >}; >myElement.onclick =3D myFunction.bindAsEventListener(myElement); */ =09 bindAsEventListener: function(bind){ var fn =3D this; return function(event){ fn.call(bind, event || window.event); return false; }; }, =09 /* Property: delay Delays the execution of a function by a specified duration. =09 Arguments: ms - the duration to wait in milliseconds bind - optional, the object that the "this" of the function will refer = to. =09 Example: >myFunction.delay(50, myElement) //wait 50 milliseconds, then call = myFunction and bind myElement to it >(function(){alert('one second later...')}).delay(1000); //wait a = second and alert */ =09 delay: function(ms, bind){ return setTimeout(this.bind(bind || this._proto_ || this), ms); }, =09 /* Property: periodical Executes a function in the specified intervals of time =09 Arguments: ms - the duration of the intervals between executions. bind - optional, the object that the "this" of the function will refer = to. */ =09 periodical: function(ms, bind){ return setInterval(this.bind(bind || this._proto_ || this), ms); } }); /* Section: Utility Functions */ /* Function: $clear clears a timeout or an Interval. Returns: null Arguments: timer - the setInterval or setTimeout to clear. Example: >var myTimer =3D myFunction.delay(5000); //wait 5 seconds and execute = my function. >myTimer =3D $clear(myTimer); //nevermind See also: , */ function $clear(timer){ clearTimeout(timer); clearInterval(timer); return null; }; /* Function: $type Returns the type of object that matches the element passed in. Arguments: obj - the object to inspect. Example: >var myString =3D 'hello'; >$type(myString); //returns "string" Returns: 'function' - if obj is a function 'textnode' - if obj is a node but not an element 'element' - if obj is a DOM element 'array' - if obj is an array 'object' - if obj is an object 'string' - if obj is a string 'number' - if obj is a number false - (boolean) if the object is not defined or none of the above, or = if it's an empty string. */ =09 function $type(obj){ if (!obj) return false; var type =3D false; if (obj instanceof Function) type =3D 'function'; else if (obj.nodeName){ if (obj.nodeType =3D=3D 3 && !/\S/.test(obj.nodeValue)) type =3D = 'textnode'; else if (obj.nodeType =3D=3D 1) type =3D 'element'; } else if (obj instanceof Array) type =3D 'array'; else if (typeof obj =3D=3D 'object') type =3D 'object'; else if (typeof obj =3D=3D 'string') type =3D 'string'; else if (typeof obj =3D=3D 'number' && isFinite(obj)) type =3D = 'number'; return type; }; /*Class: Chain*/ var Chain =3D new Class({ =09 /* Property: chain adds a function to the Chain instance stack. =09 Arguments: fn - the function to append. =09 Returns: the instance of the class. =09 Example: >var myChain =3D new Chain(); >myChain.chain(myFunction).chain(myFunction2); */ =09 chain: function(fn){ this.chains =3D this.chains || []; this.chains.push(fn); return this; }, =09 /* Property: callChain Executes the first function of the Chain instance stack, then removes = it. The first function will then become the second. Example: >myChain.callChain(); //executes myFunction >myChain.callChain(); //executes myFunction2 */ =09 callChain: function(){ if (this.chains && this.chains.length) this.chains.splice(0, = 1)[0].delay(10, this); }, /* Property: clearChain Clears the stack of a Chain instance. */ =09 clearChain: function(){ this.chains =3D []; } }); /* Script: Array.js Contains Array prototypes and the function <$A>; Dependencies: =09 Author: Valerio Proietti, License: MIT-style license. */ /* Class: Array A collection of The Array Object prototype methods. */ if (!Array.prototype.forEach){ =09 /*=09 Mehod: forEach Iterates through an array; note: is the preferred syntax = for this funciton. =09 Arguments: fn - the function to execute with each item in the array bind - optional, the object that the "this" of the function will refer = to. =09 Example: >var Animals =3D ['Cat', 'Dog', 'Coala']; >Animals.forEach(function(animal){ > document.write(animal) >}); See also: */ =09 Array.prototype.forEach =3D function(fn, bind){ for(var i =3D 0; i < this.length ; i++) fn.call(bind, this[i], i); }; } Array.extend({ =09 /* Property: each Same as . */ =09 each: Array.prototype.forEach, =09 /*=09 Property: copy Copy the array and returns it. =09 Returns: an Array =09 Example: >var letters =3D ["a","b","c"]; >var copy =3D ["a","b","c"].copy(); */ =09 copy: function(){ var newArray =3D []; for (var i =3D 0; i < this.length; i++) newArray.push(this[i]); return newArray; }, =09 /*=09 Property: remove Removes an item from the array. =09 Arguments: item - the item to remove =09 Returns: the Array without the item removed. =09 Example: >["1","2","3"].remove("2") // ["1","3"]; */ =09 remove: function(item){ for (var i =3D 0; i < this.length; i++){ if (this[i] =3D=3D item) this.splice(i, 1); } return this; }, =09 /*=09 Property: test Tests an array for the presence of an item. =09 Arguments: item - the item to search for in the array. =09 Returns: true - the item was found false - it wasn't =09 Example: >["a","b","c"].test("a"); // true >["a","b","c"].test("d"); // false */ =09 test: function(item){ for (var i =3D 0; i < this.length; i++){ if (this[i] =3D=3D item) return true; }; return false; }, =09 /*=09 Property: extend Extends an array with another =09 Arguments: newArray - the array to extend ours with =09 Example: >var Animals =3D ['Cat', 'Dog', 'Coala']; >Animals.extend(['Lizard']); >//Animals is now: ['Cat', 'Dog', 'Coala', 'Lizard']; */ =09 extend: function(newArray){ for (var i =3D 0; i < newArray.length; i++) this.push(newArray[i]); return this; }, =09 /*=09 Property: associate Creates an associative array based on the array of keywords passed in. =09 Arguments: keys - the array of keywords. =09 Example: (sart code) var Animals =3D ['Cat', 'Dog', 'Coala', 'Lizard']; var Speech =3D ['Miao', 'Bau', 'Fruuu', 'Mute']; var Speeches =3D Animals.associate(speech); //Speeches['Miao'] is now Cat. //Speeches['Bau'] is now Dog. //... (end) */ =09 associate: function(keys){ var newArray =3D []; for (var i =3D0; i < this.length; i++) newArray[keys[i]] =3D this[i]; return newArray; } }); /* Section: Utility Functions */ /* Function: $A() Same as , but as function.=20 Useful to apply Array prototypes to iterable objects, as a collection = of DOM elements or the arguments object. =09 Example: >function myFunction(){ > $A(arguments).each(argument, function(){ > alert(argument); > }); >}; >//the above will alert all the arguments passed to the function = myFunction. */ function $A(array){ return Array.prototype.copy.call(array); }; /* Script: String.js Contains String prototypes and Number prototypes. Dependencies: =09 Author: Valerio Proietti, License: MIT-style license. */ /* Class: String A collection of The String Object prototype methods. */ String.extend({ =09 /*=09 Property: test Tests a string with a regular expression. =09 Arguments: regex - the regular expression you want to match the string with params - optional, any parameters you want to pass to the regex =09 Returns: an array with the instances of the value searched for or empty array. =09 Example: >"I like cookies".test("cookie"); // returns ["I like cookies", = "cookie"] >"I like cookies".test("COOKIE", "i") //ignore case >"I like cookies because cookies are good".test("COOKIE", "ig"); = //ignore case, find all instances. >"I like cookies".test("cake"); //returns empty array */ =09 test: function(regex, params){ return this.match(new RegExp(regex, params)); }, =09 /*=09 Property: toInt parses a string to an integer. =09 Returns: either an int or "NaN" if the string is not a number. =09 Example: >var value =3D "10px".toInt(); // value is 10 */ toInt: function(){ return parseInt(this); }, =09 /*=09 Property: camelCase Converts a hiphenated string to a camelcase string. =09 Example: >"I-like-cookies".camelCase(); //"ILikeCookies" =09 Returns: the camel cased string */ =09 camelCase: function(){ return this.replace(/-\D/gi, function(match){ return match.charAt(match.length - 1).toUpperCase(); }); }, =09 /*=09 Property: capitalize Converts the first letter in each word of a string to Uppercase. =09 Example: >"i like cookies".capitalize(); //"I Like Cookies" =09 Returns: the capitalized string */ capitalize: function(){ return this.toLowerCase().replace(/\b[a-z]/g, function(match){ return match.toUpperCase(); }); }, =09 /*=09 Property: trim Trims the leading and trailing spaces off a string. =09 Example: >" i like cookies ".trim() //"i like cookies" =09 Returns: the trimmed string */ =09 trim: function(){ return this.replace(/^\s*|\s*$/g, ''); }, =09 /*=09 Property: clean trims () a string AND removes all the double spaces in a = string. =09 Returns: the cleaned string =09 Example: >" i like cookies \n\n".clean() //"i like cookies" */ clean: function(){ return this.replace(/\s\s/g, ' ').trim(); }, /*=09 Property: rgbToHex Converts an RGB value to hexidecimal. The string must be in the format = of "rgb(255, 255, 255)" or "rgba(255, 255, 255, 1)"; =09 Arguments: array - boolean value, defaults to false. Use true if you want the = array ['FF', '33', '00'] as output instead of #FF3300 =09 Returns: hex string or array. returns transparent if the fourth value of rgba = in input string is 0, =09 Example: >"rgb(17,34,51)".rgbToHex(); //"#112233" >"rgba(17,34,51,0)".rgbToHex(); //"transparent" >"rgb(17,34,51)".rgbToHex(true); //[11,22,33] */ =09 rgbToHex: function(array){ var rgb =3D this.test('([\\d]{1,3})', 'g'); if (rgb[3] =3D=3D 0) return 'transparent'; var hex =3D []; for (var i =3D 0; i < 3; i++){ var bit =3D (rgb[i]-0).toString(16); hex.push(bit.length =3D=3D 1 ? '0'+bit : bit); } var hexText =3D '#'+hex.join(''); if (array) return hex; else return hexText; }, =09 /*=09 Property: hexToRgb Converts a hexidecimal color value to RGB. Input string must be the = hex color value (with or without the hash). Also accepts triplets = ('333'); =09 Arguments: array - boolean value, defaults to false. Use true if you want the = array ['255', '255', '255'] as output instead of "rgb(255,255,255)"; =09 Returns: rgb string or array. =09 Example: >"#112233".hexToRgb(); //"rgb(17,34,51)" >"#112233".hexToRgb(true); //[17,34,51] */ =09 hexToRgb: function(array){ var hex =3D = this.test('^[#]{0,1}([\\w]{1,2})([\\w]{1,2})([\\w]{1,2})$'); var rgb =3D []; for (var i =3D 1; i < hex.length; i++){ if (hex[i].length =3D=3D 1) hex[i] +=3D hex[i]; rgb.push(parseInt(hex[i], 16)); } var rgbText =3D 'rgb('+rgb.join(',')+')'; if (array) return rgb; else return rgbText; } }); /* Class: Number contains the internal method toInt. */ Number.extend({ /* Property: toInt Returns this number; useful because toInt must work on both Strings = and Numbers. */ toInt: function(){ return this; } }); /* Script: Element.js Contains useful Element prototypes, to be used with the dollar function = <$>. =09 Dependencies: , , , Author: Valerio Proietti, =09 License: MIT-style license. =09 Credits: - Some functions are inspired by those found in prototype.js = (c) 2005 Sam Stephenson sam [at] conio = [dot] net, MIT-style license */ /* Class: Element Custom class to allow all of its methods to be used with any DOM = element via the dollar function <$>. */ var Element =3D new Class({ /* Property: initialize Creates a new element of the type passed in. =09 Arguments: el - the tag name for the element you wish to create. =09 Example: >var div =3D new Element('div'); */ initialize: function(el){ if ($type(el) =3D=3D 'string') el =3D document.createElement(el); return $(el); }, inject: function(el, where){ el =3D $(el) || new Element(el); switch(where){ case "before": $(el.parentNode).insertBefore(this, el); break; case "after": { if (!el.getNext()) $(el.parentNode).appendChild(this); else $(el.parentNode).insertBefore(this, el.getNext()); } break; case "inside": el.appendChild(this); break; } return this; }, =09 /* Property: injectBefore Inserts the Element before the passed element. =09 Parameteres: el - a string representing the element to be injected in (myElementId, = or div), or an element reference. If you pass div or another tag, the element will be created. =09 Example: >html:=20 >
>
>js: >$('mySecondElement').injectBefore('myElement'); >resulting html >
>
*/ =09 injectBefore: function(el){ return this.inject(el, 'before'); }, =09 /* =20 Property: injectAfter Same as , but inserts the element after. */ =09 injectAfter: function(el){ return this.inject(el, 'after'); }, /* =20 Property: injectInside Same as , but inserts the element inside. */ =09 injectInside: function(el){ return this.inject(el, 'inside'); }, /* =20 Property: adopt Inserts the passed element inside the Element. Works as = but in reverse. =09 Parameteres: el - a string representing the element to be injected in (myElementId, = or div), or an element reference. If you pass div or another tag, the element will be created. */ =09 adopt: function(el){ this.appendChild($(el) || new Element(el)); return this; }, =09 /* =20 Property: remove Removes the Element from the DOM. =09 Example: >$('myElement').remove() //bye bye */ =09 remove: function(){ this.parentNode.removeChild(this); }, =09 /* =20 Property: clone Clones the Element and returns the cloned one. =09 Returns:=20 the cloned element =09 Example: >var clone =3D $('myElement').clone().injectAfter('myElement'); >//clones the Element and append the clone after the Element. */ =09 clone: function(contents){ return $(this.cloneNode(contents || true)); }, /* =20 Property: replaceWith Replaces the Element with an element passed. =09 Parameteres: el - a string representing the element to be injected in (myElementId, = or div), or an element reference. If you pass div or another tag, the element will be created. =09 Returns: the passed in element =09 Example: >$('myOldElement').replaceWith($('myNewElement')); //$('myOldElement') = is gone, and $('myNewElement') is in its place. */ =09 replaceWith: function(el){ var el =3D $(el) || new Element(el); this.parentNode.replaceChild(el, this); return el; }, =09 /* =20 Property: appendText Appends text node to a DOM element. Arguments: text - the text to append. =09 Example: >
hey
>$('myElement').appendText(' howdy'); //myElement innerHTML is now = "hey howdy" */ appendText: function(text){ if (this.getTag() =3D=3D 'style' && window.ActiveXObject) = this.styleSheet.cssText =3D text; else this.appendChild(document.createTextNode(text)); return this; }, =09 /* Property: hasClass Tests the Element to see if it has the passed in className. =09 Returns: true - the Element has the class false - it doesn't =20 Arguments: className - the class name to test. =20 Example: >
>$('myElement').hasClass('testClass'); //returns true */ hasClass: function(className){ return !!this.className.test("\\b"+className+"\\b"); }, /*=09 Property: addClass Adds the passed in class to the Element, if the element doesnt already = have it. =09 Arguments: className - the class name to add =09 Example:=20 >
>$('myElement').addClass('newClass'); //
*/ =09 addClass: function(className){ if (!this.hasClass(className)) this.className =3D (this.className+' = '+className.trim()).clean(); return this; }, =09 /*=09 Property: removeClass works like , but removes the class from the element. */ removeClass: function(className){ if (this.hasClass(className)) this.className =3D = this.className.replace(className.trim(), '').clean(); return this; }, /*=09 Property: toggleClass Adds or removes the passed in class name to the element, depending on = if it's present or not. =09 Arguments: className - the class to add or remove =09 Example: >
>$('myElement').toggleClass('myClass'); >
>$('myElement').toggleClass('myClass'); >
*/ =09 toggleClass: function(className){ if (this.hasClass(className)) return this.removeClass(className); else return this.addClass(className); }, =09 /* Property: setStyle=09 Sets a css property to the Element. =09 Arguments: property - the property to set value - the value to which to set it =09 Example: >$('myElement').setStyle('width', '300px'); //the width is now 300px */ =09 setStyle: function(property, value){ if (property =3D=3D 'opacity') this.setOpacity(parseFloat(value)); else this.style[property.camelCase()] =3D value; return this; }, /* Property: setStyles Applies a collection of styles to the Element. =09 Arguments: source - an object or string containing all the styles to apply =09 Examples: >$('myElement').setStyles({ > border: '1px solid #000', > width: '300px', > height: '400px' >}); OR =09 >$('myElement').setStyle('border: 1px solid #000; width: 300px; = height: 400px;'); */ =09 setStyles: function(source){ if ($type(source) =3D=3D 'object') { for (var property in source) this.setStyle(property, = source[property]); } else if ($type(source) =3D=3D 'string') { if (window.ActiveXObject) this.cssText =3D source; else this.setAttribute('style', source); } return this; }, =09 /*=09 Property: setOpacity Sets the opacity of the Element, and sets also visibility =3D=3D = "hidden" if opacity =3D=3D 0, and visibility =3D "visible" if opacity = =3D=3D 1. =09 Arguments: opacity - Accepts numbers from 0 to 1. =09 Example: >$('myElement').setOpacity(0.5) //make it 50% transparent */ =09 setOpacity: function(opacity){ if (opacity =3D=3D 0){ if(this.style.visibility !=3D "hidden") this.style.visibility =3D = "hidden"; } else { if(this.style.visibility !=3D "visible") this.style.visibility =3D = "visible"; } if (window.ActiveXObject) this.style.filter =3D "alpha(opacity=3D" + = opacity*100 + ")"; this.style.opacity =3D opacity; return this; }, =09 /*=09 Property: getStyle Returns the style of the Element given the property passed in. =09 Arguments: property - the css style property you want to retrieve =09 Example: >$('myElement').getStyle('width'); //returns "400px" >//but you can also use >$('myElement').getStyle('width').toInt(); //returns "400" =09 Returns: the style as a string */ =09 getStyle: function(property){ var proPerty =3D property.camelCase(); var style =3D this.style[proPerty] || false; if (!style) { if (document.defaultView) style =3D = document.defaultView.getComputedStyle(this,null).getPropertyValue(propert= y); else if (this.currentStyle) style =3D this.currentStyle[proPerty]; } if (style && ['color', 'backgroundColor', = 'borderColor'].test(proPerty) && style.test('rgb')) style =3D = style.rgbToHex(); return style; }, /*=09 Property: addEvent Attaches an event listener to a DOM element. =09 Arguments: action - the event to monitor ('click', 'load', etc) fn - the function to execute =09 Example: >$('myElement').addEvent('click', function(){alert('clicked!')}); */ addEvent: function(action, fn){ this[action+fn] =3D fn.bind(this); if (this.addEventListener) this.addEventListener(action, fn, false); else this.attachEvent('on'+action, this[action+fn]); var el =3D this; if (this !=3D window) Unload.functions.push(function(){ el.removeEvent(action, fn); el[action+fn] =3D null; }); return this; }, =09 /*=09 Property: removeEvent Works as Element.addEvent, but instead removes the previously added = event listener. */ =09 removeEvent: function(action, fn){ if (this.removeEventListener) this.removeEventListener(action, fn, = false); else this.detachEvent('on'+action, this[action+fn]); return this; }, getBrother: function(what){ var el =3D this[what+'Sibling']; while ($type(el) =3D=3D 'textnode') el =3D el[what+'Sibling']; return $(el); }, =09 /* Property: getPrevious Returns the previousSibling of the Element, excluding text nodes. =09 Example: >$('myElement').getPrevious(); //get the previous DOM element from = myElement =09 Returns: the sibling element or undefined if none found. */ =09 getPrevious: function(){ return this.getBrother('previous'); }, =09 /* Property: getNext Works as Element.getPrevious, but tries to find the nextSibling. */ =09 getNext: function(){ return this.getBrother('next'); }, =09 /* Property: getNext Works as , but tries to find the firstChild. */ getFirst: function(){ var el =3D this.firstChild; while ($type(el) =3D=3D 'textnode') el =3D el.nextSibling; return $(el); }, /* Property: getLast Works as , but tries to find the lastChild. */ getLast: function(){ var el =3D this.lastChild; while ($type(el) =3D=3D 'textnode') el =3D el.previousSibling; return $(el); }, /*=09 Property: setProperty Sets an attribute for the Element. =09 Arguments: property - the property to assign the value passed in value - the value to assign to the property passed in =09 Example: >$('myImage').setProperty('src', 'whatever.gif'); //myImage now points = to whatever.gif for its source */ setProperty: function(property, value){ var el =3D false; switch(property){ case 'class': this.className =3D value; break; case 'style': this.setStyles(value); break; case 'name': if (window.ActiveXObject && this.getTag() =3D=3D = 'input'){ el =3D $(document.createElement('')); $A(this.attributes).each(function(attribute){ if (attribute.name !=3D 'name') el.setProperty(attribute.name, = attribute.value); =09 }); if (this.parentNode) this.replaceWith(el); }; default: this.setAttribute(property, value); } return el || this; }, =09 /*=09 Property: setProperties Sets numerous attributes for the Element. =09 Arguments: source - an object with key/value pairs. =09 Example: >$('myElement').setProperties({ > src: 'whatever.gif', > alt: 'whatever dude' >}); >3D"whatever */ =09 setProperties: function(source){ for (var property in source) this.setProperty(property, = source[property]); return this; }, =09 /* Property: setHTML Sets the innerHTML of the Element. =09 Arguments: html - the new innerHTML for the element. =09 Example: >$('myElement').setHTML(newHTML) //the innerHTML of myElement is now = =3D newHTML */ =09 setHTML: function(html){ this.innerHTML =3D html; return this; }, =09 /*=09 Property: getProperty Gets the an attribute of the Element. =09 Arguments: property - the attribute to retrieve =09 Example: >$('myImage').getProperty('src') // returns whatever.gif =09 Returns: the value, or an empty string */ =09 getProperty: function(property){ return this.getAttribute(property); }, =09 /* Property: getTag Returns the tagName of the element in lower case. =09 Example: >$('myImage').getTag() // returns 'img' =09 Returns: The tag name in lower case */ =09 getTag: function(){ return this.tagName.toLowerCase(); }, =09 getOffset: function(what){ what =3D what.capitalize(); var el =3D this; var offset =3D 0; do { offset +=3D el['offset'+what] || 0; el =3D el.offsetParent; } while (el); return offset; }, /*=09 Property: getTop Returns the distance from the top of the window to the Element. */ =09 getTop: function(){ return this.getOffset('top'); }, =09 /*=09 Property: getLeft Returns the distance from the left of the window to the Element. */ =09 getLeft: function(){ return this.getOffset('left'); }, =09 /*=09 Property: getValue Returns the value of the Element, if its tag is textarea, select or = input. */ =09 getValue: function(){ var value =3D false; switch(this.getTag()){ case 'select': value =3D = this.getElementsByTagName('option')[this.selectedIndex].value; break; case 'input': if ( (this.checked && ['checkbox', = 'radio'].test(this.type)) || (['hidden', 'text', = 'password'].test(this.type)) )=20 value =3D this.value; break; case 'textarea': value =3D this.value; } return value; } }); new Object.Native(Element); Element.extend({ hasClassName: Element.prototype.hasClass, addClassName: Element.prototype.addClass, removeClassName: Element.prototype.removeClass, toggleClassName: Element.prototype.toggleClass }); /* Section: Utility Functions */ /* Function: $Element Applies a method with the passed in args to the passed in element. = Useful if you dont want to extend the element =09 Arguments: el - the element method - a string representing the Element Class method to execute on = that element args - an array representing the arguments to pass to that method =09 Example: >$Element(el, 'hasClass', className) //true or false */ function $Element(el, method, args){ if ($type(args) !=3D 'array') args =3D [args]; return Element.prototype[method].apply(el, args); }; /* Function: $() returns the element passed in with all the Element prototypes applied. =09 Arguments: el - a reference to an actual element or a string representing the id = of an element =09 Example: >$('myElement') // gets a DOM element by id with all the Element = prototypes applied. >var div =3D document.getElementById('myElement'); >$(div) //returns an Element also with all the mootools extentions = applied. =09 You'll use this when you aren't sure if a variable is an actual element = or an id, as well as just shorthand for document.getElementById(). =09 Returns: a DOM element or false (if no id was found) =09 Note: you need to call $ on an element only once to get all the prototypes. But its no harm to call it multiple times, as it will detect if it has = been already extended. */ function $(el){ if ($type(el) =3D=3D 'string') el =3D document.getElementById(el); if ($type(el) =3D=3D 'element'){ if (!el.extend){ Unload.elements.push(el); el.extend =3D Object.extend; el.extend(Element.prototype); } return el; } else return false; }; window.addEvent =3D document.addEvent =3D Element.prototype.addEvent; window.removeEvent =3D document.removeEvent =3D = Element.prototype.removeEvent; var Unload =3D { elements: [], functions: [], vars: [], unload: function(){ Unload.functions.each(function(fn){ fn(); }); =09 window.removeEvent('unload', window.removeFunction); =09 Unload.elements.each(function(el){ for(var p in Element.prototype){ window[p] =3D null; document[p] =3D null; el[p] =3D null; } el.extend =3D null; }); } =09 }; window.removeFunction =3D Unload.unload; window.addEvent('unload', window.removeFunction); /* Script: Fx.js Applies visual transitions to any element. Contains Fx.Base, Fx.Style = and Fx.Styles Dependencies: , , , , Author: Valerio Proietti, License: MIT-style license. */ var Fx =3D fx =3D {}; /* Class: Fx.Base Base class for the Mootools fx library. =09 Options: onStart - the function to execute as the effect begins; nothing = () by default. onComplete - the function to execute after the effect has processed; = nothing () by default. transition - the equation to use for the effect see ; = default is duration - the duration of the effect in ms; 500 is the default. unit - the unit is 'px' by default (other values include things like = 'em' for fonts or '%'). wait - boolean: to wait or not to wait for a current transition to end = before running another of the same instance. defaults to true. fps - the frames per second for the transition; default is 30 */ Fx.Base =3D new Class({ setOptions: function(options){ this.options =3D Object.extend({ onStart: Class.empty, onComplete: Class.empty, transition: Fx.Transitions.sineInOut, duration: 500, unit: 'px', wait: true, fps: 50 }, options || {}); }, step: function(){ var time =3D new Date().getTime(); if (time < this.time + this.options.duration){ this.cTime =3D time - this.time; this.setNow(); } else { this.options.onComplete.pass(this.element, this).delay(10); this.clearTimer(); this.callChain(); this.now =3D this.to; } this.increase(); }, =09 /*=09 Property: set Immediately sets the value with no transition. =09 Arguments: to - the point to jump to =09 Example: >var myFx =3D new Fx.Style('myElement', 'opacity').set(0); //will make = it immediately transparent */ =09 set: function(to){ this.now =3D to; this.increase(); return this; }, =09 setNow: function(){ this.now =3D this.compute(this.from, this.to); }, compute: function(from, to){ return this.options.transition(this.cTime, from, (to - from), = this.options.duration); }, =09 /* Property: custom Executes an effect from one position to the other. =09 Arguments: from - integer: staring value to - integer: the ending value =09 Examples: >var myFx =3D new Fx.Style('myElement', 'opacity').custom(0,1); = //display a transition from transparent to opaque. */ =09 custom: function(from, to){ if (!this.options.wait) this.clearTimer(); if (this.timer) return; this.options.onStart.pass(this.element, this).delay(10); this.from =3D from; this.to =3D to; this.time =3D new Date().getTime(); this.timer =3D this.step.periodical(Math.round(1000/this.options.fps), = this); return this; }, =09 /* Property: clearTimer Stops processing the transition. */ clearTimer: function(){ this.timer =3D $clear(this.timer); return this; }, =09 setStyle: function(element, property, value){ element.setStyle(property, value + this.options.unit); } }); Fx.Base.implement(new Chain); /*=09 Class: Fx.Style The Style effect; Extends , inherits all its properties. Used = to transition any css property from one value to another. Arguments: el - the $(element) to apply the style transition to property - the property to transition options - the Fx.Base options (see: ) =09 Example: >var marginChange =3D new fx.Style('myElement', 'margin-top', = {duration:500}); >marginChange.custom(10, 100); */ Fx.Style =3D Fx.Base.extend({ initialize: function(el, property, options){ this.element =3D $(el); this.setOptions(options); this.property =3D property.camelCase(); }, =09 /*=09 Property: hide Same as (0) */ =09 hide: function(){ return this.set(0); }, /*=09 Property: goTo will apply , setting the starting point to the current = position. =09 Arguments: val - the ending value */ goTo: function(val){ return this.custom(this.now || 0, val); }, increase: function(){ this.setStyle(this.element, this.property, this.now); } }); /* Class: Fx.Styles Allows you to animate multiple css properties at once; Extends = , inherits all its properties. =09 Arguments: el - the $(element) to apply the styles transition to options - the fx options (see: ) Example: >var myEffects =3D new fx.Styles('myElement', {duration: 1000, = transition: fx.linear}); >myEffects.custom({ > 'height': [10, 100], > 'width': [900, 300] >}); */ Fx.Styles =3D Fx.Base.extend({ initialize: function(el, options){ this.element =3D $(el); this.setOptions(options); this.now =3D {}; }, setNow: function(){ for (var p in this.from) this.now[p] =3D this.compute(this.from[p], = this.to[p]); }, =09 /* Property: custom The function you'll actually use to execute a transition. =09 Arguments: an object =09 Example: see */ custom: function(objFromTo){ if (this.timer && this.options.wait) return; var from =3D {}; var to =3D {}; for (var p in objFromTo){ from[p] =3D objFromTo[p][0]; to[p] =3D objFromTo[p][1]; } return this.parent(from, to); }, increase: function(){ for (var p in this.now) this.setStyle(this.element, p, this.now[p]); } }); /* Class: Element Custom class to allow all of its methods to be used with any DOM = element via the dollar function <$>. */ Element.extend({ /* Property: effect Applies an to the Element; This a shortcut for . Example: >var myEffect =3D $('myElement').effect('height', {duration: 1000, = transition: Fx.Transitions.linear}); >myEffect.custom(10, 100); */ =09 effect: function(property, options){ return new Fx.Style(this, property, options); }, =09 /*=09 Property: effects Applies an to the Element; This a shortcut for = . =09 Example: >var myEffects =3D $(myElement).effects({duration: 1000, transition: = Fx.Transitions.sineInOut}); >myEffects.custom({'height': [10, 100], 'width': [900, 300]}); */ effects: function(options){ return new Fx.Styles(this, options); } }); /* Class: Fx.Transitions A collection of transition equations for use with the Class. =09 See Also: for a whole bunch of transitions. =09 Credits: Easing Equations, (c) 2003 Robert Penner = (http://www.robertpenner.com/easing/), Open Source BSD License. */ Fx.Transitions =3D { =09 /* Property: linear */ linear: function(t, b, c, d){ return c*t/d + b; }, =09 /* Property: sineInOut */ sineInOut: function(t, b, c, d){ return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b; } }; /* Script: Dom.js Css Query related function and extensions =09 Dependencies: , , , , Author: Valerio Proietti, License: MIT-style license. */ /* Section: Utility Functions */ /* Function: $S() Selects DOM elements based on css selector(s). Extends the elements = upon matching. =09 Arguments: any number of css selectors =09 Example: >$S('a') //an array of all anchor tags on the page >$S('a', 'b') //an array of all anchor and bold tags on the page >$S('#myElement') //array containing only the element with id =3D = myElement >$S('#myElement a.myClass') //an array of all anchor tags with the = class "myClass" within the DOM element with id "myElement" Returns: array - array of all the dom elements matched */ function $S(){ var els =3D []; $A(arguments).each(function(sel){ if ($type(sel) =3D=3D 'string') = els.extend(document.getElementsBySelector(sel)); else if ($type(sel) =3D=3D 'element') els.push($(sel)); }); return $Elements(els); }; /* Function: $$ Same as <$S> */ var $$ =3D $S; /*=20 Function: $E=20 Selects a single (i.e. the first found) Element based on the selector = passed in and an optional filter element. =09 Arguments: selector - the css selector to match filter - optional; a DOM element to limit the scope of the selector = match; defaults to document. =09 Example: >$E('a', 'myElement') //find the first anchor tag inside the DOM element = with id 'myElement' =09 Returns: a DOM element - the first element that matches the selector */ function $E(selector, filter){ return ($(filter) || document).getElement(selector); }; /* Function: $ES Returns a collection of Elements that match the selector passed in = limited to the scope of the optional filter. See Also: for an alternate syntax. =09 Retunrs: array - an array of dom elements that match the selector within the = filter =09 Arguments: selector - css selector to match filter - optional; a DOM element to limit the scope of the selector = match; defaults to document. =09 Examples: >$ES("a") //gets all the anchor tags; synonymous with $S("a") >$ES('a','myElement') //get all the anchor tags within $('myElement')=09 */ function $ES(selector, filter){ return ($(filter) || document).getElementsBySelector(selector); }; function $Elements(elements){ return Object.extend(elements, new Elements); }; /* Class: Element Custom class to allow all of its methods to be used with any DOM = element via the dollar function <$>. */ Element.extend({ =09 /* Property: getElements=20 Gets all the elements within an element that match the given (single) = selector. =09 Arguments: selector - the css selector to match =09 Example: >$('myElement').getElements('a'); // get all anchors within myElement =09 Credits: Say thanks to Christophe Beyls for the new = regular expression that rules getElements, a big step forward in terms = of speed. */ =09 getElements: function(selector){ var filters =3D []; selector.clean().split(' ').each(function(sel, i){ var bits =3D = sel.test('^(\\w*|\\*)(?:#(\\w+)|\\.(\\w+))?(?:\\[["\']?(\\w+)["\']?([\\*\= \^\\$]?=3D)["\']?(\\w*)["\']?\\])?$'); if (!bits) return; if (!bits[1]) bits[1] =3D '*'; var param =3D bits.remove(bits[0]).associate(['tag', 'id', 'class', = 'attribute', 'operator', 'value']); if (i =3D=3D 0){ if (param['id']){ var el =3D this.getElementById(param['id']); if (!el || (param['tag'] !=3D '*' && $(el).getTag() !=3D = param['tag'])) return false; filters =3D [el]; } else { filters =3D $A(this.getElementsByTagName(param['tag'])); } } else { if (param['id']) filters =3D = $Elements(filters).filterById(param['id']); filters =3D $Elements(filters).filterByTagName(param['tag']); } if (param['class']) filters =3D = $Elements(filters).filterByClassName(param['class']); if (param['attribute']) filters =3D = $Elements(filters).filterByAttribute(param['attribute'], param['value'], = param['operator']); }, this); filters.each(function(el){ $(el); }); return $Elements(filters); }, =09 /* Property: getElement Same as , but returns only the first. Alternate = syntax for <$E>, where filter is the Element. */ =09 getElement: function(selector){ return this.getElementsBySelector(selector)[0]; }, =09 /* Property: getElement Same as , but allows for comma separated = selectors, as in css. Alternate syntax for <$S>, where filter is the = Element. */ getElementsBySelector: function(selector){ var els =3D []; selector.split(',').each(function(sel){ els.extend(this.getElements(sel)); }, this); return $Elements(els); } }); document.extend =3D Object.extend; /* Section: document related functions */ document.extend({ /* Function: document.getElementsByClassName=20 Returns all the elements that match a specific class name.=20 Here for compatibility purposes. can also be written: = document.getElements('.className'), or $S('.className') */ getElementsByClassName: function(className){ return document.getElements('.'+className); }, getElement: Element.prototype.getElement, getElements: Element.prototype.getElements, getElementsBySelector: Element.prototype.getElementsBySelector }); /* Class: Elements Methods for dom queries arrays, as <$S>. */ var Elements =3D new Class({ =09 /* Property: action Applies the supplied actions collection to each Element in the = collection. =09 Arguments: actions - an Object with key/value pairs for the actions to apply.=20 The initialize key is executed immediatly. Keys beginning with on will add a simple event (onclick for example). Keys ending with event will add an event with . Other keys are useless. =09 Example: >$S('a').action({ > initialize: function() { > this.addClassName("anchor"); > }, > onclick: function(){ > alert('clicked!'); > }, > mouseoverevent: function(){ > alert('mouseovered!'); > } >}); */ =09 action: function(actions){ this.each(function(el){ el =3D $(el); if (actions.initialize) actions.initialize.apply(el); for(var action in actions){ var evt =3D false; if (action.test('^on[\\w]{1,}')) el[action] =3D actions[action]; else if (evt =3D action.test('([\\w-]{1,})event$')) = el.addEvent(evt[1], actions[action]); } }); }, //internal methods filterById: function(id){ var found =3D []; this.each(function(el){ if (el.id =3D=3D id) found.push(el); }); return found; }, filterByClassName: function(className){ var found =3D []; this.each(function(el){ if ($Element(el, 'hasClass', className)) found.push(el); }); return found; }, filterByTagName: function(tagName){ var found =3D []; this.each(function(el){ found.extend($A(el.getElementsByTagName(tagName))); }); return found; }, filterByAttribute: function(name, value, operator){ var found =3D []; this.each(function(el){ var att =3D el.getAttribute(name); if(!att) return; if (!operator) return found.push(el); =09 switch(operator){ case '*=3D': if (att.test(value)) found.push(el); break; case '=3D': if (att =3D=3D value) found.push(el); break; case '^=3D': if (att.test('^'+value)) found.push(el); break; case '$=3D': if (att.test(value+'$')) found.push(el); } }); return found; } }); new Object.Native(Elements); /* Script: Ajax.js Contains the ajax class. Also contains methods to generate querystings = from forms and Objects. =09 Dependencies: , , , , Author: Valerio Proietti, License: MIT-style license. */ /* Class: Ajax For all your asynchronous needs. Note: this class implements Arguments: url - the url pointing to the server-side script. options - optional, an object containing options. Options: method - 'post' or 'get' - the prototcol for the request; optional, = defaults to 'post'. postBody - if method is post, you can write parameters here. Can be a = querystring, an object or a Form element. async - boolean: asynchronous option; true uses asynchronous requests. = Defaults to true. onComplete - function to execute when the ajax request completes. onStateChange - function to execute when the state of the = XMLHttpRequest changes. update - $(element) to insert the response text of the XHR into, upon = completion of the request. evalScripts - boolean; default is false. Execute scripts in the = response text onComplete. Example: >var myAjax =3D new Ajax(url, {method: 'get'}).request(); =09 */ =09 var Ajax =3D ajax =3D new Class({ setOptions: function(options){ this.options =3D { method: 'post', postBody: null, async: true, onComplete: Class.empty, onStateChange: Class.empty, update: null, evalScripts: false }; Object.extend(this.options, options || {}); }, =09 initialize: function(url, options){ this.setOptions(options); this.url =3D url; this.transport =3D this.getTransport(); }, =09 /* Property: request Executes the ajax request. =09 Example: >var myAjax =3D new Ajax(url, {method: 'get'}); >myAjax.request(); =09 OR =09 >new Ajax(url, {method: 'get'}).request(); */ =09 request: function(){ this.transport.open(this.options.method, this.url, = this.options.async); this.transport.onreadystatechange =3D this.onStateChange.bind(this); if (this.options.method =3D=3D 'post'){ this.transport.setRequestHeader('Content-type', = 'application/x-www-form-urlencoded'); if (this.transport.overrideMimeType) = this.transport.setRequestHeader('Connection', 'close'); } switch($type(this.options.postBody)){ case 'element': this.options.postBody =3D = $(this.options.postBody).toQueryString(); break; case 'object': this.options.postBody =3D = Object.toQueryString(this.options.postBody); } if($type(this.options.postBody) =3D=3D 'string') = this.transport.send(this.options.postBody); else this.transport.send(null); return this; }, onStateChange: function(){ this.options.onStateChange.delay(10, this); if (this.transport.readyState =3D=3D 4 && this.transport.status =3D=3D = 200){ if (this.options.update) = $(this.options.update).setHTML(this.transport.responseText); this.options.onComplete.pass([this.transport.responseText, = this.transport.responseXML], this).delay(20); if (this.options.evalScripts) this.evalScripts.delay(30, this); this.transport.onreadystatechange =3D Class.empty; this.callChain(); } }, =09 /* =20 Property: evalScripts Executes scripts in the response text */ =09 evalScripts: function(){ if(scripts =3D = this.transport.responseText.match(/]*?>[\S\s]*?<\/script>/g)){ scripts.each(function(script){ eval(script.replace(/^]*?>/, '').replace(/<\/script>$/, = '')); }); } }, getTransport: function(){ if (window.XMLHttpRequest) return new XMLHttpRequest(); else if (window.ActiveXObject) return new = ActiveXObject('Microsoft.XMLHTTP'); } }); Ajax.implement(new Chain); /* Section: Object related Functions */ /* =20 Function: Object.toQuerySTring Generates a querysting from a key/pair values in an object =09 Arguments: source - the object to generate the querystring from. Returns: the query string. =09 Example: >Object.toQueryString({apple: "red", lemon: "yellow"}); //returns = "apple=3Dred&lemon=3Dyellow" */ Object.toQueryString =3D function(source){ var queryString =3D []; for (var property in source) = queryString.push(encodeURIComponent(property)+'=3D'+encodeURIComponent(so= urce[property])); return queryString.join('&'); }; /* Class: Element Custom class to allow all of its methods to be used with any DOM = element via the dollar function <$>. */ Element.extend({ =09 /* Property: send Sends a form with an ajax post request =09 Arguments: options - option collection for ajax request. See = for option list. =09 Returns: The Ajax Class Instance =09 Example: (start code)
(end) */ =09 send: function(options){ options =3D Object.extend(options, {postBody: this.toQueryString(), = method: 'post'}); return new Ajax(this.getProperty('action'), options).request(); }, =09 /* Property: toQueryString Reads the children inputs of the Element and generates a query = string, based on their values. Used internally in =09 Example: (start code)
(end) Returns: email=3Dbob@bob.com&zipCode=3D90210 */ =09 toQueryString: function(){ var queryString =3D []; $A(this.getElementsByTagName('*')).each(function(el){ var name =3D $(el).name; var value =3D el.getValue(); if (value && name) = queryString.push(encodeURIComponent(name)+'=3D'+encodeURIComponent(value)= ); }); return queryString.join('&'); } }); /* Script: Drag.js Contains Classes Drag.Base, Drag.Move and a couple of element methods = to drag and resize your elements. =09 Dependencies: , , , , Author: Valerio Proietti, License: MIT-style license. */ var Drag =3D {}; /* Class: Drag.Base Modify two css properties of an element based on the position of the = mouse. Arguments: el - the $(element) to apply the transformations to. xModifier - required. The css property to modify, based to the position = on the X axis of the mouse. defaults to none. yModifier - required. The css property to modify, based to the position = on the Y axis of the mouse pointer. defaults to none. options - optional. The options object. Options: handle - the $(element) to act as the handle for the draggable element. = defaults to the $(element) itself. onStart - function to execute when the user starts to drag (on = mousedown); optional. onComplete - optional, function to execute when the user completes the = drag. onDrag - optional, function to execute at every step of the dragged = $(element). xMax - optional, the maximum value for the x property of the dragged = $(element). xMin - optional, the minium value for the x property of the dragged = $(element). yMax - optional, the maximum value for the y property of the dragged = $(element). yMin - optional, the minium value for the y property of the dragged = $(element). */ Drag.Base =3D new Class({ setOptions: function(options){ this.options =3D Object.extend({ handle: false, unit: 'px',=20 onStart: Class.empty,=20 onComplete: Class.empty,=20 onDrag: Class.empty, xMax: false, xMin: false, yMax: false, yMin: false }, options || {}); }, initialize: function(el, xModifier, yModifier, options){ this.setOptions(options); this.element =3D $(el); this.handle =3D $(this.options.handle) || this.element; if (xModifier) this.xp =3D xModifier.camelCase(); if (yModifier) this.yp =3D yModifier.camelCase(); this.handle.onmousedown =3D this.start.bind(this); }, start: function(evt){ evt =3D evt || window.event; this.startX =3D evt.clientX; this.startY =3D evt.clientY; =09 this.handleX =3D this.startX - this.handle.getLeft(); this.handleY =3D this.startY - this.handle.getTop(); =09 this.set(evt); this.options.onStart.pass(this.element, this).delay(10); document.onmousemove =3D this.drag.bind(this); document.onmouseup =3D this.end.bind(this); return false; }, addStyles: function(x, y){ if (this.xp){ var stylex =3D this.element.getStyle(this.xp).toInt(); =09 var movex =3D function(val){ this.element.setStyle(this.xp, val+this.options.unit); }.bind(this); =09 if (this.options.xMax && stylex >=3D this.options.xMax){ if (this.clientX <=3D this.handleX+this.handle.getLeft()) = movex(stylex+x); if (stylex > this.options.xMax) movex(this.options.xMax); } else if(this.options.xMin && stylex <=3D this.options.xMin){ if (this.clientX >=3D this.handleX+this.handle.getLeft()) = movex(stylex+x); if (stylex < this.options.xMin) movex(this.options.xMin); } else movex(stylex+x); } if (this.yp){ var styley =3D this.element.getStyle(this.yp).toInt(); var movey =3D function(val){ this.element.setStyle(this.yp, val+this.options.unit); }.bind(this); if (this.options.yMax && styley >=3D this.options.yMax){ if (this.clientY <=3D this.handleY+this.handle.getTop()) = movey(styley+y); if (styley > this.options.yMax) movey(this.options.yMax); } else if(this.options.yMin && styley <=3D this.options.yMin){ if (this.clientY >=3D this.handleY+this.handle.getTop()) = movey(styley+y); if (styley < this.options.yMin) movey(this.options.yMin); } else movey(styley+y); } }, drag: function(evt){ evt =3D evt || window.event; this.clientX =3D evt.clientX; this.clientY =3D evt.clientY; this.options.onDrag.pass(this.element, this).delay(5); this.addStyles((this.clientX-this.lastMouseX), = (this.clientY-this.lastMouseY)); this.set(evt); return false; }, set: function(evt){ this.lastMouseX =3D evt.clientX; this.lastMouseY =3D evt.clientY; return false; }, end: function(){ document.onmousemove =3D null; document.onmouseup =3D null; this.options.onComplete.pass(this.element, this).delay(10); } }); /* Class: Drag.Move Extends , has additional functionality for dragging an = element (modifying its left and top values). Arguments: el - the $(element) to apply the transformations to. options - optional. The options object. =09 Options: all the drag.Base options, plus: snap - if true the element will start dragging after a certain distance = has been reached from the mousedown. defaults to true. snapDistance - integer representing the snapping distance. Default is = 8. onSnap - function to execute when the element has been dragged the = snapDistance. xModifier - the modifier to handle left and right dragging; defaults to = left. yModifier - the modifier to handle up and down dragging; defaults to = top. container - if set to an element will fill automatically = xMin/xMax/yMin/yMax based on the $(element) size and position. defaults = to false. */ Drag.Move =3D Drag.Base.extend({ extendOptions: function(options){ this.options =3D Object.extend(this.options || {}, Object.extend({ onSnap: Class.empty, droppables: [], snapDistance: 8, snap: true, xModifier: 'left', yModifier: 'top', container: false }, options || {})); }, initialize: function(el, options){ this.extendOptions(options); this.container =3D $(this.options.container); this.parent(el, this.options.xModifier, this.options.yModifier, = this.options); }, start: function(evt){ if (this.options.container) { var cont =3D $(this.options.container).getPosition(); Object.extend(this.options, { xMax: cont.right-this.element.offsetWidth, xMin: cont.left, yMax: cont.bottom-this.element.offsetHeight, yMin: cont.top }); } this.parent(evt); if (this.options.snap) document.onmousemove =3D = this.checkAndDrag.bind(this); return false; }, drag: function(evt){ this.parent(evt); this.options.droppables.each(function(drop){ if (this.checkAgainst(drop)){ if (drop.onOver && !drop.dropping) drop.onOver.pass([this.element, = this], drop).delay(10); drop.dropping =3D true; } else { if (drop.onLeave && drop.dropping) drop.onLeave.pass([this.element, = this], drop).delay(10); drop.dropping =3D false; } }, this); return false; }, checkAndDrag: function(evt){ evt =3D evt || window.event; var distance =3D Math.round(Math.sqrt(Math.pow(evt.clientX - = this.startX, 2)+Math.pow(evt.clientY - this.startY, 2))); if (distance > this.options.snapDistance){ this.set(evt); this.options.onSnap.pass(this.element, this).delay(10); document.onmousemove =3D this.drag.bind(this); this.addStyles(-(this.startX-evt.clientX), = -(this.startY-evt.clientY)); } return false; }, checkAgainst: function(el){ x =3D this.clientX+Window.getScrollLeft(); y =3D this.clientY+Window.getScrollTop(); var el =3D $(el).getPosition(); return (x > el.left && x < el.right && y < el.bottom && y > el.top); }, end: function(){ this.parent(); this.options.droppables.each(function(drop){ if (drop.onDrop && this.checkAgainst(drop)) = drop.onDrop.pass([this.element, this], drop).delay(10); }, this); } }); /* Class: Element Custom class to allow all of its methods to be used with any DOM = element via the dollar function <$>. */ Element.extend({ =09 /* Property: makeDraggable Makes an element draggable with the supplied options. =09 Arguments: options - see and for acceptable options. */ =09 makeDraggable: function(options){ return new Drag.Move(this, options); }, =09 /* Property: makeResizable Makes an element resizable (by dragging) with the supplied options. Arguments: options - see for acceptable options. */ =09 makeResizable: function(options){ return new Drag.Base(this, 'width', 'height', options); }, =09 /*=09 Property: getPosition Returns an object with width, height, left, right, top, and bottom, = representing the values of the Element =09 Example: >var myValues =3D $('myElement').getPosition(); >//myValues will be.. >{ > width: 200, > height: 300, > left: 100, > top: 50, > right: 300, > bottom: 350 >} */ getPosition: function(){ var obj =3D {}; obj.width =3D this.offsetWidth; obj.height =3D this.offsetHeight; obj.left =3D this.getLeft(); obj.top =3D this.getTop(); obj.right =3D obj.left + obj.width; obj.bottom =3D obj.top + obj.height; return obj; } }); /* Script: Window.js Window methods, as those to get the size or a better onload. =09 Dependencies: , , Author: Valerio Proietti, License: MIT-style license. */ /* Class: Window Cross browser methods to get the window size, onDomReady method. */ var Window =3D { =09 /*=09 Property: disableImageCache Disables background image chache for internex explorer, to prevent = flickering.=20 To be called if you have effects with background images, and they = flicker. =09 Example: Window.disableImageCache(); */ =09 disableImageCache: function(){ if (window.ActiveXObject) document.execCommand("BackgroundImageCache", = false, true); }, extend: Object.extend, =09 /*=09 Property: getWidth Returns an integer representing the width of the browser. */ getWidth: function(){ return window.innerWidth || document.documentElement.clientWidth || 0; }, =09 /* Property: getHeight Returns an integer representing the height of the browser. */ getHeight: function(){ return window.innerHeight || document.documentElement.clientHeight || = 0; }, /* Property: getScrollHeight Returns an integer representing the scrollHeight of the window. See Also: */ getScrollHeight: function(){ return document.documentElement.scrollHeight; }, /* Property: getScrollWidth Returns an integer representing the scrollWidth of the window. =09 See Also: */ getScrollWidth: function(){ return document.documentElement.scrollWidth; }, /*=09 Property: getScrollTop Returns an integer representing the scrollTop of the window (the = number of pixels the window has scrolled from the top). =09 See Also: */ getScrollTop: function(){ return document.documentElement.scrollTop || window.pageYOffset || 0; }, /* Property: getScrollLeft Returns an integer representing the scrollLeft of the window (the = number of pixels the window has scrolled from the left). =09 See Also: */ =09 getScrollLeft: function(){ return document.documentElement.scrollLeft || window.pageXOffset || 0; }, =09 /* Property: onDomReady Executes the passed in function when the DOM is ready (when the = document tree has loaded, not waiting for images). =09 Credits: (c) Dean Edwards/Matthias Miller/John Resig, remastered for mootools. = Later touched up by Christophe Beyls . =09 Arguments: init - the function to execute when the DOM is ready =09 Example: > Window.onDomReady(function(){alert('the dom is ready');}); */ =09 onDomReady: function(init){ var state =3D document.readyState; if (state && document.childNodes && !document.all && = !navigator.taintEnabled){ //khtml if (state.test(/loaded|complete/)) return init(); else return Window.onDomReady.pass(init).delay(100); } else if (state && window.ActiveXObject){ //ie var script =3D $('_ie_ready_'); if (!script) document.write(""); $('_ie_ready_').addEvent('readystatechange', function(){ if (this.readyState =3D=3D 'complete') init(); }); return; } else { //others var myInit =3D function() { if (arguments.callee.done) return; arguments.callee.done =3D true; init(); }; window.addEvent("load", myInit); document.addEvent("DOMContentLoaded", myInit); } } }; /*=09 Script: Cookie.js A cookie reader/creator Credits:=20 based on the functions by Peter-Paul Koch (http://quirksmode.org) =09 Dependencies: , */ /* Class: Cookie Class for creating, getting, and removing cookies. */ var Cookie =3D { =09 /*=09 Property: set Sets a cookie in the browser. =09 Arguments: key - the key (name) for the cookie value - the value to set duration - optional, how long the cookie should remain (in days); = defaults to 1 year. =09 Example: >Cookie.set("username", "Aaron", 1) //save this for a day =09 */ set: function(key, value, duration){ var date =3D new Date(); date.setTime(date.getTime()+((duration || 365)*86400000)); document.cookie =3D key+"=3D"+value+"; = expires=3D"+date.toGMTString()+"; path=3D/"; }, =09 /*=09 Property: get Gets the value of a cookie. =09 Arguments: key - the name of the cookie you wish to retrieve. =09 Example: >Cookie.get("username") //returns Aaron */ =09 get: function(key){ var myValue, myVal; document.cookie.split(';').each(function(cookie){ if(myVal =3D cookie.trim().test(key+'=3D(.*)')) myValue =3D myVal[1]; }); return myValue; }, /* Property: remove Removes a cookie from the browser. =09 Arguments: key - the name of the cookie to remove =09 Examples: >Cookie.remove("username") //bye-bye Aaron */ remove: function(key){ this.set(key, '', -1); } }; /* Script: Json.js Simple Json parser and Stringyfier, See: =09 Dependencies: , , , , Author: Valerio Proietti, License: MIT-style license. */ /* Class: Json Simple Json parser and Stringyfier, See: */ var Json =3D { /* Property: toString Converts an object to a string, to be passed in server-side scripts as = a parameter. Although its not normal usage for this class, this method = can also be used to convert functions and arrays to strings. =09 Arguments: obj - the object to convert to string =09 Returns: A json string =09 Example: (start code) Json.toString({apple: 'red', lemon: 'yellow'}); = "{"apple":"red","lemon":"yellow"}" //don't get hung up on the quotes; = it's just a string. (end) */ toString: function(el){ var string =3D []; =09 var isArray =3D function(array){ var string =3D []; array.each(function(ar){ string.push(Json.toString(ar)); }); return string.join(','); }; =09 var isObject =3D function(object){ var string =3D []; for (var property in object) = string.push('"'+property+'":'+Json.toString(object[property])); return string.join(','); }; =09 switch($type(obj)){ case 'number': string.push(obj); break; case 'string': string.push('"'+obj+'"'); break; case 'function': string.push(obj); break; case 'object': string.push('{'+isObject(obj)+'}'); break; case 'array': string.push('['+isArray(obj)+']'); } =09 return string.join(','); }, =09 /*=09 Function: evaluate converts a json string to an object. =09 Arguments: str - the string to evaluate. =09 Example: >var myObject =3D Json.evaluate('{"apple":"red","lemon":"yellow"}'); >//myObject will become {apple: 'red', lemon: 'yellow'} */ evaluate: function(str){ return eval('(' + str + ')'); } }; /* Script: Sortables.js Contains Class. =09 Dependencies: , , , , , = , =09 Author: Valerio Proietti, License: MIT-style license. */ /* Class: Sortables Creates an interface for and drop, resorting of a list. Arguments: elements - requires, the collection of elements that will become = sortables. options - an Object, see options below. Options: handles - a collection of elements to be used for drag handles. = defaults to the elements. fxDuration - the duration in ms of the effects applied to the dragged = element and its clone. defaults to 250 ms. fxTransition - the transition for the effects (see also: = ). maxOpacity - the opacity for the dragged clone onStart - function executed when the item starts dragging onComplete - function executed when the item ends dragging contain - boolean, true keeps the dragged item constrained to it's = parent element, defaults to false. */ =09 var Sortables =3D new Class({ setOptions: function(options) { this.options =3D { handles: false, fxDuration: 250, fxTransition: Fx.Transitions.sineInOut, maxOpacity: 0.5, onComplete: Class.empty, onStart: Class.empty, contain: false }; Object.extend(this.options, options || {}); }, initialize: function(elements, options){ this.setOptions(options); this.options.handles =3D this.options.handles || elements; var trash =3D new Element('div').injectInside($(document.body)); $A(elements).each(function(el, i){ var copy =3D $(el).clone().setStyles({ 'position': 'absolute', 'opacity': '0', 'display': 'none' }).injectInside(trash); var elEffect =3D el.effect('opacity', { duration: this.options.fxDuration, wait: false, transition: this.options.fxTransition }).set(1); var copyEffects =3D copy.effects({ duration: this.options.fxDuration, wait: false, transition: this.options.fxTransition, onComplete: function(){ copy.setStyle('display', 'none'); } }); var yMax =3D false; var yMin =3D false; if (this.options.contain){ yMax =3D = $(el.parentNode).getTop()+el.parentNode.offsetHeight-el.offsetHeight; yMin =3D el.parentNode.getTop(); } var dragger =3D new Drag.Move(copy, { handle: this.options.handles[i], yMax: yMax, yMin: yMin, xModifier: false, onStart: function(){ this.options.onStart.bind(this).delay(10); copy.setHTML(el.innerHTML).setStyles({ 'display': 'block', 'opacity': this.options.maxOpacity, 'top': el.getTop()+'px', 'left': el.getLeft()+'px' }); elEffect.custom(elEffect.now, this.options.maxOpacity); }.bind(this), onComplete: function(){ this.options.onComplete.bind(this).delay(10); copyEffects.custom({ 'opacity': [this.options.maxOpacity, 0], 'top': [copy.getTop(), el.getTop()] }); elEffect.custom(elEffect.now, 1); }.bind(this), onDrag: function(){ if (el.getPrevious() && copy.getTop() < = (el.getPrevious().getTop())) el.injectBefore(el.getPrevious()); else if (el.getNext() && copy.getTop() > (el.getNext().getTop())) = el.injectAfter(el.getNext()); } }); }, this); } }); /* Script: Fxpack.js More Specific Effects. Author: Valerio Proietti, License: MIT-style license. =09 Dependencies: , , , , , */ /* =09 Class: Fx.Scroll The scroller effect; scrolls an element or the window to a location. = Extends , inherits all its properties. Arguments: el - the $(element) to apply the style transition to options - the Fx.Base options (see: ) */ Fx.Scroll =3D Fx.Base.extend({ initialize: function(el, options) { this.element =3D $(el); this.setOptions(options); }, =09 /*=09 Property: down Scrolls an element down to the bottom of its scroll height. */ down: function(){ return this.custom(this.element.scrollTop, = this.element.scrollHeight-this.element.offsetHeight); }, =09 /* Property: up Scrolls an element up to the top of its scroll height. */ up: function(){ return this.custom(this.element.scrollTop, 0); }, increase: function(){ this.element.scrollTop =3D this.now; } }); /* Class: Fx.Slide The slide effect; slides an element in horizontally or vertically, the = contents will fold inside. Extends , inherits all its = properties. =09 Note: This effect works on any block element, but the element *cannot be = positioned*; no margins or absolute positions. To position the element, = put it inside another element (a wrapper div, for instance) and position = that instead. =09 Options: mode - set it to vertical or horizontal. Defaults to vertical. and all the options Example: (start code) var mySlider =3D new Fx.Slide('myElement', {duration: 500}); mySlider.toggle() //toggle the slider up and down. (end) */ Fx.Slide =3D Fx.Base.extend({ initialize: function(el, options){ this.element =3D $(el); this.wrapper =3D new = Element('div').injectAfter(this.element).setStyle('overflow', = 'hidden').adopt(this.element); this.setOptions(options); if (!this.options.mode) this.options.mode =3D 'vertical'; this.now =3D []; }, setNow: function(){ [0,1].each(function(i){ this.now[i] =3D this.compute(this.from[i], this.to[i]); }, this); }, vertical: function(){ this.margin =3D 'top'; this.layout =3D 'height'; this.startPosition =3D [this.element.scrollHeight, '0']; this.endPosition =3D ['0', -this.element.scrollHeight]; return this; }, horizontal: function(){ this.margin =3D 'left'; this.layout =3D 'width'; this.startPosition =3D [this.element.scrollWidth, '0']; this.endPosition =3D ['0', -this.element.scrollWidth]; return this; }, =09 /* Property: hide Hides the element without a transition. */ hide: function(){ this[this.options.mode](); this.wrapper.setStyle(this.layout, '0'); this.element.setStyle('margin-'+this.margin, = -this.element['scroll'+this.layout.capitalize()]+this.options.unit); return this; }, =09 /* Property: show Shows the element without a transition. */ show: function(){ this[this.options.mode](); this.wrapper.setStyle(this.layout, = this.element['scroll'+this.layout.capitalize()]+this.options.unit); this.element.setStyle('margin-'+this.margin, '0'); return this; }, =09 /* Property: toggle Hides or shows a slide element, depending on its state; */ toggle: function(mode){ this[this.options.mode](); if (this.wrapper['offset'+this.layout.capitalize()] > 0) return = this.custom(this.startPosition, this.endPosition); else return this.custom(this.endPosition, this.startPosition); }, increase: function(){ =09 this.wrapper.setStyle(this.layout, this.now[0]+this.options.unit); this.element.setStyle('margin-'+this.margin, = this.now[1]+this.options.unit); } =09 }); /* Class: Fx.Color Smoothly transitions the color of an element; Extends , = inherits all its properties. =09 Credits: fx.Color, originally by Tom Jensen (http://neuemusic.com) MIT-style = LICENSE. =09 Arguments: same arguments as , only accepts color based properties. =09 Example: (start code) var myColorFx =3D new Fx.Color('myElement', 'color', {duration: 500}); myColorFx.custom('000000', 'FF0000') //fade from black to red (end) */ Fx.Color =3D Fx.Base.extend({ initialize: function(el, property, options){ this.element =3D $(el); this.setOptions(options); this.property =3D property; this.now =3D []; }, /*=09 Property: custom Transitions one color of the element specified in class creation = smoothly from one color to the next. =09 Arguments: from - the starting color to - the ending color =09 Note: Both values can be any of the following formats: '#333' - css shorthand with the hash '333' - or without the hash '#333333' - css longhand with the hash '333333' - without the hash */ custom: function(from, to){ return this.parent(from.hexToRgb(true), to.hexToRgb(true)); }, setNow: function(){ [0,1,2].each(function(i){ this.now[i] =3D Math.round(this.compute(this.from[i], this.to[i])); }, this); }, increase: function(){ this.element.setStyle(this.property, = "rgb("+this.now[0]+","+this.now[1]+","+this.now[2]+")"); }, =09 /*=09 Property: fromColor Transitions from the color passed in to the current color of the = element. =09 Arguments: color - the color to transition *from* to the current color of the = element. =09 Example: >myColorFx.fromColor('F00') //transition from red to whatever color = the element is currently */ fromColor: function(color){ return this.custom(color, this.element.getStyle(this.property)); }, =09 /*=09 Property: toColor Transitions to the color passed in from the current color of the = element. =09 Arguments: color - the color to transition *to* from the current color of the = element. =09 Example: >myColorFx.toColor('F00') //transition from whatever color the element = is currently to red */ =09 toColor: function(color){ return this.custom(this.element.getStyle(this.property), color); } }); /*=09 Script: Fxutils.js Contains Fx.Height, Fx.Width, Fx.Opacity. Only useful if you really, = really need to toggle those values, and toggling only works in STRICT = DOCTYPE. See for a better alternative. Dependencies: , , , , , =09 Author: Valerio Proietti, License: MIT-style license. */ /* Class: Fx.Height Alters the height of an element. Extends (and = consequentially ), and inherits all its methods. Arguments: el - the $(element) to apply the style transition to options - the Fx.Base options (see: ) =09 Example: >var myEffect =3D new Fx.Height('myElementId', {duration: 500}); >myEffect.toggle(); //will close the element if open, and vice-versa. */ Fx.Height =3D Fx.Style.extend({ initialize: function(el, options){ this.parent(el, 'height', options); this.element.setStyle('overflow', 'hidden'); }, =09 /* Property: toggle Toggles the height of an element from zero to it's scrollHeight, and = vice-versa. */ toggle: function(){ if (this.element.offsetHeight > 0) return = this.custom(this.element.offsetHeight, 0); else return this.custom(0, this.element.scrollHeight); }, /* Property: show Size the element to its full scrollHeight immediatly, without applying = a transition. */ show: function(){ return this.set(this.element.scrollHeight); } }); /* Class: Fx.Width Same as Fx.Height, but uses Width. It always toggles from its initial = width to zero, and vice versa. */ Fx.Width =3D Fx.Style.extend({ initialize: function(el, options){ this.parent(el, 'width', options); this.element.setStyle('overflow', 'hidden'); this.iniWidth =3D this.element.offsetWidth; }, toggle: function(){ if (this.element.offsetWidth > 0) return = this.custom(this.element.offsetWidth, 0); else return this.custom(0, this.iniWidth); }, show: function(){ return this.set(this.iniWidth); } }); /* Class: Fx.Opacity Same as Fx.Height, but uses Opacity. It always toggles from opaque to = transparent, and vice versa. */ Fx.Opacity =3D Fx.Style.extend({ initialize: function(el, options){ this.parent(el, 'opacity', options); this.now =3D 1; }, toggle: function(){ if (this.now > 0) return this.custom(1, 0); else return this.custom(0, 1); }, show: function(){ return this.set(1); } }); /* Script: Fxtransitions.js Cool transitions, to be used with =09 Dependencies: Author: Robert Penner, , modified to be = used with mootools. =09 License: Easing Equations v1.5, (c) 2003 Robert Penner, all rights reserved. = Open Source BSD License. */ /* Class: Fx.Transitions A collection of tweaning transitions for use with the = classes. */ Fx.Transitions =3D { /* Property: linear */ linear: function(t, b, c, d){ return c*t/d + b; }, =09 /* Property: quadIn */ quadIn: function(t, b, c, d){ return c*(t/=3Dd)*t + b; }, /* Property: quatOut */ quadOut: function(t, b, c, d){ return -c *(t/=3Dd)*(t-2) + b; }, /* Property: quadInOut */ quadInOut: function(t, b, c, d){ if ((t/=3Dd/2) < 1) return c/2*t*t + b; return -c/2 * ((--t)*(t-2) - 1) + b; }, /* Property: cubicIn */ cubicIn: function(t, b, c, d){ return c*(t/=3Dd)*t*t + b; }, /* Property: cubicOut */ cubicOut: function(t, b, c, d){ return c*((t=3Dt/d-1)*t*t + 1) + b; }, /* Property: cubicInOut */ cubicInOut: function(t, b, c, d){ if ((t/=3Dd/2) < 1) return c/2*t*t*t + b; return c/2*((t-=3D2)*t*t + 2) + b; }, /* Property: quartIn */ quartIn: function(t, b, c, d){ return c*(t/=3Dd)*t*t*t + b; }, /* Property: quartOut */ quartOut: function(t, b, c, d){ return -c * ((t=3Dt/d-1)*t*t*t - 1) + b; }, /* Property: quartInOut */ quartInOut: function(t, b, c, d){ if ((t/=3Dd/2) < 1) return c/2*t*t*t*t + b; return -c/2 * ((t-=3D2)*t*t*t - 2) + b; }, /* Property: quintIn */ quintIn: function(t, b, c, d){ return c*(t/=3Dd)*t*t*t*t + b; }, /* Property: quintOut */ quintOut: function(t, b, c, d){ return c*((t=3Dt/d-1)*t*t*t*t + 1) + b; }, /* Property: quintInOut */ quintInOut: function(t, b, c, d){ if ((t/=3Dd/2) < 1) return c/2*t*t*t*t*t + b; return c/2*((t-=3D2)*t*t*t*t + 2) + b; }, /* Property: sineIn */ sineIn: function(t, b, c, d){ return -c * Math.cos(t/d * (Math.PI/2)) + c + b; }, /* Property: sineOut */ sineOut: function(t, b, c, d){ return c * Math.sin(t/d * (Math.PI/2)) + b; }, /* Property: sineInOut */ sineInOut: function(t, b, c, d){ return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b; }, /* Property: expoIn */ expoIn: function(t, b, c, d){ return (t=3D=3D0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b; }, /* Property: expoOut */ expoOut: function(t, b, c, d){ return (t=3D=3Dd) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b; }, /* Property: expoInOut */ expoInOut: function(t, b, c, d){ if (t=3D=3D0) return b; if (t=3D=3Dd) return b+c; if ((t/=3Dd/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b; return c/2 * (-Math.pow(2, -10 * --t) + 2) + b; }, /* Property: circIn */ circIn: function(t, b, c, d){ return -c * (Math.sqrt(1 - (t/=3Dd)*t) - 1) + b; }, /* Property: circOut */ circOut: function(t, b, c, d){ return c * Math.sqrt(1 - (t=3Dt/d-1)*t) + b; }, /* Property: circInOut */ circInOut: function(t, b, c, d){ if ((t/=3Dd/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b; return c/2 * (Math.sqrt(1 - (t-=3D2)*t) + 1) + b; }, /* Property: elasticIn */ elasticIn: function(t, b, c, d, a, p){ if (t=3D=3D0) return b; if ((t/=3Dd)=3D=3D1) return b+c; if (!p) = p=3Dd*.3; if (!a) a =3D 1; if (a < Math.abs(c)){ a=3Dc; var s=3Dp/4; } else var s =3D p/(2*Math.PI) * Math.asin(c/a); return -(a*Math.pow(2,10*(t-=3D1)) * Math.sin( (t*d-s)*(2*Math.PI)/p = )) + b; }, /* Property: elasticOut */ elasticOut: function(t, b, c, d, a, p){ if (t=3D=3D0) return b; if ((t/=3Dd)=3D=3D1) return b+c; if (!p) = p=3Dd*.3; if (!a) a =3D 1; if (a < Math.abs(c)){ a=3Dc; var s=3Dp/4; } else var s =3D p/(2*Math.PI) * Math.asin(c/a); return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + = b; }, /* Property: elasticInOut */ elasticInOut: function(t, b, c, d, a, p){ if (t=3D=3D0) return b; if ((t/=3Dd/2)=3D=3D2) return b+c; if (!p) = p=3Dd*(.3*1.5); if (!a) a =3D 1; if (a < Math.abs(c)){ a=3Dc; var s=3Dp/4; } else var s =3D p/(2*Math.PI) * Math.asin(c/a); if (t < 1) return -.5*(a*Math.pow(2,10*(t-=3D1)) * Math.sin( = (t*d-s)*(2*Math.PI)/p )) + b; return a*Math.pow(2,-10*(t-=3D1)) * Math.sin( (t*d-s)*(2*Math.PI)/p = )*.5 + c + b; }, /* Property: backIn */ backIn: function(t, b, c, d, s){ if (!s) s =3D 1.70158; return c*(t/=3Dd)*t*((s+1)*t - s) + b; }, /* Property: backOut */ backOut: function(t, b, c, d, s){ if (!s) s =3D 1.70158; return c*((t=3Dt/d-1)*t*((s+1)*t + s) + 1) + b; }, /* Property: backInOut */ backInOut: function(t, b, c, d, s){ if (!s) s =3D 1.70158; if ((t/=3Dd/2) < 1) return c/2*(t*t*(((s*=3D(1.525))+1)*t - s)) + b; return c/2*((t-=3D2)*t*(((s*=3D(1.525))+1)*t + s) + 2) + b; }, /* Property: bounceIn */ bounceIn: function(t, b, c, d){ return c - Fx.Transitions.bounceOut (d-t, 0, c, d) + b; }, /* Property: bounceOut */ bounceOut: function(t, b, c, d){ if ((t/=3Dd) < (1/2.75)){ return c*(7.5625*t*t) + b; } else if (t < (2/2.75)){ return c*(7.5625*(t-=3D(1.5/2.75))*t + .75) + b; } else if (t < (2.5/2.75)){ return c*(7.5625*(t-=3D(2.25/2.75))*t + .9375) + b; } else { return c*(7.5625*(t-=3D(2.625/2.75))*t + .984375) + b; } }, /* Property: bounceInOut */ bounceInOut: function(t, b, c, d){ if (t < d/2) return Fx.Transitions.bounceIn(t*2, 0, c, d) * .5 + b; return Fx.Transitions.bounceOut(t*2-d, 0, c, d) * .5 + c*.5 + b; }=09 }; /*=09 Script: Tips.js Tooltips, BubbleTips, whatever they are, they will appear on mouseover =09 Dependencies: , , , , , =09 Author: Valerio Proietti, License: MIT-style license. =09 Credits: Tips.js is based on Bubble Tooltips = () by Alessandro = Fulcitiniti */ /* Class: Tips Display a tip on any element with a title and/or href. Arguments:=20 elements - a collection of elements to apply the tooltips to on = mouseover. options - an object. See options Below. Options:=20 transitionStart - the transition effect used to show the tip (see = ). transitionEnd - the transition effect used to hide the tip (see = ). maxTitleChars - the maximum number of characters to display in the = title of the tip. defaults to 30. fxDuration - the duration (in ms) for the transition effect when the = tip to appears and disappears. defaults to 150. maxOpacity - how opaque to make the tooltip (0 =3D 0% opaque, 1=3D 100% = opaque). defaults to 1. timeOut - the delay to wait to show the tip (how long the user must = hover to have the tooltip appear). defaults to 100. className - the class name to apply to the tooltip Example: (start code) (end) */ var Tips =3D new Class({ setOptions: function(options){ this.options =3D { transitionStart: Fx.Transitions.sineInOut, transitionEnd: Fx.Transitions.sineInOut, maxTitleChars: 30, fxDuration: 150, maxOpacity: 1, timeOut: 100, className: 'tooltip' } Object.extend(this.options, options || {}); }, initialize: function(elements, options){ this.elements =3D elements; this.setOptions(options); this.toolTip =3D new = Element('div').addClassName(this.options.className).setStyle('position', = 'absolute').injectInside(document.body); this.toolTitle =3D new Element('H4').injectInside(this.toolTip); this.toolText =3D new Element('p').injectInside(this.toolTip); this.fx =3D new fx.Style(this.toolTip, 'opacity', {duration: = this.options.fxDuration, wait: false}).hide(); $A(elements).each(function(el){ $(el).myText =3D el.title || false; if (el.myText) el.removeAttribute('title'); if (el.href){ if (el.href.test('http://')) el.myTitle =3D = el.href.replace('http://', ''); if (el.href.length > this.options.maxTitleChars) el.myTitle =3D = el.href.substr(0,this.options.maxTitleChars-3)+"..."; } if (el.myText && el.myText.test('::')){ var dual =3D el.myText.split('::'); el.myTitle =3D dual[0].trim(); el.myText =3D dual[1].trim(); }=20 el.onmouseover =3D function(){ this.show(el); return false; }.bind(this); el.onmousemove =3D this.locate.bindAsEventListener(this); el.onmouseout =3D function(){ this.timer =3D $clear(this.timer); this.disappear(); }.bind(this); }, this); }, show: function(el){ this.toolTitle.innerHTML =3D el.myTitle; this.toolText.innerHTML =3D el.myText; this.timer =3D $clear(this.timer); this.fx.options.transition =3D this.options.transitionStart; this.timer =3D this.appear.delay(this.options.timeOut, this); }, appear: function(){ this.fx.custom(this.fx.now, this.options.maxOpacity); }, locate: function(evt){ var doc =3D document.documentElement; this.toolTip.setStyles({'top': evt.clientY + doc.scrollTop + 15 + = 'px', 'left': evt.clientX + doc.scrollLeft - 30 + 'px'}); }, disappear: function(){ this.fx.options.transition =3D this.options.transitionEnd; this.fx.custom(this.fx.now, 0); } }); /*=09 Script: Accordion.js Fx.Elements and Accordion. =09 Dependencies: , , , , , Author: Valerio Proietti, License: MIT-style license. */ /* Class: Fx.Elements Fx.Elements allows you to apply any number of styles trantisions to a = selection of elements. Wonky syntax but very powerful. Used internally = by the accordion. Arguments: elements - a collection of elements the effects will be applied to. options - same as options. */ Fx.Elements =3D Fx.Base.extend({ initialize: function(elements, options){ this.elements =3D []; elements.each(function(el){ this.elements.push($(el)); }, this); this.setOptions(options); this.now =3D {}; }, setNow: function(){ for (var i in this.from){ var iFrom =3D this.from[i]; var iTo =3D this.to[i]; var iNow =3D this.now[i] =3D {}; for (var p in iFrom) iNow[p] =3D this.compute(iFrom[p], iTo[p]); } }, /* Property: custom Applies the passed in style transitions to each object named (see = example). Each item in the collection is refered to as a numerical = string ("1" for instance). The first item is "0", the second "1", etc. =09 Example: (start code) var myElementsEffects =3D new Fx.Elements($$('a')); myElementsEffects.custom({ '0': { //let's change the first element's opacity and width 'opacity': [0,1], 'width': [100,200] }, '1': { //and the second one's opacity 'opacity': [0.2, 0.5] } }); (end) */ custom: function(objObjs){ if (this.timer && this.options.wait) return; var from =3D {}; var to =3D {}; for (var i in objObjs){ var iProps =3D objObjs[i]; var iFrom =3D from[i] =3D {}; var iTo =3D to[i] =3D {}; for (var prop in iProps){ iFrom[prop] =3D iProps[prop][0]; iTo[prop] =3D iProps[prop][1]; } } return this.parent(from, to); }, increase: function(){ for (var i in this.now){ var iNow =3D this.now[i]; for (var p in iNow) this.setStyle(this.elements[i.toInt()], p, = iNow[p]); } } }); /* Class: Fx.Accordion The Fx.Accordion function creates a group of elements that are toggled = when their handles are clicked. When one elements toggles in, the others = toggles back. Arguments: elements - required, a collection of elements the transitions will be = applied to. togglers - required, a collection of elements, the elements handlers. options - optional, see options below, and options. Options: start - either 'open-first' or 'first-open'. 'open-first' will slide = that element open, while 'first-open' will just show that element as = open immediately with no transition. fixedHeight - integer, if you want your accordion to have a fixed = height. defaults to false. fixedWidth - integer, if you want your accordion to have a fixed width. = defaults to false. alwaysHide - boolean, if you want the ability to close your only-open = item. defaults to false. wait - boolean. means that open and close transitions can cancel = current ones (so if you click on items before the previous finishes transitioning, the clicked = transition will fire canceling the previous). true means that if one = element is sliding open or closed, clicking on another will have no = effect. for Accordion defaults to false. onActive - function to execute when an element starts to show onBackground - function to execute when an element starts to hide height - boolean, will add a height transition to the accordion if = true. defaults to true. opacity - boolean, will add an opacity transition to the accordion if = true. defaults to true. width - boolean, will add a width transition to the accordion if true. = defaults to false, css mastery is required to make this work! */ Fx.Accordion =3D Fx.Elements.extend({ extendOptions: function(options){ Object.extend(this.options, Object.extend({ start: 'open-first', fixedHeight: false, fixedWidth: false, alwaysHide: false, wait: false, onActive: Class.empty, onBackground: Class.empty, height: true, opacity: true, width: false }, options || {})); }, initialize: function(togglers, elements, options){ this.parent(elements, options); this.extendOptions(options); this.previousClick =3D 'nan'; togglers.each(function(tog, i){ $(tog).addEvent('click', = function(){this.showThisHideOpen(i)}.bind(this)); }, this); this.togglers =3D togglers; this.h =3D {}; this.w =3D {}; this.o =3D {}; this.elements.each(function(el, i){ this.now[i] =3D {}; $(el).setStyles({'height': 0, 'overflow': 'hidden'}); }, this); switch(this.options.start){ case 'first-open': this.elements[0].setStyle('height', = this.elements[0].scrollHeight+this.options.unit); break; case 'open-first': this.showThisHideOpen(0); break; } }, hideThis: function(i){ if (this.options.height) this.h =3D {'height': = [this.elements[i].offsetHeight, 0]}; if (this.options.width) this.w =3D {'width': = [this.elements[i].offsetWidth, 0]}; if (this.options.opacity) this.o =3D {'opacity': = [this.now[i]['opacity'] || 1, 0]}; }, showThis: function(i){ if (this.options.height) this.h =3D {'height': = [this.elements[i].offsetHeight, this.options.fixedHeight || = this.elements[i].scrollHeight]}; if (this.options.width) this.w =3D {'width': = [this.elements[i].offsetWidth, this.options.fixedWidth || = this.elements[i].scrollWidth]}; if (this.options.opacity) this.o =3D {'opacity': = [this.now[i]['opacity'] || 0, 1]}; }, /* Property: showThisHideOpen Shows a specific item and hides all others. Useful when triggering an = accordion from outside. =09 Arguments: iToShow - the index of the item to show. */ showThisHideOpen: function(iToShow){ if (iToShow !=3D this.previousClick || this.options.alwaysHide){ this.previousClick =3D iToShow; var objObjs =3D {}; var err =3D false; var madeInactive =3D false; this.elements.each(function(el, i){ this.now[i] =3D this.now[i] || {}; if (i !=3D iToShow){ this.hideThis(i); } else if (this.options.alwaysHide){ if (el.offsetHeight =3D=3D el.scrollHeight){ this.hideThis(i); madeInactive =3D true; } else if (el.offsetHeight =3D=3D 0){ this.showThis(i); } else { err =3D true; } } else if (this.options.wait && this.timer){ this.previousClick =3D 'nan'; err =3D true; } else { this.showThis(i); } objObjs[i] =3D Object.extend(this.h, Object.extend(this.o, this.w)); }, this); if (err) return; if (!madeInactive) this.options.onActive.call(this, = this.togglers[iToShow], iToShow); this.togglers.each(function(tog, i){ if (i !=3D iToShow || madeInactive) = this.options.onBackground.call(this, tog, i); }, this); return this.custom(objObjs); } } }); ------=_NextPart_000_0000_01CA6879.FD267D10 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://epp.eurostat.ec.europa.eu/tgm/web/js/page-width-resize.js function resize(pluginParameter,pcode,languageParameter,ajax){ // Check Window Height and Width to see according to which to calculate = the box size var winWidth =3D Window.getScrollWidth(); var winHeight =3D (Window.getHeight()) ? Window.getHeight(): = Window.getScrollHeight(); var avWidth =3D ($("rightColumn")) ? setWidth(["rightColumn"]) - 40: = winWidth; var avHeight =3D ($("header")) ? setHeight(["header"]) - 130 : = winHeight; // Element to set the Dimensions var wrapperDiv =3D $("leftColumn"); =09 if (((avWidth*3)/4) <=3D avHeight) { var BaseDivPadding =3D wrapperDiv.getStyle('padding-left').toInt() + = wrapperDiv.getStyle('padding-right').toInt(); var BaseDivMargin =3D wrapperDiv.getStyle('margin-left').toInt() + = wrapperDiv.getStyle('margin-right').toInt(); =09 divWidth =3D avWidth - (((BaseDivPadding) ? BaseDivPadding: 0) + = ((BaseDivMargin) ? BaseDivMargin : 0)); divHeight =3D setRatioHeight(divWidth); } else { var BaseDivPadding =3D wrapperDiv.getStyle('padding-top').toInt() + = wrapperDiv.getStyle('padding-bottom').toInt(); var BaseDivMargin =3D wrapperDiv.getStyle('margin-top').toInt() + = wrapperDiv.getStyle('margin-bottom').toInt(); =09 divHeight =3D avHeight - (((BaseDivPadding) ? BaseDivPadding: 0) + = ((BaseDivMargin) ? BaseDivMargin : 0)); divWidth =3D setRatioWidth(divHeight); } =09 if ((divWidth < 432) || (divHeight < 332)){ divWidth =3D 432; divHeight =3D 332; } =09 wrapperDiv.setStyles({width: divWidth + 'px', height: divHeight + = 'px'}); =09 resizeWidth=3D(divWidth-32); resizeHeight=3DsetRatioHeight(resizeWidth);//(divHeight-32); =09 if ($('SVGimport')) { var SVGmap =3D document.getElementsByName('graphic')[0]; SVGmap.setAttribute('width', resizeWidth); SVGmap.setAttribute('height', resizeHeight); } =09 =09 if(ajax=3D=3D'true'){ var today =3D new Date(); cacheStr=3D"&r=3D"+today; =09 //if ($('SVGimport')) { // var SVGmap =3D document.getElementsByName('graphic')[0]; // SVGmap.setAttribute('width', resizeWidth); // SVGmap.setAttribute('height', resizeHeight); //} =09 = retrieveURLWithoutForm('/tgm/resizeNavigation.do?resizeWidth=3D'+resizeWi= dth+'&resizeHeight=3D'+resizeHeight+'&pcode=3D'+pcode+'&language=3D'+lang= uageParameter+'&plugin=3D'+pluginParameter+cacheStr); =09 } =20 } function setTableHeight(){ // Check Window Height var winHeight =3D (Window.getHeight()) ? Window.getHeight(): = Window.getScrollHeight(); var avHeight =3D ($('header')) ? = setHeight(['header','tableheader','copyrights','legalNotice','footer','di= mension']) : winHeight; // Element to set the Dimensions var wrapperDiv =3D $('ScrollTableID'); var wrapperDivBody =3D = wrapperDiv.getElementsByTagName('table')[0].tBodies[0]; var BaseDivPadding =3D wrapperDiv.getStyle('padding-top').toInt() + = wrapperDiv.getStyle('padding-bottom').toInt(); var BaseDivMargin =3D wrapperDiv.getStyle('margin-top').toInt() + = wrapperDiv.getStyle('margin-bottom').toInt(); =09 divHeight =3D avHeight - (((BaseDivPadding) ? BaseDivPadding : 0) + = ((BaseDivMargin) ? BaseDivMargin : 0)); divHeight =3D ((divHeight-10) < 240) ? 240 : divHeight-10; wrapperDiv.setStyles({height: divHeight.toInt() + 'px'}); wrapperDivBody.style.height =3D (divHeight.toInt() - = ($('copyrights').offsetHeight + 7) )+ 'px'; } // Graph Resize Method function setGraphDimension(side){ // Variable side should be 1 (width) or 2 (height) var side =3D (side) ? side.toInt() : 1; // Check Window Height var winWidth =3D Window.getScrollWidth(); var winHeight =3D (Window.getHeight()) ? Window.getHeight(): = Window.getScrollHeight(); var avWidth =3D ($("rightColumn")) ? setWidth(["rightColumn"]): = winWidth; var avHeight =3D ($("header")) ? setHeight(["header"]) : winHeight; =09 // Element to set the Dimensions var wrapperDiv =3D $('SVGimport'); =09 if (side =3D=3D 2){ var BaseDivPadding =3D wrapperDiv.getStyle('padding-top').toInt() + = wrapperDiv.getStyle('padding-bottom').toInt(); var BaseDivMargin =3D wrapperDiv.getStyle('margin-top').toInt() + = wrapperDiv.getStyle('margin-bottom').toInt(); =09 divHeight =3D avHeight - (BaseDivPadding + BaseDivMargin); divHeight =3D ((divHeight-12) < 348) ? 348 : divHeight-12; wrapperDiv.setStyles({height: divHeight + 'px'}); } else { var BaseDivPadding =3D wrapperDiv.getStyle('padding-left').toInt() + = wrapperDiv.getStyle('padding-right').toInt(); var BaseDivMargin =3D wrapperDiv.getStyle('margin-left').toInt() + = wrapperDiv.getStyle('margin-right').toInt(); =09 var GraphObjWidth =3D = parseInt(document.getElementsByName('graphObj')[0].width); =09 divWidth =3D (avWidth - (BaseDivPadding + BaseDivMargin))-40; =09 // If the Graph with is smaller then the result we set it to its width = plus an extra 10 pixels divWidth =3D (divWidth < GraphObjWidth) ? divWidth : GraphObjWidth + = 10; =09 wrapperDiv.setStyles({width: divWidth + 'px'}); $('leftColumn').setStyles({width: divWidth + 'px'}); } } // JavaScript Document // Calculate and Return the Height of the element in relation to the = width var setRatioHeight =3D function(elWidth){ divHeight =3D ( elWidth * 3 ) / 4; return parseInt(divHeight); } // Calculate and Return the Height of the element in relation to the = width var setRatioWidth =3D function(elHeight){ divWidth =3D ( elHeight * 4 ) / 3; return parseInt(divWidth); } // Calculate and Return the Height of the element var setHeight =3D function(subtractedDiv){ var divHeight =3D (Window.getHeight()) ? Window.getHeight(): = Window.getScrollHeight(); for (i=3D0; i < subtractedDiv.length; i++) { var ToolBox =3D $(subtractedDiv[i]); if (ToolBox){ var ToolboxStylesWidth =3D ToolBox.offsetHeight.toInt(); var ToolboxStylesMargin =3D ToolBox.getStyle('margin-top').toInt() + = ToolBox.getStyle('margin-bottom').toInt(); var divHeight =3D (divHeight - (((ToolboxStylesWidth) ? = ToolboxStylesWidth : 0) + ((ToolboxStylesMargin) ? ToolboxStylesMargin : = 0))); } } return divHeight.toInt(); } // Calculate and return the width of the element var setWidth =3D function(subtractedDiv){ var divWidth =3D Window.getScrollWidth(); for (i=3D0; i < subtractedDiv.length; i++) { var ToolBox =3D $(subtractedDiv[i]); if (ToolBox){ var ToolboxStylesWidth =3D ToolBox.offsetWidth.toInt(); var ToolboxStylesMargin =3D ToolBox.getStyle('margin-left').toInt() + = ToolBox.getStyle('margin-right').toInt(); var divWidth =3D divWidth - (ToolboxStylesWidth + = ((ToolboxStylesMargin) ? ToolboxStylesMargin : 0)); } } return divWidth.toInt(); } ------=_NextPart_000_0000_01CA6879.FD267D10 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://epp.eurostat.ec.europa.eu/tgm/web/js/show_hide.js function printpreview() { if (navigator.appName =3D=3D "Microsoft Internet Explorer") { var OLECMDID =3D 7; /* OLECMDID values: * 6 - print * 7 - print preview * 1 - open window * 4 - Save As */ var PROMPT =3D 1; // 2 DONTPROMPTUSER var WebBrowser =3D ''; document.body.insertAdjacentHTML('beforeEnd', WebBrowser); WebBrowser1.ExecWB(OLECMDID, PROMPT); WebBrowser1.outerHTML =3D ""; } else { window.print(); } } function disableHref(enabledId){ try{ var input =3D document.getElementsByTagName("a"); var reserveObj =3D document.getElementById(enabledId); var count =3D input.length; =09 for(var i =3D0; i < count; i++){ var obj =3D input[i]; =09 if (obj.id !=3D reserveObj.id) { obj.removeAttribute("href");=20 obj.removeAttribute("onclick"); } obj.style.cursor=3D'wait'; } =20 =09 } catch(Exc){ } =09 change('progressBar','show'); =09 return true; } function change(id, newClass) { var identity=3Ddocument.getElementById(id); identity.className =3D newClass; =09 /* if(identity.className =3D=3D "hide") { identity.className =3D"show";=20 =09 } else { identity.className =3D "hide"; } */ } ------=_NextPart_000_0000_01CA6879.FD267D10 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://epp.eurostat.ec.europa.eu/tgm/web/js/xp_progress.js // xp_progressbar // Copyright 2004 Brian Gosselin of ScriptAsylum.com // // v1.0 - Initial release // v1.1 - Added ability to pause the scrolling action (requires you to = assign // the bar to a unique arbitrary variable). // - Added ability to specify an action to perform after a x amount = of // - bar scrolls. This requires two added arguments. // v1.2 - Added ability to hide/show each bar (requires you to assign = the bar // to a unique arbitrary variable). // var xyz =3D createBar( // total_width, // total_height, // background_color, // border_width, // border_color, // block_color, // scroll_speed, // block_count, // scroll_count, // action_to_perform_after_scrolled_n_times // ) var w3c=3D(document.getElementById)?true:false; var ie=3D(document.all)?true:false; var N=3D-1; function createBar(w,h,bgc,brdW,brdC,blkC,speed,blocks,count,action){ if(ie||w3c){ var t=3D'
'; t+=3D''; for(i=3D0;i'; } t+=3D'
'; document.write(t); var = bA=3D(ie)?document.all['blocks'+N]:document.getElementById('blocks'+N); bA.bar=3D(ie)?document.all['_xpbar'+N]:document.getElementById('_xpbar'+N= ); bA.blocks=3Dblocks; bA.N=3DN; bA.w=3Dw; bA.h=3Dh; bA.speed=3Dspeed; bA.ctr=3D0; bA.count=3Dcount; bA.action=3Daction; bA.togglePause=3DtogglePause; bA.showBar=3Dfunction(){ this.bar.style.visibility=3D"visible"; } bA.hideBar=3Dfunction(){ this.bar.style.visibility=3D"hidden"; } bA.tid=3DsetInterval('startBar('+N+')',speed); return bA; }} function startBar(bn){ var = t=3D(ie)?document.all['blocks'+bn]:document.getElementById('blocks'+bn); if(parseInt(t.style.left)+t.h+1-(t.blocks*t.h+t.blocks)>t.w){ t.style.left=3D-(t.h*2+1)+'px'; t.ctr++; if(t.ctr>=3Dt.count){ eval(t.action); t.ctr=3D0; }}else t.style.left=3D(parseInt(t.style.left)+t.h+1)+'px'; } function togglePause(){ if(this.tid=3D=3D0){ this.tid=3DsetInterval('startBar('+this.N+')',this.speed); }else{ clearInterval(this.tid); this.tid=3D0; }} ------=_NextPart_000_0000_01CA6879.FD267D10--