2 #**************************************************************************
3 # Copyright (C) 2006 by Michael Andreen <harvATruinDOTnu> *
5 # This program is free software; you can redistribute it and/or modify *
6 # it under the terms of the GNU General Public License as published by *
7 # the Free Software Foundation; either version 2 of the License, or *
8 # (at your option) any later version. *
10 # This program is distributed in the hope that it will be useful, *
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 # GNU General Public License for more details. *
15 # You should have received a copy of the GNU General Public License *
16 # along with this program; if not, write to the *
17 # Free Software Foundation, Inc., *
18 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
19 #**************************************************************************/
22 use CGI qw/:standard/;
24 use DBD::Pg qw(:pg_types);
31 $SIG{__WARN__} = sub {$ND::ERROR .= p $_[0]};
33 chdir '/var/www/ndawn/code';
37 local $ND::req = Apache2::Request->new($ND::r, POST_MAX => "1M");
38 local $ND::DBH = ND::DB::DB();
41 my $page = $ND::req->param('page');
43 if ($ENV{'SCRIPT_NAME'} =~ /(\w+)(\.(pl|php|pm))?$/){
44 $page = $1 unless $1 eq 'index' and $3 eq 'pl';
46 $page = ND::Web::Page->new(PAGE => $page, DBH => $ND::DBH, URI => $ENV{REQUEST_URI}, USER_AGENT => $ENV{HTTP_USER_AGENT});
49 $ND::DBH->rollback unless $ND::DBH->{AutoCommit};
52 return Apache2::Const::OK;