




/* Version: 1318003614 */


View.ColorControl=Class.create(View,{main:function()
{this.Object={};this.Object.Panel=$('colorPicker');this.Object.Head=$('MainHtml').down('head');}});var ColorControl=Class.create(Module,{View:'View.ColorControl',_Themes:null,_Picker:null,_intThemes:0,_CurrentTheme:null,_CssObjects:null,_BuntCssContent:null,_BuntCssContentObject:null,_BuntCssContentScaled:null,_blnFontBlack:false,main:function($super)
{$super();this._Themes=new Array();this._CssObjects={};this._registerThemes();this._createCssLinkElements();},_registerThemes:function(){$A($$('.picker')).each(function(ele){ele=$(ele);if(!this._CurrentTheme&&ele.hasClassName('active'))
{this._CurrentTheme=ele;}
this._setSingleListener(ele);this._Themes.push({picker:ele,active:ele.hasClassName('active')});this._intThemes++;}.bind(this));},_setSingleListener:function(ele){ele=$(ele);ele.removeAttribute('onmouseover');ele.removeAttribute('onmouseout');ele.observe('click',function(ele){if(ele.id.toString()!=this._CurrentTheme.id.toString()||this._CurrentTheme.id.toString()=='pickerCustom')
{this.chooseColorSet(ele);}}.bind(this,ele));ele.observe('mouseover',function(ele){if(ele.id.toString()!=this._CurrentTheme.id.toString())
{if(!ele.hasClassName('active'))
{ele.addClassName('active');}}}.bind(this,ele));ele.observe('mouseout',function(ele){if(ele.id.toString()!=this._CurrentTheme.id.toString())
{if(ele.hasClassName('active'))
{ele.removeClassName('active');}}}.bind(this,ele));},chooseColorSet:function(ele){ele=$(ele);var commitObj={};var blnAjax=true;switch(ele.id.toString())
{case'pickerBlau':commitObj.t=2;this._cssObjectToggle();if(this._BuntCssContentObject)
{if(this._BuntCssContentObject.styleSheet)
{this._BuntCssContentObject.styleSheet.cssText="";}
else
{this._BuntCssContentObject.update('');}}
break;case'pickerWeiss':commitObj.t=3;this._cssObjectToggle('pickerWeiss');if(this._BuntCssContentObject)
{if(this._BuntCssContentObject.styleSheet)
{this._BuntCssContentObject.styleSheet.cssText="";}
else
{this._BuntCssContentObject.update('');}}
break;case'pickerCustom':blnAjax=false;commitObj.t='custom';if(!this._Picker)
{this._cssObjectToggle('pickerCustom');this._Picker=new ColorPicker(ele.down('input'),this);}
else
{this._cssObjectToggle();}
this._Picker.start();this._preloadBuntCss();this._createFontColorSwitch();break;}
if(blnAjax)
{this._saveColors(commitObj);}
if(this._CurrentTheme.hasClassName('active'))
{this._CurrentTheme.removeClassName('active');}
if(ele.hasClassName('noStyle'))
{ele.removeClassName('noStyle');}
ele.addClassName('active');this._CurrentTheme=ele;},_saveColors:function(commitObj){new Ajax.Request('/ColorPickerSetColor',{method:'GET',parameters:{daten:Object.toJSON(commitObj)},onSuccess:function(){if(commitObj.r)
{location.href=commitObj.r;}}});},_createFontColorSwitch:function()
{var ColorSwitch;if($('MainBody').hasClassName('black'))
{ColorSwitch=$(Builder.node('div',{id:'fontColorSwitch'},[Builder.node('input',{type:'checkbox',checked:'checked',id:'fontColorSwitcher'}),Builder.node('label',{htmlFor:'fontColorSwitcher'},' schwarze Schriftfarbe')]));this._blnFontBlack=true;}
else
{ColorSwitch=$(Builder.node('div',{id:'fontColorSwitch'},[Builder.node('input',{type:'checkbox',id:'fontColorSwitcher'}),Builder.node('label',{htmlFor:'fontColorSwitcher'},' schwarze Schriftfarbe')]));this._blnFontBlack=false;}
ColorSwitch.observe('click',function(){$('MainBody').toggleClassName('black');if(this._blnFontBlack==true)
{this._blnFontBlack=false;}
else
{this._blnFontBlack=true;}}.bind(this));$('The_colorPicker').appendChild(ColorSwitch);},_createCssLinkElements:function(){this._CssObjects['cssObj:pickerWeiss']={htmlEle:$(Builder.node('link',{id:'cssObjPickerWeiss',href:'/css/6_1/white.css',type:"text/css",rel:"stylesheet"})),identifier:'cssObjPickerWeiss'};this._CssObjects['cssObj:pickerCustom']={htmlEle:$(Builder.node('link',{id:'cssObjPickerCustom',href:'/ColorPickerUserStyleCss',type:"text/css",rel:"stylesheet"})),identifier:'cssObjPickerCustom'};},_cssObjectToggle:function(strCssObject){var strCssObject=strCssObject||null;if(this._CssObjects['cssObj:'+this._CurrentTheme.id])
{if($(this._CssObjects['cssObj:'+this._CurrentTheme.id].identifier))
{$(this._CssObjects['cssObj:'+this._CurrentTheme.id].identifier).remove();}}
if(strCssObject&&this._CssObjects['cssObj:'+strCssObject])
{this.View.Head.appendChild(this._CssObjects['cssObj:'+strCssObject].htmlEle);}},_preloadBuntCss:function(){if(!this._BuntCssContent)
{new Ajax.Request('/css/6_1/bunt.css',{onSuccess:function(response){this._BuntCssContent=response.responseText;}.bind(this)});this._BuntCssContentObject=$(Builder.node('style',{type:'text/css',rel:'stylesheet',id:'buntCssManipulation'}));this.View.Head.appendChild(this._BuntCssContentObject);}},scaleStyle:function(arrColors){var colorBody,colorHead;this._BuntCssContentScaled=this._BuntCssContent;if(this._BuntCssContentScaled)
{for(var i=0,n=arrColors.length;i<n;i++)
{if(i==0)
{colorBody=arrColors[i];}
if(i==4)
{colorHead=arrColors[i];}
var regex=new RegExp("(/\\*-"+i+"\\*\\/)(#[0-9a-f]{6})(;/\\*--"+i+"\\*\\/)","gi");this._BuntCssContentScaled=this._BuntCssContentScaled.replace(regex,"#"+arrColors[i]+" !important;");}
if($(this._BuntCssContentObject).styleSheet)
{$(this._BuntCssContentObject).styleSheet.cssText=this._BuntCssContentScaled;}
else
{$(this._BuntCssContentObject).update(this._BuntCssContentScaled);}
$('pickerCustom').down('.head').removeAttribute('style');$('pickerCustom').down('.body').removeAttribute('style');$('pickerCustom').down('.head').setStyle({backgroundColor:'#'+colorHead.toString().toUpperCase()});$('pickerCustom').down('.body').setStyle({backgroundImage:'none',backgroundColor:'#'+colorBody.toString().toUpperCase()});}}});var ColorPicker=Class.create({_Element:null,_ControlPanel:null,_EventFuncs:null,initialize:function(objStartElement,ControlPanel){this._Element=objStartElement;this._EventFuncs={};this._ControlPanel=ControlPanel;this.setListener();},setListener:function(){this._EventFuncs['ColorChanged']=function(inputObj){this._ControlPanel.scaleStyle(this._calculateColors($(inputObj.memo.inputFieldId).value));}.bind(this);this._EventFuncs['ColorPickerClosed']=function(){var commitObj={t:'custom',fontColor:this._ControlPanel._blnFontBlack,color:this._Element.value};this._ControlPanel._saveColors(commitObj);}.bind(this);document.observe('Event:colorChanged',this._EventFuncs['ColorChanged']);document.observe('Event:colorPickerClosed',this._EventFuncs['ColorPickerClosed']);},_calculateColors:function(colorHash){colorHash=colorHash.replace("#","");var colorR=parseInt(colorHash.substr(0,2),16);var colorG=parseInt(colorHash.substr(2,2),16);var colorB=parseInt(colorHash.substr(4,2),16);var arrColors=new Array();for(var i=0;i<6;i++)
{arrColors.push(this._returnCssBgColor(i,colorR,colorG,colorB));}
for(var i=0;i<6;i++)
{r=arrColors[i][0].toString(16);g=arrColors[i][1].toString(16);b=arrColors[i][2].toString(16);arrColors[i]=(r.length==1?'0':'')+r;arrColors[i]+=(g.length==1?'0':'')+g;arrColors[i]+=(b.length==1?'0':'')+b;}
return arrColors;},start:function(){startTukanColorPicker(this._Element);},_returnCssBgColor:function(i,rVal,gVal,bVal){var rFaktor,gFaktor,bFaktor;switch(i){case 0:rFaktor=1;gFaktor=1;bFaktor=1;break;case 1:rFaktor=3.1538;gFaktor=1.9109;bFaktor=1.3659;break;case 2:rFaktor=2.1923;gFaktor=1.5743;bFaktor=1.2622;break;case 3:rFaktor=1.4038;gFaktor=1.1683;bFaktor=1.0488;break;case 4:rFaktor=0.6154;gFaktor=0.733;bFaktor=0.8232;break;case 5:rFaktor=0.019;gFaktor=0.2772;bFaktor=0.4268;break;default:break;}
return this._returnRgbs(rVal,gVal,bVal,rFaktor,gFaktor,bFaktor);},_returnRgbs:function(rVal,gVal,bVal,rFaktor,gFaktor,bFaktor){rVal=Math.round(rVal*rFaktor);gVal=Math.round(gVal*gFaktor);bVal=Math.round(bVal*bFaktor);if(rVal>255)rVal=255;if(gVal>255)gVal=255;if(bVal>255)bVal=255;var rgb=new Array(rVal,gVal,bVal);return(rgb);}});var ColorControlRegistry=null;function initColorControl()
{if(Element.typeOf(ColorControlRegistry)=='null')
{ColorControlRegistry=new ColorControl();}}





