mirror of
https://github.com/SickGear/SickGear.git
synced 2024-12-02 17:33:37 +00:00
Add bubble links to History/Provider fails when more than one provider has failures.
This commit is contained in:
parent
ffa6e4e9b3
commit
6da2eb94fc
8 changed files with 118 additions and 82 deletions
|
@ -1,6 +1,7 @@
|
|||
### 0.17.0 (2018-xx-xx xx:xx:xx UTC)
|
||||
|
||||
* Add TVDB, TheXem, and GitHub buttons to page History/Layout "Provider fails" that fetches a site Up/Down report
|
||||
* Add bubble links to History/Provider fails when more than one provider has failures
|
||||
* Add "Keep up to x most recent downloads" to Edit Show/Other
|
||||
* Add "Keep up to x most recent downloads" to Manage/Bulk Change/Edit
|
||||
* Change append number of downloads to keep to the number of file(s) at Display Show
|
||||
|
|
|
@ -70,10 +70,12 @@ pre .prelight-num{
|
|||
border-color:#222
|
||||
}
|
||||
|
||||
.component-group.bubblelist a,
|
||||
.ui-widget-content a{
|
||||
color:#2d8fbf
|
||||
}
|
||||
|
||||
.component-group.bubblelist a:hover,
|
||||
.ui-widget-content a:hover{
|
||||
color:#09a2ff
|
||||
}
|
||||
|
@ -990,7 +992,7 @@ fieldset[disabled] .navbar-default .btn-link:focus{
|
|||
color:#ddd
|
||||
}
|
||||
|
||||
.component-group.typelist .bgcol,
|
||||
.component-group.bubblelist .bgcol,
|
||||
.dropdown-menu{
|
||||
background-color:#333;
|
||||
border:1px solid rgba(0, 0, 0, 0.15);
|
||||
|
|
|
@ -65,10 +65,12 @@ pre .prelight-num{
|
|||
border-color:#fff
|
||||
}
|
||||
|
||||
.component-group.bubblelist a,
|
||||
.ui-widget-content a{
|
||||
color:rgb(42, 100, 150)
|
||||
}
|
||||
|
||||
.component-group.bubblelist a:hover,
|
||||
.ui-widget-content a:hover{
|
||||
color:#09a2ff
|
||||
}
|
||||
|
@ -963,7 +965,7 @@ fieldset[disabled] .navbar-default .btn-link:focus{
|
|||
background-color:#333
|
||||
}
|
||||
|
||||
.component-group.typelist .bgcol,
|
||||
.component-group.bubblelist .bgcol,
|
||||
.dropdown-menu{
|
||||
background-color:#f5f1e4;
|
||||
border:1px solid rgba(0, 0, 0, 0.15);
|
||||
|
|
|
@ -236,6 +236,7 @@ inc_top.tmpl
|
|||
border:1px solid
|
||||
}
|
||||
|
||||
.component-group.bubblelist a,
|
||||
.ui-widget-content a{
|
||||
text-decoration:none
|
||||
}
|
||||
|
@ -3802,6 +3803,18 @@ fieldset[disabled] .navbar-default .btn-link:focus{
|
|||
color:#ccc
|
||||
}
|
||||
|
||||
.component-group.bubble.last{padding:0;margin:0;border-bottom:none}
|
||||
.component-group.bubblelist{min-height:30px}
|
||||
.component-group.bubblelist .type{padding:6px}
|
||||
.component-group.bubblelist .item{display:inline-block}
|
||||
.component-group.bubblelist .item img{margin-right:4px}
|
||||
.component-group.bubblelist .item.text{font-size:12px; padding-right:3px}
|
||||
.component-group.bubblelist .item a{font-size:16px;padding-right:20px}
|
||||
.component-group.bubblelist .item.text,
|
||||
.component-group.bubblelist .item a{line-height:16px;vertical-align:middle}
|
||||
.component-group.bubblelist .item a img{vertical-align:bottom;opacity:0.65;filter:alpha(opacity=65)}
|
||||
.component-group.bubblelist .item a:hover img{opacity:1;filter:alpha(opacity=1)}
|
||||
|
||||
.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus{
|
||||
color:#262626;
|
||||
text-decoration:none;
|
||||
|
|
|
@ -23,17 +23,6 @@
|
|||
<h1 class="title">$title</h1>
|
||||
#end if
|
||||
|
||||
<style>
|
||||
.component-group.typelist{min-height:30px}
|
||||
.component-group.typelist .type{padding:6px}
|
||||
.component-group.typelist .item{display:inline-block}
|
||||
.component-group.typelist .item img{margin-right:4px}
|
||||
.component-group.typelist .item.text{font-size:12px; padding-right:3px}
|
||||
.component-group.typelist .item a{font-size:16px;padding-right:20px}
|
||||
.component-group.typelist .item.text,
|
||||
.component-group.typelist .item a{line-height:16px;vertical-align:middle}
|
||||
</style>
|
||||
|
||||
<img src="$sbRoot/images/loading16#echo ('', '-dark')['dark' == $sickbeard.THEME_NAME]#.gif" height="16" width="16" style="display:none">
|
||||
<div id="config">
|
||||
<div id="config-content">
|
||||
|
@ -52,17 +41,17 @@
|
|||
|
||||
|
||||
<div id="tabs-1">
|
||||
<div class="component-group typelist">
|
||||
<div class="component-group bubblelist">
|
||||
<div class="type bgcol">
|
||||
<span class="list"><div class="item text">Bubble links:</div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/emby.png"><a href="#emby" rel="noreferrer">Emby</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/kodi.png"><a href="#kodi" rel="noreferrer">Kodi</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/plex.png"><a href="#plex" rel="noreferrer">Plex</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/nmj.png"><a href="#nmj" rel="noreferrer">NMJ</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/nmj.png"><a href="#nmjv2" rel="noreferrer">NMJv2</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/synoindex.png"><a href="#synoindexer" rel="noreferrer">Syno Indexer</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/synologynotifier.png"><a href="#synonotifier" rel="noreferrer">Syno Notifier</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/pytivo.png"><a href="#pytivo" rel="noreferrer">pyTivo</a></div>
|
||||
<div class="item"><a href="#emby" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/emby.png">Emby</a></div>
|
||||
<div class="item"><a href="#kodi" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/kodi.png">Kodi</a></div>
|
||||
<div class="item"><a href="#plex" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/plex.png">Plex</a></div>
|
||||
<div class="item"><a href="#nmj" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/nmj.png">NMJ</a></div>
|
||||
<div class="item"><a href="#nmjv2" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/nmj.png">NMJv2</a></div>
|
||||
<div class="item"><a href="#synoindexer" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/synoindex.png">Syno Indexer</a></div>
|
||||
<div class="item"><a href="#synonotifier" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/synologynotifier.png">Syno Notifier</a></div>
|
||||
<div class="item"><a href="#pytivo" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/pytivo.png">pyTivo</a></div>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -841,18 +830,18 @@
|
|||
|
||||
|
||||
<div id="tabs-2">
|
||||
<div class="component-group typelist">
|
||||
<div class="component-group bubblelist">
|
||||
<div class="type bgcol">
|
||||
<span class="list"><div class="item text">Bubble links:</div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/boxcar2.png"><a href="#boxcar2" rel="noreferrer">Boxcar2</a></div>
|
||||
<div class="item"><a href="#boxcar2" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/boxcar2.png">Boxcar2</a></div>
|
||||
#if 'PUSHALOT' in NotifierFactory().notifiers
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/pushalot.png"><a href="#pushalot" rel="noreferrer">Pushalot</a></div>
|
||||
<div class="item"><a href="#pushalot" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/pushalot.png">Pushalot</a></div>
|
||||
#end if
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/pushbullet.png"><a href="#pushbullet" rel="noreferrer">Pushbullet</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/pushover.png"><a href="#pushover" rel="noreferrer">Pushover</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/growl.png"><a href="#growl" rel="noreferrer">Growl</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/prowl.png"><a href="#prowl" rel="noreferrer">Prowl</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/libnotify.png"><a href="#libnotify" rel="noreferrer">Libnotify</a></div>
|
||||
<div class="item"><a href="#pushbullet" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/pushbullet.png">Pushbullet</a></div>
|
||||
<div class="item"><a href="#pushover" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/pushover.png">Pushover</a></div>
|
||||
<div class="item"><a href="#growl" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/growl.png">Growl</a></div>
|
||||
<div class="item"><a href="#prowl" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/prowl.png">Prowl</a></div>
|
||||
<div class="item"><a href="#libnotify" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/libnotify.png">Libnotify</a></div>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -1437,15 +1426,15 @@
|
|||
|
||||
|
||||
<div id="tabs-3">
|
||||
<div class="component-group typelist">
|
||||
<div class="component-group bubblelist">
|
||||
<div class="type bgcol">
|
||||
<span class="list"><div class="item text">Bubble links:</div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/trakt.png"><a href="#trakt" rel="noreferrer">Trakt</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/slack.png"><a href="#slack" rel="noreferrer">Slack</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/discordapp.png"><a href="#discordapp" rel="noreferrer">Discordapp</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/gitter.png"><a href="#gitter" rel="noreferrer">Gitter</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/twitter.png"><a href="#twitter" rel="noreferrer">Twitter</a></div>
|
||||
<div class="item"><img height="16px" src="$sbRoot/images/notifiers/email.png"><a href="#email" rel="noreferrer">Email</a></div>
|
||||
<div class="item"><a href="#trakt" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/trakt.png">Trakt</a></div>
|
||||
<div class="item"><a href="#slack" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/slack.png">Slack</a></div>
|
||||
<div class="item"><a href="#discordapp" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/discordapp.png">Discordapp</a></div>
|
||||
<div class="item"><a href="#gitter" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/gitter.png">Gitter</a></div>
|
||||
<div class="item"><a href="#twitter" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/twitter.png">Twitter</a></div>
|
||||
<div class="item"><a href="#email" rel="noreferrer"><img height="16px" src="$sbRoot/images/notifiers/email.png">Email</a></div>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -589,57 +589,80 @@
|
|||
##
|
||||
##
|
||||
<div id="provider-failures">
|
||||
<div style="padding-bottom:10px">
|
||||
#for ($check, $check_name, $check_url) in [
|
||||
('tvdb', 'TVDB Api', 'api.thetvdb.com'), ('thexem', 'The Xem', 'thexem.de'), ('github', 'GitHub', 'github.com'),
|
||||
]
|
||||
<div id="check-$check" data-check="check_$check" class="check-site" style="margin-bottom:10px">
|
||||
<input type="button" class="btn" value="Check $check_name">
|
||||
<span style="line-height:26px">Test if site is up<span class="result"></span>
|
||||
<a class="addQTip" style="margin-left:2px;display:none" href="$sickbeard.helpers.anon_url('http://www.isitdownrightnow.com/downorjustme.php?url=' + $check_url)" rel="noreferrer" onclick="window.open(this.href, '_blank'); return !1;" title="View full report for $check_name in new tab"><img alt="[IsItDown]" height="16" width="16" src="$sbRoot/images/iidrn.png" /></a>
|
||||
</span>
|
||||
</div>
|
||||
<div id="check-$check" data-check="check_$check" class="check-site" style="margin-bottom:10px">
|
||||
<input type="button" class="btn" value="Check $check_name">
|
||||
<span style="line-height:26px">Test if site is up<span class="result"></span>
|
||||
<a class="addQTip" style="margin-left:2px;display:none" href="$sickbeard.helpers.anon_url('http://www.isitdownrightnow.com/downorjustme.php?url=' + $check_url)" rel="noreferrer" onclick="window.open(this.href, '_blank'); return !1;" title="View full report for $check_name in new tab"><img alt="[IsItDown]" height="16" width="16" src="$sbRoot/images/iidrn.png" /></a>
|
||||
</span>
|
||||
</div>
|
||||
#end for
|
||||
</div>
|
||||
|
||||
#if not $provider_fails
|
||||
<p>No current provider failures. Failure stats display here when appropriate.</p>
|
||||
#else
|
||||
<p>When a provider cannot be contacted over a period, SickGear backs off and waits an increasing interval between each retry</p>
|
||||
#for $prov in $provider_fail_stats
|
||||
<style>
|
||||
.component-group{min-height:50px}
|
||||
.component-group.bubblelist{padding:0;border-bottom:none}
|
||||
.component-group.bubblelist .item a{font-size:14px;padding-right:14px}
|
||||
</style>
|
||||
#set dev = (1, 3)[False]
|
||||
#if 1 < len([$prov for $prov in $provider_fail_stats * $dev if len($prov['fails'])])
|
||||
<div class="component-group bubblelist" style="margin:0 0 3px">
|
||||
<div class="type bgcol">
|
||||
<span class="list"><div class="item text">Bubble links:</div>
|
||||
#for $n, $prov in enumerate($provider_fail_stats * $dev)
|
||||
#if $len($prov['fails'])
|
||||
<div class="item"><a href="#$prov['prov_id']-section-$n" rel="noreferrer"><img height="16px" src="$sbRoot/images/providers/$prov['prov_img']">$prov['name']</a></div>
|
||||
#end if
|
||||
#end for
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
#end if
|
||||
<p id="bubble-after">When a provider cannot be contacted over a period, SickGear backs off and waits an increasing interval between each retry</p>
|
||||
|
||||
#for $n, $prov in enumerate($provider_fail_stats * $dev)
|
||||
#if $len($prov['fails'])
|
||||
|
||||
<!-- $prov['name'] -->
|
||||
<div>
|
||||
<div class="component-group bubble#if $n + 1 == $len($provider_fail_stats * $dev)# last#end if#">
|
||||
<div name="$prov['prov_id']-section-$n" style="text-align:left">
|
||||
#set $prov_class = '<span %sstyle="vertical-align:middle">'
|
||||
#if not $prov['active']
|
||||
#set $prov_class = $prov_class % 'class="grey-text" '
|
||||
#else
|
||||
#set $prov_class = $prov_class % ''
|
||||
#end if
|
||||
<input type="button" class="shows-more btn" value="Expand" style="display:none"><input type="button" class="shows-less btn" value="Collapse"><img src="$sbRoot/images/providers/$prov['prov_img']" width="16" height="16" style="margin:0 6px 0 3px">$prov_class$prov['name']
|
||||
<input type="button" class="shows-more btn" value="Expand" style="display:none"><input type="button" class="shows-less btn" value="Collapse"><img src="$sbRoot/images/providers/$prov['prov_img']" width="16" height="16" style="margin:0 6px 0 3px">$prov_class$prov['name']
|
||||
#if $prov['active']
|
||||
#if $prov['next_try']
|
||||
#set nt = $str($prov['next_try']).split('.', 2)[0][::-1].replace(':', ' m', 1).replace(':', ' h', 1)[::-1]
|
||||
... is paused until $sbdatetime.sbdatetime.sbftime($sbdatetime.sbdatetime.now() + $prov['next_try'], markup=True) (in ${nt}s) <input type="button" class="provider-retry btn" id="$prov['prov_id']-btn-retry" value="Ignore pause on next search">
|
||||
... is paused until $sbdatetime.sbdatetime.sbftime($sbdatetime.sbdatetime.now() + $prov['next_try'], markup=True) (in ${nt}s) <input type="button" class="provider-retry btn" id="$prov['prov_id']-btn-retry" value="Ignore pause on next search">
|
||||
#end if
|
||||
#else
|
||||
... is not enabled
|
||||
... is not enabled
|
||||
#end if
|
||||
</span>
|
||||
</div>
|
||||
<table class="manageTable provider-failures tablesorter hover-highlight focus-highlight text-center" cellspacing="0" border="0" cellpadding="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="text-center" style="width:13em;padding-right:20px">period of 1hr</th>
|
||||
<th class="text-center" style="padding-right:20px">server/timeout</th>
|
||||
<th class="text-center" style="padding-right:20px">network</th>
|
||||
<th class="text-center" style="padding-right:20px">no data</th>
|
||||
<th class="text-center" style="padding-right:20px">other</th>
|
||||
</span>
|
||||
</div>
|
||||
<table class="manageTable provider-failures tablesorter hover-highlight focus-highlight text-center" cellspacing="0" border="0" cellpadding="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="text-center" style="width:13em;padding-right:20px">period of 1hr</th>
|
||||
<th class="text-center" style="padding-right:20px">server/timeout</th>
|
||||
<th class="text-center" style="padding-right:20px">network</th>
|
||||
<th class="text-center" style="padding-right:20px">no data</th>
|
||||
<th class="text-center" style="padding-right:20px">other</th>
|
||||
#if $prov['has_limit']
|
||||
<th class="text-center" style="padding-right:20px">hit limit</th>
|
||||
#end if
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
#set $day = []
|
||||
#for $fail in $prov['fails']
|
||||
#set $child = True
|
||||
|
@ -648,33 +671,33 @@
|
|||
#set $child = False
|
||||
#end if
|
||||
#slurp#
|
||||
<tr#if $fail['multirow'] and $child# class="tablesorter-childRow"#end if#>
|
||||
<tr#if $fail['multirow'] and $child# class="tablesorter-childRow"#end if#>
|
||||
#if $fail['multirow']
|
||||
#if not $child
|
||||
<td><a href="#" class="provider-fail-parent-toggle" title="Totals (expand for detail)">$sbdatetime.sbdatetime.sbfdate($fail['date_time'])</a></td>
|
||||
<td><a href="#" class="provider-fail-parent-toggle" title="Totals (expand for detail)">$sbdatetime.sbdatetime.sbfdate($fail['date_time'])</a></td>
|
||||
#else
|
||||
<td>$sbdatetime.sbdatetime.sbftime($fail['date_time'], markup=True)</td>
|
||||
<td>$sbdatetime.sbdatetime.sbftime($fail['date_time'], markup=True)</td>
|
||||
#end if
|
||||
#else
|
||||
<td>$sbdatetime.sbdatetime.sbfdatetime($fail['date_time'], markup=True)</td>
|
||||
<td>$sbdatetime.sbdatetime.sbfdatetime($fail['date_time'], markup=True)</td>
|
||||
#end if
|
||||
#set $blank = '-'
|
||||
#set $title=None
|
||||
#if $fail['http']['count']
|
||||
#set $title=$fail['http']['code']
|
||||
#end if
|
||||
<td>#if $fail['http']['count']#<span title="#if $child or not $fail['multirow']#$title#else#Expand for fail codes#end if#">$fail['http']['count']</span>#else#$blank#end if# / #echo $fail['timeout'].get('count', 0) or $blank#</td>
|
||||
<td>#echo ($fail['connection'].get('count', 0) + $fail['connection_timeout'].get('count', 0)) or $blank#</td>
|
||||
<td>#echo $fail['nodata'].get('count', 0) or $blank#</td>
|
||||
<td>#echo $fail['other'].get('count', 0) or $blank#</td>
|
||||
<td>#if $fail['http']['count']#<span title="#if $child or not $fail['multirow']#$title#else#Expand for fail codes#end if#">$fail['http']['count']</span>#else#$blank#end if# / #echo $fail['timeout'].get('count', 0) or $blank#</td>
|
||||
<td>#echo ($fail['connection'].get('count', 0) + $fail['connection_timeout'].get('count', 0)) or $blank#</td>
|
||||
<td>#echo $fail['nodata'].get('count', 0) or $blank#</td>
|
||||
<td>#echo $fail['other'].get('count', 0) or $blank#</td>
|
||||
#if $prov['has_limit']
|
||||
<td>#echo $fail.get('limit', {}).get('count', 0) or $blank#</td>
|
||||
<td>#echo $fail.get('limit', {}).get('count', 0) or $blank#</td>
|
||||
#end if
|
||||
</tr>
|
||||
</tr>
|
||||
#end for
|
||||
</tbody>
|
||||
</table>
|
||||
<!-- /$prov['name'] -->
|
||||
</tbody>
|
||||
</table>
|
||||
</div><!-- /$prov['name'] -->
|
||||
#end if
|
||||
#end for
|
||||
#end if
|
||||
|
|
|
@ -5,13 +5,6 @@
|
|||
$(document).ready(function(){
|
||||
var loading = '<img src="' + sbRoot + '/images/loading16' + themeSpinner + '.gif" height="16" width="16" />';
|
||||
|
||||
$('.typelist').on('click', '.list .item a', function(){
|
||||
$(this).closest('.component-group').after(
|
||||
$('[name=' + $(this).attr('href').replace('#','') + ']').closest('.component-group')
|
||||
);
|
||||
return !1;
|
||||
});
|
||||
|
||||
$('#test-growl').click(function () {
|
||||
var growlHost = $.trim($('#growl-host').val());
|
||||
var growlPassword = $.trim($('#growl-password').val());
|
||||
|
|
|
@ -42,4 +42,17 @@ $(document).ready(function(){
|
|||
$('#NAV' + topmenu).addClass('active');
|
||||
$('.dropdown-toggle').dropdownHover();
|
||||
(/undefined/i.test(document.createElement('input').placeholder)) && $('body').addClass('no-placeholders');
|
||||
|
||||
$('.bubblelist').on('click', '.list .item a', function(){
|
||||
var bubbleAfter$ = $('#bubble-after'),
|
||||
lastBubble$ = $('.bubble.last'), toBubble = $(this).attr('href').replace('#', ''),
|
||||
doLast = (lastBubble$.length && toBubble === lastBubble$.find('div[name*="section"]').attr('name'));
|
||||
|
||||
doLast && lastBubble$.removeClass('last');
|
||||
(bubbleAfter$.length && bubbleAfter$ || $(this).closest('.component-group')).after(
|
||||
$('[name=' + $(this).attr('href').replace('#','') + ']').closest('.component-group')
|
||||
);
|
||||
doLast && $('.bubble').last().addClass('last');
|
||||
return !1;
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Reference in a new issue