/*
 *
 * jqTransform
 * by mathieu vilaplana mvilaplana@dfc-e.com
 * Designer ghyslain armand garmand@dfc-e.com
 *
 *
 * Version 1.0 25.09.08
 * Version 1.1 06.08.09
 * Version 1.2 08.01.10
 * Version 1.3 16.01.10
 * Changed jqTransform selector from "parent->form" to "form" directly
 * Add event click on Checkbox and Radio
 * Auto calculate the size of a select element
 * Can now, disabled the elements
 * Correct bug in ff if click on select (overflow=hidden)
 * No need any more preloading !!
 * 
 ******************************************** */

(function($){var ba={preloadImg:true};var bb=false;var bc=function(a){a=a.replace(/^url\((.*)\)/,'$1').replace(/^\"(.*)\"$/,'$1');var b=new Image();b.src=a.replace(/\.([a-zA-Z]*)$/,'-hover.$1');var c=new Image();c.src=a.replace(/\.([a-zA-Z]*)$/,'-focus.$1')};var bd=function(a){var b=$(a.get(0).form);var c=a.attr('id');if(c){oLabel=b.find('label[for="'+c+'"]')}if(!oLabel.is('label')){oLabel=a.prev()};if(!oLabel.is('label')){oLabel=a.next()};if(oLabel.is('label')){return oLabel.css('cursor','pointer')};return false};var be=function(b){var c=$('.jqTransformSelectWrapper ul:visible');c.each(function(){var a=$(this).parents(".jqTransformSelectWrapper:first").find("select").get(0);if(!(b&&a.oLabel&&a.oLabel.get(0)==b.get(0))){$(this).hide()}})};var bf=function(a){if($(a.target).parents('.jqTransformSelectWrapper').length===0){be($(a.target))}};var bg=function(){$(document).mousedown(bf)};var bh=function(f){var a;$('.jqTransformSelectWrapper select',f).each(function(){a=(this.selectedIndex<0)?0:this.selectedIndex;$('ul',$(this).parent()).each(function(){$('a:eq('+a+')',this).click()})});$('a.jqTransformCheckbox, a.jqTransformRadio',f).removeClass('jqTransformChecked');$('input:checkbox, input:radio',f).each(function(){if(this.checked){$('a',$(this).parent()).addClass('jqTransformChecked')}})};$.fn.jqTransInputButton=function(){var d='jqTransformButton_hover';var e=' jqTransformButton'+(($.browser.msie)?'IE'+Math.round($.browser.version):(($.browser.mozilla)?'Mozilla':(($.browser.opera)?'Opera':(($.browser.safari)?((window.navigator.userAgent.toLowerCase().indexOf('chrome')!=-1)?'Chrome':'Safari'):'Unknown'))));return this.each(function(){var a=$(this);var b=a.attr('class');a.removeAttr('class');var c=a.wrap('<span href="javascript:void(0);" class="btn btn-white-blue btn-padd-10 '+b+e+'"></span>').removeAttr('class');c.parent().append('<span>'+a.attr('value')+'</span>').hover(function(){$(this).addClass(d)},function(){$(this).removeClass(d)});c.focus(function(){$(this).parent().addClass(d)});c.blur(function(){$(this).parent().removeClass(d)});a.css({width:a.parent().outerWidth()});if($.browser.safari){a.parent().css({'padding-left':(parseInt(a.parent().css('padding-left').replace('px',''))-1)+'px'})};a.parent().children('input').css({'margin-left':'-'+a.parent().css('padding-left'),width:a.parent().outerWidth()+'px'})})};$.fn.fancyInput=function(h){var j={inputs:'.fancy-input',labels:'.fancy-label',radius:6,glow:0};h=$.extend(j,h);var k='<div></div>';var l='*:nth-child(';var m=')';var n=l+1+m+','+l+2+m;var o='';var p=' ';var q='input';var r='label';var s='focused';var t='px';var u='-';var v='';var w=0+t;var x='position';var y='relative';var z='absolute';var A='float';var B='z-index';var C='display';var D='block';var E='table';var F='none';var G='auto';var H='visibility';var I='visible';var J='hidden';var K='opacity';var L='width';var M='height';var N='top';var O='right';var P='bottom';var Q='left';var R='-54px';var S='0px';var T='-81px';var U='-27px';var V='margin';var W=V+u+N;var X=V+u+O;var Y=V+u+P;var Z=V+u+Q;var bi='padding';var bj=bi+u+N;var bk=bi+u+O;var bl=bi+u+P;var bm=bi+u+Q;var bn='background';var bo=bn+u+'image';var bp=bn+u+'repeat';var bq=bn+u+x;var br=bn+u+'color';var bs='transparent';var bt='border-width';var bu=$.browser.msie&&parseInt($.browser.version)<8;var bv=$.browser.msie&&parseInt($.browser.version)==6;var bw=[];var bx=function(a,b){return $(a).css(b)};var by=function(a,b,c){$(a).css(b,c)};var bz=function(a,b,c){for(var i=0;i<b.length;i++){by(a,b[i],c[i])}};var bA=function(c){bw=[];$(c).parents().map(function(){if($(this).css(C)==F){bw.push($(this));$(this).css(H,J).css(C,D)}});var d=Array(bx(c,C),bx(c,bo),bx(c,bp));var e=Array(x,A,N,O,P,Q,W,X,Y,Z,C,M,L);var f=Array(bx(c,x),bx(c,A),bx(c,N),bx(c,O),bx(c,P),bx(c,Q),bx(c,W),bx(c,X),bx(c,Y),bx(c,Z),d[0],$(c).outerHeight()+2*h.glow,$(c).outerWidth()+2*h.glow);$(c).wrap(k);bz($(c).parent(),e,f);e=Array(x,A,N,O,P,Q,M,L,V,C,bt,bn,br,bj,bk,bl,bm);f=Array(y,F,(bu)?-1+t:w,G,G,w,(bv)?($(c).outerHeight()+(h.glow*2)-2)+t:$(c).height()+t,(bv)?($(c).outerWidth()+(h.glow*2))+t:$(c).width()+t,w,D,w,F,bs,parseInt(bx(c,bj).replace(t,v))+$(c).outerHeight()-$(c).innerHeight(),parseInt(bx(c,bk).replace(t,v))+$(c).outerWidth()-$(c).innerWidth(),parseInt(bx(c,bl).replace(t,v))+$(c).outerHeight()-$(c).innerHeight(),parseInt(bx(c,bm).replace(t,v))+$(c).outerWidth()-$(c).innerWidth());$(c).parent().parent().children(h.labels+"[for='"+$(c).attr('id')+"']").each(function(){$(this).clone().insertBefore($(c));$(this).remove();if($(c).val()!=v){$(c).parent().children(h.labels).each(function(){by(this,H,J)})};$(c).parent().children(h.labels).each(function(){bz(this,e,f);by(this,x,z)})});bz(c,e,f);$(c).parent().prepend(k+k);$(c).parent().children(n).each(function(i){var a=$(this).parent().width()-h.radius;if(i==0){var b=Array(a,Q+p+R,0)}else{var b=Array(h.radius,O+p+S,a)};bz(this,Array(x,M,L,bo,bp,bq,Z),Array(z,$(this).parent().height(),b[0],d[1],d[2],b[1],b[2]))});for(var i=0;i<bw.length;i++){var g=bw[i];g.css(H,I).css(C,F)}};var bB=function(a,b){$(a).children(n).each(function(i){$(this).css(bq,(i==0)?Q+p+((b==P)?T:R):O+p+((b==P)?U:S))})};var bC=function(a){var b=a.length;for(var i=0;i<b;i++){a=a.replace(p,v)};return(a==v)?true:false};$(h.inputs).each(function(){bA(this);$(this).focus(function(){$(this).parent().addClass(s);$(this).parent().each(function(){bB(this,P)});if($(this).parent().children(l+3+m).is(r)){$(this).parent().children(r).css(H,J)}});$(this).blur(function(){$(this).parent().removeClass(s);$(this).parent().each(function(){bB(this,N)});if(bC($(this).val())&&$(this).parent().children(l+3+m).is(r)){$(this).val(v);$(this).parent().children(r).css(H,I)}});$(this).parent().hover(function(){bB(this,P)},function(){if(!$(this).hasClass(s)){$(this).removeClass(s);bB(this,N)}})})};$.fn.jqTransCheckBox=function(){return this.each(function(){if($(this).hasClass('jqTransformHidden')){return}var a=$(this);var b=a.attr('class');a.removeAttr('class');var c=$('<span class="jqTransformCheckbox">&shy;</span>');a.wrap('<span class="jqTransformCheckboxWrapper '+b+'"></span>').parent().append(c);if(!$.browser.msie){a.change(function(){if(this.checked){c.addClass('jqTransformChecked')}else{c.removeClass('jqTransformChecked')};return false});a.map(function(){if(this.checked){c.addClass('jqTransformChecked')}else{c.removeClass('jqTransformChecked')}})}})};$.fn.jqTransRadio=function(){return this.each(function(){if($(this).hasClass('jqTransformHidden')){return};var a=$(this);var b=this;oLabel=bd(a);oLabel&&oLabel.click(function(){c.trigger('click')});var c=$('<a href="#" class="jqTransformRadio" rel="'+this.name+'"></a>');var d=a.attr('class');a.removeAttr('class');a.addClass('jqTransformHidden').wrap('<span class="jqTransformRadioWrapper '+d+'"></span>').parent().prepend(c);a.change(function(){b.checked&&c.addClass('jqTransformChecked')||c.removeClass('jqTransformChecked');return true});c.click(function(){if(a.attr('disabled')){return false};a.trigger('click').trigger('change');$('input[name="'+a.attr('name')+'"]',b.form).not(a).each(function(){$(this).attr('type')=='radio'&&$(this).trigger('change')});return false});b.checked&&c.addClass('jqTransformChecked')})};$.fn.jqTransTextarea=function(){return this.each(function(){var a=$(this);if(a.hasClass('jqtransformdone')){return};a.addClass('jqtransformdone');oLabel=bd(a);oLabel&&oLabel.click(function(){a.focus()});var b=a.attr('class');a.removeAttr('class');var c='<table cellspacing="0" cellpadding="0" border="0" class="jqTransformTextarea '+b+'">';c+='<tr><td class="jqTransformTextarea-tl"></td><td class="jqTransformTextarea-tm"></td><td class="jqTransformTextarea-tr"></td></tr>';c+='<tr><td class="jqTransformTextarea-ml">&nbsp;</td><td class="jqTransformTextarea-mm"><div></div></td><td class="jqTransformTextarea-mr">&nbsp;</td></tr>';c+='<tr><td class="jqTransformTextarea-bl"></td><td class="jqTransformTextarea-bm"></td><td class="jqTransformTextarea-br"></td></tr>';c+='</table>';var d=$(c).insertAfter(a).hover(function(){!d.hasClass('jqTransformTextarea-focus')&&d.addClass('jqTransformTextarea-hover')},function(){d.removeClass('jqTransformTextarea-hover')});a.focus(function(){d.removeClass('jqTransformTextarea-hover').addClass('jqTransformTextarea-focus')}).blur(function(){d.removeClass('jqTransformTextarea-focus')}).appendTo($('.jqTransformTextarea-mm div',d));this.oTable=d;if($.browser.safari){$('.jqTransformTextarea-mm',d).addClass('jqTransformSafariTextarea').find('div').css('height',a.height()).css('width',a.width())}})};$.fn.jqTransSelect=function(){return this.each(function(b){var c=$(this);if(c.hasClass('jqTransformHidden')){return};if(c.attr('multiple')){return};var d=bd(c);var e=c.attr('class');var f=c.removeAttr('class').addClass('jqTransformHidden').wrap('<div class="jqTransformSelectWrapper '+e+'"></div>').parent().css({zIndex:10-b});var g=(c.attr('tabindex')!=undefined)?' tabindex="'+c.attr('tabindex')+'"':'';c.removeAttr('tabindex');f.prepend('<div><span></span><a href="#" class="jqTransformSelectOpen"'+g+'></a></div><ul></ul>');var h=$('ul',f).css('width',c.width()).hide();$('option',this).each(function(i){var a=$('<li><a href="#" index="'+i+'">'+$(this).html()+'</a></li>');h.append(a)});h.find('a').click(function(){$('a.selected',f).removeClass('selected');$(this).addClass('selected');if(c[0].selectedIndex!=$(this).attr('index')&&c[0].onchange){c[0].selectedIndex=$(this).attr('index');c[0].onchange()};c[0].selectedIndex=$(this).attr('index');$('span:eq(0)',f).html($(this).html());h.hide();return false});$('a:eq('+this.selectedIndex+')',h).click();$('span:first',f).click(function(){$("a.jqTransformSelectOpen",f).trigger('click')});d&&d.click(function(){$("a.jqTransformSelectOpen",f).trigger('click')});this.oLabel=d;var j=$('a.jqTransformSelectOpen',f).click(function(){if(h.css('display')=='none'){be()};if(c.attr('disabled')){return false};h.slideToggle('fast',function(){var a=($('a.selected',h).offset().top-h.offset().top);h.animate({scrollTop:a})});return false});var k=c.outerWidth();var l=$('span:first',f);var m=$('a:first',f);var n=c.outerWidth();f.css('width',n);var o=$('li',h);var p=$('a',o);var q=parseInt(l.css('padding-left').replace('px',''));var r=parseInt(l.css('padding-right').replace('px',''));m.css({width:f.outerHeight()});l.css({width:k-f.outerHeight()-(q+r)});h.css({display:'block',visibility:'hidden'});h.css('width',Math.max(n-2,h.width()-2));o.css('width',h.width());p.css('width',h.width());var s=($('li',h).length)*($('li:first',h).height());if(s<h.height()){h.css({height:s,'overflow':'hidden'})};h.css({display:'none',visibility:'visible'})})};$.fn.jqTransform=function(c){var d=$.extend({},ba,c);return this.each(function(i){var b=$(this);if(b.hasClass('jqtransformdone')){return};b.addClass('jqtransformdone');$('input:submit, input:reset, input[type="button"]',this).jqTransInputButton();$('input:text, input:password',this).addClass('fancy-input-'+i).addClass('fancy-input');$(this).fancyInput({inputs:'.fancy-input-'+i,labels:'.fancy-label'});$('input:checkbox',this).jqTransCheckBox(i);$('input:radio',this).jqTransRadio();$('textarea',this).jqTransTextarea();if($('select',this).jqTransSelect().length>0){bg()};b.bind('reset',function(){var a=function(){bh(this)};window.setTimeout(a,10)})})}})(jQuery);
