From: Subject: OPREMA: Trditve in zmote o golf palicah - Golf portal Date: Mon, 14 Jun 2010 22:09:45 +0100 MIME-Version: 1.0 Content-Type: multipart/related; type="text/html"; boundary="----=_NextPart_000_0000_01CB0C0E.4C02F9D0" X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5931 This is a multi-part message in MIME format. ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/clanek/novice/oprema-trditve-in-zmote-o-golf-palicah.html =EF=BB=BF OPREMA: Trditve in = zmote o golf palicah - Golf portal

OPREMA: Trditve in zmote o golf palicah

0=20
Komentiraj=20
Po=C5=A1lji=20
Tiskaj=20
Velikost pisave
D.V.
02.10.2009, 13:03 /

Kot na drugih =C5=BEilvjenskih podro=C4=8Djih je tudi v golfu = prisotnih precej=20 stereotipov. Nekaj najbolj pogostih zadeva izbor pravilne opreme. = Predvsem=20 palic.

Znanje in ve=C5=A1=C4=8Dine sta bistvena elementa za dober rezultat = na=C5=A1ih vsakodnevnih,=20 slu=C5=BEbenih ali =C5=A1portnih aktivnosti. Uspe=C5=A1nost in = u=C4=8Dinkovitost le-teh pa je prav=20 tako v veliki meri odvisna od orodja, opreme, ki jo pri izvajanju = aktivnosti=20 uporabljamo. Tudi golf pri tem ni izjema. Primerna in pravilno izbrana = golf=20 oprema je za dobro izvedbo udarcev in optimalno igro izjemno = pomembna.

3D"phil,=20
V nasprotju s prepri=C4=8Danji razlika = med levi=C4=8Darji=20 in desni=C4=8Darji ni edina, s katero se moramo soo=C4=8Diti pred = nakupom palic=20

Najpomembnej=C5=A1i del va=C5=A1e golf opreme pa so zagotovo = va=C5=A1e palice.  Nakup=20 novih golf palic je lahko u=C5=BEitek ali pa =C4=8Das negotovosti, = povezan s kopico=20 vpra=C5=A1anj: Kaj res potrebujem? Koliko denarja bom za to namenil? = Katero blagovno=20 znamko naj izberem ? Kje mi bodo svetovali ? Katerim informacijam in = nasvetom=20 lahko res zaupam ? Naj kupim preko interneta ? Palice iz druge roke = ?
Pri=20 razmi=C5=A1ljanju in odlo=C4=8Danju o nakupu oz. menjavi golf palic, naj = vam bodo v pomo=C4=8D=20 nekatere pogoste trditve in tudi zmote o golf palicah:

1. ZA VSAKEGA ZA=C4=8CETNIKA JE DOBER STANDARDNI = ZA=C4=8CETNI=C5=A0KI SET=20
To je pribli=C5=BEno tako, kot =C4=8De bi sestavljali = ko=C5=A1arka=C5=A1ko mo=C5=A1tvo=20 za=C4=8Detnikov, in bi kupili za vse igralce superge =C5=A1tevilka = 43...
 

=20
Golf oprema napreduje vsako leto. = Razvoj pa lahko=20 igralec v svojo korist izkoristi le, =C4=8De izbere sebi primerne = palice. V Ljubljani=20 lahko potrebne meritve opravite v trgovini GOWF

=C4=8Ce vemo:
- da so elementi, ki definirajo osnovne lastnosti = golfske palice=20 (dol=C5=BEina palice, lega palice in debelina gripa) neodvisni od znanja = golfa, ampak=20 le od fizi=C4=8Dnih (stati=C4=8Dnih) dimenzij posameznika, da je = standardnih ljudi=20 (katerih stati=C4=8Dne lastnosti omogo=C4=8Dajo nakup standardnih palic = s police) manj kot=20 10%

- da prave palice (pravih mer in s pravimi glavami) zagotavljajo = hitrej=C5=A1i=20 napredek k optimalni igri
- da je veliko palic v standardnem = za=C4=8Detni=C5=A1kem=20 setu kar nekaj =C4=8Dasa neuporabljenih (driver, les) in na za=C4=8Detku = najve=C4=8Dkrat igrate=20 le z dolo=C4=8Denimi (npr. 7, 9, sendW ali podobno kombinacijo)
- da = kar nekaj=20 proizvajalcev omogo=C4=8Da nakup 'pravih palic' posami=C4=8Dno, kar = omogo=C4=8Da, da si za=20 za=C4=8Detek kupite le nekaj najpogosteje uporabljenih palic in jih = dokupujete=20 skladno s svojim napredkom v igri golfa potem nam bo odlo=C4=8Ditev ob = dilemi=20 'standardni za=C4=8Detni=C5=A1ki set ali prave palice' verjetno = la=C5=BEja.
=C4=8Ceprav imate za=20 seboj samo nekaj ur u=C4=8Denja golfa, boste tudi vi pri nagovoru = ob=C4=8Dutili razlike,=20 ko dr=C5=BEite v rokah palice razli=C4=8Dnih dol=C5=BEin, lege, debeline = gripa. Izmed mnogih=20 razli=C4=8Dnih palic boste lahko sami ugotovili katera je tista, ki vam = najbolj=20 ustreza. Brez teoreti=C4=8Dnega znanja in skoraj brez strokovne = pomo=C4=8Di. Skoraj tako,=20 kot ugotovite, katera velikost superg je prav=C5=A1nja za vas. Z = ve=C4=8D kot 90%=20 natan=C4=8Dnostjo.
 

2. =C5=A0E NISEM DOVOLJ DOBER IGRALEC GOLFA ZATO NIMA = SMISLA, DA BI SI=20 KUPIL UMERJENE PALICE ...
Kdaj pa boste postali dovolj = dober=20 igralec ? Po 1.000 udarjenih =C5=BEogicah ? Po 10.000 ? Pri handicapu 20 = ali manj ?=20
=C4=8Ce razmi=C5=A1ljate o menjavi palic in ste skromnega mnenja, da = so za vas dobre=20 palice iz police, je va=C5=A1a misel zagotovo nespamenta. Preberite si = ponovno vseh 5=20 alinej v predhodni to=C4=8Dki in =C5=A1e enkrat tretjo alinejo, pridajte = =C5=A1e dejstvo, da je=20 cena umerjenih palic enaka palicam iz police in se =C4=8Dim prej = otresite svoje=20 skromnosti, da je za vas dobro vse, kar vam kdo pa=C4=8D ponudi. =
 

3. BOM KUPIL NOVE PALICE, STARE PA BOM DAL=20 =C5=BDENI...
Si predstavljate, da bi va=C5=A1o = =C5=BEeno (oz. dama svojega=20 mo=C5=BEa) navdu=C5=A1ili za tek in ji nato kot spodbudo za vajino = skupno rekreiranje=20 podarili va=C5=A1e stare 'superge', ki so vam sicer slu=C5=BEile = odli=C4=8Dno, vendar =C5=A1tevilka=20 va=C5=A1e noge je 43, =C5=BEenina pa 39, va=C5=A1a noga je po mo=C5=A1ko = =C5=A1iroka, =C5=BEenina pa damsko=20 ozka =E2=80=A6 Seveda ne. Z veseljem jo odpeljete v nakup udobnih, = lahkih, mehkih =E2=80=A6=20 damskih superg.
Tudi v golfu veljajo podobne zakonitosti: v = povpre=C4=8Dju so=20 =C5=BEenske ni=C5=BEje rasti, imajo manj=C5=A1e dlani, imajo = po=C4=8Dasnej=C5=A1i swing=E2=80=A6, zato=20 potrebujejo kraj=C5=A1e, la=C5=BEje, manj trde palice =E2=80=A6
Ste = =C5=A1e vedno prepri=C4=8Dani, da=20 =C5=BEene s svojimi starimi palicami ne =C5=BEelite odvrniti od vam = ljubega =C5=A1porta?

4. NI VA=C5=BDNA PALICA, VA=C5=BDEN JE SWING: DOBER = IGRALEC ZADANE =C5=BDOGICO Z=20 VSAKO PALICO...
Jasno, kot pri katerikoli drugi = aktivnosti:=20 bistvena sta znanje in ve=C5=A1=C4=8Dine, ampak tudi brez pravega = 'orodja' ni pri=C4=8Dakovati=20 optimalnega rezultata.

3D"golf,=20
Raziskave ka=C5=BEejo, da ljubiteljski = igralci ve=C4=8D=20 pozornosti posve=C4=8Dajo izgledu, kot primernosti prave opreme =


=C4=8Ce govorimo o PRO-jih, bi le-ti verjetno prav lepo udarili = =C5=BEogico tudi s=20 hokejsko palico. =C4=8Ce pa ste amaterski igralec golfa, pa bo va=C5=A1 = rezultat zagotovo=20 bolj=C5=A1i, =C4=8De boste svojemu znanju pridali =C5=A1e primerno = palico. Palico, ki bo=20 odgovarjala va=C5=A1im telesnim parametrom in va=C5=A1im zahtevam do = palice (odpu=C5=A1=C4=8Danje=20 tudi pri manj idealnih udarcih ali maksimalna kontrola leta=20 =C5=BEogice).
 

5. MENJAVA GOLFSKIH PALIC JE NEPOTREBEN=20 STRO=C5=A0EK

Dr=C5=BEi v tem primeru, =C4=8De imate = primerne palice,=20 tak=C5=A1ne, ki ustrezajo va=C5=A1im fizi=C4=8Dnim telesnim = karakteristikam (dol=C5=BEina, lega,=20 vrsta in trdota =C5=A1afta, velikost gripa, ustrezna glava palice), kot = tudi va=C5=A1emu=20 znanju in vam tako zagotavljajo optimalen napredek igranja.
Napredki = v=20 razvoju tehnologije palice v obdobju pribli=C5=BEno 5 let niso = zanemarljivi z vidika=20 dodane vrednosti pri dol=C5=BEini udarcev, natan=C4=8Dnosti, = odpu=C5=A1=C4=8Danju =E2=80=A6
Odvisno od=20 intenzivnosti va=C5=A1ega igranja in let uporabe, je smiselno po vsaki = sezoni=20 preveriti tudi obrabljenost va=C5=A1ih palic. Pri rekreativnih golfistih = je mo=C4=8D=20 opaziti utrujenost materialov v povpre=C4=8Dju po obdobju 4 let. =
Zaradi sprememb=20 fizi=C4=8Dnih karakteristik je potrebno razmi=C5=A1ljati o menjavi palic = tudi pri=20 odra=C5=A1=C4=8Dajo=C4=8Di mladini. Zaradi po=C4=8Dasnej=C5=A1ega swinga = in verjetno pove=C4=8Dane =C5=BEelje po=20 komfortnej=C5=A1i igri (ve=C4=8D odpu=C5=A1=C4=8Danja) pa tudi v 'zlatih = letih'.

6. RAJE KUPIM GOLF PALICE PO INTERNETU, TAM JE VSE=20 POCENI

Dr=C5=BEi, =C4=8De:
- ste eden izmed manj kot 10% golfistov, za = katerega so primerne=20 standardne palice, ki so na voljo preko interneta
- =C4=8De ste se = za voljo ni=C5=BEje=20 cene pripravljeni 'odpovedati' vsem prednostim optimalne igre s palicami = po meri=20
- =C4=8De ste pripravljeni sprejeti nase riziko iskanja ustreznega = serviserja in=20 'originalnih rezervnih delov' (=C5=A1afti, gripi) ter s tem povezanih = stro=C5=A1kov v=20 primeru polomljenih =C5=A1aftov in drugih 'nezgodnih' primerih
- = =C4=8De se sprijaznite=20 z mo=C5=BEnimi nev=C5=A1e=C4=8Dnostmi ob iskanju posami=C4=8Dne palice v = primeru izgube le-te ali v=20 primeru =C5=BEelje po dopolnitvi seta.

3D"golf,=20
1000 udarjenih =C5=BEogic ne bo prineslo = napredka, =C4=8De=20 =C4=8Dlovek uporablja napa=C4=8Dno tehniko in opremo

7. MOJ PRIJATELJ MI BO NAJBOLJE SVETOVAL =
Vsi=20 nasveti so zagotovo dobronamerni in do neke mere tudi strokovni. = Najbolje pa je=20 nasvete, =C4=8De je le mo=C5=BEno, prenesti v lastno izku=C5=A1njo in = izkoristiti danosti=20 razvitega golfskega trga. Poslu=C5=BEite se razpolo=C5=BEljivih metod, = naprav, nasvetov in=20 lastnega ob=C4=8Dutka z izbrano palico.
Vsekakor je dobra novica, da = je v=20 Sloveniji v zadnjih letih na tem podro=C4=8Dju znanja vedno ve=C4=8D. = =C5=A0e bolj=C5=A1a novica pa=20 je, da se to znanje hitro =C5=A1iri tudi med slovenskimi golfisti.

 

8. IZ TEGA UMERJANJA GOLF PALIC PA ZDAJ DELAJO =C5=BDE = CELO ZNANOST=20 ...

Gleda na to, da:
- je golf eden najbolj kompleksnih =C5=A1portov = (majhna glava=20 palice, majhna =C5=BEogica in hiter zamah)
vsaka palica ni primerna = za=20 vsakogar
- da so mo=C5=BEnosti na trgu (metodologije, naprave, testne = palice), ki=20 so bile v=C4=8Dasih dane le tour igralcem, danes danost tudi = amaterjem
- da so=20 cene palic po meri enake palicam 'iz polic'
- da je na=C5=A1 edini = vlo=C5=BEek v proces=20 izbora pravih palic urica in pol (sicer dragocenega) = =C4=8Dasa,
znanost ali ne,=20 pametno jo je izkoristiti in iz svoje igre izlo=C4=8Diti en potencialno = mote=C4=8D element=20 =E2=80=93 neprave palice, ter se v nadaljevanju posvetiti le =C5=A1e = drugemu - svojemu=20 udarcu.

9. MENI PA LE=C5=BDIJO NAJBOLJ PALICE BLAGOVNE ZNAMKE=20 abc...
To je pomemben kriterij za na=C5=A1o podzavest, = ne sme pa=20 biti edini kriterij pri izbiri palic.
Iz sveta avtomobilizma poznamo, = da je=20 pa=C4=8D nekdo =C2=BBzaljubljen=C2=AB v dolo=C4=8Deno blagovno znamko. S = tem seveda ni ni=C4=8D narobe.=20
Blagovne znamke v resnici ne potrebujemo, potrebujemo avtomobil za = vo=C5=BEnjo.=20
In tu se prav zares za=C4=8Dne racionalna izbira. =C5=BDelimo oz. = potrebujemo=20 limuzino, karavan, kabriolet?; diesel ali bencinar?; pogon spredaj, = zadaj ali na=20 vsa 4 kolesa; kak=C5=A1no mo=C4=8D=E2=80=A6?, in seveda koliko denarja = bomo namenili za nakup.=20
Enako je pri golf palicah.
Tako kot pri avtih, moramo pri izbiri = palic=20 vedeti, kaj prav zares potrebujemo. Potrebujemo orodje, ki bo primerno = na=C5=A1im=20 fizi=C4=8Dnim karakteristikam in znanju golfa, da bomo optimalno = prenesli energijo=20 udarca na =C5=BEogico.
Prvi korak: izkoristite danosti trga in s = pomo=C4=8Djo=20 kompetentnega strokovnjaka opredelite karakteristike svojih palic = (dol=C5=BEina,=20 lega, debelina gripa, shaft), dolo=C4=8Dite ustrezen tip palic = (odpu=C5=A1=C4=8Danje ali=20 kontrola). V drugem koraku, kot pri avtu, vzemite izbrano palico v svojo = roko in=20 jo =C2=BBpovabite na testno vo=C5=BEnjo=C2=AB, poglejte in primerjajte = rezultate testov=20 (idealna za to so v ta namen posebej opremljena mesta, kjer si rezultate = in=20 primerjave lahko ogledate na ra=C4=8Dunalniku) in se tako odlo=C4=8Dite = za pravo palico in=20 seveda, v tretjem koraku, upo=C5=A1tevajte tudi vam ljubo blagovno = znamko.

Naj povzamemo =C5=A1e enkrat: dobra igra je odvisna od dveh = parametrov, na=C5=A1ega=20 udarca in palic. Ker je proces ugotavljanja (in eliminiranja) = nepravilnih palic=20 veliko enostavnej=C5=A1i, izlo=C4=8Dite mo=C5=BEni faktor nepravilnih = golf palic na samem=20 za=C4=8Detku oz. =C4=8Dim preje in se posvetite bistvu in u=C5=BEitku = golfske igre, dobremu=20 zamahu.

 

Po=C5=A1lji komentar

Pred=20 komentiranjem se prosim prijavi.:=20
Prijavi=20 se Prijavi=20 se=20
=20
=20

Glasuj

    =20
    Va=C5=A1a ocenka: Nezadostno = Zadostno = Dobro Prav dobro = Odli=C4=8Dno = =
    =20
    Hvala za = va=C5=A1 glas!=20
    =20
    Za=20 ocenjevanje je potrebno biti prijavljen.

3,8

47 glasov
Bodi prvi in=20 oddaj svoj glas!

Prenesi v

  • Facebook
  • Twitter
  • Netlog

Zadnji komentarji

Bodite prvi in dodajte svoj komentar=20

Iskanje

=20

Anketa

= =20

Te=C4=8Daj osnov golfa v povezavi s =C5=A1olsko ligo v = Sloveniji:

=20
=20
=20
=20
=20
  • Izpitni=20 centri
    GZS je izdala dopolnjen seznam centrov, kjer lahko = pridobite=20 dovoljenje za igro.
  • Seznam=20 turnirjev ameri=C5=A1ke profesionalne turneje
    Leto=C5=A1nja = najmo=C4=8Dnej=C5=A1a=20 profesionalna turneje se je za=C4=8Dela 7. januarja na Havajih, zadnji = turnir pa bo=20 10. decembra na Flor...
  • Seznam=20 turnirjev evropske profesionalne turneje
    Dirka proti Dubaju se = je=20 za=C4=8Dela 10. decembra v Ju=C5=BEni Afriki, veliki finale pa bo = do=C5=BEivela na velikem=20 finalu v Zdru=C5=BEenih ...

Zadnji komentarji

  • Jun= aki=20 prihodnosti

    faldo10: = Odli=C4=8Dni rezultati!=20 Bravo!!
  • Slabe=20 izjemen v Italiji

    veyron84: ni = ve=C4=8D =C5=A1porta=20 ko nismo dobri...kak sem vesel:)
  • =C5=A0panec=20 zmagovalec Ptuja

    iztok.vodovnik: = sramota=20
=C2=A924ur.com Vse pravice = pridr=C5=BEane
------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://golfportal.info/bin/usrtrck-new.php?c=UNKNOWN R0lGODlhAQABAIAAAAQCBAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw== ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://image.24ur.com/media/images///520xX/Aug2008//60170669.jpg /9j/4AAQSkZJRgABAQEBLAEsAAD/7QMeUGhvdG9zaG9wIDMuMAA4QklNBAQAAAAAAwIcAQAAAgAC HAEFAAhSUEEsTUFSSxwBFAACAAscARYAAgABHAEeAAZSVFJQSVgcASgACDEyMTYyMDQyHAEyAANQ SVgcATwAATQcAUYACDIwMDgwNzE2HAFQAAsxMDM2NDkrMDAwMBwBWgADGyU1HAIAAAIAAhwCBQAK R09MRi1PUEVOLxwCBwAIT1JJR0lOQUwcAgoAATQcAg8AAVMcAhQAB1NQTyBHTEYcAhYADUdNMUU0 N0cxRllWMDEcAhkAFzpyZWw6ZDpibTpHRjJFNDdHMFQ2NTAxHAI3AAgyMDA4MDcxNhwCPAALMTAz NjQ5KzAwMDAcAkEADFBhbmVpa29uL01FRBwCRgAEMi4wMBwCUAAaqSBEYXJyZW4gU3RhcGxlcyAv IFJldXRlcnMcAloACUxJVkVSUE9PTBwCZAADR0JSHAJlAA5Vbml0ZWQgS2luZ2RvbRwCZwAFR09M MTUcAmkAilBoaWwgTWlja2Vsc29uIG9mIHRoZSBVLlMuIGhpdHMgYSBzaG90IGR1cmluZyB0aGUg ZmluYWwgZGF5IG9mIHByYWN0aWNlIGFoZWFkIG9mIHRoZSAyMDA4IEJyaXRpc2ggT3BlbiBHb2xm IENoYW1waW9uc2hpcCBhdCBSb3lhbCBCaXJrZGFsZRwCbgAHUkVVVEVSUxwCcwAGWDAxMzIzHAJ4 AMhQaGlsIE1pY2tlbHNvbiBvZiB0aGUgVS5TLiBoaXRzIGEgc2hvdCBkdXJpbmcgdGhlIGZpbmFs IGRheSBvZiBwcmFjdGljZSBhaGVhZCBvZiB0aGUgMjAwOCBCcml0aXNoIE9wZW4gR29sZiBDaGFt cGlvbnNoaXAgYXQgUm95YWwgQmlya2RhbGUsIEVuZ2xhbmQsIEp1bHkgMTYsIDIwMDguICAgICBS RVVURVJTL0RhcnJlbiBTdGFwbGVzIChCUklUQUlOKRwCegAFUE4vQUMcAoIAAjNTHAKHAAJlbhwH CgABABwHFAAEf////xwHWgAEABIWJv/bAEMAAwICAwICAwMDAwQDAwQFCAUFBAQFCgcHBggMCgwM CwoLCw0OEhANDhEOCwsQFhARExQVFRUMDxcYFhQYEhQVFP/bAEMBAwQEBQQFCQUFCRQNCw0UFBQU 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 ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://image.24ur.com/media/images///520xX/Oct2009//60344910.jpg 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 KysrqQOj/9k= ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://image.24ur.com/media/images///213xX/Oct2009//60344923.jpg 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 ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://image.24ur.com/media/images///213xX/Oct2009//60344916.jpg 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 k26sSEc4D/dVufucZiC1PknGYvYs6I1meu5//9k= ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://golfportal.info/static/slo/microsites/golfportal//img/star_3.5.gif R0lGODlhWAAPANUAAEihQPP58rjbtorDhdfr1m60Z5nMmcrkyOby5WuzZKrTpn28d1qrU////8Th wuv16tPo0d7u3aPQn5PHjrHXrmSvXb/evfj8+Nbq1Ha5cOn06KfRo4K+fMjjxbXZslGmSbrct87m zPX69Obv3u/37rDWrZTFlNvt2QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAHAP8ALAAAAABYAA8AAAb/wIZw 2CCRiMhk8ahsGpvNxwVKrQonHSsRqx1yu41BBNyIjK0QCQDSTa/bara2I+kEuoGO3Wr5fBZdfX+B foBaHh8HBF0EB4pVEQySDGdUkZOVUJeSmU0QkiEhD1YPoaGjRCMGAwUUFa8VrhUFAyEjQqqssq+y tLa4q62wsa++tw0nExwJu6YhECcjIkIiIycQzs7Q0g0SBR4F4d/i3xJE3uDi6eEe5kPo5OvlRAbj 4hD4+QhECPn+//uEQMhAMAOIggYVJBlY8GBDhUgYEnQ4ESKRAwhBYNi4MSA/jiA5ehRSggMHCyZN WijRpOTJlCdZKnGJMuXKJhtUciDAk8BIwH49g/pUYsDBgKMDHBigUhRp0qVQmiJVSmWC0QEnsnZC EiGr1xNbhXSYQBYLWSpjy6ZFW9bsBLZkzZixJLeukgAG8hoIoffnELx6+eb1KwRwXsEGCDd4oNdA 3SlKLtR9nCTChg0gAmgAcZlJ5cuZN3duYhmzZs4bPCMhcFkAiQsPECCYpkSEbCmwZdMmQkDASAQn Finp/Tt4E+L8jCuB4CHTBQ137mqALOR5dCKqsTvZriT7EO9CNDShjoQ8EepBAAA7 ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://golfportal.info/static/slo/microsites/golfportal//img/search_button.gif R0lGODlhFwAWAOZAAPr6+ujo6Ofn5+/v78nJycTCwuDg4Ozs7NHR0ePj4+Lg4NzZ2fv7+/Pz88vL y8HBwbe3t6ysrOTk5Ovr69zc3P/299PT093d3cfHx9LS0tXQ0Onp6fX19ba2tuXl5d3Z2urq6ubm 5tDQ0NfX19zY2ZmSk6WlpdfS0qWcndrX19jW1tbR0cPBwcXFxaOjo66urr29vbi4uP/6++Dc3aam pqaio/v297Kysr+/v9/f3/329pycnNnY2M7OzsjIyOLi4unc3ry8vNjT1Lyztd7b2+3r6+7q6sfD w/Tm6NjV1tvY2djY2LCsrd7e3tza2r6+vp6enszFxs3NzeDe39nU1OHf39jS09PIyv79/aKiotPO ztjV1bq6utvb28bExP36+5ubm+Ph4djT093a28TBwv39/fn5+fb29vf39/T09Pj4+PDw8PLy8vz8 /PHx8e7u7u3t7f7+/v///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5 BAEAAEAALAAAAAAXABYAQAf/gBUycoSFhoeGXxUkbY2ObQYEAW8HcANvaSNNjlMabJ9sAwguQQ2g p6gqC3GsraxlCTE4BBgtAWWuCmJqvL1mDBRQNwgWBB0YZ71qTldecM/Q0dLRPENGiNjZRR+urWpc BBxvAhsNHiJqrQpUAO3uAGojAXFqaGhyExBu7kQnZ///0MB5AUYCrzP2AAJUomWNwzVvMiRg87Ci xTVbdGDJxrGQjRkdBTyB8CBEnENhuHVjlSOClEpwLvgAkWtBmZs4ywiAkeCABA8hQLixcOtmFQqP HMHpMaHBgAFr2DBwYMCRASFmsmrNGsCBAAZyymzogGDrGCv20qIx8yOLiS4XRByIEJBM7YIVafKm OePmwY4MHPQKFpxCg5vDbpbQiACHDeLHkJNEeUP5zYDDlTNrpnwECIoaLAqQGU26NOkCBZiUABII ADs= ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://golfportal.info/static/slo/microsites/default/img/poll_icon_women.gif R0lGODlhCQAKAJEAAPf39////1xcXAAAACH5BAEAAAAALAAAAAAJAAoAAAIWBISmEi3b4jvRGVYn teqkfoHXB2pGAQA7 ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://golfportal.info/static/slo/microsites/default/img/poll_icon_men.gif R0lGODlhCQAJAJEAAPf39////1xcXAAAACH5BAEAAAAALAAAAAAJAAkAAAIUhA8ieGq61gtUJoql wHVyu3UIhBQAOw== ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/slo/microsites/shared/css/default.css .clearfix:unknown { CLEAR: both; DISPLAY: block; VISIBILITY: hidden; HEIGHT: 0px; content: = "." } .clearer { CLEAR: both; OVERFLOW: hidden; HEIGHT: 0px; _margin-top: -1px; _height: = 1px } .clear { CLEAR: both; OVERFLOW: hidden; HEIGHT: 0px; _margin-top: -1px; _height: = 1px } .clearfix:unknown { CLEAR: both; DISPLAY: block; VISIBILITY: hidden; LINE-HEIGHT: 0; = HEIGHT: 0px; content: "." } .clearfix { DISPLAY: inline-block } HTML[xmlns] .clearfix { DISPLAY: block } * HTML .clearfix { HEIGHT: 1% } #headerBrand A { COLOR: #ccc; TEXT-DECORATION: none } #headerBrand A:hover { COLOR: white; TEXT-DECORATION: none } #headerBrand .headerBrandList { PADDING-RIGHT: 15px; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; = PADDING-TOP: 1px } #headerBrand .headerBrandUser { PADDING-RIGHT: 15px; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; = PADDING-TOP: 1px } #headerBrand .headerBrandList { BACKGROUND: url(/static/slo/shared/img/backgrounds/brand_header.gif) = #000 repeat-x left top; VERTICAL-ALIGN: middle; COLOR: #ccc; HEIGHT: = 20px } #headerBrand .headerBrandUser { BACKGROUND: url(/static/slo/shared/img/backgrounds/brand_header.gif) = #000 repeat-x left top; VERTICAL-ALIGN: middle; COLOR: #ccc; HEIGHT: = 20px } #headerBrand .headerBrandLogo { BACKGROUND: url(/static/slo/shared/img/backgrounds/brand_header.gif) = #000 repeat-x left top; VERTICAL-ALIGN: middle; COLOR: #ccc; HEIGHT: = 20px } #headerBrand .headerBrandUser { TEXT-ALIGN: right } #headerBrand .headerBrandList UL { FLOAT: left; MARGIN: 3px 0px } #headerBrand .headerBrandList LI { PADDING-RIGHT: 10px; DISPLAY: inline; PADDING-LEFT: 10px; BACKGROUND: = url(/static/slo/shared/img/backgrounds/brand_header_border.gif) repeat-y = right top; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 0px 0px 20px; = WIDTH: auto! important; PADDING-TOP: 0px; FONT-FAMILY: Arial, Helvetica, = sans-serif } #headerBrand .headerBrandList LI A { FONT-SIZE: 11px; WHITE-SPACE: nowrap } #headerBrand LI.headerBrandLogo { PADDING-LEFT: 15px; BACKGROUND: none transparent scroll repeat 0% 0%; = WIDTH: 36px; HEIGHT: 20px } #headerBrand .headerBrandLogo A { DISPLAY: block; BACKGROUND: = url(/static/slo/shared/img/buttons/brand_header_24ur_logo.gif) repeat-y = right top; WIDTH: 36px; HEIGHT: 19px } #headerBrand .headerBrandRestrict { VERTICAL-ALIGN: middle; OVERFLOW: hidden; HEIGHT: 20px } #headerBrand .headerBrandUser TD { WHITE-SPACE: nowrap } #headerBrand TD.headerBrandLogo { PADDING-RIGHT: 0px; PADDING-LEFT: 15px; PADDING-BOTTOM: 0px; WIDTH: = 36px; PADDING-TOP: 0px } #headerBrand .headerBrandUser TABLE { FLOAT: right } #headerBrand .headerBrandUser TD { FONT-SIZE: 11px; WHITE-SPACE: nowrap } #headerBrand .headerBrandUser .person { PADDING-RIGHT: 15px } #headerBrand .headerBrandUser .person .userUsername { FONT-WEIGHT: bold; COLOR: white } #headerBrand .logout { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } #headerBrand .settings { PADDING-RIGHT: 0px; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } #headerBrand .register { PADDING-RIGHT: 0px; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } #headerBrand .logout A { BACKGROUND: = url(/static/slo/shared/img/backgrounds/brand_header_user_logout.gif) = no-repeat 0px 2px } #headerBrand .settings A { BACKGROUND: = url(/static/slo/shared/img/backgrounds/brand_header_user_settings.gif) = no-repeat 0px 2px } #headerBrand .login { PADDING-RIGHT: 10px } #headerBrand .login A { PADDING-RIGHT: 0px; PADDING-LEFT: 19px; BACKGROUND: = url(/static/slo/shared/img/backgrounds/brand_header_user_login.gif) = no-repeat 0px 2px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px } #headerBrand .register A { BACKGROUND: = url(/static/slo/shared/img/backgrounds/brand_header_user_register.gif) = no-repeat 0px 2px } #headerBrand .logout A { PADDING-RIGHT: 0px; PADDING-LEFT: 19px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } #headerBrand .settings A { PADDING-RIGHT: 0px; PADDING-LEFT: 19px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } #headerBrand .register A { PADDING-RIGHT: 0px; PADDING-LEFT: 19px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } #headerBrand .headerBrandUser SPAN.logout { DISPLAY: block; FONT-FAMILY: Arial, Helvetica, sans-serif } #headerBrand .headerBrandUser SPAN.settings { DISPLAY: block; FONT-FAMILY: Arial, Helvetica, sans-serif } #headerBrand .headerBrandUser SPAN.login { DISPLAY: block; FONT-FAMILY: Arial, Helvetica, sans-serif } #headerBrand .headerBrandUser SPAN.register { DISPLAY: block; FONT-FAMILY: Arial, Helvetica, sans-serif } #headerBrand .headerBrandUser SPAN { FONT-FAMILY: Arial, Helvetica, sans-serif } #headerBrand .headerBrandUser SPAN.logout A { DISPLAY: block } #headerBrand .headerBrandUser SPAN.settings A { DISPLAY: block } #headerBrand .headerBrandUser SPAN.login A { DISPLAY: block } #headerBrand .headerBrandUser SPAN.register A { DISPLAY: block } #headerBrand .headerBrandSecondary { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: = url(/static/slo/shared/img/backgrounds/brand_header_shadow.gif) white = repeat-x left top; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; = HEIGHT: 7px } #headerBrand .none.headerBrandSecondary { DISPLAY: none } #headerBrand TABLE { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } .toolBox { PADDING-RIGHT: 0px; PADDING-LEFT: 180px; PADDING-BOTTOM: 0px; MARGIN: = 0px 0px 7px; PADDING-TOP: 0px } .toolBox .toolBoxTop { DISPLAY: none } .toolBox .toolBoxBottom { DISPLAY: none } .toolBox .toolBoxMiddle { =09 } .toolBox .toolBoxMiddle LI { FLOAT: left; MARGIN: 0px 0px 0px 6px; WIDTH: 18px; HEIGHT: 18px } .toolBox .toolBoxMiddle LI A { DISPLAY: block; WIDTH: 18px; HEIGHT: 18px } .toolBox .toolBoxMiddle LI A SPAN { DISPLAY: none } .toolBox .toolBoxMiddle LI.rss A { BACKGROUND: url(/static/slo/microsites/shared/img/buttons/tool_box.gif) = no-repeat 0px 0px } .toolBox .toolBoxMiddle LI.rss A:hover { BACKGROUND: url(/static/slo/microsites/shared/img/buttons/tool_box.gif) = no-repeat 0px -18px } .toolBox .toolBoxMiddle LI.favorites A { BACKGROUND: url(/static/slo/microsites/shared/img/buttons/tool_box.gif) = no-repeat -18px 0px } .toolBox .toolBoxMiddle LI.favorites A:hover { BACKGROUND: url(/static/slo/microsites/shared/img/buttons/tool_box.gif) = no-repeat -18px -18px } .toolBox .toolBoxMiddle LI.home A { BACKGROUND: url(/static/slo/microsites/shared/img/buttons/tool_box.gif) = no-repeat -36px 0px } .toolBox .toolBoxMiddle LI.home A:hover { BACKGROUND: url(/static/slo/microsites/shared/img/buttons/tool_box.gif) = no-repeat -36px -18px } .toolBox .toolBoxMiddle LI.facebook A { BACKGROUND: url(/static/slo/microsites/shared/img/buttons/tool_box.gif) = no-repeat -54px 0px } .toolBox .toolBoxMiddle LI.facebook A:hover { BACKGROUND: url(/static/slo/microsites/shared/img/buttons/tool_box.gif) = no-repeat -54px -18px } .toolBox .toolBoxMiddle LI.twiter A { BACKGROUND: url(/static/slo/microsites/shared/img/buttons/tool_box.gif) = no-repeat -72px 0px } .toolBox .toolBoxMiddle LI.twiter A:hover { BACKGROUND: url(/static/slo/microsites/shared/img/buttons/tool_box.gif) = no-repeat -72px -18px } .popKlubPromotion { PADDING-RIGHT: 0px; PADDING-LEFT: 2px; BACKGROUND: = url(/static/slo/shared/img/backgrounds/pop_klub_background.gif) = no-repeat left bottom; PADDING-BOTTOM: 3px; WIDTH: 298px; PADDING-TOP: = 0px } .popKlubPromotion H3 { PADDING-RIGHT: 0px; PADDING-LEFT: 12px; FONT-SIZE: 15px; = PADDING-BOTTOM: 0px; MARGIN: 0px 0px 1px; WIDTH: 288px; CURSOR: pointer; = COLOR: #fff; PADDING-TOP: 7px; HEIGHT: 23px } .popKlubPromotion H3.closeFirst { BACKGROUND: = url(/static/slo/shared/img/backgrounds/pop_klub_toggler_first_close_backg= round.gif) no-repeat } .popKlubPromotion H3.openFirst { BACKGROUND: = url(/static/slo/shared/img/backgrounds/pop_klub_toggler_first_open_backgr= ound.gif) no-repeat } .popKlubPromotion H3.open { BACKGROUND: = url(/static/slo/shared/img/backgrounds/pop_klub_toggler_open_background.g= if) no-repeat } .popKlubPromotion H3.close { BACKGROUND: = url(/static/slo/shared/img/backgrounds/pop_klub_toggler_close_background.= gif) no-repeat } .popKlubPromotion H3.closeLast { BACKGROUND: = url(/static/slo/shared/img/backgrounds/pop_klub_toggler_last_close_backgr= ound.gif) no-repeat } .popKlubPromotion .productContainer { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; WIDTH: = 268px; PADDING-TOP: 10px } .popKlubPromotion .productContainer .product { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px = 0px 7px; WIDTH: 268px; PADDING-TOP: 0px } .popKlubPromotion .productContainer .product IMG { FLOAT: left; MARGIN: 0px 8px 0px 0px } .popKlubPromotion .productContainer .product H4 { FONT-WEIGHT: bold; FONT-SIZE: 13px; FLOAT: left; MARGIN: 0px 0px 5px; = WIDTH: 144px; COLOR: #a50202 } .popKlubPromotion .productContainer .product H4 A { COLOR: #a50202; TEXT-DECORATION: none } .popKlubPromotion .productContainer .product H4 A:hover { TEXT-DECORATION: underline } .popKlubPromotion .productContainer .product P { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 12px; FLOAT: right; = PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: 144px; PADDING-TOP: 0px } .popKlubPromotion .productContainer .product P A { COLOR: #a50202; TEXT-DECORATION: none } .popKlubPromotion .productContainer .product P A:hover { TEXT-DECORATION: underline } .article .menu { WIDTH: auto } .article .menu .containerLeftSide H3 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 11px; PADDING-BOTTOM: 0px; COLOR: #404040; PADDING-TOP: 4px } .content .source { DISPLAY: block } .article .menu .content { MARGIN: 7px 0px 3px; WIDTH: 100% } .article .menu .primary { DISPLAY: inline; FLOAT: left } #main_content .article .menu .content { MARGIN: 3px 0px 0px; LIST-STYLE-TYPE: none } .article .menu .content .containerLeftSide { PADDING-RIGHT: 0px; PADDING-LEFT: 6px; PADDING-BOTTOM: 3px; = PADDING-TOP: 6px } .article .menu .content .containerRightSide { PADDING-RIGHT: 6px; PADDING-LEFT: 3px; FLOAT: right; PADDING-BOTTOM: = 0px; PADDING-TOP: 5px } .article .menu .content .containerRightSide .send { DISPLAY: inline; FLOAT: left; COLOR: #404040 } .article .menu .content .containerRightSide .print { DISPLAY: inline; FLOAT: left; COLOR: #404040 } .article .menu .content .containerRightSide .comment { DISPLAY: inline; FLOAT: left; COLOR: #404040 } .article .menu .content .containerRightSide .send A { DISPLAY: inline; FLOAT: left; COLOR: #404040 } .article .menu .content .containerRightSide .print A { DISPLAY: inline; FLOAT: left; COLOR: #404040 } .article .menu .content .containerRightSide .comment A { DISPLAY: inline; FLOAT: left; COLOR: #404040 } .article .menu .content .containerRightSide .send A { PADDING-RIGHT: 12px; PADDING-LEFT: 32px; BACKGROUND: = url(/static/slo/shared/img/backgrounds/article_poslji.gif) no-repeat; = PADDING-BOTTOM: 2px; PADDING-TOP: 2px; TEXT-DECORATION: none } .article .menu .content .containerRightSide .send A:hover { TEXT-DECORATION: underline } .article .menu .content .containerRightSide .print A { PADDING-RIGHT: 12px; PADDING-LEFT: 20px; BACKGROUND: = url(/static/slo/shared/img/backgrounds/article_natisni.gif) no-repeat; = PADDING-BOTTOM: 2px; PADDING-TOP: 2px; TEXT-DECORATION: none } .article .menu .content .containerRightSide .print A:hover { TEXT-DECORATION: underline } .article .menu .content .containerRightSide .comment A { PADDING-RIGHT: 12px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; = PADDING-TOP: 2px; TEXT-DECORATION: none } .article .menu .content .containerRightSide .comment A:hover { TEXT-DECORATION: underline } .article .menu .content .containerRightSide .commentsCloud { FLOAT: left } .article .menu .content .containerRightSide .commentsCloud A { FLOAT: left; MARGIN: 0px 4px 0px 0px } .commentsCloud .commentsCloudContent A { PADDING-RIGHT: 0px; PADDING-LEFT: 13px; BACKGROUND: = url(/static/slo/main/img/backgrounds/cloud_comments_primary_background.gi= f) no-repeat left top; FLOAT: right; PADDING-BOTTOM: 0px; MARGIN: 0px = 7px; COLOR: #ffffff; LINE-HEIGHT: 15px; PADDING-TOP: 0px; HEIGHT: 22px; = TEXT-DECORATION: none } .commentsCloud .commentsCloudContent A SPAN { PADDING-RIGHT: 5px; DISPLAY: block; PADDING-LEFT: 5px; FONT-SIZE: 12px; = BACKGROUND: = url(/static/slo/main/img/backgrounds/cloud_comments_secondary_background.= gif) no-repeat right top; PADDING-BOTTOM: 7px; PADDING-TOP: 0px; = FONT-FAMILY: Arial,Helvetica,sans-serif } .article .menu .content .containerRightSide .zoomIn { DISPLAY: inline; FLOAT: left; MARGIN: 0px 3px 0px 0px; WIDTH: 16px; = HEIGHT: 16px; TEXT-DECORATION: none } .article .menu .content .containerRightSide .zoomReset { DISPLAY: inline; FLOAT: left; MARGIN: 0px 3px 0px 0px; WIDTH: 16px; = HEIGHT: 16px; TEXT-DECORATION: none } .article .menu .content .containerRightSide .zoomOut { DISPLAY: inline; FLOAT: left; MARGIN: 0px 3px 0px 0px; WIDTH: 16px; = HEIGHT: 16px; TEXT-DECORATION: none } .article .menu .content .containerRightSide .zoomIn A { DISPLAY: inline; FLOAT: left; MARGIN: 0px 3px 0px 0px; WIDTH: 16px; = HEIGHT: 16px; TEXT-DECORATION: none } .article .menu .content .containerRightSide .zoomReset A { DISPLAY: inline; FLOAT: left; MARGIN: 0px 3px 0px 0px; WIDTH: 16px; = HEIGHT: 16px; TEXT-DECORATION: none } .article .menu .content .containerRightSide .zoomOut A { DISPLAY: inline; FLOAT: left; MARGIN: 0px 3px 0px 0px; WIDTH: 16px; = HEIGHT: 16px; TEXT-DECORATION: none } .article .menu .content .containerRightSide .zoomIn { BACKGROUND: = url(/static/slo/shared/img/backgrounds/zoom_in_font_size.gif) no-repeat } .article .menu .content .containerRightSide .zoomIn A { BACKGROUND: = url(/static/slo/shared/img/backgrounds/zoom_in_over_font_size.gif) = no-repeat } .article .menu .content .containerRightSide .zoomReset { BACKGROUND: url(/static/slo/shared/img/backgrounds/reset_font_size.gif) = no-repeat } .article .menu .content .containerRightSide .zoomReset A { BACKGROUND: = url(/static/slo/shared/img/backgrounds/reset_over_font_size.gif) = no-repeat } .article .menu .content .containerRightSide .zoomOut { BACKGROUND: = url(/static/slo/shared/img/backgrounds/zoom_out_font_size.gif) no-repeat } .article .menu .content .containerRightSide .zoomOut A { BACKGROUND: = url(/static/slo/shared/img/backgrounds/zoom_out_over_font_size.gif) = no-repeat } .article .menu .content .containerRightSide .textSize { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: = 0px; MARGIN: 0px; COLOR: #404040; PADDING-TOP: 2px } .article .menu .secondary { CLEAR: both; FONT-SIZE: 0px; WIDTH: auto; HEIGHT: auto } .small_box .small_box_content .shareContent LI { DISPLAY: block; FONT-SIZE: 12px; FLOAT: left; MARGIN: 0px 7px 0px 0px; = WIDTH: auto! important; COLOR: #fff; WHITE-SPACE: nowrap } .small_box .small_box_content .shareContent LI A { COLOR: #000000; TEXT-DECORATION: none } .small_box .small_box_content .shareContent LI A:hover { TEXT-DECORATION: underline } .small_box .small_box_content .shareContent LI.facebook A { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 28px; PADDING-BOTTOM: = 0px; MARGIN: 0px 4px 0px 0px; PADDING-TOP: 6px; HEIGHT: 17px } .small_box .small_box_content .shareContent LI.twitter A { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 28px; PADDING-BOTTOM: = 0px; MARGIN: 0px 4px 0px 0px; PADDING-TOP: 6px; HEIGHT: 17px } .small_box .small_box_content .shareContent LI.netlog A { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 28px; PADDING-BOTTOM: = 0px; MARGIN: 0px 4px 0px 0px; PADDING-TOP: 6px; HEIGHT: 17px } .small_box .small_box_content .shareContent LI.facebook A { BACKGROUND: url(/static/slo/shared/img/icons/social_icons.png) = no-repeat 0px 0px } .small_box .small_box_content .shareContent LI.twitter A { BACKGROUND: url(/static/slo/shared/img/icons/social_icons.png) = no-repeat 0px -24px } .small_box .small_box_content .shareContent LI.netlog A { BACKGROUND: url(/static/slo/shared/img/icons/social_icons.png) = no-repeat 0px -48px } #headerBrand .facebookLogin { DISPLAY: block; MARGIN: 0px 11px 0px 0px; WIDTH: 80px; HEIGHT: 20px } #headerBrand .facebookLogout { DISPLAY: block; MARGIN: 0px 11px 0px 0px; WIDTH: 80px; HEIGHT: 20px } #headerBrand .facebookLogin { BACKGROUND: url(/static/slo/main/img/facebook_connect.png) 0px -762px } #headerBrand .facebookLogout { BACKGROUND: url(/static/slo/main/img/facebook_connect.png) 0px -783px } #headerBrand .fblogin { DISPLAY: block; BACKGROUND: = url(/static/slo/main/img/facebook_connect_border.gif) no-repeat 100% = 3px; MARGIN: 0px 10px 0px 0px } .articleCommentsForm .facebookLoginButton { PADDING-RIGHT: 8px; DISPLAY: block; PADDING-LEFT: 0px; FONT-SIZE: 12px; = BACKGROUND: url(/static/slo/main/img/facebook_connect.png) 0px -804px; = FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 10px 10px 0px 0px; WIDTH: = 92px; COLOR: #fff; PADDING-TOP: 9px; HEIGHT: 21px; TEXT-ALIGN: right } .small_box .send .login_warning .facebookLoginButton { PADDING-RIGHT: 8px; DISPLAY: block; PADDING-LEFT: 0px; FONT-SIZE: 12px; = BACKGROUND: url(/static/slo/main/img/facebook_connect.png) 0px -804px; = FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 10px 10px 0px 0px; WIDTH: = 92px; COLOR: #fff; PADDING-TOP: 9px; HEIGHT: 21px; TEXT-ALIGN: right } .comment_form .facebookLoginButton { PADDING-RIGHT: 8px; DISPLAY: block; PADDING-LEFT: 0px; FONT-SIZE: 12px; = BACKGROUND: url(/static/slo/main/img/facebook_connect.png) 0px -804px; = FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 10px 10px 0px 0px; WIDTH: = 92px; COLOR: #fff; PADDING-TOP: 9px; HEIGHT: 21px; TEXT-ALIGN: right } .articleCommentsForm .dotComLoginButton { PADDING-RIGHT: 8px; DISPLAY: block; PADDING-LEFT: 0px; FONT-SIZE: 12px; = BACKGROUND: url(/static/slo/main/img/facebook_connect.png) 0px -835px; = FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 10px 0px 0px; WIDTH: 104px; = COLOR: #000; PADDING-TOP: 9px; HEIGHT: 21px; TEXT-ALIGN: right } .small_box .send .login_warning .dotComLoginButton { PADDING-RIGHT: 8px; DISPLAY: block; PADDING-LEFT: 0px; FONT-SIZE: 12px; = BACKGROUND: url(/static/slo/main/img/facebook_connect.png) 0px -835px; = FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 10px 0px 0px; WIDTH: 104px; = COLOR: #000; PADDING-TOP: 9px; HEIGHT: 21px; TEXT-ALIGN: right } .comment_form .dotComLoginButton { PADDING-RIGHT: 8px; DISPLAY: block; PADDING-LEFT: 0px; FONT-SIZE: 12px; = BACKGROUND: url(/static/slo/main/img/facebook_connect.png) 0px -835px; = FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 10px 0px 0px; WIDTH: 104px; = COLOR: #000; PADDING-TOP: 9px; HEIGHT: 21px; TEXT-ALIGN: right } .articleFrame #comments { MARGIN-TOP: 0px } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/clanek/novice/header.css .header { BACKGROUND: #f5f4f1; WIDTH: 886px } .header .headerTop { DISPLAY: none } .header .headerBottom { DISPLAY: none } .header .headerMiddle .logo SPAN { DISPLAY: none } .header .headerMiddle { BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/header_image.jpg) = no-repeat; HEIGHT: 131px } .header .headerMiddle .logo { FLOAT: left } .header .headerMiddle .logo A { DISPLAY: block; BACKGROUND: = url(/static/slo/microsites/golfportal/img/logo.png) no-repeat left top; = WIDTH: 142px; HEIGHT: 43px } .header .headerMiddle .banner { FLOAT: right; WIDTH: 728px; HEIGHT: 90px } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/clanek/novice/navigation.css #navigation .primary { FONT-SIZE: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/navigation_primary.= gif) no-repeat; WIDTH: 886px; HEIGHT: 8px } #navigation .secondary { FONT-SIZE: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/navigation_secondar= y.gif) no-repeat; WIDTH: 886px; HEIGHT: 8px } #navigation .content { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/navigation_content.= gif) #79bd32 repeat-x; PADDING-BOTTOM: 0px; WIDTH: 886px; PADDING-TOP: = 5px; HEIGHT: 34px } .navigation { WIDTH: 100% } .navigation .selected { FONT-WEIGHT: bold; FONT-SIZE: 16px; FONT-FAMILY: Trebuchet MS, Verdana, = Arial; TEXT-ALIGN: center } .navigation .select { FLOAT: left; WIDTH: 100%; WHITE-SPACE: nowrap } .navigation .select .line { BORDER-RIGHT: #fff 1px solid; PADDING-RIGHT: 27px; PADDING-LEFT: 27px; = FONT-WEIGHT: normal; FONT-SIZE: 16px; FLOAT: left; PADDING-BOTTOM: 3px; = MARGIN: 0px; PADDING-TOP: 7px; FONT-FAMILY: Trebuchet MS, Verdana, Arial } .navigation .select .line:unknown { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px } .navigation .select .line A { COLOR: #fff; TEXT-DECORATION: none } .navigation .select .line A:hover { COLOR: #fff; TEXT-DECORATION: none } .navigation .select .sub { BACKGROUND: #ebe9e1; LEFT: 0px; FLOAT: left; WIDTH: 886px; POSITION: = absolute; TOP: 30px } .navigation .select .sub .subline { PADDING-RIGHT: 7px; PADDING-LEFT: 7px; FLOAT: left; PADDING-BOTTOM: = 7px; MARGIN: 0px 1px; WIDTH: auto; PADDING-TOP: 7px } .navigation .select .sub .subline A { COLOR: #000; TEXT-DECORATION: none } .navigation .select .sub .subline A:hover { COLOR: #000; TEXT-DECORATION: underline } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/clanek/novice/small_content.css #small_content .primary { =09 } #small_content .secondary { =09 } #small_content .content { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 1px; = PADDING-TOP: 7px; BACKGROUND-COLOR: #ffffff } #small_content .banner { MARGIN: 0px 0px 7px } #small_content .banner_tower { MARGIN: 0px 0px 7px 70px } #small_content .small_box { MARGIN: 0px 0px 7px; WIDTH: 301px } #small_content .small_box .primary { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; WIDTH: = 301px; PADDING-TOP: 0px; HEIGHT: 31px; BACKGROUND-COLOR: #f8f8f6 } #small_content .small_box .primary H1 { PADDING-RIGHT: 13px; DISPLAY: inline; PADDING-LEFT: 7px; FONT-SIZE: = 16px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/small_content_box_p= rimary_h1_background.gif) no-repeat right 50%; PADDING-BOTTOM: 4px; = COLOR: #fff; PADDING-TOP: 2px } #small_content .small_box .primary H1 A { FONT-WEIGHT: normal; COLOR: #fff; TEXT-DECORATION: none } #small_content .small_box .primary H1 A:hover { FONT-WEIGHT: normal; COLOR: #fff; TEXT-DECORATION: underline } #small_content .small_box .secondary { FONT-SIZE: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/small_content_box_s= econdary.gif) no-repeat; WIDTH: 301px; HEIGHT: 6px } #small_content .small_box .content { PADDING-RIGHT: 7px; PADDING-LEFT: 7px; PADDING-BOTTOM: 7px; OVERFLOW: = hidden; WIDTH: 287px; PADDING-TOP: 7px; BACKGROUND-COLOR: #f8f8f6 } #small_content .poll { =09 } #small_content .poll A { COLOR: #33183f; TEXT-DECORATION: none } #small_content .poll A:hover { COLOR: #33183f; TEXT-DECORATION: underline } #small_content .poll H2 { FONT-SIZE: 16px; COLOR: #058905 } #small_content .poll INPUT { MARGIN: 3px 7px 0px 0px } #small_content .poll FIELDSET { MARGIN: 7px 0px 10px } #small_content .poll LABEL { MARGIN: 0px; TEXT-ALIGN: left } #small_content .poll .button { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; = PADDING-BOTTOM: 0px; PADDING-TOP: 0px } #small_content .poll HR { BORDER-RIGHT: #23931f 0px; BORDER-TOP: #23931f 1px solid; BORDER-LEFT: = #23931f 0px; WIDTH: 100%; BORDER-BOTTOM: #23931f 0px; HEIGHT: 1px } #small_content .poll .article A { FONT-WEIGHT: normal; COLOR: #444347; TEXT-DECORATION: none } #small_content .poll .article A:hover { FONT-WEIGHT: normal; COLOR: #444347; TEXT-DECORATION: underline } #small_content .poll .article LI { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 15px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/poll_icon_article.gif) = no-repeat 0px 1px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px } #small_content .search { WIDTH: 287px } #small_content .search INPUT { FONT-SIZE: 12px; FLOAT: left; MARGIN: 2px 7px 0px 0px; WIDTH: 170px } #small_content .search .button { FLOAT: left } #small_content .last_comments { WIDTH: 287px } #small_content .last_comments LI { PADDING-RIGHT: 0px; PADDING-LEFT: 20px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/last_comments_icon.gif) = no-repeat 0px 7px; PADDING-BOTTOM: 0px; WIDTH: 270px; PADDING-TOP: 3px } #small_content .last_comments A { COLOR: #0e8c0d; TEXT-DECORATION: underline } #small_content .last_comments A:hover { COLOR: #0e8c0d; TEXT-DECORATION: none } #small_content .last_articles { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; OVERFLOW: = hidden; WIDTH: 287px; PADDING-TOP: 0px; POSITION: relative; HEIGHT: = 260px } #small_content .last_articles #scroll_me_content { LEFT: 0px; POSITION: absolute; HEIGHT: 2000px } #small_content .last_articles #scroll_me_content .scroll_me_item { HEIGHT: 65px } #small_content .last_articles LI { PADDING-RIGHT: 0px; PADDING-LEFT: 20px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/last_articles_icon.gif) = no-repeat 0px 5px; PADDING-BOTTOM: 0px; WIDTH: 270px; PADDING-TOP: 3px } #small_content .last_articles A { COLOR: #1e4652; TEXT-DECORATION: underline } #small_content .last_articles A:hover { COLOR: #1e4652; TEXT-DECORATION: none } #small_content .static A { COLOR: #000; TEXT-DECORATION: underline } #small_content .static A:hover { COLOR: #000; TEXT-DECORATION: none } #small_content .static H2 { FONT-WEIGHT: bold; FONT-SIZE: 16px; COLOR: #db1132 } #small_content .static H2 A { FONT-WEIGHT: bold; COLOR: #db1132; TEXT-DECORATION: none } UNKNOWN { FONT-WEIGHT: bold; COLOR: #db1132; TEXT-DECORATION: underline } #small_content .static P { MARGIN: 7px 0px 0px } #small_content .static IMG { MARGIN: 7px 0px 0px 59px; WIDTH: 160px } #small_content .static .date { FONT-WEIGHT: bold; FONT-SIZE: 11px; MARGIN: 7px 0px 0px 59px; COLOR: = #8d8576 } #toparticles UL.tabs { OVERFLOW: hidden; WIDTH: 285px; BORDER-BOTTOM: #179015 1px solid } #toparticles UL.tabs A { DISPLAY: block; FONT-WEIGHT: bold; FONT-SIZE: 11px; FLOAT: left; = MARGIN: 0px 0px 0px 2px; OVERFLOW: hidden; COLOR: white; = BACKGROUND-COLOR: #179015; TEXT-DECORATION: none } #toparticles UL.tabs A.first { MARGIN: 0px } #toparticles UL.tabs A:hover { COLOR: #026c00; BACKGROUND-COLOR: #9edb9d } #toparticles UL.tabs A.active { COLOR: #026c00; BACKGROUND-COLOR: #9edb9d } #toparticles UL.tabs A H3 { PADDING-RIGHT: 5px; DISPLAY: block; PADDING-LEFT: 5px; FONT-SIZE: 11px; = FLOAT: left; PADDING-BOTTOM: 5px; WORD-SPACING: -1px; LINE-HEIGHT: 12px; = PADDING-TOP: 5px; TEXT-ALIGN: center } #toparticles UL.tabs A:hover H3 { CURSOR: pointer } #toparticles .content_tabs { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; = PADDING-TOP: 5px } #toparticles .content_tabs LI { PADDING-RIGHT: 0px; DISPLAY: list-item; PADDING-LEFT: 20px; = LIST-STYLE-POSITION: outside; BACKGROUND: = url(/static/slo/microsites/golfportal/img/last_articles_icon.gif) = no-repeat 0% 3px; PADDING-BOTTOM: 10px; MARGIN: 0px; PADDING-TOP: 2px; = LIST-STYLE-TYPE: none } #chat .content .chat { BACKGROUND: = url(/static/slo/microsites/golfportal/img/chat_speech_bubble.gif) = no-repeat 0px 0px } #chat .content .chat IMG { MARGIN: 12px 0px 18px 12px } #chat .content .chat H2 { PADDING-RIGHT: 0px; PADDING-LEFT: 22px; FONT-WEIGHT: normal; FONT-SIZE: = 16px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/chat_person.gif) no-repeat 0px = 2px; PADDING-BOTTOM: 0px; MARGIN: 0px 0px 3px; PADDING-TOP: 0px } #chat .content .chat H2 A { COLOR: #0e8c0d; TEXT-DECORATION: none } #chat .content .chat H2 A:hover { TEXT-DECORATION: underline } #chat .content .chat P { PADDING-RIGHT: 0px; PADDING-LEFT: 23px; FONT-SIZE: 11px; = PADDING-BOTTOM: 0px; MARGIN: 0px 0px 5px; PADDING-TOP: 0px } #chat .content .chat .promo { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 23px; FONT-SIZE: = 12px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/chat_time.gif) no-repeat 0px = 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #0e8c0d; PADDING-TOP: 0px } #chat .content .chat .live { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; FONT-SIZE: 13px; = BACKGROUND: url(/static/slo/microsites/zadovoljna/img/chat_live.gif) = no-repeat; PADDING-BOTTOM: 0px; MARGIN: 0px 0px 10px 23px; WIDTH: 251px; = COLOR: #fff; PADDING-TOP: 3px; HEIGHT: 19px; TEXT-ALIGN: center; = TEXT-DECORATION: none } #chat .content .chat .live:hover { TEXT-DECORATION: underline } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/clanek/novice/main_content.css .prArticle { BACKGROUND: = url(/static/slo/microsites/default/img/icon_sponsored_article.gif) = no-repeat; MARGIN: 0px 0px 3px; WIDTH: 67px; HEIGHT: 9px } .prArticle SPAN { DISPLAY: none } #main_content .primary { =09 } #main_content .secondary { =09 } .simple_content { PADDING-RIGHT: 0px; PADDING-LEFT: 15px; PADDING-BOTTOM: 7px; = PADDING-TOP: 5px } .content { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 13px; MARGIN: = 0px; PADDING-TOP: 0px } .main_box { MARGIN: 0px 0px 0px -5px; WIDTH: 551px } .main_box .primary { PADDING-RIGHT: 0px; MARGIN-TOP: 11px; PADDING-LEFT: 0px; FLOAT: right; = PADDING-BOTTOM: 0px; WIDTH: 541px; PADDING-TOP: 0px; POSITION: relative; = HEIGHT: 35px } .main_box .primary H1 { PADDING-RIGHT: 13px; DISPLAY: inline; PADDING-LEFT: 7px; FONT-SIZE: = 18px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/main_content_box_pr= imary_h1_background.gif) #faf9f5 no-repeat right 50%; PADDING-BOTTOM: = 0px; COLOR: #fff; PADDING-TOP: 5px; POSITION: absolute; HEIGHT: 30px } .main_box .secondary { BORDER-TOP: #fff 5px solid; FONT-SIZE: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/main_content_box_se= condary.gif); FLOAT: right; WIDTH: 546px; HEIGHT: 17px } .main_box .content { PADDING-RIGHT: 7px; PADDING-LEFT: 7px; PADDING-BOTTOM: 7px; WIDTH: = 537px; PADDING-TOP: 0px } #main_news .primary { DISPLAY: none } .content .image { PADDING-RIGHT: 0px; PADDING-LEFT: 10px; FLOAT: left; PADDING-BOTTOM: = 0px; PADDING-TOP: 10px } .content .text { PADDING-RIGHT: 0px; PADDING-LEFT: 10px; FLOAT: left; PADDING-BOTTOM: = 0px; OVERFLOW: hidden; WIDTH: 210px; PADDING-TOP: 7px } .content .text H2 { FONT-WEIGHT: normal; FONT-SIZE: 18px; COLOR: #058905 } .content .text H2 A { FONT-WEIGHT: normal; COLOR: #058905; TEXT-DECORATION: none } .content .text H2 A:hover { FONT-WEIGHT: normal; COLOR: #058905; TEXT-DECORATION: underline } .content .date { DISPLAY: none } .content .source { PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #33183f } .content P { PADDING-LEFT: 0px; MARGIN: 0px } .content .archive_link { MARGIN: 7px; TEXT-ALIGN: right } #main_content .content .tag6 A { FONT-SIZE: 27px; COLOR: #000; TEXT-DECORATION: none } #main_content .content .tag6 A:hover { FONT-SIZE: 27px; COLOR: #000; TEXT-DECORATION: underline } #main_content .content .tag5 A { FONT-SIZE: 22px; COLOR: #148e12; TEXT-DECORATION: none } #main_content .content .tag5 A:hover { FONT-SIZE: 22px; COLOR: #148e12; TEXT-DECORATION: underline } #main_content .content .tag4 A { FONT-SIZE: 20px; COLOR: #91c98f; TEXT-DECORATION: underline } #main_content .content .tag4 A:hover { FONT-SIZE: 20px; COLOR: #91c98f; TEXT-DECORATION: none } #main_content .content .tag3 A { FONT-SIZE: 16px; COLOR: #000; TEXT-DECORATION: underline } #main_content .content .tag3 A:hover { FONT-SIZE: 16px; COLOR: #000; TEXT-DECORATION: none } #main_content .content .tag2 A { FONT-SIZE: 12px; COLOR: #4c235f; TEXT-DECORATION: underline } #main_content .content .tag2 A:hover { FONT-SIZE: 12px; COLOR: #4c235f; TEXT-DECORATION: none } #main_content .content .tag1 A { FONT-SIZE: 12px; COLOR: #db5167; TEXT-DECORATION: underline } #main_content .content .tag1 A:hover { FONT-SIZE: 12px; COLOR: #db5167; TEXT-DECORATION: none } #main_content .content .main_video { PADDING-LEFT: 15px; FLOAT: left; OVERFLOW: hidden; WIDTH: 160px; = HEIGHT: 260px } #main_content .content .main_video H3 { COLOR: #2778dc; TEXT-DECORATION: underline } #main_content .content .main_video H3 { COLOR: #2778dc; TEXT-DECORATION: none } #main_content .content .main_video H3 { FONT-WEIGHT: bold; FONT-SIZE: 16px; COLOR: #2778dc } #main_content .content .main_video .date { FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #33183f } #main_content .content .main_video P { MARGIN: 0px } #main_content .content .other_videos { PADDING-RIGHT: 10px; PADDING-LEFT: 12px; FLOAT: left; PADDING-BOTTOM: = 0px; WIDTH: 340px; PADDING-TOP: 0px; HEIGHT: 260px } #main_content .content .other_videos LI { PADDING-RIGHT: 0px; PADDING-LEFT: 7px; FLOAT: left; PADDING-BOTTOM: = 0px; MARGIN: 0px 0px 7px; OVERFLOW: hidden; WIDTH: 105px; PADDING-TOP: = 0px; HEIGHT: 115px } #main_content .content .other_videos H4 { FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #777779 } #main_content .content .other_videos H4 A { COLOR: #777779; TEXT-DECORATION: underline } #main_content .content .other_videos H4 A:hover { COLOR: #777779; TEXT-DECORATION: none } #main_content .content .other_videos .date { FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: #33183f } #main_content .content .left_column { FLOAT: left; MARGIN: 0px 7px 0px 0px; WIDTH: 260px } #main_content .content .right_column { FLOAT: left; WIDTH: 260px } #main_content .content .right_column .news { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px = 0px 7px; WIDTH: 260px; PADDING-TOP: 0px } #main_content .content .left_column .news { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px = 0px 7px; WIDTH: 260px; PADDING-TOP: 0px } #main_content .content .right_column .news .primary { DISPLAY: none } #main_content .content .left_column .news .primary { DISPLAY: none } #main_content .content .right_column .news .secondary { DISPLAY: none } #main_content .content .left_column .news .secondary { DISPLAY: none } #main_content .content .right_column .news .content { BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 7px; PADDING-LEFT: 7px; = BORDER-LEFT-WIDTH: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_background.= gif) #fff repeat-x right top; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: = 0px; MARGIN-LEFT: 4px; OVERFLOW: hidden; WIDTH: 246px; PADDING-TOP: 7px; = BORDER-RIGHT-WIDTH: 0px } #main_content .content .left_column .news .content { BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 7px; PADDING-LEFT: 7px; = BORDER-LEFT-WIDTH: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_background.= gif) #fff repeat-x right top; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: = 0px; MARGIN-LEFT: 4px; OVERFLOW: hidden; WIDTH: 246px; PADDING-TOP: 7px; = BORDER-RIGHT-WIDTH: 0px } #main_content .content .right_column .news .content IMG { BORDER-RIGHT: #fff 5px solid; BORDER-TOP: #fff 5px solid; MARGIN: 0px = 0px 5px; BORDER-LEFT: #fff 5px solid; BORDER-BOTTOM: #fff 5px solid } #main_content .content .left_column .news .content IMG { BORDER-RIGHT: #fff 5px solid; BORDER-TOP: #fff 5px solid; MARGIN: 0px = 0px 5px; BORDER-LEFT: #fff 5px solid; BORDER-BOTTOM: #fff 5px solid } #main_content .content .right_column .news .content H3 { PADDING-LEFT: 5px; FONT-WEIGHT: bold; FONT-SIZE: 15px; COLOR: #429e3a } #main_content .content .left_column .news .content H3 { PADDING-LEFT: 5px; FONT-WEIGHT: bold; FONT-SIZE: 15px; COLOR: #429e3a } #main_content .content .right_column .news .content H3 A { COLOR: #429e3a; TEXT-DECORATION: none } #main_content .content .left_column .news .content H3 A { COLOR: #429e3a; TEXT-DECORATION: none } #main_content .content .right_column .news .content H3 A:hover { COLOR: #429e3a; TEXT-DECORATION: underline } #main_content .content .left_column .news .content H3 A:hover { COLOR: #429e3a; TEXT-DECORATION: underline } #main_content .content .right_column .news .content .date { FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #33183f } #main_content .content .left_column .news .content .date { FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #33183f } #main_content .content .right_column .news .content P { PADDING-RIGHT: 0px; PADDING-LEFT: 5px; PADDING-BOTTOM: 0px; MARGIN: 0px = 0px 7px; PADDING-TOP: 0px } #main_content .content .left_column .news .content P { PADDING-RIGHT: 0px; PADDING-LEFT: 5px; PADDING-BOTTOM: 0px; MARGIN: 0px = 0px 7px; PADDING-TOP: 0px } .button_foto { FONT-SIZE: 11px; FLOAT: left; MARGIN: 10px 7px 10px 0px } .button_foto A { PADDING-RIGHT: 0px; PADDING-LEFT: 20px; BACKGROUND: = url(/static/slo/microsites/zadovoljna/img/icon_foto.gif) no-repeat left = 50%; PADDING-BOTTOM: 3px; COLOR: #33183f; PADDING-TOP: 3px; = TEXT-DECORATION: underline } .button_foto A:hover { PADDING-RIGHT: 0px; PADDING-LEFT: 20px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/buttons/icon_foto_hover.gif) = no-repeat left 50%; PADDING-BOTTOM: 3px; COLOR: #23931f; PADDING-TOP: = 3px; TEXT-DECORATION: none } .button_audio { FONT-SIZE: 11px; FLOAT: left; MARGIN: 10px 7px 10px 0px } .button_audio A { PADDING-RIGHT: 0px; PADDING-LEFT: 20px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/buttons/icon_audio.gif) = no-repeat left 50%; PADDING-BOTTOM: 3px; COLOR: #33183f; PADDING-TOP: = 3px; TEXT-DECORATION: underline } .button_audio A:hover { PADDING-RIGHT: 0px; PADDING-LEFT: 20px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/buttons/icon_audio_hover.gif) = no-repeat left 50%; PADDING-BOTTOM: 3px; COLOR: #dd2745; PADDING-TOP: = 3px; TEXT-DECORATION: none } .button_video { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11px; FLOAT: left; = PADDING-BOTTOM: 5px; MARGIN: 5px 7px 10px 0px; PADDING-TOP: 5px } .button_video A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/buttons/icon_video.gif) = no-repeat left 50%; PADDING-BOTTOM: 5px; MARGIN: 5px 0px; COLOR: = #33183f; PADDING-TOP: 5px; TEXT-DECORATION: underline } .button_video A:hover { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/buttons/icon_video_hover.gif) = no-repeat left 50%; PADDING-BOTTOM: 5px; COLOR: #23931f; PADDING-TOP: = 5px; TEXT-DECORATION: none } #main_content .content .other_videos_gallery { MARGIN: 0px } #main_content .content .awardImage { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: = url(/static/slo/microsites/zadovoljna/img/elements/ford_fiesta_nagrada.jp= g) no-repeat 0px 1px; PADDING-BOTTOM: 0px; MARGIN: 0px 0px 30px; WIDTH: = 516px; PADDING-TOP: 0px; HEIGHT: 177px } #main_content .content .other_videos_gallery .boxContainerAlign { FLOAT: left; MARGIN: 0px 15px 0px 0px; WIDTH: 90px } #main_content .content .other_videos_gallery LI { PADDING-RIGHT: 8px; PADDING-LEFT: 8px; FLOAT: left; PADDING-BOTTOM: = 8px; MARGIN: 0px; WIDTH: 90px; PADDING-TOP: 8px } #main_content .content .other_videos_gallery LI IMG { BORDER-RIGHT: #f4f3ee 7px solid; BORDER-TOP: #f4f3ee 7px solid; = BORDER-LEFT: #f4f3ee 7px solid; BORDER-BOTTOM: #f4f3ee 7px solid } #main_content .content .other_videos_gallery .clearRepeater { CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: none; = PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: 510px; PADDING-TOP: 0px; = HEIGHT: 7px } #main_content .content .other_videos_gallery LI H4 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: = 0px; MARGIN: 5px 0px 0px; WIDTH: 90px; PADDING-TOP: 0px } #main_content .content .other_videos_gallery LI H4 A { COLOR: #2778dc; TEXT-DECORATION: underline } #main_content .content .other_videos_gallery LI H4 A:hover { COLOR: #2778dc; TEXT-DECORATION: none } .top_rated_photos UL LI { DISPLAY: inline; FONT-SIZE: 9px; FLOAT: left; MARGIN: 0px 7px; WIDTH: = 92px; COLOR: #666; TEXT-ALIGN: right } .top_rated_photos UL LI IMG { BORDER-RIGHT: #f4f3ee 7px solid; BORDER-TOP: #f4f3ee 7px solid; = DISPLAY: block; MARGIN: 0px 0px 5px; BORDER-LEFT: #f4f3ee 7px solid; = BORDER-BOTTOM: #f4f3ee 7px solid } .top_rated_photos UL LI .rating { FONT-WEIGHT: bold; FONT-SIZE: 14px; MARGIN: 1px 0px; COLOR: #2778dc } .top_rated_photos UL LI .star_1 { FLOAT: left; MARGIN: 1px 0px 0px; WIDTH: 26px; HEIGHT: 26px } .top_rated_photos UL LI .star_1_5 { FLOAT: left; MARGIN: 1px 0px 0px; WIDTH: 26px; HEIGHT: 26px } .top_rated_photos UL LI .star_2 { FLOAT: left; MARGIN: 1px 0px 0px; WIDTH: 26px; HEIGHT: 26px } .top_rated_photos UL LI .star_2_5 { FLOAT: left; MARGIN: 1px 0px 0px; WIDTH: 26px; HEIGHT: 26px } .top_rated_photos UL LI .star_3 { FLOAT: left; MARGIN: 1px 0px 0px; WIDTH: 26px; HEIGHT: 26px } .top_rated_photos UL LI .star_3_5 { FLOAT: left; MARGIN: 1px 0px 0px; WIDTH: 26px; HEIGHT: 26px } .top_rated_photos UL LI .star_4 { FLOAT: left; MARGIN: 1px 0px 0px; WIDTH: 26px; HEIGHT: 26px } .top_rated_photos UL LI .star_4_5 { FLOAT: left; MARGIN: 1px 0px 0px; WIDTH: 26px; HEIGHT: 26px } .top_rated_photos UL LI .star_5 { FLOAT: left; MARGIN: 1px 0px 0px; WIDTH: 26px; HEIGHT: 26px } .top_rated_photos UL LI .star_1 { BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/star_1_big.gif) = no-repeat left top } .top_rated_photos UL LI .star_1_5 { BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/star_1_5_big.gif) = no-repeat left top } .top_rated_photos UL LI .star_2 { BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/star_2_big.gif) = no-repeat left top } .top_rated_photos UL LI .star_2_5 { BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/star_2_5_big.gif) = no-repeat left top } .top_rated_photos UL LI .star_3 { BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/star_3_big.gif) = no-repeat left top } .top_rated_photos UL LI .star_3_5 { BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/star_3_5_big.gif) = no-repeat left top } .top_rated_photos UL LI .star_4 { BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/star_4_big.gif) = no-repeat left top } .top_rated_photos UL LI .star_4_5 { BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/star_4_5_big.gif) = no-repeat left top } .top_rated_photos UL LI .star_5 { BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/star_5_big.gif) = no-repeat left top } #box_central_video_list_11 .media_pagination { PADDING-RIGHT: 10px; BORDER-TOP: #f0f0f0 1px solid; PADDING-LEFT: 10px; = PADDING-BOTTOM: 0px; PADDING-TOP: 7px } #box_central_video_list_11 .media_pagination SPAN { MARGIN: 0px 10px 0px 0px } .textual_content .chat_container A.searchbutton { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 10px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/buttons/search_left.gif) = no-repeat left top; FLOAT: left; PADDING-BOTTOM: 0px; PADDING-TOP: 0px; = TEXT-DECORATION: none } .textual_content .chat_container A.searchbutton SPAN { PADDING-RIGHT: 10px; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/buttons/search_right.gif) = no-repeat right top; PADDING-BOTTOM: 0px; FONT: bold 13px/16px Tahoma; = VERTICAL-ALIGN: middle; COLOR: white; PADDING-TOP: 3px; HEIGHT: 22px; = TEXT-DECORATION: none } .textual_content .chat_container A.searchbutton:hover SPAN { COLOR: #a84700 } .chat_container .photostory_of_the_day_back_container_s_text H3 { FONT-WEIGHT: bold; FONT-SIZE: 18px; MIN-HEIGHT: 15px; MARGIN: 0px 0px = 5px; COLOR: #ff8409; HEIGHT: auto! important } #nick_form INPUT { BORDER-RIGHT: #ccc 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #ccc 1px = solid; PADDING-LEFT: 2px; FONT-SIZE: 12px; PADDING-BOTTOM: 2px; = BORDER-LEFT: #ccc 1px solid; PADDING-TOP: 2px; BORDER-BOTTOM: #ccc 1px = solid; FONT-FAMILY: Verdana,Arial,Helvetica,sans-serif } #nick_form .chatLogin { DISPLAY: block; MARGIN: 5px 0px 0px } .chat_container { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; = PADDING-TOP: 10px } .small_box_chat .content .text { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: = 0px; OVERFLOW: hidden; WIDTH: 210px; PADDING-TOP: 0px } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/clanek/novice/article.css .full { =09 } .article { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; = MARGIN-LEFT: 10px; PADDING-TOP: 10px } .article H1 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: = 22px; PADDING-BOTTOM: 0px; COLOR: #429e3a; PADDING-TOP: 0px; HEIGHT: = 31px } .article H2 { FONT-WEIGHT: bold; FONT-SIZE: 14px; MARGIN: 5px 0px; COLOR: #79cc73 } .article .article_summary { FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #6c6b6b } .article .article_summary P { FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #6c6b6b } .article .article_pdf { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: #ffffff; = PADDING-BOTTOM: 5px; PADDING-TOP: 5px } .article .article_text { FONT-SIZE: 11px; COLOR: #000 } .picturewide { FONT-SIZE: 11px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_widepicture= .gif) no-repeat 50% bottom; MARGIN: 10px 0px 10px 3px; WIDTH: 520px } .picturewide .picturewide_comment { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; FONT-SIZE: = 11px; PADDING-BOTTOM: 10px; COLOR: #ff9900; PADDING-TOP: 10px } .picturewide .picturewide_comment .author { FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: #33183f } .picture { FONT-SIZE: 11px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_picture.gif= ) no-repeat 50% bottom; FLOAT: left; MARGIN: 10px 14px 5px 0px; WIDTH: = 213px } .picture .picture_comment { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; FONT-SIZE: = 11px; PADDING-BOTTOM: 10px; COLOR: #33183f; PADDING-TOP: 10px } .picture .picture_comment .author { FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: #33183f } .article BLOCKQUOTE { FONT-SIZE: 14px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/background_quote_top.gif) = #ffffff no-repeat; FLOAT: right; MARGIN: 15px 0px 15px 15px; WIDTH: = 185px } .article BLOCKQUOTE Q { PADDING-RIGHT: 15px; DISPLAY: block; PADDING-LEFT: 15px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/background_quote_bottom.gif) = no-repeat right bottom; PADDING-BOTTOM: 23px; PADDING-TOP: 23px } .article BLOCKQUOTE DIV { FONT-WEIGHT: bold; FONT-SIZE: 11px; MARGIN: 8px 8px 8px 15px; = FONT-STYLE: normal } .article BLOCKQUOTE.noQuotationMarks { PADDING-RIGHT: 15px; PADDING-LEFT: 15px; BACKGROUND: #ffffff; FLOAT: = right; PADDING-BOTTOM: 15px; MARGIN: 15px 0px 15px 15px; WIDTH: 155px; = PADDING-TOP: 15px } .left { PADDING-RIGHT: 0px; PADDING-LEFT: 7px; PADDING-BOTTOM: 0px; MARGIN: = 10px 0px 0px; PADDING-TOP: 0px } .right { PADDING-RIGHT: 7px; PADDING-LEFT: 7px; PADDING-BOTTOM: 0px; MARGIN: = 10px 0px 0px; PADDING-TOP: 0px } .large_box { MARGIN: 0px 0px 0px 7px; WIDTH: 527px } .large_box .large_box_primary { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #fff; = PADDING-BOTTOM: 0px; PADDING-TOP: 0px } .large_box .large_box_primary H2 { PADDING-RIGHT: 0px; PADDING-LEFT: 10px; FONT-WEIGHT: normal; FONT-SIZE: = 15px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_small_box_p= rimary_h1_background.gif) no-repeat left bottom; PADDING-BOTTOM: 8px; = MARGIN: 0px; COLOR: #fff; PADDING-TOP: 3px } .large_box .large_box_secondary { FONT-SIZE: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_large_box_s= econdary.gif) no-repeat; WIDTH: 527px; HEIGHT: 12px } .large_box .large_box_content { BACKGROUND: #fff } .small_box { MARGIN: 0px 0px 7px; WIDTH: 260px } .small_box .small_box_primary { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #fff; = PADDING-BOTTOM: 0px; PADDING-TOP: 0px } .small_box .small_box_primary H2 { PADDING-RIGHT: 0px; PADDING-LEFT: 10px; FONT-WEIGHT: normal; FONT-SIZE: = 15px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_small_box_p= rimary_h1_background.gif) no-repeat left bottom; PADDING-BOTTOM: 8px; = MARGIN: 0px; COLOR: #fff; PADDING-TOP: 3px } .small_box .small_box_secondary { FONT-SIZE: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_small_box_s= econdary.gif) no-repeat; WIDTH: 260px; HEIGHT: 8px } .small_box .small_box_content { PADDING-RIGHT: 7px; PADDING-LEFT: 7px; BACKGROUND: #fff; = PADDING-BOTTOM: 7px; WIDTH: 246px; PADDING-TOP: 5px } .small_box .related_articles { =09 } .small_box .related_articles LI { PADDING-RIGHT: 0px; PADDING-LEFT: 21px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/related_articles_icon.gif) = no-repeat 0px 6px; PADDING-BOTTOM: 7px; PADDING-TOP: 7px } .small_box .related_articles A { FONT-WEIGHT: normal; COLOR: #193943; TEXT-DECORATION: none } .small_box .related_articles A:hover { FONT-WEIGHT: normal; COLOR: #193943; TEXT-DECORATION: underline } .small_box .send { =09 } .small_box .send TEXTAREA { MARGIN: 0px 0px 7px; WIDTH: 240px; HEIGHT: 75px } .small_box .send INPUT { FONT-SIZE: 11px; MARGIN: 0px 0px 3px; WIDTH: 240px; COLOR: #193943 } .small_box .send .button { BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; = FONT-SIZE: 12px; BACKGROUND: #058905; FLOAT: left; WIDTH: 65px; CURSOR: = pointer; COLOR: #fff; BORDER-BOTTOM: #057b05 1px solid; HEIGHT: 20px; = BORDER-RIGHT-WIDTH: 0px } .small_box .send .button:hover { BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; = BACKGROUND: #069606; FLOAT: left; CURSOR: pointer; COLOR: #fff; = BORDER-BOTTOM: #058905 1px solid; BORDER-RIGHT-WIDTH: 0px } .small_box .commentSendButton .button { BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; = FONT-SIZE: 12px; BACKGROUND: #058905; FLOAT: left; MARGIN: 5px 0px 0px; = WIDTH: 65px; CURSOR: pointer; COLOR: #fff; BORDER-BOTTOM: #057b05 1px = solid; HEIGHT: 20px; BORDER-RIGHT-WIDTH: 0px } .small_box .commentSendButton .button:hover { BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; = BACKGROUND: #069606; FLOAT: left; CURSOR: pointer; COLOR: #fff; = BORDER-BOTTOM: #058905 1px solid; BORDER-RIGHT-WIDTH: 0px } .small_box .send .login_warning { MARGIN: 0px 0px 0px 7px } .small_box .send .login_warning A { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 22px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_rating_logi= n_warning.gif) no-repeat 0px 50%; PADDING-BOTTOM: 0px; COLOR: #c40303; = PADDING-TOP: 8px; HEIGHT: 20px; TEXT-DECORATION: none } .small_box .send .login_warning A:hover { COLOR: #c40303; TEXT-DECORATION: underline } #rating .head UL { FLOAT: left } #rating .head .numeration { PADDING-RIGHT: 12px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: = 0px; MARGIN: 0px; PADDING-TOP: 0px; TEXT-ALIGN: right } #rating .head .numeration H2 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: = 14px; FLOAT: none; PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #3f1e4f; = PADDING-TOP: 4px } #rating .head .numeration .total { FONT-WEIGHT: normal; FONT-SIZE: 9px; COLOR: #666666 } #rating #article_vote_container_tnx { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; = PADDING-TOP: 5px } #rating .head .appeal { FONT-WEIGHT: bold; FONT-SIZE: 12px; FLOAT: right; MARGIN: 0px 15px 0px = 0px; WIDTH: 90px; COLOR: #429e3a; TEXT-ALIGN: right } .stars A { PADDING-RIGHT: 0px; BACKGROUND-POSITION: 0px 1px; DISPLAY: block; = PADDING-LEFT: 0px; FLOAT: left; BACKGROUND-IMAGE: url(../img/stars.gif); = PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: 18px; CURSOR: pointer; = PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 18px } .stars A.over { BACKGROUND-POSITION: 0px -31px } .stars A.selected { BACKGROUND-POSITION: 0px -63px } .stars A.selectedover { BACKGROUND-POSITION: 0px -47px } .stars A.selectedless { BACKGROUND-POSITION: 0px -15px } #rating .login_warning { DISPLAY: inline; FLOAT: left; MARGIN: 0px 0px 0px 7px; WIDTH: 170px } #rating .login_warning A { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 22px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_rating_logi= n_warning.gif) no-repeat 0px 50%; PADDING-BOTTOM: 0px; COLOR: #c40303; = PADDING-TOP: 0px; TEXT-DECORATION: none } #rating .login_warning A:hover { COLOR: #c40303; TEXT-DECORATION: underline } .small_box .shareContent LI { DISPLAY: block; FONT-SIZE: 12px; FLOAT: left; MARGIN: 0px 7px 0px 0px; = WIDTH: auto! important; COLOR: #fff; WHITE-SPACE: nowrap } .small_box .shareContent A { COLOR: #000000; TEXT-DECORATION: none } .small_box .shareContent A:hover { TEXT-DECORATION: underline } .small_box .shareContent LI.blog A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.newsvine A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.reddit A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.stumbleupon A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.google A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.facebook A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.furl A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.myspace A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.delicious A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.yahoo A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.digg A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.twitter A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.blog A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/blog_small.gif) no-repeat 0px 5px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.newsvine A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/newsvine_small.gif) no-repeat 0px = 3px; PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.reddit A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/reddit_small.gif) no-repeat 0px 4px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.stumbleupon A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/stumbleupon_small.gif) no-repeat 0px = 4px; PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.google A { PADDING-RIGHT: 0px; PADDING-LEFT: 17px; BACKGROUND: = url(/static/slo/shared/img/buttons/google_small.gif) no-repeat 0px 4px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.facebook A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/facebook_small.gif) no-repeat 0px = 4px; PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.furl A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/furl_small.gif) no-repeat 0px 4px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.myspace A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/myspace_small.gif) no-repeat 0px 4px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.delicious A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/delicious_small.gif) no-repeat 0px = 4px; PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.yahoo A { PADDING-RIGHT: 0px; PADDING-LEFT: 28px; BACKGROUND: = url(/static/slo/shared/img/buttons/yahoo_small.gif) no-repeat 0px 4px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.digg A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/digg_small.gif) no-repeat 0px 4px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.twitter A { PADDING-RIGHT: 0px; PADDING-LEFT: 23px; BACKGROUND: = url(/static/slo/shared/img/buttons/twitter_small.gif) no-repeat 0px 4px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .large_box .comments { PADDING-RIGHT: 7px; PADDING-LEFT: 7px; BACKGROUND: #fff; = PADDING-BOTTOM: 12px; PADDING-TOP: 0px } .large_box .comments .lister { FLOAT: left; COLOR: #000 } .large_box .comments .lister A { FONT-WEIGHT: normal; COLOR: #000; TEXT-DECORATION: none } .large_box .comments .lister A:hover { FONT-WEIGHT: normal; COLOR: #000; TEXT-DECORATION: underline } .large_box .comments .lister .selected { FONT-WEIGHT: bold; COLOR: #000 } .large_box .comments .sort { FLOAT: right; COLOR: #000 } .large_box .comments .sort A { FONT-WEIGHT: normal; COLOR: #000; TEXT-DECORATION: none } .large_box .comments .sort A:hover { FONT-WEIGHT: normal; COLOR: #000; TEXT-DECORATION: underline } .large_box .comments H4 { FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #3f1e4f } .large_box .comments .comment_date { FONT-SIZE: 11px; COLOR: #6c6b6b } .photoGallery { MARGIN: 10px 0px 15px 6px; WIDTH: 514px } .photoGallery .headOpen { MARGIN: 0px 0px 5px 13px; WIDTH: 514px } .photoGallery .headOpen H3 { FONT-WEIGHT: bold; FONT-SIZE: 14px } .photoGallery .headOpen .grey { FONT-WEIGHT: normal; COLOR: #666666 } .photoGallery .comment { PADDING-RIGHT: 43px; PADDING-LEFT: 43px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } .photoGallery .imageBig { MARGIN: 0px 0px 10px 45px; POSITION: relative } #photoSlide { MARGIN: 0px 0px 10px; WIDTH: 514px; HEIGHT: 99px } #photoSlide .backward { BACKGROUND: = url(/static/slo/microsites/golfportal/img/gallery/fotoslide_left.gif) = no-repeat 0px 50%; FLOAT: left; WIDTH: 22px; HEIGHT: 99px } #photoSlide .backward A { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/gallery/fotoslide_left_go.gif) = no-repeat; PADDING-BOTTOM: 0px; MARGIN: 40px 0px 0px; PADDING-TOP: 0px; = HEIGHT: 22px } #photoSlide .backward A:hover { BACKGROUND: = url(/static/slo/microsites/golfportal/img/gallery/fotoslide_left_go_h.gif= ) no-repeat } #photoSlide .forward { BACKGROUND: = url(/static/slo/microsites/golfportal/img/gallery/fotoslide_right.gif) = no-repeat 0px 50%; FLOAT: left; WIDTH: 22px; HEIGHT: 99px } #photoSlide .forward A { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/gallery/fotoslide_right_go.gif)= no-repeat; PADDING-BOTTOM: 0px; MARGIN: 40px 0px 0px; PADDING-TOP: 0px; = HEIGHT: 22px } #photoSlide .forward A:hover { BACKGROUND: = url(/static/slo/microsites/golfportal/img/gallery/fotoslide_right_go_h.gi= f) no-repeat } #photoSlide .holder { PADDING-RIGHT: 14px; PADDING-LEFT: 14px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/gallery/fotoslide_center.gif) = repeat-x; FLOAT: left; PADDING-BOTTOM: 0px; WIDTH: 442px; PADDING-TOP: = 0px; HEIGHT: 99px } #photoSlide .holder UL { MARGIN: 15px 0px 0px; OVERFLOW: hidden; WIDTH: 442px; WHITE-SPACE: = nowrap; HEIGHT: 70px } #photoSlide .holder LI { PADDING-RIGHT: 2px; DISPLAY: inline; PADDING-LEFT: 2px; PADDING-BOTTOM: = 0px; WIDTH: 68px; CURSOR: pointer; PADDING-TOP: 0px } #photoSlide .holder .galleryThumb IMG { BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; DISPLAY: = inline; MARGIN: 0px; BORDER-LEFT: black 1px solid; WIDTH: 68px; = BORDER-BOTTOM: black 1px solid } #photoSlide .holder .galleryThumb .imgselected { BORDER-RIGHT: #ff0000 1px solid; BORDER-TOP: #ff0000 1px solid; = BORDER-LEFT: #ff0000 1px solid; BORDER-BOTTOM: #ff0000 1px solid } .article TABLE { BORDER-RIGHT: #c8e3c5 2px solid; PADDING-RIGHT: 0px; BORDER-TOP: = #c8e3c5 2px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px = 0px 14px; BORDER-LEFT: #c8e3c5 2px solid; LINE-HEIGHT: normal; = PADDING-TOP: 0px; BORDER-BOTTOM: #c8e3c5 2px solid; BORDER-COLLAPSE: = collapse; border-spacing: 0 } .article CAPTION { FONT-WEIGHT: bold; FONT-SIZE: 13px; MARGIN: 0px 0px 7px } .article TD { BORDER-RIGHT: #c8e3c5 1px solid; BORDER-TOP: #c8e3c5 1px solid; = BORDER-LEFT: #c8e3c5 1px solid; BORDER-BOTTOM: #c8e3c5 1px solid; = TEXT-ALIGN: center } .article THEAD TH { BORDER-RIGHT: #c8e3c5 1px solid; BORDER-TOP: #c8e3c5 1px solid; = FONT-WEIGHT: normal; BACKGROUND: #f4f3ee; BORDER-LEFT: #c8e3c5 1px = solid; COLOR: #000000; BORDER-BOTTOM: #c8e3c5 1px solid } .article TBODY TH { BORDER-RIGHT: #c8e3c5 1px solid; BORDER-TOP: #c8e3c5 1px solid; = FONT-WEIGHT: normal; BACKGROUND: #f4f3ee; BORDER-LEFT: #c8e3c5 1px = solid; COLOR: #000000; BORDER-BOTTOM: #c8e3c5 1px solid } .article THEAD TH { PADDING-RIGHT: 4px; PADDING-LEFT: 4px; FONT-WEIGHT: bold; = PADDING-BOTTOM: 4px; PADDING-TOP: 4px } .article TBODY TH { PADDING-RIGHT: 4px; PADDING-LEFT: 4px; FONT-WEIGHT: bold; = PADDING-BOTTOM: 4px; PADDING-TOP: 4px } .article THEAD TH { TEXT-ALIGN: center } #main_content .article .menu { MARGIN: 0px 7px 0px 0px } #main_content .article .menu .content { DISPLAY: inline; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_menu_conten= t_background.jpg) repeat-x 0px 0px; FLOAT: left; WIDTH: 100%; = LIST-STYLE-TYPE: none } #main_content .content .source { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; FONT-WEIGHT: = bold; FONT-SIZE: 11px; PADDING-BOTTOM: 0px; OVERFLOW: hidden; COLOR: = #33183f; PADDING-TOP: 1px } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/clanek/novice/footer.css #footer .primary { DISPLAY: none } #footer .secondary { FONT-SIZE: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/footer_secondary.gi= f) no-repeat; WIDTH: 886px; HEIGHT: 8px } #footer .content { PADDING-RIGHT: 7px; PADDING-LEFT: 7px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/footer_background.g= if) #e7e7e7 repeat-x right 50%; PADDING-BOTTOM: 7px; MARGIN: 7px 0px = 0px; WIDTH: 873px; PADDING-TOP: 7px; HEIGHT: 30px } #footer LI { PADDING-RIGHT: 4px; PADDING-LEFT: 4px; FLOAT: left; PADDING-BOTTOM: = 0px; BORDER-LEFT: #5a5a5a 1px solid; PADDING-TOP: 0px } #footer LI:first-child { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px } #footer A { FONT-WEIGHT: bold; COLOR: #5a5a5a; TEXT-DECORATION: none } #footer A:hover { FONT-WEIGHT: bold; COLOR: #5a5a5a; TEXT-DECORATION: underline } #footer .copyrights { MARGIN: 3px 0px 0px; COLOR: #525153 } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/clanek/novice/article.css .full { =09 } .article { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; = MARGIN-LEFT: 10px; PADDING-TOP: 10px } .article H1 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: = 22px; PADDING-BOTTOM: 0px; COLOR: #429e3a; PADDING-TOP: 0px; HEIGHT: = 31px } .article H2 { FONT-WEIGHT: bold; FONT-SIZE: 14px; MARGIN: 5px 0px; COLOR: #79cc73 } .article .article_summary { FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #6c6b6b } .article .article_summary P { FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #6c6b6b } .article .article_pdf { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: #ffffff; = PADDING-BOTTOM: 5px; PADDING-TOP: 5px } .article .article_text { FONT-SIZE: 11px; COLOR: #000 } .picturewide { FONT-SIZE: 11px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_widepicture= .gif) no-repeat 50% bottom; MARGIN: 10px 0px 10px 3px; WIDTH: 520px } .picturewide .picturewide_comment { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; FONT-SIZE: = 11px; PADDING-BOTTOM: 10px; COLOR: #ff9900; PADDING-TOP: 10px } .picturewide .picturewide_comment .author { FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: #33183f } .picture { FONT-SIZE: 11px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_picture.gif= ) no-repeat 50% bottom; FLOAT: left; MARGIN: 10px 14px 5px 0px; WIDTH: = 213px } .picture .picture_comment { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; FONT-SIZE: = 11px; PADDING-BOTTOM: 10px; COLOR: #33183f; PADDING-TOP: 10px } .picture .picture_comment .author { FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: #33183f } .article BLOCKQUOTE { FONT-SIZE: 14px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/background_quote_top.gif) = #ffffff no-repeat; FLOAT: right; MARGIN: 15px 0px 15px 15px; WIDTH: = 185px } .article BLOCKQUOTE Q { PADDING-RIGHT: 15px; DISPLAY: block; PADDING-LEFT: 15px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/background_quote_bottom.gif) = no-repeat right bottom; PADDING-BOTTOM: 23px; PADDING-TOP: 23px } .article BLOCKQUOTE DIV { FONT-WEIGHT: bold; FONT-SIZE: 11px; MARGIN: 8px 8px 8px 15px; = FONT-STYLE: normal } .article BLOCKQUOTE.noQuotationMarks { PADDING-RIGHT: 15px; PADDING-LEFT: 15px; BACKGROUND: #ffffff; FLOAT: = right; PADDING-BOTTOM: 15px; MARGIN: 15px 0px 15px 15px; WIDTH: 155px; = PADDING-TOP: 15px } .left { PADDING-RIGHT: 0px; PADDING-LEFT: 7px; PADDING-BOTTOM: 0px; MARGIN: = 10px 0px 0px; PADDING-TOP: 0px } .right { PADDING-RIGHT: 7px; PADDING-LEFT: 7px; PADDING-BOTTOM: 0px; MARGIN: = 10px 0px 0px; PADDING-TOP: 0px } .large_box { MARGIN: 0px 0px 0px 7px; WIDTH: 527px } .large_box .large_box_primary { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #fff; = PADDING-BOTTOM: 0px; PADDING-TOP: 0px } .large_box .large_box_primary H2 { PADDING-RIGHT: 0px; PADDING-LEFT: 10px; FONT-WEIGHT: normal; FONT-SIZE: = 15px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_small_box_p= rimary_h1_background.gif) no-repeat left bottom; PADDING-BOTTOM: 8px; = MARGIN: 0px; COLOR: #fff; PADDING-TOP: 3px } .large_box .large_box_secondary { FONT-SIZE: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_large_box_s= econdary.gif) no-repeat; WIDTH: 527px; HEIGHT: 12px } .large_box .large_box_content { BACKGROUND: #fff } .small_box { MARGIN: 0px 0px 7px; WIDTH: 260px } .small_box .small_box_primary { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #fff; = PADDING-BOTTOM: 0px; PADDING-TOP: 0px } .small_box .small_box_primary H2 { PADDING-RIGHT: 0px; PADDING-LEFT: 10px; FONT-WEIGHT: normal; FONT-SIZE: = 15px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_small_box_p= rimary_h1_background.gif) no-repeat left bottom; PADDING-BOTTOM: 8px; = MARGIN: 0px; COLOR: #fff; PADDING-TOP: 3px } .small_box .small_box_secondary { FONT-SIZE: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_small_box_s= econdary.gif) no-repeat; WIDTH: 260px; HEIGHT: 8px } .small_box .small_box_content { PADDING-RIGHT: 7px; PADDING-LEFT: 7px; BACKGROUND: #fff; = PADDING-BOTTOM: 7px; WIDTH: 246px; PADDING-TOP: 5px } .small_box .related_articles { =09 } .small_box .related_articles LI { PADDING-RIGHT: 0px; PADDING-LEFT: 21px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/related_articles_icon.gif) = no-repeat 0px 6px; PADDING-BOTTOM: 7px; PADDING-TOP: 7px } .small_box .related_articles A { FONT-WEIGHT: normal; COLOR: #193943; TEXT-DECORATION: none } .small_box .related_articles A:hover { FONT-WEIGHT: normal; COLOR: #193943; TEXT-DECORATION: underline } .small_box .send { =09 } .small_box .send TEXTAREA { MARGIN: 0px 0px 7px; WIDTH: 240px; HEIGHT: 75px } .small_box .send INPUT { FONT-SIZE: 11px; MARGIN: 0px 0px 3px; WIDTH: 240px; COLOR: #193943 } .small_box .send .button { BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; = FONT-SIZE: 12px; BACKGROUND: #058905; FLOAT: left; WIDTH: 65px; CURSOR: = pointer; COLOR: #fff; BORDER-BOTTOM: #057b05 1px solid; HEIGHT: 20px; = BORDER-RIGHT-WIDTH: 0px } .small_box .send .button:hover { BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; = BACKGROUND: #069606; FLOAT: left; CURSOR: pointer; COLOR: #fff; = BORDER-BOTTOM: #058905 1px solid; BORDER-RIGHT-WIDTH: 0px } .small_box .commentSendButton .button { BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; = FONT-SIZE: 12px; BACKGROUND: #058905; FLOAT: left; MARGIN: 5px 0px 0px; = WIDTH: 65px; CURSOR: pointer; COLOR: #fff; BORDER-BOTTOM: #057b05 1px = solid; HEIGHT: 20px; BORDER-RIGHT-WIDTH: 0px } .small_box .commentSendButton .button:hover { BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; = BACKGROUND: #069606; FLOAT: left; CURSOR: pointer; COLOR: #fff; = BORDER-BOTTOM: #058905 1px solid; BORDER-RIGHT-WIDTH: 0px } .small_box .send .login_warning { MARGIN: 0px 0px 0px 7px } .small_box .send .login_warning A { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 22px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_rating_logi= n_warning.gif) no-repeat 0px 50%; PADDING-BOTTOM: 0px; COLOR: #c40303; = PADDING-TOP: 8px; HEIGHT: 20px; TEXT-DECORATION: none } .small_box .send .login_warning A:hover { COLOR: #c40303; TEXT-DECORATION: underline } #rating .head UL { FLOAT: left } #rating .head .numeration { PADDING-RIGHT: 12px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: = 0px; MARGIN: 0px; PADDING-TOP: 0px; TEXT-ALIGN: right } #rating .head .numeration H2 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: = 14px; FLOAT: none; PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #3f1e4f; = PADDING-TOP: 4px } #rating .head .numeration .total { FONT-WEIGHT: normal; FONT-SIZE: 9px; COLOR: #666666 } #rating #article_vote_container_tnx { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; = PADDING-TOP: 5px } #rating .head .appeal { FONT-WEIGHT: bold; FONT-SIZE: 12px; FLOAT: right; MARGIN: 0px 15px 0px = 0px; WIDTH: 90px; COLOR: #429e3a; TEXT-ALIGN: right } .stars A { PADDING-RIGHT: 0px; BACKGROUND-POSITION: 0px 1px; DISPLAY: block; = PADDING-LEFT: 0px; FLOAT: left; BACKGROUND-IMAGE: url(../img/stars.gif); = PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: 18px; CURSOR: pointer; = PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 18px } .stars A.over { BACKGROUND-POSITION: 0px -31px } .stars A.selected { BACKGROUND-POSITION: 0px -63px } .stars A.selectedover { BACKGROUND-POSITION: 0px -47px } .stars A.selectedless { BACKGROUND-POSITION: 0px -15px } #rating .login_warning { DISPLAY: inline; FLOAT: left; MARGIN: 0px 0px 0px 7px; WIDTH: 170px } #rating .login_warning A { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 22px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_rating_logi= n_warning.gif) no-repeat 0px 50%; PADDING-BOTTOM: 0px; COLOR: #c40303; = PADDING-TOP: 0px; TEXT-DECORATION: none } #rating .login_warning A:hover { COLOR: #c40303; TEXT-DECORATION: underline } .small_box .shareContent LI { DISPLAY: block; FONT-SIZE: 12px; FLOAT: left; MARGIN: 0px 7px 0px 0px; = WIDTH: auto! important; COLOR: #fff; WHITE-SPACE: nowrap } .small_box .shareContent A { COLOR: #000000; TEXT-DECORATION: none } .small_box .shareContent A:hover { TEXT-DECORATION: underline } .small_box .shareContent LI.blog A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.newsvine A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.reddit A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.stumbleupon A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.google A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.facebook A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.furl A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.myspace A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.delicious A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.yahoo A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.digg A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.twitter A { DISPLAY: block; MARGIN: 0px 9px 0px 0px; HEIGHT: 23px } .small_box .shareContent LI.blog A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/blog_small.gif) no-repeat 0px 5px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.newsvine A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/newsvine_small.gif) no-repeat 0px = 3px; PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.reddit A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/reddit_small.gif) no-repeat 0px 4px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.stumbleupon A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/stumbleupon_small.gif) no-repeat 0px = 4px; PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.google A { PADDING-RIGHT: 0px; PADDING-LEFT: 17px; BACKGROUND: = url(/static/slo/shared/img/buttons/google_small.gif) no-repeat 0px 4px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.facebook A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/facebook_small.gif) no-repeat 0px = 4px; PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.furl A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/furl_small.gif) no-repeat 0px 4px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.myspace A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/myspace_small.gif) no-repeat 0px 4px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.delicious A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/delicious_small.gif) no-repeat 0px = 4px; PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.yahoo A { PADDING-RIGHT: 0px; PADDING-LEFT: 28px; BACKGROUND: = url(/static/slo/shared/img/buttons/yahoo_small.gif) no-repeat 0px 4px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.digg A { PADDING-RIGHT: 0px; PADDING-LEFT: 24px; BACKGROUND: = url(/static/slo/shared/img/buttons/digg_small.gif) no-repeat 0px 4px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .small_box .shareContent LI.twitter A { PADDING-RIGHT: 0px; PADDING-LEFT: 23px; BACKGROUND: = url(/static/slo/shared/img/buttons/twitter_small.gif) no-repeat 0px 4px; = PADDING-BOTTOM: 0px; PADDING-TOP: 6px } .large_box .comments { PADDING-RIGHT: 7px; PADDING-LEFT: 7px; BACKGROUND: #fff; = PADDING-BOTTOM: 12px; PADDING-TOP: 0px } .large_box .comments .lister { FLOAT: left; COLOR: #000 } .large_box .comments .lister A { FONT-WEIGHT: normal; COLOR: #000; TEXT-DECORATION: none } .large_box .comments .lister A:hover { FONT-WEIGHT: normal; COLOR: #000; TEXT-DECORATION: underline } .large_box .comments .lister .selected { FONT-WEIGHT: bold; COLOR: #000 } .large_box .comments .sort { FLOAT: right; COLOR: #000 } .large_box .comments .sort A { FONT-WEIGHT: normal; COLOR: #000; TEXT-DECORATION: none } .large_box .comments .sort A:hover { FONT-WEIGHT: normal; COLOR: #000; TEXT-DECORATION: underline } .large_box .comments H4 { FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #3f1e4f } .large_box .comments .comment_date { FONT-SIZE: 11px; COLOR: #6c6b6b } .photoGallery { MARGIN: 10px 0px 15px 6px; WIDTH: 514px } .photoGallery .headOpen { MARGIN: 0px 0px 5px 13px; WIDTH: 514px } .photoGallery .headOpen H3 { FONT-WEIGHT: bold; FONT-SIZE: 14px } .photoGallery .headOpen .grey { FONT-WEIGHT: normal; COLOR: #666666 } .photoGallery .comment { PADDING-RIGHT: 43px; PADDING-LEFT: 43px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } .photoGallery .imageBig { MARGIN: 0px 0px 10px 45px; POSITION: relative } #photoSlide { MARGIN: 0px 0px 10px; WIDTH: 514px; HEIGHT: 99px } #photoSlide .backward { BACKGROUND: = url(/static/slo/microsites/golfportal/img/gallery/fotoslide_left.gif) = no-repeat 0px 50%; FLOAT: left; WIDTH: 22px; HEIGHT: 99px } #photoSlide .backward A { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/gallery/fotoslide_left_go.gif) = no-repeat; PADDING-BOTTOM: 0px; MARGIN: 40px 0px 0px; PADDING-TOP: 0px; = HEIGHT: 22px } #photoSlide .backward A:hover { BACKGROUND: = url(/static/slo/microsites/golfportal/img/gallery/fotoslide_left_go_h.gif= ) no-repeat } #photoSlide .forward { BACKGROUND: = url(/static/slo/microsites/golfportal/img/gallery/fotoslide_right.gif) = no-repeat 0px 50%; FLOAT: left; WIDTH: 22px; HEIGHT: 99px } #photoSlide .forward A { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/gallery/fotoslide_right_go.gif)= no-repeat; PADDING-BOTTOM: 0px; MARGIN: 40px 0px 0px; PADDING-TOP: 0px; = HEIGHT: 22px } #photoSlide .forward A:hover { BACKGROUND: = url(/static/slo/microsites/golfportal/img/gallery/fotoslide_right_go_h.gi= f) no-repeat } #photoSlide .holder { PADDING-RIGHT: 14px; PADDING-LEFT: 14px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/gallery/fotoslide_center.gif) = repeat-x; FLOAT: left; PADDING-BOTTOM: 0px; WIDTH: 442px; PADDING-TOP: = 0px; HEIGHT: 99px } #photoSlide .holder UL { MARGIN: 15px 0px 0px; OVERFLOW: hidden; WIDTH: 442px; WHITE-SPACE: = nowrap; HEIGHT: 70px } #photoSlide .holder LI { PADDING-RIGHT: 2px; DISPLAY: inline; PADDING-LEFT: 2px; PADDING-BOTTOM: = 0px; WIDTH: 68px; CURSOR: pointer; PADDING-TOP: 0px } #photoSlide .holder .galleryThumb IMG { BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; DISPLAY: = inline; MARGIN: 0px; BORDER-LEFT: black 1px solid; WIDTH: 68px; = BORDER-BOTTOM: black 1px solid } #photoSlide .holder .galleryThumb .imgselected { BORDER-RIGHT: #ff0000 1px solid; BORDER-TOP: #ff0000 1px solid; = BORDER-LEFT: #ff0000 1px solid; BORDER-BOTTOM: #ff0000 1px solid } .article TABLE { BORDER-RIGHT: #c8e3c5 2px solid; PADDING-RIGHT: 0px; BORDER-TOP: = #c8e3c5 2px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px = 0px 14px; BORDER-LEFT: #c8e3c5 2px solid; LINE-HEIGHT: normal; = PADDING-TOP: 0px; BORDER-BOTTOM: #c8e3c5 2px solid; BORDER-COLLAPSE: = collapse; border-spacing: 0 } .article CAPTION { FONT-WEIGHT: bold; FONT-SIZE: 13px; MARGIN: 0px 0px 7px } .article TD { BORDER-RIGHT: #c8e3c5 1px solid; BORDER-TOP: #c8e3c5 1px solid; = BORDER-LEFT: #c8e3c5 1px solid; BORDER-BOTTOM: #c8e3c5 1px solid; = TEXT-ALIGN: center } .article THEAD TH { BORDER-RIGHT: #c8e3c5 1px solid; BORDER-TOP: #c8e3c5 1px solid; = FONT-WEIGHT: normal; BACKGROUND: #f4f3ee; BORDER-LEFT: #c8e3c5 1px = solid; COLOR: #000000; BORDER-BOTTOM: #c8e3c5 1px solid } .article TBODY TH { BORDER-RIGHT: #c8e3c5 1px solid; BORDER-TOP: #c8e3c5 1px solid; = FONT-WEIGHT: normal; BACKGROUND: #f4f3ee; BORDER-LEFT: #c8e3c5 1px = solid; COLOR: #000000; BORDER-BOTTOM: #c8e3c5 1px solid } .article THEAD TH { PADDING-RIGHT: 4px; PADDING-LEFT: 4px; FONT-WEIGHT: bold; = PADDING-BOTTOM: 4px; PADDING-TOP: 4px } .article TBODY TH { PADDING-RIGHT: 4px; PADDING-LEFT: 4px; FONT-WEIGHT: bold; = PADDING-BOTTOM: 4px; PADDING-TOP: 4px } .article THEAD TH { TEXT-ALIGN: center } #main_content .article .menu { MARGIN: 0px 7px 0px 0px } #main_content .article .menu .content { DISPLAY: inline; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/article_menu_conten= t_background.jpg) repeat-x 0px 0px; FLOAT: left; WIDTH: 100%; = LIST-STYLE-TYPE: none } #main_content .content .source { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; FONT-WEIGHT: = bold; FONT-SIZE: 11px; PADDING-BOTTOM: 0px; OVERFLOW: hidden; COLOR: = #33183f; PADDING-TOP: 1px } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/clanek/novice/forum.css #forum { FONT-SIZE: 11px; BACKGROUND: #fff; FLOAT: left; MARGIN: 5px 0px 0px; = WIDTH: 541px; FONT-FAMILY: arial, helvetica, sans-serif } .warningColor { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; FONT-SIZE: 12px; PADDING-BOTTOM: = 3px; MARGIN: 0px; WIDTH: 535px; COLOR: #fff; PADDING-TOP: 3px; = FONT-FAMILY: arial,verdana; BACKGROUND-COLOR: #c20c09 } #forum A { COLOR: #666666; TEXT-DECORATION: none } #forum A:hover { TEXT-DECORATION: underline } #forum #categories { CLEAR: both } #forum #category_new_theme { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-SIZE: 10px; FLOAT: right; = PADDING-BOTTOM: 1px; BORDER-LEFT: #bfc8d1 1px solid; PADDING-TOP: 0px; = BORDER-BOTTOM: #bfc8d1 1px solid; BACKGROUND-COLOR: #ffffff } #forum #forum_name { CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; = FONT-SIZE: 18px; BACKGROUND: #ffffff; MARGIN-BOTTOM: 5px; = PADDING-BOTTOM: 0px; LINE-HEIGHT: normal; PADDING-TOP: 15px; = BORDER-BOTTOM: #c3cdd6 1px dashed } #forum #forum_name A { COLOR: #9e9e9e; TEXT-DECORATION: none } #forum #forum_name A:hover { TEXT-DECORATION: underline } #forum #category_name { CLEAR: both; PADDING-LEFT: 10px; FONT-WEIGHT: bold; FONT-SIZE: 12px; = BACKGROUND-IMAGE: url(../img/forum//background_category_name.gif); = PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 18px } #forum #category_name .cat_name_link { PADDING-TOP: 3px } .forum_category_name_footer { BACKGROUND-IMAGE: url(../img/forum/footer_category_name.gif); = BORDER-BOTTOM: #ffffff 1px solid; BACKGROUND-REPEAT: no-repeat; HEIGHT: = 3px } #forum #category_name A { FLOAT: left; COLOR: #5f768b; TEXT-DECORATION: none } #forum #category_name A:hover { TEXT-DECORATION: underline } #forum #topics { CLEAR: both; WIDTH: 541px } #forum #topics #name { FLOAT: left; BORDER-BOTTOM: #e5e9f0 1px solid } #forum #topics #show { FLOAT: left; BORDER-BOTTOM: #e5e9f0 1px solid } #forum #topics #post { FLOAT: left; BORDER-BOTTOM: #e5e9f0 1px solid } #forum #topics #last { FLOAT: left; BORDER-BOTTOM: #e5e9f0 1px solid } #forum #topics #name_t { FLOAT: left; BORDER-BOTTOM: #5b6e8f 1px solid } #forum #topics #show_t { FLOAT: left; BORDER-BOTTOM: #5b6e8f 1px solid } #forum #topics #post_t { FLOAT: left; BORDER-BOTTOM: #5b6e8f 1px solid } #forum #topics #last_t { FLOAT: left; BORDER-BOTTOM: #5b6e8f 1px solid } #forum #topics #name { PADDING-LEFT: 10px; BACKGROUND: #ffffff; WIDTH: 293px; HEIGHT: 28px } #forum #topics #name A { FONT-WEIGHT: normal; COLOR: #000000; TEXT-DECORATION: none } #forum #topics #name A:hover { FONT-WEIGHT: normal; TEXT-DECORATION: underline } #forum #topics #show { BACKGROUND: #eaeaea; WIDTH: 50px; HEIGHT: 28px; TEXT-ALIGN: center } #forum #topics #post { BACKGROUND: #eaeaea; WIDTH: 50px; HEIGHT: 28px; TEXT-ALIGN: center } #forum #topics #last { BACKGROUND: #ffffff; WIDTH: 180px; TEXT-ALIGN: right } #forum #topics #name_t { PADDING-LEFT: 10px; FONT-WEIGHT: bold; BACKGROUND: #ffffff; WIDTH: = 293px } #forum #topics #show_t { FONT-WEIGHT: bold; BACKGROUND: #eaeaea; WIDTH: 50px; TEXT-ALIGN: center } #forum #topics #post_t { FONT-WEIGHT: bold; BACKGROUND: #eaeaea; WIDTH: 50px; TEXT-ALIGN: center } #forum #topics #last_t { FONT-WEIGHT: bold; BACKGROUND: #ffffff; WIDTH: 180px; TEXT-ALIGN: right } #forum #last10 { CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; = FONT-SIZE: 18px; PADDING-BOTTOM: 0px; COLOR: #9e9e9e; LINE-HEIGHT: = normal; PADDING-TOP: 10px; BORDER-BOTTOM: #c3cdd6 1px dashed } #forum #topic .post { WIDTH: 541px } #forum #topic .post_bg1 { BACKGROUND: url(../img/forum/forum_bg1.jpg) } #forum #topic .post_bg2 { BACKGROUND: url(../img/forum/forum_bg2.jpg) } #forum #topic .top_bg1 { MARGIN-TOP: 1px; BACKGROUND: url(../img/forum/forum_bg1_top.jpg); = HEIGHT: 3px } #forum #topic .top_bg2 { MARGIN-TOP: 1px; BACKGROUND: url(../img/forum/forum_bg2_top.jpg); = HEIGHT: 3px } #forum #topic .bottom_bg1 { BACKGROUND: url(../img/forum/forum_bg1_bottom.jpg); HEIGHT: 3px } #forum #topic .bottom_bg2 { BACKGROUND: url(../img/forum/forum_bg2_bottom.jpg); HEIGHT: 3px } #forum #topic .level_1 { MARGIN-LEFT: 0px; WIDTH: 541px } #forum #topic .level_2 { MARGIN-LEFT: 6px; WIDTH: 535px } #forum #topic .level_3 { MARGIN-LEFT: 12px; WIDTH: 529px } #forum #topic .level_4 { MARGIN-LEFT: 18px; WIDTH: 523px } #forum #topic .level_5 { MARGIN-LEFT: 24px; WIDTH: 517px } #forum #topic .level_6 { MARGIN-LEFT: 30px; WIDTH: 511px } #forum #topic .level_7 { MARGIN-LEFT: 36px; WIDTH: 505px } #forum #topic .level_8 { MARGIN-LEFT: 42px; WIDTH: 499px } #forum #topic .level_9 { MARGIN-LEFT: 48px; WIDTH: 493px } #forum #topic .level_10 { MARGIN-LEFT: 54px; WIDTH: 487px } #forum #topic .level_11 { MARGIN-LEFT: 60px; WIDTH: 481px } #forum #topic .level_1 .text { WIDTH: 376px } #forum #topic .level_2 .text { WIDTH: 370px } #forum #topic .level_3 .text { WIDTH: 364px } #forum #topic .level_4 .text { WIDTH: 358px } #forum #topic .level_5 .text { WIDTH: 352px } #forum #topic .level_6 .text { WIDTH: 346px } #forum #topic .level_7 .text { WIDTH: 340px } #forum #topic .level_8 .text { WIDTH: 334px } #forum #topic .level_9 .text { WIDTH: 328px } #forum #topic .level_10 .text { WIDTH: 322px } #forum #topic .level_11 .text { WIDTH: 314px } #forum #topic .post .padding { PADDING-LEFT: 3px } #forum #topic .post .userdata { FONT-WEIGHT: bold; FLOAT: left; WIDTH: 155px; COLOR: #5e778d } #forum #topic .post .text { FLOAT: left } #forum #topic .post .text .date { DISPLAY: block; FONT-SIZE: 11px; FLOAT: left; WIDTH: 110px; COLOR: = #818181 } #forum #topic .post .text .replyto { FONT-SIZE: smaller; FLOAT: left; WIDTH: 110px } #forum #topic .post .text .buttons { FLOAT: right } #forum #topic .post .text .buttons .button_post { FLOAT: left } #forum #topic .post .text INPUT { BORDER-RIGHT: #bfc8d1 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: = #bfc8d1 1px solid; FONT-WEIGHT: bold; FONT-SIZE: 10px; BACKGROUND: = url(/static/slo/microsites/zadovoljna/img/forum/forum_button_arrow_off.pn= g) #ffffff no-repeat right bottom; BORDER-LEFT: #bfc8d1 1px solid; = CURSOR: pointer; COLOR: #b0b0b0; BORDER-BOTTOM: #bfc8d1 1px solid } #forum .button_1 { BORDER-RIGHT: #bfc8d1 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: = #bfc8d1 1px solid; FONT-WEIGHT: bold; FONT-SIZE: 10px; BACKGROUND: = url(/static/slo/microsites/zadovoljna/img/forum/forum_button_arrow_off.pn= g) #ffffff no-repeat right bottom; BORDER-LEFT: #bfc8d1 1px solid; = CURSOR: pointer; COLOR: #b0b0b0; BORDER-BOTTOM: #bfc8d1 1px solid } #forum #topic .post .text INPUT:hover { BACKGROUND: = url(/static/slo/microsites/zadovoljna/img/forum/forum_button_arrow_on.png= ) #9a0000 no-repeat right bottom; COLOR: #ffffff } #forum .button_1:hover { BACKGROUND: = url(/static/slo/microsites/zadovoljna/img/forum/forum_button_arrow_on.png= ) #9a0000 no-repeat right bottom; COLOR: #ffffff } #forum #topic .post .text .postcontent { CLEAR: both; FLOAT: left; WIDTH: 99%; PADDING-TOP: 10px } #forum #topic .post .text .postcontent .quote { BORDER-RIGHT: silver 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: silver = 1px solid; PADDING-LEFT: 3px; BACKGROUND: #fff; PADDING-BOTTOM: 3px; = BORDER-LEFT: silver 1px solid; WIDTH: 95%; PADDING-TOP: 3px; = BORDER-BOTTOM: silver 1px solid } #forum #topic .post .text .postcontent .quote .post_image { MARGIN-BOTTOM: 3px; OVERFLOW: auto; WIDTH: 90% } #forum #topic .form_post { Z-INDEX: 100; BACKGROUND: #fff; WIDTH: 541px; POSITION: absolute } #forum #topic .guest { FONT-WEIGHT: normal; FONT-SIZE: 10px; FONT-STYLE: italic } #forum #topic .post_count { MARGIN-TOP: 10px; DISPLAY: block; FONT-WEIGHT: normal } #forum #topic .post .post_image { MARGIN-BOTTOM: 3px; OVERFLOW: auto; WIDTH: 463px } #forum #path { FONT-WEIGHT: bold } #forum #page_navigator { PADDING-TOP: 5px } #forum #form { WIDTH: 531px } #forum #form .form_top { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: = url(/static/slo/microsites/zadovoljna/img/forum/forum_form_top.jpg) = no-repeat; PADDING-BOTTOM: 0px; OVERFLOW: hidden; WIDTH: 531px; = PADDING-TOP: 0px; HEIGHT: 4px } #forum #form .form_toolbar { PADDING-LEFT: 4px; BACKGROUND: = url(/static/slo/microsites/zadovoljna/img/forum/forum_form.jpg); WIDTH: = 527px; HEIGHT: 19px } #forum #form .form_toolbar .left { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } #forum #form .form_toolbar #remove_reply { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } #forum #form .form_toolbar INPUT { BORDER-RIGHT: #bfc8d1 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: = #bfc8d1 1px solid; FONT-WEIGHT: bold; FONT-SIZE: 10px; BACKGROUND: = url(/static/slo/microsites/zadovoljna/img/forum/forum_form_down_arrow.jpg= ) #ffffff no-repeat right bottom; BORDER-LEFT: #bfc8d1 1px solid; = CURSOR: pointer; COLOR: #b0b0b0; BORDER-BOTTOM: #bfc8d1 1px solid } #forum #form .form_toolbar_bottom { BACKGROUND: = url(/static/slo/microsites/zadovoljna/img/forum/forum_form_toolbar_bottom= .jpg) no-repeat; OVERFLOW: hidden; WIDTH: 531px; HEIGHT: 2px } #forum #form .form_toolbar INPUT:hover { BACKGROUND: = url(/static/slo/microsites/zadovoljna/img/forum/forum_button_arrow_on.png= ) #9a0000 no-repeat right bottom; COLOR: #ffffff } #forum #form .form_input { PADDING-RIGHT: 2px; PADDING-LEFT: 2px; BACKGROUND: = url(/static/slo/microsites/zadovoljna/img/forum/forum_form_bg.jpg) = repeat-y; PADDING-BOTTOM: 2px; WIDTH: 527px; PADDING-TOP: 2px } #forum #form .form_bottom { BACKGROUND: = url(/static/slo/microsites/zadovoljna/img/forum/forum_form_bottom_bottom.= jpg); OVERFLOW: hidden; WIDTH: 531px; HEIGHT: 2px } #forum #form .text_input { BORDER-RIGHT: silver 1px solid; BORDER-TOP: silver 1px solid; = BORDER-LEFT: silver 1px solid; WIDTH: 350px; BORDER-BOTTOM: silver 1px = solid } #forum #form TEXTAREA { BORDER-RIGHT: silver 1px solid; BORDER-TOP: silver 1px solid; MARGIN: = 0px 0px 7px; BORDER-LEFT: silver 1px solid; WIDTH: 520px; BORDER-BOTTOM: = silver 1px solid; HEIGHT: 200px } #forum #form #smilies IMG { CURSOR: pointer } #forum #locked_topic { MARGIN: 0px auto; WIDTH: 200px; TEXT-ALIGN: center } #form_post_holder { HEIGHT: 300px } .left { FLOAT: left } .right { FLOAT: right } .hidden_object { DISPLAY: none } .visible_object { DISPLAY: block } .preview_link { FONT-WEIGHT: bold; CURSOR: pointer } .preview { BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: black = 1px solid; DISPLAY: none; PADDING-LEFT: 3px; Z-INDEX: 200; LEFT: 0px; = PADDING-BOTTOM: 3px; BORDER-LEFT: black 1px solid; WIDTH: 541px; = PADDING-TOP: 3px; BORDER-BOTTOM: black 1px solid; POSITION: absolute; = BACKGROUND-COLOR: #ffffff } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/clanek/novice/poll_results.css .poll_result { PADDING-RIGHT: 0px; PADDING-LEFT: 15px; PADDING-BOTTOM: 7px; OVERFLOW: = hidden; PADDING-TOP: 0px } .poll_result A { COLOR: #444347; TEXT-DECORATION: underline } .poll_result A:hover { COLOR: #444347; TEXT-DECORATION: none } .poll_result H2 { FONT-WEIGHT: bold; FONT-SIZE: 16px; COLOR: #058905 } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/clanek/novice/faq.css .faq_content H1 { PADDING-RIGHT: 13px; DISPLAY: inline; PADDING-LEFT: 7px; FONT-SIZE: = 18px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/main_content_box_pr= imary_h1_background.gif) #faf9f5 no-repeat right bottom; PADDING-BOTTOM: = 7px; COLOR: #fff; PADDING-TOP: 5px; HEIGHT: 50px } .faq_content DT { PADDING-RIGHT: 0px; PADDING-LEFT: 20px; FONT-WEIGHT: bold; FONT-SIZE: = 13px; PADDING-BOTTOM: 2px; COLOR: #000; PADDING-TOP: 2px } .faq_content DD { PADDING-RIGHT: 7px; PADDING-LEFT: 7px; FONT-SIZE: 12px; PADDING-BOTTOM: = 0px; COLOR: #000; PADDING-TOP: 0px } .faq_content DD HR { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; WIDTH: 100%; COLOR: #cfc3d5; HEIGHT: 1px; BACKGROUND-COLOR: = #cfc3d5; TEXT-ALIGN: left; BORDER-RIGHT-WIDTH: 0px } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/clanek/novice/archive.css #main_content .archive_box { MARGIN: 0px; WIDTH: 546px } #main_content .archive_box .archive_box_primary { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 0px; PADDING-BOTTOM: = 0px; MARGIN: 0px; WIDTH: 546px; PADDING-TOP: 0px; HEIGHT: 17px } #main_content .archive_box .archive_box_secondary { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 0px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/main_content_box_se= condary.gif); PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: 546px; = PADDING-TOP: 0px; HEIGHT: 16px } #main_content .archive_box .archive_box_content { PADDING-RIGHT: 7px; PADDING-LEFT: 0px; BACKGROUND: #fff; = PADDING-BOTTOM: 7px; PADDING-TOP: 0px; ywidth: 537px } #main_content .archive_box .archive_box_content .archive_link { PADDING-RIGHT: 10px; PADDING-LEFT: 19px; FONT-WEIGHT: normal; = FONT-SIZE: 16px; BACKGROUND: = url(/static/slo/microsites/bibaleze/img/buttons/icon_archive.gif) = no-repeat 0px 1px; FLOAT: right; PADDING-BOTTOM: 2px; MARGIN: 0px; = PADDING-TOP: 2px } #main_content .archive_box .archive_box_content .archive_link A { COLOR: #148e12; TEXT-DECORATION: none } #main_content .archive_box .archive_box_content .archive_link A:hover { COLOR: #148e12; TEXT-DECORATION: underline } .archive H1 { PADDING-RIGHT: 13px; DISPLAY: inline; PADDING-LEFT: 7px; FONT-SIZE: = 18px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/main_content_box_pr= imary_h1_background.gif) #faf9f5 no-repeat right center; FLOAT: none; = PADDING-BOTTOM: 10px; COLOR: #ffffff; PADDING-TOP: 5px; HEIGHT: 35px } .archive DT { PADDING-RIGHT: 0px; PADDING-LEFT: 25px; FONT-WEIGHT: bold; FONT-SIZE: = 13px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/buttons/icon_archive.gif) = no-repeat 3px 2px; PADDING-BOTTOM: 2px; COLOR: #058905; PADDING-TOP: 2px } .archive DD { PADDING-RIGHT: 7px; PADDING-LEFT: 25px; FONT-SIZE: 12px; = PADDING-BOTTOM: 0px; COLOR: #000; PADDING-TOP: 2px } .archive DD HR { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; WIDTH: 100%; COLOR: #cfc3d5; HEIGHT: 1px; BACKGROUND-COLOR: = #cfc3d5; TEXT-ALIGN: left; BORDER-RIGHT-WIDTH: 0px } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/clanek/novice/gadgets.css .gadget_box { MARGIN: 0px 0px 0px -7px; WIDTH: 551px; POSITION: relative } .gadget_box .gadget_box_primary { PADDING-RIGHT: 0px; MARGIN-TOP: 11px; PADDING-LEFT: 0px; FLOAT: right; = PADDING-BOTTOM: 0px; WIDTH: 541px; PADDING-TOP: 0px; POSITION: relative; = HEIGHT: 35px } .gadget_box .gadget_box_primary H1 { PADDING-RIGHT: 13px; DISPLAY: inline; PADDING-LEFT: 7px; FONT-SIZE: = 18px; BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/main_content_box_pr= imary_h1_background.gif) #faf9f5 no-repeat right 50%; PADDING-BOTTOM: = 0px; COLOR: #fff; PADDING-TOP: 5px; POSITION: absolute; HEIGHT: 30px } .gadget_box .gadget_box_secondary { BORDER-TOP: #fff 5px solid; DISPLAY: none; FONT-SIZE: 0px; BACKGROUND: = url(../img/main_content_box_secondary.gif); WIDTH: 551px; HEIGHT: 12px } .gadget_box .gadget_box_content { BORDER-RIGHT: #fff 5px solid; PADDING-RIGHT: 7px; PADDING-LEFT: 7px; = PADDING-BOTTOM: 7px; BORDER-LEFT: #fff 5px solid; WIDTH: 527px; = PADDING-TOP: 0px } .gadget_box_content .form_line { WIDTH: 534px } .gadget_box_content .form_line .form_line_left { PADDING-RIGHT: 7px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: = 3px; WIDTH: 243px; PADDING-TOP: 7px } .gadget_box_content .form_line .form_line_right { FLOAT: left; MARGIN: 5px 0px; WIDTH: 284px } .gadget_box .gadget_box_content .input_long { DISPLAY: block; FONT-SIZE: 12px; MARGIN: 2px 0px 5px; WIDTH: 250px } .gadget_box .gadget_box_content .input_middle { DISPLAY: block; FONT-SIZE: 12px; MARGIN: 2px 0px 5px; WIDTH: 125px } .gadget_box .gadget_box_content .input_small { DISPLAY: block; FONT-SIZE: 12px; MARGIN: 2px 0px 5px; WIDTH: 60px } .gadget_box .gadget_box_content TEXTAREA { DISPLAY: block; FONT-SIZE: 12px; MARGIN: 2px 0px 5px; WIDTH: 250px; = HEIGHT: 100px } .gadget_box .gadget_box_content .checkbox { FONT-SIZE: 12px; MARGIN: 5px 2px 0px } .gadget_box .gadget_box_content .radio_button { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 12px; = BORDER-BOTTOM-WIDTH: 0px; MARGIN: 5px 2px 0px; BORDER-RIGHT-WIDTH: 0px } .gadget_box .gadget_box_content .button { BORDER-RIGHT: #3a3a3a 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: = #3a3a3a 1px solid; DISPLAY: block; PADDING-LEFT: 5px; FONT-WEIGHT: bold; = FONT-SIZE: 12px; BACKGROUND: #3a3a3a; PADDING-BOTTOM: 2px; MARGIN: 7px = 0px; BORDER-LEFT: #3a3a3a 1px solid; COLOR: #fff; PADDING-TOP: 2px; = BORDER-BOTTOM: #3a3a3a 1px solid } .gadget_box_content .short_form_line { WIDTH: 534px } .gadget_box_content .short_form_line .short_form_line_left { PADDING-RIGHT: 7px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: = 3px; WIDTH: 110px; PADDING-TOP: 7px } .gadget_box_content .short_form_line .short_form_line_right { FLOAT: left; MARGIN: 5px 0px; WIDTH: 284px } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/clanek/novice/simple.css .simple H1 { FONT-WEIGHT: bold; MARGIN: 0px 0px 12px; COLOR: #058905 } .simple H2 { FONT-WEIGHT: bold; MARGIN: 0px 0px 12px; COLOR: #058905 } .simple H3 { FONT-WEIGHT: bold; MARGIN: 0px 0px 12px; COLOR: #058905 } .simple H1 { FONT-SIZE: 18px } .simple H2 { FONT-SIZE: 16px } .simple H3 { FONT-SIZE: 14px } .simple .text { DISPLAY: none } .simple .pagelister { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 8px = 8px 8px 0px; PADDING-TOP: 0px } .simple .newsletter { POSITION: relative } .simple .newsletter H3 { MARGIN: 6px 0px } .simple .newsletter P { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; = PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px } .simple .newsletter A.signButton { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 11px; BACKGROUND: = url(../img/buttons/newsletter_left.jpg) no-repeat left top; FLOAT: left; = PADDING-BOTTOM: 0px; LINE-HEIGHT: 16px; PADDING-TOP: 0px; HEIGHT: 39px; = TEXT-DECORATION: none } .simple .newsletter A.signButton SPAN { PADDING-RIGHT: 37px; DISPLAY: block; PADDING-LEFT: 0px; FONT-WEIGHT: = normal; FONT-SIZE: 16px; BACKGROUND: = url(../img/buttons/newsletter_right.jpg) no-repeat right top; = PADDING-BOTTOM: 11px; TEXT-TRANSFORM: none; WIDTH: auto; COLOR: #fff; = PADDING-TOP: 12px } .simple .newsletter A.signButton:hover { BACKGROUND-POSITION: left bottom; COLOR: #fff } .simple .newsletter A.signButton:hover SPAN { BACKGROUND-POSITION: right bottom; COLOR: #fff } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/slo/microsites/golfportal//css/style.css @import url( /static/slo/microsites/shared/css/default.css ); @import url( header.css ); @import url( navigation.css ); @import url( small_content.css ); @import url( main_content.css ); @import url( article.css ); @import url( footer.css ); @import url( article.css ); @import url( forum.css ); @import url( poll_results.css ); @import url( faq.css ); @import url( archive.css ); @import url( gadgets.css ); @import url( simple.css ); #header_brand { OVERFLOW: hidden; HEIGHT: 22px } #div_banner_A { BACKGROUND: #fff } #div_banner_M { BACKGROUND: #fff } #div_banner_H { BACKGROUND: #fff } BODY { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } DIV { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } DL { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } DT { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } DD { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } UL { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } OL { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } LI { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } H1 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } H2 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } H3 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } H4 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } H5 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } H6 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } PRE { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } FORM { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } FIELDSET { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } INPUT { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } TEXTAREA { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } BLOCKQUOTE { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } TH { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } TD { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: = Arial, Helvetica, sans-serif } P { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 5px; MARGIN: 0px; PADDING-TOP: 5px; FONT-FAMILY: = Arial, Helvetica, sans-serif } BODY { BACKGROUND: = url(/static/slo/microsites/golfportal/img/background_body.png) repeat-y = center top; MARGIN: 0px auto; WIDTH: 100% } TABLE { BORDER-COLLAPSE: collapse; border-spacing: 0 } FIELDSET { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px } IMG { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px } ABBR { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px } ACRONYM { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px } ADDRESS { FONT-WEIGHT: normal; FONT-STYLE: normal } CAPTION { FONT-WEIGHT: normal; FONT-STYLE: normal } CITE { FONT-WEIGHT: normal; FONT-STYLE: normal } CODE { FONT-WEIGHT: normal; FONT-STYLE: normal } DFN { FONT-WEIGHT: normal; FONT-STYLE: normal } TH { FONT-WEIGHT: normal; FONT-STYLE: normal } VAR { FONT-WEIGHT: normal; FONT-STYLE: normal } OL { LIST-STYLE-TYPE: none } UL { LIST-STYLE-TYPE: none } CAPTION { FONT-WEIGHT: normal; TEXT-ALIGN: left } TH { FONT-WEIGHT: normal; TEXT-ALIGN: left } TD { FONT-WEIGHT: normal; TEXT-ALIGN: left } BLOCKQUOTE:unknown { content: "" } BLOCKQUOTE:unknown { content: "" } Q:unknown { content: "" } Q:unknown { content: "" } BLOCKQUOTE { quotes: "" "" } Q { quotes: "" "" } A { COLOR: #0e8c0d; TEXT-DECORATION: underline } A:hover { COLOR: #0e8c0d; TEXT-DECORATION: none } #container { MARGIN: 0px auto; WIDTH: 886px; PADDING-TOP: 0px; HEIGHT: auto; = BACKGROUND-COLOR: #f4f3ee } #navigation { WIDTH: 886px } #content { BACKGROUND: = url(/static/slo/microsites/golfportal/img/backgrounds/test.gif); MARGIN: = 0px 0px 7px; WIDTH: 886px; PADDING-TOP: 10px } #content #main_content { PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; FLOAT: left; = PADDING-BOTTOM: 0px; MARGIN: 0px 5px 0px 7px; WIDTH: 551px; PADDING-TOP: = 0px } #content #small_content { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: #fff; FLOAT: left; = PADDING-BOTTOM: 0px; WIDTH: 301px; PADDING-TOP: 0px } #footer { WIDTH: 886px } .breadcrumb { MARGIN: 0px 0px 7px; WIDTH: 548px } .breadcrumb .breadcrumb_primary { FONT-SIZE: 0px; BACKGROUND: url(../images/breadcrumb_primary.gif) = no-repeat; WIDTH: 548px; HEIGHT: 9px } .breadcrumb .breadcrumb_secondary { FONT-SIZE: 0px; BACKGROUND: url(../images/breadcrumb_secondary.gif) = no-repeat; WIDTH: 548px; HEIGHT: 9px } .breadcrumb .breadcrumb_content { PADDING-RIGHT: 7px; PADDING-LEFT: 7px; BACKGROUND: #1e4652; = PADDING-BOTTOM: 0px; WIDTH: 534px; PADDING-TOP: 0px } .breadcrumb .breadcrumb_content LI { PADDING-RIGHT: 14px; PADDING-LEFT: 7px; BACKGROUND: = url(../images/breadcrumb_icon.gif) no-repeat right 50%; FLOAT: left; = PADDING-BOTTOM: 0px; COLOR: #fff; PADDING-TOP: 0px } .breadcrumb .breadcrumb_content LI:first-child { PADDING-RIGHT: 14px; PADDING-LEFT: 0px; BACKGROUND: = url(../images/breadcrumb_icon.gif) no-repeat right 50%; FLOAT: left; = PADDING-BOTTOM: 0px; COLOR: #fff; PADDING-TOP: 0px } .breadcrumb .breadcrumb_content LI A { FONT-WEIGHT: normal; COLOR: #fff; TEXT-DECORATION: underline } .breadcrumb .breadcrumb_content LI A:hover { FONT-WEIGHT: normal; COLOR: #fff; TEXT-DECORATION: none } .textual_content { MARGIN: 0px; OVERFLOW: hidden; WIDTH: 546px; BACKGROUND-COLOR: #ffffff } .textual_content .textual_content_primary { FONT-SIZE: 0px; WIDTH: 551px } .textual_content .textual_content_secondary { FONT-SIZE: 0px; WIDTH: 541px; HEIGHT: 5px; pading-bottom: 10px } .textual_content .textual_content_content { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; WIDTH: = 546px; PADDING-TOP: 0px; BACKGROUND-COLOR: #fff } .media_box { BACKGROUND: #fff; MARGIN: 7px 0px 0px 7px; WIDTH: 526px; COLOR: #000 } .media_box A { COLOR: #cb102f; TEXT-DECORATION: underline } .media_box A:hover { COLOR: #cb102f; TEXT-DECORATION: none } .media_box .media_box_primary { FONT-SIZE: 0px; BACKGROUND: #fff; HEIGHT: 9px } .media_box .media_box_secondary { FONT-SIZE: 0px; BACKGROUND: #fff; HEIGHT: 9px } .media_box .media_box_content { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 1px; = PADDING-TOP: 5px } .media_box .media_box_content H2 { FONT-WEIGHT: bold; FONT-SIZE: 14px; MARGIN: 0px 0px 5px } .media_box .media_box_content H3 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: = 12px; PADDING-BOTTOM: 6px; COLOR: #000000; PADDING-TOP: 6px } .media_box .media_box_content .player { MARGIN: 0px 0px 0px -3px } .media_box .media_box_content INPUT { FONT-SIZE: 11px; MARGIN: 0px 0px 0px 7px; WIDTH: 350px } .media_box .media_box_content LI { FONT-SIZE: 11px; FLOAT: left; MARGIN: 4px 0px 0px 7px; OVERFLOW: = hidden; WIDTH: 120px; COLOR: #fff; HEIGHT: 120px } .media_box .media_box_content LI H3 { FONT-WEIGHT: bold; FONT-SIZE: 12px; OVERFLOW: hidden; COLOR: #777779 } .media_box .media_box_content LI H3 A { FONT-WEIGHT: bold; COLOR: #777779; TEXT-DECORATION: none } .media_box .media_box_content LI H3 A:hover { FONT-WEIGHT: bold; COLOR: #777779; TEXT-DECORATION: underline } .media_box .media_box_content LI .media_box_time { FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: #33183f } .embed_video { PADDING-LEFT: 3px; MARGIN: 7px 0px 0px } .divider7px_horizontal { CLEAR: both; HEIGHT: 7px } .divider7px_vertical { FLOAT: left; WIDTH: 7px; HEIGHT: 1px } .pagelister { PADDING-RIGHT: 0px; PADDING-LEFT: 30px; PADDING-BOTTOM: 0px; MARGIN: = 8px 0px 0px; PADDING-TOP: 0px } .normal { MARGIN-TOP: 10px; PADDING-BOTTOM: 10px } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/shared/css/slimbox.css #lbOverlay { Z-INDEX: 1000; LEFT: 0px; WIDTH: 100%; CURSOR: pointer; POSITION: = absolute; BACKGROUND-COLOR: #000 } #lbCenter { Z-INDEX: 1001; LEFT: 50%; OVERFLOW: hidden; POSITION: absolute; = BACKGROUND-COLOR: #fff } #lbBottomContainer { Z-INDEX: 1001; LEFT: 50%; OVERFLOW: hidden; POSITION: absolute; = BACKGROUND-COLOR: #fff } .lbLoading { BACKGROUND: url(/static/shared/img/icons/ajax.gif) #fff no-repeat = center 50% } #lbImage { BORDER-RIGHT: #fff 10px solid; BORDER-TOP: #fff 10px solid; LEFT: 0px; = BORDER-LEFT: #fff 10px solid; BORDER-BOTTOM: #fff 10px solid; = BACKGROUND-REPEAT: no-repeat; POSITION: absolute; TOP: 0px } #lbPrevLink { DISPLAY: block; WIDTH: 50%; POSITION: absolute; TOP: 0px; outline: none } #lbNextLink { DISPLAY: block; WIDTH: 50%; POSITION: absolute; TOP: 0px; outline: none } #lbPrevLink { LEFT: 0px } #lbPrevLink:hover { BACKGROUND: url(/static/shared/img/icons/previous.gif) no-repeat 0% 15% } #lbNextLink { RIGHT: 0px } #lbNextLink:hover { BACKGROUND: url(/static/shared/img/icons/next.gif) no-repeat 100% 15% } #lbBottom { BORDER-RIGHT: #fff 10px solid; BORDER-TOP: #fff 10px; FONT-SIZE: 10px; = BORDER-LEFT: #fff 10px solid; COLOR: #666; LINE-HEIGHT: 1.4em; = BORDER-BOTTOM: #fff 10px solid; FONT-FAMILY: Verdana, Arial, Geneva, = Helvetica, sans-serif; TEXT-ALIGN: left } #lbCloseLink { DISPLAY: block; BACKGROUND: url(/static/shared/img/icons/close.gif) = no-repeat center 50%; FLOAT: right; MARGIN: 5px 0px; WIDTH: 66px; = HEIGHT: 22px } #lbCaption { MARGIN-RIGHT: 71px } #lbNumber { MARGIN-RIGHT: 71px } #lbCaption { FONT-WEIGHT: bold } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: text/css; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/slo/shared/css/registration2.css #registration_box { DISPLAY: block; FONT-SIZE: 11px; WIDTH: 450px; FONT-FAMILY: Arial, = Helvetica, sans-serif } #registration_box A:link { COLOR: #000000; TEXT-DECORATION: underline } #registration_box A:visited { COLOR: #000000; TEXT-DECORATION: underline } #registration_box A:active { COLOR: #0f3da1; TEXT-DECORATION: underline } #registration_box A:hover { COLOR: #000000; TEXT-DECORATION: none } #registration_box .text_short { WIDTH: 15% } .box_left { FLOAT: left; WIDTH: 280px } #registration_box #reg2_header { DISPLAY: block; FONT-SIZE: 0px; BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/header_registration_background.g= if); WIDTH: 450px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 33px } #registration_box #reg2_header .text { MARGIN-TOP: 15px; PADDING-LEFT: 120px; FONT-SIZE: 11px; FLOAT: left; = COLOR: #8b8b8b } #registration_box #reg2_header .close { PADDING-RIGHT: 12px; FONT-SIZE: 0px; FLOAT: right; MARGIN: 0px; = PADDING-TOP: 12px } #registration_box #reg2_header A:link { COLOR: #8b8b8b; TEXT-DECORATION: underline } #registration_box #reg2_header A:visited { COLOR: #8b8b8b; TEXT-DECORATION: underline } #registration_box #reg2_header A:active { COLOR: #8b8b8b; TEXT-DECORATION: underline } #registration_box #reg2_header A:hover { COLOR: #8b8b8b; TEXT-DECORATION: none } #registration_box #reg2_content { PADDING-RIGHT: 0px; OVERFLOW-Y: hidden; DISPLAY: block; PADDING-LEFT: = 0px; BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/content_registration_background.= gif); PADDING-BOTTOM: 0px; OVERFLOW: auto; WIDTH: 450px; PADDING-TOP: = 0px; BACKGROUND-REPEAT: repeat-y; HEIGHT: auto } #registration_box #reg2_content .hline { PADDING-RIGHT: 0px; BORDER-TOP: #a7a7a7 10px solid; PADDING-LEFT: 0px; = FONT-SIZE: 0px; PADDING-BOTTOM: 0px; MARGIN: 10px auto; WIDTH: 430px; = PADDING-TOP: 0px } #registration_box #reg2_content .left_content { PADDING-RIGHT: 3px; PADDING-LEFT: 7px; FONT-SIZE: 11px; FLOAT: left; = WIDTH: 130px; COLOR: #0f3da1; TEXT-ALIGN: right } #registration_box #reg2_content .left_label { PADDING-RIGHT: 3px; PADDING-LEFT: 7px; FONT-SIZE: 11px; FLOAT: left; = WIDTH: 130px; COLOR: #0f3da1; TEXT-ALIGN: right } #registration_box #settings_form .left_content { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; WIDTH: = 64px; PADDING-TOP: 0px } #registration_box #settings_form #sex .left_content { WIDTH: 30px } #registration_box #settings_form .left_label { WIDTH: 140px } #registration_box #reg2_content .middle_content { FONT-WEIGHT: 900; FONT-SIZE: 11px; FLOAT: left; MARGIN: 0px; WIDTH: = 145px; COLOR: #000000; PADDING-TOP: 3px } #registration_box #reg2_content .feedback_error { PADDING-RIGHT: 11px; PADDING-LEFT: 16px; BACKGROUND-ATTACHMENT: scroll; = FLOAT: right; BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/content_help_ico.gif); = PADDING-BOTTOM: 11px; MARGIN-LEFT: 10px; WIDTH: 110px; COLOR: #ca0000; = PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; BACKGROUND-COLOR: = transparent; background-x-position: left; background-y-position: top } #registration_box #reg2_content .help { DISPLAY: none; FONT-SIZE: 11px; FLOAT: right; PADDING-BOTTOM: 5px; = MARGIN: 0px auto; WIDTH: 420px; COLOR: #ffffff; PADDING-TOP: 5px; = BACKGROUND-COLOR: #ffff99 } #registration_box #reg2_content .instructions { MARGIN: 0px 0px 0px 46px; PADDING-TOP: 5px } .level2 { MARGIN: 0px } .left_content { MARGIN-TOP: 2px; WIDTH: 200px; PADDING-TOP: 0px } #settings_form .right_content { PADDING-RIGHT: 11px; PADDING-LEFT: 16px; FONT-WEIGHT: bold; FONT-SIZE: = 12px; PADDING-BOTTOM: 11px; MARGIN: 0px 0px 0px 72px; COLOR: #0f3da1; = PADDING-TOP: 0px; TEXT-ALIGN: left; background-x-position: left; = background-y-position: top } #settings_form #sex .sex { MARGIN-LEFT: 146px } #settings_form #sex .right_content { MARGIN: 0px 10px 0px 0px } #registration_box #reg2_content .feedback_success { PADDING-RIGHT: 11px; PADDING-LEFT: 16px; BACKGROUND-ATTACHMENT: scroll; = FLOAT: right; BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/content_success_ico.gif); = PADDING-BOTTOM: 11px; MARGIN-LEFT: 10px; WIDTH: 111px; COLOR: #00a200; = PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; BACKGROUND-COLOR: = transparent; background-x-position: left; background-y-position: top } #registration_box #reg2_content .button_next { PADDING-RIGHT: 5px; DISPLAY: inline; PADDING-LEFT: 24px; = BACKGROUND-ATTACHMENT: scroll; FLOAT: left; BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/button_next.gif); = PADDING-BOTTOM: 0px; MARGIN: 7px 11px 9px 0px; COLOR: #000000; = PADDING-TOP: 3px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 19px; = BACKGROUND-COLOR: transparent } #registration_box #reg2_content .button_email { PADDING-RIGHT: 5px; DISPLAY: inline; PADDING-LEFT: 24px; = BACKGROUND-ATTACHMENT: scroll; FLOAT: left; BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/button_next.gif); = PADDING-BOTTOM: 0px; MARGIN: 7px 11px 9px 0px; COLOR: #000000; = PADDING-TOP: 3px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 19px; = BACKGROUND-COLOR: transparent } #registration_box #reg2_content .button_done { PADDING-RIGHT: 5px; DISPLAY: inline; PADDING-LEFT: 24px; = BACKGROUND-ATTACHMENT: scroll; FLOAT: left; BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/button_next.gif); = PADDING-BOTTOM: 0px; MARGIN: 7px 11px 9px 0px; COLOR: #000000; = PADDING-TOP: 3px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 19px; = BACKGROUND-COLOR: transparent } #registration_box #reg2_content .button_done { BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/konec_registracije.gif) } #registration_box #reg2_content .button_email { PADDING-LEFT: 25px; FLOAT: right; MARGIN: 7px 10px 9px 0px; TEXT-ALIGN: = left } #registration_box #reg2_content .terms_link { MARGIN: 0px 10px 0px 0px } #registration_box #reg2_content .level2 .button_next { MARGIN: 7px 142px 9px 0px } #registration_box #reg2_content .button_next A { COLOR: #000000; TEXT-DECORATION: underline } #registration_box #reg2_content .button_next A:hover { COLOR: #000000; TEXT-DECORATION: none } #registration_box #reg2_content #passwords .button_next { MARGIN-RIGHT: 200px } #registration_box #reg2_content #gsmnum_form .button_next { MARGIN-RIGHT: 200px } #registration_box #reg2_content .button_back { DISPLAY: inline; PADDING-LEFT: 25px; BACKGROUND: = url(/static/slo/shared/img/registration2/button_back.gif) no-repeat left = top; FLOAT: right; WIDTH: 60px; COLOR: #000000; HEIGHT: 22px } #registration_box #reg2_content .button_back A { COLOR: #000000; TEXT-DECORATION: underline } #registration_box #reg2_content .button_back A:hover { COLOR: #000000; TEXT-DECORATION: none } #registration_box #reg2_content .warning { PADDING-RIGHT: 5px; DISPLAY: block; PADDING-LEFT: 25px; FONT-SIZE: = 11px; BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/warning_ico.gif); = PADDING-BOTTOM: 5px; MARGIN: 0px 11px 11px; COLOR: #ffffff; PADDING-TOP: = 5px; BACKGROUND-REPEAT: no-repeat; BACKGROUND-COLOR: #ca0000 } #registration_box #reg2_content .text { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; FONT-SIZE: 11px; = PADDING-BOTTOM: 5px; MARGIN: 0px 11px 11px; COLOR: #000000; PADDING-TOP: = 5px } #reg2_footer { DISPLAY: block; PADDING-LEFT: 16px; FONT-SIZE: 12px; BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/footer_registration_background.g= if); WIDTH: 434px; COLOR: #8b8b8b; PADDING-TOP: 7px; BACKGROUND-REPEAT: = no-repeat; HEIGHT: 30px } #reg2_footer .quad_pass A { FONT-WEIGHT: 900; COLOR: #ffffff; TEXT-DECORATION: none } #reg2_footer .quad_pass { FONT-WEIGHT: 900; FLOAT: left; BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/quad_pass_background.gif); = WIDTH: 19px; COLOR: #ffffff; MARGIN-RIGHT: 3px; PADDING-TOP: 2px; = BACKGROUND-REPEAT: no-repeat; HEIGHT: 17px; TEXT-ALIGN: center } #reg2_footer .quad_active A { COLOR: #ffffff; TEXT-DECORATION: none } #reg2_footer .quad_active { FONT-WEIGHT: bold; FLOAT: left; BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/quad_active_background.gif); = WIDTH: 19px; COLOR: #ffffff; PADDING-TOP: 2px; BACKGROUND-REPEAT: = no-repeat; HEIGHT: 17px; TEXT-ALIGN: center } #reg2_footer .quad_next A { COLOR: #ffffff; TEXT-DECORATION: none } #reg2_footer .quad_next { FONT-WEIGHT: 100; FLOAT: left; BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/quad_next_background.gif); = WIDTH: 19px; COLOR: #ffffff; MARGIN-RIGHT: 3px; PADDING-TOP: 2px; = BACKGROUND-REPEAT: no-repeat; HEIGHT: 17px; TEXT-ALIGN: center } #reg2_footer .text { PADDING-RIGHT: 10px; PADDING-LEFT: 5px; FLOAT: left; PADDING-BOTTOM: = 0px; PADDING-TOP: 2px } #registration_box .success { FONT-WEIGHT: bold; COLOR: green } .clear { CLEAR: both } .left { FLOAT: left } .inline { DISPLAY: inline } .hidden { DISPLAY: none } .visible { DISPLAY: block } .arrow { CURSOR: help } .username { MARGIN-TOP: 3px; FONT-SIZE: 12px; WIDTH: 115px; COLOR: #000000 } .password { MARGIN-TOP: 3px; FONT-SIZE: 12px; WIDTH: 115px; COLOR: #000000 } .field_error { MARGIN-TOP: 3px; WIDTH: 115px; COLOR: #999999; FONT-FAMILY: Arial, = Helvetica, sans-serif; BACKGROUND-COLOR: #efefef } .field_error { BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; = BORDER-LEFT: #666666 1px solid; WIDTH: 115px; COLOR: #999999; = BORDER-BOTTOM: #666666 1px solid; FONT-FAMILY: Arial, Helvetica, = sans-serif; BACKGROUND-COLOR: #efefef } .gsm { DISPLAY: inline; WIDTH: 100px } .box_box { BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; = BORDER-LEFT: #666666 1px solid; WIDTH: 100px; COLOR: #999999; = BORDER-BOTTOM: #666666 1px solid; FONT-FAMILY: Arial, Helvetica, = sans-serif; BACKGROUND-COLOR: #efefef } .button_change { BORDER-RIGHT: #c7111e 1px solid; BORDER-TOP: #c7111e 1px solid; = MARGIN-TOP: 3px; MARGIN-BOTTOM: 3px; MARGIN-LEFT: 20px; BORDER-LEFT: = #c7111e 1px solid; WIDTH: 44px; COLOR: #999999; BORDER-BOTTOM: #c7111e = 1px solid; FONT-FAMILY: Arial, Helvetica, sans-serif; HEIGHT: 20px; = BACKGROUND-COLOR: #c7111e } .button_change_text { PADDING-RIGHT: 2px; PADDING-LEFT: 2px; FONT-SIZE: 11px; FLOAT: left; = PADDING-BOTTOM: 2px; COLOR: #ffffff; PADDING-TOP: 2px; TEXT-ALIGN: = center; TEXT-DECORATION: underline } .button_sms { FONT-SIZE: 11px; MARGIN: 5px 0px 0px 141px; COLOR: #000000 } .box_checkbox { PADDING-RIGHT: 275px; MARGIN-TOP: 6px; FLOAT: right; WIDTH: auto } .middle_content_box { FLOAT: left; PADDING-BOTTOM: 2px; MARGIN: 3px 0px 0px; WIDTH: 272px; = COLOR: #8b8b8b } .help_new { FONT-WEIGHT: 900; FONT-SIZE: 12px; FLOAT: right; WIDTH: 135px; CURSOR: = help; COLOR: #0f3da1; PADDING-TOP: 2px; HEIGHT: auto; TEXT-ALIGN: right } .help_box { DISPLAY: none; MARGIN: 0px auto 0px 10px } .help_box_image { MARGIN-TOP: 5px; FLOAT: left; BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/help_ico.gif); MARGIN-BOTTOM: = 5px; WIDTH: 418px; BACKGROUND-REPEAT: no-repeat; BACKGROUND-COLOR: = #9e9e9e; background-x-position: left; background-y-position: top } .help_box_text { PADDING-RIGHT: 5px; PADDING-LEFT: 25px; FONT-SIZE: 11px; FLOAT: left; = PADDING-BOTTOM: 5px; WIDTH: 387px; COLOR: #ffffff; PADDING-TOP: 5px } .level3 { PADDING-BOTTOM: 2px; PADDING-TOP: 2px } .save { PADDING-RIGHT: 11px; PADDING-LEFT: 16px; BACKGROUND-ATTACHMENT: scroll; = FLOAT: right; BACKGROUND-IMAGE: = url(/static/slo/shared/img/registration2/content_success_ico.gif); = PADDING-BOTTOM: 11px; MARGIN-LEFT: 10px; WIDTH: 111px; COLOR: #00a200; = PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; BACKGROUND-COLOR: = transparent; background-x-position: left; background-y-position: top } .box_space { PADDING-TOP: 11px } .email_r { FONT-SIZE: 12px; WIDTH: 115px; COLOR: #000000 } .close_buuton { PADDING-RIGHT: 11px; PADDING-LEFT: 11px; BACKGROUND: = url(/static/slo/shared/img/registration2/konec_registracije.gif) = no-repeat right center; FLOAT: left; PADDING-BOTTOM: 11px; WIDTH: 50px; = COLOR: #ff9900; PADDING-TOP: 11px } .close_text { BACKGROUND: = url(/static/slo/shared/img/registration2/konec_registracije.gif) = no-repeat right 50%; FLOAT: right; WIDTH: 60px; COLOR: #ff9900; = MARGIN-RIGHT: 5px } #step_1 { MARGIN-TOP: 10px } .space_box { PADDING-TOP: 15px } .box_label { DISPLAY: inline; PADDING-TOP: 450px } .box_label_name { PADDING-LEFT: 0px; TEXT-ALIGN: right } .box_label_fild { PADDING-LEFT: 0px; FLOAT: left; WIDTH: 290px; TEXT-ALIGN: right } .whid { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px; HEIGHT: auto } .spacer { FLOAT: right; WIDTH: 430px; HEIGHT: auto } .close_step_2 { DISPLAY: inline; PADDING-LEFT: 25px; BACKGROUND: = url(/static/slo/shared/img/registration2/konec_registracije.gif) = no-repeat left top; FLOAT: right; WIDTH: 60px; COLOR: #000000; HEIGHT: = 22px } .go_to_24ur { DISPLAY: inline; PADDING-LEFT: 25px; BACKGROUND: = url(/static/slo/shared/img/registration2/konec_registracije.gif) = no-repeat left top; FLOAT: right; WIDTH: 105px; COLOR: #000000; HEIGHT: = 22px } .text_step_2 { MARGIN-TOP: 3px; FONT-WEIGHT: 900; FLOAT: left; MARGIN-LEFT: 0px; = WIDTH: 100%; COLOR: #0f3da1; TEXT-ALIGN: left; TEXT-DECORATION: none } .text_step_2 A { MARGIN-TOP: 3px; FONT-WEIGHT: 900; FLOAT: left; MARGIN-LEFT: 0px; = WIDTH: 100%; COLOR: #0f3da1; TEXT-ALIGN: left; TEXT-DECORATION: none } .text_step_2 A:hover { FONT-WEIGHT: 900; COLOR: #0f3da1; TEXT-DECORATION: underline } .label_text { MARGIN-TOP: 7px; FONT-WEIGHT: 100; FONT-SIZE: 11px; FLOAT: right; = MARGIN-LEFT: 0px; WIDTH: 100%; TEXT-ALIGN: right } .label_text_help { MARGIN-TOP: 7px; FLOAT: right; MARGIN-LEFT: 0px; WIDTH: 100%; CURSOR: = help; TEXT-ALIGN: right } .label_text_new_password { MARGIN-TOP: 5px; FONT-WEIGHT: 100; FONT-SIZE: 11px; FLOAT: right; = MARGIN-LEFT: 0px; WIDTH: 100%; TEXT-ALIGN: right } .align_text_registration_step_2 { MARGIN-TOP: 5px; FONT-WEIGHT: 900; FONT-SIZE: 11px; FLOAT: left; = MARGIN-LEFT: 7px; WIDTH: 100%; COLOR: #000000; TEXT-ALIGN: left } .reject_windows { FONT-WEIGHT: 100; FONT-SIZE: 12px; MARGIN-LEFT: 17px; COLOR: #000000; = MARGIN-RIGHT: 17px } .reject_windows_alert { FONT-WEIGHT: 900; FONT-SIZE: 12px; COLOR: #ca0000 } #box_end_registration { MARGIN-LEFT: 300px } .sex { MARGIN-TOP: 5px } .inbox_link { FONT-WEIGHT: bold } #registration_box #settings_form .gsm_num_text { MARGIN-LEFT: 20px } #registration_box #reg2_content .final_msg { PADDING-RIGHT: 11px; PADDING-LEFT: 16px; BACKGROUND: = url(/static/slo/tvshows/bb/img/registration2/content_sucess_ico.gif) = no-repeat left top; PADDING-BOTTOM: 0px; MARGIN: 0px 9px 0px 86px; = WIDTH: 111px; COLOR: #00a200; PADDING-TOP: 0px } .clearfix:unknown { CLEAR: both; DISPLAY: block; VISIBILITY: hidden; LINE-HEIGHT: 0; = HEIGHT: 0px; content: "." } .clearfix { DISPLAY: inline-block } HTML[xmlns] .clearfix { DISPLAY: block } * HTML .clearfix { HEIGHT: 1% } .popupBody { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: = 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #000; PADDING-TOP: 15px; = FONT-FAMILY: Arial, Helvetica, sans-serif } .popupBody A { COLOR: #114092; TEXT-DECORATION: none } .popupBody A:hover { TEXT-DECORATION: underline } .popupContainer { BACKGROUND: #fff } .popupContainer H2 { FONT-SIZE: 18px; MARGIN: 0px 0px 15px; COLOR: #114092 } .popupContainer P { FONT-WEIGHT: bold; FONT-SIZE: 14px; MARGIN: 0px 0px 25px } .popupContainer .merge { BACKGROUND: url(/static/slo/main/img/facebook_connect_merge.gif) = no-repeat 50% 170px; _behavior: url("/static/shared/js/iepngfix.htc") } .popupContainer .disconnect { BACKGROUND: url(/static/slo/main/img/facebook_connect_disconnect.png) = no-repeat 50% 145px; _behavior: url("/static/shared/js/iepngfix.htc") } .popupContainer .popupContent { PADDING-RIGHT: 16px; PADDING-LEFT: 16px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px; HEIGHT: 291px } .popupContainer .popupContent .facebookUser { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: = url(/static/slo/main/img/facebook_connect.png) 0px -364px; FLOAT: left; = PADDING-BOTTOM: 0px; WIDTH: 181px; PADDING-TOP: 67px; POSITION: = relative; HEIGHT: 130px; _behavior: = url("/static/shared/js/iepngfix.htc") } .popupContainer .popupContent .comUser { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: = url(/static/slo/main/img/facebook_connect.png) 0px -364px; FLOAT: left; = PADDING-BOTTOM: 0px; WIDTH: 181px; PADDING-TOP: 67px; POSITION: = relative; HEIGHT: 130px; _behavior: = url("/static/shared/js/iepngfix.htc") } .popupContainer .popupContent .comUser { BACKGROUND: url(/static/slo/main/img/facebook_connect.png) 0px -562px; = FLOAT: right; _behavior: url("/static/shared/js/iepngfix.htc") } .popupContainer .popupContent .facebookUser IMG { MARGIN: 0px 0px 7px 70px; WIDTH: 42px; HEIGHT: 42px } .popupContainer .popupContent .comUser IMG { MARGIN: 0px 0px 7px 70px; WIDTH: 42px; HEIGHT: 42px } .popupContainer .popupContent .facebookUser P { MARGIN: 0px 0px 10px; COLOR: #114092; TEXT-ALIGN: center } .popupContainer .popupContent .comUser P { MARGIN: 0px 0px 10px; COLOR: #114092; TEXT-ALIGN: center } .popupContainer .popupContent .facebookUser P SPAN { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; FONT-WEIGHT: = normal; FONT-SIZE: 12px; PADDING-BOTTOM: 0px; COLOR: #000; PADDING-TOP: = 2px } .popupContainer .popupContent .comUser P SPAN { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; FONT-WEIGHT: = normal; FONT-SIZE: 12px; PADDING-BOTTOM: 0px; COLOR: #000; PADDING-TOP: = 2px } .popupContainer .popupContent .facebookUser .logout { FONT-WEIGHT: normal; FONT-SIZE: 12px; BACKGROUND: = url(/static/slo/main/img/facebook_connect.png) 0px -866px; MARGIN: 0px = 0px 0px 59px; WIDTH: 63px; CURSOR: pointer; COLOR: #2d2d2d; = BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: = none; HEIGHT: 23px; BORDER-BOTTOM-STYLE: none; _behavior: = url("/static/shared/js/iepngfix.htc") } .popupContainer .popupContent .comUser .logout { FONT-WEIGHT: normal; FONT-SIZE: 12px; BACKGROUND: = url(/static/slo/main/img/facebook_connect.png) 0px -866px; MARGIN: 0px = 0px 0px 59px; WIDTH: 63px; CURSOR: pointer; COLOR: #2d2d2d; = BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: = none; HEIGHT: 23px; BORDER-BOTTOM-STYLE: none; _behavior: = url("/static/shared/js/iepngfix.htc") } .popupContainer .popUpButtons { PADDING-RIGHT: 16px; PADDING-LEFT: 16px; BACKGROUND: #f0f0f0; = PADDING-BOTTOM: 18px; MARGIN: 25px 0px 0px; WIDTH: 100%; BOTTOM: 0px; = PADDING-TOP: 18px; POSITION: absolute } .popupContainer .popUpButtons .longButton { PADDING-RIGHT: 0px; PADDING-LEFT: 7px; FONT-SIZE: 14px; BACKGROUND: = url(/static/slo/main/img/facebook_connect.png) 0px -921px; = PADDING-BOTTOM: 0px; MARGIN: 0px 10px 0px 95px; WIDTH: 188px; CURSOR: = pointer; COLOR: #2d2d2d; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; = BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; HEIGHT: 30px; = TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none; _behavior: = url("/static/shared/js/iepngfix.htc") } .popupContainer .popUpButtons .shortButton { PADDING-RIGHT: 0px; PADDING-LEFT: 6px; FONT-SIZE: 14px; BACKGROUND: = url(/static/slo/main/img/facebook_connect.png) 0px -952px; = PADDING-BOTTOM: 0px; MARGIN: 0px 10px 0px 170px; WIDTH: 113px; CURSOR: = pointer; COLOR: #2d2d2d; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; = BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; HEIGHT: 30px; = TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none; _behavior: = url("/static/shared/js/iepngfix.htc") } .popupContainer .popUpButtons .middleButton { PADDING-RIGHT: 0px; PADDING-LEFT: 6px; FONT-SIZE: 14px; BACKGROUND: = url(/static/slo/main/img/facebook_connect.png) 0px -890px; = PADDING-BOTTOM: 0px; MARGIN: 0px 10px 0px 117px; WIDTH: 162px; CURSOR: = pointer; COLOR: #2d2d2d; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; = BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; HEIGHT: 30px; = TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none; _behavior: = url("/static/shared/js/iepngfix.htc") } .popupContainer .popUpButtons .shortButton:hover { COLOR: #114092 } .popupContainer .popUpButtons .longButton:hover { COLOR: #114092 } .logoLoader { FONT-SIZE: 12px; LEFT: 50%; MARGIN: -50px 0px 0px -140px; WIDTH: 280px; = COLOR: #424242; POSITION: absolute; TOP: 50%; HEIGHT: 100px; TEXT-ALIGN: = center } .logoLoader #swfloader { MARGIN: 0px 0px 7px } ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/shared/js/mootools.js /*=0A= Script: Core.js=0A= Mootools - My Object Oriented javascript.=0A= =0A= License:=0A= MIT-style license.=0A= =0A= MooTools Copyright:=0A= copyright (c) 2007 Valerio Proietti, =0A= =0A= MooTools Credits:=0A= - Class is slightly based on Base.js = (c) 2006 Dean Edwards, = License =0A= - Some functions are inspired by those found in prototype.js = (c) 2005 Sam Stephenson sam [at] conio = [dot] net, MIT-style license=0A= - Documentation by Aaron Newton (aaron.newton [at] cnet [dot] com) and = Valerio Proietti.=0A= */=0A= =0A= var MooTools =3D {=0A= version: '1.11'=0A= };=0A= =0A= /* Section: Core Functions */=0A= =0A= /*=0A= Function: $defined=0A= Returns true if the passed in value/object is defined, that means is = not null or undefined.=0A= =0A= Arguments:=0A= obj - object to inspect=0A= */=0A= =0A= function $defined(obj){=0A= return (obj !=3D undefined);=0A= };=0A= =0A= /*=0A= Function: $type=0A= Returns the type of object that matches the element passed in.=0A= =0A= Arguments:=0A= obj - the object to inspect.=0A= =0A= Example:=0A= >var myString =3D 'hello';=0A= >$type(myString); //returns "string"=0A= =0A= Returns:=0A= 'element' - if obj is a DOM element node=0A= 'textnode' - if obj is a DOM text node=0A= 'whitespace' - if obj is a DOM whitespace node=0A= 'arguments' - if obj is an arguments object=0A= 'object' - if obj is an object=0A= 'string' - if obj is a string=0A= 'number' - if obj is a number=0A= 'boolean' - if obj is a boolean=0A= 'function' - if obj is a function=0A= 'regexp' - if obj is a regular expression=0A= 'class' - if obj is a Class. (created with new Class, or the extend of = another class).=0A= 'collection' - if obj is a native htmlelements collection, such as = childNodes, getElementsByTagName .. etc.=0A= false - (boolean) if the object is not defined or none of the above.=0A= */=0A= =0A= function $type(obj){=0A= if (!$defined(obj)) return false;=0A= if (obj.htmlElement) return 'element';=0A= var type =3D typeof obj;=0A= if (type =3D=3D 'object' && obj.nodeName){=0A= switch(obj.nodeType){=0A= case 1: return 'element';=0A= case 3: return (/\S/).test(obj.nodeValue) ? 'textnode' : 'whitespace';=0A= }=0A= }=0A= if (type =3D=3D 'object' || type =3D=3D 'function'){=0A= switch(obj.constructor){=0A= case Array: return 'array';=0A= case RegExp: return 'regexp';=0A= case Class: return 'class';=0A= }=0A= if (typeof obj.length =3D=3D 'number'){=0A= if (obj.item) return 'collection';=0A= if (obj.callee) return 'arguments';=0A= }=0A= }=0A= return type;=0A= };=0A= =0A= /*=0A= Function: $merge=0A= merges a number of objects recursively without referencing them or = their sub-objects.=0A= =0A= Arguments:=0A= any number of objects.=0A= =0A= Example:=0A= >var mergedObj =3D $merge(obj1, obj2, obj3);=0A= >//obj1, obj2, and obj3 are unaltered=0A= */=0A= =0A= function $merge(){=0A= var mix =3D {};=0A= for (var i =3D 0; i < arguments.length; i++){=0A= for (var property in arguments[i]){=0A= var ap =3D arguments[i][property];=0A= var mp =3D mix[property];=0A= if (mp && $type(ap) =3D=3D 'object' && $type(mp) =3D=3D 'object') = mix[property] =3D $merge(mp, ap);=0A= else mix[property] =3D ap;=0A= }=0A= }=0A= return mix;=0A= };=0A= =0A= /*=0A= Function: $extend=0A= Copies all the properties from the second passed object to the first = passed Object.=0A= If you do myWhatever.extend =3D $extend the first parameter will become = myWhatever, and your extend function will only need one parameter.=0A= =0A= Example:=0A= (start code)=0A= var firstOb =3D {=0A= 'name': 'John',=0A= 'lastName': 'Doe'=0A= };=0A= var secondOb =3D {=0A= 'age': '20',=0A= 'sex': 'male',=0A= 'lastName': 'Dorian'=0A= };=0A= $extend(firstOb, secondOb);=0A= //firstOb will become:=0A= {=0A= 'name': 'John',=0A= 'lastName': 'Dorian',=0A= 'age': '20',=0A= 'sex': 'male'=0A= };=0A= (end)=0A= =0A= Returns:=0A= The first object, extended.=0A= */=0A= =0A= var $extend =3D function(){=0A= var args =3D arguments;=0A= if (!args[1]) args =3D [this, args[0]];=0A= for (var property in args[1]) args[0][property] =3D args[1][property];=0A= return args[0];=0A= };=0A= =0A= /*=0A= Function: $native=0A= Will add a .extend method to the objects passed as a parameter, but the = property passed in will be copied to the object's prototype only if non = previously existent.=0A= Its handy if you dont want the .extend method of an object to overwrite = existing methods.=0A= Used automatically in MooTools to implement = Array/String/Function/Number methods to browser that dont support them = whitout manual checking.=0A= =0A= Arguments:=0A= a number of classes/native javascript objects=0A= =0A= */=0A= =0A= var $native =3D function(){=0A= for (var i =3D 0, l =3D arguments.length; i < l; i++){=0A= arguments[i].extend =3D function(props){=0A= for (var prop in props){=0A= if (!this.prototype[prop]) this.prototype[prop] =3D props[prop];=0A= if (!this[prop]) this[prop] =3D $native.generic(prop);=0A= }=0A= };=0A= }=0A= };=0A= =0A= $native.generic =3D function(prop){=0A= return function(bind){=0A= return this.prototype[prop].apply(bind, = Array.prototype.slice.call(arguments, 1));=0A= };=0A= };=0A= =0A= $native(Function, Array, String, Number);=0A= =0A= /*=0A= Function: $chk=0A= Returns true if the passed in value/object exists or is 0, otherwise = returns false.=0A= Useful to accept zeroes.=0A= =0A= Arguments:=0A= obj - object to inspect=0A= */=0A= =0A= function $chk(obj){=0A= return !!(obj || obj =3D=3D=3D 0);=0A= };=0A= =0A= /*=0A= Function: $pick=0A= Returns the first object if defined, otherwise returns the second.=0A= =0A= Arguments:=0A= obj - object to test=0A= picked - the default to return=0A= =0A= Example:=0A= (start code)=0A= function say(msg){=0A= alert($pick(msg, 'no meessage supplied'));=0A= }=0A= (end)=0A= */=0A= =0A= function $pick(obj, picked){=0A= return $defined(obj) ? obj : picked;=0A= };=0A= =0A= /*=0A= Function: $random=0A= Returns a random integer number between the two passed in values.=0A= =0A= Arguments:=0A= min - integer, the minimum value (inclusive).=0A= max - integer, the maximum value (inclusive).=0A= =0A= Returns:=0A= a random integer between min and max.=0A= */=0A= =0A= function $random(min, max){=0A= return Math.floor(Math.random() * (max - min + 1) + min);=0A= };=0A= =0A= /*=0A= Function: $time=0A= Returns the current timestamp=0A= =0A= Returns:=0A= a timestamp integer.=0A= */=0A= =0A= function $time(){=0A= return new Date().getTime();=0A= };=0A= =0A= /*=0A= Function: $clear=0A= clears a timeout or an Interval.=0A= =0A= Returns:=0A= null=0A= =0A= Arguments:=0A= timer - the setInterval or setTimeout to clear.=0A= =0A= Example:=0A= >var myTimer =3D myFunction.delay(5000); //wait 5 seconds and execute = my function.=0A= >myTimer =3D $clear(myTimer); //nevermind=0A= =0A= See also:=0A= , =0A= */=0A= =0A= function $clear(timer){=0A= clearTimeout(timer);=0A= clearInterval(timer);=0A= return null;=0A= };=0A= =0A= /*=0A= Class: Abstract=0A= Abstract class, to be used as singleton. Will add .extend to any object=0A= =0A= Arguments:=0A= an object=0A= =0A= Returns:=0A= the object with an .extend property, equivalent to <$extend>.=0A= */=0A= =0A= var Abstract =3D function(obj){=0A= obj =3D obj || {};=0A= obj.extend =3D $extend;=0A= return obj;=0A= };=0A= =0A= //window, document=0A= =0A= var Window =3D new Abstract(window);=0A= var Document =3D new Abstract(document);=0A= document.head =3D document.getElementsByTagName('head')[0];=0A= =0A= /*=0A= Class: window=0A= Some properties are attached to the window object by the browser = detection.=0A= =0A= Note:=0A= browser detection is entirely object-based. We dont sniff.=0A= =0A= Properties:=0A= window.ie - will be set to true if the current browser is internet = explorer (any).=0A= window.ie6 - will be set to true if the current browser is internet = explorer 6.=0A= window.ie7 - will be set to true if the current browser is internet = explorer 7.=0A= window.gecko - will be set to true if the current browser is = Mozilla/Gecko.=0A= window.webkit - will be set to true if the current browser is = Safari/Konqueror.=0A= window.webkit419 - will be set to true if the current browser is = Safari2 / webkit till version 419.=0A= window.webkit420 - will be set to true if the current browser is = Safari3 (Webkit SVN Build) / webkit over version 419.=0A= window.opera - is set to true by opera itself.=0A= */=0A= =0A= window.xpath =3D !!(document.evaluate);=0A= if (window.ActiveXObject) window.ie =3D window[window.XMLHttpRequest ? = 'ie7' : 'ie6'] =3D true;=0A= else if (document.childNodes && !document.all && = !navigator.taintEnabled) window.webkit =3D window[window.xpath ? = 'webkit420' : 'webkit419'] =3D true;=0A= else if (document.getBoxObjectFor !=3D null) window.gecko =3D true;=0A= =0A= /*compatibility*/=0A= =0A= window.khtml =3D window.webkit;=0A= =0A= Object.extend =3D $extend;=0A= =0A= /*end compatibility*/=0A= =0A= //htmlelement=0A= =0A= if (typeof HTMLElement =3D=3D 'undefined'){=0A= var HTMLElement =3D function(){};=0A= if (window.webkit) document.createElement("iframe"); //fixes safari=0A= HTMLElement.prototype =3D (window.webkit) ? = window["[[DOMElement.prototype]]"] : {};=0A= }=0A= HTMLElement.prototype.htmlElement =3D function(){};=0A= =0A= //enables background image cache for internet explorer 6=0A= =0A= if (window.ie6) try {document.execCommand("BackgroundImageCache", false, = true);} catch(e){};=0A= =0A= /*=0A= Script: Class.js=0A= Contains the Class Function, aims to ease the creation of reusable = Classes.=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Class=0A= The base class object of the framework.=0A= Creates a new class, its initialize method will fire upon class = instantiation.=0A= Initialize wont fire on instantiation when you pass *null*.=0A= =0A= Arguments:=0A= properties - the collection of properties that apply to the class.=0A= =0A= Example:=0A= (start code)=0A= var Cat =3D new Class({=0A= initialize: function(name){=0A= this.name =3D name;=0A= }=0A= });=0A= var myCat =3D new Cat('Micia');=0A= alert(myCat.name); //alerts 'Micia'=0A= (end)=0A= */=0A= =0A= var Class =3D function(properties){=0A= var klass =3D function(){=0A= return (arguments[0] !=3D=3D null && this.initialize && = $type(this.initialize) =3D=3D 'function') ? this.initialize.apply(this, = arguments) : this;=0A= };=0A= $extend(klass, this);=0A= klass.prototype =3D properties;=0A= klass.constructor =3D Class;=0A= return klass;=0A= };=0A= =0A= /*=0A= Property: empty=0A= Returns an empty function=0A= */=0A= =0A= Class.empty =3D function(){};=0A= =0A= Class.prototype =3D {=0A= =0A= /*=0A= Property: extend=0A= Returns the copy of the Class extended with the passed in properties.=0A= =0A= Arguments:=0A= properties - the properties to add to the base class in this new Class.=0A= =0A= Example:=0A= (start code)=0A= var Animal =3D new Class({=0A= initialize: function(age){=0A= this.age =3D age;=0A= }=0A= });=0A= var Cat =3D Animal.extend({=0A= initialize: function(name, age){=0A= this.parent(age); //will call the previous initialize;=0A= this.name =3D name;=0A= }=0A= });=0A= var myCat =3D new Cat('Micia', 20);=0A= alert(myCat.name); //alerts 'Micia'=0A= alert(myCat.age); //alerts 20=0A= (end)=0A= */=0A= =0A= extend: function(properties){=0A= var proto =3D new this(null);=0A= for (var property in properties){=0A= var pp =3D proto[property];=0A= proto[property] =3D Class.Merge(pp, properties[property]);=0A= }=0A= return new Class(proto);=0A= },=0A= =0A= /*=0A= Property: implement=0A= Implements the passed in properties to the base Class prototypes, = altering the base class, unlike .=0A= =0A= Arguments:=0A= properties - the properties to add to the base class.=0A= =0A= Example:=0A= (start code)=0A= var Animal =3D new Class({=0A= initialize: function(age){=0A= this.age =3D age;=0A= }=0A= });=0A= Animal.implement({=0A= setName: function(name){=0A= this.name =3D name=0A= }=0A= });=0A= var myAnimal =3D new Animal(20);=0A= myAnimal.setName('Micia');=0A= alert(myAnimal.name); //alerts 'Micia'=0A= (end)=0A= */=0A= =0A= implement: function(){=0A= for (var i =3D 0, l =3D arguments.length; i < l; i++) = $extend(this.prototype, arguments[i]);=0A= }=0A= =0A= };=0A= =0A= //internal=0A= =0A= Class.Merge =3D function(previous, current){=0A= if (previous && previous !=3D current){=0A= var type =3D $type(current);=0A= if (type !=3D $type(previous)) return current;=0A= switch(type){=0A= case 'function':=0A= var merged =3D function(){=0A= this.parent =3D arguments.callee.parent;=0A= return current.apply(this, arguments);=0A= };=0A= merged.parent =3D previous;=0A= return merged;=0A= case 'object': return $merge(previous, current);=0A= }=0A= }=0A= return current;=0A= };=0A= =0A= /*=0A= Script: Class.Extras.js=0A= Contains common implementations for custom classes. In Mootools is = implemented in , and and many more.=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Chain=0A= An "Utility" Class. Its methods can be implemented with = into any .=0A= Currently implemented in , and . In for = example, is used to execute a list of function, one after another, once = the effect is completed.=0A= The functions will not be fired all togheter, but one every completion, = to create custom complex animations.=0A= =0A= Example:=0A= (start code)=0A= var myFx =3D new Fx.Style('element', 'opacity');=0A= =0A= myFx.start(1,0).chain(function(){=0A= myFx.start(0,1);=0A= }).chain(function(){=0A= myFx.start(1,0);=0A= }).chain(function(){=0A= myFx.start(0,1);=0A= });=0A= //the element will appear and disappear three times=0A= (end)=0A= */=0A= =0A= var Chain =3D new Class({=0A= =0A= /*=0A= Property: chain=0A= adds a function to the Chain instance stack.=0A= =0A= Arguments:=0A= fn - the function to append.=0A= */=0A= =0A= chain: function(fn){=0A= this.chains =3D this.chains || [];=0A= this.chains.push(fn);=0A= return this;=0A= },=0A= =0A= /*=0A= Property: callChain=0A= Executes the first function of the Chain instance stack, then removes = it. The first function will then become the second.=0A= */=0A= =0A= callChain: function(){=0A= if (this.chains && this.chains.length) this.chains.shift().delay(10, = this);=0A= },=0A= =0A= /*=0A= Property: clearChain=0A= Clears the stack of a Chain instance.=0A= */=0A= =0A= clearChain: function(){=0A= this.chains =3D [];=0A= }=0A= =0A= });=0A= =0A= /*=0A= Class: Events=0A= An "Utility" Class. Its methods can be implemented with = into any .=0A= In Class, for example, is used to give the possibility add = any number of functions to the Effects events, like onComplete, onStart, = onCancel.=0A= Events in a Class that implements can be either added as an = option, or with addEvent. Never with .options.onEventName.=0A= =0A= Example:=0A= (start code)=0A= var myFx =3D new Fx.Style('element', 'opacity').addEvent('onComplete', = function(){=0A= alert('the effect is completed');=0A= }).addEvent('onComplete', function(){=0A= alert('I told you the effect is completed');=0A= });=0A= =0A= myFx.start(0,1);=0A= //upon completion it will display the 2 alerts, in order.=0A= (end)=0A= =0A= Implementing:=0A= This class can be implemented into other classes to add the = functionality to them.=0A= Goes well with the class.=0A= =0A= Example:=0A= (start code)=0A= var Widget =3D new Class({=0A= initialize: function(){},=0A= finish: function(){=0A= this.fireEvent('onComplete');=0A= }=0A= });=0A= Widget.implement(new Events);=0A= //later...=0A= var myWidget =3D new Widget();=0A= myWidget.addEvent('onComplete', myfunction);=0A= (end)=0A= */=0A= =0A= var Events =3D new Class({=0A= =0A= /*=0A= Property: addEvent=0A= adds an event to the stack of events of the Class instance.=0A= =0A= Arguments:=0A= type - string; the event name (e.g. 'onComplete')=0A= fn - function to execute=0A= */=0A= =0A= addEvent: function(type, fn){=0A= if (fn !=3D Class.empty){=0A= this.$events =3D this.$events || {};=0A= this.$events[type] =3D this.$events[type] || [];=0A= this.$events[type].include(fn);=0A= }=0A= return this;=0A= },=0A= =0A= /*=0A= Property: fireEvent=0A= fires all events of the specified type in the Class instance.=0A= =0A= Arguments:=0A= type - string; the event name (e.g. 'onComplete')=0A= args - array or single object; arguments to pass to the function; if = more than one argument, must be an array=0A= delay - (integer) delay (in ms) to wait to execute the event=0A= =0A= Example:=0A= (start code)=0A= var Widget =3D new Class({=0A= initialize: function(arg1, arg2){=0A= ...=0A= this.fireEvent("onInitialize", [arg1, arg2], 50);=0A= }=0A= });=0A= Widget.implement(new Events);=0A= (end)=0A= */=0A= =0A= fireEvent: function(type, args, delay){=0A= if (this.$events && this.$events[type]){=0A= this.$events[type].each(function(fn){=0A= fn.create({'bind': this, 'delay': delay, 'arguments': args})();=0A= }, this);=0A= }=0A= return this;=0A= },=0A= =0A= /*=0A= Property: removeEvent=0A= removes an event from the stack of events of the Class instance.=0A= =0A= Arguments:=0A= type - string; the event name (e.g. 'onComplete')=0A= fn - function that was added=0A= */=0A= =0A= removeEvent: function(type, fn){=0A= if (this.$events && this.$events[type]) this.$events[type].remove(fn);=0A= return this;=0A= }=0A= =0A= });=0A= =0A= /*=0A= Class: Options=0A= An "Utility" Class. Its methods can be implemented with = into any .=0A= Used to automate the options settings, also adding Class when = the option begins with on.=0A= =0A= Example:=0A= (start code)=0A= var Widget =3D new Class({=0A= options: {=0A= color: '#fff',=0A= size: {=0A= width: 100=0A= height: 100=0A= }=0A= },=0A= initialize: function(options){=0A= this.setOptions(options);=0A= }=0A= });=0A= Widget.implement(new Options);=0A= //later...=0A= var myWidget =3D new Widget({=0A= color: '#f00',=0A= size: {=0A= width: 200=0A= }=0A= });=0A= //myWidget.options =3D {color: #f00, size: {width: 200, height: 100}}=0A= (end)=0A= */=0A= =0A= var Options =3D new Class({=0A= =0A= /*=0A= Property: setOptions=0A= sets this.options=0A= =0A= Arguments:=0A= defaults - object; the default set of options=0A= options - object; the user entered options. can be empty too.=0A= =0A= Note:=0A= if your Class has implemented, every option beginning with = on, followed by a capital letter (onComplete) becomes an Class instance = event.=0A= */=0A= =0A= setOptions: function(){=0A= this.options =3D $merge.apply(null, [this.options].extend(arguments));=0A= if (this.addEvent){=0A= for (var option in this.options){=0A= if ($type(this.options[option] =3D=3D 'function') && = (/^on[A-Z]/).test(option)) this.addEvent(option, this.options[option]);=0A= }=0A= }=0A= return this;=0A= }=0A= =0A= });=0A= =0A= /*=0A= Script: Array.js=0A= Contains Array prototypes, <$A>, <$each>=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Array=0A= A collection of The Array Object prototype methods.=0A= */=0A= =0A= //custom methods=0A= =0A= Array.extend({=0A= =0A= /*=0A= Property: forEach=0A= Iterates through an array; This method is only available for browsers = without native *forEach* support.=0A= For more info see = =0A= =0A= *forEach* executes the provided function (callback) once for each = element present in the array. callback is invoked only for indexes of = the array which have assigned values; it is not invoked for indexes = which have been deleted or which have never been assigned values.=0A= =0A= Arguments:=0A= fn - function to execute with each item in the array; passed the item = and the index of that item in the array=0A= bind - the object to bind "this" to (see )=0A= =0A= Example:=0A= >['apple','banana','lemon'].each(function(item, index){=0A= > alert(index + " =3D " + item); //alerts "0 =3D apple" etc.=0A= >}, bindObj); //optional second arg for binding, not used here=0A= */=0A= =0A= forEach: function(fn, bind){=0A= for (var i =3D 0, j =3D this.length; i < j; i++) fn.call(bind, = this[i], i, this);=0A= },=0A= =0A= /*=0A= Property: filter=0A= This method is provided only for browsers without native *filter* = support.=0A= For more info see = =0A= =0A= *filter* calls a provided callback function once for each element in = an array, and constructs a new array of all the values for which = callback returns a true value. callback is invoked only for indexes of = the array which have assigned values; it is not invoked for indexes = which have been deleted or which have never been assigned values. Array = elements which do not pass the callback test are simply skipped, and are = not included in the new array.=0A= =0A= Arguments:=0A= fn - function to execute with each item in the array; passed the item = and the index of that item in the array=0A= bind - the object to bind "this" to (see )=0A= =0A= Example:=0A= >var biggerThanTwenty =3D [10,3,25,100].filter(function(item, index){=0A= > return item > 20;=0A= >});=0A= >//biggerThanTwenty =3D [25,100]=0A= */=0A= =0A= filter: function(fn, bind){=0A= var results =3D [];=0A= for (var i =3D 0, j =3D this.length; i < j; i++){=0A= if (fn.call(bind, this[i], i, this)) results.push(this[i]);=0A= }=0A= return results;=0A= },=0A= =0A= /*=0A= Property: map=0A= This method is provided only for browsers without native *map* support.=0A= For more info see = =0A= =0A= *map* calls a provided callback function once for each element in an = array, in order, and constructs a new array from the results. callback = is invoked only for indexes of the array which have assigned values; it = is not invoked for indexes which have been deleted or which have never = been assigned values.=0A= =0A= Arguments:=0A= fn - function to execute with each item in the array; passed the item = and the index of that item in the array=0A= bind - the object to bind "this" to (see )=0A= =0A= Example:=0A= >var timesTwo =3D [1,2,3].map(function(item, index){=0A= > return item*2;=0A= >});=0A= >//timesTwo =3D [2,4,6];=0A= */=0A= =0A= map: function(fn, bind){=0A= var results =3D [];=0A= for (var i =3D 0, j =3D this.length; i < j; i++) results[i] =3D = fn.call(bind, this[i], i, this);=0A= return results;=0A= },=0A= =0A= /*=0A= Property: every=0A= This method is provided only for browsers without native *every* = support.=0A= For more info see = =0A= =0A= *every* executes the provided callback function once for each element = present in the array until it finds one where callback returns a false = value. If such an element is found, the every method immediately returns = false. Otherwise, if callback returned a true value for all elements, = every will return true. callback is invoked only for indexes of the = array which have assigned values; it is not invoked for indexes which = have been deleted or which have never been assigned values.=0A= =0A= Arguments:=0A= fn - function to execute with each item in the array; passed the item = and the index of that item in the array=0A= bind - the object to bind "this" to (see )=0A= =0A= Example:=0A= >var areAllBigEnough =3D [10,4,25,100].every(function(item, index){=0A= > return item > 20;=0A= >});=0A= >//areAllBigEnough =3D false=0A= */=0A= =0A= every: function(fn, bind){=0A= for (var i =3D 0, j =3D this.length; i < j; i++){=0A= if (!fn.call(bind, this[i], i, this)) return false;=0A= }=0A= return true;=0A= },=0A= =0A= /*=0A= Property: some=0A= This method is provided only for browsers without native *some* = support.=0A= For more info see = =0A= =0A= *some* executes the callback function once for each element present in = the array until it finds one where callback returns a true value. If = such an element is found, some immediately returns true. Otherwise, some = returns false. callback is invoked only for indexes of the array which = have assigned values; it is not invoked for indexes which have been = deleted or which have never been assigned values.=0A= =0A= Arguments:=0A= fn - function to execute with each item in the array; passed the item = and the index of that item in the array=0A= bind - the object to bind "this" to (see )=0A= =0A= Example:=0A= >var isAnyBigEnough =3D [10,4,25,100].some(function(item, index){=0A= > return item > 20;=0A= >});=0A= >//isAnyBigEnough =3D true=0A= */=0A= =0A= some: function(fn, bind){=0A= for (var i =3D 0, j =3D this.length; i < j; i++){=0A= if (fn.call(bind, this[i], i, this)) return true;=0A= }=0A= return false;=0A= },=0A= =0A= /*=0A= Property: indexOf=0A= This method is provided only for browsers without native *indexOf* = support.=0A= For more info see = =0A= =0A= *indexOf* compares a search element to elements of the Array using = strict equality (the same method used by the =3D=3D=3D, or = triple-equals, operator).=0A= =0A= Arguments:=0A= item - any type of object; element to locate in the array=0A= from - integer; optional; the index of the array at which to begin the = search (defaults to 0)=0A= =0A= Example:=0A= >['apple','lemon','banana'].indexOf('lemon'); //returns 1=0A= >['apple','lemon'].indexOf('banana'); //returns -1=0A= */=0A= =0A= indexOf: function(item, from){=0A= var len =3D this.length;=0A= for (var i =3D (from < 0) ? Math.max(0, len + from) : from || 0; i < = len; i++){=0A= if (this[i] =3D=3D=3D item) return i;=0A= }=0A= return -1;=0A= },=0A= =0A= /*=0A= Property: each=0A= Same as .=0A= =0A= Arguments:=0A= fn - function to execute with each item in the array; passed the item = and the index of that item in the array=0A= bind - optional, the object that the "this" of the function will refer = to.=0A= =0A= Example:=0A= >var Animals =3D ['Cat', 'Dog', 'Coala'];=0A= >Animals.each(function(animal){=0A= > document.write(animal)=0A= >});=0A= */=0A= =0A= /*=0A= Property: copy=0A= returns a copy of the array.=0A= =0A= Returns:=0A= a new array which is a copy of the current one.=0A= =0A= Arguments:=0A= start - integer; optional; the index where to start the copy, default = is 0. If negative, it is taken as the offset from the end of the array.=0A= length - integer; optional; the number of elements to copy. By = default, copies all elements from start to the end of the array.=0A= =0A= Example:=0A= >var letters =3D ["a","b","c"];=0A= >var copy =3D letters.copy(); // ["a","b","c"] (new instance)=0A= */=0A= =0A= copy: function(start, length){=0A= start =3D start || 0;=0A= if (start < 0) start =3D this.length + start;=0A= length =3D length || (this.length - start);=0A= var newArray =3D [];=0A= for (var i =3D 0; i < length; i++) newArray[i] =3D this[start++];=0A= return newArray;=0A= },=0A= =0A= /*=0A= Property: remove=0A= Removes all occurrences of an item from the array.=0A= =0A= Arguments:=0A= item - the item to remove=0A= =0A= Returns:=0A= the Array with all occurrences of the item removed.=0A= =0A= Example:=0A= >["1","2","3","2"].remove("2") // ["1","3"];=0A= */=0A= =0A= remove: function(item){=0A= var i =3D 0;=0A= var len =3D this.length;=0A= while (i < len){=0A= if (this[i] =3D=3D=3D item){=0A= this.splice(i, 1);=0A= len--;=0A= } else {=0A= i++;=0A= }=0A= }=0A= return this;=0A= },=0A= =0A= /*=0A= Property: contains=0A= Tests an array for the presence of an item.=0A= =0A= Arguments:=0A= item - the item to search for in the array.=0A= from - integer; optional; the index at which to begin the search, = default is 0. If negative, it is taken as the offset from the end of the = array.=0A= =0A= Returns:=0A= true - the item was found=0A= false - it wasn't=0A= =0A= Example:=0A= >["a","b","c"].contains("a"); // true=0A= >["a","b","c"].contains("d"); // false=0A= */=0A= =0A= contains: function(item, from){=0A= return this.indexOf(item, from) !=3D -1;=0A= },=0A= =0A= /*=0A= Property: associate=0A= Creates an object with key-value pairs based on the array of keywords = passed in=0A= and the current content of the array.=0A= =0A= Arguments:=0A= keys - the array of keywords.=0A= =0A= Example:=0A= (start code)=0A= var Animals =3D ['Cat', 'Dog', 'Coala', 'Lizard'];=0A= var Speech =3D ['Miao', 'Bau', 'Fruuu', 'Mute'];=0A= var Speeches =3D Animals.associate(Speech);=0A= //Speeches['Miao'] is now Cat.=0A= //Speeches['Bau'] is now Dog.=0A= //...=0A= (end)=0A= */=0A= =0A= associate: function(keys){=0A= var obj =3D {}, length =3D Math.min(this.length, keys.length);=0A= for (var i =3D 0; i < length; i++) obj[keys[i]] =3D this[i];=0A= return obj;=0A= },=0A= =0A= /*=0A= Property: extend=0A= Extends an array with another one.=0A= =0A= Arguments:=0A= array - the array to extend ours with=0A= =0A= Example:=0A= >var Animals =3D ['Cat', 'Dog', 'Coala'];=0A= >Animals.extend(['Lizard']);=0A= >//Animals is now: ['Cat', 'Dog', 'Coala', 'Lizard'];=0A= */=0A= =0A= extend: function(array){=0A= for (var i =3D 0, j =3D array.length; i < j; i++) this.push(array[i]);=0A= return this;=0A= },=0A= =0A= /*=0A= Property: merge=0A= merges an array in another array, without duplicates. (case- and = type-sensitive)=0A= =0A= Arguments:=0A= array - the array to merge from.=0A= =0A= Example:=0A= >['Cat','Dog'].merge(['Dog','Coala']); //returns ['Cat','Dog','Coala']=0A= */=0A= =0A= merge: function(array){=0A= for (var i =3D 0, l =3D array.length; i < l; i++) = this.include(array[i]);=0A= return this;=0A= },=0A= =0A= /*=0A= Property: include=0A= includes the passed in element in the array, only if its not already = present. (case- and type-sensitive)=0A= =0A= Arguments:=0A= item - item to add to the array (if not present)=0A= =0A= Example:=0A= >['Cat','Dog'].include('Dog'); //returns ['Cat','Dog']=0A= >['Cat','Dog'].include('Coala'); //returns ['Cat','Dog','Coala']=0A= */=0A= =0A= include: function(item){=0A= if (!this.contains(item)) this.push(item);=0A= return this;=0A= },=0A= =0A= /*=0A= Property: getRandom=0A= returns a random item in the Array=0A= */=0A= =0A= getRandom: function(){=0A= return this[$random(0, this.length - 1)] || null;=0A= },=0A= =0A= /*=0A= Property: getLast=0A= returns the last item in the Array=0A= */=0A= =0A= getLast: function(){=0A= return this[this.length - 1] || null;=0A= }=0A= =0A= });=0A= =0A= //copies=0A= =0A= Array.prototype.each =3D Array.prototype.forEach;=0A= Array.each =3D Array.forEach;=0A= =0A= /* Section: Utility Functions */=0A= =0A= /*=0A= Function: $A()=0A= Same as , but as function.=0A= Useful to apply Array prototypes to iterable objects, as a collection = of DOM elements or the arguments object.=0A= =0A= Example:=0A= (start code)=0A= function myFunction(){=0A= $A(arguments).each(argument, function(){=0A= alert(argument);=0A= });=0A= };=0A= //the above will alert all the arguments passed to the function = myFunction.=0A= (end)=0A= */=0A= =0A= function $A(array){=0A= return Array.copy(array);=0A= };=0A= =0A= /*=0A= Function: $each=0A= Use to iterate through iterables that are not regular arrays, such as = builtin getElementsByTagName calls, arguments of a function, or an = object.=0A= =0A= Arguments:=0A= iterable - an iterable element or an objct.=0A= function - function to apply to the iterable.=0A= bind - optional, the 'this' of the function will refer to this object.=0A= =0A= Function argument:=0A= The function argument will be passed the following arguments.=0A= =0A= item - the current item in the iterator being procesed=0A= index - integer; the index of the item, or key in case of an object.=0A= =0A= Examples:=0A= (start code)=0A= $each(['Sun','Mon','Tue'], function(day, index){=0A= alert('name:' + day + ', index: ' + index);=0A= });=0A= //alerts "name: Sun, index: 0", "name: Mon, index: 1", etc.=0A= //over an object=0A= $each({first: "Sunday", second: "Monday", third: "Tuesday"}, = function(value, key){=0A= alert("the " + key + " day of the week is " + value);=0A= });=0A= //alerts "the first day of the week is Sunday",=0A= //"the second day of the week is Monday", etc.=0A= (end)=0A= */=0A= =0A= function $each(iterable, fn, bind){=0A= if (iterable && typeof iterable.length =3D=3D 'number' && = $type(iterable) !=3D 'object'){=0A= Array.forEach(iterable, fn, bind);=0A= } else {=0A= for (var name in iterable) fn.call(bind || iterable, iterable[name], = name);=0A= }=0A= };=0A= =0A= /*compatibility*/=0A= =0A= Array.prototype.test =3D Array.prototype.contains;=0A= =0A= /*end compatibility*/=0A= =0A= /*=0A= Script: String.js=0A= Contains String prototypes.=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: String=0A= A collection of The String Object prototype methods.=0A= */=0A= =0A= String.extend({=0A= =0A= /*=0A= Property: test=0A= Tests a string with a regular expression.=0A= =0A= Arguments:=0A= regex - a string or regular expression object, the regular expression = you want to match the string with=0A= params - optional, if first parameter is a string, any parameters you = want to pass to the regex ('g' has no effect)=0A= =0A= Returns:=0A= true if a match for the regular expression is found in the string, = false if not.=0A= See = =0A= =0A= Example:=0A= >"I like cookies".test("cookie"); // returns true=0A= >"I like cookies".test("COOKIE", "i") // ignore case, returns true=0A= >"I like cookies".test("cake"); // returns false=0A= */=0A= =0A= test: function(regex, params){=0A= return (($type(regex) =3D=3D 'string') ? new RegExp(regex, params) : = regex).test(this);=0A= },=0A= =0A= /*=0A= Property: toInt=0A= parses a string to an integer.=0A= =0A= Returns:=0A= either an int or "NaN" if the string is not a number.=0A= =0A= Example:=0A= >var value =3D "10px".toInt(); // value is 10=0A= */=0A= =0A= toInt: function(){=0A= return parseInt(this, 10);=0A= },=0A= =0A= /*=0A= Property: toFloat=0A= parses a string to an float.=0A= =0A= Returns:=0A= either a float or "NaN" if the string is not a number.=0A= =0A= Example:=0A= >var value =3D "10.848".toFloat(); // value is 10.848=0A= */=0A= =0A= toFloat: function(){=0A= return parseFloat(this);=0A= },=0A= =0A= /*=0A= Property: camelCase=0A= Converts a hiphenated string to a camelcase string.=0A= =0A= Example:=0A= >"I-like-cookies".camelCase(); //"ILikeCookies"=0A= =0A= Returns:=0A= the camel cased string=0A= */=0A= =0A= camelCase: function(){=0A= return this.replace(/-\D/g, function(match){=0A= return match.charAt(1).toUpperCase();=0A= });=0A= },=0A= =0A= /*=0A= Property: hyphenate=0A= Converts a camelCased string to a hyphen-ated string.=0A= =0A= Example:=0A= >"ILikeCookies".hyphenate(); //"I-like-cookies"=0A= */=0A= =0A= hyphenate: function(){=0A= return this.replace(/\w[A-Z]/g, function(match){=0A= return (match.charAt(0) + '-' + match.charAt(1).toLowerCase());=0A= });=0A= },=0A= =0A= /*=0A= Property: capitalize=0A= Converts the first letter in each word of a string to Uppercase.=0A= =0A= Example:=0A= >"i like cookies".capitalize(); //"I Like Cookies"=0A= =0A= Returns:=0A= the capitalized string=0A= */=0A= =0A= capitalize: function(){=0A= return this.replace(/\b[a-z]/g, function(match){=0A= return match.toUpperCase();=0A= });=0A= },=0A= =0A= /*=0A= Property: trim=0A= Trims the leading and trailing spaces off a string.=0A= =0A= Example:=0A= >" i like cookies ".trim() //"i like cookies"=0A= =0A= Returns:=0A= the trimmed string=0A= */=0A= =0A= trim: function(){=0A= return this.replace(/^\s+|\s+$/g, '');=0A= },=0A= =0A= /*=0A= Property: clean=0A= trims () a string AND removes all the double spaces in a = string.=0A= =0A= Returns:=0A= the cleaned string=0A= =0A= Example:=0A= >" i like cookies \n\n".clean() //"i like cookies"=0A= */=0A= =0A= clean: function(){=0A= return this.replace(/\s{2,}/g, ' ').trim();=0A= },=0A= =0A= /*=0A= Property: rgbToHex=0A= Converts an RGB value to hexidecimal. The string must be in the format = of "rgb(255,255,255)" or "rgba(255,255,255,1)";=0A= =0A= Arguments:=0A= array - boolean value, defaults to false. Use true if you want the = array ['FF','33','00'] as output instead of "#FF3300"=0A= =0A= Returns:=0A= hex string or array. returns "transparent" if the output is set as = string and the fourth value of rgba in input string is 0.=0A= =0A= Example:=0A= >"rgb(17,34,51)".rgbToHex(); //"#112233"=0A= >"rgba(17,34,51,0)".rgbToHex(); //"transparent"=0A= >"rgb(17,34,51)".rgbToHex(true); //['11','22','33']=0A= */=0A= =0A= rgbToHex: function(array){=0A= var rgb =3D this.match(/\d{1,3}/g);=0A= return (rgb) ? rgb.rgbToHex(array) : false;=0A= },=0A= =0A= /*=0A= Property: hexToRgb=0A= Converts a hexidecimal color value to RGB. Input string must be the = hex color value (with or without the hash). Also accepts triplets = ('333');=0A= =0A= Arguments:=0A= array - boolean value, defaults to false. Use true if you want the = array [255,255,255] as output instead of "rgb(255,255,255)";=0A= =0A= Returns:=0A= rgb string or array.=0A= =0A= Example:=0A= >"#112233".hexToRgb(); //"rgb(17,34,51)"=0A= >"#112233".hexToRgb(true); //[17,34,51]=0A= */=0A= =0A= hexToRgb: function(array){=0A= var hex =3D this.match(/^#?(\w{1,2})(\w{1,2})(\w{1,2})$/);=0A= return (hex) ? hex.slice(1).hexToRgb(array) : false;=0A= },=0A= =0A= /*=0A= Property: contains=0A= checks if the passed in string is contained in the String. also = accepts an optional second parameter, to check if the string is = contained in a list of separated values.=0A= =0A= Example:=0A= >'a b c'.contains('c', ' '); //true=0A= >'a bc'.contains('bc'); //true=0A= >'a bc'.contains('b', ' '); //false=0A= */=0A= =0A= contains: function(string, s){=0A= return (s) ? (s + this + s).indexOf(s + string + s) > -1 : = this.indexOf(string) > -1;=0A= },=0A= =0A= /*=0A= Property: escapeRegExp=0A= Returns string with escaped regular expression characters=0A= =0A= Example:=0A= >var search =3D 'animals.sheeps[1]'.escapeRegExp(); // search is now = 'animals\.sheeps\[1\]'=0A= =0A= Returns:=0A= Escaped string=0A= */=0A= =0A= escapeRegExp: function(){=0A= return this.replace(/([.*+?^${}()|[\]\/\\])/g, '\\$1');=0A= }=0A= =0A= });=0A= =0A= Array.extend({=0A= =0A= /*=0A= Property: rgbToHex=0A= see , but as an array method.=0A= */=0A= =0A= rgbToHex: function(array){=0A= if (this.length < 3) return false;=0A= if (this.length =3D=3D 4 && this[3] =3D=3D 0 && !array) return = 'transparent';=0A= var hex =3D [];=0A= for (var i =3D 0; i < 3; i++){=0A= var bit =3D (this[i] - 0).toString(16);=0A= hex.push((bit.length =3D=3D 1) ? '0' + bit : bit);=0A= }=0A= return array ? hex : '#' + hex.join('');=0A= },=0A= =0A= /*=0A= Property: hexToRgb=0A= same as , but as an array method.=0A= */=0A= =0A= hexToRgb: function(array){=0A= if (this.length !=3D 3) return false;=0A= var rgb =3D [];=0A= for (var i =3D 0; i < 3; i++){=0A= rgb.push(parseInt((this[i].length =3D=3D 1) ? this[i] + this[i] : = this[i], 16));=0A= }=0A= return array ? rgb : 'rgb(' + rgb.join(',') + ')';=0A= }=0A= =0A= });=0A= =0A= /* =0A= Script: Function.js=0A= Contains Function prototypes and utility functions .=0A= =0A= License:=0A= MIT-style license.=0A= =0A= Credits:=0A= - Some functions are inspired by those found in prototype.js = (c) 2005 Sam Stephenson sam [at] conio = [dot] net, MIT-style license=0A= */=0A= =0A= /*=0A= Class: Function=0A= A collection of The Function Object prototype methods.=0A= */=0A= =0A= Function.extend({=0A= =0A= /*=0A= Property: create=0A= Main function to create closures.=0A= =0A= Returns:=0A= a function.=0A= =0A= Arguments:=0A= options - An Options object.=0A= =0A= Options:=0A= bind - The object that the "this" of the function will refer to. = Default is the current function.=0A= event - If set to true, the function will act as an event listener and = receive an event as first argument.=0A= If set to a class name, the function will receive a new instance of = this class (with the event passed as argument's constructor) as first = argument.=0A= Default is false.=0A= arguments - A single argument or array of arguments that will be = passed to the function when called.=0A= =0A= If both the event and arguments options are set, the event is = passed as first argument and the arguments array will follow.=0A= =0A= Default is no custom arguments, the function will receive the = standard arguments when called.=0A= =0A= delay - Numeric value: if set, the returned function will delay the = actual execution by this amount of milliseconds and return a timer = handle when called.=0A= Default is no delay.=0A= periodical - Numeric value: if set, the returned function will = periodically perform the actual execution with this specified interval = and return a timer handle when called.=0A= Default is no periodical execution.=0A= attempt - If set to true, the returned function will try to execute = and return either the results or false on error. Default is false.=0A= */=0A= =0A= create: function(options){=0A= var fn =3D this;=0A= options =3D $merge({=0A= 'bind': fn,=0A= 'event': false,=0A= 'arguments': null,=0A= 'delay': false,=0A= 'periodical': false,=0A= 'attempt': false=0A= }, options);=0A= if ($chk(options.arguments) && $type(options.arguments) !=3D 'array') = options.arguments =3D [options.arguments];=0A= return function(event){=0A= var args;=0A= if (options.event){=0A= event =3D event || window.event;=0A= args =3D [(options.event =3D=3D=3D true) ? event : new = options.event(event)];=0A= if (options.arguments) args.extend(options.arguments);=0A= }=0A= else args =3D options.arguments || arguments;=0A= var returns =3D function(){=0A= return fn.apply($pick(options.bind, fn), args);=0A= };=0A= if (options.delay) return setTimeout(returns, options.delay);=0A= if (options.periodical) return setInterval(returns, = options.periodical);=0A= if (options.attempt) try {return returns();} catch(err){return = false;};=0A= return returns();=0A= };=0A= },=0A= =0A= /*=0A= Property: pass=0A= Shortcut to create closures with arguments and bind.=0A= =0A= Returns:=0A= a function.=0A= =0A= Arguments:=0A= args - the arguments passed. must be an array if arguments > 1=0A= bind - optional, the object that the "this" of the function will refer = to.=0A= =0A= Example:=0A= >myFunction.pass([arg1, arg2], myElement);=0A= */=0A= =0A= pass: function(args, bind){=0A= return this.create({'arguments': args, 'bind': bind});=0A= },=0A= =0A= /*=0A= Property: attempt=0A= Tries to execute the function, returns either the result of the = function or false on error.=0A= =0A= Arguments:=0A= args - the arguments passed. must be an array if arguments > 1=0A= bind - optional, the object that the "this" of the function will refer = to.=0A= =0A= Example:=0A= >myFunction.attempt([arg1, arg2], myElement);=0A= */=0A= =0A= attempt: function(args, bind){=0A= return this.create({'arguments': args, 'bind': bind, 'attempt': = true})();=0A= },=0A= =0A= /*=0A= Property: bind=0A= method to easily create closures with "this" altered.=0A= =0A= Arguments:=0A= bind - optional, the object that the "this" of the function will refer = to.=0A= args - optional, the arguments passed. must be an array if arguments > = 1=0A= =0A= Returns:=0A= a function.=0A= =0A= Example:=0A= >function myFunction(){=0A= > this.setStyle('color', 'red');=0A= > // note that 'this' here refers to myFunction, not an element=0A= > // we'll need to bind this function to the element we want to alter=0A= >};=0A= >var myBoundFunction =3D myFunction.bind(myElement);=0A= >myBoundFunction(); // this will make the element myElement red.=0A= */=0A= =0A= bind: function(bind, args){=0A= return this.create({'bind': bind, 'arguments': args});=0A= },=0A= =0A= /*=0A= Property: bindAsEventListener=0A= cross browser method to pass event firer=0A= =0A= Arguments:=0A= bind - optional, the object that the "this" of the function will refer = to.=0A= args - optional, the arguments passed. must be an array if arguments > = 1=0A= =0A= Returns:=0A= a function with the parameter bind as its "this" and as a pre-passed = argument event or window.event, depending on the browser.=0A= =0A= Example:=0A= >function myFunction(event){=0A= > alert(event.clientx) //returns the coordinates of the mouse..=0A= >};=0A= >myElement.onclick =3D myFunction.bindAsEventListener(myElement);=0A= */=0A= =0A= bindAsEventListener: function(bind, args){=0A= return this.create({'bind': bind, 'event': true, 'arguments': args});=0A= },=0A= =0A= /*=0A= Property: delay=0A= Delays the execution of a function by a specified duration.=0A= =0A= Arguments:=0A= delay - the duration to wait in milliseconds.=0A= bind - optional, the object that the "this" of the function will refer = to.=0A= args - optional, the arguments passed. must be an array if arguments > = 1=0A= =0A= Example:=0A= >myFunction.delay(50, myElement) //wait 50 milliseconds, then call = myFunction and bind myElement to it=0A= >(function(){alert('one second later...')}).delay(1000); //wait a = second and alert=0A= */=0A= =0A= delay: function(delay, bind, args){=0A= return this.create({'delay': delay, 'bind': bind, 'arguments': = args})();=0A= },=0A= =0A= /*=0A= Property: periodical=0A= Executes a function in the specified intervals of time=0A= =0A= Arguments:=0A= interval - the duration of the intervals between executions.=0A= bind - optional, the object that the "this" of the function will refer = to.=0A= args - optional, the arguments passed. must be an array if arguments > = 1=0A= */=0A= =0A= periodical: function(interval, bind, args){=0A= return this.create({'periodical': interval, 'bind': bind, 'arguments': = args})();=0A= }=0A= =0A= });=0A= =0A= /*=0A= Script: Number.js=0A= Contains the Number prototypes.=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Number=0A= A collection of The Number Object prototype methods.=0A= */=0A= =0A= Number.extend({=0A= =0A= /*=0A= Property: toInt=0A= Returns this number; useful because toInt must work on both Strings = and Numbers.=0A= */=0A= =0A= toInt: function(){=0A= return parseInt(this);=0A= },=0A= =0A= /*=0A= Property: toFloat=0A= Returns this number as a float; useful because toFloat must work on = both Strings and Numbers.=0A= */=0A= =0A= toFloat: function(){=0A= return parseFloat(this);=0A= },=0A= =0A= /*=0A= Property: limit=0A= Limits the number.=0A= =0A= Arguments:=0A= min - number, minimum value=0A= max - number, maximum value=0A= =0A= Returns:=0A= the number in the given limits.=0A= =0A= Example:=0A= >(12).limit(2, 6.5) // returns 6.5=0A= >(-4).limit(2, 6.5) // returns 2=0A= >(4.3).limit(2, 6.5) // returns 4.3=0A= */=0A= =0A= limit: function(min, max){=0A= return Math.min(max, Math.max(min, this));=0A= },=0A= =0A= /*=0A= Property: round=0A= Returns the number rounded to specified precision.=0A= =0A= Arguments:=0A= precision - integer, number of digits after the decimal point. Can = also be negative or zero (default).=0A= =0A= Example:=0A= >12.45.round() // returns 12=0A= >12.45.round(1) // returns 12.5=0A= >12.45.round(-1) // returns 10=0A= =0A= Returns:=0A= The rounded number.=0A= */=0A= =0A= round: function(precision){=0A= precision =3D Math.pow(10, precision || 0);=0A= return Math.round(this * precision) / precision;=0A= },=0A= =0A= /*=0A= Property: times=0A= Executes a passed in function the specified number of times=0A= =0A= Arguments:=0A= function - the function to be executed on each iteration of the loop=0A= =0A= Example:=0A= >(4).times(alert);=0A= */=0A= =0A= times: function(fn){=0A= for (var i =3D 0; i < this; i++) fn(i);=0A= }=0A= =0A= });=0A= =0A= /*=0A= Script: Element.js=0A= Contains useful Element prototypes, to be used with the dollar function = <$>.=0A= =0A= License:=0A= MIT-style license.=0A= =0A= Credits:=0A= - Some functions are inspired by those found in prototype.js = (c) 2005 Sam Stephenson sam [at] conio = [dot] net, MIT-style license=0A= */=0A= =0A= /*=0A= Class: Element=0A= Custom class to allow all of its methods to be used with any DOM = element via the dollar function <$>.=0A= */=0A= =0A= var Element =3D new Class({=0A= =0A= /*=0A= Property: initialize=0A= Creates a new element of the type passed in.=0A= =0A= Arguments:=0A= el - string; the tag name for the element you wish to create. you can = also pass in an element reference, in which case it will be extended.=0A= props - object; the properties you want to add to your element.=0A= Accepts the same keys as , but also allows = events and styles=0A= =0A= Props:=0A= the key styles will be used as setStyles, the key events will be used = as addEvents. any other key is used as setProperty.=0A= =0A= Example:=0A= (start code)=0A= new Element('a', {=0A= 'styles': {=0A= 'display': 'block',=0A= 'border': '1px solid black'=0A= },=0A= 'events': {=0A= 'click': function(){=0A= //aaa=0A= },=0A= 'mousedown': function(){=0A= //aaa=0A= }=0A= },=0A= 'class': 'myClassSuperClass',=0A= 'href': 'http://mad4milk.net'=0A= });=0A= =0A= (end)=0A= */=0A= =0A= initialize: function(el, props){=0A= if ($type(el) =3D=3D 'string'){=0A= if (window.ie && props && (props.name || props.type)){=0A= var name =3D (props.name) ? ' name=3D"' + props.name + '"' : '';=0A= var type =3D (props.type) ? ' type=3D"' + props.type + '"' : '';=0A= delete props.name;=0A= delete props.type;=0A= el =3D '<' + el + name + type + '>';=0A= }=0A= el =3D document.createElement(el);=0A= }=0A= el =3D $(el);=0A= return (!props || !el) ? el : el.set(props);=0A= }=0A= =0A= });=0A= =0A= /*=0A= Class: Elements=0A= - Every dom function such as <$$>, or in general every function that = returns a collection of nodes in mootools, returns them as an Elements = class.=0A= - The purpose of the Elements class is to allow methods to = work also on array.=0A= - Elements is also an Array, so it accepts all the methods.=0A= - Every node of the Elements instance is already extended with <$>.=0A= =0A= Example:=0A= >$$('myselector').each(function(el){=0A= > //...=0A= >});=0A= =0A= some iterations here, $$('myselector') is also an array.=0A= =0A= >$$('myselector').setStyle('color', 'red');=0A= every element returned by $$('myselector') also accepts = methods, in this example every element will be made red.=0A= */=0A= =0A= var Elements =3D new Class({=0A= =0A= initialize: function(elements){=0A= return (elements) ? $extend(elements, this) : this;=0A= }=0A= =0A= });=0A= =0A= Elements.extend =3D function(props){=0A= for (var prop in props){=0A= this.prototype[prop] =3D props[prop];=0A= this[prop] =3D $native.generic(prop);=0A= }=0A= };=0A= =0A= /*=0A= Section: Utility Functions=0A= =0A= Function: $=0A= returns the element passed in with all the Element prototypes applied.=0A= =0A= Arguments:=0A= el - a reference to an actual element or a string representing the id = of an element=0A= =0A= Example:=0A= >$('myElement') // gets a DOM element by id with all the Element = prototypes applied.=0A= >var div =3D document.getElementById('myElement');=0A= >$(div) //returns an Element also with all the mootools extentions = applied.=0A= =0A= You'll use this when you aren't sure if a variable is an actual element = or an id, as=0A= well as just shorthand for document.getElementById().=0A= =0A= Returns:=0A= a DOM element or false (if no id was found).=0A= =0A= Note:=0A= you need to call $ on an element only once to get all the prototypes.=0A= But its no harm to call it multiple times, as it will detect if it has = been already extended.=0A= */=0A= =0A= function $(el){=0A= if (!el) return null;=0A= if (el.htmlElement) return Garbage.collect(el);=0A= if ([window, document].contains(el)) return el;=0A= var type =3D $type(el);=0A= if (type =3D=3D 'string'){=0A= el =3D document.getElementById(el);=0A= type =3D (el) ? 'element' : false;=0A= }=0A= if (type !=3D 'element') return null;=0A= if (el.htmlElement) return Garbage.collect(el);=0A= if (['object', 'embed'].contains(el.tagName.toLowerCase())) return el;=0A= $extend(el, Element.prototype);=0A= el.htmlElement =3D function(){};=0A= return Garbage.collect(el);=0A= };=0A= =0A= /*=0A= Function: $$=0A= Selects, and extends DOM elements. Elements arrays returned with $$ = will also accept all the methods.=0A= The return type of element methods run through $$ is always an array. = If the return array is only made by elements,=0A= $$ will be applied automatically.=0A= =0A= Arguments:=0A= HTML Collections, arrays of elements, arrays of strings as element ids, = elements, strings as selectors.=0A= Any number of the above as arguments are accepted.=0A= =0A= Note:=0A= if you load , $$ will also accept CSS Selectors, = otherwise the only selectors supported are tag names.=0A= =0A= Example:=0A= >$$('a') //an array of all anchor tags on the page=0A= >$$('a', 'b') //an array of all anchor and bold tags on the page=0A= >$$('#myElement') //array containing only the element with id =3D = myElement. (only with )=0A= >$$('#myElement a.myClass') //an array of all anchor tags with the = class "myClass"=0A= >//within the DOM element with id "myElement" (only with = )=0A= >$$(myelement, myelement2, 'a', ['myid', myid2, 'myid3'], = document.getElementsByTagName('div')) //an array containing:=0A= >// the element referenced as myelement if existing,=0A= >// the element referenced as myelement2 if existing,=0A= >// all the elements with a as tag in the page,=0A= >// the element with id =3D myid if existing=0A= >// the element with id =3D myid2 if existing=0A= >// the element with id =3D myid3 if existing=0A= >// all the elements with div as tag in the page=0A= =0A= Returns:=0A= array - array of all the dom elements matched, extended with <$>. = Returns as .=0A= */=0A= =0A= document.getElementsBySelector =3D document.getElementsByTagName;=0A= =0A= function $$(){=0A= var elements =3D [];=0A= for (var i =3D 0, j =3D arguments.length; i < j; i++){=0A= var selector =3D arguments[i];=0A= switch($type(selector)){=0A= case 'element': elements.push(selector);=0A= case 'boolean': break;=0A= case false: break;=0A= case 'string': selector =3D document.getElementsBySelector(selector, = true);=0A= default: elements.extend(selector);=0A= }=0A= }=0A= return $$.unique(elements);=0A= };=0A= =0A= $$.unique =3D function(array){=0A= var elements =3D [];=0A= for (var i =3D 0, l =3D array.length; i < l; i++){=0A= if (array[i].$included) continue;=0A= var element =3D $(array[i]);=0A= if (element && !element.$included){=0A= element.$included =3D true;=0A= elements.push(element);=0A= }=0A= }=0A= for (var n =3D 0, d =3D elements.length; n < d; n++) = elements[n].$included =3D null;=0A= return new Elements(elements);=0A= };=0A= =0A= Elements.Multi =3D function(property){=0A= return function(){=0A= var args =3D arguments;=0A= var items =3D [];=0A= var elements =3D true;=0A= for (var i =3D 0, j =3D this.length, returns; i < j; i++){=0A= returns =3D this[i][property].apply(this[i], args);=0A= if ($type(returns) !=3D 'element') elements =3D false;=0A= items.push(returns);=0A= };=0A= return (elements) ? $$.unique(items) : items;=0A= };=0A= };=0A= =0A= Element.extend =3D function(properties){=0A= for (var property in properties){=0A= HTMLElement.prototype[property] =3D properties[property];=0A= Element.prototype[property] =3D properties[property];=0A= Element[property] =3D $native.generic(property);=0A= var elementsProperty =3D (Array.prototype[property]) ? property + = 'Elements' : property;=0A= Elements.prototype[elementsProperty] =3D Elements.Multi(property);=0A= }=0A= };=0A= =0A= /*=0A= Class: Element=0A= Custom class to allow all of its methods to be used with any DOM = element via the dollar function <$>.=0A= */=0A= =0A= Element.extend({=0A= =0A= /*=0A= Property: set=0A= you can set events, styles and properties with this shortcut. same as = calling new Element.=0A= */=0A= =0A= set: function(props){=0A= for (var prop in props){=0A= var val =3D props[prop];=0A= switch(prop){=0A= case 'styles': this.setStyles(val); break;=0A= case 'events': if (this.addEvents) this.addEvents(val); break;=0A= case 'properties': this.setProperties(val); break;=0A= default: this.setProperty(prop, val);=0A= }=0A= }=0A= return this;=0A= },=0A= =0A= inject: function(el, where){=0A= el =3D $(el);=0A= switch(where){=0A= case 'before': el.parentNode.insertBefore(this, el); break;=0A= case 'after':=0A= var next =3D el.getNext();=0A= if (!next) el.parentNode.appendChild(this);=0A= else el.parentNode.insertBefore(this, next);=0A= break;=0A= case 'top':=0A= var first =3D el.firstChild;=0A= if (first){=0A= el.insertBefore(this, first);=0A= break;=0A= }=0A= default: el.appendChild(this);=0A= }=0A= return this;=0A= },=0A= =0A= /*=0A= Property: injectBefore=0A= Inserts the Element before the passed element.=0A= =0A= Arguments:=0A= el - an element reference or the id of the element to be injected in.=0A= =0A= Example:=0A= >html:=0A= >
=0A= >
=0A= >js:=0A= >$('mySecondElement').injectBefore('myElement');=0A= >resulting html:=0A= >
=0A= >
=0A= */=0A= =0A= injectBefore: function(el){=0A= return this.inject(el, 'before');=0A= },=0A= =0A= /*=0A= Property: injectAfter=0A= Same as , but inserts the element after.=0A= */=0A= =0A= injectAfter: function(el){=0A= return this.inject(el, 'after');=0A= },=0A= =0A= /*=0A= Property: injectInside=0A= Same as , but inserts the element inside.=0A= */=0A= =0A= injectInside: function(el){=0A= return this.inject(el, 'bottom');=0A= },=0A= =0A= /*=0A= Property: injectTop=0A= Same as , but inserts the element inside, at the = top.=0A= */=0A= =0A= injectTop: function(el){=0A= return this.inject(el, 'top');=0A= },=0A= =0A= /*=0A= Property: adopt=0A= Inserts the passed elements inside the Element.=0A= =0A= Arguments:=0A= accepts elements references, element ids as string, selectors = ($$('stuff')) / array of elements, array of ids as strings and = collections.=0A= */=0A= =0A= adopt: function(){=0A= var elements =3D [];=0A= $each(arguments, function(argument){=0A= elements =3D elements.concat(argument);=0A= });=0A= $$(elements).inject(this);=0A= return this;=0A= },=0A= =0A= /*=0A= Property: remove=0A= Removes the Element from the DOM.=0A= =0A= Example:=0A= >$('myElement').remove() //bye bye=0A= */=0A= =0A= remove: function(){=0A= return this.parentNode.removeChild(this);=0A= },=0A= =0A= /*=0A= Property: clone=0A= Clones the Element and returns the cloned one.=0A= =0A= Arguments:=0A= contents - boolean, when true the Element is cloned with childNodes, = default true=0A= =0A= Returns:=0A= the cloned element=0A= =0A= Example:=0A= >var clone =3D $('myElement').clone().injectAfter('myElement');=0A= >//clones the Element and append the clone after the Element.=0A= */=0A= =0A= clone: function(contents){=0A= var el =3D $(this.cloneNode(contents !=3D=3D false));=0A= if (!el.$events) return el;=0A= el.$events =3D {};=0A= for (var type in this.$events) el.$events[type] =3D {=0A= 'keys': $A(this.$events[type].keys),=0A= 'values': $A(this.$events[type].values)=0A= };=0A= return el.removeEvents();=0A= },=0A= =0A= /*=0A= Property: replaceWith=0A= Replaces the Element with an element passed.=0A= =0A= Arguments:=0A= el - a string representing the element to be injected in (myElementId, = or div), or an element reference.=0A= If you pass div or another tag, the element will be created.=0A= =0A= Returns:=0A= the passed in element=0A= =0A= Example:=0A= >$('myOldElement').replaceWith($('myNewElement')); //$('myOldElement') = is gone, and $('myNewElement') is in its place.=0A= */=0A= =0A= replaceWith: function(el){=0A= el =3D $(el);=0A= this.parentNode.replaceChild(el, this);=0A= return el;=0A= },=0A= =0A= /*=0A= Property: appendText=0A= Appends text node to a DOM element.=0A= =0A= Arguments:=0A= text - the text to append.=0A= =0A= Example:=0A= >
hey
=0A= >$('myElement').appendText(' howdy'); //myElement innerHTML is now = "hey howdy"=0A= */=0A= =0A= appendText: function(text){=0A= this.appendChild(document.createTextNode(text));=0A= return this;=0A= },=0A= =0A= /*=0A= Property: hasClass=0A= Tests the Element to see if it has the passed in className.=0A= =0A= Returns:=0A= true - the Element has the class=0A= false - it doesn't=0A= =0A= Arguments:=0A= className - string; the class name to test.=0A= =0A= Example:=0A= >
=0A= >$('myElement').hasClass('testClass'); //returns true=0A= */=0A= =0A= hasClass: function(className){=0A= return this.className.contains(className, ' ');=0A= },=0A= =0A= /*=0A= Property: addClass=0A= Adds the passed in class to the Element, if the element doesnt already = have it.=0A= =0A= Arguments:=0A= className - string; the class name to add=0A= =0A= Example:=0A= >
=0A= >$('myElement').addClass('newClass'); //
=0A= */=0A= =0A= addClass: function(className){=0A= if (!this.hasClass(className)) this.className =3D (this.className + ' = ' + className).clean();=0A= return this;=0A= },=0A= =0A= /*=0A= Property: removeClass=0A= Works like , but removes the class from the element.=0A= */=0A= =0A= removeClass: function(className){=0A= this.className =3D this.className.replace(new RegExp('(^|\\s)' + = className + '(?:\\s|$)'), '$1').clean();=0A= return this;=0A= },=0A= =0A= /*=0A= Property: toggleClass=0A= Adds or removes the passed in class name to the element, depending on = if it's present or not.=0A= =0A= Arguments:=0A= className - the class to add or remove=0A= =0A= Example:=0A= >
=0A= >$('myElement').toggleClass('myClass');=0A= >
=0A= >$('myElement').toggleClass('myClass');=0A= >
=0A= */=0A= =0A= toggleClass: function(className){=0A= return this.hasClass(className) ? this.removeClass(className) : = this.addClass(className);=0A= },=0A= =0A= /*=0A= Property: setStyle=0A= Sets a css property to the Element.=0A= =0A= Arguments:=0A= property - the property to set=0A= value - the value to which to set it; for numeric values that require = "px" you can pass an integer=0A= =0A= Example:=0A= >$('myElement').setStyle('width', '300px'); //the width is now 300px=0A= >$('myElement').setStyle('width', 300); //the width is now 300px=0A= */=0A= =0A= setStyle: function(property, value){=0A= switch(property){=0A= case 'opacity': return this.setOpacity(parseFloat(value));=0A= case 'float': property =3D (window.ie) ? 'styleFloat' : 'cssFloat';=0A= }=0A= property =3D property.camelCase();=0A= switch($type(value)){=0A= case 'number': if (!['zIndex', 'zoom'].contains(property)) value +=3D = 'px'; break;=0A= case 'array': value =3D 'rgb(' + value.join(',') + ')';=0A= }=0A= this.style[property] =3D value;=0A= return this;=0A= },=0A= =0A= /*=0A= Property: setStyles=0A= Applies a collection of styles to the Element.=0A= =0A= Arguments:=0A= source - an object or string containing all the styles to apply. When = its a string it overrides old style.=0A= =0A= Examples:=0A= >$('myElement').setStyles({=0A= > border: '1px solid #000',=0A= > width: 300,=0A= > height: 400=0A= >});=0A= =0A= OR=0A= =0A= >$('myElement').setStyles('border: 1px solid #000; width: 300px; = height: 400px;');=0A= */=0A= =0A= setStyles: function(source){=0A= switch($type(source)){=0A= case 'object': Element.setMany(this, 'setStyle', source); break;=0A= case 'string': this.style.cssText =3D source;=0A= }=0A= return this;=0A= },=0A= =0A= /*=0A= Property: setOpacity=0A= Sets the opacity of the Element, and sets also visibility =3D=3D = "hidden" if opacity =3D=3D 0, and visibility =3D "visible" if opacity > = 0.=0A= =0A= Arguments:=0A= opacity - float; Accepts values from 0 to 1.=0A= =0A= Example:=0A= >$('myElement').setOpacity(0.5) //make it 50% transparent=0A= */=0A= =0A= setOpacity: function(opacity){=0A= if (opacity =3D=3D 0){=0A= if (this.style.visibility !=3D "hidden") this.style.visibility =3D = "hidden";=0A= } else {=0A= if (this.style.visibility !=3D "visible") this.style.visibility =3D = "visible";=0A= }=0A= if (!this.currentStyle || !this.currentStyle.hasLayout) = this.style.zoom =3D 1;=0A= if (window.ie) this.style.filter =3D (opacity =3D=3D 1) ? '' : = "alpha(opacity=3D" + opacity * 100 + ")";=0A= this.style.opacity =3D this.$tmp.opacity =3D opacity;=0A= return this;=0A= },=0A= =0A= /*=0A= Property: getStyle=0A= Returns the style of the Element given the property passed in.=0A= =0A= Arguments:=0A= property - the css style property you want to retrieve=0A= =0A= Example:=0A= >$('myElement').getStyle('width'); //returns "400px"=0A= >//but you can also use=0A= >$('myElement').getStyle('width').toInt(); //returns 400=0A= =0A= Returns:=0A= the style as a string=0A= */=0A= =0A= getStyle: function(property){=0A= property =3D property.camelCase();=0A= var result =3D this.style[property];=0A= if (!$chk(result)){=0A= if (property =3D=3D 'opacity') return this.$tmp.opacity;=0A= result =3D [];=0A= for (var style in Element.Styles){=0A= if (property =3D=3D style){=0A= Element.Styles[style].each(function(s){=0A= var style =3D this.getStyle(s);=0A= result.push(parseInt(style) ? style : '0px');=0A= }, this);=0A= if (property =3D=3D 'border'){=0A= var every =3D result.every(function(bit){=0A= return (bit =3D=3D result[0]);=0A= });=0A= return (every) ? result[0] : false;=0A= }=0A= return result.join(' ');=0A= }=0A= }=0A= if (property.contains('border')){=0A= if (Element.Styles.border.contains(property)){=0A= return ['Width', 'Style', 'Color'].map(function(p){=0A= return this.getStyle(property + p);=0A= }, this).join(' ');=0A= } else if (Element.borderShort.contains(property)){=0A= return ['Top', 'Right', 'Bottom', 'Left'].map(function(p){=0A= return this.getStyle('border' + p + property.replace('border', = ''));=0A= }, this).join(' ');=0A= }=0A= }=0A= if (document.defaultView) result =3D = document.defaultView.getComputedStyle(this, = null).getPropertyValue(property.hyphenate());=0A= else if (this.currentStyle) result =3D this.currentStyle[property];=0A= }=0A= if (window.ie) result =3D Element.fixStyle(property, result, this);=0A= if (result && property.test(/color/i) && result.contains('rgb')){=0A= return result.split('rgb').splice(1,4).map(function(color){=0A= return color.rgbToHex();=0A= }).join(' ');=0A= }=0A= return result;=0A= },=0A= =0A= /*=0A= Property: getStyles=0A= Returns an object of styles of the Element for each argument passed in.=0A= Arguments:=0A= properties - strings; any number of style properties=0A= Example:=0A= >$('myElement').getStyles('width','height','padding');=0A= >//returns an object like:=0A= >{width: "10px", height: "10px", padding: "10px 0px 10px 0px"}=0A= */=0A= =0A= getStyles: function(){=0A= return Element.getMany(this, 'getStyle', arguments);=0A= },=0A= =0A= walk: function(brother, start){=0A= brother +=3D 'Sibling';=0A= var el =3D (start) ? this[start] : this[brother];=0A= while (el && $type(el) !=3D 'element') el =3D el[brother];=0A= return $(el);=0A= },=0A= =0A= /*=0A= Property: getPrevious=0A= Returns the previousSibling of the Element, excluding text nodes.=0A= =0A= Example:=0A= >$('myElement').getPrevious(); //get the previous DOM element from = myElement=0A= =0A= Returns:=0A= the sibling element or undefined if none found.=0A= */=0A= =0A= getPrevious: function(){=0A= return this.walk('previous');=0A= },=0A= =0A= /*=0A= Property: getNext=0A= Works as Element.getPrevious, but tries to find the nextSibling.=0A= */=0A= =0A= getNext: function(){=0A= return this.walk('next');=0A= },=0A= =0A= /*=0A= Property: getFirst=0A= Works as , but tries to find the firstChild.=0A= */=0A= =0A= getFirst: function(){=0A= return this.walk('next', 'firstChild');=0A= },=0A= =0A= /*=0A= Property: getLast=0A= Works as , but tries to find the lastChild.=0A= */=0A= =0A= getLast: function(){=0A= return this.walk('previous', 'lastChild');=0A= },=0A= =0A= /*=0A= Property: getParent=0A= returns the $(element.parentNode)=0A= */=0A= =0A= getParent: function(){=0A= return $(this.parentNode);=0A= },=0A= =0A= /*=0A= Property: getChildren=0A= returns all the $(element.childNodes), excluding text nodes. Returns = as .=0A= */=0A= =0A= getChildren: function(){=0A= return $$(this.childNodes);=0A= },=0A= =0A= /*=0A= Property: hasChild=0A= returns true if the passed in element is a child of the $(element).=0A= */=0A= =0A= hasChild: function(el){=0A= return !!$A(this.getElementsByTagName('*')).contains(el);=0A= },=0A= =0A= /*=0A= Property: getProperty=0A= Gets the an attribute of the Element.=0A= =0A= Arguments:=0A= property - string; the attribute to retrieve=0A= =0A= Example:=0A= >$('myImage').getProperty('src') // returns whatever.gif=0A= =0A= Returns:=0A= the value, or an empty string=0A= */=0A= =0A= getProperty: function(property){=0A= var index =3D Element.Properties[property];=0A= if (index) return this[index];=0A= var flag =3D Element.PropertiesIFlag[property] || 0;=0A= if (!window.ie || flag) return this.getAttribute(property, flag);=0A= var node =3D this.attributes[property];=0A= return (node) ? node.nodeValue : null;=0A= },=0A= =0A= /*=0A= Property: removeProperty=0A= Removes an attribute from the Element=0A= =0A= Arguments:=0A= property - string; the attribute to remove=0A= */=0A= =0A= removeProperty: function(property){=0A= var index =3D Element.Properties[property];=0A= if (index) this[index] =3D '';=0A= else this.removeAttribute(property);=0A= return this;=0A= },=0A= =0A= /*=0A= Property: getProperties=0A= same as , but for properties=0A= */=0A= =0A= getProperties: function(){=0A= return Element.getMany(this, 'getProperty', arguments);=0A= },=0A= =0A= /*=0A= Property: setProperty=0A= Sets an attribute for the Element.=0A= =0A= Arguments:=0A= property - string; the property to assign the value passed in=0A= value - the value to assign to the property passed in=0A= =0A= Example:=0A= >$('myImage').setProperty('src', 'whatever.gif'); //myImage now points = to whatever.gif for its source=0A= */=0A= =0A= setProperty: function(property, value){=0A= var index =3D Element.Properties[property];=0A= if (index) this[index] =3D value;=0A= else this.setAttribute(property, value);=0A= return this;=0A= },=0A= =0A= /*=0A= Property: setProperties=0A= Sets numerous attributes for the Element.=0A= =0A= Arguments:=0A= source - an object with key/value pairs.=0A= =0A= Example:=0A= (start code)=0A= $('myElement').setProperties({=0A= src: 'whatever.gif',=0A= alt: 'whatever dude'=0A= });=0A= 3D"whatever=0A= (end)=0A= */=0A= =0A= setProperties: function(source){=0A= return Element.setMany(this, 'setProperty', source);=0A= },=0A= =0A= /*=0A= Property: setHTML=0A= Sets the innerHTML of the Element.=0A= =0A= Arguments:=0A= html - string; the new innerHTML for the element.=0A= =0A= Example:=0A= >$('myElement').setHTML(newHTML) //the innerHTML of myElement is now = =3D newHTML=0A= */=0A= =0A= setHTML: function(){=0A= this.innerHTML =3D $A(arguments).join('');=0A= return this;=0A= },=0A= =0A= /*=0A= Property: setText=0A= Sets the inner text of the Element.=0A= =0A= Arguments:=0A= text - string; the new text content for the element.=0A= =0A= Example:=0A= >$('myElement').setText('some text') //the text of myElement is now = =3D 'some text'=0A= */=0A= =0A= setText: function(text){=0A= var tag =3D this.getTag();=0A= if (['style', 'script'].contains(tag)){=0A= if (window.ie){=0A= if (tag =3D=3D 'style') this.styleSheet.cssText =3D text;=0A= else if (tag =3D=3D 'script') this.setProperty('text', text);=0A= return this;=0A= } else {=0A= this.removeChild(this.firstChild);=0A= return this.appendText(text);=0A= }=0A= }=0A= this[$defined(this.innerText) ? 'innerText' : 'textContent'] =3D text;=0A= return this;=0A= },=0A= =0A= /*=0A= Property: getText=0A= Gets the inner text of the Element.=0A= */=0A= =0A= getText: function(){=0A= var tag =3D this.getTag();=0A= if (['style', 'script'].contains(tag)){=0A= if (window.ie){=0A= if (tag =3D=3D 'style') return this.styleSheet.cssText;=0A= else if (tag =3D=3D 'script') return this.getProperty('text');=0A= } else {=0A= return this.innerHTML;=0A= }=0A= }=0A= return ($pick(this.innerText, this.textContent));=0A= },=0A= =0A= /*=0A= Property: getTag=0A= Returns the tagName of the element in lower case.=0A= =0A= Example:=0A= >$('myImage').getTag() // returns 'img'=0A= =0A= Returns:=0A= The tag name in lower case=0A= */=0A= =0A= getTag: function(){=0A= return this.tagName.toLowerCase();=0A= },=0A= =0A= /*=0A= Property: empty=0A= Empties an element of all its children.=0A= =0A= Example:=0A= >$('myDiv').empty() // empties the Div and returns it=0A= =0A= Returns:=0A= The element.=0A= */=0A= =0A= empty: function(){=0A= Garbage.trash(this.getElementsByTagName('*'));=0A= return this.setHTML('');=0A= }=0A= =0A= });=0A= =0A= Element.fixStyle =3D function(property, result, element){=0A= if ($chk(parseInt(result))) return result;=0A= if (['height', 'width'].contains(property)){=0A= var values =3D (property =3D=3D 'width') ? ['left', 'right'] : ['top', = 'bottom'];=0A= var size =3D 0;=0A= values.each(function(value){=0A= size +=3D element.getStyle('border-' + value + '-width').toInt() + = element.getStyle('padding-' + value).toInt();=0A= });=0A= return element['offset' + property.capitalize()] - size + 'px';=0A= } else if (property.test(/border(.+)Width|margin|padding/)){=0A= return '0px';=0A= }=0A= return result;=0A= };=0A= =0A= Element.Styles =3D {'border': [], 'padding': [], 'margin': []};=0A= ['Top', 'Right', 'Bottom', 'Left'].each(function(direction){=0A= for (var style in Element.Styles) Element.Styles[style].push(style + = direction);=0A= });=0A= =0A= Element.borderShort =3D ['borderWidth', 'borderStyle', 'borderColor'];=0A= =0A= Element.getMany =3D function(el, method, keys){=0A= var result =3D {};=0A= $each(keys, function(key){=0A= result[key] =3D el[method](key);=0A= });=0A= return result;=0A= };=0A= =0A= Element.setMany =3D function(el, method, pairs){=0A= for (var key in pairs) el[method](key, pairs[key]);=0A= return el;=0A= };=0A= =0A= Element.Properties =3D new Abstract({=0A= 'class': 'className', 'for': 'htmlFor', 'colspan': 'colSpan', = 'rowspan': 'rowSpan',=0A= 'accesskey': 'accessKey', 'tabindex': 'tabIndex', 'maxlength': = 'maxLength',=0A= 'readonly': 'readOnly', 'frameborder': 'frameBorder', 'value': 'value',=0A= 'disabled': 'disabled', 'checked': 'checked', 'multiple': 'multiple', = 'selected': 'selected'=0A= });=0A= Element.PropertiesIFlag =3D {=0A= 'href': 2, 'src': 2=0A= };=0A= =0A= Element.Methods =3D {=0A= Listeners: {=0A= addListener: function(type, fn){=0A= if (this.addEventListener) this.addEventListener(type, fn, false);=0A= else this.attachEvent('on' + type, fn);=0A= return this;=0A= },=0A= =0A= removeListener: function(type, fn){=0A= if (this.removeEventListener) this.removeEventListener(type, fn, = false);=0A= else this.detachEvent('on' + type, fn);=0A= return this;=0A= }=0A= }=0A= };=0A= =0A= window.extend(Element.Methods.Listeners);=0A= document.extend(Element.Methods.Listeners);=0A= Element.extend(Element.Methods.Listeners);=0A= =0A= var Garbage =3D {=0A= =0A= elements: [],=0A= =0A= collect: function(el){=0A= if (!el.$tmp){=0A= Garbage.elements.push(el);=0A= el.$tmp =3D {'opacity': 1};=0A= }=0A= return el;=0A= },=0A= =0A= trash: function(elements){=0A= for (var i =3D 0, j =3D elements.length, el; i < j; i++){=0A= var isEmbed =3D false;=0A= if (!(el =3D elements[i]) || !el.$tmp) continue;=0A= if (el.$events) el.fireEvent('trash').removeEvents();=0A= for (var p in el.$tmp) el.$tmp[p] =3D null;=0A= if (!$defined(el.tagName) || ($defined(el.tagName) && = el.tagName.toLowerCase() !=3D 'embed'))=0A= for (var d in Element.prototype) el[d] =3D null;=0A= else=0A= isEmbed =3D true;=0A= Garbage.elements[Garbage.elements.indexOf(el)] =3D null;=0A= if (!isEmbed){=0A= el.htmlElement =3D el.$tmp =3D el =3D null;=0A= }=0A= }=0A= Garbage.elements.remove(null);=0A= },=0A= =0A= empty: function(){=0A= Garbage.collect(window);=0A= Garbage.collect(document);=0A= Garbage.trash(Garbage.elements);=0A= }=0A= =0A= };=0A= =0A= window.addListener('beforeunload', function(){=0A= window.addListener('unload', Garbage.empty);=0A= if (window.ie) window.addListener('unload', CollectGarbage);=0A= });=0A= =0A= /*=0A= Script: Element.Event.js=0A= Contains the Event Class, Element methods to deal with Element events, = custom Events, and the Function prototype bindWithEvent.=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Event=0A= Cross browser methods to manage events.=0A= =0A= Arguments:=0A= event - the event=0A= =0A= Properties:=0A= shift - true if the user pressed the shift=0A= control - true if the user pressed the control=0A= alt - true if the user pressed the alt=0A= meta - true if the user pressed the meta key=0A= wheel - the amount of third button scrolling=0A= code - the keycode of the key pressed=0A= page.x - the x position of the mouse, relative to the full window=0A= page.y - the y position of the mouse, relative to the full window=0A= client.x - the x position of the mouse, relative to the viewport=0A= client.y - the y position of the mouse, relative to the viewport=0A= key - the key pressed as a lowercase string. key also returns 'enter', = 'up', 'down', 'left', 'right', 'space', 'backspace', 'delete', 'esc'. = Handy for these special keys.=0A= target - the event target=0A= relatedTarget - the event related target=0A= =0A= Example:=0A= (start code)=0A= $('myLink').onkeydown =3D function(event){=0A= var event =3D new Event(event);=0A= //event is now the Event class.=0A= alert(event.key); //returns the lowercase letter pressed=0A= alert(event.shift); //returns true if the key pressed is shift=0A= if (event.key =3D=3D 's' && event.control) alert('document saved');=0A= };=0A= (end)=0A= */=0A= =0A= var Event =3D new Class({=0A= =0A= initialize: function(event){=0A= if (event && event.$extended) return event;=0A= this.$extended =3D true;=0A= event =3D event || window.event;=0A= this.event =3D event;=0A= this.type =3D event.type;=0A= this.target =3D event.target || event.srcElement;=0A= if (this.target.nodeType =3D=3D 3) this.target =3D = this.target.parentNode;=0A= this.shift =3D event.shiftKey;=0A= this.control =3D event.ctrlKey;=0A= this.alt =3D event.altKey;=0A= this.meta =3D event.metaKey;=0A= if (['DOMMouseScroll', 'mousewheel'].contains(this.type)){=0A= this.wheel =3D (event.wheelDelta) ? event.wheelDelta / 120 : = -(event.detail || 0) / 3;=0A= } else if (this.type.contains('key')){=0A= this.code =3D event.which || event.keyCode;=0A= for (var name in Event.keys){=0A= if (Event.keys[name] =3D=3D this.code){=0A= this.key =3D name;=0A= break;=0A= }=0A= }=0A= if (this.type =3D=3D 'keydown'){=0A= var fKey =3D this.code - 111;=0A= if (fKey > 0 && fKey < 13) this.key =3D 'f' + fKey;=0A= }=0A= this.key =3D this.key || String.fromCharCode(this.code).toLowerCase();=0A= } else if (this.type.test(/(click|mouse|menu)/)){=0A= this.page =3D {=0A= 'x': event.pageX || event.clientX + = document.documentElement.scrollLeft,=0A= 'y': event.pageY || event.clientY + = document.documentElement.scrollTop=0A= };=0A= this.client =3D {=0A= 'x': event.pageX ? event.pageX - window.pageXOffset : event.clientX,=0A= 'y': event.pageY ? event.pageY - window.pageYOffset : event.clientY=0A= };=0A= this.rightClick =3D (event.which =3D=3D 3) || (event.button =3D=3D 2);=0A= switch(this.type){=0A= case 'mouseover': this.relatedTarget =3D event.relatedTarget || = event.fromElement; break;=0A= case 'mouseout': this.relatedTarget =3D event.relatedTarget || = event.toElement;=0A= }=0A= this.fixRelatedTarget();=0A= }=0A= return this;=0A= },=0A= =0A= /*=0A= Property: stop=0A= cross browser method to stop an event=0A= */=0A= =0A= stop: function(){=0A= return this.stopPropagation().preventDefault();=0A= },=0A= =0A= /*=0A= Property: stopPropagation=0A= cross browser method to stop the propagation of an event=0A= */=0A= =0A= stopPropagation: function(){=0A= if (this.event.stopPropagation) this.event.stopPropagation();=0A= else this.event.cancelBubble =3D true;=0A= return this;=0A= },=0A= =0A= /*=0A= Property: preventDefault=0A= cross browser method to prevent the default action of the event=0A= */=0A= =0A= preventDefault: function(){=0A= if (this.event.preventDefault) this.event.preventDefault();=0A= else this.event.returnValue =3D false;=0A= return this;=0A= }=0A= =0A= });=0A= =0A= Event.fix =3D {=0A= =0A= relatedTarget: function(){=0A= if (this.relatedTarget && this.relatedTarget.nodeType =3D=3D 3) = this.relatedTarget =3D this.relatedTarget.parentNode;=0A= },=0A= =0A= relatedTargetGecko: function(){=0A= try {Event.fix.relatedTarget.call(this);} catch(e){this.relatedTarget = =3D this.target;}=0A= }=0A= =0A= };=0A= =0A= Event.prototype.fixRelatedTarget =3D (window.gecko) ? = Event.fix.relatedTargetGecko : Event.fix.relatedTarget;=0A= =0A= /*=0A= Property: keys=0A= you can add additional Event keys codes this way:=0A= =0A= Example:=0A= (start code)=0A= Event.keys.whatever =3D 80;=0A= $(myelement).addEvent(keydown, function(event){=0A= event =3D new Event(event);=0A= if (event.key =3D=3D 'whatever') console.log(whatever key clicked).=0A= });=0A= (end)=0A= */=0A= =0A= Event.keys =3D new Abstract({=0A= 'enter': 13,=0A= 'up': 38,=0A= 'down': 40,=0A= 'left': 37,=0A= 'right': 39,=0A= 'esc': 27,=0A= 'space': 32,=0A= 'backspace': 8,=0A= 'tab': 9,=0A= 'delete': 46=0A= });=0A= =0A= /*=0A= Class: Element=0A= Custom class to allow all of its methods to be used with any DOM = element via the dollar function <$>.=0A= */=0A= =0A= Element.Methods.Events =3D {=0A= =0A= /*=0A= Property: addEvent=0A= Attaches an event listener to a DOM element.=0A= =0A= Arguments:=0A= type - the event to monitor ('click', 'load', etc) without the prefix = 'on'.=0A= fn - the function to execute=0A= =0A= Example:=0A= >$('myElement').addEvent('click', function(){alert('clicked!')});=0A= */=0A= =0A= addEvent: function(type, fn){=0A= this.$events =3D this.$events || {};=0A= this.$events[type] =3D this.$events[type] || {'keys': [], 'values': = []};=0A= if (this.$events[type].keys.contains(fn)) return this;=0A= this.$events[type].keys.push(fn);=0A= var realType =3D type;=0A= var custom =3D Element.Events[type];=0A= if (custom){=0A= if (custom.add) custom.add.call(this, fn);=0A= if (custom.map) fn =3D custom.map;=0A= if (custom.type) realType =3D custom.type;=0A= }=0A= if (!this.addEventListener) fn =3D fn.create({'bind': this, 'event': = true});=0A= this.$events[type].values.push(fn);=0A= return (Element.NativeEvents.contains(realType)) ? = this.addListener(realType, fn) : this;=0A= },=0A= =0A= /*=0A= Property: removeEvent=0A= Works as Element.addEvent, but instead removes the previously added = event listener.=0A= */=0A= =0A= removeEvent: function(type, fn){=0A= if (!this.$events || !this.$events[type]) return this;=0A= var pos =3D this.$events[type].keys.indexOf(fn);=0A= if (pos =3D=3D -1) return this;=0A= var key =3D this.$events[type].keys.splice(pos,1)[0];=0A= var value =3D this.$events[type].values.splice(pos,1)[0];=0A= var custom =3D Element.Events[type];=0A= if (custom){=0A= if (custom.remove) custom.remove.call(this, fn);=0A= if (custom.type) type =3D custom.type;=0A= }=0A= return (Element.NativeEvents.contains(type)) ? = this.removeListener(type, value) : this;=0A= },=0A= =0A= /*=0A= Property: addEvents=0A= As , but accepts an object and add multiple events at once.=0A= */=0A= =0A= addEvents: function(source){=0A= return Element.setMany(this, 'addEvent', source);=0A= },=0A= =0A= /*=0A= Property: removeEvents=0A= removes all events of a certain type from an element. if no argument = is passed in, removes all events.=0A= =0A= Arguments:=0A= type - string; the event name (e.g. 'click')=0A= */=0A= =0A= removeEvents: function(type){=0A= if (!this.$events) return this;=0A= if (!type){=0A= for (var evType in this.$events) this.removeEvents(evType);=0A= this.$events =3D null;=0A= } else if (this.$events[type]){=0A= this.$events[type].keys.each(function(fn){=0A= this.removeEvent(type, fn);=0A= }, this);=0A= this.$events[type] =3D null;=0A= }=0A= return this;=0A= },=0A= =0A= /*=0A= Property: fireEvent=0A= executes all events of the specified type present in the element.=0A= =0A= Arguments:=0A= type - string; the event name (e.g. 'click')=0A= args - array or single object; arguments to pass to the function; if = more than one argument, must be an array=0A= delay - (integer) delay (in ms) to wait to execute the event=0A= */=0A= =0A= fireEvent: function(type, args, delay){=0A= if (this.$events && this.$events[type]){=0A= this.$events[type].keys.each(function(fn){=0A= fn.create({'bind': this, 'delay': delay, 'arguments': args})();=0A= }, this);=0A= }=0A= return this;=0A= },=0A= =0A= /*=0A= Property: cloneEvents=0A= Clones all events from an element to this element.=0A= =0A= Arguments:=0A= from - element, copy all events from this element=0A= type - optional, copies only events of this type=0A= */=0A= =0A= cloneEvents: function(from, type){=0A= if (!from.$events) return this;=0A= if (!type){=0A= for (var evType in from.$events) this.cloneEvents(from, evType);=0A= } else if (from.$events[type]){=0A= from.$events[type].keys.each(function(fn){=0A= this.addEvent(type, fn);=0A= }, this);=0A= }=0A= return this;=0A= }=0A= =0A= };=0A= =0A= window.extend(Element.Methods.Events);=0A= document.extend(Element.Methods.Events);=0A= Element.extend(Element.Methods.Events);=0A= =0A= /* Section: Custom Events */=0A= =0A= Element.Events =3D new Abstract({=0A= =0A= /*=0A= Event: mouseenter=0A= In addition to the standard javascript events (load, mouseover, = mouseout, click, etc.) contains two custom events=0A= this event fires when the mouse enters the area of the dom element; = will not be fired again if the mouse crosses over children of the = element (unlike mouseover)=0A= =0A= =0A= Example:=0A= >$(myElement).addEvent('mouseenter', myFunction);=0A= */=0A= =0A= 'mouseenter': {=0A= type: 'mouseover',=0A= map: function(event){=0A= event =3D new Event(event);=0A= if (event.relatedTarget !=3D this && = !this.hasChild(event.relatedTarget)) this.fireEvent('mouseenter', event);=0A= }=0A= },=0A= =0A= /*=0A= Event: mouseleave=0A= this event fires when the mouse exits the area of the dom element; = will not be fired again if the mouse crosses over children of the = element (unlike mouseout)=0A= =0A= =0A= Example:=0A= >$(myElement).addEvent('mouseleave', myFunction);=0A= */=0A= =0A= 'mouseleave': {=0A= type: 'mouseout',=0A= map: function(event){=0A= event =3D new Event(event);=0A= if (event.relatedTarget !=3D this && = !this.hasChild(event.relatedTarget)) this.fireEvent('mouseleave', event);=0A= }=0A= },=0A= =0A= 'mousewheel': {=0A= type: (window.gecko) ? 'DOMMouseScroll' : 'mousewheel'=0A= }=0A= =0A= });=0A= =0A= Element.NativeEvents =3D [=0A= 'click', 'dblclick', 'mouseup', 'mousedown', //mouse buttons=0A= 'mousewheel', 'DOMMouseScroll', //mouse wheel=0A= 'mouseover', 'mouseout', 'mousemove', //mouse movement=0A= 'keydown', 'keypress', 'keyup', //keys=0A= 'load', 'unload', 'beforeunload', 'resize', 'move', //window=0A= 'focus', 'blur', 'change', 'submit', 'reset', 'select', //forms elements=0A= 'error', 'abort', 'contextmenu', 'scroll' //misc=0A= ];=0A= =0A= /*=0A= Class: Function=0A= A collection of The Function Object prototype methods.=0A= */=0A= =0A= Function.extend({=0A= =0A= /*=0A= Property: bindWithEvent=0A= automatically passes MooTools Event Class.=0A= =0A= Arguments:=0A= bind - optional, the object that the "this" of the function will refer = to.=0A= args - optional, an argument to pass to the function; if more than one = argument, it must be an array of arguments.=0A= =0A= Returns:=0A= a function with the parameter bind as its "this" and as a pre-passed = argument event or window.event, depending on the browser.=0A= =0A= Example:=0A= >function myFunction(event){=0A= > alert(event.client.x) //returns the coordinates of the mouse..=0A= >};=0A= >myElement.addEvent('click', myFunction.bindWithEvent(myElement));=0A= */=0A= =0A= bindWithEvent: function(bind, args){=0A= return this.create({'bind': bind, 'arguments': args, 'event': Event});=0A= }=0A= =0A= });=0A= =0A= =0A= /*=0A= Script: Element.Filters.js=0A= add Filters capability to .=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Elements=0A= A collection of methods to be used with <$$> elements collections.=0A= */=0A= =0A= Elements.extend({=0A= =0A= /*=0A= Property: filterByTag=0A= Filters the collection by a specified tag name.=0A= Returns a new Elements collection, while the original remains = untouched.=0A= */=0A= =0A= filterByTag: function(tag){=0A= return new Elements(this.filter(function(el){=0A= return (Element.getTag(el) =3D=3D tag);=0A= }));=0A= },=0A= =0A= /*=0A= Property: filterByClass=0A= Filters the collection by a specified class name.=0A= Returns a new Elements collection, while the original remains = untouched.=0A= */=0A= =0A= filterByClass: function(className, nocash){=0A= var elements =3D this.filter(function(el){=0A= return (el.className && el.className.contains(className, ' '));=0A= });=0A= return (nocash) ? elements : new Elements(elements);=0A= },=0A= =0A= /*=0A= Property: filterById=0A= Filters the collection by a specified ID.=0A= Returns a new Elements collection, while the original remains = untouched.=0A= */=0A= =0A= filterById: function(id, nocash){=0A= var elements =3D this.filter(function(el){=0A= return (el.id =3D=3D id);=0A= });=0A= return (nocash) ? elements : new Elements(elements);=0A= },=0A= =0A= /*=0A= Property: filterByAttribute=0A= Filters the collection by a specified attribute.=0A= Returns a new Elements collection, while the original remains = untouched.=0A= =0A= Arguments:=0A= name - the attribute name.=0A= operator - optional, the attribute operator.=0A= value - optional, the attribute value, only valid if the operator is = specified.=0A= */=0A= =0A= filterByAttribute: function(name, operator, value, nocash){=0A= var elements =3D this.filter(function(el){=0A= var current =3D Element.getProperty(el, name);=0A= if (!current) return false;=0A= if (!operator) return true;=0A= switch(operator){=0A= case '=3D': return (current =3D=3D value);=0A= case '*=3D': return (current.contains(value));=0A= case '^=3D': return (current.substr(0, value.length) =3D=3D value);=0A= case '$=3D': return (current.substr(current.length - value.length) = =3D=3D value);=0A= case '!=3D': return (current !=3D value);=0A= case '~=3D': return current.contains(value, ' ');=0A= }=0A= return false;=0A= });=0A= return (nocash) ? elements : new Elements(elements);=0A= }=0A= =0A= });=0A= =0A= /*=0A= Script: Element.Selectors.js=0A= Css Query related functions and extensions=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /* Section: Utility Functions */=0A= =0A= /*=0A= Function: $E=0A= Selects a single (i.e. the first found) Element based on the selector = passed in and an optional filter element.=0A= Returns as .=0A= =0A= Arguments:=0A= selector - string; the css selector to match=0A= filter - optional; a DOM element to limit the scope of the selector = match; defaults to document.=0A= =0A= Example:=0A= >$E('a', 'myElement') //find the first anchor tag inside the DOM = element with id 'myElement'=0A= =0A= Returns:=0A= a DOM element - the first element that matches the selector=0A= */=0A= =0A= function $E(selector, filter){=0A= return ($(filter) || document).getElement(selector);=0A= };=0A= =0A= /*=0A= Function: $ES=0A= Returns a collection of Elements that match the selector passed in = limited to the scope of the optional filter.=0A= See Also: for an alternate syntax.=0A= Returns as .=0A= =0A= Returns:=0A= an array of dom elements that match the selector within the filter=0A= =0A= Arguments:=0A= selector - string; css selector to match=0A= filter - optional; a DOM element to limit the scope of the selector = match; defaults to document.=0A= =0A= Examples:=0A= >$ES("a") //gets all the anchor tags; synonymous with $$("a")=0A= >$ES('a','myElement') //get all the anchor tags within $('myElement')=0A= */=0A= =0A= function $ES(selector, filter){=0A= return ($(filter) || document).getElementsBySelector(selector);=0A= };=0A= =0A= $$.shared =3D {=0A= =0A= 'regexp': = /^(\w*|\*)(?:#([\w-]+)|\.([\w-]+))?(?:\[(\w+)(?:([!*^$]?=3D)["']?([^"'\]]= *)["']?)?])?$/,=0A= =0A= 'xpath': {=0A= =0A= getParam: function(items, context, param, i){=0A= var temp =3D [context.namespaceURI ? 'xhtml:' : '', param[1]];=0A= if (param[2]) temp.push('[@id=3D"', param[2], '"]');=0A= if (param[3]) temp.push('[contains(concat(" ", @class, " "), " ', = param[3], ' ")]');=0A= if (param[4]){=0A= if (param[5] && param[6]){=0A= switch(param[5]){=0A= case '*=3D': temp.push('[contains(@', param[4], ', "', param[6], = '")]'); break;=0A= case '^=3D': temp.push('[starts-with(@', param[4], ', "', = param[6], '")]'); break;=0A= case '$=3D': temp.push('[substring(@', param[4], ', = string-length(@', param[4], ') - ', param[6].length, ' + 1) =3D "', = param[6], '"]'); break;=0A= case '=3D': temp.push('[@', param[4], '=3D"', param[6], '"]'); = break;=0A= case '!=3D': temp.push('[@', param[4], '!=3D"', param[6], '"]');=0A= }=0A= } else {=0A= temp.push('[@', param[4], ']');=0A= }=0A= }=0A= items.push(temp.join(''));=0A= return items;=0A= },=0A= =0A= getItems: function(items, context, nocash){=0A= var elements =3D [];=0A= var xpath =3D document.evaluate('.//' + items.join('//'), context, = $$.shared.resolver, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);=0A= for (var i =3D 0, j =3D xpath.snapshotLength; i < j; i++) = elements.push(xpath.snapshotItem(i));=0A= return (nocash) ? elements : new Elements(elements.map($));=0A= }=0A= =0A= },=0A= =0A= 'normal': {=0A= =0A= getParam: function(items, context, param, i){=0A= if (i =3D=3D 0){=0A= if (param[2]){=0A= var el =3D context.getElementById(param[2]);=0A= if (!el || ((param[1] !=3D '*') && (Element.getTag(el) !=3D = param[1]))) return false;=0A= items =3D [el];=0A= } else {=0A= items =3D $A(context.getElementsByTagName(param[1]));=0A= }=0A= } else {=0A= items =3D $$.shared.getElementsByTagName(items, param[1]);=0A= if (param[2]) items =3D Elements.filterById(items, param[2], true);=0A= }=0A= if (param[3]) items =3D Elements.filterByClass(items, param[3], true);=0A= if (param[4]) items =3D Elements.filterByAttribute(items, param[4], = param[5], param[6], true);=0A= return items;=0A= },=0A= =0A= getItems: function(items, context, nocash){=0A= return (nocash) ? items : $$.unique(items);=0A= }=0A= =0A= },=0A= =0A= resolver: function(prefix){=0A= return (prefix =3D=3D 'xhtml') ? 'http://www.w3.org/1999/xhtml' : = false;=0A= },=0A= =0A= getElementsByTagName: function(context, tagName){=0A= var found =3D [];=0A= for (var i =3D 0, j =3D context.length; i < j; i++) = found.extend(context[i].getElementsByTagName(tagName));=0A= return found;=0A= }=0A= =0A= };=0A= =0A= $$.shared.method =3D (window.xpath) ? 'xpath' : 'normal';=0A= =0A= /*=0A= Class: Element=0A= Custom class to allow all of its methods to be used with any DOM = element via the dollar function <$>.=0A= */=0A= =0A= Element.Methods.Dom =3D {=0A= =0A= /*=0A= Property: getElements=0A= Gets all the elements within an element that match the given (single) = selector.=0A= Returns as .=0A= =0A= Arguments:=0A= selector - string; the css selector to match=0A= =0A= Examples:=0A= >$('myElement').getElements('a'); // get all anchors within myElement=0A= >$('myElement').getElements('input[name=3Ddialog]') //get all input = tags with name 'dialog'=0A= >$('myElement').getElements('input[name$=3Dlog]') //get all input tags = with names ending with 'log'=0A= =0A= Notes:=0A= Supports these operators in attribute selectors:=0A= =0A= - =3D : is equal to=0A= - ^=3D : starts-with=0A= - $=3D : ends-with=0A= - !=3D : is not equal to=0A= =0A= Xpath is used automatically for compliant browsers.=0A= */=0A= =0A= getElements: function(selector, nocash){=0A= var items =3D [];=0A= selector =3D selector.trim().split(' ');=0A= for (var i =3D 0, j =3D selector.length; i < j; i++){=0A= var sel =3D selector[i];=0A= var param =3D sel.match($$.shared.regexp);=0A= if (!param) break;=0A= param[1] =3D param[1] || '*';=0A= var temp =3D $$.shared[$$.shared.method].getParam(items, this, param, = i);=0A= if (!temp) break;=0A= items =3D temp;=0A= }=0A= return $$.shared[$$.shared.method].getItems(items, this, nocash);=0A= },=0A= =0A= /*=0A= Property: getElement=0A= Same as , but returns only the first. Alternate = syntax for <$E>, where filter is the Element.=0A= Returns as .=0A= =0A= Arguments:=0A= selector - string; css selector=0A= */=0A= =0A= getElement: function(selector){=0A= return $(this.getElements(selector, true)[0] || false);=0A= },=0A= =0A= /*=0A= Property: getElementsBySelector=0A= Same as , but allows for comma separated = selectors, as in css. Alternate syntax for <$$>, where filter is the = Element.=0A= Returns as .=0A= =0A= Arguments:=0A= selector - string; css selector=0A= */=0A= =0A= getElementsBySelector: function(selector, nocash){=0A= var elements =3D [];=0A= selector =3D selector.split(',');=0A= for (var i =3D 0, j =3D selector.length; i < j; i++) elements =3D = elements.concat(this.getElements(selector[i], true));=0A= return (nocash) ? elements : $$.unique(elements);=0A= }=0A= =0A= };=0A= =0A= Element.extend({=0A= =0A= /*=0A= Property: getElementById=0A= Targets an element with the specified id found inside the Element. = Does not overwrite document.getElementById.=0A= =0A= Arguments:=0A= id - string; the id of the element to find.=0A= */=0A= =0A= getElementById: function(id){=0A= var el =3D document.getElementById(id);=0A= if (!el) return false;=0A= for (var parent =3D el.parentNode; parent !=3D this; parent =3D = parent.parentNode){=0A= if (!parent) return false;=0A= }=0A= return el;=0A= }/*compatibility*/,=0A= =0A= getElementsByClassName: function(className){ =0A= return this.getElements('.' + className); =0A= }=0A= =0A= /*end compatibility*/=0A= =0A= });=0A= =0A= document.extend(Element.Methods.Dom);=0A= Element.extend(Element.Methods.Dom);=0A= =0A= /*=0A= Script: Element.Form.js=0A= Contains Element prototypes to deal with Forms and their elements.=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Element=0A= Custom class to allow all of its methods to be used with any DOM = element via the dollar function <$>.=0A= */=0A= =0A= Element.extend({=0A= =0A= /*=0A= Property: getValue=0A= Returns the value of the Element, if its tag is textarea, select or = input. getValue called on a multiple select will return an array.=0A= */=0A= =0A= getValue: function(){=0A= switch(this.getTag()){=0A= case 'select':=0A= var values =3D [];=0A= $each(this.options, function(option){=0A= if (option.selected) values.push($pick(option.value, option.text));=0A= });=0A= return (this.multiple) ? values : values[0];=0A= case 'input': if (!(this.checked && ['checkbox', = 'radio'].contains(this.type)) && !['hidden', 'text', = 'password'].contains(this.type)) break;=0A= case 'textarea': return this.value;=0A= }=0A= return false;=0A= },=0A= =0A= getFormElements: function(){=0A= return $$(this.getElementsByTagName('input'), = this.getElementsByTagName('select'), = this.getElementsByTagName('textarea'));=0A= },=0A= =0A= /*=0A= Property: toQueryString=0A= Reads the children inputs of the Element and generates a query string, = based on their values. Used internally in =0A= =0A= Example:=0A= (start code)=0A= =0A= =0A= =0A= =0A= =0A= =0A= (end)=0A= =0A= Returns:=0A= email=3Dbob@bob.com&zipCode=3D90210=0A= */=0A= =0A= toQueryString: function(){=0A= var queryString =3D [];=0A= this.getFormElements().each(function(el){=0A= var name =3D el.name;=0A= var value =3D el.getValue();=0A= if (value =3D=3D=3D false || !name || el.disabled) return;=0A= var qs =3D function(val){=0A= queryString.push(name + '=3D' + encodeURIComponent(val));=0A= };=0A= if ($type(value) =3D=3D 'array') value.each(qs);=0A= else qs(value);=0A= });=0A= return queryString.join('&');=0A= }=0A= =0A= });=0A= =0A= /*=0A= Script: Element.Dimensions.js=0A= Contains Element prototypes to deal with Element size and position in = space.=0A= =0A= Note:=0A= The functions in this script require n XHTML doctype.=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Element=0A= Custom class to allow all of its methods to be used with any DOM = element via the dollar function <$>.=0A= */=0A= =0A= Element.extend({=0A= =0A= /*=0A= Property: scrollTo=0A= Scrolls the element to the specified coordinated (if the element has = an overflow)=0A= =0A= Arguments:=0A= x - the x coordinate=0A= y - the y coordinate=0A= =0A= Example:=0A= >$('myElement').scrollTo(0, 100)=0A= */=0A= =0A= scrollTo: function(x, y){=0A= this.scrollLeft =3D x;=0A= this.scrollTop =3D y;=0A= },=0A= =0A= /*=0A= Property: getSize=0A= Return an Object representing the size/scroll values of the element.=0A= =0A= Example:=0A= (start code)=0A= $('myElement').getSize();=0A= (end)=0A= =0A= Returns:=0A= (start code)=0A= {=0A= 'scroll': {'x': 100, 'y': 100},=0A= 'size': {'x': 200, 'y': 400},=0A= 'scrollSize': {'x': 300, 'y': 500}=0A= }=0A= (end)=0A= */=0A= =0A= getSize: function(){=0A= return {=0A= 'scroll': {'x': this.scrollLeft, 'y': this.scrollTop},=0A= 'size': {'x': this.offsetWidth, 'y': this.offsetHeight},=0A= 'scrollSize': {'x': this.scrollWidth, 'y': this.scrollHeight}=0A= };=0A= },=0A= =0A= /*=0A= Property: getPosition=0A= Returns the real offsets of the element.=0A= =0A= Arguments:=0A= overflown - optional, an array of nested scrolling containers for = scroll offset calculation, use this if your element is inside any = element containing scrollbars=0A= =0A= Example:=0A= >$('element').getPosition();=0A= =0A= Returns:=0A= >{x: 100, y:500};=0A= */=0A= =0A= getPosition: function(overflown){=0A= overflown =3D overflown || [];=0A= var el =3D this, left =3D 0, top =3D 0;=0A= do {=0A= left +=3D el.offsetLeft || 0;=0A= top +=3D el.offsetTop || 0;=0A= el =3D el.offsetParent;=0A= } while (el);=0A= overflown.each(function(element){=0A= left -=3D element.scrollLeft || 0;=0A= top -=3D element.scrollTop || 0;=0A= });=0A= return {'x': left, 'y': top};=0A= },=0A= =0A= /*=0A= Property: getTop=0A= Returns the distance from the top of the window to the Element.=0A= =0A= Arguments:=0A= overflown - optional, an array of nested scrolling containers, see = Element::getPosition=0A= */=0A= =0A= getTop: function(overflown){=0A= return this.getPosition(overflown).y;=0A= },=0A= =0A= /*=0A= Property: getLeft=0A= Returns the distance from the left of the window to the Element.=0A= =0A= Arguments:=0A= overflown - optional, an array of nested scrolling containers, see = Element::getPosition=0A= */=0A= =0A= getLeft: function(overflown){=0A= return this.getPosition(overflown).x;=0A= },=0A= =0A= /*=0A= Property: getCoordinates=0A= Returns an object with width, height, left, right, top, and bottom, = representing the values of the Element=0A= =0A= Arguments:=0A= overflown - optional, an array of nested scrolling containers, see = Element::getPosition=0A= =0A= Example:=0A= (start code)=0A= var myValues =3D $('myElement').getCoordinates();=0A= (end)=0A= =0A= Returns:=0A= (start code)=0A= {=0A= width: 200,=0A= height: 300,=0A= left: 100,=0A= top: 50,=0A= right: 300,=0A= bottom: 350=0A= }=0A= (end)=0A= */=0A= =0A= getCoordinates: function(overflown){=0A= var position =3D this.getPosition(overflown);=0A= var obj =3D {=0A= 'width': this.offsetWidth,=0A= 'height': this.offsetHeight,=0A= 'left': position.x,=0A= 'top': position.y=0A= };=0A= obj.right =3D obj.left + obj.width;=0A= obj.bottom =3D obj.top + obj.height;=0A= return obj;=0A= }=0A= =0A= });=0A= =0A= /*=0A= Script: Window.DomReady.js=0A= Contains the custom event domready, for window.=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /* Section: Custom Events */=0A= =0A= /*=0A= Event: domready=0A= executes a function when the dom tree is loaded, without waiting for = images. Only works when called from window.=0A= =0A= Credits:=0A= (c) Dean Edwards/Matthias Miller/John Resig, remastered for MooTools.=0A= =0A= Arguments:=0A= fn - the function to execute when the DOM is ready=0A= =0A= Example:=0A= > window.addEvent('domready', function(){=0A= > alert('the dom is ready');=0A= > });=0A= */=0A= =0A= Element.Events.domready =3D {=0A= =0A= add: function(fn){=0A= if (window.loaded){=0A= fn.call(this);=0A= return;=0A= }=0A= var domReady =3D function(){=0A= if (window.loaded) return;=0A= window.loaded =3D true;=0A= window.timer =3D $clear(window.timer);=0A= this.fireEvent('domready');=0A= }.bind(this);=0A= if (document.readyState && window.webkit){=0A= window.timer =3D function(){=0A= if (['loaded','complete'].contains(document.readyState)) domReady();=0A= }.periodical(50);=0A= } else if (document.readyState && window.ie){=0A= if (!$('ie_ready')){=0A= var src =3D (window.location.protocol =3D=3D 'https:') ? '://0' : = 'javascript:void(0)';=0A= document.write('=0A= (end)=0A= */=0A= =0A= send: function(options){=0A= return new Ajax(this.getProperty('action'), $merge({data: = this.toQueryString()}, options, {method: 'post'})).request();=0A= }=0A= =0A= });=0A= =0A= /*=0A= Script: Cookie.js=0A= A cookie reader/creator=0A= =0A= Credits:=0A= based on the functions by Peter-Paul Koch (http://quirksmode.org)=0A= */=0A= =0A= /*=0A= Class: Cookie=0A= Class for creating, getting, and removing cookies.=0A= */=0A= =0A= var Cookie =3D new Abstract({=0A= =0A= options: {=0A= domain: false,=0A= path: false,=0A= duration: false,=0A= secure: false=0A= },=0A= =0A= /*=0A= Property: set=0A= Sets a cookie in the browser.=0A= =0A= Arguments:=0A= key - the key (name) for the cookie=0A= value - the value to set, cannot contain semicolons=0A= options - an object representing the Cookie options. See Options = below. Default values are stored in Cookie.options.=0A= =0A= Options:=0A= domain - the domain the Cookie belongs to. If you want to share the = cookie with pages located on a different domain, you have to set this = value. Defaults to the current domain.=0A= path - the path the Cookie belongs to. If you want to share the cookie = with pages located in a different path, you have to set this value, for = example to "/" to share the cookie with all pages on the domain. = Defaults to the current path.=0A= duration - the duration of the Cookie before it expires, in days.=0A= If set to false or 0, the cookie will be a session cookie that = expires when the browser is closed. This is default.=0A= secure - Stored cookie information can be accessed only from a secure = environment.=0A= =0A= Returns:=0A= An object with the options, the key and the value. You can give it as = first parameter to Cookie.remove.=0A= =0A= Example:=0A= >Cookie.set('username', 'Harald'); // session cookie (duration is = false), or ...=0A= >Cookie.set('username', 'JackBauer', {duration: 1}); // save this for = 1 day=0A= =0A= */=0A= =0A= set: function(key, value, options){=0A= options =3D $merge(this.options, options);=0A= value =3D encodeURIComponent(value);=0A= if (options.domain) value +=3D '; domain=3D' + options.domain;=0A= if (options.path) value +=3D '; path=3D' + options.path;=0A= if (options.duration){=0A= var date =3D new Date();=0A= date.setTime(date.getTime() + options.duration * 24 * 60 * 60 * 1000);=0A= value +=3D '; expires=3D' + date.toGMTString();=0A= }=0A= if (options.secure) value +=3D '; secure';=0A= document.cookie =3D key + '=3D' + value;=0A= return $extend(options, {'key': key, 'value': value});=0A= },=0A= =0A= /*=0A= Property: get=0A= Gets the value of a cookie.=0A= =0A= Arguments:=0A= key - the name of the cookie you wish to retrieve.=0A= =0A= Returns:=0A= The cookie string value, or false if not found.=0A= =0A= Example:=0A= >Cookie.get("username") //returns JackBauer=0A= */=0A= =0A= get: function(key){=0A= var value =3D document.cookie.match('(?:^|;)\\s*' + key.escapeRegExp() = + '=3D([^;]*)');=0A= return value ? decodeURIComponent(value[1]) : false;=0A= },=0A= =0A= /*=0A= Property: remove=0A= Removes a cookie from the browser.=0A= =0A= Arguments:=0A= cookie - the name of the cookie to remove or a previous cookie (for = domains)=0A= options - optional. you can also pass the domain and path here. Same = as options in =0A= =0A= Examples:=0A= >Cookie.remove('username') //bye-bye JackBauer, cya in 24 hours=0A= >=0A= >var myCookie =3D Cookie.set('username', 'Aaron', {domain: = 'mootools.net'}); // Cookie.set returns an object with all values need = to remove the cookie=0A= >Cookie.remove(myCookie);=0A= */=0A= =0A= remove: function(cookie, options){=0A= if ($type(cookie) =3D=3D 'object') this.set(cookie.key, '', = $merge(cookie, {duration: -1}));=0A= else this.set(cookie, '', $merge(options, {duration: -1}));=0A= }=0A= =0A= });=0A= =0A= /*=0A= Script: Json.js=0A= Simple Json parser and Stringyfier, See: =0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Json=0A= Simple Json parser and Stringyfier, See: =0A= */=0A= =0A= var Json =3D {=0A= =0A= /*=0A= Property: toString=0A= 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.=0A= =0A= Arguments:=0A= obj - the object to convert to string=0A= =0A= Returns:=0A= A json string=0A= =0A= Example:=0A= (start code)=0A= Json.toString({apple: 'red', lemon: 'yellow'}); = '{"apple":"red","lemon":"yellow"}'=0A= (end)=0A= */=0A= =0A= toString: function(obj){=0A= switch($type(obj)){=0A= case 'string':=0A= return '"' + obj.replace(/(["\\])/g, '\\$1') + '"';=0A= case 'array':=0A= return '[' + obj.map(Json.toString).join(',') + ']';=0A= case 'object':=0A= var string =3D [];=0A= for (var property in obj) string.push(Json.toString(property) + ':' = + Json.toString(obj[property]));=0A= return '{' + string.join(',') + '}';=0A= case 'number':=0A= if (isFinite(obj)) break;=0A= case false:=0A= return 'null';=0A= }=0A= return String(obj);=0A= },=0A= =0A= /*=0A= Property: evaluate=0A= converts a json string to an javascript Object.=0A= =0A= Arguments:=0A= str - the string to evaluate. if its not a string, it returns false.=0A= secure - optionally, performs syntax check on json string. Defaults to = false.=0A= =0A= Credits:=0A= Json test regexp is by Douglas Crockford .=0A= =0A= Example:=0A= >var myObject =3D Json.evaluate('{"apple":"red","lemon":"yellow"}');=0A= >//myObject will become {apple: 'red', lemon: 'yellow'}=0A= */=0A= =0A= evaluate: function(str, secure){=0A= return (($type(str) !=3D 'string') || (secure && = !str.test(/^("(\\.|[^"\\\n\r])*?"|[,:{}\[\]0-9.\-+Eaeflnr-u = \n\r\t])+?$/))) ? null : eval('(' + str + ')');=0A= }=0A= =0A= };=0A= =0A= /*=0A= Script: Json.Remote.js=0A= Contains .=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Json.Remote=0A= Wrapped XHR with automated sending and receiving of Javascript Objects = in Json Format.=0A= Inherits methods, properties, options and events from .=0A= =0A= Arguments:=0A= url - the url you want to send your object to.=0A= options - see options=0A= =0A= Example:=0A= this code will send user information based on name/last name=0A= (start code)=0A= var jSonRequest =3D new Json.Remote("http://site.com/tellMeAge.php", = {onComplete: function(person){=0A= alert(person.age); //is 25 years=0A= alert(person.height); //is 170 cm=0A= alert(person.weight); //is 120 kg=0A= }}).send({'name': 'John', 'lastName': 'Doe'});=0A= (end)=0A= */=0A= =0A= Json.Remote =3D XHR.extend({=0A= =0A= initialize: function(url, options){=0A= this.url =3D url;=0A= this.addEvent('onSuccess', this.onComplete);=0A= this.parent(options);=0A= this.setHeader('X-Request', 'JSON');=0A= },=0A= =0A= send: function(obj){=0A= return this.parent(this.url, 'json=3D' + Json.toString(obj));=0A= },=0A= =0A= onComplete: function(){=0A= this.fireEvent('onComplete', [Json.evaluate(this.response.text, = this.options.secure)]);=0A= }=0A= =0A= });=0A= =0A= /*=0A= Script: Assets.js=0A= provides dynamic loading for images, css and javascript files.=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= var Asset =3D new Abstract({=0A= =0A= /*=0A= Property: javascript=0A= Injects a javascript file in the page.=0A= =0A= Arguments:=0A= source - the path of the javascript file=0A= properties - some additional attributes you might want to add to the = script element=0A= =0A= Example:=0A= > new Asset.javascript('/scripts/myScript.js', {id: 'myScript'});=0A= */=0A= =0A= javascript: function(source, properties){=0A= properties =3D $merge({=0A= 'onload': Class.empty=0A= }, properties);=0A= var script =3D new Element('script', {'src': source}).addEvents({=0A= 'load': properties.onload,=0A= 'readystatechange': function(){=0A= if (this.readyState =3D=3D 'complete') this.fireEvent('load');=0A= }=0A= });=0A= delete properties.onload;=0A= return script.setProperties(properties).inject(document.head);=0A= },=0A= =0A= /*=0A= Property: css=0A= Injects a css file in the page.=0A= =0A= Arguments:=0A= source - the path of the css file=0A= properties - some additional attributes you might want to add to the = link element=0A= =0A= Example:=0A= > new Asset.css('/css/myStyle.css', {id: 'myStyle', title: 'myStyle'});=0A= */=0A= =0A= css: function(source, properties){=0A= return new Element('link', $merge({=0A= 'rel': 'stylesheet', 'media': 'screen', 'type': 'text/css', 'href': = source=0A= }, properties)).inject(document.head);=0A= },=0A= =0A= /*=0A= Property: image=0A= Preloads an image and returns the img element. does not inject it to = the page.=0A= =0A= Arguments:=0A= source - the path of the image file=0A= properties - some additional attributes you might want to add to the = img element=0A= =0A= Example:=0A= > new Asset.image('/images/myImage.png', {id: 'myImage', title: = 'myImage', onload: myFunction});=0A= =0A= Returns:=0A= the img element. you can inject it anywhere you want with = //=0A= */=0A= =0A= image: function(source, properties){=0A= properties =3D $merge({=0A= 'onload': Class.empty,=0A= 'onabort': Class.empty,=0A= 'onerror': Class.empty=0A= }, properties);=0A= var image =3D new Image();=0A= image.src =3D source;=0A= var element =3D new Element('img', {'src': source});=0A= ['load', 'abort', 'error'].each(function(type){=0A= var event =3D properties['on' + type];=0A= delete properties['on' + type];=0A= element.addEvent(type, function(){=0A= this.removeEvent(type, arguments.callee);=0A= event.call(this);=0A= });=0A= });=0A= if (image.width && image.height) element.fireEvent('load', element, 1);=0A= return element.setProperties(properties);=0A= },=0A= =0A= /*=0A= Property: images=0A= Preloads an array of images (as strings) and returns an array of img = elements. does not inject them to the page.=0A= =0A= Arguments:=0A= sources - array, the paths of the image files=0A= options - object, see below=0A= =0A= Options:=0A= onComplete - a function to execute when all image files are loaded in = the browser's cache=0A= onProgress - a function to execute when one image file is loaded in = the browser's cache=0A= =0A= Example:=0A= (start code)=0A= new Asset.images(['/images/myImage.png', '/images/myImage2.gif'], {=0A= onComplete: function(){=0A= alert('all images loaded!');=0A= }=0A= });=0A= (end)=0A= =0A= Returns:=0A= the img elements as $$. you can inject them anywhere you want with = //=0A= */=0A= =0A= images: function(sources, options){=0A= options =3D $merge({=0A= onComplete: Class.empty,=0A= onProgress: Class.empty=0A= }, options);=0A= if (!sources.push) sources =3D [sources];=0A= var images =3D [];=0A= var counter =3D 0;=0A= sources.each(function(source){=0A= var img =3D new Asset.image(source, {=0A= 'onload': function(){=0A= options.onProgress.call(this, counter);=0A= counter++;=0A= if (counter =3D=3D sources.length) options.onComplete();=0A= }=0A= });=0A= images.push(img);=0A= });=0A= return new Elements(images);=0A= }=0A= =0A= });=0A= =0A= /*=0A= Script: Hash.js=0A= Contains the class Hash.=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Hash=0A= It wraps an object that it uses internally as a map. The user must use = set(), get(), and remove() to add/change, retrieve and remove values, it = must not access the internal object directly. null/undefined values are = allowed.=0A= =0A= Note:=0A= Each hash instance has the length property.=0A= =0A= Arguments:=0A= obj - an object to convert into a Hash instance.=0A= =0A= Example:=0A= (start code)=0A= var hash =3D new Hash({a: 'hi', b: 'world', c: 'howdy'});=0A= hash.remove('b'); // b is removed.=0A= hash.set('c', 'hello');=0A= hash.get('c'); // returns 'hello'=0A= hash.length // returns 2 (a and c)=0A= (end)=0A= */=0A= =0A= var Hash =3D new Class({=0A= =0A= length: 0,=0A= =0A= initialize: function(object){=0A= this.obj =3D object || {};=0A= this.setLength();=0A= },=0A= =0A= /*=0A= Property: get=0A= Retrieves a value from the hash.=0A= =0A= Arguments:=0A= key - The key=0A= =0A= Returns:=0A= The value=0A= */=0A= =0A= get: function(key){=0A= return (this.hasKey(key)) ? this.obj[key] : null;=0A= },=0A= =0A= /*=0A= Property: hasKey=0A= Check the presence of a specified key-value pair in the hash.=0A= =0A= Arguments:=0A= key - The key=0A= =0A= Returns:=0A= True if the Hash contains a value for the specified key, otherwise = false=0A= */=0A= =0A= hasKey: function(key){=0A= return (key in this.obj);=0A= },=0A= =0A= /*=0A= Property: set=0A= Adds a key-value pair to the hash or replaces a previous value = associated with the key.=0A= =0A= Arguments:=0A= key - The key=0A= value - The value=0A= */=0A= =0A= set: function(key, value){=0A= if (!this.hasKey(key)) this.length++;=0A= this.obj[key] =3D value;=0A= return this;=0A= },=0A= =0A= setLength: function(){=0A= this.length =3D 0;=0A= for (var p in this.obj) this.length++;=0A= return this;=0A= },=0A= =0A= /*=0A= Property: remove=0A= Removes a key-value pair from the hash.=0A= =0A= Arguments:=0A= key - The key=0A= */=0A= =0A= remove: function(key){=0A= if (this.hasKey(key)){=0A= delete this.obj[key];=0A= this.length--;=0A= }=0A= return this;=0A= },=0A= =0A= /*=0A= Property: each=0A= Calls a function for each key-value pair. The first argument passed to = the function will be the value, the second one will be the key, like = $each.=0A= =0A= Arguments:=0A= fn - The function to call for each key-value pair=0A= bind - Optional, the object that will be referred to as "this" in the = function=0A= */=0A= =0A= each: function(fn, bind){=0A= $each(this.obj, fn, bind);=0A= },=0A= =0A= /*=0A= Property: extend=0A= Extends the current hash with an object containing key-value pairs. = Values for duplicate keys will be replaced by the new ones.=0A= =0A= Arguments:=0A= obj - An object containing key-value pairs=0A= */=0A= =0A= extend: function(obj){=0A= $extend(this.obj, obj);=0A= return this.setLength();=0A= },=0A= =0A= /*=0A= Property: merge=0A= Merges the current hash with multiple objects.=0A= */=0A= =0A= merge: function(){=0A= this.obj =3D $merge.apply(null, [this.obj].extend(arguments));=0A= return this.setLength();=0A= },=0A= =0A= /*=0A= Property: empty=0A= Empties all hash values properties and values.=0A= */=0A= =0A= empty: function(){=0A= this.obj =3D {};=0A= this.length =3D 0;=0A= return this;=0A= },=0A= =0A= /*=0A= Property: keys=0A= Returns an array containing all the keys, in the same order as the = values returned by .=0A= =0A= Returns:=0A= An array containing all the keys of the hash=0A= */=0A= =0A= keys: function(){=0A= var keys =3D [];=0A= for (var property in this.obj) keys.push(property);=0A= return keys;=0A= },=0A= =0A= /*=0A= Property: values=0A= Returns an array containing all the values, in the same order as the = keys returned by .=0A= =0A= Returns:=0A= An array containing all the values of the hash=0A= */=0A= =0A= values: function(){=0A= var values =3D [];=0A= for (var property in this.obj) values.push(this.obj[property]);=0A= return values;=0A= }=0A= =0A= });=0A= =0A= /* Section: Utility Functions */=0A= =0A= /*=0A= Function: $H=0A= Shortcut to create a Hash from an Object.=0A= */=0A= =0A= function $H(obj){=0A= return new Hash(obj);=0A= };=0A= =0A= /*=0A= Script: Hash.Cookie.js=0A= Stores and loads an Hash as a cookie using Json format.=0A= */=0A= =0A= /*=0A= Class: Hash.Cookie=0A= Inherits all the methods from , additional methods are save and = load.=0A= Hash json string has a limit of 4kb (4096byte), so be careful with your = Hash size.=0A= Creating a new instance automatically loads the data from the Cookie = into the Hash.=0A= If the Hash is emptied, the cookie is also removed.=0A= =0A= Arguments:=0A= name - the key (name) for the cookie=0A= options - options are identical to and are simply passed along = to it.=0A= In addition, it has the autoSave option, to save the cookie at every = operation. defaults to true.=0A= =0A= Example:=0A= (start code)=0A= var fruits =3D new Hash.Cookie('myCookieName', {duration: 3600});=0A= fruits.extend({=0A= 'lemon': 'yellow',=0A= 'apple': 'red'=0A= });=0A= fruits.set('melon', 'green');=0A= fruits.get('lemon'); // yellow=0A= =0A= // ... on another page ... values load automatically=0A= =0A= var fruits =3D new Hash.Cookie('myCookieName', {duration: 365});=0A= fruits.get('melon'); // green=0A= =0A= fruits.erase(); // delete cookie=0A= (end)=0A= */=0A= =0A= Hash.Cookie =3D Hash.extend({=0A= =0A= initialize: function(name, options){=0A= this.name =3D name;=0A= this.options =3D $extend({'autoSave': true}, options || {});=0A= this.load();=0A= },=0A= =0A= /*=0A= Property: save=0A= Saves the Hash to the cookie. If the hash is empty, removes the cookie.=0A= =0A= Returns:=0A= Returns false when the JSON string cookie is too long (4kb), otherwise = true.=0A= =0A= Example:=0A= (start code)=0A= var login =3D new Hash.Cookie('userstatus', {autoSave: false});=0A= =0A= login.extend({=0A= 'username': 'John',=0A= 'credentials': [4, 7, 9]=0A= });=0A= login.set('last_message', 'User logged in!');=0A= =0A= login.save(); // finally save the Hash=0A= (end)=0A= */=0A= =0A= save: function(){=0A= if (this.length =3D=3D 0){=0A= Cookie.remove(this.name, this.options);=0A= return true;=0A= }=0A= var str =3D Json.toString(this.obj);=0A= if (str.length > 4096) return false; //cookie would be truncated!=0A= Cookie.set(this.name, str, this.options);=0A= return true;=0A= },=0A= =0A= /*=0A= Property: load=0A= Loads the cookie and assigns it to the Hash.=0A= */=0A= =0A= load: function(){=0A= this.obj =3D Json.evaluate(Cookie.get(this.name), true) || {};=0A= this.setLength();=0A= }=0A= =0A= });=0A= =0A= Hash.Cookie.Methods =3D {};=0A= ['extend', 'set', 'merge', 'empty', 'remove'].each(function(method){=0A= Hash.Cookie.Methods[method] =3D function(){=0A= Hash.prototype[method].apply(this, arguments);=0A= if (this.options.autoSave) this.save();=0A= return this;=0A= };=0A= });=0A= Hash.Cookie.implement(Hash.Cookie.Methods);=0A= =0A= /*=0A= Script: Color.js=0A= Contains the Color class.=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Color=0A= Creates a new Color Object, which is an array with some color specific = methods.=0A= Arguments:=0A= color - the hex, the RGB array or the HSB array of the color to create. = For HSB colors, you need to specify the second argument.=0A= type - a string representing the type of the color to create. needs to = be specified if you intend to create the color with HSB values, or an = array of HEX values. Can be 'rgb', 'hsb' or 'hex'.=0A= =0A= Example:=0A= (start code)=0A= var black =3D new Color('#000');=0A= var purple =3D new Color([255,0,255]);=0A= // mix black with white and purple, each time at 10% of the new color=0A= var darkpurple =3D black.mix('#fff', purple, 10);=0A= $('myDiv').setStyle('background-color', darkpurple);=0A= (end)=0A= */=0A= =0A= var Color =3D new Class({=0A= =0A= initialize: function(color, type){=0A= type =3D type || (color.push ? 'rgb' : 'hex');=0A= var rgb, hsb;=0A= switch(type){=0A= case 'rgb':=0A= rgb =3D color;=0A= hsb =3D rgb.rgbToHsb();=0A= break;=0A= case 'hsb':=0A= rgb =3D color.hsbToRgb();=0A= hsb =3D color;=0A= break;=0A= default:=0A= rgb =3D color.hexToRgb(true);=0A= hsb =3D rgb.rgbToHsb();=0A= }=0A= rgb.hsb =3D hsb;=0A= rgb.hex =3D rgb.rgbToHex();=0A= return $extend(rgb, Color.prototype);=0A= },=0A= =0A= /*=0A= Property: mix=0A= Mixes two or more colors with the Color.=0A= =0A= Arguments:=0A= color - a color to mix. you can use as arguments how many colors as = you want to mix with the original one.=0A= alpha - if you use a number as the last argument, it will be threated = as the amount of the color to mix.=0A= */=0A= =0A= mix: function(){=0A= var colors =3D $A(arguments);=0A= var alpha =3D ($type(colors[colors.length - 1]) =3D=3D 'number') ? = colors.pop() : 50;=0A= var rgb =3D this.copy();=0A= colors.each(function(color){=0A= color =3D new Color(color);=0A= for (var i =3D 0; i < 3; i++) rgb[i] =3D Math.round((rgb[i] / 100 * = (100 - alpha)) + (color[i] / 100 * alpha));=0A= });=0A= return new Color(rgb, 'rgb');=0A= },=0A= =0A= /*=0A= Property: invert=0A= Inverts the Color.=0A= */=0A= =0A= invert: function(){=0A= return new Color(this.map(function(value){=0A= return 255 - value;=0A= }));=0A= },=0A= =0A= /*=0A= Property: setHue=0A= Modifies the hue of the Color, and returns a new one.=0A= =0A= Arguments:=0A= value - the hue to set=0A= */=0A= =0A= setHue: function(value){=0A= return new Color([value, this.hsb[1], this.hsb[2]], 'hsb');=0A= },=0A= =0A= /*=0A= Property: setSaturation=0A= Changes the saturation of the Color, and returns a new one.=0A= =0A= Arguments:=0A= percent - the percentage of the saturation to set=0A= */=0A= =0A= setSaturation: function(percent){=0A= return new Color([this.hsb[0], percent, this.hsb[2]], 'hsb');=0A= },=0A= =0A= /*=0A= Property: setBrightness=0A= Changes the brightness of the Color, and returns a new one.=0A= =0A= Arguments:=0A= percent - the percentage of the brightness to set=0A= */=0A= =0A= setBrightness: function(percent){=0A= return new Color([this.hsb[0], this.hsb[1], percent], 'hsb');=0A= }=0A= =0A= });=0A= =0A= /* Section: Utility Functions */=0A= =0A= /*=0A= Function: $RGB=0A= Shortcut to create a new color, based on red, green, blue values.=0A= =0A= Arguments:=0A= r - (integer) red value (0-255)=0A= g - (integer) green value (0-255)=0A= b - (integer) blue value (0-255)=0A= =0A= */=0A= =0A= function $RGB(r, g, b){=0A= return new Color([r, g, b], 'rgb');=0A= };=0A= =0A= /*=0A= Function: $HSB=0A= Shortcut to create a new color, based on hue, saturation, brightness = values.=0A= =0A= Arguments:=0A= h - (integer) hue value (0-100)=0A= s - (integer) saturation value (0-100)=0A= b - (integer) brightness value (0-100)=0A= */=0A= =0A= function $HSB(h, s, b){=0A= return new Color([h, s, b], 'hsb');=0A= };=0A= =0A= /*=0A= Class: Array=0A= A collection of The Array Object prototype methods.=0A= */=0A= =0A= Array.extend({=0A= =0A= /*=0A= Property: rgbToHsb=0A= Converts a RGB array to an HSB array.=0A= =0A= Returns:=0A= the HSB array.=0A= */=0A= =0A= rgbToHsb: function(){=0A= var red =3D this[0], green =3D this[1], blue =3D this[2];=0A= var hue, saturation, brightness;=0A= var max =3D Math.max(red, green, blue), min =3D Math.min(red, green, = blue);=0A= var delta =3D max - min;=0A= brightness =3D max / 255;=0A= saturation =3D (max !=3D 0) ? delta / max : 0;=0A= if (saturation =3D=3D 0){=0A= hue =3D 0;=0A= } else {=0A= var rr =3D (max - red) / delta;=0A= var gr =3D (max - green) / delta;=0A= var br =3D (max - blue) / delta;=0A= if (red =3D=3D max) hue =3D br - gr;=0A= else if (green =3D=3D max) hue =3D 2 + rr - br;=0A= else hue =3D 4 + gr - rr;=0A= hue /=3D 6;=0A= if (hue < 0) hue++;=0A= }=0A= return [Math.round(hue * 360), Math.round(saturation * 100), = Math.round(brightness * 100)];=0A= },=0A= =0A= /*=0A= Property: hsbToRgb=0A= Converts an HSB array to an RGB array.=0A= =0A= Returns:=0A= the RGB array.=0A= */=0A= =0A= hsbToRgb: function(){=0A= var br =3D Math.round(this[2] / 100 * 255);=0A= if (this[1] =3D=3D 0){=0A= return [br, br, br];=0A= } else {=0A= var hue =3D this[0] % 360;=0A= var f =3D hue % 60;=0A= var p =3D Math.round((this[2] * (100 - this[1])) / 10000 * 255);=0A= var q =3D Math.round((this[2] * (6000 - this[1] * f)) / 600000 * 255);=0A= var t =3D Math.round((this[2] * (6000 - this[1] * (60 - f))) / 600000 = * 255);=0A= switch(Math.floor(hue / 60)){=0A= case 0: return [br, t, p];=0A= case 1: return [q, br, p];=0A= case 2: return [p, br, t];=0A= case 3: return [p, q, br];=0A= case 4: return [t, p, br];=0A= case 5: return [br, p, q];=0A= }=0A= }=0A= return false;=0A= }=0A= =0A= });=0A= =0A= /*=0A= Script: Scroller.js=0A= Contains the .=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Scroller=0A= The Scroller is a class to scroll any element with an overflow = (including the window) when the mouse cursor reaches certain buondaries = of that element.=0A= You must call its start method to start listening to mouse movements.=0A= =0A= Note:=0A= The Scroller requires an XHTML doctype.=0A= =0A= Arguments:=0A= element - required, the element to scroll.=0A= options - optional, see options below, and options.=0A= =0A= Options:=0A= area - integer, the necessary boundaries to make the element scroll.=0A= velocity - integer, velocity ratio, the modifier for the window = scrolling speed.=0A= =0A= Events:=0A= onChange - optionally, when the mouse reaches some boundaries, you can = choose to alter some other values, instead of the scrolling offsets.=0A= Automatically passes as parameters x and y values.=0A= */=0A= =0A= var Scroller =3D new Class({=0A= =0A= options: {=0A= area: 20,=0A= velocity: 1,=0A= onChange: function(x, y){=0A= this.element.scrollTo(x, y);=0A= }=0A= },=0A= =0A= initialize: function(element, options){=0A= this.setOptions(options);=0A= this.element =3D $(element);=0A= this.mousemover =3D ([window, document].contains(element)) ? = $(document.body) : this.element;=0A= },=0A= =0A= /*=0A= Property: start=0A= The scroller starts listening to mouse movements.=0A= */=0A= =0A= start: function(){=0A= this.coord =3D this.getCoords.bindWithEvent(this);=0A= this.mousemover.addListener('mousemove', this.coord);=0A= },=0A= =0A= /*=0A= Property: stop=0A= The scroller stops listening to mouse movements.=0A= */=0A= =0A= stop: function(){=0A= this.mousemover.removeListener('mousemove', this.coord);=0A= this.timer =3D $clear(this.timer);=0A= },=0A= =0A= getCoords: function(event){=0A= this.page =3D (this.element =3D=3D window) ? event.client : event.page;=0A= if (!this.timer) this.timer =3D this.scroll.periodical(50, this);=0A= },=0A= =0A= scroll: function(){=0A= var el =3D this.element.getSize();=0A= var pos =3D this.element.getPosition();=0A= =0A= var change =3D {'x': 0, 'y': 0};=0A= for (var z in this.page){=0A= if (this.page[z] < (this.options.area + pos[z]) && el.scroll[z] !=3D = 0)=0A= change[z] =3D (this.page[z] - this.options.area - pos[z]) * = this.options.velocity;=0A= else if (this.page[z] + this.options.area > (el.size[z] + pos[z]) && = el.scroll[z] + el.size[z] !=3D el.scrollSize[z])=0A= change[z] =3D (this.page[z] - el.size[z] + this.options.area - = pos[z]) * this.options.velocity;=0A= }=0A= if (change.y || change.x) this.fireEvent('onChange', [el.scroll.x + = change.x, el.scroll.y + change.y]);=0A= }=0A= =0A= });=0A= =0A= Scroller.implement(new Events, new Options);=0A= =0A= /*=0A= Script: Slider.js=0A= Contains =0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Slider=0A= Creates a slider with two elements: a knob and a container. Returns the = values.=0A= =0A= Note:=0A= The Slider requires an XHTML doctype.=0A= =0A= Arguments:=0A= element - the knob container=0A= knob - the handle=0A= options - see Options below=0A= =0A= Options:=0A= steps - the number of steps for your slider.=0A= mode - either 'horizontal' or 'vertical'. defaults to horizontal.=0A= offset - relative offset for knob position. default to 0.=0A= =0A= Events:=0A= onChange - a function to fire when the value changes.=0A= onComplete - a function to fire when you're done dragging.=0A= onTick - optionally, you can alter the onTick behavior, for example = displaying an effect of the knob moving to the desired position.=0A= Passes as parameter the new position.=0A= */=0A= =0A= var Slider =3D new Class({=0A= =0A= options: {=0A= onChange: Class.empty,=0A= onComplete: Class.empty,=0A= onTick: function(pos){=0A= this.knob.setStyle(this.p, pos);=0A= },=0A= mode: 'horizontal',=0A= steps: 100,=0A= offset: 0=0A= },=0A= =0A= initialize: function(el, knob, options){=0A= this.element =3D $(el);=0A= this.knob =3D $(knob);=0A= this.setOptions(options);=0A= this.previousChange =3D -1;=0A= this.previousEnd =3D -1;=0A= this.step =3D -1;=0A= this.element.addEvent('mousedown', = this.clickedElement.bindWithEvent(this));=0A= var mod, offset;=0A= switch(this.options.mode){=0A= case 'horizontal':=0A= this.z =3D 'x';=0A= this.p =3D 'left';=0A= mod =3D {'x': 'left', 'y': false};=0A= offset =3D 'offsetWidth';=0A= break;=0A= case 'vertical':=0A= this.z =3D 'y';=0A= this.p =3D 'top';=0A= mod =3D {'x': false, 'y': 'top'};=0A= offset =3D 'offsetHeight';=0A= }=0A= this.max =3D this.element[offset] - this.knob[offset] + = (this.options.offset * 2);=0A= this.half =3D this.knob[offset]/2;=0A= this.getPos =3D this.element['get' + = this.p.capitalize()].bind(this.element);=0A= this.knob.setStyle('position', 'relative').setStyle(this.p, - = this.options.offset);=0A= var lim =3D {};=0A= lim[this.z] =3D [- this.options.offset, this.max - = this.options.offset];=0A= this.drag =3D new Drag.Base(this.knob, {=0A= limit: lim,=0A= modifiers: mod,=0A= snap: 0,=0A= onStart: function(){=0A= this.draggedKnob();=0A= }.bind(this),=0A= onDrag: function(){=0A= this.draggedKnob();=0A= }.bind(this),=0A= onComplete: function(){=0A= this.draggedKnob();=0A= this.end();=0A= }.bind(this)=0A= });=0A= if (this.options.initialize) this.options.initialize.call(this);=0A= },=0A= =0A= /*=0A= Property: set=0A= The slider will get the step you pass.=0A= =0A= Arguments:=0A= step - one integer=0A= */=0A= =0A= set: function(step){=0A= this.step =3D step.limit(0, this.options.steps);=0A= this.checkStep();=0A= this.end();=0A= this.fireEvent('onTick', this.toPosition(this.step));=0A= return this;=0A= },=0A= =0A= clickedElement: function(event){=0A= var position =3D event.page[this.z] - this.getPos() - this.half;=0A= position =3D position.limit(-this.options.offset, this.max = -this.options.offset);=0A= this.step =3D this.toStep(position);=0A= this.checkStep();=0A= this.end();=0A= this.fireEvent('onTick', position);=0A= },=0A= =0A= draggedKnob: function(){=0A= this.step =3D this.toStep(this.drag.value.now[this.z]);=0A= this.checkStep();=0A= },=0A= =0A= checkStep: function(){=0A= if (this.previousChange !=3D this.step){=0A= this.previousChange =3D this.step;=0A= this.fireEvent('onChange', this.step);=0A= }=0A= },=0A= =0A= end: function(){=0A= if (this.previousEnd !=3D=3D this.step){=0A= this.previousEnd =3D this.step;=0A= this.fireEvent('onComplete', this.step + '');=0A= }=0A= },=0A= =0A= toStep: function(position){=0A= return Math.round((position + this.options.offset) / this.max * = this.options.steps);=0A= },=0A= =0A= toPosition: function(step){=0A= return this.max * step / this.options.steps;=0A= }=0A= =0A= });=0A= =0A= Slider.implement(new Events);=0A= Slider.implement(new Options);=0A= =0A= /*=0A= Script: SmoothScroll.js=0A= Contains =0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: SmoothScroll=0A= Auto targets all the anchors in a page and display a smooth scrolling = effect upon clicking them.=0A= Inherits methods, properties, options and events from .=0A= =0A= Note:=0A= SmoothScroll requires an XHTML doctype.=0A= =0A= Arguments:=0A= options - the Fx.Scroll options (see: ) plus links, a = collection of elements you want your smoothscroll on. Defaults to = document.links.=0A= =0A= Example:=0A= >new SmoothScroll();=0A= */=0A= =0A= var SmoothScroll =3D Fx.Scroll.extend({=0A= =0A= initialize: function(options){=0A= this.parent(window, options);=0A= this.links =3D (this.options.links) ? $$(this.options.links) : = $$(document.links);=0A= var location =3D window.location.href.match(/^[^#]*/)[0] + '#';=0A= this.links.each(function(link){=0A= if (link.href.indexOf(location) !=3D 0) return;=0A= var anchor =3D link.href.substr(location.length);=0A= if (anchor && $(anchor)) this.useLink(link, anchor);=0A= }, this);=0A= if (!window.webkit419) this.addEvent('onComplete', function(){=0A= window.location.hash =3D this.anchor;=0A= });=0A= },=0A= =0A= useLink: function(link, anchor){=0A= link.addEvent('click', function(event){=0A= this.anchor =3D anchor;=0A= this.toElement(anchor);=0A= event.stop();=0A= }.bindWithEvent(this));=0A= }=0A= =0A= });=0A= =0A= /*=0A= Script: Sortables.js=0A= Contains Class.=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Sortables=0A= Creates an interface for and drop, resorting of a list.=0A= =0A= Note:=0A= The Sortables require an XHTML doctype.=0A= =0A= Arguments:=0A= list - required, the list that will become sortable.=0A= options - an Object, see options below.=0A= =0A= Options:=0A= handles - a collection of elements to be used for drag handles. = defaults to the elements.=0A= =0A= Events:=0A= onStart - function executed when the item starts dragging=0A= onComplete - function executed when the item ends dragging=0A= */=0A= =0A= var Sortables =3D new Class({=0A= =0A= options: {=0A= handles: false,=0A= onStart: Class.empty,=0A= onComplete: Class.empty,=0A= ghost: true,=0A= snap: 3,=0A= onDragStart: function(element, ghost){=0A= ghost.setStyle('opacity', 0.7);=0A= element.setStyle('opacity', 0.7);=0A= },=0A= onDragComplete: function(element, ghost){=0A= element.setStyle('opacity', 1);=0A= ghost.remove();=0A= this.trash.remove();=0A= }=0A= },=0A= =0A= initialize: function(list, options){=0A= this.setOptions(options);=0A= this.list =3D $(list);=0A= this.elements =3D this.list.getChildren();=0A= this.handles =3D (this.options.handles) ? $$(this.options.handles) : = this.elements;=0A= this.bound =3D {=0A= 'start': [],=0A= 'moveGhost': this.moveGhost.bindWithEvent(this)=0A= };=0A= for (var i =3D 0, l =3D this.handles.length; i < l; i++){=0A= this.bound.start[i] =3D this.start.bindWithEvent(this, = this.elements[i]);=0A= }=0A= this.attach();=0A= if (this.options.initialize) this.options.initialize.call(this);=0A= this.bound.move =3D this.move.bindWithEvent(this);=0A= this.bound.end =3D this.end.bind(this);=0A= },=0A= =0A= attach: function(){=0A= this.handles.each(function(handle, i){=0A= handle.addEvent('mousedown', this.bound.start[i]);=0A= }, this);=0A= },=0A= =0A= detach: function(){=0A= this.handles.each(function(handle, i){=0A= handle.removeEvent('mousedown', this.bound.start[i]);=0A= }, this);=0A= },=0A= =0A= start: function(event, el){=0A= this.active =3D el;=0A= this.coordinates =3D this.list.getCoordinates();=0A= if (this.options.ghost){=0A= var position =3D el.getPosition();=0A= this.offset =3D event.page.y - position.y;=0A= this.trash =3D new Element('div').inject(document.body);=0A= this.ghost =3D el.clone().inject(this.trash).setStyles({=0A= 'position': 'absolute',=0A= 'left': position.x,=0A= 'top': event.page.y - this.offset=0A= });=0A= document.addListener('mousemove', this.bound.moveGhost);=0A= this.fireEvent('onDragStart', [el, this.ghost]);=0A= }=0A= document.addListener('mousemove', this.bound.move);=0A= document.addListener('mouseup', this.bound.end);=0A= this.fireEvent('onStart', el);=0A= event.stop();=0A= },=0A= =0A= moveGhost: function(event){=0A= var value =3D event.page.y - this.offset;=0A= value =3D value.limit(this.coordinates.top, this.coordinates.bottom - = this.ghost.offsetHeight);=0A= this.ghost.setStyle('top', value);=0A= event.stop();=0A= },=0A= =0A= move: function(event){=0A= var now =3D event.page.y;=0A= this.previous =3D this.previous || now;=0A= var up =3D ((this.previous - now) > 0);=0A= var prev =3D this.active.getPrevious();=0A= var next =3D this.active.getNext();=0A= if (prev && up && now < prev.getCoordinates().bottom) = this.active.injectBefore(prev);=0A= if (next && !up && now > next.getCoordinates().top) = this.active.injectAfter(next);=0A= this.previous =3D now;=0A= },=0A= =0A= serialize: function(converter){=0A= return this.list.getChildren().map(converter || function(el){=0A= return this.elements.indexOf(el);=0A= }, this);=0A= },=0A= =0A= end: function(){=0A= this.previous =3D null;=0A= document.removeListener('mousemove', this.bound.move);=0A= document.removeListener('mouseup', this.bound.end);=0A= if (this.options.ghost){=0A= document.removeListener('mousemove', this.bound.moveGhost);=0A= this.fireEvent('onDragComplete', [this.active, this.ghost]);=0A= }=0A= this.fireEvent('onComplete', this.active);=0A= }=0A= =0A= });=0A= =0A= Sortables.implement(new Events, new Options);=0A= =0A= /*=0A= Script: Tips.js=0A= Tooltips, BubbleTips, whatever they are, they will appear on mouseover=0A= =0A= License:=0A= MIT-style license.=0A= =0A= Credits:=0A= The idea behind Tips.js is based on Bubble Tooltips = () by Alessandro = Fulcitiniti =0A= */=0A= =0A= /*=0A= Class: Tips=0A= Display a tip on any element with a title and/or href.=0A= =0A= Note:=0A= Tips requires an XHTML doctype.=0A= =0A= Arguments:=0A= elements - a collection of elements to apply the tooltips to on = mouseover.=0A= options - an object. See options Below.=0A= =0A= Options:=0A= maxTitleChars - the maximum number of characters to display in the = title of the tip. defaults to 30.=0A= showDelay - the delay the onShow method is called. (defaults to 100 ms)=0A= hideDelay - the delay the onHide method is called. (defaults to 100 ms)=0A= =0A= className - the prefix for your tooltip classNames. defaults to 'tool'.=0A= =0A= the whole tooltip will have as classname: tool-tip=0A= =0A= the title will have as classname: tool-title=0A= =0A= the text will have as classname: tool-text=0A= =0A= offsets - the distance of your tooltip from the mouse. an Object with = x/y properties.=0A= fixed - if set to true, the toolTip will not follow the mouse.=0A= =0A= Events:=0A= onShow - optionally you can alter the default onShow behaviour with = this option (like displaying a fade in effect);=0A= onHide - optionally you can alter the default onHide behaviour with = this option (like displaying a fade out effect);=0A= =0A= Example:=0A= (start code)=0A= =0A= =0A= (end)=0A= =0A= Note:=0A= The title of the element will always be used as the tooltip body. If = you put :: on your title, the text before :: will become the tooltip = title.=0A= */=0A= =0A= var Tips =3D new Class({=0A= =0A= options: {=0A= onShow: function(tip){=0A= tip.setStyle('visibility', 'visible');=0A= },=0A= onHide: function(tip){=0A= tip.setStyle('visibility', 'hidden');=0A= },=0A= maxTitleChars: 30,=0A= showDelay: 100,=0A= hideDelay: 100,=0A= className: 'tool',=0A= offsets: {'x': 16, 'y': 16},=0A= fixed: false=0A= },=0A= =0A= initialize: function(elements, options){=0A= this.setOptions(options);=0A= this.toolTip =3D new Element('div', {=0A= 'class': this.options.className + '-tip',=0A= 'styles': {=0A= 'position': 'absolute',=0A= 'top': '0',=0A= 'left': '0',=0A= 'visibility': 'hidden'=0A= }=0A= }).inject(document.body);=0A= this.wrapper =3D new Element('div').inject(this.toolTip);=0A= $$(elements).each(this.build, this);=0A= if (this.options.initialize) this.options.initialize.call(this);=0A= },=0A= =0A= build: function(el){=0A= el.$tmp.myTitle =3D (el.href && el.getTag() =3D=3D 'a') ? = el.href.replace('http://', '') : (el.rel || false);=0A= if (el.title){=0A= var dual =3D el.title.split('::');=0A= if (dual.length > 1){=0A= el.$tmp.myTitle =3D dual[0].trim();=0A= el.$tmp.myText =3D dual[1].trim();=0A= } else {=0A= el.$tmp.myText =3D el.title;=0A= }=0A= el.removeAttribute('title');=0A= } else {=0A= el.$tmp.myText =3D false;=0A= }=0A= if (el.$tmp.myTitle && el.$tmp.myTitle.length > = this.options.maxTitleChars) el.$tmp.myTitle =3D = el.$tmp.myTitle.substr(0, this.options.maxTitleChars - 1) + "…";=0A= el.addEvent('mouseenter', function(event){=0A= this.start(el);=0A= if (!this.options.fixed) this.locate(event);=0A= else this.position(el);=0A= }.bind(this));=0A= if (!this.options.fixed) el.addEvent('mousemove', = this.locate.bindWithEvent(this));=0A= var end =3D this.end.bind(this);=0A= el.addEvent('mouseleave', end);=0A= el.addEvent('trash', end);=0A= },=0A= =0A= start: function(el){=0A= this.wrapper.empty();=0A= if (el.$tmp.myTitle){=0A= this.title =3D new Element('span').inject(new Element('div', = {'class': this.options.className + = '-title'}).inject(this.wrapper)).setHTML(el.$tmp.myTitle);=0A= }=0A= if (el.$tmp.myText){=0A= this.text =3D new Element('span').inject(new Element('div', {'class': = this.options.className + = '-text'}).inject(this.wrapper)).setHTML(el.$tmp.myText);=0A= }=0A= $clear(this.timer);=0A= this.timer =3D this.show.delay(this.options.showDelay, this);=0A= },=0A= =0A= end: function(event){=0A= $clear(this.timer);=0A= this.timer =3D this.hide.delay(this.options.hideDelay, this);=0A= },=0A= =0A= position: function(element){=0A= var pos =3D element.getPosition();=0A= this.toolTip.setStyles({=0A= 'left': pos.x + this.options.offsets.x,=0A= 'top': pos.y + this.options.offsets.y=0A= });=0A= },=0A= =0A= locate: function(event){=0A= var win =3D {'x': window.getWidth(), 'y': window.getHeight()};=0A= var scroll =3D {'x': window.getScrollLeft(), 'y': = window.getScrollTop()};=0A= var tip =3D {'x': this.toolTip.offsetWidth, 'y': = this.toolTip.offsetHeight};=0A= var prop =3D {'x': 'left', 'y': 'top'};=0A= for (var z in prop){=0A= var pos =3D event.page[z] + this.options.offsets[z];=0A= if ((pos + tip[z] - scroll[z]) > win[z]) pos =3D event.page[z] - = this.options.offsets[z] - tip[z];=0A= this.toolTip.setStyle(prop[z], pos);=0A= };=0A= },=0A= =0A= show: function(){=0A= if (this.options.timeout) this.timer =3D = this.hide.delay(this.options.timeout, this);=0A= this.fireEvent('onShow', [this.toolTip]);=0A= },=0A= =0A= hide: function(){=0A= this.fireEvent('onHide', [this.toolTip]);=0A= }=0A= =0A= });=0A= =0A= Tips.implement(new Events, new Options);=0A= =0A= /*=0A= Script: Group.js=0A= For Grouping Classes or Elements Events. The Event added to the Group = will fire when all of the events of the items of the group are fired.=0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Group=0A= An "Utility" Class.=0A= =0A= Arguments:=0A= List of Class instances=0A= =0A= Example:=0A= (start code)=0A= xhr1 =3D new Ajax('data.js', {evalScript: true});=0A= xhr2 =3D new Ajax('abstraction.js', {evalScript: true});=0A= xhr3 =3D new Ajax('template.js', {evalScript: true});=0A= =0A= var group =3D new Group(xhr1, xhr2, xhr3);=0A= group.addEvent('onComplete', function(){=0A= alert('All Scripts loaded');=0A= });=0A= =0A= xhr1.request();=0A= xhr2.request();=0A= xhr3.request();=0A= (end)=0A= =0A= */=0A= =0A= var Group =3D new Class({=0A= =0A= initialize: function(){=0A= this.instances =3D $A(arguments);=0A= this.events =3D {};=0A= this.checker =3D {};=0A= },=0A= =0A= /*=0A= Property: addEvent=0A= adds an event to the stack of events of the Class instances.=0A= =0A= Arguments:=0A= type - string; the event name (e.g. 'onComplete')=0A= fn - function to execute when all instances fired this event=0A= */=0A= =0A= addEvent: function(type, fn){=0A= this.checker[type] =3D this.checker[type] || {};=0A= this.events[type] =3D this.events[type] || [];=0A= if (this.events[type].contains(fn)) return false;=0A= else this.events[type].push(fn);=0A= this.instances.each(function(instance, i){=0A= instance.addEvent(type, this.check.bind(this, [type, instance, i]));=0A= }, this);=0A= return this;=0A= },=0A= =0A= check: function(type, instance, i){=0A= this.checker[type][i] =3D true;=0A= var every =3D this.instances.every(function(current, j){=0A= return this.checker[type][j] || false;=0A= }, this);=0A= if (!every) return;=0A= this.checker[type] =3D {};=0A= this.events[type].each(function(event){=0A= event.call(this, this.instances, instance);=0A= }, this);=0A= }=0A= =0A= });=0A= =0A= /*=0A= Script: Accordion.js=0A= Contains =0A= =0A= License:=0A= MIT-style license.=0A= */=0A= =0A= /*=0A= Class: Accordion=0A= The Accordion class creates a group of elements that are toggled when = their handles are clicked. When one elements toggles in, the others = toggles back.=0A= Inherits methods, properties, options and events from .=0A= =0A= Note:=0A= The Accordion requires an XHTML doctype.=0A= =0A= Arguments:=0A= togglers - required, a collection of elements, the elements handlers = that will be clickable.=0A= elements - required, a collection of elements the transitions will be = applied to.=0A= options - optional, see options below, and options and events.=0A= =0A= Options:=0A= show - integer, the Index of the element to show at start.=0A= display - integer, the Index of the element to show at start (with a = transition). defaults to 0.=0A= fixedHeight - integer, if you want the elements to have a fixed height. = defaults to false.=0A= fixedWidth - integer, if you want the elements to have a fixed width. = defaults to false.=0A= height - boolean, will add a height transition to the accordion if = true. defaults to true.=0A= opacity - boolean, will add an opacity transition to the accordion if = true. defaults to true.=0A= width - boolean, will add a width transition to the accordion if true. = defaults to false, css mastery is required to make this work!=0A= alwaysHide - boolean, will allow to hide all elements if true, instead = of always keeping one element shown. defaults to false.=0A= =0A= Events:=0A= onActive - function to execute when an element starts to show=0A= onBackground - function to execute when an element starts to hide=0A= */=0A= =0A= var Accordion =3D Fx.Elements.extend({=0A= =0A= options: {=0A= onActive: Class.empty,=0A= onBackground: Class.empty,=0A= display: 0,=0A= show: false,=0A= height: true,=0A= width: false,=0A= opacity: true,=0A= fixedHeight: false,=0A= fixedWidth: false,=0A= wait: false,=0A= alwaysHide: false=0A= },=0A= =0A= initialize: function(){=0A= var options, togglers, elements, container;=0A= $each(arguments, function(argument, i){=0A= switch($type(argument)){=0A= case 'object': options =3D argument; break;=0A= case 'element': container =3D $(argument); break;=0A= default:=0A= var temp =3D $$(argument);=0A= if (!togglers) togglers =3D temp;=0A= else elements =3D temp;=0A= }=0A= });=0A= this.togglers =3D togglers || [];=0A= this.elements =3D elements || [];=0A= this.container =3D $(container);=0A= this.setOptions(options);=0A= this.previous =3D -1;=0A= if (this.options.alwaysHide) this.options.wait =3D true;=0A= if ($chk(this.options.show)){=0A= this.options.display =3D false;=0A= this.previous =3D this.options.show;=0A= }=0A= if (this.options.start){=0A= this.options.display =3D false;=0A= this.options.show =3D false;=0A= }=0A= this.effects =3D {};=0A= if (this.options.opacity) this.effects.opacity =3D 'fullOpacity';=0A= if (this.options.width) this.effects.width =3D this.options.fixedWidth = ? 'fullWidth' : 'offsetWidth';=0A= if (this.options.height) this.effects.height =3D = this.options.fixedHeight ? 'fullHeight' : 'scrollHeight';=0A= for (var i =3D 0, l =3D this.togglers.length; i < l; i++) = this.addSection(this.togglers[i], this.elements[i]);=0A= this.elements.each(function(el, i){=0A= if (this.options.show =3D=3D=3D i){=0A= this.fireEvent('onActive', [this.togglers[i], el]);=0A= } else {=0A= for (var fx in this.effects) el.setStyle(fx, 0);=0A= }=0A= }, this);=0A= this.parent(this.elements);=0A= if ($chk(this.options.display)) this.display(this.options.display);=0A= },=0A= =0A= /*=0A= Property: addSection=0A= Dynamically adds a new section into the accordion at the specified = position.=0A= =0A= Arguments:=0A= toggler - (dom element) the element that toggles the accordion section = open.=0A= element - (dom element) the element that stretches open when the = toggler is clicked.=0A= pos - (integer) the index where these objects are to be inserted = within the accordion.=0A= */=0A= =0A= addSection: function(toggler, element, pos){=0A= toggler =3D $(toggler);=0A= element =3D $(element);=0A= var test =3D this.togglers.contains(toggler);=0A= var len =3D this.togglers.length;=0A= this.togglers.include(toggler);=0A= this.elements.include(element);=0A= if (len && (!test || pos)){=0A= pos =3D $pick(pos, len - 1);=0A= toggler.injectBefore(this.togglers[pos]);=0A= element.injectAfter(toggler);=0A= } else if (this.container && !test){=0A= toggler.inject(this.container);=0A= element.inject(this.container);=0A= }=0A= var idx =3D this.togglers.indexOf(toggler);=0A= toggler.addEvent('click', this.display.bind(this, idx));=0A= if (this.options.height) element.setStyles({'padding-top': 0, = 'border-top': 'none', 'padding-bottom': 0, 'border-bottom': 'none'});=0A= if (this.options.width) element.setStyles({'padding-left': 0, = 'border-left': 'none', 'padding-right': 0, 'border-right': 'none'});=0A= element.fullOpacity =3D 1;=0A= if (this.options.fixedWidth) element.fullWidth =3D = this.options.fixedWidth;=0A= if (this.options.fixedHeight) element.fullHeight =3D = this.options.fixedHeight;=0A= element.setStyle('overflow', 'hidden');=0A= if (!test){=0A= for (var fx in this.effects) element.setStyle(fx, 0);=0A= }=0A= return this;=0A= },=0A= =0A= /*=0A= Property: display=0A= Shows a specific section and hides all others. Useful when triggering = an accordion from outside.=0A= =0A= Arguments:=0A= index - integer, the index of the item to show, or the actual element = to show.=0A= */=0A= =0A= display: function(index){=0A= index =3D ($type(index) =3D=3D 'element') ? = this.elements.indexOf(index) : index;=0A= if ((this.timer && this.options.wait) || (index =3D=3D=3D = this.previous && !this.options.alwaysHide)) return this;=0A= this.previous =3D index;=0A= var obj =3D {};=0A= this.elements.each(function(el, i){=0A= obj[i] =3D {};=0A= var hide =3D (i !=3D index) || (this.options.alwaysHide && = (el.offsetHeight > 0));=0A= this.fireEvent(hide ? 'onBackground' : 'onActive', [this.togglers[i], = el]);=0A= for (var fx in this.effects) obj[i][fx] =3D hide ? 0 : = el[this.effects[fx]];=0A= }, this);=0A= return this.start(obj);=0A= },=0A= =0A= showThisHideOpen: function(index){return this.display(index);}=0A= =0A= });=0A= =0A= Fx.Accordion =3D Accordion;=0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= /* = #########################################################################= #################=0A= EXTENDS=0A= = #########################################################################= #################*/=0A= /*=0A= Copyright:=0A= copyright (c) 2007 Andr=EF=BF=BD Fiedler, =0A= =0A= License:=0A= MIT-style license.=0A= */=0A= String.extend({=0A= =0A= /*=0A= Property: addSlashes=0A= quote string with slashes.=0A= =0A= Returns:=0A= returns a string with backslashes before characters that =0A= need to be quoted in database queries etc. These characters =0A= are single quote ('), double quote ("), backslash (\) =0A= and null (the NULL byte).=0A= =0A= Example:=0A= >var string =3D "Is your name O'reilly?".addSlashes(); // outputs: "Is = your name O\'reilly?"=0A= */=0A= addSlashes: function(){=0A= return this.replace(/("|'|\\|\0)/g, '\\$1');=0A= },=0A= =0A= /*=0A= Property: stripSlashes=0A= un-quote string quoted with addSlashes().=0A= =0A= Returns:=0A= returns a string with backslashes stripped off. =0A= (\' becomes ' and so on.) Double backslashes =0A= (\\) are made into a single backslash (\).=0A= =0A= Example:=0A= >var string =3D "Is your name O\'reilly?".stripSlashes(); // outputs: = "Is your name O'reilly?"=0A= */=0A= stripSlashes: function(){=0A= return this.replace(/\\("|'|\\|\0)/g, '$1');=0A= }=0A= });=0A= ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/shared/js/iCarousel.js // iCarousel is an open source (free) javascript tool for creating = carousel like widgets. Copyright (c) 2007 Fabio Zendhi Nagao, = http://zend.lojcomm.com.br/icarousel/, MIT Style License. eval(function(p,a,c,k,e,d){e=3Dfunction(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace= (/^/,String)){while(c--)d[e(c)]=3Dk[c]||e(c);k=3D[function(e){return = d[e]}];e=3Dfunction(){return'\\w+'};c=3D1;};while(c--)if(k[c])p=3Dp.repla= ce(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p;}('q Z=3DC = z({5:{7:{i:"1x",D:"18",s:1,r:13.12.1I.14,u:1K,l:{i:"1J",R:1X,1z:"G"}},j:{= W:"j",p:1T},P:"1Y",S:"1H",T:"21",1d:z.H,1b:z.H,1F:z.H,1t:z.H,1A:z.H},1L:8= (1i,1k){4.1N(1k);4.m=3D$(1i);4.9=3D$A($$("."+4.5.j.W));4.x=3DU;d(4.5.P!=3D= "10"&&$(4.5.P)){$(4.5.P).17("11",8(1o){C = 1a(1o).G();4.1B();4.J("1d",4,20)}.h(4))}d(4.5.S!=3D"10"&&$(4.5.S)){$(4.5.= S).17("11",8(1g){C = 1a(1g).G();4.15();4.J("1b",4,20)}.h(4))}d(4.5.T!=3D"10"&&$(4.5.T)){$(4.5.= T).17("11",8(1e){C 1a(1e).G();4.1r()}.h(4))}q = w=3D4.5.7;K(4.5.7.i.N()){t"L":4.9.Y(8(E){E.e=3DE.19("B",{u:w.u,r:w.r});E.= O("B",0);E.1l({"1n":8(){4.x=3D1m;d(4.5.7.l.i=3D=3D"I"){4.v=3D$1h(4.v)}}.h= (4),"1c":8(){4.x=3DU;d(4.5.7.l.i=3D=3D"I"){4.v=3D4.V.X(4.5.7.l.R,4)}}.h(4= )})}.h(4));4.y=3D4.m.1p("y").1q();4.6=3D0;4.o(4.6);k;M:(2).1R(8(){4.9.Y(8= (1f){1f.1V().1U(4.m)}.h(4))}.h(4));4.9=3D$A($$("."+4.5.j.W));4.9.Y(8(1j){= 1j.1l({"1n":8(){4.x=3D1m;d(4.5.7.l.i=3D=3D"I"){4.v=3D$1h(4.v)}}.h(4),"1c"= :8(){4.x=3DU;d(4.5.7.l.i=3D=3D"I"){4.v=3D4.V.X(4.5.7.l.R,4)}}.h(4)})}.h(4= ));4.e=3D4.m.1S({u:w.u,r:w.r,1Z:U});4.6=3D4.9.g/3;4.m.O(w.D,-4.6*4.5.j.p)= ;k}d(4.5.7.l.i=3D=3D"I"){4.v=3D4.V.X(4.5.7.l.R,4)}},1P:8(n){K(4.5.7.i.N()= ){t"L":q = 1D=3D4.6;4.6=3D1E.1C(n%(4.9.g/3));4.o(4.6,1D);k;M:4.6=3D1E.1C(n%(4.9.g/3)= );4.6+=3D4.9.g/3;4.o(4.6);k}4.J("1A",4,20)},1B:8(){K(4.5.7.i.N()){t"L":q = 1G=3D4.6;4.6-=3D4.5.7.s;d(4.6<0){4.6=3D(4.9.g-1)}4.o(4.6,1G);k;M:4.6-=3D4= .5.7.s;d(4.6<4.9.g/3){4.m.O(4.5.7.D,-4.5.j.p*4.9.g*2/3);4.6=3D4.9.g*2/3-4= .5.7.s}4.o(4.6);k}4.J("1F",4,20)},15:8(){K(4.5.7.i.N()){t"L":q = 1s=3D4.6;4.6+=3D4.5.7.s;d(4.6>=3D4.9.g){4.6=3D0}4.o(4.6,1s);k;M:4.6+=3D4.= 5.7.s;d(4.6>4.9.g*2/3){4.m.O(4.5.7.D,-4.5.j.p*4.9.g/3);4.6=3D4.9.g/3+4.5.= 7.s}4.o(4.6);k}4.J("1t",4,20)},1r:8(){(4.m.1p("y").1q()=3D=3D0)?4.m.19("y= ",{u:1u,r:13.12.1y.14}).f(4.y):4.m.19("y",{u:1u,r:13.12.1y.14}).f(0)},V:8= (){d(4.5.7.l.1z=3D=3D"G"&&!4.x){4.15()}},o:8(a,b){K(4.5.7.i){t"L":d($1W(b= )){4.9[b].e.f(0).F(8(){4.9[a].e.f(1)}.h(4))}16{4.9[a].e.f(1)}k;t"1Q":q = c=3D4;d(c.5.7.D=3D=3D"Q"){c.e.f({"Q":-a*c.5.j.p})}16{c.e.f({"18":-a*c.5.j= .p})}k;t"1x":q = c=3D4;d(c.5.7.D=3D=3D"Q"){c.e.f({"B":0.1v}).F(8(){c.e.f({"Q":-a*c.5.j.p})= .F(8(){c.e.f({"B":1})})})}16{c.e.f({"B":0.1v}).F(8(){c.e.f({"18":-a*c.5.j= .p}).F(8(){c.e.f({"B":1})})})}k}}});Z.1w(C 1O);Z.1w(C = 1M);',62,126,'||||this|options|atScreen|animation|function|aItems|||_10|i= f|fx|start|length|bind|type|item|break|rotate|container||_animate|size|va= r|transition|amount|case|duration|timer|_6|isMouseOver|height|Class||opac= ity|new|direction|_7|chain|stop|empty|auto|fireEvent|switch|fade|default|= toLowerCase|setStyle|idPrevious|top|interval|idNext|idToggle|false|_autoR= otate|klass|periodical|each|iCarousel|undefined|click|Transitions|Fx|ease= InOut|_next|else|addEvent|left|effect|Event|onClickNext|mouseleave|onClic= kPrevious|_5|_8|_4|clear|_1|_9|_2|addEvents|true|mouseenter|_3|getStyle|t= oInt|_toggle|_d|onNext|1000|75|implement|fadeNscroll|Sine|onMouseOver|onG= oTo|_previous|abs|_b|Math|onPrevious|_c|next|Cubic|manual|500|initialize|= Options|setOptions|Events|goTo|scroll|times|effects|100|injectInside|clon= e|defined|5000|previous|wait||toggle'.split('|'),0,{})) ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/shared/js/newgallery2.js /**=0A= *=0A= * Image Gallery JavaScript library=0A= *=0A= * This file contains functions, extensions and events, =0A= * enabling use of the Image Gallery.=0A= *=0A= * Use of Mootools framework is required.=0A= * File can be included anywhere on the site.=0A= *=0A= * @author Matej Balanti=C4=8D =0A= * @author Marko Pavli=C5=A1i=C4=8D =0A= * @version 1.1=0A= * @package igalleryjavascript=0A= * Marko change library to support more than one image gallery on site=0A= */=0A= =0A= =0A= var imagesCount =3D [];=0A= var imagesPerPage =3D [];=0A= var imagesWidth =3D [];=0A= var gallery_show_first =3D [];=0A= var BigImages =3D [];=0A= var BigImagesIndex =3D [];=0A= var slideShowInProcess =3D [];=0A= var slideshowSpeed =3D [];=0A= var currentPage =3D [];=0A= var pages =3D [];=0A= var currMediaId =3D [];=0A= var scrollHolder =3D [];=0A= var currImage =3D [];=0A= var currFx =3D [];=0A= var oldImage =3D [];=0A= var slideshowTimer =3D [];=0A= var verticalGallery =3D [];=0A= var imagesGap =3D [];=0A= =0A= //prefix image description=0A= var gallery_prefix =3D [];=0A= =0A= // custom icons for left and right nav icons=0A= var leftNavArrSrc =3D'';=0A= var rightNavArrSrc =3D'';=0A= =0A= var leftOffset =3D -8;=0A= var rightOffset =3D 14=0A= =0A= /**=0A= * Extend Events class so that it will enable "wheel" events=0A= * @author Mootools http://mootools.net=0A= */=0A= Element.Events.extend({=0A= 'wheelup': {=0A= type: Element.Events.mousewheel.type,=0A= map: function(event){=0A= event =3D new Event(event);=0A= if (event.wheel >=3D 0) = this.fireEvent('wheelup', event)=0A= }=0A= },=0A= =0A= 'wheeldown': {=0A= type: Element.Events.mousewheel.type,=0A= map: function(event){=0A= event =3D new Event(event);=0A= if (event.wheel <=3D 0) = this.fireEvent('wheeldown', event)=0A= }=0A= }=0A= });=0A= =0A= =0A= /**=0A= * Initialize the animation; prepare buttons & fx =0A= * @author Matej Balanti=C4=8D =0A= */=0A= function gal_init(galid)=0A= {=0A= /**=0A= * Set defaults=0A= */=0A= if (!$defined(window.slideShowInProcess[galid]))=0A= slideShowInProcess[galid] =3D false;=0A= =0A= if (!$defined(window.imagesCount[galid]))=0A= imagesCount[galid] =3D 0;=0A= =0A= if (!$defined(window.imagesPerPage[galid]))=0A= imagesPerPage[galid] =3D 7;=0A= =0A= if (!$defined(window.slideshowSpeed[galid]))=0A= slideshowSpeed[galid] =3D 2000; // milisecs=0A= =0A= if (!$defined(window.currentPage[galid]))=0A= currentPage[galid] =3D 1;=0A= =0A= if (!$defined(window.pages[galid]))=0A= pages[galid] =3D Math.ceil(imagesCount[galid]/imagesPerPage[galid]);=0A= =0A= if (!$defined(window.currMediaId[galid]))=0A= currMediaId[galid] =3D false;=0A= =0A= /**=0A= * add onclick & wheel events=0A= */=0A= =0A= $('leftArrow'+galid).addEvent('click', function(e) {=0A= e =3D new Event(e).stop();=0A= this.blur();=0A= gal_thumbs_prev(galid);=0A= });=0A= =0A= $('rightArrow'+galid).addEvent('click', function(e) { =0A= e =3D new Event(e).stop();=0A= this.blur();=0A= gal_thumbs_next(galid);=0A= =0A= });=0A= $('galHolder_'+galid).addEvents({=0A= 'wheelup': function(e) {=0A= e =3D new Event(e).stop();=0A= gal_thumbs_prev(galid);=0A= },=0A= 'wheeldown': function(e) {=0A= e =3D new Event(e).stop();=0A= gal_thumbs_next(galid);=0A= }=0A= });=0A= =0A= /**=0A= * initialize FX effect =0A= */=0A= scrollHolder[galid] =3D new Fx.Scroll('thumb_holder_'+galid, {=0A= wait: false,=0A= duration: 1000,=0A= transition: Fx.Transitions.Circ.easeOut=0A= });=0A= =0A= /**=0A= * preload first image=0A= */=0A= if ($defined(gallery_show_first[galid]) && gallery_show_first[galid])=0A= {=0A= image_to_open =3D 0; =0A= the_anchor =3D window.location.hash;=0A= if (the_anchor)=0A= {=0A= the_anchor =3D the_anchor.split("#image_");=0A= if (the_anchor.length=3D=3D2)=0A= {=0A= image_to_open =3D the_anchor[1];=0A= image_to_open =3D image_to_open.toInt();=0A= image_to_open =3D image_to_open-1;=0A= =0A= if (image_to_open<0) image_to_open=3D0;=0A= }=0A= }=0A= gal_image_open(BigImagesIndex[galid][image_to_open], galid);=0A= }=0A= =0A= gal_preload(BigImagesIndex[0], galid);=0A= }=0A= =0A= /**=0A= * Adds image to array of images used in gallery.=0A= * Only add images using this function.=0A= *=0A= * Added for compatibility with Google Chrome=0A= *=0A= * @author Matej Balantic=0A= * @date 2009-06-12=0A= */=0A= function gal_add_image(galid, gmedia_id, gurl, gsource, gcomment, = gvideo_id, gseqno)=0A= {=0A= if (!$defined(window.BigImagesIndex[galid]))=0A= BigImagesIndex[galid] =3D [];=0A= =0A= if (!$defined(window.BigImages[galid]))=0A= BigImages[galid] =3D {};=0A= =0A= if (!$defined(gseqno))=0A= gseqno =3D "";=0A= =0A= subobject =3D {};=0A= subobject[gmedia_id] =3D [ gurl, gsource, gcomment, gvideo_id, gseqno ];=0A= =0A= $extend(BigImages[galid], subobject );=0A= BigImagesIndex[galid].extend([gmedia_id.toInt()]);=0A= }=0A= =0A= =0A= /**=0A= * Function preloads next 3 images=0A= * @param int media_id Current image=0A= * @author Matej Balanti=C4=8D =0A= */=0A= function gal_preload(media_id, galid)=0A= {=0A= if (!$defined(window.BigImagesIndex[galid]))=0A= BigImagesIndex[galid] =3D [];=0A= =0A= currIndex =3D BigImagesIndex[galid].indexOf(media_id);=0A= =0A= if (BigImagesIndex[galid][currIndex[galid]+1])=0A= new Element('img', { src: = BigImages[galid][BigImagesIndex[galid][currIndex[galid]+1]][0] });=0A= =0A= if (BigImagesIndex[galid][currIndex[galid]+2])=0A= new Element('img', { src: = BigImages[galid][BigImagesIndex[galid][currIndex[galid]+2]][0] });=0A= =0A= if (BigImagesIndex[galid][currIndex[galid]+3])=0A= new Element('img', { src: = BigImages[galid][BigImagesIndex[galid][currIndex[galid]+3]][0] });=0A= =0A= =0A= }=0A= =0A= /**=0A= * Opens next or previous image=0A= * @param string ty Type of the nav (next|prev)=0A= * @author Matej Balanti=C4=8D =0A= */=0A= function gal_image_nav(ty,galid)=0A= {=0A= ind =3D BigImagesIndex[galid].indexOf(currMediaId[galid]);=0A= if (ty =3D=3D "next" && BigImagesIndex[galid][ind+1])=0A= {=0A= gal_image_open ( BigImagesIndex[galid][ind+1], galid );=0A= }=0A= else if (ty =3D=3D "prev" && BigImagesIndex[galid][ind-1])=0A= {=0A= gal_image_open ( BigImagesIndex[galid][ind-1], galid );=0A= }=0A= }=0A= =0A= /**=0A= * Starts / stops slide show=0A= * @author Matej Balanti=C4=8D =0A= */=0A= function gal_slide_show_toggle(galid)=0A= {=0A= if (!slideShowInProcess[galid])=0A= gal_slide_show(galid);=0A= else=0A= gal_slide_show_stop(galid);=0A= }=0A= =0A= /**=0A= * Starts slide show=0A= * @author Matej Balanti=C4=8D =0A= */=0A= function gal_slide_show(galid)=0A= {=0A= slideShowInProcess[galid] =3D true;=0A= =0A= if (!currMediaId[galid]) {=0A= gal_image_open(BigImagesIndex[galid][0], galid);=0A= }=0A= else if (BigImagesIndex[galid].indexOf(currMediaId[galid])+1 =3D=3D = BigImagesIndex[galid].length) {=0A= gal_image_open(BigImagesIndex[galid][0], galid);=0A= }=0A= else {=0A= gal_image_nav('next', galid);=0A= }=0A= // alert(slideshowSpeed[galid]);=0A= // gal_slide_show(galid);=0A= slideshowTimer[galid] =3D (function() { gal_slide_show(galid); = }).delay(slideshowSpeed[galid]);=0A= =0A= }=0A= =0A= /**=0A= * Ends slide show=0A= * @author Matej Balanti=C4=8D =0A= */=0A= function gal_slide_show_stop(galid)=0A= {=0A= slideShowInProcess[galid]=3Dfalse;=0A= slideshowTimer[galid] =3D $clear(slideshowTimer[galid]);=0A= gal_create_nav(galid);=0A= }=0A= =0A= /**=0A= * Opens large image =0A= * @param int media_id=0A= * @author Matej Balanti =0A= */=0A= function gal_image_open(media_id,galid)=0A= {=0A= currMediaId[galid] =3D media_id.toInt();=0A= =0A= /**=0A= * Handle thumb navigation=0A= */=0A= page_should_be =3D = Math.ceil((BigImagesIndex[galid].indexOf(currMediaId[galid])+1)/imagesPer= Page[galid]);=0A= if (currentPage[galid] !=3D page_should_be)=0A= gal_thumbs_nav(page_should_be,galid);=0A= =0A= /**=0A= * Border around thumb=0A= */=0A= $ES('.galleryThumb img').each ( function (el) {=0A= el.removeClass('imgselected');=0A= });=0A= =0A= /**=0A= * Also border around divs=0A= */=0A= document.getElements('div[rel=3Dthumb]').each ( function (el) {=0A= el.removeClass('imgselected');=0A= });=0A= =0A= =0A= if (currMediaId)=0A= {=0A= = $('thumb_'+galid+'_'+currMediaId[galid]).getElements('img')[0].addClass('= imgselected');=0A= =0A= altdiv =3D = $('thumb_'+galid+'_'+currMediaId[galid]).getElements('div[rel=3Dthumb]');=0A= if (altdiv.length>0)=0A= altdiv[0].addClass('imgselected');=0A= }=0A= =0A= /**=0A= * Preload images=0A= */=0A= gal_preload(media_id, galid);=0A= =0A= /**=0A= * Catch & handle old image=0A= */=0A= if($('currentImage_'+galid))=0A= {=0A= /**=0A= * remove image navigation =0A= */=0A= if ($('leftNav'))=0A= $('leftNav').remove();=0A= if ($('leftNavArr'))=0A= $('leftNavArr').remove();=0A= =0A= if ($('rightNav'))=0A= $('rightNav').remove();=0A= if ($('rightNavArr'))=0A= $('rightNavArr').remove();=0A= =0A= /**=0A= * Catch old image=0A= */=0A= oldImage[galid] =3D $('currentImage_'+galid);=0A= oldImage[galid].id =3D 'oldImage';=0A= oldImage[galid].setStyle('z-index', '70');=0A= =0A= /**=0A= * Start FX which removes old image=0A= */=0A= oldFx =3D new Fx.Style(oldImage[galid], 'opacity', { =0A= duration: 500,=0A= =0A= onComplete: function() {=0A= $('oldImage').remove();=0A= }=0A= })=0A= .start(1,0);=0A= =0A= }=0A= =0A= /**=0A= * Create new image=0A= */=0A= currImage[galid] =3D new Element('img')=0A= =0A= /**=0A= * Add onload event. HAS to be set BEFORE 'src' element is set.=0A= * It also has to be repeated on FX complete later, since OnLoad=0A= * will not be triggered in the right way IE when image is cached.=0A= */=0A= .addEvent('load', function() {=0A= try {=0A= $('imageBig_'+galid).setStyle( 'height', = currImage[galid].getCoordinates().height);=0A= }=0A= catch(err) {=0A= =0A= }=0A= })=0A= .setStyles({=0A= 'opacity' : '0',=0A= 'position': 'absolute',=0A= 'top': '0px',=0A= 'left': '0px',=0A= 'z-index': 50=0A= })=0A= .set ({=0A= 'src': BigImages[galid][media_id][0],=0A= 'alt': BigImages[galid][media_id][2],=0A= 'id' : 'currentImage_'+galid=0A= })=0A= .injectInside($('imageBig_'+galid));=0A= =0A= /**=0A= * Start the effect which shows new image=0A= */=0A= currFx[galid] =3D new Fx.Style(currImage[galid], 'opacity', { =0A= duration: 500,=0A= onComplete: function()=0A= {=0A= /**=0A= * update container size=0A= */=0A= $('imageBig_'+galid).setStyle( 'height', = currImage[galid].getCoordinates().height);=0A= =0A= /**=0A= * create navigation=0A= */=0A= if (!slideShowInProcess[galid])=0A= gal_create_nav(galid);=0A= =0A= /**=0A= * insert comment=0A= */=0A= if($('galComment_'+galid).getStyle('display') =3D=3D 'none') /*add = new funcionality*/=0A= $('galComment_'+galid).setStyle('display','block'); =0A= =0A= if (BigImages[galid][currMediaId[galid]][1] !=3D '') {=0A= = //$('galComment_'+galid).setText(stripslashes(BigImages[galid][currMediaI= d[galid]][2]) + ' (' + = stripslashes(BigImages[galid][currMediaId[galid]][1]) + ')');=0A= if (gallery_prefix[galid]) {=0A= $('galComment_'+galid).innerHTML =3D "" + gallery_prefix[galid] = + " " + BigImages[galid][currMediaId[galid]][4] + " " + = stripslashes(BigImages[galid][currMediaId[galid]][2]) + ' (' + = stripslashes(BigImages[galid][currMediaId[galid]][1]) + ')';=0A= } else {=0A= $('galComment_'+galid).innerHTML =3D = stripslashes(BigImages[galid][currMediaId[galid]][2]) + ' (' + = stripslashes(BigImages[galid][currMediaId[galid]][1]) + ')';=0A= }=0A= } else {=0A= = //$('galComment_'+galid).setText(BigImages[galid][currMediaId[galid]][2])= ;=0A= if (gallery_prefix[galid]) {=0A= $('galComment_'+galid).innerHTML =3D "" + gallery_prefix[galid] = + " " + BigImages[galid][currMediaId[galid]][4] + " " + = BigImages[galid][currMediaId[galid]][2];=0A= } else {=0A= $('galComment_'+galid).innerHTML =3D = BigImages[galid][currMediaId[galid]][2];=0A= }=0A= }=0A= }=0A= });=0A= currFx[galid].start(0,1);=0A= }=0A= =0A= /**=0A= * Creates navigation over the image=0A= * @author Matej Balanti=C4=8D =0A= */=0A= function gal_create_nav(galid)=0A= {=0A= /**=0A= * Left part of navigation=0A= * Create only if this is not the first image=0A= */=0A= =0A= if ($("leftNavArr")) $("leftNavArr").remove(); =0A= if ($("rightNavArr")) $("rightNavArr").remove(); =0A= =0A= embedVideo =3D false;=0A= if (BigImages[galid][currMediaId[galid]][3]!=3D"") embedVideo =3D true;=0A= =0A= leftNav =3D new Element('div', { 'id': "leftNav" } )=0A= .setStyles({=0A= 'background-color' : 'white',=0A= 'position' : 'absolute',=0A= 'z-index': 100,=0A= 'top': '0px',=0A= 'left': '0px',=0A= 'opacity': 0,=0A= 'visibility': 'visible',=0A= 'height': currImage[galid].getCoordinates().height,=0A= 'width': currImage[galid].getCoordinates().width/2,=0A= 'cursor':'pointer'=0A= =0A= })=0A= .addEvents({=0A= 'click': function(e) {=0A= e =3D new Event(e).stop();=0A= if (embedVideo) {=0A= leftNavArr.setStyle('visibility', 'hidden');=0A= ind =3D BigImagesIndex[galid].indexOf(currMediaId[galid]);=0A= media_id =3D BigImages[galid][currMediaId[galid]][3];=0A= video_at_thumb(media_id, = 'leftNav',currImage[galid].getCoordinates().width,currImage[galid].getCoo= rdinates().height - 40);=0A= } else {=0A= gal_image_nav('prev',galid);=0A= }=0A= },=0A= 'mouseover': function(e) {=0A= e =3D new Event(e).stop();=0A= ind =3D BigImagesIndex[galid].indexOf(currMediaId[galid]);=0A= if (ind>0) leftNavArr.setStyle('visibility', 'visible');=0A= },=0A= 'mouseout': function(e) {=0A= e =3D new Event(e).stop();=0A= leftNavArr.setStyle('visibility', 'hidden');=0A= }/*,=0A= 'wheelup': function(e) {=0A= e =3D new Event(e).stop();=0A= ('next');=0A= },=0A= 'wheeldown': function(e) {=0A= e =3D new Event(e).stop();=0A= ('prev');=0A= }*/=0A= })=0A= .injectInside($('imageBig_'+galid));=0A= =0A= if (leftNavArrSrc =3D=3D=3D 'undefined' || leftNavArrSrc =3D=3D '')=0A= leftNavArrSrc =3D = '/static/'+app_lang+'/main/img/buttons/button_big_photo_left_on.gif';=0A= =0A= if (rightNavArrSrc =3D=3D=3D 'undefined' || rightNavArrSrc =3D=3D '')=0A= rightNavArrSrc =3D = '/static/'+app_lang+'/main/img/buttons/button_big_photo_right_on.gif';=0A= =0A= /**=0A= * Create the left arrow=0A= */=0A= leftNavArr =3D new Element('img', {=0A= 'src': leftNavArrSrc,=0A= 'id': 'leftNavArr'=0A= })=0A= .setStyles({=0A= 'cursor':'pointer',=0A= 'visibility' : 'hidden',=0A= 'z-index': 120,=0A= 'position':'absolute',=0A= 'left': leftOffset,=0A= 'top': currImage[galid].getCoordinates().height / 2 - 11=0A= })=0A= .addEvents({=0A= 'click': function(e) {=0A= e =3D new Event(e).stop();=0A= gal_image_nav('prev',galid);=0A= },=0A= 'mouseover': function(e) {=0A= e =3D new Event(e).stop();=0A= leftNavArr.setStyle('visibility', 'visible'); =0A= }=0A= =0A= /*'mouseover': function(e) {=0A= e =3D new Event(e).stop();=0A= leftNavArr.src =3D = '/static/hr/main/img/buttons/button_big_photo_left_on.gif';=0A= },=0A= 'mouseout': function(e) {=0A= e =3D new Event(e).stop();=0A= leftNavArr.src =3D = '/static/hr/main/img/buttons/button_big_photo_left_off.gif';=0A= }*/=0A= })=0A= .injectInside($('imageBig_'+galid));=0A= =0A= =0A= /**=0A= * Right part of navigation=0A= */=0A= rightNav =3D new Element('div', { 'id': 'rightNav' } )=0A= .setStyles({=0A= 'background-color' : 'white',=0A= 'position' : 'absolute',=0A= 'z-index': 100,=0A= 'opacity': '0',=0A= 'visibility': 'visible',=0A= 'top': '0px',=0A= 'left': currImage[galid].getCoordinates().width/2 ,=0A= 'height': currImage[galid].getCoordinates().height,=0A= 'width': currImage[galid].getCoordinates().width/2,=0A= 'cursor':'pointer'=0A= =0A= })=0A= .addEvents({=0A= 'click': function(e) {=0A= e =3D new Event(e).stop();=0A= if (embedVideo) {=0A= rightNavArr.setStyle('visibility', 'hidden');=0A= ind =3D BigImagesIndex[galid].indexOf(currMediaId[galid]);=0A= media_id =3D BigImages[galid][currMediaId[galid]][3];=0A= video_at_thumb(media_id, = 'leftNav',currImage[galid].getCoordinates().width,currImage[galid].getCoo= rdinates().height - 40);=0A= } else {=0A= gal_image_nav('next',galid);=0A= }=0A= },=0A= 'mouseover': function(e) {=0A= e =3D new Event(e).stop();=0A= ind =3D BigImagesIndex[galid].indexOf(currMediaId[galid]);=0A= if (ind=0A= */=0A= function gal_thumbs_next(galid)=0A= {=0A= gal_thumbs_nav(currentPage[galid]+1,galid);=0A= }=0A= =0A= /**=0A= * Scroll to previous "page"=0A= * @author Matej Balanti=C4=8D =0A= */=0A= function gal_thumbs_prev(galid)=0A= {=0A= gal_thumbs_nav(currentPage[galid]-1,galid);=0A= }=0A= =0A= /**=0A= * Navigate to page=0A= * @param int page Page to navigate to=0A= * @author Matej Balanti=C4=8D =0A= */=0A= function gal_thumbs_nav(page, galid)=0A= {=0A= /**=0A= * handle page overflow=0A= */=0A= =0A= if (page < 1 || page > pages[galid])=0A= return false;=0A= =0A= // display different left-right icons when on first or last page on ru = and ua site =0A= if (window.app_lang =3D=3D 'ua' || window.app_lang =3D=3D 'ru') {=0A= if (parseInt(page) =3D=3D 1)=0A= $('leftArrowImg'+galid).src =3D = '/static/ua/main/img/buttons/gallery_prev_disabled.gif';=0A= else =0A= $('leftArrowImg'+galid).src =3D = '/static/ua/main/img/buttons/gallery_prev.gif';=0A= =0A= if (parseInt(page) =3D=3D parseInt(pages[galid]))=0A= $('rightArrowImg'+galid).src =3D = '/static/ua/main/img/buttons/gallery_next_disabled.gif';=0A= else =0A= $('rightArrowImg'+galid).src =3D = '/static/ua/main/img/buttons/gallery_next.gif';=0A= }=0A= =0A= /** =0A= * mark page change=0A= */=0A= currentPage[galid] =3D page;=0A= =0A= if (typeof(imagesWidth[galid]) =3D=3D=3D 'undefined')=0A= imagesWidth[galid] =3D 74;=0A= =0A= if (typeof(imagesGap[galid]) =3D=3D=3D 'undefined')=0A= imagesGap[galid] =3D 4;=0A= =0A= if (typeof(imagesPerPage[galid]) =3D=3D=3D 'undefined')=0A= imagesPerPage[galid] =3D 9;=0A= =0A= /**=0A= * slide thumbs=0A= */=0A= if (typeof(verticalGallery[galid]) =3D=3D=3D 'undefined')=0A= verticalGallery[galid] =3D false;=0A= =0A= if (verticalGallery[galid]) {=0A= scrollHolder[galid].scrollTo( 0, (imagesWidth[galid]+imagesGap[galid]) = * imagesPerPage[galid] * (currentPage[galid]-1));=0A= } else {=0A= scrollHolder[galid].scrollTo( (imagesWidth[galid]+imagesGap[galid]) * = imagesPerPage[galid] * (currentPage[galid]-1), 0);=0A= }=0A= =0A= // $('rightNavArr'+galid).set('src', = '/static/ua/main/img/buttons/gallery_next_disabled.gif');=0A= }=0A= =0A= /**=0A= * PHP-like addslashes function=0A= * @author http://javascript.about.com/library/bladdslash.htm=0A= */=0A= function addslashes(str) {=0A= str=3Dstr.replace(/\'/g,'\\\'');=0A= str=3Dstr.replace(/\"/g,'\\"');=0A= str=3Dstr.replace(/\\/g,'\\\\');=0A= str=3Dstr.replace(/\0/g,'\\0');=0A= return str;=0A= }=0A= =0A= /**=0A= * PHP-like stripslashes function=0A= * @author http://javascript.about.com/library/bladdslash.htm=0A= */=0A= function stripslashes(str) {=0A= str=3Dstr.replace(/\\'/g,'\'');=0A= str=3Dstr.replace(/\\"/g,'"');=0A= str=3Dstr.replace(/\\\\/g,'\\');=0A= str=3Dstr.replace(/\\0/g,'\0');=0A= return str;=0A= }=0A= ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/shared/js/slimbox.js /*=0A= Slimbox v1.3 - The ultimate lightweight Lightbox clone=0A= by Christophe Beyls (http://www.digitalia.be) - MIT-style license.=0A= Inspired by the original Lightbox v2 by Lokesh Dhakar.=0A= */=0A= =0A= var Lightbox =3D {=0A= =0A= //you call init_new when you load picture with ajax; you add onclick = evenet on =0A= init_new: function(){=0A= =0A= $each(document.links, function(el){=0A= if (el.rel && el.rel.test(/^lightbox/i)){=0A= if (!el.name.test(/^false/i)) //use name=3D"false" on for no = onclick slimbox event=0A= el.onclick =3D this.click.pass(el, this); =0A= =0A= }=0A= }, this);=0A= =0A= },=0A= =0A= =0A= init: function(options){=0A= this.options =3D Object.extend({=0A= resizeDuration: 400,=0A= resizeTransition: Fx.Transitions.sineInOut,=0A= initialWidth: 250,=0A= initialHeight: 250,=0A= animateCaption: true=0A= }, options || {});=0A= =0A= this.anchors =3D [];=0A= $each(document.links, function(el){=0A= if (el.rel && el.rel.test(/^lightbox/i)){=0A= if (!el.name.test(/^false/i)) //use name=3D"false" on for no = onclick slimbox event=0A= el.onclick =3D this.click.pass(el, this); =0A= =0A= this.anchors.push(el);=0A= }=0A= }, this);=0A= this.eventKeyDown =3D this.keyboardListener.bindAsEventListener(this);=0A= this.eventPosition =3D this.position.bind(this);=0A= =0A= this.overlay =3D new Element('div').setProperty('id', = 'lbOverlay').injectInside(document.body);=0A= =0A= this.center =3D new Element('div').setProperty('id', = 'lbCenter').setStyles({width: this.options.initialWidth+'px', height: = this.options.initialHeight+'px', marginLeft: = '-'+(this.options.initialWidth/2)+'px', display: = 'none'}).injectInside(document.body);=0A= this.image =3D new Element('div').setProperty('id', = 'lbImage').injectInside(this.center);=0A= this.prevLink =3D new Element('a').setProperties({id: 'lbPrevLink', = href: '#'}).setStyle('display', 'none').injectInside(this.image);=0A= this.nextLink =3D this.prevLink.clone().setProperty('id', = 'lbNextLink').injectInside(this.image);=0A= this.prevLink.onclick =3D this.previous.bind(this);=0A= this.nextLink.onclick =3D this.next.bind(this);=0A= =0A= this.bottomContainer =3D new Element('div').setProperty('id', = 'lbBottomContainer').setStyle('display', = 'none').injectInside(document.body);=0A= this.bottom =3D new Element('div').setProperty('id', = 'lbBottom').injectInside(this.bottomContainer);=0A= new Element('a').setProperties({id: 'lbCloseLink', href: = '#'}).injectInside(this.bottom).onclick =3D this.overlay.onclick =3D = this.close.bind(this);=0A= this.caption =3D new Element('div').setProperty('id', = 'lbCaption').injectInside(this.bottom);=0A= this.number =3D new Element('div').setProperty('id', = 'lbNumber').injectInside(this.bottom);=0A= new Element('div').setStyle('clear', 'both').injectInside(this.bottom);=0A= =0A= var nextEffect =3D this.nextEffect.bind(this);=0A= this.fx =3D {=0A= overlay: this.overlay.effect('opacity', {duration: 500}).hide(),=0A= resize: this.center.effects({duration: this.options.resizeDuration, = transition: this.options.resizeTransition, onComplete: nextEffect}),=0A= image: this.image.effect('opacity', {duration: 500, onComplete: = nextEffect}),=0A= bottom: this.bottom.effect('margin-top', {duration: 400, onComplete: = nextEffect})=0A= };=0A= =0A= this.preloadPrev =3D new Image();=0A= this.preloadNext =3D new Image();=0A= },=0A= =0A= click: function(link){=0A= if (link.rel.length =3D=3D 8) return this.show(link.href, link.title);=0A= =0A= var j, imageNum, images =3D [];=0A= this.anchors.each(function(el){=0A= if (el.rel =3D=3D link.rel){=0A= for (j =3D 0; j < images.length; j++) if(images[j][0] =3D=3D = el.href) break;=0A= if (j =3D=3D images.length){=0A= images.push([el.href, el.title]);=0A= if (el.href =3D=3D link.href) imageNum =3D j;=0A= }=0A= }=0A= }, this);=0A= return this.open(images, imageNum);=0A= },=0A= =0A= show: function(url, title){=0A= return this.open([[url, title]], 0);=0A= },=0A= =0A= open: function(images, imageNum){=0A= flash_show(false); //close flash objects=0A= this.images =3D images;=0A= this.position();=0A= this.setup(true);=0A= this.top =3D window.getScrollTop() + (window.getHeight() / 15);=0A= this.center.setStyles({top: this.top+'px', display: ''});=0A= this.fx.overlay.start(0.8);=0A= return this.changeImage(imageNum);=0A= },=0A= =0A= position: function(){=0A= this.overlay.setStyles({top: window.getScrollTop()+'px', height: = window.getHeight()+'px'});=0A= },=0A= =0A= setup: function(open){=0A= var elements =3D $A(document.getElementsByTagName('object'));=0A= if (window.ie) = elements.extend(document.getElementsByTagName('select'));=0A= elements.each(function(el){ el.style.visibility =3D open ? 'hidden' : = ''; });=0A= var fn =3D open ? 'addEvent' : 'removeEvent';=0A= window[fn]('scroll', this.eventPosition)[fn]('resize', = this.eventPosition);=0A= document[fn]('keydown', this.eventKeyDown);=0A= this.step =3D 0;=0A= },=0A= =0A= keyboardListener: function(event){=0A= switch (event.keyCode){=0A= case 27: case 88: case 67: this.close(); break;=0A= case 37: case 80: this.previous(); break; =0A= case 39: case 78: this.next();=0A= }=0A= },=0A= =0A= previous: function(){=0A= return this.changeImage(this.activeImage-1);=0A= },=0A= =0A= next: function(){=0A= return this.changeImage(this.activeImage+1);=0A= },=0A= =0A= changeImage: function(imageNum){=0A= if (this.step || (imageNum < 0) || (imageNum >=3D this.images.length)) = return false;=0A= this.step =3D 1;=0A= this.activeImage =3D imageNum;=0A= =0A= this.bottomContainer.style.display =3D this.prevLink.style.display =3D = this.nextLink.style.display =3D 'none';=0A= this.fx.image.hide();=0A= this.center.className =3D 'lbLoading';=0A= =0A= this.preload =3D new Image();=0A= this.preload.onload =3D this.nextEffect.bind(this);=0A= this.preload.src =3D this.images[imageNum][0];=0A= return false;=0A= },=0A= =0A= nextEffect: function(){=0A= switch (this.step++){=0A= case 1:=0A= this.center.className =3D '';=0A= this.image.style.backgroundImage =3D = 'url('+this.images[this.activeImage][0]+')';=0A= this.image.style.width =3D this.bottom.style.width =3D = this.preload.width+'px';=0A= this.image.style.height =3D this.prevLink.style.height =3D = this.nextLink.style.height =3D this.preload.height+'px';=0A= =0A= this.caption.setHTML(this.images[this.activeImage][1] || '');=0A= this.number.setHTML((this.images.length =3D=3D 1) ? '' : = (this.activeImage+1)+' of '+this.images.length);=0A= =0A= if (this.activeImage) this.preloadPrev.src =3D = this.images[this.activeImage-1][0];=0A= if (this.activeImage !=3D (this.images.length - 1)) = this.preloadNext.src =3D this.images[this.activeImage+1][0];=0A= if (this.center.clientHeight !=3D this.image.offsetHeight){=0A= this.fx.resize.start({height: this.image.offsetHeight});=0A= break;=0A= }=0A= this.step++;=0A= case 2:=0A= if (this.center.clientWidth !=3D this.image.offsetWidth){=0A= this.fx.resize.start({width: this.image.offsetWidth, marginLeft: = -this.image.offsetWidth/2});=0A= break;=0A= }=0A= this.step++;=0A= case 3:=0A= this.bottomContainer.setStyles({top: (this.top + = this.center.clientHeight)+'px', height: '0px', marginLeft: = this.center.style.marginLeft, display: ''});=0A= this.fx.image.start(1);=0A= break;=0A= case 4:=0A= if (this.options.animateCaption){=0A= this.fx.bottom.set(-this.bottom.offsetHeight);=0A= this.bottomContainer.style.height =3D '';=0A= this.fx.bottom.start(0);=0A= break;=0A= }=0A= this.bottomContainer.style.height =3D '';=0A= case 5:=0A= if (this.activeImage) this.prevLink.style.display =3D '';=0A= if (this.activeImage !=3D (this.images.length - 1)) = this.nextLink.style.display =3D '';=0A= this.step =3D 0;=0A= }=0A= },=0A= =0A= close: function(){=0A= if (this.step < 0) return;=0A= this.step =3D -1;=0A= if (this.preload){=0A= this.preload.onload =3D Class.empty;=0A= this.preload =3D null;=0A= }=0A= for (var f in this.fx) this.fx[f].stop();=0A= this.center.style.display =3D this.bottomContainer.style.display =3D = 'none';=0A= this.fx.overlay.chain(this.setup.pass(false, this)).start(0);=0A= flash_show(true); //open flash objects=0A= return false;=0A= }=0A= };=0A= =0A= window.addEvent('domready', Lightbox.init.bind(Lightbox));=0A= ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/shared/js/forum.js function addText(elname, wrap1, wrap2) {=0A= if (document.selection) { // for IE =0A= var str =3D document.selection.createRange().text;=0A= document.forms['inputform'].elements[elname].focus();=0A= var sel =3D document.selection.createRange();=0A= sel.text =3D wrap1 + str + wrap2;=0A= return;=0A= } else if ((typeof = document.forms['inputform'].elements[elname].selectionStart) !=3D = 'undefined') { // for Mozilla=0A= var txtarea =3D document.forms['inputform'].elements[elname];=0A= var selLength =3D txtarea.textLength;=0A= var selStart =3D txtarea.selectionStart;=0A= var selEnd =3D txtarea.selectionEnd;=0A= var oldScrollTop =3D txtarea.scrollTop;=0A= //if (selEnd =3D=3D 1 || selEnd =3D=3D 2)=0A= //selEnd =3D selLength;=0A= var s1 =3D (txtarea.value).substring(0,selStart);=0A= var s2 =3D (txtarea.value).substring(selStart, selEnd)=0A= var s3 =3D (txtarea.value).substring(selEnd, selLength);=0A= txtarea.value =3D s1 + wrap1 + s2 + wrap2 + s3;=0A= txtarea.selectionStart =3D s1.length;=0A= txtarea.selectionEnd =3D s1.length + s2.length + wrap1.length + = wrap2.length;=0A= txtarea.scrollTop =3D oldScrollTop;=0A= txtarea.focus();=0A= return;=0A= } else {=0A= insertText(elname, wrap1 + wrap2);=0A= }=0A= }=0A= =0A= function insertText(elname, what) {=0A= if (document.forms['inputform'].elements[elname].createTextRange) {=0A= document.forms['inputform'].elements[elname].focus();=0A= document.selection.createRange().duplicate().text =3D what;=0A= } else if ((typeof = document.forms['inputform'].elements[elname].selectionStart) !=3D = 'undefined') { // for Mozilla=0A= var tarea =3D document.forms['inputform'].elements[elname];=0A= var selEnd =3D tarea.selectionEnd;=0A= var txtLen =3D tarea.value.length;=0A= var txtbefore =3D tarea.value.substring(0,selEnd);=0A= var txtafter =3D tarea.value.substring(selEnd, txtLen);=0A= var oldScrollTop =3D tarea.scrollTop;=0A= tarea.value =3D txtbefore + what + txtafter;=0A= tarea.selectionStart =3D txtbefore.length + what.length;=0A= tarea.selectionEnd =3D txtbefore.length + what.length;=0A= tarea.scrollTop =3D oldScrollTop;=0A= tarea.focus();=0A= } else {=0A= document.forms['inputform'].elements[elname].value +=3D what;=0A= document.forms['inputform'].elements[elname].focus();=0A= }=0A= }=0A= =0A= function getCookie(cookie_name) {=0A= =0A= var dc =3D document.cookie;=0A= var prefix =3D cookie_name + "=3D";=0A= var begin =3D dc.indexOf("; " + prefix);=0A= =0A= if (begin =3D=3D -1) {=0A= begin =3D dc.indexOf(prefix);=0A= if (begin !=3D 0) return null;=0A= } else=0A= begin +=3D 2;=0A= =0A= var end =3D document.cookie.indexOf(";", begin);=0A= =0A= if (end =3D=3D -1)=0A= end =3D dc.length;=0A= =0A= return unescape(dc.substring(begin + prefix.length, end));=0A= =0A= }=0A= =0A= /**=0A= *=0A= * URL encode / decode=0A= * http://www.webtoolkit.info/=0A= *=0A= **/=0A= =0A= var Url =3D {=0A= =0A= // public method for url encoding=0A= encode : function (string) {=0A= return escape(this._utf8_encode(string));=0A= },=0A= =0A= // public method for url decoding=0A= decode : function (string) {=0A= return this._utf8_decode(unescape(string));=0A= },=0A= =0A= // private method for UTF-8 encoding=0A= _utf8_encode : function (string) {=0A= string =3D string.replace(/\r\n/g,"\n");=0A= var utftext =3D "";=0A= =0A= for (var n =3D 0; n < string.length; n++) {=0A= =0A= var c =3D string.charCodeAt(n);=0A= =0A= if (c < 128) {=0A= utftext +=3D String.fromCharCode(c);=0A= }=0A= else if((c > 127) && (c < 2048)) {=0A= utftext +=3D String.fromCharCode((c >> 6) | 192);=0A= utftext +=3D String.fromCharCode((c & 63) | 128);=0A= }=0A= else {=0A= utftext +=3D String.fromCharCode((c >> 12) | 224);=0A= utftext +=3D String.fromCharCode(((c >> 6) & 63) | 128);=0A= utftext +=3D String.fromCharCode((c & 63) | 128);=0A= }=0A= =0A= }=0A= =0A= return utftext;=0A= },=0A= =0A= // private method for UTF-8 decoding=0A= _utf8_decode : function (utftext) {=0A= var string =3D "";=0A= var i =3D 0;=0A= var c =3D c1 =3D c2 =3D 0;=0A= =0A= while ( i < utftext.length ) {=0A= =0A= c =3D utftext.charCodeAt(i);=0A= =0A= if (c < 128) {=0A= string +=3D String.fromCharCode(c);=0A= i++;=0A= }=0A= else if((c > 191) && (c < 224)) {=0A= c2 =3D utftext.charCodeAt(i+1);=0A= string +=3D String.fromCharCode(((c & 31) << 6) | (c2 & 63));=0A= i +=3D 2;=0A= }=0A= else {=0A= c2 =3D utftext.charCodeAt(i+1);=0A= c3 =3D utftext.charCodeAt(i+2);=0A= string +=3D String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) = | (c3 & 63));=0A= i +=3D 3;=0A= }=0A= =0A= }=0A= =0A= return string;=0A= }=0A= }=0A= =0A= function forum_fill_post_form() {=0A= if ($('forum_username'))=0A= {=0A= username =3D Url.decode(getCookie('anonym_username'));=0A= username =3D username.replace(/\+/g, ' ');=0A= if (username !=3D 'null')=0A= $('forum_username').value =3D username;=0A= }=0A= }=0A= =0A= =0A= function forum_create_quote(post_id)=0A= {=0A= curr_post_id =3D post_id;=0A= new Ajax(site_url+'forum_action.php?action=3Dget_post&id=3D'+post_id, { = method: 'get', onComplete: forum_insert_quote }).request();=0A= }=0A= =0A= =0A= function forum_insert_quote(text)=0A= {=0A= user_html =3D = '[b]'+$('post_user_'+curr_post_id).innerHTML+_lang_has_written+'[/b]\n';=0A= if ($('message').value !=3D '')=0A= $('message').value +=3D '\n';=0A= $('message').value +=3D '[quote]'+user_html+text+'[/quote]\n';=0A= location.href=3D'#form_post';=0A= $('message').focus();=0A= }=0A= function forum_create_reply(post_id)=0A= {=0A= $('preview').style.display=3D'none';=0A= if (curr_post_top =3D=3D '')=0A= curr_post_top =3D getStyle($('form_post'), 'top');=0A= $('form_post').style.top =3D (fcurY+40)+"px";=0A= //$('form_post').style.top =3D fcurY+"px";=0A= $('replyto_id').value =3D post_id;=0A= $('remove_reply').style.display =3D 'block';=0A= $('message').focus();=0A= }=0A= function forum_remove_reply()=0A= {=0A= $('remove_reply').style.display =3D 'none';=0A= $('form_post').style.top =3D curr_post_top;=0A= $('replyto_id').value =3D 0;=0A= }=0A= function forum_get_post(post_id, requestor)=0A= {=0A= curr_post_id =3D requestor;=0A= new = Ajax(site_url+'forum_action.php?action=3Dget_post&format=3D1&id=3D'+post_= id, { method: 'get', onComplete: forum_show_post }).request();=0A= }=0A= function forum_show_post(text)=0A= {=0A= $('preview_content').innerHTML =3D text;=0A= $('preview').style.top=3DfcurY+'px';=0A= $('preview').style.display=3D'block';=0A= }=0A= function ietruebody(){=0A= return (document.compatMode && document.compatMode!=3D"BackCompat")? = document.documentElement : document.body=0A= }=0A= function getStyle(oElm, strCssRule){=0A= var strValue =3D "";=0A= if(document.defaultView && document.defaultView.getComputedStyle){=0A= strValue =3D document.defaultView.getComputedStyle(oElm, = "").getPropertyValue(strCssRule);=0A= }=0A= else if(oElm.currentStyle){=0A= strCssRule =3D strCssRule.replace(/-(w)/g, function (strMatch, p1){=0A= return p1.toUpperCase();=0A= });=0A= strValue =3D oElm.currentStyle[strCssRule];=0A= }=0A= return strValue;=0A= }=0A= function mouseY(evt) {=0A= if (evt.pageY) return evt.pageY;=0A= else if (evt.clientY)=0A= return evt.clientY + (document.documentElement.scrollTop ?=0A= document.documentElement.scrollTop :=0A= document.body.scrollTop);=0A= else return null;=0A= }=0A= function forum_preview_move()=0A= {=0A= if (preview_move)=0A= $('preview').style.top =3D (fcurY-20)+"px";=0A= }=0A= =0A= =0A= /**=0A= * Check if user is logged in and if not show login box=0A= * @author Anze Robida=0A= */=0A= function forum_check_user_loggedin(redirect,type)=0A= {=0A= =0A= var username =3D Cookie.get('user');=0A= =0A= if (username =3D=3D false) {=0A= login_show();=0A= } else {=0A= if (type =3D=3D 'get')=0A= window.location.href =3D redirect;=0A= else=0A= $(redirect).submit();=0A= }=0A= =0A= }=0A= =0A= ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/slo/microsites/default/js/general.js =EF=BB=BF/**=0A= * DEFINE DEFAULT VARIABLES=0A= *=0A= */=0A= var dom_ready =3D false;=0A= var load_banners_onstart =3D true;=0A= var slided_out;=0A= var IS_FLASH_SHOWN =3D true;=0A= var global_show_comments_page =3D 1;=0A= var global_show_comments_order =3D "asc";=0A= var global_show_comments_type =3D "article";=0A= var global_show_comments_id =3D false; =0A= =0A= var banner_flashvar =3D ''; // holder for banner flashvar which we sent = to player=0A= /**=0A= * Event loads when DOM is ready=0A= * This functions will fire right after HTML DOM is ready (before = pictures load)=0A= */=0A= window.addEvent('domready', function()=0A= {=0A= /**=0A= * SET VARIABLES=0A= */=0A= dom_ready =3D true;=0A= =0A= =0A= =0A= /**=0A= * PRELOAD FOLLOWING IMAGES:=0A= */=0A= preload_images =3D new Array(=0A= "/static/shared/img/icons/ajax.gif",=0A= "/static/shared/img/icons/ico_home_page_ff_on.gif",=0A= "/static/shared/img/icons/ico_home_page_ie_on.gif",=0A= "/static/shared/img/icons/ico_home_page_netscape_on.gif",=0A= "/static/shared/img/icons/ico_home_page_opera_on.gif",=0A= "/static/shared/img/icons/ico_home_page_safari_on.gif",=0A= "/static/shared/img/icons/ico_home_page_ff_off.gif",=0A= "/static/shared/img/icons/ico_home_page_ie_off.gif",=0A= "/static/shared/img/icons/ico_home_page_netscape_off.gif",=0A= "/static/shared/img/icons/ico_home_page_opera_off.gif",=0A= "/static/shared/img/icons/ico_home_page_safari_off.gif"=0A= );=0A= =0A= preload_images.each ( function(el_url) {=0A= var tmp_image =3D new Image();=0A= tmp_image.src =3D el_url;=0A= });=0A= =0A= // fills in the username or registration link=0A= reload_user_info();=0A= =0A= });=0A= =0A= =0A= =0A= =0A= /**=0A= * = #########################################################################= ###############=0A= * ############################ FUNCTIONS BELOW THIS LINE = ###############################=0A= * = #########################################################################= ###############=0A= */=0A= function include_css(file) =0A= { =0A= if (document.createElement && document.getElementsByTagName) { =0A= var d_head =3D document.getElementsByTagName('head')[0]; =0A= =0A= var d_script =3D document.createElement('link'); =0A= d_script.setAttribute('type', 'text/css'); =0A= d_script.setAttribute('rel', 'stylesheet'); =0A= d_script.setAttribute('href', file); =0A= =0A= d_head.appendChild(d_script); =0A= } =0A= }=0A= =0A= /**=0A= * Reloads user info with either username or registration link=0A= * @author Matej Balanti=C4=8D =0A= */=0A= function reload_user_info()=0A= {=0A= var username =3D Cookie.get('user')=0A= var FBconnect =3D Cookie.get('FBconnect');=0A= =0A= // HIDE / SHOW all user blocks=0A= $ES('.user_display_when_loggedin').each ( function (el)=0A= {=0A= if (username)=0A= el.style.display =3D 'block';=0A= else=0A= el.style.display =3D 'none';=0A= });=0A= $ES('.user_display_when_loggedout').each ( function (el)=0A= {=0A= if (username)=0A= el.style.display =3D 'none';=0A= else=0A= el.style.display =3D 'block';=0A= });=0A= =0A= $ES('.user_display_when_not_fb_connected').each ( function (el)=0A= {=0A= if (FBconnect)=0A= el.style.display =3D 'none';=0A= else=0A= el.style.display =3D 'block';=0A= });=0A= =0A= =0A= $ES('.user_display_when_fb_connected').each ( function (el)=0A= {=0A= if (FBconnect)=0A= el.style.display =3D 'block';=0A= else=0A= el.style.display =3D 'none';=0A= });=0A= =0A= //special requirments for prize winning game=0A= if (typeof(reg_required_game) !=3D 'undefined') {=0A= if (reg_required_game =3D=3D 'no') {=0A= $ES('.game_allowed').each ( function (el) { el.style.display =3D = 'block'; });=0A= $ES('.game_notallowed').each ( function (el) { el.style.display =3D = 'none'; });=0A= }=0A= }=0A= =0A= // FILL IN USERNAME=0A= if (username)=0A= $ES('.user_username').each ( function (el)=0A= {=0A= username =3D username.replace('+', ' ');=0A= el.innerHTML =3D username;=0A= });=0A= =0A= // reload user info on login using AJAX request, if requested=0A= if (typeof reload_user_info_dynamicaly !=3D=3D "undefined" && = reload_user_info_dynamicaly)=0A= user_get_userinfo(reload_user_info_dynamicaly);=0A= =0A= }=0A= =0A= /**=0A= * Returns array with user's information=0A= * @params none=0A= * @returns array user_info=0A= * @author matej.balantic@pop-tv.si=0A= */=0A= function user_get_userinfo(callbackfunction)=0A= {=0A= new Json.Remote("/bin/registration2/user_info.php", {=0A= onComplete: function(res) =0A= {=0A= eval(callbackfunction+'(res);');=0A= }=0A= }).send();=0A= =0A= }=0A= =0A= =0A= function open_close_subform(div_id,div_head)=0A= {=0A= var div_name =3D $(div_id);=0A= if(div_name) {=0A= if (div_name.style.display =3D=3D "block") {=0A= if (div_id =3D=3D 'video_content') {=0A= try {=0A= $('flvvideo').innerHTML =3D ""; //remove flvvideo=0A= } catch(e) {=0A= null;=0A= }=0A= }=0A= div_name.style.display =3D "none";=0A= $(div_head).className =3D "head";=0A= =0A= } else {=0A= div_name.style.display =3D "block";=0A= $(div_head).className =3D "headopen";=0A= if (div_id =3D=3D 'video_content') {=0A= video_player_setup(); //reopen flvvideo=0A= }=0A= }=0A= } =0A= }=0A= =0A= =0A= /**=0A= * Sends AJAX request to $script_name and updates $div_name with results.=0A= * Animates $div_name while waiting for AJAX response=0A= * @param div_name Name of the div to write in=0A= * @param script_name name of the script to execute=0A= * @author An=C5=BEe Robida=0A= * @author Matej Balanti=C4=8D (ajax-loader = animation)=0A= */=0A= function returnContent(div_name,script_name,media_title,media_id) {=0A= =0A= // hide flash=0A= flash_show(false, $(div_name));=0A= =0A= slided_out =3D false;=0A= =0A= // create hover layer=0A= hover_layer =3D new Element("div")=0A= .setStyle('position', 'absolute')=0A= .setStyles($(div_name).getCoordinates())=0A= .injectInside(document.body)=0A= .setOpacity(0.3)=0A= .setStyles({=0A= 'background-color':'black',=0A= 'position': 'absolute',=0A= 'z-index': '5'=0A= });=0A= =0A= =0A= if (div_name =3D=3D 'vsection_content_margin')=0A= {=0A= hover_layer.setStyles({=0A= 'margin-left': '10px'=0A= });=0A= }=0A= =0A= // create ajax loader=0A= ajax_load =3D new Element("img")=0A= ajax_load.src =3D '/static/shared/img/icons/ajax.gif';=0A= move_top =3D ($(div_name).getPosition()['y'] + = $(div_name).getSize()['size']['y']/2) - (ajax_load.height/2);=0A= move_left =3D ($(div_name).getPosition()['x'] + = $(div_name).getSize()['size']['x']/2) - (ajax_load.width/2);=0A= ajax_load.setStyles({=0A= "position": 'absolute',=0A= "top": move_top,=0A= "left": move_left,=0A= "z-index": '10'=0A= }).injectInside(document.body);=0A= =0A= // call ajax script=0A= new Ajax(script_name, {=0A= method: 'get',=0A= encoding: 'UTF-8',=0A= onComplete: function(response)=0A= {=0A= $(div_name).innerHTML =3D response;=0A= =0A= if (div_name =3D=3D 'videosection' || div_name =3D=3D = 'video_section_main_video') {=0A= //put # tag into location=0A= var url_temp =3D window.location.href; //parse fixed location=0A= url_temp =3D url_temp.substring(0,url_temp.indexOf('#')); =0A= var media_id =3D script_name; //parse media_id=0A= media_id =3D media_id.substring(media_id.indexOf('media_id=3D')+9);=0A= media_id =3D = parseInt(media_id.substring(0,media_id.indexOf('section_id')-1));=0A= window.location =3D url_temp + '#media_id=3D' + media_id;=0A= =0A= $('video_main_box').setStyle("visibility",'visible');=0A= }=0A= =0A= //if video page=0A= if (div_name =3D=3D 'videosection' || div_name =3D=3D = 'video_section_main_video' || div_name =3D=3D 'embed_flvvideo') {=0A= //replace title of the window - for ajax calls=0A= if (div_name !=3D 'embed_flvvideo') {=0A= var explodestring =3D document.title;=0A= explodestring =3D explodestring.split('-');=0A= explodestring =3D explodestring[explodestring.length-1];=0A= explodestring =3D explodestring.split('#');=0A= explodestring =3D explodestring[0];=0A= if (media_title) {=0A= document.title =3D media_title + ' - ' + explodestring.trim();=0A= }=0A= }=0A= else=0A= {=0A= autostart =3D true; // we automaticaly start video if requested = through ajax in article=0A= }=0A= }=0A= =0A= //change style of active media=0A= if (media_id) {=0A= try {=0A= //remove background of non-active media=0A= $ES('.small_video').each ( function(el) =0A= {=0A= el.setStyles({background: ''}); =0A= });=0A= =0A= $("media_id_"+media_id).setStyles({background: = 'url(/static/'+app_lang+'/main/img/backgrounds/back_video.gif) = repeat-y'});=0A= =0A= } catch(e) {=0A= null;=0A= }=0A= =0A= }=0A= =0A= // show flash back=0A= flash_show(true, $(div_name));=0A= =0A= // destroy ajax loader & div layer=0A= hover_layer.remove();=0A= =0A= ajax_load.remove();=0A= =0A= },=0A= // do eval scripts inside the AJAX response=0A= evalScripts: true=0A= }).request();=0A= }=0A= =0A= function do_slide() {=0A= =0A= if (!slided_out)=0A= {=0A= setTimeout(do_slide,300);=0A= return true;=0A= }=0A= mySlide.slideIn();=0A= }=0A= =0A= /**=0A= * REGISTRATION FUNCTIONS=0A= */=0A= =0A= function close_banner() {}=0A= function open_banner() {}=0A= function pre_fullscreen() {}=0A= function post_fullscreen() {}=0A= =0A= function login_show()=0A= {=0A= close_banner();=0A= mbox_open(500, 500);=0A= pre_fullscreen();=0A= =0A= step_1_help =3D new Array("main_help");=0A= active_step =3D 1;=0A= help_displayed =3D 0;=0A= =0A= new Ajax('/bin/registration2/login.php', {=0A= method: 'get',=0A= encoding: 'utf-8',=0A= update: $('MBOX_window'),=0A= evalScripts: true=0A= }).request();=0A= }=0A= =0A= =0A= function register_show()=0A= {=0A= close_banner();=0A= mbox_open(500, 500);=0A= pre_fullscreen();=0A= =0A= // help boxes in step 1=0A= step_1_help =3D new Array("username_help", "password_help", = "email_help", "main_help");=0A= =0A= // url of script for ajax purposes=0A= registration_script_url =3D '/bin/registration2/';=0A= =0A= // how many steps are there=0A= all_steps =3D 3;=0A= active_step =3D 1;=0A= =0A= // help box visibility status=0A= help_displayed =3D false;=0A= =0A= password_renewal =3D false;=0A= =0A= load_settings();=0A= =0A= url =3D '/bin/registration2/' + '?action=3Ddisplay' + '&what=3D1' + = '&return=3D' + location.href;=0A= new Ajax(url, {=0A= method: 'get',=0A= encoding: 'utf-8',=0A= update: $('MBOX_window'),=0A= onComplete: register_show_complete,=0A= evalScripts: true=0A= }).request();=0A= }=0A= =0A= =0A= function register_show_complete( result )=0A= {=0A= active_step =3D $('active_step').value;=0A= =0A= // get HTML code of ajax loader=0A= ajax_loader =3D $('ajax_loader_div').innerHTML;=0A= ajax_loader_big =3D $('ajax_loader_big_div').innerHTML;=0A= =0A= build_indicators( $('active_step').value );=0A= }=0A= =0A= =0A= function load_settings()=0A= {=0A= new Ajax('/bin/registration2/' + '?action=3Djavascript' + = '&what=3Dregister', {=0A= method: 'get',=0A= encoding: 'utf-8',=0A= onComplete: load_settings_complete=0A= }).request();=0A= }=0A= =0A= =0A= function load_settings_complete( result )=0A= {=0A= eval( result );=0A= }=0A= =0A= /*=0A= * Function send article=0A= * @param div_name Name of the div to write in=0A= * @param script_name name of the script to execute=0A= * @param text_ok text if article was sent=0A= * @param text_error text if there goes something wrong=0A= *=0A= */=0A= function articleSend(div_name,script_name,text_ok, text_error) {=0A= =0A= // lets setup title=0A= = if(script_name.indexOf('?')>0){script_name+=3D"&title=3D"+document.title;= }else{script_name+=3D"?title=3D"+document.title;}=0A= new Ajax(script_name, {=0A= method: 'post',=0A= encoding: 'utf-8',=0A= postBody: document.article_send,=0A= onComplete: function(response) {=0A= if (response =3D=3D 'OK') {=0A= $(div_name).innerHTML =3D text_ok;=0A= try {=0A= $("email_to").value =3D "";=0A= } catch (r) {null;}=0A= =0A= } else {=0A= $(div_name).innerHTML =3D text_error;=0A= }=0A= }=0A= }).request();=0A= }=0A= =0A= /**=0A= * This function execute PHP file, which write into database rating for = current video creator=0A= */=0A= function ajax_put_video_creator_vote(id, vote) {=0A= =0A= var url =3D '/bin/ajax_video_creator_vote.php?id=3D'+id+'&rate=3D' + = vote;=0A= =0A= new Ajax(url, {=0A= method: 'get'=0A= }).request();=0A= }=0A= /**=0A= * This function execute PHP file, which write into database rating for = current article=0A= */=0A= function ajax_put_vote(article_id, vote) {=0A= =0A= var url =3D '/bin/ajax_article_vote.php?article_id=3D' + article_id + = '&rate=3D' + vote;=0A= =0A= new Ajax(url, {=0A= method: 'get'=0A= }).request();=0A= }=0A= =0A= /**=0A= * This function execute PHP file, which write into database rating for = current media=0A= */=0A= function ajax_put_media_vote(article_id, vote, response_f) {=0A= =0A= var url =3D '/bin/ajax_media_vote.php?media_id=3D' + article_id + = '&rate=3D' + vote;=0A= =0A= response_f =3D response_f ? response_f : function(){};=0A= new Ajax(url, {=0A= method: 'get',=0A= onComplete: eval(response_f)=0A= }).request();=0A= }=0A= =0A= /**=0A= * This function execute PHP file, which write into database rating for = current media=0A= */=0A= function ajax_put_comic_vote(article_id, vote) {=0A= =0A= var url =3D '/bin/ajax_comic_vote.php?media_id=3D' + article_id + = '&rate=3D' + vote;=0A= =0A= new Ajax(url, {=0A= method: 'get'=0A= }).request();=0A= }=0A= =0A= =0A= /**=0A= * This function execute PHP file, which write into database rating for = current hu=0A= */=0A= function ajax_put_humor_vote(article_id, vote, response_f) {=0A= =0A= var url =3D '/bin/ajax_humor_vote.php?humor_id=3D' + article_id + = '&rate=3D' + vote;=0A= =0A= response_f =3D response_f ? response_f : function(){};=0A= new Ajax(url, {=0A= method: 'get',=0A= onComplete: eval(response_f)=0A= }).request();=0A= }=0A= =0A= =0A= /**=0A= * Function sends comment on article to server=0A= */=0A= function ajax_comment_send(type, text_wait, text_saved, text_pwd, = text_bnd, text_pnd, text_err, text_act, text_sent) {=0A= =0A= var url =3D '/bin/ajax_comments_save_'+type+'.php'; =0A= if ($('comment_txt').value =3D=3D '')=0A= return false;=0A= =0A= //write "wait" message=0A= span_comment_msg_1 =3D $('span_comment_msg');=0A= if (!span_comment_msg_1)=0A= return false;=0A= span_comment_msg_1.innerHTML =3D text_wait;=0A= =0A= new Ajax(url, {=0A= method: 'post',=0A= postBody: document.comment_send,=0A= onComplete: function(response) {=0A= =0A= var result_1 =3D response;=0A= =0A= //comment saved=0A= if (result_1 =3D=3D 'SUCCESS') {=0A= span_comment_msg_1.innerHTML =3D text_saved;=0A= show_comments();=0A= }=0A= =0A= //user banned temp=0A= if (result_1 =3D=3D 'BND')=0A= span_comment_msg_1.innerHTML =3D text_bnd;=0A= =0A= =0A= //password inavlid=0A= if (response =3D=3D 'PWD')=0A= span_comment_msg_1.innerHTML =3D text_pwd;=0A= =0A= //comment already sent=0A= if (response =3D=3D 'OK')=0A= span_comment_msg_1.innerHTML =3D text_sent;=0A= =0A= //user banned=0A= if (response =3D=3D 'PND')=0A= span_comment_msg_1.innerHTML =3D text_pnd;=0A= =0A= //common error=0A= if (response =3D=3D 'ERR')=0A= span_comment_msg_1.innerHTML =3D text_err;=0A= =0A= //user is not activated=0A= if (response =3D=3D 'ACT')=0A= span_comment_msg_1.innerHTML =3D text_act;=0A= }=0A= }).request();=0A= }=0A= =0A= function show_comments(type, id, page, order) {=0A= // updating after user post=0A= if (typeof(id) =3D=3D=3D "undefined")=0A= {=0A= type =3D global_show_comments_type;=0A= id =3D global_show_comments_id;=0A= order =3D global_show_comments_order;=0A= if (order =3D=3D "desc" || order =3D=3D "DESC")=0A= page =3D 1;=0A= else=0A= page =3D "last";=0A= }=0A= =0A= =0A= global_show_comments_type =3D type;=0A= global_show_comments_id =3D id; =0A= global_show_comments_page =3D page;=0A= global_show_comments_order =3D order;=0A= =0A= =0A= var url =3D '/bin/ajax_comments.php?type=3D'+type+'&id=3D' + id + = '&page=3D' + page + '&order=3D' + order + '&max_number=3D10';=0A= =0A= new Ajax(url, {=0A= method: 'get',=0A= onComplete: function(resp) {=0A= new_div =3D new Element('div')=0A= .setHTML(resp);=0A= =0A= $('comments').replaceWith(new_div);=0A= =0A= }=0A= }).request();=0A= =0A= }=0A= =0A= =0A= =0A= =0A= /**=0A= * Function returns all the comments for a specific video from an ajax = script=0A= * @edited by Tadej Magajna=0A= */=0A= function show_all_comments(type, id, max_number, order) {=0A= // updating after user post=0A= if (typeof(id) =3D=3D=3D "undefined")=0A= {=0A= type =3D global_show_comments_type;=0A= id =3D global_show_comments_id;=0A= order =3D global_show_comments_order;=0A= if (order =3D=3D "desc" || order =3D=3D "DESC")=0A= page =3D 1;=0A= else=0A= page =3D "last";=0A= }=0A= =0A= global_show_comments_type =3D type;=0A= global_show_comments_id =3D id; =0A= global_show_comments_max_number =3D max_number;=0A= global_show_comments_order =3D order;=0A= =0A= var url =3D '/bin/ajax_show_all_comments.php?type=3D'+type+'&id=3D' + = id + '&page=3D1&order=3D' + order + '&max_number=3D'+max_number;=0A= new Ajax(url, {=0A= method: 'get',=0A= onComplete: function(resp) {=0A= new_div =3D new Element('div')=0A= .setHTML(resp);=0A= =0A= $('comments').replaceWith(new_div);=0A= }=0A= }).request();=0A= =0A= }=0A= =0A= function homepage_img_change(browser) {=0A= $ES('.homepage_button').each ( function (el) {=0A= curr_browser =3D el.id.split("_")[1];=0A= el.src =3D = '/static/shared/img/icons/ico_home_page_'+curr_browser+'_on.gif';=0A= });=0A= if (!browser)=0A= browser =3D selected_browser;=0A= =0A= $("image_"+browser).src =3D = '/static/shared/img/icons/ico_home_page_'+browser+'_off.gif';=0A= =0A= }=0A= =0A= function homepage_browser(browser_name)=0A= {=0A= new Ajax('/bin/homepage.php?browser=3D'+browser_name, {=0A= method: 'get',=0A= encoding: 'utf-8',=0A= update: $('MBOX_window'),=0A= onComplete: function () { homepage_insert(browser_name); }=0A= }).request();=0A= =0A= }=0A= =0A= function homepage_get_browser()=0A= {=0A= if (window.ie)=0A= return "ie";=0A= if (window.gecko)=0A= return "ff";=0A= if (window.webkit)=0A= return "safari";=0A= if (window.opera)=0A= return "opera";=0A= =0A= }=0A= //insert text into MBOX=0A= function homepage_insert(browser_name)=0A= {=0A= if (browser_name=3D=3D"firefox") browser_name=3D"ff";=0A= if (browser_name=3D=3D"explorer") browser_name=3D"ie";=0A= =0A= selected_browser =3D browser_name;=0A= homepage_img_change(browser_name);=0A= }=0A= =0A= function bookmark_show(siteURL)=0A= {=0A= =0A= =0A= if (window.ie)=0A= {=0A= =0A= var html_body =3D document.getElementsByTagName('body').item(0);=0A= var homepage_link =3D document.createElement('a');=0A= html_body.appendChild(homepage_link);=0A= homepage_link.style.display =3D 'none';=0A= =0A= homepage_link.style.behavior=3D'url(#default#homepage)';=0A= homepage_link.setHomePage(siteURL);=0A= =0A= }=0A= else=0A= {=0A= // hide for now - not translated yet=0A= mbox_open(450,200);=0A= if (window.gecko)=0A= {=0A= homepage_browser('firefox');=0A= }=0A= else if (window.webkit || window.webkit419 || window.webkit420)=0A= {=0A= homepage_browser('safari');=0A= }=0A= else if (window.opera =3D=3D 'Opera')=0A= {=0A= homepage_browser('opera');=0A= }=0A= /* else if (browser_name =3D=3D 'Netscape')=0A= {=0A= homepage_browser('netscape');=0A= }*/=0A= else {=0A= homepage_browser('explorer');=0A= }=0A= }=0A= =0A= }=0A= =0A= =0A= /* Opens MBOX on the webpage=0A= @author Matej Balanti=C4=8D =0A= */=0A= function mbox_open(MBOX_WIDTH,MBOX_HEIGHT,IS_DRAGGABLE)=0A= {=0A= flash_show(false);=0A= =0A= if ( typeof(IS_DRAGGABLE) =3D=3D "undefined" )=0A= IS_DRAGGABLE =3D true;=0A= =0A= // create holders if there isn't any=0A= mbox_create_holders( IS_DRAGGABLE );=0A= =0A= left_s =3D window.getWidth()/2 - MBOX_WIDTH/2;=0A= top_s =3D window.getScrollTop() +(window.getHeight() - MBOX_HEIGHT)/2;=0A= =0A= // push down if it is still above content=0A= if (top_s < 180)=0A= top_s =3D 180;=0A= =0A= $("MBOX_window").setStyles('left:'+left_s+'px; top: '+top_s+'px; = display:block;');=0A= $("MBOX_dragger").setStyles('left:'+left_s+'px; top: '+top_s+'px; = display:block;');=0A= =0A= $("MBOX_overlay").setStyles('display:block;');=0A= =0A= $("MBOX_overlay").setStyles({"height": window.getScrollHeight()+'px', = "width": window.getScrollWidth()+'px'});=0A= $("MBOX_window").setStyles({"width": MBOX_WIDTH+'px'});=0A= $("MBOX_dragger").setStyles({"width": MBOX_WIDTH+'px'});=0A= =0A= =0A= =0A= new Fx.Style('MBOX_overlay', 'opacity',{duration: 400, transition: = Fx.Transitions.sineInOut}).start(0,0.6);=0A= new Fx.Style('MBOX_window', 'opacity',{duration: 250, transition: = Fx.Transitions.sineInOut, onComplete:function(){ } }).start(0,1);=0A= }=0A= =0A= =0A= /* closes mbox=0A= @author Matej Balanti=C4=8D =0A= */=0A= function mbox_close()=0A= {=0A= =0A= new Fx.Style('MBOX_overlay', 'opacity',{duration: 400, transition: = Fx.Transitions.sineInOut, onComplete:function(){ = $("MBOX_overlay").setStyles('display:none;'); }}).start(0.6,0);=0A= new Fx.Style('MBOX_window', 'opacity',{duration: 250, transition: = Fx.Transitions.sineInOut, onComplete:function( )=0A= {=0A= $("MBOX_window").setStyles('display:none;');=0A= $("MBOX_window").innerHTML =3D '';=0A= flash_show(true);=0A= =0A= } }).start(1,0);=0A= $("MBOX_dragger").setStyles({"display": 'none'});=0A= =0A= }=0A= /**=0A= * Shows / hides all FLASH & IFRAME objects on the page=0A= * @param bool $display True when showing, false when hiding=0A= * @author Matej Balanti=C4=8D =0A= */=0A= function flash_show(display, div_name)=0A= {=0A= if (display)=0A= {=0A= stats =3D 'visible';=0A= IS_FLASH_SHOWN =3D true;=0A= }=0A= else=0A= {=0A= stats =3D 'hidden';=0A= IS_FLASH_SHOWN =3D false;=0A= }=0A= =0A= if (window.ie)=0A= flash_container =3D 'object';=0A= else=0A= flash_container =3D 'embed';=0A= =0A= // don't set style with mootools; doesn't work in IE6 =0A= $ES(flash_container,div_name).each ( function (el) {=0A= el.style.visibility =3D stats;=0A= });=0A= =0A= $ES('iframe', div_name).each ( function (el) {=0A= el.style.visibility =3D stats;=0A= });=0A= }=0A= /* makes mbox draggable & creates mbox holders=0A= @author Matej=0A= */=0A= function mbox_create_holders( is_draggable )=0A= {=0A= if ($('MBOX_overlay'))=0A= {=0A= $("MBOX_overlay").remove();=0A= $("MBOX_dragger").remove();=0A= $("MBOX_window").remove();=0A= }=0A= =0A= include_css('/static/shared/css/mbox.css');=0A= // CREATE MBOX HOLDERS=0A= =0A= var mbox_overlay =3D new Element('div', {=0A= 'id' : 'MBOX_overlay'=0A= })=0A= .injectInside(document.body);=0A= =0A= var mbox_dragger =3D new Element('div', {=0A= 'id': 'MBOX_dragger'=0A= })=0A= .injectInside(document.body);=0A= =0A= var mbox_window =3D new Element('div', {=0A= 'id': 'MBOX_window'=0A= })=0A= .injectInside(document.body);=0A= =0A= var mbox_window_loading =3D new Element('div', {=0A= 'id': 'MBOX_loading'=0A= })=0A= .injectInside(mbox_window);=0A= =0A= var mbox_window_loading_img =3D new Element('img', {=0A= 'src': "/static/shared/img/ajax-loader-white.gif",=0A= 'alt': 'Loading'=0A= })=0A= .injectInside(mbox_window_loading);=0A= =0A= // CREATE DROP=0A= if ( is_draggable ) {=0A= var main_content =3D $('left');=0A= =0A= mbox_dragger.addEvent('mousedown', function(e) {=0A= e =3D new Event(e).stop();=0A= mbox_window.setStyles({=0A= 'opacity':0.7=0A= });=0A= drag =3D mbox_window.makeDraggable({=0A= container: main_content=0A= }); // this returns the dragged element=0A= drag.start(e); // start the event manual=0A= });=0A= =0A= mbox_window.addEvent('emptydrop', function() =0A= {=0A= mbox_dragger.setStyles({=0A= 'left': this.getCoordinates().left,=0A= 'top': this.getCoordinates().top=0A= });=0A= mbox_window.setStyles({'opacity':1});=0A= drag.detach();=0A= });=0A= }=0A= }=0A= =0A= /*=0A= * * Image pool function - auto change images=0A= * @author Matej=0A= */=0A= function image_change(div_name, image_array, current_img)=0A= {=0A= var container =3D $(div_name);=0A= var all_imgs =3D image_array.length;=0A= =0A= if (all_imgs <=3D 1)=0A= return true;=0A= =0A= container.empty();=0A= myImg =3D new Element("img", {=0A= src: image_array[current_img]['url'],=0A= alt: image_array[current_img]['title'],=0A= title: image_array[current_img]['title']=0A= })=0A= .setStyle("border", 0)=0A= .setStyle("opacity", 0)=0A= .injectInside(container);=0A= =0A= myFx =3D new Fx.Style(myImg, 'opacity' , { duration: 500 = }).start(0,1);=0A= =0A= current_img =3D current_img+1;=0A= if (current_img>=3Dall_imgs)=0A= {=0A= current_img =3D 0;=0A= }=0A= =0A= return current_img;=0A= }=0A= =0A= /*=0A= * univrsally changes selected tab within box=0A= */=0A= function tab_toggle(obj, n){=0A= var liSelected =3D obj.parentNode;=0A= var i =3D 0; =0A= while(childNode =3DliSelected.parentNode.childNodes[i++]){=0A= if(is_valid_node1(childNode)) =0A= childNode.className =3D (childNode.id!=3DliSelected.id = ?"":"selected_tab");=0A= =0A= childNode=3Dnull;=0A= }=0A= =0A= i =3D 0;=0A= // now we show content of this div=0A= while (childNode =3DliSelected.parentNode.parentNode.childNodes[i++]) {=0A= if (is_valid_node1(childNode) && childNode.tagName=3D=3D'DIV'){=0A= //childNode.setStyle('display',((childNode.id =3D=3D = "tabbed_box_"+n) ? 'block':'none');=0A= if(childNode.id =3D=3D "div_"+liSelected.id){ =0A= childNode.style.display =3D 'block';=0A= //childNode.setStyle('display','block');=0A= }else {=0A= childNode.style.display =3D 'none';=0A= //childNode.setStyle('display','none'); =0A= }=0A= } =0A= childNode =3Dnull;=0A= }=0A= liSelected=3Dnull;=0A= obj=3Dnull;=0A= }=0A= =0A= /**=0A= * test dom element: true if nodeType is 1 and else ok (node should have = id)=0A= */=0A= function is_valid_node1(e){=0A= return (e.nodeType=3D=3D1 && e.name!=3D'undefined' && = e.id!=3D'undefined'&& e.id.length>0);=0A= }=0A= =0A= /*=0A= * adds swf object=0A= */=0A= function add_video_object(flv_params, flvplayer_div,width,height){=0A= so =3D new SWFObject(flv_params, flvplayer_div, width,height, = "7","#FFFFFF");=0A= so.addParam("wmode", "transparent");=0A= so.write(flvplayer_div);=0A= }=0A= =0A= =0A= /**=0A= * adds swf object=0A= */=0A= function add_comic_object(flv_params, flvplayer_div,width,height){=0A= so =3D new SWFObject(flv_params, flvplayer_div, width,height, = "7","#FFFFFF");=0A= so.addParam("wmode", "transparent");=0A= so.addVariable('submit', '/lbin/strip_handler.php');=0A= so.write(flvplayer_div);=0A= }=0A= =0A= =0A= /*=0A= * Function change tabs in news list or news vote list=0A= * @param keyword box keyword=0A= * @param div_name Name of the div to write in=0A= *=0A= */=0A= function change_news_tab(keyword, div_name) {=0A= $(keyword).setStyle('display', 'block');=0A= $(div_name).setStyle('display', 'none');=0A= }=0A= =0A= /*=0A= * Function returns folder name depends on site_id=0A= * @param integer site id of site=0A= */=0A= function get_site_folder_name(site){=0A= var sites =3D new Array();=0A= sites[10001] =3D 'bibaleze';=0A= sites[10002] =3D 'zadovoljna';=0A= sites[10004] =3D 'golfportal';=0A= sites[10005] =3D 'popotovanja';=0A= sites[10006] =3D 'volitve';=0A= sites[10008] =3D 'rebelde';=0A= sites[10009] =3D 'kmetija2';=0A= sites[10010] =3D 'popdocs';=0A= sites[10011] =3D 'catchup';=0A= sites[10012] =3D 'cekin';=0A= sites[10013] =3D 'labs';=0A= sites[10014] =3D 'kmetija3';=0A= sites[10015] =3D 'akademija';=0A= sites[10017] =3D 'maxtv';=0A= sites[10019] =3D 'talent';=0A= sites[10020] =3D 'live';=0A= =0A= if(site !=3D=3D undefined)=0A= return sites[site];=0A= else=0A= return 'default';=0A= }=0A= =0A= =0A= /*=0A= Function change font size for article=0A= */=0A= =0A= function change_font_size1(type) {=0A= =0A= var resize =3D 0;=0A= =0A= //limit increse to 1=0A= if (type =3D=3D 'increase' && default_font_size =3D=3D 4) {=0A= return false;=0A= }=0A= =0A= //limit decrese to 0=0A= if (type =3D=3D 'decrease' && default_font_size =3D=3D 0) {=0A= return false; =0A= }=0A= =0A= //set changes=0A= if (type =3D=3D 'decrease') {=0A= default_font_size =3D parseInt(default_font_size) - 1;=0A= resize =3D -2;=0A= } else if (type =3D=3D 'increase') {=0A= default_font_size =3D parseInt(default_font_size) + 1;=0A= resize =3D 2;=0A= } else if (type =3D=3D 'default') {=0A= resize =3D (1 - default_font_size) * 2;=0A= default_font_size =3D 1; =0A= } else=0A= resize =3D (default_font_size-1) * 2; =0A= =0A= //do resize=0A= $ES('h1,h2,h3,p','main_content').each ( function (el) {=0A= temp_size =3D parseInt(el.getStyle('fontSize')) + resize;=0A= el.style.fontSize =3D temp_size+'px';=0A= });=0A= =0A= //var img_path =3D '/static/'+app_lang+'/shared/img/backgrounds'; =0A= switch(site_id){=0A= case '10010':=0A= img_path =3D = '/static/'+app_lang+'/microsites/'+get_site_folder_name(site_id)+'/img/ba= ckgrounds';=0A= break;=0A= default:=0A= img_path =3D '/static/'+app_lang+'/shared/img/backgrounds';=0A= }=0A= =0A= //disable buttons=0A= if (default_font_size =3D=3D 4) {=0A= $('increase').innerHTML =3D '3D"Pove=C4=8Daj';=0A= $('decrease').innerHTML =3D ' ';=0A= $('default').innerHTML =3D ' ';=0A= } else if (default_font_size =3D=3D 0) {=0A= $('increase').innerHTML =3D ' ';=0A= $('decrease').innerHTML =3D '3D"Zmanj=C5=A1aj';=0A= $('default').innerHTML =3D ' ';=0A= } else if (default_font_size =3D=3D 1) {=0A= $('increase').innerHTML =3D ' ';=0A= $('decrease').innerHTML =3D ' ';=0A= $('default').innerHTML =3D '3D"Privzeta';=0A= } else {=0A= $('increase').innerHTML =3D ' ';=0A= $('decrease').innerHTML =3D ' ';=0A= $('default').innerHTML =3D ' ';=0A= }=0A= =0A= //sets cookie=0A= var myCookieSize =3D Cookie.set('default_font_size', = default_font_size,{path: '/'});=0A= =0A= }=0A= ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/shared/js/video.js /**=0A= * Functions for displaying video and audio players=0A= *=0A= * (c) PRO PLUS, 2008=0A= */=0A= =0A= /**=0A= * This variable will be set TRUE if page has video player=0A= */=0A= var video_player_on_page =3D false;=0A= =0A= /**=0A= * Function displays flash audio player=0A= */=0A= function flash_audio_show(m_id, m_dir, container)=0A= {=0A= flvplayer_div =3D 'flvvideo';=0A= if('undefined' !=3D=3D typeof container)=0A= {=0A= audio_media_id =3D m_id;=0A= audio_media_dir =3D m_dir;=0A= flvplayer_div =3D container + '_' + audio_media_id;=0A= }=0A= =0A= file_no_server =3D = '/'+section_video+'/'+audio_media_dir+'/'+audio_media_id+'.mp3';=0A= file =3D stream_server+file_no_server;=0A= =0A= flv_params =3D = "/static/shared/app/mp3player.swf?showdigits=3Dtrue&autostart=3D"+autosta= rt_audio[m_id]+"&showfsbutton=3Dfalse&file=3D"+file;=0A= =0A= so =3D new SWFObject(flv_params, flvplayer_div, 385, 20, "7", = "#FFFFFF");=0A= so.write(flvplayer_div);=0A= }=0A= =0A= /**=0A= * Function sets all parameters for pop player=0A= */=0A= function pplayer_audio_show(audio_seqno)=0A= {=0A= if (typeof(audio_seqno) =3D=3D "undefined")=0A= audio_seqno =3D 0;=0A= =0A= if (typeof(autostart_audio[amedia_id[audio_seqno]]) =3D=3D=3D = 'undefined')=0A= autostart_audio[amedia_id[audio_seqno]] =3D true;=0A= =0A= // we check if we'll not use default player dimensions=0A= if (typeof(aplayer_width) =3D=3D "undefined" && typeof(aplayer_height) = =3D=3D "undefined")=0A= {=0A= width =3D 416;=0A= height =3D 312;=0A= //height =3D parseInt(height) + 40;=0A= }=0A= else=0A= {=0A= width =3D aplayer_width;=0A= height =3D aplayer_height;=0A= //height =3D parseInt(height) + 40;=0A= =0A= if (width =3D=3D 'full' || height =3D=3D 'full')=0A= {=0A= width =3D '100%';=0A= height =3D '99%';=0A= }=0A= }=0A= =0A= // we set path to player swf file=0A= if (typeof(media_center_swf) =3D=3D "undefined")=0A= media_center_swf =3D '/static/'+app_lang+'/shared/app/MediaCenter.swf';=0A= =0A= so =3D new SWFObject(media_center_swf, 'mediacenter2', width, height, = '9');=0A= so.addParam('allowfullscreen', 'true');=0A= so.addParam('allowscriptaccess', 'always');=0A= so.addParam('wmode', 'transparent');=0A= =0A= so.addVariable('autostart', autostart_audio[amedia_id[audio_seqno]]);=0A= =0A= if (amedia_id[audio_seqno] =3D=3D '')=0A= so.addVariable('type', 'browse');=0A= else=0A= so.addVariable('media_id', amedia_id[audio_seqno]);=0A= =0A= so.addVariable('section_id', 'audio');=0A= =0A= =0A= // we can set new config file or append parameters to current one=0A= if (typeof(config_file) !=3D=3D 'undefined')=0A= so.addVariable('config_file', config_file);=0A= =0A= config_file_append =3D '';=0A= if (typeof(site_id) !=3D=3D 'undefined')=0A= config_file_append +=3D 'site_id=3D' + site_id + '%26';=0A= =0A= if (config_file_append !=3D '');=0A= so.addVariable('config_file_append', config_file_append);=0A= =0A= so.write('flvaudio_'+amedia_id[audio_seqno]);=0A= }=0A= =0A= =0A= =0A= /**=0A= * Function sets all parameters for pop player=0A= */=0A= function pplayer_video_show()=0A= {=0A= if (typeof(autostart) =3D=3D=3D 'undefined')=0A= autostart =3D true;=0A= =0A= // we check if we'll not use default player dimensions=0A= if (typeof(player_width) =3D=3D "undefined" && typeof(player_height) = =3D=3D "undefined")=0A= {=0A= width =3D 416;=0A= height =3D 312;=0A= height =3D parseInt(height) + 40;=0A= }=0A= else=0A= {=0A= width =3D player_width;=0A= height =3D player_height;=0A= height =3D parseInt(height) + 40;=0A= =0A= if (width =3D=3D 'full' || height =3D=3D 'full')=0A= {=0A= width =3D '100%';=0A= height =3D '99%';=0A= }=0A= }=0A= =0A= // we set path to player swf file=0A= if (typeof(media_center_swf) =3D=3D "undefined")=0A= media_center_swf =3D '/static/'+app_lang+'/shared/app/MediaCenter.swf';=0A= =0A= so =3D new SWFObject(media_center_swf, 'mediacenter2', width, height, = '9');=0A= so.addParam('allowfullscreen', 'true');=0A= so.addParam('allowscriptaccess', 'always');=0A= so.addParam('wmode', 'transparent');=0A= =0A= // if media_id is empty, we show main playlist as default in menu=0A= if (media_id =3D=3D '')=0A= so.addVariable('type', 'browse');=0A= else=0A= so.addVariable('media_id', media_id);=0A= =0A= if (typeof(player_openplaylist) !=3D=3D 'undefined' && = player_openplaylist !=3D '')=0A= so.addVariable('openplaylist', player_openplaylist);=0A= =0A= so.addVariable('ad_file', 'noad'); // hack..=0A= =0A= if (typeof(player_openplaylist) !=3D=3D 'undefined' && = player_openplaylist !=3D '')=0A= so.addVariable('openplaylist', player_openplaylist);=0A= =0A= // if video ad=0A= if ( (typeof(phpadsbanner_flash) !=3D=3D "undefined") && = (phpadsbanner_flash !=3D '') )=0A= {=0A= so.addVariable('ad_file', phpadsbanner_flash);=0A= if (phpadsbanner_flash_url)=0A= so.addVariable('ad_url', phpadsbanner_flash_url);=0A= so.addVariable('ad_type', 'preroll');=0A= }=0A= =0A= =0A= // user identifiers (session id - used for payable content; bit - used = for usertrack; userad_id - used for adserver)=0A= so.addVariable('session_id', Cookie.get('c4d'));=0A= so.addVariable('bit', Cookie.get('bit'));=0A= userad_id =3D Cookie.get('phpAds_id');=0A= if (!userad_id)=0A= userad_id =3D Cookie.get('bit');=0A= so.addVariable('userad_id', userad_id);=0A= =0A= =0A= if ((typeof(player_mute) !=3D=3D 'undefined') && (player_mute !=3D '')){=0A= so.addVariable('mute', player_mute);=0A= }=0A= =0A= if ((typeof(player_soundOnMove) !=3D=3D 'undefined') && = (player_soundOnMove !=3D '')){=0A= so.addVariable('soundOnMove', player_soundOnMove);=0A= }=0A= =0A= =0A= // section is used for ads and usertrack=0A= so.addVariable('section_id', section_id);=0A= =0A= // we need referer (site name) for usertrack=0A= preferer =3D '';=0A= if (typeof(player_referer) !=3D=3D 'undefined')=0A= preferer =3D player_referer;=0A= so.addVariable('referer', preferer);=0A= =0A= // color template of the player=0A= if (typeof(player_color) =3D=3D=3D 'undefined')=0A= player_color =3D '#000000';=0A= if (player_color !=3D 'none')=0A= so.addVariable('color', player_color);=0A= =0A= so.addVariable('autostart', autostart);=0A= =0A= // we can set new config file or append parameters to current one=0A= if (typeof(config_file) !=3D=3D 'undefined')=0A= so.addVariable('config_file', config_file);=0A= =0A= so.addVariable('banner', escape(banner_flashvar));=0A= =0A= config_file_append =3D '';=0A= // Need to specify why is next lines commented - comments removed=0A= if (typeof(site_id) !=3D=3D 'undefined')=0A= config_file_append +=3D 'site_id=3D' + site_id + '%26';=0A= =0A= // set for other player interface type ('mini')=0A= if (typeof(player_interface_type) !=3D=3D 'undefined')=0A= config_file_append +=3D 'interface_type=3D' + = player_interface_type[media_id] + '%26';=0A= =0A= if (typeof(player_big_playlist) !=3D=3D 'undefined')=0A= config_file_append +=3D 'big_playlist=3D' + player_big_playlist + = '%26';=0A= =0A= if (config_file_append !=3D '');=0A= so.addVariable('config_file_append', config_file_append);=0A= =0A= // if content is payable=0A= if (typeof(player_access_key) !=3D=3D 'undefined')=0A= so.addVariable('access_key', player_access_key);=0A= }=0A= =0A= /**=0A= * Functions displays warning instead of player if user does not have = flash or has flash version below 9=0A= */=0A= function video_no_flash()=0A= {=0A= $('flvvideo').innerHTML =3D _text_flash_no;=0A= }=0A= =0A= /**=0A= * Function decides if flash version on client side is fresh enough to = display video player=0A= */=0A= function video_show_player()=0A= {=0A= if ((flash_version =3D=3D 9 && flash_ver['rev'] !=3D 16) || = flash_version =3D=3D 10)=0A= video_setup_render_player();=0A= else=0A= video_no_flash();=0A= =0A= //this fixes the title after loading the video=0A= if(typeof titlefix =3D=3D 'function') titlefix();=0A= }=0A= =0A= /**=0A= * We set video ad, call player setup and render player=0A= */=0A= function video_setup_render_player(response)=0A= {=0A= eval(response);=0A= =0A= // set everything for display of the video=0A= pplayer_video_show();=0A= =0A= if ( (typeof(video_div) =3D=3D=3D 'undefined') || (video_div =3D=3D '') = )=0A= video_div =3D 'flvvideo';=0A= =0A= if ($(video_div))=0A= so.write( video_div );=0A= }=0A= =0A= /**=0A= * Main function called for showing video player=0A= */=0A= function video_player_setup()=0A= {=0A= video_show_player(); =0A= }=0A= video_loading =3D Array();=0A= /**=0A= * Function for displaying video player when clicking on thumbnail on a = website=0A= */=0A= function video_at_thumb( video_id, div_id, width, height, _90secplayer, = diff, bgcolor )=0A= {=0A= if ( typeof(width) !=3D 'undefined' )=0A= player_width =3D width;=0A= =0A= if ( typeof(height) !=3D 'undefined' )=0A= player_height =3D height;=0A= =0A= if ( thumb_div_id !=3D '' )=0A= video_at_thumb_previous();=0A= =0A= var div =3D $(div_id);=0A= =0A= if ( typeof(div) =3D=3D 'undefined' )=0A= return;=0A= =0A= if ( typeof(diff) =3D=3D 'undefined' )=0A= diff =3D 0;=0A= =0A= if ( typeof(show_banners) =3D=3D 'undefined' )=0A= show_banners =3D 0;=0A= =0A= if ( typeof(bgcolor) =3D=3D 'undefined' )=0A= bgcolor =3D "#FFFFFF";=0A= =0A= thumb_div_html =3D div.innerHTML;=0A= thumb_div_id =3D div_id;=0A= =0A= video_div =3D div_id;=0A= media_id =3D video_id;=0A= =0A= //check for RO site=0A= if (app_lang =3D=3D 'ro')=0A= {=0A= if (flash_version >=3D 9 && flash_ver['rev'] !=3D 16 && = !video_loading[video_id])=0A= {=0A= //video_loading[video_id] =3D 1;=0A= if (!dom_ready) =0A= {=0A= window.addEvent('domready', function() {=0A= video_setup_render_player(); =0A= });=0A= }=0A= else=0A= video_setup_render_player();=0A= =0A= return true;=0A= }=0A= else=0A= {=0A= $(div_id).setStyle('width', '400px');=0A= $(div_id).setStyle('height', '300px');=0A= $(div_id).innerHTML =3D _text_flash_no;=0A= return;=0A= }=0A= }=0A= =0A= if ( flash_version < 9) {=0A= $(video_div).onclick =3D function () { document.location.href =3D = 'http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=3DS= hockwaveFlash&promoid=3DBIOW' };=0A= if ( $('image_pool') )=0A= $('image_pool').href =3D = "http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=3DS= hockwaveFlash&promoid=3DBIOW";=0A= $(div_id).innerHTML =3D _text_flash_no;=0A= thumb_div_html =3D _text_flash_no;=0A= return;=0A= }=0A= =0A= if ( video_id !=3D 'undefined' && parseInt(video_id) ) {=0A= if ( diff !=3D 0) {=0A= $(video_div).setStyle('height', = $(video_div).getStyle('height').toInt() + diff.toInt());=0A= thumb_div_diff =3D diff;=0A= } else=0A= thumb_div_diff =3D 0; //reset height change=0A= =0A= if ( typeof(_90secplayer) =3D=3D=3D 'undefined' || _90secplayer = =3D=3D=3D false ) {=0A= player_hide_ads =3D true;=0A= video_player_setup();=0A= } else { //if we have _90secplayer passed in as argument, we show = small player ( like on 90sec box on frontpage )=0A= var player_url =3D "/static/cz/main/swf/90sec.swf?flv=3D"+video_id=0A= var so =3D new SWFObject(player_url, "90secplayer", = player_width, player_height+diff, "9", bgcolor);=0A= so.write(video_div);=0A= }=0A= }=0A= }=0A= =0A= function video_at_thumb_previous()=0A= {=0A= var div =3D $(thumb_div_id);=0A= =0A= if ( typeof(div) !=3D 'undefined' ) =0A= div.innerHTML =3D thumb_div_html;=0A= =0A= if (thumb_div_diff !=3D 0)=0A= $(thumb_div_id).setStyle('height', div.getStyle('height').toInt() - = thumb_div_diff.toInt()); =0A= =0A= }=0A= =0A= /**=0A= * Function for displaying promo player=0A= * Promo player in player which plays video only in fullscreen, in = normal state it only display thumbnail given through flashvar=0A= */=0A= function video_show_promo_player(promo_image)=0A= {=0A= window.addEvent('domready', function()=0A= {=0A= if ( flash_version < 9) {=0A= $("promo_player").innerHTML =3D '' + _text_flash_no + '';=0A= return;=0A= }=0A= =0A= var pbanner =3D new = SWFObject("/static/"+app_lang+"/shared/app/MediaCenter.swf", = "MediaCenter_banner", "250", "205", "9");=0A= pbanner.addVariable('type', 'promo');=0A= pbanner.addVariable('promo_image', promo_image);=0A= pbanner.addVariable('bit', Cookie.get('bit'));=0A= pbanner.addVariable('color', '000000');=0A= pbanner.addVariable('userad_id', Cookie.get('bit'));=0A= pbanner.addParam('allowfullscreen', 'true');=0A= pbanner.write("promo_player");=0A= });=0A= }=0A= /*=0A= * Function which send request to media send script=0A= * @param div_name Name of the div to write in=0A= * @param script_name name of the script to execute=0A= * @param text_ok text if media was sent=0A= * @param text_error text if there goes something wrong=0A= *=0A= */=0A= function mediaSend(div_name,script_name,text_ok, text_error) {=0A= =0A= new Ajax(script_name, {=0A= method: 'post',=0A= encoding: 'utf-8',=0A= postBody: document.media_send,=0A= onComplete: function(response) {=0A= =0A= switch(response)=0A= {=0A= case 'OK':=0A= $(div_name).innerHTML =3D text_ok;=0A= try {=0A= $("email_to").value =3D "";=0A= } catch (r) {null;}=0A= break;=0A= case 'INCOMPLETE_INFO':=0A= $(div_name).innerHTML =3D incomplete_info;=0A= break;=0A= case 'INVALID_FROM_EMAIL':=0A= $(div_name).innerHTML =3D invalid_from_email;=0A= break;=0A= case 'INVALID_TO_EMAIL':=0A= $(div_name).innerHTML =3D invalid_to_email;=0A= break;=0A= case 'INVALID_CAPTCHA':=0A= $(div_name).innerHTML =3D invalid_captcha;=0A= break;=0A= case 'MEDIA_ALREADY_SENT':=0A= $(div_name).innerHTML =3D media_already_sent;=0A= break;=0A= case 'INVALID_REQUEST':=0A= $(div_name).innerHTML =3D invalid_request;=0A= break;=0A= default:=0A= $(div_name).innerHTML =3D text_error;=0A= }=0A= }=0A= }).request();=0A= =0A= }=0A= =0A= /**=0A= * Function display banner ad inside of video banner ad holder=0A= * Function is callend when banner is attched to the video ad inside of = the video player=0A= */=0A= function player_append(content)=0A= {=0A= html_content =3D '';=0A= if (content =3D=3D '')=0A= html_content =3D '';=0A= =0A= $('div_banner_VIDEO_IMG').setHTML(html_content);=0A= }=0A= =0A= /**=0A= * Function logs view of an ad with external monitoring script=0A= */=0A= function ad_log_view(id)=0A= {=0A= var logFrame =3D new Element('iframe', {=0A= width: '0',=0A= height: '0',=0A= src: '/adserver/adjs_external.php?id=3D'+id,=0A= border: '0'=0A= });=0A= logFrame.injectInside(document.body);=0A= }=0A= ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/shared/js/video_mbox.js get_position =3D function(obj)=0A= {=0A= var curleft =3D curtop =3D 0;=0A= if (obj.offsetParent)=0A= {=0A= curleft =3D obj.offsetLeft;=0A= curtop =3D obj.offsetTop;=0A= while (obj =3D obj.offsetParent)=0A= {=0A= curleft +=3D obj.offsetLeft;=0A= curtop +=3D obj.offsetTop;=0A= }=0A= }=0A= this.top =3D curtop;=0A= this.left =3D curleft;=0A= return this;=0A= }=0A= =0A= =0A= // media_id holder=0A= //media_id =3D null;=0A= /**=0A= * Function prepares window and calls ajax script for site_iddisplays = video player in mbox playing given media_id=0A= * @author Anze Znidarsic =0A= * @authow mabram created for kmetija3 teasers. site_id and app_lang = harcoded!!!!!=0A= */=0A= function playerVideoPreview(mid)=0A= {=0A= media_id =3D mid;=0A= pre_fullscreen();=0A= moobox_create();=0A= moobox_open(640, 400, true);=0A= playerVideoPreviewShow(1);=0A= }=0A= =0A= /**=0A= * Function displays video player=0A= * @author Anze Znidarsic =0A= */=0A= function playerVideoPreviewShow(site_id)=0A= {=0A= so =3D new SWFObject('/static/slo/shared/app/MediaCenter.swf', = 'mediacenter', '640', '400', '9');=0A= so.addParam('allowfullscreen', 'true');=0A= so.addVariable('media_id', media_id);=0A= so.addVariable('section_id', 'kmetija3');=0A= so.addVariable('color', '#000000');=0A= so.addVariable('fullscreen', 'off');=0A= so.addVariable('config_file_append', 'site_id=3D'+site_id);=0A= =0A= $('MBOX_window').empty();=0A= =0A= new Element('div', {'class': 'right'}).setHTML('').injectInside($('MBOX_window'));=0A= new Element('div', {'id': 'player'}).injectInside($('MBOX_window'));=0A= so.write('player'); =0A= }=0A= =0A= function moobox_create()=0A= {=0A= //mbox=0A= var html_body =3D document.getElementsByTagName('body').item(0);=0A= =0A= var mbox_overlay =3D document.createElement('div');=0A= mbox_overlay.setAttribute('id', 'MBOX_overlay');=0A= html_body.appendChild(mbox_overlay);=0A= =0A= var mbox_window =3D document.createElement('div');=0A= mbox_window.setAttribute('id', 'MBOX_window');=0A= html_body.appendChild(mbox_window);=0A= =0A= /*var mbox_window_loading =3D document.createElement('div');=0A= mbox_window_loading.setAttribute('id','MBOX_loading');=0A= mbox_window.appendChild(mbox_window_loading);=0A= =0A= var mbox_window_loading_img =3D document.createElement('img');=0A= mbox_window_loading_img.src=3D = "/static/shared/img/ajax-loader-white.gif";=0A= mbox_window_loading.appendChild(mbox_window_loading_img);*/=0A= }=0A= =0A= function moobox_open(MBOX_WIDTH, MBOX_HEIGHT)=0A= {=0A= $("MBOX_window").setStyles({"left": (window.getWidth()/2 - = MBOX_WIDTH/2)+'px', "top": '100px', "position": 'fixed', = "display":'block'});=0A= =0A= $("MBOX_overlay").setStyles({"display": 'block'});=0A= =0A= $("MBOX_overlay").setStyles({"height": window.getScrollHeight()+'px', = "width": window.getScrollWidth()+'px'});=0A= $("MBOX_window").setStyles({"width": MBOX_WIDTH+'px'});=0A= =0A= new Fx.Style('MBOX_overlay', 'opacity',{duration: 400, transition: = Fx.Transitions.sineInOut}).start(0,0.6);=0A= new Fx.Style('MBOX_window', 'opacity',{duration: 250, transition: = Fx.Transitions.sineInOut, onComplete:function(){ } }).start(0,1);=0A= }=0A= =0A= function moobox_close()=0A= {=0A= new Fx.Style('MBOX_overlay', 'opacity',{duration: 400, transition: = Fx.Transitions.sineInOut, onComplete:function(){ = $("MBOX_overlay").setStyles('display:none;'); }}).start(0.6,0);=0A= new Fx.Style('MBOX_window', 'opacity',{duration: 250, transition: = Fx.Transitions.sineInOut, onComplete:function(){ = $("MBOX_window").setStyles('display:none;'); } }).start(1,0);=0A= $('MBOX_window').innerHTML=3D'';=0A= }=0A= ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/shared/js/swfobject.js /**=0A= * SWFObject v1.5: Flash Player detection and embed - = http://blog.deconcept.com/swfobject/=0A= *=0A= * SWFObject is (c) 2007 Geoff Stearns and is released under the MIT = License:=0A= * http://www.opensource.org/licenses/mit-license.php=0A= *=0A= */=0A= if(typeof deconcept=3D=3D"undefined"){var deconcept=3Dnew = Object();}if(typeof = deconcept.util=3D=3D"undefined"){deconcept.util=3Dnew = Object();}if(typeof = deconcept.SWFObjectUtil=3D=3D"undefined"){deconcept.SWFObjectUtil=3Dnew = Object();}deconcept.SWFObject=3Dfunction(_1,id,w,h,_5,c,_7,_8,_9,_a){if(!= document.getElementById){return;}this.DETECT_KEY=3D_a?_a:"detectflash";th= is.skipDetect=3Ddeconcept.util.getRequestParameter(this.DETECT_KEY);this.= params=3Dnew Object();this.variables=3Dnew = Object();this.attributes=3Dnew = Array();if(_1){this.setAttribute("swf",_1);}if(id){this.setAttribute("id"= ,id);}if(w){this.setAttribute("width",w);}if(h){this.setAttribute("height= ",h);}if(_5){this.setAttribute("version",new = deconcept.PlayerVersion(_5.toString().split(".")));}this.installedVer=3Dd= econcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&= &this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=3Dtrue;}if(c= ){this.addParam("bgcolor",c);}var = q=3D_7?_7:"high";this.addParam("quality",q);this.setAttribute("useExpress= Install",false);this.setAttribute("doExpressInstall",false);var = _c=3D(_8)?_8:window.location;this.setAttribute("xiRedirectUrl",_c);this.s= etAttribute("redirectUrl","");if(_9){this.setAttribute("redirectUrl",_9);= }};deconcept.SWFObject.prototype=3D{useExpressInstall:function(_d){this.x= iSWFPath=3D!_d?"expressinstall.swf":_d;this.setAttribute("useExpressInsta= ll",true);},setAttribute:function(_e,_f){this.attributes[_e]=3D_f;},getAt= tribute:function(_10){return = this.attributes[_10];},addParam:function(_11,_12){this.params[_11]=3D_12;= },getParams:function(){return = this.params;},addVariable:function(_13,_14){this.variables[_13]=3D_14;},g= etVariable:function(_15){return = this.variables[_15];},getVariables:function(){return = this.variables;},getVariablePairs:function(){var _16=3Dnew Array();var = key;var _18=3Dthis.getVariables();for(key in = _18){_16[_16.length]=3Dkey+"=3D"+_18[key];}return = _16;},getSWFHTML:function(){var = _19=3D"";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.l= ength){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplay= erType","PlugIn");this.setAttribute("swf",this.xiSWFPath);}_19=3D"0){_19+=3D"flashvar= s=3D\""+_1c+"\"";}_19+=3D"/>";}else{if(this.getAttribute("doExpressInstal= l")){this.addVariable("MMplayerType","ActiveX");this.setAttribute("swf",t= his.xiSWFPath);}_19=3D"";_19+=3D"";var = _1d=3Dthis.getParams();for(var key in _1d){_19+=3D"";}var = _1f=3Dthis.getVariablePairs().join("&");if(_1f.length>0){_19+=3D"";}_19+=3D"";}return = _19;},write:function(_20){if(this.getAttribute("useExpressInstall")){var = _21=3Dnew = deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(_21= )&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.= setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",es= cape(this.getAttribute("xiRedirectUrl")));document.title=3Ddocument.title= .slice(0,47)+" - Flash Player = Installation";this.addVariable("MMdoctitle",document.title);}}if(this.ski= pDetect||this.getAttribute("doExpressInstall")||this.installedVer.version= IsValid(this.getAttribute("version"))){var n=3D(typeof = _20=3D=3D"string")?document.getElementById(_20):_20;n.innerHTML=3Dthis.ge= tSWFHTML();return = true;}else{if(this.getAttribute("redirectUrl")!=3D""){document.location.r= eplace(this.getAttribute("redirectUrl"));}}return = false;}};deconcept.SWFObjectUtil.getPlayerVersion=3Dfunction(){var = _23=3Dnew = deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeType= s.length){var x=3Dnavigator.plugins["Shockwave = Flash"];if(x&&x.description){_23=3Dnew = deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replac= e(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{if(navigator.userAgent&&nav= igator.userAgent.indexOf("Windows CE")>=3D0){var axo=3D1;var = _26=3D3;while(axo){try{_26++;axo=3Dnew = ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);_23=3Dnew = deconcept.PlayerVersion([_26,0,0]);}catch(e){axo=3Dnull;}}}else{try{var = axo=3Dnew = ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var = axo=3Dnew ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=3Dnew = deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess=3D"always";}catch= (e){if(_23.major=3D=3D6){return _23;}}try{axo=3Dnew = ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}if(axo!=3Dnull= ){_23=3Dnew deconcept.PlayerVersion(axo.GetVariable("$version").split(" = ")[1].split(","));}}}return = _23;};deconcept.PlayerVersion=3Dfunction(_29){this.major=3D_29[0]!=3Dnull= ?parseInt(_29[0]):0;this.minor=3D_29[1]!=3Dnull?parseInt(_29[1]):0;this.r= ev=3D_29[2]!=3Dnull?parseInt(_29[2]):0;};deconcept.PlayerVersion.prototyp= e.versionIsValid=3Dfunction(fv){if(this.majorfv.major){return = true;}if(this.minorfv.minor){return true;}if(this.rev=3D0;i--){_2f[i].style.display=3D"none";for(var x in = _2f[i]){if(typeof = _2f[i][x]=3D=3D"function"){_2f[i][x]=3Dfunction(){};}}}};if(deconcept.SWF= Object.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.pre= pUnload=3Dfunction(){__flash_unloadHandler=3Dfunction(){};__flash_savedUn= loadHandler=3Dfunction(){};window.attachEvent("onunload",deconcept.SWFObj= ectUtil.cleanupSWFs);};window.attachEvent("onbeforeunload",deconcept.SWFO= bjectUtil.prepUnload);deconcept.unloadSet=3Dtrue;}}if(!document.getElemen= tById&&document.all){document.getElementById=3Dfunction(id){return = document.all[id];};}var = getQueryParamValue=3Ddeconcept.util.getRequestParameter;var = FlashObject=3Ddeconcept.SWFObject;var SWFObject=3Ddeconcept.SWFObject; = var flash_ver =3D deconcept.SWFObjectUtil.getPlayerVersion(); var = flash_version =3D flash_ver['major'];=0A= ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/shared/js/banners.js // where to get banners?=0A= var loc =3D document.location.href;=0A= =0A= var cookie_path =3D "";=0A= var banners_load_skip_domready =3D true;=0A= =0A= // banner array=0A= // 0: position name=0A= // 1: position id from the 24ur.banner_location table=0A= // 2:
id, where banner is included=0A= // 3: banner invocation code (function banners_get fills this property)=0A= // 4: banner type: 0: normal, 1: floater, 2: popup, 3: text, 4:normal, = but do not document.write banner=0A= =0A= if ( show_banners=3D=3D=3Dundefined )=0A= var show_banners=3D"";=0A= =0A= banners =3D new Array();=0A= =0A= // rollbanner_check has reference to a rollbanner DIV that needs to be = closed when mouse leaves orig banner=0A= var rollbanner_check =3D false;=0A= =0A= // rollbanner is an array filled with data needed to display rollbanner. = MAX creates=0A= // this array and writes it into append HTML property of original = banner=0A= var rollbanner =3D false;=0A= =0A= // connect_zone and connect_banner are used to connect two banners:=0A= // if some banner exports these two variables, then only banner 1234 = will be shown in zone=0A= // 136). Banenr that exports these two variables _must_ be shown = before zone 136.=0A= var connect_zone =3D false;=0A= var connect_banner =3D false;=0A= =0A= // through this variable rollbanner knows who is his parent. Every DIV = must fill this variable with DIV-s id=0A= var current_div =3D "";=0A= =0A= // this variable holds functions that are executed when banner calls = praHide=0A= var praHide_functions =3D false;=0A= =0A= /**=0A= * Function returns banner array and creates invocation code for every = banner=0A= * @param int section_id Current page section_id=0A= */=0A= function banners_get(section_id)=0A= { =0A= if ((!section_id) || (section_id=3D=3D'undefined'))=0A= return false;=0A= =0A= section_id =3D parseInt(section_id);=0A= if (isNaN(section_id))=0A= return false;=0A= =0A= for (i=3D0; i
\n";=0A= =0A= return banner;=0A= }=0A= =0A= /**=0A= * Function returns JS for normal banner=0A= */=0A= function banner_get_normal(zoneid, bannerid) {=0A= =0A= var awrz_rnd =3D Math.floor(Math.random()*99999999999);=0A= =0A= if (!document.phpAds_used) document.phpAds_used =3D ',';=0A= =0A= banner =3D "/adserver/adjs_i.php?n=3D" + zoneid;=0A= banner +=3D "&zoneid=3D" + zoneid + "&bannerid=3D" + bannerid + = "&target=3D_blank";=0A= banner +=3D "&exclude=3D" + document.phpAds_used;=0A= banner +=3D "&loc=3D" + escape(window.location);=0A= if ( typeof(uga_seqno) !=3D=3D 'undefined' )=0A= banner +=3D "&banner_type=3Duga&uga_seqno=3D" + uga_seqno + = "&uga_zoneid=3D" + uga_zoneid;=0A= if (document.referrer)=0A= banner +=3D "&referer=3D" + escape(document.referrer);=0A= banner +=3D '&r=3D' + awrz_rnd;=0A= banner +=3D "&ct0=3D" + escape(document.phpAds_ct0);=0A= =0A= return banner;=0A= }=0A= =0A= /**=0A= * Function returns JS for normal banner=0A= */=0A= function banner_get_code(zoneid, bannerid) {=0A= =0A= var awrz_rnd =3D Math.floor(Math.random()*99999999999);=0A= =0A= if (!document.phpAds_used) document.phpAds_used =3D ',';=0A= =0A= banner =3D "<" + "script language=3D'JavaScript' = type=3D'text/javascript' src=3D'";=0A= banner +=3D "/adserver/adjs.php?n=3D" + zoneid;=0A= banner +=3D "&zoneid=3D" + zoneid + "&bannerid=3D" + bannerid + = "&target=3D_blank";=0A= banner +=3D "&exclude=3D" + document.phpAds_used;=0A= banner +=3D "&loc=3D" + escape(window.location);=0A= if (document.referrer)=0A= banner +=3D "&referer=3D" + escape(document.referrer);=0A= banner +=3D '&r=3D' + awrz_rnd;=0A= banner +=3D "&ct0=3D" + escape(document.phpAds_ct0);=0A= =0A= banner +=3D "'><" + "/script>\n";=0A= =0A= return banner;=0A= }=0A= =0A= /**=0A= * Function returns JS for normal banner. JS does not document.write = this banner, it is left only in 'phpadsbanner' variable.=0A= */=0A= function banner_get_normal_variable(zoneid, bannerid) {=0A= =0A= var awrz_rnd =3D Math.floor(Math.random()*99999999999);=0A= =0A= if (!document.phpAds_used) document.phpAds_used =3D ',';=0A= =0A= banner =3D "/adserver/adjs_var_i.php?n=3D" + zoneid;=0A= banner +=3D "&zoneid=3D" + zoneid + "&bannerid=3D" + bannerid + = "&target=3D_blank";=0A= banner +=3D "&exclude=3D" + document.phpAds_used;=0A= banner +=3D "&loc=3D" + escape(window.location);=0A= if (document.referrer)=0A= banner +=3D "&referer=3D" + escape(document.referrer);=0A= banner +=3D '&r=3D' + awrz_rnd;=0A= banner +=3D "&ct0=3D" + escape(document.phpAds_ct0);=0A= =0A= return banner;=0A= }=0A= =0A= /**=0A= * Function returns JS for floating banner=0A= */=0A= function banner_get_floater(zoneid, bannerid) {=0A= banner =3D "";=0A= return banner;=0A= }=0A= =0A= /**=0A= * Function returns JS for popup banner=0A= */=0A= function banner_get_popup(zoneid, bannerid) {=0A= banner =3D "<" + "/script>";=0A= =0A= return banner;=0A= }=0A= =0A= /**=0A= * Function returns JS for contextual banner=0A= */=0A= function banner_get_contextual(zoneid, bannerid) {=0A= =0A= var awrz_rnd =3D Math.floor(Math.random()*99999999999);=0A= if (!document.phpAds_used) document.phpAds_used =3D ',';=0A= =0A= banner =3D "<" + "script language=3D'JavaScript' = type=3D'text/javascript' src=3D'";=0A= banner +=3D "/adserver/adjs_contextual.php?n=3D" + zoneid + "";=0A= banner +=3D "&bannerid=3D" + bannerid + "&target=3D_blank";=0A= banner +=3D "&exclude=3D" + document.phpAds_used;=0A= banner +=3D "&loc=3D" + escape(window.location);=0A= if (document.referrer)=0A= banner +=3D "&referer=3D" + escape(document.referrer);=0A= banner +=3D '&r=3D' + awrz_rnd;=0A= banner +=3D "&ct0=3D" + escape(document.phpAds_ct0);=0A= banner +=3D "'><" + "/script>";=0A= =0A= return banner;=0A= }=0A= =0A= /**=0A= * Function returns banner invocation code in a hidden DIV=0A= */=0A= function banner_get_text_hidden( zoneid, bannerid, banner_data ) {=0A= =0A= var awrz_rnd =3D Math.floor(Math.random()*99999999999);=0A= if (!document.phpAds_used) document.phpAds_used =3D ',';=0A= =0A= banner =3D "<" + "script language=3D'JavaScript' = type=3D'text/javascript' src=3D'";=0A= banner +=3D "/adserver/adjs_div.php?n=3D" + zoneid + "";=0A= banner +=3D "&bannerid=3D" + bannerid + "&target=3D_blank";=0A= banner +=3D "&zonename=3D" + banner_data[0] + "&zoneid=3D" + = zoneid + "";=0A= banner +=3D "&exclude=3D" + document.phpAds_used;=0A= banner +=3D "&loc=3D" + escape(window.location);=0A= if (document.referrer)=0A= banner +=3D "&referer=3D" + escape(document.referrer);=0A= banner +=3D '&r=3D' + awrz_rnd;=0A= banner +=3D "&ct0=3D" + escape(document.phpAds_ct0);=0A= banner +=3D "'><" + "/script>";=0A= =0A= return banner;=0A= }=0A= =0A= /**=0A= * Returns bannerid if some other banner has connected this zone with a = certain banner=0A= */=0A= function banner_zone_is_connected( zoneid ) {=0A= if ( !connect_zone || !connect_banner )=0A= return false;=0A= =0A= if ( connect_zone =3D=3D zoneid )=0A= return connect_banner;=0A= =0A= connect_zone =3D connect_zone + '';=0A= =0A= if ( connect_zone.indexOf(',') !=3D -1 ) {=0A= var tmp =3D ',' + connect_zone + ',';=0A= if ( tmp.indexOf(',' + zoneid + ',') >=3D 0 )=0A= return connect_banner;=0A= }=0A= =0A= return false;=0A= }=0A= =0A= =0A= /**=0A= * Function returns banner invocation code for certain position=0A= *=0A= * @param string position One position from banners array that inv. code = will be returned for.=0A= */=0A= function banner_show(position) {=0A= for (i=3D0; i pos_x) && (dim[1] < pos_y) = && (dim[3] > pos_y);=0A= }=0A= =0A= /**=0A= * This function is executed, when mouse exits banner space.=0A= * Function hides rollbanner div.=0A= */=0A= function banner_mousemove(evt) {=0A= =0A= if (typeof(rollbanner_check) =3D=3D 'undefined') return;=0A= =0A= if (rollbanner_check) {=0A= var orig =3D banner_find_div(rollbanner[0]);=0A= =0A= orig_dim =3D banner_get_dimensions(orig);=0A= roll_dim =3D banner_get_dimensions(rollbanner_check);=0A= =0A= if (document.all) {=0A= if (document.documentElement.scrollTop) sy =3D = document.documentElement.scrollTop;=0A= else sy =3D document.body.scrollTop;=0A= =0A= x =3D = event.clientX+document.documentElement.scrollLeft;=0A= y =3D event.clientY+sy;=0A= =0A= } else {=0A= x =3D evt.pageX;=0A= y =3D evt.pageY;=0A= }=0A= =0A= if (!banner_is_inside(orig_dim, x, y) && = !banner_is_inside(roll_dim, x, y)) {=0A= =0A= document.onmousemove =3D null;=0A= =0A= rollbanner_check.style.visibility =3D "hidden";=0A= rollbanner_check.style.left =3D "0px";=0A= rollbanner_check.style.top =3D "0px";=0A= rollbanner_check.style.width =3D "0px";=0A= rollbanner_check.style.height =3D "0px";=0A= =0A= rollbanner_check =3D false;=0A= if (!document.all) orig.innerHTML =3D = orig.innerHTML;=0A= }=0A= }=0A= }=0A= =0A= /**=0A= * Function returns object's absolute X position=0A= */=0A= function banner_position_x(obj) {=0A= var x =3D 0;=0A= while (obj.offsetParent) {=0A= x =3D x + obj.offsetLeft=0A= obj =3D obj.offsetParent;=0A= }=0A= return x;=0A= }=0A= =0A= /**=0A= * Function returns object's absolute Y position=0A= */=0A= function banner_position_y(obj) {=0A= var y =3D 0;=0A= while (obj.offsetParent) {=0A= y =3D y + obj.offsetTop=0A= obj =3D obj.offsetParent;=0A= }=0A= return y;=0A= }=0A= =0A= =0A= /**=0A= * Function loads MAX page for banner text=0A= */=0A= function banner_video_flash()=0A= {=0A= var zoneid =3D "" + section_id + "41";=0A= var banner =3D "";=0A= =0A= connected_banner =3D banner_zone_is_connected( zoneid );=0A= =0A= if ( connected_banner )=0A= search_str =3D "&bannerid=3D" + connected_banner;=0A= else=0A= search_str =3D "&zoneid=3D" + zoneid;=0A= =0A= var awrz_rnd =3D Math.floor(Math.random()*99999999999);=0A= =0A= //banner =3D "<" + "script language=3D'JavaScript' = type=3D'text/javascript' src=3D'";=0A= banner =3D "/adserver/adjs_flash.php?n=3D" + zoneid;=0A= banner +=3D search_str + "&target=3D_blank";=0A= banner +=3D "&exclude=3D" + document.phpAds_used;=0A= banner +=3D "&loc=3D" + escape(window.location);=0A= if (document.referrer)=0A= banner +=3D "&referer=3D" + escape(document.referrer);=0A= banner +=3D '&r=3D' + awrz_rnd;=0A= banner +=3D "&ct0=3D" + escape(document.phpAds_ct0);=0A= //banner +=3D "'><" + "/script>";=0A= return banner;=0A= }=0A= =0A= =0A= //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~= ~~=0A= // Rollbanner will be shown inside this DIV=0A= //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~= ~~=0A= document.write('
');=0A= document.write('
Loading...
');=0A= =0A= //-->=0A= =0A= =0A= function load_banner(banner_location)=0A= {=0A= var banner_index =3D -1;=0A= =0A= for (i=3D0; i -1) ) {=0A= // banners[banner_index][8] can be:=0A= // 0: show as iframe banner=0A= // 1: show as a banner inside DIV=0A= if ( banners[banner_index][8] =3D=3D 0 ) {=0A= if ( $('div_banner_'+banner_location) ) {=0A= $('div_banner_'+banner_location).innerHTML =3D '';=0A= }=0A= } else {=0A= // raztegljiv oglas=0A= document.write( banner_show(banner_location) );=0A= }=0A= }=0A= } catch(error) {=0A= return 0; =0A= }=0A= }=0A= =0A= /**=0A= * This is called after page loads.=0A= * Loads all banners in a single call. It also shows video player, = because it needs to be called=0A= * after we have banners (so that player knows what banner to show)=0A= *=0A= * **** Not used ****=0A= */=0A= function load_banners()=0A= {=0A= var url =3D '/adserver/adall.php?positions=3D' + = escape(positions);=0A= =0A= // if video_on_page is not set, MAX will not return banners that are = linked with video banners=0A= if ( video_player_on_page =3D=3D=3D false )=0A= url +=3D "&video_on_page=3D0";=0A= else=0A= url +=3D "&video_on_page=3D1";=0A= =0A= var request =3D new Ajax(url, {=0A= onComplete: load_banners_finish,=0A= method: 'get'=0A= }).request();=0A= }=0A= =0A= /**=0A= * Returns ID of banner positions that are active for current site=0A= */=0A= function banner_positions() {=0A= var positions =3D "";=0A= =0A= for (i=3D0; i 0)=0A= bannerid =3D bannerid.substring(0,bannerid.indexOf("&"));=0A= =0A= if (bannerloc.indexOf("&") > 0)=0A= bannerloc =3D bannerloc.substring(0,bannerloc.indexOf("&"));=0A= =0A= var zoneid =3D "";=0A= =0A= for (i=3D0; i';=0A= }=0A= }=0A= =0A= var phpadsbanner_flash_beacon =3D "";=0A= var phpadsbanner_flash =3D "";=0A= var video_flash_banner_id =3D "";=0A= var connect_banner=3D"";=0A= var connect_zone=3D"";=0A= =0A= // we remove video+flash ad from page and reset variables=0A= function banner_remove_video_flash()=0A= {=0A= phpadsbanner_flash_beacon =3D "";=0A= phpadsbanner_flash =3D "";=0A= video_flash_banner_id =3D "";=0A= connect_banner=3D"";=0A= connect_zone=3D"";=0A= $('div_banner_VIDEO_IMG').empty();=0A= }=0A= function banner_video_flash_render()=0A= {=0A= // we load video flash banner which is sometimes connected to video ads=0A= if (typeof(video_flash_banner_id) !=3D=3D 'undefined' && = video_flash_banner_id !=3D '')=0A= load_banner('VIDEO_IMG');=0A= =0A= // we insert beacon adlog for video banner=0A= if ( phpadsbanner_flash_beacon !=3D "" )=0A= $('phpads_beacon').setHTML(phpadsbanner_flash_beacon);=0A= }=0A= function change_element_style(el, el_style_name, el_style_value)=0A= {=0A= if ( $(el) )=0A= $(el).setStyle(el_style_name, el_style_value);=0A= }=0A= =0A= // sets class name=0A= function change_element_classname(el, el_class_name)=0A= {=0A= $(el).addClass(el_class_name);=0A= }=0A= =0A= /**=0A= * Resizable banner calls this function when it is about to be collapsed = back to normal size=0A= */=0A= function collapse()=0A= {=0A= if ( document.getElementById('resizable_banner') )=0A= = document.getElementById('resizable_banner').style.clip=3Dresizable_banner= _clip_collapsed;=0A= }=0A= =0A= /**=0A= * Resizable banner calls this function when it is about to be expanded=0A= */=0A= function explode()=0A= {=0A= if ( document.getElementById('resizable_banner') )=0A= = document.getElementById('resizable_banner').style.clip=3Dresizable_banner= _clip_exploded;=0A= }=0A= =0A= /**=0A= * CONTEXTUAL BANNER: Underlines words in article text and makes them = links to contextual banner=0A= */=0A= function banner_contextual_mark()=0A= {=0A= var elt =3D document.getElementById('content');=0A= if ( !elt )=0A= return;=0A= =0A= var txt =3D elt.innerHTML;=0A= if ( !txt )=0A= return; =0A= =0A= var words =3D banner_contextual_words.split(',');=0A= =0A= for ( i=3D0; i -1 )=0A= content.innerHTML =3D content.innerHTML.replace( matches[j], "" + = matches[j] + "" );=0A= }=0A= }=0A= =0A= /**=0A= * CONTEXTUAL BANNER: Shows contextual banner over the marked word=0A= */=0A= function banner_contextual_display( e, elt_link, a )=0A= {=0A= if ( banner_contextual_timer ) {=0A= clearTimeout( banner_contextual_timer );=0A= return;=0A= }=0A= =0A= if (!e)=0A= var e =3D window.event;=0A= =0A= var elt =3D document.getElementById("banner_contextual");=0A= if ( !elt )=0A= return;=0A= =0A= if ( elt.style.display =3D=3D "" )=0A= return;=0A= =0A= elt.innerHTML =3D banner_contextual_html;=0A= elt.style.display =3D "";=0A= =0A= if ( typeof( window.pageYOffset ) =3D=3D 'number' ) {=0A= elt.style.left =3D (e.clientX + window.pageXOffset - 60) + "px";=0A= elt.style.top =3D (e.clientY + window.pageYOffset - 115) + = "px";=0A= } else {=0A= elt.style.left =3D (e.clientX + = document.documentElement.scrollLeft - 60) + "px";=0A= elt.style.top =3D (e.clientY + = document.documentElement.scrollTop - 115) + "px";=0A= }=0A= =0A= return;=0A= }=0A= =0A= var banner_contextual_timer;=0A= =0A= function banner_contextual_close()=0A= {=0A= banner_contextual_timer =3D null;=0A= =0A= var elt =3D document.getElementById("banner_contextual");=0A= if ( !elt )=0A= return;=0A= =0A= elt.innerHTML =3D "";=0A= elt.style.display =3D "none";=0A= elt.style.left =3D "0px";=0A= elt.style.top =3D "0px";=0A= =0A= return;=0A= }=0A= =0A= function banner_contextual_clear_timeout()=0A= {=0A= if ( banner_contextual_timer )=0A= clearTimeout( banner_contextual_timer );=0A= }=0A= =0A= /**=0A= * CONTEXTUAL BANNER: Hides contextual banner=0A= * Actually calls timer that will close it some microsecods later=0A= */=0A= function banner_contextual_hide()=0A= {=0A= banner_contextual_timer =3D setTimeout( "banner_contextual_close();", = 500 );=0A= }=0A= =0A= ------=_NextPart_000_0000_01CB0C0E.4C02F9D0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://golfportal.info/static/slo/shared/js/banners.js cookie_path =3D ".24ur.com";=0A= =0A= banners =3D new Array(=0A= new Array("A" ,30 , "banner_A", "", 0, 728, 0, 0),=0A= new Array("B" ,31 , "banner_B", "", 0, 650, 0, 0),=0A= new Array("B1" ,32 , "banner_B1", "", 0, 575, 0, 0),=0A= new Array("G" ,36 , "banner_G", "", 0, 160, 0, 0),=0A= new Array("H" ,37 , "banner_H", "", 0, 300, 0, 0),=0A= new Array("M" ,50 , "banner_M", "", 0, 300, 0, 0),=0A= new Array("M2" ,51 , "banner_M", "", 0, 300, 0, 0),=0A= new Array("M3" ,76 , "banner_M", "", 0, 300, 0, 0),=0A= new Array("M4" ,77 , "banner_M", "", 0, 300, 0, 0),=0A= new Array("N2" ,66 , "banner_N", "", 0, 290, 0, 0),=0A= new Array("Y" ,33 , "banner_Y", "", 0, 650, 0, 0),=0A= new Array("FLOATER" ,38 , "banner_FLOATER" , "", 1, 0),=0A= new Array("PIXEL" ,39 , "banner_PIXEL" , "", 5, 0),=0A= new Array("CONTEXTUAL", 45, "banner_CONTEXTUAL" , "", 7),=0A= new Array("VIDEO_PRE", 11, "banner_VIDEO_VID_PRE" , "", 3),=0A= new Array("VIDEO_MID", 12, "banner_VIDEO_VID_MID" , "", 3),=0A= new Array("VIDEO_POST", 13, "banner_VIDEO_VID_POST" , "", 3),=0A= new Array("VIDEO_IMG_PRE", 21, "banner_VIDEO_IMG_PRE" , "", 4, 300, 0),=0A= new Array("VIDEO_IMG_MID", 22, "banner_VIDEO_IMG_MID" , "", 4, 300, 0),=0A= new Array("VIDEO_IMG_POST", 23, "banner_VIDEO_IMG_POST" , "", 4, 300, = 0),=0A= new Array("VIDEO_OVERLAY" ,42 , "banner_OVERLAY" , "", 3)=0A= );=0A= =0A= // rollbanner_check has reference to a rollbanner DIV that needs to be = closed when mouse leaves orig banner=0A= var rollbanner_check =3D false;=0A= =0A= // rollbanner is an array filled with data needed to display rollbanner. = MAX creates=0A= // this array and writes it into append HTML property of original = banner=0A= var rollbanner =3D false;=0A= =0A= // connect_zone and connect_banner are used to connect two banners:=0A= // if some banner exports these two variables, then only banner 1234 = will be shown in zone=0A= // 136). Banenr that exports these two variables _must_ be shown = before zone 136.=0A= var connect_zone =3D false;=0A= var connect_banner =3D false;=0A= =0A= // through this variable rollbanner knows who is his parent. Every DIV = must fill this variable with DIV-s id=0A= var current_div =3D "";=0A= =0A= // this variable holds functions that are executed when banner calls = praHide=0A= var praHide_functions =3D false;=0A= =0A= /**=0A= * Function returns banner array and creates invocation code for every = banner=0A= * @param int section_id Current page section_id=0A= */=0A= function banners_get(section_id)=0A= { =0A= if ((!section_id) || (section_id=3D=3D'undefined'))=0A= return false;=0A= =0A= section_id =3D parseInt(section_id);=0A= if (isNaN(section_id))=0A= return false;=0A= =0A= for (i=3D0; i