Products.MightyCal.Template.Template (version 1.10)
index
/home/zope/lib/python/Products/MightyCal/Template/Template.py

Template:  Holds and manages an Intermediate-language template.  The Intermediate
language is an HTML-like language designed to allow administrators to define
general layouts for their Calendar presentations, while being general enough to
allow for translation into a large variety of destination formats (by the Cocoon
frontend).

 
Modules
            
Products.MightyCal.Template.Const
Dumper
os
re
string
types

 
Classes
            
Products.MightyCal.SItem.SItem(OFS.SimpleItem.Item, Acquisition.Acquirer, Acquisition.ExplicitAcquirer, OFS.PropertyManager.PropertyManager, App.PersistentExtra.Persistent, AccessControl.Role.RoleManager)
Template

 
class Template
      Template class : defines a collection of event based on a set of criteria
 
  
_Template__getNodeAttributes = __getNodeAttributes(self, node)
Extracts a Dictionary of attribute names and values from a node
_Template__inOrderTraverseAndReplace = __inOrderTraverseAndReplace(self, currNode, DOM)
Generate a copy of the current Node and its children, calling ExpandChildTemplates on nodes without children, and recurse into each of the children which have direct children nodes.
_Template__replicateAttributes = __replicateAttributes(self, node, tagAttrDict)
Pass any attributes of the original Template tag on to the generated Element in the result tree
__init__(self, id, title, parentObject)
Construct a new instance of an Template
contextURL(self, REQUEST=None)
Returns the absolute URL of our context object, so that we can make reference to that object via <dtml-var> tags
exploreForChildren(self, DOM)
Once we've got our DOM, explore it to find child nodes
getPrettyTemplateXML(self, REQUEST=None)
Routine to render the template in pretty-printed XML format
getTemplateText(self)
Generate an XML version of the template, with only the tags from this template level, and also having the XML header and other wrapper tags stripped away.
getTreeId(self, REQUEST=None)
Return a displayable value for this template that makes sense in the context of a DTML tree
manage_update(self, templateText, REQUEST=None)
Apply changes to the template, first checking for validity
parse(self, templateText)
Given template text, first validate it as well-formed XML.  Turn it into a DOM tree. Then, make sure that all its tags are legal in the current context.  Next, discover any child templates that are implied by the tags in the template, and store as our 'children' attribute. Finally, store the DOM tree as our 'xmlNodes' attribute.
render(self)
Generate a DOM version of the template, with all children tags expanded as much as possible.  Works by doing an in-order traversal of the tree, and calling the appropriate Tag object to perform any necessary transformations on the current node.
setTemplateText(self, templateText)
Set the template's text (actually a DOM object consisting of its parsed XML representation. This has to be called after the Template has already been added to its parent TemplateCollection, otherwise acquisition won't work (since the Template will exist outside of the ZODB)
templateAsXML(self, REQUEST=None)
Fetches the completely expanded Template in XML text
tpValues(self, REQUEST=None)
Return the children template objects referred to in the current template text

 
Functions
            
manage_addTemplate(container, id)
# Not available via ZMI
manage_addTemplateForm()
# Not available via ZMI

 
Data
             DISPLAY_TEMPLATE_TAG = 'display-template'

DTML_DIR = 'dtml'

INFO = 0

TAG_REGISTRY = 'TagRegistry'

TEMPLATE_OBJECT = 'Template'

TEMPLATE_POLICY = 'Policy for Template and related objects'

__file__ = '/home/zope/lib/python/Products/MightyCal/Template/Template.pyc'

__name__ = 'Products.MightyCal.Template.Template'

__version__ = '$Revision: 1.10 $'

permAdministerCalendar = 'Administer Calendar'

permViewMgmtScreen = 'View management screens'

permXMLRPCAccess = 'XMLRPC Access'