coreweb.search.getSkuBox = function( form, skuName ) { for (var i=0; i < form.elements.length; i++) { var cbox = form.elements[i]; if (cbox.type.indexOf('checkbox') > -1 ) { if ( cbox.value.indexOf( skuName ) >= 0 ) { return cbox; } } } return null; } /** * this really belongs in VSP, but there is no way to transparently include this function in * QuestiaSchool and not in Questia.com. So, we put it in both for now. Later, this business * logic needs to be moved out of coreweb. */ coreweb.search.skuClicked = function(evt) { var form = coreweb.common.getParentForm( evt.source ); var highschoolBox = coreweb.search.getSkuBox( form, 'Questia School - High School Collection' ); var achieveBox = coreweb.search.getSkuBox( form, 'Questia School - Achieve Collection' ); var professionalBox = coreweb.search.getSkuBox( form, 'Questia School - Professional Collection' ); var psychologyBox = coreweb.search.getSkuBox( form, 'Questia Paid Collection - Psychology' ); var historyBox = coreweb.search.getSkuBox( form, 'Questia Paid Collection - History' ); var literatureBox = coreweb.search.getSkuBox( form, 'Questia Paid Collection - Literature' ); var philosophyBox = coreweb.search.getSkuBox( form, 'Questia Paid Collection - Philosophy' ); var educationBox = coreweb.search.getSkuBox( form, 'Questia Paid Collection - Education' ); var religionBox = coreweb.search.getSkuBox( form, 'Questia Paid Collection - Religious' ); var entireLibraryBox = coreweb.search.getSkuBox( form, 'Questia Paid Collection - Entire Library' ); if ( evt.source == professionalBox ) { if ( professionalBox.checked ) { highschoolBox.checked = false; achieveBox.checked = false; } } else if(evt.source == highschoolBox || evt.source == achieveBox) { professionalBox.checked = false; if ( achieveBox.checked ) { highschoolBox.checked = true; } } else if(evt.source == entireLibraryBox ) { if(entireLibraryBox.checked) { psychologyBox.checked = false; historyBox.checked = false; literatureBox.checked = false; philosophyBox.checked = false; educationBox.checked = false; religionBox.checked = false; } else { if(!psychologyBox.checked && !historyBox.checked && !literatureBox.checked && !philosophyBox.checked && !educationBox.checked && !religionBox.checked ) { entireLibraryBox.checked = true; } } } else { if(psychologyBox.checked || historyBox.checked || literatureBox.checked || philosophyBox.checked || educationBox.checked || religionBox.checked) { entireLibraryBox.checked = false; } if(!psychologyBox.checked && !historyBox.checked && !literatureBox.checked && !philosophyBox.checked && !educationBox.checked && !religionBox.checked ) { entireLibraryBox.checked = true; } } } /** * skuCheckBox.html input elements fire the 'sku.clicked' event. */ questia.Events.register( 'sku.clicked', '*', coreweb.search.skuClicked );