--- loncom/interface/lonmenu.pm	2010/01/05 13:18:11	1.309.2.6
+++ loncom/interface/lonmenu.pm	2010/02/25 04:21:01	1.309.2.13
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # Routines to control the menu
 #
-# $Id: lonmenu.pm,v 1.309.2.6 2010/01/05 13:18:11 raeburn Exp $
+# $Id: lonmenu.pm,v 1.309.2.13 2010/02/25 04:21:01 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -131,6 +131,7 @@ use Apache::lonhtmlcommon();
 use Apache::loncommon();
 use Apache::lonenc();
 use Apache::lonlocal;
+use Apache::loncoursequeueadmin;
 use LONCAPA qw(:DEFAULT :match);
 use HTML::Entities();
 
@@ -1380,29 +1381,56 @@ sub inlinemenu {
     undef(@inlineremote);
     undef(%category_members);
     my $output;
-    if ($context eq 'gcicustom') {
-        my $createtext = &mt('Create Concept Test');
-        if ($switcher) {
-            $createtext = &mt('Create New Test');
-        }
+    if (($context eq 'gcicustom') || ($context eq 'gcistudent') ||
+        ($context eq 'gcinorole')) {
         $output='<table><tr>'.
                 '<td class="LC_mainmenu_col_fieldset">'.
                 '<div class="LC_Box LC_400Box">'.
                 '<h3 class="LC_hcell">'.&mt('Utilities').'</h3>'.
-                '<table><tr><td align="left"><a href="javascript:switchpage('."'createtest'".');"><img alt="choose role" src="/res/adm/pages/rcrs.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:switchpage('."'createtest'".');"><span class="LC_menubuttons_inline_text">'.$createtext.'</span></a></td></tr>';
+                '<table>';
+        if ($context eq 'gcicustom') {
+            my $createtext = &mt('Create Concept Test');
+            if ($switcher) {
+                $createtext = &mt('Create New Test');
+            }
+            $output .= '<tr><td align="left"><a href="javascript:switchpage('."'createtest'".');"><img alt="choose role" src="/res/adm/pages/rcrs.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:switchpage('."'createtest'".');"><span class="LC_menubuttons_inline_text">'.$createtext.'</span></a></td></tr>';
+        }
         if ($switcher) {
             $output .= '<tr><td align="left"><a href="javascript:courseswitcher('."'icon'".');"><img alt="choose role" src="/res/adm/pages/roles.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="2">'.$switcher.'</td></tr>';
         }
-        $output .= '<tr><td align="left"><a href="javascript:go('."'/adm/communicate'".');"><img alt="communication" src="/res/adm/pages/com.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:go('."'/adm/communicate'".');"><span class="LC_menubuttons_inline_text">'.&mt('Send/Display Messages').'</span></a></td></tr></table></div></td>';
-        if (($env{'request.course.id'}) &&
-            (&Apache::lonnet::allowed('mdc',$env{'request.course.id'}))) {
-            $output.= '<td class="LC_mainmenu_col_fieldset">'.
-                      '<div class="LC_Box LC_400Box">'.
-                      '<h3 class="LC_hcell">'.&mt('Test Management').'</h3>'.
-                      '<table><tr><td align="left"><a href="javascript:gonav('."'/adm/navmaps'".');"><img alt="course contents" src="/res/adm/pages/nav.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:gonav('."'/adm/navmaps'".');"><span class="LC_menubuttons_inline_text">Concept Test Contents</span></a></td></tr>'."\n".
-                      '<tr><td align="left"><a href="javascript:go('."'/adm/coursedocs'".');"><img alt="assemble test" src="/res/adm/pages/docs.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:go('."'/adm/coursedocs'".');"><span class="LC_menubuttons_inline_text">Assemble Concept Test</span></a></td></tr>'."\n".
-                      '<tr><td align="left"><a href="javascript:go('."'/adm/createuser'".');"><img alt="user privs" src="/res/adm/pages/cprv.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:go('."'/adm/createuser'".');"><span class="LC_menubuttons_inline_text">'.&mt('Manage Enrollment').'</span></a></td></tr>'."\n".
-                '<tr><td align="left"><a href="javascript:go('."'/adm/whatsnew'".');"><img alt="what is new" src="/res/adm/pages/new.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:go('."'/adm/whatsnew'".');"><span class="LC_menubuttons_inline_text">'.&mt("What's New?").'</span></a></td></tr></table></div></td>';
+        $output .= '<tr><td align="left"><a href="javascript:go('."'/adm/communicate'".');"><img alt="communication" src="/res/adm/pages/com.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:go('."'/adm/communicate'".');"><span class="LC_menubuttons_inline_text">'.&mt('Send/Display Messages').'</span></a></td></tr>'.
+'<tr><td align="left"><a href="javascript:go('."'/adm/preferences'".');"><img alt="user preferences" src="/res/adm/pages/pref.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:go('."'/adm/preferences'".');"><span class="LC_menubuttons_inline_text">'.&mt('Set my user preferences').'</span></a></td></tr>';
+        if ($env{'request.course.id'}) {
+            if (($context eq 'gcicustom') && (&Apache::lonnet::allowed('mdc',$env{'request.course.id'}))) {
+                $output.= '</td></tr></table></div></td>'.
+                          '<td class="LC_mainmenu_col_fieldset">'.
+                          '<div class="LC_Box LC_400Box">'.
+                          '<h3 class="LC_hcell">'.&mt('Test Management').'</h3>'.
+                          '<table><tr><td align="left"><a href="javascript:gonav('."'/adm/navmaps'".');"><img alt="course contents" src="/res/adm/pages/nav.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:gonav('."'/adm/navmaps'".');"><span class="LC_menubuttons_inline_text">Concept Test Contents</span></a></td></tr>'."\n".
+                          '<tr><td align="left"><a href="javascript:go('."'/adm/coursedocs'".');"><img alt="assemble test" src="/res/adm/pages/docs.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:go('."'/adm/coursedocs'".');"><span class="LC_menubuttons_inline_text">Assemble Concept Test</span></a></td></tr>'."\n".
+                          '<tr><td align="left"><a href="javascript:go('."'/adm/createuser'".');"><img alt="user privs" src="/res/adm/pages/cprv.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:go('."'/adm/createuser'".');"><span class="LC_menubuttons_inline_text">'.&mt('Manage Enrollment').'</span></a></td></tr>'."\n".
+                         '<tr><td align="left"><a href="javascript:go('."'/adm/whatsnew'".');"><img alt="what is new" src="/res/adm/pages/new.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:go('."'/adm/whatsnew'".');"><span class="LC_menubuttons_inline_text">'.&mt("What's New?").'</span></a></td></tr>'.
+                         '<tr><td align="left"><a href="javascript:go('."'/adm/printout'".');"><img alt="print concept test" src="/res/adm/pages/prnt.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:go('."'/adm/printout'".');"><span class="LC_menubuttons_inline_text">'.&mt("Prepare Printable Concept Test").'</span></a></td></tr>'.
+                         '<tr><td align="left"><a href="javascript:go('."'/adm/statistics'".');"><img alt="Test Statistics" src="/res/adm/pages/chrt.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:go('."'/adm/statistics'".');"><span class="LC_menubuttons_inline_text">'.&mt("Concept Test Statistics").'</span></a></td></tr></table></div></td>';
+            } else {
+                my $navtext = &mt('Table of Contents');
+                if ($env{'request.role.domain'} eq 'gcitest') {
+                    $navtext = &mt('Display Test Contents');
+                }
+                $output .= '<tr><td align="left"><a href="javascript:gonav('."'/adm/navmaps'".');"><img alt="course contents" src="/res/adm/pages/nav.png" align="left" class="LC_icon" /></a></td><td class="LC_menubuttons_text" colspan="3"><a class="LC_menubuttons_link" href="javascript:gonav('."'/adm/navmaps'".');"><span class="LC_menubuttons_inline_text">'.$navtext.'</span></a></td></tr></table></div></td>';
+            }
+        } else {
+            $output.='</td></tr></table></div></td>';
+        }
+        if ($context eq 'gcinorole') {
+            my $queued =  &Apache::loncoursequeueadmin::queued_selfenrollment('notitle');
+            if ($queued) {
+                $output .= '<td class="LC_mainmenu_col_fieldset">'.
+                           '<div class="LC_Box LC_400Box">'.
+                           '<h3 class="LC_hcell">'.&mt('Pending Enrollment Requests').'</h3>'.
+                           $queued.
+                           '</td></tr></table></div></td>';
+            }
         }
         $output.='</tr></table>';
     } else {
@@ -1736,7 +1764,7 @@ sub utilityfunctions {
      
     my $gcimenujs;
     if ($custommenu) {
-        my %concepttests = &Apache::loncommon::existing_gcitest_courses();
+        my %concepttests = &Apache::loncommon::existing_gcitest_courses('cc');
         my $managetesturl = '/adm/menu';
         my $createtesturl = '/adm/requestcourse';
         if (($env{'request.course.id'}) &&