nm3clol-archived-russellcou.../mirror/www.russellcountyva.us/Areas/Facilities/Assets/Scripts/SearchSidebar/SearchSidebarReservableFlippers.js

136 lines
5.2 KiB
JavaScript

var SearchSidebarReservableFlippers = function ($) {
$.ajaxSetup({ cache: false })
var searchSidebarReservableFlippers = this;
searchSidebarReservableFlippers.bindFlipperControl = function (id, whatToDo, returnFalse) {
$(id).keypress(function () {
$(this).click();
});
$(id).click(function () {
whatToDo();
if (returnFalse) {
return false;
}
});
};
searchSidebarReservableFlippers.flipAllCheckboxes = function (id, chkClass, markChecked) {
searchSidebarReservableFlippers.flipCheckbox(id, markChecked);
searchSidebarReservableFlippers.flipCheckboxes(chkClass, markChecked);
};
searchSidebarReservableFlippers.flipCheckboxes = function (chkClass, markChecked) {
if (!markChecked) {
$(chkClass).removeAttr('checked');
}
else {
$(chkClass).attr('checked', true);
}
};
searchSidebarReservableFlippers.flipCheckbox = function (id, markChecked) {
if (!markChecked) {
$(id).removeAttr('checked');
}
else {
$(id).attr('checked', true);
}
};
searchSidebarReservableFlippers.flipDiv = function (isReservable) {
if (isReservable) {
$('#allActiveReservationFields').removeClass('inactive');
}
else {
$('#allActiveReservationFields').addClass('inactive');
}
};
searchSidebarReservableFlippers.flipReservable = function (isReservable) {
searchSidebarReservableFlippers.flipDiv(isReservable);
searchSidebarReservableFlippers.flipCheckbox('#chkIsReservable', isReservable);
searchSidebarReservableFlippers.flipActiveInactiveLink('#DaysButton', isReservable);
searchSidebarReservableFlippers.flipActiveInactivePicker('#dateRangeStartPicker', isReservable);
searchSidebarReservableFlippers.flipActiveInactivePicker('#dateRangeEndPicker', isReservable);
searchSidebarReservableFlippers.flipActiveInactivePicker('#startTimePicker', isReservable);
searchSidebarReservableFlippers.flipActiveInactivePicker('#endTimePicker', isReservable);
searchSidebarReservableFlippers.flipActiveInactive('#lowestPrice', isReservable);
searchSidebarReservableFlippers.flipActiveInactive('#highestPrice', isReservable);
searchSidebarReservableFlippers.flipActiveInactive('#reservationFeeRate', isReservable);
searchSidebarReservableFlippers.flipShowHideReservableDivs(isReservable);
};
searchSidebarReservableFlippers.flipShowHideReservableDivs = function (isReservable) {
if (isReservable) {
$('#dateRangeDiv').show();
$('#timeRangeDiv').show();
$('#megaDaysContainer').show();
$('#optionsSelectedDays').show();
$('#reservationFeeDiv').show();
}
else {
$('#dateRangeDiv').hide();
$('#timeRangeDiv').hide();
$('#megaDaysContainer').hide();
$('#optionsSelectedDays').hide();
$('#reservationFeeDiv').hide();
}
};
searchSidebarReservableFlippers.flipActiveInactivePicker = function (id, isReservable) {
if (isReservable) {
$(id).removeAttr('disabled');
$(id).next('span.t-select')
.children('span.t-icon').css('visibility', 'visible');
}
else {
$(id).attr('disabled', true);
$(id).next('span.t-select')
.children('span.t-icon').css('visibility', 'hidden');
}
};
searchSidebarReservableFlippers.flipActiveInactiveLink = function (id, isReservable) {
if (isReservable) {
$(id).removeClass('inactive');
$(id).unbind('click');
$(id).removeAttr('disabled');
searchSidebarReservableFlippers.bindFlipperControl('#DaysButton', SearchSidebarBinders.showHideDays, true);
}
else {
$(id).addClass('inactive');
$(id).attr('disabled', true);
$(id).unbind('click');
$(id).bind('click', function () { return false; });
}
};
searchSidebarReservableFlippers.flipActiveInactive = function (id, isReservable) {
if (isReservable) {
$(id).removeAttr('disabled');
}
else {
$(id).attr('disabled', true);
}
};
searchSidebarReservableFlippers.resetDropDownsAndReservable = function () {
searchSidebarReservableFlippers.flipReservable(false);
searchSidebarReservableFlippers.flipAllCheckboxes('#CheckAllFacilityTypes', '.chkSidebarFacilityTypes', true);
searchSidebarReservableFlippers.flipAllCheckboxes('#CheckAllDays', '.chkSidebarDays', true);
searchSidebarReservableFlippers.flipAllCheckboxes('#CheckAllFeatures', '.chkSidebarFeatures', false);
};
searchSidebarReservableFlippers.resetTextBoxes = function () {
$('#dateRangeStartPicker').val('');
$('#dateRangeEndPicker').val('');
$('#startTimePicker').val('');
$('#endTimePicker').val('');
$('#occupants').val('');
$('#lowestPrice').val('');
$('#highestPrice').val('');
$('#keywords').val('');
};
return this;
} (jQuery);