From cdbd3c36ee17421625e62d0cbc642ce3a32fa1cb Mon Sep 17 00:00:00 2001 From: justme-1968 Date: Mon, 19 Sep 2016 21:21:49 +0000 Subject: [PATCH] fhemweb_colorpicker.js: added BRI mode git-svn-id: https://svn.fhem.de/fhem/trunk/fhem@12180 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- www/pgm2/fhemweb_colorpicker.js | 36 ++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/www/pgm2/fhemweb_colorpicker.js b/www/pgm2/fhemweb_colorpicker.js index 1c9915d29..b9048a890 100644 --- a/www/pgm2/fhemweb_colorpicker.js +++ b/www/pgm2/fhemweb_colorpicker.js @@ -119,7 +119,7 @@ FW_colorpickerCreate(elName, devName, vArr, currVal, set, params, cmd) bri.style.display='none'; } - newEl.setValueFn = function(arg){ + newEl.setValueFn = function(arg) { if( hidden ) hidden.attr("value", arg); @@ -210,6 +210,40 @@ FW_colorpickerCreate(elName, devName, vArr, currVal, set, params, cmd) $(newEl).addClass("colorpicker_hue"); return newEl; + } else if( mode == 'BRI' ) { + var newEl = FW_createSlider(elName, devName, ["slider",vArr[2],vArr[3],vArr[4]], currVal, undefined, params, cmd); + $(newEl).addClass("colorpicker_bri"); + + var grad = 'background-image: -webkit-linear-gradient(left, #c1#, #c2# );' + + 'background-image: -moz-linear-gradient(left, #c1#, #c2# );' + + 'background-image: -ms-linear-gradient(left, #c1#, #c2# );' + + 'background-image: -o-linear-gradient(left, #c1#, #c2# );' + + 'background-image: linear-gradient(left, #c1#, #c2# );'; + + var slider = $(newEl).find('.slider').get(0); + var v = grad.replace(/#c1#/g, 'rgb( 0, 0 ,0)') + .replace(/#c2#/g, 'rgb(255,255,255)') + slider.setAttribute('style', v ); + + var setValueFn = newEl.setValueFn; + newEl.setValueFn = function(arg) { + setValueFn( arg ); + + var v = arg/(vArr[4]-vArr[2]); + + if( v > 0.75 ) + $(slider).find('.handle').get(0).style.color = '#000000'; + else + $(slider).find('.handle').get(0).style.color = '#FFFFFF'; + } + + if( currVal ) { + newEl.setValueFn(currVal); + $(document).ready(function(arg) { newEl.setValueFn(currVal) }); + } + + return newEl; + } if( currVal )