$(document).ready(function() { function make_row(indexer_id, season, episode, name, checked) { var checkedbox = (checked ? ' checked' : ''), row_class = $('#row_class').val(); return ' ' + ' ' + '' + ' ' + season + 'x' + episode + '' + ' ' + name + '' + ' '; } $('.go').click(function() { if ($('input[class*="-epcheck"]:checked').length === 0 && $('input[id*="allCheck-"]:checked').length === 0) { alert('Please select at least one Show or Episode'); return false } }); $('.allCheck').click(function(){ var indexer_id = $(this).attr('id').split('-')[1]; $('.' + indexer_id + '-epcheck').prop('checked', $(this).prop('checked')); }); $('.get_more_eps').click(function(){ var cur_indexer_id = $(this).attr('id'); var checked = $('#allCheck-' + cur_indexer_id).prop('checked'); var last_row = $('tr#' + cur_indexer_id); $.getJSON(sbRoot + '/manage/showEpisodeStatuses', { indexer_id: cur_indexer_id, whichStatus: $('#oldStatus').val() }, function (data) { $.each(data, function(season,eps){ $.each(eps, function(episode, name) { last_row.after(make_row(cur_indexer_id, season, episode, name, checked)); }); }); }); $(this).hide(); ($('.get_more_eps:visible').length == 0 ? $('.expandAll').hide() : ''); }); $('.expandAll').click(function() { $('.get_more_eps').each(function() { var cur_indexer_id = $(this).attr('id'); var checked = $('#allCheck-' + cur_indexer_id).prop('checked'); var last_row = $('tr#' + cur_indexer_id); $.getJSON(sbRoot + '/manage/showEpisodeStatuses', { indexer_id: cur_indexer_id, whichStatus: $('#oldStatus').val() }, function (data) { $.each(data, function(season, eps) { $.each(eps, function(episode, name) { last_row.after(make_row(cur_indexer_id, season, episode, name, checked)); }); }); }); $(this).hide(); }); $(this).hide(); }); // selects all visible episode checkboxes. $('.selectAllShows').click(function(){ $('.sickbeardTable input').each(function() { this.checked = true; }); }); // clears all visible episode checkboxes and the season selectors $('.unselectAllShows').click(function(){ $('.sickbeardTable input').each(function() { this.checked = false; }); }); });