__init__.py 4.52 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
from Products.ERP5Type.Globals import package_home
44 45
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,\
50 51
                 GadgetTool, ContributionRegistryTool, IntrospectionTool,\
                 AcknowledgementTool
Jean-Paul Smets's avatar
Jean-Paul Smets committed
52
import ERP5Site
Sebastien Robin's avatar
Sebastien Robin committed
53
object_classes = ( ERP5Site.ERP5Site,
Jean-Paul Smets's avatar
Jean-Paul Smets committed
54 55 56 57
                 )
portal_tools = ( CategoryTool.CategoryTool,
                 SimulationTool.SimulationTool,
                 RuleTool.RuleTool,
Jean-Paul Smets's avatar
Jean-Paul Smets committed
58
                 IdTool.IdTool,
Jean-Paul Smets's avatar
Jean-Paul Smets committed
59
                 TemplateTool.TemplateTool,
Sebastien Robin's avatar
Sebastien Robin committed
60
                 AlarmTool.AlarmTool,
61
                 DomainTool.DomainTool,
Sebastien Robin's avatar
Sebastien Robin committed
62
                 TestTool.TestTool,
63 64
                 OrderTool.OrderTool,
                 DeliveryTool.DeliveryTool,
Aurel's avatar
Aurel committed
65
                 TrashTool.TrashTool,
66
                 PasswordTool.PasswordTool,
Jean-Paul Smets's avatar
Jean-Paul Smets committed
67
                 ContributionTool.ContributionTool,
68
                 NotificationTool.NotificationTool,
Jérome Perrin's avatar
Jérome Perrin committed
69
                 GadgetTool.GadgetTool,
70
                 ContributionRegistryTool.ContributionRegistryTool,
Ivan Tyagov's avatar
Ivan Tyagov committed
71
                 IntrospectionTool.IntrospectionTool,
72
                 AcknowledgementTool.AcknowledgementTool,
Jean-Paul Smets's avatar
Jean-Paul Smets committed
73 74 75 76
                )
content_classes = ()
content_constructors = ()

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

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

# backward compatibility names
XML = None
UI = None
108