//open banners in new window
$(document).ready(function(){  
$('.bannerNewWindow').click(function(){
	window.open(this.href);
	return false;
});

var hideImgUpload = function(){

			var max_img = $("#max_img").val();
			var images = $('#cImages').children().size();
			if (images >= max_img) $('#addImg').hide();

}

//Main menu items
$(document).ready(function(){  

	$(".mainItem").hover(function(){
	
		$(this).find(".subMenu").show();
		$(this).addClass(".mainHover");
	},
	function(){
	
		$(this).find(".subMenu").hide();
		$(this).removeClass(".mainHover");
	});

});

//Update capacha
$(document).ready(function(){  
	
	if (document.getElementById('siimage')){
		var pirn_url = $("#pirn_url").val();
		document.getElementById('siimage').src = pirn_url+'/core/components/securimage/securimage_show.php?sid=' + Math.random(); return false;
	}

});

//Calc ad price
var calcPrice = function(){
	
		var clicks = $("#clickCount").val();
		var adsale = parseInt($("#adsale").val());
		var total;
		var sale;
		
		var startp = $(".addId:checked").siblings(".start_price").val();
		var clickp = $(".addId:checked").siblings(".click_price").val();
	
		$("#clickPrice").html(clickp);
		$("#startPrice").html(startp);
		$("#clicksTotal").html(clicks);
		
		var sum = parseInt(startp) + clickp * parseInt(clicks);
		
		if (adsale && adsale != 0){
		
			sale = (adsale*sum)/100;
			total = sum - sale;
		
		} else {
		
			total = sum;
			sale = 0;
		}
		
		
		if (!sale) sale = 0;
		if (!total) total = 0;
		
		if (sale != 0) $("#minSale").html(" - "+sale+" ");
		
		$("#salePrice").html("-"+sale);
		$("#cTotal").html(total);
	
	}
	
//banner type
var bannerType = function(){
	
		var btype = $(".addId:checked").siblings(".banner_type").val();
		
		if (btype == 1){
		
			$('#bFile').hide();
			$('#bText').show();
			$('#bLink').show();
			$('#bEmbed').hide();
			$('#bcCount').show();
		
		} else if (btype == 2){
		
			$('#bLink').hide();
			$('#bText').hide();
			$('#bFile').hide();
			$('#bcCount').hide();
			$('#bEmbed').show();
			$('#clickCount').val('0');
			
			calcPrice();
		
		} else {
		
			$('#bText').hide();
			$('#bFile').show();
			$('#bEmbed').hide();
			$('#bLink').show();
			$('#bcCount').show();
		
		}
	
	}
	
$(document).ready(function(){  

	bannerType();
	calcPrice();
	
	$('#clickCount').keyup(function(){ 
		
		calcPrice();
	
	});	
	
	$('#btext').live("keypress",function(event){ 

		var item = $(this).val();
		var start = 70;
		var len = item.length;
		var n_count = start-len;
		
		if (n_count <= 0 && event.keyCode != 8){
		
			return false;
		
		}
		
		$("#btext_c").html(n_count-1);
	
	});

	$(".addId").click(function(){
		
		calcPrice();
		bannerType();
	
	});

});

$(document).ready(function(){  

	hideImgUpload();

	var uploadScript = $("#uploadScript").val();
	var company_id = $("#reg_nr").val();
	var pirn_url = $("#pirn_url").val();
	var img_error = $("#img_error").val();
	var max_img = $("#max_img").val();
	var images_url = $("#images_url").val();
	var settingsLink = $("#settingsLink").val();

if ($('#add_logo').attr("id")){

	new AjaxUpload('#add_logo', {
		action: uploadScript,
		onSubmit : function(file , ext){
			if (ext && /^(jpg|gif|png|jpeg|GIF|JPG|PNG|JPEG)$/.test(ext)){
				/* Setting data */
				this.setData({
					'logo': '1',
					'company_id': company_id
				});
			} else {
				
				// extension is not allowed
				alert(img_error);
				// cancel upload
				return false;				
			}
	
		},
		onComplete : function(file,response){
		
			var myext = file.split("."); 
			$('#myLogoSpace').attr("src",pirn_url+"/images/company/"+company_id+"/logo."+myext[1]);				
		}		
	});
	
}

if ($('#addImg').attr("id")){

	new AjaxUpload('#addImg', {
		action: uploadScript,
		onSubmit : function(file , ext){
			if (ext && /^(jpg|png|jpeg|gif|GIF|JPG|PNG|JPEG)$/.test(ext)){
				/* Setting data */
				this.setData({
					'logo': '0',
					'cimages': '1',
					'company_id': company_id
				});
			} else {
				
				// extension is not allowed
				alert(img_error);
				// cancel upload
				return false;				
			}
	
		},
		onComplete : function(file,response){
		
			$('#cImages').append("<div><a href='"+images_url+"/"+company_id+"/"+response+"' class='nyroModal' rel='company' ><img alt='company' height='120' src='"+images_url+"/"+company_id+"/tn_"+response+"' /></a><a class='delImg' href='"+settingsLink+"/?go=company&amp;delImg="+response+"'>X</a></div>");

			hideImgUpload();
						
		}		
	});
	
}
	
});


$(".moreInfo").hide();

$(".viewMore").toggle(
      function () {
		var view = $(this).attr("href");
        $("#moreInfo"+view).show();
		$(this).html($("#mystring2").val());
		return false;
      },
      function () {
		var view = $(this).attr("href");
        $("#moreInfo"+view).hide();
		$(this).html($("#mystring1").val());
      }
);

});

//Iframe link in main widow
$('.parentLink').click(function(){

  var url = $(this).attr("href");
  parent.parentUrl(url);
 
  return false;

}); 

var parentUrl = function(url){

	document.location = url;
}

$(document).ready(function() {

	var address = $("#cAddress").val();
	
	//hide map link if not found
	if (address){
	
		geocoder = new GClientGeocoder();
		geocoder.getLatLng(address, function(point) { if (!point) { $(".cardLink").hide(); } } );
	
	}

	$("#mapItem").hide();

	$(".cardLink").click(function(){
		
		$("#mapItem").slideDown("fast", function() {

			showAddress(address);
		
		});
		
		return false;
	
	});
	
	$(".hideMap").click(function(){
	
		$("#mapItem").slideUp("fast");
		return false;
		
	});
});

var showAddress = function(address){

var map = new GMap2(document.getElementById("map_canvas"));
var geocoder = new GClientGeocoder();
	
	showAddress(address);
	
	function showAddress(address){
	geocoder.getLatLng(
    address,
    function(point) {
      if (point) {
        map.setCenter(point, 13);
        var marker = new GMarker(point);
		map.setUIToDefault();
		map.enableRotation();
        map.addOverlay(marker);
        marker.openInfoWindowHtml(address);
      }
    }
  );
}

}

//Clear input on click
$(document).ready(function() {
	$('.clear_field').click(function() {
	var orig_value = $(this).val();
	$(this).val("");
	$(this).blur(function () {
	     if ($(this).val()==""){
         $(this).val(orig_value);
		 }
    });
	});
}); 

$(document).ready(function() {
	$('.reqField').blur(function(){
	
		if ($(this).val() != ""){ $(this).removeClass(); $(this).siblings(".reqInput").slideUp("fast"); }
	
	});
});


$(document).ready(function() {

	//error animation
	$('.error,.ok').hide().slideDown('medium');
	$('.error,.ok').click(function(){ $(this).slideUp('medium'); });
	
	//Free load view
	$('.loadinfo').click(function(){
		var comp = "transport/freeLoad.inc.php";
		var myUrl = $(this).find('a').attr('href').split("?")[1];
		myModal(comp,myUrl,450,350);
		return false;
	});	
	
	//Add load
	$('#add_load').click(function(){
		var myUrl = $(this).attr('href').split("?")[1];
		var comp = "transport/addLoad.inc.php";
		myModal(comp,myUrl,530,410);
		return false;
	});
	
	//Add company front
	$('#add_company').click(function(){
		var myUrl = $(this).attr('href').split("?")[1];
		var comp = "transport/companyFront.inc.php";
		myModal(comp,myUrl,530,270);
		return false;
	});	
	
	//user login
	$('#userLogin').click(function(){
		var myUrl = $(this).attr('href').split("?")[1];
		var comp = "userManagement/login.inc.php";
		myModal(comp,myUrl,280,280);
		return false;
	});	
	
	//Comapny info
	$('.companyInfo').click(function(){
		var sub_index = $("#sub_index").val();
		sub_index = parseInt(sub_index) + 4;
		var myUrl = $(this).attr('href').split("/")[sub_index]; //NB! see väärtus muutub, võta mujalt
		var comp = "transport/companies.inc.php";
		myModal(comp,"company=" + myUrl,630,550);
		return false;
	});	
	
	//Register dialog
	$('.register').click(function(){
		var comp = "userManagement/registerDialog.inc.php";
		myModal(comp,"",580,280);
		return false;
	});	
	
	//Ask lang
	if($('#ask_lang').attr('id')){
		var comp = "askLang.inc.php";
		myModal(comp,"",430,210);
	};
	
	//close modal
	if ($('#modalOk').attr("id")){
	
		setTimeout(parent.hideMessage,'2000');
	}
	
	$('a.nyroModal').nyroModal({
			
			bgColor: false,
			minWidth: 450,
			minHeight: 350
		
	});

});

var hideMessage = function(){

	$.nyroModalRemove();

}

var myModal = function(comp,myUrl,w,h){

	var site_lang = $('#site_lang').val();
	var comp_url = $('#comp_url').val() + comp + '?' + myUrl + '&lang=' + site_lang;
		
	$.nyroModalManual({
		url: comp_url,
		bgColor: '#000',
		minWidth: w,
		minHeight: h,
		showBackground: function(elts, settings, callback) { callback(); },
		showContent: function(elts, settings, callback) {
		elts.contentWrapper
		.css({
			width: settings.width+'px',
			height: settings.height+'px',
			marginTop: settings.marginTop+'px',
			marginLeft: settings.marginLeft+'px'
		})
		.show();
		elts.loading.fadeOut(200, callback);
		$('#nyroModalFull').css('zIndex',9999);
	},
	hideContent: function(elts, settings, callback) {
		elts.contentWrapper.hide();
		callback();
	}
	});
	
}

//Get all info from form
function postData(container){
     var query = "";
   $(container+" :text").each(function(){
     query+= $(this).attr("name");
     query+= "=";
     query+= $(this).attr("value");
     query+= "&";
	 });
	 $(container+" :password").each(function(){
     query+= $(this).attr("name");
     query+= "=";
     query+= $(this).attr("value");
     query+= "&";
	 });
	 $(container+" :checked").each(function(){
     query+= $(this).attr("name");
     query+= "=";
     query+= $(this).attr("value");
     query+= "&";
	 });
	 $(container+" :hidden").each(function(){
     query+= $(this).attr("name");
     query+= "=";
     query+= $(this).attr("value");
     query+= "&";
	 });
	 $(container+" select").each(function(){
     query+= $(this).attr("name");
     query+= "=";
     query+= $(this).attr("value");
     query+= "&";
	 });
	 var data = query;
	
	return data;
}

//Ajax table
function dataFrame(incurl,special){
   var myData = postData("#sendtp");
   myData += special;
   $.ajax({
		url : incurl,
		type: 'POST',
		dataType: 'html',
		data: myData,
		success: function(data){
		$('#sendtp').html(data);
			}
		});
}

//mainmenu event
$(document).ready(function(){ 
$('.button_small').mousedown(function(){
	$(this).css("background-position","-65px 0");
});
$('.button_medium').mousedown(function(){
	$(this).css("background-position","-124px 0");
});
$('.button_big').mousedown(function(){
	$(this).css("background-position","-160px 0");
});
$('.button_next,.button_big,.button_medium,.button_small').mouseleave(function(){
	$(this).css("background-position","0px 0px");
});
});

$($.date_input.initialize);

//date
$.extend(DateInput.DEFAULT_OPTS, {
  start_of_week: 1,
  stringToDate: function(string) {
    var matches;
    if (matches = string.match(/^(\d{2,2}).(\d{2,2}).(\d{4,4})$/)) {
      return new Date(matches[3], matches[2]-1, matches[1]);
    } else {
      return null;
    };
  },

  dateToString: function(date) {
    var month = (date.getMonth() + 1).toString();
    var dom = date.getDate().toString();
    if (month.length == 1) month = "0" + month;
    if (dom.length == 1) dom = "0" + dom;
    return  dom + "." + month + "." + date.getFullYear();
  }
});

//Fileds, forms management
$(document).ready(function(){

    $(".infoTable").click(function(event) {
	
		var target = $(event.target);
		var targetClass = $(event.target).attr('class');
		var targetRel = $(event.target).attr('rel');
		var targetValue = $(event.target).val();
		
		if (targetClass == "add_item"){
			$("#"+targetRel).clone(true).removeAttr('id').insertBefore(target);
			return false;
		}
		
		if (targetClass == "add_row"){
			
			var bcode = uniqid();
			var select = $("#"+targetRel+" :input");
			
			if (select.parent('td').attr('class') != "rowSettings"){
			
				select.each(function(){
			
					var name = $(this).attr('class');
			
					var unq = $(this).attr('rel');
				
					$(this).attr('name',unq+'['+bcode+']'+name);
				
				});
				
			}

			$("#"+targetRel).clone(true).removeAttr('id').insertBefore(target.parents("tr"));
			
			if (select.parent('td').attr('class') != "rowSettings"){
			
				select.each(function(){
			
					$(this).attr('name','');
				
				});
			
			}
			
			return false;
		}
		
		if (targetClass == "del_item" || targetClass == "delit"){
			target.parent().remove();
			return false;
		}

		if (targetClass == "del_row"){
			target.parents("tr").remove();
			return false;
		}			
		
		if (targetClass == "up"){
		
			var parent = target.parent();
			var prev = parent.prev();
			
			if (prev.attr("class") == "field"){
			
				parent.clone(true).insertBefore(prev);
				parent.remove();	
			}
			
			return false;
		}	
		
		if (targetClass == "down"){
		
			var parent = target.parent();
			var next = parent.next();
			
			if (next.attr("class") == "field"){
			
				parent.clone().insertAfter(next);
				parent.remove();
			}
			
			return false;
		}
		
				if (targetClass == "row_up"){
		
			var parent = target.closest('tr');
			var prev = parent.prev('tr');
			
			if (prev.is("tr")){
			
				parent.clone(true).insertBefore(prev);
				parent.remove();	
			}
			
			return false;
		}	
		
		if (targetClass == "row_down"){
		
			var parent = target.closest('tr');
			var next = parent.next('tr');
			
			if (next.is("tr") && next.attr('class') != "new_row"){
			
				parent.clone().insertAfter(next);
				parent.remove();
			}
			
			return false;
		}

	});
});

//generate uniq id
function uniqid(){
          var newDate = new Date;
          return newDate.getTime();
}