var updateReminderFieldsShown = function()
{
	var selectedOption = jQuery('#new_reminder_type :selected');
	
	var newValue = selectedOption.val();
	
	switch(newValue)
	{
		case 'mot':
		case 'car_insurance':
		case 'car_service':
		case 'breakdown_cover':
		case 'tyres':
		case 'exhaust':
		{
			// These reminders all relate to the customer's car, so we need to store details of this.
			showCarReminderFields(newValue);
			break;
		}
		default:
		{
			// Reminders do not relate to a car, so show the generic fields.
			showGenericReminderFields();
			break;
		}
	}
}

var showGenericReminderFields = function()
{
	jQuery('#car_fields').fadeOut
	(
		'slow',
		function()
		{
			jQuery('#standard_fields').fadeIn('slow');
			jQuery('#addReminderForm').removeClass().addClass('teaser9');
		}
	);
	
	jQuery('#title_label').text('Title');
	jQuery('#title_field').removeClass().addClass('input1');
	
	jQuery('#date_label').text('Date due');
}

var showCarReminderFields = function(newValue)
{
	var dateLabel;
	
	jQuery('#standard_fields').fadeOut
	(
		'slow',
		function()
		{
			jQuery('#car_fields').fadeIn('slow');
			jQuery('#addReminderForm').removeClass().addClass('teaser8');
		}
	);
	
	jQuery('#title_label').text('Car Reg');
	jQuery('#title_field').removeClass().addClass('input3');
	
	switch(newValue)
	{
		case 'mot':
		{
			dateLabel = 'MOT Due';
			break;
		}
		case 'car_insurance':
		case 'breakdown_cover':
		{
			dateLabel = 'Renewal Due';
			break;
		}
		case 'car_service':
		{
			dateLabel = 'Service Due';
			break;
		}
		case 'tyres':
		case 'exhaust':
		{
			dateLabel = 'Quote Due';
			break;
		}
	}
	
	jQuery('#date_label').text(dateLabel);
}

var updateReminderAddModelList = function()
{
	var selected = jQuery('#add_reminder_make_list :selected').val();
	
	jQuery.get('/assets/snippets/MOTReminder/data/vehicle_model/' + selected + '.json', {}, showAddReminderModels, 'json');

}

var showAddReminderModels = function(data, status)
{
	// remove add_reminder_model_list_input
	jQuery('#add_reminder_model_list_input').remove();

	var modelsSelector = jQuery('#add_reminder_model_list').empty();
	var dom_option;
	modelsSelector.attr('name','model');
	
	for(index in data.data)
	{
		dom_option = document.createElement('option');
		dom_option.setAttribute('value', index);
		dom_option.appendChild(document.createTextNode(data.data[index]));
		modelsSelector.append(dom_option);
	}
	jQuery('#add_reminder_model_list').selectbox({'optionsWidth': 238, 'inputClass':'selectbox_wide', 'containerClass':'selectbox-wrapper_wide'});
}

