;(function($) {
$.fn.ajLink = function(target, confirmMsg, evalstring) 
{
	$(this).click(function() {
		if(confirmMsg != undefined)
		{
			if(!confirm(confirmMsg))
				return false;
		}
		
		address = this.href;
		$.get(
      	address,
			function(data) {
				//blad - komunikat
				if(data[0] == 0 && data[1] == '#')
				{
					alert(data.substr(2));
				}
				else
				{
					$(target).html(data);
					if(evalstring.length >0)
						eval(evalstring);
				}
			},
      	'html'
     	);
		return false;		
	});
};
})(jQuery);

function aj_oznacz(obj)
{
	id = obj.attr('id').replace('pozycja', '');
	if(obj.is(':checked'))
		tryb = 1;
	else
		tryb = 0;
	
	$.getJSON(
		'/admin/faktura/oznacz/'+id+'/'+tryb,
		function(data) {
			if(data.error)
				alert('Wystąpił błąd podczas zapisu.');
		}
   );
   return false;
}

function aj_oznacz_wszystkie(obj)
{
	id = obj.attr('id').replace('faktura', '');
	if(obj.is(':checked'))
		tryb = 1;
	else
		tryb = 0;
	
	$.getJSON(
		'/admin/faktura/oznacz-wszystkie/'+id+'/'+tryb,
		function(data) {
			if(data.error)
				alert('Wystąpił błąd podczas zapisu.');
			else
			{
				if(tryb == 1)
					$('#wystawFakture'+id+' input.oznacz').attr('checked', 'checked');
				else
					$('#wystawFakture'+id+' input.oznacz').removeAttr('checked');
			}
		}
   );
   return false;
}

function aj_usun_pozycje(pozycjaId, fakturaId)
{
	if(!confirm('Czy na pewno chcesz usunąć pozycję z faktury?'))
		return false;

	$.get(
		'/admin/faktura/usun-pozycje/'+pozycjaId,
		function(data) 
		{
			$('#wystawFakture'+fakturaId).replaceWith(data);
			addCalendar(".data");
		},
		'html'
 	);
	return false;	
}

function aj_dodaj_pozycje(fakturaId)
{
	$.post(
		'/admin/faktura/dodaj-pozycje/'+fakturaId,
		{
			'data[FakturaPozycja][numer_przesylki]': $('#wystawFakture'+fakturaId+' input[name="data[numer_przesylki]"]').val(),
			'data[FakturaPozycja][liczba_paczek]': $('#wystawFakture'+fakturaId+' input[name="data[liczba_paczek]"]').val(),
			'data[FakturaPozycja][waga]': $('#wystawFakture'+fakturaId+' input[name="data[waga]"]').val(),
			'data[FakturaPozycja][szczegoly]': $('#wystawFakture'+fakturaId+' input[name="data[szczegoly]"]').val(),
			'data[FakturaPozycja][data_wysylki]': $('#wystawFakture'+fakturaId+' input[name="data[data_wysylki]"]').val(),
			'data[FakturaPozycja][odbiorca]': $('#wystawFakture'+fakturaId+' input[name="data[odbiorca]"]').val(),
			'data[FakturaPozycja][kwota_netto]': $('#wystawFakture'+fakturaId+' input[name="data[kwota_netto]"]').val()
		},
		function(data) 
		{
			if(data[0] == 0 && data[1] == '#')
			{
				alert(data.substr(2));
			}
			else
			{
				$('#wystawFakture'+fakturaId).replaceWith(data);
				addCalendar(".data");
			}
		},
		'html'
 	);
	return false;	
}

function aj_dodaj_fakture()
{
	$.post(
		'/admin/faktura/dodaj-fakture/',
		{
			'data[Faktura][uzytkownik_id]': $('#dodajNowaFakture select[name="data[Faktura][uzytkownik_id]"]').val(),
			'data[FakturaPozycja][numer_przesylki]': $('#dodajNowaFakture input[name="data[FakturaPozycja][numer_przesylki]"]').val(),
			'data[FakturaPozycja][liczba_paczek]': $('#dodajNowaFakture input[name="data[FakturaPozycja][liczba_paczek]"]').val(),
			'data[FakturaPozycja][waga]': $('#dodajNowaFakture input[name="data[FakturaPozycja][waga]"]').val(),
			'data[FakturaPozycja][szczegoly]': $('#dodajNowaFakture input[name="data[FakturaPozycja][szczegoly]"]').val(),
			'data[FakturaPozycja][data_wysylki]': $('#dodajNowaFakture input[name="data[FakturaPozycja][data_wysylki]"]').val(),
			'data[FakturaPozycja][odbiorca]': $('#dodajNowaFakture input[name="data[FakturaPozycja][odbiorca]"]').val(),
			'data[FakturaPozycja][kwota_netto]': $('#dodajNowaFakture input[name="data[FakturaPozycja][kwota_netto]"]').val()
		},
		function(data) 
		{
			if(data[0] == 0 && data[1] == '#')
			{
				alert(data.substr(2));
			}
			else
			{
				$('.faktury').replaceWith(data);
				addCalendar(".data");
			}
		},
		'html'
 	);
	return false;	
}

function aj_wyszukaj_fakture()
{
	if($('#FakturaFraza').val() == '' || $('#FakturaFraza').val().length < 4)
	{
		$('#listaFaktur').html('');
		return;
	}
	$.post(
		'/admin/faktura/wyszukaj-fakture/',
		{
			'data[Faktura][fraza]': $('#FakturaFraza').val(),
		},
		function(data) 
		{
			//alert(data);
			if(data[0] == 0 && data[1] == '#')
			{
				$('#listaFaktur').html('');
				alert(data.substr(2));
			}
			else
			{
				$('#listaFaktur').html(data);
				addCalendar(".data");
				addCalendar(".data_wystawienia");
			}
		},
		'html'
 	);
	return false;	
}

focusedPrice = null;
function aj_focus_price(obj)
{
	id = obj.attr('id').replace('pozycjaCena', '');
	focusedPrice = obj.val();
}

function aj_blur_price(obj, fakturaId)
{
	id = obj.attr('id').replace('pozycjaCena', '');
	newPrice = obj.val();
	
	if(newPrice != '' && newPrice != focusedPrice)
	{
		if(confirm('Czy chcesz zapisać nową cenę?'))
		{
			$.post(
				'/admin/faktura/zmien-cene/'+id,
				{
					'data[FakturaPozycja][kwota_netto]': newPrice
				},
				function(data) 
				{
					if(data[0] == 0 && data[1] == '#')
					{
						alert(data.substr(2));
					}
					else
					{
						$('#wystawFakture'+fakturaId).replaceWith(data);
						addCalendar(".data");
					}
				},
				'html'
		   );
		}
		else
			obj.val(focusedPrice);
	}
	else
		obj.val(focusedPrice);
	focusedPrice = null;
}


function aj_data_wystawienia(fakturaId)
{
	newDate = $('#dataWystawienia'+fakturaId).val();
	
	if(confirm('Czy chcesz zapisać nową datę?'))
	{
		$.post(
			'/admin/faktura/zmien-date/'+fakturaId,
			{
				'data[Faktura][data_wystawienia]': newDate
			},
			function(data) 
			{
				if(data[0] == 0 && data[1] == '#')
				{
					alert(data.substr(2));
				}
				else
				{
					$('#wystawFakture'+fakturaId).replaceWith(data);
					addCalendar(".data");
					addCalendar(".data_wystawienia");
				}
			},
			'html'
	   );
	}
	return false;
}

function addCalendar(selector)
{
	$(selector).each(function() {
		id = '#'+$(this).attr('id');
		$(id).datepicker({dateFormat: 'yy-mm-dd'});
	});
}
