function makeEditable(sClass, sWhere, sModel, url) {
	jQuery(document)
			.ready(
					function() {
						jQuery('.' + sClass)
								.editable(
										absolutePath + url,
										{
											submitdata : {
												where : sWhere,
												model : sModel
											},
											indicator : '<img src="' + absolutePath + '/images/admin/ajax-loader.gif" class="absmiddle">',
											tooltip : 'Click here and edit',
											style : 'inherit'

										});
					});
}

function search(division, url) {
	jQuery(document).ready(function() {
		jQuery('#' + division).autocomplete(absolutePath + url, {
			width : 460
		});
	});
}

function slide(clickDivision, targetDivision) {
	jQuery(clickDivision).click(function() {
		if (jQuery(targetDivision).is(":hidden")) {
			jQuery(targetDivision).slideDown("slow");
		} else {
			jQuery(targetDivision).slideUp("slow");
		}
	});
}

function dialog(url, title, parameter) {
	Modalbox.show(absolutePath + url, {
		method : 'post',
		width : 560,
		title : title,
		params : parameter
	});
	return false;
}

function datepicker (startDivisionId, endDivisionId, format, minYear, minMonth, minDay) {
	var dayNamesMin = ['Pz', 'Pt', 'Sa', 'Ça', 'Pe', 'Cu', 'Ct'];

	jQuery(function() {
		jQuery("#" + startDivisionId).datepicker(
			{ 
				dateFormat: format,
				dayNamesMin: dayNamesMin,
				minDate: '-0d',
				regional: 'tr',
				onSelect: function(dateText, inst) {
					jQuery("#" + endDivisionId).datepicker('destroy' );
					
					var selectDaydate = dateText.substring(0, 2);
					var selectMonth = dateText.substring(3, 5);
					var selectYear = dateText.substring(6, 10);	
					var newDay = (parseInt(selectDaydate)+1);
					var mt = mktime(0, 0, 0, selectMonth, newDay, selectYear); 
					var newDate = date('d/m/Y', mt);
					
					jQuery("#" + endDivisionId).val(newDate);
					
					jQuery("#" + endDivisionId).datepicker({ 
						dateFormat: format,
						dayNamesMin: dayNamesMin,
						regional: 'tr',
						setDate: dateText,
						minDate: new Date(date('Y', mt), (date('m', mt)-1), date('d', mt))
					});
				}
			}
		);
	});
	
	jQuery(function() {
		jQuery("#" + endDivisionId).datepicker({ 
			dateFormat: format, 
			dayNamesMin: dayNamesMin,
			regional: 'tr',
			minDate: new Date(minYear, (minMonth - 1), minDay)
		});
	});
}

function calendar (divisionId, format) {
	var dayNamesMin = ['Pz', 'Pt', 'Sa', 'Ça', 'Pe', 'Cu', 'Ct'];
	
	jQuery(function() {
		jQuery("#" + divisionId).datepicker({ 
			dateFormat: format, 
			dayNamesMin: dayNamesMin,
			regional: 'tr'
		});
	});
}
//return passenger secildiginde sadece toplam degismeli.
//yani sql degismeli toplamları veren sql gelmeli!
function getAvailableSupplierList () {
	var originId = $('originId').value;
	var destinationId = $('destinationId').value;
	var transferPassenger = $('transfer_passenger').value;
	var returnPassenger = $('return_passenger').value;
	var isReturn 		= ($('return_passenger').value == '') ? 0 : 1;
	var supplierCompanyId = 0;

	returnDivisionVisibility(isReturn);
	
	try {
		supplierCompanyId = jQuery("input[@name='supplier_company_id']:checked").val();
	} catch(e){
		supplierCompanyId = 0;
	}
	
	
	if (supplierCompanyId == 0 || !supplierCompanyId) {
		supplierCompanyId = 0;
	} else {
		//alert("ne alaka");
	}
	//alert(originId + " " + destinationId)
	if (originId != '' && destinationId != '')
		jQuery.ajax({
			type: 'POST',
			url: absolutePath + '/default/eu/search-supplier',
			data: 'originId=' + originId + '&destinationId=' + destinationId + '&isReturn=' + isReturn + '&transferPassenger=' + transferPassenger + '&returnPassenger=' + returnPassenger
			+ '&supplierCompanyId=' + supplierCompanyId,
			success: function(response){
				$('available_supplier_list').innerHTML = response;
			}
		});
	return false;
}

function getAvailableDestinationList () {
	var originId = $('originId').value;
	
	if (originId != ''){
		jQuery.ajax({
			type: 'POST',
			url: absolutePath + '/default/eu/destination-list',
			data: 'originId=' + originId,
			success: function(response){
				$('available_destination_list').innerHTML = response;
			}
		});
	} else {	
		return false;
	}
}

function checkReturnIsAvailable(type) {
	var originId = $('originId').value;
	var destinationId = $('destinationId').value;
	var returnPassenger = $('return_passenger').value;
	var transferPassenger = $('transfer_passenger').value;
	var supplierCompanyId = 0;
	var isReturn 		= ($('return_passenger').value == '') ? 0 : 1;//($('is_return_yes').checked) ? 1 : 0;
	//no secili ise altini gosterme
	returnDivisionVisibility(isReturn);
	
	try {
		supplierCompanyId = jQuery("input[@name='supplier_company_id']:checked").val();
		//supplierCompanyId = $('supplier_company_id').value;
	} catch(e){
		supplierCompanyId = 0;
	}
	jQuery.ajax({
		type: 'POST',
		url: absolutePath + '/default/eu/check-return',
		data: 'originId=' + originId + '&destinationId=' + destinationId + '&supplierCompanyId=' + supplierCompanyId + '&transferPassenger=' + transferPassenger + '&returnPassenger=' + returnPassenger,
		success: function(response){
			//alert(response);
			response = response.evalJSON();
			$('rate').value = response.rate;
			$('return_rate').value = response.returnRate;
			$('transfer_rate').value = response.transferRate;
			//burda son asamaya gelmis bulunuyor,kontroller yapildi secildi.
			if (type != 1) {
				if (response.boolean == 'true') {
					//returnDivisionVisibility (1);
					//$('is_return_no').checked = true;
					//$('is_return_division').style.display = 'block';
				} else {
					//returnDivisionVisibility (0);
					//$('is_return_no').checked = true;
					//$('is_return_division').style.display = 'none';
				}
			}
		}
	});
	return false;
}

function returnDivisionVisibility (response) {
	if (response == 1) {
		$('is_return_division').style.display = 'block';
		$('is_return_division_2').style.display = 'block';
	} else {
		$('is_return_division').style.display = 'none';
		$('is_return_division_2').style.display = 'none';
	}
}

function modal(url, title) {
	new Boxy.load(absolutePath + url, {
		title : title,
		closeText: '[ Close ]',
		draggable: false,
		modal: true
	});
}

function calculateRate(isReturn) {
	var originId = $('originId').value;
	var destinationId = $('destinationId').value;
	var supplierCompanyId = $('supplier_company_id').value;
	var transferPassenger = $('transfer_passenger').value;
	var returnPassenger = $('return_passenger').value;
	
	jQuery.ajax({
		type: 'POST',
		url: absolutePath + '/default/eu/calculate-rate',
		data: 'originId=' + originId + '&destinationId=' + destinationId + '&supplierCompanyId=' + supplierCompanyId + '&transferPassenger=' + transferPassenger + '&isReturn=' + isReturn + '&returnPassenger=' + returnPassenger,
		success: function(response){
			if (isReturn == 1) {
				$('return_rate').value = response;
			} else {
				$('transfer_rate').value = response;
			}
			/**
			 * Toplama islemini gerceklestirmek icin, saklanan degerleri 1 ile
			 * carparak, integer deger almalarini sagliyoruz.
			 */
			var returnRate = $('return_rate').value * 1;
			var transferRate = $('transfer_rate').value * 1;
			
			$('rate').value = returnRate + transferRate;
		}
	});
	return false;
}

var Text = Class.create( {
	initialize : function() {
	},

	/**
	 * @example
	 * 
	 * var text = new Text();
	 * 
	 * text.pulsate('my_division');
	 */
	pulsate : function(division) {
		Effect.Pulsate(division, {
			pulses : 5,
			duration : 2
		});
	},
	
	slideUp : function(division) {
		Effect.SlideUp(division, {
			duration : 0
		});
	}
});
