var source_url = 'http://www.castrolfootball.com/';
//var base_url = 'http://localhost/bongda/';//Defined in the header
function toggleInfo(t){
	$('.swidget','#'+t).toggle();
	$('.sinfo','#'+t).toggle();
}

function update_epl_match_predictor(predictor_id, type) {
	$('#' + predictor_id + ' form #widget-type').val(type);
	var form_vars = $('#' + predictor_id + ' form').serialize();
	
	jQuery.getJSON('http://' + location.host + '/resources/ajax/epl_fixture_status.php?' + form_vars, function(data) {
		var fixture_status_id = data.fixture_status_id;

		if (fixture_status_id == 1) {
			$('#' + predictor_id + ' .eplpredictor_nav').hide();
		} else {
			$('#' + predictor_id + ' .eplpredictor_nav').show();
		}
	});	
	
	var generated_image = '/resources/images/eplpredictor/epl_widget_match.php?' + form_vars;
	$('#' + predictor_id + ' .generated_image img').attr('src', generated_image);
}

function update_predictor(predictor_id, type) {
	var form_vars = $('#' + predictor_id + ' form').serialize();
	
	var teamsinvolved;
	if (type == 'match') {
		teamsinvolved = $('#' + predictor_id + ' #widget-teama option:selected').attr('class') + '-' + $('#' + predictor_id + ' #widget-teamb option:selected').attr('class');
	} else {
		teamsinvolved = $('#' + predictor_id + ' select option:selected').attr('class');
	}
	teamsinvolved = teamsinvolved.replace(/\s/gi, '_');
	
	$('#' + predictor_id + ' #embedcode textarea').val(function(index, value){
		var embed_widget = value.match(/\/widget\/[a-zA-Z0-9_]*/).slice(0,1).toString().substr(8);
		value = value.replace(/\/widget\/[a-zA-Z0-9_]*\/[a-zA-Z0-9_\-]*/, '/widget/' + embed_widget + '/' + teamsinvolved);
		ret = value.replace(/\?[a-zA-Z0-9&=_]*/i, '?predictor=' + type + '&' + form_vars);
		$('.' + predictor_id + ' .embedcode textarea').val(ret);
		return ret;
	});
	
	var generated_image = source_url + 'resources/images/predictor/wc10_widget_' + type + '.php?' + form_vars;
	$('#' + predictor_id + ' .generated_image img').attr('src', generated_image);
}

function update_calculator(predictor_id, type) {
	var form_vars = $('#' + predictor_id + ' form').serialize();
	
	var teamsinvolved;
	if (type == 'match') {
		teamsinvolved = $('#' + predictor_id + ' #widget-teama option:selected').attr('class') + '-' + $('#' + predictor_id + ' #widget-teamb option:selected').attr('class');
	} else {
		teamsinvolved = $('#' + predictor_id + ' select option:selected').attr('class');
	}
	teamsinvolved = teamsinvolved.replace(/\s/gi, '_');
	
	$('#' + predictor_id + ' #embedcode textarea').val(function(index, value){
		var embed_widget = value.match(/\/widget\/[a-zA-Z0-9_]*/).slice(0,1).toString().substr(8);
		value = value.replace(/\/widget\/[a-zA-Z0-9_]*\/[a-zA-Z0-9_\-]*/, '/widget/' + embed_widget + '/' + teamsinvolved);
		ret = value.replace(/\?[a-zA-Z0-9&=_]*/i, '?calculator=' + type + '&' + form_vars);
		$('.' + predictor_id + ' .embedcode textarea').val(ret);
		return ret;
	});
	
	var generated_image = '/resources/images/predictor/ue12_widget_' + type + '.php?' + form_vars;
	$('#' + predictor_id + ' .generated_image img').attr('src', generated_image);
}

$(document).ready(function() {
	$('.widget .groupPredictor select').live('change', function() {
		var predictor_id = $(this).parents('.widget').attr('id');
		var team_id = $(this).val();
		var team_name = $('#' + predictor_id + ' select option:selected').text();
		var team_flag = source_url + 'resources/images/predictor/flags/sml/' + team_id + '.jpg';
	
		$('#' + predictor_id + ' .selector .col3 img').attr('src', team_flag);
		$('#' + predictor_id + ' .selector .col3 img').attr('alt', team_name);
		update_predictor(predictor_id, 'group');
	});

	$('.widget .groupCalculator select[name=team]').live('change', function() {
		var predictor_id = $(this).parents('.widget').attr('id');
		var team_id = $(this).val();
		var team_name = $('#' + predictor_id + ' select[name=team] option:selected').text();
		var team_flag = '/resources/images/predictor/flags/sml/' + team_id + '.jpg';
	
		$('#' + predictor_id + ' .selector .col3 img').attr('src', team_flag);
		$('#' + predictor_id + ' .selector .col3 img').attr('alt', team_name);
		
		var form_vars = $(this).parents('form').serialize();
		
		var teamsinvolved = $('#' + predictor_id + ' select[name=team] option:selected').attr('class');
		teamsinvolved = teamsinvolved.replace(/\s/gi, '_');
	
		$('#' + predictor_id + ' #embedcode textarea').val(function(index, value){
			var embed_widget = value.match(/\/widget\/[a-zA-Z0-9_]*/).slice(0,1).toString().substr(8);
			value = value.replace(/\/widget\/[a-zA-Z0-9_]*\/[a-zA-Z0-9_\-]*/, '/widget/' + embed_widget + '/' + teamsinvolved);
			var ret = value.replace(/\?[a-zA-Z0-9&=_]*/i, '?calculator=group&' + form_vars);
			$('.' + predictor_id + ' .embedcode textarea').val(ret);
			return ret;
		});
	
		var generated_image = '/resources/images/predictor/ue12_widget_group.php?' + form_vars;
		$('#' + predictor_id + ' .generated_image img').attr('src', generated_image);
	});
	
	$('.widget .groupCalculator select[name=group]').live('change', function() {
		var predictor_id = $(this).parents('.widget').attr('id');
		var form_vars = $(this).parents('form').serialize();
	
		var group_id = $('#' + predictor_id + ' select[name=group] option:selected').val();
	
		$('#' + predictor_id + ' #embedcode textarea').val(function(index, value){
			var embed_widget = value.match(/\/widget\/[a-zA-Z0-9_]*/).slice(0,1).toString().substr(8);
			value = value.replace(/\/widget\/[a-zA-Z0-9_]*\/[a-zA-Z0-9_\-]*/, '/widget/' + embed_widget + '/Group' + group_id);
			var ret = value.replace(/\?[a-zA-Z0-9&=_]*/i, '?calculator=group&' + form_vars);
			$('.' + predictor_id + ' .embedcode textarea').val(ret);
			return ret;
		});
		
		var generated_image = '/resources/images/predictor/ue12_widget_group.php?' + form_vars;
		$('#' + predictor_id + ' .generated_image img').attr('src', generated_image);
	});
	
	$('.widget .matchPredictor select').live('change', function() {
		var predictor_id = $(this).parents('.widget').attr('id');
		if ($('#' + predictor_id + ' #widget-teama').val() != $('#' + predictor_id + ' #widget-teamb').val()) {
			var select_id = $(this).attr('id');
			var team_id = $(this).val();
			var team_name = $('#' + predictor_id + ' #' + select_id + ' option:selected').text();
			var team_flag = source_url + 'resources/images/predictor/flags/sml/' + team_id + '.jpg';
	
			$('#' + predictor_id + ' .' + select_id + ' img').attr('src', team_flag);
			$('#' + predictor_id + ' .' + select_id + ' img').attr('alt', team_name);
			update_predictor(predictor_id, 'match');
		}
	});
	
	$('.widget .matchCalculator select').live('change', function() {
		var predictor_id = $(this).parents('.widget').attr('id');
		if ($('#' + predictor_id + ' #widget-teama').val() != $('#' + predictor_id + ' #widget-teamb').val()) {
			var select_id = $(this).attr('id');
			var team_id = $(this).val();
			var team_name = $('#' + predictor_id + ' #' + select_id + ' option:selected').text();
			var team_flag = '/resources/images/predictor/flags/Small_23x16/' + team_id + '.gif';
	
			$('#' + predictor_id + ' .' + select_id + ' img').attr('src', team_flag);
			$('#' + predictor_id + ' .' + select_id + ' img').attr('alt', team_name);
			
			if (select_id == 'widget-teama') {
				$('#' + predictor_id + ' #widget-teamb').attr("disabled", true);
				var selected = $('#' + predictor_id + ' #widget-teamb').val()
				$('#' + predictor_id + ' #widget-teamb').load("/widget/calculators/teams.php", { 'selected': selected, 'exclude': team_id }, function(){
					$('#' + predictor_id + ' #widget-teamb').removeAttr("disabled");

					update_calculator(predictor_id, 'match');
				});
			}
			
			if (select_id == 'widget-teamb') {
				$('#' + predictor_id + ' #widget-teama').attr("disabled", true);
				var selected = $('#' + predictor_id + ' #widget-teama').val()
				$('#' + predictor_id + ' #widget-teama').load("/widget/calculators/teams.php", { 'selected': selected, 'exclude': team_id }, function(){
					$('#' + predictor_id + ' #widget-teama').removeAttr("disabled");

					update_calculator(predictor_id, 'match');
				});
			}
		}
	});
	
	$('.widget .opponentPredictor select').live('change', function() {
		var predictor_id = $(this).parents('.widget').attr('id');
		var team_id = $(this).val();
		var team_name = $('#' + predictor_id + ' select option:selected').text();
		var team_flag = source_url + 'resources/images/predictor/flags/sml/' + team_id + '.jpg';
			
		$('#' + predictor_id + ' .selector .col3 img').attr('src', team_flag);
		$('#' + predictor_id + ' .selector .col3 img').attr('alt', team_name);
		update_predictor(predictor_id, 'opponent');
	});

	
	$('.widget .opponentPredictor .widget-tabs a').live('click', function() {
		var predictor_id = $(this).parents('.widget').attr('id');
		var qualify = $(this).attr('id').substr(8);
		$('#' + predictor_id + ' input[name=qualify]').val(qualify);
		$('#' + predictor_id + ' .widget-tabs li').removeClass('active');
		$(this).parent().addClass('active');
		update_predictor(predictor_id, 'opponent');

		return false;
	});
	
	$('.widget .successPredictor select').live('change', function() {
		var predictor_id = $(this).parents('.widget').attr('id');
		var team_id = $(this).val();
		var team_name = $('#' + predictor_id + ' select option:selected').text();
		var team_flag = source_url + 'resources/images/predictor/flags/sml/' + team_id + '.jpg';
	
		$('#' + predictor_id + ' .selector .col3 img').attr('src', team_flag);
		$('#' + predictor_id + ' .selector .col3 img').attr('alt', team_name);
		update_predictor(predictor_id, 'success');
	});

	$('.widget .successPredictor input').live('change', function() {
		var predictor_id = $(this).parents('.widget').attr('id');
		update_predictor(predictor_id, 'success');
	});

	$('.widget .predictor_nav li a').live('click', function() {
		var predictor_id = $(this).parents('.widget').attr('id');
		var type = $(this).parent().attr('class').split(' ').slice(0,1).toString();
		var team_id = $('#' + predictor_id + ' select[name=team], #' + predictor_id + ' select[name=teama]').val();
		var internalReq = true;
		if ($('#' + predictor_id).parent().hasClass('ex-widget')) {
			internalReq = false;
		}
		
		$('#' + predictor_id).load(base_url+'predictor/ajaxPredictor/?type=' + type + '&name=' + predictor_id + '&team_id=' + team_id + '&internalReq=' + internalReq +  ' #' + predictor_id + '> *');
		
		return false;
	});

	$('.widget .predictor_nav li').live('click', function() {
		var predictor_id = $(this).parents('.widget').attr('id');
		var type = $(this).attr('class').split(' ').slice(0,1).toString();
		var team_id = $('#' + predictor_id + ' select[name=team], #' + predictor_id + ' select[name=teama]').val();
		var internalReq = true;
		if ($('#' + predictor_id).parent().hasClass('ex-widget')) {
			internalReq = false;
		}
		
		$('#' + predictor_id).load(base_url+'predictor/ajaxPredictor/?type=' + type + '&name=' + predictor_id + '&team_id=' + team_id + '&internalReq=' + internalReq +  ' #' + predictor_id + '> *');
	});

	$('.widget .calculator_nav .min, .widget .eplpredictor_nav .min').live('click', function() {
		$(this).removeClass('min').addClass('max');

		return false;
	});

	$('.widget .calculator_nav .max .close, .widget .eplpredictor_nav .max .close').live('click', function() {
		$(this).parent().removeClass('max').addClass('min');

		return false;
	});

	$('.widget .calculator_nav li, .widget .calculator_nav .btn_right-arrow, .widget .calculator_nav .btn_left-arrow').live('click', function() {
		var predictor_id = $(this).parents('.widget').attr('id');
		var type = $(this).attr('class').split(' ').slice(0,1).toString();
		var team_id = $('#' + predictor_id + ' select[name=team], #' + predictor_id + ' select[name=teama], #' + predictor_id + ' input[name=team]').val();
		var internalReq = true;
		if ($('#' + predictor_id).parent().hasClass('ex-widget')) {
			internalReq = false;
		}
		var trans = $('#trans_flag').text();
		if(!trans){ trans = '0'; }
		
		$('#' + predictor_id).load('/widget/calculator.php?type=' + type + '&name=' + predictor_id + '&team_id=' + team_id + '&internalReq=' + internalReq + '&trans=' + trans +  ' #' + predictor_id + '> *', function(){
			var embed_code = $('#' + predictor_id + ' .hinfo .popupbox textarea').val();
			$('.' + predictor_id + ' .embedcode textarea').val(embed_code);
		});

		return false;
	});
	
	if ($('.widget .matchEPLPredictor form').length > 0) {
		$('.widget .matchEPLPredictor form')[0].reset();
	}

	$('.widget .matchEPLPredictor select').live('change', function() {
		var predictor_id = $(this).parents('.widget').attr('id');
		if ($('#' + predictor_id + ' #widget-teama').val() != $('#' + predictor_id + ' #widget-teamb').val()) {
			var select_id = $(this).attr('id');
			var team_id = $(this).val();
			var team_name = $('#' + predictor_id + ' #' + select_id + ' option:selected').text();
			var team_shirt = '/resources/images/eplpredictor/team-shirts/26x17/shirt-' + team_id + '.png';
	
			$('#' + predictor_id + ' .' + select_id + ' img').attr('src', team_shirt);
			$('#' + predictor_id + ' .' + select_id + ' img').attr('alt', team_name);
			
			var type = $('#' + predictor_id + ' form #widget-type').val();
			
			if (select_id == 'widget-teama') {
				$('#' + predictor_id + ' #widget-teamb').attr("disabled", true);
				var selected = $('#' + predictor_id + ' #widget-teamb').val();
				$('#' + predictor_id + ' #widget-teamb').load("/widget/castrol_widget_EPLPredictor/teams.php", { 'selected': selected, 'exclude': team_id, 'select_name': 'widget-teamb' }, function() {
					$('#' + predictor_id + ' #widget-teamb').removeAttr("disabled");

					$('#' + predictor_id + ' #widget-teama option[value=-1]').remove();
					
					if (($('#' + predictor_id + ' #widget-teama').val() != -1) && ($('#' + predictor_id + ' #widget-teamb').val() != -1)) {
						update_epl_match_predictor(predictor_id, type);
					}
				});
			}
			if (select_id == 'widget-teamb') {
				$('#' + predictor_id + ' #widget-teama').attr("disabled", true);
				var selected = $('#' + predictor_id + ' #widget-teama').val()
				$('#' + predictor_id + ' #widget-teama').load("/widget/castrol_widget_EPLPredictor/teams.php", { 'selected': selected, 'exclude': team_id, 'select_name': 'widget-teama' }, function() {
					$('#' + predictor_id + ' #widget-teama').removeAttr("disabled");
					
					$('#' + predictor_id + ' #widget-teamb option[value=-1]').remove();
					
					if (($('#' + predictor_id + ' #widget-teama').val() != -1) && ($('#' + predictor_id + ' #widget-teamb').val() != -1)) {
						update_epl_match_predictor(predictor_id, type);
					}
				});
			}
		}
	});

	$('.widget .matchEPLPredictor .eplpredictor_nav ul li a').live('click', function() {
		var predictor_id = $(this).parents('.widget').attr('id');
		var type = $(this).parent().attr('class').split(' ').slice(0,1).toString();
		
		$('#' + predictor_id + ' form #widget-type').val(type);
		update_epl_match_predictor(predictor_id, type);
		
		$('#' + predictor_id + ' .eplpredictor_nav ul li').removeClass('active');
		$(this).parent().addClass('active');
		
		$('#' + predictor_id + ' .eplpredictor_nav .max').removeClass('max').addClass('min');
		
		return false;
	});
});

