1(function ($, spc) { 2 3 var toggleTabs = function () { 4 5 var $metaBox = $('#spr__meta-box'), 6 $tabLinks = $metaBox.find('.meta-tabs').find('a'), 7 $tabPanels = $metaBox.find('.meta-content').find('.tab-pane'); 8 9 try { 10 $tabLinks.each(function () { 11 $(this).on("click", function (e) { 12 e.preventDefault(); 13 var $link = $(this), 14 $li = $link.closest('li'), 15 $panel = $($link.attr('href')); 16 17 /* close panel */ 18 if($li.hasClass('active')){ 19 //reset 20 resetTabs($tabLinks,$tabPanels); 21 22 /* close panel */ 23 }else{ 24 //reset 25 resetTabs($tabLinks,$tabPanels); 26 //current state 27 $li.addClass('active'); 28 $link.attr('aria-expanded','true'); 29 $panel.addClass('active').attr('aria-hidden','false'); 30 } 31 32 }); 33 }); 34 35 36 } catch (err) { 37 //alert('err'); 38 } 39 }, 40 resetTabs = function($tabLinks,$tabPanels){ 41 $tabLinks.closest('li').removeClass('active'); 42 $tabLinks.attr('aria-expanded','false'); 43 $tabPanels.removeClass('active').attr('aria-hidden','true'); 44 }, 45 findJiraTickets = function(){ 46 var $tickets = $('#dokuwiki__content').find('a.jiralink'); 47 if($tickets.length >0){ 48 var $panel = $('#spr__tab-jira'), 49 $num = $('a[href="#spr__tab-jira"]').find('.num'); 50 51 if($panel.length > 0 && $num.length > 0){ 52 $num.empty().append($tickets.length); 53 $panel.find('> div').empty().append('<ul></ul>'); 54 var $ul = $panel.find('ul'); 55 $tickets.each(function (){ 56 var $ticket = $(this).clone(); 57 $ul.prepend('<li></li>'); 58 $ul.find('li:first-child').append($ticket); 59 }); 60 } 61 } 62 }, 63 findSitemap = function(){ 64 var $panel = $('#spr__tab-toc'), 65 $toc = $panel.find('ul'), 66 $num = $('a[href="#spr__tab-toc"]').find('.num'); 67 if($toc.length == 0){ 68 $panel.append('<div><p>'+LANG.template.sprintdoc.meta_box_toc_none+'</p></div>'); 69 }else{ 70 $num.empty().append('1'); 71 } 72 }; 73 74 $(function () { 75 toggleTabs(); 76 findJiraTickets(); 77 findSitemap(); 78 }); 79 80})(jQuery, spc); 81 82