(function ($) {
	var userAgent = navigator.userAgent.toLowerCase();

    $.browser = {
        version: (userAgent.match( /.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/ ) || [0,'0'])[1],
        safari: /webkit/.test( userAgent ),
        opera: /opera/.test( userAgent ),
        msie: /msie/.test( userAgent ) && !/opera/.test( userAgent ),
        mozilla: /mozilla/.test( userAgent ) && !/(compatible|webkit)/.test( userAgent ),
		chrome: /chrome/.test( userAgent ),
		isIE6: $.browser.version == 6 && $.browser.msie
	};

	$.fn.formatPrice = function(value) {
		if (value == 0)
			return "0.00";
		var str = '' + Math.round(value * 100) * 10;
		return str.substring(0, str.length - 3) + '.' + str.substring(str.length - 3, str.length - 1);
	};
	
	$.fn.dropAlign = function(control) {
		return this.each(function() {
			var ddLeft = $(control).position().left;
			var ddRight = ddLeft + $(control).outerWidth();
			var ddBottom = $(control).position().top + $(control).outerHeight();
			var gdWidth = $(this).outerWidth();
			var gdLeft = 0;
			if (ddLeft + gdWidth > $(window).width())
			{
				// Right align
				gdLeft = ddRight - gdWidth;
			}
			else
			{
				// Left align
				gdLeft = ddLeft;
			}
			$(this).css("position", "absolute").css("left", gdLeft).css("top", ddBottom).show();
		});
	};
	$.fn.leftAlign = function(control) {
		return this.each(function() {
			var ddLeft = $(control).position().left;
			$(this).css("position", "absolute").css("left", ddLeft).show();
		});
	};
	$.fn.leftDropAlign = function(control) {
		return this.each(function() {
			var ddLeft = $(control).position().left;
			var ddBottom = $(control).position().top + $(control).outerHeight();
			$(this).css("position", "absolute").css("left", ddLeft).css("top", ddBottom).show();
		});
	};
	$.fn.leftTopAlign = function(control) {
		return this.each(function() {
			var ddLeft = $(control).position().left;
			var ddTop = $(control).position().top - $(this).outerHeight();
			$(this).css("position", "absolute").css("left", ddLeft).css("top", ddTop).show();
		});
	};
	$.fn.rightAlign = function(control) {
		return this.each(function() {
			var ddLeft = $(control).position().left;
			var ddRight = ddLeft + $(control).outerWidth();
			var gdWidth = $(this).outerWidth();
			ddLeft = ddRight - gdWidth;
			$(this).css("position", "absolute").css("left", ddLeft).show();
		});
	};
	$.fn.rightDropAlign = function(control) {
		return this.each(function() {
			var ddLeft = $(control).position().left;
			var ddRight = ddLeft + $(control).outerWidth();
			var ddBottom = $(control).position().top + $(control).outerHeight();
			var gdWidth = $(this).outerWidth();
			ddLeft = ddRight - gdWidth;
			$(this).css("position", "absolute").css("left", ddLeft).css("top", ddBottom).show();
		});
	};
	$.fn.rightTopAlign = function(control) {
		return this.each(function() {
			var ddLeft = $(control).position().left;
			var ddRight = ddLeft + $(control).outerWidth();
			var ddTop = $(control).position().top - $(this).outerHeight();
			var gdWidth = $(this).outerWidth();
			ddLeft = ddRight - gdWidth;
			$(this).css("position", "absolute").css("left", ddLeft).css("top", ddTop).show();
		});
	};
	$.fn.centreAlign = function(control) {
		return this.each(function() {
			var ddCentre = $(control).position().left + $(control).outerWidth() / 2;
			var gdWidth = $(this).outerWidth();
			var ddLeft = ddCentre - gdWidth / 2;
			$(this).css("position", "absolute").css("left", ddLeft).show();
		});
	};
	$.fn.centreDropAlign = function(control) {
		return this.each(function() {
			var ddCentre = $(control).position().left + $(control).outerWidth() / 2;
			var gdWidth = $(this).outerWidth();
			var ddLeft = ddCentre - gdWidth / 2;
			var ddBottom = $(control).position().top + $(control).outerHeight();
			$(this).css("position", "absolute").css("left", ddLeft).css("top", ddBottom).show();
		});
	};
	$.fn.centreTopAlign = function(control) {
		return this.each(function() {
			var ddCentre = $(control).position().left + $(control).outerWidth() / 2;
			var gdWidth = $(this).outerWidth();
			var ddLeft = ddCentre - gdWidth / 2;
			var ddTop = $(control).position().top - $(this).outerHeight();
			$(this).css("position", "absolute").css("left", ddLeft).css("top", ddTop).show();
		});
	};
})(jQuery);

function expandableAreas() {
	$('div.expandable').expander({
		slicePoint: 0,
		widow: 2,
		expandText: '...Read more',
		expandPrefix: '',
		userCollapseText: 'Show less',
		userCollapsePrefix: ''
	});
}
$(document).ready(function() {
	expandableAreas();
});

