Diff for /loncom/interface/lonmeta.pm between versions 1.153 and 1.155

version 1.153, 2006/03/16 22:12:17 version 1.155, 2006/05/20 06:34:50
Line 296  sub fieldnames { Line 296  sub fieldnames {
 }  }
   
 sub portfolio_linked_path {  sub portfolio_linked_path {
     my ($path) = @_;      my ($path,$group,$port_path) = @_;
     my $result = &Apache::portfolio::make_anchor('portfolio','/');  
       my $start = 'portfolio';
       if ($group) {
    $start = "groups/$group/".$start;
       }
       my $result = &Apache::portfolio::make_anchor($port_path,$start,'/',
    undef,undef,undef,$group);
       
     my $fullpath = '/';      my $fullpath = '/';
     my (undef,@tree) = split('/',$path);      my (undef,@tree) = split('/',$path);
     my $filename = pop(@tree);      my $filename = pop(@tree);
     foreach my $dir (@tree) {      foreach my $dir (@tree) {
  $fullpath .= $dir.'/';   $fullpath .= $dir.'/';
  $result .= '/';   $result .= '/';
  $result .= &Apache::portfolio::make_anchor($dir,$fullpath);   $result .= &Apache::portfolio::make_anchor($port_path,$dir,$fullpath,
      undef,undef,undef,$group);
     }      }
     $result .= "/$filename";      $result .= "/$filename";
     return $result;      return $result;
Line 312  sub portfolio_linked_path { Line 320  sub portfolio_linked_path {
   
 sub portfolio_display_uri {  sub portfolio_display_uri {
     my ($uri,$as_links)=@_;      my ($uri,$as_links)=@_;
       my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'};
       my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'};
       my ($port_path,$group);
       if ($uri =~ m{^/editupload/\Q$cdom\E/\Q$cnum\E/groups/}) {
    $group = (split('/',$uri))[5];
    $port_path = '/adm/coursegrp_portfolio';
       } else {
    $port_path = '/adm/portfolio';
       }
     $uri =~ s|.*/(portfolio/.*)$|$1|;      $uri =~ s|.*/(portfolio/.*)$|$1|;
     my ($res_uri,$meta_uri) = ($uri,$uri);      my ($res_uri,$meta_uri) = ($uri,$uri);
   
     if ($uri =~ /\.meta$/) {      if ($uri =~ /\.meta$/) {
  $res_uri =~ s/\.meta//;   $res_uri =~ s/\.meta//;
     } else {      } else {
Line 322  sub portfolio_display_uri { Line 338  sub portfolio_display_uri {
     }      }
   
     my ($path) = ($res_uri =~ m|^portfolio(.*/)[^/]*$|);      my ($path) = ($res_uri =~ m|^portfolio(.*/)[^/]*$|);
   
     if ($as_links) {      if ($as_links) {
  $res_uri = &portfolio_linked_path($res_uri);   $res_uri = &portfolio_linked_path($res_uri,$group,$port_path);
  $meta_uri = &portfolio_linked_path($meta_uri);   $meta_uri = &portfolio_linked_path($meta_uri,$group,$port_path);
     }      }
     return ($res_uri,$meta_uri,$path);      return ($res_uri,$meta_uri,$path);
 }  }
Line 486  sub prettyprint { Line 501  sub prettyprint {
         my @Courses = split(/\s*\,\s*/,$value);          my @Courses = split(/\s*\,\s*/,$value);
         my $Str='<font size="-1"><ul>';          my $Str='<font size="-1"><ul>';
         foreach my $course (@Courses) {          foreach my $course (@Courses) {
             my %courseinfo = &Apache::lonnet::coursedescription($course);              my %courseinfo =
    &Apache::lonnet::coursedescription($course,
      {'one_time' => 1});
             if (! exists($courseinfo{'num'}) || $courseinfo{'num'} eq '') {              if (! exists($courseinfo{'num'}) || $courseinfo{'num'} eq '') {
                 next;                  next;
             }              }
Line 944  sub print_dynamic_metadata { Line 961  sub print_dynamic_metadata {
             foreach my $identifier (sort(keys(%{$dynmeta{'stats'}}))) {              foreach my $identifier (sort(keys(%{$dynmeta{'stats'}}))) {
                 my $data = $dynmeta{'stats'}->{$identifier};                  my $data = $dynmeta{'stats'}->{$identifier};
                 my $course = $data->{'course'};                  my $course = $data->{'course'};
                 my %courseinfo = &Apache::lonnet::coursedescription($course);                  my %courseinfo = 
       &Apache::lonnet::coursedescription($course,
          {'one_time' => 1});
                 if (! exists($courseinfo{'num'}) || $courseinfo{'num'} eq '') {                  if (! exists($courseinfo{'num'}) || $courseinfo{'num'} eq '') {
                     &Apache::lonnet::logthis('lookup for '.$course.' failed');                      &Apache::lonnet::logthis('lookup for '.$course.' failed');
                     next;                      next;
Line 1069  sub present_editable_metadata { Line 1088  sub present_editable_metadata {
     # Header      # Header
     my $disuri=$uri;      my $disuri=$uri;
     my $fn=&Apache::lonnet::filelocation('',$uri);      my $fn=&Apache::lonnet::filelocation('',$uri);
     $disuri=~s/^\/\~/\/priv\//;      $disuri=~s{^/\~}{/priv/};
     $disuri=~s/\.meta$//;      $disuri=~s/\.meta$//;
     my $meta_uri = $disuri;      my $meta_uri = $disuri;
     my $path;      my $path;
Line 1077  sub present_editable_metadata { Line 1096  sub present_editable_metadata {
  ($disuri, $meta_uri, $path) =  &portfolio_display_uri($disuri,1);   ($disuri, $meta_uri, $path) =  &portfolio_display_uri($disuri,1);
     }      }
     my $target=$uri;      my $target=$uri;
     $target=~s/^\/\~/\/res\/$env{'request.role.domain'}\//;      $target=~s{^/\~}{/res/$env{'request.role.domain'}/};
     $target=~s/\.meta$//;      $target=~s/\.meta$//;
     my $bombs=&Apache::lonmsg::retrieve_author_res_msg($target);      my $bombs=&Apache::lonmsg::retrieve_author_res_msg($target);
     if ($bombs) {      if ($bombs) {

Removed from v.1.153  
changed lines
  Added in v.1.155


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