|
Lines 36-44
use Koha::Caches;
Link Here
|
| 36 |
use Koha::Cache::Memory::Lite; |
36 |
use Koha::Cache::Memory::Lite; |
| 37 |
use Koha::Database; |
37 |
use Koha::Database; |
| 38 |
use Koha::DateUtils; |
38 |
use Koha::DateUtils; |
| 39 |
use Koha::Logger; |
|
|
| 40 |
|
39 |
|
| 41 |
use Log::Log4perl; |
|
|
| 42 |
use CGI qw(-utf8 ); # we will loose -utf8 under plack, otherwise |
40 |
use CGI qw(-utf8 ); # we will loose -utf8 under plack, otherwise |
| 43 |
{ |
41 |
{ |
| 44 |
no warnings 'redefine'; |
42 |
no warnings 'redefine'; |
|
Lines 67-74
my $apiv1 = builder {
Link Here
|
| 67 |
$server->to_psgi_app; |
65 |
$server->to_psgi_app; |
| 68 |
}; |
66 |
}; |
| 69 |
|
67 |
|
| 70 |
Koha::Logger->_init; |
|
|
| 71 |
|
| 72 |
builder { |
68 |
builder { |
| 73 |
enable "ReverseProxy"; |
69 |
enable "ReverseProxy"; |
| 74 |
enable "Plack::Middleware::Static"; |
70 |
enable "Plack::Middleware::Static"; |
|
Lines 77-101
builder {
Link Here
|
| 77 |
enable "+Koha::Middleware::SetEnv"; |
73 |
enable "+Koha::Middleware::SetEnv"; |
| 78 |
enable "+Koha::Middleware::RealIP"; |
74 |
enable "+Koha::Middleware::RealIP"; |
| 79 |
|
75 |
|
| 80 |
mount '/opac' => builder { |
76 |
enable 'ErrorDocument', 500, '/errors', subrequest => 1; |
| 81 |
if ( Log::Log4perl->get_logger('plack-opac')->has_appenders ){ |
77 |
enable 'StackTrace', no_print_errors => 1; |
| 82 |
enable 'Log4perl', category => 'plack-opac'; |
78 |
|
| 83 |
enable 'LogWarn'; |
79 |
mount '/opac' => $opac; |
| 84 |
} |
80 |
mount '/intranet' => $intranet; |
| 85 |
$opac; |
81 |
mount '/api/v1/app.pl' => $apiv1; |
| 86 |
}; |
82 |
|
| 87 |
mount '/intranet' => builder { |
83 |
mount '/errors' => sub { |
| 88 |
if ( Log::Log4perl->get_logger('plack-intranet')->has_appenders ){ |
84 |
my $env = shift; |
| 89 |
enable 'Log4perl', category => 'plack-intranet'; |
85 |
|
| 90 |
enable 'LogWarn'; |
86 |
use CGI qw ( -utf8 ); |
| 91 |
} |
87 |
use C4::Auth; |
| 92 |
$intranet; |
88 |
use C4::Output; |
| 93 |
}; |
89 |
use C4::Context; |
| 94 |
mount '/api/v1/app.pl' => builder { |
90 |
|
| 95 |
if ( Log::Log4perl->get_logger('plack-api')->has_appenders ){ |
91 |
my $query = CGI->new; |
| 96 |
enable 'Log4perl', category => 'plack-api'; |
92 |
my ( $template, $loggedinuser, $cookie ) = get_template_and_user( |
| 97 |
enable 'LogWarn'; |
93 |
{ |
| 98 |
} |
94 |
template_name => 'errors/errorpage.tt', |
| 99 |
$apiv1; |
95 |
query => $query, |
| 100 |
}; |
96 |
type => 'intranet', |
|
|
97 |
authnotrequired => 1, |
| 98 |
debug => 1, |
| 99 |
} |
| 100 |
); |
| 101 |
$template->param ( |
| 102 |
errno => 500, |
| 103 |
admin => C4::Context->preference('KohaAdminEmailAddress'), |
| 104 |
); |
| 105 |
my $output = $template->output; |
| 106 |
my $length = length($output); |
| 107 |
|
| 108 |
return [ |
| 109 |
200, |
| 110 |
['Content-Type' => 'text/html; charset=UTF-8', 'Content-Length' => $length], |
| 111 |
[$output] |
| 112 |
]; |
| 113 |
}; |
| 114 |
|
| 101 |
}; |
115 |
}; |
| 102 |
- |
|
|