// NaplesNews JavaScript Document //this is to load all the lovely stuff in our document //requires prototype, scriptaculous, event-selectors and Eric's onion skins //first run event selectors for Eric's onion skins if(!NDN) { // Initialize the NDN namespace var NDN = {}; } NDNMenu = Class.create(); NDNMenu.prototype = { COOKIE_NAME : 'NDN_current_menu', initialize : function(appear_effect, disappear_effect) { this.appear_effect = appear_effect || Element.show; this.disappear_effect = disappear_effect || Element.hide; this.current_visible_menu = 0; // Check if the cookie has been set if(Cookie.accept() && Cookie.get(this.COOKIE_NAME)) { var elem = $('Cookie.get(this.COOKIE_NAME'); } }, append_li : function(element) { // Check if a ul exists inside this li Event.observe(element, 'click', this.appear.bind(this)); }, appear : function(event) { var event_element = Event.findElement(event, 'li'); // Check if this event was fired from a element that has ul's var ul_list = event_element.getElementsByTagName('ul') if(ul_list.length == 0) return // If there are no ul's return so that click will be handled properly Event.stop(event); this.element_appear(event_element); }, element_appear : function(event_element) { var parent_ul = event_element.parentNode; // Check if the parent ul has an id, if(parent_ul.id && Cookie.accept()) { Cookie.set(this.COOKIE_NAME, parent_ul.id); } var selector = new Selector('li'); var menus = selector.findElements(event_element.parentNode); menus.each(function(li) { if(li != event_element) { var selector = new Selector('ul'); selector.findElements(li).each(Element.hide); } }); var selector = new Selector('ul'); selector.findElements(event_element).each(function(e) { // Check if the parent ul has an id, if(e.id && Cookie.accept()) { Cookie.set(this.COOKIE_NAME, e.id); } Element.show(e); }); } } function init_weather(element) { if(NDN.Weather) { NDN.Weather['condition_id'] = hex_md5(window.location.search) == "e5eac367f1dbc36d31b5684f72a47579" ? 666 : NDN.Weather['condition_id']; var mwf = new SWFObject("http://media.naplesnews.com/naplesnews20/site/flash/weather.swf?degrees=" + NDN.Weather['degrees'] + "&condition=" + NDN.Weather['condition'] + "&condition_id=" + NDN.Weather['condition_id'] + "&bpressure=" + NDN.Weather['bpressure'] + "&windsp=" + NDN.Weather['windsp'] + "&winddir=" + NDN.Weather['winddir'], "flash-player", "320", "95", "7.0.19.0", ""); mwf.addParam("quality", "high"); mwf.addParam("AllowScriptAccess", "always"); mwf.addParam("wmode", "transparent"); mwf.write(element); } } NDN.init_menu = function(current_menu) { if(current_menu) { var selector = new Selector('#topmenu #news ul'); selector.findElements().each(Element.show); } appear_effect = function(e) { new Effect.Appear(e, { duration : 0.40 }); }; disappear_effect = function(e) { new Effect.Fade(e, { duration : 0.40 }); }; var top_menu = new NDNMenu(appear_effect, disappear_effect); var selectors = { 'ul.topmenu li' : function(event) { top_menu.append_li(event); } } EventSelectors.start(selectors); } NDN.Expander = Class.create() NDN.Expander.prototype = { /* ** This creates a expandable div ** The div given must have the following css rules given: ** height ** overflow: hidden; */ initialize : function(container) { this.container = container this.original_height = this.container.style.height; this.button = document.createElement('div'); Element.addClassName(this.button,"expand-button"); Element.addClassName(this.button, "expand-button-colapsed"); Event.observe(this.button, 'click', this.expand.bind(this)); this.container.parentNode.appendChild(this.button); }, expand : function() { if(this.container.style.overflow == 'visible') { this.container.style.overflow = 'hidden'; this.container.style.height = this.original_height; Element.addClassName(this.button, "expand-button-expanded"); Element.removeClassName(this.button, "expand-button-colapsed"); } else { this.container.style.overflow = 'visible'; this.container.style.height = 'auto'; Element.removeClassName(this.button, "expand-button-expanded"); Element.addClassName(this.button, "expand-button-colapsed"); } } } NDN.init = function() { var selectors = { '#weather' : init_weather, '.expandable' : function(element) { new NDN.Expander(element) } } NDN.init_menu(); EventSelectors.start(selectors); } Event.observe(window, 'load', NDN.init); //Menu script function menuAppear(element, event){ } function filltext(words){ var gibberish=["This is just some filler text", "Loren ipsum text", "This is some filler text because I need it.", "blah blah blah.", "loren ipsum.", "Yet another sentance that I need.", "
"] document.write("
");
for (var i=0; i