text: /*
   * jQuery UI Slider Access
   * By: Trent Richardson [http://trentrichardson.com]
   * Version 0.3
   * Last Modified: 10/20/2012
   * 
   * Copyright 2011 Trent Richardson
   * Dual licensed under the MIT and GPL licenses.
   * http://trentrichardson.com/Impromptu/GPL-LICENSE.txt
   * http://trentrichardson.com/Impromptu/MIT-LICENSE.txt
   * 
   */
  (function($) {
  
  	$.fn.extend({
  		sliderAccess : function(options) {
  			options = options || {};
  			options.touchonly = options.touchonly !== undefined ? options.touchonly : true; // by
  																							// default
  																							// only
  																							// show
  																							// it
  																							// if
  																							// touch
  																							// device
  
  			if (options.touchonly === true && !("ontouchend" in document)) {
  				return $(this);
  			}
  
  			return $(this).each(
  					function(i, obj) {
  						var $t = $(this), o = $.extend({}, {
  							where : 'after',
  							step : $t.slider('option', 'step'),
  							upIcon : 'ui-icon-plus',
  							downIcon : 'ui-icon-minus',
  							text : false,
  							upText : '+',
  							downText : '-',
  							buttonset : true,
  							buttonsetTag : 'span',
  							isRTL : false
  						}, options), $buttons = $('<' + o.buttonsetTag + ' class="ui-slider-access">' + '<button data-icon="' + o.downIcon + '" data-step="' + (o.isRTL ? o.step : o.step * -1) + '">'
  								+ o.downText + '</button>' + '<button data-icon="' + o.upIcon + '" data-step="' + (o.isRTL ? o.step * -1 : o.step) + '">' + o.upText + '</button>' + '</'
  								+ o.buttonsetTag + '>');
  
  						$buttons.children('button').each(
  								function(j, jobj) {
  									var $jt = $(this);
  									$jt.button({
  										text : o.text,
  										icons : {
  											primary : $jt.data('icon')
  										}
  									}).click(
  											function(e) {
  												var step = $jt.data('step'), curr = $t.slider('value'), newval = curr += step * 1, minval = $t.slider('option', 'min'), maxval = $t.slider('option',
  														'max'), slidee = $t.slider("option", "slide") || function() {
  												}, stope = $t.slider("option", "stop") || function() {
  												};
  
  												e.preventDefault();
  
  												if (newval < minval || newval > maxval) {
  													return;
  												}
  
  												$t.slider('value', newval);
  
  												slidee.call($t, null, {
  													value : newval
  												});
  												stope.call($t, null, {
  													value : newval
  												});
  											});
  								});
  
  						// before or after
  						$t[o.where]($buttons);
  
  						if (o.buttonset) {
  							$buttons.removeClass('ui-corner-right').removeClass('ui-corner-left').buttonset();
  							$buttons.eq(0).addClass('ui-corner-left');
  							$buttons.eq(1).addClass('ui-corner-right');
  						}
  
  						// adjust the width so we don't break the original
  						// layout
  						var bOuterWidth = $buttons.css({
  							marginLeft : ((o.where === 'after' && !o.isRTL) || (o.where === 'before' && o.isRTL) ? 10 : 0),
  							marginRight : ((o.where === 'before' && !o.isRTL) || (o.where === 'after' && o.isRTL) ? 10 : 0)
  						}).outerWidth(true) + 5;
  						var tOuterWidth = $t.outerWidth(true);
  						$t.css('display', 'inline-block').width(tOuterWidth - bOuterWidth);
  					});
  		}
  	});
  
  })(jQuery);
  