﻿/* ty_v9_javascript_core */

var G = { gecko: navigator.product == 'Gecko',
    ie6: (!!document.all && !(typeof window.XMLHttpRequest == 'object')),
    init: function() { for (var n in G) if (G[n].init) G[n].init() },
    set: function(a, b) { for (var o in b) a[o] = b[o]; return a },
    create: function(a, b, c, d) { var o = (d || document).createElement(a); G.set(o, b); G.set(o.style, c); return o },
    append: function(a, b, c, d) { var o = b.tagName ? b : G.create(b, c, d, a.ownerDocument); a.appendChild(o); return o },
    time: function() { return new Date().getTime() },
    fn: function(a) { return (0.5 - Math.cos(a * Math.PI) / 2) },
    middle: function(o, a, b) { o = o.split(a); return (o.length < 2) ? '' : o[1].split(b)[0] },
    pos: function(a) { var x = 0, y = 0; if (a.y) return { x: a.x, y: a.y }; while (a != null) { x += a.offsetLeft; y += a.offsetTop; a = a.offsetParent }; return { x: x, y: y} },
    stop: function(a) { if (a) { clearTimeout(a); a = null } },
    sub: function(a, b, c) { var o = a.split(b); return (o.length > 1) ? o[1].split(c)[0] : '' },
    remove: function(a) { var o = a.tagName ? a : Tme.get(a); o.parentNode.removeChild(o) },
    absTop: function(a) { var y = 0; if (a.y) return a.y; while (a != null) { y += a.offsetTop; a = a.offsetParent }; return y },
    absLeft: function(a) { var x = 0; if (a.x) return a.x; while (a != null) { x += a.offsetLeft; a = a.offsetParent }; return x }
}
function $(a) { return document.getElementById(a) }
function $$(a, b) { return (b || document).getElementsByTagName(a) }
window.onload = G.init

G.sifr = { movie: 'inc/toyota-display.swf',
    init: function() {
        var m = this, o = $('hdrt'), cc
        m.set($('ftitle'), { css: '.sIFR-root{color:#ffffff;font-weight:bold}', size: 32, offsettop: -5 })
        if (o) {
            cc = 'e50000'
            switch ($$('body')[0].className) {
                case 'urban-iq': cc = '92539a'; break
                case 'urban-aygo': cc = 'c90123'; break
                case 'urban-cruiser': cc = '009ee0'; break
                case 'life': cc = 'ae9f6d'; break
                case 'recreation': cc = '7e6f5d'; break
                case 'energy': cc = '5cbac8'; break
                case 'together': cc = 'c47e3d'; break
                case 'work': cc = '808b83'; break
            }
            m.set($('hdrt'), { css: '.sIFR-root{color:#999999;font-weight:bold;text-align:right}strong{color:#' + cc + '}', size: 16, offsettop: -2, thickness: 20 })
        }
    },
    set: function(a, b) {
        var m = this, o, v = [], p; if (!a) return
        o = { movie: m.movie, height: a.offsetHeight, width: a.offsetWidth }
        for (p in b) v.push(p + '=' + b[p])
        v.push('content=' + a.innerHTML.replace(/&amp;/g, '%26'))
        v.push('version=beta2')
        v.push('width=' + o.width)
        v.push('height=' + o.height)
        o.flashvars = v.join('&amp;')
        a.style.visibility = 'visible'
        G.flash.render([o, a])
    }
}

/* newsticker */
G.ticker = { speed: 50, delay: 2000, lines: [], num: 0, chars: 0,
    init: function() {
        var m = this, os = $('nws'), v, i, ph, pn; if (!os) return
        v = $$('a', $('nwsi')); for (i = 0; i < v.length; i++) m.lines.push({ href: v[i].href, label: v[i].innerHTML })
        v = $$('li', $('nwsi')); for (i = 0; i < v.length; i++) G.set(v[i], { onmouseover: m.over, onmouseout: m.out })
        v[v.length - 1].style.padding = 0
        G.append($('cnv'), m.makeDiv()); m.y = os.offsetTop - 110
        G.set($('nwst'), { onmouseover: m.tOver, onmouseout: m.tOut, onclick: m.tClick })
        m.render()
    },
    makeDiv: function() { var m = this, o = m.hDiv = G.create('div', { id: 'nwsIm' }); m.img = G.append(o, 'img', { src: '' }); G.append(o, 'div', { innerHTML: '&nbsp;' }); return o },
    render: function() {
        var m = G.ticker, p = m.lines[m.num], d = m.speed
        if (m.chars > p.label.length) { m.chars = 0; m.num++; if (m.num >= m.lines.length) m.num = 0; d = m.delay }
        else $('nwst').innerHTML = p.label.substring(0, m.chars++)
        m.timer = setTimeout(m.render, d)
    },
    expand: function() { var m = G.ticker, q = m.expanded; $('nws').className = q ? '' : 'exp'; m.expanded = !q },
    over: function() { var m = G.ticker, o = m.hDiv, p = this; m.img.src = $$('img', p)[0].src; G.set(o.style, { top: m.y + p.offsetTop + 'px', display: 'block' }) },
    out: function() { G.ticker.hDiv.style.display = 'none' },
    tOver: function() {
        var m = G.ticker, p = $$('li', $('nwsi'))[m.num]
        $('nwst').className = 'hover'
        m.img.src = $$('img', p)[0].src
        G.set(m.hDiv.style, { top: m.y + p.offsetTop + 'px', display: 'block' })
        clearTimeout(m.timer)
        $('nwst').innerHTML = m.lines[m.num].label
    },
    tOut: function() { var m = G.ticker; $('nwst').className = ''; m.out(); m.render() },
    tClick: function() { var m = G.ticker; document.location = m.lines[m.num].href }
}


/* spotlight ads */
G.ads = {
    init: function() {
        var m = this, o = $('ads'), i, q = 0, p, v = [0, 0, 0], pp; if (!o) return
        o = $$('li', o); if (o.length < 4) return
        if ($('adU')) {
            m.set = 0; m.num = o.length; m.max = parseInt(m.num / 3)
            for (i = 0; i < o.length; i++) { p = o[i].offsetHeight; if (p > q) q = p }
            $('ad2').style.height = q + 'px'
            $('adU').style.position = 'absolute'
            $('adM').innerHTML = m.max + 1
        } else {
            for (i = 0; i < o.length; i++) { p = o[i].offsetHeight; pp = parseInt(i / 3); if (p > v[pp]) v[pp] = p }
            m.min = v[0]; $('ad2').style.height = v[0] + 'px'
            for (i = 0; i < o.length; i++) o[i].style.height = v[parseInt(i / 3)] + 'px'
        }
        $('adN').style.display = 'block'
    },
    go: function(a) {
        var m = G.ads, v = m.set + a, x = v * 3 * 194, xx; if (v < 0 || v > m.max) return
        xx = m.num - v * 3; if (xx < 3) x -= (3 - xx) * 194
        m.set = v
        $('adP').innerHTML = v + 1
        $('adL').className = (v > 0) ? 'on' : ''
        $('adR').className = (v < m.max) ? 'on' : ''
        m.move(-x)
    },
    move: function(a) {
        var m = G.ads, o = $('adU')
        G.set(o, { h1: o.offsetLeft, h2: a, start: G.time(), end: 400 })
        o.step = function() {
            var t = G.time() - o.start, q, g, g2
            if (t > o.end) { o.style.left = o.h2 + 'px'; clearInterval(o.timer); o.timer = null }
            else { q = G.fn(t / o.end); o.style.left = parseInt(o.h1 + q * (o.h2 - o.h1)) + 'px' }
        }
        o.timer = setInterval(o.step, 10)
    },
    drop: function(a) {
        var m = G.ads, o = $('ad2'), mm = o.scrollHeight
        G.set(o, { h1: a ? m.min : mm, h2: a ? mm : m.min, start: G.time(), end: 400 })
        $('adDD').style.display = a ? 'none' : 'block'
        $('adDU').style.display = a ? 'block' : 'none'
        o.step = function() {
            var t = G.time() - o.start, q, g, g2
            if (t > o.end) { o.style.height = o.h2 + 'px'; clearInterval(o.timer); o.timer = null }
            else { q = G.fn(t / o.end); o.style.height = parseInt(o.h1 + q * (o.h2 - o.h1)) + 'px' }
        }
        o.timer = setInterval(o.step, 10)
    }
}

G.search = {
    open: function() { G.set($('srch').style, { left: $('cnv').offsetLeft + 421 + 'px', display: 'block' }) },
    close: function() { $('srch').style.display = 'none' }
}

/* navigation */
G.nav = { timer: null, base: 'Menu/',
    init: function() {
        var m = this, qn = $('nav'), q, i, o, n
        if (!qn) return
        m.sub = G.append(document.body, 'iframe', { frameBorder: 0, allowTransparency: 'true' })
        m.doc = (m.sub.contentWindow || m.sub).document; if (!m.doc) return
        m.doc.write('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html><head></head><body></body></html>')
        m.doc.close()
        G.append($$('head', m.doc)[0], 'link', { rel: 'stylesheet', type: 'text/css', href: m.base + 'ty-v9-dropdown.css' })
        o = m.body = $$('body', m.doc)[0]
        m.div = G.append(o, 'div', { id: 'dd-1' })
        m.strip = G.append(o, 'div', { id: 'dds' })
        G.append(o, 'div', { id: 'dd-2' })
        m.set(o, m.subover, m.out)
        if (!window.JsTopMenu) return
        q = $$('a', qn); n = q.length
        for (i = 0; i < n; i++) {
            m.set(q[i], m.over, m.out, i)
            if (q[i].className == 'on') m.subm = JsTopMenu[i].children
        }
        m.max = n - 1
        if (!m.sub) return
        qn = $('subnav'); if (!qn) return
        if (qn.className == 'final') return
        m.prepareSub()
        q = $$('a', qn); n = q.length; for (i = 0; i < n; i++) m.set(q[i], m.over2, m.out, i)
    },
    prepareSub: function() {
        var m = this, o = m.subm, v = $$('a', $('subnav'))[0].innerHTML, i, vv = []
        for (i = 0; i < o.length; i++) {
            if (o[i].label == v) { m.group = i; i = o.length }
        }
    },
    set: function(a, b, c, d) { G.set(a, { onmouseover: b, onmouseout: c, index: d }) },
    over2: function() {
        var m = G.nav, q = this
        var intGroup = (m.group == null) ? 0 : m.group;
        var o = m.subm[intGroup + q.index].children, i, pos = G.pos(q), x = pos.x - 1, y = pos.y + 32; if (!o) return
        G.stop(m.timer)
        if ($('subnav').className == 'dbh') y += 13
        if (m.xx) m.xx.className = m.orig
        m.xx = q; m.orig = q.className; q.className = 'on'
        m.div.innerHTML = ''
        m.body.className = 'nav2'
        G.set(m.sub.style, { top: y + 'px', left: x + 'px' })
        for (i = 0; i < o.length; i++) G.append(m.div, m.item(o[i]))
        G.set(m.sub.style, { height: 0, display: 'block' })
        m.drop()
    },
    over: function() {
        var m = G.nav, q = this, p = q.parentNode, pos = G.pos(p), o, i, x = pos.x, y = pos.y + 30, w = p.offsetWidth - 2, s = 1, ss
        G.stop(m.timer)
        if (m.xx) m.xx.className = m.orig
        m.xx = q; m.orig = q.className; q.className = 'on'
        if (q.index > 0) {
            ss = $('cnv').offsetLeft
            if (x - ss > 634) { s = x - ss - 634; x = ss + 634 } else x -= 1
            m.strip.className = (q.index == m.max) ? 'x' : ''
            w += 1
        }
        G.set(m.sub.style, { top: y + 'px', left: x + 'px' })
        G.set(m.strip.style, { width: w + 'px', left: s + 'px' })
        m.body.className = ''
        m.div.innerHTML = ''
        o = JsTopMenu[q.index].children
        for (i = 0; i < o.length; i++) G.append(m.div, m.item(o[i]))
        G.set(m.sub.style, { height: 0, display: 'block' })
        m.drop()
    },
    subover: function() { G.stop(G.nav.timer) },
    out: function() { try { var m = G.nav; if (m.xx) m.timer = setTimeout(m.stop, 250) } catch (e) { } },
    stop: function() { var m = G.nav; m.xx.className = m.orig; G.stop(m.timer); m.sub.style.display = 'none' },
    item: function(a) {
        var o = G.nav.doc, n = null;
        return (a.label == '--SEPARATOR--') ? G.create('div', { innerHTML: '&nbsp;' }, n, o) : G.create('a', { href: a.url, target: (a.url.indexOf('#') > 0) ? '_blank' : '_parent', innerHTML: a.label }, n, o)
    },
    drop: function() {
        var m = G.nav, s = m.sub
        G.set(s, { h2: m.body.clientHeight + 1, start: G.time(), end: 350 })
        s.step = function() {
            var t = G.time() - s.start, q, g, g2
            if (t > s.end) { s.style.height = s.h2 + 'px'; G.stop(s.timer) }
            else { q = G.fn(t / s.end); s.style.height = parseInt(q * s.h2) + 'px' }
        }
        s.timer = setInterval(s.step, 10)
    }
}


/* homepage showroom */
G.shr = {
    init: function() {
        var m = this, o = $('nav-sr'), i, p, x, x0, x2; if (!o) return
        o = $$('a', o); p = o[o.length - 1]
        x = parseInt((770 - p.offsetLeft - p.offsetWidth) / o.length); x0 = parseInt(x / 2); x2 = parseInt(.5 + x / 2)
        for (i = 0; i < o.length - 1; i++) { G.nav.set(o[i], m.over, m.out, i); o[i].style.padding = '8px ' + x0 + 'px 11px ' + x2 + 'px' }
        if (!G.ie6) x = 770 - p.offsetLeft - p.offsetWidth; x0 = parseInt(x / 2); x2 = parseInt(.5 + x / 2)
        p.style.padding = '8px ' + x0 + 'px 11px ' + x2 + 'px'
        m.dd = $('cnav-dd')
        m.dds = $$('li', m.dd)
        o = $$('a', m.dd); for (i = 0; i < o.length; i++) o[i].target = '_parent'
    },
    over: function() {
        var m = G.shr, n = G.nav, p = this, pp = G.pos(p), x
        G.stop(n.timer)
        if (n.xx) n.xx.className = n.orig
        n.orig = p.className
        p.className = 'on'
        n.xx = p
        n.body.className = 'navc'
        n.div.innerHTML = m.dds[p.index].innerHTML
        if (p.offsetLeft + 196 > 770) pp.x = G.pos($('nav-sr')).x + 770 - 196
        G.set(n.sub.style, { top: pp.y + 32 + 'px', left: pp.x + 'px', height: '300px', display: 'block' })
    },
    out: function() { G.nav.timer = setTimeout(G.shr.stop, 250) },
    stop: function() { var n = G.nav; n.xx.className = n.orig; n.sub.style.display = 'none' }
}

G.fixnav = {
    init: function() {
        var o = $('nav'), p, i, tt = 0; if (!o) return
        p = $$('li', o)
        for (i = 0; i < p.length; i++) tt += p[i].offsetWidth
        //if(G.ie6)tt+=p.length*19
        o.style.width = tt + 'px'
    }
}

/* quick fixes dede demo */
var Tme = G
G.get = $

G.fix = {
    init: function() {
        var o = $('subnav'), i, v = 0; if (!o) return
        o = $$('a', o)
        for (i = 0; i < o.length; i++) v = (o[i].offsetHeight > v) ? o[i].offsetHeight : v
        if (v > 40) $('subnav').className = 'dbh'
    }
}

/* carconfig */
function open_fullscreen(lnk, wd, ht, wn, parms) {
    var strSb = 'scrollbars', strSt = 'status', strRsz = 'resizable', n = 'no', y = 'yes', s = screen, sw = s.availWidth - 0, sh = s.availHeight - 0, l, t, wp, sb = 'no'

    if (parms) { wp = parms; }
    else if (parms == undefined) { wp = strRsz + '=' + n + ', ' + strSb + '=' + n; }
    l = parseInt((sw - s.availWidth - 10) / 2); if (l < 0) { w = sw - 10; l = 0; sb = y }
    t = parseInt((sh - s.availHeight - 10) / 2); if (t < 0) { h = sh - 35; t = 0; sb = y }
    if (sb == y) {
        if (parms.indexOf(strSb) != -1) { wp = wp.replace((strSb + '=' + y), (strSb + '=' + y)) }
        else { wp += ', ' + strSb + '=' + y } 
    }

    if (wp.indexOf(strRsz + '=' + y) != -1) { wp += ',' + strSt + '=' + y; h = h - 26 }
    else { wp += ',' + strSt + '=' + n }

    window.open(lnk, wn, wp + ',width=' + w + ',height=' + h + ',left=' + l + ',top=' + t)
}

/* Form in overlayer (testdrive form) */
G.extForm = {
    launch: function(a, b) {
        var m = G.extForm, o = $('cta-include')
        if (!o || m.open == true) return
        G.append(o, 'iframe', { src: a, allowTransparency: 'true', frameBorder: '0' }, { width: '616px', height: (b || '300') + 'px' })
        o.style.display = 'block'
        m.open = true
    },
    close: function() { var m = G.extForm, o = $('cta-include'); o.innerHTML = ''; o.style.display = 'none'; m.open = false }
}


G.cta = {
    init: function() {
        var m = this, o = $$('a'), i, sDiv = false
        for (i = 0; i < o.length; i++) { if (o[i].className == 'cta') { o[i].onclick = m.launch; sDiv = true } }
        if (sDiv) m.div = G.append(document.body, 'div', { id: 'ctai' })
    },
    launch: function() {
        var m = G.cta, v = this.href, o = m.div
        G.append(o, 'iframe', { src: v, allowTransparency: 'true', frameBorder: '0' })
        o.style.display = 'block'
        $('cntop').scrollIntoView()
        return false
    },
    close: function() { var o = $('ctai'); o.innerHTML = ''; o.style.display = 'none' } 
}

G.flash = { items: [],
    init: function() { setTimeout(G.flash.exec, 200) },
    exec: function() {
        var m = G.flash, o = m.items, i; if (o.length < 1) return
        if (m._o.has('9.0.0')) for (i = 0; i < o.length; i++) m.render(o[i])
        else m.alert()
    },
    add: function(a, b) { this.items.push([a, b]) },
    render: function(a) {
        var v = [], q = G.set({ wmode: 'transparent', quality: 'high', AllowScriptAccess: 'always' }, a[0]), x, pp
        pp = location.search.substr(1); if (pp != '') q.flashvars += '&amp;' + pp
        if (G.gecko) q.flashvars += '&amp;agent=Firefox'
        v.push('<object type="application/x-shockwave-flash" width="' + q.width + '" height="' + q.height + '" data="' + q.movie + '">'); for (x in q) { switch (x) { case 'height': case 'width': break; default: v.push('<param name="' + x + '" value="' + q[x] + '" />') } }; v.push('</object>')
        if (a[1].tagName) a[1].innerHTML = v.join('\n')
        else try { $(a[1]).innerHTML = v.join('\n') } catch (e) { }
    },
    alert: function() {
        var m = this, o = m._o
        /*	flash auto update
        if(o.has('6.0.65')&&(o.ua.win||o.ua.mac)){m.render([{height:340,width:770,movie:'inc/expressInstall.swf',flashvars:'MMredirectURL='+location.href  },'flash1'])};else{} */
        G.extForm.launch('file://C:/_dev-2008-open/acc-model-disco/flash-detect/install-flash-popup.html')
    },
    _o: function() {
        var SF = "Shockwave Flash", SX = "ShockwaveFlash.ShockwaveFlash", win = window, D = document, B = navigator, N = null, F = false, T = true, i$ = function(a) { return typeof a != 'undefined' }; var ua = function() {
            var w3cdom = i$(D.getElementById) && i$(D.getElementsByTagName) && i$(D.createElement) && i$(D.appendChild) && i$(D.replaceChild) && i$(D.removeChild) && i$(D.cloneNode), playerVersion = [0, 0, 0], d = N;
            if (i$(B.plugins) && typeof B.plugins[SF] == 'object') { d = B.plugins[SF].description; if (d) { d = d.replace(/^.*\s+(\S+\s+\S+$)/, "$1"); playerVersion[0] = parseInt(d.replace(/^(.*)\..*$/, "$1"), 10); playerVersion[1] = parseInt(d.replace(/^.*\.(.*)\s.*$/, "$1"), 10); playerVersion[2] = /r/.test(d) ? parseInt(d.replace(/^.*r(.*)$/, "$1"), 10) : 0 } } else if (i$(win.ActiveXObject)) { var a = N, fp6Crash = F; try { a = new ActiveXObject(SX + ".7") } catch (e) { try { a = new ActiveXObject(SX + ".6"); playerVersion = [6, 0, 21]; a.AllowScriptAccess = "always" } catch (e) { if (playerVersion[0] == 6) { fp6Crash = T } }; if (!fp6Crash) { try { a = new ActiveXObject(SX) } catch (e) { } } }; if (!fp6Crash && a) { try { d = a.GetVariable("$version"); if (d) { d = d.split(" ")[1].split(","); playerVersion = [parseInt(d[0], 10), parseInt(d[1], 10), parseInt(d[2], 10)] } } catch (e) { } } }; var u = B.userAgent.toLowerCase(), p = B.platform.toLowerCase(), webkit = /webkit/.test(u) ? parseFloat(u.replace(/^.*webkit\/(\d+(\.\d+)?).*$/, "$1")) : F, ie = F, windows = p ? /win/.test(p) : /win/.test(u), mac = p ? /mac/.test(p) : /mac/.test(u); /*@cc_on; ie = true; @if(@_win32)windows = true; @elif(@_mac)mac=true;@end; @*/return { w3cdom: w3cdom, pv: playerVersion, webkit: webkit, ie: ie, win: windows, mac: mac}
        } (); function hasPlayerVersion(rv) { var pv = ua.pv, v = rv.split("."); v[0] = parseInt(v[0], 10); v[1] = parseInt(v[1], 10); v[2] = parseInt(v[2], 10); return (pv[0] > v[0] || (pv[0] == v[0] && pv[1] > v[1]) || (pv[0] == v[0] && pv[1] == v[1] && pv[2] >= v[2])) ? T : F }; return { get: function() { return { major: ua.pv[0], minor: ua.pv[1], release: ua.pv[2]} }, has: hasPlayerVersion, ua: ua}
    } ()
}

/* glossary popup */
function pop_glos(a) { window.open(a, 'popup_window', 'width=410,height=300,resizable=yes,scrollbars=yes') }

G.remote = {
    _: function() { var w = window; return w.XMLHttpRequest ? new XMLHttpRequest() : w.ActiveXObject ? new ActiveXObject('Microsoft.XMLHTTP') : null },
    get: function(a) { var r = this._(); r.open('GET', a, false); r.send(null); return r },
    post: function(a, b) { var r = this._(); r.open('POST', a, false); r.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); r.send(b); return r }
}

/* Ajax poll */
G.poll = {
    submit: function(a, b) {
        var m = G.poll, o = $('x' + a), v = ['resid=' + a], r
        if (b) v.push(m.getAnswer(o))
        r = G.remote.post(document.URL, v.join('&'))
        o.innerHTML = r.responseText
    },
    getAnswer: function(a, b) {
        var m = this, o = $$('input', a), i, q
        for (i = 0; i < o.length; i++) {
            q = o[i]
            if (q.type == 'radio') {
                if (q.checked) return (m.esc(q.name) + '=' + m.esc(q.value))
            }
        }
        return ('')
    },
    esc: function(a) { return encodeURIComponent(a) }
}


G.xlink = {
    init: function() {
        var o = $$('a'), i, p
        for (i = 0; i < o.length; i++) {
            p = o[i]
            if (p.className == 'external') G.set(p, { target: '_blank', title: 'New window: ' + (p.title || p.href) })
        }
    }
}


/* Overlayer */
G.ovl = { movies: {},
    init: function() {
        var m = this, s = G.sub(window.location.search, 'ovl=', '&')
        if (m.movies[s]) m.show(s)
    },
    showCurtain: function(a) {
        var m = G.ovl, o = $('overlayer')
        m.hideElements(a)
        if (G.ie6) o.style.width = document.body.clientWidth
        o.style.display = a ? 'block' : 'none'
    },
    hideElements: function(a) {
        var m = G.ovl, o = $$('select'), i, h = a ? 'hidden' : 'visible'
        for (i = 0; i < o.length; i++) o[i].style.visibility = h
    },
    show: function(a) {
        var m = G.ovl, o = m.movies[a], oo = $('ovl_flash'), ww, wh, v = ''
        window.scrollTo(0, 0);
        m.showCurtain(o.hide_page)
        if (o.flash_popup) {
            o.width = parseInt(o.width) + 2; o.height = parseInt(o.height) + 34
            o.flashvars += '&sub=' + o.file + '&title=' + o.title
            o.file = '/Images/flash_popup.swf'
            o.flash_popup = false
        }
        oo.style.width = o.width + 'px'
        oo.style.height = o.height + 'px'
        if (o.top) { oo.style.top = o.top + 'px' }
        else {
            wh = window.innerHeight | document.body.clientHeight
            oo.style.top = (wh - o.height) / 2 + 'px'
        }
        if (o.left) { oo.style.left = o.left + 'px' }
        else {
            ww = window.innerWidth | document.body.clientWidth
            oo.style.left = (ww - o.width) / 2 + 'px'
            if (G.gecko) oo.style.left = (((ww - o.width) / 2) - 8) + 'px'
        }
        G.flash.render([{ movie: o.file, height: o.height, width: o.width, flashvars: o.flashvars }, 'ovl_flash'], o.name)
        oo.style.display = 'block'
        m.current = o.name
        m.track('WT.cg_n=E_Overlayer&WT.pn=' + o.name + '&WT.pc=opened')
    },
    track: function(a) {
        var m = G.ovl, o = m.movies[m.current]
        if (o.webtrends && window.dcsTrk) dcsTrk('WT.cg_n=E_Overlayer&WT.pc=flash&WT.cg_s=' + o.name + '&WT.pn=' + a)
    },
    exec: function(command, args, target) {
        var o = G.ovl, oo = $('ovl_flash'), on = o.current, v, om = o.movies[on]
        switch (command) {
            case 'close':
                oo.innerHTML = '&nbsp;'
                oo.style.display = 'none'
                o.track('closed')
                o.current = ''
                if (om.hide_page) o.showCurtain(false)
                break
            case 'jump':
                o.track(args, target)
                document.location.href = args
                break
            case 'tag':
                o.track(args)
                break
            case 'moveTo':
                v = args.split(',')
                oo.style.left = v[0]
                oo.style.top = v[1]
                break
        }
    }
}
function ovl_do(command, args, target) { G.ovl.exec(command, args, target) }
function showOverLayer(fmn) { G.ovl.show(fmn) }


