From d528b264a67e6c33e378bfe46557f3fe5553a211 Mon Sep 17 00:00:00 2001
From: Lukas Reschke <lukas@statuscode.ch>
Date: Sat, 13 Oct 2012 00:47:50 +0200
Subject: [PATCH] Update jquery-miniColors to 1.2.1

---
 3rdparty/miniColors/css/images/colors.png     | Bin 12485 -> 12973 bytes
 3rdparty/miniColors/css/images/trigger.png    | Bin 1406 -> 706 bytes
 3rdparty/miniColors/css/jquery.miniColors.css |  92 +++--
 3rdparty/miniColors/js/jquery.miniColors.js   | 314 +++++++++++++-----
 .../miniColors/js/jquery.miniColors.min.js    |   4 +-
 5 files changed, 292 insertions(+), 118 deletions(-)

diff --git a/3rdparty/miniColors/css/images/colors.png b/3rdparty/miniColors/css/images/colors.png
index 1b4f819d8d9367147e8b1d2145e5fa1c5d6a48d3..deb50a9ae102938cadf7aa93824d1527536b77b8 100755
GIT binary patch
literal 12973
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

literal 12485
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
YQ!P_6w({jLFfcH9y85}Sb4q9e0DFC7R{#J2

diff --git a/3rdparty/miniColors/css/images/trigger.png b/3rdparty/miniColors/css/images/trigger.png
index 8c169fd6053009030232ef865a61876992b68589..96c91294f3f167419d948cfba6c5b8a91d6196fe 100755
GIT binary patch
delta 680
zcmeyzb%<55Gr-TCmrII^fq{Y7)59f*fq_AXfq_AcgN=cKVRvfXsfmi}^-L+AE{-7;
zxAsgwzv`BQ$T9za5#rl+X@A#a`o-2HeRr3RNDZs_(tWMJgqpN#o4IN^!u9TSbLmBK
zg?~J?ckRWV@_mVFJv#$~eTp6!6izDs^Yrs+3qz~9=fah$mQ*~x{<7rP$?D)ciN?p|
zcHhmjKey~{*>7uA5eBn@1EQTv7bezAEU8jsdQ&;C!FAf{r@N=j^jlv0#qqquoRx+%
zea`uXX^HMCymz6IcU=d=xu-=Ya{d25{k$$9r?!8_$uCbTp8Q-Gw%YPVv%~oik#o;K
zt0d0Xb9lAj*N@KYR;R)gxsLPmlybE)c{03bQ@Fg&dDaSF)*lr%Qd}03PbQpux^q9H
z#GiVdEK!51doORk=3*AhylwXE-^nWv3xq#>>$VB|oRs+Br{LCE?Uw^1nD%>E_&3>m
z$8YAgRao79%bV*spG?4yP^b4#PAGjz+;zy4nO&Fhf_>4>E-A+cyKSo9*33|yr*z=f
zt@(_{g0rSs$nfnuG%YodC1UmU*R?axrtzmw-V>(TQ$KH|O^MKr?{A8BE;*Rsa5imn
z*U?4)C+LcGv+q0jl0BR`g3<O;-HRD~-3KDHrk*I2xxc=lIM%%6^W+y+J@frFb7n1L
zxRe-L5SnQ>zuQ#o`pQ`sGh9|*^}6G;_@cmP&!|H@QB8+8DXdv1cjaj5s<!tZGWN!G
z2j(uiV7w#fNLuIJy1evNXZfc{^R?e+D9b*-I%`4B)+o`%vz*T#vDtGo$LHz8u+^eJ
z&ociDUG20t?t8!CqUTHh=0wDNeq;UMZCUn1^>b;P|9`#KD7ACdp4smH^Ex$h3NEN^
uKlI#UcG1-O_uqfZ$22_O(RiOlf+0JOQ?}#f`alK-1_n=8KbLh*2~7ZUibvc4

literal 1406
zcmeAS@N?(olHy`uVBq!ia0y~yU=Rag4mJh`h9g^YtQi;>BuiW)N`mv#O3D+9QW+dm
z@{>{(JaZG%Q-e|yQz{EjrrIztFe_z-M3hAM`dB6B=jtVb)aX^@7BGN-jeSKyVsdtB
zi9%9pdS;%j()-=}l@u~lY?Z=IeGPmIoKrJ0J*tXQgRA^PlB=?lEmM^2?G$V(tSWK~
za#KqZ6)JLb@`|l0Y?Z*~TICg6frRyy6u?SKvTc<hj*9RNP;kyKN>wn`Gtf;oFf&jv
zGt@IQHZeCh*HJJsFf`CNFw!?P(ls=<GB&a@Fi?O3B|8P1qLehNAQv~NT}3Hrwn`Z#
zB?VUc`sL;2dgaD?`9<mahL)C=ATx}Nbc<5bbc-wVN)jt{^NN*WCb*;)Cl_TFlw{`T
zDS%8&Ov*1Uu~kxn8e5TD05>+T7#d8;`MLTPi3R$GdIlgbLHwFq;OmQDX>KlDb#X~h
zD#E>34K5C;EJ)Q4N-fSWElN%eN=;J+xv9X)xhOTUB)=#mKR*W+iUAq<CHch}`2`Bj
z!KMnniOHFHAU;^VudkJ7UU5lcUUI6Zi>*>cZh>BAW{Q=Ysky7Esj-o<iHobDp{s#~
zsfn{2h-qMHWMXOT0@Le~pIn-onpXnTn}X15j8iWtDS(2*$|bcZvn(~mttdZN0qkX~
zOe}7(uy8Rnb22i-X&zK>3Kq9O_2Tx2zMX=NJ}6?5A{r(X<l+Wmg3}}@ecCA?5`Jo4
zimg%+C|RHS@|S^u@sp>EV@SoVHB%k44mpUlsh^Ax-?mG8*9qB}SJzS(J`mldQN{gL
zsL8tjfo{xhagmrUA|W{!wi(VW`Ii_s<4A|**#n<d4_Dv+^V8UG&BKBpXC$&WBpsI)
zcQSEXd~u1#s|14=j5!b0x)wPtn3ig2P$|*I)s<m3d+&b-@$RE6G6sy>o^Wx+tPHtP
zWA}fO>GB@CM)u2+g0Eyw?8x4JThBrwK}{rlb?CB%x3vv~GoG>Ed_8IIk_g9*QES7J
zcNy$q6mpY2<d)AQ!_w&bAZTSvW&E-8yaB)Bz6weBER_ggc`oz$zLgJ$So3%HTHnuE
z$|rWXuYXt=w2@8TROJeHP1gORQ_nKYw5t;C`ZzhL=2C%w`o!eroWX{Tm%|u-EZiP=
zZz5ZI)W)-nPj4}8QrflQQH|a4F4^OWmJ7~R*wjVoP5*ji$s5(932GwQ1&4wwf2}l#
zzm~Oi)#>K6rtSHB5e&z+PFMHIa0{zrdi1;QnW9LvV^{9&zJr=m4JE#=SUm4$&M~vu
zyv4E8OLxbbuFtv@w&r^FMAoH^^%AdExX<gz*?xPaPy5WEH<j~z+XbfhEWdm`y1H9L
zdBK*eSu1^t6F&W|%b$GwZ=L=3=`8;)>Afhi`e<r2<4=KwMa7n)oqv|E=cxLkw`&Ib
p<w*y`e`fT%)_q>`>U%sR8^a@$^WxWA${Il>qNl5$%Q~loCIDpR2Soq?

diff --git a/3rdparty/miniColors/css/jquery.miniColors.css b/3rdparty/miniColors/css/jquery.miniColors.css
index 381bc1dc06..592f44894d 100755
--- a/3rdparty/miniColors/css/jquery.miniColors.css
+++ b/3rdparty/miniColors/css/jquery.miniColors.css
@@ -1,19 +1,13 @@
-.miniColors-trigger {
-	height: 22px;
-	width: 22px;
-	background: url(images/trigger.png) center no-repeat;
-	vertical-align: middle;
-	margin: 0 .25em;
-	display: inline-block;
-	outline: none;
+INPUT.miniColors {
+	margin-right: 4px;
 }
 
 .miniColors-selector {
 	position: absolute;
 	width: 175px;
 	height: 150px;
-	background: #FFF;
-	border: solid 1px #BBB;
+	background: white;
+	border: solid 1px #bababa;
 	-moz-box-shadow: 0 0 6px rgba(0, 0, 0, .25);
 	-webkit-box-shadow: 0 0 6px rgba(0, 0, 0, .25);
 	box-shadow: 0 0 6px rgba(0, 0, 0, .25);
@@ -24,9 +18,13 @@
 	z-index: 999999;
 }
 
+.miniColors.opacity.miniColors-selector {
+	width: 200px;
+}
+
 .miniColors-selector.black {
-	background: #000;
-	border-color: #000;
+	background: black;
+	border-color: black;
 }
 
 .miniColors-colors {
@@ -35,25 +33,43 @@
 	left: 5px;
 	width: 150px;
 	height: 150px;
-	background: url(images/colors.png) right no-repeat;
+	background: url(images/colors.png) -40px 0 no-repeat;
 	cursor: crosshair;
 }
 
+.miniColors.opacity .miniColors-colors {
+	left: 30px;
+}
+
 .miniColors-hues {
 	position: absolute;
 	top: 5px;
 	left: 160px;
 	width: 20px;
 	height: 150px;
-	background: url(images/colors.png) left no-repeat;
+	background: url(images/colors.png) 0 0 no-repeat;
+	cursor: crosshair;
+}
+
+.miniColors.opacity .miniColors-hues {
+	left: 185px;
+}
+
+.miniColors-opacity {
+	position: absolute;
+	top: 5px;
+	left: 5px;
+	width: 20px;
+	height: 150px;
+	background: url(images/colors.png) -20px 0 no-repeat;
 	cursor: crosshair;
 }
 
 .miniColors-colorPicker {
 	position: absolute;
-	width: 9px;
-	height: 9px;
-	border: 1px solid #fff;
+	width: 11px;
+	height: 11px;
+	border: 1px solid black;
 	-moz-border-radius: 11px;
 	-webkit-border-radius: 11px;
 	border-radius: 11px;
@@ -64,18 +80,46 @@
 	left: 0; 
 	width: 7px;
 	height: 7px;
-	border: 1px solid #000;
+	border: 2px solid white;
 	-moz-border-radius: 9px;
 	-webkit-border-radius: 9px;
 	border-radius: 9px;
 }
 
-.miniColors-huePicker {
+.miniColors-huePicker,
+.miniColors-opacityPicker {
 	position: absolute;
-	left: -3px;
-	width: 24px;
-	height: 1px;
-	border: 1px solid #fff;
+	left: -2px;
+	width: 22px;
+	height: 2px;
+	border: 1px solid black;
+	background: white;
+	margin-top: -1px;
 	border-radius: 2px;
-	background: #000;
+}
+
+.miniColors-trigger, 
+.miniColors-triggerWrap {
+	width: 22px;
+	height: 22px;
+	display: inline-block;
+}
+
+.miniColors-triggerWrap {
+	background: url(images/trigger.png) -22px 0 no-repeat;
+}
+
+.miniColors-triggerWrap.disabled {
+	filter: alpha(opacity=50);
+	opacity: .5;
+}
+
+.miniColors-trigger {
+	vertical-align: middle;
+	outline: none;
+	background: url(images/trigger.png) 0 0 no-repeat;
+}
+
+.miniColors-triggerWrap.disabled .miniColors-trigger {
+	cursor: default;
 }
\ No newline at end of file
diff --git a/3rdparty/miniColors/js/jquery.miniColors.js b/3rdparty/miniColors/js/jquery.miniColors.js
index 187db3fa84..a0f439c2c4 100755
--- a/3rdparty/miniColors/js/jquery.miniColors.js
+++ b/3rdparty/miniColors/js/jquery.miniColors.js
@@ -1,7 +1,7 @@
 /*
  * jQuery miniColors: A small color selector
  *
- * Copyright 2011 Cory LaViska for A Beautiful Site, LLC. (http://abeautifulsite.net/)
+ * Copyright 2012 Cory LaViska for A Beautiful Site, LLC. (http://www.abeautifulsite.net/)
  *
  * Dual licensed under the MIT or GPL Version 2 licenses
  *
@@ -18,20 +18,30 @@ if(jQuery) (function($) {
 				//
 				
 				// Determine initial color (defaults to white)
-				var color = expandHex(input.val());
-				if( !color ) color = 'ffffff';
-				var hsb = hex2hsb(color);
+				var color = expandHex(input.val()) || 'ffffff',
+					hsb = hex2hsb(color),
+					rgb = hsb2rgb(hsb),
+					alpha = parseFloat(input.attr('data-opacity')).toFixed(2);
+				
+				if( alpha > 1 ) alpha = 1;
+				if( alpha < 0 ) alpha = 0;
 				
 				// Create trigger
 				var trigger = $('<a class="miniColors-trigger" style="background-color: #' + color + '" href="#"></a>');
 				trigger.insertAfter(input);
+				trigger.wrap('<span class="miniColors-triggerWrap"></span>');
+				if( o.opacity ) {
+					trigger.css('backgroundColor', 'rgba(' + rgb.r + ', ' + rgb.g + ', ' + rgb.b + ', ' + alpha + ')');
+				}
 				
 				// Set input data and update attributes
 				input
 					.addClass('miniColors')
 					.data('original-maxlength', input.attr('maxlength') || null)
 					.data('original-autocomplete', input.attr('autocomplete') || null)
-					.data('letterCase', 'uppercase')
+					.data('letterCase', o.letterCase === 'uppercase' ? 'uppercase' : 'lowercase')
+					.data('opacity', o.opacity ? true : false)
+					.data('alpha', alpha)
 					.data('trigger', trigger)
 					.data('hsb', hsb)
 					.data('change', o.change ? o.change : null)
@@ -42,11 +52,11 @@ if(jQuery) (function($) {
 					.val('#' + convertCase(color, o.letterCase));
 				
 				// Handle options
-				if( o.readonly ) input.prop('readonly', true);
-				if( o.disabled ) disable(input);
+				if( o.readonly || input.prop('readonly') ) input.prop('readonly', true);
+				if( o.disabled || input.prop('disabled') ) disable(input);
 				
 				// Show selector when trigger is clicked
-				trigger.bind('click.miniColors', function(event) {
+				trigger.on('click.miniColors', function(event) {
 					event.preventDefault();
 					if( input.val() === '' ) input.val('#');
 					show(input);
@@ -54,29 +64,29 @@ if(jQuery) (function($) {
 				});
 				
 				// Show selector when input receives focus
-				input.bind('focus.miniColors', function(event) {
+				input.on('focus.miniColors', function(event) {
 					if( input.val() === '' ) input.val('#');
 					show(input);
 				});
 				
 				// Hide on blur
-				input.bind('blur.miniColors', function(event) {
+				input.on('blur.miniColors', function(event) {
 					var hex = expandHex( hsb2hex(input.data('hsb')) );
 					input.val( hex ? '#' + convertCase(hex, input.data('letterCase')) : '' );
 				});
 				
 				// Hide when tabbing out of the input
-				input.bind('keydown.miniColors', function(event) {
+				input.on('keydown.miniColors', function(event) {
 					if( event.keyCode === 9 ) hide(input);
 				});
 				
 				// Update when color is typed in
-				input.bind('keyup.miniColors', function(event) {
+				input.on('keyup.miniColors', function(event) {
 					setColorFromInput(input);
 				});
 				
 				// Handle pasting
-				input.bind('paste.miniColors', function(event) {
+				input.on('paste.miniColors', function(event) {
 					// Short pause to wait for paste to complete
 					setTimeout( function() {
 						setColorFromInput(input);
@@ -89,19 +99,18 @@ if(jQuery) (function($) {
 				//
 				// Destroys an active instance of the miniColors selector
 				//
-				
 				hide();
 				input = $(input);
 				
 				// Restore to original state
-				input.data('trigger').remove();
+				input.data('trigger').parent().remove();
 				input
 					.attr('autocomplete', input.data('original-autocomplete'))
 					.attr('maxlength', input.data('original-maxlength'))
 					.removeData()
 					.removeClass('miniColors')
-					.unbind('.miniColors');
-				$(document).unbind('.miniColors');
+					.off('.miniColors');
+				$(document).off('.miniColors');
 			};
 			
 			var enable = function(input) {
@@ -110,8 +119,7 @@ if(jQuery) (function($) {
 				//
 				input
 					.prop('disabled', false)
-					.data('trigger')
-					.css('opacity', 1);
+					.data('trigger').parent().removeClass('disabled');
 			};
 			
 			var disable = function(input) {
@@ -121,8 +129,7 @@ if(jQuery) (function($) {
 				hide(input);
 				input
 					.prop('disabled', true)
-					.data('trigger')
-					.css('opacity', 0.5);
+					.data('trigger').parent().addClass('disabled');
 			};
 			
 			var show = function(input) {
@@ -133,24 +140,27 @@ if(jQuery) (function($) {
 				
 				// Hide all other instances 
 				hide();				
-				
+                
 				// Generate the selector
 				var selector = $('<div class="miniColors-selector"></div>');
 				selector
-					.append('<div class="miniColors-colors" style="background-color: #FFF;"><div class="miniColors-colorPicker"><div class="miniColors-colorPicker-inner"></div></div>')
 					.append('<div class="miniColors-hues"><div class="miniColors-huePicker"></div></div>')
-					.css({
-						top: input.is(':visible') ? input.offset().top + input.outerHeight() : input.data('trigger').offset().top + input.data('trigger').outerHeight(),
-						left: input.is(':visible') ? input.offset().left : input.data('trigger').offset().left,
-						display: 'none'
-					})
+					.append('<div class="miniColors-colors" style="background-color: #FFF;"><div class="miniColors-colorPicker"><div class="miniColors-colorPicker-inner"></div></div>')
+					.css('display', 'none')
 					.addClass( input.attr('class') );
 				
+				// Opacity
+				if( input.data('opacity') ) {
+					selector
+						.addClass('opacity')
+						.prepend('<div class="miniColors-opacity"><div class="miniColors-opacityPicker"></div></div>');
+				}
+				
 				// Set background for colors
 				var hsb = input.data('hsb');
 				selector
-					.find('.miniColors-colors')
-					.css('backgroundColor', '#' + hsb2hex({ h: hsb.h, s: 100, b: 100 }));
+					.find('.miniColors-colors').css('backgroundColor', '#' + hsb2hex({ h: hsb.h, s: 100, b: 100 })).end()
+					.find('.miniColors-opacity').css('backgroundColor', '#' + hsb2hex({ h: hsb.h, s: hsb.s, b: hsb.b })).end();
 				
 				// Set colorPicker position
 				var colorPosition = input.data('colorPosition');
@@ -162,64 +172,106 @@ if(jQuery) (function($) {
 				// Set huePicker position
 				var huePosition = input.data('huePosition');
 				if( !huePosition ) huePosition = getHuePositionFromHSB(hsb);
-				selector.find('.miniColors-huePicker').css('top', huePosition.y + 'px');
+				selector.find('.miniColors-huePicker').css('top', huePosition + 'px');
+				
+				// Set opacity position
+				var opacityPosition = input.data('opacityPosition');
+				if( !opacityPosition ) opacityPosition = getOpacityPositionFromAlpha(input.attr('data-opacity'));
+				selector.find('.miniColors-opacityPicker').css('top', opacityPosition + 'px');
 				
 				// Set input data
 				input
 					.data('selector', selector)
 					.data('huePicker', selector.find('.miniColors-huePicker'))
+					.data('opacityPicker', selector.find('.miniColors-opacityPicker'))
 					.data('colorPicker', selector.find('.miniColors-colorPicker'))
 					.data('mousebutton', 0);
-					
+				
 				$('BODY').append(selector);
-				selector.fadeIn(100);
+				
+				// Position the selector
+				var trigger = input.data('trigger'),
+					hidden = !input.is(':visible'),
+					top = hidden ? trigger.offset().top + trigger.outerHeight() : input.offset().top + input.outerHeight(),
+					left = hidden ? trigger.offset().left : input.offset().left,
+					selectorWidth = selector.outerWidth(),
+					selectorHeight = selector.outerHeight(),
+					triggerWidth = trigger.outerWidth(),
+					triggerHeight = trigger.outerHeight(),
+					windowHeight = $(window).height(),
+					windowWidth = $(window).width(),
+					scrollTop = $(window).scrollTop(),
+					scrollLeft = $(window).scrollLeft();
+				
+				// Adjust based on viewport
+				if( (top + selectorHeight) > windowHeight + scrollTop ) top = top - selectorHeight - triggerHeight;
+				if( (left + selectorWidth) > windowWidth + scrollLeft ) left = left - selectorWidth + triggerWidth;
+				
+				// Set position and show
+				selector.css({
+					top: top,
+					left: left
+				}).fadeIn(100);
 				
 				// Prevent text selection in IE
-				selector.bind('selectstart', function() { return false; });
+				selector.on('selectstart', function() { return false; });
 				
-				$(document).bind('mousedown.miniColors touchstart.miniColors', function(event) {
-					
-					input.data('mousebutton', 1);
-					var testSubject = $(event.target).parents().andSelf();
-					
-					if( testSubject.hasClass('miniColors-colors') ) {
-						event.preventDefault();
-						input.data('moving', 'colors');
-						moveColor(input, event);
-					}
-					
-					if( testSubject.hasClass('miniColors-hues') ) {
-						event.preventDefault();
-						input.data('moving', 'hues');
-						moveHue(input, event);
-					}
-					
-					if( testSubject.hasClass('miniColors-selector') ) {
-						event.preventDefault();
-						return;
-					}
-					
-					if( testSubject.hasClass('miniColors') ) return;
-					
-					hide(input);
-				});
+				// Hide on resize (IE7/8 trigger this when any element is resized...)
+				if( !$.browser.msie || ($.browser.msie && $.browser.version >= 9) ) {
+					$(window).on('resize.miniColors', function(event) {
+						hide(input);
+					});
+				}
 				
 				$(document)
-					.bind('mouseup.miniColors touchend.miniColors', function(event) {
+					.on('mousedown.miniColors touchstart.miniColors', function(event) {
+						
+						input.data('mousebutton', 1);
+						var testSubject = $(event.target).parents().andSelf();
+						
+						if( testSubject.hasClass('miniColors-colors') ) {
+							event.preventDefault();
+							input.data('moving', 'colors');
+							moveColor(input, event);
+						}
+						
+						if( testSubject.hasClass('miniColors-hues') ) {
+							event.preventDefault();
+							input.data('moving', 'hues');
+							moveHue(input, event);
+						}
+						
+						if( testSubject.hasClass('miniColors-opacity') ) {
+							event.preventDefault();
+							input.data('moving', 'opacity');
+							moveOpacity(input, event);
+						}
+						
+						if( testSubject.hasClass('miniColors-selector') ) {
+							event.preventDefault();
+							return;
+						}
+						
+						if( testSubject.hasClass('miniColors') ) return;
+						
+						hide(input);
+					})
+					.on('mouseup.miniColors touchend.miniColors', function(event) {
 					    event.preventDefault();
 						input.data('mousebutton', 0).removeData('moving');
 					})
-					.bind('mousemove.miniColors touchmove.miniColors', function(event) {
+					.on('mousemove.miniColors touchmove.miniColors', function(event) {
 						event.preventDefault();
 						if( input.data('mousebutton') === 1 ) {
 							if( input.data('moving') === 'colors' ) moveColor(input, event);
 							if( input.data('moving') === 'hues' ) moveHue(input, event);
+							if( input.data('moving') === 'opacity' ) moveOpacity(input, event);
 						}
 					});
 				
 				// Fire open callback
 				if( input.data('open') ) {
-					input.data('open').call(input.get(0), '#' + hsb2hex(hsb), hsb2rgb(hsb));
+					input.data('open').call(input.get(0), '#' + hsb2hex(hsb), $.extend(hsb2rgb(hsb), { a: parseFloat(input.attr('data-opacity')) }));
 				}
 				
 			};
@@ -231,22 +283,22 @@ if(jQuery) (function($) {
 				//
 				
 				// Hide all other instances if input isn't specified
-				if( !input ) input = '.miniColors';
+				if( !input ) input = $('.miniColors');
 				
-				$(input).each( function() {
+				input.each( function() {
 					var selector = $(this).data('selector');
 					$(this).removeData('selector');
 					$(selector).fadeOut(100, function() {
 						// Fire close callback
 						if( input.data('close') ) {
 							var hsb = input.data('hsb'), hex = hsb2hex(hsb);	
-							input.data('close').call(input.get(0), '#' + hex, hsb2rgb(hsb));
+							input.data('close').call(input.get(0), '#' + hex, $.extend(hsb2rgb(hsb), { a: parseFloat(input.attr('data-opacity')) }));
 						}
 						$(this).remove();
 					});
 				});
 				
-				$(document).unbind('.miniColors');
+				$(document).off('.miniColors');
 				
 			};
 			
@@ -266,8 +318,8 @@ if(jQuery) (function($) {
 					position.x = event.originalEvent.changedTouches[0].pageX;
 					position.y = event.originalEvent.changedTouches[0].pageY;
 				}
-				position.x = position.x - input.data('selector').find('.miniColors-colors').offset().left - 5;
-				position.y = position.y - input.data('selector').find('.miniColors-colors').offset().top - 5;
+				position.x = position.x - input.data('selector').find('.miniColors-colors').offset().left - 6;
+				position.y = position.y - input.data('selector').find('.miniColors-colors').offset().top - 6;
 				if( position.x <= -5 ) position.x = -5;
 				if( position.x >= 144 ) position.x = 144;
 				if( position.y <= -5 ) position.y = -5;
@@ -301,23 +353,21 @@ if(jQuery) (function($) {
 				
 				huePicker.hide();
 				
-				var position = {
-					y: event.pageY
-				};
+				var position = event.pageY;
 				
 				// Touch support
 				if( event.originalEvent.changedTouches ) {
-					position.y = event.originalEvent.changedTouches[0].pageY;
+					position = event.originalEvent.changedTouches[0].pageY;
 				}
 				
-				position.y = position.y - input.data('selector').find('.miniColors-colors').offset().top - 1;
-				if( position.y <= -1 ) position.y = -1;
-				if( position.y >= 149 ) position.y = 149;
+				position = position - input.data('selector').find('.miniColors-colors').offset().top - 1;
+				if( position <= -1 ) position = -1;
+				if( position >= 149 ) position = 149;
 				input.data('huePosition', position);
-				huePicker.css('top', position.y).show();
+				huePicker.css('top', position).show();
 				
 				// Calculate hue
-				var h = Math.round((150 - position.y - 1) * 2.4);
+				var h = Math.round((150 - position - 1) * 2.4);
 				if( h < 0 ) h = 0;
 				if( h > 360 ) h = 360;
 				
@@ -330,18 +380,65 @@ if(jQuery) (function($) {
 				
 			};
 			
+			var moveOpacity = function(input, event) {
+				
+				var opacityPicker = input.data('opacityPicker');
+				
+				opacityPicker.hide();
+				
+				var position = event.pageY;
+				
+				// Touch support
+				if( event.originalEvent.changedTouches ) {
+					position = event.originalEvent.changedTouches[0].pageY;
+				}
+				
+				position = position - input.data('selector').find('.miniColors-colors').offset().top - 1;
+				if( position <= -1 ) position = -1;
+				if( position >= 149 ) position = 149;
+				input.data('opacityPosition', position);
+				opacityPicker.css('top', position).show();
+				
+				// Calculate opacity
+				var alpha = parseFloat((150 - position - 1) / 150).toFixed(2);
+				if( alpha < 0 ) alpha = 0;
+				if( alpha > 1 ) alpha = 1;
+				
+				// Update opacity
+				input
+					.data('alpha', alpha)
+					.attr('data-opacity', alpha);
+				
+				// Set color
+				setColor(input, input.data('hsb'), true);
+				
+			};
+			
 			var setColor = function(input, hsb, updateInput) {
 				input.data('hsb', hsb);
-				var hex = hsb2hex(hsb);	
+				var hex = hsb2hex(hsb), 
+					selector = $(input.data('selector'));
 				if( updateInput ) input.val( '#' + convertCase(hex, input.data('letterCase')) );
+				
+				selector
+					.find('.miniColors-colors').css('backgroundColor', '#' + hsb2hex({ h: hsb.h, s: 100, b: 100 })).end()
+					.find('.miniColors-opacity').css('backgroundColor', '#' + hex).end();
+				
+				var rgb = hsb2rgb(hsb);
+				
+				// Set background color (also fallback for non RGBA browsers)
 				input.data('trigger').css('backgroundColor', '#' + hex);
-				if( input.data('selector') ) input.data('selector').find('.miniColors-colors').css('backgroundColor', '#' + hsb2hex({ h: hsb.h, s: 100, b: 100 }));
+				
+				// Set background color + opacity
+				if( input.data('opacity') ) {
+					input.data('trigger').css('backgroundColor', 'rgba(' + rgb.r + ', ' + rgb.g + ', ' + rgb.b + ', ' + input.attr('data-opacity') + ')');
+				}
 				
 				// Fire change callback
 				if( input.data('change') ) {
-					if( hex === input.data('lastChange') ) return;
-					input.data('change').call(input.get(0), '#' + hex, hsb2rgb(hsb));
-					input.data('lastChange', hex);
+					if( (hex + ',' + input.attr('data-opacity')) === input.data('lastChange') ) return;
+					input.data('change').call(input.get(0), '#' + hex, $.extend(hsb2rgb(hsb), { a: parseFloat(input.attr('data-opacity')) }));
+					input.data('lastChange', hex + ',' + input.attr('data-opacity'));
 				}
 				
 			};
@@ -355,10 +452,6 @@ if(jQuery) (function($) {
 				// Get HSB equivalent
 				var hsb = hex2hsb(hex);
 				
-				// If color is the same, no change required
-				var currentHSB = input.data('hsb');
-				if( hsb.h === currentHSB.h && hsb.s === currentHSB.s && hsb.b === currentHSB.b ) return true;
-				
 				// Set colorPicker position
 				var colorPosition = getColorPositionFromHSB(hsb);
 				var colorPicker = $(input.data('colorPicker'));
@@ -368,9 +461,14 @@ if(jQuery) (function($) {
 				// Set huePosition position
 				var huePosition = getHuePositionFromHSB(hsb);
 				var huePicker = $(input.data('huePicker'));
-				huePicker.css('top', huePosition.y + 'px');
+				huePicker.css('top', huePosition + 'px');
 				input.data('huePosition', huePosition);
 				
+				// Set opacity position
+				var opacityPosition = getOpacityPositionFromAlpha(input.attr('data-opacity'));
+				var opacityPicker = $(input.data('opacityPicker'));
+				opacityPicker.css('top', opacityPosition + 'px');
+				input.data('opacityPosition', opacityPosition);
 				setColor(input, hsb);
 				
 				return true;
@@ -378,9 +476,11 @@ if(jQuery) (function($) {
 			};
 			
 			var convertCase = function(string, letterCase) {
-				if( letterCase === 'lowercase' ) return string.toLowerCase();
-				if( letterCase === 'uppercase' ) return string.toUpperCase();
-				return string;
+				if( letterCase === 'uppercase' ) {
+					return string.toUpperCase();
+				} else {
+					return string.toLowerCase();
+				}
 			};
 			
 			var getColorPositionFromHSB = function(hsb) {				
@@ -397,7 +497,14 @@ if(jQuery) (function($) {
 				var y = 150 - (hsb.h / 2.4);
 				if( y < 0 ) h = 0;
 				if( y > 150 ) h = 150;				
-				return { y: y - 1 };
+				return y;
+			};
+			
+			var getOpacityPositionFromAlpha = function(alpha) {
+				var y = 150 * alpha;
+				if( y < 0 ) y = 0;
+				if( y > 150 ) y = 150;
+				return 150 - y;
 			};
 			
 			var cleanHex = function(hex) {
@@ -542,6 +649,29 @@ if(jQuery) (function($) {
 					});
 					
 					return $(this);
+				
+				case 'opacity':
+					
+					// Getter
+					if( data === undefined ) {
+						if( !$(this).hasClass('miniColors') ) return;
+						if( $(this).data('opacity') ) {
+							return parseFloat($(this).attr('data-opacity'));
+						} else {
+							return null;
+						}
+					}
+					
+					// Setter
+					$(this).each( function() {
+						if( !$(this).hasClass('miniColors') ) return;
+						if( data < 0 ) data = 0;
+						if( data > 1 ) data = 1;
+						$(this).attr('data-opacity', data).data('alpha', data);
+						setColorFromInput($(this));
+					});
+					
+					return $(this);
 					
 				case 'destroy':
 					
diff --git a/3rdparty/miniColors/js/jquery.miniColors.min.js b/3rdparty/miniColors/js/jquery.miniColors.min.js
index c00e0ace6b..1d3346455b 100755
--- a/3rdparty/miniColors/js/jquery.miniColors.min.js
+++ b/3rdparty/miniColors/js/jquery.miniColors.min.js
@@ -1,9 +1,9 @@
 /*
  * jQuery miniColors: A small color selector
  *
- * Copyright 2011 Cory LaViska for A Beautiful Site, LLC. (http://abeautifulsite.net/)
+ * Copyright 2012 Cory LaViska for A Beautiful Site, LLC. (http://www.abeautifulsite.net/)
  *
  * Dual licensed under the MIT or GPL Version 2 licenses
  *
 */
-if(jQuery)(function($){$.extend($.fn,{miniColors:function(o,data){var create=function(input,o,data){var color=expandHex(input.val());if(!color)color='ffffff';var hsb=hex2hsb(color);var trigger=$('<a class="miniColors-trigger" style="background-color: #'+color+'" href="#"></a>');trigger.insertAfter(input);input.addClass('miniColors').data('original-maxlength',input.attr('maxlength')||null).data('original-autocomplete',input.attr('autocomplete')||null).data('letterCase','uppercase').data('trigger',trigger).data('hsb',hsb).data('change',o.change?o.change:null).data('close',o.close?o.close:null).data('open',o.open?o.open:null).attr('maxlength',7).attr('autocomplete','off').val('#'+convertCase(color,o.letterCase));if(o.readonly)input.prop('readonly',true);if(o.disabled)disable(input);trigger.bind('click.miniColors',function(event){event.preventDefault();if(input.val()==='')input.val('#');show(input)});input.bind('focus.miniColors',function(event){if(input.val()==='')input.val('#');show(input)});input.bind('blur.miniColors',function(event){var hex=expandHex(hsb2hex(input.data('hsb')));input.val(hex?'#'+convertCase(hex,input.data('letterCase')):'')});input.bind('keydown.miniColors',function(event){if(event.keyCode===9)hide(input)});input.bind('keyup.miniColors',function(event){setColorFromInput(input)});input.bind('paste.miniColors',function(event){setTimeout(function(){setColorFromInput(input)},5)})};var destroy=function(input){hide();input=$(input);input.data('trigger').remove();input.attr('autocomplete',input.data('original-autocomplete')).attr('maxlength',input.data('original-maxlength')).removeData().removeClass('miniColors').unbind('.miniColors');$(document).unbind('.miniColors')};var enable=function(input){input.prop('disabled',false).data('trigger').css('opacity',1)};var disable=function(input){hide(input);input.prop('disabled',true).data('trigger').css('opacity',0.5)};var show=function(input){if(input.prop('disabled'))return false;hide();var selector=$('<div class="miniColors-selector"></div>');selector.append('<div class="miniColors-colors" style="background-color: #FFF;"><div class="miniColors-colorPicker"><div class="miniColors-colorPicker-inner"></div></div>').append('<div class="miniColors-hues"><div class="miniColors-huePicker"></div></div>').css({top:input.is(':visible')?input.offset().top+input.outerHeight():input.data('trigger').offset().top+input.data('trigger').outerHeight(),left:input.is(':visible')?input.offset().left:input.data('trigger').offset().left,display:'none'}).addClass(input.attr('class'));var hsb=input.data('hsb');selector.find('.miniColors-colors').css('backgroundColor','#'+hsb2hex({h:hsb.h,s:100,b:100}));var colorPosition=input.data('colorPosition');if(!colorPosition)colorPosition=getColorPositionFromHSB(hsb);selector.find('.miniColors-colorPicker').css('top',colorPosition.y+'px').css('left',colorPosition.x+'px');var huePosition=input.data('huePosition');if(!huePosition)huePosition=getHuePositionFromHSB(hsb);selector.find('.miniColors-huePicker').css('top',huePosition.y+'px');input.data('selector',selector).data('huePicker',selector.find('.miniColors-huePicker')).data('colorPicker',selector.find('.miniColors-colorPicker')).data('mousebutton',0);$('BODY').append(selector);selector.fadeIn(100);selector.bind('selectstart',function(){return false});$(document).bind('mousedown.miniColors touchstart.miniColors',function(event){input.data('mousebutton',1);var testSubject=$(event.target).parents().andSelf();if(testSubject.hasClass('miniColors-colors')){event.preventDefault();input.data('moving','colors');moveColor(input,event)}if(testSubject.hasClass('miniColors-hues')){event.preventDefault();input.data('moving','hues');moveHue(input,event)}if(testSubject.hasClass('miniColors-selector')){event.preventDefault();return}if(testSubject.hasClass('miniColors'))return;hide(input)});$(document).bind('mouseup.miniColors touchend.miniColors',function(event){event.preventDefault();input.data('mousebutton',0).removeData('moving')}).bind('mousemove.miniColors touchmove.miniColors',function(event){event.preventDefault();if(input.data('mousebutton')===1){if(input.data('moving')==='colors')moveColor(input,event);if(input.data('moving')==='hues')moveHue(input,event)}});if(input.data('open')){input.data('open').call(input.get(0),'#'+hsb2hex(hsb),hsb2rgb(hsb))}};var hide=function(input){if(!input)input='.miniColors';$(input).each(function(){var selector=$(this).data('selector');$(this).removeData('selector');$(selector).fadeOut(100,function(){if(input.data('close')){var hsb=input.data('hsb'),hex=hsb2hex(hsb);input.data('close').call(input.get(0),'#'+hex,hsb2rgb(hsb))}$(this).remove()})});$(document).unbind('.miniColors')};var moveColor=function(input,event){var colorPicker=input.data('colorPicker');colorPicker.hide();var position={x:event.pageX,y:event.pageY};if(event.originalEvent.changedTouches){position.x=event.originalEvent.changedTouches[0].pageX;position.y=event.originalEvent.changedTouches[0].pageY}position.x=position.x-input.data('selector').find('.miniColors-colors').offset().left-5;position.y=position.y-input.data('selector').find('.miniColors-colors').offset().top-5;if(position.x<=-5)position.x=-5;if(position.x>=144)position.x=144;if(position.y<=-5)position.y=-5;if(position.y>=144)position.y=144;input.data('colorPosition',position);colorPicker.css('left',position.x).css('top',position.y).show();var s=Math.round((position.x+5)*0.67);if(s<0)s=0;if(s>100)s=100;var b=100-Math.round((position.y+5)*0.67);if(b<0)b=0;if(b>100)b=100;var hsb=input.data('hsb');hsb.s=s;hsb.b=b;setColor(input,hsb,true)};var moveHue=function(input,event){var huePicker=input.data('huePicker');huePicker.hide();var position={y:event.pageY};if(event.originalEvent.changedTouches){position.y=event.originalEvent.changedTouches[0].pageY}position.y=position.y-input.data('selector').find('.miniColors-colors').offset().top-1;if(position.y<=-1)position.y=-1;if(position.y>=149)position.y=149;input.data('huePosition',position);huePicker.css('top',position.y).show();var h=Math.round((150-position.y-1)*2.4);if(h<0)h=0;if(h>360)h=360;var hsb=input.data('hsb');hsb.h=h;setColor(input,hsb,true)};var setColor=function(input,hsb,updateInput){input.data('hsb',hsb);var hex=hsb2hex(hsb);if(updateInput)input.val('#'+convertCase(hex,input.data('letterCase')));input.data('trigger').css('backgroundColor','#'+hex);if(input.data('selector'))input.data('selector').find('.miniColors-colors').css('backgroundColor','#'+hsb2hex({h:hsb.h,s:100,b:100}));if(input.data('change')){if(hex===input.data('lastChange'))return;input.data('change').call(input.get(0),'#'+hex,hsb2rgb(hsb));input.data('lastChange',hex)}};var setColorFromInput=function(input){input.val('#'+cleanHex(input.val()));var hex=expandHex(input.val());if(!hex)return false;var hsb=hex2hsb(hex);var currentHSB=input.data('hsb');if(hsb.h===currentHSB.h&&hsb.s===currentHSB.s&&hsb.b===currentHSB.b)return true;var colorPosition=getColorPositionFromHSB(hsb);var colorPicker=$(input.data('colorPicker'));colorPicker.css('top',colorPosition.y+'px').css('left',colorPosition.x+'px');input.data('colorPosition',colorPosition);var huePosition=getHuePositionFromHSB(hsb);var huePicker=$(input.data('huePicker'));huePicker.css('top',huePosition.y+'px');input.data('huePosition',huePosition);setColor(input,hsb);return true};var convertCase=function(string,letterCase){if(letterCase==='lowercase')return string.toLowerCase();if(letterCase==='uppercase')return string.toUpperCase();return string};var getColorPositionFromHSB=function(hsb){var x=Math.ceil(hsb.s/0.67);if(x<0)x=0;if(x>150)x=150;var y=150-Math.ceil(hsb.b/0.67);if(y<0)y=0;if(y>150)y=150;return{x:x-5,y:y-5}};var getHuePositionFromHSB=function(hsb){var y=150-(hsb.h/2.4);if(y<0)h=0;if(y>150)h=150;return{y:y-1}};var cleanHex=function(hex){return hex.replace(/[^A-F0-9]/ig,'')};var expandHex=function(hex){hex=cleanHex(hex);if(!hex)return null;if(hex.length===3)hex=hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2];return hex.length===6?hex:null};var hsb2rgb=function(hsb){var rgb={};var h=Math.round(hsb.h);var s=Math.round(hsb.s*255/100);var v=Math.round(hsb.b*255/100);if(s===0){rgb.r=rgb.g=rgb.b=v}else{var t1=v;var t2=(255-s)*v/255;var t3=(t1-t2)*(h%60)/60;if(h===360)h=0;if(h<60){rgb.r=t1;rgb.b=t2;rgb.g=t2+t3}else if(h<120){rgb.g=t1;rgb.b=t2;rgb.r=t1-t3}else if(h<180){rgb.g=t1;rgb.r=t2;rgb.b=t2+t3}else if(h<240){rgb.b=t1;rgb.r=t2;rgb.g=t1-t3}else if(h<300){rgb.b=t1;rgb.g=t2;rgb.r=t2+t3}else if(h<360){rgb.r=t1;rgb.g=t2;rgb.b=t1-t3}else{rgb.r=0;rgb.g=0;rgb.b=0}}return{r:Math.round(rgb.r),g:Math.round(rgb.g),b:Math.round(rgb.b)}};var rgb2hex=function(rgb){var hex=[rgb.r.toString(16),rgb.g.toString(16),rgb.b.toString(16)];$.each(hex,function(nr,val){if(val.length===1)hex[nr]='0'+val});return hex.join('')};var hex2rgb=function(hex){hex=parseInt(((hex.indexOf('#')>-1)?hex.substring(1):hex),16);return{r:hex>>16,g:(hex&0x00FF00)>>8,b:(hex&0x0000FF)}};var rgb2hsb=function(rgb){var hsb={h:0,s:0,b:0};var min=Math.min(rgb.r,rgb.g,rgb.b);var max=Math.max(rgb.r,rgb.g,rgb.b);var delta=max-min;hsb.b=max;hsb.s=max!==0?255*delta/max:0;if(hsb.s!==0){if(rgb.r===max){hsb.h=(rgb.g-rgb.b)/delta}else if(rgb.g===max){hsb.h=2+(rgb.b-rgb.r)/delta}else{hsb.h=4+(rgb.r-rgb.g)/delta}}else{hsb.h=-1}hsb.h*=60;if(hsb.h<0){hsb.h+=360}hsb.s*=100/255;hsb.b*=100/255;return hsb};var hex2hsb=function(hex){var hsb=rgb2hsb(hex2rgb(hex));if(hsb.s===0)hsb.h=360;return hsb};var hsb2hex=function(hsb){return rgb2hex(hsb2rgb(hsb))};switch(o){case'readonly':$(this).each(function(){if(!$(this).hasClass('miniColors'))return;$(this).prop('readonly',data)});return $(this);case'disabled':$(this).each(function(){if(!$(this).hasClass('miniColors'))return;if(data){disable($(this))}else{enable($(this))}});return $(this);case'value':if(data===undefined){if(!$(this).hasClass('miniColors'))return;var input=$(this),hex=expandHex(input.val());return hex?'#'+convertCase(hex,input.data('letterCase')):null}$(this).each(function(){if(!$(this).hasClass('miniColors'))return;$(this).val(data);setColorFromInput($(this))});return $(this);case'destroy':$(this).each(function(){if(!$(this).hasClass('miniColors'))return;destroy($(this))});return $(this);default:if(!o)o={};$(this).each(function(){if($(this)[0].tagName.toLowerCase()!=='input')return;if($(this).data('trigger'))return;create($(this),o,data)});return $(this)}}})})(jQuery);
\ No newline at end of file
+if(jQuery)(function($){$.extend($.fn,{miniColors:function(o,data){var create=function(input,o,data){var color=expandHex(input.val())||'ffffff',hsb=hex2hsb(color),rgb=hsb2rgb(hsb),alpha=parseFloat(input.attr('data-opacity')).toFixed(2);if(alpha>1)alpha=1;if(alpha<0)alpha=0;var trigger=$('<a class="miniColors-trigger" style="background-color: #'+color+'" href="#"></a>');trigger.insertAfter(input);trigger.wrap('<span class="miniColors-triggerWrap"></span>');if(o.opacity){trigger.css('backgroundColor','rgba('+rgb.r+', '+rgb.g+', '+rgb.b+', '+alpha+')')}input.addClass('miniColors').data('original-maxlength',input.attr('maxlength')||null).data('original-autocomplete',input.attr('autocomplete')||null).data('letterCase',o.letterCase==='uppercase'?'uppercase':'lowercase').data('opacity',o.opacity?true:false).data('alpha',alpha).data('trigger',trigger).data('hsb',hsb).data('change',o.change?o.change:null).data('close',o.close?o.close:null).data('open',o.open?o.open:null).attr('maxlength',7).attr('autocomplete','off').val('#'+convertCase(color,o.letterCase));if(o.readonly||input.prop('readonly'))input.prop('readonly',true);if(o.disabled||input.prop('disabled'))disable(input);trigger.on('click.miniColors',function(event){event.preventDefault();if(input.val()==='')input.val('#');show(input)});input.on('focus.miniColors',function(event){if(input.val()==='')input.val('#');show(input)});input.on('blur.miniColors',function(event){var hex=expandHex(hsb2hex(input.data('hsb')));input.val(hex?'#'+convertCase(hex,input.data('letterCase')):'')});input.on('keydown.miniColors',function(event){if(event.keyCode===9)hide(input)});input.on('keyup.miniColors',function(event){setColorFromInput(input)});input.on('paste.miniColors',function(event){setTimeout(function(){setColorFromInput(input)},5)})};var destroy=function(input){hide();input=$(input);input.data('trigger').parent().remove();input.attr('autocomplete',input.data('original-autocomplete')).attr('maxlength',input.data('original-maxlength')).removeData().removeClass('miniColors').off('.miniColors');$(document).off('.miniColors')};var enable=function(input){input.prop('disabled',false).data('trigger').parent().removeClass('disabled')};var disable=function(input){hide(input);input.prop('disabled',true).data('trigger').parent().addClass('disabled')};var show=function(input){if(input.prop('disabled'))return false;hide();var selector=$('<div class="miniColors-selector"></div>');selector.append('<div class="miniColors-hues"><div class="miniColors-huePicker"></div></div>').append('<div class="miniColors-colors" style="background-color: #FFF;"><div class="miniColors-colorPicker"><div class="miniColors-colorPicker-inner"></div></div>').css('display','none').addClass(input.attr('class'));if(input.data('opacity')){selector.addClass('opacity').prepend('<div class="miniColors-opacity"><div class="miniColors-opacityPicker"></div></div>')}var hsb=input.data('hsb');selector.find('.miniColors-colors').css('backgroundColor','#'+hsb2hex({h:hsb.h,s:100,b:100})).end().find('.miniColors-opacity').css('backgroundColor','#'+hsb2hex({h:hsb.h,s:hsb.s,b:hsb.b})).end();var colorPosition=input.data('colorPosition');if(!colorPosition)colorPosition=getColorPositionFromHSB(hsb);selector.find('.miniColors-colorPicker').css('top',colorPosition.y+'px').css('left',colorPosition.x+'px');var huePosition=input.data('huePosition');if(!huePosition)huePosition=getHuePositionFromHSB(hsb);selector.find('.miniColors-huePicker').css('top',huePosition+'px');var opacityPosition=input.data('opacityPosition');if(!opacityPosition)opacityPosition=getOpacityPositionFromAlpha(input.attr('data-opacity'));selector.find('.miniColors-opacityPicker').css('top',opacityPosition+'px');input.data('selector',selector).data('huePicker',selector.find('.miniColors-huePicker')).data('opacityPicker',selector.find('.miniColors-opacityPicker')).data('colorPicker',selector.find('.miniColors-colorPicker')).data('mousebutton',0);$('BODY').append(selector);var trigger=input.data('trigger'),hidden=!input.is(':visible'),top=hidden?trigger.offset().top+trigger.outerHeight():input.offset().top+input.outerHeight(),left=hidden?trigger.offset().left:input.offset().left,selectorWidth=selector.outerWidth(),selectorHeight=selector.outerHeight(),triggerWidth=trigger.outerWidth(),triggerHeight=trigger.outerHeight(),windowHeight=$(window).height(),windowWidth=$(window).width(),scrollTop=$(window).scrollTop(),scrollLeft=$(window).scrollLeft();if((top+selectorHeight)>windowHeight+scrollTop)top=top-selectorHeight-triggerHeight;if((left+selectorWidth)>windowWidth+scrollLeft)left=left-selectorWidth+triggerWidth;selector.css({top:top,left:left}).fadeIn(100);selector.on('selectstart',function(){return false});if(!$.browser.msie||($.browser.msie&&$.browser.version>=9)){$(window).on('resize.miniColors',function(event){hide(input)})}$(document).on('mousedown.miniColors touchstart.miniColors',function(event){input.data('mousebutton',1);var testSubject=$(event.target).parents().andSelf();if(testSubject.hasClass('miniColors-colors')){event.preventDefault();input.data('moving','colors');moveColor(input,event)}if(testSubject.hasClass('miniColors-hues')){event.preventDefault();input.data('moving','hues');moveHue(input,event)}if(testSubject.hasClass('miniColors-opacity')){event.preventDefault();input.data('moving','opacity');moveOpacity(input,event)}if(testSubject.hasClass('miniColors-selector')){event.preventDefault();return}if(testSubject.hasClass('miniColors'))return;hide(input)}).on('mouseup.miniColors touchend.miniColors',function(event){event.preventDefault();input.data('mousebutton',0).removeData('moving')}).on('mousemove.miniColors touchmove.miniColors',function(event){event.preventDefault();if(input.data('mousebutton')===1){if(input.data('moving')==='colors')moveColor(input,event);if(input.data('moving')==='hues')moveHue(input,event);if(input.data('moving')==='opacity')moveOpacity(input,event)}});if(input.data('open')){input.data('open').call(input.get(0),'#'+hsb2hex(hsb),$.extend(hsb2rgb(hsb),{a:parseFloat(input.attr('data-opacity'))}))}};var hide=function(input){if(!input)input=$('.miniColors');input.each(function(){var selector=$(this).data('selector');$(this).removeData('selector');$(selector).fadeOut(100,function(){if(input.data('close')){var hsb=input.data('hsb'),hex=hsb2hex(hsb);input.data('close').call(input.get(0),'#'+hex,$.extend(hsb2rgb(hsb),{a:parseFloat(input.attr('data-opacity'))}))}$(this).remove()})});$(document).off('.miniColors')};var moveColor=function(input,event){var colorPicker=input.data('colorPicker');colorPicker.hide();var position={x:event.pageX,y:event.pageY};if(event.originalEvent.changedTouches){position.x=event.originalEvent.changedTouches[0].pageX;position.y=event.originalEvent.changedTouches[0].pageY}position.x=position.x-input.data('selector').find('.miniColors-colors').offset().left-6;position.y=position.y-input.data('selector').find('.miniColors-colors').offset().top-6;if(position.x<=-5)position.x=-5;if(position.x>=144)position.x=144;if(position.y<=-5)position.y=-5;if(position.y>=144)position.y=144;input.data('colorPosition',position);colorPicker.css('left',position.x).css('top',position.y).show();var s=Math.round((position.x+5)*0.67);if(s<0)s=0;if(s>100)s=100;var b=100-Math.round((position.y+5)*0.67);if(b<0)b=0;if(b>100)b=100;var hsb=input.data('hsb');hsb.s=s;hsb.b=b;setColor(input,hsb,true)};var moveHue=function(input,event){var huePicker=input.data('huePicker');huePicker.hide();var position=event.pageY;if(event.originalEvent.changedTouches){position=event.originalEvent.changedTouches[0].pageY}position=position-input.data('selector').find('.miniColors-colors').offset().top-1;if(position<=-1)position=-1;if(position>=149)position=149;input.data('huePosition',position);huePicker.css('top',position).show();var h=Math.round((150-position-1)*2.4);if(h<0)h=0;if(h>360)h=360;var hsb=input.data('hsb');hsb.h=h;setColor(input,hsb,true)};var moveOpacity=function(input,event){var opacityPicker=input.data('opacityPicker');opacityPicker.hide();var position=event.pageY;if(event.originalEvent.changedTouches){position=event.originalEvent.changedTouches[0].pageY}position=position-input.data('selector').find('.miniColors-colors').offset().top-1;if(position<=-1)position=-1;if(position>=149)position=149;input.data('opacityPosition',position);opacityPicker.css('top',position).show();var alpha=parseFloat((150-position-1)/150).toFixed(2);if(alpha<0)alpha=0;if(alpha>1)alpha=1;input.data('alpha',alpha).attr('data-opacity',alpha);setColor(input,input.data('hsb'),true)};var setColor=function(input,hsb,updateInput){input.data('hsb',hsb);var hex=hsb2hex(hsb),selector=$(input.data('selector'));if(updateInput)input.val('#'+convertCase(hex,input.data('letterCase')));selector.find('.miniColors-colors').css('backgroundColor','#'+hsb2hex({h:hsb.h,s:100,b:100})).end().find('.miniColors-opacity').css('backgroundColor','#'+hex).end();var rgb=hsb2rgb(hsb);input.data('trigger').css('backgroundColor','#'+hex);if(input.data('opacity')){input.data('trigger').css('backgroundColor','rgba('+rgb.r+', '+rgb.g+', '+rgb.b+', '+input.attr('data-opacity')+')')}if(input.data('change')){if((hex+','+input.attr('data-opacity'))===input.data('lastChange'))return;input.data('change').call(input.get(0),'#'+hex,$.extend(hsb2rgb(hsb),{a:parseFloat(input.attr('data-opacity'))}));input.data('lastChange',hex+','+input.attr('data-opacity'))}};var setColorFromInput=function(input){input.val('#'+cleanHex(input.val()));var hex=expandHex(input.val());if(!hex)return false;var hsb=hex2hsb(hex);var colorPosition=getColorPositionFromHSB(hsb);var colorPicker=$(input.data('colorPicker'));colorPicker.css('top',colorPosition.y+'px').css('left',colorPosition.x+'px');input.data('colorPosition',colorPosition);var huePosition=getHuePositionFromHSB(hsb);var huePicker=$(input.data('huePicker'));huePicker.css('top',huePosition+'px');input.data('huePosition',huePosition);var opacityPosition=getOpacityPositionFromAlpha(input.attr('data-opacity'));var opacityPicker=$(input.data('opacityPicker'));opacityPicker.css('top',opacityPosition+'px');input.data('opacityPosition',opacityPosition);setColor(input,hsb);return true};var convertCase=function(string,letterCase){if(letterCase==='uppercase'){return string.toUpperCase()}else{return string.toLowerCase()}};var getColorPositionFromHSB=function(hsb){var x=Math.ceil(hsb.s/0.67);if(x<0)x=0;if(x>150)x=150;var y=150-Math.ceil(hsb.b/0.67);if(y<0)y=0;if(y>150)y=150;return{x:x-5,y:y-5}};var getHuePositionFromHSB=function(hsb){var y=150-(hsb.h/2.4);if(y<0)h=0;if(y>150)h=150;return y};var getOpacityPositionFromAlpha=function(alpha){var y=150*alpha;if(y<0)y=0;if(y>150)y=150;return 150-y};var cleanHex=function(hex){return hex.replace(/[^A-F0-9]/ig,'')};var expandHex=function(hex){hex=cleanHex(hex);if(!hex)return null;if(hex.length===3)hex=hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2];return hex.length===6?hex:null};var hsb2rgb=function(hsb){var rgb={};var h=Math.round(hsb.h);var s=Math.round(hsb.s*255/100);var v=Math.round(hsb.b*255/100);if(s===0){rgb.r=rgb.g=rgb.b=v}else{var t1=v;var t2=(255-s)*v/255;var t3=(t1-t2)*(h%60)/60;if(h===360)h=0;if(h<60){rgb.r=t1;rgb.b=t2;rgb.g=t2+t3}else if(h<120){rgb.g=t1;rgb.b=t2;rgb.r=t1-t3}else if(h<180){rgb.g=t1;rgb.r=t2;rgb.b=t2+t3}else if(h<240){rgb.b=t1;rgb.r=t2;rgb.g=t1-t3}else if(h<300){rgb.b=t1;rgb.g=t2;rgb.r=t2+t3}else if(h<360){rgb.r=t1;rgb.g=t2;rgb.b=t1-t3}else{rgb.r=0;rgb.g=0;rgb.b=0}}return{r:Math.round(rgb.r),g:Math.round(rgb.g),b:Math.round(rgb.b)}};var rgb2hex=function(rgb){var hex=[rgb.r.toString(16),rgb.g.toString(16),rgb.b.toString(16)];$.each(hex,function(nr,val){if(val.length===1)hex[nr]='0'+val});return hex.join('')};var hex2rgb=function(hex){hex=parseInt(((hex.indexOf('#')>-1)?hex.substring(1):hex),16);return{r:hex>>16,g:(hex&0x00FF00)>>8,b:(hex&0x0000FF)}};var rgb2hsb=function(rgb){var hsb={h:0,s:0,b:0};var min=Math.min(rgb.r,rgb.g,rgb.b);var max=Math.max(rgb.r,rgb.g,rgb.b);var delta=max-min;hsb.b=max;hsb.s=max!==0?255*delta/max:0;if(hsb.s!==0){if(rgb.r===max){hsb.h=(rgb.g-rgb.b)/delta}else if(rgb.g===max){hsb.h=2+(rgb.b-rgb.r)/delta}else{hsb.h=4+(rgb.r-rgb.g)/delta}}else{hsb.h=-1}hsb.h*=60;if(hsb.h<0){hsb.h+=360}hsb.s*=100/255;hsb.b*=100/255;return hsb};var hex2hsb=function(hex){var hsb=rgb2hsb(hex2rgb(hex));if(hsb.s===0)hsb.h=360;return hsb};var hsb2hex=function(hsb){return rgb2hex(hsb2rgb(hsb))};switch(o){case'readonly':$(this).each(function(){if(!$(this).hasClass('miniColors'))return;$(this).prop('readonly',data)});return $(this);case'disabled':$(this).each(function(){if(!$(this).hasClass('miniColors'))return;if(data){disable($(this))}else{enable($(this))}});return $(this);case'value':if(data===undefined){if(!$(this).hasClass('miniColors'))return;var input=$(this),hex=expandHex(input.val());return hex?'#'+convertCase(hex,input.data('letterCase')):null}$(this).each(function(){if(!$(this).hasClass('miniColors'))return;$(this).val(data);setColorFromInput($(this))});return $(this);case'opacity':if(data===undefined){if(!$(this).hasClass('miniColors'))return;if($(this).data('opacity')){return parseFloat($(this).attr('data-opacity'))}else{return null}}$(this).each(function(){if(!$(this).hasClass('miniColors'))return;if(data<0)data=0;if(data>1)data=1;$(this).attr('data-opacity',data).data('alpha',data);setColorFromInput($(this))});return $(this);case'destroy':$(this).each(function(){if(!$(this).hasClass('miniColors'))return;destroy($(this))});return $(this);default:if(!o)o={};$(this).each(function(){if($(this)[0].tagName.toLowerCase()!=='input')return;if($(this).data('trigger'))return;create($(this),o,data)});return $(this)}}})})(jQuery);
\ No newline at end of file
-- 
GitLab