/*------------------------------------------*/ /* Name: EMSNow.com News Feed */ /* Version: 1.0 */ /* Updated: Tuesday, December 7, 2004 */ /* Developer: Quadsimia (quadsimia.com) */ /* ------------------------- */ /* Permission granted to use this script in */ /* any application, provided this header is */ /* left intact. */ /*------------------------------------------*/ /* ----------------------------------------------------------- BASIC USAGE: 1. link to this javascript file on the EMSnow site in the header of your page. 2. call the emsNowNews() function from the area on your page where news is to appear. That's it, for a basic news display. ADVANCED USAGE: The emsnowNews() function can be called with arguments to provide more control over the news feed. The arguments are all optional. emsNowNews([type [, width [, height [, style]]]]); type = the type of news you're requesting: 'NA' = news analysis; 'BN' = breaking news; '' = both width = the width of the news box height = the height of the news box (if you set a height smaller than the news contents, it will scroll) style = stylesheet to use. can be a local file or a remote URL: '' = emsNowNews.css (installed on EMSNow's site); 'none' = no style applied EXAMPLE: To produce a box 300 pixels wide by 400 pixels high that contains only the News Analysis: Put this line in the of your document: Put this line in the of your document: ---------------------------------------------------------------- */ // initialize these global variables for later use var newsType; var newsBoxWidth; var newsBoxHeight; var newsBoxId = 'emsNowNews'; var newsStyle; var dirBase = 'http://www.emsnow.com/newsadop/'; // the main function - called directly from a web page function emsNowNews(whichNews,boxWidth,boxHeight,style){ // set these global variables according to the user-specified arguments newsType = whichNews; newsBoxWidth = boxWidth; newsBoxHeight = boxHeight; newsStyle = style; // create the news box and hide it until its data is loaded document.write('
'); var newsBox = document.getElementById('emsNowNews'); newsBox.style.display = 'none'; getEMSNow(); } function applyStylesheet(style){ // determine which stylesheet (if any) to apply if(!style) { stylesheet = dirBase + 'emsNowNews.css'; // if no stylesheet was specified, use the default one } else { if(style == 'none') return; // don't use any stylesheet if(style.substr(0,7) == 'http://') { stylesheet = style; } else if(style.substr(style.length-4,4) == '.css') { stylesheet = style; } } // create the style tag var docHead = document.getElementsByTagName('head')[0]; var styleTag = document.createElement('link'); styleTag.setAttribute('rel','stylesheet'); styleTag.setAttribute('type','text/css'); styleTag.setAttribute('href',stylesheet); // write the style tag to the page docHead.appendChild(styleTag); } function getEMSNow(){ // which type of news are we requesting? switch(newsType){ case 'BN': sBN = showBreakingNews(); break; case 'NA': sNA = showNewsAnalysis(); break; case 'NA+BN': default: sNA = showNewsAnalysis(); sBN = showBreakingNews(); break; } // add the EMSNow news content to its containing box var newsBox = document.getElementById('emsNowNews'); newsBox.innerHTML = '

Industry News courtesy of EMSNow
Subscribe to EMSNow Daily Briefing Newsletter

'; if (window.sNA) newsBox.innerHTML += sNA; if (window.sBN) newsBox.innerHTML += sBN; if (newsBoxWidth) newsBox.style.width = newsBoxWidth + 'px'; if (newsBoxHeight) newsBox.style.height = newsBoxHeight + 'px'; newsBox.style.display = 'block'; applyStylesheet(newsStyle); } // function to parse the "News Analysis" section function showNewsAnalysis(){ // if the newsAnalysis array exists if (window.newsAnalysis){ var na = ''; // the newsAnalysis array is defined externally for(i=1; i' + newsAnalysis[i][1] + '
' + newsAnalysis[i][2] + '
'; } // add the title and containing box na = '

News Analysis

' + na + '
'; return na; } } // function to parse the "Breaking News" section function showBreakingNews(){ // if the breakingNews array exists if (window.breakingNews){ var bn = ''; // the breakingNews array is defined externally for(i=1; i' + breakingNews[i][1] + ''; } // add the title and containing box bn = '

Breaking News

'; return bn; } } // news data length, test: 53944 // test var dump: // na: 16669 - 19220 // bn: 19270 - 21936 var newsAnalysis = new Array(); newsAnalysis[1] = new Array( 'http://www.emsnow.com/npps/story.cfm?pg=story&id=41874', 'Asia-Pacific Semiconductor suppliers defy the downturn in 2009', 'Mar 18, 2010 - The global semiconductor industry suffered a sharp downturn in 2009 - but no one bothered to tell the Asia-Pacific-based chipmakers.'); newsAnalysis[2] = new Array( 'http://www.emsnow.com/npps/story.cfm?pg=story&id=41875', 'High-Tech Product Equipment Orders Inundating Taiwan's Suppliers', 'Mar 18, 2010 - Taiwan's equipment suppliers have landed orders that are deluging their production lines from high-tech manufacturers thanks to market recovery.'); newsAnalysis[3] = new Array( 'http://www.emsnow.com/npps/story.cfm?pg=story&id=41862', 'IPC Urges EU Leaders to Incorporate Science In RoHS Directive Recast', 'Mar 17, 2010 - IPC - Association Connecting Electronics Industries has released a white paper, Recasting the RoHS Directive: An Opportunity to Solidify its Scientific Basis in Support of Comprehensive Environmental Regulation.'); newsAnalysis[4] = new Array( 'http://www.emsnow.com/npps/story.cfm?pg=story&id=41861', 'Premium Automotive Audio Market to Double by 2016', 'Mar 17, 2010 - After a decline in 2009, worldwide shipments of high-end premium audio systems for cars are set to rise by a double-digit percentage in 2010, paving the way for the market to expand by a factor of two by 2016, according to iSuppli Corp.'); var breakingNews = new Array(); breakingNews[1] = new Array( 'http://www.emsnow.com/npps/story.cfm?pg=story&id=41876', 'Flextronics southern China production site expects double-digit growth in 2010'); breakingNews[2] = new Array( 'http://www.emsnow.com/npps/story.cfm?pg=story&id=41877', 'Foxconn says no plan to split company'); breakingNews[3] = new Array( 'http://www.emsnow.com/npps/story.cfm?pg=story&id=41878', 'GOEPEL electronic's expands GATE Partner Program'); breakingNews[4] = new Array( 'http://www.emsnow.com/npps/story.cfm?pg=story&id=41879', 'IMAPS-UK "Beyond Solder" Technical Seminar announced'); breakingNews[5] = new Array( 'http://www.emsnow.com/npps/story.cfm?pg=story&id=41880', 'Indium Corporation announces new Global Sales Manager'); breakingNews[6] = new Array( 'http://www.emsnow.com/npps/story.cfm?pg=story&id=41881', 'Kyzen highlights EXAKLEAN at Nepcon Korea'); breakingNews[7] = new Array( 'http://www.emsnow.com/npps/story.cfm?pg=story&id=41882', 'Mentor Graphics to Extend Cooperation with STMicroelectronics'); breakingNews[8] = new Array( 'http://www.emsnow.com/npps/story.cfm?pg=story&id=41883', 'Nordson ASYMTEK's Dual Simultaneous Jetting cuts dispense time in half');