(function ($) {
	$.fn.searchLink = function(searchBoxSelector) {
		$(this).click(function() {
			var value = $(searchBoxSelector).val();
			if (value != '') {
				var query = $.query.set('k', value);
				this.href += query.toString();
			}
		});
		
		return this;
	};
	$.fn.searchBox = function(linkSelector) {
		$(this).val($.query.get('k'));
		$(this).keydown(function (e) {
			if (e.which == 13) {
				$(linkSelector).click();
				location.href = $(linkSelector).attr('href');
				return false;
			}
		});
		return this;
	};
	$.fn.selectRange = function(start, length) { 
		if ($(this).get(0).createTextRange) { 
			var range = $(this).get(0).createTextRange(); 
			range.collapse(true); 
			range.moveEnd('character', start + length);
			range.moveStart('character', start); 
			range.select(); 
		} 
		else if ($(this).get(0).setSelectionRange) { 
			$(this).focus().get(0).setSelectionRange(start, start + length); 
		} 
		return $(this); 
	};
} (jQuery));