-
- $lt{'ti'}
- $lt{'au'}
- $lt{'kw'}
- $lt{'ln'}
-
-
- $lt{'si'}
- $lt{'la'}
- $lt{'lm'}
- $lt{'sa'}
-
+ my @disp_order = ('0','4','5','6','13','1','2','3','10','14','8','11','7','12','15','16');
+ my %disp_options = &Apache::lonlocal::texthash (
+ 0 => 'Title',
+ 4 => 'Author',
+ 5 => 'Keywords',
+ 6 => 'Language',
+ 13 => 'Notes',
+ 1 => 'Size',
+ 2 => 'Last access',
+ 3 => 'Last modified',
+ 10 => 'Source Available',
+ 14 => 'Abstract',
+ 8 => 'Statistics',
+ 11 => 'Linked/Related Resources',
+ 7 => 'Show resource',
+ 12 => 'Subject',
+ 15 => 'Grade Level',
+ 16 => 'Standards',
+ );
+ my $cell = 0;
+ my $numinrow = 4;
+ $r->print('
+');
# ------------------------------------------------------ Remember where we were
&Apache::loncommon::storeresurl($storeuri);
&Apache::lonhtmlcommon::store_recent('residx',$storeuri,$storeuri);
+# -------------------------------------------------- Check All and Uncheck all
+ if ($env{'form.catalogmode'} eq 'import') {
+ $r->print(' ');
+ $r->print('
');
+ }
# ----------------- output starting row to the indexed file/directory hierarchy
- my $titleclr="#ddffff";
#$r->print(&initdebug());
#$r->print(&writedebug("Omit:@Omit")) if (@Omit);
#$r->print(&writedebug("Only:@Only")) if (@Only);
- $r->print(''."\n");
- $r->print(''."\n");
- $r->print("".&mt('Name')." \n");
- $r->print("".&mt('Title')." \n")
+ $r->print(&Apache::loncommon::start_data_table("LC_tableBrowseRes")
+ .&Apache::loncommon::start_data_table_header_row());
+ $r->print("".&mt('Name')." \n");
+ $r->print(" \n");
+ $r->print("".&mt('Title')." \n")
if ($hash{'display_attrs_0'} == 1);
- $r->print("".&mt("Size")." (".&mt("bytes").") ".
- " \n") if ($hash{'display_attrs_1'} == 1);
- $r->print("".&mt("Last accessed")." \n")
+ $r->print(''.&mt("Size")." (".&mt("bytes").") ".
+ " \n") if ($hash{'display_attrs_1'} == 1);
+ $r->print("".&mt("Last accessed")." \n")
if ($hash{'display_attrs_2'} == 1);
- $r->print("".&mt("Last modified")." \n")
+ $r->print("".&mt("Last modified")." \n")
if ($hash{'display_attrs_3'} == 1);
- $r->print("".&mt("Author(s)")." \n")
+ $r->print("".&mt("Author(s)")." \n")
if ($hash{'display_attrs_4'} == 1);
- $r->print("".&mt("Keywords")." \n")
+ $r->print("".&mt("Keywords")." \n")
if ($hash{'display_attrs_5'} == 1);
- $r->print("".&mt("Language")." \n")
+ $r->print("".&mt("Language")." \n")
if ($hash{'display_attrs_6'} == 1);
- $r->print("".&mt("Usage Statistics")." (".
- &mt("Courses/Network Hits").") ".&mt('updated periodically')." \n")
+ $r->print("".&mt("Usage Statistics")." (".
+ &mt("Courses/Network Hits").") ".&mt('updated periodically')." \n")
if ($hash{'display_attrs_8'} == 1);
- $r->print("".&mt("Source Available")." \n")
+ $r->print("".&mt("Source Available")." \n")
if ($hash{'display_attrs_10'} == 1);
- $r->print("".&mt("Linked/Related Resources")." \n")
+ $r->print("".&mt("Linked/Related Resources")." \n")
if ($hash{'display_attrs_11'} == 1);
- $r->print("".&mt("Resource")." \n")
+ $r->print("".&mt("Resource")." \n")
if ($hash{'display_attrs_7'} == 1);
- $r->print(' ');
+ $r->print("".&mt("Subject")." \n")
+ if ($hash{'display_attrs_12'} == 1);
+ $r->print("".&mt("Notes")." \n")
+ if ($hash{'display_attrs_13'} == 1);
+ $r->print("".&mt("Abstract")." \n")
+ if ($hash{'display_attrs_14'} == 1);
+ $r->print("".&mt("Grade Level")." \n")
+ if ($hash{'display_attrs_15'} == 1);
+ $r->print("".&mt("Standards")." \n")
+ if ($hash{'display_attrs_16'} == 1);
+
+ $r->print(&Apache::loncommon::end_data_table_header_row());
+
+
# ----------------- read in what directories have previously been set to "open"
foreach (keys %hash) {
@@ -580,15 +684,13 @@ END
# -------- recursively go through all the directories and output as appropriate
&scanDir ($r,$toplevel,$indent,\%hash);
-
# -------------------------------------------------------------- end the tables
- $r->print('
');
+ $r->print(&Apache::loncommon::end_data_table());
+
# ---------------------------- embed hidden information useful for group import
$r->print("");
-# -------------------------------------------------------------- end the tables
- $r->print('
');
# --------------------------------------------------- end the output and return
$r->print(&Apache::loncommon::end_page()."\n");
@@ -624,7 +726,7 @@ sub scanDir {
next if($strip =~ /.*\.meta$/ | $obs eq '1');
my (@fileparts) = split(/\./,$strip);
if ($hash{'display_attrs_9'} != 1) {
-# if not all versions to be shown
+ # if not all versions to be shown
if (scalar(@fileparts) >= 3) {
my $fext = pop @fileparts;
my $ov = pop @fileparts;
@@ -662,6 +764,8 @@ sub scanDir {
sub get_list {
my ($r,$uri)=@_;
my @list=();
+ my $listerror;
+
(my $luri = $uri) =~ s/\//_/g;
if ($env{'form.updatedisplay'}) {
foreach (keys %hash) {
@@ -680,16 +784,26 @@ sub get_list {
$uri=~s/\/+/\//g;
foreach (&Apache::lonsequence::attemptread(&Apache::lonnet::filelocation('',$uri))) {
my @ratpart=split(/\:/,$_);
- push @list,$ratpart[1];
+ push(@list,&LONCAPA::map::qtescape($ratpart[1]));
}
$hash{'dirlist_files_'.$luri} = join("\n",@list);
} else {
# is really a directory
- @list = &Apache::lonnet::dirlist($uri);
+ (my $listref,$listerror) = &Apache::lonnet::dirlist($uri);
+ if (ref($listref) eq 'ARRAY') {
+ @list = @{$listref};
+ }
$hash{'dirlist_files_'.$luri} = join("\n",@list);
$hash{'dirlist_timestamp_files_'.$luri} = time;
}
- return @list=&match_ext($r,@list);
+#Checking for error messages associated with empty directories or inaccessible servers (See Bug 4984)
+ if (($listerror eq 'no_such_dir') || ($listerror eq 'no_such_host') || ($listerror eq 'no_host')) {
+ $r->print("" . &mt("Directory does not exist."). "
");
+ } elsif ($listerror eq 'con_lost') {
+ $r->print("" . &mt("Directory temporarily not accessible."). "
");
+ }
+
+ return @list=&match_ext($r,@list);
}
sub dynmetaread {
@@ -785,7 +899,7 @@ sub display_line {
$pathprefix=$startdir;
}
my $dirptr=16384;
- my $fileclr="#ffffe6";
+#SB my $fileclr="#ffffe6";
my $iconpath= $r->dir_config('lonIconsURL') . '/';
my @filecom = split (/\&/,$line);
@@ -794,10 +908,11 @@ sub display_line {
my $fnptr = $filecom[3]&$dirptr;
my $msg = &mt('View').' '.$filecom[0].' '.&mt('resources');
$msg = &mt('Close').' '.$filecom[0].' '.&mt('directory') if $diropen eq 'opened';
+ my $nowOpen = ($diropen eq 'opened' ? 1 : 0);
my $tabtag='';
my $i=0;
- while ($i<=11) {
+ while ($i<=16) {
$tabtag=join('',$tabtag," ")
if ($i != 9 &&
$hash{'display_attrs_'.$i} == 1);
@@ -812,193 +927,209 @@ sub display_line {
$updir='/'.(split(/\.(page|sequence)\/\//,$startdir))[-1];
$updir=~s/\/+/\//g;
- $r->print("$extrafield");
+#SB $r->print(" $extrafield");
+ $r->print(&Apache::loncommon::start_data_table_row()); # valign="$valign" ?!?
+ $r->print($extrafield);
$r->print("\n");
$r->print ('$tabtag \n");
+ $r->print(&mt("Up")."$tabtag");
+ $r->print(&Apache::loncommon::end_data_table_row());
return OK;
}
# Do we have permission to look at this?
-
- if($filecom[15] ne '1') { return OK if (!&Apache::lonnet::allowed('bre',$pathprefix.$filecom[0])); }
+ if($filecom[15] ne '1') { return OK if ((!&Apache::lonnet::allowed('bre',$pathprefix.$filecom[0])) && (!&Apache::lonnet::allowed('bro',$pathprefix.$filecom[0]))); }
# make absolute links appear on different background
- if ($absolute) { $fileclr='#ccdd99'; }
+#SB if ($absolute) { $fileclr='#ccdd99'; }
# display domain
if ($filecom[1] eq 'domain') {
$r->print (' '."\n")
if ($env{'form.dirPointer'} eq "on");
- $r->print(" $extrafield");
+#SB $r->print(" $extrafield");
+ $r->print(&Apache::loncommon::start_data_table_row()); # valign="$valign" ?!?"
+ $r->print($extrafield);
$r->print("");
&begin_form ($r,$filecom[0]);
my $anchor = $filecom[0];
- $anchor =~ s/\///g;
+ $anchor =~ s/\W//g;
$r->print (' ');
- $r->print (' ');
- $r->print (' print (' name="'.$msg.'" height="22" type="image" border="0" />'.
+$r->print (' ');
+ $r->print (' print (' alt="'.$msg.'" class="LC_fileicon" /> '.
"\n");
my $quotable_filecom = &Apache::loncommon::escape_single($filecom[0]);
$r->print (' print (' border="0" /> '."\n");
- $r->print (&mt("Domain")." - $listname ");
- if ($Apache::lonnet::domaindescription{$listname}) {
- $r->print("(".$Apache::lonnet::domaindescription{$listname}.
+ $r->print (' class="LC_fileicon" />'."\n");
+ $r->print (&mt("Domain")." - $listname ");
+ if (&Apache::lonnet::domain($listname,'description')) {
+ $r->print(" (".&Apache::lonnet::domain($listname,'description').
")");
}
- $r->print ("$tabtag \n");
+ $r->print("$tabtag");
+ $r->print(&Apache::loncommon::end_data_table_row());
return OK;
# display user directory
}
if ($filecom[1] eq 'user') {
- $r->print(" $extrafield");
- $r->print("\n");
+ # $r->print(" $extrafield");
my $curdir = $startdir.$filecom[0].'/';
my $anchor = $curdir;
- $anchor =~ s/\///g;
+ $anchor =~ s/\W//g;
+#SB $r->print(" $extrafield");
+ $r->print(&Apache::loncommon::start_data_table_row()
+ .$extrafield.' ');
&begin_form ($r,$curdir);
$r->print (' '."\n");
+ 'whitespace_21.gif" class="LC_icon" />'."\n");
$r->print (' ');
- $r->print (' print (' name="'.$msg.'" height="22" type="image" border="0" />'.
+ $r->print ('');
+ $r->print (' print (' alt="'.$msg.'"/> '.
"\n");
my $quotable_curdir = &Apache::loncommon::escape_single($curdir);
$r->print (' ');
+ .'\')"> ');
my $domain=(split(m|/|,$startdir))[2];
my $plainname=&Apache::loncommon::plainname($listname,$domain);
- $r->print ($listname);
- if (defined($plainname) && $plainname) { $r->print(" ($plainname) "); }
- $r->print (''.$tabtag.' '."\n");
- return OK;
+ $r->print ($listname.'');
+
+ if (defined($plainname) && $plainname) { $r->print(" ($plainname) "); }
+# Wishlistlink
+ $r->print(''.
+ ' '.$tabtag);
+ $r->print(&Apache::loncommon::end_data_table_row());
+ return OK;
}
# display file
- if (($fnptr == 0 and $filecom[3] ne '') or $absolute) {
- my $filelink = $pathprefix.$filecom[0];
- my @file_ext = split (/\./,$listname);
- my $curfext = $file_ext[-1];
- if (@Omit) {
- foreach (@Omit) { return OK if ($curfext eq $_); }
- }
- if (@Only) {
- my $skip = 1;
- foreach (@Only) { $skip = 0 if ($curfext eq $_); }
- return OK if ($skip > 0);
- }
- # Set the icon for the file
- my $iconname = &Apache::loncommon::icon($listname);
- $r->print("");
+ if (($fnptr == 0 and $filecom[3] ne '') or $absolute) {
+ my $title;
+ my $filelink = $pathprefix.$filecom[0];
+ if ($hash{'display_attrs_0'} == 1) {
+ $title = &Apache::lonnet::gettitle($filelink);
+ }
+ my @file_ext = split (/\./,$listname);
+ my $curfext = $file_ext[-1];
+ if (@Omit) {
+ foreach (@Omit) { return OK if (lc($curfext) eq $_); }
+ }
+ if (@Only) {
+ my $skip = 1;
+ foreach (@Only) { $skip = 0 if (lc($curfext) eq $_); }
+ return OK if ($skip > 0);
+ }
+ # Set the icon for the file
+ my $iconname = &Apache::loncommon::icon($listname);
+#SB $r->print(" );
+ $r->print(&Apache::loncommon::start_data_table_row()); #SB valign="$valign" ?!?
+ $r->print('');
if ($env{'form.catalogmode'} eq 'interactive') {
my $quotable_filelink = &Apache::loncommon::escape_single($filelink);
$r->print("");
- $r->print(" ".
+ $r->print(" ".
"\n");
- $r->print(" ");
+ $r->print(' ');
} elsif ($env{'form.catalogmode'} eq 'import') {
$r->print(" ");
+ $r->print(' ');
$hash{"pre_${fnum}_link"}=$filelink;
+ $hash{"pre_${fnum}_title"}=$title;
+ if (!$hash{"pre_${fnum}_title"}) {
+ $hash{"pre_${fnum}_title"} = 'Not_retrieved';
+ }
$fnum++;
}
# Form to open or close sequences
if ($filelink=~/\.(page|sequence)$/) {
my $curdir = $startdir.$filecom[0].'/';
- my $anchor = $curdir;
- $anchor =~ s/\///g;
&begin_form($r,$curdir);
$indent--;
}
# General indentation
- if ($indent > 0 and $indent < 11) {
- $r->print(" \n");
- } elsif ($indent >0) {
- my $ten = int($indent/10.);
- my $rem = $indent%10.0;
my $count = 0;
- while ($count < $ten) {
- $r->print(" \n");
- $count++;
+ while ($count < $indent) {
+ $r->print(' ');
+ $count++;
}
- $r->print(" \n") if $rem > 0;
- }
# Sequence open/close icon
if ($filelink=~/\.(page|sequence)$/) {
my $curdir = $startdir.$filecom[0].'/';
my $anchor = $curdir;
- $anchor =~ s/\///g;
+ $anchor =~ s/\W//g;
$r->print (' ');
- $r->print (' print (' name="'.$msg.'" height="22" type="image" border="0" />'.
+ $r->print (' ');
+ $r->print ('');
+ $r->print (' print (' alt="'.$msg.'" /> '.
"\n");
}
# Filetype icons
- $r->print(" \n");
+ $r->print(" \n");
my $quotable_filelink = &Apache::loncommon::escape_single($filelink);
-
- $r->print (" $listname ");
-
- $r->print (" (metadata ) ");
+ $r->print (" $listname ");
+ $quotable_filelink = &Apache::loncommon::escape_single($filelink.'.meta');
+ &Apache::loncommon::inhibit_menu_check(\$quotable_filelink);
+ $r->print (" (".&mt('metadata')." ) ");
# Close form to open/close sequence
if ($filelink=~/\.(page|sequence)$/) {
$r->print('');
}
$r->print(" \n");
+# Wishlistlink
+ $r->print(''.
+ ' ');
if ($hash{'display_attrs_0'} == 1) {
- my $title = &Apache::lonnet::gettitle($filelink,'title');
$r->print(' '.($title eq '' ? ' ' : $title).
' '."\n");
}
- $r->print(' ',
+ $r->print(' ',
$filecom[8]," \n")
if $hash{'display_attrs_1'} == 1;
- $r->print(' '.
- (localtime($filecom[9]))." \n")
+ $r->print(' '.
+ (&Apache::lonlocal::locallocaltime($filecom[9]))." \n")
if $hash{'display_attrs_2'} == 1;
- $r->print(' '.
- (localtime($filecom[10]))." \n")
+ $r->print(' '.
+ (&Apache::lonlocal::locallocaltime($filecom[10]))." \n")
if $hash{'display_attrs_3'} == 1;
if ($hash{'display_attrs_4'} == 1) {
my $author = &Apache::lonnet::metadata($filelink,'author');
- $r->print(' '.($author eq '' ? ' ' : $author).
+ $r->print(' '.($author eq '' ? ' ' : $author).
" \n");
}
if ($hash{'display_attrs_5'} == 1) {
@@ -1007,7 +1138,6 @@ sub display_line {
$r->print(' '.($keywords eq '' ? ' ' : $keywords).
" \n");
}
-#'
if ($hash{'display_attrs_6'} == 1) {
my $lang = &Apache::lonnet::metadata($filelink,'language');
@@ -1019,17 +1149,13 @@ sub display_line {
# statistics
&dynmetaread($filelink);
$r->print("");
- &dynmetaprint($r,$filelink,'count');
- &dynmetaprint($r,$filelink,'course');
- &dynmetaprint($r,$filelink,'stdno');
- &dynmetaprint($r,$filelink,'avetries');
- &dynmetaprint($r,$filelink,'difficulty');
- &dynmetaprint($r,$filelink,'disc');
- &dynmetaprint($r,$filelink,'clear');
- &dynmetaprint($r,$filelink,'technical');
- &dynmetaprint($r,$filelink,'correct');
- &dynmetaprint($r,$filelink,'helpful');
- &dynmetaprint($r,$filelink,'depth');
+
+ for (qw(count course stdno avetries difficulty disc clear technical
+ correct helpful depth)) {
+
+ dynmetaprint($r,$filelink,$_);
+ }
+
$r->print(" \n");
}
@@ -1038,10 +1164,11 @@ sub display_line {
if($source eq 'open') {
my $sourcelink = &Apache::lonsource::make_link($filelink,$listname);
my $quotable_sourcelink = &Apache::loncommon::escape_single($sourcelink);
+ &Apache::loncommon::inhibit_menu_check(\$quotable_sourcelink);
$r->print(''."Yes "." \n");
+ " target=\"_self\">".&mt('Source Code')." "."\n");
} else { #A cuddled else. :P
$r->print(" \n");
}
@@ -1051,73 +1178,111 @@ sub display_line {
&dynmetaread($filelink);
$r->print('');
&coursecontext($r,$filelink);
- &dynmetaprint($r,$filelink,'goto_list');
- &dynmetaprint($r,$filelink,'comefrom_list');
- &dynmetaprint($r,$filelink,'sequsage_list');
- &dynmetaprint($r,$filelink,'dependencies');
- &dynmetaprint($r,$filelink,'course_list');
+ for (qw(goto_list comefrom_list sequsage_list dependencies course_list)) {
+ dynmetaprint($r,$filelink,$_);
+ }
$r->print(' ');
}
- if ($hash{'display_attrs_7'} == 1) {
+
+
+
+ if ($hash{'display_attrs_7'} == 1) {
# Show resource
my $output=&showpreview($filelink);
- $r->print(' '.($output eq '' ? ' ':$output).
+ $r->print(' '.($output eq '' ? ' ':$output).
" \n");
- }
- $r->print(" \n");
}
+
+ if ($hash{'display_attrs_12'} == 1) {
+ my $subject = &Apache::lonnet::metadata($filelink,'subject');
+ $r->print(' '.($subject eq '' ? ' ' : $subject).
+ " \n");
+ }
+
+ if ($hash{'display_attrs_13'} == 1) {
+ my $notes = &Apache::lonnet::metadata($filelink,'notes');
+ $r->print(' '.($notes eq '' ? ' ' : $notes).
+ " \n");
+ }
+
+ if ($hash{'display_attrs_14'} == 1) {
+ my $abstract = &Apache::lonnet::metadata($filelink,'abstract');
+ $r->print(' '.($abstract eq '' ? ' ' : $abstract).
+ " \n");
+ }
+
+ if ($hash{'display_attrs_15'} == 1) {
+ my $gradelevel = &Apache::lonnet::metadata($filelink,'gradelevel');
+ $r->print(' '.($gradelevel eq '' ? ' ' : $gradelevel).
+ " \n");
+ }
+
+ if ($hash{'display_attrs_16'} == 1) {
+ my $standards = &Apache::lonnet::metadata($filelink,'standards');
+ $r->print(' '.($standards eq '' ? ' ' : $standards).
+ " \n");
+ }
+
+ $r->print(&Apache::loncommon::end_data_table_row());
+}
+
+
# -- display directory
if ($fnptr == $dirptr) {
my $curdir = $startdir.$filecom[0].'/';
my $anchor = $curdir;
- $anchor =~ s/\///g;
- $r->print("$extrafield");
+ $anchor =~ s/\W//g;
+#SB $r->print(" $extrafield");
+ $r->print(&Apache::loncommon::start_data_table_row()); # SB: bgcolor suggestion: darkgrey ("LC_info_row"?!?)
+# $r->print(' ');
+ $r->print($extrafield.'');
&begin_form ($r,$curdir);
my $indentm1 = $indent-1;
- if ($indentm1 < 11 and $indentm1 > 0) {
- $r->print(" \n");
- } else {
- my $ten = int($indentm1/10.);
- my $rem = $indentm1%10.0;
- my $count = 0;
- while ($count < $ten) {
- $r->print (" \n");
- $count++;
- }
- $r->print (" \n") if $rem > 0;
+ my $count = 0;
+ while ($count < $indentm1) {
+ $r->print (' ');
+ $count++;
}
$r->print (' ');
- $r->print (' print (' name="'.$msg.'" height="22" type="image" border="0" />'.
+ $r->print (' ');
+ $r->print (' print (' alt="'.$msg.'" class="LC_fileicon" /> '.
"\n");
my $quotable_curdir = &Apache::loncommon::escape_single($curdir);
- $r->print (''
- .' '.
- "\n");
- $r->print ("$listname \n");
+
+ my $location = &Apache::loncommon::lonhttpdurl("/adm/lonIcons");
+ my $icon = "navmap.folder.".($nowOpen ? "open":"closed").'.gif';
+ $r->print (''
+ .' '
+ ."\n");
+ $r->print ("$listname ");
+# Wishlistlink
+ $r->print(''.
+ ' ');
# Attributes
my $filelink = $startdir.$filecom[0].'/default';
if ($hash{'display_attrs_0'} == 1) {
- my $title = &Apache::lonnet::gettitle($filelink,'title');
+ my $title = &Apache::lonnet::gettitle($filelink);
$r->print(' '.($title eq '' ? ' ' : $title).
' '."\n");
}
- $r->print(' ',
+ $r->print(' ',
$filecom[8]," \n")
if $hash{'display_attrs_1'} == 1;
- $r->print(' '.
- (localtime($filecom[9]))." \n")
+ $r->print(' '.
+ (&Apache::lonlocal::locallocaltime($filecom[9]))." \n")
if $hash{'display_attrs_2'} == 1;
- $r->print(' '.
- (localtime($filecom[10]))." \n")
+ $r->print(' '.
+ (&Apache::lonlocal::locallocaltime($filecom[10]))." \n")
if $hash{'display_attrs_3'} == 1;
if ($hash{'display_attrs_4'} == 1) {
@@ -1137,19 +1302,50 @@ sub display_line {
$r->print(' '.($lang eq '' ? ' ' : $lang).
" \n");
}
+
if ($hash{'display_attrs_8'} == 1) {
$r->print(' ');
}
if ($hash{'display_attrs_10'} == 1) {
$r->print(' ');
}
- if ($hash{'display_attrs_11'} == 1) {
- $r->print(' ');
- }
if ($hash{'display_attrs_7'} == 1) {
$r->print(' ');
- }
- $r->print(' ');
+ }
+ if ($hash{'display_attrs_11'} == 1) {
+ $r->print(' ');
+ }
+ if ($hash{'display_attrs_12'} == 1) {
+ my $subject = &Apache::lonnet::metadata($filelink,'subject');
+ $r->print(' '.($subject eq '' ? ' ' : $subject).
+ " \n");
+ }
+ if ($hash{'display_attrs_13'} == 1) {
+ my $notes = &Apache::lonnet::metadata($filelink,'notes');
+ $r->print(' '.($notes eq '' ? ' ' : $notes).
+ " \n");
+ }
+
+ if ($hash{'display_attrs_14'} == 1) {
+ my $abstract = &Apache::lonnet::metadata($filelink,'abstract');
+ $r->print(' '.($abstract eq '' ? ' ' : $abstract).
+ " \n");
+ }
+
+ if ($hash{'display_attrs_15'} == 1) {
+ my $gradelevel = &Apache::lonnet::metadata($filelink,'gradelevel');
+ $r->print(' '.($gradelevel eq '' ? ' ' : $gradelevel).
+ " \n");
+ }
+
+ if ($hash{'display_attrs_16'} == 1) {
+ my $standards = &Apache::lonnet::metadata($filelink,'standards');
+ $r->print(' '.($standards eq '' ? ' ' : $standards).
+ " \n");
+ }
+
+
+ $r->print(&Apache::loncommon::end_data_table_row());
}
}
@@ -1198,12 +1394,11 @@ sub showpreview {
close(FH);
}
}
- $output=''.$output.' ';
} elsif ($embstyle eq 'img') {
$output=' ';
} elsif ($filelink=~m{^/res/($match_domain)/($match_username)/}) {
$output=' ';
}
return $output;
@@ -1225,15 +1420,17 @@ sub dynmetaprint {
sub begin_form {
my ($r,$uri) = @_;
my $anchor = $uri;
- $anchor =~ s/\///g;
+ $anchor =~ s/\W//g;
+ $uri=&Apache::loncommon::escape_single($uri);
$r->print ('