var msg = {
    duzofirm: {msg: "Jednorazowo zapytanie możesz skierować maksymalnie do 50 firm", type: "warning"},
    wyslane: {msg: "Dziękujemy. Twoje zapytanie zostało przesłane do moderatora i jest obecnie weryfikowane, o wynikach zostaniesz poinformowany", type: "info"},
    firmy: {msg: "Proszę wybrać firmy", type: "warning"},
    logowanie: {msg: "Proszę się zalogować", type: "warning"},
    kryteria: {msg: "Ustaw kryteria wyszukiwania", type: "warning"},
    tresc: {msg: "Proszę wpisać treść zapytania ofertowego", type: "warning"},
    kontakt: {msg: "Proszę uzupełnić pole 'kontakt'", type: "warning"}
    };




function initialize_company_map() {
	if (GBrowserIsCompatible()) {
		var mapdiv = document.getElementById("goglemapa")
		var description = $(mapdiv).html();
		var map = new GMap2(mapdiv);
		var point = new GLatLng($(mapdiv).attr("wherex"),$(mapdiv).attr("wherey"))
		//ustawianie w punkcie
		map.setCenter(point, Number($(mapdiv).attr("zoom")));
		//marker
		map.addOverlay(new GMarker(point));
		//chmurka, jeśli jest co do niej wpisać
		if(description!="") map.openInfoWindowHtml(point, description);
		map.setUIToDefault();
		// wylaczenie zoomowania podczas uzywania kolka w myszy
		map.disableScrollWheelZoom();
		}
	}


$(document).ready(function(){
	if($("#goglemapa").size()>0) initialize_company_map();
});

var offerRequestSingleModeID = null;

// zapytania ofertowe
function showRequestBox(single){
	if (!single && $(".selected_count").html()=="0"){
	    $("#dialog").dialog("destroy").html(msg.firmy.msg).dialog({ width:450, buttons: { "Ok": function() { $(this).dialog("destroy"); } }, dialogClass: msg.firmy.type, modal:true});
	    return false;
	    }
	
	offerRequestSingleModeID = single;
	
	$("#offer_request_box .potwierdzenie").show();
	$.post(
	    window.location.protocol+'//'+window.location.host+'/current_user/',
	    {},
	    function(data){
		if (data.CODE==200) {
		    if($("#offer_request").size()>0)
			prepareRequestOffer(data);
		    $("#offer_request_box").dialog("destroy").dialog({ width: 500, modal:true, beforeclose: function(event, ui){cancelRequestBox();return false;}})
		} else {
		    logowanie_ajax();
		    if(data.MSG)
			$("#dialog").dialog("destroy").html(data.MSG).dialog({ width: 450, buttons: { "Ok": function() { $(this).dialog("destroy"); } }, dialogClass: "error", modal:true});
		    if(data.MSGID)
			$("#dialog").dialog("destroy").html(msg[data.MSGID].msg).dialog({ width: 450, buttons: { "Ok": function() { $(this).dialog("destroy"); } }, dialogClass: msg[data.MSGID].type, modal:true});
		}
	    },
	    'json'
	);
	return false;
}

function hideLogowanie(){
    $("#logowanie_ajax_box").dialog("destroy");
}
function logowanie_ajax(){
	$("#logowanie_ajax_box").dialog("destroy").dialog({modal:true});
	return false;
}


function hideRequestBox(){
    $("#offer_request_box").dialog("destroy");
}
function cancelRequestBox(){
	$("#dialog").dialog("destroy").html("Czy na pewno anulować?").dialog({ width: 450, buttons: { "Tak": function(){$(this).dialog('destroy');hideRequestBox();}, "Nie": function() { $(this).dialog("destroy"); } }, dialogClass: "question", modal:true});
	return false;
}

//uzupełnienie emaila, id usera
function prepareRequestOffer(data){
	$("#offer_request .id").val(data['id']);
	$("#offer_request .emails").html("")
	$.each($(data['email']),function(i,email){$("#offer_request .emails").append('<input type="checkbox" name="emaile" value="'+email+'" checked>'+email+'<br />')})
	
}




function wynikiUzupelnijBranze(){
    if($("#branze").size()>0)
	$.each($("#branze").children(),function(i,obj){
	    $(obj).html(T_branze[$(obj).attr("value")])
	})
}

function wynikiPodzapytanieBranze(obj){
    var sub_br = "";
    if (obj.selectedIndex > 0) {
	sub_br = '?sub_br='+obj.options[obj.selectedIndex].value +'&act=deselectall';
    } else {
	sub_br = '?act=deselectall';
    }
    window.location = window.location.protocol+'//'+window.location.host+window.location.pathname+sub_br;
}


//klikanie w checkboxa w listingu podwykonawcy
function wynikiPodzapytanieKoszyk(obj){
    $.post(
	obj.href,
	{act: ($(obj).hasClass("checked")?'del':'add')},
	function(data){
	    if(data.STATE==1){
		if(data.SELECTED==1){$(obj).addClass("checked")}else{$(obj).removeClass("checked")}
		$(".selected_count").html(""+(data.COUNT || 0));
	    } else {
		$("#dialog").dialog("destroy").html(msg[data.MSGID].msg).dialog({ buttons: { "Ok": function() { $(this).dialog("destroy"); } }, dialogClass: msg[data.MSGID].type, modal:true});
		$(obj).removeClass("checked");
	    }
	},
	'json'
    );
    return false;
}

function offer_request_contact_obtain(){
    $("#offer_request_box").block({});
    $.post(
	'/offer_contact/',
	{},
	function(data){
	    $("#offer_request_box").unblock();
	    $("#offer_request_contact").val(data.obj);
	},
	'json'
	)
    return false;
}

function move(ile){
    var s = $('.docslide_small').data('scrollable');
    s.click(s.getItems().index(s.getItems().filter(".active"))+ile);
    $(".docslide_big").data('scrollable').seekTo(s.getItems().index(s.getItems().filter(".active")),0);
    $("#counter").html(s.getItems().index(s.getItems().filter(".active"))+1);
}
function moveRight(){move(1)}
function moveLeft(){move(-1)}

function slidePrepare(){
    if($(".docslide_big").size()>0 && $(".docslide_small").size()>0){
	    $(".docslide_big").scrollable({size:1,speed:0,keyboard:false});
	    $(".docslide_small").scrollable({size:4});
	    $('.docslide_small').data('scrollable').click(0);
	    $('.docslide_small .items div').click(function(event){
		var s = $('.docslide_small').data('scrollable');
		$(".docslide_big").data('scrollable').seekTo(s.getItems().index(s.getItems().filter(".active")),0);
		$("#counter").html(s.getItems().index(s.getItems().filter(".active"))+1);
		});
	}
}


$(function(){
    wynikiUzupelnijBranze();
    slidePrepare();
    $(".lightbox").lightBox({txtImage:"Obraz", txtOf:"z"});
    
    if($("#offer_request").size()>0)
	$("#offer_request").submit(function(){
		var foremka = this;
		if ($("#offer_request #tresc").val()==""){
		    $("#dialog").dialog("destroy").html(msg.tresc.msg).dialog({ width: 450, buttons: { "Ok": function() { $(this).dialog("destroy"); } }, dialogClass: msg.tresc.type, modal:true});
		    return false;
		    }
		if ($("#offer_request #offer_request_contact").val()==""){
		    $("#dialog").dialog("destroy").html(msg.kontakt.msg).dialog({ width: 450, buttons: { "Ok": function() { $(this).dialog("destroy"); } }, dialogClass: msg.kontakt.type, modal:true});
		    return false;
		    }
		var processSubmit = function(data){
			if (data.length==0){
			    $("#dialog").dialog("destroy").html(msg.firmy.msg).dialog({ buttons: { "Ok": function() { $(this).dialog("destroy"); } }, dialogClass: msg.firmy.type, modal:true});
			    return false;
			}
			if ($("#offer_request #tresc").val()==""){
			    message_show("proszę wpisać treść zapytania ofertowego","info");
			    return false;
			}
			$("#offer_request .ids").val(data);
			$(foremka).ajaxSubmit({
			success: function(data){
				if (data==true){
				    hideRequestBox();
				    $("#dialog").dialog("destroy").html(msg.wyslane.msg).dialog({ width: 450, buttons: { "Ok": function() { var deselect = $("#deselect_all").attr("href"); if (deselect) { window.location = $("#deselect_all").attr("href"); } else { $(this).dialog("destroy"); } } }, dialogClass: msg.wyslane.type, modal:true});
				} else {
				    $("#dialog").dialog("destroy").html(data).dialog({ width: 450, buttons: { "Ok": function() { $(this).dialog("destroy"); } }, dialogClass: "error", modal:true});
				}
			},
			dataType: 'json', resetForm: true
			})
		}
		if (!offerRequestSingleModeID) {
			$.post(
			    window.location.protocol+'//'+window.location.host+'/podwykonawcy/offerrequest_show',
			    {},
			    processSubmit, 'json');
		} else {
			processSubmit([offerRequestSingleModeID]);
		}
		return false;
	});
    if($("#logowanie_ajax").size()>0)
	$("#logowanie_ajax").submit(function(){
	    $($("#logowanie_ajax").ajaxSubmit({
		success: function(data){
		    if (data==true){hideLogowanie();showRequestBox();}else{
			$("#dialog").dialog("destroy").html("niepoprawne dane do logowania").dialog({ width: 450, buttons: { "Ok": function() { $(this).dialog("destroy"); } }, dialogClass: "error", modal:true});
			}
		    return false;
		},
		datatType: 'json',resetForm: true
	    }));
	    return false;
	});
});

