$(document).ready(function() {
	var classies = ['', 1, 2, 3, 4, 5, 6];
	for (cl in classies) {
		var autos = getItemsForComparison(classies[cl]);
		if (autos){
			baseBuild(classies[cl]);
			$('#compared'+classies[cl]).show();
			$.map(autos.id, function(n){
				if (autos.ref[n]) {
					visualItemsForComparison(n, autos.ref[n], classies[cl]);
				}
			});
		}
	}
});

function selectBuilder(options, classID) {
	if(options == '<option></option>')
		return
	baseBuild(classID);
	$("#comparison"+classID+" h2").after("<select>"+options+"</select>");
	$("#comparison"+classID+" select").change(function(){
		var autoId = $(this).find("option[selected]").attr('title');
		var autoName = $(this).find("option[selected]").text();
		addItemForComparison(autoId, autoName, classID);
	});
};

function a(autoId, autoName, classID) {
	if (!classID)
		classID = '';
	addItemForComparison(autoId, autoName, classID);
};

function addItemForComparison(autoId, autoName, classID) {
	if (!autoId)
		return;
	var autos = getItemsForComparison(classID);
	if (autos && !isUniqueItem(autos.ref, autoId))
		return false;
	baseBuild(classID);
	$('#compared'+classID).show();
	setItemsForComparison(autoId, autoName, classID);
	visualItemsForComparison(autoId, autoName, classID);
};

function setNameCompare(classID) {
	switch (classID) {
		case 1:
			return 'Самосвалы';
		break;
		case 2:
			return 'Автокраны';
		break;
		case 3:
			return 'Прицепы';
		break;
		case 4:
			return 'Бортовые авто';
		break;
		case 5:
			return 'Тягачи';
		break;
		case 6:
			return 'Полуприцепы';
		break;
		default:
			return 'Авто';
		break;
	}
};

function baseBuild(classID){
	if (!document.getElementById('comparison'+classID)) {
		var nameCompare = setNameCompare(classID);
		$('#rightcol > .right-block:eq(0)').after(
			"<div id='comparison"+classID+"'><h2>"+nameCompare+" для сравнения</h2><table id='items-for-comparison"+classID+"'></table><div id='compared"+classID+"'><img src='/images/avto/compare.png' alt='перейти к сравнению автомобилей' /></div></div>"
		);
		$('#compared'+classID).hide();
		$('#compared'+classID+' img').click(function(){
			compared(classID);
		});
	}
}

function isUniqueItem(items, autoId){
	if (items[autoId])
		return false;
	else
		return true;
}


function getItemsForComparison(classID) {
	var hash = $.cookie('compare'+classID);
	if (!hash)
		return false;
	sheaf = hash.split(';*');
	var autos = new Object();
	autos.id = [];
	autos.ref = [];
	$.map(sheaf, function(s){
		if (s) {
			sheafDiff = s.split('#*');
			id = sheafDiff[0];
			name = sheafDiff[1];
			autos.id.push(id);
			autos.ref[id]=name;
		}
	});
	return autos;
}

function visualItemsForComparison(autoId, autoName, classID){
	$('#items-for-comparison'+classID).append(
		"<tr style='display:none;'><th>"+autoName+"</th><td><img src='/images/avto/del.png' alt='del' /></td></tr>"
	);
	$('#items-for-comparison'+classID+' img:last').click(function(){
		delItemForComparison($(this), autoId, classID);
	});
	$('#items-for-comparison'+classID+' tr:last').slideDown('', function(){
		$(this).css('display', '');
	});
	
}

function delItemForComparison(obj, autoId, classID) {
	var autos = getItemsForComparison(classID);
	autos.ref[autoId] = '';
	renew(autos, classID);
	obj.parent().parent().slideUp('fast', function(){
		obj.parent().parent().remove()
	});
}

function renew(autos, classID){
	var hash = '';
	$.map(autos.id, function(n){
		if (autos.ref[n]) {
			hash += n+'#*'+autos.ref[n]+';*';
		}
	});
	$.cookie('compare'+classID, hash, {path: '/'});
}

function setItemsForComparison(autoId, autoName, classID) {
	$.cookie('compare'+classID, ($.cookie('compare'+classID) ? $.cookie('compare'+classID) : '')+autoId+'#*'+autoName+';*', {path: '/'});
}

function compared(classID) {
	var autos = getItemsForComparison(classID);
	if (autos) {
		var urlVar = '';
		$.map(autos.id, function(n){
			if (autos.ref[n]) {
				urlVar += n+',';
			}
		});
		if (urlVar){
			window.open('/compare'+classID+'/?cd=1&urlVar='+urlVar);
		}
	}
}

function show_image2(fullLink, imgWidth, imgHeight) {
 	if( (imgWidth+30)>screen.width || (imgHeight+30)>screen.height ){
		var ScrollOn = 'yes';
		var windowWidth = Math.floor(screen.width-10);
		var windowHeight = Math.floor(screen.height-100);
		var xPos = 0;
		var yPos = 0;
	}else{
		var ScrollOn = 'no';
		var windowHeight = Math.floor(imgHeight+20);
		var windowWidth = Math.floor(imgWidth+20);
		var xPos = Math.floor(screen.width/2-imgWidth/2);
		var yPos = Math.floor(screen.height/2-imgHeight/2-40);
	}

 myWin= open('', "displayWindow", 
    'height=' + windowHeight + ', width=' + windowWidth + ', location=no, scrollbars=' + ScrollOn + ', status=no, menubar=no, toolbar=no, resizable=yes, top=' + yPos + ', left=' + xPos);

  // открыть объект document для последующей печати 
  myWin.document.open();
  
  // генерировать новый документ 
  myWin.document.write("<html><head><title>фото</title></head><body>");
  myWin.document.write("<center><img src='"+fullLink+"' alt='' /></center>");
  myWin.document.write("</body></html>");

  // закрыть документ - (но не окно!)
  myWin.document.close();  
}

function show_image(fullLink, imgWidth, imgHeight){
	if( (imgWidth+30)>screen.width || (imgHeight+30)>screen.height ){
		var ScrollOn = 'yes';
		var windowWidth = Math.floor(screen.width-10);
		var windowHeight = Math.floor(screen.height-100);
		var xPos = 0;
		var yPos = 0;
	}else{
		var ScrollOn = 'no';
		var windowHeight = Math.floor(imgHeight+20);
		var windowWidth = Math.floor(imgWidth+20);
		var xPos = Math.floor(screen.width/2-imgWidth/2);
		var yPos = Math.floor(screen.height/2-imgHeight/2-40);
	}
	big_image=window.open(fullLink+'?isNaked=1', '', 'height=' + windowHeight + ', width=' + windowWidth + ', location=no, scrollbars=' + ScrollOn + ', status=no, menubar=no, toolbar=no, resizable=yes, top=' + yPos + ', left=' + xPos );
}
