__init__.py 4.3 KB
Newer Older
Jean-Paul Smets's avatar
Jean-Paul Smets committed
1 2 3
##############################################################################
#
# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved.
Jean-Paul Smets's avatar
Jean-Paul Smets committed
4
#                    Jean-Paul Smets-Solanes <jp@nexedi.com>
Jean-Paul Smets's avatar
Jean-Paul Smets committed
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
#
# WARNING: This program as such is intended to be used by professional
# programmers who take the whole responsability of assessing all potential
# consequences resulting from its eventual inadequacies and bugs
# End users who are looking for a ready-to-use solution with commercial
# garantees and support are strongly adviced to contract a Free Software
# Service Company
#
# This program is Free Software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
#
##############################################################################
"""
    ERP5 Free Software ERP
"""

# Update ERP5 Globals
from Products.ERP5Type.Utils import initializeProduct, updateGlobals
34 35 36
import sys, Permissions
this_module = sys.modules[ __name__ ]
document_classes = updateGlobals( this_module, globals(), permissions_module = Permissions)
Sebastien Robin's avatar
Sebastien Robin committed
37
from Products.PythonScripts.Utility import allow_class
38
from AccessControl import ModuleSecurityInfo
Sebastien Robin's avatar
Sebastien Robin committed
39 40 41

import MovementGroup
allow_class(MovementGroup)
Jean-Paul Smets's avatar
Jean-Paul Smets committed
42

43 44 45
from Globals import package_home
product_path = package_home( globals() )

Jean-Paul Smets's avatar
Jean-Paul Smets committed
46
# Define object classes and tools
47 48
from Tool import CategoryTool, SimulationTool, RuleTool, IdTool, TemplateTool,\
                 TestTool, DomainTool, AlarmTool, OrderTool, DeliveryTool,\
49
                 TrashTool, ContributionTool, NotificationTool, PasswordTool,\
Ivan Tyagov's avatar
Ivan Tyagov committed
50
                 GadgetTool, ContributionRegistryTool, IntrospectionTool
Jean-Paul Smets's avatar
Jean-Paul Smets committed
51
import ERP5Site
Sebastien Robin's avatar
Sebastien Robin committed
52
object_classes = ( ERP5Site.ERP5Site,
Jean-Paul Smets's avatar
Jean-Paul Smets committed
53 54 55 56
                 )
portal_tools = ( CategoryTool.CategoryTool,
                 SimulationTool.SimulationTool,
                 RuleTool.RuleTool,
Jean-Paul Smets's avatar
Jean-Paul Smets committed
57
                 IdTool.IdTool,
Jean-Paul Smets's avatar
Jean-Paul Smets committed
58
                 TemplateTool.TemplateTool,
Sebastien Robin's avatar
Sebastien Robin committed
59
                 AlarmTool.AlarmTool,
60
                 DomainTool.DomainTool,
Sebastien Robin's avatar
Sebastien Robin committed
61
                 TestTool.TestTool,
62 63
                 OrderTool.OrderTool,
                 DeliveryTool.DeliveryTool,
Aurel's avatar
Aurel committed
64
                 TrashTool.TrashTool,
65
                 PasswordTool.PasswordTool,
Jean-Paul Smets's avatar
Jean-Paul Smets committed
66
                 ContributionTool.ContributionTool,
67
                 NotificationTool.NotificationTool,
Jérome Perrin's avatar
Jérome Perrin committed
68
                 GadgetTool.GadgetTool,
69
                 ContributionRegistryTool.ContributionRegistryTool,
Ivan Tyagov's avatar
Ivan Tyagov committed
70
                 IntrospectionTool.IntrospectionTool,
Jean-Paul Smets's avatar
Jean-Paul Smets committed
71 72 73 74
                )
content_classes = ()
content_constructors = ()

Jean-Paul Smets's avatar
Jean-Paul Smets committed
75 76 77
# Import Interaction Workflow
from InteractionWorkflow import InteractionWorkflowDefinition

Jean-Paul Smets's avatar
Jean-Paul Smets committed
78 79 80
# Finish installation
def initialize( context ):
  import Document
81
  from zLOG import LOG
Jean-Paul Smets's avatar
Jean-Paul Smets committed
82
  # Initialize
Jean-Paul Smets's avatar
Jean-Paul Smets committed
83 84
  initializeProduct(context, this_module, globals(),
                         document_module = Document,
85
                         document_classes = document_classes,
Jean-Paul Smets's avatar
Jean-Paul Smets committed
86 87 88 89
                         object_classes = object_classes,
                         portal_tools = portal_tools,
                         content_constructors = content_constructors,
                         content_classes = content_classes)
90
  
91
  # Allow some usefull classes and fonctions in TTW code
92
  ModuleSecurityInfo('ZODB.POSException').declarePublic('ConflictError')
93 94 95 96 97
  ModuleSecurityInfo('pprint').declarePublic('pformat')
  ModuleSecurityInfo('zExceptions').declarePublic('BadRequest', 'NotFound',
                                                  'Redirect', 'Unauthorized')
  ModuleSecurityInfo('Products.CMFCore.WorkflowCore').declarePublic(
                                                   'WorkflowException')
98 99
  ModuleSecurityInfo('Products.ERP5.Document.Image').declarePublic(
                                                'getSizeFromImageDisplay')
100 101 102 103

# backward compatibility names
XML = None
UI = None
104