--- loncom/interface/lonselstudent.pm	2008/11/04 03:25:53	1.13
+++ loncom/interface/lonselstudent.pm	2009/01/15 18:23:27	1.14
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # lonselstudent.pm : Reusable subs for student selection.
 #
-# $Id: lonselstudent.pm,v 1.13 2008/11/04 03:25:53 raeburn Exp $
+# $Id: lonselstudent.pm,v 1.14 2009/01/15 18:23:27 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -197,11 +197,11 @@ sub render_student_list {
 <script type="text/javascript">
 // <!--
 
-    function findElement(name) {
+    function findElement(name,formname) {
 	var i;
 	var ele;
-	for(i =0; i < document.forms.$formname.elements.length; i++) {
-	    ele = document.forms.$formname.elements[i];
+	for(i =0; i < formname.elements.length; i++) {
+	    ele = formname.elements[i];
 	    if(ele.name == name) {
 		return ele;
 	    }
@@ -232,31 +232,31 @@ sub render_student_list {
 	}
     }
 
-    function setAllStudents(value, which) {
+    function setAllStudents(value, which, formname) {
 	var i;
 	var ele;
-	for (i =0; i < document.forms.$formname.elements.length; i++) {
-	    ele = document.forms.$formname.elements[i];
+	for (i =0; i < formname.elements.length; i++) {
+	    ele = formname.elements[i];
 	    if(isStudent(ele) && rightSubForm(ele, which)) {
 		ele.checked=value;
 	    }
 	}
     }
-    function setAllCoursePersonnel(value, which) {
+    function setAllCoursePersonnel(value, which, formname) {
 	var i;
 	var ele;
-	for (i =0; i < document.forms.$formname.elements.length; i++) {
-	    ele = document.forms.$formname.elements[i];
+	for (i =0; i < formname.elements.length; i++) {
+	    ele = formname.elements[i];
 	    if(!isStudent(ele) && rightSubForm(ele, which)) {
 		ele.checked = value;
 	    }
 	}
     }
-    function setSection(which, value, subform) {
+    function setSection(which, value, subform, formname) {
 	var i;
 	var ele;
-	for (i =0; i < document.forms.$formname.elements.length; i++) {
-	    ele = document.forms.$formname.elements[i];
+	for (i =0; i < formname.elements.length; i++) {
+	    ele = formname.elements[i];
 	    if (ele.value.indexOf(':') != -1) {
 		if ((section(ele) == which) && rightSubForm(ele, subform)) {
 		    ele.checked = value;
@@ -265,34 +265,34 @@ sub render_student_list {
 	}
     }
 
-    function setCheckboxes(listbox, which, value) {
+    function setCheckboxes(listbox, which, value, formname) {
 	var k;
 	var elem;
 	var what;
-        elem = findElement(listbox);
+        elem = findElement(listbox, formname);
 	if (elem != null) {
 	    for (k = 0; k < elem.length; k++) {
 		if (elem.options[k].selected) {
 		    what = elem.options[k].value;
 		    if (what == 'allstudents') {
-			setAllStudents(value, which);
+			setAllStudents(value, which, formname);
 		    } else if (what == 'allpersonnel') {
-			setAllCoursePersonnel(value, which);
+			setAllCoursePersonnel(value, which, formname);
 		    } else if (what == 'nosection') {
-			setSection('',value, which);
+			setSection('',value, which, formname);
 		    } else {
-			setSection(what, value, which);
+			setSection(what, value, which, formname);
 		    }
 		}
 	    }
 	}
     }
-    function selectSections(listbox, which) {
-	setCheckboxes(listbox, which, true);
+    function selectSections(listbox, which, formname) {
+	setCheckboxes(listbox, which, true, formname);
 
     }
-    function unselectSections(listbox, which) {
-	setCheckboxes(listbox, which, false);
+    function unselectSections(listbox, which, formname) {
+	setCheckboxes(listbox, which, false, formname);
     }
 
 // -->
@@ -323,7 +323,7 @@ SCRIPT
 	if ($size > 5) { 
 	    $size = 5; 
 	}
-	$result .= '<select multiple name="'.$formprefix
+	$result .= '<select multiple="multiple" name="'.$formprefix
 	    .'.chosensections" size="'.$size.'">'."\n";
 	$result .= '<option value="allstudents">'.&mt('All Students').'</option>';
 	$result .= '<option value="allpersonnel">'.&mt('All Course Personnel').'</option>';
@@ -334,10 +334,10 @@ SCRIPT
 	}
 	$result .= '</select></td><td valign="top">';
 	$result .= '<input type="button" name="'.$formprefix.'.select" value="'.&mt('Select').'" onclick='
-	    ."'selectSections(\"$formprefix.chosensections\", \"$formprefix\")'".' /></td>';
+	    ."'selectSections(\"$formprefix.chosensections\", \"$formprefix\", document.forms.$formname)'".' /></td>';
 	$result .= '<td valign="top"><input type="button" name="'.$formprefix
 	    .'.unselect" value="'.&mt('Unselect').'"  onclick='.
-	    "'unselectSections(\"$formprefix.chosensections\", \"$formprefix\")' ".' /></td></tr></table>';
+	    "'unselectSections(\"$formprefix.chosensections\", \"$formprefix\", document.forms.$formname)' ".' /></td></tr></table>';
     }
 
     #  Now we list the students, but the form element type