var ItvPlayer = { 

    deploymentLocation: "",
    advertisingSite: "",
    advertisingArea: "",
    advertisingRestriction: "",
    version: null,
    videoplayers: [],
    noGuidance:false,

    init: function(params) {
        this.deploymentLocation = params.deploymentLocation;
        this.advertisingSite = params.advertisingSite;
        this.advertisingArea = params.advertisingArea;
        this.advertisingRestriction = params.advertisingRestriction;
        this.createGuidance();
        this.addPlayers();
    },

    CreatePlayer: function(params) {
        this.videoplayers.push(params);
    },

    addPlayers: function() {
        for (i = 0; i <= this.videoplayers.length - 1; i++) {
            this.insertPlayer(this.videoplayers[i]);
        }
    },

    insertPlayer: function(params) {

        $('#' + params.container).html('<div style="border:1px solid #aaa;text-align:center;padding:5px;width:' + (parseInt(params.width) - 12) + 'px;height:' + (parseInt(params.height) - 12) + 'px"><span>To view ITV Player please install <a href="http://www.adobe.com/go/getflash/">Flash Player 10</a>.</span><br /><img style="margin-top:' + (parseInt(params.height) / 2 - 60) + 'px" src="http://www.itv.com/_app/img/logos/logo_itvplayer.jpg" alt="ITV Player" class="itvplayer_flashupgrade" /></div>');
        
        if (swfobject.getFlashPlayerVersion().major<10)
            return;
            
        //insert the video player
        var url = ItvPlayer.deploymentLocation + 'Mercury_VideoPlayer.swf?v=' + ItvPlayer.version;
        var localConn = Math.round(Math.random() * 10000000000);

        swfobject.embedSWF(url, params.container, parseInt(params.width), parseInt(params.height), "10", "expressInstall.swf",
            { advertisingSite: ItvPlayer.advertisingSite, vodcridPartition: "itv.com", vodcridId: params.vodcrid, advertisingArea: ItvPlayer.advertisingArea, autoPlay: params.autoPlay, startMuted:params.startMuted, toppicks: params.showPicks, playercontainer: params.container, basePath: ItvPlayer.deploymentLocation, revenueScience: "", isITVPlayer: "false", localConn: localConn, resumeItem: "false", vimage: params.vimage, isPlaylistItem: "false" },
            { autoplay: "true", allowscriptaccess: "always", allowfullscreen: "true", wmode: "opaque", quality: "high", bgcolor: "#000000", name: "Mercury_VideoPlayer" + params.container },
            { id: "Mercury_VideoPlayer" + params.container, name: "Mercury_VideoPlayer" + params.container }
         );

        //insert the auto resume swf
        if ($("#MercuryAutoResume_" + params.container).length > 0)
            $("#MercuryAutoResume_" + params.container).remove();

        var autoResumeDiv = document.createElement("div");
        autoResumeDiv.id = "autoResumeDiv";
        autoResumeDiv.style.width = '1px';
        autoResumeDiv.style.height = '1px';
        var bodyDiv = document.getElementsByTagName('body')[0];
        bodyDiv.insertBefore(autoResumeDiv, bodyDiv.firstChild)

        var urlAutoResume = ItvPlayer.deploymentLocation + 'MercuryAutoResume.swf?v=' + ItvPlayer.version;
        swfobject.embedSWF(urlAutoResume, "autoResumeDiv", "1", "1", "10", "expressInstall.swf",
            { basePath: ItvPlayer.deploymentLocation, addLastWatchedCallback: "false", localConn: localConn },
            { autoplay: "true", allowscriptaccess: "always", allowfullscreen: "true", wmode: "opaque", quality: "high", bgcolor: "#000000", name: "MercuryAutoResume_" + params.container },
            { id: "MercuryAutoResume_" + params.container, name: "MercuryAutoResume_" + params.container }
         );
    },

    createGuidance: function() {
        var bodyDiv = document.getElementsByTagName('body')[0];

        var guidanceCoverDiv = document.createElement('div');
        guidanceCoverDiv.setAttribute('id', 'itv-guidanceCover');
        bodyDiv.appendChild(guidanceCoverDiv);

        var videoGuidanceDiv = document.createElement('div');
        videoGuidanceDiv.setAttribute('id', 'itv-videoGuidance');
        bodyDiv.appendChild(videoGuidanceDiv);
    }

};


$.extend({
    getUrlVars: function() {
        var vars = [], hash;
        var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
        for (var i = 0; i < hashes.length; i++) {
            hash = hashes[i].split('=');
            vars.push(hash[0]);
            vars[hash[0]] = hash[1];
        }
        return vars;
    },
    getUrlVar: function(name) {

        if ($.getUrlVars()[name] != undefined)
            return $.getUrlVars()[name];
        else
            return "";
    }
});
