# HG changeset patch # User wizard # Date 1293468096 -10800 # Node ID 3f09584bf18912828673cbfef58a93634a2d883a # Parent f8de52d3c112ddf15137c95e3a96ef21b33257a9 Corrected web application modules diff -r f8de52d3c112 -r 3f09584bf189 Lib/IMPL/Web/Application/ControllerUnit.pm --- a/Lib/IMPL/Web/Application/ControllerUnit.pm Mon Dec 27 01:37:44 2010 +0300 +++ b/Lib/IMPL/Web/Application/ControllerUnit.pm Mon Dec 27 19:41:36 2010 +0300 @@ -211,7 +211,7 @@ my %methodInfo = ( name => $method ); - $methodInfo{parameters} = $info->{parameters} if $info->{parameters}; + $methodInfo{parameters} = [ grep /^[^\:]/, @{ $info->{parameters} } ] if ref $info->{parameters} eq 'ARRAY'; push @{$smd{methods}},\%methodInfo; } return \%smd; diff -r f8de52d3c112 -r 3f09584bf189 Lib/IMPL/Web/QueryHandler/PageFormat.pm --- a/Lib/IMPL/Web/QueryHandler/PageFormat.pm Mon Dec 27 01:37:44 2010 +0300 +++ b/Lib/IMPL/Web/QueryHandler/PageFormat.pm Mon Dec 27 19:41:36 2010 +0300 @@ -19,6 +19,7 @@ BEGIN { public property templatesCharset => prop_all; public property templatesBase => prop_all; + public property includes => prop_all | prop_list; public property defaultTarget => prop_all; public property pathinfoPrefix => prop_all; public property cache => prop_all; @@ -77,7 +78,7 @@ $doc->LoadFile ( ($this->template || File::Spec->catfile($this->templatesBase,@path)), $this->templatesCharset, - $this->templatesBase, + [$this->templatesBase, $this->includes], { result => scalar($nextHandler->()), action => $action, diff -r f8de52d3c112 -r 3f09584bf189 Lib/IMPL/Web/QueryHandler/UrlController.pm --- a/Lib/IMPL/Web/QueryHandler/UrlController.pm Mon Dec 27 01:37:44 2010 +0300 +++ b/Lib/IMPL/Web/QueryHandler/UrlController.pm Mon Dec 27 19:41:36 2010 +0300 @@ -16,7 +16,7 @@ sub Process { my ($this,$action,$nextHandler) = @_; - my $namespace = $this->namespace || $action->application->type; + my $namespace = $this->namespace || $action->application->typeof; my @target = grep $_, split /\//, ($ENV{PATH_INFO} || '') or die new IMPL::Exception("No target specified"); @@ -53,10 +53,24 @@ =head1 NAME -C - вызов метода на основе запроса. +C - вызов метода на основе C запроса. =head1 DESCRIPTION Использует переменную C<$ENV{PATH_INFO}> для получения имени и метода модуля. +Например запрос C интерпретируется как вызов метода C +у модуля C. + +=head1 MEMBERS + +=head2 PROPERTIES + +=over + +=item C<[get,set] namespace> + +Пространство имен в котором находится модуль. по умолчению совпадает с именем класса приложения, например C + +=back =cut \ No newline at end of file