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
|