Diff for /loncom/interface/lonmeta.pm between versions 1.4 and 1.9

version 1.4, 2000/11/27 23:10:59 version 1.9, 2001/12/22 21:59:07
Line 1 Line 1
 # The LearningOnline Network with CAPA  # The LearningOnline Network with CAPA
 #  
 # Metadata display handler  # Metadata display handler
 #  #
   # $Id$
   #
   # Copyright Michigan State University Board of Trustees
   #
   # This file is part of the LearningOnline Network with CAPA (LON-CAPA).
   #
   # LON-CAPA is free software; you can redistribute it and/or modify
   # it under the terms of the GNU General Public License as published by
   # the Free Software Foundation; either version 2 of the License, or
   # (at your option) any later version.
   #
   # LON-CAPA is distributed in the hope that it will be useful,
   # but WITHOUT ANY WARRANTY; without even the implied warranty of
   # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   # GNU General Public License for more details.
   #
   # You should have received a copy of the GNU General Public License
   # along with LON-CAPA; if not, write to the Free Software
   # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   #
   # /home/httpd/html/adm/gpl.txt
   #
   # http://www.lon-capa.org/
   #
 # (TeX Content Handler  # (TeX Content Handler
 #  #
 # 05/29/00,05/30,10/11 Gerd Kortemeyer)  # 05/29/00,05/30,10/11 Gerd Kortemeyer)
 #  #
 # 10/19,10/21,10/23,11/27 Gerd Kortemeyer  # 10/19,10/21,10/23,11/27,08/09/01,12/22 Gerd Kortemeyer
   
 package Apache::lonmeta;  package Apache::lonmeta;
   
Line 14  use strict; Line 37  use strict;
 use Apache::Constants qw(:common);  use Apache::Constants qw(:common);
 use Apache::lonnet();  use Apache::lonnet();
   
   # ----------------------------------------- Fetch and evaluate dynamic metadata
   
   sub dynamicmeta {
       my $url=&Apache::lonnet::declutter(shift);
       $url=~s/\.meta$//;
       my ($adomain,$aauthor)=($url=~/^(\w+)\/(\w+)\//);
       my $regexp=&Apache::lonnet::escape($url);
       $regexp=~s/(\W)/\\$1/g;
       my %evaldata=&Apache::lonnet::dump
                                        ('resevaldata',$adomain,$aauthor,$regexp);
       my %returnhash=();
       foreach (keys %evaldata) {
       }
       return %returnhash;
   }
   
 # ================================================================ Main Handler  # ================================================================ Main Handler
   
Line 35  sub handler { Line 73  sub handler {
       $content{$_}=&Apache::lonnet::metadata($uri,$_);        $content{$_}=&Apache::lonnet::metadata($uri,$_);
   } split(/\,/,&Apache::lonnet::metadata($uri,'keys'));    } split(/\,/,&Apache::lonnet::metadata($uri,'keys'));
   
   # ------------------------------------------------------------------ Hide stuff
   
     unless ($ENV{'user.adv'}) {
         map {
             $content{$_}='<i>- not displayed -</i>';
         } ('keywords','notes','abstract','subject');
     }
   
 # --------------------------------------------------------------- Render Output  # --------------------------------------------------------------- Render Output
   
 my $creationdate=localtime($content{'creationdate'});  my $creationdate=localtime($content{'creationdate'});
Line 72  ENDHEAD Line 118  ENDHEAD
   delete($content{'lastrevisiondate'});    delete($content{'lastrevisiondate'});
   delete($content{'owner'});    delete($content{'owner'});
   delete($content{'copyright'});    delete($content{'copyright'});
   map {    if ($ENV{'user.adv'}) {
      map {
       my $name=$_;        my $name=$_;
       my $display=&Apache::lonnet::metadata($uri,$name.'.display');        my $display=&Apache::lonnet::metadata($uri,$name.'.display');
       unless ($display) { $display=$name; };         unless ($display) { $display=$name; };
       $r->print('<b>'.$display.':</b> '.$content{$name}.'<br>');        my $otherinfo='';
   } sort keys %content;        map {
             if (defined(&Apache::lonnet::metadata($uri,$name.'.'.$_))) {
                $otherinfo.=' '.$_.'='.
    &Apache::lonnet::metadata($uri,$name.'.'.$_).'; ';
             }
         } ('name','part','type','default'); 
         $r->print('<b>'.$display.':</b> '.$content{$name});
         if ($otherinfo) {
            $r->print(' ('.$otherinfo.')');
         }
         $r->print("<br>\n");
      } sort keys %content;
     }
     &dynamicmeta($uri);
   $r->print('</body></html>');    $r->print('</body></html>');
   return OK;    return OK;
 }  }

Removed from v.1.4  
changed lines
  Added in v.1.9


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