1jQuery(document).ready(function($){$.fn.powermailTabs=function(options){'use strict';var $form=jQuery(this);options=jQuery.extend({container:'fieldset',header:'legend',tabs:!0,navigation:!0,openTabOnError:!0,tabIndex:!0,tabMenuClassName:'link-group',tabMenuItemActiveClassName:'link-active',tabMenuItemErrorClassName:'link-danger'},options);showOnlyFirstFieldset($form,options);generateTabNavigation($form,options);generateButtonNavigation($form,options);cleanAndAddErrorClassToTabs($form,options);openTabWithError($form,options)};function showOnlyFirstFieldset($form,options){hideAllFieldsets($form,options);$form.find(options.container).first().show()} 2function generateTabNavigation($form,options){if(!options.tabs){return} 3var $tabMenu=$('<div />',{'class':options.tabMenuClassName+' small',}).insertBefore($form.children(options.container).filter(':first'));$form.children(options.container).each(function(i,$fieldset){var li=$('<a/>').html($(this).children(options.header).html()).addClass((i==0)?options.tabMenuItemActiveClassName:'').addClass('item'+i).addClass('internal-link mr-2').prop('type','button').on('click keypress',{container:$form.children(options.container),fieldset:$($fieldset)},function(){var $listItem=$(this);var indexTab=$listItem.parent().children().index($listItem);showTab($form,options,$listItem,indexTab)});if(options.tabIndex){li.prop('tabindex',i)} 4$tabMenu.append(li)})} 5function generateButtonNavigation($form,options){if(!options.navigation){return} 6$form.children(options.container).each(function(i){var navigationContainer=$('<div />').addClass('powermail_fieldwrap').addClass('powermail_tab_navigation').addClass('ml-auto').addClass('mt-4').addClass('mr-4').appendTo($(this));if(i>0){navigationContainer.append(createPreviousButton($form,options))} 7if(i<($form.children(options.container).length-1)){navigationContainer.append(createNextButton($form,options))}})} 8function cleanAndAddErrorClassToTabs($form,options){if($.fn.parsley&&$form.data('parsley-validate')==='data-parsley-validate'){$form.parsley().subscribe('parsley:field:validated',function(){removeErrorClassFromTabs($form,options);addErrorClassToTabs($form,options)})}} 9function openTabWithError($form,options){if(options.openTabOnError&&$.fn.parsley){$.listen('parsley:field:error',function(){setTimeout(function(){$form.find('.'+options.tabMenuClassName+' > .'+options.tabMenuItemErrorClassName+':first').click()},50)})}} 10function showTab($form,options,$listItem,clickedIndex){$activeTab=getActiveTabMenuListItem($form,options);$activeTab.removeClass(options.tabMenuItemActiveClassName);$listItem.addClass(options.tabMenuItemActiveClassName);hideAllFieldsets($form,options);$('.powermail_fieldset',$form).slice(clickedIndex,clickedIndex+1).show()} 11function hideAllFieldsets($form,options){$form.children(options.container).hide()} 12function createPreviousButton($form,options){return $('<a />').prop('href','#').addClass('btn btn-warning ml-3').html('Zurück').click(function(e){e.preventDefault();showPreviousTab($form,options)})} 13function createNextButton($form,options){return $('<a />').prop('href','#').addClass('btn btn-primary pull-right ml-3').html('Weiter').click(function(e){e.preventDefault();showNextTab($form,options)})} 14function showNextTab($form,options){var currentActiveTabIndex=getIndexOfCurrentActiveTab($form,options);$activeTab=getActiveTabMenuListItem($form,options);$activeTab.removeClass(options.tabMenuItemActiveClassName).next().addClass(options.tabMenuItemActiveClassName);showFieldsetByIndex($form,options,currentActiveTabIndex+1)} 15function showPreviousTab($form,options){var currentActiveTabIndex=getIndexOfCurrentActiveTab($form,options);$activeTab=getActiveTabMenuListItem($form,options);$activeTab.removeClass(options.tabMenuItemActiveClassName).prev().addClass(options.tabMenuItemActiveClassName);showFieldsetByIndex($form,options,currentActiveTabIndex-1)} 16function showFieldsetByIndex($form,options,index){hideAllFieldsets($form,options);$form.find('.powermail_fieldset').slice(index,index+1).show()} 17function getIndexOfCurrentActiveTab($form,options){var $listItems=getCurrentTabMenuListItems($form,options);var currentActiveTabIndex=$listItems.index(getActiveTabMenuListItem($form,options));return parseInt(currentActiveTabIndex)} 18function getCurrentTabMenuListItems($form,options){return $form.find('.'+options.tabMenuClassName).children()} 19function getActiveTabMenuListItem($form,options){var $listItems=getCurrentTabMenuListItems($form,options);return $listItems.filter('.'+options.tabMenuItemActiveClassName)} 20function removeErrorClassFromTabs($form,options){var $tabMenuListItems=getCurrentTabMenuListItems($form,options);$tabMenuListItems.removeClass(options.tabMenuItemErrorClassName)} 21function addErrorClassToTabs($form,options){if(!$form.parsley().isValid()){$form.find('.parsley-error').each(function(){var errorIndex=$form.find('.powermail_fieldset').index($(this).closest('.powermail_fieldset'));var $tabMenuListItems=getCurrentTabMenuListItems($form,options);var $tabWithError=$tabMenuListItems.slice(errorIndex,errorIndex+1);$tabWithError.addClass(options.tabMenuItemErrorClassName)})}}})
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.