function initializePlayer() {
	setProperty('appRootUrl','/');
	setProperty('playerWidth','660');
	setProperty('playerHeight','380');
	initialize();
}

function onVideoComplete(){
	// triggered by JW player via playerManager.js when a video play through to the end
	if (typeof next === 'function') next();
}

function cleanUp(url) {
	url = url.replace(/\?$/, "");
	url = url.replace(/&$/, "");
	url = url.replace("?&", "?");
	url = url.replace("&&", "&");
	return url;
}

function changeVideo(video_url, video_title, video_desc, video_thumbnail) {
	document.getElementById('next_video_url').value = video_url;
	document.getElementById('next_video_title').value = video_title;
	document.getElementById('next_video_desc').value = video_desc;
	
	// construct submit url
	var submitURL = location.href.replace(/&url=[^&]*/, "");
	submitURL = submitURL.replace(/app=[^&]*/, ""); submitURL = cleanUp(submitURL);
	
	// get rid page tags
	if (submitURL.indexOf("?") != -1) {
		if (submitURL.indexOf("standalone_video") == -1)
			submitURL = submitURL.replace(/\bpage=[^&]+/, "");
		submitURL = cleanUp(submitURL);
	}
	
	document.getElementById('video_selector').action = submitURL;
	document.getElementById('video_selector').submit();
}

function startPlayer(media_url, embed) {
	if (!embed) {
		setProperty('urlToLoad',media_url);
		initializePlayer();
	} else {
		document.getElementById('player').innerHTML = "<embed style='width:660px; height:" +(media_url.match('indiatimes.com')? '425':'380')+ "px; text-align:center' bgcolor='#000000' wmode='transparent' allowscriptaccess='always' autoPlay='1' allowfullscreen='true' type='application/x-shockwave-flash' src='" +media_url+ ((media_url.match('myspace')||media_url.match('blip'))? '':'&autoplay=1&videoAutoPlay=1') + "' flashvars='" +(media_url.match('mtvnservices')? 'configParams=instance%3Dmtv&':'')+ "a=1&autostart=1&ip=true&ap=true&playerVars=autoPlay=yes'>";
	}
	updateShareLinks(media_url, embed);
}

function updateShareLinks(media_url, embed) {
	// insert video link
	var newURL = location.href;
	if (newURL.indexOf("?") == -1)
		newURL += "?url=" + encodeURIComponent(media_url);
	else if (location.href.indexOf("url=") == -1)
		newURL += "&url=" + encodeURIComponent(media_url);
	else if (location.href.indexOf("url=") != -1)
		newURL = newURL.replace(/url=[^&]*/, "url=" + encodeURIComponent(media_url));
	
	// append embed attribute if it doesn't exist (for embedded videos)
	if (newURL.indexOf("embed=") == -1 && embed)
		newURL += "&embed=1";
	
	// remove share attribute if it already exists
	if (newURL.indexOf("share=") != -1)
		newURL.replace(/share=\w*/, "");
	
	// construct new url's
	document.getElementById('share-link-url-field').value = newURL;
	if (document.getElementById('video_link')) document.getElementById('video_link').href = newURL;
	document.getElementById('fb_share_link').href = newURL.replace("?", "?share=facebook&");
	document.getElementById('twitter_share_link').href = newURL.replace("?", "?share=twitter&");
	document.getElementById('email_share_link').href = newURL.replace("?", "?share=email&");
}

function submitSearch() {
	if (!document.getElementById('country').value) document.getElementById('country').value = "united-states";
	document.getElementById('category').value = document.getElementById('keyword').value;
	document.getElementById('country_selector').submit();
	return false;
}

function unescapeQuotes(src) {
	// unescape single and double quotes from src and return
	src = src.replace("&#39;", "&rsquo;");
	src = src.replace("&rsquo;", "'");
	src = src.replace("&quot;", '"');
	return src;
}

function showDescription(title, desc) {
	// truncate long titles and descriptions
	shortTitle = title; shortDesc = desc;
	if (title.length > 80)
		shortTitle = title.substring(0, 80).replace(/(^\s*)|(\s*$)/, "")+"...";
	if (desc.length > 300)
		shortDesc = desc.substring(0, 300).replace(/(^\s*)|(\s*$)/, "")+"...";
	
	document.getElementById('video-title').title = unescapeQuotes(title);
	document.getElementById('video-title').innerHTML = shortTitle;
	document.getElementById('video-description').title = unescapeQuotes(desc);
	document.getElementById('video-description').innerHTML = shortDesc;
}
