From: "Saved by Windows Internet Explorer 7" Subject: Search - eBook generated | Magic Millions eBook Portal Date: Wed, 11 Feb 2009 15:46:10 +1100 MIME-Version: 1.0 Content-Type: multipart/related; type="text/html"; boundary="----=_NextPart_000_0000_01C98C5F.DC641CA0" X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6001.18049 This is a multi-part message in MIME format. ------=_NextPart_000_0000_01C98C5F.DC641CA0 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Location: http://magicmillions.ddm.magsbyme.com/ebook_search/search/ebook_id/53/unique_id/499257bb1810b/image_type/png =EF=BB=BF Search - eBook = generated | Magic Millions eBook Portal
------=_NextPart_000_0000_01C98C5F.DC641CA0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://magicmillions.ddm.magsbyme.com/images/mm_logo.gif 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 ------=_NextPart_000_0000_01C98C5F.DC641CA0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://magicmillions.ddm.magsbyme.com/images/icon-horse_jpg.gif R0lGODlhEAAQAMQAAPj3+MXExXFSTk8xMXVwcZdxa+bn55tURt7a2oiGhqupqYtIO6CMikhHS725 upmXmL1rUsS/wG9CPZVkV62ur6ZeS+7w8BMWG4qOkaGen359fW1eXnyAgzs9Qc7Ozv///yH5BAAA AAAALAAAAAAQABAAAAWo4AdYoqckCeUBX9s+G5oGAYV6LrAJVRG4Iocm0nIIBJKDhIBrARAPXIJg YSwkg0GMIFgcChHPzzLJYgeLShJSefw+CklFuYBAkpWFpumQL9AHfxJ/ey0WGwMSDQJgBhsSGhkO Lg4DGSwuGQMJHgkuCBcZQB8eFw0AhR8GDaJAqx2kBAYfFg8YmC0BGwRFBAEGHLe5Ch4bFC4eGhjE Bg43ABS4JScJxNIhADs= ------=_NextPart_000_0000_01C98C5F.DC641CA0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://magicmillions.ddm.magsbyme.com/images/icon-sirecam_sml.gif R0lGODlhEQAQALMAAKihmFVlowQccjVIiw0kdffPYUZXliU6hdG3dxQqef/QP1FhnoWFk2Bto+HH gxsxfCwAAAAAEQAQAAAEk9CRSUQaeCRBiaRGEDSNuHRf0iwMUhQKsDTP9JWIEuv6mHgCwyKncBwG AJhiYRA4EizeQEBd6BiLhDFAZHAmwQIiMHAMAjrAjwpmKMhmNOJBNTQ4gjL8wPUiCwBfCQBwUAwO bjpTFAcNWkEGRA5NFHkLThMNkQB0lY02EypNVGx2Px4ddkxCmigPCbCwRwMHP7EPEQA7 ------=_NextPart_000_0000_01C98C5F.DC641CA0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://magicmillions.ddm.magsbyme.com/css/global.css * { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } * HTML .clearfix { HEIGHT: 1% } *:first-child + HTML #nav { HEIGHT: 1% } *:first-child + HTML #nav LI { HEIGHT: 1% } A { FONT-WEIGHT: bold; COLOR: #00f; TEXT-DECORATION: underline } A:hover { COLOR: #927e01 } A.delete { PADDING-LEFT: 14px; BACKGROUND-IMAGE: url(../images/icon-delete.gif) } A.delete:hover { BACKGROUND-IMAGE: url(../images/icon-delete-over.gif) } A.edit { BACKGROUND-IMAGE: url(../images/icon-edit.gif) } A.edit:hover { BACKGROUND-IMAGE: url(../images/icon-edit-over.gif) } A.export { BACKGROUND-IMAGE: url(../images/icon-export.gif) } A.export:hover { BACKGROUND-IMAGE: url(../images/icon-export-over.gif) } A.icon { PADDING-RIGHT: 0px; BACKGROUND-POSITION: left top; DISPLAY: block; = PADDING-LEFT: 18px; FONT-SIZE: 10px; PADDING-BOTTOM: 4px; = TEXT-TRANSFORM: uppercase; COLOR: #000; LINE-HEIGHT: 10px; PADDING-TOP: = 0px; BACKGROUND-REPEAT: no-repeat; TEXT-DECORATION: none } A.icon:hover { TEXT-DECORATION: underline } A.live { BACKGROUND-IMAGE: url(../images/icon-live.gif) } A.live:hover { BACKGROUND-IMAGE: url(../images/icon-live-over.gif) } A.pages { BACKGROUND-IMAGE: url(../images/icon-pages.gif) } A.pages:hover { BACKGROUND-IMAGE: url(../images/icon-pages-over.gif) } BODY { FONT-SIZE: 0.75em; BACKGROUND: url(../images/bg_body.gif) #394351 = repeat-x; MARGIN: 15px 5px; COLOR: #000; FONT-FAMILY: Arial, Helvetica, = sans-serif; TEXT-ALIGN: center } H1 { FONT-WEIGHT: normal; FONT-SIZE: 2em; MARGIN-BOTTOM: 0.2em; COLOR: = #f57f00 } H1 { MARGIN: 0px 0px 0.83em } H2 { MARGIN: 0px 0px 0.83em } H3 { MARGIN: 0px 0px 0.83em } H4 { MARGIN: 0px 0px 0.83em } H5 { MARGIN: 0px 0px 0.83em } P { MARGIN: 0px 0px 0.83em } UL { MARGIN: 0px 0px 0.83em } OL { MARGIN: 0px 0px 0.83em } H2 { FONT-SIZE: 1.7em; MARGIN-BOTTOM: 0.5em; COLOR: #927e01 } H2 A#ebookHeadersToggleOn { TEXT-DECORATION: none } LI { MARGIN: 0px 0px 0px 1.25em } SELECT { MIN-WIDTH: 200px } TEXTAREA { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-SIZE: 100%; PADDING-BOTTOM: = 5px; PADDING-TOP: 5px; FONT-FAMILY: Arial, Helvetica, sans-serif } TABLE { FONT-SIZE: 100%; TEXT-ALIGN: left } TD { FONT-SIZE: 100%; TEXT-ALIGN: left } TH { FONT-SIZE: 100%; TEXT-ALIGN: left } UL { LIST-STYLE-TYPE: square } UL { MARGIN: 1em 0px 1.25em 2em } OL { MARGIN: 1em 0px 1.25em 2em } .add { BACKGROUND-POSITION: left top; PADDING-LEFT: 1.67em; BACKGROUND-IMAGE: = url(../images/icon-plus.gif); BACKGROUND-REPEAT: no-repeat } .auto_complete { COLOR: #000 } .bigli LI { PADDING-LEFT: 20px; BACKGROUND: url(../images/icon_bullet_go.png) = no-repeat 0px 50%; MARGIN: 2em 0px; LIST-STYLE-TYPE: none } .breadcrumbs { MARGIN-BOTTOM: 10px } .breadcrumbs A:hover { COLOR: #000; TEXT-DECORATION: underline } .breadcrumbs { COLOR: #666; TEXT-DECORATION: none } .breadcrumbs A { FONT-WEIGHT: bold; COLOR: #666; TEXT-DECORATION: underline } .button { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px = 2px 2px 0px; LINE-HEIGHT: 0px; PADDING-TOP: 0px } .button { BORDER-RIGHT: #695511 1px solid; PADDING-RIGHT: 0.17em; BORDER-TOP: = #695511 1px solid; PADDING-LEFT: 0.17em; FONT-WEIGHT: bold; FONT-SIZE: = 1.08em; PADDING-BOTTOM: 0.17em; MARGIN: 0px 0.3em 0.3em 0px; = BORDER-LEFT: #695511 1px solid; COLOR: #fff; LINE-HEIGHT: 1.2; = PADDING-TOP: 0.17em; BORDER-BOTTOM: #695511 1px solid; BACKGROUND-COLOR: = #927e01 } .buttons { BORDER-RIGHT: #695511 1px solid; PADDING-RIGHT: 0.17em; BORDER-TOP: = #695511 1px solid; PADDING-LEFT: 0.17em; FONT-WEIGHT: bold; FONT-SIZE: = 1.08em; PADDING-BOTTOM: 0.17em; MARGIN: 0px 0.3em 0.3em 0px; = BORDER-LEFT: #695511 1px solid; COLOR: #fff; LINE-HEIGHT: 1.2; = PADDING-TOP: 0.17em; BORDER-BOTTOM: #695511 1px solid; BACKGROUND-COLOR: = #927e01 } .buttons BUTTON { BORDER-RIGHT: #695511 1px solid; PADDING-RIGHT: 0.17em; BORDER-TOP: = #695511 1px solid; PADDING-LEFT: 0.17em; FONT-WEIGHT: bold; FONT-SIZE: = 1.08em; PADDING-BOTTOM: 0.17em; MARGIN: 0px 0.3em 0.3em 0px; = BORDER-LEFT: #695511 1px solid; COLOR: #fff; LINE-HEIGHT: 1.2; = PADDING-TOP: 0.17em; BORDER-BOTTOM: #695511 1px solid; BACKGROUND-COLOR: = #927e01 } .button:hover { BORDER-LEFT-COLOR: #d16c00; BORDER-BOTTOM-COLOR: #d16c00; COLOR: #fff; = BORDER-TOP-COLOR: #d16c00; BACKGROUND-COLOR: #f57f00; = BORDER-RIGHT-COLOR: #d16c00 } .buttons:hover { BORDER-LEFT-COLOR: #d16c00; BORDER-BOTTOM-COLOR: #d16c00; COLOR: #fff; = BORDER-TOP-COLOR: #d16c00; BACKGROUND-COLOR: #f57f00; = BORDER-RIGHT-COLOR: #d16c00 } .buttons BUTTON:hover { BORDER-LEFT-COLOR: #d16c00; BORDER-BOTTOM-COLOR: #d16c00; COLOR: #fff; = BORDER-TOP-COLOR: #d16c00; BACKGROUND-COLOR: #f57f00; = BORDER-RIGHT-COLOR: #d16c00 } .buttondiv { CLEAR: both; DISPLAY: block; PADDING-TOP: 10px } .clearfix { CLEAR: left; DISPLAY: inline-block; LINE-HEIGHT: 1px } .clearfix { DISPLAY: block } .culturetab { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; LINE-HEIGHT: 12px; PADDING-TOP: 0px; BORDER-BOTTOM: #695511 1px = solid; HEIGHT: 29px } .culturetab LI { BORDER-RIGHT: #e7ebf7 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: = #e7ebf7 1px solid; DISPLAY: block; PADDING-LEFT: 3px; FLOAT: left; = PADDING-BOTTOM: 3px; MARGIN: 0px 0px -1px 5px; BORDER-LEFT: #e7ebf7 1px = solid; COLOR: #fff; PADDING-TOP: 3px; BORDER-BOTTOM: #e7ebf7 0px solid; = BACKGROUND-COLOR: #758392 } .culturetab LI.current { BORDER-RIGHT: #758392 1px solid; BORDER-TOP: #758392 1px solid; = BORDER-LEFT: #758392 1px solid; BORDER-BOTTOM: #e7ebf7 1px solid } .culturetab LI A { PADDING-RIGHT: 5px; BACKGROUND-POSITION: left 50%; DISPLAY: block; = PADDING-LEFT: 35px; PADDING-BOTTOM: 5px; COLOR: #fff; PADDING-TOP: 5px; = BACKGROUND-REPEAT: no-repeat; TEXT-DECORATION: underline } .culturetab LI A:hover { COLOR: #b3dd11 } .culturetab LI.current { CURSOR: default; COLOR: #695511; BACKGROUND-COLOR: #e7ebf7; = TEXT-DECORATION: none } .culturetab LI.current A { CURSOR: default; COLOR: #695511; BACKGROUND-COLOR: #e7ebf7; = TEXT-DECORATION: none } .datatable { BORDER-RIGHT: #a5acb2 1px solid; BORDER-TOP: #a5acb2 1px solid; MARGIN: = 1em 0px; BORDER-LEFT: #a5acb2 1px solid; WIDTH: 100%; BORDER-BOTTOM: = #a5acb2 1px solid } .datatable .child TD { =09 } .datatable .parent TD { COLOR: #fff; BORDER-BOTTOM: #fff 1px solid; BACKGROUND-COLOR: #869ec0 } .datatable .parent TD A { COLOR: #fff } .datatable TD { PADDING-RIGHT: 0.42em; PADDING-LEFT: 0.42em; PADDING-BOTTOM: 0.42em; = PADDING-TOP: 0.42em } .datatable TH { PADDING-RIGHT: 0.42em; PADDING-LEFT: 0.42em; PADDING-BOTTOM: 0.42em; = PADDING-TOP: 0.42em } .datatable TH { COLOR: #fff; BACKGROUND-COLOR: #a6b2db } .datatable TH SELECT { MIN-WIDTH: 50px } .datatable TD.pending { COLOR: #ffa500 } .datatable TD.approved { COLOR: green } .datatable TD.declined { COLOR: red } .datatable TR.dark TD { BACKGROUND-COLOR: #e6ebff } .datatable TR.light TD { BACKGROUND-COLOR: #fff } .disabled { BORDER-RIGHT: #bfbfbf 1px solid; BORDER-TOP: #bfbfbf 1px solid; = BORDER-LEFT: #bfbfbf 1px solid; COLOR: #a3a3a3; BORDER-BOTTOM: #bfbfbf = 1px solid; BACKGROUND-COLOR: #dfdfdf } .disabled:hover { BORDER-RIGHT: #bfbfbf 1px solid; BORDER-TOP: #bfbfbf 1px solid; = BORDER-LEFT: #bfbfbf 1px solid; COLOR: #a3a3a3; BORDER-BOTTOM: #bfbfbf = 1px solid; BACKGROUND-COLOR: #dfdfdf } .error { BORDER-RIGHT: #f00 1px solid; PADDING-RIGHT: 0.42em; BORDER-TOP: #f00 = 1px solid; PADDING-LEFT: 0.42em; MARGIN-BOTTOM: 0.83em; PADDING-BOTTOM: = 0.42em; BORDER-LEFT: #f00 1px solid; COLOR: #000; PADDING-TOP: 0.42em; = BORDER-BOTTOM: #f00 1px solid; BACKGROUND-COLOR: #fffafa } .hidden { DISPLAY: none } .highlight { BORDER-RIGHT: #c00 1px solid; BORDER-TOP: #c00 1px solid; BORDER-LEFT: = #c00 1px solid; BORDER-BOTTOM: #c00 1px solid; BACKGROUND-COLOR: #cc0000 } .highlight:hover { BORDER-RIGHT: #f00 1px solid; BORDER-TOP: #f00 1px solid; BORDER-LEFT: = #f00 1px solid; COLOR: #fff; BORDER-BOTTOM: #f00 1px solid; = BACKGROUND-COLOR: #ff0000 } .login { BORDER-BOTTOM: #695511 0.42em solid } .minus { BACKGROUND-POSITION: left top; PADDING-LEFT: 1.67em; BACKGROUND-IMAGE: = url(../images/icon-minus.gif); BACKGROUND-REPEAT: no-repeat } .msg { BORDER-RIGHT: #228b22 1px solid; PADDING-RIGHT: 0.42em; BORDER-TOP: = #228b22 1px solid; PADDING-LEFT: 0.42em; MARGIN-BOTTOM: 10px; = PADDING-BOTTOM: 0.42em; BORDER-LEFT: #228b22 1px solid; COLOR: #000; = PADDING-TOP: 0.42em; BORDER-BOTTOM: #228b22 1px solid; BACKGROUND-COLOR: = #f5fffa } .multi { FLOAT: left; WIDTH: 480px } .multi SELECT { FLOAT: left; WIDTH: 170px } .multi .multibuttons { FLOAT: left } .multi .multibuttons INPUT { MARGIN: 10px 5px } .statusamended { FONT-WEIGHT: bold; COLOR: red } .statusapproved { FONT-WEIGHT: bold; COLOR: green } .statuswaiting { FONT-WEIGHT: bold; COLOR: #ffa500 } .steps { FONT-WEIGHT: bold; FONT-SIZE: 130%; FLOAT: right; MARGIN: 10px 10px 0px = 0px; COLOR: #f00 } .thumb { FLOAT: left; MARGIN: 0px 10px 5px 0px } #content { CLEAR: both; PADDING-RIGHT: 1.67em; PADDING-LEFT: 1.67em; MIN-HEIGHT: = 350px; PADDING-BOTTOM: 0.83em; PADDING-TOP: 0.83em } #ebookHeaders { DISPLAY: none } .form { MARGIN: 0px 0px 1em } FIELDSET { BORDER-RIGHT: #758392 1px solid; PADDING-RIGHT: 1em; BORDER-TOP: = #758392 1px solid; PADDING-LEFT: 1em; PADDING-BOTTOM: 1em; MARGIN: 0px = 0px 10px; BORDER-LEFT: #758392 1px solid; PADDING-TOP: 1em; = BORDER-BOTTOM: #758392 1px solid; BACKGROUND-COLOR: #e7ebf7 } .form INPUT { BORDER-RIGHT: #758392 1px solid; BORDER-TOP: #758392 1px solid; = MARGIN-BOTTOM: 0.5em; BORDER-LEFT: #758392 1px solid; BORDER-BOTTOM: = #758392 1px solid } .form SELECT { BORDER-RIGHT: #758392 1px solid; BORDER-TOP: #758392 1px solid; = MARGIN-BOTTOM: 0.5em; BORDER-LEFT: #758392 1px solid; BORDER-BOTTOM: = #758392 1px solid } .form TEXTAREA { BORDER-RIGHT: #758392 1px solid; BORDER-TOP: #758392 1px solid; = MARGIN-BOTTOM: 0.5em; BORDER-LEFT: #758392 1px solid; BORDER-BOTTOM: = #758392 1px solid } .form INPUT:active { BORDER-RIGHT: #b3dd11 1px solid; BORDER-TOP: #b3dd11 1px solid; = BORDER-LEFT: #b3dd11 1px solid; BORDER-BOTTOM: #b3dd11 1px solid } .form SELECT:active { BORDER-RIGHT: #b3dd11 1px solid; BORDER-TOP: #b3dd11 1px solid; = BORDER-LEFT: #b3dd11 1px solid; BORDER-BOTTOM: #b3dd11 1px solid } .form TEXTAREA:active { BORDER-RIGHT: #b3dd11 1px solid; BORDER-TOP: #b3dd11 1px solid; = BORDER-LEFT: #b3dd11 1px solid; BORDER-BOTTOM: #b3dd11 1px solid } .form LABEL { CLEAR: left; DISPLAY: block; FONT-WEIGHT: bold; FLOAT: left; WIDTH: = 15em } .form LABEL.forcheck INPUT { MARGIN-BOTTOM: 0px; MARGIN-RIGHT: 0.5em } .form LABEL.forradio INPUT { MARGIN-BOTTOM: 0px; MARGIN-RIGHT: 0.5em } .form LABEL.forcheck { CLEAR: none; MARGIN-BOTTOM: 1em; WIDTH: 20em } .form LABEL.forradio { CLEAR: none; MARGIN-BOTTOM: 1em; WIDTH: 20em } .form LABEL.forradio { WIDTH: 7em } .form_error { FONT-WEIGHT: bold; MARGIN-BOTTOM: 1.5em; COLOR: #f00 } LEGEND { BORDER-RIGHT: #394e66 1px solid; PADDING-RIGHT: 0.5em; BORDER-TOP: = #394e66 1px solid; PADDING-LEFT: 0.5em; FONT-WEIGHT: bold; = MARGIN-BOTTOM: 1em; PADDING-BOTTOM: 0.2em; MARGIN-LEFT: -0.5em; = BORDER-LEFT: #394e66 1px solid; COLOR: #fff; PADDING-TOP: 0.2em; = BORDER-BOTTOM: #394e66 1px solid; BACKGROUND-COLOR: #0072bc } IMG { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px } .imgsizebad#current_size { FONT-WEIGHT: bold; COLOR: red } .imgsizegood#current_size { FONT-WEIGHT: bold; COLOR: green } #header { BACKGROUND: url(../images/bg_header.gif) #fff repeat-x 0px 20px; = PADDING-TOP: 20px; HEIGHT: 95px; TEXT-ALIGN: right } #header #logo { FLOAT: left; MARGIN: 20px 0px 0px 20px } #header H1 { PADDING-RIGHT: 1em; PADDING-LEFT: 0px; FONT-SIZE: 22px; PADDING-BOTTOM: = 0px; COLOR: #927e01; PADDING-TOP: 1.2em } #header H1 DIV.subtitle { FONT-SIZE: 12px; COLOR: #2d409a } #lot_set { PADDING-LEFT: 89px } #lot_type_label { WIDTH: 69px } #nav { CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; Z-INDEX: 100; = BACKGROUND: #d6d0b1; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; = POSITION: relative; HEIGHT: 25px } #nav_h4 { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; COLOR: = #ffffff; PADDING-TOP: 5px; FONT-FAMILY: Arial; TEXT-ALIGN: center } #nav A { PADDING-RIGHT: 15px; BACKGROUND-POSITION: 50% bottom; DISPLAY: block; = PADDING-LEFT: 15px; FONT-WEIGHT: normal; PADDING-BOTTOM: 0px; MARGIN: = 0px; COLOR: #000; LINE-HEIGHT: 25px; PADDING-TOP: 0px; = BACKGROUND-REPEAT: repeat-x; TEXT-ALIGN: center; TEXT-DECORATION: none } #nav A.inactive { BACKGROUND: #54678b; CURSOR: default; COLOR: #fff; FONT-STYLE: italic } #nav A.inactive:hover { BACKGROUND: #54678b; CURSOR: default; COLOR: #fff; FONT-STYLE: italic } #nav A:hover { BACKGROUND: #54678b; COLOR: #fff } #nav LI { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: = 0px; MARGIN: 0px; PADDING-TOP: 0px } #nav LI LI { FONT-SIZE: 11px; WIDTH: 140px } #nav LI LI A { BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 15px; PADDING-LEFT: 15px; = FONT-WEIGHT: normal; BORDER-LEFT-WIDTH: 0px; BACKGROUND: #eee; = BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 2px; MARGIN: 0px; COLOR: = #695511; LINE-HEIGHT: 20px; PADDING-TOP: 2px; TEXT-ALIGN: left; = BORDER-RIGHT-WIDTH: 0px } #nav LI LI A:hover { BACKGROUND: #54678b; COLOR: #fff } #nav LI UL { LEFT: -999em; WIDTH: 140px; POSITION: absolute; BACKGROUND-COLOR: = #abcbee } #nav LI UL UL { MARGIN: -24px 0px 0px 140px } #nav LI:hover UL UL { LEFT: -999em } #nav LI:hover UL UL UL { LEFT: -999em } #nav LI.sfhover UL UL { LEFT: -999em } #nav LI.sfhover UL UL UL { LEFT: -999em } #nav LI:hover UL { LEFT: auto } #nav LI LI:hover UL { LEFT: auto } #nav LI LI LI:hover UL { LEFT: auto } #nav LI.sfhover UL { LEFT: auto } #nav LI LI.sfhover UL { LEFT: auto } #nav LI LI LI.sfhover UL { LEFT: auto } #nav LI:hover UL { LEFT: auto } #nav LI.sfhover UL { LEFT: auto } #search_list { WIDTH: 729px } #search_buttons { WIDTH: 300px } #list { TEXT-ALIGN: right } #nav UL { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; LINE-HEIGHT: 1em; PADDING-TOP: 0px; LIST-STYLE-TYPE: none; = TEXT-ALIGN: left } #nav UL.right LI { FLOAT: right } #statusSelect SELECT { FONT-SIZE: 9px; WIDTH: 70px } #userSelect SELECT { FONT-SIZE: 9px; WIDTH: 70px } #wrapper { MARGIN: 0px auto; WIDTH: 80em; BACKGROUND-COLOR: #f8f9fd; TEXT-ALIGN: = left } #wrapper_search { MARGIN: 0px auto; WIDTH: 800px; BACKGROUND-COLOR: #f8f9fd; TEXT-ALIGN: = left } #imgeditor-container { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; MARGIN: = 16px 318px 0px 0px; PADDING-TOP: 0px } #ImageEditorImage { BACKGROUND-REPEAT: no-repeat } #ImageEditorLoadingText { FONT-WEIGHT: bold; FONT-SIZE: 16px; COLOR: #333; WHITE-SPACE: nowrap } #ImageEditorTxtWidth { FONT-SIZE: 10px; TEXT-ALIGN: center } #ImageEditorTxtHeight { FONT-SIZE: 10px; TEXT-ALIGN: center } #imgeditor-help { FLOAT: right; WIDTH: 300px } #imgeditor-resize { BORDER-RIGHT: #9da3a9 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: = #9da3a9 1px solid; PADDING-LEFT: 5px; BACKGROUND: #e7ebf7; = PADDING-BOTTOM: 3px; BORDER-LEFT: #9da3a9 1px solid; PADDING-TOP: 3px; = BORDER-BOTTOM: #9da3a9 1px solid } SPAN.width { BORDER-RIGHT: #e7ebf7 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: = #e7ebf7 1px solid; PADDING-LEFT: 5px; BACKGROUND: #e7ebf7; = PADDING-BOTTOM: 5px; BORDER-LEFT: #e7ebf7 1px solid; PADDING-TOP: 5px; = BORDER-BOTTOM: #e7ebf7 1px solid } SPAN.height { BORDER-RIGHT: #e7ebf7 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: = #e7ebf7 1px solid; PADDING-LEFT: 5px; BACKGROUND: #e7ebf7; = PADDING-BOTTOM: 5px; BORDER-LEFT: #e7ebf7 1px solid; PADDING-TOP: 5px; = BORDER-BOTTOM: #e7ebf7 1px solid } INPUT.resize-field { BORDER-RIGHT: #e7ebf7 1px solid; PADDING-RIGHT: 1px; BORDER-TOP: = #e7ebf7 1px solid; PADDING-LEFT: 1px; PADDING-BOTTOM: 2px; BORDER-LEFT: = #e7ebf7 1px solid; PADDING-TOP: 2px; BORDER-BOTTOM: #e7ebf7 1px solid } .formimg { PADDING-LEFT: 15em } .formimg P.caption { FONT-SIZE: 0.7em; MARGIN-BOTTOM: 0.5em; WIDTH: 250px; LINE-HEIGHT: 1.6; = FONT-STYLE: italic; BACKGROUND-COLOR: #fff; TEXT-ALIGN: center } TD DIV.formimg { PADDING-LEFT: 0px } TD DIV.formimg P.caption { WIDTH: auto } TD.formLabel { PADDING-LEFT: 0px; WIDTH: 130px; TEXT-ALIGN: left } TD.formLabelRight { PADDING-LEFT: 50px; WIDTH: 146px; TEXT-ALIGN: left } TD.grey { BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; = BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid } TABLE.lot_data { FONT-SIZE: smaller } TABLE.lot_data TD { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } TABLE.lot_data TD.top_left { BORDER-TOP: #afafaf 1px solid; BORDER-LEFT: #afafaf 1px solid; = PADDING-TOP: 2px! important } TABLE.lot_data TD.top { BORDER-TOP: #afafaf 1px solid; PADDING-TOP: 2px! important } TABLE.lot_data TD.top_right { BORDER-RIGHT: #afafaf 1px solid; BORDER-TOP: #afafaf 1px solid; = PADDING-TOP: 2px! important } TABLE.lot_data TD.right { BORDER-RIGHT: #afafaf 1px solid } TABLE.lot_data TD.left { BORDER-LEFT: #afafaf 1px solid } TABLE.lot_data TD.bottom_left { PADDING-BOTTOM: 2px! important; BORDER-LEFT: #afafaf 1px solid; = BORDER-BOTTOM: #afafaf 1px solid } TABLE.lot_data TD.bottom { PADDING-BOTTOM: 2px! important; BORDER-BOTTOM: #afafaf 1px solid } TABLE.lot_data TD.bottom_right { BORDER-RIGHT: #afafaf 1px solid; PADDING-BOTTOM: 2px! important; = BORDER-BOTTOM: #afafaf 1px solid } TABLE.lot_data TD.top_bottom { BORDER-TOP: #afafaf 1px solid; BORDER-BOTTOM: #afafaf 1px solid } .bgmmblue { BACKGROUND-COLOR: rgb(0,79,163) } .mmblue { COLOR: rgb(0,79,163) } .courier_small { FONT-SIZE: 8pt; FONT-FAMILY: Courier } INPUT.blue { COLOR: #ffffff; BACKGROUND-COLOR: #003f6f } INPUT.blue { COLOR: #ffffff; BACKGROUND-COLOR: #003f6f } TD { OVERFLOW: hidden } TD.lot_vendor { WIDTH: 280px } TD.lot_type { WIDTH: 330px } TD.lot_name { WIDTH: 250px } TD.lot_color { WIDTH: 140px } TD.lot_sex { WIDTH: 135px } TD.lot_sire { WIDTH: 145px } TD.lot_dam { WIDTH: 185px } TD.lot_bonusscheme { WIDTH: 380px } TD.lot_session { WIDTH: 220px } TD.lot_buyer { WIDTH: 335px } .red { COLOR: #ff0000 } ------=_NextPart_000_0000_01C98C5F.DC641CA0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://magicmillions.ddm.magsbyme.com/css/print.css * { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } * HTML .clearfix { HEIGHT: 1% } *:first-child + HTML #nav { HEIGHT: 1% } *:first-child + HTML #nav LI { HEIGHT: 1% } A { FONT-WEIGHT: bold; COLOR: #00f; TEXT-DECORATION: underline } A:hover { COLOR: #927e01 } A.delete { PADDING-LEFT: 14px; BACKGROUND-IMAGE: url(../images/icon-delete.gif) } A.delete:hover { BACKGROUND-IMAGE: url(../images/icon-delete-over.gif) } A.edit { BACKGROUND-IMAGE: url(../images/icon-edit.gif) } A.edit:hover { BACKGROUND-IMAGE: url(../images/icon-edit-over.gif) } A.export { BACKGROUND-IMAGE: url(../images/icon-export.gif) } A.export:hover { BACKGROUND-IMAGE: url(../images/icon-export-over.gif) } A.icon { PADDING-RIGHT: 0px; BACKGROUND-POSITION: left top; DISPLAY: block; = PADDING-LEFT: 18px; FONT-SIZE: 10px; PADDING-BOTTOM: 4px; = TEXT-TRANSFORM: uppercase; COLOR: #000; LINE-HEIGHT: 10px; PADDING-TOP: = 0px; BACKGROUND-REPEAT: no-repeat; TEXT-DECORATION: none } A.icon:hover { TEXT-DECORATION: underline } A.live { BACKGROUND-IMAGE: url(../images/icon-live.gif) } A.live:hover { BACKGROUND-IMAGE: url(../images/icon-live-over.gif) } A.pages { BACKGROUND-IMAGE: url(../images/icon-pages.gif) } A.pages:hover { BACKGROUND-IMAGE: url(../images/icon-pages-over.gif) } BODY { FONT-SIZE: 0.75em; BACKGROUND: url(../images/bg_body.gif) #394351 = repeat-x; MARGIN: 15px 5px; COLOR: #000; FONT-FAMILY: Arial, Helvetica, = sans-serif; TEXT-ALIGN: center } H1 { FONT-WEIGHT: normal; FONT-SIZE: 2em; MARGIN-BOTTOM: 0.2em; COLOR: = #f57f00 } H1 { MARGIN: 0px 0px 0.83em } H2 { MARGIN: 0px 0px 0.83em } H3 { MARGIN: 0px 0px 0.83em } H4 { MARGIN: 0px 0px 0.83em } H5 { MARGIN: 0px 0px 0.83em } P { MARGIN: 0px 0px 0.83em } UL { MARGIN: 0px 0px 0.83em } OL { MARGIN: 0px 0px 0.83em } H2 { FONT-SIZE: 1.7em; MARGIN-BOTTOM: 0.5em; COLOR: #927e01 } H2 A#ebookHeadersToggleOn { TEXT-DECORATION: none } LI { MARGIN: 0px 0px 0px 1.25em } SELECT { MIN-WIDTH: 200px } TEXTAREA { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-SIZE: 100%; PADDING-BOTTOM: = 5px; PADDING-TOP: 5px; FONT-FAMILY: Arial, Helvetica, sans-serif } TABLE { FONT-SIZE: 100%; TEXT-ALIGN: left } TD { FONT-SIZE: 100%; TEXT-ALIGN: left } TH { FONT-SIZE: 100%; TEXT-ALIGN: left } UL { LIST-STYLE-TYPE: square } UL { MARGIN: 1em 0px 1.25em 2em } OL { MARGIN: 1em 0px 1.25em 2em } .add { BACKGROUND-POSITION: left top; PADDING-LEFT: 1.67em; BACKGROUND-IMAGE: = url(../images/icon-plus.gif); BACKGROUND-REPEAT: no-repeat } .auto_complete { COLOR: #000 } .bigli LI { PADDING-LEFT: 20px; BACKGROUND: url(../images/icon_bullet_go.png) = no-repeat 0px 50%; MARGIN: 2em 0px; LIST-STYLE-TYPE: none } .breadcrumbs { MARGIN-BOTTOM: 10px } .breadcrumbs A:hover { COLOR: #000; TEXT-DECORATION: underline } .breadcrumbs { COLOR: #666; TEXT-DECORATION: none } .breadcrumbs A { FONT-WEIGHT: bold; COLOR: #666; TEXT-DECORATION: underline } .button { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px = 2px 2px 0px; LINE-HEIGHT: 0px; PADDING-TOP: 0px } .button { BORDER-RIGHT: #695511 1px solid; PADDING-RIGHT: 0.17em; BORDER-TOP: = #695511 1px solid; PADDING-LEFT: 0.17em; FONT-WEIGHT: bold; FONT-SIZE: = 1.08em; PADDING-BOTTOM: 0.17em; MARGIN: 0px 0.3em 0.3em 0px; = BORDER-LEFT: #695511 1px solid; COLOR: #fff; LINE-HEIGHT: 1.2; = PADDING-TOP: 0.17em; BORDER-BOTTOM: #695511 1px solid; BACKGROUND-COLOR: = #927e01 } .buttons { BORDER-RIGHT: #695511 1px solid; PADDING-RIGHT: 0.17em; BORDER-TOP: = #695511 1px solid; PADDING-LEFT: 0.17em; FONT-WEIGHT: bold; FONT-SIZE: = 1.08em; PADDING-BOTTOM: 0.17em; MARGIN: 0px 0.3em 0.3em 0px; = BORDER-LEFT: #695511 1px solid; COLOR: #fff; LINE-HEIGHT: 1.2; = PADDING-TOP: 0.17em; BORDER-BOTTOM: #695511 1px solid; BACKGROUND-COLOR: = #927e01 } .buttons BUTTON { BORDER-RIGHT: #695511 1px solid; PADDING-RIGHT: 0.17em; BORDER-TOP: = #695511 1px solid; PADDING-LEFT: 0.17em; FONT-WEIGHT: bold; FONT-SIZE: = 1.08em; PADDING-BOTTOM: 0.17em; MARGIN: 0px 0.3em 0.3em 0px; = BORDER-LEFT: #695511 1px solid; COLOR: #fff; LINE-HEIGHT: 1.2; = PADDING-TOP: 0.17em; BORDER-BOTTOM: #695511 1px solid; BACKGROUND-COLOR: = #927e01 } .button:hover { BORDER-LEFT-COLOR: #d16c00; BORDER-BOTTOM-COLOR: #d16c00; COLOR: #fff; = BORDER-TOP-COLOR: #d16c00; BACKGROUND-COLOR: #f57f00; = BORDER-RIGHT-COLOR: #d16c00 } .buttons:hover { BORDER-LEFT-COLOR: #d16c00; BORDER-BOTTOM-COLOR: #d16c00; COLOR: #fff; = BORDER-TOP-COLOR: #d16c00; BACKGROUND-COLOR: #f57f00; = BORDER-RIGHT-COLOR: #d16c00 } .buttons BUTTON:hover { BORDER-LEFT-COLOR: #d16c00; BORDER-BOTTOM-COLOR: #d16c00; COLOR: #fff; = BORDER-TOP-COLOR: #d16c00; BACKGROUND-COLOR: #f57f00; = BORDER-RIGHT-COLOR: #d16c00 } .buttondiv { CLEAR: both; DISPLAY: block; PADDING-TOP: 10px } .clearfix { CLEAR: left; DISPLAY: inline-block; LINE-HEIGHT: 1px } .clearfix { DISPLAY: block } .culturetab { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; LINE-HEIGHT: 12px; PADDING-TOP: 0px; BORDER-BOTTOM: #695511 1px = solid; HEIGHT: 29px } .culturetab LI { BORDER-RIGHT: #e7ebf7 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: = #e7ebf7 1px solid; DISPLAY: block; PADDING-LEFT: 3px; FLOAT: left; = PADDING-BOTTOM: 3px; MARGIN: 0px 0px -1px 5px; BORDER-LEFT: #e7ebf7 1px = solid; COLOR: #fff; PADDING-TOP: 3px; BORDER-BOTTOM: #e7ebf7 0px solid; = BACKGROUND-COLOR: #758392 } .culturetab LI.current { BORDER-RIGHT: #758392 1px solid; BORDER-TOP: #758392 1px solid; = BORDER-LEFT: #758392 1px solid; BORDER-BOTTOM: #e7ebf7 1px solid } .culturetab LI A { PADDING-RIGHT: 5px; BACKGROUND-POSITION: left 50%; DISPLAY: block; = PADDING-LEFT: 35px; PADDING-BOTTOM: 5px; COLOR: #fff; PADDING-TOP: 5px; = BACKGROUND-REPEAT: no-repeat; TEXT-DECORATION: underline } .culturetab LI A:hover { COLOR: #b3dd11 } .culturetab LI.current { CURSOR: default; COLOR: #695511; BACKGROUND-COLOR: #e7ebf7; = TEXT-DECORATION: none } .culturetab LI.current A { CURSOR: default; COLOR: #695511; BACKGROUND-COLOR: #e7ebf7; = TEXT-DECORATION: none } .datatable { BORDER-RIGHT: #a5acb2 1px solid; BORDER-TOP: #a5acb2 1px solid; MARGIN: = 1em 0px; BORDER-LEFT: #a5acb2 1px solid; WIDTH: 100%; BORDER-BOTTOM: = #a5acb2 1px solid } .datatable .child TD { =09 } .datatable .parent TD { COLOR: #fff; BORDER-BOTTOM: #fff 1px solid; BACKGROUND-COLOR: #869ec0 } .datatable .parent TD A { COLOR: #fff } .datatable TD { PADDING-RIGHT: 0.42em; PADDING-LEFT: 0.42em; PADDING-BOTTOM: 0.42em; = PADDING-TOP: 0.42em } .datatable TH { PADDING-RIGHT: 0.42em; PADDING-LEFT: 0.42em; PADDING-BOTTOM: 0.42em; = PADDING-TOP: 0.42em } .datatable TH { COLOR: #fff; BACKGROUND-COLOR: #a6b2db } .datatable TH SELECT { MIN-WIDTH: 50px } .datatable TD.pending { COLOR: #ffa500 } .datatable TD.approved { COLOR: green } .datatable TD.declined { COLOR: red } .datatable TR.dark TD { BACKGROUND-COLOR: #e6ebff } .datatable TR.light TD { BACKGROUND-COLOR: #fff } .disabled { BORDER-RIGHT: #bfbfbf 1px solid; BORDER-TOP: #bfbfbf 1px solid; = BORDER-LEFT: #bfbfbf 1px solid; COLOR: #a3a3a3; BORDER-BOTTOM: #bfbfbf = 1px solid; BACKGROUND-COLOR: #dfdfdf } .disabled:hover { BORDER-RIGHT: #bfbfbf 1px solid; BORDER-TOP: #bfbfbf 1px solid; = BORDER-LEFT: #bfbfbf 1px solid; COLOR: #a3a3a3; BORDER-BOTTOM: #bfbfbf = 1px solid; BACKGROUND-COLOR: #dfdfdf } .error { BORDER-RIGHT: #f00 1px solid; PADDING-RIGHT: 0.42em; BORDER-TOP: #f00 = 1px solid; PADDING-LEFT: 0.42em; MARGIN-BOTTOM: 0.83em; PADDING-BOTTOM: = 0.42em; BORDER-LEFT: #f00 1px solid; COLOR: #000; PADDING-TOP: 0.42em; = BORDER-BOTTOM: #f00 1px solid; BACKGROUND-COLOR: #fffafa } .hidden { DISPLAY: none } .highlight { BORDER-RIGHT: #c00 1px solid; BORDER-TOP: #c00 1px solid; BORDER-LEFT: = #c00 1px solid; BORDER-BOTTOM: #c00 1px solid; BACKGROUND-COLOR: #cc0000 } .highlight:hover { BORDER-RIGHT: #f00 1px solid; BORDER-TOP: #f00 1px solid; BORDER-LEFT: = #f00 1px solid; COLOR: #fff; BORDER-BOTTOM: #f00 1px solid; = BACKGROUND-COLOR: #ff0000 } .login { BORDER-BOTTOM: #695511 0.42em solid } .minus { BACKGROUND-POSITION: left top; PADDING-LEFT: 1.67em; BACKGROUND-IMAGE: = url(../images/icon-minus.gif); BACKGROUND-REPEAT: no-repeat } .msg { BORDER-RIGHT: #228b22 1px solid; PADDING-RIGHT: 0.42em; BORDER-TOP: = #228b22 1px solid; PADDING-LEFT: 0.42em; MARGIN-BOTTOM: 10px; = PADDING-BOTTOM: 0.42em; BORDER-LEFT: #228b22 1px solid; COLOR: #000; = PADDING-TOP: 0.42em; BORDER-BOTTOM: #228b22 1px solid; BACKGROUND-COLOR: = #f5fffa } .multi { FLOAT: left; WIDTH: 480px } .multi SELECT { FLOAT: left; WIDTH: 170px } .multi .multibuttons { FLOAT: left } .multi .multibuttons INPUT { MARGIN: 10px 5px } .statusamended { FONT-WEIGHT: bold; COLOR: red } .statusapproved { FONT-WEIGHT: bold; COLOR: green } .statuswaiting { FONT-WEIGHT: bold; COLOR: #ffa500 } .steps { FONT-WEIGHT: bold; FONT-SIZE: 130%; FLOAT: right; MARGIN: 10px 10px 0px = 0px; COLOR: #f00 } .thumb { FLOAT: left; MARGIN: 0px 10px 5px 0px } #content { CLEAR: both; PADDING-RIGHT: 1.67em; PADDING-LEFT: 1.67em; MIN-HEIGHT: = 350px; PADDING-BOTTOM: 0.83em; PADDING-TOP: 0.83em } #ebookHeaders { DISPLAY: none } .noprint { DISPLAY: none } .form { MARGIN: 0px 0px 1em } FIELDSET { BORDER-RIGHT: #758392 1px solid; PADDING-RIGHT: 1em; BORDER-TOP: = #758392 1px solid; PADDING-LEFT: 1em; PADDING-BOTTOM: 1em; MARGIN: 0px = 0px 10px; BORDER-LEFT: #758392 1px solid; PADDING-TOP: 1em; = BORDER-BOTTOM: #758392 1px solid; BACKGROUND-COLOR: #e7ebf7 } .form INPUT { BORDER-RIGHT: #758392 1px solid; BORDER-TOP: #758392 1px solid; = MARGIN-BOTTOM: 0.5em; BORDER-LEFT: #758392 1px solid; BORDER-BOTTOM: = #758392 1px solid } .form SELECT { BORDER-RIGHT: #758392 1px solid; BORDER-TOP: #758392 1px solid; = MARGIN-BOTTOM: 0.5em; BORDER-LEFT: #758392 1px solid; BORDER-BOTTOM: = #758392 1px solid } .form TEXTAREA { BORDER-RIGHT: #758392 1px solid; BORDER-TOP: #758392 1px solid; = MARGIN-BOTTOM: 0.5em; BORDER-LEFT: #758392 1px solid; BORDER-BOTTOM: = #758392 1px solid } .form INPUT:active { BORDER-RIGHT: #b3dd11 1px solid; BORDER-TOP: #b3dd11 1px solid; = BORDER-LEFT: #b3dd11 1px solid; BORDER-BOTTOM: #b3dd11 1px solid } .form SELECT:active { BORDER-RIGHT: #b3dd11 1px solid; BORDER-TOP: #b3dd11 1px solid; = BORDER-LEFT: #b3dd11 1px solid; BORDER-BOTTOM: #b3dd11 1px solid } .form TEXTAREA:active { BORDER-RIGHT: #b3dd11 1px solid; BORDER-TOP: #b3dd11 1px solid; = BORDER-LEFT: #b3dd11 1px solid; BORDER-BOTTOM: #b3dd11 1px solid } .form LABEL { CLEAR: left; DISPLAY: block; FONT-WEIGHT: bold; FLOAT: left; WIDTH: = 15em } .form LABEL.forcheck INPUT { MARGIN-BOTTOM: 0px; MARGIN-RIGHT: 0.5em } .form LABEL.forradio INPUT { MARGIN-BOTTOM: 0px; MARGIN-RIGHT: 0.5em } .form LABEL.forcheck { CLEAR: none; MARGIN-BOTTOM: 1em; WIDTH: 20em } .form LABEL.forradio { CLEAR: none; MARGIN-BOTTOM: 1em; WIDTH: 20em } .form LABEL.forradio { WIDTH: 7em } .form_error { FONT-WEIGHT: bold; MARGIN-BOTTOM: 1.5em; COLOR: #f00 } LEGEND { BORDER-RIGHT: #394e66 1px solid; PADDING-RIGHT: 0.5em; BORDER-TOP: = #394e66 1px solid; PADDING-LEFT: 0.5em; FONT-WEIGHT: bold; = MARGIN-BOTTOM: 1em; PADDING-BOTTOM: 0.2em; MARGIN-LEFT: -0.5em; = BORDER-LEFT: #394e66 1px solid; COLOR: #fff; PADDING-TOP: 0.2em; = BORDER-BOTTOM: #394e66 1px solid; BACKGROUND-COLOR: #0072bc } IMG { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px } .imgsizebad#current_size { FONT-WEIGHT: bold; COLOR: red } .imgsizegood#current_size { FONT-WEIGHT: bold; COLOR: green } #header { BACKGROUND: url(../images/bg_header.gif) #fff repeat-x 0px 20px; = PADDING-TOP: 20px; HEIGHT: 95px; TEXT-ALIGN: right } #header #logo { FLOAT: left; MARGIN: 20px 0px 0px 20px } #header H1 { PADDING-RIGHT: 1em; PADDING-LEFT: 0px; FONT-SIZE: 22px; PADDING-BOTTOM: = 0px; COLOR: #927e01; PADDING-TOP: 1.2em } #header H1 DIV.subtitle { FONT-SIZE: 12px; COLOR: #2d409a } #lot_set { PADDING-LEFT: 89px } #lot_type_label { WIDTH: 69px } #nav { CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; Z-INDEX: 100; = BACKGROUND: #d6d0b1; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; = POSITION: relative; HEIGHT: 25px } #nav_h4 { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; COLOR: = #ffffff; PADDING-TOP: 5px; FONT-FAMILY: Arial; TEXT-ALIGN: center } #nav A { PADDING-RIGHT: 15px; BACKGROUND-POSITION: 50% bottom; DISPLAY: block; = PADDING-LEFT: 15px; FONT-WEIGHT: normal; PADDING-BOTTOM: 0px; MARGIN: = 0px; COLOR: #000; LINE-HEIGHT: 25px; PADDING-TOP: 0px; = BACKGROUND-REPEAT: repeat-x; TEXT-ALIGN: center; TEXT-DECORATION: none } #nav A.inactive { BACKGROUND: #54678b; CURSOR: default; COLOR: #fff; FONT-STYLE: italic } #nav A.inactive:hover { BACKGROUND: #54678b; CURSOR: default; COLOR: #fff; FONT-STYLE: italic } #nav A:hover { BACKGROUND: #54678b; COLOR: #fff } #nav LI { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: = 0px; MARGIN: 0px; PADDING-TOP: 0px } #nav LI LI { FONT-SIZE: 11px; WIDTH: 140px } #nav LI LI A { BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 15px; PADDING-LEFT: 15px; = FONT-WEIGHT: normal; BORDER-LEFT-WIDTH: 0px; BACKGROUND: #eee; = BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 2px; MARGIN: 0px; COLOR: = #695511; LINE-HEIGHT: 20px; PADDING-TOP: 2px; TEXT-ALIGN: left; = BORDER-RIGHT-WIDTH: 0px } #nav LI LI A:hover { BACKGROUND: #54678b; COLOR: #fff } #nav LI UL { LEFT: -999em; WIDTH: 140px; POSITION: absolute; BACKGROUND-COLOR: = #abcbee } #nav LI UL UL { MARGIN: -24px 0px 0px 140px } #nav LI:hover UL UL { LEFT: -999em } #nav LI:hover UL UL UL { LEFT: -999em } #nav LI.sfhover UL UL { LEFT: -999em } #nav LI.sfhover UL UL UL { LEFT: -999em } #nav LI:hover UL { LEFT: auto } #nav LI LI:hover UL { LEFT: auto } #nav LI LI LI:hover UL { LEFT: auto } #nav LI.sfhover UL { LEFT: auto } #nav LI LI.sfhover UL { LEFT: auto } #nav LI LI LI.sfhover UL { LEFT: auto } #nav LI:hover UL { LEFT: auto } #nav LI.sfhover UL { LEFT: auto } #search_list { WIDTH: 729px } #search_buttons { WIDTH: 300px } #list { TEXT-ALIGN: right } #nav UL { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; LINE-HEIGHT: 1em; PADDING-TOP: 0px; LIST-STYLE-TYPE: none; = TEXT-ALIGN: left } #nav UL.right LI { FLOAT: right } #statusSelect SELECT { FONT-SIZE: 9px; WIDTH: 70px } #userSelect SELECT { FONT-SIZE: 9px; WIDTH: 70px } #wrapper { MARGIN: 0px auto; WIDTH: 80em; BACKGROUND-COLOR: #f8f9fd; TEXT-ALIGN: = left } #wrapper_search { MARGIN: 0px auto; WIDTH: 800px; BACKGROUND-COLOR: #f8f9fd; TEXT-ALIGN: = left } #imgeditor-container { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; MARGIN: = 16px 318px 0px 0px; PADDING-TOP: 0px } #ImageEditorImage { BACKGROUND-REPEAT: no-repeat } #ImageEditorLoadingText { FONT-WEIGHT: bold; FONT-SIZE: 16px; COLOR: #333; WHITE-SPACE: nowrap } #ImageEditorTxtWidth { FONT-SIZE: 10px; TEXT-ALIGN: center } #ImageEditorTxtHeight { FONT-SIZE: 10px; TEXT-ALIGN: center } #imgeditor-help { FLOAT: right; WIDTH: 300px } #imgeditor-resize { BORDER-RIGHT: #9da3a9 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: = #9da3a9 1px solid; PADDING-LEFT: 5px; BACKGROUND: #e7ebf7; = PADDING-BOTTOM: 3px; BORDER-LEFT: #9da3a9 1px solid; PADDING-TOP: 3px; = BORDER-BOTTOM: #9da3a9 1px solid } SPAN.width { BORDER-RIGHT: #e7ebf7 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: = #e7ebf7 1px solid; PADDING-LEFT: 5px; BACKGROUND: #e7ebf7; = PADDING-BOTTOM: 5px; BORDER-LEFT: #e7ebf7 1px solid; PADDING-TOP: 5px; = BORDER-BOTTOM: #e7ebf7 1px solid } SPAN.height { BORDER-RIGHT: #e7ebf7 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: = #e7ebf7 1px solid; PADDING-LEFT: 5px; BACKGROUND: #e7ebf7; = PADDING-BOTTOM: 5px; BORDER-LEFT: #e7ebf7 1px solid; PADDING-TOP: 5px; = BORDER-BOTTOM: #e7ebf7 1px solid } INPUT.resize-field { BORDER-RIGHT: #e7ebf7 1px solid; PADDING-RIGHT: 1px; BORDER-TOP: = #e7ebf7 1px solid; PADDING-LEFT: 1px; PADDING-BOTTOM: 2px; BORDER-LEFT: = #e7ebf7 1px solid; PADDING-TOP: 2px; BORDER-BOTTOM: #e7ebf7 1px solid } .formimg { PADDING-LEFT: 15em } .formimg P.caption { FONT-SIZE: 0.7em; MARGIN-BOTTOM: 0.5em; WIDTH: 250px; LINE-HEIGHT: 1.6; = FONT-STYLE: italic; BACKGROUND-COLOR: #fff; TEXT-ALIGN: center } TD DIV.formimg { PADDING-LEFT: 0px } TD DIV.formimg P.caption { WIDTH: auto } TD.formLabel { PADDING-LEFT: 0px; WIDTH: 130px; TEXT-ALIGN: left } TD.formLabelRight { PADDING-LEFT: 50px; WIDTH: 146px; TEXT-ALIGN: left } TD.grey { BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; = BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid } TABLE.lot_data { FONT-SIZE: smaller } TABLE.lot_data TD { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } TABLE.lot_data TD.top_left { BORDER-TOP: #afafaf 1px solid; BORDER-LEFT: #afafaf 1px solid; = PADDING-TOP: 2px! important } TABLE.lot_data TD.top { BORDER-TOP: #afafaf 1px solid; PADDING-TOP: 2px! important } TABLE.lot_data TD.top_right { BORDER-RIGHT: #afafaf 1px solid; BORDER-TOP: #afafaf 1px solid; = PADDING-TOP: 2px! important } TABLE.lot_data TD.right { BORDER-RIGHT: #afafaf 1px solid } TABLE.lot_data TD.left { BORDER-LEFT: #afafaf 1px solid } TABLE.lot_data TD.bottom_left { PADDING-BOTTOM: 2px! important; BORDER-LEFT: #afafaf 1px solid; = BORDER-BOTTOM: #afafaf 1px solid } TABLE.lot_data TD.bottom { PADDING-BOTTOM: 2px! important; BORDER-BOTTOM: #afafaf 1px solid } TABLE.lot_data TD.bottom_right { BORDER-RIGHT: #afafaf 1px solid; PADDING-BOTTOM: 2px! important; = BORDER-BOTTOM: #afafaf 1px solid } TABLE.lot_data TD.top_bottom { BORDER-TOP: #afafaf 1px solid; PADDING-BOTTOM: 2px! important; = BORDER-BOTTOM: #afafaf 1px solid } .bgmmblue { BACKGROUND-COLOR: rgb(0,79,163) } .mmblue { COLOR: rgb(0,79,163) } .courier_small { FONT-SIZE: 8pt; FONT-FAMILY: Courier } INPUT.blue { COLOR: #ffffff; BACKGROUND-COLOR: #003f6f } INPUT.blue { COLOR: #ffffff; BACKGROUND-COLOR: #003f6f } TD { OVERFLOW: hidden } TD.lot_vendor { WIDTH: 240px } TD.lot_type { WIDTH: 320px } TD.lot_name { WIDTH: 100px } TD.lot_color { WIDTH: 140px } TD.lot_sex { WIDTH: 95px } TD.lot_sire { WIDTH: 135px } TD.lot_dam { WIDTH: 185px } TD.lot_bonusscheme { WIDTH: 140px } TD.lot_session { WIDTH: 100px } TD.lot_buyer { WIDTH: 325px } ------=_NextPart_000_0000_01C98C5F.DC641CA0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://magicmillions.ddm.magsbyme.com/sfLightboxPlugin/css/lightbox.css #lightbox { Z-INDEX: 100; LEFT: 0px; WIDTH: 100%; LINE-HEIGHT: 0; POSITION: = absolute; TEXT-ALIGN: center } #lightbox A IMG { BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: = none; BORDER-BOTTOM-STYLE: none } #outerImageContainer { MARGIN: 0px auto; WIDTH: 250px; POSITION: relative; HEIGHT: 250px; = BACKGROUND-COLOR: #fff } #imageContainer { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; = PADDING-TOP: 10px } #loading { LEFT: 0%; WIDTH: 100%; LINE-HEIGHT: 0px; POSITION: absolute; TOP: 40%; = HEIGHT: 25%; TEXT-ALIGN: center } #hoverNav { Z-INDEX: 10; LEFT: 0px; WIDTH: 100%; POSITION: absolute; TOP: 0px; = HEIGHT: 100% } #imageContainer > #hoverNav { LEFT: 0px } #hoverNav A { outline: none } #prevLink { DISPLAY: block; BACKGROUND: url(../images/blank.gif) no-repeat; WIDTH: = 49%; HEIGHT: 100% } #nextLink { DISPLAY: block; BACKGROUND: url(../images/blank.gif) no-repeat; WIDTH: = 49%; HEIGHT: 100% } #prevLink { LEFT: 0px; FLOAT: left } #nextLink { RIGHT: 0px; FLOAT: right } #prevLink:hover { BACKGROUND: url(../images/prevlabel.gif) no-repeat left 15% } #prevLink:hover:visited { BACKGROUND: url(../images/prevlabel.gif) no-repeat left 15% } #nextLink:hover { BACKGROUND: url(../images/nextlabel.gif) no-repeat right 15% } #nextLink:hover:visited { BACKGROUND: url(../images/nextlabel.gif) no-repeat right 15% } #imageDataContainer { MARGIN: 0px auto; FONT: 10px/1.4em Verdana, Helvetica, sans-serif; = OVERFLOW: auto; WIDTH: 100%; BACKGROUND-COLOR: #fff } #imageData { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; COLOR: = #666; PADDING-TOP: 0px } #imageData #imageDetails { FLOAT: left; WIDTH: 70%; TEXT-ALIGN: left } #imageData #caption { FONT-WEIGHT: bold } #imageData #numberDisplay { CLEAR: left; DISPLAY: block; PADDING-BOTTOM: 1em } #imageData #bottomNavClose { FLOAT: right; PADDING-BOTTOM: 0.7em; WIDTH: 66px } #overlay { Z-INDEX: 90; LEFT: 0px; WIDTH: 100%; POSITION: absolute; TOP: 0px; = HEIGHT: 500px; BACKGROUND-COLOR: #000 } ------=_NextPart_000_0000_01C98C5F.DC641CA0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://magicmillions.ddm.magsbyme.com/css/global-ie.css FIELDSET { MARGIN-TOP: 2em; DISPLAY: block; Z-INDEX: 1; POSITION: relative } LEGEND { Z-INDEX: 1; LEFT: 0.2em; POSITION: absolute; TOP: -1em } #lot_set { PADDING-LEFT: 120px } #lot_type_label { WIDTH: 100px } #nav { PADDING-RIGHT: 4px! important; PADDING-LEFT: 4px! important; = PADDING-BOTTOM: 4px! important; MARGIN: 0px; PADDING-TOP: 4px! = important; TEXT-ALIGN: center } #nav_h4 { PADDING-RIGHT: 0px! important; DISPLAY: inline; PADDING-LEFT: 0px! = important; PADDING-BOTTOM: 0px! important; COLOR: #ffffff; PADDING-TOP: = 0px! important; FONT-FAMILY: Arial; TEXT-ALIGN: center } #search_list { WIDTH: 760px } #search_buttons { WIDTH: 300px } #list { TEXT-ALIGN: right } TD.formLabel { PADDING-LEFT: 0px; WIDTH: 160px; TEXT-ALIGN: left } TD.formLabelRight { PADDING-LEFT: 50px; WIDTH: 150px; TEXT-ALIGN: left } ------=_NextPart_000_0000_01C98C5F.DC641CA0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://magicmillions.ddm.magsbyme.com/js/global.js // Move options from one select list to another function moveOption ( objSourceElement, objTargetElement ) { var aryTempSourceOptions =3D new Array(); var x =3D 0; =09 //looping through source element to find selected options for (var i =3D 0; i < objSourceElement.length; i++) { if (objSourceElement.options[i].selected) { //need to move this option to target element var intTargetLen =3D objTargetElement.length++; objTargetElement.options[intTargetLen].text =3D = objSourceElement.options[i].text; objTargetElement.options[intTargetLen].value =3D = objSourceElement.options[i].value; } else { //storing options that stay to recreate select element var objTempValues =3D new Object(); objTempValues.text =3D objSourceElement.options[i].text; objTempValues.value =3D objSourceElement.options[i].value; aryTempSourceOptions[x] =3D objTempValues; x++; } } =09 //resetting length of source objSourceElement.length =3D aryTempSourceOptions.length; //looping through temp array to recreate source select element for (var i =3D 0; i < aryTempSourceOptions.length; i++) { objSourceElement.options[i].text =3D aryTempSourceOptions[i].text; objSourceElement.options[i].value =3D aryTempSourceOptions[i].value; objSourceElement.options[i].selected =3D false; } } function $() { var elements =3D new Array(); for (var i =3D 0; i < arguments.length; i++) { var element =3D arguments[i]; if (typeof element =3D=3D 'string') element =3D document.getElementById(element); if (arguments.length =3D=3D 1) return element; elements.push(element); } return elements; } // Usage: addFormating("U") // Options: // "U" - underline // "B" - bold // "I" - italic function addFormating(obj,tag) { var selectedText =3D ""; tag =3D "@"+tag; if (obj.setSelectionRange) { selectedText =3D = obj.value.substring(obj.selectionStart,obj.selectionEnd) obj.value =3D obj.value.substring(0,obj.selectionStart) + tag + = selectedText + tag + = obj.value.substring(obj.selectionEnd,obj.value.length) } else { selectedText =3D obj.selection.createRange().text;=20 if (selectedText !=3D "") { var newText =3D tag + selectedText + tag; obj.selection.createRange().text =3D newText; }=20 } } function charCounter(txtBox,counter,texto,chars) { var txtBoxObj =3D $(txtBox); var counterObj =3D $(counter); if ( txtBoxObj && counterObj ) { var len =3D chars - txtBoxObj.value.length; if(len <=3D 0) { len=3D0; texto=3D' '+texto+' '; txtBoxObj.value=3DtxtBoxObj.value.substr(0,chars); } counterObj.innerHTML =3D texto.replace("{CHAR}",len); } } // Son of suckerfish IE6 fix sfHover =3D function() { var sfEls =3D = document.getElementById("nav").getElementsByTagName("LI"); for (var i=3D0; i)((\n|\r|.)*?)(?:<\/script>)',=0A= emptyFunction: function() {},=0A= K: function(x) { return x }=0A= }=0A= =0A= var Class =3D {=0A= create: function() {=0A= return function() {=0A= this.initialize.apply(this, arguments);=0A= }=0A= }=0A= }=0A= =0A= var Abstract =3D new Object();=0A= =0A= Object.extend =3D function(destination, source) {=0A= for (var property in source) {=0A= destination[property] =3D source[property];=0A= }=0A= return destination;=0A= }=0A= =0A= Object.extend(Object, {=0A= inspect: function(object) {=0A= try {=0A= if (object =3D=3D=3D undefined) return 'undefined';=0A= if (object =3D=3D=3D null) return 'null';=0A= return object.inspect ? object.inspect() : object.toString();=0A= } catch (e) {=0A= if (e instanceof RangeError) return '...';=0A= throw e;=0A= }=0A= },=0A= =0A= keys: function(object) {=0A= var keys =3D [];=0A= for (var property in object)=0A= keys.push(property);=0A= return keys;=0A= },=0A= =0A= values: function(object) {=0A= var values =3D [];=0A= for (var property in object)=0A= values.push(object[property]);=0A= return values;=0A= },=0A= =0A= clone: function(object) {=0A= return Object.extend({}, object);=0A= }=0A= });=0A= =0A= Function.prototype.bind =3D function() {=0A= var __method =3D this, args =3D $A(arguments), object =3D args.shift();=0A= return function() {=0A= return __method.apply(object, args.concat($A(arguments)));=0A= }=0A= }=0A= =0A= Function.prototype.bindAsEventListener =3D function(object) {=0A= var __method =3D this, args =3D $A(arguments), object =3D args.shift();=0A= return function(event) {=0A= return __method.apply(object, [( event || = window.event)].concat(args).concat($A(arguments)));=0A= }=0A= }=0A= =0A= Object.extend(Number.prototype, {=0A= toColorPart: function() {=0A= var digits =3D this.toString(16);=0A= if (this < 16) return '0' + digits;=0A= return digits;=0A= },=0A= =0A= succ: function() {=0A= return this + 1;=0A= },=0A= =0A= times: function(iterator) {=0A= $R(0, this, true).each(iterator);=0A= return this;=0A= }=0A= });=0A= =0A= var Try =3D {=0A= these: function() {=0A= var returnValue;=0A= =0A= for (var i =3D 0, length =3D arguments.length; i < length; i++) {=0A= var lambda =3D arguments[i];=0A= try {=0A= returnValue =3D lambda();=0A= break;=0A= } catch (e) {}=0A= }=0A= =0A= return returnValue;=0A= }=0A= }=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= var PeriodicalExecuter =3D Class.create();=0A= PeriodicalExecuter.prototype =3D {=0A= initialize: function(callback, frequency) {=0A= this.callback =3D callback;=0A= this.frequency =3D frequency;=0A= this.currentlyExecuting =3D false;=0A= =0A= this.registerCallback();=0A= },=0A= =0A= registerCallback: function() {=0A= this.timer =3D setInterval(this.onTimerEvent.bind(this), = this.frequency * 1000);=0A= },=0A= =0A= stop: function() {=0A= if (!this.timer) return;=0A= clearInterval(this.timer);=0A= this.timer =3D null;=0A= },=0A= =0A= onTimerEvent: function() {=0A= if (!this.currentlyExecuting) {=0A= try {=0A= this.currentlyExecuting =3D true;=0A= this.callback(this);=0A= } finally {=0A= this.currentlyExecuting =3D false;=0A= }=0A= }=0A= }=0A= }=0A= String.interpret =3D function(value){=0A= return value =3D=3D null ? '' : String(value);=0A= }=0A= =0A= Object.extend(String.prototype, {=0A= gsub: function(pattern, replacement) {=0A= var result =3D '', source =3D this, match;=0A= replacement =3D arguments.callee.prepareReplacement(replacement);=0A= =0A= while (source.length > 0) {=0A= if (match =3D source.match(pattern)) {=0A= result +=3D source.slice(0, match.index);=0A= result +=3D String.interpret(replacement(match));=0A= source =3D source.slice(match.index + match[0].length);=0A= } else {=0A= result +=3D source, source =3D '';=0A= }=0A= }=0A= return result;=0A= },=0A= =0A= sub: function(pattern, replacement, count) {=0A= replacement =3D this.gsub.prepareReplacement(replacement);=0A= count =3D count =3D=3D=3D undefined ? 1 : count;=0A= =0A= return this.gsub(pattern, function(match) {=0A= if (--count < 0) return match[0];=0A= return replacement(match);=0A= });=0A= },=0A= =0A= scan: function(pattern, iterator) {=0A= this.gsub(pattern, iterator);=0A= return this;=0A= },=0A= =0A= truncate: function(length, truncation) {=0A= length =3D length || 30;=0A= truncation =3D truncation =3D=3D=3D undefined ? '...' : truncation;=0A= return this.length > length ?=0A= this.slice(0, length - truncation.length) + truncation : this;=0A= },=0A= =0A= strip: function() {=0A= return this.replace(/^\s+/, '').replace(/\s+$/, '');=0A= },=0A= =0A= stripTags: function() {=0A= return this.replace(/<\/?[^>]+>/gi, '');=0A= },=0A= =0A= stripScripts: function() {=0A= return this.replace(new RegExp(Prototype.ScriptFragment, 'img'), '');=0A= },=0A= =0A= extractScripts: function() {=0A= var matchAll =3D new RegExp(Prototype.ScriptFragment, 'img');=0A= var matchOne =3D new RegExp(Prototype.ScriptFragment, 'im');=0A= return (this.match(matchAll) || []).map(function(scriptTag) {=0A= return (scriptTag.match(matchOne) || ['', ''])[1];=0A= });=0A= },=0A= =0A= evalScripts: function() {=0A= return this.extractScripts().map(function(script) { return = eval(script) });=0A= },=0A= =0A= escapeHTML: function() {=0A= var div =3D document.createElement('div');=0A= var text =3D document.createTextNode(this);=0A= div.appendChild(text);=0A= return div.innerHTML;=0A= },=0A= =0A= unescapeHTML: function() {=0A= var div =3D document.createElement('div');=0A= div.innerHTML =3D this.stripTags();=0A= return div.childNodes[0] ? (div.childNodes.length > 1 ?=0A= $A(div.childNodes).inject('',function(memo,node){ return = memo+node.nodeValue }) :=0A= div.childNodes[0].nodeValue) : '';=0A= },=0A= =0A= toQueryParams: function(separator) {=0A= var match =3D this.strip().match(/([^?#]*)(#.*)?$/);=0A= if (!match) return {};=0A= =0A= return match[1].split(separator || '&').inject({}, function(hash, = pair) {=0A= if ((pair =3D pair.split('=3D'))[0]) {=0A= var name =3D decodeURIComponent(pair[0]);=0A= var value =3D pair[1] ? decodeURIComponent(pair[1]) : undefined;=0A= =0A= if (hash[name] !=3D=3D undefined) {=0A= if (hash[name].constructor !=3D Array)=0A= hash[name] =3D [hash[name]];=0A= if (value) hash[name].push(value);=0A= }=0A= else hash[name] =3D value;=0A= }=0A= return hash;=0A= });=0A= },=0A= =0A= toArray: function() {=0A= return this.split('');=0A= },=0A= =0A= succ: function() {=0A= return this.slice(0, this.length - 1) +=0A= String.fromCharCode(this.charCodeAt(this.length - 1) + 1);=0A= },=0A= =0A= camelize: function() {=0A= var parts =3D this.split('-'), len =3D parts.length;=0A= if (len =3D=3D 1) return parts[0];=0A= =0A= var camelized =3D this.charAt(0) =3D=3D '-'=0A= ? parts[0].charAt(0).toUpperCase() + parts[0].substring(1)=0A= : parts[0];=0A= =0A= for (var i =3D 1; i < len; i++)=0A= camelized +=3D parts[i].charAt(0).toUpperCase() + = parts[i].substring(1);=0A= =0A= return camelized;=0A= },=0A= =0A= capitalize: function(){=0A= return this.charAt(0).toUpperCase() + = this.substring(1).toLowerCase();=0A= },=0A= =0A= underscore: function() {=0A= return this.gsub(/::/, = '/').gsub(/([A-Z]+)([A-Z][a-z])/,'#{1}_#{2}').gsub(/([a-z\d])([A-Z])/,'#{= 1}_#{2}').gsub(/-/,'_').toLowerCase();=0A= },=0A= =0A= dasherize: function() {=0A= return this.gsub(/_/,'-');=0A= },=0A= =0A= inspect: function(useDoubleQuotes) {=0A= var escapedString =3D this.replace(/\\/g, '\\\\');=0A= if (useDoubleQuotes)=0A= return '"' + escapedString.replace(/"/g, '\\"') + '"';=0A= else=0A= return "'" + escapedString.replace(/'/g, '\\\'') + "'";=0A= }=0A= });=0A= =0A= String.prototype.gsub.prepareReplacement =3D function(replacement) {=0A= if (typeof replacement =3D=3D 'function') return replacement;=0A= var template =3D new Template(replacement);=0A= return function(match) { return template.evaluate(match) };=0A= }=0A= =0A= String.prototype.parseQuery =3D String.prototype.toQueryParams;=0A= =0A= var Template =3D Class.create();=0A= Template.Pattern =3D /(^|.|\r|\n)(#\{(.*?)\})/;=0A= Template.prototype =3D {=0A= initialize: function(template, pattern) {=0A= this.template =3D template.toString();=0A= this.pattern =3D pattern || Template.Pattern;=0A= },=0A= =0A= evaluate: function(object) {=0A= return this.template.gsub(this.pattern, function(match) {=0A= var before =3D match[1];=0A= if (before =3D=3D '\\') return match[2];=0A= return before + String.interpret(object[match[3]]);=0A= });=0A= }=0A= }=0A= =0A= var $break =3D new Object();=0A= var $continue =3D new Object();=0A= =0A= var Enumerable =3D {=0A= each: function(iterator) {=0A= var index =3D 0;=0A= try {=0A= this._each(function(value) {=0A= try {=0A= iterator(value, index++);=0A= } catch (e) {=0A= if (e !=3D $continue) throw e;=0A= }=0A= });=0A= } catch (e) {=0A= if (e !=3D $break) throw e;=0A= }=0A= return this;=0A= },=0A= =0A= eachSlice: function(number, iterator) {=0A= var index =3D -number, slices =3D [], array =3D this.toArray();=0A= while ((index +=3D number) < array.length)=0A= slices.push(array.slice(index, index+number));=0A= return slices.map(iterator);=0A= },=0A= =0A= all: function(iterator) {=0A= var result =3D true;=0A= this.each(function(value, index) {=0A= result =3D result && !!(iterator || Prototype.K)(value, index);=0A= if (!result) throw $break;=0A= });=0A= return result;=0A= },=0A= =0A= any: function(iterator) {=0A= var result =3D false;=0A= this.each(function(value, index) {=0A= if (result =3D !!(iterator || Prototype.K)(value, index))=0A= throw $break;=0A= });=0A= return result;=0A= },=0A= =0A= collect: function(iterator) {=0A= var results =3D [];=0A= this.each(function(value, index) {=0A= results.push((iterator || Prototype.K)(value, index));=0A= });=0A= return results;=0A= },=0A= =0A= detect: function(iterator) {=0A= var result;=0A= this.each(function(value, index) {=0A= if (iterator(value, index)) {=0A= result =3D value;=0A= throw $break;=0A= }=0A= });=0A= return result;=0A= },=0A= =0A= findAll: function(iterator) {=0A= var results =3D [];=0A= this.each(function(value, index) {=0A= if (iterator(value, index))=0A= results.push(value);=0A= });=0A= return results;=0A= },=0A= =0A= grep: function(pattern, iterator) {=0A= var results =3D [];=0A= this.each(function(value, index) {=0A= var stringValue =3D value.toString();=0A= if (stringValue.match(pattern))=0A= results.push((iterator || Prototype.K)(value, index));=0A= })=0A= return results;=0A= },=0A= =0A= include: function(object) {=0A= var found =3D false;=0A= this.each(function(value) {=0A= if (value =3D=3D object) {=0A= found =3D true;=0A= throw $break;=0A= }=0A= });=0A= return found;=0A= },=0A= =0A= inGroupsOf: function(number, fillWith) {=0A= fillWith =3D fillWith =3D=3D=3D undefined ? null : fillWith;=0A= return this.eachSlice(number, function(slice) {=0A= while(slice.length < number) slice.push(fillWith);=0A= return slice;=0A= });=0A= },=0A= =0A= inject: function(memo, iterator) {=0A= this.each(function(value, index) {=0A= memo =3D iterator(memo, value, index);=0A= });=0A= return memo;=0A= },=0A= =0A= invoke: function(method) {=0A= var args =3D $A(arguments).slice(1);=0A= return this.map(function(value) {=0A= return value[method].apply(value, args);=0A= });=0A= },=0A= =0A= max: function(iterator) {=0A= var result;=0A= this.each(function(value, index) {=0A= value =3D (iterator || Prototype.K)(value, index);=0A= if (result =3D=3D undefined || value >=3D result)=0A= result =3D value;=0A= });=0A= return result;=0A= },=0A= =0A= min: function(iterator) {=0A= var result;=0A= this.each(function(value, index) {=0A= value =3D (iterator || Prototype.K)(value, index);=0A= if (result =3D=3D undefined || value < result)=0A= result =3D value;=0A= });=0A= return result;=0A= },=0A= =0A= partition: function(iterator) {=0A= var trues =3D [], falses =3D [];=0A= this.each(function(value, index) {=0A= ((iterator || Prototype.K)(value, index) ?=0A= trues : falses).push(value);=0A= });=0A= return [trues, falses];=0A= },=0A= =0A= pluck: function(property) {=0A= var results =3D [];=0A= this.each(function(value, index) {=0A= results.push(value[property]);=0A= });=0A= return results;=0A= },=0A= =0A= reject: function(iterator) {=0A= var results =3D [];=0A= this.each(function(value, index) {=0A= if (!iterator(value, index))=0A= results.push(value);=0A= });=0A= return results;=0A= },=0A= =0A= sortBy: function(iterator) {=0A= return this.map(function(value, index) {=0A= return {value: value, criteria: iterator(value, index)};=0A= }).sort(function(left, right) {=0A= var a =3D left.criteria, b =3D right.criteria;=0A= return a < b ? -1 : a > b ? 1 : 0;=0A= }).pluck('value');=0A= },=0A= =0A= toArray: function() {=0A= return this.map();=0A= },=0A= =0A= zip: function() {=0A= var iterator =3D Prototype.K, args =3D $A(arguments);=0A= if (typeof args.last() =3D=3D 'function')=0A= iterator =3D args.pop();=0A= =0A= var collections =3D [this].concat(args).map($A);=0A= return this.map(function(value, index) {=0A= return iterator(collections.pluck(index));=0A= });=0A= },=0A= =0A= size: function() {=0A= return this.toArray().length;=0A= },=0A= =0A= inspect: function() {=0A= return '#';=0A= }=0A= }=0A= =0A= Object.extend(Enumerable, {=0A= map: Enumerable.collect,=0A= find: Enumerable.detect,=0A= select: Enumerable.findAll,=0A= member: Enumerable.include,=0A= entries: Enumerable.toArray=0A= });=0A= var $A =3D Array.from =3D function(iterable) {=0A= if (!iterable) return [];=0A= if (iterable.toArray) {=0A= return iterable.toArray();=0A= } else {=0A= var results =3D [];=0A= for (var i =3D 0, length =3D iterable.length; i < length; i++)=0A= results.push(iterable[i]);=0A= return results;=0A= }=0A= }=0A= =0A= Object.extend(Array.prototype, Enumerable);=0A= =0A= if (!Array.prototype._reverse)=0A= Array.prototype._reverse =3D Array.prototype.reverse;=0A= =0A= Object.extend(Array.prototype, {=0A= _each: function(iterator) {=0A= for (var i =3D 0, length =3D this.length; i < length; i++)=0A= iterator(this[i]);=0A= },=0A= =0A= clear: function() {=0A= this.length =3D 0;=0A= return this;=0A= },=0A= =0A= first: function() {=0A= return this[0];=0A= },=0A= =0A= last: function() {=0A= return this[this.length - 1];=0A= },=0A= =0A= compact: function() {=0A= return this.select(function(value) {=0A= return value !=3D null;=0A= });=0A= },=0A= =0A= flatten: function() {=0A= return this.inject([], function(array, value) {=0A= return array.concat(value && value.constructor =3D=3D Array ?=0A= value.flatten() : [value]);=0A= });=0A= },=0A= =0A= without: function() {=0A= var values =3D $A(arguments);=0A= return this.select(function(value) {=0A= return !values.include(value);=0A= });=0A= },=0A= =0A= indexOf: function(object) {=0A= for (var i =3D 0, length =3D this.length; i < length; i++)=0A= if (this[i] =3D=3D object) return i;=0A= return -1;=0A= },=0A= =0A= reverse: function(inline) {=0A= return (inline !=3D=3D false ? this : this.toArray())._reverse();=0A= },=0A= =0A= reduce: function() {=0A= return this.length > 1 ? this : this[0];=0A= },=0A= =0A= uniq: function() {=0A= return this.inject([], function(array, value) {=0A= return array.include(value) ? array : array.concat([value]);=0A= });=0A= },=0A= =0A= clone: function() {=0A= return [].concat(this);=0A= },=0A= =0A= size: function() {=0A= return this.length;=0A= },=0A= =0A= inspect: function() {=0A= return '[' + this.map(Object.inspect).join(', ') + ']';=0A= }=0A= });=0A= =0A= Array.prototype.toArray =3D Array.prototype.clone;=0A= =0A= function $w(string){=0A= string =3D string.strip();=0A= return string ? string.split(/\s+/) : [];=0A= }=0A= =0A= if(window.opera){=0A= Array.prototype.concat =3D function(){=0A= var array =3D [];=0A= for(var i =3D 0, length =3D this.length; i < length; i++) = array.push(this[i]);=0A= for(var i =3D 0, length =3D arguments.length; i < length; i++) {=0A= if(arguments[i].constructor =3D=3D Array) {=0A= for(var j =3D 0, arrayLength =3D arguments[i].length; j < = arrayLength; j++)=0A= array.push(arguments[i][j]);=0A= } else {=0A= array.push(arguments[i]);=0A= }=0A= }=0A= return array;=0A= }=0A= }=0A= var Hash =3D function(obj) {=0A= Object.extend(this, obj || {});=0A= };=0A= =0A= Object.extend(Hash, {=0A= toQueryString: function(obj) {=0A= var parts =3D [];=0A= =0A= this.prototype._each.call(obj, function(pair) {=0A= if (!pair.key) return;=0A= =0A= if (pair.value && pair.value.constructor =3D=3D Array) {=0A= var values =3D pair.value.compact();=0A= if (values.length < 2) pair.value =3D values.reduce();=0A= else {=0A= key =3D encodeURIComponent(pair.key);=0A= values.each(function(value) {=0A= value =3D value !=3D undefined ? encodeURIComponent(value) : = '';=0A= parts.push(key + '=3D' + encodeURIComponent(value));=0A= });=0A= return;=0A= }=0A= }=0A= if (pair.value =3D=3D undefined) pair[1] =3D '';=0A= parts.push(pair.map(encodeURIComponent).join('=3D'));=0A= });=0A= =0A= return parts.join('&');=0A= }=0A= });=0A= =0A= Object.extend(Hash.prototype, Enumerable);=0A= Object.extend(Hash.prototype, {=0A= _each: function(iterator) {=0A= for (var key in this) {=0A= var value =3D this[key];=0A= if (value && value =3D=3D Hash.prototype[key]) continue;=0A= =0A= var pair =3D [key, value];=0A= pair.key =3D key;=0A= pair.value =3D value;=0A= iterator(pair);=0A= }=0A= },=0A= =0A= keys: function() {=0A= return this.pluck('key');=0A= },=0A= =0A= values: function() {=0A= return this.pluck('value');=0A= },=0A= =0A= merge: function(hash) {=0A= return $H(hash).inject(this, function(mergedHash, pair) {=0A= mergedHash[pair.key] =3D pair.value;=0A= return mergedHash;=0A= });=0A= },=0A= =0A= remove: function() {=0A= var result;=0A= for(var i =3D 0, length =3D arguments.length; i < length; i++) {=0A= var value =3D this[arguments[i]];=0A= if (value !=3D=3D undefined){=0A= if (result =3D=3D=3D undefined) result =3D value;=0A= else {=0A= if (result.constructor !=3D Array) result =3D [result];=0A= result.push(value)=0A= }=0A= }=0A= delete this[arguments[i]];=0A= }=0A= return result;=0A= },=0A= =0A= toQueryString: function() {=0A= return Hash.toQueryString(this);=0A= },=0A= =0A= inspect: function() {=0A= return '#';=0A= }=0A= });=0A= =0A= function $H(object) {=0A= if (object && object.constructor =3D=3D Hash) return object;=0A= return new Hash(object);=0A= };=0A= ObjectRange =3D Class.create();=0A= Object.extend(ObjectRange.prototype, Enumerable);=0A= Object.extend(ObjectRange.prototype, {=0A= initialize: function(start, end, exclusive) {=0A= this.start =3D start;=0A= this.end =3D end;=0A= this.exclusive =3D exclusive;=0A= },=0A= =0A= _each: function(iterator) {=0A= var value =3D this.start;=0A= while (this.include(value)) {=0A= iterator(value);=0A= value =3D value.succ();=0A= }=0A= },=0A= =0A= include: function(value) {=0A= if (value < this.start)=0A= return false;=0A= if (this.exclusive)=0A= return value < this.end;=0A= return value <=3D this.end;=0A= }=0A= });=0A= =0A= var $R =3D function(start, end, exclusive) {=0A= return new ObjectRange(start, end, exclusive);=0A= }=0A= =0A= var Ajax =3D {=0A= getTransport: function() {=0A= return Try.these(=0A= function() {return new XMLHttpRequest()},=0A= function() {return new ActiveXObject('Msxml2.XMLHTTP')},=0A= function() {return new ActiveXObject('Microsoft.XMLHTTP')}=0A= ) || false;=0A= },=0A= =0A= activeRequestCount: 0=0A= }=0A= =0A= Ajax.Responders =3D {=0A= responders: [],=0A= =0A= _each: function(iterator) {=0A= this.responders._each(iterator);=0A= },=0A= =0A= register: function(responder) {=0A= if (!this.include(responder))=0A= this.responders.push(responder);=0A= },=0A= =0A= unregister: function(responder) {=0A= this.responders =3D this.responders.without(responder);=0A= },=0A= =0A= dispatch: function(callback, request, transport, json) {=0A= this.each(function(responder) {=0A= if (typeof responder[callback] =3D=3D 'function') {=0A= try {=0A= responder[callback].apply(responder, [request, transport, = json]);=0A= } catch (e) {}=0A= }=0A= });=0A= }=0A= };=0A= =0A= Object.extend(Ajax.Responders, Enumerable);=0A= =0A= Ajax.Responders.register({=0A= onCreate: function() {=0A= Ajax.activeRequestCount++;=0A= },=0A= onComplete: function() {=0A= Ajax.activeRequestCount--;=0A= }=0A= });=0A= =0A= Ajax.Base =3D function() {};=0A= Ajax.Base.prototype =3D {=0A= setOptions: function(options) {=0A= this.options =3D {=0A= method: 'post',=0A= asynchronous: true,=0A= contentType: 'application/x-www-form-urlencoded',=0A= encoding: 'UTF-8',=0A= parameters: ''=0A= }=0A= Object.extend(this.options, options || {});=0A= =0A= this.options.method =3D this.options.method.toLowerCase();=0A= if (typeof this.options.parameters =3D=3D 'string')=0A= this.options.parameters =3D = this.options.parameters.toQueryParams();=0A= }=0A= }=0A= =0A= Ajax.Request =3D Class.create();=0A= Ajax.Request.Events =3D=0A= ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete'];=0A= =0A= Ajax.Request.prototype =3D Object.extend(new Ajax.Base(), {=0A= _complete: false,=0A= =0A= initialize: function(url, options) {=0A= this.transport =3D Ajax.getTransport();=0A= this.setOptions(options);=0A= this.request(url);=0A= },=0A= =0A= request: function(url) {=0A= this.url =3D url;=0A= this.method =3D this.options.method;=0A= var params =3D this.options.parameters;=0A= =0A= if (!['get', 'post'].include(this.method)) {=0A= // simulate other verbs over post=0A= params['_method'] =3D this.method;=0A= this.method =3D 'post';=0A= }=0A= =0A= params =3D Hash.toQueryString(params);=0A= if (params && /Konqueror|Safari|KHTML/.test(navigator.userAgent)) = params +=3D '&_=3D'=0A= =0A= // when GET, append parameters to URL=0A= if (this.method =3D=3D 'get' && params)=0A= this.url +=3D (this.url.indexOf('?') > -1 ? '&' : '?') + params;=0A= =0A= try {=0A= Ajax.Responders.dispatch('onCreate', this, this.transport);=0A= =0A= this.transport.open(this.method.toUpperCase(), this.url,=0A= this.options.asynchronous);=0A= =0A= if (this.options.asynchronous)=0A= setTimeout(function() { this.respondToReadyState(1) = }.bind(this), 10);=0A= =0A= this.transport.onreadystatechange =3D = this.onStateChange.bind(this);=0A= this.setRequestHeaders();=0A= =0A= var body =3D this.method =3D=3D 'post' ? (this.options.postBody || = params) : null;=0A= =0A= this.transport.send(body);=0A= =0A= /* Force Firefox to handle ready state 4 for synchronous requests = */=0A= if (!this.options.asynchronous && this.transport.overrideMimeType)=0A= this.onStateChange();=0A= =0A= }=0A= catch (e) {=0A= this.dispatchException(e);=0A= }=0A= },=0A= =0A= onStateChange: function() {=0A= var readyState =3D this.transport.readyState;=0A= if (readyState > 1 && !((readyState =3D=3D 4) && this._complete))=0A= this.respondToReadyState(this.transport.readyState);=0A= },=0A= =0A= setRequestHeaders: function() {=0A= var headers =3D {=0A= 'X-Requested-With': 'XMLHttpRequest',=0A= 'X-Prototype-Version': Prototype.Version,=0A= 'Accept': 'text/javascript, text/html, application/xml, text/xml, = */*'=0A= };=0A= =0A= if (this.method =3D=3D 'post') {=0A= headers['Content-type'] =3D this.options.contentType +=0A= (this.options.encoding ? '; charset=3D' + this.options.encoding = : '');=0A= =0A= /* Force "Connection: close" for older Mozilla browsers to work=0A= * around a bug where XMLHttpRequest sends an incorrect=0A= * Content-length header. See Mozilla Bugzilla #246651.=0A= */=0A= if (this.transport.overrideMimeType &&=0A= (navigator.userAgent.match(/Gecko\/(\d{4})/) || [0,2005])[1] < = 2005)=0A= headers['Connection'] =3D 'close';=0A= }=0A= =0A= // user-defined headers=0A= if (typeof this.options.requestHeaders =3D=3D 'object') {=0A= var extras =3D this.options.requestHeaders;=0A= =0A= if (typeof extras.push =3D=3D 'function')=0A= for (var i =3D 0, length =3D extras.length; i < length; i +=3D 2)=0A= headers[extras[i]] =3D extras[i+1];=0A= else=0A= $H(extras).each(function(pair) { headers[pair.key] =3D = pair.value });=0A= }=0A= =0A= for (var name in headers)=0A= this.transport.setRequestHeader(name, headers[name]);=0A= },=0A= =0A= success: function() {=0A= return !this.transport.status=0A= || (this.transport.status >=3D 200 && this.transport.status < = 300);=0A= },=0A= =0A= respondToReadyState: function(readyState) {=0A= var state =3D Ajax.Request.Events[readyState];=0A= var transport =3D this.transport, json =3D this.evalJSON();=0A= =0A= if (state =3D=3D 'Complete') {=0A= try {=0A= this._complete =3D true;=0A= (this.options['on' + this.transport.status]=0A= || this.options['on' + (this.success() ? 'Success' : 'Failure')]=0A= || Prototype.emptyFunction)(transport, json);=0A= } catch (e) {=0A= this.dispatchException(e);=0A= }=0A= =0A= if ((this.getHeader('Content-type') || 'text/javascript').strip().=0A= match(/^(text|application)\/(x-)?(java|ecma)script(;.*)?$/i))=0A= this.evalResponse();=0A= }=0A= =0A= try {=0A= (this.options['on' + state] || Prototype.emptyFunction)(transport, = json);=0A= Ajax.Responders.dispatch('on' + state, this, transport, json);=0A= } catch (e) {=0A= this.dispatchException(e);=0A= }=0A= =0A= if (state =3D=3D 'Complete') {=0A= // avoid memory leak in MSIE: clean up=0A= this.transport.onreadystatechange =3D Prototype.emptyFunction;=0A= }=0A= },=0A= =0A= getHeader: function(name) {=0A= try {=0A= return this.transport.getResponseHeader(name);=0A= } catch (e) { return null }=0A= },=0A= =0A= evalJSON: function() {=0A= try {=0A= var json =3D this.getHeader('X-JSON');=0A= return json ? eval('(' + json + ')') : null;=0A= } catch (e) { return null }=0A= },=0A= =0A= evalResponse: function() {=0A= try {=0A= return eval(this.transport.responseText);=0A= } catch (e) {=0A= this.dispatchException(e);=0A= }=0A= },=0A= =0A= dispatchException: function(exception) {=0A= (this.options.onException || Prototype.emptyFunction)(this, = exception);=0A= Ajax.Responders.dispatch('onException', this, exception);=0A= }=0A= });=0A= =0A= Ajax.Updater =3D Class.create();=0A= =0A= Object.extend(Object.extend(Ajax.Updater.prototype, = Ajax.Request.prototype), {=0A= initialize: function(container, url, options) {=0A= this.container =3D {=0A= success: (container.success || container),=0A= failure: (container.failure || (container.success ? null : = container))=0A= }=0A= =0A= this.transport =3D Ajax.getTransport();=0A= this.setOptions(options);=0A= =0A= var onComplete =3D this.options.onComplete || = Prototype.emptyFunction;=0A= this.options.onComplete =3D (function(transport, param) {=0A= this.updateContent();=0A= onComplete(transport, param);=0A= }).bind(this);=0A= =0A= this.request(url);=0A= },=0A= =0A= updateContent: function() {=0A= var receiver =3D this.container[this.success() ? 'success' : = 'failure'];=0A= var response =3D this.transport.responseText;=0A= =0A= if (!this.options.evalScripts) response =3D response.stripScripts();=0A= =0A= if (receiver =3D $(receiver)) {=0A= if (this.options.insertion)=0A= new this.options.insertion(receiver, response);=0A= else=0A= receiver.update(response);=0A= }=0A= =0A= if (this.success()) {=0A= if (this.onComplete)=0A= setTimeout(this.onComplete.bind(this), 10);=0A= }=0A= }=0A= });=0A= =0A= Ajax.PeriodicalUpdater =3D Class.create();=0A= Ajax.PeriodicalUpdater.prototype =3D Object.extend(new Ajax.Base(), {=0A= initialize: function(container, url, options) {=0A= this.setOptions(options);=0A= this.onComplete =3D this.options.onComplete;=0A= =0A= this.frequency =3D (this.options.frequency || 2);=0A= this.decay =3D (this.options.decay || 1);=0A= =0A= this.updater =3D {};=0A= this.container =3D container;=0A= this.url =3D url;=0A= =0A= this.start();=0A= },=0A= =0A= start: function() {=0A= this.options.onComplete =3D this.updateComplete.bind(this);=0A= this.onTimerEvent();=0A= },=0A= =0A= stop: function() {=0A= this.updater.options.onComplete =3D undefined;=0A= clearTimeout(this.timer);=0A= (this.onComplete || Prototype.emptyFunction).apply(this, arguments);=0A= },=0A= =0A= updateComplete: function(request) {=0A= if (this.options.decay) {=0A= this.decay =3D (request.responseText =3D=3D this.lastText ?=0A= this.decay * this.options.decay : 1);=0A= =0A= this.lastText =3D request.responseText;=0A= }=0A= this.timer =3D setTimeout(this.onTimerEvent.bind(this),=0A= this.decay * this.frequency * 1000);=0A= },=0A= =0A= onTimerEvent: function() {=0A= this.updater =3D new Ajax.Updater(this.container, this.url, = this.options);=0A= }=0A= });=0A= function $(element) {=0A= if (arguments.length > 1) {=0A= for (var i =3D 0, elements =3D [], length =3D arguments.length; i < = length; i++)=0A= elements.push($(arguments[i]));=0A= return elements;=0A= }=0A= if (typeof element =3D=3D 'string')=0A= element =3D document.getElementById(element);=0A= return Element.extend(element);=0A= }=0A= =0A= if (Prototype.BrowserFeatures.XPath) {=0A= document._getElementsByXPath =3D function(expression, parentElement) {=0A= var results =3D [];=0A= var query =3D document.evaluate(expression, $(parentElement) || = document,=0A= null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);=0A= for (var i =3D 0, length =3D query.snapshotLength; i < length; i++)=0A= results.push(query.snapshotItem(i));=0A= return results;=0A= };=0A= }=0A= =0A= document.getElementsByClassName =3D function(className, parentElement) {=0A= if (Prototype.BrowserFeatures.XPath) {=0A= var q =3D ".//*[contains(concat(' ', @class, ' '), ' " + className + = " ')]";=0A= return document._getElementsByXPath(q, parentElement);=0A= } else {=0A= var children =3D ($(parentElement) || = document.body).getElementsByTagName('*');=0A= var elements =3D [], child;=0A= for (var i =3D 0, length =3D children.length; i < length; i++) {=0A= child =3D children[i];=0A= if (Element.hasClassName(child, className))=0A= elements.push(Element.extend(child));=0A= }=0A= return elements;=0A= }=0A= };=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= if (!window.Element)=0A= var Element =3D new Object();=0A= =0A= Element.extend =3D function(element) {=0A= if (!element || _nativeExtensions || element.nodeType =3D=3D 3) return = element;=0A= =0A= if (!element._extended && element.tagName && element !=3D window) {=0A= var methods =3D Object.clone(Element.Methods), cache =3D = Element.extend.cache;=0A= =0A= if (element.tagName =3D=3D 'FORM')=0A= Object.extend(methods, Form.Methods);=0A= if (['INPUT', 'TEXTAREA', 'SELECT'].include(element.tagName))=0A= Object.extend(methods, Form.Element.Methods);=0A= =0A= Object.extend(methods, Element.Methods.Simulated);=0A= =0A= for (var property in methods) {=0A= var value =3D methods[property];=0A= if (typeof value =3D=3D 'function' && !(property in element))=0A= element[property] =3D cache.findOrStore(value);=0A= }=0A= }=0A= =0A= element._extended =3D true;=0A= return element;=0A= };=0A= =0A= Element.extend.cache =3D {=0A= findOrStore: function(value) {=0A= return this[value] =3D this[value] || function() {=0A= return value.apply(null, [this].concat($A(arguments)));=0A= }=0A= }=0A= };=0A= =0A= Element.Methods =3D {=0A= visible: function(element) {=0A= return $(element).style.display !=3D 'none';=0A= },=0A= =0A= toggle: function(element) {=0A= element =3D $(element);=0A= Element[Element.visible(element) ? 'hide' : 'show'](element);=0A= return element;=0A= },=0A= =0A= hide: function(element) {=0A= $(element).style.display =3D 'none';=0A= return element;=0A= },=0A= =0A= show: function(element) {=0A= $(element).style.display =3D '';=0A= return element;=0A= },=0A= =0A= remove: function(element) {=0A= element =3D $(element);=0A= element.parentNode.removeChild(element);=0A= return element;=0A= },=0A= =0A= update: function(element, html) {=0A= html =3D typeof html =3D=3D 'undefined' ? '' : html.toString();=0A= $(element).innerHTML =3D html.stripScripts();=0A= setTimeout(function() {html.evalScripts()}, 10);=0A= return element;=0A= },=0A= =0A= replace: function(element, html) {=0A= element =3D $(element);=0A= html =3D typeof html =3D=3D 'undefined' ? '' : html.toString();=0A= if (element.outerHTML) {=0A= element.outerHTML =3D html.stripScripts();=0A= } else {=0A= var range =3D element.ownerDocument.createRange();=0A= range.selectNodeContents(element);=0A= element.parentNode.replaceChild(=0A= range.createContextualFragment(html.stripScripts()), element);=0A= }=0A= setTimeout(function() {html.evalScripts()}, 10);=0A= return element;=0A= },=0A= =0A= inspect: function(element) {=0A= element =3D $(element);=0A= var result =3D '<' + element.tagName.toLowerCase();=0A= $H({'id': 'id', 'className': 'class'}).each(function(pair) {=0A= var property =3D pair.first(), attribute =3D pair.last();=0A= var value =3D (element[property] || '').toString();=0A= if (value) result +=3D ' ' + attribute + '=3D' + = value.inspect(true);=0A= });=0A= return result + '>';=0A= },=0A= =0A= recursivelyCollect: function(element, property) {=0A= element =3D $(element);=0A= var elements =3D [];=0A= while (element =3D element[property])=0A= if (element.nodeType =3D=3D 1)=0A= elements.push(Element.extend(element));=0A= return elements;=0A= },=0A= =0A= ancestors: function(element) {=0A= return $(element).recursivelyCollect('parentNode');=0A= },=0A= =0A= descendants: function(element) {=0A= return $A($(element).getElementsByTagName('*'));=0A= },=0A= =0A= immediateDescendants: function(element) {=0A= if (!(element =3D $(element).firstChild)) return [];=0A= while (element && element.nodeType !=3D 1) element =3D = element.nextSibling;=0A= if (element) return [element].concat($(element).nextSiblings());=0A= return [];=0A= },=0A= =0A= previousSiblings: function(element) {=0A= return $(element).recursivelyCollect('previousSibling');=0A= },=0A= =0A= nextSiblings: function(element) {=0A= return $(element).recursivelyCollect('nextSibling');=0A= },=0A= =0A= siblings: function(element) {=0A= element =3D $(element);=0A= return = element.previousSiblings().reverse().concat(element.nextSiblings());=0A= },=0A= =0A= match: function(element, selector) {=0A= if (typeof selector =3D=3D 'string')=0A= selector =3D new Selector(selector);=0A= return selector.match($(element));=0A= },=0A= =0A= up: function(element, expression, index) {=0A= return Selector.findElement($(element).ancestors(), expression, = index);=0A= },=0A= =0A= down: function(element, expression, index) {=0A= return Selector.findElement($(element).descendants(), expression, = index);=0A= },=0A= =0A= previous: function(element, expression, index) {=0A= return Selector.findElement($(element).previousSiblings(), = expression, index);=0A= },=0A= =0A= next: function(element, expression, index) {=0A= return Selector.findElement($(element).nextSiblings(), expression, = index);=0A= },=0A= =0A= getElementsBySelector: function() {=0A= var args =3D $A(arguments), element =3D $(args.shift());=0A= return Selector.findChildElements(element, args);=0A= },=0A= =0A= getElementsByClassName: function(element, className) {=0A= return document.getElementsByClassName(className, element);=0A= },=0A= =0A= readAttribute: function(element, name) {=0A= element =3D $(element);=0A= if (document.all && !window.opera) {=0A= var t =3D Element._attributeTranslations;=0A= if (t.values[name]) return t.values[name](element, name);=0A= if (t.names[name]) name =3D t.names[name];=0A= var attribute =3D element.attributes[name];=0A= if(attribute) return attribute.nodeValue;=0A= }=0A= return element.getAttribute(name);=0A= },=0A= =0A= getHeight: function(element) {=0A= return $(element).getDimensions().height;=0A= },=0A= =0A= getWidth: function(element) {=0A= return $(element).getDimensions().width;=0A= },=0A= =0A= classNames: function(element) {=0A= return new Element.ClassNames(element);=0A= },=0A= =0A= hasClassName: function(element, className) {=0A= if (!(element =3D $(element))) return;=0A= var elementClassName =3D element.className;=0A= if (elementClassName.length =3D=3D 0) return false;=0A= if (elementClassName =3D=3D className ||=0A= elementClassName.match(new RegExp("(^|\\s)" + className + = "(\\s|$)")))=0A= return true;=0A= return false;=0A= },=0A= =0A= addClassName: function(element, className) {=0A= if (!(element =3D $(element))) return;=0A= Element.classNames(element).add(className);=0A= return element;=0A= },=0A= =0A= removeClassName: function(element, className) {=0A= if (!(element =3D $(element))) return;=0A= Element.classNames(element).remove(className);=0A= return element;=0A= },=0A= =0A= toggleClassName: function(element, className) {=0A= if (!(element =3D $(element))) return;=0A= Element.classNames(element)[element.hasClassName(className) ? = 'remove' : 'add'](className);=0A= return element;=0A= },=0A= =0A= observe: function() {=0A= Event.observe.apply(Event, arguments);=0A= return $A(arguments).first();=0A= },=0A= =0A= stopObserving: function() {=0A= Event.stopObserving.apply(Event, arguments);=0A= return $A(arguments).first();=0A= },=0A= =0A= // removes whitespace-only text node children=0A= cleanWhitespace: function(element) {=0A= element =3D $(element);=0A= var node =3D element.firstChild;=0A= while (node) {=0A= var nextNode =3D node.nextSibling;=0A= if (node.nodeType =3D=3D 3 && !/\S/.test(node.nodeValue))=0A= element.removeChild(node);=0A= node =3D nextNode;=0A= }=0A= return element;=0A= },=0A= =0A= empty: function(element) {=0A= return $(element).innerHTML.match(/^\s*$/);=0A= },=0A= =0A= descendantOf: function(element, ancestor) {=0A= element =3D $(element), ancestor =3D $(ancestor);=0A= while (element =3D element.parentNode)=0A= if (element =3D=3D ancestor) return true;=0A= return false;=0A= },=0A= =0A= scrollTo: function(element) {=0A= element =3D $(element);=0A= var pos =3D Position.cumulativeOffset(element);=0A= window.scrollTo(pos[0], pos[1]);=0A= return element;=0A= },=0A= =0A= getStyle: function(element, style) {=0A= element =3D $(element);=0A= if (['float','cssFloat'].include(style))=0A= style =3D (typeof element.style.styleFloat !=3D 'undefined' ? = 'styleFloat' : 'cssFloat');=0A= style =3D style.camelize();=0A= var value =3D element.style[style];=0A= if (!value) {=0A= if (document.defaultView && document.defaultView.getComputedStyle) = {=0A= var css =3D document.defaultView.getComputedStyle(element, null);=0A= value =3D css ? css[style] : null;=0A= } else if (element.currentStyle) {=0A= value =3D element.currentStyle[style];=0A= }=0A= }=0A= =0A= if((value =3D=3D 'auto') && ['width','height'].include(style) && = (element.getStyle('display') !=3D 'none'))=0A= value =3D element['offset'+style.capitalize()] + 'px';=0A= =0A= if (window.opera && ['left', 'top', 'right', = 'bottom'].include(style))=0A= if (Element.getStyle(element, 'position') =3D=3D 'static') value = =3D 'auto';=0A= if(style =3D=3D 'opacity') {=0A= if(value) return parseFloat(value);=0A= if(value =3D (element.getStyle('filter') || = '').match(/alpha\(opacity=3D(.*)\)/))=0A= if(value[1]) return parseFloat(value[1]) / 100;=0A= return 1.0;=0A= }=0A= return value =3D=3D 'auto' ? null : value;=0A= },=0A= =0A= setStyle: function(element, style) {=0A= element =3D $(element);=0A= for (var name in style) {=0A= var value =3D style[name];=0A= if(name =3D=3D 'opacity') {=0A= if (value =3D=3D 1) {=0A= value =3D (/Gecko/.test(navigator.userAgent) &&=0A= !/Konqueror|Safari|KHTML/.test(navigator.userAgent)) ? = 0.999999 : 1.0;=0A= if(/MSIE/.test(navigator.userAgent) && !window.opera)=0A= element.style.filter =3D = element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'');=0A= } else if(value =3D=3D=3D '') {=0A= if(/MSIE/.test(navigator.userAgent) && !window.opera)=0A= element.style.filter =3D = element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'');=0A= } else {=0A= if(value < 0.00001) value =3D 0;=0A= if(/MSIE/.test(navigator.userAgent) && !window.opera)=0A= element.style.filter =3D = element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'') +=0A= 'alpha(opacity=3D'+value*100+')';=0A= }=0A= } else if(['float','cssFloat'].include(name)) name =3D (typeof = element.style.styleFloat !=3D 'undefined') ? 'styleFloat' : 'cssFloat';=0A= element.style[name.camelize()] =3D value;=0A= }=0A= return element;=0A= },=0A= =0A= getDimensions: function(element) {=0A= element =3D $(element);=0A= var display =3D $(element).getStyle('display');=0A= if (display !=3D 'none' && display !=3D null) // Safari bug=0A= return {width: element.offsetWidth, height: element.offsetHeight};=0A= =0A= // All *Width and *Height properties give 0 on elements with display = none,=0A= // so enable the element temporarily=0A= var els =3D element.style;=0A= var originalVisibility =3D els.visibility;=0A= var originalPosition =3D els.position;=0A= var originalDisplay =3D els.display;=0A= els.visibility =3D 'hidden';=0A= els.position =3D 'absolute';=0A= els.display =3D 'block';=0A= var originalWidth =3D element.clientWidth;=0A= var originalHeight =3D element.clientHeight;=0A= els.display =3D originalDisplay;=0A= els.position =3D originalPosition;=0A= els.visibility =3D originalVisibility;=0A= return {width: originalWidth, height: originalHeight};=0A= },=0A= =0A= makePositioned: function(element) {=0A= element =3D $(element);=0A= var pos =3D Element.getStyle(element, 'position');=0A= if (pos =3D=3D 'static' || !pos) {=0A= element._madePositioned =3D true;=0A= element.style.position =3D 'relative';=0A= // Opera returns the offset relative to the positioning context, = when an=0A= // element is position relative but top and left have not been = defined=0A= if (window.opera) {=0A= element.style.top =3D 0;=0A= element.style.left =3D 0;=0A= }=0A= }=0A= return element;=0A= },=0A= =0A= undoPositioned: function(element) {=0A= element =3D $(element);=0A= if (element._madePositioned) {=0A= element._madePositioned =3D undefined;=0A= element.style.position =3D=0A= element.style.top =3D=0A= element.style.left =3D=0A= element.style.bottom =3D=0A= element.style.right =3D '';=0A= }=0A= return element;=0A= },=0A= =0A= makeClipping: function(element) {=0A= element =3D $(element);=0A= if (element._overflow) return element;=0A= element._overflow =3D element.style.overflow || 'auto';=0A= if ((Element.getStyle(element, 'overflow') || 'visible') !=3D = 'hidden')=0A= element.style.overflow =3D 'hidden';=0A= return element;=0A= },=0A= =0A= undoClipping: function(element) {=0A= element =3D $(element);=0A= if (!element._overflow) return element;=0A= element.style.overflow =3D element._overflow =3D=3D 'auto' ? '' : = element._overflow;=0A= element._overflow =3D null;=0A= return element;=0A= }=0A= };=0A= =0A= Object.extend(Element.Methods, {childOf: Element.Methods.descendantOf});=0A= =0A= Element._attributeTranslations =3D {};=0A= =0A= Element._attributeTranslations.names =3D {=0A= colspan: "colSpan",=0A= rowspan: "rowSpan",=0A= valign: "vAlign",=0A= datetime: "dateTime",=0A= accesskey: "accessKey",=0A= tabindex: "tabIndex",=0A= enctype: "encType",=0A= maxlength: "maxLength",=0A= readonly: "readOnly",=0A= longdesc: "longDesc"=0A= };=0A= =0A= Element._attributeTranslations.values =3D {=0A= _getAttr: function(element, attribute) {=0A= return element.getAttribute(attribute, 2);=0A= },=0A= =0A= _flag: function(element, attribute) {=0A= return $(element).hasAttribute(attribute) ? attribute : null;=0A= },=0A= =0A= style: function(element) {=0A= return element.style.cssText.toLowerCase();=0A= },=0A= =0A= title: function(element) {=0A= var node =3D element.getAttributeNode('title');=0A= return node.specified ? node.nodeValue : null;=0A= }=0A= };=0A= =0A= Object.extend(Element._attributeTranslations.values, {=0A= href: Element._attributeTranslations.values._getAttr,=0A= src: Element._attributeTranslations.values._getAttr,=0A= disabled: Element._attributeTranslations.values._flag,=0A= checked: Element._attributeTranslations.values._flag,=0A= readonly: Element._attributeTranslations.values._flag,=0A= multiple: Element._attributeTranslations.values._flag=0A= });=0A= =0A= Element.Methods.Simulated =3D {=0A= hasAttribute: function(element, attribute) {=0A= var t =3D Element._attributeTranslations;=0A= attribute =3D t.names[attribute] || attribute;=0A= return $(element).getAttributeNode(attribute).specified;=0A= }=0A= };=0A= =0A= // IE is missing .innerHTML support for TABLE-related elements=0A= if (document.all && !window.opera){=0A= Element.Methods.update =3D function(element, html) {=0A= element =3D $(element);=0A= html =3D typeof html =3D=3D 'undefined' ? '' : html.toString();=0A= var tagName =3D element.tagName.toUpperCase();=0A= if (['THEAD','TBODY','TR','TD'].include(tagName)) {=0A= var div =3D document.createElement('div');=0A= switch (tagName) {=0A= case 'THEAD':=0A= case 'TBODY':=0A= div.innerHTML =3D '' + html.stripScripts() + = '
';=0A= depth =3D 2;=0A= break;=0A= case 'TR':=0A= div.innerHTML =3D '' + html.stripScripts() = + '
';=0A= depth =3D 3;=0A= break;=0A= case 'TD':=0A= div.innerHTML =3D '
' + = html.stripScripts() + '
';=0A= depth =3D 4;=0A= }=0A= $A(element.childNodes).each(function(node){=0A= element.removeChild(node)=0A= });=0A= depth.times(function(){ div =3D div.firstChild });=0A= =0A= $A(div.childNodes).each(=0A= function(node){ element.appendChild(node) });=0A= } else {=0A= element.innerHTML =3D html.stripScripts();=0A= }=0A= setTimeout(function() {html.evalScripts()}, 10);=0A= return element;=0A= }=0A= };=0A= =0A= Object.extend(Element, Element.Methods);=0A= =0A= var _nativeExtensions =3D false;=0A= =0A= if(/Konqueror|Safari|KHTML/.test(navigator.userAgent))=0A= ['', 'Form', 'Input', 'TextArea', 'Select'].each(function(tag) {=0A= var className =3D 'HTML' + tag + 'Element';=0A= if(window[className]) return;=0A= var klass =3D window[className] =3D {};=0A= klass.prototype =3D document.createElement(tag ? tag.toLowerCase() : = 'div').__proto__;=0A= });=0A= =0A= Element.addMethods =3D function(methods) {=0A= Object.extend(Element.Methods, methods || {});=0A= =0A= function copy(methods, destination, onlyIfAbsent) {=0A= onlyIfAbsent =3D onlyIfAbsent || false;=0A= var cache =3D Element.extend.cache;=0A= for (var property in methods) {=0A= var value =3D methods[property];=0A= if (!onlyIfAbsent || !(property in destination))=0A= destination[property] =3D cache.findOrStore(value);=0A= }=0A= }=0A= =0A= if (typeof HTMLElement !=3D 'undefined') {=0A= copy(Element.Methods, HTMLElement.prototype);=0A= copy(Element.Methods.Simulated, HTMLElement.prototype, true);=0A= copy(Form.Methods, HTMLFormElement.prototype);=0A= [HTMLInputElement, HTMLTextAreaElement, = HTMLSelectElement].each(function(klass) {=0A= copy(Form.Element.Methods, klass.prototype);=0A= });=0A= _nativeExtensions =3D true;=0A= }=0A= }=0A= =0A= var Toggle =3D new Object();=0A= Toggle.display =3D Element.toggle;=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= Abstract.Insertion =3D function(adjacency) {=0A= this.adjacency =3D adjacency;=0A= }=0A= =0A= Abstract.Insertion.prototype =3D {=0A= initialize: function(element, content) {=0A= this.element =3D $(element);=0A= this.content =3D content.stripScripts();=0A= =0A= if (this.adjacency && this.element.insertAdjacentHTML) {=0A= try {=0A= this.element.insertAdjacentHTML(this.adjacency, this.content);=0A= } catch (e) {=0A= var tagName =3D this.element.tagName.toUpperCase();=0A= if (['TBODY', 'TR'].include(tagName)) {=0A= this.insertContent(this.contentFromAnonymousTable());=0A= } else {=0A= throw e;=0A= }=0A= }=0A= } else {=0A= this.range =3D this.element.ownerDocument.createRange();=0A= if (this.initializeRange) this.initializeRange();=0A= = this.insertContent([this.range.createContextualFragment(this.content)]);=0A= }=0A= =0A= setTimeout(function() {content.evalScripts()}, 10);=0A= },=0A= =0A= contentFromAnonymousTable: function() {=0A= var div =3D document.createElement('div');=0A= div.innerHTML =3D '' + this.content + = '
';=0A= return $A(div.childNodes[0].childNodes[0].childNodes);=0A= }=0A= }=0A= =0A= var Insertion =3D new Object();=0A= =0A= Insertion.Before =3D Class.create();=0A= Insertion.Before.prototype =3D Object.extend(new = Abstract.Insertion('beforeBegin'), {=0A= initializeRange: function() {=0A= this.range.setStartBefore(this.element);=0A= },=0A= =0A= insertContent: function(fragments) {=0A= fragments.each((function(fragment) {=0A= this.element.parentNode.insertBefore(fragment, this.element);=0A= }).bind(this));=0A= }=0A= });=0A= =0A= Insertion.Top =3D Class.create();=0A= Insertion.Top.prototype =3D Object.extend(new = Abstract.Insertion('afterBegin'), {=0A= initializeRange: function() {=0A= this.range.selectNodeContents(this.element);=0A= this.range.collapse(true);=0A= },=0A= =0A= insertContent: function(fragments) {=0A= fragments.reverse(false).each((function(fragment) {=0A= this.element.insertBefore(fragment, this.element.firstChild);=0A= }).bind(this));=0A= }=0A= });=0A= =0A= Insertion.Bottom =3D Class.create();=0A= Insertion.Bottom.prototype =3D Object.extend(new = Abstract.Insertion('beforeEnd'), {=0A= initializeRange: function() {=0A= this.range.selectNodeContents(this.element);=0A= this.range.collapse(this.element);=0A= },=0A= =0A= insertContent: function(fragments) {=0A= fragments.each((function(fragment) {=0A= this.element.appendChild(fragment);=0A= }).bind(this));=0A= }=0A= });=0A= =0A= Insertion.After =3D Class.create();=0A= Insertion.After.prototype =3D Object.extend(new = Abstract.Insertion('afterEnd'), {=0A= initializeRange: function() {=0A= this.range.setStartAfter(this.element);=0A= },=0A= =0A= insertContent: function(fragments) {=0A= fragments.each((function(fragment) {=0A= this.element.parentNode.insertBefore(fragment,=0A= this.element.nextSibling);=0A= }).bind(this));=0A= }=0A= });=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= Element.ClassNames =3D Class.create();=0A= Element.ClassNames.prototype =3D {=0A= initialize: function(element) {=0A= this.element =3D $(element);=0A= },=0A= =0A= _each: function(iterator) {=0A= this.element.className.split(/\s+/).select(function(name) {=0A= return name.length > 0;=0A= })._each(iterator);=0A= },=0A= =0A= set: function(className) {=0A= this.element.className =3D className;=0A= },=0A= =0A= add: function(classNameToAdd) {=0A= if (this.include(classNameToAdd)) return;=0A= this.set($A(this).concat(classNameToAdd).join(' '));=0A= },=0A= =0A= remove: function(classNameToRemove) {=0A= if (!this.include(classNameToRemove)) return;=0A= this.set($A(this).without(classNameToRemove).join(' '));=0A= },=0A= =0A= toString: function() {=0A= return $A(this).join(' ');=0A= }=0A= };=0A= =0A= Object.extend(Element.ClassNames.prototype, Enumerable);=0A= var Selector =3D Class.create();=0A= Selector.prototype =3D {=0A= initialize: function(expression) {=0A= this.params =3D {classNames: []};=0A= this.expression =3D expression.toString().strip();=0A= this.parseExpression();=0A= this.compileMatcher();=0A= },=0A= =0A= parseExpression: function() {=0A= function abort(message) { throw 'Parse error in selector: ' + = message; }=0A= =0A= if (this.expression =3D=3D '') abort('empty expression');=0A= =0A= var params =3D this.params, expr =3D this.expression, match, = modifier, clause, rest;=0A= while (match =3D = expr.match(/^(.*)\[([a-z0-9_:-]+?)(?:([~\|!]?=3D)(?:"([^"]*)"|([^\]\s]*))= )?\]$/i)) {=0A= params.attributes =3D params.attributes || [];=0A= params.attributes.push({name: match[2], operator: match[3], value: = match[4] || match[5] || ''});=0A= expr =3D match[1];=0A= }=0A= =0A= if (expr =3D=3D '*') return this.params.wildcard =3D true;=0A= =0A= while (match =3D expr.match(/^([^a-z0-9_-])?([a-z0-9_-]+)(.*)/i)) {=0A= modifier =3D match[1], clause =3D match[2], rest =3D match[3];=0A= switch (modifier) {=0A= case '#': params.id =3D clause; break;=0A= case '.': params.classNames.push(clause); break;=0A= case '':=0A= case undefined: params.tagName =3D clause.toUpperCase(); break;=0A= default: abort(expr.inspect());=0A= }=0A= expr =3D rest;=0A= }=0A= =0A= if (expr.length > 0) abort(expr.inspect());=0A= },=0A= =0A= buildMatchExpression: function() {=0A= var params =3D this.params, conditions =3D [], clause;=0A= =0A= if (params.wildcard)=0A= conditions.push('true');=0A= if (clause =3D params.id)=0A= conditions.push('element.readAttribute("id") =3D=3D ' + = clause.inspect());=0A= if (clause =3D params.tagName)=0A= conditions.push('element.tagName.toUpperCase() =3D=3D ' + = clause.inspect());=0A= if ((clause =3D params.classNames).length > 0)=0A= for (var i =3D 0, length =3D clause.length; i < length; i++)=0A= conditions.push('element.hasClassName(' + clause[i].inspect() + = ')');=0A= if (clause =3D params.attributes) {=0A= clause.each(function(attribute) {=0A= var value =3D 'element.readAttribute(' + = attribute.name.inspect() + ')';=0A= var splitValueBy =3D function(delimiter) {=0A= return value + ' && ' + value + '.split(' + = delimiter.inspect() + ')';=0A= }=0A= =0A= switch (attribute.operator) {=0A= case '=3D': conditions.push(value + ' =3D=3D ' + = attribute.value.inspect()); break;=0A= case '~=3D': conditions.push(splitValueBy(' ') + = '.include(' + attribute.value.inspect() + ')'); break;=0A= case '|=3D': conditions.push(=0A= splitValueBy('-') + '.first().toUpperCase() = =3D=3D ' + attribute.value.toUpperCase().inspect()=0A= ); break;=0A= case '!=3D': conditions.push(value + ' !=3D ' + = attribute.value.inspect()); break;=0A= case '':=0A= case undefined: conditions.push('element.hasAttribute(' + = attribute.name.inspect() + ')'); break;=0A= default: throw 'Unknown operator ' + attribute.operator = + ' in selector';=0A= }=0A= });=0A= }=0A= =0A= return conditions.join(' && ');=0A= },=0A= =0A= compileMatcher: function() {=0A= this.match =3D new Function('element', 'if (!element.tagName) return = false; \=0A= element =3D $(element); \=0A= return ' + this.buildMatchExpression());=0A= },=0A= =0A= findElements: function(scope) {=0A= var element;=0A= =0A= if (element =3D $(this.params.id))=0A= if (this.match(element))=0A= if (!scope || Element.childOf(element, scope))=0A= return [element];=0A= =0A= scope =3D (scope || = document).getElementsByTagName(this.params.tagName || '*');=0A= =0A= var results =3D [];=0A= for (var i =3D 0, length =3D scope.length; i < length; i++)=0A= if (this.match(element =3D scope[i]))=0A= results.push(Element.extend(element));=0A= =0A= return results;=0A= },=0A= =0A= toString: function() {=0A= return this.expression;=0A= }=0A= }=0A= =0A= Object.extend(Selector, {=0A= matchElements: function(elements, expression) {=0A= var selector =3D new Selector(expression);=0A= return = elements.select(selector.match.bind(selector)).map(Element.extend);=0A= },=0A= =0A= findElement: function(elements, expression, index) {=0A= if (typeof expression =3D=3D 'number') index =3D expression, = expression =3D false;=0A= return Selector.matchElements(elements, expression || '*')[index || = 0];=0A= },=0A= =0A= findChildElements: function(element, expressions) {=0A= return expressions.map(function(expression) {=0A= return = expression.match(/[^\s"]+(?:"[^"]*"[^\s"]+)*/g).inject([null], = function(results, expr) {=0A= var selector =3D new Selector(expr);=0A= return results.inject([], function(elements, result) {=0A= return elements.concat(selector.findElements(result || = element));=0A= });=0A= });=0A= }).flatten();=0A= }=0A= });=0A= =0A= function $$() {=0A= return Selector.findChildElements(document, $A(arguments));=0A= }=0A= var Form =3D {=0A= reset: function(form) {=0A= $(form).reset();=0A= return form;=0A= },=0A= =0A= serializeElements: function(elements, getHash) {=0A= var data =3D elements.inject({}, function(result, element) {=0A= if (!element.disabled && element.name) {=0A= var key =3D element.name, value =3D $(element).getValue();=0A= if (value !=3D undefined) {=0A= if (result[key]) {=0A= if (result[key].constructor !=3D Array) result[key] =3D = [result[key]];=0A= result[key].push(value);=0A= }=0A= else result[key] =3D value;=0A= }=0A= }=0A= return result;=0A= });=0A= =0A= return getHash ? data : Hash.toQueryString(data);=0A= }=0A= };=0A= =0A= Form.Methods =3D {=0A= serialize: function(form, getHash) {=0A= return Form.serializeElements(Form.getElements(form), getHash);=0A= },=0A= =0A= getElements: function(form) {=0A= return $A($(form).getElementsByTagName('*')).inject([],=0A= function(elements, child) {=0A= if (Form.Element.Serializers[child.tagName.toLowerCase()])=0A= elements.push(Element.extend(child));=0A= return elements;=0A= }=0A= );=0A= },=0A= =0A= getInputs: function(form, typeName, name) {=0A= form =3D $(form);=0A= var inputs =3D form.getElementsByTagName('input');=0A= =0A= if (!typeName && !name) return $A(inputs).map(Element.extend);=0A= =0A= for (var i =3D 0, matchingInputs =3D [], length =3D inputs.length; i = < length; i++) {=0A= var input =3D inputs[i];=0A= if ((typeName && input.type !=3D typeName) || (name && input.name = !=3D name))=0A= continue;=0A= matchingInputs.push(Element.extend(input));=0A= }=0A= =0A= return matchingInputs;=0A= },=0A= =0A= disable: function(form) {=0A= form =3D $(form);=0A= form.getElements().each(function(element) {=0A= element.blur();=0A= element.disabled =3D 'true';=0A= });=0A= return form;=0A= },=0A= =0A= enable: function(form) {=0A= form =3D $(form);=0A= form.getElements().each(function(element) {=0A= element.disabled =3D '';=0A= });=0A= return form;=0A= },=0A= =0A= findFirstElement: function(form) {=0A= return $(form).getElements().find(function(element) {=0A= return element.type !=3D 'hidden' && !element.disabled &&=0A= ['input', 'select', = 'textarea'].include(element.tagName.toLowerCase());=0A= });=0A= },=0A= =0A= focusFirstElement: function(form) {=0A= form =3D $(form);=0A= form.findFirstElement().activate();=0A= return form;=0A= }=0A= }=0A= =0A= Object.extend(Form, Form.Methods);=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= Form.Element =3D {=0A= focus: function(element) {=0A= $(element).focus();=0A= return element;=0A= },=0A= =0A= select: function(element) {=0A= $(element).select();=0A= return element;=0A= }=0A= }=0A= =0A= Form.Element.Methods =3D {=0A= serialize: function(element) {=0A= element =3D $(element);=0A= if (!element.disabled && element.name) {=0A= var value =3D element.getValue();=0A= if (value !=3D undefined) {=0A= var pair =3D {};=0A= pair[element.name] =3D value;=0A= return Hash.toQueryString(pair);=0A= }=0A= }=0A= return '';=0A= },=0A= =0A= getValue: function(element) {=0A= element =3D $(element);=0A= var method =3D element.tagName.toLowerCase();=0A= return Form.Element.Serializers[method](element);=0A= },=0A= =0A= clear: function(element) {=0A= $(element).value =3D '';=0A= return element;=0A= },=0A= =0A= present: function(element) {=0A= return $(element).value !=3D '';=0A= },=0A= =0A= activate: function(element) {=0A= element =3D $(element);=0A= element.focus();=0A= if (element.select && ( element.tagName.toLowerCase() !=3D 'input' ||=0A= !['button', 'reset', 'submit'].include(element.type) ) )=0A= element.select();=0A= return element;=0A= },=0A= =0A= disable: function(element) {=0A= element =3D $(element);=0A= element.disabled =3D true;=0A= return element;=0A= },=0A= =0A= enable: function(element) {=0A= element =3D $(element);=0A= element.blur();=0A= element.disabled =3D false;=0A= return element;=0A= }=0A= }=0A= =0A= Object.extend(Form.Element, Form.Element.Methods);=0A= var Field =3D Form.Element;=0A= var $F =3D Form.Element.getValue;=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= Form.Element.Serializers =3D {=0A= input: function(element) {=0A= switch (element.type.toLowerCase()) {=0A= case 'checkbox':=0A= case 'radio':=0A= return Form.Element.Serializers.inputSelector(element);=0A= default:=0A= return Form.Element.Serializers.textarea(element);=0A= }=0A= },=0A= =0A= inputSelector: function(element) {=0A= return element.checked ? element.value : null;=0A= },=0A= =0A= textarea: function(element) {=0A= return element.value;=0A= },=0A= =0A= select: function(element) {=0A= return this[element.type =3D=3D 'select-one' ?=0A= 'selectOne' : 'selectMany'](element);=0A= },=0A= =0A= selectOne: function(element) {=0A= var index =3D element.selectedIndex;=0A= return index >=3D 0 ? this.optionValue(element.options[index]) : = null;=0A= },=0A= =0A= selectMany: function(element) {=0A= var values, length =3D element.length;=0A= if (!length) return null;=0A= =0A= for (var i =3D 0, values =3D []; i < length; i++) {=0A= var opt =3D element.options[i];=0A= if (opt.selected) values.push(this.optionValue(opt));=0A= }=0A= return values;=0A= },=0A= =0A= optionValue: function(opt) {=0A= // extend element because hasAttribute may not be native=0A= return Element.extend(opt).hasAttribute('value') ? opt.value : = opt.text;=0A= }=0A= }=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= Abstract.TimedObserver =3D function() {}=0A= Abstract.TimedObserver.prototype =3D {=0A= initialize: function(element, frequency, callback) {=0A= this.frequency =3D frequency;=0A= this.element =3D $(element);=0A= this.callback =3D callback;=0A= =0A= this.lastValue =3D this.getValue();=0A= this.registerCallback();=0A= },=0A= =0A= registerCallback: function() {=0A= setInterval(this.onTimerEvent.bind(this), this.frequency * 1000);=0A= },=0A= =0A= onTimerEvent: function() {=0A= var value =3D this.getValue();=0A= var changed =3D ('string' =3D=3D typeof this.lastValue && 'string' = =3D=3D typeof value=0A= ? this.lastValue !=3D value : String(this.lastValue) !=3D = String(value));=0A= if (changed) {=0A= this.callback(this.element, value);=0A= this.lastValue =3D value;=0A= }=0A= }=0A= }=0A= =0A= Form.Element.Observer =3D Class.create();=0A= Form.Element.Observer.prototype =3D Object.extend(new = Abstract.TimedObserver(), {=0A= getValue: function() {=0A= return Form.Element.getValue(this.element);=0A= }=0A= });=0A= =0A= Form.Observer =3D Class.create();=0A= Form.Observer.prototype =3D Object.extend(new Abstract.TimedObserver(), {=0A= getValue: function() {=0A= return Form.serialize(this.element);=0A= }=0A= });=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= Abstract.EventObserver =3D function() {}=0A= Abstract.EventObserver.prototype =3D {=0A= initialize: function(element, callback) {=0A= this.element =3D $(element);=0A= this.callback =3D callback;=0A= =0A= this.lastValue =3D this.getValue();=0A= if (this.element.tagName.toLowerCase() =3D=3D 'form')=0A= this.registerFormCallbacks();=0A= else=0A= this.registerCallback(this.element);=0A= },=0A= =0A= onElementEvent: function() {=0A= var value =3D this.getValue();=0A= if (this.lastValue !=3D value) {=0A= this.callback(this.element, value);=0A= this.lastValue =3D value;=0A= }=0A= },=0A= =0A= registerFormCallbacks: function() {=0A= = Form.getElements(this.element).each(this.registerCallback.bind(this));=0A= },=0A= =0A= registerCallback: function(element) {=0A= if (element.type) {=0A= switch (element.type.toLowerCase()) {=0A= case 'checkbox':=0A= case 'radio':=0A= Event.observe(element, 'click', = this.onElementEvent.bind(this));=0A= break;=0A= default:=0A= Event.observe(element, 'change', = this.onElementEvent.bind(this));=0A= break;=0A= }=0A= }=0A= }=0A= }=0A= =0A= Form.Element.EventObserver =3D Class.create();=0A= Form.Element.EventObserver.prototype =3D Object.extend(new = Abstract.EventObserver(), {=0A= getValue: function() {=0A= return Form.Element.getValue(this.element);=0A= }=0A= });=0A= =0A= Form.EventObserver =3D Class.create();=0A= Form.EventObserver.prototype =3D Object.extend(new = Abstract.EventObserver(), {=0A= getValue: function() {=0A= return Form.serialize(this.element);=0A= }=0A= });=0A= if (!window.Event) {=0A= var Event =3D new Object();=0A= }=0A= =0A= Object.extend(Event, {=0A= KEY_BACKSPACE: 8,=0A= KEY_TAB: 9,=0A= KEY_RETURN: 13,=0A= KEY_ESC: 27,=0A= KEY_LEFT: 37,=0A= KEY_UP: 38,=0A= KEY_RIGHT: 39,=0A= KEY_DOWN: 40,=0A= KEY_DELETE: 46,=0A= KEY_HOME: 36,=0A= KEY_END: 35,=0A= KEY_PAGEUP: 33,=0A= KEY_PAGEDOWN: 34,=0A= =0A= element: function(event) {=0A= return event.target || event.srcElement;=0A= },=0A= =0A= isLeftClick: function(event) {=0A= return (((event.which) && (event.which =3D=3D 1)) ||=0A= ((event.button) && (event.button =3D=3D 1)));=0A= },=0A= =0A= pointerX: function(event) {=0A= return event.pageX || (event.clientX +=0A= (document.documentElement.scrollLeft || document.body.scrollLeft));=0A= },=0A= =0A= pointerY: function(event) {=0A= return event.pageY || (event.clientY +=0A= (document.documentElement.scrollTop || document.body.scrollTop));=0A= },=0A= =0A= stop: function(event) {=0A= if (event.preventDefault) {=0A= event.preventDefault();=0A= event.stopPropagation();=0A= } else {=0A= event.returnValue =3D false;=0A= event.cancelBubble =3D true;=0A= }=0A= },=0A= =0A= // find the first node with the given tagName, starting from the=0A= // node the event was triggered on; traverses the DOM upwards=0A= findElement: function(event, tagName) {=0A= var element =3D Event.element(event);=0A= while (element.parentNode && (!element.tagName ||=0A= (element.tagName.toUpperCase() !=3D tagName.toUpperCase())))=0A= element =3D element.parentNode;=0A= return element;=0A= },=0A= =0A= observers: false,=0A= =0A= _observeAndCache: function(element, name, observer, useCapture) {=0A= if (!this.observers) this.observers =3D [];=0A= if (element.addEventListener) {=0A= this.observers.push([element, name, observer, useCapture]);=0A= element.addEventListener(name, observer, useCapture);=0A= } else if (element.attachEvent) {=0A= this.observers.push([element, name, observer, useCapture]);=0A= element.attachEvent('on' + name, observer);=0A= }=0A= },=0A= =0A= unloadCache: function() {=0A= if (!Event.observers) return;=0A= for (var i =3D 0, length =3D Event.observers.length; i < length; = i++) {=0A= Event.stopObserving.apply(this, Event.observers[i]);=0A= Event.observers[i][0] =3D null;=0A= }=0A= Event.observers =3D false;=0A= },=0A= =0A= observe: function(element, name, observer, useCapture) {=0A= element =3D $(element);=0A= useCapture =3D useCapture || false;=0A= =0A= if (name =3D=3D 'keypress' &&=0A= (navigator.appVersion.match(/Konqueror|Safari|KHTML/)=0A= || element.attachEvent))=0A= name =3D 'keydown';=0A= =0A= Event._observeAndCache(element, name, observer, useCapture);=0A= },=0A= =0A= stopObserving: function(element, name, observer, useCapture) {=0A= element =3D $(element);=0A= useCapture =3D useCapture || false;=0A= =0A= if (name =3D=3D 'keypress' &&=0A= (navigator.appVersion.match(/Konqueror|Safari|KHTML/)=0A= || element.detachEvent))=0A= name =3D 'keydown';=0A= =0A= if (element.removeEventListener) {=0A= element.removeEventListener(name, observer, useCapture);=0A= } else if (element.detachEvent) {=0A= try {=0A= element.detachEvent('on' + name, observer);=0A= } catch (e) {}=0A= }=0A= }=0A= });=0A= =0A= /* prevent memory leaks in IE */=0A= if (navigator.appVersion.match(/\bMSIE\b/))=0A= Event.observe(window, 'unload', Event.unloadCache, false);=0A= var Position =3D {=0A= // set to true if needed, warning: firefox performance problems=0A= // NOT neeeded for page scrolling, only if draggable contained in=0A= // scrollable elements=0A= includeScrollOffsets: false,=0A= =0A= // must be called before calling withinIncludingScrolloffset, every = time the=0A= // page is scrolled=0A= prepare: function() {=0A= this.deltaX =3D window.pageXOffset=0A= || document.documentElement.scrollLeft=0A= || document.body.scrollLeft=0A= || 0;=0A= this.deltaY =3D window.pageYOffset=0A= || document.documentElement.scrollTop=0A= || document.body.scrollTop=0A= || 0;=0A= },=0A= =0A= realOffset: function(element) {=0A= var valueT =3D 0, valueL =3D 0;=0A= do {=0A= valueT +=3D element.scrollTop || 0;=0A= valueL +=3D element.scrollLeft || 0;=0A= element =3D element.parentNode;=0A= } while (element);=0A= return [valueL, valueT];=0A= },=0A= =0A= cumulativeOffset: function(element) {=0A= var valueT =3D 0, valueL =3D 0;=0A= do {=0A= valueT +=3D element.offsetTop || 0;=0A= valueL +=3D element.offsetLeft || 0;=0A= element =3D element.offsetParent;=0A= } while (element);=0A= return [valueL, valueT];=0A= },=0A= =0A= positionedOffset: function(element) {=0A= var valueT =3D 0, valueL =3D 0;=0A= do {=0A= valueT +=3D element.offsetTop || 0;=0A= valueL +=3D element.offsetLeft || 0;=0A= element =3D element.offsetParent;=0A= if (element) {=0A= if(element.tagName=3D=3D'BODY') break;=0A= var p =3D Element.getStyle(element, 'position');=0A= if (p =3D=3D 'relative' || p =3D=3D 'absolute') break;=0A= }=0A= } while (element);=0A= return [valueL, valueT];=0A= },=0A= =0A= offsetParent: function(element) {=0A= if (element.offsetParent) return element.offsetParent;=0A= if (element =3D=3D document.body) return element;=0A= =0A= while ((element =3D element.parentNode) && element !=3D = document.body)=0A= if (Element.getStyle(element, 'position') !=3D 'static')=0A= return element;=0A= =0A= return document.body;=0A= },=0A= =0A= // caches x/y coordinate pair to use with overlap=0A= within: function(element, x, y) {=0A= if (this.includeScrollOffsets)=0A= return this.withinIncludingScrolloffsets(element, x, y);=0A= this.xcomp =3D x;=0A= this.ycomp =3D y;=0A= this.offset =3D this.cumulativeOffset(element);=0A= =0A= return (y >=3D this.offset[1] &&=0A= y < this.offset[1] + element.offsetHeight &&=0A= x >=3D this.offset[0] &&=0A= x < this.offset[0] + element.offsetWidth);=0A= },=0A= =0A= withinIncludingScrolloffsets: function(element, x, y) {=0A= var offsetcache =3D this.realOffset(element);=0A= =0A= this.xcomp =3D x + offsetcache[0] - this.deltaX;=0A= this.ycomp =3D y + offsetcache[1] - this.deltaY;=0A= this.offset =3D this.cumulativeOffset(element);=0A= =0A= return (this.ycomp >=3D this.offset[1] &&=0A= this.ycomp < this.offset[1] + element.offsetHeight &&=0A= this.xcomp >=3D this.offset[0] &&=0A= this.xcomp < this.offset[0] + element.offsetWidth);=0A= },=0A= =0A= // within must be called directly before=0A= overlap: function(mode, element) {=0A= if (!mode) return 0;=0A= if (mode =3D=3D 'vertical')=0A= return ((this.offset[1] + element.offsetHeight) - this.ycomp) /=0A= element.offsetHeight;=0A= if (mode =3D=3D 'horizontal')=0A= return ((this.offset[0] + element.offsetWidth) - this.xcomp) /=0A= element.offsetWidth;=0A= },=0A= =0A= page: function(forElement) {=0A= var valueT =3D 0, valueL =3D 0;=0A= =0A= var element =3D forElement;=0A= do {=0A= valueT +=3D element.offsetTop || 0;=0A= valueL +=3D element.offsetLeft || 0;=0A= =0A= // Safari fix=0A= if (element.offsetParent=3D=3Ddocument.body)=0A= if (Element.getStyle(element,'position')=3D=3D'absolute') break;=0A= =0A= } while (element =3D element.offsetParent);=0A= =0A= element =3D forElement;=0A= do {=0A= if (!window.opera || element.tagName=3D=3D'BODY') {=0A= valueT -=3D element.scrollTop || 0;=0A= valueL -=3D element.scrollLeft || 0;=0A= }=0A= } while (element =3D element.parentNode);=0A= =0A= return [valueL, valueT];=0A= },=0A= =0A= clone: function(source, target) {=0A= var options =3D Object.extend({=0A= setLeft: true,=0A= setTop: true,=0A= setWidth: true,=0A= setHeight: true,=0A= offsetTop: 0,=0A= offsetLeft: 0=0A= }, arguments[2] || {})=0A= =0A= // find page position of source=0A= source =3D $(source);=0A= var p =3D Position.page(source);=0A= =0A= // find coordinate system to use=0A= target =3D $(target);=0A= var delta =3D [0, 0];=0A= var parent =3D null;=0A= // delta [0,0] will do fine with position: fixed elements,=0A= // position:absolute needs offsetParent deltas=0A= if (Element.getStyle(target,'position') =3D=3D 'absolute') {=0A= parent =3D Position.offsetParent(target);=0A= delta =3D Position.page(parent);=0A= }=0A= =0A= // correct by body offsets (fixes Safari)=0A= if (parent =3D=3D document.body) {=0A= delta[0] -=3D document.body.offsetLeft;=0A= delta[1] -=3D document.body.offsetTop;=0A= }=0A= =0A= // set position=0A= if(options.setLeft) target.style.left =3D (p[0] - delta[0] + = options.offsetLeft) + 'px';=0A= if(options.setTop) target.style.top =3D (p[1] - delta[1] + = options.offsetTop) + 'px';=0A= if(options.setWidth) target.style.width =3D source.offsetWidth + = 'px';=0A= if(options.setHeight) target.style.height =3D source.offsetHeight + = 'px';=0A= },=0A= =0A= absolutize: function(element) {=0A= element =3D $(element);=0A= if (element.style.position =3D=3D 'absolute') return;=0A= Position.prepare();=0A= =0A= var offsets =3D Position.positionedOffset(element);=0A= var top =3D offsets[1];=0A= var left =3D offsets[0];=0A= var width =3D element.clientWidth;=0A= var height =3D element.clientHeight;=0A= =0A= element._originalLeft =3D left - parseFloat(element.style.left || = 0);=0A= element._originalTop =3D top - parseFloat(element.style.top || = 0);=0A= element._originalWidth =3D element.style.width;=0A= element._originalHeight =3D element.style.height;=0A= =0A= element.style.position =3D 'absolute';=0A= element.style.top =3D top + 'px';=0A= element.style.left =3D left + 'px';=0A= element.style.width =3D width + 'px';=0A= element.style.height =3D height + 'px';=0A= },=0A= =0A= relativize: function(element) {=0A= element =3D $(element);=0A= if (element.style.position =3D=3D 'relative') return;=0A= Position.prepare();=0A= =0A= element.style.position =3D 'relative';=0A= var top =3D parseFloat(element.style.top || 0) - = (element._originalTop || 0);=0A= var left =3D parseFloat(element.style.left || 0) - = (element._originalLeft || 0);=0A= =0A= element.style.top =3D top + 'px';=0A= element.style.left =3D left + 'px';=0A= element.style.height =3D element._originalHeight;=0A= element.style.width =3D element._originalWidth;=0A= }=0A= }=0A= =0A= // Safari returns margins on body which is incorrect if the child is = absolutely=0A= // positioned. For performance reasons, redefine = Position.cumulativeOffset for=0A= // KHTML/WebKit only.=0A= if (/Konqueror|Safari|KHTML/.test(navigator.userAgent)) {=0A= Position.cumulativeOffset =3D function(element) {=0A= var valueT =3D 0, valueL =3D 0;=0A= do {=0A= valueT +=3D element.offsetTop || 0;=0A= valueL +=3D element.offsetLeft || 0;=0A= if (element.offsetParent =3D=3D document.body)=0A= if (Element.getStyle(element, 'position') =3D=3D 'absolute') = break;=0A= =0A= element =3D element.offsetParent;=0A= } while (element);=0A= =0A= return [valueL, valueT];=0A= }=0A= }=0A= =0A= Element.addMethods(); ------=_NextPart_000_0000_01C98C5F.DC641CA0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://magicmillions.ddm.magsbyme.com/sfLightboxPlugin/js/lightbox.js // = -------------------------------------------------------------------------= ----------=0A= //=0A= // Lightbox v2.03.3=0A= // by Lokesh Dhakar - http://www.huddletogether.com=0A= // 5/21/06=0A= //=0A= // For more information on this script, visit:=0A= // http://huddletogether.com/projects/lightbox2/=0A= //=0A= // Licensed under the Creative Commons Attribution 2.5 License - = http://creativecommons.org/licenses/by/2.5/=0A= // =0A= // Credit also due to those who have helped, inspired, and made their = code available to the public.=0A= // Including: Scott Upton(uptonic.com), Peter-Paul Koch(quirksmode.com), = Thomas Fuchs(mir.aculo.us), and others.=0A= //=0A= //=0A= // = -------------------------------------------------------------------------= ----------=0A= /*=0A= =0A= Table of Contents=0A= -----------------=0A= Configuration=0A= Global Variables=0A= =0A= Extending Built-in Objects =0A= - Object.extend(Element)=0A= - Array.prototype.removeDuplicates()=0A= - Array.prototype.empty()=0A= =0A= Lightbox Class Declaration=0A= - initialize()=0A= - updateImageList()=0A= - start()=0A= - changeImage()=0A= - resizeImageContainer()=0A= - showImage()=0A= - updateDetails()=0A= - updateNav()=0A= - enableKeyboardNav()=0A= - disableKeyboardNav()=0A= - keyboardAction()=0A= - preloadNeighborImages()=0A= - end()=0A= =0A= Miscellaneous Functions=0A= - getPageScroll()=0A= - getPageSize()=0A= - getKey()=0A= - listenKey()=0A= - showSelectBoxes()=0A= - hideSelectBoxes()=0A= - showFlash()=0A= - hideFlash()=0A= - pause()=0A= - initLightbox()=0A= =0A= Function Calls=0A= - addLoadEvent(initLightbox)=0A= =0A= */=0A= // = -------------------------------------------------------------------------= ----------=0A= =0A= //=0A= // Configuration=0A= //=0A= var fileLoadingImage =3D "/sfLightboxPlugin/images/loading.gif"; =0A= var fileBottomNavCloseImage =3D = "/sfLightboxPlugin/images/closelabel.gif";=0A= =0A= var overlayOpacity =3D 0.5; // controls transparency of shadow overlay=0A= =0A= var animate =3D true; // toggles resizing animations=0A= var resizeSpeed =3D 7; // controls the speed of the image resizing = animations (1=3Dslowest and 10=3Dfastest)=0A= =0A= var borderSize =3D 10; //if you adjust the padding in the CSS, you will = need to update this variable=0A= =0A= // = -------------------------------------------------------------------------= ----------=0A= =0A= //=0A= // Global Variables=0A= //=0A= var imageArray =3D new Array;=0A= var activeImage;=0A= =0A= if(animate =3D=3D true){=0A= overlayDuration =3D 0.2; // shadow fade in/out duration=0A= if(resizeSpeed > 10){ resizeSpeed =3D 10;}=0A= if(resizeSpeed < 1){ resizeSpeed =3D 1;}=0A= resizeDuration =3D (11 - resizeSpeed) * 0.15;=0A= } else { =0A= overlayDuration =3D 0;=0A= resizeDuration =3D 0;=0A= }=0A= =0A= // = -------------------------------------------------------------------------= ----------=0A= =0A= //=0A= // Additional methods for Element added by SU, Couloir=0A= // - further additions by Lokesh Dhakar (huddletogether.com)=0A= //=0A= Object.extend(Element, {=0A= getWidth: function(element) {=0A= element =3D $(element);=0A= return element.offsetWidth; =0A= },=0A= setWidth: function(element,w) {=0A= element =3D $(element);=0A= element.style.width =3D w +"px";=0A= },=0A= setHeight: function(element,h) {=0A= element =3D $(element);=0A= element.style.height =3D h +"px";=0A= },=0A= setTop: function(element,t) {=0A= element =3D $(element);=0A= element.style.top =3D t +"px";=0A= },=0A= setLeft: function(element,l) {=0A= element =3D $(element);=0A= element.style.left =3D l +"px";=0A= },=0A= setSrc: function(element,src) {=0A= element =3D $(element);=0A= element.src =3D src; =0A= },=0A= setHref: function(element,href) {=0A= element =3D $(element);=0A= element.href =3D href; =0A= },=0A= setInnerHTML: function(element,content) {=0A= element =3D $(element);=0A= element.innerHTML =3D content;=0A= }=0A= });=0A= =0A= // = -------------------------------------------------------------------------= ----------=0A= =0A= //=0A= // Extending built-in Array object=0A= // - array.removeDuplicates()=0A= // - array.empty()=0A= //=0A= Array.prototype.removeDuplicates =3D function () {=0A= for(i =3D 0; i < this.length; i++){=0A= for(j =3D this.length-1; j>i; j--){ =0A= if(this[i][0] =3D=3D this[j][0]){=0A= this.splice(j,1);=0A= }=0A= }=0A= }=0A= }=0A= =0A= // = -------------------------------------------------------------------------= ----------=0A= =0A= Array.prototype.empty =3D function () {=0A= for(i =3D 0; i <=3D this.length; i++){=0A= this.shift();=0A= }=0A= }=0A= =0A= // = -------------------------------------------------------------------------= ----------=0A= =0A= //=0A= // Lightbox Class Declaration=0A= // - initialize()=0A= // - start()=0A= // - changeImage()=0A= // - resizeImageContainer()=0A= // - showImage()=0A= // - updateDetails()=0A= // - updateNav()=0A= // - enableKeyboardNav()=0A= // - disableKeyboardNav()=0A= // - keyboardNavAction()=0A= // - preloadNeighborImages()=0A= // - end()=0A= //=0A= // Structuring of code inspired by Scott Upton (http://www.uptonic.com/)=0A= //=0A= var Lightbox =3D Class.create();=0A= =0A= Lightbox.prototype =3D {=0A= =0A= // initialize()=0A= // Constructor runs on completion of the DOM loading. Calls = updateImageList and then=0A= // the function inserts html at the bottom of the page which is used to = display the shadow =0A= // overlay and the image container.=0A= //=0A= initialize: function() { =0A= =0A= this.updateImageList();=0A= =0A= // Code inserts html at the bottom of the page that looks similar to = this:=0A= //=0A= //
=0A= //
=0A= //
=0A= //
=0A= // =0A= //
=0A= // =0A= // =0A= //
=0A= //
=0A= // =0A= // =0A= // =0A= //
=0A= //
=0A= //
=0A= //
=0A= //
=0A= //
=0A= // =0A= // =0A= //
=0A= //
=0A= // =0A= // =0A= // =0A= //
=0A= //
=0A= //
=0A= //
=0A= =0A= =0A= var objBody =3D document.getElementsByTagName("body").item(0);=0A= =0A= var objOverlay =3D document.createElement("div");=0A= objOverlay.setAttribute('id','overlay');=0A= objOverlay.style.display =3D 'none';=0A= objOverlay.onclick =3D function() { myLightbox.end(); }=0A= objBody.appendChild(objOverlay);=0A= =0A= var objLightbox =3D document.createElement("div");=0A= objLightbox.setAttribute('id','lightbox');=0A= objLightbox.style.display =3D 'none';=0A= objLightbox.onclick =3D function(e) { // close Lightbox is user clicks = shadow overlay=0A= if (!e) var e =3D window.event;=0A= var clickObj =3D Event.element(e).id;=0A= if ( clickObj =3D=3D 'lightbox') {=0A= myLightbox.end();=0A= }=0A= };=0A= objBody.appendChild(objLightbox);=0A= =0A= var objImageDataContainer =3D document.createElement("div");=0A= objImageDataContainer.setAttribute('id','imageDataContainer');=0A= objLightbox.appendChild(objImageDataContainer);=0A= =0A= var objImageData =3D document.createElement("div");=0A= objImageData.setAttribute('id','imageData');=0A= objImageDataContainer.appendChild(objImageData);=0A= =0A= var objTopNav =3D document.createElement("div");=0A= objTopNav.setAttribute('id', 'topNav');=0A= objImageDataContainer.appendChild(objTopNav);=0A= =0A= //this.objTopPrevLink =3D document.createElement("a");=0A= //this.objTopPrevLink.setAttribute('href', '#');=0A= ////objTopPrevLink.setAttribute('id', 'topPrevLink');=0A= //this.objTopPrevLink.innerHTML =3D "Previous";=0A= //objImageDataContainer.appendChild(this.objTopPrevLink);=0A= =0A= var objBottomNav =3D document.createElement("div");=0A= objBottomNav.setAttribute('id','bottomNav');=0A= objImageData.appendChild(objBottomNav);=0A= =0A= var objImageDetails =3D document.createElement("div");=0A= objImageDetails.setAttribute('id','imageDetails');=0A= objImageData.appendChild(objImageDetails);=0A= =0A= var objOuterImageContainer =3D document.createElement("div");=0A= objOuterImageContainer.setAttribute('id','outerImageContainer');=0A= objLightbox.appendChild(objOuterImageContainer);=0A= =0A= // When Lightbox starts it will resize itself from 250 by 250 to the = current image dimension.=0A= // If animations are turned off, it will be hidden as to prevent a = flicker of a=0A= // white 250 by 250 box.=0A= if(animate){=0A= Element.setWidth('outerImageContainer', 250);=0A= Element.setHeight('outerImageContainer', 250); =0A= } else {=0A= Element.setWidth('outerImageContainer', 1);=0A= Element.setHeight('outerImageContainer', 1); =0A= }=0A= =0A= var objImageContainer =3D document.createElement("div");=0A= objImageContainer.setAttribute('id','imageContainer');=0A= objOuterImageContainer.appendChild(objImageContainer);=0A= =0A= var objLightboxImage =3D document.createElement("img");=0A= objLightboxImage.setAttribute('id','lightboxImage');=0A= objImageContainer.appendChild(objLightboxImage);=0A= =0A= var objHoverNav =3D document.createElement("div");=0A= objHoverNav.setAttribute('id','hoverNav');=0A= objImageContainer.appendChild(objHoverNav);=0A= =0A= var objPrevLink =3D document.createElement("a");=0A= objPrevLink.setAttribute('id','prevLink');=0A= objPrevLink.setAttribute('href','#');=0A= objHoverNav.appendChild(objPrevLink);=0A= =0A= var objNextLink =3D document.createElement("a");=0A= objNextLink.setAttribute('id','nextLink');=0A= objNextLink.setAttribute('href','#');=0A= objHoverNav.appendChild(objNextLink);=0A= =0A= var objLoading =3D document.createElement("div");=0A= objLoading.setAttribute('id','loading');=0A= objImageContainer.appendChild(objLoading);=0A= =0A= var objLoadingLink =3D document.createElement("a");=0A= objLoadingLink.setAttribute('id','loadingLink');=0A= objLoadingLink.setAttribute('href','#');=0A= objLoadingLink.onclick =3D function() { myLightbox.end(); return = false; }=0A= objLoading.appendChild(objLoadingLink);=0A= =0A= var objLoadingImage =3D document.createElement("img");=0A= objLoadingImage.setAttribute('src', fileLoadingImage);=0A= objLoadingLink.appendChild(objLoadingImage);=0A= =0A= var objCaption =3D document.createElement("span");=0A= objCaption.setAttribute('id','caption');=0A= objImageDetails.appendChild(objCaption);=0A= =0A= var objNumberDisplay =3D document.createElement("span");=0A= objNumberDisplay.setAttribute('id','numberDisplay');=0A= objImageDetails.appendChild(objNumberDisplay);=0A= =0A= var objBottomNavCloseLink =3D document.createElement("a");=0A= objBottomNavCloseLink.setAttribute('id','bottomNavClose');=0A= objBottomNavCloseLink.setAttribute('href','#');=0A= objBottomNavCloseLink.onclick =3D function() { myLightbox.end(); = return false; }=0A= objBottomNav.appendChild(objBottomNavCloseLink);=0A= =0A= var objBottomNavCloseImage =3D document.createElement("img");=0A= objBottomNavCloseImage.setAttribute('src', fileBottomNavCloseImage);=0A= objBottomNavCloseLink.appendChild(objBottomNavCloseImage);=0A= =0A= },=0A= =0A= =0A= //=0A= // updateImageList()=0A= // Loops through anchor tags looking for 'lightbox' references and = applies onclick=0A= // events to appropriate links. You can rerun after dynamically adding = images w/ajax.=0A= //=0A= updateImageList: function() { =0A= if (!document.getElementsByTagName){ return; }=0A= var anchors =3D document.getElementsByTagName('a');=0A= var areas =3D document.getElementsByTagName('area');=0A= =0A= // loop through all anchor tags=0A= for (var i=3D0; iPlease "=0A= + "click here and save the URL link in your browser window = above.");=0A= }=0A= =0A= // if image is part of set display 'Image x of x' =0A= if(imageArray.length > 1){=0A= Element.show('numberDisplay');=0A= Element.setInnerHTML( 'numberDisplay', "Image " + eval(activeImage + = 1) + " of " + imageArray.length);=0A= }=0A= =0A= new Effect.Parallel(=0A= [ new Effect.SlideDown( 'imageDataContainer', { sync: true, duration: = resizeDuration, from: 0.0, to: 1.0 }), =0A= new Effect.Appear('imageDataContainer', { sync: true, duration: = resizeDuration }) ], =0A= { duration: resizeDuration, afterFinish: function() {=0A= // update overlay size and update nav=0A= var arrayPageSize =3D getPageSize();=0A= Element.setHeight('overlay', arrayPageSize[1]);=0A= myLightbox.updateNav();=0A= }=0A= } =0A= );=0A= },=0A= =0A= //=0A= // updateNav()=0A= // Display appropriate previous and next hover navigation.=0A= //=0A= updateNav: function() {=0A= =0A= Element.show('hoverNav'); =0A= =0A= // if not first image in set, display prev image button=0A= if(activeImage !=3D 0){=0A= Element.show('prevLink');=0A= document.getElementById('prevLink').onclick =3D function() {=0A= myLightbox.changeImage(activeImage - 1); return false;=0A= }=0A= // added by Tim-Hinnerk Heuer (tim@ur.co.nz)=0A= //var topPrevLink =3D $('topPrevLink');=0A= /*=0A= if (this.topPrevLink !=3D null) {=0A= this.topPrevLink.onclick =3D function() {=0A= myLightbox.changeImage(activeImage - 1); return false;=0A= }=0A= }=0A= */=0A= }=0A= =0A= // if not last image in set, display next image button=0A= if(activeImage !=3D (imageArray.length - 1)){=0A= Element.show('nextLink');=0A= document.getElementById('nextLink').onclick =3D function() {=0A= myLightbox.changeImage(activeImage + 1); return false;=0A= }=0A= }=0A= =0A= this.enableKeyboardNav();=0A= },=0A= =0A= //=0A= // enableKeyboardNav()=0A= //=0A= enableKeyboardNav: function() {=0A= document.onkeydown =3D this.keyboardAction; =0A= },=0A= =0A= //=0A= // disableKeyboardNav()=0A= //=0A= disableKeyboardNav: function() {=0A= document.onkeydown =3D '';=0A= },=0A= =0A= //=0A= // keyboardAction()=0A= //=0A= keyboardAction: function(e) {=0A= if (e =3D=3D null) { // ie=0A= keycode =3D event.keyCode;=0A= escapeKey =3D 27;=0A= } else { // mozilla=0A= keycode =3D e.keyCode;=0A= escapeKey =3D e.DOM_VK_ESCAPE;=0A= }=0A= =0A= key =3D String.fromCharCode(keycode).toLowerCase();=0A= =0A= if((key =3D=3D 'x') || (key =3D=3D 'o') || (key =3D=3D 'c') || = (keycode =3D=3D escapeKey)){ // close lightbox=0A= myLightbox.end();=0A= } else if((key =3D=3D 'p') || (keycode =3D=3D 37)){ // display = previous image=0A= if(activeImage !=3D 0){=0A= myLightbox.disableKeyboardNav();=0A= myLightbox.changeImage(activeImage - 1);=0A= }=0A= } else if((key =3D=3D 'n') || (keycode =3D=3D 39)){ // display next = image=0A= if(activeImage !=3D (imageArray.length - 1)){=0A= myLightbox.disableKeyboardNav();=0A= myLightbox.changeImage(activeImage + 1);=0A= }=0A= }=0A= =0A= },=0A= =0A= //=0A= // preloadNeighborImages()=0A= // Preload previous and next images.=0A= //=0A= preloadNeighborImages: function(){=0A= =0A= if((imageArray.length - 1) > activeImage){=0A= preloadNextImage =3D new Image();=0A= preloadNextImage.src =3D imageArray[activeImage + 1][0];=0A= }=0A= if(activeImage > 0){=0A= preloadPrevImage =3D new Image();=0A= preloadPrevImage.src =3D imageArray[activeImage - 1][0];=0A= }=0A= =0A= },=0A= =0A= //=0A= // end()=0A= //=0A= end: function() {=0A= this.disableKeyboardNav();=0A= Element.hide('lightbox');=0A= new Effect.Fade('overlay', { duration: overlayDuration});=0A= showSelectBoxes();=0A= showFlash();=0A= }=0A= }=0A= =0A= // = -------------------------------------------------------------------------= ----------=0A= =0A= //=0A= // getPageScroll()=0A= // Returns array with x,y page scroll values.=0A= // Core code from - quirksmode.com=0A= //=0A= function getPageScroll(){=0A= =0A= var xScroll, yScroll;=0A= =0A= if (self.pageYOffset) {=0A= yScroll =3D self.pageYOffset;=0A= xScroll =3D self.pageXOffset;=0A= } else if (document.documentElement && = document.documentElement.scrollTop){ // Explorer 6 Strict=0A= yScroll =3D document.documentElement.scrollTop;=0A= xScroll =3D document.documentElement.scrollLeft;=0A= } else if (document.body) {// all other Explorers=0A= yScroll =3D document.body.scrollTop;=0A= xScroll =3D document.body.scrollLeft; =0A= }=0A= =0A= arrayPageScroll =3D new Array(xScroll,yScroll) =0A= return arrayPageScroll;=0A= }=0A= =0A= // = -------------------------------------------------------------------------= ----------=0A= =0A= //=0A= // getPageSize()=0A= // Returns array with page width, height and window width, height=0A= // Core code from - quirksmode.com=0A= // Edit for Firefox by pHaez=0A= //=0A= function getPageSize(){=0A= =0A= var xScroll, yScroll;=0A= =0A= if (window.innerHeight && window.scrollMaxY) { =0A= xScroll =3D window.innerWidth + window.scrollMaxX;=0A= yScroll =3D window.innerHeight + window.scrollMaxY;=0A= } else if (document.body.scrollHeight > document.body.offsetHeight){ // = all but Explorer Mac=0A= xScroll =3D document.body.scrollWidth;=0A= yScroll =3D document.body.scrollHeight;=0A= } else { // Explorer Mac...would also work in Explorer 6 Strict, = Mozilla and Safari=0A= xScroll =3D document.body.offsetWidth;=0A= yScroll =3D document.body.offsetHeight;=0A= }=0A= =0A= var windowWidth, windowHeight;=0A= =0A= // console.log(self.innerWidth);=0A= // console.log(document.documentElement.clientWidth);=0A= =0A= if (self.innerHeight) { // all except Explorer=0A= if(document.documentElement.clientWidth){=0A= windowWidth =3D document.documentElement.clientWidth; =0A= } else {=0A= windowWidth =3D self.innerWidth;=0A= }=0A= windowHeight =3D self.innerHeight;=0A= } else if (document.documentElement && = document.documentElement.clientHeight) { // Explorer 6 Strict Mode=0A= windowWidth =3D document.documentElement.clientWidth;=0A= windowHeight =3D document.documentElement.clientHeight;=0A= } else if (document.body) { // other Explorers=0A= windowWidth =3D document.body.clientWidth;=0A= windowHeight =3D document.body.clientHeight;=0A= } =0A= =0A= // for small pages with total height less then height of the viewport=0A= if(yScroll < windowHeight){=0A= pageHeight =3D windowHeight;=0A= } else { =0A= pageHeight =3D yScroll;=0A= }=0A= =0A= // console.log("xScroll " + xScroll)=0A= // console.log("windowWidth " + windowWidth)=0A= =0A= // for small pages with total width less then width of the viewport=0A= if(xScroll < windowWidth){ =0A= pageWidth =3D xScroll; =0A= } else {=0A= pageWidth =3D windowWidth;=0A= }=0A= // console.log("pageWidth " + pageWidth)=0A= =0A= arrayPageSize =3D new = Array(pageWidth,pageHeight,windowWidth,windowHeight) =0A= return arrayPageSize;=0A= }=0A= =0A= // = -------------------------------------------------------------------------= ----------=0A= =0A= //=0A= // getKey(key)=0A= // Gets keycode. If 'x' is pressed then it hides the lightbox.=0A= //=0A= function getKey(e){=0A= if (e =3D=3D null) { // ie=0A= keycode =3D event.keyCode;=0A= } else { // mozilla=0A= keycode =3D e.which;=0A= }=0A= key =3D String.fromCharCode(keycode).toLowerCase();=0A= =0A= if(key =3D=3D 'x'){=0A= }=0A= }=0A= =0A= // = -------------------------------------------------------------------------= ----------=0A= =0A= //=0A= // listenKey()=0A= //=0A= function listenKey () { document.onkeypress =3D getKey; }=0A= =0A= // ---------------------------------------------------=0A= =0A= function showSelectBoxes(){=0A= var selects =3D document.getElementsByTagName("select");=0A= for (i =3D 0; i !=3D selects.length; i++) {=0A= selects[i].style.visibility =3D "visible";=0A= }=0A= }=0A= =0A= // ---------------------------------------------------=0A= =0A= function hideSelectBoxes(){=0A= var selects =3D document.getElementsByTagName("select");=0A= for (i =3D 0; i !=3D selects.length; i++) {=0A= selects[i].style.visibility =3D "hidden";=0A= }=0A= }=0A= =0A= // ---------------------------------------------------=0A= =0A= function showFlash(){=0A= var flashObjects =3D document.getElementsByTagName("object");=0A= for (i =3D 0; i < flashObjects.length; i++) {=0A= flashObjects[i].style.visibility =3D "visible";=0A= }=0A= =0A= var flashEmbeds =3D document.getElementsByTagName("embed");=0A= for (i =3D 0; i < flashEmbeds.length; i++) {=0A= flashEmbeds[i].style.visibility =3D "visible";=0A= }=0A= }=0A= =0A= // ---------------------------------------------------=0A= =0A= function hideFlash(){=0A= var flashObjects =3D document.getElementsByTagName("object");=0A= for (i =3D 0; i < flashObjects.length; i++) {=0A= flashObjects[i].style.visibility =3D "hidden";=0A= }=0A= =0A= var flashEmbeds =3D document.getElementsByTagName("embed");=0A= for (i =3D 0; i < flashEmbeds.length; i++) {=0A= flashEmbeds[i].style.visibility =3D "hidden";=0A= }=0A= =0A= }=0A= =0A= =0A= // ---------------------------------------------------=0A= =0A= //=0A= // pause(numberMillis)=0A= // Pauses code execution for specified time. Uses busy code, not good.=0A= // Help from Ran Bar-On [ran2103@gmail.com]=0A= //=0A= =0A= function pause(ms){=0A= var date =3D new Date();=0A= curDate =3D null;=0A= do{var curDate =3D new Date();}=0A= while( curDate - date < ms);=0A= }=0A= /*=0A= function pause(numberMillis) {=0A= var curently =3D new Date().getTime() + sender;=0A= while (new Date().getTime(); =0A= }=0A= */=0A= // ---------------------------------------------------=0A= =0A= =0A= =0A= function initLightbox() { myLightbox =3D new Lightbox(); }=0A= Event.observe(window, 'load', initLightbox, false); ------=_NextPart_000_0000_01C98C5F.DC641CA0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://magicmillions.ddm.magsbyme.com/sfLightboxPlugin/js/scriptaculous.js // Copyright (c) 2005 Thomas Fuchs (http://script.aculo.us, = http://mir.aculo.us)=0A= // =0A= // Permission is hereby granted, free of charge, to any person obtaining=0A= // a copy of this software and associated documentation files (the=0A= // "Software"), to deal in the Software without restriction, including=0A= // without limitation the rights to use, copy, modify, merge, publish,=0A= // distribute, sublicense, and/or sell copies of the Software, and to=0A= // permit persons to whom the Software is furnished to do so, subject to=0A= // the following conditions:=0A= // =0A= // The above copyright notice and this permission notice shall be=0A= // included in all copies or substantial portions of the Software.=0A= //=0A= // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,=0A= // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF=0A= // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND=0A= // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE=0A= // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION=0A= // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION=0A= // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.=0A= =0A= var Scriptaculous =3D {=0A= Version: '1.5.1',=0A= require: function(libraryName) {=0A= // inserting via DOM fails in Safari 2.0, so brute force approach=0A= document.write('');=0A= },=0A= load: function() {=0A= if((typeof Prototype=3D=3D'undefined') ||=0A= parseFloat(Prototype.Version.split(".")[0] + "." +=0A= Prototype.Version.split(".")[1]) < 1.4)=0A= throw("script.aculo.us requires the Prototype JavaScript framework = >=3D 1.4.0");=0A= =0A= $A(document.getElementsByTagName("script")).findAll( function(s) {=0A= return (s.src && s.src.match(/scriptaculous\.js(\?.*)?$/))=0A= }).each( function(s) {=0A= var path =3D s.src.replace(/scriptaculous\.js(\?.*)?$/,'');=0A= var includes =3D s.src.match(/\?.*load=3D([a-z,]*)/);=0A= (includes ? includes[1] : = 'builder,effects,dragdrop,controls,slider').split(',').each(=0A= function(include) { Scriptaculous.require(path+include+'.js') });=0A= });=0A= }=0A= }=0A= =0A= Scriptaculous.load(); ------=_NextPart_000_0000_01C98C5F.DC641CA0--