----- Original Message ----- From: "Dieter Maurer" <dieter@handshake.de> To: "Tim Hicks" <tim.hicks@iname.com> Cc: <zope@zope.org> Sent: Monday, September 04, 2000 7:48 PM Subject: Re: [Zope] How to access id and title of document calling standard_html_header
Tim Hicks writes:
I have a standard_html_header that is inserted into Zclasses. These Zclasses have properties including meta_author ... In standard_html_header, I use code such as <dtml-var meta_author> ... This works fine and the properties of the *zclass* are inserted. However, if I put <dtml-var id> into the standard_html_header, I get the id of standard_html_header, *not* of the zclass. When I do this, I get the id of the Z class instance. It should be impossible to get the id of the *standard_html_header*, if this header is a DTML *method* (rather than document) as you told us in a different message.
Because we see different things, we need to describe carefully, what we do. Apparently, we do not do the same.
I have a folder-like ZClass, say ZC, and an instance of this class, say ZI. ZC has a method, say M, using "standard_html_header". "standard_html_header" is a DMTL method (!) rendering "id". When I open "ZI/M", "standard_html_header" renders "ZI", i.e. ZI's id.
The same happens, if "standard_html_header" is not in ZI but a ZC method.
Now, it is your turn to describe precisely, what you are doing.
OK, I think that I am perhaps misusing zclasses then. Here is what I have. I have a Folder that was created by using the 'Add new item' menu within Zope. This folder is called 'Site'. I have a Zclass called 'theatre_class' that has "Base classes ZObject, _ZClass_for_CatalogAware, _ZClass_for_DTMLDocument". I have set the zclass to have the following properties by creating a 'theatre_class_property' property sheet for it: head_title meta_author meta_description ... amongst others. Within the Folder 'Site', I have standard_html_header dtml-method that is an edited version of the default one that is found in the root folder of a Zope instance (if that is the right term). This standard_html_header uses things code such as this: <title><dtml-var head_title></title> <META NAME="description" CONTENT="<dtml-var meta_description>"> <META NAME="author" CONTENT="<dtml-var meta_author>"> When I use the standard_html_header in an instance of a zclass, the appropriate property of the zclass is indeed inserted into it. See below. Zclass instance has code such as: <dtml-var standard_html_header> <h1>This is an instance of my Theatre Zclass</h1> <dtml-var standard_html_footer> However, if I try to put <dtml-var id> into the standard_html_header, I get nothing, and if I use <dtml-var document_id>, I get 'standard_html_header' inserted into the document. I hope I have made it clear what I am doing. It is certainly becoming clear to me that I have got the wrong end of the stick a little with this. Thanks for your help. tim
Dieter