Ejemplo n.º 1
0
try:
    get_distribution('Products.CMFCalendar')
except DistributionNotFound:
    PRODUCTS_CMFCALENDAR_INSTALLED = False
else:
    PRODUCTS_CMFCALENDAR_INSTALLED = True

try:
    get_distribution('Products.CMFUid')
except DistributionNotFound:
    PRODUCTS_CMFUID_INSTALLED = False
else:
    PRODUCTS_CMFUID_INSTALLED = True

security.declarePrivate('_dtmldir')
_dtmldir = os.path.join(package_home(globals()), 'dtml')
_wwwdir = os.path.join(package_home(globals()), 'www')

security.declarePublic('formatRFC822Headers')


def formatRFC822Headers(headers):
    """ Convert the key-value pairs in 'headers' to valid RFC822-style
        headers, including adding leading whitespace to elements which
        contain newlines in order to preserve continuation-line semantics.
    """
    munged = []
    linesplit = re.compile(r'[\n\r]+?')

    for key, value in headers:
Ejemplo n.º 2
0
security.declarePublic('UndoChanges')
UndoChanges = Permissions.undo_changes

security.declarePublic('View')
View = Permissions.view

security.declarePublic('ViewManagementScreens')
ViewManagementScreens = Permissions.view_management_screens

addPermission = None
try:
    from AccessControl.Permission import addPermission
except ImportError:
    pass

security.declarePrivate('setDefaultRoles')
def setDefaultRoles(permission, roles):
    '''
    Sets the defaults roles for a permission.
    '''
    if addPermission is not None:
        addPermission(permission, roles)
    else:
        # BBB This is in AccessControl starting in Zope 2.13
        import Products
        registered = _registeredPermissions
        if not registered.has_key(permission):
            registered[permission] = 1
            Products.__ac_permissions__=(
                Products.__ac_permissions__+((permission,(),roles),))
            mangled = pname(permission)
Ejemplo n.º 3
0
SUBTEMPLATE = '__SUBTEMPLATE__'

security = ModuleSecurityInfo( 'Products.CMFCore.utils' )

_globals = globals()
_dtmldir = os_path.join( package_home( globals() ), 'dtml' )
_wwwdir = os_path.join( package_home( globals() ), 'www' )

#
#   Simple utility functions, callable from restricted code.
#
_marker = []  # Create a new marker object.

_tool_interface_registry = {}

security.declarePrivate('registerToolInterface')
def registerToolInterface(tool_id, tool_interface):
    """ Register a tool ID for an interface

    This method can go away when getToolByName is going away (CMF 2.3).
    """
    global  _tool_interface_registry
    _tool_interface_registry[tool_id] = tool_interface

security.declarePrivate('getToolInterface')
def getToolInterface(tool_id):
    """ Get the interface registered for a tool ID
    """
    global  _tool_interface_registry
    return _tool_interface_registry.get(tool_id, None)
Ejemplo n.º 4
0
from zope.component import queryUtility
from zope import i18n # disambiguation
from zope.i18n.interfaces import IUserPreferredCharsets
from zope.i18nmessageid import MessageFactory
from zope.publisher.interfaces.browser import IBrowserRequest

from Products.CMFCore.interfaces import IPropertiesTool

from Products.CMFDefault.interfaces import IHTMLScrubber
from Products.CMFDefault.exceptions import EmailAddressInvalid
from Products.CMFDefault.exceptions import IllegalHTML


security = ModuleSecurityInfo( 'Products.CMFDefault.utils' )

security.declarePrivate('_dtmldir')
_dtmldir = os.path.join( package_home( globals() ), 'dtml' )
_wwwdir = os.path.join( package_home( globals() ), 'www' )

security.declarePublic('formatRFC822Headers')
def formatRFC822Headers( headers ):

    """ Convert the key-value pairs in 'headers' to valid RFC822-style
        headers, including adding leading whitespace to elements which
        contain newlines in order to preserve continuation-line semantics.
    """
    munged = []
    linesplit = re.compile( r'[\n\r]+?' )

    for key, value in headers:
Ejemplo n.º 5
0
security.declarePublic('ManageProperties')
ManageProperties = Permissions.manage_properties

security.declarePublic('ManageUsers')
ManageUsers = Permissions.manage_users

security.declarePublic('UndoChanges')
UndoChanges = Permissions.undo_changes

security.declarePublic('View')
View = Permissions.view

security.declarePublic('ViewManagementScreens')
ViewManagementScreens = Permissions.view_management_screens

security.declarePrivate('setDefaultRoles')


def setDefaultRoles(permission, roles):
    '''
    Sets the defaults roles for a permission.
    '''
    import Products
    # XXX This ought to be in AccessControl.SecurityInfo.
    registered = _registeredPermissions
    if not registered.has_key(permission):
        registered[permission] = 1
        Products.__ac_permissions__ = (Products.__ac_permissions__ +
                                       ((permission, (), roles), ))
        mangled = pname(permission)
        setattr(ApplicationDefaultPermissions, mangled, roles)
Ejemplo n.º 6
0
SUBTEMPLATE = '__SUBTEMPLATE__'

security = ModuleSecurityInfo('Products.CMFCore.utils')

_globals = globals()
_dtmldir = os_path.join(package_home(globals()), 'dtml')
_wwwdir = os_path.join(package_home(globals()), 'www')

#
#   Simple utility functions, callable from restricted code.
#
_marker = []  # Create a new marker object.

_tool_interface_registry = {}

security.declarePrivate('registerToolInterface')


def registerToolInterface(tool_id, tool_interface):
    """ Register a tool ID for an interface

    This method can go away when getToolByName is going away (CMF 2.3).
    """
    global _tool_interface_registry
    _tool_interface_registry[tool_id] = tool_interface


security.declarePrivate('getToolInterface')


def getToolInterface(tool_id):
Ejemplo n.º 7
0
security.declarePublic("UndoChanges")
UndoChanges = Permissions.undo_changes

security.declarePublic("View")
View = Permissions.view

security.declarePublic("ViewManagementScreens")
ViewManagementScreens = Permissions.view_management_screens

addPermission = None
try:
    from AccessControl.Permission import addPermission
except ImportError:
    pass

security.declarePrivate("setDefaultRoles")


def setDefaultRoles(permission, roles):
    """
    Sets the defaults roles for a permission.
    """
    if addPermission is not None:
        addPermission(permission, roles)
    else:
        # BBB This is in AccessControl starting in Zope 2.13
        import Products

        registered = _registeredPermissions
        if not registered.has_key(permission):
            registered[permission] = 1