Diff for /loncom/interface/lonparmset.pm between versions 1.338 and 1.339

version 1.338, 2006/09/28 23:58:53 version 1.339, 2006/10/07 20:02:16
Line 3221  sub addmetafield { Line 3221  sub addmetafield {
     $r->print(&Apache::lonhtmlcommon::breadcrumbs('Add Metadata Field'));      $r->print(&Apache::lonhtmlcommon::breadcrumbs('Add Metadata Field'));
     my $dom = $env{'course.'.$env{'request.course.id'}.'.domain'};      my $dom = $env{'course.'.$env{'request.course.id'}.'.domain'};
     my $crs = $env{'course.'.$env{'request.course.id'}.'.num'};      my $crs = $env{'course.'.$env{'request.course.id'}.'.num'};
     if (exists($env{'form.fieldname'})) {      if (exists($env{'form.undelete'})) {
           my @meta_fields = &Apache::loncommon::get_env_multiple('form.undelete');
           foreach my $meta_field(@meta_fields) {
               my $options = $env{'course.'.$env{'request.course.id'}.'.metadata.'.$meta_field.'.options'};
               $options =~ s/deleted//;
               $options =~ s/,,/,/;
               my $put_result = &Apache::lonnet::put('environment',
                                           {'metadata.'.$meta_field.'.options'=>$options},$dom,$crs);
                                           
               $r->print('Undeleted Metadata Field <strong>'.$env{'course.'.$env{'request.course.id'}.'.metadata.'.$meta_field.'.added'}."</strong> with result ".$put_result.'<br />');
           }
           $r->print('<form action="" method="post">');
           $r->print('<input type="hidden" name="action" value="setrestrictmeta" />');
           $r->print('<input type="submit" value="Continue" />');
       } elsif (exists($env{'form.fieldname'})) {
         my $meta_field = $env{'form.fieldname'};          my $meta_field = $env{'form.fieldname'};
         my $display_field = $env{'form.fieldname'};          my $display_field = $env{'form.fieldname'};
         $meta_field =~ s/\W/_/g;          $meta_field =~ s/\W/_/g;
Line 3232  sub addmetafield { Line 3246  sub addmetafield {
                              'metadata.'.$meta_field.'.options'=>""},$dom,$crs);                               'metadata.'.$meta_field.'.options'=>""},$dom,$crs);
         $r->print('Added new Metadata Field '.$env{'form.fieldname'}." with result ".$put_result);          $r->print('Added new Metadata Field '.$env{'form.fieldname'}." with result ".$put_result);
     } else {      } else {
         $r->print('<form method="post" action="/adm/parmset?action=addmetadata"');          my $fields = &get_deleted_meta_fieldnames();
           if ($fields) {
               $r->print('You may undelete previously deleted fields.<br />Check those you wish to undelete and click Undelete.<br />');
               $r->print('<form method="post" action="">');
               foreach my $key(keys(%$fields)) {
                   $r->print('<input type="checkbox" name="undelete" value="'.$key.'" />'.$$fields{$key}.'<br /');
               }
               $r->print('<input type="submit" name="undelete" value="Undelete" />');
               $r->print('</form>');
           }
           $r->print('<hr /><strong>Or</strong> you may enter a new metadata field name.<form method="post" action="/adm/parmset?action=addmetadata"');
         $r->print('<input type="text" name="fieldname" /><br />');          $r->print('<input type="text" name="fieldname" /><br />');
         $r->print('<input type="submit" value="Add Metadata Field" />');          $r->print('<input type="submit" value="Add Metadata Field" />');
         $r->print('</form>');          $r->print('</form>');
Line 3320  sub get_added_meta_fieldnames { Line 3344  sub get_added_meta_fieldnames {
         }          }
     }      }
     return \%fields;      return \%fields;
   }
   sub get_deleted_meta_fieldnames {
       my %fields;
       my ($default_fields) = @_;
       foreach my $key(%env) {
           if ($key =~ m/\.metadata\.(.+)\.added$/) {
               my $field_name = $1;
               if ($env{'course.'.$env{'request.course.id'}.'.metadata.'.$field_name.'.options'} =~ m/deleted/) {
                   my ($display_field_name) = $env{$key};
                   $fields{$field_name} = $display_field_name;
               }
           }
       }
       return \%fields;
 }  }
 sub defaultsetter {  sub defaultsetter {
     my ($r) = @_;      my ($r) = @_;

Removed from v.1.338  
changed lines
  Added in v.1.339


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