From: Subject: =?Windows-1252?Q?=221716=22_una_pel=EDcula_de_IOSHUA:_CESAR_JONES_=28lpSE?= =?Windows-1252?Q?XXX=29_dijo_sobre_=221716=22?= Date: Tue, 22 Apr 2008 18:46:21 -0300 MIME-Version: 1.0 Content-Type: multipart/related; type="multipart/alternative"; boundary="----=_NextPart_000_0000_01C8A4A9.287147C0" X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198 This is a multi-part message in MIME format. ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://bp2.blogger.com/_dD2YWWYIpeI/R-pe19UbnSI/AAAAAAAAAG0/0-_p5kFgnw8/S1600-R/1716.jpg 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 G9r2OLXNOQ4HBBQhAiEIQCEIQCEIQf/Z ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://bp3.blogger.com/_dD2YWWYIpeI/SANap___UgI/AAAAAAAAAO4/b6QaUkI94UY/s400/LIBERTAD1%252B(1).jpg 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 n//Z ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.blogger.com/img/icon18_edit_allbkg.gif R0lGODlhEgASAOMAANDHu6pqNFRTUOWjJQAAABYWFhAJA9CPKUk1ErmIF+KjUygVBjMmBv/BMfy2 I9DHuyH5BAEAAA8ALAAAAAASABIAAARP8MlJq72TYLyM3hQRBB4oFcoxlhujAMAKIk6jKMKHIY0z qLoLz3dIFEAMBzGBABkGy+aGkCAGpBjRcmEKAFKB4KUAg4kvhPJ5TCBgTfBKBAA7 ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: image/png Content-Transfer-Encoding: base64 Content-Location: http://www.blogger.com/img/icon18_wrench_allbkg.png iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAA1VBMVEX///9/f38gSoc0ZaTr6efs 6uj+/v6vr691kK5shaFlhKxje5WduNL5+fj09PSRpr7o5+bo5+Tk4+Hj4+Lj4uHX4u3f39/t6+mf n56EnLaNmKWVlZGBk6mOjo7u8/aBipWGhobz8vH49/bt6+pZfatUfK77+/tgdo9gd5Hq6urq6ej/ //+krbaXpbaQpr76+vnBwcGkutDT3+rY2NfA0eL4+Pf6+vqdts7PzcrMzMywxtvc3Nzz8/JbcYmi rryhtMjw9PedsMpFcant8vZfX17y8e/w8PCUA2JZAAAAAXRSTlMAQObYZgAAALRJREFUeF5N0FWu AzEMQNHYgUEoMzPDQ2bY/5LqcVL13c+j2LIi8gBAuMLQyiq5dibXZxsNyVgePSI2nVh69iQvIhoz yTvJUlwClPW+TWIIKCj81utKqQS+UhKu+3BLqU9ZmzC4qxBRptOGuIT+cYdyM4N/cvV2H+GhYs6G zWorihdolHKG773OPPZfEYzWbJh9bFmEgPzdgOjpu28lt9IPzWIQ32QsbC9/IMiCyMrl5xCduE6l mw1pZ6RL9QAAAABJRU5ErkJggg== ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.blogger.com/widgets/3399906366-videobar.css DIV.floatingPlayer_gsvb DIV.playerInnerBox_gsvb .player_gsvb { WIDTH: 320px; HEIGHT: 260px } .videoBar-status { PADDING-RIGHT: 4px; PADDING-LEFT: 4px; FONT-SIZE: 11px; PADDING-BOTTOM: = 4px; MARGIN: 10px; COLOR: #676767; PADDING-TOP: 4px } .videoBar-container { CLEAR: both; MARGIN: auto; WORD-SPACING: normal; TEXT-TRANSFORM: none; = FONT-FAMILY: Arial, sans-serif; LETTER-SPACING: normal } ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.blogger.com/css/blog_controls.css .item-control { DISPLAY: none } .item-control A { TEXT-DECORATION: none! important } .item-action A { TEXT-DECORATION: none! important } .widget-item-control { FLOAT: right } .icon-action { MARGIN: 0px 0px -5px 0.5em; BORDER-TOP-STYLE: none! important; = BORDER-RIGHT-STYLE: none! important; BORDER-LEFT-STYLE: none! important; = BORDER-BOTTOM-STYLE: none! important } .delete-comment-icon { PADDING-RIGHT: 7px; PADDING-LEFT: 7px; BACKGROUND: = url(/img/icon_delete13.gif) no-repeat left 50%; PADDING-BOTTOM: 7px; = PADDING-TOP: 7px } @media All =20 { .BLOG_mobile_video_class { DISPLAY: none } } @media Handheld =20 { .BLOG_mobile_video_class { DISPLAY: inline } .BLOG_video_class { DISPLAY: none } } ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.blogger.com/widgets/3597482671-blog.css .backlink-toggle-zippy { PADDING-RIGHT: 11px; BACKGROUND: = url(http://www.blogger.com/img/triangle_ltr.gif) no-repeat left center; = CURSOR: hand; MARGIN-RIGHT: 0.1em } .expanded-backlink .backlink-toggle-zippy { BACKGROUND-IMAGE: url(http://www.blogger.com/img/triangle_open.gif) } .collapsed-backlink .collapseable { DISPLAY: none } .status-msg-wrap { FONT-SIZE: 110%; MARGIN: 10px auto; WIDTH: 90%; POSITION: relative } .status-msg-border { BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; FILTER: = alpha(opacity=3D40); BORDER-LEFT: #000000 1px solid; WIDTH: 100%; = BORDER-BOTTOM: #000000 1px solid; POSITION: relative; moz-opacity: .40; = opacity: .40 } .status-msg-bg { Z-INDEX: 1; FILTER: alpha(opacity=3D30); WIDTH: 100%; POSITION: = relative; BACKGROUND-COLOR: #cccccc; moz-opacity: .80; opacity: .80 } .status-msg-body { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; Z-INDEX: 4; PADDING-BOTTOM: = 0.3em; WIDTH: 100%; PADDING-TOP: 0.3em; POSITION: absolute; TEXT-ALIGN: = center } .status-msg-hidden { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; VISIBILITY: hidden; = PADDING-BOTTOM: 0.3em; PADDING-TOP: 0.3em } .status-msg-wrap A { PADDING-LEFT: 0.4em; TEXT-DECORATION: underline } #comments .blogger-comment-icon { PADDING-LEFT: 20px; BACKGROUND: url(/img/b16-rounded.gif) no-repeat = left 50%; LINE-HEIGHT: 16px } .blogger-comment-icon { PADDING-LEFT: 20px; BACKGROUND: url(/img/b16-rounded.gif) no-repeat = left 50%; LINE-HEIGHT: 16px } #comments .openid-comment-icon { PADDING-LEFT: 20px; BACKGROUND: url(/img/openid16-rounded.gif) = no-repeat left 50%; LINE-HEIGHT: 16px } .openid-comment-icon { PADDING-LEFT: 20px; BACKGROUND: url(/img/openid16-rounded.gif) = no-repeat left 50%; LINE-HEIGHT: 16px } #comments .anon-comment-icon { PADDING-LEFT: 20px; BACKGROUND: url(/img/anon16-rounded.gif) no-repeat = left 50%; LINE-HEIGHT: 16px } .anon-comment-icon { PADDING-LEFT: 20px; BACKGROUND: url(/img/anon16-rounded.gif) no-repeat = left 50%; LINE-HEIGHT: 16px } .paging-control-container { FONT-SIZE: 80%; FLOAT: right; MARGIN: 0px 6px 0px 0px } .unneeded-paging-control { VISIBILITY: hidden } ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: image/png Content-Transfer-Encoding: base64 Content-Location: http://www.blogger.com/img/navbar/3/btn_search_this.png iVBORw0KGgoAAAANSUhEUgAAAGAAAAAPCAMAAAAs5DqFAAAAUVBMVEVEREQwMDB/f38vLy+ZmZlK SkpeXl5xcXGFhYU3NzeSkpJra2tmZmZYWFhRUVE9PT1MTEyMjIxkZGQ4ODg1NTV4eHg5OTldXV1L S0tnZ2d+fn5RAPHoAAABXklEQVR4XrWU2YrsMAxEdbTY2bfe7/9/6MUiMPTDQM9DFwmSRZUPNiRy fZbpNX2qdH5uLttVtrgbn8r4m+7PTR4X+BrB7kUm7Hv7Y5NMhjEPPhPuHjD6SOuHGWT3kXDwAA53 13NJ82YMMnmAHtBmI1mqGUzyMsOGpe8zCXTa0frisBfWH0CWc8mhkLEEsHgC2mx1ob0CxnmCoctk BPQ+e4NF7RDvIedvgIgTkDE43QmIBFE6UgkwQ3ZfCFeFxcm+GyLd5PwNoJoAMnY69voGODTcAZvk ReqmCYdx0CHvfVTEV/j9ijJGOuhdEiDe0xXmnXAjT4BBiVvNs/dojZqw1Ve6GvELoHZ9xkhAFJcW XdmPxVfWoRTHzBJgjFp7RFUFFUTbwzjTVy3ZqwDwTziXNG/GIJMLjKozcmttKyMkwD7/ENL5uSwB 5WJ88V/xkC0u3wKYXZ6bXLfH9DWV7fofIhMYzf6cbfsAAAAASUVORK5CYII= ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.blogger.com/v-css/navbar/3328360018-navbar.css BODY { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 100%; PADDING-BOTTOM: = 0px; MARGIN: 0px; PADDING-TOP: 0px; FONT-FAMILY: "Trebuchet = MS",Verdana,Arial,Sans-serif; WHITE-SPACE: nowrap } A { TEXT-DECORATION: none } #b-navbar { FONT-SIZE: 0.85em; LINE-HEIGHT: 0.85em; BORDER-BOTTOM: #024 1px solid; = HEIGHT: 29px } #b-navbar #b-logo { LEFT: 5px; POSITION: absolute; TOP: 0.15em } #b-navbar #b-logo #navbar-logo { WIDTH: 24px; HEIGHT: 24px } #b-navbar #b-logo SPAN { DISPLAY: block; LEFT: -9000px; POSITION: absolute } #b-search { PADDING-RIGHT: 1em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 3px; MARGIN: = 0px 0px 0px 34px; PADDING-TOP: 4px } #b-search TD { VERTICAL-ALIGN: middle } #b-query { MARGIN: 0px 0.5em 0px 0px } .btn { PADDING-RIGHT: 0px; BORDER-TOP: 1px solid; PADDING-LEFT: 0px; = FONT-SIZE: 0.8em; PADDING-BOTTOM: 0px; MARGIN: 0px 0.5em 0px 1px; = TEXT-TRANSFORM: uppercase; CURSOR: hand; LINE-HEIGHT: 0.85em; = PADDING-TOP: 0px; BORDER-BOTTOM: 1px solid; WHITE-SPACE: nowrap } .btn DIV { BORDER-RIGHT: 1px solid; PADDING-RIGHT: 0.3em; PADDING-LEFT: 0.3em; = PADDING-BOTTOM: 0.21em; MARGIN: 0px -1px; BORDER-LEFT: 1px solid; = PADDING-TOP: 0.21em; POSITION: relative; HEIGHT: 0.85em } .btn DIV IMG { LEFT: 0.3em; POSITION: absolute; TOP: 0.2em } #bt-flag-body { PADDING-LEFT: 1em } #bt-unflag-body { PADDING-LEFT: 1em } #bt-unflag-body { DISPLAY: none } .flagged #bt-flag-body { DISPLAY: none } .flagged #bt-unflag-body { DISPLAY: block } #flagi { BORDER-RIGHT: #333 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: #333 1px = solid; DISPLAY: none; PADDING-LEFT: 4px; FONT-SIZE: 0.7em; Z-INDEX: 300; = PADDING-BOTTOM: 4px; BORDER-LEFT: #333 1px solid; COLOR: #000; = LINE-HEIGHT: 0.8em; PADDING-TOP: 4px; BORDER-BOTTOM: #333 1px solid; = TOP: 3px; BACKGROUND-COLOR: #ff9 } #unflagi { BORDER-RIGHT: #333 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: #333 1px = solid; DISPLAY: none; PADDING-LEFT: 4px; FONT-SIZE: 0.7em; Z-INDEX: 300; = PADDING-BOTTOM: 4px; BORDER-LEFT: #333 1px solid; COLOR: #000; = LINE-HEIGHT: 0.8em; PADDING-TOP: 4px; BORDER-BOTTOM: #333 1px solid; = TOP: 3px; BACKGROUND-COLOR: #ff9 } #flagi A { COLOR: #3366cc; TEXT-DECORATION: underline } #unflagi A { COLOR: #3366cc; TEXT-DECORATION: underline } .b-mobile { DISPLAY: none } #b-sms { PADDING-RIGHT: 7px; PADDING-LEFT: 7px; FONT-SIZE: 100%; PADDING-BOTTOM: = 4px; MARGIN: 0px 0px 0px 100px; LINE-HEIGHT: 1em; PADDING-TOP: 4px; = TEXT-ALIGN: left } #b-sms A { LINE-HEIGHT: 1em; MARGIN-RIGHT: 0.5em } #b-sms A:hover { TEXT-DECORATION: underline } @media Handheld =20 { BODY .b-mobile { DISPLAY: block } BODY #b-search { DISPLAY: none } BODY #flagi { DISPLAY: none } BODY #unflagi { DISPLAY: none } BODY #b-navbar #b-logo SPAN { DISPLAY: none } } ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.blogger.com/v-css/navbar/1899273448-3.css BODY { COLOR: #fff } A { COLOR: #ccc } .btn DIV { COLOR: #ccc } A:hover { COLOR: #fff } #navbar-logo { BACKGROUND-IMAGE: url(../../img/navbar/3/logobar.png) } #b-navbar { BORDER-BOTTOM: #222 1px solid; BACKGROUND-COLOR: #111 } #b-search { BACKGROUND: url(../../img/navbar/3/corner.gif) #333 no-repeat left = bottom } #b-query { BORDER-RIGHT: #555 1px solid; BORDER-TOP: #555 1px solid; BORDER-LEFT: = #555 1px solid; BORDER-BOTTOM: #555 1px solid } .btn { BORDER-LEFT-COLOR: #555; BORDER-BOTTOM-COLOR: #555; BORDER-TOP-COLOR: = #555; BORDER-RIGHT-COLOR: #555 } .btn DIV { BORDER-LEFT-COLOR: #555; BORDER-BOTTOM-COLOR: #555; BORDER-TOP-COLOR: = #555; BORDER-RIGHT-COLOR: #555 } .btn DIV:hover { BACKGROUND-COLOR: #555 } ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.blogger.com/v-js/3625575137-cookies.common.js // Copyright 2005, Google Inc.=0A= // =0A= // Operations on cookies that are common across our pages.=0A= //=0A= // Original Author: Pal Takacsi-Nagy (pal@google.com)=0A= =0A= =0A= /**=0A= * Sets a Cookie with the given name and value.=0A= *=0A= * name Name of the cookie=0A= * value Value of the cookie=0A= * [expires] Expiration date of the cookie (default: end of current = session)=0A= * [path] Path where the cookie is valid (default: path of calling = document)=0A= * [domain] Domain where the cookie is valid=0A= * (default: domain of calling document)=0A= * [secure] Boolean value indicating if the cookie transmission = requires a=0A= * secure transmission=0A= */=0A= function setCookie(name, value, domain, expires, path, secure) {=0A= document.cookie =3D name + "=3D" + escape(value) +=0A= ((expires) ? "; expires=3D" + expires.toGMTString() : "") +=0A= ((path) ? "; path=3D" + path : "") +=0A= ((domain) ? "; domain=3D" + domain : "") +=0A= ((secure) ? "; secure" : "");=0A= }=0A= =0A= /**=0A= * Gets the value of the specified cookie.=0A= *=0A= * name Name of the desired cookie.=0A= *=0A= * Returns a string containing value of specified cookie,=0A= * or null if cookie does not exist.=0A= */=0A= function getCookie(name) {=0A= var dc =3D document.cookie;=0A= var prefix =3D name + "=3D";=0A= var begin =3D dc.indexOf("; " + prefix);=0A= =0A= if (begin =3D=3D -1) {=0A= begin =3D dc.indexOf(prefix);=0A= if (begin !=3D 0) return null;=0A= } else {=0A= begin +=3D 2;=0A= }=0A= =0A= var end =3D document.cookie.indexOf(";", begin);=0A= =0A= if (end =3D=3D -1) {=0A= end =3D dc.length;=0A= }=0A= =0A= return unescape(dc.substring(begin + prefix.length, end));=0A= }=0A= ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.blogger.com/v-app/scripts/1019856700-common.js // Copied from .../google3/javascript/common.js=0A= =0A= //-----------------------------------------------------------------------= -=0A= // This file contains common utilities and basic javascript = infrastructure.=0A= //=0A= // Notes:=0A= // * Press 'D' to toggle debug mode.=0A= //=0A= // Functions:=0A= //=0A= // - Assertions=0A= // DEPRECATED: Use assert.js=0A= // AssertTrue(): assert an expression. Throws an exception if false.=0A= // Fail(): Throws an exception. (Mark block of code that should be = unreachable)=0A= // AssertEquals(): assert that two values are equal.=0A= // AssertNumArgs(): assert number of arguments for the function=0A= // AssertType(): assert that a value has a particular type=0A= //=0A= // - Cookies=0A= // SetCookie(): Sets a cookie.=0A= // ExpireCookie(): Expires a cookie.=0A= // GetCookie(): Gets a cookie value.=0A= //=0A= // - Dynamic HTML/DOM utilities=0A= // MaybeGetElement(): get an element by its id=0A= // GetElement(): get an element by its id=0A= // GetParentNode(): Get the parent of an element=0A= // GetAttribute(): Get attribute value of a DOM node=0A= // SetInnerHTML(): set the inner HTML of a node=0A= // GetInnerHTML(): get the inner HTML of a node=0A= // ClearInnerHTML(): clear the inner HTML of a node=0A= // SetCssStyle(): Sets a CSS property of a node.=0A= // GetStyleProperty(): Get CSS property from a style attribute string=0A= // ShowElement(): Show/hide element by setting the "display" css = property.=0A= // ShowBlockElement(): Show/hide block element=0A= // SetButtonText(): Set the text of a button element.=0A= // AppendNewElement(): Create and append a html element to a parent node.=0A= // CreateDIV(): Create a DIV element and append to the document.=0A= // CreateIFRAME(): Create an IFRAME and append to the document.=0A= // HasClass(): check if element has a given class=0A= // AddClass(): add a class to an element=0A= // RemoveClass(): remove a class from an element=0A= //=0A= // - Window/Screen utiltiies=0A= // GetPageOffsetLeft(): get the X page offset of an element=0A= // GetPageOffsetTop(): get the Y page offset of an element=0A= // GetPageOffset(): get the X and Y page offsets of an element=0A= // GetPageOffsetRight() : get X page offset of the right side of an = element=0A= // GetPageOffsetRight() : get Y page offset of the bottom of an element=0A= // GetScrollTop(): get the vertical scrolling pos of a window.=0A= // GetScrollLeft(): get the horizontal scrolling pos of a window=0A= // IsScrollAtEnd(): check if window scrollbar has reached its maximum = offset=0A= // ScrollTo(): scroll window to a position=0A= // ScrollIntoView(): scroll window so that an element is in view.=0A= // GetWindowWidth(): get width of a window.=0A= // GetWindowHeight(): get height of a window=0A= // GetAvailScreenWidth(): get available screen width=0A= // GetAvailScreenHeight(): get available screen height=0A= // GetNiceWindowHeight(): get a nice height for a new browser window.=0A= // Open{External/Internal}Window(): open a separate window=0A= // CloseWindow(): close a window=0A= //=0A= // - DOM walking utilities=0A= // AnnotateTerms(): find terms in a node and decorate them with some tag=0A= // AnnotateText(): find terms in a text node and decorate them with some = tag=0A= //=0A= // - String utilties=0A= // HtmlEscape(): html escapes a string=0A= // HtmlUnescape(): remove html-escaping.=0A= // QuoteEscape(): escape " quotes.=0A= // CollapseWhitespace(): collapse multiple whitespace into one = whitespace.=0A= // Trim(): trim whitespace on ends of string=0A= // IsEmpty(): check if CollapseWhiteSpace(String) =3D=3D ""=0A= // IsLetterOrDigit(): check if a character is a letter or a digit=0A= // ConvertEOLToLF(): normalize the new-lines of a string.=0A= // HtmlEscapeInsertWbrs(): HtmlEscapes and inserts s (word break = tags)=0A= // after every n non-space chars and/or after or before certain = special chars=0A= //=0A= // - TextArea utilities=0A= // GetCursorPos(): finds the cursor position of a textfield=0A= // SetCursorPos(): sets the cursor position in a textfield=0A= //=0A= // - Array utilities=0A= // FindInArray(): do a linear search to find an element value.=0A= // DeleteArrayElement(): return a new array with a specific value = removed.=0A= // CloneObject(): clone an object, copying its values recursively.=0A= // CloneEvent(): clone an event; cannot use CloneObject because it=0A= // suffers from infinite recursion=0A= //=0A= // - Formatting utilities=0A= // PrintArray(): used to print/generate HTML by combining static text=0A= // and dynamic strings.=0A= // ImageHtml(): create html for an img tag=0A= // FormatJSLink(): formats a link that invokes js code when clicked.=0A= // MakeId3(): formats an id that has two id numbers, eg, foo_3_7=0A= //=0A= // - Miscellaneous=0A= // IsDefined(): returns true if argument is not undefined=0A= //-----------------------------------------------------------------------= -=0A= =0A= // browser detection=0A= var agent =3D navigator.userAgent.toLowerCase();=0A= var is_ie =3D (agent.indexOf('msie') !=3D -1);=0A= //var is_ie5 =3D (agent.indexOf('msie 5') !=3D -1 && document.all);=0A= var is_konqueror =3D (agent.indexOf('konqueror') !=3D -1);=0A= var is_safari =3D (agent.indexOf('safari') !=3D -1) || is_konqueror;=0A= var is_nav =3D !is_ie && !is_safari && (agent.indexOf('mozilla') !=3D = -1);=0A= var is_win =3D (agent.indexOf('win') !=3D -1);=0A= delete agent;=0A= =0A= =0A= var BACKSPACE_KEYCODE =3D 8;=0A= var COMMA_KEYCODE =3D 188; // ',' key=0A= var DEBUG_KEYCODE =3D 68; // 'D' key=0A= var DELETE_KEYCODE =3D 46;=0A= var DOWN_KEYCODE =3D 40; // DOWN arrow key=0A= var ENTER_KEYCODE =3D 13; // ENTER key=0A= var ESC_KEYCODE =3D 27; // ESC key=0A= var LEFT_KEYCODE =3D 37; // LEFT arrow key=0A= var RIGHT_KEYCODE =3D 39; // RIGHT arrow key=0A= var SPACE_KEYCODE =3D 32; // space bar=0A= var TAB_KEYCODE =3D 9; // TAB key=0A= var UP_KEYCODE =3D 38; // UP arrow key=0A= var SHIFT_KEYCODE =3D 16;=0A= =0A= // This is a "constant" but has different values depending on the browser=0A= var semicolon_keycode =3D (is_ie ? 186 : 59);=0A= =0A= var MAX_EMAIL_ADDRESS_LENGTH =3D 320; // 64 + '@' + 255=0A= var MAX_SIGNATURE_LENGTH =3D 1000; // 1000 chars of maximum = signature=0A= =0A= //-----------------------------------------------------------------------= -=0A= // Assertions=0A= // DEPRECATED: Use assert.js=0A= //-----------------------------------------------------------------------= -=0A= /**=0A= * DEPRECATED: Use assert.js=0A= */=0A= function raise(msg) {=0A= if (typeof Error !=3D 'undefined') {=0A= throw new Error(msg || 'Assertion Failed');=0A= } else {=0A= throw (msg);=0A= }=0A= }=0A= =0A= /**=0A= * DEPRECATED: Use assert.js=0A= *=0A= * Fail() is useful for marking logic paths that should=0A= * not be reached. For example, if you have a class that uses=0A= * ints for enums:=0A= *=0A= * MyClass.ENUM_FOO =3D 1;=0A= * MyClass.ENUM_BAR =3D 2;=0A= * MyClass.ENUM_BAZ =3D 3;=0A= *=0A= * And a switch statement elsewhere in your code that=0A= * has cases for each of these enums, then you can=0A= * "protect" your code as follows:=0A= *=0A= * switch(type) {=0A= * case MyClass.ENUM_FOO: doFooThing(); break;=0A= * case MyClass.ENUM_BAR: doBarThing(); break;=0A= * case MyClass.ENUM_BAZ: doBazThing(); break;=0A= * default:=0A= * Fail("No enum in MyClass with value: " + type);=0A= * }=0A= *=0A= * This way, if someone introduces a new value for this enum=0A= * without noticing this switch statement, then the code will=0A= * fail if the logic allows it to reach the switch with the=0A= * new value, alerting the developer that he should add a=0A= * case to the switch to handle the new value he has introduced.=0A= *=0A= * @param {string} opt_msg to display for failure=0A= * DEFAULT: "Assertion failed"=0A= */=0A= function Fail(opt_msg) {=0A= if (opt_msg =3D=3D=3D undefined) opt_msg =3D 'Assertion failed';=0A= if (IsDefined(DumpError)) DumpError(opt_msg + '\n');=0A= raise(opt_msg);=0A= }=0A= =0A= /**=0A= * DEPRECATED: Use assert.js=0A= *=0A= * Asserts that an expression is true (non-zero and non-null).=0A= *=0A= * Note that it is critical not to pass logic=0A= * with side-effects as the expression for AssertTrue=0A= * because if the assertions are removed by the=0A= * JSCompiler, then the expression will be removed=0A= * as well, in which case the side-effects will=0A= * be lost. So instead of this:=0A= *=0A= * AssertTrue( criticalComputation() );=0A= *=0A= * Do this:=0A= *=0A= * var result =3D criticalComputation();=0A= * AssertTrue(result);=0A= *=0A= * @param {anything} expression to evaluate=0A= * @param {string} opt_msg to display if the assertion fails=0A= *=0A= */=0A= function AssertTrue(expression, opt_msg) {=0A= if (!expression) {=0A= if (opt_msg =3D=3D=3D undefined) opt_msg =3D 'Assertion failed';=0A= Fail(opt_msg);=0A= }=0A= }=0A= =0A= /**=0A= * DEPRECATED: Use assert.js=0A= *=0A= * Asserts that two values are the same.=0A= *=0A= * @param {anything} val1=0A= * @param {anything} val2=0A= * @param {string} opt_msg to display if the assertion fails=0A= */=0A= function AssertEquals(val1, val2, opt_msg) {=0A= if (val1 !=3D val2) {=0A= if (opt_msg =3D=3D=3D undefined) {=0A= opt_msg =3D "AssertEquals failed: <" + val1 + "> !=3D <" + val2 + = ">";=0A= }=0A= Fail(opt_msg);=0A= }=0A= }=0A= =0A= /**=0A= * DEPRECATED: Use assert.js=0A= *=0A= * Asserts that a value is of the provided type.=0A= *=0A= * AssertType(6, Number);=0A= * AssertType("ijk", String);=0A= * AssertType([], Array);=0A= * AssertType({}, Object);=0A= * AssertType(ICAL_Date.now(), ICAL_Date);=0A= *=0A= * @param {anything} value=0A= * @param {constructor function} type=0A= * @param {string} opt_msg to display if the assertion fails=0A= */=0A= function AssertType(value, type, opt_msg) {=0A= // for backwards compatability only=0A= if (typeof value =3D=3D type) return;=0A= =0A= if (value || value =3D=3D "") {=0A= try {=0A= if (type =3D=3D AssertTypeMap[typeof value] || value instanceof = type) return;=0A= } catch (e) { /* failure, type was an illegal argument to instanceof = */ }=0A= }=0A= if (opt_msg =3D=3D=3D undefined) {=0A= if (typeof type =3D=3D 'function') {=0A= var match =3D type.toString().match(/^\s*function\s+([^\s\{]+)/);=0A= if (match) type =3D match[1];=0A= }=0A= opt_msg =3D "AssertType failed: <" + value + "> not typeof "+ type;=0A= }=0A= Fail(opt_msg);=0A= }=0A= =0A= var AssertTypeMap =3D {=0A= 'string' : String,=0A= 'number' : Number,=0A= 'boolean' : Boolean=0A= };=0A= =0A= /**=0A= * DEPRECATED: Use assert.js=0A= *=0A= * Asserts that the number of arguments to a=0A= * function is num. For example:=0A= *=0A= * function myFunc(one, two, three) [=0A= * AssertNumArgs(3);=0A= * ...=0A= * }=0A= *=0A= * myFunc(1, 2); // assertion fails!=0A= *=0A= * Note that AssertNumArgs does not take the function=0A= * as an argument; it is simply used in the context=0A= * of the function.=0A= *=0A= * @param {int} number of arguments expected=0A= * @param {string} opt_msg to display if the assertion fails=0A= */=0A= function AssertNumArgs(num, opt_msg) {=0A= var caller =3D AssertNumArgs.caller; // This is not supported in = safari 1.0=0A= if (caller && caller.arguments.length !=3D num) {=0A= if (opt_msg =3D=3D=3D undefined) {=0A= opt_msg =3D caller.name + ' expected ' + num + ' arguments '=0A= + ' but received ' + caller.arguments.length;=0A= }=0A= Fail(opt_msg);=0A= }=0A= }=0A= =0A= //-----------------------------------------------------------------------= -=0A= // Cookies=0A= //-----------------------------------------------------------------------= -=0A= var ILLEGAL_COOKIE_CHARS_RE =3D /[\s;]/=0A= /**=0A= * Sets a cookie.=0A= * The max_age can be -1 to set a session cookie. To expire cookies, use=0A= * ExpireCookie() instead.=0A= *=0A= * @param name The cookie name.=0A= * @param value The cookie value.=0A= * @param opt_max_age The max age in seconds (from now). Use -1 to set a=0A= * session cookie. If not provided, the default is -1 (i.e. set a = session=0A= * cookie).=0A= * @param opt_path The path of the cookie, or null to not specify a path=0A= * attribute (browser will use the full request path). If not = provided, the=0A= * default is '/' (i.e. path=3D/).=0A= * @param opt_domain The domain of the cookie, or null to not specify a = domain=0A= * attribute (brower will use the full request host name). If not = provided,=0A= * the default is null (i.e. let browser use full request host name).=0A= * @return Void.=0A= */=0A= function SetCookie(name, value, opt_max_age, opt_path, opt_domain) {=0A= =0A= value =3D '' + value;=0A= AssertTrue((typeof name =3D=3D 'string' &&=0A= typeof value =3D=3D 'string' &&=0A= !name.match(ILLEGAL_COOKIE_CHARS_RE) &&=0A= !value.match(ILLEGAL_COOKIE_CHARS_RE)),=0A= 'trying to set an invalid cookie');=0A= =0A= if (!IsDefined(opt_max_age)) opt_max_age =3D -1;=0A= if (!IsDefined(opt_path)) opt_path =3D '/';=0A= if (!IsDefined(opt_domain)) opt_domain =3D null;=0A= =0A= var domain_str =3D (opt_domain =3D=3D null) ? '' : ';domain=3D' + = opt_domain;=0A= var path_str =3D (opt_path =3D=3D null) ? '' : ';path=3D' + opt_path;=0A= =0A= var expires_str;=0A= =0A= // Case 1: Set a session cookie.=0A= if (opt_max_age < 0) {=0A= expires_str =3D '';=0A= =0A= // Case 2: Expire the cookie.=0A= // Note: We don't tell people about this option in the function doc = because=0A= // we prefer people to use ExpireCookie() to expire cookies.=0A= } else if (opt_max_age =3D=3D 0) {=0A= // Note: Don't use Jan 1, 1970 for date because NS 4.76 will try to = convert=0A= // it to local time, and if the local time is before Jan 1, 1970, = then the=0A= // browser will ignore the Expires attribute altogether.=0A= var pastDate =3D new Date(1970, 1 /*Feb*/, 1); // Feb 1, 1970=0A= expires_str =3D ';expires=3D' + pastDate.toUTCString();=0A= =0A= // Case 3: Set a persistent cookie.=0A= } else {=0A= var futureDate =3D new Date(Now() + opt_max_age * 1000);=0A= expires_str =3D ';expires=3D' + futureDate.toUTCString();=0A= }=0A= =0A= document.cookie =3D name + '=3D' + value + domain_str + path_str + = expires_str;=0A= }=0A= =0A= var EXPIRED_COOKIE_VALUE =3D 'EXPIRED';=0A= =0A= /**=0A= * Expires a cookie.=0A= *=0A= * @param name The cookie name.=0A= * @param opt_path The path of the cookie, or null to expire a cookie = set at=0A= * the full request path. If not provided, the default is '/' (i.e. = path=3D/).=0A= * @param opt_domain The domain of the cookie, or null to expire a = cookie set=0A= * at the full request host name. If not provided, the default is null = (i.e.=0A= * cookie at full request host name).=0A= * @return Void.=0A= */=0A= function ExpireCookie(name, opt_path, opt_domain) {=0A= SetCookie(name, EXPIRED_COOKIE_VALUE, 0, opt_path, opt_domain);=0A= }=0A= =0A= /** Returns the value for the first cookie with the given name=0A= * @param name : string=0A= * @return a string or the empty string if no cookie found.=0A= */=0A= function GetCookie(name) {=0A= var nameeq =3D name + "=3D";=0A= var cookie =3D String(document.cookie);=0A= for (var pos =3D -1; (pos =3D cookie.indexOf(nameeq, pos + 1)) >=3D = 0;) {=0A= var i =3D pos;=0A= // walk back along string skipping whitespace and looking for a ; = before=0A= // the name to make sure that we don't match cookies whose name = contains=0A= // the given name as a suffix.=0A= while (--i >=3D 0) {=0A= var ch =3D cookie.charAt(i);=0A= if (ch =3D=3D ';') {=0A= i =3D -1; // indicate success=0A= break;=0A= } else if (' \t'.indexOf(ch) < 0) {=0A= break;=0A= }=0A= }=0A= if (-1 =3D=3D=3D i) { // first cookie in the string or we found a ;=0A= var end =3D cookie.indexOf(';', pos);=0A= if (end < 0) { end =3D cookie.length; }=0A= return cookie.substring(pos + nameeq.length, end);=0A= }=0A= }=0A= return "";=0A= }=0A= =0A= =0A= //-----------------------------------------------------------------------= -=0A= // Time=0A= //-----------------------------------------------------------------------= -=0A= function Now() {=0A= return (new Date()).getTime();=0A= }=0A= =0A= //-----------------------------------------------------------------------= -=0A= // Dynamic HTML/DOM utilities=0A= //-----------------------------------------------------------------------= -=0A= // Gets a element by its id, may return null=0A= function MaybeGetElement(win, id) {=0A= return win.document.getElementById(id);=0A= }=0A= =0A= // Same as MaybeGetElement except that it throws an exception if it's = null=0A= function GetElement(win, id) {=0A= var el =3D win.document.getElementById(id);=0A= if (!el) {=0A= DumpError("Element " + id + " not found.");=0A= }=0A= return el;=0A= }=0A= =0A= // Gets elements by its id/name=0A= // IE treats getElementsByName as searching over ids, while Moz use = names.=0A= // so tags must have both id and name as the same string=0A= function GetElements(win, id) {=0A= return win.document.getElementsByName(id);=0A= }=0A= =0A= // Gets the parent of a html element.=0A= function GetParentNode(n) {=0A= try {=0A= return n.parentNode;=0A= } catch (e) {=0A= // n.parentNode may throw a permission-denied exception on mozilla=0A= // (e.g. on text element), ignore this exception.=0A= return n;=0A= }=0A= }=0A= =0A= function IsDescendant(parent, child) {=0A= do {=0A= if (parent =3D=3D=3D child) return true;=0A= child =3D GetParentNode(child);=0A= } while (child && child !=3D=3D document.body);=0A= return false;=0A= }=0A= =0A= // Get attribute value of a DOM node=0A= function GetAttribute(node, attribute) {=0A= if (!node.getAttribute) {=0A= return null;=0A= }=0A= var attr =3D node.getAttribute(attribute);=0A= if (is_ie && attribute =3D=3D "style") {=0A= return attr.value;=0A= } else {=0A= return attr;=0A= }=0A= }=0A= =0A= // Sets inner html of a html element=0A= function SetInnerHTML(win, id, html) {=0A= try {=0A= GetElement(win, id).innerHTML =3D html;=0A= } catch (ex) {=0A= DumpException(ex);=0A= }=0A= }=0A= =0A= // Gets inner-html of a html element=0A= function GetInnerHTML(win, id) {=0A= try {=0A= return GetElement(win, id).innerHTML;=0A= } catch (ex) {=0A= DumpException(ex);=0A= return "";=0A= }=0A= }=0A= =0A= // Clears inner html of a html element=0A= function ClearInnerHTML(win, id) {=0A= try {=0A= GetElement(win, id).innerHTML =3D "";=0A= } catch (ex) {=0A= DumpException(ex);=0A= }=0A= }=0A= =0A= // Sets a CSS style of an element=0A= function SetCssStyle(win, id, name, value) {=0A= try {=0A= var elem =3D GetElement(win, id);=0A= elem.style[name] =3D value;=0A= } catch (ex) {=0A= DumpException(ex);=0A= }=0A= }=0A= =0A= // Get CSS property from a style attribute string=0A= function GetStyleProperty(style, name) {=0A= var i =3D style.indexOf(name);=0A= if (i !=3D -1) {=0A= var j =3D style.indexOf(";", i);=0A= if (j =3D=3D -1) {=0A= j =3D style.length;=0A= }=0A= // the +1 below is for the colon following the attribute name=0A= return CollapseWhitespace(style.substring(i + name.length + 1, j));=0A= }=0A= return null;=0A= }=0A= =0A= // Show/hide an element.=0A= function ShowElement(el, show) {=0A= el.style.display =3D show ? "" : "none";=0A= }=0A= =0A= // Show/hide a block element.=0A= // ShowElement() doesn't work if object has an initial class with = display:none=0A= function ShowBlockElement(el, show) {=0A= el.style.display =3D show ? "block" : "none";=0A= }=0A= =0A= // Show/hide an inline element.=0A= // ShowElement() doesn't work when an element starts off display:none.=0A= function ShowInlineElement(el, show) {=0A= el.style.display =3D show ? "inline" : "none";=0A= }=0A= =0A= // Set the text of a button. This is to get around a bug in mozilla,=0A= // where we can't set the text of a button by setting innerHTML.=0A= function SetButtonText(button, text) {=0A= button.childNodes[0].nodeValue =3D text;=0A= }=0A= =0A= // Append a new HTML element to a HTML node.=0A= function AppendNewElement(win, parent, tag) {=0A= var e =3D win.document.createElement(tag);=0A= parent.appendChild(e);=0A= return e;=0A= }=0A= =0A= // Finds the child with the given ID, or null if there is node.=0A= // This does not search the children's children.=0A= function FindChildWithID(parent, id) {=0A= var el;=0A= for (el =3D parent.firstChild; el && el.id !=3D id; el =3D = el.nextSibling) {=0A= // skip=0A= }=0A= return el;=0A= }=0A= =0A= // Adds a disabled option to the given menu=0A= function AddMenuDisabledOption(win, menu, html) {=0A= var op =3D AppendNewElement(win, menu, 'OPTION');=0A= op.disabled =3D true;=0A= op.innerHTML =3D html;=0A= =0A= return op;=0A= }=0A= =0A= // Adds a option to the given menu=0A= function AddMenuOption(win, menu, value, html) {=0A= var op =3D AppendNewElement(win, menu, 'OPTION');=0A= op.value =3D value;=0A= op.innerHTML =3D html;=0A= =0A= return op;=0A= }=0A= =0A= // Create a new DIV (append it to the end of the document)=0A= function CreateDIV(win, id) {=0A= var div =3D MaybeGetElement(win, id);=0A= if (!div) {=0A= div =3D AppendNewElement(win, win.document.body, "div");=0A= div.id =3D id;=0A= }=0A= return div;=0A= }=0A= =0A= // Create a new IFRAME (append it to the end of the document)=0A= function CreateIFRAME(win, id, url) {=0A= var iframe =3D MaybeGetElement(win, id);=0A= if (!iframe) {=0A= // We cannot create an IFRAME directly (IE doesn't allow it), so we=0A= // create a DIV and then insert an IFRAME.=0A= // We also give the IFRAME a name (same as id)=0A= var div =3D AppendNewElement(win, win.document.body, "div");=0A= div.innerHTML =3D "";=0A= iframe =3D GetElement(win, id);=0A= }=0A= return iframe;=0A= }=0A= =0A= // Create a new TR containing the given td's=0A= function Tr(win, tds) {=0A= var tr =3D win.document.createElement("TR");=0A= for (var i =3D 0; i < tds.length; i++) {=0A= tr.appendChild(tds[i]);=0A= }=0A= return tr;=0A= }=0A= =0A= // Create a new TD, with an optional colspan=0A= function Td(win, opt_colspan) {=0A= var td =3D win.document.createElement("TD");=0A= if (opt_colspan) {=0A= td.colSpan =3D opt_colspan;=0A= }=0A= return td;=0A= }=0A= =0A= =0A= // Check if an element has a given class=0A= function HasClass(el, cl) {=0A= if (el =3D=3D null || el.className =3D=3D null) return false;=0A= var classes =3D el.className.split(" ");=0A= for (var i =3D 0; i < classes.length; i++) {=0A= if (classes[i] =3D=3D cl) {=0A= return true;=0A= }=0A= }=0A= return false;=0A= }=0A= =0A= // Add a class to element=0A= function AddClass(el, cl) {=0A= if (HasClass(el, cl)) return;=0A= el.className +=3D " " + cl;=0A= }=0A= =0A= // Remove a class from an element=0A= function RemoveClass(el, cl) {=0A= if (el.className =3D=3D null) return;=0A= var classes =3D el.className.split(" ");=0A= var result =3D [];=0A= var changed =3D false;=0A= for (var i =3D 0; i < classes.length; i++) {=0A= if (classes[i] !=3D cl) {=0A= if (classes[i]) { result.push(classes[i]); }=0A= } else {=0A= changed =3D true;=0A= }=0A= }=0A= if (changed) { el.className =3D result.join(" "); }=0A= }=0A= =0A= // Performs an in-order traversal of the tree rooted at the given node=0A= // (excluding the root node) and returns an array of nodes that match the=0A= // given selector. The selector must implement the method:=0A= //=0A= // boolean select(node);=0A= //=0A= // This method is a generalization of the DOM method = "getElementsByTagName"=0A= //=0A= function GetElementsBySelector(root, selector) {=0A= var nodes =3D [];=0A= for (var child =3D root.firstChild; child; child =3D = child.nextSibling) {=0A= AddElementBySelector_(child, selector, nodes);=0A= }=0A= return nodes;=0A= }=0A= =0A= // Recursive helper for GetElemnetsBySelector()=0A= function AddElementBySelector_(root, selector, nodes) {=0A= // First test the parent=0A= if (selector.select(root)) {=0A= nodes.push(root);=0A= }=0A= =0A= // Then recurse through the children=0A= for (var child =3D root.firstChild; child; child =3D = child.nextSibling) {=0A= AddElementBySelector_(child, selector, nodes);=0A= }=0A= }=0A= =0A= //-----------------------------------------------------------------------= -=0A= // Window/screen utilities=0A= // TODO: these should be renamed (e.g. GetWindowWidth to = GetWindowInnerWidth=0A= // and moved to geom.js)=0A= //-----------------------------------------------------------------------= -=0A= // Get page offset of an element=0A= function GetPageOffsetLeft(el) {=0A= var x =3D el.offsetLeft;=0A= if (el.offsetParent !=3D null)=0A= x +=3D GetPageOffsetLeft(el.offsetParent);=0A= return x;=0A= }=0A= =0A= // Get page offset of an element=0A= function GetPageOffsetTop(el) {=0A= var y =3D el.offsetTop;=0A= if (el.offsetParent !=3D null)=0A= y +=3D GetPageOffsetTop(el.offsetParent);=0A= return y;=0A= }=0A= =0A= // Get page offset of an element=0A= function GetPageOffset(el) {=0A= var x =3D el.offsetLeft;=0A= var y =3D el.offsetTop;=0A= if (el.offsetParent !=3D null) {=0A= var pos =3D GetPageOffset(el.offsetParent);=0A= x +=3D pos.x;=0A= y +=3D pos.y;=0A= }=0A= return {x: x, y: y};=0A= }=0A= =0A= function GetPageOffsetRight(el) {=0A= return GetPageOffsetLeft(el) + el.offsetWidth;=0A= }=0A= =0A= function GetPageOffsetBottom(el) {=0A= return GetPageOffsetTop(el) + el.offsetHeight;=0A= }=0A= =0A= // Get the y position scroll offset.=0A= function GetScrollTop(win) {=0A= // all except Explorer=0A= if ("pageYOffset" in win) {=0A= return win.pageYOffset;=0A= }=0A= // Explorer 6 Strict Mode=0A= else if ("documentElement" in win.document &&=0A= "scrollTop" in win.document.documentElement) {=0A= return win.document.documentElement.scrollTop;=0A= }=0A= // other Explorers=0A= else if ("scrollTop" in win.document.body) {=0A= return win.document.body.scrollTop;=0A= }=0A= =0A= return 0;=0A= }=0A= =0A= // Get the x position scroll offset.=0A= function GetScrollLeft(win) {=0A= // all except Explorer=0A= if ("pageXOffset" in win) {=0A= return win.pageXOffset;=0A= }=0A= // Explorer 6 Strict Mode=0A= else if ("documentElement" in win.document &&=0A= "scrollLeft" in win.document.documentElement) {=0A= return win.document.documentElement.scrollLeft;=0A= }=0A= // other Explorers=0A= else if ("scrollLeft" in win.document.body) {=0A= return win.document.body.scrollLeft;=0A= }=0A= =0A= return 0;=0A= }=0A= =0A= /**=0A= * Checks if window scrollbar has reached its maximum offset=0A= *=0A= * @param win a window object=0A= * @param opt_isHoriz true if horizontal bar, false if vertical=0A= */=0A= function IsScrollAtEnd(win, opt_isHoriz) {=0A= var total =3D=0A= (opt_isHoriz) ? document.body.offsetWidth : = document.body.offsetHeight;=0A= var inner =3D=0A= (opt_isHoriz) ? GetWindowWidth(win) : GetWindowHeight(win);=0A= var offset =3D=0A= (opt_isHoriz) ? GetScrollLeft(win) : GetScrollTop(win);=0A= =0A= return (inner + offset >=3D total || total < inner);=0A= }=0A= =0A= // Scroll window to pos=0A= // position: 0 =3D top, 0.5 =3D middle, 1 =3D bottom=0A= function ScrollTo(win, el, position) {=0A= var y =3D GetPageOffsetTop(el);=0A= y -=3D GetWindowHeight(win) * position;=0A= win.scrollTo(0, y);=0A= }=0A= =0A= // Scroll so that as far as possible the entire element is in view.=0A= var ALIGN_BOTTOM =3D 'b';=0A= var ALIGN_MIDDLE =3D 'm';=0A= var ALIGN_TOP =3D 't';=0A= function ScrollIntoView(win, el, alignment) {=0A= var el_top =3D GetPageOffsetTop(el);=0A= var el_bottom =3D el_top + el.offsetHeight;=0A= var win_top =3D GetScrollTop(win);=0A= var win_height =3D GetWindowHeight(win);=0A= var win_bottom =3D win_top + win_height;=0A= =0A= // Out of view?=0A= if (el_top < win_top ||=0A= el_bottom > win_bottom) {=0A= =0A= var scrollto_y;=0A= if (alignment =3D=3D ALIGN_BOTTOM) {=0A= scrollto_y =3D el_bottom - win_height + 5;=0A= } else if (alignment =3D=3D ALIGN_MIDDLE) {=0A= scrollto_y =3D (el_top + el_bottom) / 2 - win_height/2;=0A= } else {=0A= scrollto_y =3D el_top - 5; // ALIGN_TOP=0A= }=0A= =0A= Debug("Scrolling to " + scrollto_y);=0A= win.scrollTo(0, scrollto_y);=0A= }=0A= }=0A= =0A= function IsElementVisible(win, id) {=0A= var el =3D MaybeGetElement(win, id);=0A= if (el =3D=3D null) {=0A= return false;=0A= }=0A= var el_top =3D GetPageOffsetTop(el);=0A= var el_bottom =3D el_top + el.offsetHeight;=0A= var win_top =3D GetScrollTop(win);=0A= var win_bottom =3D win_top + GetWindowHeight(win);=0A= if (el_top >=3D win_top && el_bottom <=3D win_bottom) {=0A= return true;=0A= }=0A= return false;=0A= }=0A= =0A= function GetWindowWidth(win) {=0A= // all except Explorer=0A= if ("innerWidth" in win) {=0A= return win.innerWidth;=0A= }=0A= // Explorer 6 Strict Mode=0A= else if ("documentElement" in win.document &&=0A= "clientWidth" in win.document.documentElement) {=0A= return win.document.documentElement.clientWidth;=0A= }=0A= // other Explorers=0A= else if ("clientWidth" in win.document.body) {=0A= return win.document.body.clientWidth;=0A= }=0A= =0A= return 0;=0A= }=0A= =0A= function GetWindowHeight(win) {=0A= // all except Explorer=0A= if ("innerHeight" in win) {=0A= return win.innerHeight;=0A= }=0A= // Explorer 6 Strict Mode=0A= else if ("documentElement" in win.document &&=0A= "clientHeight" in win.document.documentElement) {=0A= return win.document.documentElement.clientHeight;=0A= }=0A= // other Explorers=0A= else if ("clientHeight" in win.document.body) {=0A= return win.document.body.clientHeight;=0A= }=0A= =0A= return 0;=0A= }=0A= =0A= function GetAvailScreenWidth(win) {=0A= return win.screen.availWidth;=0A= }=0A= =0A= function GetAvailScreenHeight(win) {=0A= return win.screen.availHeight;=0A= }=0A= =0A= // Returns a "nice" window height.=0A= // Use the screen height. (Or should we use the height of the current = window?)=0A= function GetNiceWindowHeight(win) {=0A= return Math.floor(0.8 * GetAvailScreenHeight(win));=0A= }=0A= =0A= // Used for horizontally centering a new window of the given width in the=0A= // available screen. Set the new window's distance from the left of the = screen=0A= // equal to this function's return value.=0A= // Params: width: the width of the new window=0A= // Returns: the distance from the left edge of the screen for the new = window to=0A= // be horizontally centered=0A= function GetCenteringLeft(win, width) {=0A= return (win.screen.availWidth - width) >> 1;=0A= }=0A= =0A= // Used for vertically centering a new window of the given height in the=0A= // available screen. Set the new window's distance from the top of the = screen=0A= // equal to this function's return value.=0A= // Params: height: the height of the new window=0A= // Returns: the distance from the top edge of the screen for the new = window to=0A= // be vertically aligned.=0A= function GetCenteringTop(win, height) {=0A= return (win.screen.availHeight - height) >> 1;=0A= }=0A= =0A= /*=0A= * Opens a child popup window that has no browser toolbar/decorations.=0A= * (Copied from caribou's common.js library with small modifications.)=0A= *=0A= * @param url the URL for the new window (Note: this will be = unique-ified)=0A= * @param opt_name the name of the new window=0A= * @param opt_width the width of the new window=0A= * @param opt_height the height of the new window=0A= * @param opt_center if true, the new window is centered in the = available screen=0A= * @param opt_hide_scrollbars if true, the window hides the scrollbars=0A= * @param opt_noresize if true, makes window unresizable=0A= * @param opt_blocked_msg message warning that the popup has been blocked=0A= * @return a reference to the new child window=0A= */=0A= function Popup(url, opt_name, opt_width, opt_height, opt_center,=0A= opt_hide_scrollbars, opt_noresize, opt_blocked_msg) {=0A= if (!opt_height) {=0A= opt_height =3D Math.floor(GetWindowHeight(window.top) * 0.8);=0A= }=0A= if (!opt_width) {=0A= opt_width =3D Math.min(GetAvailScreenWidth(window), opt_height);=0A= }=0A= =0A= var features =3D "resizable=3D" + (opt_noresize ? "no" : "yes") + "," +=0A= "scrollbars=3D" + (opt_hide_scrollbars ? "no" : "yes") = + "," +=0A= "width=3D" + opt_width + ",height=3D" + opt_height;=0A= if (opt_center) {=0A= features +=3D ",left=3D" + GetCenteringLeft(window, opt_width) + "," = +=0A= "top=3D" + GetCenteringTop(window, opt_height);=0A= }=0A= return OpenWindow(window, url, opt_name, features, opt_blocked_msg);=0A= }=0A= =0A= /*=0A= * Opens a new window. Returns the new window handle. Tries to open the = new=0A= * window using top.open() first. If that doesn't work, then tries = win.open().=0A= * If that still doesn't work, prints an alert.=0A= * (Copied from caribou's common.js library with small modifications.)=0A= *=0A= * @param win the parent window from which to open the new child window=0A= * @param url the URL for the new window (Note: this will be = unique-ified)=0A= * @param opt_name the name of the new window=0A= * @param opt_features the properties of the new window=0A= * @param opt_blocked_msg message warning that the popup has been blocked=0A= * @return a reference to the new child window=0A= */=0A= function OpenWindow(win, url, opt_name, opt_features, opt_blocked_msg) {=0A= var newwin =3D OpenWindowHelper(top, url, opt_name, opt_features);=0A= if (!newwin || newwin.closed || !newwin.focus) {=0A= newwin =3D OpenWindowHelper(win, url, opt_name, opt_features);=0A= }=0A= if (!newwin || newwin.closed || !newwin.focus) {=0A= if (opt_blocked_msg) alert(opt_blocked_msg);=0A= } else {=0A= // Make sure that the window has the focus=0A= newwin.focus();=0A= }=0A= return newwin;=0A= }=0A= =0A= /*=0A= * Helper for OpenWindow().=0A= * (Copied from caribou's common.js library with small modifications.)=0A= */=0A= function OpenWindowHelper(win, url, name, features) {=0A= var newwin;=0A= if (features) {=0A= newwin =3D win.open(url, name, features);=0A= } else if (name) {=0A= newwin =3D win.open(url, name);=0A= } else {=0A= newwin =3D win.open(url);=0A= }=0A= return newwin;=0A= }=0A= =0A= //-----------------------------------------------------------------------= -=0A= // DOM walking utilities=0A= //-----------------------------------------------------------------------= -=0A= =0A= function MaybeEscape(str, escape) {=0A= return escape ? HtmlEscape(str) : str;=0A= }=0A= =0A= =0A= //-----------------------------------------------------------------------= -=0A= // Window data=0A= //-----------------------------------------------------------------------= -=0A= // Gets an array, which can store data for the window. This data=0A= // is deleted when the window is unloaded.=0A= var windata =3D [];=0A= function GetWindowData(win) {=0A= var data =3D windata[win.name];=0A= if (!data) {=0A= windata[win.name] =3D data =3D [];=0A= }=0A= return data;=0A= }=0A= =0A= // Clear js data for a window.=0A= function ClearWindowData(win_name) {=0A= if (windata[win_name]) {=0A= windata[win_name] =3D null;=0A= }=0A= }=0A= =0A= //-----------------------------------------------------------------------= -=0A= // String utilities=0A= //-----------------------------------------------------------------------= -=0A= // Do html escaping=0A= var amp_re_ =3D /&/g;=0A= var lt_re_ =3D //g;=0A= =0A= // Convert text to HTML format. For efficiency, we just convert '&', = '<', '>'=0A= // characters.=0A= // Note: Javascript >=3D 1.3 supports lambda expression in the = replacement=0A= // argument. But it's slower on IE.=0A= // Note: we can also implement HtmlEscape by setting the value=0A= // of a textnode and then reading the 'innerHTML' value, but that=0A= // that turns out to be slower.=0A= // Params: str: String to be escaped.=0A= // Returns: The escaped string.=0A= function HtmlEscape(str) {=0A= if (!str) return "";=0A= return str.replace(amp_re_, "&").replace(lt_re_, "<").=0A= replace(gt_re_, ">").replace(quote_re_, """);=0A= }=0A= =0A= /** converts html entities to plain text. It covers the most common = named=0A= * entities and numeric entities.=0A= * It does not cover all named entities -- it covers = &{lt,gt,amp,quot,nbsp}; but=0A= * does not handle some of the more obscure ones like &{ndash,eacute};.=0A= */=0A= function HtmlUnescape(str) {=0A= if (!str) return "";=0A= return str.=0A= replace(/&#(\d+);/g,=0A= function (_, n) { return String.fromCharCode(parseInt(n, 10)); }).=0A= replace(/&#x([a-f0-9]+);/gi,=0A= function (_, n) { return String.fromCharCode(parseInt(n, 16)); }).=0A= replace(/&(\w+);/g, function (_, entity) {=0A= entity =3D entity.toLowerCase();=0A= return entity in HtmlUnescape.unesc ? HtmlUnescape.unesc[entity] : = '?';=0A= });=0A= }=0A= HtmlUnescape.unesc =3D { lt: '<', gt: '>', quot: '"', nbsp: ' ', amp: = '&' };=0A= =0A= // Replace multiple spaces with   to retain whitespace formatting=0A= // in addition to escaping '&', '<', and '>'.=0A= var dbsp_re_ =3D / /g;=0A= var ret_re_ =3D /\r/g;=0A= var nl_re_ =3D /\n/g;=0A= function HtmlWhitespaceEscape(str) {=0A= str =3D HtmlEscape(str);=0A= str =3D str.replace(dbsp_re_, "  ");=0A= str =3D str.replace(ret_re_, "");=0A= str =3D str.replace(nl_re_, "
");=0A= return str;=0A= }=0A= =0A= // Escape double quote '"' characters in addition to '&', '<', '>' so = that a=0A= // string can be included in an HTML tag attribute value within double = quotes.=0A= // Params: str: String to be escaped.=0A= // Returns: The escaped string.=0A= var quote_re_ =3D /\"/g;=0A= function QuoteEscape(str) {=0A= return HtmlEscape(str).replace(quote_re_, """);=0A= }=0A= =0A= var JS_SPECIAL_RE_ =3D /[\'\\\r\n\b\"<>&]/g;=0A= =0A= function JSEscOne_(s) {=0A= if (!JSEscOne_.js_escs_) {=0A= var escapes =3D {};=0A= escapes['\\'] =3D '\\\\';=0A= escapes['\''] =3D '\\047';=0A= escapes['\n'] =3D '\\n';=0A= escapes['\r'] =3D '\\r';=0A= escapes['\b'] =3D '\\b';=0A= escapes['\"'] =3D '\\042';=0A= escapes['<'] =3D '\\074';=0A= escapes['>'] =3D '\\076';=0A= escapes['&'] =3D '\\046';=0A= =0A= JSEscOne_.js_escs_ =3D escapes;=0A= }=0A= =0A= return JSEscOne_.js_escs_[s];=0A= }=0A= =0A= /** convert a string to a javascript string literal. This function has = the=0A= * property that the return value is also already html escaped, so the = output=0A= * can be embedded in an html handler attribute.=0A= */=0A= function ToJSString(s) {=0A= return "'" + s.toString().replace(JS_SPECIAL_RE_, JSEscOne_) + "'";=0A= }=0A= =0A= // converts multiple ws chars to a single space, and strips=0A= // leading and trailing ws=0A= var spc_re_ =3D /\s+/g;=0A= var beg_spc_re_ =3D /^ /;=0A= var end_spc_re_ =3D / $/;=0A= function CollapseWhitespace(str) {=0A= if (!str) return "";=0A= return str.replace(spc_re_, " ").replace(beg_spc_re_, "").=0A= replace(end_spc_re_, "");=0A= }=0A= =0A= var newline_re_ =3D /\r?\n/g;=0A= var spctab_re_ =3D /[ \t]+/g;=0A= var nbsp_re_ =3D /\xa0/g;=0A= function StripNewlines(str) {=0A= if (!str) return "";=0A= return str.replace(newline_re_, " ");=0A= }=0A= =0A= function CanonicalizeNewlines(str) {=0A= if (!str) return "";=0A= return str.replace(newline_re_, '\n');=0A= }=0A= =0A= function HtmlifyNewlines(str) {=0A= if (!str) return "";=0A= return str.replace(newline_re_, "
");=0A= }=0A= =0A= function NormalizeSpaces(str) {=0A= if (!str) return "";=0A= return str.replace(spctab_re_, " ").replace(nbsp_re_, " ");=0A= }=0A= =0A= // URL encodes the string.=0A= function UrlEncode(str) {=0A= return encodeURIComponent(str);=0A= }=0A= =0A= function Trim(str) {=0A= if (!str) return "";=0A= return str.replace(/^\s+/, "").replace(/\s+$/, "");=0A= }=0A= =0A= function EndsWith(str, suffix) {=0A= if (!str) return !suffix;=0A= return (str.lastIndexOf(suffix) =3D=3D (str.length - suffix.length));=0A= }=0A= =0A= // Check if a string is empty=0A= function IsEmpty(str) {=0A= return CollapseWhitespace(str) =3D=3D "";=0A= }=0A= =0A= // Check if a character is a letter=0A= function IsLetterOrDigit(ch) {=0A= return ((ch >=3D "a" && ch <=3D "z") ||=0A= (ch >=3D "A" && ch <=3D "Z") ||=0A= (ch >=3D '0' && ch <=3D '9'));=0A= }=0A= =0A= // Check if a character is a space character=0A= function IsSpace(ch) {=0A= return (" \t\r\n".indexOf(ch) >=3D 0);=0A= }=0A= =0A= // Converts any instances of "\r" or "\r\n" style EOLs into "\n" (Line = Feed),=0A= // and also trim the extra newlines and whitespaces at the end.=0A= var eol_re_ =3D /\r\n?/g;=0A= var trailingspc_re_ =3D /[\n\t ]+$/;=0A= function NormalizeText(str) {=0A= return str.replace(eol_re_, "\n").replace(trailingspc_re_, "");=0A= }=0A= =0A= // Inserts s (word break tag) after every n non-space chars and/or=0A= // after or before certain special chars. The input string should be = plain=0A= // text that has not yet been HTML-escaped.=0A= // Params:=0A= // str: The string to insert s into.=0A= // n: The maximum number of consecutive non-space characters to allow = before=0A= // adding a . To turn off this rule (i.e. if you only want to = add=0A= // breaks based on special characters), pass in the value -1.=0A= // chars_to_break_after: The list of special characters (concatenated = into a=0A= // string) after which a should be added, if there is no = natural=0A= // break at that point. To turn off this rule, pass in the empty = string.=0A= // chars_to_break_before: The list of special characters (concatenated = into a=0A= // string) before which a should be added, if there is no = natural=0A= // break at that point. To turn off this rule, pass in the empty = string.=0A= // Returns: The string str htmlescaped, and with s inserted = according to=0A= // the rules specified by the other arguments.=0A= function HtmlEscapeInsertWbrs(str, n, chars_to_break_after,=0A= chars_to_break_before) {=0A= AssertNumArgs(4);=0A= =0A= var out =3D '';=0A= var strpos =3D 0;=0A= var spc =3D 0;=0A= =0A= for (var i =3D 1; i < str.length; ++i) {=0A= var prev_char =3D str.charAt(i - 1);=0A= var next_char =3D str.charAt(i);=0A= if (IsSpace(next_char)) {=0A= spc =3D i;=0A= } else if (i - spc =3D=3D n ||=0A= chars_to_break_after.indexOf(prev_char) !=3D -1 ||=0A= chars_to_break_before.indexOf(next_char) !=3D -1) {=0A= out +=3D HtmlEscape(str.substring(strpos, i)) + '';=0A= strpos =3D i;=0A= spc =3D i;=0A= }=0A= }=0A= out +=3D HtmlEscape(str.substr(strpos));=0A= return out;=0A= }=0A= =0A= // Converts a string to its canonicalized label form.=0A= var illegal_chars_re_ =3D /[ \/(){}&|\\\"\000]/g;=0A= function CanonicalizeLabel(str, lowercase) {=0A= var uppercase =3D str.replace(illegal_chars_re_, '-');=0A= return lowercase ? uppercase.toLowerCase() : uppercase;=0A= }=0A= =0A= // Case-insensitive string comparator=0A= function CompareStringsIgnoreCase(s1, s2) {=0A= s1 =3D s1.toLowerCase();=0A= s2 =3D s2.toLowerCase();=0A= =0A= if (s1 < s2) {=0A= return -1;=0A= } else if (s1 =3D=3D s2) {=0A= return 0;=0A= } else {=0A= return 1;=0A= }=0A= }=0A= =0A= //-----------------------------------------------------------------------= -=0A= // TextArea utilities=0A= //-----------------------------------------------------------------------= -=0A= =0A= // Gets the cursor pos in a text area. Returns -1 if the cursor pos = cannot=0A= // be determined or if the cursor out of the textfield.=0A= function GetCursorPos(win, textfield) {=0A= try {=0A= if (IsDefined(textfield.selectionEnd)) {=0A= // Mozilla directly supports this=0A= return textfield.selectionEnd;=0A= =0A= } else if (win.document.selection && = win.document.selection.createRange) {=0A= // IE doesn't export an accessor for the endpoints of a selection.=0A= // Instead, it uses the TextRange object, which has an extremely = obtuse=0A= // API. Here's what seems to work:=0A= =0A= // (1) Obtain a textfield from the current selection (cursor)=0A= var tr =3D win.document.selection.createRange();=0A= =0A= // Check if the current selection is in the textfield=0A= if (tr.parentElement() !=3D textfield) {=0A= return -1;=0A= }=0A= =0A= // (2) Make a text range encompassing the textfield=0A= var tr2 =3D tr.duplicate();=0A= tr2.moveToElementText(textfield);=0A= =0A= // (3) Move the end of the copy to the beginning of the selection=0A= tr2.setEndPoint("EndToStart", tr);=0A= =0A= // (4) The span of the textrange copy is equivalent to the cursor = pos=0A= var cursor =3D tr2.text.length;=0A= =0A= // Finally, perform a sanity check to make sure the cursor is in = the=0A= // textfield. IE sometimes screws this up when the window is = activated=0A= if (cursor > textfield.value.length) {=0A= return -1;=0A= }=0A= return cursor;=0A= } else {=0A= Debug("Unable to get cursor position for: " + navigator.userAgent);=0A= =0A= // Just return the size of the textfield=0A= // TODO: Investigate how to get cursor pos in Safari!=0A= return textfield.value.length;=0A= }=0A= } catch (e) {=0A= DumpException(e, "Cannot get cursor pos");=0A= }=0A= =0A= return -1;=0A= }=0A= =0A= function SetCursorPos(win, textfield, pos) {=0A= if (IsDefined(textfield.selectionEnd) &&=0A= IsDefined(textfield.selectionStart)) {=0A= // Mozilla directly supports this=0A= textfield.selectionStart =3D pos;=0A= textfield.selectionEnd =3D pos;=0A= =0A= } else if (win.document.selection && textfield.createTextRange) {=0A= // IE has textranges. A textfield's textrange encompasses the=0A= // entire textfield's text by default=0A= var sel =3D textfield.createTextRange();=0A= =0A= sel.collapse(true);=0A= sel.move("character", pos);=0A= sel.select();=0A= }=0A= }=0A= =0A= //-----------------------------------------------------------------------= -=0A= // Array utilities=0A= //-----------------------------------------------------------------------= -=0A= // Find an item in an array, returns the key, or -1 if not found=0A= function FindInArray(array, x) {=0A= for (var i =3D 0; i < array.length; i++) {=0A= if (array[i] =3D=3D x) {=0A= return i;=0A= }=0A= }=0A= return -1;=0A= }=0A= =0A= // Inserts an item into an array, if it's not already in the array=0A= function InsertArray(array, x) {=0A= if (FindInArray(array, x) =3D=3D -1) {=0A= array[array.length] =3D x;=0A= }=0A= }=0A= =0A= // Delete an element from an array=0A= function DeleteArrayElement(array, x) {=0A= var i =3D 0;=0A= while (i < array.length && array[i] !=3D x)=0A= i++;=0A= array.splice(i, 1);=0A= }=0A= =0A= // Copies a flat array=0A= function CopyArray(array) {=0A= var copy =3D [];=0A= for (var i =3D 0; i < array.length; i++) {=0A= copy[i] =3D array[i];=0A= }=0A= return copy;=0A= }=0A= =0A= // Clone an object (recursively)=0A= function CloneObject(x) {=0A= if ((typeof x) =3D=3D "object") {=0A= var y =3D [];=0A= for (var i in x) {=0A= y[i] =3D CloneObject(x[i]);=0A= }=0A= return y;=0A= }=0A= return x;=0A= }=0A= =0A= /**=0A= * Clone an event; cannot use CloneObject(event)=0A= * because it suffers from infinite recursion.=0A= * Thus, only a subset of the event properties are=0A= * cloned -- if you need others, just add them=0A= * to this function (just don't remove any!)=0A= */=0A= function CloneEvent(ev) {=0A= var clone =3D {};=0A= clone.clientX =3D ev.clientX;=0A= clone.clientY =3D ev.clientY;=0A= clone.pageX =3D ev.pageX;=0A= clone.pageY =3D ev.pageY;=0A= clone.type =3D ev.type;=0A= clone.srcElement =3D ev.srcElement;=0A= clone.target =3D ev.target;=0A= clone.cancelBubble =3D ev.cancelBubble;=0A= clone.explicitOriginalTarget =3D ev.explicitOriginalTarget;=0A= // add more properties here=0A= =0A= return clone;=0A= }=0A= =0A= function GetEventTarget(/*Event*/ ev) {=0A= // Event is not a type in IE; IE uses Object for events=0A= // AssertType(ev, Event, 'arg passed to GetEventTarget not an Event');=0A= return ev.srcElement || ev.target;=0A= }=0A= =0A= /** cancels the event */=0A= // from http://www.quirksmode.org/js/events_order.html=0A= function CancelEvent(/*Event*/ ev) {=0A= if (is_ie) {=0A= ev.cancelBubble =3D true;=0A= } else if (ev.stopPropagation) {=0A= ev.stopPropagation();=0A= }=0A= }=0A= =0A= //-----------------------------------------------------------------------= -=0A= // Formatting utilities=0A= //-----------------------------------------------------------------------= -=0A= // A simple printf type function that takes in a template array, and a = data=0A= // array. e.g. PrintArray(["a",,"b",,"c"], ["x", "y"]) =3D> axbyc=0A= function PrintArray(array, data) {=0A= // Check that the argument count is correct.=0A= AssertEquals(array.length, data.length * 2 + 1);=0A= =0A= for (var i =3D 0, idx =3D 1; i < data.length; i++, idx +=3D 2) {=0A= array[idx] =3D data[i];=0A= }=0A= return array.join("");=0A= }=0A= =0A= function ImageHtml(url, attributes) {=0A= return "";=0A= }=0A= =0A= // Formats an object id that has two id numbers, eg, foo_3_7=0A= function MakeId3(idprefix, m, n) {=0A= return idprefix + m + "_" + n;=0A= }=0A= =0A= //-----------------------------------------------------------------------= -=0A= // Email address parsing=0A= //-----------------------------------------------------------------------= -=0A= // Parse an email address of the form "name"
into [name, = address]=0A= function ParseAddress(addr) {=0A= var name =3D "";=0A= var address =3D "";=0A= for (var i =3D 0; i < addr.length;) {=0A= var token =3D GetEmailToken(addr, i);=0A= if (token.charAt(0) =3D=3D '<') {=0A= var end =3D token.indexOf(">");=0A= address =3D token.substring(1, (end !=3D -1) ? end : token.length);=0A= } else if (address =3D=3D "") {=0A= name +=3D token;=0A= }=0A= i +=3D token.length;=0A= }=0A= =0A= // Check if it's a simple email address of the form "jlim@google.com"=0A= if (address =3D=3D "" && name.indexOf("@") !=3D -1) {=0A= address =3D name;=0A= name =3D "";=0A= }=0A= =0A= name =3D CollapseWhitespace(name);=0A= name =3D StripQuotes(name, "'");=0A= name =3D StripQuotes(name, "\"");=0A= address =3D CollapseWhitespace(address);=0A= return [name, address];=0A= }=0A= =0A= // Given an email address, get the address part=0A= function GetAddress(address) {=0A= return ParseAddress(address)[1];=0A= }=0A= =0A= // Get the username part of an email address=0A= function GetAddressUsername(address) {=0A= address =3D GetAddress(address);=0A= var at =3D address.indexOf("@");=0A= return (at =3D=3D -1) ? address : address.substr(0, at);=0A= }=0A= =0A= // Given an email address, get the personal part=0A= function GetPersonal(address) {=0A= return ParseAddress(address)[0];=0A= }=0A= =0A= // Given an address, get a short name=0A= function GetPersonalElseUsername(address) {=0A= var personal =3D GetPersonal(address);=0A= if (personal !=3D "") {=0A= return personal;=0A= } else {=0A= return GetAddressUsername(address);=0A= }=0A= }=0A= =0A= // Strip ' or " chars around a string=0A= function StripQuotes(str, quotechar) {=0A= var len =3D str.length;=0A= if (str.charAt(0) =3D=3D quotechar &&=0A= str.charAt(len - 1) =3D=3D quotechar) {=0A= return str.substring(1, len - 1);=0A= }=0A= return str;=0A= }=0A= =0A= // Convert a string containing list of email addresses into an array=0A= // of strings=0A= function EmailsToArray(str) {=0A= var result =3D [];=0A= var email =3D "";=0A= var token;=0A= =0A= for (var i =3D 0; i < str.length; ) {=0A= token =3D GetEmailToken(str, i);=0A= if (token =3D=3D ",") {=0A= AddEmailAddress(result, email);=0A= email =3D "";=0A= i++;=0A= continue;=0A= }=0A= email +=3D token;=0A= i +=3D token.length;=0A= }=0A= =0A= // Add last=0A= if (email !=3D"" || token =3D=3D ",") {=0A= AddEmailAddress(result, email);=0A= }=0A= return result;=0A= }=0A= =0A= // Get the next token from a position in an address string=0A= var openers_ =3D "\"<([";=0A= var closers_ =3D "\">)]";=0A= function GetEmailToken(str, pos) {=0A= var ch =3D str.charAt(pos);=0A= var p =3D openers_.indexOf(ch);=0A= if (p =3D=3D -1)=0A= return ch;=0A= var end_pos =3D str.indexOf(closers_.charAt(p), pos + 1);=0A= var token =3D (end_pos >=3D 0) ? str.substring(pos, end_pos + 1) :=0A= str.substr(pos);=0A= return token;=0A= }=0A= =0A= // Add an email address to the result array.=0A= function AddEmailAddress(result, email) {=0A= email =3D CleanEmailAddress(email);=0A= result[result.length] =3D email;=0A= }=0A= =0A= // Clean up email address:=0A= // - remove extra spaces=0A= // - Surround name with quotes if it contains special characters=0A= // to check if we need " quotes=0A= // Note: do not use /g in the regular expression, otherwise the=0A= // regular expression cannot be reusable.=0A= var specialchars_re_ =3D /[()<>@,;:\\\".\[\]]/;=0A= =0A= function CleanEmailAddress(str) {=0A= var name_address =3D ParseAddress(str);=0A= var name =3D name_address[0];=0A= var address =3D name_address[1];=0A= =0A= if (name.indexOf("\"") =3D=3D -1) { // If there's no "=0A= var quote_needed =3D specialchars_re_.test(name);=0A= if (quote_needed) {=0A= name =3D "\"" + name + "\"";=0A= }=0A= }=0A= =0A= if (name =3D=3D "")=0A= return address;=0A= else if (address =3D=3D "")=0A= return name;=0A= else=0A= return name + " <" + address + ">";=0A= }=0A= =0A= //-----------------------------------------------------------------------= -=0A= // Misc=0A= //-----------------------------------------------------------------------= -=0A= // Compare long hex strings=0A= function CompareID(a, b) {=0A= if (a.length !=3D b.length) {=0A= return (a.length - b.length);=0A= } else {=0A= return (a < b) ? -1 : (a > b) ? 1 : 0;=0A= }=0A= }=0A= =0A= // Check if a value is defined=0A= function IsDefined(value) {=0A= return (typeof value) !=3D 'undefined';=0A= }=0A= =0A= function GetKeyCode(event) {=0A= var code;=0A= if (event.keyCode) {=0A= code =3D event.keyCode;=0A= } else if (event.which) {=0A= code =3D event.which;=0A= }=0A= return code;=0A= }=0A= =0A= // define a forid function to fetch a DOM node by id.=0A= function forid_1(id) {=0A= return document.getElementById(id);=0A= }=0A= function forid_2(id) {=0A= return document.all[id];=0A= }=0A= =0A= /**=0A= * Fetch an HtmlElement by id.=0A= * DEPRECATED: use $ in dom.js=0A= */=0A= var forid =3D document.getElementById ? forid_1 : forid_2;=0A= =0A= =0A= =0A= function log(msg) {=0A= /* a top level window is its own parent. Use !=3D or else fails on IE = with=0A= * infinite loop.=0A= */=0A= try {=0A= if (window.parent !=3D window && window.parent.log) {=0A= window.parent.log(window.name + '::' + msg);=0A= return;=0A= }=0A= } catch (e) {=0A= // Error: uncaught exception: Permission denied to get property = Window.log=0A= }=0A= var logPane =3D forid('log');=0A= if (logPane) {=0A= var logText =3D '

' + new = Date() +=0A= '' + msg + '

';=0A= logPane.innerHTML =3D logText + logPane.innerHTML;=0A= } else {=0A= window.status =3D msg;=0A= }=0A= }=0A= ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.blogger.com/v-app/scripts/107652916-dom.common.js =0A= // Commonly-used functions, reduced.=0A= =0A= function d(s) {return document.getElementById(s);}=0A= function dE(o,s) {return o.getElementsByTagName(s);}=0A= =0A= /**=0A= * toggleDisplay()=0A= *=0A= * Will toggle the display property of the style object for any=0A= * DOM element or object that supports style as a property.=0A= *=0A= * Warning: This'll wreak havoc if applied to elements. Those=0A= * babies got different types "table-row" | "block" dependant on =0A= * what browser's being used.=0A= *=0A= * Warning: Written in Texas. Yeehaw.=0A= *=0A= * Typical usage:=0A= * toggleDisplay(document.getElementById("foo"));=0A= */=0A= function toggleDisplay(o)=0A= { =0A= var display =3D getStyle(o, "display"); =0A= =0A= if (o.style)=0A= o.style.display =3D=0A= (display !=3D "none") ? "none" : getDisplayStyleByTagName(o);=0A= }=0A= =0A= =0A= function getDisplayStyleByTagName(o)=0A= {=0A= var n =3D o.nodeName.toLowerCase(); =0A= return (=0A= n =3D=3D "span"=0A= || n =3D=3D "img"=0A= || n =3D=3D "a"=0A= ) ? "inline" : "block";=0A= }=0A= =0A= =0A= /**=0A= * hideElement()=0A= *=0A= * Hides an element from view.=0A= *=0A= * Typical usage:=0A= * hideElement(getElement("the-id-of-the-element"));=0A= */=0A= function hideElement(o)=0A= {=0A= if (o && o.style) o.style.display =3D "none";=0A= }=0A= =0A= =0A= =0A= /**=0A= * showElement()=0A= *=0A= * Shows an element that was hidden from view.=0A= *=0A= * Typical usage:=0A= * showElement(getElement("the-id-of-the-element"));=0A= */=0A= function showElement(o)=0A= {=0A= =0A= if (o && o.style) o.style.display =3D getDisplayStyleByTagName(o);=0A= }=0A= =0A= =0A= /**=0A= * getElement()=0A= *=0A= * Returns an element by its ID or shows an alert if it can't be found.=0A= *=0A= * Typical usage:=0A= * getElement("the-id-of-the-element");=0A= */=0A= function getElement(id) {=0A= var e =3D d(id);=0A= if (!e) {=0A= alert("Cannot get element: " + id);=0A= }=0A= return e;=0A= }=0A= =0A= /**=0A= * setInnerHTML()=0A= *=0A= * Sets the innerHTML of an element or shows an alert if can't be set.=0A= *=0A= * Typical usage:=0A= * setInnerHTML("the-id-of-the-element");=0A= */=0A= function setInnerHTML(id, html) {=0A= try {=0A= getElement(id).innerHTML =3D html;=0A= } catch (ex) {=0A= alert("Cannot set inner HTML: " + id);=0A= }=0A= }=0A= =0A= =0A= /**=0A= * setCssStyle()=0A= *=0A= * Sets the style of an element by its id or shows an alert if can't be = set.=0A= *=0A= * Typical usage:=0A= * setCssStyle("the-id-of-the-element", "display", "block");=0A= */=0A= function setCssStyle(id, name, value) {=0A= try {=0A= getElement(id).style[name] =3D value;=0A= } catch (ex) {=0A= alert("Cannot set style: " + id);=0A= }=0A= }=0A= =0A= =0A= /**=0A= * getStyle()=0A= *=0A= * Gets the computed style of any object.=0A= *=0A= * WARNING: Produces unexpected results in Safari. To achieve best =0A= * results, explicitly set the style property for that browser when the =0A= * element is rendered.=0A= *=0A= * Typical usage:=0A= * getStyle(object, "display");=0A= */=0A= function getStyle(el, style) {=0A= if (!document.getElementById || !el) return;=0A= =0A= if (document.defaultView=0A= && document.defaultView.getComputedStyle) {=0A= return document.defaultView.=0A= getComputedStyle(el, "").getPropertyValue(style);=0A= } =0A= else if (el.currentStyle) {=0A= return el.currentStyle[style];=0A= } =0A= else { =0A= return el.style.display;=0A= }=0A= }=0A= =0A= /**=0A= * getStyleAttribute()=0A= *=0A= * Returns the style attribute of the specified node.=0A= */=0A= function getStyleAttribute(node) {=0A= if (Detect.IE()) {=0A= return node.getAttribute('style').value;=0A= }else {=0A= return node.getAttribute('style');=0A= }=0A= }=0A= =0A= =0A= /*=0A= * showProps()=0A= *=0A= * Displays all the properties for a given element=0A= */=0A= function showProps(o) {=0A= var s=3D""; for (var p in o) {=0A= s+=3Dp+": "+o[p]+"\n
";=0A= }=0A= document.write(s);=0A= }=0A= =0A= =0A= =0A= function setIFrameEvent(iframe, eventName, func)=0A= {=0A= if (document.all) {=0A= eval('getIFrameDocument(iframe).on' + eventName + ' =3D func;');=0A= } else {=0A= iframe.contentWindow.addEventListener(eventName, func, true);=0A= }=0A= }=0A= =0A= function setIFrameBody(iframe, strStyle, innerHtml) =0A= {=0A= if (!innerHtml) innerHtml =3D '';=0A= if (innerHtml =3D=3D '' && Detect.IE()) {=0A= innerHtml =3D '
';=0A= }=0A= var doc =3D getIFrameDocument(iframe);=0A= doc.open();=0A= doc.write(''=0A= + innerHtml + '');=0A= doc.close();=0A= }=0A= =0A= =0A= function getIFrameDocument(iframe)=0A= {=0A= if (Detect.IE()) {=0A= return iframe.document;=0A= } else {=0A= return iframe.contentDocument;=0A= }=0A= }=0A= =0A= function getIFrame(strId)=0A= {=0A= if (Detect.IE()) {=0A= return document.frames[strId];=0A= } else {=0A= return document.getElementById(strId);=0A= }=0A= }=0A= =0A= =0A= function createElementandAppend(nodeName, strId, appendTo) {=0A= var el =3D document.createElement(nodeName);=0A= el.setAttribute("id", strId);=0A= if (appendTo) {=0A= appendTo.appendChild(el); =0A= } else {=0A= document.body.appendChild(el); =0A= }=0A= return el; =0A= }=0A= =0A= function createElementandInsertBefore(nodeName, strId, appendTo, = sibling) {=0A= var el =3D document.createElement(nodeName);=0A= el.setAttribute("id", strId);=0A= if (appendTo) {=0A= appendTo.insertBefore(el, sibling); =0A= } else {=0A= document.body.insertBefore(el, sibling); =0A= }=0A= return el; =0A= }=0A= =0A= =0A= /**=0A= * getXY()=0A= *=0A= * Returns the position of any element as an object.=0A= *=0A= * Typical usage:=0A= * var pos =3D getXY(object);=0A= * alert(pos.x + " " +pos.y);=0A= */=0A= function getXY(el) {=0A= var x =3D el.offsetLeft;=0A= var y =3D el.offsetTop;=0A= if (el.offsetParent !=3D null) {=0A= var pos =3D getXY(el.offsetParent);=0A= x +=3D pos.x;=0A= y +=3D pos.y;=0A= }=0A= return {x: x, y: y}=0A= }=0A= =0A= // The following 3 functions are taken from common.js=0A= function hasClass(el, cl) {=0A= if (el =3D=3D null || el.className =3D=3D null) return false;=0A= var classes =3D el.className.split(" ");=0A= for (var i =3D 0; i < classes.length; i++) {=0A= if (classes[i] =3D=3D cl) {=0A= return true;=0A= }=0A= }=0A= return false;=0A= }=0A= =0A= // Add a class to element=0A= function addClass(el, cl) {=0A= if (hasClass(el, cl)) return;=0A= el.className +=3D " " + cl;=0A= } =0A= =0A= // Remove a class from an element=0A= function removeClass(el, cl) {=0A= if (el.className =3D=3D null) return;=0A= var classes =3D el.className.split(" ");=0A= var result =3D [];=0A= var changed =3D false;=0A= for (var i =3D 0; i < classes.length; i++) {=0A= if (classes[i] !=3D cl) {=0A= if (classes[i]) { result.push(classes[i]); }=0A= } else {=0A= changed =3D true;=0A= } =0A= } =0A= if (changed) { el.className =3D result.join(" "); }=0A= } =0A= =0A= function toggleClass(el, cl) {=0A= if (hasClass(el, cl)) {=0A= removeClass(el, cl);=0A= } else {=0A= addClass(el, cl);=0A= }=0A= }=0A= =0A= =0A= /* Constants for node types, since IE doesn't support Node.TEXT_NODE */=0A= var TEXT_NODE =3D 3;=0A= var ELEMENT_NODE =3D 1;=0A= =0A= =0A= ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: multipart/alternative; boundary="----=_NextPart_001_001B_01C8A4A9.287F7890" ------=_NextPart_001_001B_01C8A4A9.287F7890 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Location: http://ioshua-1716.blogspot.com/2008/04/cesar-jones-lpsexxx-dijo-sobre-1716.html =EF=BB=BF "1716" una pel=C3=ADcula de IOSHUA: CESAR = JONES (lpSEXXX) dijo sobre "1716"
skip=20 to main | skip=20 to sidebar

jueves 3 de abril de 2008

CESAR=20 JONES (lpSEXXX) dijo sobre "1716"








... me hizo acordar, = c=C3=B3mo no, a los=20 experimentos audiovisuales de la Factory de Warhol, no tanto por el = cariz=20 est=C3=A9tico, que tambi=C3=A9n en parte, sino por la total otredad en = relaci=C3=B3n a los=20 c=C3=A1nones cinematogr=C3=A1ficos establecidos, incluso en = relaci=C3=B3n a los intentos menos=20 previsibles en la materia, que igual se piensan orbitando -m=C3=A1s = lejanos, pero=20 orbitando al fin- la norma que pretender=C3=ADan transgredir. Y basta, = no digo m=C3=A1s=20 pavadas!!! S=C3=B3lo quer=C3=ADa agregar =C3=A9sta, a los balbuceos que = te envi=C3=A9 por=20 msn.
Besos

C=C3=A9sar
LPsexxx realizaciones
http://www.lpsexxx.com.ar/
lpsexxx@hotmail.com
info@lpsexxx.com.ar
C=C3=A9sar= Jones -=20 director

Barra de v=C3=ADdeo

Loading... =
3D""=20 =

"1716" una pel=C3=ADcula de IOSHUA

filmada por IOSHUA


editada por = IOSHUA y=20 HOUDINNI en STUDIOS B5


barrio de Libertad, Merlo. Buenos = Aires,=20 Argentina.


contacto/prensa: deformerecords@hotmail.com=
(011)=20 15 32002015

3D""=20 =
 
------=_NextPart_001_001B_01C8A4A9.287F7890 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.blogger.com/navbar.g?targetBlogID=3312965489044600389&blogName=%221716%22+una+pel%C3%ADcula+de+IOSHUA&publishMode=PUBLISH_MODE_BLOGSPOT&navbarType=BLACK&layoutType=LAYOUTS&homepageUrl=http%3A%2F%2Fioshua-1716.blogspot.com%2F&searchRoot=http%3A%2F%2Fioshua-1716.blogspot.com%2Fsearch =EF=BB=BF
Notificar a Blogger la presencia de contenido de dudosa reputaci=C3=B3n en esta = p=C3=A1gina.
Has marcado este blog, indicando que contiene contenido de dudosa reputaci=C3=B3n.
------=_NextPart_001_001B_01C8A4A9.287F7890-- ------=_NextPart_000_0000_01C8A4A9.287147C0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.blogger.com/widgets/3583697662-widgets.js var w_a=3Dfalse;function w_b(a){try{throw a;}catch(b){w_c(b)}}function = w_c(a,b){var c=3D"Javascript exception: "+(b?b:"")+" "+a;if(w_d())c+=3D" = "+a.name+": "+a.message+" ("+a.number+")";var d=3D"";if(typeof = a=3D=3D"string")d=3Da+"\n";else for(var e in a)try{d+=3De+": = "+a[e]+"\n"}catch(f){}d+=3Dw_e(w_c.caller);w_aa(c+"\n"+d,1)}var = w_ba=3D/function (\w+)/;function w_ca(a){var = b=3Dw_ba.exec(String(a));if(b)return b[1];return""}function = w_e(a){try{if(!w_d()&&!(w_f("safari")||w_f("konqueror"))&&w_f("mozilla"))= return Error().stack;=0A= if(!a)return"";var b=3D"- "+w_ca(a)+"(";for(var = c=3D0;c0)b+=3D", ";var = d=3DString(a.arguments[c]);if(d.length>40)d=3Dd.substr(0,40)+"...";b+=3Dd= }b+=3D")\n";b+=3Dw_e(a.caller);return b}catch(e){return"[Cannot get = stack trace]: "+e+"\n"}}var w_da,w_g=3Dnull,w_h=3Dfalse;function = w_ea(){if((w_g=3D=3Dnull||w_g.closed)&&!w_h)try{w_h=3Dtrue;w_g=3Dwindow.o= pen("","debug","width=3D700,height=3D500,toolbar=3Dno,resizable=3Dyes,scr= ollbars=3Dyes,left=3D16,top=3D16,screenx=3D16,screeny=3D16");w_g.blur();w= _g.document.open();w_h=3D=0A= false;var a=3D"To turn off this debugging = window,hit 'D' inside the main caribou window, then close this = window.
";w_i(a)}catch(b){}}function = w_aa(a,b){if(!w_a){if(typeof = w_j!=3D"undefined")w_j(w_k(a));return}try{var c=3D(new = Date).getTime()-w_da,d=3D"["+c+"] = "+w_k(a).replace(/\n/g,"
")+"
";if(b=3D=3D1){d=3D"Error: = "+d+"";w_g.focus()}}catch(e){}w_i(d)}function = w_i(a){if(!w_a)return;try{w_ea();w_g.document.write(a);w_g.scrollTo(0,100= 0000)}catch(b){}}=0A= ;function w_f(a){if(a in w_l)return w_l[a];return = w_l[a]=3Dnavigator.userAgent.toLowerCase().indexOf(a)!=3D-1}var = w_l=3D{};function w_d(){return w_f("msie")&&!window.opera}function = w_fa(a){if(typeof Error!=3D"undefined")throw new Error(a||"Assertion = Failed");else throw a;}function w_ga(a){a=3Da||"Assertion = failed";if(typeof w_b!=3D"undefined")w_b(a+"\n");w_fa(a)}function = w_m(a,b){if(!a){b=3Db||"Assertion failed";w_ga(b)}}function = w_n(a,b){a.style.display=3Db?"":"none"}function = w_ha(a,b){a.style.display=3Db?"block":=0A= "none"}function w_ia(a,b){a.style.display=3Db?"inline":"none"}function = w_o(a,b){if(a=3D=3Dnull||a.className=3D=3Dnull)return = false;if(a.className=3D=3Db)return true;var c=3Da.className.split(" = ");for(var d=3D0;d/g;function = w_k(a){if(!a)return"";return = a.replace(w_ja,"&").replace(w_ka,"<").replace(w_la,">").replace= (w_ma,""")}var w_ma=3D/\"/g;function w_na(a){return = document.getElementById(a)}function w_oa(a){return document.all[a]}var = w_pa=3Ddocument.getElementById?w_na:=0A= w_oa;function = w_j(a){try{if(window.parent!=3Dwindow&&window.parent.log){window.parent.l= og(window.name+"::"+a);return}}catch(b){}var c=3Dw_pa("log");if(c){var = d=3D"

"+new Date+""+a+"

";c.innerHTML=3Dd+c.innerHTML}else = window.status=3Da};function w_t(){}w_t.raise=3Dfunction(a){if(typeof = Error!=3D"undefined")throw new Error(a||"Assertion Failed");else throw = a;};w_t.fail=3Dfunction(a){a=3Da||"Assertion failed";if(!(typeof = w_b=3D=3D"undefined"))w_b(a+"\n");w_t.raise(a)};w_t.isTrue=3Dfunction(a,b= ){if(!a){if(b=3D=3D=3Dundefined)b=3D"Assertion = failed";w_t.fail(b)}};w_t.equals=3Dfunction(a,b,c){if(a!=3Db){if(c=3D=3D=3D= undefined)c=3D"AS_Assert.equals failed: <"+a+"> !=3D = <"+b+">";w_t.fail(c)}};w_t.typeOf=3Dfunction(a,b,c){if(typeof = a=3D=3Db)return;if(a||a=3D=3D"")try{if(b=3D=3Dw_t.TYPE_MAP[typeof a]||=0A= a instanceof b)return}catch(d){}if(c=3D=3D=3Dundefined){if(typeof = b=3D=3D"function"){var = e=3Db.toString().match(/^\s*function\s+([^\s\{]+)/);if(e)b=3De[1]}c=3D"AS= _Assert.typeOf failed: <"+a+"> not typeof = "+b}w_t.fail(c)};w_t.TYPE_MAP=3D{string:String,number:Number,"boolean":Bo= olean};w_t.numArgs=3Dfunction(a,b){var = c=3Dw_t.numArgs.caller;if(c&&c.arguments.length!=3Da){if(b=3D=3D=3Dundefi= ned)b=3Dc.name+" expected "+a+" arguments but received = "+c.arguments.length;w_t.fail(b)}};var w_u;function w_qa(){var = a=3D["MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsof= t.XMLHTTP"];if(typeof XMLHttpRequest=3D=3D"undefined"&&typeof = ActiveXObject!=3D"undefined"){for(var b=3D0;b"+c.stack);throw c;}};var = w_ua=3D0,w_v=3D0;if("undefined"=3D=3Dtypeof = w_j)w_j=3Dfunction(){};function w_va(a){var = b=3D-1;try{b=3Da.status}catch(c){}return b}function w_wa(a){var = b=3Dnull;try{b=3Da.statusText}catch(c){}return b}function = w_xa(a,b,c,d){if(a.readyState=3D=3D4)try{var = e=3Dtrue;if(d)try{e=3D!(false=3D=3D=3Dd(a))}catch(f){w_j("Message = ("+b+") handling failed: "+f);throw f;}var = g=3Dw_va(a);if(200=3D=3D=3Dg){w_j("Message ("+b+") received after = "+((new Date).getTime()-c)+" ms");try{var h=3D(new = Date).getTime();if(e&&a.responseText.length)eval(a.responseText);=0A= w_j("Message ("+b+") processing took "+((new Date).getTime()-h)+" = ms")}catch(f){w_j("Message ("+b+") processing failed: = "+f);alert(f+"\n"+f.stack+"\n\n"+a.responseText);throw f;}}else = if(204=3D=3Dg)w_j("Message ("+b+") received after "+((new = Date).getTime()-c)+" ms");else w_j("Message ("+b+") failed with response = "+g+" "+w_wa(a)+" after "+((new Date).getTime()-c)+" = ms.")}finally{--w_v}}function w_ya(a,b,c){var d=3D"";if(b){var = e=3D"";for(var f=3D0;f=3D0;)m=3Dm.substring(0,n)+"&= amp;"+m.substring(n+1);w_j("Message ("+i+") sent: POST = "+m+".");++w_v;w_sa(j,a,d,l)};var = w_za=3Dthis;if(!Function.prototype.apply)Function.prototype.apply=3Dfunct= ion(a,b){var c=3D[],d,e;if(!a)a=3Dw_za;var f=3Db||[];for(var = g=3D0;g=3D0;b--)this[b+a]=3Dthis[b];for(var = c=3D0;c"+a.template+"\n",c=3D= this.zb(b);a.parsedTemplate=3Dthis.O(c);return = a};w_y.ConfigureWidget=3Dfunction(a,b){if(!b)b=3D"config";var = c=3Ddocument.forms[b].widgetId.value,d=3Ddocument.forms[b].widgetType.val= ue,e=3Dw_B.ProcessForm(document.forms[b],a);if(e.success)w_.SaveWidget(e.= values,=0A= c,d)};function = w_(){}w_.Init=3Dfunction(a,b,c){w_.L=3D{};w_.Wb=3Da;w_.Ga=3Db;w_.Mc=3Dc;w= _.$b=3Dnull;if(!w_.Za)w_.Za=3D{}};w_.TrapClicks=3Dfunction(a){var = b=3Dw_.CreateTransparentClickTrappingDiv(a.document);document.body.append= Child(b)};w_._SetupPreview=3Dfunction(){w_.TrapClicks(window)};w_.NEW_WID= GET_WINDOW_NAME=3D"chooseWidget";w_.CHOOSE_WIDGET_ACTION=3D"chooseWidget"= ;w_.EDIT_WIDGET_ACTION=3D"editWidget";w_.GetCallbackUrl=3Dfunction(){retu= rn = w_.Ga};w_.SetPageActionUrl=3Dfunction(a,b){w_.Sa=3Da;w_.Ec=3Db};w_.GetPag= eActionUrl=3Dfunction(){return w_.Sa};=0A= w_.SetWidgetRefreshUrl=3Dfunction(a){w_.Jc=3Da};w_.GetWidgetRefreshUrl=3D= function(){return = w_.Jc};w_._SetDataContext=3Dfunction(a){w_.$b=3Da};w_._SetSystemMarkup=3D= function(a){w_.Za=3Da};w_._RegisterWidget=3Dfunction(a,b,c){var d=3Dnew = w_y(b);if(!c)c=3Dwindow[a];var e=3Dnew = c(d);d.Kb(e);w_.L[b.instanceId]=3De;w_.DisplayWidget(e);return = e};w_._RegisterNewWidget=3Dfunction(a,b,c){var = d=3Dw_._RegisterWidget(a,b,c),e=3Dd.b();e.Jb(true);return = d};w_.DisplayWidget=3Dfunction(a,b){var = c=3Da.b();if(c.N()=3D=3Dw_x.DISPLAY_MODE_NONE)return;if(b||=0A= a.f&&a.f())c.eb();if(c.N()=3D=3Dw_x.DISPLAY_MODE_FULL)if(a.j)a.j();a.b().= zc=3Dfalse};w_.GetWidget=3Dfunction(a){if(w_.L)return w_.L[a];return = null};w_._PopupPaneFromParams=3Dfunction(a,b,c,d,e){var = f=3D"";if(d)f=3D"&widgetId=3D"+d;var = g=3Dw_.Wb+"&action=3D"+a+"§ionId=3D"+b+"&widgetType=3D"+c+f;if(window= .name=3D=3De){window.location.replace(g);window.focus();return = window}var = h=3Dwindow.open(g,e,"width=3D570,height=3D600,left=3D75,top=3D20,resizabl= e=3Dyes,scrollbars=3Dyes");h.focus();return = h};w_._PopupConfig=3Dfunction(a){var b=3Da.getAttribute("id"),=0A= c=3Dw_.GetWidget(b);if(c){var = d=3Dc.b().configWin;if(d!=3Dnull&&!d.closed){d.focus();return false}}var = e=3D"config"+b,f=3Dw_._PopupPaneFromParams(w_.EDIT_WIDGET_ACTION,a.parent= Node.getAttribute("id"),a.getAttribute("widgetType"),b,e);if(c)c.b().conf= igWin=3Df;return = false};w_._PopupToolbox=3Dfunction(a){w_._PopupPaneFromParams(w_.CHOOSE_W= IDGET_ACTION,a.parentNode.getAttribute("id"),a.getAttribute("widgetType")= ,a.getAttribute("id"),w_.NEW_WIDGET_WINDOW_NAME);return = false};w_.DeleteWidgetFromPage=3Dfunction(a,b){w_.o(b,=0A= b.LayoutsMessages.DELETING,w_.STATUS_MESSAGE_PENDING_CLASS);w_.RunPageAct= ion("delete",{},a,b)};w_y.prototype.Ib=3Dfunction(a,b){w_.o(b,b.LayoutsMe= ssages.SAVING,w_.STATUS_MESSAGE_PENDING_CLASS);this.v("configure",a)};w_.= SaveNewWidget=3Dfunction(a,b,c){var = d=3Ddocument.getElementById("sectionId").value;a.sectionid=3Dd;w_.o(c,c.L= ayoutsMessages.SAVING,w_.STATUS_MESSAGE_PENDING_CLASS);w_.RunPageAction("= addnew",a,"",b)};w_.SaveWidget=3Dfunction(a,b,c){w_m(c!=3Dnull,"no = type");var d=3D_WidgetManager._GetWidget(b);w_m(d!=3D=0A= null,"no widget for "+b);if(d.b().wb())w_.SaveNewWidget(a,c,window);else = d.a.Ib(a,window)};w_._RunInitialAction=3Dfunction(a){var = b=3Dw_._GetWidget(a);if(b)b.b().v("initial")};w_.v=3Dfunction(a,b,c,d,e){= w_.RunAction(w_.Ga,a,b,c,d,e)};w_.RunPageAction=3Dfunction(a,b,c,d,e){if(= !w_.Sa){w_j("RunPageAction error: pageActionUrl_ is undefined. = widgetid: "+c+" action: = "+a);return}b.pageToken=3Dw_.Ec;w_.RunAction(w_.Sa,a,b,c,d,e)};w_.RunActi= on=3Dfunction(a,b,c,d,e,f){var = g=3D["action",b,"widgetId",d,"widgetType",e,"responseType",=0A= "js"];for(var h in c)if(typeof c[h]=3D=3D"object")for(var = i=3D0;i0&&a.substring(0,4)!=3D"htt= p")a=3D"http://"+a;return = a};w_.GetFirstElementInElementWithClass=3Dfunction(a,b){if(w_o(a,b))retur= n a;=0A= if(a){var c=3Da.childNodes.length;for(var d=3D0;db)return = LayoutsMessages.NUMBER_TOO_LARGE+" "+b;return undefined}};function = w_A(){this.p=3D[];for(var a in = w_.$b)this.p[this.p.length]=3Da}w_A.DEFAULT_DICTIONARY_KEY=3D=0A= "";w_A.MAX_DICTIONARY_DEPTH=3D50;w_A.SEPARATOR_CHAR=3D".";w_A.prototype.M= =3Dfunction(a,b){if(this.p.length>=3Dw_A.MAX_DICTIONARY_DEPTH)w_t.raise("= Cannot add another dictionary: = "+a);if(a.indexOf(w_A.SEPARATOR_CHAR)>-1)w_t.raise("Cannot add = dictionary name containing '.': "+a);var = c=3D{};c.name=3Da;c.data=3Db;this.p[this.p.length]=3Dc};w_A.prototype.va=3D= function(a){var = b=3Dthis.p[this.p.length-1];if(b.name!=3Da)w_t.raise("Dictionary "+a+" = is not the last one, and can't be deleted: = "+b.name);this.p.splice(this.p.length-=0A= 1,1)};w_A.prototype.V=3Dfunction(a){if(a=3D=3Dnull)a=3Dw_A.DEFAULT_DICTIO= NARY_KEY;for(var = b=3Dthis.p.length-1;b>=3D0;--b)if(this.p[b].name=3D=3Da)return = this.p[b].data;return null};w_A.prototype.ka=3Dfunction(){return = this.V(w_A.DEFAULT_DICTIONARY_KEY)};w_A.prototype.ab=3Dfunction(a){this.M= (w_A.DEFAULT_DICTIONARY_KEY,a)};w_A.prototype.i=3Dfunction(a){var = b=3Dthis.V(a);if(b)return b;var = c=3Da.split(w_A.SEPARATOR_CHAR);if(c.length=3D=3D1){b=3Dthis.ka();return = b[a]}b=3Dthis.V(c[0]);var d=3D0;if(b)d=3D1;else b=3Dthis.ka();for(var = e=3Dd;e=3D500){if(b.responseText.length)document.body.innerHTML= =3Db.responseText;else alert(LayoutsMessages.SERVER_ERROR);return = false}if(a)return a(b);else return true}};function = w_D(a){this.a=3Da}w_D.WIDGET_TYPE_NAME=3D"AdSense";w_D.prototype.d=3Dfunc= tion(){return w_D.WIDGET_TYPE_NAME};w_D.prototype.b=3Dfunction(){return = this.a};w_D.prototype.c=3Dfunction(a,b){this.a.h(b)};var = _AdSenseView=3Dw_D;function = w_E(a){this.a=3Da;this.e=3Da.k()}w_E.WIDGET_TYPE_NAME=3D"BlogArchive";w_E= .POST_LIST_CLASS=3D"posts";w_E.INTERVAL_EXPANDED_VALUE=3D"expanded";w_E.I= NTERVAL_COLLAPSED_VALUE=3D"collapsed";w_E.LOADING_MSG=3D"loading...";w_E.= POST_COUNT_CLASS=3D"post-count";w_E.POST_COUNT_LINK_CLASS=3D"post-count-l= ink";w_E.MENU_ROOT_ID=3D"ArchiveMenu";w_E.TOGGLE_OPEN_CLASS=3D"toggle-ope= n";w_E.yc=3D"▼ ";w_E.Xb=3D"► ";w_E.prototype.d=3Dfu= nction(){return = w_E.WIDGET_TYPE_NAME};w_E.prototype.b=3Dfunction(){return = this.a};w_E.prototype.f=3D=0A= function(){return = false};w_E.prototype.c=3Dfunction(a,b){if(a=3D=3D"configure")this.a.h(b);= else = if(a=3D=3D"getTitles")this.Pb(b);else{this.widgetInfo.data=3Db;w_.Display= Widget(this)}};w_E.prototype.j=3Dfunction(){var = a=3D{};a.select=3Dfunction(i){return i&&w_o(i,"toggle")};var = b=3Dthis.a.r("ArchiveList");if(!b)return;var = c=3Dw_r(this.e.rootElement,a),d;if(c.length>0&&c[0].currentStyle)d=3Dc[0]= .parentNode.currentStyle.color;for(var e=3D0;e"+e.title+"";c.appendChild(f)}};w_E.prototype.mb=3Df= unction(a){var b=3Dthis.e.rootElement.getElementsByTagName("A");for(var = c in b){var d=3Db[c];if(d.href=3D=3Da)return = d.parentNode}};w_E.prototype.xb=3Dfunction(a){var = b=3Da.getElementsByTagName("UL");if(b.length>0&&!w_o(b[0],"posts"))return= ;var c=3Dthis.ob(a),d=3Da.getElementsByTagName("LI"),e=3Dd.length;return = e-1};w_F.prototype.qa=3Dfunction(a){a=3Da||window.ev= ent;var b=3Da.target||a.srcElement;this.a.v("nextposts",{path:b.href});=0A= return false};w_F.prototype.cb=3Dfunction(a){var = b=3D"";if(document.selection)b=3Ddocument.selection.createRange().text;el= se if(window.getSelection)b=3Dwindow.getSelection();else = if(document.getSelection)b=3Ddocument.getSelection();window.open(a+"?t=3D= "+encodeURIComponent(b)+"&u=3D"+encodeURIComponent(window.location.href)+= "&n=3D"+encodeURIComponent(document.title),"bloggerForm","scrollbars=3Dno= ,width=3D475,height=3D300,top=3D175,left=3D75,status=3Dyes,resizable=3Dye= s");return false};var _BlogView=3Dw_F;function = w_G(a){this.a=3Da;this.e=3Da.k()}w_G.WIDGET_TYPE_NAME=3D"BlogList";w_G.pr= ototype.d=3Dfunction(){return = w_G.WIDGET_TYPE_NAME};w_G.prototype.b=3Dfunction(){return = this.a};w_G.prototype.f=3Dfunction(){return = false};w_G.prototype.c=3Dfunction(a,b){if(a=3D=3D"configure")this.a.h(b)}= ;var = _BlogListView=3Dw_G;_BlogListView._Configure=3D_BlogListView.Configure;fu= nction = w_H(a){this.a=3Da}w_H.WIDGET_TYPE_NAME=3D"CustomSearch";w_H.prototype.d=3D= function(){return = w_H.WIDGET_TYPE_NAME};w_H.prototype.b=3Dfunction(){return = this.a};w_H.prototype.f=3Dfunction(){return = false};w_H.prototype.c=3Dfunction(a,b){if(a=3D=3D"configure")this.a.h(b)}= ;w_H.prototype.j=3Dfunction(){if(!window._UDS_bootstrapped){var = a;if(window.location.host.match(/blogger\.com$/))a=3D"ABQIAAAAVBJEtyJuLxg= Us8KlzeA1lRQpkWYODHKIJGlKH8M-8R98XOejsxRkHYkMWejKfPos1RBuAqHID9wA9Q";else= = a=3Dthis.a.i().key;w_I("http://www.google.com/uds/api?file=3Duds.js&v=3D1= .0&source=3Duds-vbpe&key=3D"+=0A= a);w_J(w_Ca);window._UDS_bootstrapped=3Dtrue}var = b=3Ddocument.getElementById("uds-searchControl");if(!b){b=3Ddocument.crea= teElement("DIV");b.id=3D"uds-searchControl";var = c=3Ddocument.createElement("DIV");c.id=3D"uds-searchResults";b.appendChil= d(c);var = d=3Ddocument.createElement("DIV");d.id=3D"uds-searchClearResults";d.class= Name=3D"gsc-clear-button";d.innerHTML=3D" ";b.appendChild(d);var = e=3Ddocument.getElementById("main");if(!e)e=3Ddocument.getElementsByTagNa= me("body")[0];e.insertBefore(b,e.firstChild)}var f=3Dthis.b();=0A= if(!w_K())w_J(w_Da.bind(f));else = window.setTimeout(w_Da.bind(f),0)};function w_Da(){var a=3Dnew = GSearchControl,b=3Dthis.i();if(b.includeBlog){var c=3Dnew = GblogSearch;c.setUserDefinedLabel(b.thisBlogMsg);c.setSiteRestriction(b.b= logUrl);a.addSearcher(c)}if(b.includePostLinks){var d=3Dnew = GwebSearch;d.setUserDefinedLabel(b.linkedFromHereMsg);d.setSiteRestrictio= n({crefUrl:b.blogUrl+"cse.xml"});a.addSearcher(d)}var = e=3Db.linkLists;for(var f=3D0;fc){a.height=3DMath.round(c/a.width*a.height);a.width=3D= c}a.style.visibility=3D"visible"};w_M.prototype.c=3Dfunction(a,b){if(a=3D= =3D"configure")this.a.h(b)};var _ImageView=3Dw_M;function = w_N(a,b,c,d,e,f,g,h){this.n=3Da;this.Tb=3Db!=3D"null"?b:null;this.ec=3Dc;= this.cc=3Dd;this.dc=3De;this.pc=3Df;this.fc=3Dg;this.Fc=3Dh;this.u=3D-1;t= his.B=3D-1;this.C=3Dnull;this.q=3Ddocument.getElementById(this.n+"_picImg= ");this.$=3Ddocument.getElementById(this.n+"_changeImageLink");this.da=3D= document.getElementById(this.n+"_imageChoiceTable");this.ac=3Ddocument.ge= tElementById(this.n+"_imgSrcFromPCRadio");this.bc=3Ddocument.getElementBy= Id(this.n+"_imgSrcFromWebRadio");this.g=3Ddocument.getElementById(this.n+= "_imgFileNameInput");=0A= this.R=3Ddocument.getElementById(this.n+"_imgUrlTextInput");this.Rb=3Dwin= dow.frames[this.n+"_asynchronousFileUploadIframe"];this.La=3D0;this.l=3Dn= ew = Image;this.l.onload=3Dthis.hitch(this,this.mc);this.l.onerror=3Dthis.hitc= h(this,this.lc);this.Yb=3Dfalse;this.Pa=3Dnull;this.m=3Dnull;this.H=3Dnul= l;this.Ta=3Dfalse}w_N.prototype.Oa=3Dfunction(){return = this.ac.checked};w_N.prototype.mc=3Dfunction(){this.La=3D0;w_B.ClearError= (this.n+"_imgUrlTextError");w_B.ClearError(this.n+"_imgFileNameError");if= (!this.Oa()||this.u=3D=3D0){this.u=3Dthis.l.width;=0A= this.B=3Dthis.l.height;this.C=3Dthis.l.src}var = a=3D1,b=3D1;if(this.l.width>300)a=3D300/this.l.width;if(this.l.height>300= )b=3D300/this.l.height;var = c=3DMath.min(a,b);this.q.style.width=3DMath.round(this.l.width*c)+"px";th= is.q.style.height=3DMath.round(this.l.height*c)+"px";this.q.src=3Dthis.l.= src;this.q.style.display=3D"";this.da.style.display=3D"none";this.$.style= .display=3D"";this.g.disabled=3Dtrue;if(this.ec)this.ec.call({},this.q.sr= c,this.C,this.u,this.B)};w_N.prototype.J=3Dfunction(a,b,c,d){if(a){w_B.Se= tError(this.n+"_imgFileNameError",=0A= b);w_B.ClearError(this.n+"_imgUrlTextError")}else{w_B.SetError(this.n+"_i= mgUrlTextError",b);w_B.ClearError(this.n+"_imgFileNameError")}this.q.styl= e.display=3D"none";this.da.style.display=3D"";this.$.style.display=3D"non= e";this.g.disabled=3Dfalse;if(this.cc)this.cc.call({},c,d)};w_N.prototype= .lc=3Dfunction(){if(this.La<2){this.La++;var = a=3Dthis.l.src;this.l.src=3D"";this.D(a)}else = this.J(this.Oa(),WidgetMessages.SIV_INVALID_URL,this.q.src)};w_N.prototyp= e.hitch=3Dfunction(a,b){return function(){b.apply(a,arguments)}};=0A= w_N.prototype.D=3Dfunction(a){this.Xa();this.l.src=3Da};w_N.prototype.Ha=3D= function(a){var = b=3Da||window.event;if(window.event){b.returnValue=3Dfalse;b.cancelBubble= =3Dtrue}else{b.preventDefault();b.stopPropagation()}this.q.style.display=3D= "none";this.$.style.display=3D"none";this.da.style.display=3D"";this.g.di= sabled=3Dfalse;this.R.value=3D"";this.Ua();this.Ta=3Dtrue;if(this.dc)this= .dc.call({})};w_N.prototype.Ma=3Dfunction(){this.ac.checked=3D"true";this= .R.value=3D"";this.Xa();this.hc();this.Yb=3Dtrue;try{this.m.submit()}catc= h(a){this.J(true,=0A= WidgetMessages.SIV_INVALID_URL,this.m.value)}this.gc()};w_N.prototype.G=3D= function(){var = a=3Dthis.Rb.document.result;if(!a)this.J(true,WidgetMessages.SIV_INVALID_= URL,this.g.value);if(a.hasErrors)if(a.errors.length>0)this.J(true,a.error= s[0].message,this.g.value,a.Ac);else = this.J(true,WidgetMessages.SIV_INVALID_URL,this.g.value,a.Ac);else{var = b=3DMath.max(a.origWidth,a.origHeight),c=3Dthis.Ka();if(this.u!=3D0&&c!=3D= -1&&b>c){var = d=3Dc/b;this.u=3DMath.round(a.origWidth*d);this.B=3DMath.round(a.origHeig= ht*d)}else{this.u=3D=0A= a.origWidth;this.B=3Da.origHeight}this.C=3Da.mainSrc;this.D(a.thumbSrc)}}= ;w_N.prototype.Na=3Dfunction(a){var = b=3Da||window.event;if(b.keyCode=3D=3D9)return;this.bc.checked=3D"true";i= f(this.Pa!=3Dnull)window.clearTimeout(this.Pa);var = c=3Dthis.hitch(this,function(){if(this.Ta||this.l.src!=3Dthis.R.value.toL= owerCase()){this.Ua();this.D(this.R.value.toLowerCase())}this.Ta=3Dfalse}= );this.Pa=3Dwindow.setTimeout(c,1000)};w_N.prototype.Qa=3Dfunction(a){thi= s.bc.checked=3Dtrue;this.R.value=3Da;this.D(a)};w_N.prototype.Xa=3Dfuncti= on(){this.q.src=3D=0A= "img/icon_inprogress.gif";this.q.style.width=3D"200px";this.q.style.heigh= t=3D"200px";this.q.style.display=3D"";this.da.style.display=3D"none";this= .$.style.display=3D"none"};w_N.prototype.hc=3Dfunction(){if(!this.m){this= .m=3Ddocument.createElement("form");this.m.action=3D"imageUpload.do";this= .m.method=3D"POST";this.m.target=3Dthis.Rb.name;this.m.encoding=3D"multip= art/form-data";this.m.style.display=3D"none";if(this.Tb){var = a=3Ddocument.createElement("input");a.type=3D"hidden";a.name=3D"blogID";a= .value=3Dthis.Tb;this.m.appendChild(a)}var b=3D=0A= document.createElement("input");b.type=3D"hidden";b.name=3D"sectionWidth"= ;b.id=3D"sectionWidth";this.m.appendChild(b);var = c=3Ddocument.createElement("input");c.type=3D"hidden";c.name=3D"photoUplo= adSecurityToken";c.value=3Dthis.Fc;this.m.appendChild(c);document.body.ap= pendChild(this.m)}var = d=3Dthis.Ka();if(d=3D=3D-1)d=3D1600;document.getElementById("sectionWidth= ").value=3Dd;this.H=3D{parent:this.g.parentNode,nextSibling:this.g.nextSi= bling};this.g.parentNode.removeChild(this.g);this.m.appendChild(this.g)};= w_N.prototype.gc=3Dfunction(){this.m.removeChild(this.g);=0A= if(this.H&&this.H.nextSibling)this.H.parent.insertBefore(this.g,this.H.ne= xtSibling);else = this.H.parent.appendChild(this.g)};w_N.prototype.Ua=3Dfunction(){var = a=3Ddocument.createElement("input");a.type=3D"file";a.name=3Dthis.g.name;= a.id=3Dthis.g.id;a.onchange=3Dthis.g.onchange;var = b=3Dthis.g.nextSibling;if(b=3D=3Dnull)this.g.parentNode.appendChild(a);el= se = this.g.parentNode.insertBefore(a,b);this.g.parentNode.removeChild(this.g)= ;this.g=3Da};w_N.prototype.Ka=3Dfunction(){if(this.pc=3D=3D-1&&this.fc)re= turn this.fc();else return this.pc};=0A= function w_O(){this.usiContainers=3D[]}var w_Ga=3Dnew = w_O;w_O.prototype.Ia=3Dfunction(a,b,c,d,e,f,g,h){this.usiContainers[a]=3D= new w_N(a,b,eval(c),eval(d),eval(e),f,eval(g),h);return = this.usiContainers[a]};w_O.prototype.ca=3Dfunction(a){return = this.usiContainers[a]};w_O.prototype.G=3Dfunction(a){var = b=3Dthis.ca(a);if(b&&b.Yb)b.G()};var = _UploadSimpleImage=3Dw_Ga;w_O.prototype._createUsiContainer=3Dw_O.prototy= pe.Ia;w_O.prototype._getUsiContainer=3Dw_O.prototype.ca;w_O.prototype._ch= annelResultArrived=3Dw_O.prototype.G;w_N.prototype._changeImage=3D=0A= w_N.prototype.Ha;w_N.prototype._imgUrlFileOnChange=3Dw_N.prototype.Ma;w_N= .prototype._imgUrlTextOnKeyUp=3Dw_N.prototype.Na;w_N.prototype._loadIniti= alUrl=3Dw_N.prototype.Qa;w_N.prototype._loadImageFromUrl=3Dw_N.prototype.= D;function = _singleImageConfig_successfulUploadCallback(a,b,c,d){window.singleImageCo= nfig_thumbImageUrl=3Da;window.singleImageConfig_imageUrl=3Db;window.singl= eImageConfig_imageWidth=3Dc;window.singleImageConfig_imageHeight=3Dd;var = e=3Ddocument.getElementById("shrinkToFitRow");if(e)e.style.visibility=3D"= hidden"}function = _singleImageConfig_resetCallback(){window.singleImageConfig_imageUrl=3Dnu= ll;var = a=3Ddocument.getElementById("shrinkToFitRow");if(a)a.style.visibility=3D"= visible"}function = _SIV_getScaledContainerWidth(){if(document.getElementById("checkShrink").= checked)return _SIV_getContainerWidth();=0A= else return-1}function _SIV_getContainerWidth(){var = a=3Ddocument.getElementById("sectionId").value,b=3D150;if(w_.IsOpenerReac= hable(window)&&window.opener.document.getElementById(a))b=3Dwindow.opener= .document.getElementById(a).clientWidth;return b}function = _SIV_setConfigurationOptions(){if(window.singleImageConfig_imageUrl=3D=3D= null){w_.o(window,WidgetMessages.SIV_NO_IMAGE,w_.STATUS_MESSAGE_BAD_CLASS= );return}var = a=3Ddocument.forms.config.widgetId.value,b=3D_SIV_getContainerWidth(),c=3D= document.getElementById("checkShrink").checked,=0A= d=3Dwindow.singleImageConfig_imageWidth,e=3Dwindow.singleImageConfig_imag= eHeight;if(c){var f=3D1;if(d>b){f=3Db/d;d=3Db;e=3DMath.round(e*f)}}var = g=3D{originalUrl:window.singleImageConfig_imageUrl,originalWidth:window.s= ingleImageConfig_imageWidth,originalHeight:window.singleImageConfig_image= Height,displayUrl:window.singleImageConfig_thumbImageUrl,displayWidth:d,d= isplayHeight:e,sectionWidth:b,shrinkToFit:c,title:document.getElementById= ("title").value,caption:document.getElementById("imageCaption").value,sec= urityToken:document.forms.config.securityToken.value};=0A= w_.SaveWidget(g,a,w_M.WIDGET_TYPE_NAME)};function = w_P(a){this.a=3Da;this.e=3Da.k()}w_P.successfulUploadCallback=3Dfunction(= a,b,c,d){w_P.Gc=3Da;w_P.C=3Db;w_P.u=3Dc;w_P.B=3Dd;var = e=3Ddocument.getElementById("shrinkToFitRow");if(e)e.style.visibility=3D"= hidden";e=3Ddocument.getElementById("shrinkToFitMessageRow");if(e)e.style= .visibility=3D"hidden"};w_P.resetCallback=3Dfunction(){w_P.C=3Dnull;var = a=3Ddocument.getElementById("shrinkToFitRow");if(a)a.style.visibility=3D"= visible";a=3Ddocument.getElementById("shrinkToFitMessageRow");if(a)a.styl= e.visibility=3D"visible"};w_P.getScaledContainerWidth=3D=0A= function(){if(document.getElementById("checkShrink").checked)return = w_P.getContainerWidth();else = return-1};w_P.getContainerWidth=3Dfunction(){var = a=3Ddocument.getElementById("sectionId").value,b=3D600;if(w_.IsOpenerReac= hable(window)&&window.opener.document.getElementById(a))b=3Dwindow.opener= .document.getElementById(a).clientWidth;return = b};w_P.WIDGET_TYPE_NAME=3D"Header";w_P.prototype.d=3Dfunction(){return = w_P.WIDGET_TYPE_NAME};w_P.prototype.f=3Dfunction(){return = false};w_P.prototype.b=3Dfunction(){return this.a};=0A= w_P.prototype.c=3Dfunction(a,b){this.a.h(b)};w_P.FilterMap=3D{title:w_B.G= etRequiredStringFilter(),description:null,imagePlacement:null,useImage:nu= ll,securityToken:null};w_P.ConfigureWidget=3Dfunction(){var = a=3Ddocument.forms.config.widgetId.value,b=3Ddocument.forms.config.widget= Type.value,c=3Dw_B.ProcessForm(document.forms.config,w_P.FilterMap),d=3Dw= _P.getContainerWidth();if(c.success){if(w_P.C){var = e=3Dw_P.u,f=3Dw_P.B,g=3Ddocument.getElementById("checkShrink").checked;if= (g){var h=3D1;if(e>d){h=3Dd/e;e=3Dd;f=3DMath.round(f*=0A= h)}}c.values.originalUrl=3Dw_P.C;c.values.originalWidth=3Dw_P.u;c.values.= originalHeight=3Dw_P.B;c.values.displayUrl=3Dw_P.Gc;c.values.displayWidth= =3De;c.values.displayHeight=3Df;c.values.sectionWidth=3Dd;c.values.shrink= ToFit=3Dg}c.values.securityToken=3Ddocument.forms.config.securityToken.va= lue;w_.SaveWidget(c.values,a,b);return true}else return = false};w_P.hideImageOptions=3Dfunction(){document.getElementById("imageOp= tions").style.display=3D"none";return = false};w_P.showImageOptions=3Dfunction(){document.getElementById("imageOp= tions").style.display=3D=0A= "";return false};var = _HeaderView=3Dw_P;_HeaderView.prototype=3Dw_P.prototype;_HeaderView._Conf= igureWidget=3D_HeaderView.ConfigureWidget;_HeaderView._hideImageOptions=3D= _HeaderView.hideImageOptions;_HeaderView._showImageOptions=3D_HeaderView.= showImageOptions;_HeaderView._successfulUploadCallback=3D_HeaderView.succ= essfulUploadCallback;_HeaderView._resetCallback=3D_HeaderView.resetCallba= ck;_HeaderView._getScaledContainerWidth=3D_HeaderView.getScaledContainerW= idth;_HeaderView._getContainerWidth=3D_HeaderView.getContainerWidth;funct= ion = w_Q(a,b){this.a=3Da;this.e=3Da.k();this.Ic=3Db}w_Q.prototype.b=3Dfunction= (){return this.a};w_Q.prototype.d=3Dfunction(){return = this.Ic};w_Q.prototype.c=3Dfunction(a,b){if(a=3D=3D"configure")this.a.h(b= )};w_Q.ConfigureWidget=3Dfunction(a){setFormAndSubmit();var = b=3Ddocument.forms.stuffform.widgetId.value,c=3Ddocument.forms.stuffform.= securityToken.value,d=3Ddocument.getElementById("textarea"),e=3Ddocument.= getElementById("title"),f=3Dd.value;if(a=3D=3D"Text")f=3Df.replace(/\n/g,= "
");var g=3D{content:f,title:e.value,securityToken:c};=0A= w_.SaveWidget(g,b,a)};function = w_R(a){w_Q.call(this,a,"Text")}w_R.inherits(w_Q);w_R.ConfigureWidget=3Dfu= nction(){w_Q.ConfigureWidget("Text")};function = w_S(a){w_Q.call(this,a,"HTML")}w_S.inherits(w_Q);w_S.ConfigureWidget=3Dfu= nction(){w_Q.ConfigureWidget("HTML")};var = _TextView=3Dw_R;_TextView.prototype=3Dw_R.prototype;_TextView._ConfigureW= idget=3D_TextView.ConfigureWidget;var = _HTMLView=3Dw_S;_HTMLView.prototype=3Dw_S.prototype;_HTMLView._ConfigureW= idget=3D_HTMLView.ConfigureWidget;function = w_I(a){document.write('