--- loncom/interface/lonhtmlcommon.pm	2007/11/02 23:41:01	1.168
+++ loncom/interface/lonhtmlcommon.pm	2008/05/29 00:19:30	1.174
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # a pile of common html routines
 #
-# $Id: lonhtmlcommon.pm,v 1.168 2007/11/02 23:41:01 albertel Exp $
+# $Id: lonhtmlcommon.pm,v 1.174 2008/05/29 00:19:30 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -463,16 +463,21 @@ ENDJS
         $cal_link = qq{<a href="javascript:$dname\_opencalendar()">};
     }
     #
+    my $dt = DateTime->from_epoch(epoch => $currentvalue)
+                     ->set_time_zone(&Apache::lonlocal::gettimezone());
+    my $tzone = ' '.$dt->time_zone_short_name().' ';
     if ($no_hh_mm_ss) {
         $result .= &mt('[_1] [_2] [_3] ',
-                       $monthselector,$dayselector,$yearselector);
+                       $monthselector,$dayselector,$yearselector).
+                   $tzone;
         if (!$nolink) {
             $result .= &mt('[_1]Select Date[_2]',$cal_link,'</a>');
         }
     } else {
         $result .= &mt('[_1] [_2] [_3] [_4] [_5]m [_6]s ',
                       $monthselector,$dayselector,$yearselector,
-                      $hourselector,$minuteselector,$secondselector);
+                      $hourselector,$minuteselector,$secondselector).
+                   $tzone;
         if (!$nolink) {
             $result .= &mt('[_1]Select Date[_2]',$cal_link,'</a>');
         }
@@ -645,6 +650,8 @@ sub javascript_nothing {
 ##############################################
 ##############################################
 sub javascript_docopen {
+    my ($mimetype) = @_;
+    $mimetype ||= 'text/html';
     # safari does not understand document.open() and loads "text/html"
     my $nothing = "''";
     my $user_browser;
@@ -658,7 +665,7 @@ sub javascript_docopen {
     if ($user_browser eq 'safari' && $user_os =~ 'mac') {
         $nothing = "document.clear()";
     } else {
-	$nothing = "document.open('text/html','replace')";
+	$nothing = "document.open('$mimetype','replace')";
     }
     return $nothing;
 }
@@ -868,7 +875,7 @@ sub Create_PrgWin {
          function openpopwin () {
          popwin=open(\'\',\'popwin\',\'width=400,height=100\');".
         "popwin.document.writeln(\'".$start_page.
-              "<h4>$heading<\/h4>".
+              "<h4>".&mt("$heading")."<\/h4>".
               "<form action= \"\" name=\"popremain\" method=\"post\">".
               '<input type="text" size="'.$width.'" name="remaining" value="'.
 	      &mt('Starting').'" /><\\/form>'.$end_page.
@@ -887,8 +894,7 @@ sub Create_PrgWin {
 	}
 	if (!$inputname) {
 	    $prog_state{'inputname'}=&get_uniq_name();
-	    &r_print($r,$heading.' <input type="text" name="'.$prog_state{'inputname'}.
-		     '" size="'.$width.'" />');
+	    &r_print($r,&mt("$heading [_1]",' <input type="text" name="'.$prog_state{'inputname'}.'" size="'.$width.'" />'));
 	} else {
 	    $prog_state{'inputname'}=$inputname;
 	    
@@ -1234,16 +1240,19 @@ returns: nothing
 	if (!defined($menulink)) { $menulink=1; }
         if ($menulink) {
             my $description = 'Menu';
+            my $no_mt_descr = 0;
             if (exists($env{'request.course.id'}) && 
                 $env{'request.course.id'} ne '') {
                 $description = 
                     $env{'course.'.$env{'request.course.id'}.'.description'};
+                $no_mt_descr = 1;
             }
             unshift(@Crumbs,{
                     href   =>'/adm/menu',
                     title  =>'Go to main menu',
                     target =>'_top',
                     text   =>$description,
+                    no_mt  =>$no_mt_descr,
                 });
         }
         my $links .= 
@@ -1333,7 +1342,7 @@ returns: nothing
 # row1
 # row2
 # row3   ... etc.
-# &submit_row(0
+# &submit_row()
 # &end_pick_box()
 #
 # where row1, row 2 etc. are chosen from &role_select_row,&course_select_row,
@@ -1403,10 +1412,13 @@ sub row_title {
     $css_value_class ||= 'LC_pick_box_value';
     $css_value_class = 'class="'.$css_value_class.'"';
 
+    if ($title ne '') {
+        $title .= ':';
+    }
     my $output = <<"ENDONE";
            <tr class="LC_pick_box_row">
             <td $css_title_class>
-	       $title:
+	       $title
             </td>
             <td $css_value_class>
 ENDONE
@@ -1473,7 +1485,14 @@ sub course_select_row {
     my ($title,$formname,$totcodes,$codetitles,$idlist,$idlist_titles,
 	$css_class) = @_;
     my $output = &row_title($title,$css_class);
-    $output .= qq|
+    $output .= &course_selection($formname,$totcodes,$codetitles,$idlist,$idlist_titles);
+    $output .= &row_closure();
+    return $output;
+}
+
+sub course_selection {
+    my ($formname,$totcodes,$codetitles,$idlist,$idlist_titles) = @_;
+    my $output = qq|
 <script type="text/javascript">
     function coursePick (formname) {
         for  (var i=0; i<formname.coursepick.length; i++) {
@@ -1546,8 +1565,7 @@ sub course_select_row {
             $output .= '</tr></table><br />';
         }
     }
-    $output .= '<input type="radio" name="coursepick" value="specific" onclick="coursePick(this.form);opencrsbrowser('."'".$formname."'".','."'".'dccourse'."'".','."'".'dcdomain'."'".','."'".'coursedesc'."','','1'".')" />'.&mt('Pick specific course(s):').' '.$courseform.'&nbsp;&nbsp;<input type="text" value="0" size="4" name="coursetotal" /><input type="hidden" name="courselist" value="" />selected.<br />'."\n";
-    $output .= &row_closure();
+    $output .= '<input type="radio" name="coursepick" value="specific" onclick="coursePick(this.form);opencrsbrowser('."'".$formname."','dccourse','dcdomain','coursedesc','','1'".')" />'.&mt('Pick specific course(s):').' '.$courseform.'&nbsp;&nbsp;<input type="text" value="0" size="4" name="coursetotal" /><input type="hidden" name="courselist" value="" />selected.<br />'."\n";
     return $output;
 }