--- loncom/interface/londocs.pm	2005/09/20 07:52:03	1.206
+++ loncom/interface/londocs.pm	2005/11/04 21:36:56	1.209
@@ -1,7 +1,7 @@
 # The LearningOnline Network
 # Documents
 #
-# $Id: londocs.pm,v 1.206 2005/09/20 07:52:03 albertel Exp $
+# $Id: londocs.pm,v 1.209 2005/11/04 21:36:56 albertel Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -1215,6 +1215,8 @@ sub editor {
         $r->print('<table>');
         foreach (@Apache::lonratedt::order) {
            my ($name,$url)=split(/\:/,$Apache::lonratedt::resources[$_]);
+	   $name=&Apache::lonratsrv::qtescape($name);
+	   $url=&Apache::lonratsrv::qtescape($url);
            unless ($name) {  $name=(split(/\//,$url))[-1]; }
            unless ($name) { $idx++; next; }
            $r->print(&entryline($idx,$name,$url,$folder,$allowed,$_,$coursenum));
@@ -1719,6 +1721,24 @@ sub checkonthis {
 
 
 #
+# ----------------------------------------------------------------- List Symbs
+# 
+sub list_symbs {
+   my $r=shift; 
+   my $html=&Apache::lonxml::xmlbegin();
+   $r->print($html.'<head><title>Symb List</title></head>'.
+              &Apache::loncommon::bodytag('Symb List'));
+   my $navmap = Apache::lonnavmaps::navmap->new();
+   $r->print("<pre>\n");
+   foreach my $res ($navmap->retrieveResources()) {
+       $r->print($res->compTitle()."\t".$res->symb()."\n");
+   }
+   $r->print("\n</pre>\n");
+   $r->print('<a href="/adm/coursedocs">'.&mt('Return to DOCS').'</a>');
+}
+
+
+#
 # -------------------------------------------------------------- Verify Content
 # 
 sub verifycontent {
@@ -2057,19 +2077,20 @@ $help{'Caching'}.'</font></h3></form>'."
 # ================================================================ Main Handler
 sub handler {
     my $r = shift;
+    &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'});
     &Apache::loncommon::content_type($r,'text/html');
     $r->send_http_header;
     return OK if $r->header_only;
 
 # --------------------------------------------- Initialize help topics for this
-  foreach ('Adding_Course_Doc','Main_Course_Documents',
-           'Adding_External_Resource','Navigate_Content',
-           'Adding_Folders','Docs_Overview', 'Load_Map',
-           'Supplemental','Score_Upload_Form','Adding_Pages',
-           'Importing_LON-CAPA_Resource','Uploading_From_Harddrive',
-	   'Check_Resource_Versions','Verify_Content') {
-      $help{$_}=&Apache::loncommon::help_open_topic('Docs_'.$_);
-  }
+    foreach ('Adding_Course_Doc','Main_Course_Documents',
+	     'Adding_External_Resource','Navigate_Content',
+	     'Adding_Folders','Docs_Overview', 'Load_Map',
+	     'Supplemental','Score_Upload_Form','Adding_Pages',
+	     'Importing_LON-CAPA_Resource','Uploading_From_Harddrive',
+	     'Check_Resource_Versions','Verify_Content') {
+	$help{$_}=&Apache::loncommon::help_open_topic('Docs_'.$_);
+    }
     # Composite help files
     $help{'Syllabus'} = &Apache::loncommon::help_open_topic(
 		    'Docs_About_Syllabus,Docs_Editing_Templated_Pages');
@@ -2083,13 +2104,18 @@ sub handler {
 		  'Docs_About_My_Personal_Info,Docs_Editing_Templated_Pages');
     $help{'Caching'} = &Apache::loncommon::help_open_topic('Caching');
 
-  if ($env{'form.verify'}) {
+# does this user have privileges to modify docs
+    my $allowed=&Apache::lonnet::allowed('mdc',$env{'request.course.id'});
+
+  if ($allowed && $env{'form.verify'}) {
       &verifycontent($r);
-  } elsif ($env{'form.versions'}) {
+  } elsif ($allowed && $env{'form.listsymbs'}) {
+      &list_symbs($r);
+  } elsif ($allowed && $env{'form.versions'}) {
       &checkversions($r);
-  } elsif ($env{'form.dumpcourse'}) {
+  } elsif ($allowed && $env{'form.dumpcourse'}) {
       &dumpcourse($r);
-  } elsif ($env{'form.exportcourse'}) {
+  } elsif ($allowed && $env{'form.exportcourse'}) {
       &exportcourse($r);
   } else {
 # is this a standard course?
@@ -2098,7 +2124,6 @@ sub handler {
     my $forcestandard = 0;
     my $forcesupplement;
     my $script='';
-    my $allowed;
     my $events='';
     my $showdoc=0;
     my $containertag;
@@ -2124,13 +2149,11 @@ sub handler {
     }
     unless ($showdoc) { # got called from remote
        if (($env{'form.folder'}=~/^default_/) || 
-          ($env{'form.folder'} =~ m#^\d+/(pages|sequences)/#)) {
+          ($env{'form.folder'} =~ m:^\d+/(pages|sequences)/:)) {
            $forcestandard = 1;
        } 
        $forcesupplement=($env{'form.folder'}=~/^supplemental_/);
 
-# does this user have privileges to post, etc?
-       $allowed=&Apache::lonnet::allowed('mdc',$env{'request.course.id'});
        if ($allowed) { 
          &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['cmd']);
          $script=&Apache::lonratedt::editscript('simple'); 
@@ -2452,6 +2475,7 @@ ENDNEWSCRIPT
        my %lt=&Apache::lonlocal::texthash(
 					 'vc' => 'Verify Content',
 					 'cv' => 'Check/Set Resource Versions',
+					 'ls' => 'List Symbs',
 					  );
 
        my $folderpath=$env{'form.folderpath'};
@@ -2486,7 +2510,9 @@ $uploadtag
     <input type="submit" name="versions" value="$lt{'cv'}" />$help{'Check_Resource_Versions'}
 $dumpbut
 $exportbut
-</td></tr></table>
+</td><!-- <td bgcolor="#DDDDCC">
+    <input type="submit" name="listsymbs" value="$lt{'ls'}" />
+</td>--></tr></table>
 </form>
 ENDCOURSEVERIFY
        $r->print(&Apache::loncommon::help_open_topic('Docs_Adding_Course_Doc',