--- loncom/interface/loncommon.pm	2009/02/03 19:36:19	1.741
+++ loncom/interface/loncommon.pm	2009/02/10 12:20:17	1.744
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # a pile of common routines
 #
-# $Id: loncommon.pm,v 1.741 2009/02/03 19:36:19 harmsja Exp $
+# $Id: loncommon.pm,v 1.744 2009/02/10 12:20:17 ehlerst Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -1746,7 +1746,7 @@ sub select_level_form {
 
 =pod
 
-=item * &select_dom_form($defdom,$name,$includeempty,$showdomdesc)
+=item * &select_dom_form($defdom,$name,$includeempty,$showdomdesc,$autosubmit)
 
 Returns a string containing a <select name='$name' size='1'> form to 
 allow a user to select the domain to preform an operation in.  
@@ -1755,16 +1755,22 @@ See loncreateuser.pm for an example invo
 If the $includeempty flag is set, it also includes an empty choice ("no domain
 selected");
 
-If the $showdomdesc flag is set, the domain name is followed by the domain description. 
+If the $showdomdesc flag is set, the domain name is followed by the domain description.
+
+If the $autosubmit flag is set, the form containing the domain selector will be auto-submitted by an onchange action.  
 
 =cut
 
 #-------------------------------------------
 sub select_dom_form {
-    my ($defdom,$name,$includeempty,$showdomdesc) = @_;
+    my ($defdom,$name,$includeempty,$showdomdesc,$autosubmit) = @_;
+    my $onchange;
+    if ($autosubmit) {
+        $onchange = ' onchange="this.form.submit()"';
+    }
     my @domains = sort {lc($a) cmp lc($b)} (&Apache::lonnet::all_domains());
     if ($includeempty) { @domains=('',@domains); }
-    my $selectdomain = "<select name=\"$name\" size=\"1\">\n";
+    my $selectdomain = "<select name=\"$name\" size=\"1\"$onchange>\n";
     foreach my $dom (@domains) {
         $selectdomain.="<option value=\"$dom\" ".
             ($dom eq $defdom ? 'selected="selected" ' : '').'>'.$dom;
@@ -3073,6 +3079,29 @@ sub languages {
     return $preferred_possibilities[0];
 }
 
+sub user_lang {
+    my ($touname,$toudom,$fromcid) = @_;
+    my @userlangs;
+    if (($fromcid ne '') && ($env{'course.'.$fromcid.'.languages'} ne '')) {
+        @userlangs=(@userlangs,split(/\s*(\,|\;|\:)\s*/,
+                    $env{'course.'.$fromcid.'.languages'}));
+    } else {
+        my %langhash = &getlangs($touname,$toudom);
+        if ($langhash{'languages'} ne '') {
+            @userlangs = split(/\s*(\,|\;|\:)\s*/,$langhash{'languages'});
+        } else {
+            my %domdefs = &Apache::lonnet::get_domain_defaults($toudom);
+            if ($domdefs{'lang_def'} ne '') {
+                @userlangs = ($domdefs{'lang_def'});
+            }
+        }
+    }
+    my @languages=&Apache::lonlocal::get_genlanguages(@userlangs);
+    my $user_lh = Apache::localize->get_handle(@languages);
+    return $user_lh;
+}
+
+
 ###############################################################
 ##               Student Answer Attempts                     ##
 ###############################################################
@@ -5589,7 +5618,7 @@ ol.LC_smallMenu a {
 	color: RGB(80, 80, 80);
 	text-decoration: none;
 }
-ol#LC_TabMainMenueContent, ul.LC_TabContent,
+ol#LC_TabMainMenueContent, ul.LC_TabContent ,
 ul.LC_TabContentBigger {
 	display:block;
 	list-style:none;
@@ -5597,7 +5626,7 @@ ul.LC_TabContentBigger {
 	padding: 0px;
 }
 
-ol#LC_TabMainMenuContent li, ul.LC_TabContent,
+ol#LC_TabMainMenuContent li, ul.LC_TabContent li,
 ul.LC_TabContentBigger li{
 	display: inline;
 	border-right: solid 1px $lg_border_color;
@@ -5626,13 +5655,17 @@ ul.LC_TabContent {
 ul.LC_TabContent li{
 	vertical-align:middle;
 	padding:0px 10px 0px 10px;
+	background-color:$lg_border_color;
 }
-ul.LC_TabContent li a, ul.LC_TabContent li{
+ul.LC_TabContent li a, ul.LC_TabContent li{ 
 	color:rgb(47,47,47);
 	text-decoration:none;
 	font-size:95%;
 	font-weight:bold;
 }
+ul.LC_TabContent li:hover, ul.LC_TabContent li.active{
+	background-color:#FFFFFF;
+}
 ul.LC_TabContentBigger li{
 	vertical-align:bottom;
 	border-top:solid 1px $lg_border_color;
@@ -5641,6 +5674,9 @@ ul.LC_TabContentBigger li{
 	margin-left:2px;
 	background:url(/adm/lonIcons/lightGreyBG.png) repeat-x left top;
 }
+ul.LC_TabContentBigger li:hover, ul.LC_TabContentBigger li.active{
+	background:url(/adm/lonIcons/lightGreyBG.png) repeat-x right bottom;
+}
 ul.LC_TabContentBigger li, ul.LC_TabContentBigger li a{
 	font-size:110%;
 	font-weight:bold;