jQuery.fn.extend({	
	inputValue: function(value){
		$(this).focus(function(){
			if($(this).val()==value)
				$(this).val("");
		}).blur(function(){
			if($(this).val()=="")
				$(this).val(value); 
		}).val(value);
	},
	
	is_email: function(){
		var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
		var email = $(this).val();
		if(reg.test(email) == false)
		{
			return false;
		} else {
			return true;
		}
	},
	
	selectBox: function(options){
		
		if(options==undefined)
			options={};
		if(options.first==undefined)
			options.first = false;
		if(!jQuery.isFunction(options.onChange))
			options.onChange = function(e){};
				
		var appendThisIndex = -1;
		if(options.first)
		{
			appendThisIndex = 0;
		}
		
		$.each($(this),function(e){
			// Hide the select
			var mainEl = $(this);
			mainEl.hide();
			// Create Data
			mainEl.data("selectBox",{
				ul: $("<ul>"),
				box: $("<div>")
			});
			
			// INIT
			mainEl.find("option").each(function(i){
				var li = $("<li>").text($(this).text());
				if(appendThisIndex!=i)
					mainEl.data("selectBox").ul.append(li);
			});
			
			mainEl.data("selectBox").box.addClass("selectDisplay");
			mainEl.data("selectBox").box.append($("<span>").text($(this).find("option:selected").text()));
			mainEl.data("selectBox").box.append(mainEl.data("selectBox").ul);
			mainEl.before(mainEl.data("selectBox").box);
			
			mainEl.data("selectBox").box.click(function(){
				mainEl.data("selectBox").ul.show();
			}).mouseleave(function(){
				mainEl.data("selectBox").ul.hide();
			});

			mainEl.data("selectBox").ul.find("li").each(function(i){

				$(this).click(function(){
					mainEl.data("selectBox").ul.find("li").removeClass("selected");
					$(this).addClass("selected");
					mainEl.data("selectBox").box.find("span").text($(this).text());
					mainEl.val($(this).text());
					mainEl.data("selectBox").ul.hide();
					options.onChange(mainEl);
					return false;
				});
			});
		});
		
	}
	
});
