--- loncom/interface/lonhelper.pm 2005/07/12 16:11:19 1.112 +++ loncom/interface/lonhelper.pm 2005/09/28 10:37:33 1.113 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # .helper XML handler to implement the LON-CAPA helper # -# $Id: lonhelper.pm,v 1.112 2005/07/12 16:11:19 albertel Exp $ +# $Id: lonhelper.pm,v 1.113 2005/09/28 10:37:33 foxr Exp $ # # Copyright Michigan State University Board of Trustees # @@ -2243,6 +2243,39 @@ sub render { } } } + function getDesiredState() { // Return desired person state radio value. + numRadio = document.forms.helpform.personstate.length; + for (i =0; i < numRadio; i++) { + if (document.forms.helpform.personstate[i].checked) { + return document.forms.helpform.personstate[i].value; + } + } + return ""; + } + + function checksections(value) { // Check selected sections. + numSections = document.forms.helpform.chosensections.length; + desiredState = getDesiredState(); + + for (option = 0; option , numSections; option++) { + if(document.forms.helpform.chosensections.options[option].selected) { + section = document.forms.helpform.chosensections.options[option].text; + if (section == "Staff") { // Staff are indicated by an empty section. + section =""; + } + for (i = 0; i < document.forms.helpform.elements.length; i++ ) { + if (document.forms.helpform.elements[i].value.indexOf(':') != -1) { + info = document.forms.helpform.elements[i].value.split(':'); + hisSection = info[2]; + hisState = info[4]; + if((hisSection == section) && ((desiredState ==hisState) || (section =="") || (desiredState == "All"))) { + document.forms.helpform.elements[i].checked = value; + } + } + } + } + } + } // --> SCRIPT @@ -2258,23 +2291,12 @@ SCRIPT $buttons = < - - - - - - - - - - - - +


 

BUTTONS @@ -2372,8 +2394,43 @@ BUTTONS } $result .= "\n\n"; - $result .= $buttons; - + $result .= $buttons; + # + # now add the fancy section choice... first enumerate the sections: + + my %sections; + for my $key (@keys) { + my $section_name = $classlist->{$key}->[$section]; + if ($section_name ne "") { + $sections{$section_name} = 1; + } + } + # The variable $choice_widget will have the html to make the choice + # selector. + + my $choice_widget = '\n"; + + # Build a table without any borders to contain the section based + # selection: + + my $section_selectors = ''."\n"; + $section_selectors .= "\n\n"; + $section_selectors .= ' \n"; + $section_selectors .= ' \n"; + $section_selectors .= ' \n"; + $section_selectors .= "\n"; + $section_selectors .= ' '."\n"; + $section_selectors .= ' '."\n
For Sections:$choice_widget'; + $section_selectors .= " Current Students'; + $section_selectors .= " All students'; + $section_selectors .= " Expired Students
\n"; + $section_selectors .= "
"; + + $result .= $section_selectors; return $result; }