--- loncom/interface/lonuserutils.pm	2017/01/02 19:44:07	1.180
+++ loncom/interface/lonuserutils.pm	2017/11/01 02:51:07	1.184.2.1
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # Utility functions for managing LON-CAPA user accounts
 #
-# $Id: lonuserutils.pm,v 1.180 2017/01/02 19:44:07 raeburn Exp $
+# $Id: lonuserutils.pm,v 1.184.2.1 2017/11/01 02:51:07 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -1121,8 +1121,10 @@ sub print_upload_manager_form {
     if (!$env{'form.datatoken'}) {
         $datatoken=&Apache::loncommon::upfile_store($r);
     } else {
-        $datatoken=$env{'form.datatoken'};
-        &Apache::loncommon::load_tmp_file($r);
+        $datatoken=&Apache::loncommon::valid_datatoken($env{'form.datatoken'});
+        if ($datatoken ne '') {
+            &Apache::loncommon::load_tmp_file($r,$datatoken);
+        }
     }
     my @records=&Apache::loncommon::upfile_record_sep();
     if($env{'form.noFirstLine'}){
@@ -2307,7 +2309,7 @@ sub courses_selector {
             my $allidlist = $idlist{$codetitles[0]};
             $jscript .= &Apache::courseclassifier::courseset_js_start($formname,$longtitles_str,$allidlist);
             $jscript .= $scripttext;
-            $jscript .= &Apache::courseclassifier::javascript_code_selections($formname,@codetitles);
+            $jscript .= &Apache::courseclassifier::javascript_code_selections($formname,\@codetitles);
         }
     }
     my $cb_jscript = &Apache::loncommon::coursebrowser_javascript($cdom);
@@ -2757,7 +2759,7 @@ END
                .'<input type="checkbox" name="userwin" value="1"'.$checkwin.' />'.$lt{'owin'}
                .'</label></span></td></tr></table></fieldset></div>';
         }
-        $output .= "\n".'<br clear="all" />'."\n".
+        $output .= "\n".'<div style="padding:0;clear:both;margin:0;border:0"></div>'."\n".
                   &Apache::loncommon::start_data_table().
                   &Apache::loncommon::start_data_table_header_row();
         if ($mode eq 'autoenroll') {
@@ -3101,7 +3103,14 @@ END
                         }
                         if ($showcheckbox) {
                             $r->print('<td><input type="checkbox" name="'.
-                                      'actionlist" value="'.&HTML::Entities::encode($checkval,'&<>"').'" /></td>');
+                                      'actionlist" value="'.
+                                      &HTML::Entities::encode($checkval,'&<>"').'" />');
+                            foreach my $item ('start','end') {
+                                $r->print('<input type="hidden" name="'.
+                                          &HTML::Entities::encode($checkval.'_'.$item,'&<>"').'"'.
+                                          ' value="'.$sdata->[$index{$item}].'" />');
+                            }
+                            $r->print('</td>');
                         } else {
                             $r->print('<td>&nbsp;</td>');
                         }
@@ -3115,8 +3124,6 @@ END
             foreach my $item (@cols) {
                 if ($item eq 'username') {
                     $r->print('<td>'.&print_username_link($mode,\%in).'</td>');
-                } elsif (($item eq 'start' || $item eq 'end') && ($actionselect)) {
-                    $r->print('<td>'.$in{$item}.'<input type="hidden" name="'.&HTML::Entities::encode($checkval.'_'.$item.'" value="'.$sdata->[$index{$item}],'&<>"').'" /></td>'."\n");
                 } elsif ($item eq 'status') {
                     my $showitem = $in{$item};
                     if (defined($ltstatus{$in{$item}})) {
@@ -4102,7 +4109,10 @@ sub print_first_users_upload_form {
 # ================================================= Drop/Add from uploaded file
 sub upfile_drop_add {
     my ($r,$context,$permission,$showcredits) = @_;
-    &Apache::loncommon::load_tmp_file($r);
+    my $datatoken = &Apache::loncommon::valid_datatoken($env{'form.datatoken'});
+    if ($datatoken ne '') {
+        &Apache::loncommon::load_tmp_file($r,$datatoken);
+    }
     my @userdata=&Apache::loncommon::upfile_record_sep();
     if($env{'form.noFirstLine'}){shift(@userdata);}
     my @keyfields = split(/\,/,$env{'form.keyfields'});
@@ -5833,7 +5843,7 @@ sub roles_by_context {
     } elsif ($context eq 'author') {
         @allroles = ('ca','aa');
     } elsif ($context eq 'domain') {
-        @allroles = ('li','ad','dg','dh','sc','au','dc');
+        @allroles = ('li','ad','dg','dh','da','sc','au','dc');
     }
     return @allroles;
 }