// JavaScript Document

var player = null;
var currentPosition = null;
var currentState = null;
var seekPosition = 0;
var goSeek = false;
var nowPlaying = null;
var viewFlag = false;
var userHD = getCookie('userHD');
var userSD = getCookie('userSD');

if ((userHD == 1 && FileHD != null) || (userSD == 1 && FileSD == null)) {
	defaultType = 1;
	defaultFile = FileHD;
}
if ((userSD == 1 && FileSD != null) || (userHD == 1 && FileHD == null)) {
	defaultType = 2;
	defaultFile = FileSD;
}

if (defaultType == 1) SetHD();
if (defaultType == 2) SetSD();
if (FileHD == null) DisableHD();
if (FileSD == null) DisableSD();

var so = new SWFObject('/System/player/jw/4.5.swf','dtv','100%','100%','9','#ffffff');
so.addParam('allowfullscreen','true');
so.addParam('allowscriptaccess','always');
so.addVariable('type','http');
so.addVariable('stretching','exactfit');
so.addVariable('menu','false');
so.addVariable('plugins','/System/player/jw/OpenAdStreamer.swf');
so.addVariable('config','/video/config.php?v=' + videoID + '%26t=' + defaultType);
so.addVariable('frontcolor','#ffffff');
so.addVariable('backcolor','#299bc5');
so.addVariable('width', $('player').getWidth());
so.addVariable('height', $('player').getHeight());
so.write('player');

function SetPlayerSize(w,h) {
	$('player-container').style.width = w + 'px';
	$('player-container').style.height = (h + 44) + 'px';
	$('player').style.width = w + 'px';
	$('player').style.height = (h + 19) + 'px';
	if (w == hi_w && h == hi_h) {
		setCookie('userHD', 1);
		delCookie('userSD');
	}
	else if (w == lo_w && h == lo_h) {
		setCookie('userSD', 1);
		delCookie('userHD');
	}
}

function playerReady(thePlayer) {
	player = window.document[thePlayer.id];
	player.addControllerListener('ITEM','playerChange');
	player.addModelListener('TIME','getPosition');
	player.addModelListener('STATE','getState');
}

function getState(obj) {
	currentState = obj.newstate;
	if (currentState == 'PLAYING' && goSeek == true) {
		goSeek = false;
		player.sendEvent('SEEK', seekPosition);
	}
}

function getPosition(obj) {
	currentPosition = obj.position;
	if (currentPosition > 15 && viewFlag == false && defaultFile != null && defaultFile == nowPlaying) {
		viewFlag = true;
		new Ajax.Request('/video/mark_view_ajax.php', {
			method: 'post', 
			parameters: 'v=' + videoID + '&t=' + videoToken
		});
	}
}

function playerChange(obj) {
	nowPlaying = player.getPlaylist()[obj.index].file;
	if (defaultFile != null && defaultFile == nowPlaying) {
		EnableControls();
		if (defaultFile == FileHD) {
			if ((userHD == null && userHD == null) || (userHD == 1 && FileHD != null) || (userSD == 1 && FileSD == null)) {
				SetPlayerSize(hi_w, hi_h);
				SetResIcon('lo');
			} else {
				SetResIcon('hi-enable');
			}
		}
		if (defaultFile == FileSD) {
			SetPlayerSize(lo_w, lo_h);
			SetResIcon('disable');
		}
	}
}

function onLinearAdFinish() {
	EnableControls();
}

function onLinearAdStart() {
	DisableControls();
}

function EnableControls() {
	if (FileHD != null) EnableHD();
	if (FileSD != null) EnableSD();
	if (defaultType == 1) SetHD();
	if (defaultType == 2) SetSD();
}

function DisableControls() {
	DisableHD();
	DisableSD();
}

function EnableHD() {
	$('hd-toggle').onclick = function() {ToggleRes(1); return false};
	$('hd-toggle').className = 'hd-toggle';
	$('hd-toggle').title = 'Rezolutie HD';
}

function EnableSD() {
	$('sd-toggle').onclick = function() {ToggleRes(2); return false};
	$('sd-toggle').className = 'sd-toggle';
	$('sd-toggle').title = 'Rezolutie SD';
}

function DisableHD() {
	$('hd-toggle').onclick = function() {return false};
	$('hd-toggle').className = 'hd-disable';
	$('hd-toggle').title = 'Rezolutia HD nu este disponibila';
}

function DisableSD() {
	$('sd-toggle').onclick = function() {return false};
	$('sd-toggle').className = 'sd-disable';
	$('sd-toggle').title = 'Rezolutia SD nu este disponibila';
}

function SetHD() {
	$('hd-toggle').onclick = function() {return false};
	$('hd-toggle').className = 'hd-enable';
	SetResIcon('lo');
}

function SetSD() {
	$('sd-toggle').onclick = function() {return false};
	$('sd-toggle').className = 'sd-enable';
	SetResIcon('disable');
}

function UnsetHD() {
	if (FileHD != null)	EnableHD();
}

function UnsetSD() {
	if (FileSD != null)	EnableSD();
}

function SetResIcon(res) {
	if ( (res == 'hi' && FileHD != null && $('player').getWidth() == lo_w && ($('player').getHeight() - 19) == lo_h) || (res == 'hi-enable' && FileHD != null)) {
		$('res-toggle').className = 'hi-toggle';
		$('res-toggle').onclick = function() { SetPlayerSize(hi_w, hi_h); SetResIcon('lo'); return false }
		$('res-toggle').title = 'Mariti dimensiunea player-ului';
	}
	if (res == 'lo' && $('player').getWidth() == hi_w && ($('player').getHeight() - 19) == hi_h) {
		$('res-toggle').className = 'lo-toggle';
		$('res-toggle').onclick = function() { SetPlayerSize(lo_w, lo_h); SetResIcon('hi'); return false }
		$('res-toggle').title = 'Reduceti dimensiunea player-ului';
	}
	if ((res == 'hi' && FileHD == null) || (res == 'disable')) {
		$('res-toggle').className = 'res-disable';
		$('res-toggle').onclick = function() { return false }
		$('res-toggle').title = 'Player-ul nu poate fi marit decat in format HD';
	}
}

function ToggleRes(type) {
	seekPosition = currentPosition;
	if (type == 1 && FileHD != null) {
		SetPlayerSize(hi_w, hi_h);
		setCookie('userHD', 1);
		delCookie('userSD');
		player.sendEvent('LOAD', { 'streamer':FileHD, 'file':FileHD, 'image': ImageHD, 'type':'http' });
		player.sendEvent('PLAY','true')
		goSeek = true;
		SetHD();
		UnsetSD();
	}
	if (type == 2 && FileSD != null) {
		SetPlayerSize(lo_w, lo_h);
		setCookie('userSD', 1);
		delCookie('userHD');
		player.sendEvent('LOAD', { 'streamer':FileSD, 'file':FileSD, 'image': ImageSD, 'type':'http' });
		player.sendEvent('PLAY','true');
		goSeek = true;
		SetSD();
		UnsetHD();
	}
}
