// JavaScript Document

var changeColorObj = new Array();
function changeColor(obj,state,css) {
	if (obj) {
		if (css == null) css = "div"
		if (state == 0) {
			if ($(obj).hasClass(css+"Active") == false) $(obj).removeClass(css+"Over");
		} else if (state == 1) {
			if ($(obj).hasClass(css+"Active") == false) $(obj).addClass(css+"Over");
		} else if (state == 2) {
			if ($(changeColorObj[obj.id]).length > 0) {
				$(changeColorObj[obj.id]).removeClass(css+"Over");
				$(changeColorObj[obj.id]).removeClass(css+"Active");
			}
			changeColorObj[obj.id] = obj;
			$(obj).removeClass(css+"Over");
			$(obj).addClass(css+"Active");
		}
	}
}

function pageinit() {

	$("a[rel*=ajaxlink]").click(function () { 
																				
		if ($(this).attr("div")) {
			if ($(this).attr("div") == "parents") {
				$(this).parents("div").click();
			} else if ($(this).attr("div") == "children") {
				$(this).children("div").click();
			}
		}
		
		pageloadAjax($(this).attr("url"),$(this).attr("t"));
		
		return false;
	});
	
	$("a[rel*=ajaxlink]").attr("rel","");
	
	if ($('a[rel*=lightbox]').length > 0) {
	
		$('a[rel*=lightbox]').lightBox({
			overlayOpacity: 0.6,
			containerResizeSpeed: 350
		});
		
		$("a[rel*=lightbox]").attr("rel","");	
	}
}

function formSubmitAjax(form) {
	
	$(form).ajaxSubmit({
		dataType: 'json', 
		scriptCharset: 'utf-8',
		beforeSubmit: function(a,f,o) {
			BlockMessage(1);
		},
		success: function(data) {
			
			if (data.errText) {
				
				if (data.autoHide == null) data.autoHide = 5;

				if (data.autoHide == 0) {
					BlockMessage(2,data.errText);
				} else {
					BlockMessage(2,data.errText,data.autoHide);
				}
			} else {
				if (data.reloadUrl && data.reloadUrl == true) {
					window.location.reload(true);
				} else {
					
					if (data.formUrl == "false") {
						BlockMessage(2,'Data saved!', 3, function () {
							history.back();
						});
					} else {
						BlockMessage(3,'Data saved!', 3, function () {
							history.back();
						}, function () {
							if (data.formUrl) $(form).attr("action",data.formUrl);
						},1);						
					}
					
				}
			}
		},
		error: function(XMLHttpRequest, textStatus, errorThrown) {
			BlockMessage(2,textStatus);
		}
	});
	
	return false;
}

function urlToArray(url) {
	url_array = new Array();
	
	if (url.match("\\?")) {
		tmp_array = url.split("?");
		
		url_array['_FILE'] = tmp_array[0];
		
		tmp_array = tmp_array[1].split("&");
		
		for(var i = 0; i<tmp_array.length; i++) {
			val = tmp_array[i].toString().substring(tmp_array[i].toString().indexOf("=") + 1);
			key = tmp_array[i].toString().substring(0,tmp_array[i].toString().indexOf("="));
			
			url_array[key] = val;
		}
	} else {
		url_array['_FILE'] = url;
	}
	
	return url_array;
}

function pageloadAjax(url,target) {
	if (target == null) target = "mainContent";
	
	if (url) {
		$("#"+target).html('<img src="images/loading.gif" />');
	
		//if ($(window).scrollTop() > 350) $.scrollTo("#"+target,800,{offset:-50});
			
		$.ajax({
			type: "GET",
			url: url,
			scriptCharset: 'utf-8',
			success: function(html){
				$("#"+target).html(html);
			},
			error: function(XMLHttpRequest, textStatus, errorThrown) {
				$("#"+target).html("<font style='color: #CC0000'>Error: </font> loading page ...");
			}
		});
	}
}
function pageload(url,target,newurl) {
	
	$.historyLoad(url);
	
	return false;
}

function pagesendAjax(url) {
	
	$.ajax({
		type: "GET",
		dataType: "json",
		url: url,
		scriptCharset: 'utf-8',
		beforeSend: function(a,f,o) {
			BlockMessage(1);
		},
		success: function(data){
			
			if (data.errText) {
				
				if (data.reloadUrl && data.reloadUrl == true) {
					BlockMessage(2,data.errText, 5, function () {
						window.location.reload(true);
					});
				} else {
				
					if (data.formUrl == null) {
						BlockMessage(2,data.errText,5);
					} else if (data.formUrl == "false") {
						BlockMessage(2,data.errText, 3, function () {
							history.back();
						});
					} else {
						BlockMessage(3,data.errText, 3, function () {
							history.back();
						}, function () {
							if (data.formUrl) $(form).attr("action",data.formUrl);
						},1);
					}
					
				}
			} else {
				BlockMessage(2,"Successfully finished",3);
			}
			
		},
		error: function(XMLHttpRequest, textStatus, errorThrown) {
			BlockMessage(2,textStatus);
		}
	});
	
	return false;
}
/*
\u0107	c
\u0106	C

\u010D	c
\u010C	C

\u017D	Ž
\u017E	ž

\u0161	š
\u0160	Š

\u0111	d
\u0110	Ð
*/
function deleteImage(url,img,obj) {

	BlockMessage(3,'Are you sure you want to delete picture?',5,function () {

		$.ajax({
			type: "GET",
			dataType: "json",
			url: url + "&del_img=" + img,
			scriptCharset: 'utf-8',
			beforeSend: function(a,f,o) {
				BlockMessage(1);
			},
			success: function(data){
				
				if (data.delRow == null) data.delRow = 1;
				
				if (data.errText) {
					
					if (data.delRow && data.delRow == 1) {
						$(obj).parents('div:first').remove();
						
						BlockMessage(2,data.errText,3);
					} else {
						BlockMessage(2,data.errText,5);
					}
				}
				
			},
			error: function(XMLHttpRequest, textStatus, errorThrown) {
				BlockMessage(2,textStatus);
			}
		});
		
	});
	
}

function deleteData(url,object,msg) {
	
	if (msg == null) msg = 'Are you sure you want to delete?';
	
	BlockMessage(3,msg,5,function () {

		$.ajax({
			type: "GET",
			dataType: "json",
			url: url,
			scriptCharset: 'utf-8',
			beforeSend: function(a,f,o) {
				BlockMessage(1);
			},
			success: function(data){
				
				if (data.delRow == null) data.delRow = 1;
				
				if (data.errText) {
					
					if (data.delRow && data.delRow == 1) {
						$(object).parents('tr:first').remove();
						
						BlockMessage(2,data.errText,3);
					} else {
						BlockMessage(2,data.errText,5);
					}
				}
				
			},
			error: function(XMLHttpRequest, textStatus, errorThrown) {
				BlockMessage(2,textStatus);
			}
		});
		
	});	
}

function setValue(obj,val,remove) {
	$("#" + obj).val(val);
	$("#" + obj).attr("class","0");
	
	$("#" + obj).css("color","");
								
	$("#" + obj).change();
	
	$("#" + obj).next("span").html('');
}

function BlockMessage(type,message,timeout,callback_yes,callback_no,callback_default) {
	if (type == null) type = 0;
	if (message == null) message = 'Please wait ...';
	if (timeout == null) timeout = 0;
	if (callback_yes == null) callback_yes = '';
	if (callback_no == null) callback_no = '';
	
	if (callback_default == null) {
		if (type == 0 || type == 1) {
			callback_default = 0;
		} else if (type == 2) { //OK
			callback_default = 1;
		} else if (type == 3) { //DA / NE
			callback_default = 2;
		}
	}
	
	if (typeof(timeoutID) != "undefined") clearTimeout(timeoutID);
	
	if (type == 0) {
		$.unblockUI();
	} else if (type == 1) {
		$.blockUI({
			message: '<div align="center"><br /><img src="images/loading.gif" /><br /><br /><b>' + message + '</b><br /><br /></div>',
			css: { width: '275px' }
		});
	} else if (type == 2) { //OK
		$.blockUI({
			message: '<div align="center" style="cursor: default;"><br /><b>' + message + '</b><br /><br /><input type="button" id="block_true" value="OK" /><br /><br /></div>',
			css: { width: '275px' }
		});
	} else if (type == 3) { //YES NO
		$.blockUI({
			message: '<div align="center" style="cursor: default;"><br /><b>' + message + '</b><br /><br /><input type="button" id="block_true" value="YES" /> <input type="button" id="block_false" value="NO" /><br /><br /></div>',
			css: { width: '275px' }
		});
	}
	
	if (timeout > 0) {
		if (callback_default == 0) {
			var timeoutID = setTimeout( "$.unblockUI();", (timeout * 1000));
		} else if (callback_default == 1) {
			var timeoutID = setTimeout( "$('#block_true').click();", (timeout * 1000));
		} else if (callback_default == 2) {
			var timeoutID = setTimeout( "$('#block_false').click();", (timeout * 1000));
		}
	}
	
	$('#block_true').click(function() { 
		$.unblockUI();
		
		if (typeof(timeoutID) != "undefined") clearTimeout(timeoutID);
		
		if ($.isFunction(callback_yes)) {
			$('#block_true').unbind("click");
			$('#block_false').unbind("click");
			callback_yes.apply();
		}
	});

	$('#block_false').click(function() { 
		$.unblockUI();
		
		if (typeof(timeoutID) != "undefined") clearTimeout(timeoutID);
		
		if ($.isFunction(callback_no)) {
			$('#block_true').unbind("click");
			$('#block_false').unbind("click");
			callback_no.apply();
		}
	});
}
function printWindow(){
	browserVersion = parseInt(navigator.appVersion);
	if (browserVersion >= 4) window.print();
}

function pageRedirect(pageLink) {
	location.href = pageLink;
}

function PopUp(url,ww,hh) {
	winww = ww;
	winhh = (hh * ww) / ww;

	LeftPosition=(screen.width)?(screen.width-winww)/2:100;
	TopPosition=(screen.height)?(screen.height-winhh)/2:100;
	
	settings='width='+winww+',height='+winhh+',top='+TopPosition+',left='+LeftPosition+',scrollbars=yes,location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=yes';
	
	win = open(url, 'displayWindow',settings);
	win.focus();
}

function CampareCar(id,c) {
	if (id == null) id = $("#compareList").val();
	if (c == null) c = "add";
		
	$.ajax({
		type: "GET",
		url: "auto_compare.php",
		data: c + '=' + id,
		scriptCharset: 'utf-8',
		success: function(data){
				
			$("#auto_compare").html(data);
			
			pageinit();
		}
	});
	
}

$(document).ready(function(){ 
	//$.historyInit(pageloadAjax);
	
	pageinit();
});

