--- loncom/interface/londocs.pm	2009/05/11 17:12:25	1.366
+++ loncom/interface/londocs.pm	2009/07/01 13:16:42	1.374
@@ -1,7 +1,7 @@
 # The LearningOnline Network
 # Documents
 #
-# $Id: londocs.pm,v 1.366 2009/05/11 17:12:25 bisitz Exp $
+# $Id: londocs.pm,v 1.374 2009/07/01 13:16:42 tempelho Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -142,7 +142,7 @@ sub dumpcourse {
     my ($r) = @_;
     my $type = &Apache::loncommon::course_type();
     $r->print(&Apache::loncommon::start_page('Dump '.$type.' DOCS to Construction Space').
-	      '<form name="dumpdoc" method="post">');
+	      '<form name="dumpdoc" action="" method="post">');
     $r->print(&Apache::lonhtmlcommon::breadcrumbs('Dump '.$type.' DOCS to Construction Space'));
     my ($home,$other,%outhash)=&authorhosts();
     unless ($home) { return ''; }
@@ -321,9 +321,15 @@ sub exportcourse {
                 open(OUTPUT, "zip -r $imszip *  2> /dev/null |");
                 close(OUTPUT);
                 chdir $cwd;
-                $outcome .= &mt('Download the zip file from <a href="[_1]">IMS '.lc($type).' archive</a><br />',$imszipfile,);
+                $outcome .= '<p>'
+                           .&mt('Download the zip file from [_1]IMS '.lc($type).' archive[_2]'
+                               ,'<a href="'.$imszipfile.'">','</a>')
+                           .'</p>';
                 if ($copyresult) {
-                    $outcome .= &mt('The following errors occurred during export - [_1]',$copyresult);
+                    $outcome .= '<p class="LC_error">'
+                               .&mt('The following errors occurred during export - [_1]'
+                                   ,$copyresult)
+                               .'</p>';
                 }
             } else {
                 $outcome = '<br />'.&mt('Unfortunately you will not be able to retrieve an IMS archive of this posts at this time, because there was a problem creating a manifest file.').'<br />';
@@ -335,21 +341,23 @@ sub exportcourse {
         $r->print(&Apache::loncommon::end_page());
     } else {
         my $display;
-        $display = '<form name="exportdoc" method="post">'."\n";
-        $display .= &mt('Choose which items you wish to export from your '.$type.'.<br /><br />');
-        $display .= '<table border="0" cellspacing="0" cellpadding="3">'.
-                    '<tr><td><fieldset><legend>&nbsp;<b>Content items</b></legend>'.
-                    '<input type="button" value="check all" '.
+        $display = '<form name="exportdoc" action="" method="post">'."\n";
+        $display .= '<p>'
+                   .&mt('Choose which items you wish to export from your '.$type.'.')
+                   .'</p>';
+        $display .= '<div class="LC_columnSection"><fieldset>'.
+                    '<legend>'.&mt('Content items').'</legend>'.
+                    '<input type="button" value="'.&mt('check all').'" '.
                     'onclick="javascript:checkAll(document.exportdoc.archive)" />'.
-                    '&nbsp;&nbsp;<input type="button" value="uncheck all"'.
-                    ' onclick="javascript:uncheckAll(document.exportdoc.archive)" /></fieldset></td>'.
-                    '<td>&nbsp;</td><td>&nbsp;</td>'.
-                    '<td align="right"><fieldset><legend>&nbsp;<b>Discussion posts'.
-                    '</b></legend><input type="button" value="check all"'.
+                    '&nbsp;&nbsp;<input type="button" value="'.&mt('uncheck all').'"'.
+                    ' onclick="javascript:uncheckAll(document.exportdoc.archive)" /></fieldset>'.
+                    '<fieldset>'.
+                    '<legend>'.&mt('Discussion posts').'</legend>'.
+                    '<input type="button" value="'.&mt('check all').'"'.
                     ' onclick="javascript:checkAll(document.exportdoc.discussion)" />'.
-                    '&nbsp;&nbsp;<input type="button" value="uncheck all"'.
-                    ' onclick="javascript:uncheckAll(document.exportdoc.discussion)" /></fieldset></td>'.
-                    '</tr></table>';
+                    '&nbsp;&nbsp;<input type="button" value="'.&mt('uncheck all').'"'.
+                    ' onclick="javascript:uncheckAll(document.exportdoc.discussion)" />'.
+                    '</fieldset></div>';
         my $curRes;
         my $depth = 0;
         my $count = 0;
@@ -358,13 +366,17 @@ sub exportcourse {
         my %parent = ();
         my %children = ();
         my $lastcontainer = $startcount;
-        my @bgcolors = ('#F6F6F6','#FFFFFF');
-        $display .= '<table cellspacing="0"><tr>'.
-            '<td><b>Export content item?<br /></b></td><td>&nbsp;</td><td align="right">'."\n";
+        $display .= &Apache::loncommon::start_data_table()
+                   .&Apache::loncommon::start_data_table_header_row()
+                   .'<th>'.&mt('Export content item?').'</th>'
+                   .'<th>';
         if ($numdisc > 0) {
-            $display.='<b>Export&nbsp;discussion posts?</b>'."\n";
+            $display .= &mt('Export discussion posts?');
+        } else {
+             $display .= '&nbsp;';
         }
-        $display.='&nbsp;</td></tr>';
+        $display .= '</th>'
+                   .&Apache::loncommon::end_data_table_header_row();
         while ($curRes = $it->next()) {
             if (ref($curRes)) {
                 $count ++;
@@ -385,16 +397,17 @@ sub exportcourse {
                         $ressymb = 'bulletin___'.$3.'___adm/wrapper/adm/'.$1.'/'.$2.'/'.$3.'/bulletinboard';
                     }
                 }
-                my $color = $count%2;
-                $display .='<tr bgcolor='.$bgcolors[$color].'><td>'."\n".
-                    '<input type="checkbox" name="archive" value="'.$count.'" ';
+                $display .= &Apache::loncommon::start_data_table_row()
+                           .'<td>'."\n"
+                           .'<input type="checkbox" name="archive" value="'.$count.'" ';
                 if (($curRes->is_sequence()) || ($curRes->is_page())) {
                     my $checkitem = $count + $boards + $startcount;
-                    $display .= 'onClick="javascript:propagateCheck('."'$checkitem'".')"';
+                    $display .= 'onclick="javascript:propagateCheck('."'$checkitem'".')"';
                 }
                 $display .= ' />'."\n";
                 for (my $i=0; $i<$depth; $i++) {
-                    $display .= '<img src="/adm/lonIcons/whitespace1.gif" class="LC_docs_spacer" /><img src="/adm/lonIcons/whitespace1.gif" class="LC_docs_spacer" />'."\n";
+                    $display .= '<img src="/adm/lonIcons/whitespace1.gif" class="LC_docs_spacer" alt="" />'
+                               .'<img src="/adm/lonIcons/whitespace1.gif" class="LC_docs_spacer" alt="" />'."\n";
                 }
                 if ($curRes->is_sequence()) {
                     $display .= '<img src="/adm/lonIcons/navmap.folder.open.gif" alt="" />&nbsp;'."\n";
@@ -405,19 +418,25 @@ sub exportcourse {
                 }
                 my $currelem = $count+$boards+$startcount;
                 $children{$parent{$depth}} .= $currelem.':';
-                $display .= '&nbsp;'.$curRes->title().'</td>';
+                $display .= '&nbsp;'.$curRes->title().'</td>'."\n";
+
+                # Existing discussion posts?
                 if ($discussiontime{$ressymb} > 0) {
                     $boards ++;
                     $currelem = $count+$boards+$startcount;
-                    $display .= '<td>&nbsp;</td><td align="right"><input type="checkbox" name="discussion" value="'.$count.'" />&nbsp;</td>'."\n";
+                    $display .= '<td align="right">'
+                               .'<input type="checkbox" name="discussion" value="'.$count.'" />'
+                               .'</td>'."\n";
                 } else {
-                    $display .= '<td colspan="2">&nbsp;</td>'."\n";
+                    $display .= '<td>&nbsp;</td>'."\n";
                 }
+                $display .= &Apache::loncommon::end_data_table_row();
             }
         }
+        $display .= &Apache::loncommon::end_data_table();
         my $scripttag = qq|
-<script>
-
+<script type="text/javascript">
+// <![CDATA[
 function checkAll(field) {
     if (field.length > 0) {
         for (i = 0; i < field.length; i++) {
@@ -467,13 +486,13 @@ function containerCheck(item) {
         }
      }
 }
-
+// ]]>
 </script>
         |;
 	$r->print(&Apache::loncommon::start_page('Export '.lc($type).' to IMS content package',
 						 $scripttag));
 	$r->print(&Apache::lonhtmlcommon::breadcrumbs('Export '.lc($type).' to IMS content package'));
-	$r->print($display.'</table>'.
+	$r->print($display.
                   '<p><input type="hidden" name="finishexport" value="1" />'.
                   '<input type="submit" name="exportcourse" value="'.
                   &mt('Export '.$type.' DOCS').'" /></p></form>');
@@ -1004,8 +1023,7 @@ sub breadcrumbs {
 	    &Apache::lonhtmlcommon::add_breadcrumb(
 		      {'href'=>$url.$cpinfo,
 		       'title'=>$name,
-		       'text'=>'<font size="+1">'.
-			   $name.'</font>',
+		       'text'=>$name,
 		       'no_mt'=>1,
 		       });
 	$plain.=$name.' &gt; ';
@@ -1772,7 +1790,7 @@ sub entryline {
 	     ne '')) {
 	    $selectbox=
 		'<input type="hidden" name="currentpos" value="'.$incindex.'" />'.
-		'<select name="newpos" onChange="this.form.submit()">';
+		'<select name="newpos" onchange="this.form.submit()">';
 	    for (my $i=1;$i<=$#LONCAPA::map::order+1;$i++) {
 		if ($i==$incindex) {
 		    $selectbox.='<option value="" selected="selected">('.$i.')</option>';
@@ -1954,7 +1972,7 @@ END
                                               'parameter_randomorder'))[0]=~/^yes$/i);
 	$url.='folderpath='.&escape($folderpath).$cpinfo;
 	$parameterset='<label>'.&mt('Randomly Pick: ').
-	    '<input type="text" size="4" onChange="this.form.changeparms.value='."'randompick'".';this.form.submit()" name="randompick_'.$orderidx.'" value="'.
+	    '<input type="text" size="4" onchange="this.form.changeparms.value='."'randompick'".';this.form.submit()" name="randompick_'.$orderidx.'" value="'.
 	    (&LONCAPA::map::getparameter($orderidx,
                                               'parameter_randompick'))[0].
                                               '" />'.
@@ -1962,7 +1980,7 @@ END
     	my $ro_set=
 	    ((&LONCAPA::map::getparameter($orderidx,'parameter_randomorder'))[0]=~/^yes$/i?' checked="checked"':'');
 	$rand_order_text ='
-<span class="LC_nobreak"><label><input type="checkbox" name="randomorder_'.$orderidx.'" onClick="this.form.changeparms.value=\'randomorder\';this.form.submit()" '.$ro_set.' /> '.&mt('Random Order').' </label></span>';
+<span class="LC_nobreak"><label><input type="checkbox" name="randomorder_'.$orderidx.'" onclick="this.form.changeparms.value=\'randomorder\';this.form.submit()" '.$ro_set.' /> '.&mt('Random Order').' </label></span>';
     }
     if ($ispage) {
         my $pagename=&escape($pagetitle);
@@ -2006,12 +2024,12 @@ END
 	$line.=(<<ENDPARMS);
   <td class="LC_docs_entry_parameter">
     $form_start
-    <label><input type="checkbox" name="hiddenresource_$orderidx" onClick="this.form.changeparms.value='hiddenresource';this.form.submit()" $hidtext /> $lt{'hd'}</label>
+    <label><input type="checkbox" name="hiddenresource_$orderidx" onclick="this.form.changeparms.value='hiddenresource';this.form.submit()" $hidtext /> $lt{'hd'}</label>
     $form_end
   </td>
   <td class="LC_docs_entry_parameter">
     $form_start
-    <label><input type="checkbox" name="encrypturl_$orderidx" onClick="this.form.changeparms.value='encrypturl';this.form.submit()" $enctext /> $lt{'ec'}</label>
+    <label><input type="checkbox" name="encrypturl_$orderidx" onclick="this.form.changeparms.value='encrypturl';this.form.submit()" $enctext /> $lt{'ec'}</label>
     $form_end
   </td>
   <td class="LC_docs_entry_parameter">$form_start $rand_order_text $form_end</td>
@@ -2094,7 +2112,7 @@ sub checkonthis {
                  if (($errorcount) ||
                      ($warningcount)) {
 		     if ($errorcount) {
-                        $r->print('<img src="/adm/lonMisc/bomb.gif" alt="" /><span class="LC_error">'.
+                        $r->print('<img src="/adm/lonMisc/bomb.gif" alt="'.&mt('bomb').'" /><span class="LC_error">'.
                           &mt('[quant,_1,error]',$errorcount).'</span>');
                      }
 		     if ($warningcount) {
@@ -2484,14 +2502,18 @@ sub changewarning {
 	$message='Changes will become active for your current session after [_1], or the next time you log in.';
     }
     $r->print("\n\n".
-'<script type="text/javascript">function reinit(tf) { tf.submit();'.$postexec.' }</script>'."\n".
-'<form name="reinitform" method="post" action="/adm/roles" target="loncapaclient">'.
+'<script type="text/javascript">'."\n".
+'// <![CDATA['."\n".
+'function reinit(tf) { tf.submit();'.$postexec.' }'."\n".
+'// ]]>'."\n".
+'</script>'."\n".
+'<form name="reinitform" method="post" action="/adm/coursedocs" target="loncapaclient">'.
 '<input type="hidden" name="orgurl" value="'.$url.
-'" /><input type="hidden" name="selectrole" value="1" /><h3><span class="LC_warning">'.
+'" /><input type="hidden" name="selectrole" value="1" /><p class="LC_warning">'.
 &mt($message,' <input type="hidden" name="'.
     $env{'request.role'}.'" value="1" /><input type="button" value="'.
-    &mt('re-initializing '.$course_type).'" onClick="reinit(this.form)" />').
-$help{'Caching'}.'</span></h3></form>'."\n\n");
+    &mt('re-initializing '.$course_type).'" onclick="reinit(this.form)" />').
+$help{'Caching'}.'</p></form>'."\n\n");
 }
 
 
@@ -2647,7 +2669,11 @@ sub handler {
 	$script .= &editing_js($udom,$uname);
     }
 # -------------------------------------------------------------------- Body tag
-    $script = '<script type="text/javascript">'."\n".$script."\n".'</script>';
+    $script = '<script type="text/javascript">'."\n"
+              .'// <![CDATA['."\n"
+              .$script."\n"
+              .'// ]]>'."\n"
+              .'</script>'."\n";
     my $brcrum = [{href=>"/adm/createuser",text=>"$type Documents"}];
     $r->print(&Apache::loncommon::start_page("$type Documents", $script,
 				    {'force_register' => $showdoc,
@@ -2775,7 +2801,7 @@ sub handler {
                 'title' => 'Title',
                 'comment' => 'Comment',
                 'parse' => 'Upload embedded images/multimedia files if HTML file!',
-		'nd' => 'New Document',
+		'nd' => 'Upload Document',
 		'pm' => 'Published Map',
 		'sd' => 'Special Document',
 		'mo' => 'More Options',
@@ -2798,6 +2824,7 @@ CHBO
 
 	my $fileuploadform=(<<FUFORM);
 	<form name="uploaddocument" action="/adm/coursedocs" method="post" enctype="multipart/form-data">
+	<input type="hidden" name="active" value="aa" />
 	$fileupload
 	<br />
 	$lt{'title'}:<br />
@@ -2819,22 +2846,23 @@ FUFORM
 
 	my $simpleeditdefaultform=(<<SEDFFORM);
 	<form action="/adm/coursedocs" method="post" name="simpleeditdefault">
+	<input type="hidden" name="active" value="bb" />
 	$lt{'pubd'}<br />
 	$uploadtag
-	<input type="button" onClick="javascript:groupsearch()" value="$lt{'srch'}" />
+	<input type="button" onclick="javascript:groupsearch()" value="$lt{'srch'}" />
 	<br />
 	<span class="LC_nobreak">
-	<input type="button" onClick="javascript:groupimport();" value="$lt{'impo'}" />
+	<input type="button" onclick="javascript:groupimport();" value="$lt{'impo'}" />
 	$help{'Importing_LON-CAPA_Resource'}
 	</span>
 	<br />
-	<input type="button" onClick="javascript:groupopen(0,1,1);" value="$lt{'book'}" />
+	<input type="button" onclick="javascript:groupopen(0,1,1);" value="$lt{'book'}" />
 	<hr />
 	<p>
 	$lt{'copm'}<br />
 	<input type="text" size="40" name="importmap" /><br />
 	<span class="LC_nobreak"><input type="button"
-	onClick="javascript:openbrowser('simpleeditdefault','importmap','sequence,page','')"
+	onclick="javascript:openbrowser('simpleeditdefault','importmap','sequence,page','')"
 	value="$lt{'selm'}" /> <input type="submit" name="loadmap" value="$lt{'load'}" />
 	$help{'Load_Map'}</span>
 	</p>
@@ -2846,7 +2874,7 @@ SEDFFORM
 	$uploadtag
 	<input type="hidden" name="importdetail" value="" />
 	<span class="LC_nobreak">
-	<input name="newext" type="button" onClick="javascript:makenewext('newext');"
+	<input name="newext" type="button" onclick="javascript:makenewext('newext');"
 	value="$lt{'extr'}" /> $help{'Adding_External_Resource'}
 	</span>
 	</form>
@@ -2897,15 +2925,15 @@ HIDDENFORM
 	   $activeClass = 0;
 	}
     }
-    $r->print('<li '.$active.'onclick="javascript:showPage(this,\'mainCourseDocuments\',\'mainnav\',\'maincoursedoc\');">'.&mt('Main Course Documents').'</li>');
+    $r->print('<li '.$active.' onclick="javascript:showPage(this,\'mainCourseDocuments\',\'mainnav\',\'maincoursedoc\');">'.&mt('Main Course Documents').'</li>');
     $active = '';
     if (!$forcestandard || ($env{'form.folderpath'}=~/^supplemental/)) {
         if($activeClass == 1){
            $active = 'class="active"';
         }
     }
-    $r->print('<li '.$active.'onclick="javascript:showPage(this,\'Supplemental Course Documents\',\'mainnav\',\'maincoursedoc\');">'.&mt('Supplemental Course Documents').'</li>');
-    $r->print('</ul><div class="LC_ContentBoxSpecial" style="margin:0 0;padding:0 0;"><div id="maincoursedoc" style="margin:0 0;padding:0 0;">');
+    $r->print('<li '.$active.' onclick="javascript:showPage(this,\'supplCourseDocuments\',\'mainnav\',\'maincoursedoc\');">'.&mt('Supplemental Course Documents').'</li>');
+    $r->print('</ul><div class="LC_Box"><div id="maincoursedoc" style="margin:0 0;padding:0 0;">');
 # --------------------------------------------------------- Standard documents
        my $savefolderpath;
        my $active = 'style="display: none;"';
@@ -2913,8 +2941,6 @@ HIDDENFORM
           $active = 'style="display: block;"';
        }
        $r->print('<div class="LC_ContentBox" id="mainCourseDocuments" '.$active.'>');
-        $r->print(&Apache::loncommon::help_open_topic('Docs_Adding_Course_Doc',
-                     &mt('Editing the Table of Contents for your '.$type)));
        my $folder=$env{'form.folder'};
        if ($folder eq '' || $folder=~/^supplemental/) {
            $folder='default';
@@ -2925,7 +2951,12 @@ HIDDENFORM
        }
        my $postexec='';
        if ($folder eq 'default') {
-	   $r->print('<script type="text/javascript">this.window.name="loncapaclient";</script>');
+           $r->print('<script type="text/javascript">'."\n"
+                    .'// <![CDATA['."\n"
+                    .'this.window.name="loncapaclient";'."\n"
+                    .'// ]]>'."\n"
+                    .'</script>'."\n"
+       );
        } else {
            #$postexec='self.close();';
        }
@@ -2943,19 +2974,20 @@ HIDDENFORM
 
 	my $recoverform=(<<RFORM);
 	<form action="/adm/groupsort" method="post" name="recover">
-	<input type="button" name="recovermap" onClick="javascript:groupopen('$readfile',1,0)" value="$lt{'reco'}" />
+	<input type="button" name="recovermap" onclick="javascript:groupopen('$readfile',1,0)" value="$lt{'reco'}" />
 	</form>
 RFORM
 
 	my $imspform=(<<IMSPFORM);
 	<form action="/adm/imsimportdocs" method="post" name="ims">
 	<input type="hidden" name="folder" value="$folder" />
-	<input name="imsimport" type="button" value="$lt{'imsf'}" onClick="javascript:makeims();" />
+	<input name="imsimport" type="button" value="$lt{'imsf'}" onclick="javascript:makeims();" />
 	</form>
 IMSPFORM
 
 	my $newnavform=(<<NNFORM);
 	<form action="/adm/coursedocs" method="post" name="newnav">
+	<input type="hidden" name="active" value="cc" />
 	$uploadtag
 	<input type="hidden" name="importdetail" 
 	value="$lt{'navc'}=/adm/navmaps" />
@@ -2967,22 +2999,24 @@ IMSPFORM
 NNFORM
 	my $newsmppageform=(<<NSPFORM);
 	<form action="/adm/coursedocs" method="post" name="newsmppg">
+	<input type="hidden" name="active" value="cc" />
 	$uploadtag
 	<input type="hidden" name="importdetail" value="" />
 	<span class="LC_nobreak">
 	<input name="newsmppg" type="button" value="$lt{'sipa'}"
-	onClick="javascript:makesmppage();" /> $help{'Simple Page'}
+	onclick="javascript:makesmppage();" /> $help{'Simple Page'}
 	</span>
 	</form>
 NSPFORM
 
 	my $newsmpproblemform=(<<NSPROBFORM);
 	<form action="/adm/coursedocs" method="post" name="newsmpproblem">
+	<input type="hidden" name="active" value="cc" />
 	$uploadtag
 	<input type="hidden" name="importdetail" value="" />
 	<span class="LC_nobreak">
 	<input name="newsmpproblem" type="button" value="$lt{'sipr'}"
-	onClick="javascript:makesmpproblem();" />$help{'Simple Problem'}
+	onclick="javascript:makesmpproblem();" />$help{'Simple Problem'}
 	</span>
 	</form>
 
@@ -2990,22 +3024,24 @@ NSPROBFORM
 
 	my $newdropboxform=(<<NDBFORM);
 	<form action="/adm/coursedocs" method="post" name="newdropbox">
+	<input type="hidden" name="active" value="cc" />
 	$uploadtag
 	<input type="hidden" name="importdetail" value="" />
 	<span class="LC_nobreak">
 	<input name="newdropbox" type="button" value="$lt{'drbx'}"
-	onClick="javascript:makedropbox();" />
+	onclick="javascript:makedropbox();" />
 	</span>
 	</form>
 NDBFORM
 
 	my $newexuploadform=(<<NEXUFORM);
 	<form action="/adm/coursedocs" method="post" name="newexamupload">
+	<input type="hidden" name="active" value="cc" />
 	$uploadtag
 	<input type="hidden" name="importdetail" value="" />
 	<span class="LC_nobreak">
 	<input name="newexamupload" type="button" value="$lt{'scuf'}"
-	onClick="javascript:makeexamupload();" />
+	onclick="javascript:makeexamupload();" />
 	$help{'Score_Upload_Form'}
 	</span>
 	</form>
@@ -3013,11 +3049,12 @@ NEXUFORM
 
 	my $newbulform=(<<NBFORM);
 	<form action="/adm/coursedocs" method="post" name="newbul">
+	<input type="hidden" name="active" value="cc" />
 	$uploadtag
 	<input type="hidden" name="importdetail" value="" />
 	<span class="LC_nobreak">
 	<input name="newbulletin" type="button" value="$lt{'bull'}"
-	onClick="javascript:makebulboard();" />
+	onclick="javascript:makebulboard();" />
 	$help{'Bulletin Board'}
 	</span>
 	</form>
@@ -3025,6 +3062,7 @@ NBFORM
 
 	my $newaboutmeform=(<<NAMFORM);
 	<form action="/adm/coursedocs" method="post" name="newaboutme">
+	<input type="hidden" name="active" value="cc" />
 	$uploadtag
 	<input type="hidden" name="importdetail" 
 	value="$plainname=/adm/$udom/$uname/aboutme" />
@@ -3037,11 +3075,12 @@ NAMFORM
 
 	my $newaboutsomeoneform=(<<NASOFORM);
 	<form action="/adm/coursedocs" method="post" name="newaboutsomeone">
+	<input type="hidden" name="active" value="cc" />
 	$uploadtag
 	<input type="hidden" name="importdetail" value="" />
 	<span class="LC_nobreak">
 	<input name="newaboutsomeone" type="button" value="$lt{'abou'}" 
-	onClick="javascript:makeabout();" />
+	onclick="javascript:makeabout();" />
 	</span>
 	</form>
 NASOFORM
@@ -3049,6 +3088,7 @@ NASOFORM
 
 	my $newrosterform=(<<NROSTFORM);
 	<form action="/adm/coursedocs" method="post" name="newroster">
+	<input type="hidden" name="active" value="cc" />
 	$uploadtag
 	<input type="hidden" name="importdetail" 
 	value="$lt{'rost'}=/adm/viewclasslist" />
@@ -3069,9 +3109,10 @@ my $newfolderform;
 	<form action="/adm/coursedocs" method="post" name="newpage">
 	<input type="hidden" name="folderpath" value="$path" />
 	<input type="hidden" name="importdetail" value="" />
+	<input type="hidden" name="active" value="cc" />
 	<span class="LC_nobreak">
 	<input name="newpage" type="button"
-	onClick="javascript:makenewpage(this.form,'$pageseq');"
+	onclick="javascript:makenewpage(this.form,'$pageseq');"
 	value="$lt{'newp'}" />$help{'Adding_Pages'}
 	</span>
 	</form>
@@ -3081,9 +3122,10 @@ NPFORM
 	<form action="/adm/coursedocs" method="post" name="newfolder">
 	<input type="hidden" name="folderpath" value="$path" />
 	<input type="hidden" name="importdetail" value="" />
+	<input type="hidden" name="active" value="aa" />
 	<span class="LC_nobreak">
 	<input name="newfolder" type="button"
-	onClick="javascript:makenewfolder(this.form,'$folderseq');"
+	onclick="javascript:makenewfolder(this.form,'$folderseq');"
 	value="$lt{'newf'}" />$help{'Adding_Folders'}
 	</span>
 	</form>
@@ -3091,6 +3133,7 @@ NFFORM
 
 	my $newsylform=(<<NSYLFORM);
 	<form action="/adm/coursedocs" method="post" name="newsyl">
+	<input type="hidden" name="active" value="cc" />
 	$uploadtag
 	<input type="hidden" name="importdetail" 
 	value="$lt{'syll'}=/public/$coursedom/$coursenum/syllabus" />
@@ -3103,6 +3146,7 @@ NSYLFORM
 
 	my $newgroupfileform=(<<NGFFORM);
 	<form action="/adm/coursedocs" method="post" name="newgroupfiles">
+	<input type="hidden" name="active" value="cc" />
 	$uploadtag
 	<input type="hidden" name="importdetail"
 	value="$lt{'grpo'}=/adm/$coursedom/$coursenum/aboutme" />
@@ -3125,7 +3169,7 @@ if($env{'form.pagepath'}) {
 }
 
 my %orderhash = (
-                'aa' => ['New Document',$fileuploadform.'<br />'.$newfolderform],
+                'aa' => ['Upload Document',$fileuploadform.'<br />'.$newfolderform],
                 'bb' => ['Published Documents',$simpleeditdefaultform],
                 'cc' => ['Special Documents',$specialdocumentsform],
 		'dd' => ['Tools',$extresourcesform.'<br />'.$imspform.'<br />'.$recoverform.'<br />'.&generate_admin_options($containertag,$uploadtag,\%help,\%env)],
@@ -3144,6 +3188,8 @@ $r->print(&generate_edit_table($tid,$var
        }
 
        &changewarning($r,'');
+ $r->print(&Apache::loncommon::help_open_topic('Docs_Adding_Course_Doc',
+                     &mt('Editing the Table of Contents for your '.$type)));
 $r->print('</div>');
        if ($env{'form.pagepath'}) {
        }
@@ -3152,7 +3198,7 @@ $r->print('</div>');
        if($activeClass == 1){
           $active = 'style="display: block;"';
        }
-       $r->print('<div class="LC_ContentBox" id="Supplemental Course Documents" '.$active.'>');
+       $r->print('<div class="LC_ContentBox" id="supplCourseDocuments" '.$active.'>');
        my $folder=$env{'form.folder'};
        unless ($folder=~/^supplemental/) {
 	   $folder='supplemental';
@@ -3174,6 +3220,7 @@ $r->print('</div>');
 
 	my $supupdocform=(<<SUPDOCFORM);
 	<form action="/adm/coursedocs" method="post" enctype="multipart/form-data">
+	<input type="hidden" name="active" value="ee" />	
 	$fileupload
 	<br />
 	<br />
@@ -3196,11 +3243,12 @@ SUPDOCFORM
 
 	my $supnewfolderform=(<<SNFFORM);
 	<form action="/adm/coursedocs" method="post" name="supnewfolder">
+	<input type="hidden" name="active" value="ee" />
 	<input type="hidden" name="folderpath" value="$path" />
 	<input type="hidden" name="importdetail" value="" />
 	<span class="LC_nobreak">
 	<input name="newfolder" type="button"
-	onClick="javascript:makenewfolder(this.form,'$folderseq');"
+	onclick="javascript:makenewfolder(this.form,'$folderseq');"
 	value="$lt{'newf'}" /> $help{'Adding_Folders'}
 	</span>
 	</form>
@@ -3209,11 +3257,12 @@ SNFFORM
 
 	my $supnewextform=(<<SNEFORM);
 	<form action="/adm/coursedocs" method="post" name="supnewext">
+	<input type="hidden" name="active" value="ff" />
 	<input type="hidden" name="folderpath" value="$path" />
 	<input type="hidden" name="importdetail" value="" />
 	<span class="LC_nobreak">
 	<input name="newext" type="button" 
-	onClick="javascript:makenewext('supnewext');"
+	onclick="javascript:makenewext('supnewext');"
 	value="$lt{'extr'}" /> $help{'Adding_External_Resource'}
 	</span>
 	</form>
@@ -3221,6 +3270,7 @@ SNEFORM
 
 	my $supnewsylform=(<<SNSFORM);
 	<form action="/adm/coursedocs" method="post" name="supnewsyl">
+	<input type="hidden" name="active" value="ff" />
 	<input type="hidden" name="folderpath" value="$path" />
 	<input type="hidden" name="importdetail" 
 	value="Syllabus=/public/$coursedom/$coursenum/syllabus" />
@@ -3233,6 +3283,7 @@ SNSFORM
 
 	my $supnewaboutmeform=(<<SNAMFORM);
 	<form action="/adm/coursedocs" method="post" name="subnewaboutme">
+	<input type="hidden" name="active" value="ff" />
 	<input type="hidden" name="folderpath" value="$path" />
 	<input type="hidden" name="importdetail" 
 	value="$plainname=/adm/$udom/$uname/aboutme" />
@@ -3246,7 +3297,7 @@ SNAMFORM
 
 
 my %suporderhash = (
-                'ee' => ['New Document',$supupdocform.'<br />'.$supnewfolderform],
+                'ee' => ['Upload Document',$supupdocform.'<br />'.$supnewfolderform],
                 'ff' => ['Special Documents',$supnewextform.'<br />'.$supnewsylform.'<br />'.$supnewaboutmeform],
                 'zz' => ['Hide all Options'],
                 );
@@ -3316,21 +3367,42 @@ sub generate_edit_table {
     my ($tid,$varcd,$orderhash_ref) = @_;
     my %orderhash = %{$orderhash_ref};
     my $form;
-
-    $form = '<div class="LC_ContentBoxSpecial"><h4 class="LC_hcell">'.&mt($varcd).'</h4>';
+    my $activetab;
+    my $active;
+    if($env{'form.active'} ne ''){
+        $activetab = $env{'form.active'};
+    }
+    $form = '<div class="LC_Box"><h4 class="LC_hcell">'.&mt($varcd).'</h4>';
     $form .= '<ul id="navigation'.$tid.'" class="LC_TabContent">';
     foreach my $name (sort(keys(%orderhash))){
         if($name eq 'zz'){
-            $form .= '<span class="LC_Right"><li onclick="javascript:hideAll(this, \'navigation'.$tid.'\' ,\'content'.$tid.'\');" class="active">'.&mt(${$orderhash{$name}}[0]).'</li></span>';
+            if($activetab ne ''){
+               $active = 'class="right"';
+            }else{
+               $active = 'class="right active"';
+            }
+            $form .= '<li onclick="javascript:hideAll(this, \'navigation'.$tid.'\' ,\'content'.$tid.'\');" '.$active.'>'.&mt(${$orderhash{$name}}[0]).'</li>';
         }else{
-            $form .= '<li onclick="javascript:showPage(this, \''.substr(${$orderhash{$name}}[0],0,3).$tid.'\', \'navigation'.$tid.'\',\'content'.$tid.'\');">'.&mt(${$orderhash{$name}}[0]).'</li>';
+            if($activetab eq '' || $activetab ne $name){
+               $active = '';
+            }elsif($activetab eq $name){
+               $active = 'class="active"';
+            }
+            $form .= '<li '.$active.' onclick="javascript:showPage(this, \''.$name.$tid.'\', \'navigation'.$tid.'\',\'content'.$tid.'\');">'.&mt(${$orderhash{$name}}[0]).'</li>';
         }
     }
     $form .= '</ul>';
     $form .= '<div id="content'.$tid.'" style="padding: 0 0; margin: 0 0;">';
     foreach my $field (keys(%orderhash)){
 	if($field ne 'zz'){
-           $form .= '<div id="'.substr(${$orderhash{$field}}[0],0,3).$tid.'" class="LC_ContentBox" style="display: none;">'.${$orderhash{$field}}[1].'</div>';
+        if($activetab eq '' || $activetab ne $field){
+                $active = 'style="display: none;"';
+        }elsif($activetab eq $field){
+                $active = 'style="display:block;"';
+        }
+           $form .= '<div id="'.$field.$tid.'"'
+                   .' class="LC_ContentBox" '.$active.'>'.${$orderhash{$field}}[1]
+                   .'</div>';
         }
     }
     $form .= '</div></div>';
@@ -3543,13 +3615,21 @@ function unselectInactive(nav) {
 currentNav = document.getElementById(nav);
 currentLis = currentNav.getElementsByTagName('LI');
 for (i = 0; i < currentLis.length; i++) {
-	currentLis[i].className = 'i';
+	if(currentLis[i].className == 'right active' || currentLis[i].className == 'right'){
+		currentLis[i].className = 'right';
+	}else{
+		currentLis[i].className = 'i';
+	}
 }
 }
 
 function hideAll(current, nav, data) {
 unselectInactive(nav);
-current.className = 'active';
+if(current.className == 'right'){
+	current.className = 'right active'
+	}else{
+	current.className = 'active';
+}
 currentData = document.getElementById(data);
 currentDivs = currentData.getElementsByTagName('DIV');
 for (i = 0; i < currentDivs.length; i++) {
@@ -3559,7 +3639,21 @@ for (i = 0; i < currentDivs.length; i++)
 }
 }
 
+function openTabs(pageId) {
+	tabnav = document.getElementById(pageId).getElementsByTagName('UL');	
+	if(tabnav.length > 0 ){
+		currentNav = document.getElementById(tabnav[0].id);
+		currentLis = currentNav.getElementsByTagName('LI');
+		for(i = 0; i< currentLis.length; i++){
+			if(currentLis[i].className == 'active') {
+				currentLis[i].onclick;
+			}	
+		}
+	}
+}
+
 function showPage(current, pageId, nav, data) {
+	/*openTabs(pageId);*/
 	hideAll(current, nav, data);
 	unselectInactive(nav);
 	current.className = 'active';