
var curCat = cat1;
var curTrack = "";
var curVideo = '';
var curTab = "tab1";
var curID = "videoItem1";
var hasFile = false;
var return_xml = "";
var noflashHTML = '<img src="' + fullPath + 'videoplayer_assets_no-flash.jpg" style="border: 0px" alt="Get Adobe Flash Player" />';

function generateVideos(selectedCat, selectedTab, updatePlaylist) {
    var output = "<table id='videolistings' cellpadding='0' cellspacing='0'><tr>";
    var setVideo = false;
    $("#" + curTab).css("backgroundImage", "url(/usa-english/motoroil/images/videos/videoplayer_assets_" + curTab + "-off.gif)");
    $("#" + selectedTab).css("backgroundImage", "url(/usa-english/motoroil/images/videos/videoplayer_assets_" + selectedTab + "-on.gif)");
    curTab = selectedTab;
    $("#result").slideUp('slow', function() {

        curCat = selectedCat;
        if (updatePlaylist && !errorHit) {
            $f().stop();
            $("#videosplash").show();
        }

        var total = $(return_xml).find("video[category='" + curCat + "']").size();
        if (total > 0) {
            var subCatsAry = new Array();
            //find number of categories
            $(return_xml).find("video[category='" + curCat + "']").each(function(index) {
                var video = $(this);
                if (jQuery.inArray(video.attr("subcategory"), subCatsAry) == -1) {
                    subCatsAry.push(video.attr("subcategory"));
                }
            });

            $(subCatsAry).each(function(index) {//for each subcategory...
                //find number of elements in this subcategory
                var subcount = 0;
                total = $(return_xml).find("video[category='" + curCat + "'][subcategory='" + subCatsAry[index] + "']").size();
                output += "<tr><td style='width: 17px'>&nbsp;</td><td class=\"videoheader\" colspan=\"2\">";
                output += subCatsAry[index] + "</td></tr><tr><td style='width: 17px'>&nbsp;</td>";

                var half = Math.ceil(total / 2);
                $(return_xml).find("video[category='" + curCat + "'][subcategory='" + subCatsAry[index] + "']").each(function(index2) {
                    var video = $(this);
                    subcount += 1;
                    videoLink = "<a style='text-decoration: none; font-size: 10px;' id='videoLink" + video.attr("id").replace("videoItem", "") + "' onclick=\"return flipVid('" + videoPath + video.attr("filename") + "','" + video.attr("id") + "','" + video.attr("title").replace("'", "\\'") + "','" + video.attr("tracking") + "',true)\" href=\"" + videoPath + video.attr("filename") + "\">"
                    output += "<td><div id='" + video.attr("id") + "' class=\"videoblock\"><table cellpadding='0' cellspacing='0'><tr><td style='width: 91px'>" + videoLink;
                    output += "<img src=\"" + thumbPath + video.attr("thumb") + "\" alt=\"" + video.attr("description") + "\" title=\"" + video.attr("description") + "\" /></a></td><td>";
                    output += videoLink + "<b>" + video.attr("title") + "</b><br />";
                    output += video.attr("duration") + "</a></td></tr></table></div></td>";
                    if (index2 % 2 == 1)
                        output += "</tr><tr><td style='width: 17px'>&nbsp;</td>";
                    if (curVideo == '') { //does this the very first time the page loads
                        setVideo = true;
                        curVideo = videoPath + video.attr("filename");
                        curTrack = video.attr("tracking");
                        $("#videotitle").html(video.attr("title"));
                    }
                });
                if (subcount % 2 == 1) //fix odd counts
                    output += "<td></td>";
                output += "</tr>";
            });
        }
        else
            output += "<h2>No videos are available for this category yet.</h2>";
        output += "</td><td style=\"width: 17px\">&nbsp;</td></tr></table>";
        $("#result").html(output);
        $("#result").slideDown('slow');
        if (setVideo) $("#" + curID).css("backgroundImage", "url(/usa-english/motoroil/images/videos/videoplayer_assets_highlight.jpg)");
    });
}

function playNextVideo() {
    callTracking(curTrack, 0);
    var found = false;
    var done = false;
    $(return_xml).find("video[category='" + curCat + "']").each(function(index) {
        if (done == false) {
            var video = $(this);
            if (found == true) {
                var video = $(this);
                done = true;
                curVideo = videoPath + video.attr("filename");
                flipVid(curVideo, video.attr("id"), video.attr("title").replace("'", "\'"), video.attr("tracking"),false);
                $f().play();
            }
            if (curVideo == videoPath + video.attr("filename"))
                found = true;
        }
    });
    if (!done) {
        $f().stop();
        $("#videosplash").show();
        window.setTimeout(function() { $f().stop();}, 1000);
    }
}
function flipVid(filename, videoID, title, track, playIt) {
    if (errorHit) return false;
    $f().show(); 
    $("#emailPane").hide();
    $("#embedPane").hide();
    
    $("#videosplash").hide();
    curVideo = filename;
    if (videoID != "") {
        $("#" + curID).css("backgroundImage", "none");
        curID = videoID;
        $("#" + videoID).css("backgroundImage", "url(/usa-english/motoroil/images/videos/videoplayer_assets_highlight.jpg)");
    }
    if (track != "") {
        curTrack = track;
        callTracking(track, 1);
    }
    if (title != "")
        $("#videotitle").text(title);
    window.scrollTo(0, 0);
    if (playIt) {
        numericID = (videoID.toString().replace("videoItem", "") * 1);
        $f().play(numericID - 1);
        $f().play();
    }
    return false;
}
function embedIt() {

    $f().pause();
    $f().hide();
    $("#videosplash").hide();
    $("#emailPane").hide();
    
    var embedHTML = '<object width="480" height="270" id="_videoplayer" name="_videoplayer" data="'+
        fullPath+'flowplayer.unlimited-3.2.1.swf" type="application/x-shockwave-flash"><param name="wmode" value="opaque">'+
        '<param name="movie" value="'+fullPath+'flowplayer.unlimited-3.2.1.swf" /><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" />'+
        '<param name="flashvars" value=\'config={"src":"' + fullPath + 'flowplayer.unlimited-3.2.1.swf","wmode":"opaque","key":"cad70cb13c843627161","clip":{"autoPlay":false,"autoBuffering":true,' +
        '"url":"' + curVideo + '"},"canvas":{"backgroundColor":"#8f8f8c"},"screen":{"border":"2px solid #3f3f3d","width":478,"height":240,"top":1,"right":1},"plugins":{"customskin":{"url":"'+fullPath+'buttons_default.swf","type":"classLibrary"},"controls":{"skin":"customskin","bufferGradient":"none","backgroundColor":"#9eabb5","sliderGradient":"none","bufferColor":"#829098","progressGradient":"medium","durationColor":"#404040","progressColor":"#394952","backgroundGradient":[0.6,0.3,0,0,0],"volumeSliderGradient":"none","tooltipTextColor":"#ffffff","tooltipColor":"#5F747C","volumeSliderColor":"#000000","buttonOverColor":"#728B94","sliderColor":"#5f686e","borderRadius":"30px","buttonColor":"#3b3a3c","timeColor":"#404040","timeBgColor":"#9eabb5","height":24,"opacity":1,"volume":true}},' +
        '"play":{"url":"'+fullDomain+'usa-english/motoroil/images/videos/videoplayer_assets_play.png","opacity":0.8,"width":438,"height":235},"playlist":[{"autoPlay":false,"autoBuffering":true,"'+
        'url":"'+curVideo+'"}]}\' /></object>';
    
    $("#videoebed_embed").val(embedHTML);
    $("#embedPane").show();
    return false;
}
function tweetIt() {
    $f().pause();
    $("#embedPane").hide();
    $("#emailPane").hide();
    $f().show();
    var url = "http://twitter.com/home?status=" + getURL() + " ";
    window.open(url);
    return false;
}
function FBIt() {
    $f().pause();
    $("#embedPane").hide();
    $("#emailPane").hide();
    $f().show();
    var url = "http://www.facebook.com/sharer.php?u=" + getURL();
    window.open(url);
    return false;
}
function emailIt() {
    $f().pause();
    $f().hide(); 
    $("#videosplash").hide();
    $("#embedPane").hide();
    $("#emailPane").show();
    return false;
}
function finishEmail() {
    var url = "mailto:" + $("#videoemail_to").val() + "?subject=" + encodeURI($("#videoemail_subject").val()) + "&body=" + getURL() + "%0D%0A%0D%0A" + encodeURI($("#videoemail_message").val());
    location.href = url;
}
function getURL() {
    var curURL = location.href;
    if (location.href.indexOf('video=') == -1) {
        if (location.href.indexOf('?') == -1)
            curURL += "?video=" + curVideo.replace(videoPath, "");
        else
            curURL += "&video=" + curVideo.replace(videoPath, "");
    }
    else {
        if (location.href.indexOf('&') == -1)
            curURL = location.href.split("?")[0] + "?video=" + curVideo.replace(videoPath, "");
        else
            curURL = location.href.split("?")[0] + "?video=" + curVideo.replace(videoPath, "") + location.href.substring(location.href.indexOf("&"),1000);
    }

    if (curURL.indexOf("&cat") != -1)
        curURL = curURL.replace(/&cat=[1234]/, "");
    
    if (curCat == cat1)
        curURL += "&cat=1";
    else if (curCat == cat2)
        curURL += "&cat=2";
    else if (curCat == cat3)
        curURL += "&cat=3";
    else if (curCat == cat4)
        curURL += "&cat=4";
    
    return encodeURI(curURL).replace("&", "%26").replace("?", "%3F");
}
function findTracking(filename) {
    var found = ""
    $(return_xml).find("video").each(function(index) {
        var video = $(this);
        if (video.attr("filename") == filename) {
            found = video.attr("tracking");
        }
    });
    return found;
}
function findTitle(filename) {
    var found = ""
    $(return_xml).find("video").each(function(index) {
        var video = $(this);
        if (video.attr("filename") == filename) {
            found = video.attr("title").replace("'", "\'");
        }
    });
    return found;
}
function findCat(filename, cat) {
    if (cat == undefined)
        cat = "";
    var found = "";
    $(return_xml).find("video").each(function(index) {
        var video = $(this);
        if (video.attr("filename") == filename && found == "") {
            if (cat != "") {
                if (video.attr("category") == cat)
                    found = video.attr("category")
            }
            else
                found = video.attr("category");
            curID = video.attr("id");
        }
    });
    return found;
}
function callTracking(fullTrack, start) {
    if (fullTrack != "") {
        var fullURL = "www.mobiloil.com/USA-English/MotorOil/videos/" + fullTrack;
        if (start == 1)
            fullURL += "start.php";
        else
            fullURL += "finish.php";
        fullURL = fullURL.replace("\\\\", "\\");
        try {
            FlashTrack("DCS.dcsuri", fullURL, "DCSext.Flash_action", "Movie Run");
        }
        catch (err) {
            window.status = "Error during tracking: " + err.description;
            return true;
        }
    }
}
function querySt(ji) {
    hu = window.location.search.substring(1);
    gy = hu.split("&");
    for (i = 0; i < gy.length; i++) {
        ft = gy[i].split("=");
        if (ft[0] == ji) {
            return ft[1];
        }
    }
    return "";
}

function parseXML(xml) {
    if (window.ActiveXObject && window.GetObject) {
        var dom = new ActiveXObject('Microsoft.XMLDOM');
        dom.loadXML(xml);
        return dom;
    }
    if (window.DOMParser)
        return new DOMParser().parseFromString(xml, 'text/xml');
    throw new Error('No XML parser available');
}


function genPlaylist() {
    var isFirst = true;
    var _plylst = new Array();
    $(return_xml).find("video").each(function(index2) {
        var video = $(this);
        if (isFirst) {
            isFirst = false;
            _plylst.push({						
                url: videoPath + video.attr("filename"),
                autoPlay: false			// override autoplay for the first clip
            });
        } else
            _plylst.push(videoPath + video.attr("filename"));
    });    
    return _plylst;
}

function loadParseXML() {
    var return_raw = $.ajax({ type: "GET", url: "/USA-English/MotorOil/Images/Videos/videoplayer_assets_videos.txt", async: false, dataType: "text", processData: false }).responseText;
    return_xml = parseXML(return_raw);
    hasFile = true;
    var totalCount = 1;

    $(return_xml).find("video").each(function(index) {
        var video = $(this);
        video.attr("id", "videoItem" + totalCount);
        totalCount += 1;
    });

}

function catSwitch(catID) {
    if (catID == 1)
        return cat1;
    if (catID == 2)
        return cat2;
    if (catID == 3)
        return cat3;
    if (catID == 4)
        return cat4;
    return "";
}
var errorHit = false;

function noFlash() {
    errorHit = true;
    $("#videosplash").hide();
    $("#videoplayer").html(noflashHTML);
    $("#videoplayer").attr("href", "#");
    $("#videoplayer").attr("style", "text-decoration: none");
    $("#videoplayer").click(function() { window.open("http://www.adobe.com/go/EN_US-H-GET-FLASH"); });
}

document.write('<script type="text/javascript" src="http://www.mobiloil.com/USA-English/MotorOil/Home/SwfObject.js"></script>');

$(document).ready(function() {
    try {
        if (swfobject.getFlashPlayerVersion().major == 9) {
            noFlash();
        }
        else {
            $("#videosplash").hide();
            loadParseXML();

            if (querySt("video") != "") {
                foundCat = findCat(querySt("video"), catSwitch(querySt("cat")));
                if (foundCat != "") {
                    curCat = foundCat;
                    $("#" + curTab).css("backgroundImage", "url(/usa-english/motoroil/images/videos/videoplayer_assets_" + curTab + "-off.gif)");
                    if (curCat == cat2) {
                        $("#tab2").css("backgroundImage", "url(/usa-english/motoroil/images/videos/videoplayer_assets_tab2-on.gif)");
                        curTab = "tab2";
                    }
                    else if (curCat == cat3) {
                        $("#tab3").css("backgroundImage", "url(/usa-english/motoroil/images/videos/videoplayer_assets_tab3-on.gif)");
                        curTab = "tab3";
                    }
                    else if (curCat == cat4) {
                        $("#tab4").css("backgroundImage", "url(/usa-english/motoroil/images/videos/videoplayer_assets_tab4-on.gif)");
                        curTab = "tab4";
                    }
                }
            }

            $("#tab1").text(cat1).click(function() {
                generateVideos(cat1, "tab1", true);
            });
            $("#tab2").text(cat2).click(function() {
                generateVideos(cat2, "tab2", true);
            });
            $("#tab3").text(cat3).click(function() {
                generateVideos(cat3, "tab3", true);
            });
            $("#tab4").text(cat4).click(function() {
                generateVideos(cat4, "tab4", true);
            });
            $("#videoebed_embed").click(function() {
                document.getElementById("videoebed_embed").focus();
                document.getElementById("videoebed_embed").select();
            });
            $("#videosplash").css("cursor", "pointer");
            $("#videosplash").click(function() {
                $(this).hide(); $f().play();
                callTracking(curTrack, 1);
            });
            $("#videosmenu td").css("cursor", "hand");
            $("#emailPane, #embedPane").hide();
            generateVideos(curCat, curTab, false);
            $("#panes div.close").click(function() {
                $("#emailPane, #embedPane").hide();
                if (errorHit) return false;
                $f().show();
                $f().play();
            });


            var plylst = genPlaylist();

            //initialize and load the player
            //the key is DOMAIN SPECIFIC!
            //DevKEY 13eaee03d015280f40b
            //Live KEY: cad70cb13c843627161     (mobiloil.com)
            //update it both below and up in the Embed function!!
            $f("videoplayer", {
                src: fullPath + "flowplayer.unlimited-3.2.1.swf",
                version: [9, 0],
                onFail: function() { noFlash(); }
            }, {
                src: fullPath + "flowplayer.unlimited-3.2.1.swf",
                wmode: 'opaque',
                key: 'cad70cb13c843627161',
                clip: { autoPlay: true, autoBuffering: true, onFinish: function() { playNextVideo() } },
                onError: function(errorCode, errorMessage) { noFlash(); },
                playlist: plylst,
                canvas: { backgroundColor: "#8f8f8c" },
                screen: { border: '2px solid #3f3f3d', width: 478, height: 240, top: 1, right: 1 },
                plugins: {
                    customskin: { url: fullPath + "buttons_default.swf", type: "classLibrary" },
                    controls: {
                        url: fullPath + 'flowplayer.controls-3.2.0.swf',
                        skin: 'customskin',
                        autoHide: 'never',
                        bufferGradient: 'none',
                        backgroundColor: '#9eabb5',
                        sliderGradient: 'none',
                        bufferColor: '#829098',
                        progressGradient: 'medium',
                        durationColor: '#404040', //time
                        progressColor: '#394952', //progress bar
                        backgroundGradient: [0.6, 0.3, 0, 0, 0],
                        volumeSliderGradient: 'none',
                        tooltipTextColor: '#ffffff',
                        tooltipColor: '#5F747C',
                        volumeSliderColor: '#000000',
                        buttonOverColor: '#728B94',
                        sliderColor: '#5f686e',
                        borderRadius: '30px',
                        buttonColor: '#3b3a3c',
                        timeColor: '#404040',
                        timeBgColor: '#9eabb5',
                        height: 24,
                        opacity: 1.0,
                        volume: true //volume slider
                    }
                }, play: { url: fullDomain + 'usa-english/motoroil/images/videos/videoplayer_assets_play.png', opacity: 0.8, width: 438, height: 235 }

            });
            if (querySt("video") != "") {
                flipVid(videoPath + querySt("video"), curID, findTitle(querySt("video")), findTracking(querySt("video")), true);
                $("#videosplash").hide();
            }
            else if (errorHit != true) {
                $("#videosplash").show();
            }
            if (errorHit) {
                noFlash();
            }
        }
    }
    catch (err) {
        noFlash();
    }
});

/* The code above this block is Copyright 2010 Exxon Mobil Corporation. All Rights Reserved. 
* The following copyright only applies to the code after this comment block.
* It does not apply to the code above this comment block.
* 
*
* flowplayer.js 3.2.0. The Flowplayer API
* 
* Copyright 2009 Flowplayer Oy
* 
* This file is part of Flowplayer.
* 
* Flowplayer is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* 
* Flowplayer is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
* 
* You should have received a copy of the GNU General Public License
* along with Flowplayer.  If not, see <http://www.gnu.org/licenses/>.
* 
* Date: 2010-05-03 20:23:59 +0000 (Mon, 03 May 2010)
* Revision: 468 
*/

try {
(function() { function g(o) { console.log("$f.fireEvent", [].slice.call(o)) } function k(q) { if (!q || typeof q != "object") { return q } var o = new q.constructor(); for (var p in q) { if (q.hasOwnProperty(p)) { o[p] = k(q[p]) } } return o } function m(t, q) { if (!t) { return } var o, p = 0, r = t.length; if (r === undefined) { for (o in t) { if (q.call(t[o], o, t[o]) === false) { break } } } else { for (var s = t[0]; p < r && q.call(s, p, s) !== false; s = t[++p]) { } } return t } function c(o) { return document.getElementById(o) } function i(q, p, o) { if (typeof p != "object") { return q } if (q && p) { m(p, function(r, s) { if (!o || typeof s != "function") { q[r] = s } }) } return q } function n(s) { var q = s.indexOf("."); if (q != -1) { var p = s.slice(0, q) || "*"; var o = s.slice(q + 1, s.length); var r = []; m(document.getElementsByTagName(p), function() { if (this.className && this.className.indexOf(o) != -1) { r.push(this) } }); return r } } function f(o) { o = o || window.event; if (o.preventDefault) { o.stopPropagation(); o.preventDefault() } else { o.returnValue = false; o.cancelBubble = true } return false } function j(q, o, p) { q[o] = q[o] || []; q[o].push(p) } function e() { return "_" + ("" + Math.random()).slice(2, 10) } var h = function(t, r, s) { var q = this, p = {}, u = {}; q.index = r; if (typeof t == "string") { t = { url: t} } i(this, t, true); m(("Begin*,Start,Pause*,Resume*,Seek*,Stop*,Finish*,LastSecond,Update,BufferFull,BufferEmpty,BufferStop").split(","), function() { var v = "on" + this; if (v.indexOf("*") != -1) { v = v.slice(0, v.length - 1); var w = "onBefore" + v.slice(2); q[w] = function(x) { j(u, w, x); return q } } q[v] = function(x) { j(u, v, x); return q }; if (r == -1) { if (q[w]) { s[w] = q[w] } if (q[v]) { s[v] = q[v] } } }); i(this, { onCuepoint: function(x, w) { if (arguments.length == 1) { p.embedded = [null, x]; return q } if (typeof x == "number") { x = [x] } var v = e(); p[v] = [x, w]; if (s.isLoaded()) { s._api().fp_addCuepoints(x, r, v) } return q }, update: function(w) { i(q, w); if (s.isLoaded()) { s._api().fp_updateClip(w, r) } var v = s.getConfig(); var x = (r == -1) ? v.clip : v.playlist[r]; i(x, w, true) }, _fireEvent: function(v, y, w, A) { if (v == "onLoad") { m(p, function(B, C) { if (C[0]) { s._api().fp_addCuepoints(C[0], r, B) } }); return false } A = A || q; if (v == "onCuepoint") { var z = p[y]; if (z) { return z[1].call(s, A, w) } } if (y && "onBeforeBegin,onMetaData,onStart,onUpdate,onResume".indexOf(v) != -1) { i(A, y); if (y.metaData) { if (!A.duration) { A.duration = y.metaData.duration } else { A.fullDuration = y.metaData.duration } } } var x = true; m(u[v], function() { x = this.call(s, A, y, w) }); return x } }); if (t.onCuepoint) { var o = t.onCuepoint; q.onCuepoint.apply(q, typeof o == "function" ? [o] : o); delete t.onCuepoint } m(t, function(v, w) { if (typeof w == "function") { j(u, v, w); delete t[v] } }); if (r == -1) { s.onCuepoint = this.onCuepoint } }; var l = function(p, r, q, t) { var o = this, s = {}, u = false; if (t) { i(s, t) } m(r, function(v, w) { if (typeof w == "function") { s[v] = w; delete r[v] } }); i(this, { animate: function(y, z, x) { if (!y) { return o } if (typeof z == "function") { x = z; z = 500 } if (typeof y == "string") { var w = y; y = {}; y[w] = z; z = 500 } if (x) { var v = e(); s[v] = x } if (z === undefined) { z = 500 } r = q._api().fp_animate(p, y, z, v); return o }, css: function(w, x) { if (x !== undefined) { var v = {}; v[w] = x; w = v } r = q._api().fp_css(p, w); i(o, r); return o }, show: function() { this.display = "block"; q._api().fp_showPlugin(p); return o }, hide: function() { this.display = "none"; q._api().fp_hidePlugin(p); return o }, toggle: function() { this.display = q._api().fp_togglePlugin(p); return o }, fadeTo: function(y, x, w) { if (typeof x == "function") { w = x; x = 500 } if (w) { var v = e(); s[v] = w } this.display = q._api().fp_fadeTo(p, y, x, v); this.opacity = y; return o }, fadeIn: function(w, v) { return o.fadeTo(1, w, v) }, fadeOut: function(w, v) { return o.fadeTo(0, w, v) }, getName: function() { return p }, getPlayer: function() { return q }, _fireEvent: function(w, v, x) { if (w == "onUpdate") { var y = q._api().fp_getPlugin(p); if (!y) { return } i(o, y); delete o.methods; if (!u) { m(y.methods, function() { var A = "" + this; o[A] = function() { var B = [].slice.call(arguments); var C = q._api().fp_invoke(p, A, B); return C === "undefined" || C === undefined ? o : C } }); u = true } } var z = s[w]; if (z) { z.apply(o, v); if (w.slice(0, 1) == "_") { delete s[w] } } return o } }) }; function b(q, G, t) { var w = this, v = null, D = false, u, s, F = [], y = {}, x = {}, E, r, p, C, o, A; i(w, { id: function() { return E }, isLoaded: function() { return (v !== null && !D) }, getParent: function() { return q }, hide: function(H) { if (H) { q.style.height = "0px" } if (w.isLoaded()) { v.style.height = "0px" } return w }, show: function() { q.style.height = A + "px"; if (w.isLoaded()) { v.style.height = o + "px" } return w }, isHidden: function() { return w.isLoaded() && parseInt(v.style.height, 10) === 0 }, load: function(J) { if (!w.isLoaded() && w._fireEvent("onBeforeLoad") !== false) { var H = function() { u = q.innerHTML; if (u && !flashembed.isSupported(G.version)) { q.innerHTML = "" } flashembed(q, G, { config: t }); if (J) { J.cached = true; j(x, "onLoad", J) } }; var I = 0; m(a, function() { this.unload(function(K) { if (++I == a.length) { H() } }) }) } return w }, unload: function(J) { if (this.isFullscreen() && /WebKit/i.test(navigator.userAgent)) { if (J) { J(false) } return w } if (u.replace(/\s/g, "") !== "") { if (w._fireEvent("onBeforeUnload") === false) { if (J) { J(false) } return w } D = true; try { if (v) { v.fp_close(); w._fireEvent("onUnload") } } catch (H) { } var I = function() { v = null; q.innerHTML = u; D = false; if (J) { J(true) } }; setTimeout(I, 50) } else { if (J) { J(false) } } return w }, getClip: function(H) { if (H === undefined) { H = C } return F[H] }, getCommonClip: function() { return s }, getPlaylist: function() { return F }, getPlugin: function(H) { var J = y[H]; if (!J && w.isLoaded()) { var I = w._api().fp_getPlugin(H); if (I) { J = new l(H, I, w); y[H] = J } } return J }, getScreen: function() { return w.getPlugin("screen") }, getControls: function() { return w.getPlugin("controls")._fireEvent("onUpdate") }, getLogo: function() { try { return w.getPlugin("logo")._fireEvent("onUpdate") } catch (H) { } }, getPlay: function() { return w.getPlugin("play")._fireEvent("onUpdate") }, getConfig: function(H) { return H ? k(t) : t }, getFlashParams: function() { return G }, loadPlugin: function(K, J, M, L) { if (typeof M == "function") { L = M; M = {} } var I = L ? e() : "_"; w._api().fp_loadPlugin(K, J, M, I); var H = {}; H[I] = L; var N = new l(K, null, w, H); y[K] = N; return N }, getState: function() { return w.isLoaded() ? v.fp_getState() : -1 }, play: function(I, H) { var J = function() { if (I !== undefined) { w._api().fp_play(I, H) } else { w._api().fp_play() } }; if (w.isLoaded()) { J() } else { if (D) { setTimeout(function() { w.play(I, H) }, 50) } else { w.load(function() { J() }) } } return w }, getVersion: function() { var I = "flowplayer.js 3.2.0"; if (w.isLoaded()) { var H = v.fp_getVersion(); H.push(I); return H } return I }, _api: function() { if (!w.isLoaded()) { throw "Flowplayer " + w.id() + " not loaded when calling an API method" } return v }, setClip: function(H) { w.setPlaylist([H]); return w }, getIndex: function() { return p } }); m(("Click*,Load*,Unload*,Keypress*,Volume*,Mute*,Unmute*,PlaylistReplace,ClipAdd,Fullscreen*,FullscreenExit,Error,MouseOver,MouseOut").split(","), function() { var H = "on" + this; if (H.indexOf("*") != -1) { H = H.slice(0, H.length - 1); var I = "onBefore" + H.slice(2); w[I] = function(J) { j(x, I, J); return w } } w[H] = function(J) { j(x, H, J); return w } }); m(("pause,resume,mute,unmute,stop,toggle,seek,getStatus,getVolume,setVolume,getTime,isPaused,isPlaying,startBuffering,stopBuffering,isFullscreen,toggleFullscreen,reset,close,setPlaylist,addClip,playFeed,setKeyboardShortcutsEnabled,isKeyboardShortcutsEnabled").split(","), function() { var H = this; w[H] = function(J, I) { if (!w.isLoaded()) { return w } var K = null; if (J !== undefined && I !== undefined) { K = v["fp_" + H](J, I) } else { K = (J === undefined) ? v["fp_" + H]() : v["fp_" + H](J) } return K === "undefined" || K === undefined ? w : K } }); w._fireEvent = function(Q) { if (typeof Q == "string") { Q = [Q] } var R = Q[0], O = Q[1], M = Q[2], L = Q[3], K = 0; if (t.debug) { g(Q) } if (!w.isLoaded() && R == "onLoad" && O == "player") { v = v || c(r); o = v.clientHeight; m(F, function() { this._fireEvent("onLoad") }); m(y, function(S, T) { T._fireEvent("onUpdate") }); s._fireEvent("onLoad") } if (R == "onLoad" && O != "player") { return } if (R == "onError") { if (typeof O == "string" || (typeof O == "number" && typeof M == "number")) { O = M; M = L } } if (R == "onContextMenu") { m(t.contextMenu[O], function(S, T) { T.call(w) }); return } if (R == "onPluginEvent") { var H = O.name || O; var I = y[H]; if (I) { I._fireEvent("onUpdate", O); I._fireEvent(M, Q.slice(3)) } return } if (R == "onPlaylistReplace") { F = []; var N = 0; m(O, function() { F.push(new h(this, N++, w)) }) } if (R == "onClipAdd") { if (O.isInStream) { return } O = new h(O, M, w); F.splice(M, 0, O); for (K = M + 1; K < F.length; K++) { F[K].index++ } } var P = true; if (typeof O == "number" && O < F.length) { C = O; var J = F[O]; if (J) { P = J._fireEvent(R, M, L) } if (!J || P !== false) { P = s._fireEvent(R, M, L, J) } } m(x[R], function() { P = this.call(w, O, M); if (this.cached) { x[R].splice(K, 1) } if (P === false) { return false } K++ }); return P }; function B() { if ($f(q)) { $f(q).getParent().innerHTML = ""; p = $f(q).getIndex(); a[p] = w } else { a.push(w); p = a.length - 1 } A = parseInt(q.style.height, 10) || q.clientHeight; E = q.id || "fp" + e(); r = G.id || E + "_api"; G.id = r; t.playerId = E; if (typeof t == "string") { t = { clip: { url: t}} } if (typeof t.clip == "string") { t.clip = { url: t.clip} } t.clip = t.clip || {}; if (q.getAttribute("href", 2) && !t.clip.url) { t.clip.url = q.getAttribute("href", 2) } s = new h(t.clip, -1, w); t.playlist = t.playlist || [t.clip]; var H = 0; m(t.playlist, function() { var J = this; if (typeof J == "object" && J.length) { J = { url: "" + J} } m(t.clip, function(K, L) { if (L !== undefined && J[K] === undefined && typeof L != "function") { J[K] = L } }); t.playlist[H] = J; J = new h(J, H, w); F.push(J); H++ }); m(t, function(J, K) { if (typeof K == "function") { if (s[J]) { s[J](K) } else { j(x, J, K) } delete t[J] } }); m(t.plugins, function(J, K) { if (K) { y[J] = new l(J, K, w) } }); if (!t.plugins || t.plugins.controls === undefined) { y.controls = new l("controls", null, w) } y.canvas = new l("canvas", null, w); function I(J) { if (!w.isLoaded() && w._fireEvent("onBeforeClick") !== false) { w.load() } return f(J) } u = q.innerHTML; if (u.replace(/\s/g, "") !== "") { if (q.addEventListener) { q.addEventListener("click", I, false) } else { if (q.attachEvent) { q.attachEvent("onclick", I) } } } else { if (q.addEventListener) { q.addEventListener("click", f, false) } w.load() } } if (typeof q == "string") { var z = c(q); if (!z) { throw "Flowplayer cannot access element: " + q } else { q = z; B() } } else { B() } } var a = []; function d(o) { this.length = o.length; this.each = function(p) { m(o, p) }; this.size = function() { return o.length } } window.flowplayer = window.$f = function() { var p = null; var o = arguments[0]; if (!arguments.length) { m(a, function() { if (this.isLoaded()) { p = this; return false } }); return p || a[0] } if (arguments.length == 1) { if (typeof o == "number") { return a[o] } else { if (o == "*") { return new d(a) } m(a, function() { if (this.id() == o.id || this.id() == o || this.getParent() == o) { p = this; return false } }); return p } } if (arguments.length > 1) { var t = arguments[1], q = (arguments.length == 3) ? arguments[2] : {}; if (typeof t == "string") { t = { src: t} } t = i({ bgcolor: "#000000", version: [9, 0], expressInstall: "http://static.flowplayer.org/swf/expressinstall.swf", cachebusting: true }, t); if (typeof o == "string") { if (o.indexOf(".") != -1) { var s = []; m(n(o), function() { s.push(new b(this, k(t), k(q))) }); return new d(s) } else { var r = c(o); return new b(r !== null ? r : o, t, q) } } else { if (o) { return new b(o, t, q) } } } return null }; i(window.$f, { fireEvent: function() { var o = [].slice.call(arguments); var q = $f(o[0]); return q ? q._fireEvent(o.slice(1)) : null }, addPlugin: function(o, p) { b.prototype[o] = p; return $f }, each: m, extend: i }); if (typeof jQuery == "function") { jQuery.fn.flowplayer = function(q, p) { if (!arguments.length || typeof arguments[0] == "number") { var o = []; this.each(function() { var r = $f(this); if (r) { o.push(r) } }); return arguments.length ? o[arguments[0]] : new d(o) } return this.each(function() { $f(this, k(q), p ? k(p) : {}) }) } } })(); (function() { var h = document.all, j = "http://www.adobe.com/go/getflashplayer", c = typeof jQuery == "function", e = /(\d+)[^\d]+(\d+)[^\d]*(\d*)/, b = { width: "100%", height: "100%", id: "_" + ("" + Math.random()).slice(9), allowfullscreen: true, allowscriptaccess: "always", quality: "high", version: [3, 0], onFail: null, expressInstall: null, w3c: false, cachebusting: false }; if (window.attachEvent) { window.attachEvent("onbeforeunload", function() { __flash_unloadHandler = function() { }; __flash_savedUnloadHandler = function() { } }) } function i(l, f) { if (f) { for (key in f) { if (f.hasOwnProperty(key)) { l[key] = f[key] } } } return l } function a(f, n) { var m = []; for (var l in f) { if (f.hasOwnProperty(l)) { m[l] = n(f[l]) } } return m } window.flashembed = function(f, m, l) { if (typeof f == "string") { f = document.getElementById(f.replace("#", "")) } if (!f) { return } if (typeof m == "string") { m = { src: m} } return new d(f, i(i({}, b), m), l) }; var g = i(window.flashembed, { conf: b, getVersion: function() { var f; try { f = navigator.plugins["Shockwave Flash"].description.slice(16) } catch (n) { try { var l = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7"); f = l && l.GetVariable("$version") } catch (m) { } } f = e.exec(f); return [f[1], f[3]] }, asString: function(l) { if (l === null || l === undefined) { return null } var f = typeof l; if (f == "object" && l.push) { f = "array" } switch (f) { case "string": l = l.replace(new RegExp('(["\\\\])', "g"), "\\$1"); l = l.replace(/^\s?(\d+\.?\d+)%/, "$1pct"); return '"' + l + '"'; case "array": return "[" + a(l, function(o) { return g.asString(o) }).join(",") + "]"; case "function": return '"function()"'; case "object": var m = []; for (var n in l) { if (l.hasOwnProperty(n)) { m.push('"' + n + '":' + g.asString(l[n])) } } return "{" + m.join(",") + "}" } return String(l).replace(/\s/g, " ").replace(/\'/g, '"') }, getHTML: function(o, l) { o = i({}, o); var n = '<object width="' + o.width + '" height="' + o.height + '" id="' + o.id + '"" name="' + o.id + '"'; if (o.cachebusting) { o.src += ((o.src.indexOf("?") != -1 ? "&" : "?") + Math.random()) } if (o.w3c || !h) { n += ' data="' + o.src + '" type="application/x-shockwave-flash"' } else { n += ' classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"' } n += "><param name='wmode' value='opaque'> "; if (o.w3c || h) { n += '<param name="movie" value="' + o.src + '" />' } o.width = o.height = o.id = o.w3c = o.src = null; o.onFail = o.version = o.expressInstall = null; for (var m in o) { if (o[m]) { n += '<param name="' + m + '" value="' + o[m] + '" />' } } var p = ""; if (l) { for (var f in l) { if (l[f]) { var q = l[f]; p += f + "=" + (/function|object/.test(typeof q) ? g.asString(q) : q) + "&" } } p = p.slice(0, -1); n += '<param name="flashvars" value=\'' + p + "' />" } n += "</object>"; return n }, isSupported: function(f) { return k[0] > f[0] || k[0] == f[0] && k[1] >= f[1] } }); var k = g.getVersion(); function d(f, n, m) { if (g.isSupported(n.version)) { f.innerHTML = g.getHTML(n, m) } else { if (n.expressInstall && g.isSupported([6, 65])) { f.innerHTML = g.getHTML(i(n, { src: n.expressInstall }), { MMredirectURL: location.href, MMplayerType: "PlugIn", MMdoctitle: document.title }) } else { if (!f.innerHTML.replace(/\s/g, "")) { f.innerHTML = "<h2>Flash version " + n.version + " or greater is required</h2><h3>" + (k[0] > 0 ? "Your version is " + k : "You have no flash plugin installed") + "</h3>" + (f.tagName == "A" ? "<p>Click here to download latest version</p>" : "<p>Download latest version from <a href='" + j + "'>here</a></p>"); if (f.tagName == "A") { f.onclick = function() { location.href = j } } } if (n.onFail) { var l = n.onFail.call(this); if (typeof l == "string") { f.innerHTML = l } } } } if (h) { window[n.id] = document.getElementById(n.id) } i(this, { getRoot: function() { return f }, getOptions: function() { return n }, getConf: function() { return m }, getApi: function() { return f.firstChild } }) } if (c) { jQuery.tools = jQuery.tools || { version: "3.2.0" }; jQuery.tools.flashembed = { conf: b }; jQuery.fn.flashembed = function(l, f) { return this.each(function() { $(this).data("flashembed", flashembed(this, l, f)) }) } } })();
} catch (err) {
    noFlash();
}
