| 1 |
296 |
ahitrov |
<%init> |
| 2 |
|
|
|
| 3 |
|
|
my $prj; |
| 4 |
|
|
if ( $r->uri =~ /^\/css\/(\w+)\// ) { |
| 5 |
|
|
$prj = $1; |
| 6 |
|
|
$request->{project} = $prj; |
| 7 |
|
|
} elsif ( $r->uri eq '/crossdomain.xml' ) { |
| 8 |
|
|
} elsif ( $r->uri =~ /\/(\w+)\// ) { |
| 9 |
|
|
$prj = $1; |
| 10 |
|
|
unless ( $m->comp( '/subs/get_project_data.msn', prj => $prj ) ) { |
| 11 |
|
|
warn "Не получается получить данные для проекта [$prj]. URI: [".$r->uri."]\n"; |
| 12 |
|
|
&abort404; |
| 13 |
|
|
} |
| 14 |
|
|
} else { |
| 15 |
|
|
warn "Попытка обратиться к сайту мимо проекта\n" if $DEBUG; |
| 16 |
|
|
&abort404; |
| 17 |
|
|
} |
| 18 |
|
|
if ( $r->uri =~ /\.css$/i ) { |
| 19 |
|
|
$r->content_type('text/css'); |
| 20 |
|
|
} elsif ( $r->uri =~ /\.xml$/i ) { |
| 21 |
|
|
$r->content_type('text/xml; charset=utf-8'); |
| 22 |
|
|
} elsif ( $r->uri =~ /\.html$/i || $r->uri =~ /\/$/ ) { |
| 23 |
|
|
$r->content_type('text/html; charset=utf-8'); |
| 24 |
|
|
} else { |
| 25 |
|
|
} |
| 26 |
|
|
$m->call_next; |
| 27 |
|
|
|
| 28 |
|
|
</%init> |