
(function($){$.fn.formToWizard=function(options){var element=this;var steps=$(element).find("fieldset.step:visible");var count=steps.size();var submitButtonName="#"+options.submitButton;var $submitButton=$(submitButtonName).hide();options=$.extend($.fn,{submitButton:'',selectStep:function(to,from){from=from==undefined?1:from;if(count==1){return;}
$("#steps li").removeClass("current");$('div[step]').fadeOut("fast");$stepDesc=$('#stepDesc'+to);$stepDesc.addClass("current");var width=$('#stepDesc'+to).outerWidth();var offset=-(to-1)*width;$('#steps').animate({marginLeft:offset},1000,'swing',function(){$('[step='+to+']').fadeIn("slow");});}},options);$(element).before("<div id='steps-wrap'><ul id='steps'></ul><div id=steps-login>&nbsp;</div></div>");steps.each(function(i){i++;$this=$(this);$this.wrap("<div id='step"+i+"' "+"step="+i+"></div>").append("<p id='step"+i+"commands'></p>");var legend=$this.find("legend");var name=legend.html();$("#steps").append("<li id='stepDesc"+i+"' "+"step="+i+" class='stepdesc'"+"title='"+legend.attr('title')+"'>"+strings_step+" "+i+"<div class=stepof> "+strings_of+" "+steps.length+"</div><span class=stepinfo>"+name+"</span></li>");if(count==1){createSubmitButton(i);}else if(i==1){createNextButton(i);$this.selectStep(i);}
else if(i==count){$("#step"+i).hide();createPrevButton(i);createSubmitButton(i);}
else{$("#step"+i).hide();createPrevButton(i);createNextButton(i);}});function createSubmitButton(i){var clone=$submitButton.clone().css('display','inline').css('float','right').css('clear','none');$('#step'+i+'commands').append(clone);}
function createPrevButton(i){var $steps=$('#steps');var prevstep=i-1;var stepName="step"+i;var prevstepName="step"+prevstep;$("#"+stepName+"commands").append("<a href='#"+prevstepName+"' id='"+stepName+"Prev' class='prev'>< "+strings_back+"</a>");$("#"+stepName+"Prev").bind("click",function(e){$(submitButtonName).hide();$(this).selectStep(prevstep,i);});}
function createNextButton(i){var nextstep=i+1;var stepName="step"+i;var nextstepName="step"+nextstep;$("#"+stepName+"commands").append("<a href='#"+nextstepName+"' id='"+stepName+"Next' class='next'>"+strings_next+"></a>");var $steps=$('#steps');$("#"+stepName+"Next").bind("click",function(e){if(nextstep==count){$(submitButtonName).show();}
var stepIsValid=true;$("#"+stepName+" :input").each(function(index){var xy=element.validate().element($(this));if(xy==undefined)
xy=true;stepIsValid=xy&&stepIsValid;});if(!stepIsValid){return false;};$(this).selectStep(nextstep,i);});}}})(jQuery);
