X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FController%2FBase.pm;h=285bfcee494a9a2ecea6ab5a95ba97ffd34287f9;hb=06cb6b127be7185927c6a3b32d16295d55e162ea;hp=198f16e0f53c3dc7544df05474b4195fa94d9849;hpb=3bcaeb2ead8ca78e3c2664a4c17be7c380e9f290;p=kivitendo-erp.git diff --git a/SL/Controller/Base.pm b/SL/Controller/Base.pm index 198f16e0f..285bfcee4 100644 --- a/SL/Controller/Base.pm +++ b/SL/Controller/Base.pm @@ -30,7 +30,12 @@ sub redirect_to { my $self = shift; my $url = $self->url_for(@_); - print $::cgi->redirect($url); + if ($self->delay_flash_on_redirect) { + require SL::Helper::Flash; + SL::Helper::Flash::delay_flash(); + } + + print $::request->{cgi}->redirect($url); } sub render { @@ -152,6 +157,14 @@ sub _run_hooks { } } +# +# behaviour. override these +# + +sub delay_flash_on_redirect { + 0; +} + # # private functions -- for use in Base only # @@ -482,6 +495,12 @@ action. The hook's return values are discarded. +=item delay_flash_on_redirect + +May be overridden by a controller. If this method returns true, redirect_to +will delay all flash messages for the current request. Defaults to false for +compatibility reasons. + =back =head2 PRIVATE FUNCTIONS