function Layout_Base() { this.loaded = 0; this.root = ""; this.menus = new Array(); this.menus[0] = new Array("cars",124,145); this.menus[1] = new Array("trucks",124,145); this.menus[2] = new Array("vans",124,145); this.menus[3] = new Array("utility",124,145); this.menus[4] = new Array("info",234,145); this.submenus = []; this.shl = new Array("",""); this.hl = []; this.lt = []; this.ko = []; } function layout_base_initialize() { with (this) { if (Site.loaded == 1) { loaded = 1; root = "http://www.rossfraser.ca/"; Site.layout_w = 983; Layout.Align(); } else { window.setTimeout('Layout.Initialize()',10); } } } function layout_base_align(d,y,x,v,h) { with (this) { if (loaded == 1) { Site.Align(null,0,0,'','',0); Site.Align($('layout_logo'),0,0,'top','layout'); Site.Align($('layout_vehicles'),120,7,'top','layout'); Site.Align($('layout_contact'),0,362,'top','layout'); Site.Align($('layout_info'),230,7,'top','layout'); Site.Align($('layout_home'),252,7,'top','layout'); Site.Align($('layout_view_product'),94,192,'top','layout'); Site.Align($('layout_view_info'),94,192,'top','layout'); Site.Align($('layout_gradient'),0,0,'top','layout'); Site.Align($('layout_building'),0,0,'top','layout'); Site.Align($('layout_body'),0,0,'top','layout'); } } } function layout_base_menu(d) { var name = ""; var num = -1; var vehicles = new Array("cars","trucks","vans","utility","info"); var keep_open = 0; with (this) { if (loaded == 1) { d.style.cursor = "pointer"; if (d.id && $('layout_menus')) { for (i = 0; i < vehicles.length; i++) { if ($('layout_submenu_'+vehicles[i])) { $('layout_submenu_'+vehicles[i]).style.visibility = "hidden"; $('layout_submenu_'+vehicles[i]).style.display = "none"; } } name = (d.id.search(/rf_/gi) != -1 ? d.id.substr('rf_'.length,d.id.length) : ""); for (i = 0; i < menus.length; i++) { if ($('layout_menu_'+menus[i][0])) { $('layout_menu_'+menus[i][0]).style.visibility = "hidden"; $('layout_menu_'+menus[i][0]).style.display = "none"; } if (menus[i][0] == name && num == -1) { num = i; } } if (name != "" && $('layout_menu_'+name)) { $('layout_menu_'+name).style.visibility = "visible"; $('layout_menu_'+name).style.display = "inline"; for (i = 0; i < vehicles.length; i++) { if (name == vehicles[i]) { keep_open = 1; } else { if (ko[vehicles[i]]) { ko[vehicles[i]] = 0; //Highlight(vehicles[i]); } } } if (keep_open == 1) { ko[name] = 1; } } Site.Align($('layout_menus'),menus[num][1],menus[num][2],'top','layout'); $('layout_menus').style.visibility = "visible"; $('layout_menus').style.display = "inline"; } } } } function layout_base_submenu(menu,brand,d) { var name = ""; var num = -1; var vehicles = new Array("cars","trucks","vans","utility"); var keep_open = 0; with (this) { if (loaded == 1) { d.style.cursor = "pointer"; if (d.id && $('layout_menus') && $('layout_menu_'+menu) && $('product_listings_'+menu)) { for (i in submenus) { submenus[i] = 0; } submenus[d.id] = 1; $('product_listings_'+menu).src = "http://www.rossfraser.ca/listings.php?v="+menu+"&b="+brand; $('layout_submenu_'+menu).style.visibility = 'visible'; $('layout_submenu_'+menu).style.display = 'inline'; shl = new Array(d.id,menu); BrandLight(); } } } } // b = brand item id // sm = submenu name function layout_base_brandlight() { with (this) { if (loaded == 1) { if (shl[0] != "") { if ($(shl[0])) { for (i in submenus) { $(i).style.color = '#FFFFFF'; $(i).style.backgroundImage = 'url()'; } if ($('layout_submenu_'+shl[1]).style.visibility == "visible") { $(shl[0]).style.cursor = 'pointer'; $(shl[0]).style.color = '#101D3A'; $(shl[0]).style.backgroundImage = 'url(http://x.rossfraser.ca/layout/default/nav/menu/brand_item_bg.png)'; window.setTimeout('Layout.BrandLight()',50); } else { $(shl[0]).style.color = '#FFFFFF'; $(shl[0]).style.backgroundImage = 'url()'; shl = new Array("",""); } } } } } } function layout_base_infolight(info) { var vehicles = new Array("cars","trucks","vans","utility"); with (this) { if (loaded == 1) { for (i = 0; i < vehicles.length; i++) { if ($('layout_submenu_'+vehicles[i])) { $('layout_submenu_'+vehicles[i]).style.visibility = "hidden"; $('layout_submenu_'+vehicles[i]).style.display = "none"; } } if (info.style.backgroundImage == "") { info.style.cursor = 'pointer'; info.style.color = '#101D3A'; info.style.backgroundImage = 'url(http://x.rossfraser.ca/layout/default/nav/menu/brand_item_bg.png)'; } else { info.style.color = '#FFFFFF'; info.style.backgroundImage = ''; } } } } function layout_base_viewproduct(id) { with (this) { if (loaded == 1) { if (id > -1) { $('layout_home').style.visibility = "visible"; $('layout_home').style.display = "inline"; $('layout_building').style.opacity = 0.3; $('layout_building').style._moz_opacity = 0.3; $('layout_menus').style.visibility = "hidden"; $('layout_menus').style.display = "none"; // "close" all menus // ---------------------------- for (i = 0; i < menus.length; i++) { if ($('layout_menu_'+menus[i][0])) { $('layout_menu_'+menus[i][0]).style.visibility = "hidden"; $('layout_menu_'+menus[i][0]).style.display = "none"; if (ko[menus[i][0]]) { ko[menus[i][0]] = 0; hl[menus[i][0]] = 1; Highlight(menus[i][0]); } } } // Hide the Company Info window // ----------------------------------- $('layout_view_info').style.visibility = "hidden"; $('layout_view_info').style.display = "none"; $('info_view').src = ""; $('layout_view_product').style.visibility = "visible"; $('layout_view_product').style.display = "inline"; $('product_view').src = "http://www.rossfraser.ca/view.php?id="+id; } if (id == -1) { $('layout_home').style.visibility = "hidden"; $('layout_home').style.display = "none"; $('layout_building').style.opacity = 1; $('layout_building').style._moz_opacity = 1; $('layout_view_product').style.visibility = "hidden"; $('layout_view_product').style.display = "none"; $('product_view').src = ""; ViewInfo(''); } } } } function layout_base_viewinfo(page) { with (this) { if (loaded == 1) { if (page != "") { $('layout_home').style.visibility = "visible"; $('layout_home').style.display = "inline"; $('layout_building').style.opacity = 0.3; $('layout_building').style._moz_opacity = 0.3; $('layout_menus').style.visibility = "hidden"; $('layout_menus').style.display = "none"; // "close" all menus // ---------------------------- for (i = 0; i < menus.length; i++) { if ($('layout_menu_'+menus[i][0])) { $('layout_menu_'+menus[i][0]).style.visibility = "hidden"; $('layout_menu_'+menus[i][0]).style.display = "none"; if (ko[menus[i][0]]) { ko[menus[i][0]] = 0; hl[menus[i][0]] = 1; Highlight(menus[i][0]); } } } // Hide the Product Info window // ----------------------------------- $('layout_view_product').style.visibility = "hidden"; $('layout_view_product').style.display = "none"; $('product_view').src = ""; $('layout_view_info').style.visibility = "visible"; $('layout_view_info').style.display = "inline"; $('info_view').src = "http://www.rossfraser.ca/"+page+".php"; } if (page == "") { $('layout_home').style.visibility = "hidden"; $('layout_home').style.display = "none"; $('layout_building').style.opacity = 1; $('layout_building').style._moz_opacity = 1; $('layout_view_info').style.visibility = "hidden"; $('layout_view_info').style.display = "none"; $('info_view').src = ""; } } } } function layout_base_staffmenu(d,n,left) { var exists = false; with (this) { if (loaded == 1) { for (i = 0; i < menus.length; i++) { if (menus[i][0] == "staff_"+n && exists === false) { exists = true; } } if (exists === false) { menus[menus.length] = new Array("staff_"+n,189,left); } Menu(d); } } } function layout_base_menuitem(d,c) { var opt = ""; with (this) { if (loaded == 1) { if (d) { if (c != undefined) { opt = (c == "image" ? "image" : (c != "" ? "color" : "")); } if (d.style.cursor != "pointer") { d.style.cursor = "pointer"; if (opt != "image") { if (opt != "color") { d.style.backgroundColor = "#554130"; } else { d.style.backgroundColor = c; } d.style.color = "#FFFFFF"; } } else { d.style.cursor = ""; if (opt != "image") { d.style.backgroundColor = ""; if (opt != "color") { d.style.color = "#554130"; } else { d.style.color = c; } } } } } } } function layout_base_highlight(item) { var src = ""; var slice = 0; var file = ""; var vehicles = new Array("cars","trucks","vans","utility","info"); var keep_open = 0; var is_vehicle = 0; with (this) { if (loaded == 1) { if ($("rf_"+item)) { // Keep this item highlighted? (if related menu is open) // -------------------------- if (ko[item]) { if (ko[item] == 1) { keep_open = 1; } } // Is this a "vehicle" menu item? // -------------------------- for (i = 0; i < vehicles.length; i++) { if (item == vehicles[i]) { is_vehicle = 1; } else { if (hl[vehicles[i]]) { if (hl[vehicles[i]] == 1) { ko[vehicles[i]] = 0; Highlight(vehicles[i]); } } } } if (keep_open == 0) { if (hl[item]) { hl[item] = (hl[item] == 1 ? 0 : 1); } else { hl[item] = 1; } if (is_vehicle == 0) { slice = ($("rf_"+item).src.length - (hl[item] == 0 ? (item+"1.png").length : (item+".png").length)); src = $("rf_"+item).src.substr(0,slice) + (hl[item] == 1 ? item+"1.png" : item+".png"); } else { if (hl[item] == 0) { src = $("rfh_"+item).value; } else { slice = ($("rfh_"+item).value.length - (item+".png").length); src = $("rfh_"+item).value.substr(0,slice) + item+"1.png"; } } $("rf_"+item).src = src; $("rf_"+item).style.cursor = (hl[item] == 1 ? "pointer" : ""); } else { $("rf_"+item).style.cursor = "pointer"; } } } } } function layout_base_lighttext(id,oc,nc,tc) { with (this) { if (loaded == 1) { if ($("lt-"+id)) { if (lt[id]) { lt[id][0] = (lt[id][0] == 1 ? 0 : 1); } else { lt[id] = new Array(1,oc,nc,tc,(tc == "#000000" || tc == "" ? "#FFFFFF" : "#000000")); } $("lt-"+id).style.backgroundColor = (lt[id][0] == 1 ? lt[id][2] : lt[id][1]); for (i = 1; i < 11; i++) { if ($("lt-"+id+"-text-"+i)) { $("lt-"+id+"-text-"+i).style.color = (lt[id][0] == 1 ? lt[id][4] : lt[id][3]); } } } } } } function layout_base_mouse(ev) { with (this) { if (loaded == 1) { // Check to see if a navigation menu is open, // and if it is, check to see if the mouse is a certain distance away // (and if it is, close the menu) // --------------------------------- if ($('layout_menus')) { if ($('layout_menus').style.visibility == "visible") { if (ev.clientX < ($('layout_menus').offsetLeft - 138) || ev.clientX > ($('layout_menus').offsetLeft + $('layout_menus').scrollWidth + 30) || ev.clientY > ($('layout_menus').offsetTop + $('layout_menus').scrollHeight + 100)) { $('layout_menus').style.visibility = "hidden"; $('layout_menus').style.display = "none"; // "close" all menus // ---------------------------- for (i = 0; i < menus.length; i++) { if ($('layout_menu_'+menus[i][0])) { $('layout_menu_'+menus[i][0]).style.visibility = "hidden"; $('layout_menu_'+menus[i][0]).style.display = "none"; if (ko[menus[i][0]]) { ko[menus[i][0]] = 0; hl[menus[i][0]] = 1; Highlight(menus[i][0]); } } } } } } } } } Layout_Base.prototype.Initialize = layout_base_initialize; Layout_Base.prototype.Align = layout_base_align; Layout_Base.prototype.Menu = layout_base_menu; Layout_Base.prototype.SubMenu = layout_base_submenu; Layout_Base.prototype.BrandLight = layout_base_brandlight; Layout_Base.prototype.InfoLight = layout_base_infolight; Layout_Base.prototype.ViewProduct = layout_base_viewproduct; Layout_Base.prototype.ViewInfo = layout_base_viewinfo; Layout_Base.prototype.StaffMenu = layout_base_staffmenu; Layout_Base.prototype.MenuItem = layout_base_menuitem; Layout_Base.prototype.Highlight = layout_base_highlight; Layout_Base.prototype.LightText = layout_base_lighttext; Layout_Base.prototype.Mouse = layout_base_mouse; var Layout = new Layout_Base(); Layout.Initialize();