(function($) {
	
	$.fn.buttonLink = function(){
		
		var buttonType = $(this).attr('type');
		var onClickLink = $(this).attr('onclick');
		var linkText = $(this).val();
		var linkId = $(this).attr('id');
		
		var addPattern = /^Add/i;
		var printPattern = /Print/i;
		var loginPattern = /^Login/i;
		var savePattern = /^Save/i;
		var prevPattern = /Prev/i;
		var nextPattern = /Next/i;
		var cancelPattern = /Cancel/i;
		var updatePattern = /Update/i;
		var imgPosition = 'before';
		var textImgClass = '';
		
		if ( addPattern.test(linkText) == true ){
			textImgClass = 'ui-icon-circle-plus';	
		} else if ( printPattern.test(linkText) == true ){
			textImgClass = 'ui-icon-print';	
		} else if ( loginPattern.test(linkText) == true ){
			textImgClass = 'ui-icon-circle-check';	
		} else if ( savePattern.test(linkText) == true ){
			textImgClass = 'ui-icon-circle-check';	
		} else if ( prevPattern.test(linkText) == true ){
			textImgClass = 'ui-icon-circle-arrow-w';	
		} else if ( prevPattern.test(linkText) == true ){
			textImgClass = 'ui-icon-circle-arrow-w';	
		} else if ( nextPattern.test(linkText) == true ){
			textImgClass = 'ui-icon-circle-arrow-e';	
			imgPosition = 'after';
		} else if ( cancelPattern.test(linkText) == true ){
			textImgClass = 'ui-icon-circle-close';	
		} else if ( updatePattern.test(linkText) == true ){
			textImgClass = 'ui-icon-refresh';	
		}
		
		if ( imgPosition == 'before' ){
			
			if ( textImgClass != '' ){
				linkText = '<img src="/images/spacer.gif" class="ui-icon '+textImgClass+'" style="display:inline;border:0;vertical-align:text-bottom" /> '+linkText;
			}
			
		} else {
			
			if ( textImgClass != '' ){
				linkText = linkText+' <img src="/images/spacer.gif" class="ui-icon '+textImgClass+'" style="display:inline;border:0" />';
			}
		}
		var link = '<a href="javascript:;" onclick="'+onClickLink+';onclick()" class="chart-button ui-state-default chart-button-icon-left ui-corner-all" id="'+linkId+'">'+linkText+'</a>';
		
		$(this).before(link);
		$(this).remove();	
	}
})(jQuery);