--- loncom/interface/lonuserutils.pm	2013/12/09 21:33:32	1.159
+++ loncom/interface/lonuserutils.pm	2014/02/16 15:38:53	1.163
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # Utility functions for managing LON-CAPA user accounts
 #
-# $Id: lonuserutils.pm,v 1.159 2013/12/09 21:33:32 raeburn Exp $
+# $Id: lonuserutils.pm,v 1.163 2014/02/16 15:38:53 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -401,7 +401,7 @@ sub javascript_validations {
 
     my $showcredits;
     my %domdefaults = &Apache::lonnet::get_domain_defaults($domain);
-    if ($domdefaults{'officialcredits'} || $domdefaults{'unofficialcredits'}) {
+    if ($domdefaults{'officialcredits'} || $domdefaults{'unofficialcredits'} || $domdefaults{'textbookcredits'}) {
         $showcredits = 1;
     }
 
@@ -1013,7 +1013,9 @@ sub print_upload_manager_footer {
                .&Apache::lonhtmlcommon::row_closure();
     }
     if ($context eq 'course' || $context eq 'domain') {
-        $Str .= &forceid_change($context);
+        $Str .= &Apache::lonhtmlcommon::row_title(&mt('Student/Employee ID'))
+               .&forceid_change($context)
+               .&Apache::lonhtmlcommon::row_closure(1); # last row in pick_box
     }
 
     $Str .= &Apache::lonhtmlcommon::end_pick_box();
@@ -1047,10 +1049,12 @@ sub get_defaultcredits {
     return unless(($cdom =~ /^$match_domain$/) && ($cnum =~ /^$match_courseid$/)); 
     my ($defaultcredits,$domdefcredits);
     my %domdefaults = &Apache::lonnet::get_domain_defaults($cdom);
-    if ($domdefaults{'officialcredits'} || $domdefaults{'unofficialcredits'}) {
+    if ($domdefaults{'officialcredits'} || $domdefaults{'unofficialcredits'} || $domdefaults{'textbookcredits'}) {
         my $instcode = $env{'course.'.$cdom.'_'.$cnum.'.internal.coursecode'};
         if ($instcode) {
             $domdefcredits = $domdefaults{'officialcredits'};
+        } elsif ($env{'course.'.$cdom.'_'.$cnum.'.internal.textbook'}) {
+            $domdefcredits = $domdefaults{'textbookcredits'};
         } else {
             $domdefcredits = $domdefaults{'unofficialcredits'};
         }
@@ -1076,18 +1080,15 @@ sub get_defaultcredits {
 sub forceid_change {
     my ($context) = @_;
     my $output = 
-        &Apache::lonhtmlcommon::row_title(&mt('Student/Employee ID'))
-       .'<label><input type="checkbox" name="forceid" value="yes" />'
-       .&mt('Disable Student/Employee ID Safeguard and force change of conflicting IDs')
-       .'</label><br />'."\n"
-       .&mt('(only do if you know what you are doing.)')."\n";
+        '<label><input type="checkbox" name="forceid" value="yes" />'
+       .&mt('Force change of exising ID')
+       .'</label>'.&Apache::loncommon::help_open_topic('ForceIDChange')."\n";
     if ($context eq 'domain') {
-        $output .= '<br /><label><input type="checkbox" name="recurseid"'.
-                   ' value="yes" />'. 
-  &mt('Update student/employee ID in courses in which user is active/future student,[_1](if forcing change).','<br />').
-                   '</label>'."\n";
+        $output .= 
+            '<br />'
+           .'<label><input type="checkbox" name="recurseid" value="yes" />'
+           .&mt("Update ID in user's course(s).").'</label>'."\n";
     }
-    $output .= &Apache::lonhtmlcommon::row_closure(1); # last row in pick_box
     return $output;
 }
 
@@ -1392,9 +1393,9 @@ sub default_role_selector {
                       &default_course_roles($context,$checkpriv,'Course',%customroles)."\n".
                       '</select></td><td>'.
                       '<table class="LC_createuser">'.
-                      '<tr class="LC_section_row"><td valign"top">'.
+                      '<tr class="LC_section_row"><td valign="top">'.
                       $lt{'exs'}.'<br /><select name="currsec">'.
-                      ' <option value=""><--'.&mt('Pick course first').
+                      ' <option value="">&lt;--'.&mt('Pick course first').
                       '</select></td>'.
                       '<td>&nbsp;&nbsp;</td>'.
                       '<td valign="top">'.$lt{'new'}.'<br />'.
@@ -3003,10 +3004,10 @@ END
             if ($mode eq 'autoenroll') {
                 my $cellentry;
                 if ($in{'type'} eq 'auto') {
-                    $cellentry = '<b>'.&mt('auto').'</b>&nbsp;<label><input type="checkbox" name="chgauto" value="'.$in{'username'}.':'.$in{'domain'}.'" />&nbsp;Change</label>';
+                    $cellentry = '<b>'.&mt('auto').'</b>&nbsp;<label><input type="checkbox" name="chgauto" value="'.$in{'username'}.':'.$in{'domain'}.'" />&nbsp;'.&mt('Change').'</label>';
                     $autocount ++;
                 } else {
-                    $cellentry = '<table border="0" cellspacing="0"><tr><td rowspan="2"><b>'.&mt('manual').'</b></td><td><span class="LC_nobreak"><label><input type="checkbox" name="chgmanual" value="'.$in{'username'}.':'.$in{'domain'}.'" />&nbsp;Change</label></span></td></tr><tr><td><span class="LC_nobreak">';
+                    $cellentry = '<table border="0" cellspacing="0"><tr><td rowspan="2"><b>'.&mt('manual').'</b></td><td><span class="LC_nobreak"><label><input type="checkbox" name="chgmanual" value="'.$in{'username'}.':'.$in{'domain'}.'" />&nbsp;'.&mt('Change').'</label></span></td></tr><tr><td><span class="LC_nobreak">';
                     $manualcount ++;
                     if ($in{'lockedtype'}) {
                         $cellentry .= '<label><input type="checkbox" name="unlockchg" value="'.$in{'username'}.':'.$in{'domain'}.'" />&nbsp;'.&mt('Unlock').'</label>';
@@ -3137,10 +3138,10 @@ END
             $r->print(&Apache::loncommon::end_data_table().'<br />');
     } elsif ($mode eq 'excel') {
         $excel_workbook->close();
-	$r->print(&mt('[_1]Your Excel spreadsheet[_2] is ready for download.', '<p><a href="'.$excel_filename.'">','</a>')."</p>\n");
+	$r->print('<p>'.&mt('[_1]Your Excel spreadsheet[_2] is ready for download.', '<a href="'.$excel_filename.'">','</a>')."</p>\n");
     } elsif ($mode eq 'csv') {
         close($CSVfile);
-	$r->print(&mt('[_1]Your CSV file[_2] is ready for download.', '<p><a href="'.$CSVfilename.'">','</a>')."</p>\n");
+	$r->print('<p>'.&mt('[_1]Your CSV file[_2] is ready for download.', '<a href="'.$CSVfilename.'">','</a>')."</p>\n");
         $r->rflush();
     }
     if ($mode eq 'autoenroll') {
@@ -3838,7 +3839,6 @@ sub show_drop_list {
 $check_uncheck_js
 // ]]>
 </script>
-<p>
 <input type="hidden" name="phase" value="four" />
 END
     my ($indexhash,$keylist) = &make_keylist_array();
@@ -3875,6 +3875,7 @@ END
                                               $classlist,$keylist,$cdom,$cnum);
     my %lt=&Apache::lonlocal::texthash('usrn'   => "username",
                                        'dom'    => "domain",
+                                       'id'     => "ID",
                                        'sn'     => "student name",
                                        'mn'     => "member name",
                                        'sec'    => "section",
@@ -3893,7 +3894,7 @@ END
     <th>&nbsp;</th>
     <th>$lt{'usrn'}</th>
     <th>$lt{'dom'}</th>
-    <th>ID</th>
+    <th>$lt{'id'}</th>
     <th>$nametitle</th>
     <th>$lt{'sec'}</th>
     <th>$lt{'start'}</th>
@@ -3907,21 +3908,21 @@ END
         $r->print(<<END);
     <th>&nbsp;</th>
     <th>
-       <a href="/adm/createuser?action=$action&sortby=username">$lt{'usrn'}</a>
+       <a href="/adm/createuser?action=$action&amp;sortby=username">$lt{'usrn'}</a>
     </th><th>
-       <a href="/adm/createuser?action=$action&sortby=domain">$lt{'dom'}</a>
+       <a href="/adm/createuser?action=$action&amp;sortby=domain">$lt{'dom'}</a>
     </th><th>
-       <a href="/adm/createuser?action=$action&sortby=id">ID</a>
+       <a href="/adm/createuser?action=$action&amp;sortby=id">$lt{'id'}</a>
     </th><th>
-       <a href="/adm/createuser?action=$action&sortby=fullname">$nametitle</a>
+       <a href="/adm/createuser?action=$action&amp;sortby=fullname">$nametitle</a>
     </th><th>
-       <a href="/adm/createuser?action=$action&sortby=section">$lt{'sec'}</a>
+       <a href="/adm/createuser?action=$action&amp;sortby=section">$lt{'sec'}</a>
     </th><th>
-       <a href="/adm/createuser?action=$action&sortby=start">$lt{'start'}</a>
+       <a href="/adm/createuser?action=$action&amp;sortby=start">$lt{'start'}</a>
     </th><th>
-       <a href="/adm/createuser?action=$action&sortby=end">$lt{'end'}</a>
+       <a href="/adm/createuser?action=$action&amp;sortby=end">$lt{'end'}</a>
     </th><th>
-       <a href="/adm/createuser?action=$action&sortby=groups">$lt{'groups'}</a>
+       <a href="/adm/createuser?action=$action&amp;sortby=groups">$lt{'groups'}</a>
     </th>
 END
         $r->print(&Apache::loncommon::end_data_table_header_row());
@@ -3992,7 +3993,6 @@ END
         $btn = $lt{'dm'}; 
     }
     $r->print(<<"END");
-</p>
 <p>
 <input type="button" value="$lt{'ca'}" onclick="javascript:checkAll(document.studentform.droplist)" /> &nbsp;
 <input type="button" value="$lt{'ua'}" onclick="javascript:uncheckAll(document.studentform.droplist)" />
@@ -4818,7 +4818,7 @@ sub print_drop_menu {
     } else {
         &show_drop_list($r,$classlist,'nosort',$permission,$crstype);
     }
-    $r->print('</form>'. &Apache::loncommon::end_page());
+    $r->print('</form>');
     return;
 }