var isDOM = (document.getElementById ? true : false); var isIE4 = ((document.all && !isDOM) ? true : false); var isNS4 = (document.layers ? true : false); function getRef(id) { if (isDOM) return document.getElementById(id); if (isIE4) return document.all[id]; if (isNS4) return document.layers[id]; } function getSty(id) { return (isNS4 ? getRef(id) : getRef(id).style); } var popTimer = 0; var litNow = new Array(); function popOver(menuNum, itemNum) { clearTimeout(popTimer); hideAllBut(menuNum); litNow = getTree(menuNum, itemNum); changeCol(litNow, true); targetNum = menu[menuNum][itemNum].target; if (targetNum > 0) { thisX = parseInt(menu[menuNum][0].ref.left) + parseInt(menu[menuNum][itemNum].ref.left); thisY = parseInt(menu[menuNum][0].ref.top) + parseInt(menu[menuNum][itemNum].ref.top); with (menu[targetNum][0].ref) { left = parseInt(thisX + menu[targetNum][0].x); top = parseInt(thisY + menu[targetNum][0].y); visibility = 'visible'; } } } function popOut(menuNum, itemNum) { if ((menuNum == 0) && !menu[menuNum][itemNum].target) hideAllBut(0) else popTimer = setTimeout('hideAllBut(0)', 250); } function getTree(menuNum, itemNum) { itemArray = new Array(menu.length); while(1) { itemArray[menuNum] = itemNum; if (menuNum == 0) return itemArray; itemNum = menu[menuNum][0].parentItem; menuNum = menu[menuNum][0].parentMenu; } } function changeCol(changeArray, isOver) { for (menuCount = 0; menuCount < changeArray.length; menuCount++) { if (changeArray[menuCount]) { newCol = isOver ? menu[menuCount][0].overCol : menu[menuCount][0].backCol; with (menu[menuCount][changeArray[menuCount]].ref) { if (isNS4) bgColor = newCol; else backgroundColor = newCol; } } } } function hideAllBut(menuNum) { var keepMenus = getTree(menuNum, 1); for (count = 0; count < menu.length; count++) if (!keepMenus[count]) menu[count][0].ref.visibility = 'hidden'; changeCol(litNow, false); } function Menu(isVert, popInd, x, y, width, overCol, backCol, borderClass, textClass) { this.isVert = isVert; this.popInd = popInd this.x = x; this.y = y; this.width = width; this.overCol = overCol; this.backCol = backCol; this.borderClass = borderClass; this.textClass = textClass; this.parentMenu = null; this.parentItem = null; this.ref = null; } function Item(text, href, frame, length, spacing, target) { this.text = text; this.href = href; this.frame = frame; this.length = length; this.spacing = spacing; this.target = target; this.ref = null; } function writeMenus() { if (!isDOM && !isIE4 && !isNS4) return; for (currMenu = 0; currMenu < menu.length; currMenu++) with (menu[currMenu][0]) { var str = '', itemX = 0, itemY = 0; for (currItem = 1; currItem < menu[currMenu].length; currItem++) with (menu[currMenu][currItem]) { var itemID = 'menu' + currMenu + 'item' + currItem; var w = (isVert ? width : length); var h = (isVert ? length : width); if (isDOM || isIE4) { str += '
'; str += ''; if (target > 0) { menu[target][0].parentMenu = currMenu; menu[target][0].parentItem = currItem; if (popInd) str += ''; } str += '
' + '' : '>') + text + '' + popInd + '
' + (isNS4 ? '' : '
'); if (isVert) itemY += length + spacing; else itemX += length + spacing; } if (isDOM) { var newDiv = document.createElement('div'); document.getElementsByTagName('body').item(0).appendChild(newDiv); newDiv.innerHTML = str; ref = newDiv.style; ref.position = 'absolute'; ref.visibility = 'hidden'; } if (isIE4) { document.body.insertAdjacentHTML('beforeEnd', ''); ref = getSty('menu' + currMenu + 'div'); } if (isNS4) { ref = new Layer(0); ref.document.write(str); ref.document.close(); } for (currItem = 1; currItem < menu[currMenu].length; currItem++) { itemName = 'menu' + currMenu + 'item' + currItem; if (isDOM || isIE4) menu[currMenu][currItem].ref = getSty(itemName); if (isNS4) menu[currMenu][currItem].ref = ref.document[itemName]; } } with(menu[0][0]) { ref.left = x; ref.top = y; ref.visibility = 'visible'; } } var menu = new Array(); var defOver = '#EDECB0', defBack = '#F2F2E7'; var defLength = 22; menu[0] = new Array(); menu[0][0] = new Menu(false, '', 10, 80, 10, '#ECF2E0', '', '', 'mainmenu'); menu[0][1] = new Item(' | About Us', '/mission.asp', 'mainmenu', 106, 5, 1); menu[0][2] = new Item(' | What We Do', '/what_we_do.asp', '', 106, 5, 2); menu[0][3] = new Item(' | About Coffee', '/coffee_story.asp', '', 106, 5, 3); menu[0][4] = new Item(' | Statistics', '/coffee_prices.asp', '', 106, 5, 4); menu[0][5] = new Item(' | Meetings/Events', '/ico_meetings.asp', '', 106, 5, 5); menu[0][6] = new Item(' | Contact Us', '/contacts.asp', '', 106, 5, 6); menu[0][7] = new Item(' | ED\'s Office', '/news.asp', '', 106, 5, 7); menu[1] = new Array(); menu[1][0] = new Menu(true, '', 0, 22, 150, defOver, defBack, 'borderclass', 'mainmenu2'); menu[1][1] = new Item(' Mission', '/mission07_e.asp', '', defLength, 0, 0); menu[1][2] = new Item(' 2007 Agreement', '/ica2007.asp', '', defLength, 0, 9); menu[9] = new Array(); menu[9][0] = new Menu(true, '', 156, 0, 150, defOver, defBack, 'borderclass', 'mainmenu2'); menu[9][1] = new Item(' 2007 Agreement', 'http://www.ico.org/ica2007.asp', '', defLength, 0, 0); menu[9][2] = new Item(' Depositary/membership', '/depositary_e.asp', '', defLength, 0, 0); menu[9][3] = new Item(' Benefits of membership', '/Benefits_ICA2007.asp', '', defLength, 0, 0); menu[1][3] = new Item(' Members', '/members_e.asp', '', defLength, 0, 0); menu[1][4] = new Item(' Office Holders', '/officeholders_e.asp', '', defLength, 0, 0); menu[1][5] = new Item(' Executive Director', '/ed_e.asp', '', defLength, 0, 0); menu[1][6] = new Item(' Governance', '/governance_e.asp', '', defLength, 0, 0); menu[1][7] = new Item(' History', '/icohistory_e.asp', '', defLength, 0, 0); menu[1][8] = new Item(' Annual Review', '/annual_review.asp', '', defLength, 0, 0); menu[2] = new Array(); menu[2][0] = new Menu(true, '', 0, 22, 150, defOver, defBack, 'borderclass', 'mainmenu2'); menu[2][1] = new Item(' Good Hygiene Practices', '/projects/Good-Hygiene-Practices/cnt/splashx.html', '', defLength, 0, 0); menu[2][2] = new Item(' Public-Private Partnerships', '/coffee-public-private-partnerships.asp', '', defLength, 0, 0); menu[2][3] = new Item(' Projects', '/what_we_do.asp', '', defLength, 0, 0); menu[2][4] = new Item(' Improving Quality', '/improving_quality.asp', '', defLength, 0, 0); menu[2][5] = new Item(' Promotion', '/promotion_e.asp', '', defLength, 0, 0); menu[2][6] = new Item(' Sustainable coffee', '/sustaindev_e.asp', '', defLength, 0, 0); menu[2][7] = new Item(' Diversification', '/diversification.asp', '', defLength, 0, 0); menu[2][8] = new Item(' Consultations', '/consultations_e.asp', '', defLength, 0, 0); menu[2][9] = new Item(' Private sector', '/private_sector.asp', '', defLength, 0, 0); menu[2][10] = new Item(' Library & Information', '/information_services.asp', '', defLength, 0, 0); menu[2][11] = new Item(' Disseminating knowledge', '/knowledge_e.asp', '', defLength, 0, 0); menu[2][12] = new Item(' Food Safety', '/fdsafety_e.asp', '', defLength, 0, 0); menu[3] = new Array(); menu[3][0] = new Menu(true, '', 0, 22, 150, defOver, defBack, 'borderclass', 'mainmenu2'); menu[4] = new Array(); menu[4][0] = new Menu(true, '', 0, 22, 150, defOver, defBack, 'borderclass', 'mainmenu2'); menu[4][1] = new Item(' Coffee Prices', '/coffee_prices.asp', '', defLength, 0, 0); menu[4][2] = new Item(' Historical Data', '/new_historical.asp', '', defLength, 0, 0); menu[4][3] = new Item(' Trade Statistics Tables', '/trade_statistics.asp', '', defLength, 0, 0); menu[4][4] = new Item(' About Statistics', '/about_statistics.asp', '', defLength, 0, 0); menu[5] = new Array(); menu[5][0] = new Menu(true, '', 0, 22, 150, defOver, defBack, 'borderclass', 'mainmenu2'); menu[5][1] = new Item(' Council Documents', 'http://www.ico.org/documents_e.asp', '', defLength, 0, 0); menu[5][2] = new Item(' International Coffee Day', 'http://www.internationalcoffeeday.org', '', defLength, 0, 0); menu[5][3] = new Item(' Global Coffee Forum', 'http://www.ico.org/global-coffee-forum.asp', '', defLength, 0, 0); menu[5][4] = new Item(' The Coffee Sessions', 'http://www.ico.org/thecoffeesessions.asp', '', defLength, 0, 0); menu[5][5] = new Item(' World Coffee Conferences', '/wconference.asp', '', defLength, 0, 0); menu[5][6] = new Item(' Seminars & Workshops', '/workshop.asp', '', defLength, 0, 0); menu[5][7] = new Item(' Calendar: Global Coffee Events', 'http://www.ico.org/other_events.asp', '', defLength, 0, 0); menu[5][8] = new Item(' Calendar: ICO Events', '/ico_meetings.asp', '', defLength, 0, 0); menu[5][9] = new Item(' Consultative Forum on Coffee Sector Finance', '', '', defLength, 0, 12); menu[12] = new Array(); menu[12][0] = new Menu(true, '', 156, 0, 150, defOver, defBack, 'borderclass', 'mainmenu2'); menu[12][1] = new Item(' 9th Consultative Forum', '/forum9-e.asp', '', defLength, 0, 0); menu[12][2] = new Item(' 8th Consultative Forum', '/forum8-e.asp', '', defLength, 0, 0); menu[12][3] = new Item(' 7th Consultative Forum', '/forum7-e.asp', '', defLength, 0, 0); menu[12][4] = new Item(' 6th Consultative Forum', '/forum6-e.asp', '', defLength, 0, 0); menu[12][5] = new Item(' 5th Consultative Forum', '/forum5-e.asp', '', defLength, 0, 0); menu[12][6] = new Item(' 4th Consultative Forum', 'http://www.ico.org/forum4-e.asp', '', defLength, 0, 0); menu[12][7] = new Item(' 3rd Consultative Forum', 'forum3-e.asp', '', defLength, 0, 0); menu[12][8] = new Item(' 2nd Consultative Forum', '/forum2-e.asp', '', defLength, 0, 0); menu[12][9] = new Item(' 1st Consultative Forum', '/forum1-e.asp', '', defLength, 0, 0); menu[6] = new Array(); menu[6][0] = new Menu(true, '', 0, 22, 150, defOver, defBack, 'borderclass', 'mainmenu2'); menu[6][1] = new Item(' Getting to the ICO', '/find_us.asp', '', defLength, 0, 0); menu[6][2] = new Item(' ICO staff', '/ico_staff.asp', '', defLength, 0, 0); menu[6][3] = new Item(' Media enquiries', '/media_enquiries.asp', '', defLength, 0, 0); menu[6][4] = new Item(' Vacancies', '/Vacancy_ICO.asp', '', defLength, 0, 0); menu[6][5] = new Item(' ICO Internship Programme', '/ICO_Internship_Programme.asp', '', defLength, 0, 0); menu[6][6] = new Item(' Links', '/links_e.asp', '', defLength, 0, 0); menu[6][7] = new Item(' FAQs', '/faq.asp', '', defLength, 0, 0); menu[7] = new Array(); menu[7][0] = new Menu(true, '', 0, 22, 150, defOver, defBack, 'borderclass', 'mainmenu2'); var popOldWidth = window.innerWidth; nsResizeHandler = new Function('if (popOldWidth != window.innerWidth) location.reload()'); if (isNS4) document.captureEvents(Event.CLICK); document.onclick = clickHandle; function clickHandle(evt) { if (isNS4) document.routeEvent(evt); hideAllBut(0); } function moveRoot() { with(menu[0][0].ref) left = ((parseInt(left) < 100) ? 100 : 5); }