--- loncom/interface/lonhelper.pm 2005/07/12 16:11:19 1.112
+++ loncom/interface/lonhelper.pm 2005/09/28 19:02:02 1.114
@@ -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.114 2005/09/28 19:02:02 albertel 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,44 @@ 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 = '