Diff for /loncom/interface/lonmeta.pm between versions 1.47 and 1.48

version 1.47, 2003/12/29 19:01:27 version 1.48, 2003/12/29 21:17:00
Line 283  sub prettyprint { Line 283  sub prettyprint {
  $value=~s/(\w+)(\:|\@)(\w+)/&authordisplay($1,$3)/gse;   $value=~s/(\w+)(\:|\@)(\w+)/&authordisplay($1,$3)/gse;
  return $value;   return $value;
     }      }
   # Gradelevel
       if (($type eq 'lowestgradelevel') ||
    ($type eq 'highestgradelevel')) {
    return &Apache::loncommon::gradeleveldescription($value);
       }
 # Only for advance users below  # Only for advance users below
     unless ($ENV{'user.adv'}) { return '<i>- '.&mt('not displayed').' -</i>' };      unless ($ENV{'user.adv'}) { return '<i>- '.&mt('not displayed').' -</i>' };
 # File  # File
Line 322  sub prettyprint { Line 327  sub prettyprint {
 }  }
 # ============================================== Pretty input of metadata field  # ============================================== Pretty input of metadata field
   
   sub selectbox {
       my ($name,$value,$functionref,@idlist)=@_;
       my $selout='<select name="'.$name.'">';
       foreach (@idlist) {
           $selout.='<option value=\''.$_.'\'';
           if ($_ eq $value) {
       $selout.=' selected>'.&{$functionref}($_).'</option>';
    }
           else {$selout.='>'.&{$functionref}($_).'</option>';}
       }
       return $selout.'</select>';
   }
   
   
 sub prettyinput {  sub prettyinput {
     my ($type,$value,$fieldname)=@_;      my ($type,$value,$fieldname,$formname)=@_;
   # Language
       if ($type eq 'language') {
    return &selectbox($fieldname,
     $value,
     \&Apache::loncommon::languagedescription,
     (&Apache::loncommon::languageids));
       }
   # Copyright
       if ($type eq 'copyright') {
    return &selectbox($fieldname,
     $value,
     \&Apache::loncommon::copyrightdescription,
     (&Apache::loncommon::copyrightids));
       }
   # Gradelevels
       if (($type eq 'lowestgradelevel') ||
    ($type eq 'highestgradelevel')) {
    return &Apache::loncommon::select_level_form($value,$fieldname);
       }
   # Obsolete
       if ($type eq 'obsolete') {
    return '<input type="checkbox" name="'.$fieldname.'"'.
       ($value?' checked="1"':'').' />'; 
       }
   # Obsolete replacement file
       if ($type eq 'obsoletereplacement') {
    return '<input type="text" name="'.$fieldname.
       '" size="60" value="'.$value.'" /><a href="javascript:openbrowser'.
       "('".$formname."','".$fieldname."'".
       ",'')\">".&mt('Select').'</a>'; 
      }
   # Customdistribution file
       if ($type eq 'customdistributionfile') {
    return '<input type="text" name="'.$fieldname.
       '" size="60" value="'.$value.'" /><a href="javascript:openbrowser'.
       "('".$formname."','".$fieldname."'".
       ",'rights')\">".&mt('Select').'</a>'; 
       }
   # Dates
       if (($type eq 'creationdate') ||
    ($type eq 'lastrevisiondate')) {
    return &Apache::lonhtmlcommon::date_setter($formname,
      $fieldname,$value);
       }
   # No pretty input found
       $value=~s/^\s+//gs;
       $value=~s/\s+$//gs;
       $value=~s/\s+/ /gs;
       $value=~s/\"/\&quod\;/gs;
       return '<input type="text" name="'.$fieldname.'" size="80" value="'.$value.'" />'; 
 }  }
   
 # ================================================================ Main Handler  # ================================================================ Main Handler
Line 526  ENDHEAD Line 595  ENDHEAD
 <html><head><title>Edit Catalog Information</title></head>  <html><head><title>Edit Catalog Information</title></head>
 $bodytag  $bodytag
 <h1>$displayfile</h1>  <h1>$displayfile</h1>
 <form method="post">  <form method="post" name="defaultmeta">
 ENDEDIT  ENDEDIT
     $r->print('<script language="JavaScript">'.
       &Apache::loncommon::browser_and_searcher_javascript.
       '</script>');
    my %lt=&fieldnames();     my %lt=&fieldnames();
    foreach ('author','title','subject','keywords','abstract','notes',     foreach ('author','title','subject','keywords','abstract','notes',
             'copyright','customdistributionfile','language',              'copyright','customdistributionfile','language','standards',
       'lowestgradelevel','highestgradelevel',
             'obsolete','obsoletereplacement') {              'obsolete','obsoletereplacement') {
        if ($ENV{'form.new_'.$_}) {         $Apache::lonpublisher::metadatafields{$_}=$ENV{'form.new_'.$_};
    $Apache::lonpublisher::metadatafields{$_}=$ENV{'form.new_'.$_};         unless ($Apache::lonpublisher::metadatafields{'copyright'}) {
        }     $Apache::lonpublisher::metadatafields{'copyright'}='default';
        if (m/copyright/) {  
    $r->print(&Apache::lonpublisher::selectbox($lt{$_},'new_'.$_,  
        ($Apache::lonpublisher::metadatafields{$_}?  
  $Apache::lonpublisher::metadatafields{$_}:'default'),  
        \&Apache::loncommon::copyrightdescription,  
        (&Apache::loncommon::copyrightids)));  
        } elsif (m/language/) {  
    $r->print(&Apache::lonpublisher::selectbox($lt{$_},'new_'.$_,  
       $Apache::lonpublisher::metadatafields{$_},  
       \&Apache::loncommon::languagedescription,  
       (&Apache::loncommon::languageids)));  
        } else {  
    $r->print(&Apache::lonpublisher::textfield($lt{$_},'new_'.$_,  
      $Apache::lonpublisher::metadatafields{$_}));  
        }         }
          $r->print('<p>'.$lt{$_}.': '.&prettyinput($_,
     $Apache::lonpublisher::metadatafields{$_},
     'new_'.$_,'defaultmeta').'</p>');
    }     }
    if ($ENV{'form.store'}) {     if ($ENV{'form.store'}) {
       my $mfh;        my $mfh;

Removed from v.1.47  
changed lines
  Added in v.1.48


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>