Campers Inn RV of Huntsville-Madison, AL has the best selection of used RVs in Alabama. Our Pre-Owned Peace-of-Mind Promise means you can be confident you did not sacrifice quality for price. We thoroughly inspect every used camper inside and out, and we only sell used RVs that meet our high standards. Contact us with any questions and be sure to check back often as our inventory of motorhomes, travel trailers and fifth wheels is always changing.
Visit our resource center which is packed with expert advice and RV shopping, maintenance and travel.
Showing 1 - 15 of 15
Change Zip
Filter
Favorites ()
Travel Trailer
-
Used 2019 Keystone RV Springdale 1800BH
Stock #74375A
Madison AL
It's Smore Fun Around the Campfire Begin at Campers Inn RV
Previous Next
- +37
- View More »
Used 2019 Keystone RV Springdale 1800BH
Stock #74375A
Madison AL
It's Smore Fun Around the Campfire Begin at Campers Inn RV
- Sleeps 5
- 3394 lbs
- Bunkhouse
...View Floorplan
- List: $15,995
- You Save: $3,997
- Sale Price: $11,998
Go Camping For Less! $169 /mo.
$ Get Internet Price $ View Details »
View Details »
- Value My Trade
- Get Pre-Approved
- Send to Friend
-
Used 2022 Forest River RV Apex Nano 194BHS
Stock #73467A
Madison AL
JUST ADD FRESH AIR AND A CAMPFIRE CALL, CLICK OR COME BY TODAY
Previous Next
- +42
- View More »
Used 2022 Forest River RV Apex Nano 194BHS
Stock #73467A
Madison AL
JUST ADD FRESH AIR AND A CAMPFIRE CALL, CLICK OR COME BY TODAY
- Sleeps 5
- 1 Slides
- 23ft long
- 3634 lbs
- Bunkhouse
- Outdoor Kitchen
...View Floorplan
- List: $28,998
- You Save: $9,000
- Sale Price: $19,998
Go Camping For Less! $182 /mo.
$ Get Internet Price $ View Details »
View Details »
- Value My Trade
- Get Pre-Approved
- Send to Friend
-
Used 2021 Keystone RV Hideout 250BH
Stock #93015P
Madison AL
Like Having Your Own Clubhouse on Wheels - Find Your Away at Campers Inn RV Today!
Previous Next
- +47
- View More »
Used 2021 Keystone RV Hideout 250BH
Stock #93015P
Madison AL
Like Having Your Own Clubhouse on Wheels - Find Your Away at Campers Inn RV Today!
- Sleeps 8
- 1 Slides
- 30ft long
- 6077 lbs
- Bunkhouse
- Outdoor Kitchen
...View Floorplan
- List: $22,995
Go Camping For Less! $209 /mo.
$ Get Internet Price $ View Details »
View Details »
- Value My Trade
- Get Pre-Approved
- Send to Friend
-
Used 2021 Forest River RV No Boundaries 19.6
Stock #91010PA
Madison AL
~~Life is Meant for Adventure! Stop Dreaming, Start Camping!
Previous Next
- +41
- View More »
Used 2021 Forest River RV No Boundaries 19.6
Stock #91010PA
Madison AL
~~Life is Meant for Adventure! Stop Dreaming, Start Camping!
- Sleeps 4
- 1 Slides
- 24ft long
- 4284 lbs
- Murphy Bed
...View Floorplan
- List: $29,992
- You Save: $5,994
- Sale Price: $23,998
Go Camping For Less! $218 /mo.
$ Get Internet Price $ View Details »
View Details »
- Value My Trade
- Get Pre-Approved
- Send to Friend
-
Used 2022 Grand Design Imagine 2600RB
Stock #84654A
Madison AL
~~Life is Meant for Adventure! Stop Dreaming, Start Camping!
Previous Next
- +50
- View More »
Used 2022 Grand Design Imagine 2600RB
Stock #84654A
Madison AL
~~Life is Meant for Adventure! Stop Dreaming, Start Camping!
- Sleeps 6
- 1 Slides
- 30ft long
- 5795 lbs
- U Shaped Dinette
- Front Bedroom
...View Floorplan
- Sale Price: $29,998
Go Camping For Less! $273 /mo.
$ Get Internet Price $ View Details »
View Details »
- Value My Trade
- Get Pre-Approved
- Send to Friend
-
Used 2022 Dutchmen RV Kodiak 27SBH
Stock #89904R
Madison AL
Campfire outside Fireplace inside Find Your Away at Campers Inn RV Today!
Previous Next
- +46
- View More »
Used 2022 Dutchmen RV Kodiak 27SBH
Stock #89904R
Madison AL
Campfire outside Fireplace inside Find Your Away at Campers Inn RV Today!
- Sleeps 8
- 1 Slides
- 32ft long
- 5235 lbs
- Bunkhouse
- Front Bedroom
...View Floorplan
- List: $48,998
- You Save: $14,003
- Sale Price: $34,995
Go Camping For Less! $284 /mo.
$ Get Internet Price $ View Details »
View Details »
- Value My Trade
- Get Pre-Approved
- Send to Friend
-
Used 2023 Forest River RV Rockwood 2608BS
Stock #88026A
Madison AL
Awesome Front Kitchen Floorplan. Price just lowered make your appointment today
Previous Next
- +46
- View More »
Used 2023 Forest River RV Rockwood 2608BS
Stock #88026A
Madison AL
Awesome Front Kitchen Floorplan. Price just lowered make your appointment today
- Sleeps 3
- 2 Slides
- 30ft long
- 6836 lbs
- Front Kitchen
- Rear Bedroom
...View Floorplan
- List: $49,990
- You Save: $10,992
- Sale Price: $38,998
Go Camping For Less! $316 /mo.
$ Get Internet Price $ View Details »
View Details »
- Value My Trade
- Get Pre-Approved
- Send to Friend
Fifth Wheel
-
Used 2022 Forest River RV Sandpiper 39BARK
Stock #90288R
Madison AL
LET'S GO CAMPING! Find Your Away at Campers Inn RV!
Previous Next
- +58
- View More »
Used 2022 Forest River RV Sandpiper 39BARK
Stock #90288R
Madison AL
LET'S GO CAMPING! Find Your Away at Campers Inn RV!
- Sleeps 6
- 4 Slides
- 41ft long
- 12079 lbs
- Rear Kitchen
- Front Bedroom
...View Floorplan
- List: $85,998
- You Save: $21,003
- Sale Price: $64,995
Go Camping For Less! $467 /mo.
$ Get Internet Price $ View Details »
View Details »
- Value My Trade
- Get Pre-Approved
- Send to Friend
-
Used 2022 Grand Design Solitude 380FL
Stock #93269Z
Madison AL
Five slide outs, a full bathroom with dual sinks, a half bath off of the kitchen and more!
Previous Next
- +5
- View More »
Used 2022 Grand Design Solitude 380FL
Stock #93269Z
Madison AL
Five slide outs, a full bathroom with dual sinks, a half bath off of the kitchen and more!
- Sleeps 6
- 5 Slides
- 41ft long
- 14866 lbs
- Front Living
- Kitchen Island
...View Floorplan
- List: $81,998
Go Camping For Less! $590 /mo.
$ Get Internet Price $ View Details »
View Details »
- Value My Trade
- Get Pre-Approved
- Send to Friend
-
Used 2023 Grand Design Solitude 373FB
Stock #88121A
Madison AL
LET'S GO CAMPING! Find Your Away at Campers Inn RV!
Previous Next
- +77
- View More »
Used 2023 Grand Design Solitude 373FB
Stock #88121A
Madison AL
LET'S GO CAMPING! Find Your Away at Campers Inn RV!
- Sleeps 4
- 4 Slides
- 41ft long
- 13950 lbs
- Front Bath
- Rear Living Area
...View Floorplan
- List: $104,995
- You Save: $14,997
- Sale Price: $89,998
Go Camping For Less! $647 /mo.
$ Get Internet Price $ View Details »
View Details »
- Value My Trade
- Get Pre-Approved
- Send to Friend
Toy Hauler Travel Trailer
-
Used 2022 Forest River RV Work and Play 27KB
Stock #91126R
Madison AL
Explore the great outdoors! Work Hard Play Harder! Begin with Campers Inn RV
Previous Next
- +52
- View More »
Used 2022 Forest River RV Work and Play 27KB
Stock #91126R
Madison AL
Explore the great outdoors! Work Hard Play Harder! Begin with Campers Inn RV
- Sleeps 6
- 33ft long
- 7488 lbs
- Front Bedroom
...View Floorplan
- List: $57,998
- You Save: $18,000
- Sale Price: $39,998
Go Camping For Less! $324 /mo.
$ Get Internet Price $ View Details »
View Details »
- Value My Trade
- Get Pre-Approved
- Send to Friend
Motor Home Class A
-
Used 2008 Winnebago Destination 37G
Stock #87213A
Madison AL
It's Smore Fun Around the Campfire! Find your Away at Campers Inn RV!
Previous Next
- +62
- View More »
Used 2008 Winnebago Destination 37G
Stock #87213A
Madison AL
It's Smore Fun Around the Campfire! Find your Away at Campers Inn RV!
- Sleeps 6
- 2 Slides
- 38ft long
- List: $59,998
- You Save: $5,003
- Sale Price: $54,995
$ Get Internet Price $ View Details »
View Details »
- Value My Trade
- Get Pre-Approved
- Send to Friend
Motor Home Class C
Motor Home Super C - Diesel
- «
- 1
- »
Showing 1 - 15 of 15
*All calculated monthly payments are an estimate for qualified buyers only and do not constitute a commitment that financing or a specific interest rate or term is available. Financing terms may not be available in all Campers Inn locations. Campers Inn RV Sales is not responsible for any misprints, typos, or errors found in our website pages. Any price listed excludes sales tax, registration tags, and delivery fees. Manufacturer pictures, specifications, and features may be used in place of actual inventory in stock on our lot. Please contact us for availability as our inventory changes rapidly.
Manufacturer and/or stock photographs may be used and may not be representative of the particular unit being viewed. Where an image has a stock image indicator, please confirm specific unit details with your dealer representative.
Manufacturer and/or stock photographs may be used and may not be representative of the particular unit being viewed. Where an image has a stock image indicator, please confirm specific unit details with your dealer representative.
';}}// add stock number to selected filters if setvar stockNumEl = $('#faceted-search').find('.SearchStockNumber');if (stockNumEl.length > 0 && stockNumEl.val() !== null && stockNumEl.val() !== '') {searchResultsHtml += '
';searchResultsHtml += '
Stock Number
';searchResultsHtml += '
- ';searchResultsHtml += '
- ' + $('').text(stockNumEl.val()).html() + ' '; // html encode stock num valsearchResultsHtml += '
';searchResultsHtml += '
';}$('.selected-filters-wrapper').append(searchResultsHtml);// show/hide clear filters toolbar at the topif ($('.selected-filters-wrapper').html() !== '') {$('.clear-filters-toolbar').fadeIn(200);}else {$('.clear-filters-toolbar').fadeOut(200);}}; // Helper function to be called when the counts shown next to each checkbox and the visibility of checkboxes/sections needs to be updatedvar updateCounts = function() {// Tow Rating addition// over ride control if a tow rating cookie exists// applies to FilteredSearch and UnitList.cshtmlif (window.location.pathname == '/tow-guide-search') {window.Interact.TowRating.checkCookie();// console.log('tow rating cookie check fired');}if (!searchCombos || !searchCombos.length) return;var currentSearchCounts = {normal: searchCombos};for (var prop in searchCombos[0]) {if (prop === 'count') continue;var checkBoxWrapper = $('#faceted-search [data-field-name="' + prop + '"]');var normalCounts = currentSearchCounts['normal'];var currentVals = $.map(($('.ajax-unit-list').ajaxUnitList('getCurrentOpt', prop) || '').split(','), function(x) { return x.toLowerCase(); });if (currentVals[0] !== '') {for (var countGroupName in currentSearchCounts) {currentSearchCounts[countGroupName] = $.grep(currentSearchCounts[countGroupName], function(x, i) {if (multiValueColumns[prop] !== undefined) { var parts = $.map(x[prop].split(multiValueColumns[prop].separator), function (x) { return x.toLowerCase(); }); if (multiValueColumns[prop].filterMode === 'and') { for (var i = 0; i < currentVals.length; i++) { if (currentVals[i] === '') continue; if (parts.indexOf(currentVals[i]) === -1) { return false; } } return true; } else { for (var i = 0; i < currentVals.length; i++) { if (currentVals[i] === '') continue; if (parts.indexOf(currentVals[i]) !== -1) { return true; } } return false; }}else {return currentVals.indexOf(x[prop].toLowerCase()) !== -1;}});}}if (checkBoxWrapper.find('input[type=checkbox]:checked').length) {currentSearchCounts[prop] = normalCounts;}}for (var prop in searchCombos[0]) {if (prop === 'count') continue;var checkBoxWrapper = $('#faceted-search [data-field-name="' + prop + '"]'); var sectionCheckboxes = checkBoxWrapper.find('input[type=checkbox]');// get list of all checked checkbox values in the same section - this is for multivalue columns in 'and' modevar checkedValues = sectionCheckboxes.filter(":checked").map(function(i, x) { return $(x).val(); });sectionCheckboxes.each(function() { var checkboxVal = $(this).val();var countRows = $.grep(currentSearchCounts[prop] || currentSearchCounts['normal'], function(x, i) {if (multiValueColumns[prop] !== undefined) { var currVals = $.map( $.grep(x[prop].split(multiValueColumns[prop].separator),function(z) { return z !== ''; }), function(x) { return x.toLowerCase(); }); if (multiValueColumns[prop].filterMode === 'and') { if (currVals.indexOf(checkboxVal.toLowerCase()) === -1) return false; for (var i = 0; i < checkedValues.length; i++) { if (currVals.indexOf(checkedValues[i].toLowerCase()) === -1) return false; } return true; } else { return currVals.indexOf(checkboxVal.toLowerCase()) !== -1; }}else {return x[prop].toLowerCase() === checkboxVal.toLowerCase();}});var sum = 0;$.each(countRows, (function() {sum += parseInt(this.count, 10);}));var groupWrapper = $(this).closest('.CheckBoxList');var panel = $(this).closest('.panel');if (sum === 0) {$(this).parents('div.checkbox').addClass('hide');// check to see if all checkboxes in the group are hidden, and if so, hide the wrapper panel alsoif (groupWrapper.find('div.checkbox:not(.hide)').length < 1) {panel.addClass('hide');}}else {$(this).parent().find('.count').text(sum);$(this).parents('div.checkbox').removeClass('hide');panel.removeClass('hide');}});}// hide filter containers where there is only one visible checkbox$('#facetedSearch .panel').filter(":not(.hide)").each(function() {var minCheckboxCount = $(this).data('minCheckboxCount') || 2;if ($(this).find('div.checkbox:not(.hide) input[type=checkbox]').length < minCheckboxCount) { $(this).addClass('hide');}}); // setup clear filters sectionupdateClearFiltersSection();};var submitToSearchPage = function(clearCheckboxFilters) {var tmpSearchInputs = $('#faceted-search').find(':input');if (clearCheckboxFilters) {tmpSearchInputs = tmpSearchInputs.filter(':not(input[type=checkbox])');}var tmpSearchValues = tmpSearchInputs.serializeArray();// comma delimit search values with the same namevar searchValMap = {};for (var i = 0; i < tmpSearchValues.length; i++) {var fieldName = tmpSearchValues[i].name.toLowerCase();if (searchValMap[fieldName] !== undefined && searchValMap[fieldName] !== '') {searchValMap[fieldName] += "," + tmpSearchValues[i].value;}else {searchValMap[fieldName] = tmpSearchValues[i].value;}}var searchValues = [];for (var param in searchValMap) {searchValues.push({name: param, value: searchValMap[param]});}var targetPage = '/rv-search';var qMark = window.location.href.indexOf('?');var currentPage = qMark > -1 ? window.location.href.substring(0, qMark) : window.location.href;currentPage = '/' + currentPage.replace(/^(?:\/\/|[^\/]+)*\//, "");var qsValues = getUrlVars();if (currentPage === targetPage && qsValues !== undefined && qsValues !== null) {qsValues.length = 0; // remove the array elements - this is because getUrlVars adds each parameter name using .push(), and it also adds them as properties of the object. we only want the propertiesdelete qsValues['page'];delete qsValues['s'];// remove qs params that are part of the search form - this is particularly important for checkboxes, which would not be included// in the searchValues collection if uncheckedfor (var param in qsValues) {if ($('#faceted-search :input').filter(function() { return ($(this).attr('name') || '').toLowerCase() === param; }).length) {delete qsValues[param];}}// add/update qs params from search valuesfor (var i = 0; i < searchValues.length; i++) {if (searchValues[i].value !== '') {qsValues[searchValues[i].name] = searchValues[i].value;}}var qsArray = [];for (var param in qsValues) {qsArray.push({name: param, value: qsValues[param]});}var qs = $.param(qsArray);window.location = "/rv-search?s=true" + (qs !== "" ? "&" + qs : "");}else {var qs = $.param($.grep(searchValues, function(x) { return x.value !== ''; }));window.location = "/rv-search?s=true" + (qs !== "" ? "&" + qs : "");}};var initializeSearchFields = function(data) {if (data["brand"] !== undefined) {data["brand"] = data["brand"].toLowerCase().trim();}if (data["manufacturer"] !== undefined) {data["manufacturer"] = data["manufacturer"].toLowerCase().trim();}$('#faceted-search :checkbox, #faceted-search :radio').removeAttr("checked"); if (data["zip"] !== undefined) { const zipInput = document.getElementById("locationZip"); if (zipInput) { zipInput.value = data["zip"]; } } if (data["distance"] !== undefined) { const distanceInput = document.getElementById("distanceRange"); if (distanceInput) { distanceInput.value = data["distance"]; } }for (var key in data) {if (data[key] === undefined || !isNaN(key)) {return;}var mVals = data[key].indexOf(',') !== -1 ? mVals = data[key].split(',') : null;$('#faceted-search [name]').filter(function() {return ($(this).attr('name') || '').toLowerCase() === key.toLowerCase();}).each(function(index, el){if ($(el).is(":checkbox") || $(el).is(":radio")) {if (mVals != null) {if ($.inArray($(el).val(), mVals) !== -1) {$(el).attr("checked", "checked");$(el).addClass("value-modified");}}else if ($(el).val() === data[key]) {$(el).attr("checked", "checked");$(el).addClass("value-modified");}}else {$(el).val(data[key]);if (data[key] != '' && $(el).val() === data[key]) {$(el).addClass("value-modified");}}});}// clear the stock number textbox if the stocknumber query string parameter isn't present.// this is needed b/c when the browser back button is clicked back to a point where the// stock number filter isn't set, even though the stocknumber query string parameter is// cleared, some browsers keep the input field filledif (data['stocknumber'] === undefined) {var stockNumEl = $('#faceted-search').find('.SearchStockNumber');stockNumEl.val('');}updateCounts(); };var scrollToListTop = function () {// only scroll to list top if the scroll position is currently below the top of the listif ($("html, body").scrollTop() > $('.ajax-unit-list').offset().top) {$("html, body").animate({ scrollTop: $('.ajax-unit-list').offset().top }, "fast");}};// setup event handlers$("#faceted-search #facetedSearch input[type=checkbox]").change(function() {var stockNumEl = $('#faceted-search').find('.SearchStockNumber');if (noResultsMode === false && isListingPage) {var name = $(this).attr("name");var checkboxesInGroup = $('#faceted-search').find(':input[name="' + name + '"]');// if the only checked checkboxes in this group are hidden, uncheck themif (checkboxesInGroup.filter(':checked').filter(function() { return $(this).parents('div.checkbox:not(.hide)').length > 0; }).length < 1) {checkboxesInGroup.prop('checked', false);}var newValue = checkboxesInGroup.filter(':checked').map(function(i,v) { return $(this).val(); }).toArray().join(",");var updateData = { s: "true" };updateData[name] = newValue;$('.ajax-unit-list').ajaxUnitList('update', updateData);scrollToListTop();updateCounts();}else {stockNumEl.val('');submitToSearchPage();}});$('#faceted-search').find('.SearchButton').click(function(e) { e.preventDefault();var stockNumEl = $('#faceted-search').find('.SearchStockNumber');if (isListingPage && !stockNumEl.hasClass('value-modified')) {var stockNum = stockNumEl.val();var updateData = { s: "true" };updateData['stockNumber'] = stockNum;$('.ajax-unit-list').ajaxUnitList('update', updateData); scrollToListTop();updateCounts();} else { gtmAnalyticsEventTrack($(this), 'Interactions', 'StockFilteredSearch', stockNumEl.val(), '1');submitToSearchPage(true);}return false;});var searchFieldChanged = function() {$(this).addClass("value-modified");};$('#faceted-search input, #faceted-search select').change(searchFieldChanged);$('#faceted-search input[type="text"]').keyup(searchFieldChanged);$('#faceted-search').on('submitToSearchPage', submitToSearchPage);$('#faceted-search').on('clearFilters', function() {if ($('input[name=zip]').val() || $('input[name=stockNumber]').val()) {window.location = "/rv-search?s=true";}$('.clear-filters-toolbar').hide();$('#faceted-search').find('input[type=text]').val('');$('#faceted-search').find('input[type=checkbox]').prop('checked', false);$('.ajax-unit-list').ajaxUnitList('clearFilters'); scrollToListTop();updateCounts();}); $('#faceted-search').on('clearSection', function(e, section) {if (section === '.stockNumber') {var stockNumEl = $('#faceted-search').find('.SearchStockNumber');stockNumEl.val('');submitToSearchPage();}else {$('#faceted-search').find(section).find('input[type=checkbox]:checked').prop('checked', false).trigger('change');scrollToListTop();updateCounts();}});$('#faceted-search').on('clearSelection', function(e, section, selection) {$('#faceted-search').find(section).find(' :checkbox[value="' + selection + '"]').prop('checked', false).trigger('change'); scrollToListTop();updateCounts();});$('.ajax-unit-list').on('ajaxUnitList.historychange', function(e, data) {if (data != null) {initializeSearchFields(data);}});$('a.btn-clear-all').click(function(e) {e.preventDefault();$('#faceted-search').trigger('clearFilters');});// setup on initial loadfunction init(doExpand) {if (isListingPage) {var data = $('.ajax-unit-list').ajaxUnitList('getCurrentOpts');if (data != null) {initializeSearchFields(data);}if (doExpand) {$("#facetedSearch .panel-collapse").each(function () {var $this = $(this);if ($this.find(":checked").length) {$this.addClass("in");$this.closest(".panel").find(".panel-heading i").removeClass("icon-plus").addClass("icon-minus");}});}}}init(true);$("#facetedSearch .panel-heading a").click(function() {var $this = $(this);if ($this.closest(".panel").find(".panel-collapse.in").length) {$this.find("i").removeClass("icon-minus").addClass("icon-plus");}else {$this.find("i").removeClass("icon-plus").addClass("icon-minus");}});/////////////////////////// Saved Searches/////////////////////////if ($('div.user-profile-wrapper').data('user-authenticated')) {$('.save-search-toolbar').removeClass('hidden');} const savedSearchPostUrl = '/rebraco/contactsavedsearch/save';var savedSearchId = 0;var savedSearchName = null;var urlParams = getUrlVars();if (urlParams) {savedSearchId = urlParams["savedSearchId"] || 0;if (savedSearchId) {savedSearchName = urlParams["savedSearchName"];$('.save-search-btn').text('Update Saved Search');}}$('.save-search-btn').click(function () { if (!savedSearchName) { savedSearchName = prompt("Enter a name for this saved search:"); } var postData = { contactSavedSearchId: savedSearchId, name: savedSearchName, url: location.href }; $.ajax(savedSearchPostUrl, { data: JSON.stringify(postData), type: 'POST', contentType: 'application/json', success: function (response) { if (response.success) {savedSearchId = response.contactSavedSearchId; $('.save-search-btn').text('Update Saved Search'); alert("Saved successfully"); }else {if (!savedSearchId) {savedSearchName = null; } alert("Save failed"); }},error: function () { if (!savedSearchId) { savedSearchName = null; } alert("Save failed"); } });});/////////////////////////// Mobile Filtered Search/////////////////////////$('.mobile-filter-link').click(function(e){e.preventDefault();$('body').addClass('modal-open');$('#faceted-search').addClass('fs-modal');});$('.fs-done').click(function(e){e.preventDefault();$('body').removeClass('modal-open');$('#faceted-search').removeClass('fs-modal');});$('.fs-clear-filters').click(function(e){e.preventDefault();$('#faceted-search').trigger('clearFilters');});var waitForFinalEvent = (function () {var timers = {};return function (callback, ms, uniqueId) {if (!uniqueId) {uniqueId = "Don't call this twice without a uniqueId";}if (timers[uniqueId]) {clearTimeout(timers[uniqueId]);}timers[uniqueId] = setTimeout(callback, ms);};})();var $mobileSortOptions = $('#faceted-search .mobile-sort-options-wrapper');var $desktopSortOptions = $('.listingToolbar .sort-options-wrapper');var $sortOptions = $('#sortOptions');function filteredSearchResponsiveStuff(initialLoad) {if ($(window).width() <= 991) {if ($mobileSortOptions.find('#sortOptions').length < 1) {$mobileSortOptions.append($sortOptions);}// collapse search panels on mobile, except for those with checked checkboxesif (initialLoad) {$("#facetedSearch .panel-collapse").each(function() {var $this = $(this);if ($this.find(":checked").length < 1) {$this.addClass('collapse').removeClass('in');$this.closest(".panel").find(".panel-heading i").removeClass("icon-minus").addClass("icon-plus");}});}} else {if ($desktopSortOptions.find('#sortOptions').length < 1) {$desktopSortOptions.append($sortOptions);}}};filteredSearchResponsiveStuff(true);$(window).resize(function () {waitForFinalEvent(function () {filteredSearchResponsiveStuff(false);}, 500, "filteredSearchResize"); }); // exports window.Interact = window.Interact || {}; window.Interact.FilteredSearch = { init: init };});