function openGetMoreCreditsLightbox(purchaseCost) {
	trackPageLightbox("add_power_tokens_CM");
	layer = "content_get_more_credits";
	openLightBox(778, 'key:get_more_credits_title', '<div id="'+layer+'"></div>', '', 0);
	var params = [];
	params["purchase_cost"] = purchaseCost;
	loadPaymentHtml(3, layer, params);
}

function openProductLightbox(productName, referenceId, onCloseFunction) {
	if (referenceId == undefined) {
		onCloseFuntion = "";
	}
	layer = "content_product";
	openLightBox(440, 'key:product_lightbox_title', '<div id="'+layer+'"></div>', '', 0, '', '', '', '', '', '', "clearSessionCupInfo('"+productName+"', "+referenceId+"); lightboxHide(); " + onCloseFunction);
	var params = [];
	params["product_name"] = productName;
	if (referenceId != undefined) {
		params["reference_id"] = referenceId;
	}
	loadPaymentHtml(1, layer, params);
}

function openConfirmProductsLightbox(productNames, confirmFunctionName, skipButtonLanguageKey) {
	layer = "content_product";
	openLightBox(440, 'key:product_lightbox_title', '<div id="'+layer+'"></div>', '', 0, '', '', '', '', '', '', "lightboxHide();");
	var params = [];
	params["product_names"] = productNames.join(":");
	params["confirm_function_name"] = confirmFunctionName;
	params["skip_button_language_key"] = skipButtonLanguageKey;
	
	loadPaymentHtml(100, layer, params);
}


function clearSessionCupInfo(productName, cupId) {
	if(productName == "clan_cup" || productName == "fan_cup") {
		ajaxCall("com/authenticated/ajax/com.php", "val=clearSessionCupInfo");
		var matchmakingFlash = getFlashByID("matchmaking");
		if(matchmakingFlash == null) {
			return;
		}
		if (matchmakingFlash.cancelJoinCup) {
			matchmakingFlash.cancelJoinCup(cupId);
		}
	}
}

function openCheckoutLightbox(productName) {
	layer = "content_checkout";
	openLightBox(778, 'key:product_checkout_title', '<div id="'+layer+'"></div>', '', 0);
	var params = [];
	params["product_name"] = productName;
	loadPaymentHtml(6, layer, params);
}

function loadPaymentHtml(template, layer, params) {
	var paramStr = '';
	for (var i in params) {
		paramStr += '&'+i+'='+params[i];
	}
	layer_write(layer, "<div style=\"text-align: center; padding-bottom: 20px;\"><img src=\"common/img/icons/ajax_loader.gif\" width=\"16\" height=\"16\"></div>");
	ajaxCall("com/authenticated/ajax/payment.php", "val=loadPaymentHtml&template="+template+paramStr, "writeLayerInLightbox", layer);
}

function paymentMethodButtonPressed(paymentMethodId, productId, count, index) {
	for (var i = 0; i < count; i++) {
		var fullContent = document.getElementById('payment_full_content_' + i);
		var radioButton = document.getElementById('payment_radio_button_' + i);

		if (i == index) {
			fullContent.innerHTML = '<div style="text-align: center; padding: 10px;"><img src="common/img/icons/ajax_loader.gif" width="16" height="16"></div>';
			fullContent.style.display = 'block';
			radioButton.checked = 'checked';
			ajaxCall('com/authenticated/ajax/payment.php', 'val=loadPaymentStepHtml&payment_method_id=' + paymentMethodId + '&product_id=' + productId, 'writeLayerInLightbox', fullContent.id);
		}
		else {
			fullContent.innerHTML = '';
			fullContent.style.display = 'none';
			radioButton.checked = '';
		}
	}
}

function validateKambiCode() {
	var kambi_code = document.getElementById('kambi_code');
	var product_id = document.getElementById('product_id');

	if (kambi_code && product_id) {
		ajaxCall('com/authenticated/ajax/payment.php', 'val=validateKambiCode&kambi_code=' + kambi_code.value + '&product_id=' + product_id.value, 'ajax_handleKambiResponse', '');
	}
}

function ajax_handleKambiResponse(readyState, response, responseParameter) {
	if (readyState == 4) {
		if (response == true) {
			document.getElementById('kambi_response_accepted').style.display="";
			document.getElementById('kambi_response_denied').style.display="none";
			trackPageEvent('checkout_completed_SMS');
		}
		else {
			document.getElementById('kambi_response_accepted').style.display="none";
			document.getElementById('kambi_response_denied').style.display="";
			trackPageEvent('checkout_denied_SMS');
		}
	}
}

function purchaseMade(productName) {
	ajaxCall('com/authenticated/ajax/payment.php', 'val=purchaseMade&product_name='+productName, 'ajax_purchaseMadeResponse', '');
}

function ajax_purchaseMadeResponse(readyState, response, responseParameter) {
	if (readyState == 4) {
		if (response != "") {
			var accountPageCredits = document.getElementById('account_page_credits');
			var productPageCredits = document.getElementById('product_page_credits');
			var credits = response;

			if (accountPageCredits) {
				accountPageCredits.innerHTML = credits;
			}
			if (productPageCredits) {
				var cost = document.getElementById('product_page_cost').innerHTML;
				productPageCredits.innerHTML = credits;

				if (cost > credits) {
					document.getElementById('button_get_it_active').style.display = 'none';
					document.getElementById('button_get_it_inactive').style.display = '';
					document.getElementById('button_get_more_credits').style.display = '';
				}
				else {
					document.getElementById('button_get_it_active').style.display = '';
					document.getElementById('button_get_it_inactive').style.display = 'none';
					document.getElementById('button_get_more_credits').style.display = 'none';
				}
			}
		}
	}
}
