/** * * Postmedia Video Player * * @description this loads and displays the Postmedia video player * * @class Loader * @namespace PmVids * @Player v. 03-20-2015 * @kaltura v.2.20 | 11-14-2014 * */ var PmVids = PmVids || {}; PmVids.Loader = PmVids.Loader || {}; if (window.BootloaderCount === undefined) { window.BootloaderCount = 0; } if (window.BootloaderJSLoaded === undefined) { window.BootloaderJSLoaded = false; // Add adblock code (a global var and external test file) window["adBlockInstalled"] = true; var adInsert = document.createElement('script'), el = document.getElementsByTagName('script')[0]; adInsert.async = true; adInsert.src = 'http://app.canada.com/video/assets/js/advertisement.js'; el.parentNode.insertBefore(adInsert, el); var gptProxy = document.createElement('script'), gptEl = document.getElementsByTagName('script')[0]; gptProxy.async = true; gptProxy.src = 'http://s0.2mdn.net/instream/html5/gpt_proxy.js'; gptEl.parentNode.insertBefore(gptProxy, gptEl); } PmVids.Loader['pn_video_897944'] = (function () { var Config = { type: "PmVideo", name: "pn_video_897944", isProduction : "true", domain : "nationalpost.com", playerType : "Channel", analytics : { comScoreId : "", streamSenseBaseUrl : "http://b.scorecardresearch.com/p?c1=2&c2=16433038", dfpCmsId : "1141" }, cat: { ck:"news", sck: "world" }, debug : "false", assets : { "scripts": [ "http://cdnapi.kaltura.com/p/1698541/sp/169854100/embedIframeJs/uiconf_id/23273481/1698541", "http://app.canada.com/video/assets/js/pmvids-utils.js?03-20-2015", "http://app.canada.com/video/assets/js/pmvids-adserver.js?03-20-2015", "http://app.canada.com/video/assets/js/pmvids-video.js?03-20-2015", "http://app.canada.com/video/assets/js/lib-streamsense.js?03-20-2015", "http://app.canada.com/video/assets/js/pmvids-streamsense.js?03-20-2015" ] }, player : { id: "23273481", target: "pn_video_897944", videoId: "", playListId: "1_ii0noetr", referenceId: "" }, ad:{ url: null, params: null, tag: null, loc: "rail", size: "320x240", type: null } }; function RenderPlayer(){ SetLogging(); SetPlayer(); SetAdServer(); EmbedPlayer(); ShowLogs(); } function EmbedPlayer(){ if(true){ var bitRate = -1; if(!kWidget.isMobileDevice()){ bitRate=0; } mw.setConfig('Kaltura.UseAppleAdaptive', false); kWidget.embed({ "targetId": "pn_video_897944", "wid": "_1698541", "uiconf_id": "23273481", "cache_st": "13892112123", "flashvars": { "playlistAPI" : { "kpl0Url" : "http://www.canada.com/pmvideo/xml/playlistfilter.xml?pubId=1698541&playListId=1_ii0noetr", "autoPlay": "false", "autoContinue": "true" }, "playlist": { "visible": false, "includeInLayout": false }, "LeadWithHLSOnFlash" : false, "metadataProfileId": "2951661", "mediaProxy.preferedFlavorBR" : bitRate, "autoPlay": "false", "disableCompanionAds": false, "videoTagSiblingAd": false, "postSequence": "0", "autoMute":"false", "preSequence": "1", "adsOnReplay" : true, "debug": false, "doubleClick": { "plugin":true, "leadWithFlash": false, "adTagUrl": Config.ad.url, "customParams": Config.ad.params, "disableCompanionAds" : false, "debugMode":false, "enableCountDown": true, "countdownText": "Advertisement {sequenceProxy.timeRemaining|timeFormat}" }, }, "readyCallback": function(playerId){ PmVids.Video.Init(playerId, Config); SetPlayerAttr(); } }); } } function SetPlayer(){ var w = PmVids.Utils.ReturnParentWidth('pn_video_897944'), h = Math.floor((w/16)*9), vNode = document.getElementById('pn_video_897944'); vNode.style.width = w + 'px'; vNode.style.height = h + 'px'; } function SetPlayerAttr(){ var vNode = document.getElementById('pn_video_897944'); vNode.setAttribute("data-pid", "1_ii0noetr"); } function SetLogging(){ //Set Logging Level PmVids.Utils.SetIsProduction(true); } function SetAdServer(){ var ad = PmVids.AdServer.GetVideoAd('pn_video_897944', Config); if(ad == undefined || ad == "" || ad == false || ad == null){ PmVids.AdServer.configured = false; } else { Config.ad.url = ad.url; Config.ad.params = ad.params; Config.ad.type = ad.type; Config.ad.tag = Config.ad.url + "&cust_params=" + encodeURIComponent(Config.ad.params); } } function BootLoader(array, callback) { var loader = function ( url, callback ) { var head = document.getElementsByTagName("head")[0] || document.documentElement; var script = document.createElement("script"); script.src = url; // Handle Script loading var done = false; // Attach handlers for all browsers script.onload = script.onreadystatechange = function() { if ( !done && (!this.readyState || this.readyState === "loaded" || this.readyState === "complete") ) { done = true; if( typeof callback == 'function'){ callback(); } // Handle memory leak in IE script.onload = script.onreadystatechange = null; if ( head && script.parentNode ) { head.removeChild( script ); } } }; // Use insertBefore instead of appendChild to circumvent an IE6 bug. // This arises when a base node is used (#2709 and #4378). head.insertBefore( script, head.firstChild ); }; (function () { if (array.length != 0) { loader(array.shift(), arguments.callee); } else { callback && callback(); } })(); } function Loader() { window.BootloaderCount++; //console.log("[[[[[[[ Bootloader_Called_Count = " + window.BootloaderCount + "]]]]]]]"); if(window.BootloaderCount == 1) { BootLoader(Config.assets.scripts, function () { window.BootloaderJSLoaded = true; if(!false){ RenderPlayer(); } }); } else { function LoopMe() { if(window.BootloaderJSLoaded===false) { setTimeout(LoopMe, 100); //wait 100 milliseconds then recheck return; } //console.log("[[[[[[[ Bootloader Not Needed ]]]]]]]"); if(!false){ RenderPlayer(); } } LoopMe(); } } function ShowLogs(){ Log("PmVids: Version: 03-20-2015"); Log("PmVids: playerId: 23273481"); Log("PmVids: targetId: pn_video_897944"); Log("PmVids: videoPartnerId: 1698541"); Log("PmVids: playListId: 1_ii0noetr"); Log("PmVids: window['adBlockInstalled']: " + window["adBlockInstalled"]); } function Log(msg, type) { PmVids.Utils.Log(msg, type); } Loader(); return { Config: Config, RenderPlayer: RenderPlayer } })();