var player;
var content;
var video;
var experience;
var menu;
var advertising;
  
// called when template loads, this function stores a reference to the player and modules.
// Then event listeners will be added for when the template is ready and when a user 
// clicks on a video.
function onTemplateLoaded(pEvent) {
    player = bcPlayer.getExperience("myExperience");
    video = player.getModule(APIModules.VIDEO_PLAYER);
    content = player.getModule(APIModules.CONTENT);
    experience = player.getModule(APIModules.EXPERIENCE);
    social = player.getModule(APIModules.SOCIAL);
	menu = player.getModule(APIModules.MENU);
	advertising = player.getModule(APIModules.ADVERTISING);
    experience.addEventListener(BCExperienceEvent.TEMPLATE_READY, onTemplateReady);
    video.addEventListener(BCVideoEvent.STREAM_START, onStreamStart);
	advertising.addEventListener(BCAdvertisingEvent.AD_START, onAdStart);
	advertising.addEventListener(BCAdvertisingEvent.AD_COMPLETE, onAdComplete);
    social.addEventListener(BCSocialEvent.EMBED_CODE_RETRIEVED, onEmbedCodeRetrieved);
}   
/*
function onAdStart(event) {
        document.getElementById('videoTitle').style.display = "none";
        document.getElementById('videoDesc').style.display = "none";
        document.getElementById('videoPubDate').style.display = "none";
        document.getElementById('sponsorMsg').style.display = "block";
}
function onAdComplete(event) {
        document.getElementById('sponsorMsg').style.display = "none";
        document.getElementById('videoTitle').style.display = "block";
        document.getElementById('videoDesc').style.display = "block";
        document.getElementById('videoPubDate').style.display = "block";
}
*/
function onTemplateReady() {
}

function onStreamStart() {
	var isMenuOpen = menu.isMenuPageShowing();
	if(isMenuOpen) {
		video.closeMenuPage();
	}
    var startVideo = video.getCurrentVideo();
    var YWATracker = YWA.getTracker("1000942893616");
    YWATracker.submit();
	var title = startVideo.displayName;
	var description = startVideo.shortDescription;
	relatedCall(0);
    social.getEmbedCode();
	//v.getComments('Video_'+startVideo.id);
    document.title = title + " | NewsOK.com";
}

function onEmbedCodeRetrieved(data) {
	console.log('inside');
    document.getElementById('embedCode').value = data.args.snippet;
}

function shareWithFriend() {
    if (document.getElementById('emailMessage').value == "Add your message here (optional)") {
        document.getElementById('emailMessage').value = "";
    }
    var validateShareEmail = new Boolean(social.shareVideoViaEmail(document.getElementById('yourEmail').value, document.getElementById('friendsEmail').value, document.getElementById('emailMessage').value));
    if (validateShareEmail == true) {
        document.getElementById('emailMsg').innerHTML = "<b>Your message has been sent.</b><br /><br />";
    } else {
        document.getElementById('emailMsg').innerHTML = "<b>Oops, something went wrong.</b> Please verify that <b>your email</b> and <b>your friends email</b> is properly keyed in. Then try again.<br /><br />";
    }
}

function clearInputField(id, value) {
    if (value == document.getElementById(id).value) {
        document.getElementById(id).value = "";
    } else {
        document.getElementById(id).select();
    }
}

function tagCall(myTags) {
		// The web service call
		var proxy       = "http://api.connectok.com/json/?method=BrightCoveProxy.GetProxy";
		var reqLibrary  = "http://api.brightcove.com/services/library?";
		var reqCommand  = "command=find_videos_by_tags";
		var reqPages    = "&page_size=3&page_number=0";
		var reqCallBack = "&callback=tagResponse";
        var reqParams   = "&or_tags="+encodeURI(myTags)+"&sort_by=MODIFIED_DATE&sort_order=DESC";
        var req = proxy + "&url=" + escape(reqLibrary + reqCommand + reqParams + reqPages + reqCallBack);
        // Create a new request object
        bObj = new JSONscriptRequest(req, 0); 
        // Build the dynamic script tag
        bObj.buildScriptTag(); 
        // Add the script tag to the page
        bObj.addScriptTag();
}
// Define the callback function, which
// writes out the HTML for each title item in the list
function tagResponse(jsonData) {
        var items = jsonData["items"];
		document.getElementById("titleList").innerHTML = "";
        var tDiv = document.getElementById("titleList");
        var i = 0;
        var limit = 3;
        while (i<limit) {
                var str = "";
                str += '<div class="title item'+[i]+'" ';
                str += 'onClick="location.href=\'/multimedia/video/'+items[i].id+'\';">';
                str += '<div class="titleHolder">';
                str += '<div class="imageHolder">';
                str += '<div class="playThumb"><img src="http://static.newsok.biz/sites/newsok5/images/rollover_thumb.png"/></div>';
                str += '<div class="thumb"><img src="' + items[i].thumbnailURL + '"/></div>';
                str += '</div>';
                str += '<p class="displayName">';
		if (items[i].name.length > 50) {
                    str += items[i].name.substring(0, 50).replace(/\s+\w+$/, '...')
                } else {
                    str += items[i].name
                }
		str += '</p>';
		str += '<p class="desc">';
		str += '<span id="BCpubDate">' + formatBCDate(items[i].publishedDate) + '</span> ';
                if (items[i].shortDescription.length > 65) {
                    str += items[i].shortDescription.substring(0, 65).replace(/\s+\w+$/, '...')
                } else {
                    str += items[i].shortDescription
                }
                str += '</p>';
                str += '<div class="clear"></div>';
                str += '</div>';
                str += '<div class="clear"></div>';
                str += '</div>';
                tDiv.innerHTML += str;
                i++;
        }
}

