/**
 * helps javascript talk to swfs
 */
// Check user agent for mobile devices
var ua = (function(){
    var agent = navigator.userAgent
    var isIE = function(){
        return !+"\v1";
    }()
    var isFF = function(){
        return agent.match(/Firefox/i) !== null;
    }();
    var isIPad = function(){
        return agent.match(/iPad/i) !== null;
    }();
    var isIPhone = function(){
        return agent.match(/iPhone/i) !== null;
    }();
    var isIOS = function(){
        return isIPad || isIPhone
    }();
    var iOSVersion = function(){
        var match = agent.match(/OS (\d+)_/i);
        if (match && match[1]) {
            return match[1];
        }
    }();
    var isAndroid = function(){
        return agent.match(/Android/i) !== null;
    }();
    var androidVersion = function(){
        var match = agent.match(/Android (\d+)\./i);
        if (match && match[1]) {
            return match[1];
        }
    }();
    var isBlackBerry = function(){
        return agent.match(/BlackBerry/i) !== null;
    }();
    var isKindle = function(){
        return agent.match(/Kindle/i) !== null;
    }();
    var isNookColor = function(){
        return false;
    }();
    
    var isMobile = function(){
        return isIOS || isAndroid || isBlackBerry || isKindle || isNookColor
    }();
    return {
        isIE: isIE,
        isFF: isFF,
        isIPad: isIPad,
        isIPhone: isIPhone,
        isIOS: isIOS,
        isAndroid: isAndroid,
        isBlackBerry: isBlackBerry,
        isKindle: isKindle,
        isNookColor: isNookColor,
        isMobile: isMobile,
        androidVersion: androidVersion,
        iOSVersion: iOSVersion
    }
})();


var currentVideoTitle = "";
// Dummy up Log if log.js is not included
if (!window["Log"]) {
    var Log = {};
    Log.info = Log.log = Log.warn = Log.error = Log.assert = Log.dir = Log.dirxml = Log.trace = Log.group = function(){
    };
    Log.groupCollapsed = Log.groupEnd = Log.time = Log.timeEnd = Log.profile = Log.profileEnd = Log.count = Log.debug = Log.info
}

function getFlashInstance(strID){
    if (navigator.appName.indexOf("Microsoft") != -1) {
        return window[strID];
    }
    else {
        return document[strID];
    }
}

/**
 *	flash calls this when loaded, to play defualt video
 */
function flashIsReady(){
    loadVideo(defaultVideo, defaultTitle, defaultDesc);
}

/**
 *	instructs flash to load new data into player, invoked by UI
 */
function loadVideo(path, title, desc){
    var index = getVideoData(path)
    var data
    var baseUrl = window.location.href.split("#")[0]
    var videoThumb
    var mobileVideo
    var link
    var hashDate
    currentVideoTitle = title
    if (index > -1) {
        data = seriesVideos[index]
        videoThumb = window.location.protocol + "//" + window.location.host + data[6]
        mobileVideo = data[5]
        hashDate = createHashFromDate(data[1])
        link = baseUrl + "#" + hashDate
        window.location.hash = hashDate
        customAddThisButton('#sharethis_div', link, title, desc, videoThumb, path);
        addLikeButton(link);
        if (window.initRatings) {
            initRatings();
			getUserRating();
        }
    }
    Log.info(path);
    if (ua.isMobile) {
        document.getElementById("video_container").innerHTML = '<a href="' + mobileVideo + '"><img src="' + videoThumb + '" alt="' + title + '" /></a>'
    }
    else {
			getFlashInstance('FlashVideoPlayer').loadVideo(path, title, desc);
    }
}

function addLikeButton(url){

    //document.getElementById("likethis_div").innerHTML='';
    //document.getElementById("likethis_div").innerHTML='<iframe src="http://www.facebook.com/plugins/like.php?href='+"http://devcpd2.toyotaracing.com/motorsports/video/"+url+';layout=standard&amp;show_faces=false&amp;width=450&amp;action=like&amp;colorscheme=dark&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>';
    document.getElementById("likethis_div").innerHTML = '<fb:like href="' + url + '" show_faces="false" colorscheme="dark" ></fb:like>';
    //document.getElementById("fb").setAttribute('href', "http://devcpd2.toyotaracing.com/motorsports/video/"+url);
    FB.XFBML.parse(document.getElementById('likethis_div'));
    
}

function getVideoData(path){
    var item
    var found = -1
    for (var i = 0, len = seriesVideos.length; i < len; i++) {
        item = seriesVideos[i]
        if (item[0] == path) {
            found = i
            break;
        }
    }
    return found
}



/**
 * set up video object
 */
/*
 var so = new SWFObject("/motorsports/swfs/toyota_racing_video_standalone/ToyotaRacingVideoStandAlone.swf", "FlashVideoPlayer", "533", "435", "8");
 so.addParam("wmode", "transparent");
 so.addParam("allowFullScreen", "true");
 Event.observe(window, 'load', function() {so.write("video_container");});
 */
// /* 
Event.observe(window, 'load', function(){
    if (window.console) {
        console.info("embed flash video");
    }
    
    if (ua.isMobile) {
        loadVideo(defaultVideo, defaultTitle, defaultDesc);
    }
    else {
        var fv = {};
        var pa = {};
        pa.wmode = "transparent";
        pa.allowfullscreen = "true";
        pa.allowscriptaccess = "sameDomain";
        
        var at = {};
        at.id = "FlashVideoPlayer";
        at.name = "FlashVideoPlayer";
        
        swfobject.embedSWF("/motorsports/swfs/toyota_racing_video_standalone/ToyotaRacingVideoStandAlone.swf", "video_container", "533", "435", "8.0.0", "expressInstall.swf", fv, pa, at);
    }
});



//   */
/**
 *	the current row selected, used for the rollover highlighting
 */
var currentRow = ''

/**
 * array of row on page, logic assumes 5 rows per page
 */
//var rows = Array('row1','row2','row3','row4','row5')

var rows = Array()
var ctr = 1
for (i = 0; i < 40; i++) {
    rows[i] = "row" + ctr
    ctr++
}


/**
 *	If a row is clicked, this highlights it
 */
function targetRow(row, series){
    // set the current row
    currentRow = row
    // unhighlight the previously highlighted
    for (i = 0; i < rows.length; i++) {
        if (document.getElementById(rows[i] + '_' + series + '_content')) {
            //alert(rows[i])
            unhighlightRow(rows[i] + '_' + series)
        }
    }
    // highlight the clicked row
    highlightRow(row)
}

/**
 * changes class of specified row
 */
function highlightRow(row){
    document.getElementById(row + '_content').className = 'library_content_active'
}

/**
 * reverts class of specified row
 */
function unhighlightRow(row){
    if (row != currentRow) {
        document.getElementById(row + '_content').className = 'library_content'
    }
}

function onAddThis_Share(evt){
    Log.info("heard addthis.menu.share")
    //var data =getDataArray()
    var ft = {
        '<Video_Name>': currentVideoTitle,
        '<Social_Media_Type>': evt.data.service
    }
    fireTag('47.63', ft);
}

