URL without layout/set /part?

Author Message

Gabriel Ambuehl

Saturday 13 August 2005 4:25:08 am

I'm trying to come up with a reliable way to generate URLs that ignore a possibly active layout/set/layoutname .

ezroot isn't really reliable for links and ezurl seems to insist on adding layout/set/ if the current URL contains it.

Visit http://triligon.org

Lazaro Ferreira

Monday 15 August 2005 2:43:54 am

Hi,

this is an insteresting question, we had this problem also, unfortunately we haven't found a way to solve it

Lazaro
http://www.mzbusiness.com

David Eriksson

Monday 15 August 2005 3:56:45 am

I guess you could write your won operator, that works like ezurl but removes "/layout/set" if any.

/David

Kristian Hole

Monday 15 August 2005 7:36:01 am

Actually i have had the need to escape the mighty layoutmodule myself, and unfortunately the solution involves kernel hacking.. Its not 100% tested, but you can take a look at it.

Index: kernel/layout/set.php
===================================================================
--- kernel/layout/set.php       (revision 12662)
+++ kernel/layout/set.php       (working copy)
@@ -47,6 +47,17 @@
 $Result['content'] = '';
 $Result['rerun_uri'] = '/' . implode( '/', array_splice( $Params['Parameters'], 1 ) ) . $userParamString;

+if ( ( ! ( strpos( $Result['rerun_uri'], '/layout/set/escape' ) === false ) ) or ( $LayoutStyle == 'escape' ) )
+{
+    $rerun_uri = preg_replace( '#/layout/set/[a-zA-Z]+#', '', $Result['rerun_uri'] );
+    if ( $rerun_uri == '' )
+        $rerun_uri = '/';
+
+    $Result['rerun_uri'] = $rerun_uri;
+    $Module->setExitStatus( EZ_MODULE_STATUS_RERUN );
+    return;
+}
+
 $layoutINI =& eZINI::instance( 'layout.ini' );
 if ( $layoutINI->hasGroup( $LayoutStyle ) )
 {

To escape a layout you have to do something like

<a href={concat('/layout/set/escape/, $yoururl)|ezurl}>blah</a>

Hope this is of some help to you..

Kristian

http://ez.no/ez_publish/documenta...tricks/show_which_templates_are_used
http://ez.no/doc/ez_publish/techn...te_operators/miscellaneous/attribute

Gabriel Ambuehl

Monday 15 August 2005 7:44:25 am

That is in fact an interesting approach. I was thinknig about patching ezurl but it's rather beyond understanding what it actually does.

Will this be integrated into 3.8?

Visit http://triligon.org

Kristian Hole

Tuesday 16 August 2005 4:27:33 am

Hopefully something like this will be included in the base distribution. I am going to discuss it with the core team.

Kristian

http://ez.no/ez_publish/documenta...tricks/show_which_templates_are_used
http://ez.no/doc/ez_publish/techn...te_operators/miscellaneous/attribute

Gabriel Ambuehl

Tuesday 16 August 2005 5:24:55 am

It would be more elegant if it was possible to set it as param of ezurl, of course.

Visit http://triligon.org

Powered by eZ Publish™ CMS Open Source Web Content Management. Copyright © 1999-2014 eZ Systems AS (except where otherwise noted). All rights reserved.

eZ debug

Timing: Jan 18 2025 19:36:04
Script start
Timing: Jan 18 2025 19:36:04
Module start 'layout'
Timing: Jan 18 2025 19:36:04
Module start 'content'
Timing: Jan 18 2025 19:36:05
Module end 'content'
Timing: Jan 18 2025 19:36:05
Script end

Main resources:

Total runtime0.8398 sec
Peak memory usage4,096.0000 KB
Database Queries73

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0043 587.9141152.6250
Module start 'layout' 0.00430.0021 740.539139.4453
Module start 'content' 0.00640.8323 779.9844643.6563
Module end 'content' 0.83870.0012 1,423.640616.1641
Script end 0.8398  1,439.8047 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00320.3761160.0002
Check MTime0.00150.1728160.0001
Mysql Total
Database connection0.00060.074010.0006
Mysqli_queries0.790994.1665730.0108
Looping result0.00070.0869710.0000
Template Total0.812296.720.4061
Template load0.00200.237720.0010
Template processing0.810296.468620.4051
Template load and register function0.00010.015410.0001
states
state_id_array0.00090.103610.0009
state_identifier_array0.00210.247720.0010
Override
Cache load0.00170.2034250.0001
Sytem overhead
Fetch class attribute can translate value0.00070.085540.0002
Fetch class attribute name0.00130.159080.0002
XML
Image XML parsing0.00090.106140.0002
class_abstraction
Instantiating content class attribute0.00000.001990.0000
General
dbfile0.00080.0959160.0001
String conversion0.00000.000640.0000
Note: percentages do not add up to 100% because some accumulators overlap

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1node/view/full.tplfull/forum_topic.tplextension/sevenx/design/simple/override/templates/full/forum_topic.tplEdit templateOverride template
7content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
9content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
2content/datatype/view/ezimage.tpl<No override>extension/sevenx/design/simple/templates/content/datatype/view/ezimage.tplEdit templateOverride template
2content/datatype/view/ezxmltags/literal.tpl<No override>extension/community/design/standard/templates/content/datatype/view/ezxmltags/literal.tplEdit templateOverride template
1print_pagelayout.tpl<No override>extension/community/design/community/templates/print_pagelayout.tplEdit templateOverride template
 Number of times templates used: 22
 Number of unique templates used: 6

Time used to render debug report: 0.0001 secs