var initCond = 'New';

$.allowedCheck = function(){

	$('#year,#miles,#make').data('allowed', 'true');

	$('.results .title:data(allowed=true)').fadeTo(300, 1.0).css('cursor', 'pointer');
    $('.results .title:data(allowed=false)').fadeTo(300, 0.5).css('cursor', 'default').removeData('value');
};

$.updateLines=function(){
	$('.results .output').each(function(){
		$(this).find('p:odd').css('background-color','#ffffff');
	});
};

$.urlUpdate=function(){
								
	var stock = $('#stock').val();
	var cond = $('#condition').data('value');
	if(cond == 'New')
		var condition = 'N';
	else
		var condition = 'U';
	var make_id = '';
	if ($('#make').data('toSearch')) {
		make_id = $('#make').data('toSearch');
	}
	var model_id = '';
	if ($('#model').data('toSearch')) {
		model_id = $('#model').data('toSearch');
	}
	var low_year = '';
	if ($('#minYear').data('toSearch')) {
		low_year = $('#minYear').data('toSearch');
	}
	var high_year = '';
	if ($('#maxYear').data('toSearch')) {
		high_year = $('#maxYear').data('toSearch');
	}
	var low_price = '';
	if ($('#minPrice').data('toSearch')) {
		low_price = $('#minPrice').data('toSearch');
	}
	var high_price = '';
	if ($('#maxPrice').data('toSearch')) {
		high_price = $('#maxPrice').data('toSearch');
	}
	var mileage = '';
	if ($('#miles').data('toSearch')) {
		mileage = $('#miles').data('toSearch');
	}
	

	$('#newSearch').attr('href','inventory.php?thisPage=1&t=' + condition + '&stock=' + stock + '&makeID=' + make_id + '&modelID=' + model_id + '&minYear=' + low_year + '&maxYear=' + high_year + '&minPrice=' + low_price + '&maxPrice=' + high_price + '&maxMileage=' + mileage);

};

$('#stock').bind('keyup',function(){
	$.urlUpdate();
});

$.updateReminder = function(){
    $('.summary').html('');
    $('#newSearch').attr('href', 'inventory.php?');
    var reminder = new Object();
    reminder.selections = {
        'condition': $('#condition').data('value'),
        'make': $('#make').data('value'),
        'model': $('#model').data('value'),
        'low year': $('#year').data('valueLow'),
		'high year': $('#year').data('valueHigh'),
		'low price': $('#price').data('valueLow'),
		'high price': $('#price').data('valueHigh'),
		'max mileage': $('#miles').data('value')
    };
    	
    $.each(reminder.selections, function(key, value){
		if (value) {
            var append = $('.summary').html()+'<P>'+key+': <span style="color:#0164cc;">'+value+'</span></p>';
            $('.summary').html(append);
        }
    });
	
	$('.results .title').each(function(){
		if( $(this).data('value') || $(this).data('valueLow') || $(this).data('valueHigh') ){
			$(this).find('.check').show();
		}
		else{
			$(this).find('.check').hide();
		}
	});
	$.urlUpdate();

};

$.updateLines();

$(document).ajaxComplete(function(){
    $.updateLines();
});


$.fetchMakes = function(condition,clicking){
    $('#make, #model, #year').removeData('value');
	$.updateReminder();
    $.ajax({
        url: "ajax/return_makes.php?condition="+condition,
        success: function(returned){
            $('#makes').html(returned);
        },
        complete: function(){
            if (clicking == true) {
				$('#make').click();
			}
        }
    });
	$('#price').data('allowed', 'true');

};

$.fetchModels = function(condition, makeId){
    $('#model, #year').removeData('value');
	$.updateReminder();
    $.ajax({
        url: "ajax/return_models.php?condition=" + condition + "&make=" + makeId,
        success: function(returned){
            $('#models').html(returned);
        },
        complete: function(){
            $('#model').click();
        }
    });
};



$.fn.highlite = function(){
    $(this).parent('p').parent('.output').find('.selected').removeClass('selected');
    $(this).parent('p').addClass('selected');
    $.allowedCheck();
};


$('#makes a').live('click', function(){
    var sum = $(this).attr('val');
	var cond = initCond;
    $(this).parent('p').parent('.output').prev('.title').data('value', sum);
	$('#make').data('toSearch', $(this).attr('makeid'));
    $('#model').data('allowed', 'true');
    $(this).highlite();
    $.fetchModels(cond, sum);

    return false;
});

$('#models a').live('click', function(){
    var sum = $(this).attr('val');
	var make = $('#make').data('value');
	var cond = $('#condition').data('value');
    $(this).parent('p').parent('.output').prev('.title').data('value', sum);
	$('#model').data('toSearch', $(this).attr('modelid'));
    $('#year').data('allowed', 'true');
    $(this).highlite();
	$.updateReminder();

	if ($('#condition').data('value') == 'Used') {
		$('#year').click();
	}
	else{
		$('#price').click();
	}

	return false;
});



$('#years select').bind('change', function(){
    var low = $('#minYear').val();
	var high = $('#maxYear').val();
	$('#minYear').data('toSearch', low);
	$('#maxYear').data('toSearch', high);
	
	$('#year').data('valueLow',low).data('valueHigh',high);
    $.updateReminder();
	$(this).data('changed','true');
	
	if(($('#years select:eq(0)').data('changed') && $('#years select:eq(1)').data('changed')) == 'true'){
		$('#price').click();
		$('#years select:eq(0), #years select:eq(1)').removeData('changed');
	}

});

$('#prices select').bind('change', function(){
    var low = $('#minPrice').val();
	var high = $('#maxPrice').val();
	$('#minPrice').data('toSearch', low);
	$('#maxPrice').data('toSearch', high);

	$('#price').data('valueLow',low).data('valueHigh',high);
    $.updateReminder();
	$(this).data('changed','true');
	
	if(($('#prices select:eq(0)').data('changed') && $('#prices select:eq(1)').data('changed')) == 'true'){
		$('#miles').click();
		$('#prices select:eq(0), #prices select:eq(1)').removeData('changed');
	}

});

$('#mileage select').bind('change', function(){
    var sum = $('#maxMileage').val();
	$('#miles').data('value',sum);
	$('#miles').data('toSearch', sum);
    $.updateReminder();

});

$('.results .title').data('allowed', 'false');
$('#condition,#make').data('allowed', 'true');

$.allowedCheck();

$('.new .results .title:not(#make,#model)').data('active', 'true');

$('.new .results .title:data(allowed=true)').live('click', function(){
    $('.new .output').slideUp(600);
    $(this).next().slideDown(600);
	$('.new .results .title').css({
		'border-bottom': '1px solid #9eb7bd',
		'color':'black',
		'background':'white url("img/title_inactive.jpg") bottom left repeat-x'
	});
	$(this).css({
		'border-bottom': 'none',
		'color':'#0164cc',
		'background':'#e4f3ff url("img/title_active.jpg") bottom left repeat-x'
	});
});

$('.results .title').hover(function(){
    if ($(this).data('allowed') == 'true') {
        $(this).css('background-color', '#ffe7b3');
    }
}, function(){
    if ($(this).data('allowed') == 'true') {
        $(this).css('background-color', 'transparent');
    }
});

$('#clearSearch').bind('click',function(){
	$('.results .title').removeData('value');
	$.updateReminder();
	$('.results .output p').removeClass('selected');
	$.fetchMakes(initCond);
	return false;
});



$('#condition').data('value', initCond);
$('#make, #price').data('allowed', 'true');
$.fetchMakes(initCond,false);

$('.mainbox .tabs').toggle(function(){

	$(this).find('div:eq(1)').show();
	$(this).find('div:eq(0)').hide();
	
	initCond = 'Used';
    $('#condition').data('value', initCond);
    $('#make, #price').data('allowed', 'true');
	$.fetchMakes(initCond,true);
},function(){

	$(this).find('div:eq(1)').hide();
	$(this).find('div:eq(0)').show();
	
	initCond = 'New';
    $('#condition').data('value', initCond);
    $('#make, #price').data('allowed', 'true');
	$.fetchMakes(initCond,true);
});
