File:  [LON-CAPA] / loncom / cgi / lonversions.pl
Revision 1.9: download - view: text, annotated - select for diffs
Mon Nov 7 20:50:02 2011 UTC (12 years, 5 months ago) by raeburn
Branches: MAIN
CVS tags: version_2_11_0_RC3, version_2_11_0_RC2, version_2_11_0_RC1, version_2_11_0, language_hyphenation_merge, language_hyphenation, HEAD, BZ4492-merge, BZ4492-feature_horizontal_radioresponse, BZ4492-feature_Support_horizontal_radioresponse, BZ4492-Support_horizontal_radioresponse
- In CVS commit prevent interpolation of revision tag ($Id:) in expression
  used by grep.

    1: #!/usr/bin/perl
    2: $|=1;
    3: # Prints out the Id line from most files
    4: # $Id: lonversions.pl,v 1.9 2011/11/07 20:50:02 raeburn Exp $
    5: #
    6: # Copyright Michigan State University Board of Trustees
    7: #
    8: # This file is part of the LearningOnline Network with CAPA (LON-CAPA).
    9: #
   10: # LON-CAPA is free software; you can redistribute it and/or modify
   11: # it under the terms of the GNU General Public License as published by
   12: # the Free Software Foundation; either version 2 of the License, or
   13: # (at your option) any later version.
   14: #
   15: # LON-CAPA is distributed in the hope that it will be useful,
   16: # but WITHOUT ANY WARRANTY; without even the implied warranty of
   17: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   18: # GNU General Public License for more details.
   19: #
   20: # You should have received a copy of the GNU General Public License
   21: # along with LON-CAPA; if not, write to the Free Software
   22: # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   23: #
   24: # /home/httpd/html/adm/gpl.txt
   25: #
   26: # http://www.lon-capa.org/
   27: #
   28: 
   29: use strict;
   30: 
   31: use lib '/home/httpd/lib/perl/';
   32: use Apache::lonlocal;
   33: use LONCAPA::Configuration;
   34: use LONCAPA::loncgi;
   35: use LONCAPA::lonauthcgi;
   36: 
   37: my $perlvar=&LONCAPA::Configuration::read_conf();
   38: my ($londaemons,$lonlib,$londocroot,$lonincludes); 
   39: if (ref($perlvar) eq 'HASH') {
   40:     $londaemons = $perlvar->{'lonDaemons'};
   41:     $lonlib = $perlvar->{'lonLib'};
   42:     $londocroot = $perlvar->{'lonDocRoot'};
   43:     $lonincludes = $perlvar->{'lonIncludes'};
   44: }
   45: undef($perlvar);
   46: 
   47: print &LONCAPA::loncgi::cgi_header('text/html',1);
   48: if ($londaemons ne '' && $lonlib ne '' && $londocroot ne '' && $lonincludes ne '') {
   49:     &main($londaemons,$lonlib,$londocroot,$lonincludes);
   50: }
   51: 
   52: sub main {
   53:     my ($londaemons,$lonlib,$londocroot,$lonincludes) = @_;
   54:     if (!&LONCAPA::lonauthcgi::check_ipbased_access('codeversions')) {
   55:         if (!&LONCAPA::loncgi::check_cookie_and_load_env()) {
   56:             &Apache::lonlocal::get_language_handle();
   57:             print(&LONCAPA::loncgi::missing_cookie_msg());
   58:             return;
   59:         }
   60: 
   61:         if (!&LONCAPA::lonauthcgi::can_view('codeversions')) {
   62:             &Apache::lonlocal::get_language_handle();
   63:             print(&LONCAPA::lonauthcgi::unauthorized_msg('codeversions'));
   64:             return;
   65:         }
   66:     }
   67: 
   68:     &Apache::lonlocal::get_language_handle();
   69:     &print_versions($londaemons,$lonlib,$londocroot,$lonincludes);
   70:     return;
   71: }
   72: 
   73: sub print_versions {
   74:     my ($londaemons,$lonlib,$londocroot,$lonincludes) = @_;
   75:     print '<html><body bgcolor="#FFFFFF"><h1>'.&Apache::lonlocal::mt('Handler Versions').'</h1>'.
   76:           "<pre>\n";
   77:     my $revtag = '$Id:';
   78:     open (DFH, "grep '$revtag' $londaemons/* $lonlib/perl/Apache/*.pm $lonlib/perl/LONCAPA/*.pm $lonincludes/* $londocroot/res/adm/pages/* |");
   79:     while (my $line=<DFH>) {
   80:         chomp($line); 
   81:         unless ($line =~ /\Q.lpmlsave:# \E\$Id/) { 
   82:             print "$line\n";
   83:         }
   84:     }
   85:     close(DFH);
   86:     print '</pre></body></html>';
   87: }

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