|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  | (function($) { | 
					
						
						|  | var fn_options = {}; | 
					
						
						|  | var in_element = ''; | 
					
						
						|  | var ttl_length_steps = ''; | 
					
						
						|  | $.fn.vjaccordionsteps = function(options) { | 
					
						
						|  | in_element = this; | 
					
						
						|  | ttl_length_steps = in_element.children().length; | 
					
						
						|  |  | 
					
						
						|  | fn_options = (typeof options !='undefined')?options:{}; | 
					
						
						|  | fn_options = $.extend({}, $.fn.vjaccordionsteps.default_options, (typeof options !='undefined' ? options : {})); | 
					
						
						|  |  | 
					
						
						|  | if(fn_options.vjacc_type == 'steps'){ | 
					
						
						|  | $.fn.vjaccordionsteps._steps(this); | 
					
						
						|  | } | 
					
						
						|  | }; | 
					
						
						|  |  | 
					
						
						|  | $.fn.vjaccordionsteps._steps = function(elem){ | 
					
						
						|  | if(fn_options.vjacc_hide_all_steps == true){ | 
					
						
						|  | $.fn.vjaccordionsteps._hide_all_steps(elem); | 
					
						
						|  | } | 
					
						
						|  | else{ | 
					
						
						|  | $.fn.vjaccordionsteps._display_step(elem, 1, true); | 
					
						
						|  | } | 
					
						
						|  |  | 
					
						
						|  | $(elem).find('li h3').click(function(e) { | 
					
						
						|  | var selected_elem = $(this).parent(); | 
					
						
						|  | var cur_element = selected_elem.index()-0; | 
					
						
						|  | var cur_element = cur_element+1; | 
					
						
						|  | if($(selected_elem).data('vjopt_display') == 1){ | 
					
						
						|  | $.fn.vjaccordionsteps._display_step(elem, cur_element); | 
					
						
						|  | } | 
					
						
						|  | }); | 
					
						
						|  |  | 
					
						
						|  | $(elem).find('.vjsteps_nxt').click(function(e) { | 
					
						
						|  | var cur_element_nxt_ele = $(this).closest('li'); | 
					
						
						|  | var cur_element_nxt = cur_element_nxt_ele.index()-0; | 
					
						
						|  | var cur_element_nxt = cur_element_nxt+1; | 
					
						
						|  | var cur_element_nxt_next = cur_element_nxt+1; | 
					
						
						|  | var is_valid_next_step = false; | 
					
						
						|  | if(cur_element_nxt_next<=ttl_length_steps){ | 
					
						
						|  | is_valid_next_step = true; | 
					
						
						|  | } | 
					
						
						|  | var arr_params = { | 
					
						
						|  | 'in_element': in_element, | 
					
						
						|  | 'previous_li': cur_element_nxt_ele, | 
					
						
						|  | 'current_step': cur_element_nxt, | 
					
						
						|  | 'next_step': cur_element_nxt_next, | 
					
						
						|  | 'is_valid_next_step': is_valid_next_step, | 
					
						
						|  | 'total_steps': ttl_length_steps | 
					
						
						|  | }; | 
					
						
						|  | var is_go_nextstep = fn_options.vjacc_next_step_function(arr_params); | 
					
						
						|  | if($(cur_element_nxt_ele).data('vjopt_display') == 1 && is_valid_next_step == true && is_go_nextstep == true){ | 
					
						
						|  | $.fn.vjaccordionsteps._display_step(elem, cur_element_nxt_next); | 
					
						
						|  | } | 
					
						
						|  | }); | 
					
						
						|  |  | 
					
						
						|  | $(elem).find('.vjsteps_prev').click(function(e) { | 
					
						
						|  | var previous_li = $(this).closest('li'); | 
					
						
						|  | var cur_element_nxt = previous_li.index()-0; | 
					
						
						|  | var cur_element_nxt = cur_element_nxt+1; | 
					
						
						|  | var cur_element_nxt_next = cur_element_nxt+1; | 
					
						
						|  | var cur_element_nxt_prev = cur_element_nxt-1; | 
					
						
						|  | var is_valid_prev_step = false; | 
					
						
						|  | if(cur_element_nxt_prev>=1){ | 
					
						
						|  | is_valid_prev_step = true; | 
					
						
						|  | } | 
					
						
						|  | else{ | 
					
						
						|  | cur_element_nxt_prev = 0; | 
					
						
						|  | } | 
					
						
						|  | var arr_params = { | 
					
						
						|  | 'in_element': in_element, | 
					
						
						|  | 'previous_li': previous_li, | 
					
						
						|  | 'current_step': cur_element_nxt, | 
					
						
						|  | 'next_step': cur_element_nxt_next, | 
					
						
						|  | 'prev_step': cur_element_nxt_prev, | 
					
						
						|  | 'is_valid_prev_step': is_valid_prev_step, | 
					
						
						|  | 'total_steps': ttl_length_steps | 
					
						
						|  | }; | 
					
						
						|  | var is_go_prevstep = fn_options.vjacc_prev_step_function(arr_params); | 
					
						
						|  |  | 
					
						
						|  | if($(previous_li).data('vjopt_display') == 1 && is_valid_prev_step == true && is_go_prevstep == true){ | 
					
						
						|  | $.fn.vjaccordionsteps._display_step(elem, cur_element_nxt_prev); | 
					
						
						|  | } | 
					
						
						|  |  | 
					
						
						|  | }); | 
					
						
						|  |  | 
					
						
						|  | }; | 
					
						
						|  |  | 
					
						
						|  | $.fn.vjaccordionsteps.display_step = function(disp_step){ | 
					
						
						|  | $.fn.vjaccordionsteps._display_step(in_element, disp_step); | 
					
						
						|  | } | 
					
						
						|  |  | 
					
						
						|  | $.fn.vjaccordionsteps._display_step = function(elem, disp_step, is_page_load){ | 
					
						
						|  | if(typeof is_page_load == 'undefined'){ is_page_load = false; } | 
					
						
						|  | var disp_step = (typeof disp_step!='undefined')?(disp_step -0):''; | 
					
						
						|  | var th_current_step = $(in_element).find('.vjopt_activeli').data('vjstepno') -0; | 
					
						
						|  | if(th_current_step<1){ | 
					
						
						|  | th_current_step = 1; | 
					
						
						|  | } | 
					
						
						|  | var arr_params = { | 
					
						
						|  | 'current_step': th_current_step, | 
					
						
						|  | 'new_step': disp_step, | 
					
						
						|  | 'total_steps': ttl_length_steps | 
					
						
						|  | }; | 
					
						
						|  | if(th_current_step == disp_step && is_page_load == false){ | 
					
						
						|  | return; | 
					
						
						|  | } | 
					
						
						|  | if(is_page_load == false){ | 
					
						
						|  | var is_i_change_step = fn_options.vjacc_step_change_function(arr_params); | 
					
						
						|  | } | 
					
						
						|  | else{ | 
					
						
						|  | var is_i_change_step = true; | 
					
						
						|  | } | 
					
						
						|  | if(disp_step!='' && is_i_change_step == true){ | 
					
						
						|  | $(elem).find('li h3').removeClass('vjopt_activeh3'); | 
					
						
						|  | $(elem).find('li').removeClass('vjopt_activeli'); | 
					
						
						|  | $.fn.vjaccordionsteps._hide_all_steps(elem); | 
					
						
						|  |  | 
					
						
						|  | $(elem).find('li').each(function(){ | 
					
						
						|  | var vjstepno = $(this).data('vjstepno') -0; | 
					
						
						|  | if(vjstepno>0 && disp_step == vjstepno){ | 
					
						
						|  | $(this).data('vjopt_display', 1); | 
					
						
						|  | $(this).addClass('vjopt_activeli'); | 
					
						
						|  | $(this).find('h3').addClass('vjopt_activeh3'); | 
					
						
						|  | $(this).find('section').show(); | 
					
						
						|  | fn_options.vjacc_after_step_change_function(arr_params); | 
					
						
						|  | return; | 
					
						
						|  | } | 
					
						
						|  | }); | 
					
						
						|  | } | 
					
						
						|  | }; | 
					
						
						|  |  | 
					
						
						|  | $.fn.vjaccordionsteps.reset_steps = function(){ | 
					
						
						|  | $(in_element).find('li').data('vjopt_display', 0); | 
					
						
						|  | $.fn.vjaccordionsteps._display_step(in_element, 1, true); | 
					
						
						|  | }; | 
					
						
						|  |  | 
					
						
						|  | $.fn.vjaccordionsteps._hide_all_steps = function(elem){ | 
					
						
						|  | $(elem).find('li section').hide(); | 
					
						
						|  | }; | 
					
						
						|  |  | 
					
						
						|  | $.fn.vjaccordionsteps.vjacc_next_step = function(disp_step){ | 
					
						
						|  | $.fn.vjaccordionsteps._display_step(in_element, disp_step); | 
					
						
						|  | }; | 
					
						
						|  |  | 
					
						
						|  | $.fn.vjaccordionsteps.default_options = { | 
					
						
						|  | 'vjacc_type': 'steps', | 
					
						
						|  | 'vjacc_hide_all_steps': false, | 
					
						
						|  | 'vjacc_next_step_function': function(){ return true; }, | 
					
						
						|  | 'vjacc_prev_step_function': function(){ return true; }, | 
					
						
						|  | 'vjacc_after_step_change_function': function(){ return true; }, | 
					
						
						|  | 'vjacc_step_change_function': function(){ return true; } | 
					
						
						|  | }; | 
					
						
						|  | })(jQuery); |