/**
 * @author Arturas Paleicikas <arturas.paleicikas@metasite.net>
 */

var log = function(d) {
	if (window.console && window.console.log)
		window.console.log(d);
};

$(document).ready(function(){
    if (($zaliasLink = $('a.__callRenkuosiZaliaVideo1')).length)
    {
        $zaliasLink.callFlashInPopup(840, {width:800, height:452, src:fullBase + 'flash/minisite/renkuosi_zalia/lt/video/1.swf'});
	    $('a.__callRenkuosiZaliaVideo2').callFlashInPopup(840, {width:800, height:452, src:fullBase + 'flash/minisite/renkuosi_zalia/lt/video/2.swf'});
    }

});

jQuery.fn.callFlashInPopup	= function(width, params){
	var cache = {};
	return this.each(function(i){
		$(this)
			.unbind('click')
			.click(function(){
				log('calling flash popup');

				var html = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="' + (params.width || '100%') +'" height="' + (params.height || '100%') +'" id="flash" align="middle">'
				+ '<param name="allowScriptAccess" value="sameDomain" />'
				+ '<param name="movie" value="' + params.src +'" />'
				+ '<param name="quality" value="high" />'
				+ '<param name="wmode" value="transparent" />'
				+ '<param name="bgcolor" value="#ffffff" />'
				+ '<embed src="' + params.src +'" quality="high" bgcolor="#ffffff" width="' + (params.width || '100%') +'" height="' + (params.height || '100%') +'" name="flash" wmode="transparent" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />'
				+ '</object>';

				/*
				var html = '<object type="application/x-shockwave-flash" data="' + params.src +'" width="' + (params.width || '100%') +'" height="' + (params.height || '100%') +'">'
							+ '<param name="movie" value="' + params.src +'" />'
							+ '</object>';
				*/
				jQuery.__callPopup(html, width);
				return false;
			});
	});
};

// private
jQuery.__callPopup = function(data, width){
	$.blockUI({
		css: {
			width: width,
			left:'50%',
			marginLeft: -(width/2) +'px',
			marginTop: '50px',
			background: 'none',
			border: 'none',
			top: 0,
			padding: 0,
			textAlign: 'left',
			color: '#000',
			cursor: 'default',
			zIndex: 9999999
		},
		overlayCSS: {
			backgroundColor: '#000',
			opacity: 0.3,
			cursor: 'default',
			zIndex: 999999
		},
		message:
			'<div id="callFormBlock">'
				+ '<div class="close">'
					+ '<a href="javascript:;" onclick="$.unblockUI();"><img src="images/common/close.gif" alt="" /></a>'
				+ '</div>'
				+ '<div class="output">'
				+ data
				+ '</div>'
			+ '</div>'
			+ '<div id="callFormBlockInner"></div>'
	});
};




// TODO: rewrite logic below this line
// ---
function assistant(inited){
	if(!inited){
		$.get(fullBase + lang +'/c/assistant/', {}, function(data){
			$('body').append(data);
			assistant(true);
		});

	} else {
		var $assistant = $('#assistant');
		var $overlay = $("#overlay")
		form_overlay('assistant');

		if ('none' == $assistant.css('display'))
		{
			$assistant.show();
		} else {
			$assistant.hide();
			$overlay.hide();
		}
	}
}

/* popup order device */
function popup_order_device(inited){
	if(!inited){
		$.get(fullBase + lang +'/c/popup_order_device/', {}, function(data){
			$('body').append(data);
			popup_order_device(true);
		});

	} else {
		var $popup = $('#orderDevice');
		var $form = $('#orderDevice form');
		var $report = $('#orderDevice div.report');
		var $overlay = $("#overlay")
		form_overlay('orderDevice');

		if ('none' == $popup.css('display')){
			$popup.show();

			$form.submit(function(){
				var error = 0;

				if(!isValidByPattern('f-name', nameValidationPattern))
					error++;

				if(!isValidByPattern('f-phone', phoneStrongValidationPattern))
					error++;

				if(getElementValue('f-email')){
					if(!isValidByPattern('f-email', emailValidationPattern))
						error++;
				}

				if(!isValidByPattern('f-devices', nameValidationPattern))
					error++;

				if(!isValidByPattern('f-outlets', emailValidationPattern))
					error++;

				if(!error) {
					$.post(
					fullBase + lang +'/c/popup_order_device/send/',
					{
						'data[name]': getElementValue('f-name'),
						'data[phone]': getElementValue('f-phone'),
						'data[email]': getElementValue('f-email'),
						'data[device]': getElementValue('f-devices'),
						'data[mailto]': getElementValue('f-outlets')
					},
					function(data){
						switch(data){
							case 'true':
							$form.hide();
							$report.show();
							break;
						}
					});
				}


				return false;
			});

		} else {
			$popup.remove();
			$overlay.hide();
		}
	}
}

/* FEEDBACK */
function feedBack (inited)
{
	if(!inited)
	{
		$.get(fullBase + lang +'/c/feedbacks/view', {}, function(data){
			$('body').append(data);
			feedBack(true);
		});

	} else {

		form_overlay('feedback');
		var $feedback = $('#feedback');

		if ('none' == $feedback.css('display'))
		{
			if(getElementValue('feedbackName')) isValidByPattern('feedbackName', nameValidationPatternE);
			if(getElementValue('feedbackPhone')) isValidByPattern('feedbackPhone', phoneValidationPatternE);
			if(getElementValue('feedbackEmail')) isValidByPattern('feedbackEmail', emailValidationPattern);

			$("#rss").hide();
			$("#news").hide();
			$("#sendFriend").hide();
			$("#feedback").show();
			$("#feedBackBlock").show();
			$("#feedBackBlockSuc").hide();
		} else {
			$feedback.hide();;
			$("#overlay").hide();
		}
	}
}
function feedBackSubmit (lang, link)
{
	$("#feedBackBlock").hide();
	$('#feedbackLoading').show();

	// AJAX form submit
	$.post(fullBase+lang+"/misc/feedback/submit/",
		{
			name : getElementValue("feedbackName"),
			phone : getElementValue("feedbackPhone"),
			email : getElementValue("feedbackEmail"),
			comment : getElementValue("feedbackComment"),
			link : link
		},
		function(res)
		{
			if(/^true.*/.test(res))
				$("#feedBackBlockSuc").show();
			else
			{
				$("#feedBackBlock").show();
				forceCheckFeedback();
			}
			$('#feedbackLoading').hide();
		});
}
// do not forget to add check, if one more element required to check
function forceCheckFeedback()
{
	var checkRes = true;
	if(!isValidByPattern('feedbackName', nameValidationPatternE))
		checkRes = false;
	if(!isValidByPattern('feedbackPhone', phoneValidationPatternE))
		checkRes = false;
	if(!isValidByPattern('feedbackEmail', emailValidationPattern))
		checkRes = false;
	if(!isEmpty('feedbackComment'))
		checkRes = false;
	return checkRes;
}

/* SEND FRIEND */
function sendFriend(url, inited)
{
	if(!inited)
	{
		$.get(fullBase + lang +'/c/send_friend/view', {}, function(data){
			$('body').append(data);
			sendFriend(url, true);
		});

	} else {

		form_overlay('sendFriend');
		var $sendFriend = $('#sendFriend');

		if ('none' == $sendFriend.css('display'))
		{
			if(getElementValue('sendFriendSenderName')) isEmpty("sendFriendSenderName");
			if(getElementValue('sendFriendReceiverEmail')) isValidByPattern("sendFriendReceiverEmail", emailValidationPattern);

			$("#rss").hide();
			$("#news").hide();
			$("#feedback").hide();
			$("#sendFriend").show();
			$("#sendFriendBlock").show();
			$("#sendFriendBlockSuc").hide();
			document.getElementById("sendFriendLink").innerHTML = url;
			document.getElementById("sendFriendLink").href = url;
			/**
			 * SUGGEST:
				$("#sendFriendLink").html(url);
				$("#sendFriendLink").attr('href', url);
			*/
		} else {
			$sendFriend.hide();
			$("#overlay").hide();
		}
	}
}
function sendFriendSubmit (lang, link, title, type)
{
	$("#sendFriendBlock").hide();
	$('#sendFriendLoading').show();

	// AJAX form submit
	$.post(fullBase+lang+"/misc/send_friend/submit/"+(type||''),
		{
			receiverEmail : getElementValue("sendFriendReceiverEmail"),
			senderName : getElementValue("sendFriendSenderName"),
			senderEmail : getElementValue("sendFriendSenderEmail"),
			comment : getElementValue("sendFriendComment"),
			link : link,
			title : title
		},
		function(res)
		{
			if(/^true.*/.test(res))
			{
				document.getElementById("sendFriendLinkWasSentTo").innerHTML = $("#sendFriendReceiverEmail").attr("value");
				$("#sendFriendBlockSuc").show();
				resetSendFriend();
			}
			else
			{
				$("#sendFriendBlock").show();
				forceCheckSendFriend();
			}
			$('#sendFriendLoading').hide();
		});
}
// do not forget to add check, if one more element required to check
function forceCheckSendFriend()
{
	var checkRes = true;
	if(!isEmpty("sendFriendSenderName"))
		checkRes = false;
	if(!isValidByPattern("sendFriendReceiverEmail", emailValidationPattern))
		checkRes = false;

	return checkRes;
}
function resetSendFriend()
{
	document.getElementById("sendFriendReceiverEmail").value = "";
	document.getElementById("sendFriendSenderName").value = "";
	document.getElementById("sendFriendSenderEmail").value = "";
	document.getElementById("sendFriendComment").value = "";
}

/*CHOOSE GREEN*/
function sendFriendGreen(url, inited)
{
	if(!inited)
	{
		$.get(fullBase + lang +'/c/send_friend/green', {}, function(data){
			$('body').append(data);
			sendFriend(url, true);
		});

	} else {

		form_overlay('sendFriend');
		var $sendFriend = $('#sendFriend');

		if ('none' == $sendFriend.css('display'))
		{
			if(getElementValue('sendFriendSenderName')) isEmpty("sendFriendSenderName");
			if(getElementValue('sendFriendReceiverEmail')) isValidByPattern("sendFriendReceiverEmail", emailValidationPattern);

			$("#rss").hide();
			$("#news").hide();
			$("#feedback").hide();
			$("#sendFriend").show();
			$("#sendFriendBlock").show();
			$("#sendFriendBlockSuc").hide();
			document.getElementById("sendFriendLink").innerHTML = url;
			document.getElementById("sendFriendLink").href = url;
			/**
			 * SUGGEST:
				$("#sendFriendLink").html(url);
				$("#sendFriendLink").attr('href', url);
			*/
		} else {
			$sendFriend.hide();
			$("#overlay").hide();
		}
	}
}

/* NEWS SUBSCRIBE */
var newsSubscriptionMes = '';
function news(inited)
{
	if(!inited)
	{
		$.get(fullBase + lang +'/c/news_subscribers/view', {}, function(data){
			$('body').append(data);
			news(true);
		});

	} else {

		form_overlay('news');
		var $news = $('#news');
		if('none' == $news.css('display'))
		{
			if(getElementValue('newsSubscribeEmail')) isValidByPattern('newsSubscribeEmail', emailValidationPattern);

			$("#feedback").hide();
			$("#rss").hide();
			$("#sendFriend").hide();
			$("#news").show();
			$("#newsBlock").show();
			$("#newsBlockSuc").hide();
		} else {
			$news.hide();
			$("#overlay").hide();
		}
	}
}

function newsSubmit (lang)
{
	if(newsSubscriptionMes == '')
		newsSubscriptionMes = $('#newsBlockSucText').html();
	$("#newsBlock").hide();
	$('#newsSubscribeLoading').show();

	// AJAX form submit
	$.post(fullBase+lang+"/misc/news_email/submit/",
		{
			lang : lang,
			email : $('#newsSubscribeEmail').attr('value'),
			bite_news : $('#newsSubscribeBiteNews').attr('checked'),
			private_offer : $('#newsSubscribePrivateOffer').attr('checked'),
			business_offer : $('#newsSubscribeBusinessOffer').attr('checked'),
			career : $('#newsSubscribeCareer').attr('checked'),
			phones : $('#newsSubscribePhones').attr('checked')
		},
		function(res)
		{
			if(/response==true.*/.test(res))
			{
				// message param set, if already subscribed
				if(/message=\"\'.*\"\'/.test(res))
				{
					document.getElementById('newsBlockSuc').style.textAlign = 'left';
					document.getElementById('newsBlockSuc').style.paddingTop = '20px';
					document.getElementById('newsBlockSuc').style.paddingLeft = '10px';

					var mes = /message=\"\'.*\"\'/.exec(res);
					mes = new String(mes.valueOf());
					mes = mes.replace(/message=/, '')
					mes = mes.substring(2, mes.length-2);
					$('#newsBlockSucText').html(mes);
				}
				else
				{
					document.getElementById('newsBlockSuc').style.textAlign = 'center';
					document.getElementById('newsBlockSuc').style.paddingTop = '40px';
					document.getElementById('newsBlockSuc').style.paddingLeft = '0px';
					$('#newsBlockSucText').html(newsSubscriptionMes);
				}
				$("#newsBlockSuc").show();
			}
			else
			{
				$("#newsBlock").show();
				newsSubscribeForceCheck();
			}
			$('#newsSubscribeLoading').hide();
		});
}
// do not forget to add check, if one more element required to check
function newsSubscribeForceCheck()
{
	var checkRes = true;
	var newsSelected = false;
	if(!isValidByPattern('newsSubscribeEmail', emailValidationPattern))
		checkRes = false;
	if($('#newsSubscribeBiteNews').attr('checked'))
		newsSelected = true;
	if($('#newsSubscribePrivateOffer').attr('checked'))
		newsSelected = true;
	if($('#newsSubscribeBusinessOffer').attr('checked'))
		newsSelected = true;
	if($('#newsSubscribeCareer').attr('checked'))
		newsSelected = true;
	if($('#newsSubscribePhones').attr('checked'))
		newsSelected = true;
	if(!newsSelected)
	{
		showIcon('newsSubscribeCat', false);
		checkRes = false;
	}
	else
		showIcon('newsSubscribeCat', true);
	return checkRes;

}

/* CAREER NEWS SUBSCRIBE */
var careerNewsSubscriptionMes = '';
function careerNews(inited)
{
	if(!inited)
	{
		$.get(fullBase + lang +'/c/news_subscribers/career_view', {}, function(data){
			$('body').append(data);
			careerNews(true);
		});

	} else {

		form_overlay('careerNews');
		var $careerNews = $('#careerNews');
		if('none' == $careerNews.css('display'))
		{
			if(getElementValue('careerNewsSubscribeEmail')) isValidByPattern('careerNewsSubscribeEmail', emailValidationPattern);

			$("#feedback").hide();
			$("#rss").hide();
			$("#sendFriend").hide();
			$("#news").hide();
			$("#newsBlock").hide();
			$("#newsBlockSuc").hide();

			$("#careerNews").show();
			$("#careerNewsBlock").show();
			$("#careerNewsBlockSuc").hide();
		} else {
			$careerNews.hide();
			$("#overlay").hide();
		}
	}
}

function careerNewsSubmit (lang)
{
	if(careerNewsSubscriptionMes == '')
		careerNewsSubscriptionMes = $('#careerNewsBlockSucText').html();
	$("#careerNewsBlock").hide();
	$('#careerNewsSubscribeLoading').show();

	// AJAX form submit
	$.post(fullBase+lang+"/misc/news_email/submit/",
		{
			lang : lang,
			email : $('#careerNewsSubscribeEmail').attr('value'),
			bite_news : 0,
			private_offer : 0,
			business_offer : 0,
			career : 1,
			phones : 0
		},
		function(res)
		{
			if(/response==true.*/.test(res))
			{
				// message param set, if already subscribed
				if(/message=\"\'.*\"\'/.test(res))
				{
					document.getElementById('careerNewsBlockSuc').style.textAlign = 'left';
					document.getElementById('careerNewsBlockSuc').style.paddingTop = '20px';
					document.getElementById('careerNewsBlockSuc').style.paddingLeft = '10px';

					var mes = /message=\"\'.*\"\'/.exec(res);
					mes = new String(mes.valueOf());
					mes = mes.replace(/message=/, '')
					mes = mes.substring(2, mes.length-2);
					$('#careerNewsBlockSucText').html(mes);
				}
				else
				{
					document.getElementById('careerNewsBlockSuc').style.textAlign = 'center';
					document.getElementById('careerNewsBlockSuc').style.paddingTop = '40px';
					document.getElementById('careerNewsBlockSuc').style.paddingLeft = '0px';
					$('#careerNewsBlockSucText').html(careerNewsSubscriptionMes);
				}
				$("#careerNewsBlockSuc").show();
			}
			else
			{
				$("#careerNewsBlock").show();
				careerNewsSubscribeForceCheck();
			}
			$('#careerNewsSubscribeLoading').hide();
		});
}
// do not forget to add check, if one more element required to check
function careerNewsSubscribeForceCheck()
{
	var checkRes = true;
	if(!isValidByPattern('careerNewsSubscribeEmail', emailValidationPattern))
		checkRes = false;
	return checkRes;

}

/* RSS SUBSCRIBE */
function rss(inited)
{
	if(!inited)
	{
		$.get(fullBase + lang +'/c/rss/view', {}, function(data){
			$('body').append(data);
			rss(true);
		});

	} else {

		form_overlay('rss');
		var $rss = $('#rss');

		if ('none' == $rss.css('display'))
		{
			$("#feedback").hide();
			$("#news").hide();
			$("#sendFriend").hide();
			$("#rss").show();
			$("#rssBlock").show();
			$("#rssBlockSuc").hide();
		} else {
			$rss.hide();
			$("#overlay").hide();
		}
	}
}

function rssSubmit ()
{
	$("#rssBlock").hide();
	$("#rssBlockSuc").show();
}


function form_overlay(id)
{
	$("#"+id).prependTo("body");

	var objOverlay = document.getElementById('overlay');
	var objForm = document.getElementById(id);
	var arrayPageSize = getPageSize();
	var arrayPageScroll = getPageScroll();
	objOverlay.style.height = (arrayPageSize[1] + 'px');
	objOverlay.style.display = 'block';
	$('#loadingImage').hide();
	var formTop = arrayPageScroll[1] + ((arrayPageSize[3] - 35 - $("#"+id).height()) / 2);
	var formLeft = ((arrayPageSize[0] - 20 - $("#"+id).width()) / 2);
	objForm.style.top = (formTop < 0) ? "0px" : formTop + "px";
	objForm.style.left = (formLeft < 0) ? "0px" : formLeft + "px";
}

/* BUSINESS PROPOSAL REQUEST */
function businessProposalRequestSubmit(defaultPhone, lang)
{
	$('#suggestBox').attr('style', 'cursor:wait;');
	// AJAX form submit
	$.post(fullBase+lang+"/misc/business_proposal_request/submit/",
		{
			'data[name]': getElementValue("businessProposalRequestName") || null,
			//'data[company]': getElementValue("businessProposalRequestCompany") || null,
			'data[phone]': getElementValue("businessProposalRequestPhone") || null,
			'data[lang]': lang || null
		},
		function(res)
		{
			if(/^true.*/.test(res))	{
				$('#suggestBox').attr('style', 'cursor:normal;');
				$("#BusinessProposalRequest_enter").hide();
				$("#BusinessProposalRequest_thankYou").show();
				resetBusinessProposalRequest(defaultPhone);
				$("#BusinessProposalRequest_thankYou_bg").Highlight(6000, '#FFF799');
			} else {
				$("#BusinessProposalRequest_enter").show();
				forceCheckBusinessProposalRequest(defaultPhone);
			}
		});
}

// do not forget to add check, if one more element required to check
function forceCheckBusinessProposalRequest(defaultPhone) {
	var checkRes = true;
	if(!isValidByPattern('businessProposalRequestName', nameValidationPattern))
		checkRes = false;
	//if(!isValidByPattern('businessProposalRequestCompany', nameValidationPattern))
	//	checkRes = false;
	if(!isValidByPattern('businessProposalRequestPhone', phoneStrongValidationPattern))
		checkRes = false;
	return checkRes;
}

function resetBusinessProposalRequest(defaultPhone) {
	$("#businessProposalRequestNameNo").hide();
	$("#businessProposalRequestNameYes").hide();
	$("#businessProposalRequestPhoneNo").hide();
	$("#businessProposalRequestPhoneYes").hide();
	$("#businessProposalRequestName").val('');
	//$("#businessProposalRequestCompany").val('');
	$("#businessProposalRequestPhone").value = defaultPhone;
}

/* ORDER WORLD NEWS */
function orderWorldNewsSubmit(lang)
{
	$("#orderWorldNews_enter").hide();
	$("#orderWorldNews_form").hide();
	$('#orderWorldNews_loading').show();

	// AJAX form submit
	$.post(fullBase+lang+"/misc/order_world_news/submit/",
		{
			lang		: lang,
			name		: getElementValue('orderWorldNewsName'),
			surname		: getElementValue('orderWorldNewsSurname'),
			address 	: getElementValue('orderWorldNewsAddress'),
			post_index	: getElementValue('orderWorldNewsPostIndex'),
			city		: getElementValue('orderWorldNewsCity')
		},
		function(res)
		{
			$('#orderWorldNews_loading').hide();
			if(/response==true.*/.test(res))	{
				$("#orderWorldNews_thankYou").show();
				resetOrderWorldNews();
			} else {
				$("#orderWorldNews_enter").show();
				$("#orderWorldNews_form").show();
				forceCheckOrderWorldNews();
			}
		});
}

// do not forget to add check, if one more element required to check
function forceCheckOrderWorldNews() {
	var checkRes = true;
	if(!isEmpty('orderWorldNewsName'))
		checkRes = false;
	if(!isEmpty('orderWorldNewsSurname'))
		checkRes = false;
	if(!isEmpty('orderWorldNewsAddress'))
		checkRes = false;
	if(!isEmpty('orderWorldNewsPostIndex'))
		checkRes = false;
	if(!isEmpty('orderWorldNewsCity'))
		checkRes = false;
	return checkRes;
}

function resetOrderWorldNews() {
	$("#orderWorldNewsName").attr('value', '');
	$("#orderWorldNewsSurname").attr('value', '');
	$("#orderWorldNewsAddress").attr('value', '');
	$("#orderWorldNewsPostIndex").attr('value', '');
	$("#orderWorldNewsCity").attr('value', '');
}

/* MY BITE */
function myBiteSubmit(lang, countryCode, redirectTo)
{
	$('#myBiteSubmitButton').hide();
	$('#myBiteLoading').show();

	// AJAX form submit
	$.post(fullBase+lang+"/misc/my_bite/submit/",
		{
			username : $('#myBiteUsername').attr('value'),
			password : $('#myBitePassword').attr('value'),
			lang : lang
		},
		function(res)
		{
			if(/loginDuomenysTeisingi.*/.test(res))
			{
				sessionId = new String(res.match(/loginDuomenysTeisingi.+?SidEND/));
				sessionId = new String(sessionId.replace(/loginDuomenysTeisingi=/,""));
				sessionId = new String(sessionId.replace(/SidEND/,""));
//				window.open(redirectTo+sessionId, 'myBite', "top=100, left=100, location=1, menubar=1, status=1, titlebar=1, scrollbars=1, minimizable=1, width=850, height=640, resizable=1, toolbar=1");
				window.location = redirectTo+sessionId;
			}
			else if(/loginDuomenysKlaidingi.*/.test(res))
			{
				showIcon('myBiteUsername', false);
				showIcon('myBitePassword', false);
			} else {
				myBiteForceCheck(countryCode);
			}
			$('#myBiteLoading').hide();
			$('#myBiteSubmitButton').show();
		});
}
function myBiteSetPhone(defaultText, countryCode)
{
	if(defaultText == $("#myBiteUsername").attr("value"))
		$("#myBiteUsername").attr("value", countryCode);
}
function myBiteSetPassword()
{
//	$('#myBitePassword').attr("type", "password");
//	$('#myBitePassword').attr("value", "");
	$('#myBitePasswordTmp').hide();
	$('#myBitePassword').show();
	$('#myBitePassword').focus();

}
function myBiteForceCheck(countryCode)
{
	var checkRes = true;
	if(!isValidPhone('myBiteUsername', countryCode))
		checkRes = false;
	if($("#myBitePassword").attr("type") != "password")
	{
		checkRes = false;
		showIcon('myBitePassword', false);
	}
	else
	{
		if(!isValidByPattern('myBitePassword', passwordValidationPattern))
			checkRes = false;
	}
	return checkRes;
}

/* NUMBER PORTABILITY */
function numberPortabilitySubmit(businessOrPrivate)
{
	$('#numberPortabilityForm').hide();
	$('#numberPortabilityLoading').show();
	var selectedIndex = document.getElementById('numberPortabilityOperator').selectedIndex;

	// AJAX form submit
	$.post(fullBase+lang+"/misc/np/submit/",
		{
			name	: $('#numberPortabilityName').attr('value'),
			person	: $('#numberPortabilityPerson').attr('value'),
			phone	: $('#numberPortabilityPhone').attr('value'),
			operator: document.getElementById('numberPortabilityOperator').options[selectedIndex].value,
			businessOrPrivate : businessOrPrivate
		},
		function(res)
		{
			if(/response==true.*/.test(res))
			{
				$('#numberPortabilityNameShow').attr('innerHTML', $('#numberPortabilityName').attr('value'));
				$('#numberPortabilityPersonShow').attr('innerHTML', $('#numberPortabilityPerson').attr('value'));
				$('#numberPortabilityPhoneShow').attr('innerHTML', $('#numberPortabilityPhone').attr('value'));
				$('#numberPortabilityOperatorShow').attr('innerHTML', document.getElementById('numberPortabilityOperator').options[selectedIndex].value);
				$('#numberPortabilityLoading').hide();
				$('#numberPortabilityThankYou').show();

				// reset values
				$('#numberPortabilityName').attr('value', '');
				$('#numberPortabilityPerson').attr('value', '');
				$('#numberPortabilityPhone').attr('value', '');
				document.getElementById('numberPortabilityOperator').selectedIndex = 0;
			}
			else if(/response==false.*/.test(res))
			{
				$('#numberPortabilityLoading').hide();
				$('#numberPortabilityForm').show();
				numberPortabilityForceCheck();
			} else {
				$('#numberPortabilityLoading').hide();
				$('#numberPortabilityForm').show();
				numberPortabilityForceCheck();
			}
		});
}

function numberPortabilityForceCheck()
{
	var checkRes = true;
	if(!isEmpty('numberPortabilityName'))
		checkRes = false;
	if(!isValidPhone('numberPortabilityPhone', ''))
		checkRes = false;
	return checkRes;
}

/* COVERAGE STATION REQS */
function coverageStationReqs()
{
	if(!isEmpty('CoverageStationReqCity'))
	{
		$('#CoverageStationReqCity').focus();
		return false;
	}
//	if(!isEmpty('CoverageStationReqStreet'))
//	{
//		$('#CoverageStationReqStreet').focus();
//		return false;
//	}
	if(!isEmpty('CoverageStationReqHouse'))
	{
		$('#CoverageStationReqHouse').focus();
		return false;
	}
	return true;
}

/* HELPERS */
function getElementValue(id)
{
	var element = document.getElementById(id);

	if(typeof initial == "undefined")
		return element.value;

	// get right element's value, it's tricky because after blur value may be changed
	if((element.title == initial) && (!element.value))
		return initial;
	return element.value;
}

function isEmpty(id)
{
	var value = getElementValue(id);
	value = value.replace(/^\s+/, '');
	value = value.replace(/\s+$/, '');

	if(value && value!="undefined")
	{
		showIcon(id, true);
		return true;
	}
	showIcon(id, false);
	return false;
}

/**
 * check if is valid by pattern
 * first replace symbols which matches remove pattern with ''
 * remove spaces at end and begining of the string
 **/
function isValidByPattern2(id, pattern, remove)
{
	var value = getElementValue(id);
	value = value.replace(remove, '');
	value = value.replace(/^\s+/, '');
	value = value.replace(/\s+$/, '');
	if(pattern.test(value))
	{
		showIcon(id, true);
		return true;
	}
	showIcon(id, false);
	return false;
}

function isValidByPattern(id, pattern)
{
	var value = getElementValue(id);
	value = value.replace(/^\s+/, '');
	value = value.replace(/\s+$/, '');
	if(pattern.test(value))
	{
		showIcon(id, true);
		return true;
	}
	showIcon(id, false);
	return false;
}

function isValidPhone(id, defaultValue)
{
	phone = getElementValue(id);
	phone = phone.replace(/^\s+/, '');
	phone = phone.replace(/\s+$/, '');
	if(phone=="undefined" || phone=="" || phone==defaultValue)
	{
		showIcon(id, false);
		return false;
	}
	return isValidByPattern(id, phoneValidationPattern);
}


function isValidPhoneStrong(id, defaultValue)
{
	phone = getElementValue(id);
	phone = phone.replace(/^\s+/, '');
	phone = phone.replace(/\s+$/, '');
	if(phone=="undefined" || phone=="" || phone==defaultValue)
	{
		showIcon(id, false);
		return false;
	}
	return isValidByPattern(id, phoneStrongValidationPattern);
}

function showIcon(id, valid)
{
	var $id = $('#'+id);
	if(id!='newsSubscribeCat')
	{
		if(valid)
			$id.removeClass("inputErrorBorder").addClass("inputValidBorder");
		else
			$id.removeClass("inputValidBorder").addClass("inputErrorBorder");
	}
	else
	{
		if(valid)
			$id.removeClass("inputErrorBorder").addClass("inputValidColor");
		else
			$id.removeClass("inputValidBorder").addClass("inputErrorColor");
	}
}

// rewrite: remove inputErrorBorder, inputErrorBorder classes
function hideIcons(id)
{
	$('#'+ id +"Yes").hide();
	$('#'+ id +"No").hide();
	$('#'+id).removeClass('inputErrorBorder').removeClass('inputValidBorder');
}

function open_movie(){
	window.open($('base').attr('href')+'custom/mano_bite/mano_bite.html', 'BITE', 'height=320, width=520, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, directories=no, status=no');
}

String.prototype.trim = function()
{
	a = this.replace(/^\s+/, '');
	return a.replace(/\s+$/, '');
};



/* SPEC.OFFER SUBSCRIBE */
function specoffer(customer_type, inited)
{
    if (!inited)
    {
        $.get(fullBase + lang +'/c/specoffer_subscribers/view', {}, function(data){
            $('body').append(data);
			$('#newsBlock input').val('').removeClass('inputValidBorder').removeClass('inputErrorBorder');
            $('#newsBlock input#subscribePhone').val('+370');
            specoffer(customer_type, true);
        });

    }else{

        form_overlay('news');
        if('none' == $('#news').css('display')) {
			speofferCommonInit(customer_type);

        }else{
            $('#news').hide();
            $("#overlay").hide();
        }
    }
}

function speofferCommonInit(customer_type)
{
        if(getElementValue('subscribeEmail')) isValidByPattern('subscribeEmail', emailValidationPattern);

            $("#news").show();
            $("#newsBlock").show();
            $("#newsBlockSuc").hide();
            $(".links").show();

            $bc_field = $("#newsBlock .bc_field");
            $pc_field = $("#newsBlock .pc_field");
            if (customer_type == 'pc') {
				adaptFormForCustomer('pc');
            }else{
				adaptFormForCustomer('bc');
            }

            $("a#switch_bc").click(function(){
				adaptFormForCustomer('bc');
            });

            $("a#switch_pc").click(function(){
				adaptFormForCustomer('pc');
            });
}

function adaptFormForCustomer(customer_type)
{
	if (customer_type == 'bc')
	{
		$bc_field.show();
        $pc_field.hide();
		$('a#switch_bc').addClass('active');
		$('a#switch_pc').removeClass('active');
		$('.subtitle_bc').show();
		$('.subtitle_pc').hide();
	}
	else
	{
		$bc_field.hide();
        $pc_field.show();
		$('a#switch_bc').removeClass('active');
		$('a#switch_pc').addClass('active');
		$('.subtitle_bc').hide();
		$('.subtitle_pc').show();
	}
}


function subscribeForceCheck()
{
    checkRes = true;

    //check agreement checkbox if one exists
    if (($checkbox = $('#newsBlock input#subscribeAgree')).length)
    {
        if (!$checkbox.is(':checked'))
        {
            checkRes = false;
            $checkbox.parent().find('a').addClass('inputErrorColor');
        }
        else
        {
            $checkbox.parent().find('a').removeClass('inputErrorColor');
        }
    }


    if (!isEmpty('subscribeName'))
        checkRes = false;

    if ('none' != $('.pc_field').css('display')) {
        if (!isEmpty('subscribeSurname'))
            checkRes = false;
    }

    if (!isValidByPattern('subscribePhone', /^((\+?370)|(8))?6[0-9]{7}$/))
        checkRes = false;

    if (!isValidByPattern('subscribeEmail', emailValidationPattern))
        checkRes = false;

    if ('none' != $('.bc_field').css('display')) {
        if(!isEmpty('subscribeCompany'))
            checkRes = false;
    }

    if (($operator = $('#subscribeOperator')).length)
    {
        if ($operator.val() == '')
        {
            $('#subscribeOperator').addClass('inputErrorBorder')
            checkRes = false;
        }
        else
        {
            $('#subscribeOperator').addClass('inputValidBorder')
        }
    }

    $('#newsBlock .optional').addClass('inputValidBorder');



    return checkRes;
}

function subscribeSubmit ()
{
    $("#newsBlock").hide();
    $(".links").hide();
    $('#newsSubscribeLoading').show();

    // AJAX form submit
    $customer_type = 'pc'
    if ('none' != $('.bc_field').css('display'))
        $customer_type = 'bc'

	$('.subtitle_'+$customer_type).hide();

    $.post(fullBase+lang+"/c/specoffer_subscribers/submit/",
        {
            customer : $customer_type,
            lang : lang,
            position: $('#formPosition').attr('value'),
            company : $('#subscribeCompany').attr('value'),
            companyCode : $('#subscribeCompanyCode').attr('value'),
            email : $('#subscribeEmail').attr('value'),
            name : $('#subscribeName').attr('value'),
            surname : $('#subscribeSurname').attr('value'),
            phone : $('#subscribePhone').attr('value'),
            operator : $('#subscribeOperator').val()
        },
        function(res)
        {
            if(/response==true.*/.test(res))
            {
				$('#newsBlock input').val('').removeClass('inputValidBorder').removeClass('inputErrorBorder');
				$('.subtitle_'+$customer_type).hide();
                $("#newsBlockSuc").show();
            }
            else
            {
                $("#newsBlockSuc").hide();
                $("#newsBlock").show();
				$('.subtitle_'+$customer_type).show();
                $(".links").show();
                subscribeForceCheck();
            }
            $('#newsSubscribeLoading').hide();
        });
}

function bbCalculate(cutomerType)
{
    if ('none' == $('#bbCalculate').css('display')) {
        $('#bbCalculate').show();
        form_overlay('bbCalculate');
    }
    else {
        $.get(fullBase + lang +'/c/blackberry/calculate/'+cutomerType+'?' + Number(new Date()), {}, function(data){
            $('body').append(data);
            form_overlay('bbCalculate');
        });
    }
}

function bbCalculateClose()
{
    $('#bbCalculate').hide();
    $("#overlay").hide();
}

function bbCalculateSubmit(cutomerType)
{
    $('form#calculateForm').hide();
            $('.inputs h2:first').removeClass('active');
            $('.inputs h2').removeClass('inactive');
            $('.inputs h2:last').addClass('active');

            var values = window.values[cutomerType];

            min = $('.firstBox select option:selected').val();
            am = $('.secondBox select option:selected').val();

            var price = window.price[cutomerType];

            monthlyPrice = price[min][am];

            var phones = window.phones[cutomerType];
            var extra  = window.extra[cutomerType];

            $('#dataTable .monthlyPrice').html(monthlyPrice);
            $('#dataTable .minutesToTalk').html(values.minutes[min]);
            $('#dataTable .dataToDownload').html(values.amounts[am]);

            if (true === extra[min][am]) {
                $('#dataTable .extraColumn').show();
            }
            else {
                $('#dataTable .extraColumn').hide();
            }

            var vat = '';
            if ('bc' == cutomerType) {
                var vat = window.vat;
            };

            $('#dataTable .firstInput').html('');
            $('#dataTable .c8520 .firstInput').prepend(phones[min][am][24][1] + ' Lt');
            $('#dataTable .c8900 .firstInput').prepend(phones[min][am][24][2] + ' Lt');
            $('#dataTable .c9700 .firstInput').prepend(phones[min][am][24][3] + ' Lt');
            $('#dataTable .c9105 .firstInput').prepend(phones[min][am][24][4] + ' Lt');

            $('#bbCalculate').css({'height': 675});
            $('#dataTable').show();
            $('.change').show();
            $('.change a').click(function(){
                $('#dataTable').hide();
                $('form#calculateForm').show();
                $('#bbCalculate').css({'height': 180});
                $('.change').hide();
                $('.inputs h2:first').addClass('active');
                $('.inputs h2:last').removeClass('active');
            });

            return false;
}
