;(function($){
	$.fn.typeSearch = function(options) {

		var defaults = {
			results: 0,
			placeholder: 'Search...',
			autosave: ''
		};
		var options = $.extend(defaults,options);
		
		return this.filter(':text').each(function() {
			var el = $(this);
			var val = $.trim(el.val());
			var width = el.outerWidth();
			var margin = [];
			var directions = ['top','right','bottom','left'];
			for(var i=0,len=directions.length;i<len;i++) { 
				margin.push(el.css('margin-'+directions[i]));
			}
			var focusSearchbar = function(){ searchbar.focus(); }
			var wrapper = $('<div class="scontainer">')
						  .width(width)
						  .css('margin',margin.join(' '));
			
			var sleft = $('<span class="searchleft"></span>').click(focusSearchbar);
			var sright = $('<span class="searchright"></span>').click(focusSearchbar);
			var sreset = $('<div class="searchreset"></div>').click(function() {
				searchbar.val(options.placeholder);
				$('.searchreset').children('img').attr({src: "http://www.fileize.com/images/magnifier.png"}).css({'cursor': "default"});
				$('.searchreset').children("div").hide();
			}).append('<div></div>').append('<img src="http://www.fileize.com/images/magnifier.png" alt="" />').hover(function(e){
											if($(this).children('img').attr("src") == "http://www.fileize.com/images/cancel.png") {
												$(this).children("div").css({opacity: '0'}).stop().animate({opacity: '1'}, 500);
											}
										},function(e){
											if($(this).children('img').attr("src") == "http://www.fileize.com/images/cancel.png") {
												$(this).children("div").stop().animate({opacity: '0'}, 500);
											}
										});
			if(val==''||val==options.placeholder) {
				$('.searchreset').children('img').attr({src: "http://www.fileize.com/images/magnifier.png"}).css({'cursor': "default"});
				$('.searchreset').children("div").hide();
			}
			var searchbar=$('<input type="text" class="sbar">').attr({'id':el.attr('id'),'name':el.attr('name')})
																	  .insertAfter(el)
																	  .wrap(wrapper)
																	  .before(sleft)
																	  .after(sreset)
																	  .after(sright)
																	  .width(width-sleft.outerWidth()-sright.outerWidth())
																	  .css({'left':sleft.outerWidth(),'outline':0})
																	  .val(val||options.placeholder)
																	  .focus(function(){if($.trim(searchbar.val())==options.placeholder)searchbar.val('');})
																	  .blur(function(){if($.trim(searchbar.val())=='')searchbar.val(options.placeholder);})
																	  .keyup(function(){($.trim(searchbar.val())=='')?$('.searchreset').children('img').attr({src: "http://www.fileize.com/images/magnifier.png"}).css({'cursor': "default"}).parent().children("div").hide():$('.searchreset').children('img').attr({src: "http://www.fileize.com/images/cancel.png"}).css({'cursor': "pointer"});});
			$('.searchreset').children("div").hide();
			if(val != options.placeholder && val) {
				$('.searchreset').children('img').attr({src: "http://www.fileize.com/images/cancel.png"}).css({'cursor': "pointer"});
			}
			el.remove();
		});
	};
})(jQuery);