$(document).ready(function() {
		var s = $('a.segment-el', '#segments-content');
		var d = $('ul.sub-nav', '#segments-content').hide();
		
		s.click(function() {return false});
		
		s.mouseenter(function() {
				var el = $(this);
				d.hide();
				s.removeClass('segment-hover');
				el.addClass('segment-hover');				
				$(el.attr('href')).show();
		});
		
		s.eq(0).mouseenter();
});

var to2 = function(v) {
		v = Math.round(v * 100) / 100;
		return v.toFixed(2);
}

var numberFormat = function (number) {
	return ((arguments[2] = number.toString().replace(new RegExp("(\\d+)(\\d{3})($|)"),'$1 $2$3')) == number) ? arguments[2] : arguments.callee(arguments[2]);
}

var isAccountNumber = function(an) {
	var a = [6,3,7,9,10,5,8,4,2,1];
	var l = a.length-1;
	an = an.toString();
	var sum = 0;
	var j = 0;
	for (var i=an.length-1; i >=0; i--) {
		sum += parseInt(an.charAt(i), 10) * a[l-j];
		j++;
	}
	return (sum%11 == 0);
}

var isAccountPrefix = function(an) {
	var a = [10,5,8,4,2,1];
	var l = a.length-1;
	an = an.toString();
	var sum = 0;
	var j = 0;
	for (var i=an.length-1; i >=0; i--) {
		sum += parseInt(an.charAt(i), 10) * a[l-j];
		j++;
	}
	return (sum%11 == 0);
}

var isIco = function(ico) { 
	if(ico.length !=8 ) return false;
	
	var sum = 0;
	
	for(var i=1; i<8; i++) 
		sum += (parseInt(ico.charAt(i-1), 10) * (9-i)); 
	
	sum = 11 - (sum % 11);
	sum = sum.toString();
	
	var key = sum.substring((sum.length-1), sum.length);
	if (key != parseInt(ico.charAt(7))) return false;

	return true;
} 

var aw = {};

aw.initOrderCustomerInfo = function(p, mb) {
	$(document).ready(function(){
		var f = $('#'+p); 
		
		f.submit(function() {
			
			var el = $('#'+p+'_companyName');
			var val = el.val();
			if (val.length > 64  || val.length == 0) {
				el.addClass('form_error');
				alert(mb.companyName);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}
			
			el = $('#'+p+'_companyAddress');
			val = el.val();
			if (val.length > 32  || val.length == 0) {
				el.addClass('form_error');
				alert(mb.companyAddress);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}

			
			el = $('#'+p+'_companyCity');
			val = el.val();
			if (val.length > 32  || val.length == 0) {
				el.addClass('form_error');
				alert(mb.companyCity);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}
		
			el = $('#'+p+'_companyZip');
			val = el.val();
			if (val.length != 5 || val.toString().search(/^[0-9]{5,5}$/) != 0) {
				el.addClass('form_error');
				alert(mb.companyZip);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}
			
			el = $('#'+p+'_ico');
			val = el.val();
			if (val != '52525252') {
				if (isIco(val) == false) {
					el.addClass('form_error');
					alert(mb.ico);
					el.focus();
					return false;
				} else el.removeClass('form_error');
			} else {
				el.removeClass('form_error');
			}

			
			el = $('#'+p+'_icDph');
			val = el.val();
			if (typeof val !== 'undefined' && val.length>0 && val.toString().search(/^SK[0-9]{10}$/) != 0) {
				el.addClass('form_error');
				alert(mb.icDph);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}

			
			el = $('#'+p+'_contactPerson');
			val = el.val();
			if (val.length > 32  || val.length == 0) {
				el.addClass('form_error');
				alert(mb.contactPerson);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}

			
			el = $('#'+p+'_phone');
			val = el.val();
			if (val.toString().search(/^[0-9]{1,12}$/) != 0) {
				el.addClass('form_error');
				alert(mb.phone);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}

			el = $('#'+p+'_contactPersonPhone');
			val = el.val();
			if (typeof val !== 'undefined' && val.toString().search(/^[0-9]{0,12}$/) != 0) {
				el.addClass('form_error');
				alert(mb.contactPersonPhone);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}			
			
			el = $('#'+p+'_fax');
			val = el.val();
			if (val.length > 0 && val.toString().search(/^[0-9]{1,12}$/) != 0) {
				el.addClass('form_error');
				alert(mb.fax);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}

			el = $('#'+p+'_email');
			val = el.val();
			if (val.length > 32) {
				el.addClass('form_error');
				alert(mb.email);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}
			
			el = $('#'+p+'_clientCode');
			val = el.val();
			if (typeof val !== 'undefined' && val.toString().search(/^[0-9]{1,6}$/) != 0) {
				el.addClass('form_error');
				alert(mb.clientCode);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}

			el = $('#'+p+'_affiliateBranch');
			val = el.val();
			if (typeof val !== 'undefined' && val.toString().search(/^[0-9]{1,6}$/) != 0) {
				el.addClass('form_error');
				alert(mb.branchCode);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}

			
			el = $('#'+p+'_bankAccountNumber');
			val = el.val();
			var ban = val;
			if (typeof val !== 'undefined' && val.length != 0 && (val.length > 10 || isAccountNumber(val) == false)) {
				el.addClass('form_error');
				alert(mb.bankAccountNumber);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}
			
			el = $('#'+p+'_bankAccountPrefix');
			val = el.val();
			if (typeof val !== 'undefined' && val.length != 0 && (val.length > 6 || isAccountPrefix(val) == false)) {
				el.addClass('form_error');
				alert(mb.bankAccountPrefix);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}	
 
 			el = $('#'+p+'_bankCodeId');
			val = el.val();
			if (typeof val !== 'undefined' && val == '' && ban != '') {
				el.addClass('form_error');
				alert(mb.bankCodeId);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			} 

			
			el = $('#'+p+'_differentDeliveryAddress');
			
			if (el.attr('checked')) {
				el = $('#'+p+'_deliveryAddress');
				val = el.val();
				if (val.length > 64  || val.length == 0) {
					el.addClass('form_error');
					alert(mb.deliveryAddress);
					el.focus();
					return false;
				} else {
					el.removeClass('form_error');
				}
				
				el = $('#'+p+'_deliveryCity');
				val = el.val();
				if (val.length > 32  || val.length == 0) {
					el.addClass('form_error');
					alert(mb.deliveryCity);
					el.focus();
					return false;
				} else {
					el.removeClass('form_error');
				}

				el = $('#'+p+'_deliveryZip');
				val = el.val();
				if (val.length != 5 || val.toString().search(/^[0-9]{5,5}$/) != 0) {
					el.addClass('form_error');
					alert(mb.deliveryZip);
					el.focus();
					return false;
				} else {
					el.removeClass('form_error');
				}
			}			
			
			return true;
		});	
	});
}

aw.initOrderPaymentInfo = function(p, mb) {
	$(document).ready(function(){
		var f = $('#'+p); 
		
		f.submit(function() {
			
			var el = $('#'+p+'_employeeAmount');
			var val = el.val();
			if (val) {
				if(val.length > 4) {
					el.addClass('form_error');
					alert(mb.employeeAmount);
					el.focus();
					return false;
				} else {
					el.removeClass('form_error');
				}
			} else {
				el.removeClass('form_error');
			}
			
			var el = $('#'+p+'_monthAmount');
			var val = el.val();
			if(val) {
				if (val.length > 2) {
					el.addClass('form_error');
					alert(mb.monthAmount);
					el.focus();
					return false;
				} else {
					el.removeClass('form_error');
				}
			} else {
				el.removeClass('form_error');
			}
			
			var el = $('#'+p+'_internalNumber');
			var val = el.val();
			if (val.length != 0  && val.length > 10) {
				el.addClass('form_error');
				alert(mb.internalNumber);
				el.focus();
				return false;
			} else {
				el.removeClass('form_error');
			}						
			
			
			return true;
		});	
	});
}

var TIMER = 5;
var SPEED = 20;
var WRAPPER = 'container';

function pageWidth() {
  return window.innerWidth != null ? window.innerWidth : document.documentElement && document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body != null ? document.body.clientWidth : null;
}

function pageHeight() {
  return window.innerHeight != null? window.innerHeight : document.documentElement && document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body != null? document.body.clientHeight : null;
}

function topPosition() {
  return typeof window.pageYOffset != 'undefined' ? window.pageYOffset : document.documentElement && document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ? document.body.scrollTop : 0;
}

function leftPosition() {
  return typeof window.pageXOffset != 'undefined' ? window.pageXOffset : document.documentElement && document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ? document.body.scrollLeft : 0;
}

function showDialog(title,message,yes,no, onyes, onno) {
  var dialog;
  var dialogheader;
  var dialogno;
  var dialogtitle;
  var dialogcontent;
  var dialogmask;
  if(!document.getElementById('dialog')) {
    dialog = document.createElement('div');
    dialog.id = 'dialog';
    dialogheader = document.createElement('div');
    dialogheader.id = 'dialog-header';
    dialogtitle = document.createElement('div');
    dialogtitle.id = 'dialog-title';
    dialogcontent = document.createElement('div');
    dialogcontent.id = 'dialog-content';
    dialogmask = document.createElement('div');
    dialogmask.id = 'dialog-mask';
    document.body.appendChild(dialogmask);
    document.body.appendChild(dialog);
    dialog.appendChild(dialogheader);
    dialogheader.appendChild(dialogtitle);
    dialog.appendChild(dialogcontent);
  } else {
    dialog = document.getElementById('dialog');
    dialogheader = document.getElementById('dialog-header');
    dialogtitle = document.getElementById('dialog-title');
    dialogcontent = document.getElementById('dialog-content');
    dialogmask = document.getElementById('dialog-mask');
    dialogmask.style.visibility = "visible";
    dialog.style.visibility = "visible";
  }

  dialogno = document.createElement('div');
  dialogno.id = 'dialog-no';
  dialogyes = document.createElement('div');
  dialogyes.id = 'dialog-yes';

  dialogbuttons = document.createElement('div');
  dialogbuttons.id = 'dialog-buttons';

  dialogbuttons.appendChild(dialogyes);
  dialogbuttons.appendChild(dialogno);

  dialogyes.setAttribute('onclick', onyes);
  dialogyes.onclick = onyes;
  dialogno.setAttribute('onclick', onno);
  dialogno.onclick = onno;
  
  dialog.style.opacity = .00;
  dialog.style.filter = 'alpha(opacity=0)';
  dialog.alpha = 0;
  var width = pageWidth();
  var height = pageHeight();
  var left = leftPosition();
  var top = topPosition();
  var dialogwidth = dialog.offsetWidth;
  var dialogheight = dialog.offsetHeight;
  var topposition = top + (height / 3) - (dialogheight / 2);
  var leftposition = left + (width / 2) - (dialogwidth / 2);
  dialog.style.top = topposition + "px";
  dialog.style.left = leftposition + "px";
  dialogheader.className = "promptheader";
  dialogtitle.innerHTML = title;
  dialogcontent.className = 'prompt';
  dialogcontent.innerHTML = message;
  dialogcontent.appendChild(dialogbuttons);
  dialogno.innerHTML = no;
  dialogyes.innerHTML = yes;
  var content = document.getElementById(WRAPPER);
  dialogmask.style.height = content.offsetHeight + 'px';
  dialog.timer = setInterval("fadeDialog(1)", TIMER);
}

function hideDialog() {
  var dialog = document.getElementById('dialog');
  clearInterval(dialog.timer);
  dialog.timer = setInterval("fadeDialog(0)", TIMER);
}

function fadeDialog(flag) {
  if(flag == null) {
    flag = 1;
  }
  var dialog = document.getElementById('dialog');
  var value;
  if(flag == 1) {
    value = dialog.alpha + SPEED;
  } else {
    value = dialog.alpha - SPEED;
  }
  dialog.alpha = value;
  dialog.style.opacity = (value / 60);
  dialog.style.filter = 'alpha(opacity=' + value + ')';
  if(value >= 99) {
    clearInterval(dialog.timer);
    dialog.timer = null;
  } else if(value <= 1) {
    dialog.style.visibility = "hidden";
    document.getElementById('dialog-mask').style.visibility = "hidden";
    clearInterval(dialog.timer);
  }
}

