$(function() {
	var cs = function(val) {
		if (val == '') {
			val = '0';
		}
		$('.college_specification-option').each(function(){
			var meta = $(this).metadata();
			var i;
			for (i = 0; i < meta.value.length; i++) {
				if (meta.value[i] == val) {
					$(this).css('display', '');
					return;
				}
			}
			$(this).css('display', 'none');
			$('input', this).val('');
		});
	}
	$('#user-college_specification').click(function (){
		cs($(this).val());
	});
	if ($('#user-college_specification')) {
		cs($('#user-college_specification').val());
	}
	else {
		cs('');
	}
	var address_cb = function(me, it) {
		return function () {
			if (this.checked) {
				$('#user-' + me).removeAttr('disabled');
				$('#user-' + it).attr('disabled', 'disabled').val('').parent().removeClass('error-input');
			}
			else {
				$('#user-' + me).attr('disabled', 'disabled').parent().removeClass('error-input');
				$('#user-' + it).removeAttr('disabled').val('');
			}
		};
	};
	$('#user-address_isjp-1').click(address_cb('address_pref', 'address_country'));
	$('#user-address_isjp-0').click(address_cb('address_country', 'address_pref'));
	if ($('#user-address_isjp-1').attr('checked')) {
		address_cb('address_pref', 'address_country').apply($('#user-address_isjp-1').get(0));
	}
	else {
		address_cb('address_country', 'address_pref').apply($('#user-address_isjp-0').get(0));
	}

	$('#user-from_isjp-1').click(address_cb('from_pref', 'from_country'));
	$('#user-from_isjp-0').click(address_cb('from_country', 'from_pref'));
	if ($('#user-from_isjp-1').attr('checked')) {
		address_cb('from_pref', 'from_country').apply($('#user-from_isjp-1').get(0));
	}
	else {
		address_cb('from_country', 'from_pref').apply($('#user-from_isjp-0').get(0));
	}

	$('#user-college_name').autocomplete(BASE_PATH + 'ajax/college', {
		dataType: 'json',
		parse: function (data) {
			var parsed = [];
			var row;
			for	(var i = 0; i < data.length; i++) {
				row = data[i];
				parsed[i] = {
					data: row,
					value: row.college_name,
					result: row.college_name
				};
			}
			return parsed;
		},
		max: 100,
		formatItem: function (row) {
			return row.college_name;
		}
	});

});
