Forums / Developer / How to redirect from within a module?

How to redirect from within a module?

Author Message

Heiko Irrgang

Wednesday 16 February 2011 6:40:32 am

Hi, i want to redirect from within a own module to another module.

I have tried the usual way: header(sprintf('Location: %s', $url)); exit();

But ez stops with a message:

"Fatal error: eZ Publish did not finish its request. The execution of eZ Publish was abruptly ended,"

This comes from the exit(), but if i remove the exit, the redirect is ignored.

I found the RedirectOperators which allow redirection from a template and i checked the source: They do exactly the same. Why is it working from a template and not from a module? How can i redirect from a module?

Bertrand Dunogier

Wednesday 16 February 2011 7:28:51 am

In order to provide some feedback about fatal errors, eZ Publish uses a quite classical redirect based mechanism. If you exit() from the code without explaining eZ Publish it is on purpose and that the exit is expected, it will complain like this.

Use this code:

eZExecution::cleanExit();

Bertrand Dunogier
eZ Systems Engineering, Lyon
http://twitter.com/bdunogier
http://gplus.to/BertrandDunogier

Heiko Irrgang

Thursday 17 February 2011 1:33:25 am

Thank you very much

eZ debug

Timing: Jan 29 2025 23:50:35
Script start
Timing: Jan 29 2025 23:50:35
Module start 'content'
Timing: Jan 29 2025 23:50:35
Module end 'content'
Timing: Jan 29 2025 23:50:35
Script end

Main resources:

Total runtime0.1124 sec
Peak memory usage2,048.0000 KB
Database Queries141

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0053 587.9531180.8359
Module start 'content' 0.00530.0070 768.789194.0234
Module end 'content' 0.01230.1000 862.8125522.2813
Script end 0.1123  1,385.0938 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00292.6082200.0001
Check MTime0.00121.0385200.0001
Mysql Total
Database connection0.00070.658510.0007
Mysqli_queries0.075066.77691410.0005
Looping result0.00080.73491390.0000
Template Total0.099488.510.0994
Template load0.00080.706610.0008
Template processing0.098687.784810.0986
Override
Cache load0.00050.415710.0005
Sytem overhead
Fetch class attribute can translate value0.00080.727010.0008
XML
Image XML parsing0.00020.177010.0002
General
dbfile0.00615.4217200.0003
String conversion0.00000.003630.0000
Note: percentages do not add up to 100% because some accumulators overlap

CSS/JS files loaded with "ezjscPacker" during request:

CacheTypePacklevelSourceFiles
CSS0extension/community/design/community/stylesheets/ext/jquery.autocomplete.css
extension/community_design/design/suncana/stylesheets/scrollbars.css
extension/community_design/design/suncana/stylesheets/tabs.css
extension/community_design/design/suncana/stylesheets/roadmap.css
extension/community_design/design/suncana/stylesheets/content.css
extension/community_design/design/suncana/stylesheets/star-rating.css
extension/community_design/design/suncana/stylesheets/syntax_and_custom_tags.css
extension/community_design/design/suncana/stylesheets/buttons.css
extension/community_design/design/suncana/stylesheets/tweetbox.css
extension/community_design/design/suncana/stylesheets/jquery.fancybox-1.3.4.css
extension/bcsmoothgallery/design/standard/stylesheets/magnific-popup.css
extension/sevenx/design/simple/stylesheets/star_rating.css
extension/sevenx/design/simple/stylesheets/libs/fontawesome/css/all.min.css
extension/sevenx/design/simple/stylesheets/main.v02.css
extension/sevenx/design/simple/stylesheets/main.v02.res.css
JS0extension/ezjscore/design/standard/lib/yui/3.17.2/build/yui/yui-min.js
extension/ezjscore/design/standard/javascript/jquery-3.7.0.min.js
extension/community_design/design/suncana/javascript/jquery.ui.core.min.js
extension/community_design/design/suncana/javascript/jquery.ui.widget.min.js
extension/community_design/design/suncana/javascript/jquery.easing.1.3.js
extension/community_design/design/suncana/javascript/jquery.ui.tabs.js
extension/community_design/design/suncana/javascript/jquery.hoverIntent.min.js
extension/community_design/design/suncana/javascript/jquery.popmenu.js
extension/community_design/design/suncana/javascript/jScrollPane.js
extension/community_design/design/suncana/javascript/jquery.mousewheel.js
extension/community_design/design/suncana/javascript/jquery.cycle.all.js
extension/sevenx/design/simple/javascript/jquery.scrollTo.js
extension/community_design/design/suncana/javascript/jquery.cookie.js
extension/community_design/design/suncana/javascript/ezstarrating_jquery.js
extension/community_design/design/suncana/javascript/jquery.initboxes.js
extension/community_design/design/suncana/javascript/app.js
extension/community_design/design/suncana/javascript/twitterwidget.js
extension/community_design/design/suncana/javascript/community.js
extension/community_design/design/suncana/javascript/roadmap.js
extension/community_design/design/suncana/javascript/ez.js
extension/community_design/design/suncana/javascript/ezshareevents.js
extension/sevenx/design/simple/javascript/main.js

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 1
 Number of unique templates used: 1

Time used to render debug report: 0.0001 secs