version 1.173, 2006/08/25 23:05:52
|
version 1.174, 2006/09/11 22:48:47
|
Line 237 sub fieldnames {
|
Line 237 sub fieldnames {
|
|
|
if (! defined($file_type) || $file_type ne 'portfolio') { |
if (! defined($file_type) || $file_type ne 'portfolio') { |
%fields = |
%fields = |
(%fields, |
|
'courserestricted' => 'Course Restricting Metadata'); |
|
} |
|
|
|
if (! defined($file_type) || $file_type ne 'portfolio') { |
|
%fields = |
|
(%fields, |
(%fields, |
'domain' => 'Domain', |
'domain' => 'Domain', |
'mime' => 'MIME Type', |
'mime' => 'MIME Type', |
Line 607 sub prettyinput {
|
Line 601 sub prettyinput {
|
return (&select_course()); |
return (&select_course()); |
# return ('<input type="hidden" name="new_courserestricted" value="'.$course_key.'" />'); |
# return ('<input type="hidden" name="new_courserestricted" value="'.$course_key.'" />'); |
} |
} |
|
my $course = $env{'request.course.id'}; |
if (($type eq 'keywords') || ($type eq 'subject') |
if (($type eq 'keywords') || ($type eq 'subject') |
|| ($type eq 'author')||($type eq 'notes') |
|| ($type eq 'author')||($type eq 'notes') |
|| ($type eq 'abstract')|| ($type eq 'title')|| ($type eq 'standards')) { |
|| ($type eq 'abstract')|| ($type eq 'title')|| ($type eq 'standards') |
|
|| (exists($env{'course.'.$env{'request.course.id'}.'metadata.'.$type.'.added'}))) { |
if ($values) { |
if ($values) { |
if ($only_one) { |
if ($only_one) { |
$output .= (&Apache::loncommon::select_form($cur_values_inst[0],'new_'.$type,%meta_options)); |
$output .= (&Apache::loncommon::select_form($cur_values_inst[0],'new_'.$type,%meta_options)); |
Line 1189 ENDEDIT
|
Line 1185 ENDEDIT
|
my %lt=&fieldnames($file_type); |
my %lt=&fieldnames($file_type); |
my $output; |
my $output; |
my @fields; |
my @fields; |
|
my $added_metadata_fields; |
if ($file_type eq 'portfolio') { |
if ($file_type eq 'portfolio') { |
@fields = ('author','title','subject','keywords','abstract', |
if(exists ($env{$Apache::lonpublisher::metadatafields{'courserestricted'}.'.metadata.fieldlist'})) { |
'notes','lowestgradelevel', |
# retrieve fieldnames (in order) from the course restricted list |
'highestgradelevel','standards'); |
@fields = (split /,/,$env{$Apache::lonpublisher::metadatafields{'courserestricted'}.'.metadata.fieldlist'}); |
|
} else { |
|
# no saved field list, use default list |
|
@fields = ('author','title','subject','keywords','abstract', |
|
'notes','lowestgradelevel', |
|
'highestgradelevel','standards'); |
|
$added_metadata_fields = &Apache::lonparmset::get_added_meta_fieldnames(); |
|
$env{$Apache::lonpublisher::metadatafields{'courserestricted'}.'.metadata.fieldlist'} = join (",",@fields); |
|
} |
} else { |
} else { |
@fields = ('author','title','subject','keywords','abstract','notes', |
@fields = ('author','title','subject','keywords','abstract','notes', |
'copyright','customdistributionfile','language', |
'copyright','customdistributionfile','language', |
Line 1234 ENDEDIT
|
Line 1239 ENDEDIT
|
} |
} |
} |
} |
foreach my $field_name (@fields) { |
foreach my $field_name (@fields) { |
|
|
if (defined($env{'form.new_'.$field_name})) { |
if (defined($env{'form.new_'.$field_name})) { |
$Apache::lonpublisher::metadatafields{$field_name}= |
$Apache::lonpublisher::metadatafields{$field_name}= |
join(',',&Apache::loncommon::get_env_multiple('form.new_'.$field_name)); |
join(',',&Apache::loncommon::get_env_multiple('form.new_'.$field_name)); |
Line 1260 ENDEDIT
|
Line 1264 ENDEDIT
|
|
|
} |
} |
} |
} |
|
foreach my $field_name (keys(%$added_metadata_fields)) { |
|
my $course = $env{'request.course.id'}; |
|
$output.=('<p>'.$$added_metadata_fields{$field_name}.': '. |
|
&prettyinput($field_name,$env{'course.'.$env{'request.course.id'}.'metadata.'.$field_name.'.value'}, |
|
'new_'.$field_name,'addedmeta').'</p>') |
|
} |
if ($env{'form.store'}) { |
if ($env{'form.store'}) { |
my $mfh; |
my $mfh; |
my $formname='store'; |
my $formname='store'; |
Line 1269 ENDEDIT
|
Line 1279 ENDEDIT
|
join (',', &Apache::loncommon::get_env_multiple('form.new_keywords')); |
join (',', &Apache::loncommon::get_env_multiple('form.new_keywords')); |
} |
} |
|
|
foreach (sort keys %Apache::lonpublisher::metadatafields) { |
foreach my $field (sort keys %Apache::lonpublisher::metadatafields) { |
next if ($_ =~ /\./); |
next if ($field =~ /\./); |
my $unikey=$_; |
my $unikey=$field; |
$unikey=~/^([A-Za-z]+)/; |
$unikey=~/^([A-Za-z]+)/; |
my $tag=$1; |
my $tag=$1; |
$tag=~tr/A-Z/a-z/; |
$tag=~tr/A-Z/a-z/; |
$file_content.= "\n\<$tag"; |
$file_content.= "\n\<$tag"; |
foreach (split(/\,/, |
foreach my $key (split(/\,/, |
$Apache::lonpublisher::metadatakeys{$unikey}) |
$Apache::lonpublisher::metadatakeys{$unikey}) |
) { |
) { |
my $value= |
my $value= |
$Apache::lonpublisher::metadatafields{$unikey.'.'.$_}; |
$Apache::lonpublisher::metadatafields{$unikey.'.'.$key}; |
$value=~s/\"/\'\'/g; |
$value=~s/\"/\'\'/g; |
$file_content.=' '.$_.'="'.$value.'"' ; |
$file_content.=' '.$key.'="'.$value.'"' ; |
# print $mfh ' '.$_.'="'.$value.'"'; |
# print $mfh ' '.$key.'="'.$value.'"'; |
} |
} |
$file_content.= '>'. |
$file_content.= '>'. |
&HTML::Entities::encode |
&HTML::Entities::encode |