# The LearningOnline Network with CAPA # .helper XML handler to implement the LON-CAPA helper # # $Id: lonhelper.pm,v 1.2 2003/03/21 21:34:56 bowersj2 Exp $ # # 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/ # # (Page Handler # # (.helper handler # package Apache::lonhelper; use Apache::Constants qw(:common); use Apache::File; BEGIN { &Apache::lonxml::register('Apache::lonhelper', ('helper')); } my $r; sub handler { $r = shift; $ENV{'request.uri'} = $r->uri(); my $filename = '/home/httpd/html' . $r->uri(); my $fh = Apache::File->new($filename); my $file; read $fh, $file, 1000000000; $result = &Apache::lonxml::xmlparse($r, 'helper', $file); $r->print("\n\n$result"); return OK; } sub start_helper { my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; if ($target ne 'helper') { return ''; } return 'Helper started.'; } sub end_helper { my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; return 'Helper ended.'; } 1; __END__