// simulate other verbs over post
// when GET, append parameters to URL
// user-defined headers
// avoid memory leak in MSIE: clean up
// removes whitespace-only text node children
// Safari bug
// All *Width and *Height properties give 0 on elements with display none,
// so enable the element temporarily
// Opera returns the offset relative to the positioning context, when an
// element is position relative but top and left have not been defined
// IE is missing .innerHTML support for TABLE-related elements
// extend element because hasAttribute may not be native
// find the first node with the given tagName, starting from the
// node the event was triggered on; traverses the DOM upwards
// set to true if needed, warning: firefox performance problems
// NOT neeeded for page scrolling, only if draggable contained in
// scrollable elements
// must be called before calling withinIncludingScrolloffset, every time the
// page is scrolled
// caches x/y coordinate pair to use with overlap
// within must be called directly before
// Safari fix
// find page position of source
// find coordinate system to use
// delta [0,0] will do fine with position: fixed elements,
// position:absolute needs offsetParent deltas
// correct by body offsets fixes Safari
// set position
// Safari returns margins on body which is incorrect if the child is absolutely
// positioned. For performance reasons, redefine Position.cumulativeOffset for
// KHTML/WebKit only.
// script.aculo.us scriptaculous.js v1.7.0, Fri Jan 19 19:16:36 CET 2007
// Copyright c 2005, 2006 Thomas Fuchs http://script.aculo.us, http://mir.aculo.us
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files the
// "Software", to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to
// permit persons to whom the Software is furnished to do so, subject to
// the following conditions:
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
// For details, see the script.aculo.us web site: http://script.aculo.us/
// inserting via DOM fails in Safari 2.0, so brute force approach
// Firefox/DOm
// IE
// Older
// Let's look to see the documentState is complete but the useDelayedCSI flag hasn't been set yet. If so then initialize the manager
// Response must be either text/xml or text/plain.
// Using text/plain, and doing string manipulation to
// turn into JSON.
// This is a hack to work around IE not wanting to set iframe's src reliably after the dom has been loaded
// static property
// setting default to expire in 7 days
// 20k
// 3M
// There are multiple matches. Weed out the one we want.
// Max cap of 50
// We have a bunch of possible locations.
// already a Date string
// calculate Date from number of hours
// Set the cookie, adding any parameters that were specified.
// We need the value to kill the cookie
// set an already-expired cookie
// this is for opening pop-up windows
// assumes 2 images: image.gif and image_over.gif
// do nothing
// assume first number we get is version number
// constructor
// Declare member properties
// open object
// open embed
// close embed
// close object
// story comments functions
// story comments functions
// mixx
// Digg
// Facebook
// del.icio.us
// reddit
// stumbleupon
// myspace
// default
// image change functions
// change the id
// change the tabs
// show/hide the sections
// else user entered something, leave it alone
// don't render anything if the banner has been closed.
// put transparency behind swf files
// email link
// Map menu id's to button classes, for determining later on if the current menu
// is one with non-default behavior.
// Overlay menus with default behavior
// Add code here for overlay menus with non-default behavior
// If the menu is already open, close it
// Add code here for overlay menus with non-default behavior
// Add code here for overlay menus with non-default behavior
// Get the id parameter from href="javascript:foo'myId'"
// button
// menu
// Store the button class associated with the menu id
// Mac Safari image-rollover bug
// If cnnImgSwap is called by the onmouseout event
// Make onclick call the onmouseout event handler
// Get the menu id
// Get the menu id
// Close the open overlay menu, unless the mouse is inside the menu
// or the menu button.
// CNN dropdown menu JavaScript object literal
// id of currently-open dropdown
// default parameters
// hide the <select>
// Get the displayed value for the first select option
// build content for the button
// draw the new content
// reset the list
// default parameters
// hide the <select>
// If no row was explicitly selected
// See if the first row matches one of the later rows
// minus left and right borders
// without scrollbar
// with scrollbar
// build content for the menu
// draw the new content
// capture mousedown
// default parameters
// hide the list
// Get the displayed value for each select option
// minus left and right borders
// without scrollbar
// with scrollbar
// build content for the menu
// draw the new content
// capture mousedown
// close the dropdown
// change the displayed dropdown value button text
// set the first row of the menu to the current value
// if the value has changed
// set the index of the selected option for the invisible <select>
// If an onchange event handler exists
// if a callback function exists
// Was the same menu clicked again?
// If a menu is already open
// If a different menu was clicked
// True if the same dropdown button was clicked again.
// hide the old
// display the new
// end if cnnie
// delay the unlock
// end if !cnnMpLock
// end same id
// hide the red header
// show the previously active red header
// reset the active id
// reset the list
// no region selected
// name, logo, feed location, subscribe link, logo link
// reset opacity
// using cnnSectionName and cnnMosaicDetect to determine what suffix should be affixed.
// Maps code ids html ids in code to site ids
// default values
// got milk?
// there's no cookie, so go no further
// there is a cookie
// find the start of 'name'
// if you found the cookie
// skip 'name' and '='
// Find the end of the value string i.e. the next ';'.
// If there was no cookie of that name, return false.
// WM_readCookie
// flag for geo targetting image
// document domain security issues
// convert everything to a string
// we are on preview or on local subnet, so we have to use internal names
// there is no cookie, so go no further
// there is a cookie
// find the start of 'name'
// if you found the cookie
// skip 'name' and '='
// Find the end of the value string i.e. the next ';'.
// If there was no cookie of that name, return false.
// elem.style.position = 'absolute';
// if we find our ad in the cache, then use it
// if not in cache, we fetch it using an Ajax call
// first we try Prototype
// next try Dojo
// neither worked, we just give up and not do anything
// do nothing
// alert"No way to fetch " + newAdLoc;
// chop off everything before callout marker
// remove the interstitial node
// remove the interstitial related CSS node
// for IE, we need to add another style to make sure tables show up
// ----- THE CNN ADS OBJECT ----- //
// ------ /CNN ADS OBJECT ----- //
// DO NOT PUT ANYTHING BENEATH THIS!
// just refresh behavior. Will still send first result
// entire refresh manager
// president
// main.results
// options:
// GA ............ state:
// GAH .... full results: main.
// GAH01 .... individual:
// GAH01xp ... exit poll:
// exit poll page
// individual race page
// full results page
// state page
// works for Firefox, Safari, IE
// works for Opera, Safari, IE
// works for Firefox, Safari
// works for IE
// National Refresh Manager