Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
erp5
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Paul Graydon
erp5
Commits
ed79e792
Commit
ed79e792
authored
10 years ago
by
Klaus Wölfel
Committed by
Klaus Wölfel
9 years ago
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ERP5 Configurator: Add generic configurator item for adding documents in given path
parent
d491791c
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
82 additions
and
0 deletions
+82
-0
product/ERP5Configurator/Document/PathConfiguratorItem.py
product/ERP5Configurator/Document/PathConfiguratorItem.py
+82
-0
No files found.
product/ERP5Configurator/Document/PathConfiguratorItem.py
0 → 100644
View file @
ed79e792
##############################################################################
#
# Copyright (c) 2008 Nexedi SA and Contributors. All Rights Reserved.
# TAHARA Yusei <yusei@nexedi.com>
#
# 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.
#
##############################################################################
from
warnings
import
warn
import
zope.interface
from
AccessControl
import
ClassSecurityInfo
from
Products.ERP5Type
import
Permissions
,
PropertySheet
,
interfaces
from
Products.ERP5Type.XMLObject
import
XMLObject
from
Products.ERP5Type.Message
import
translateString
from
Products.ERP5Configurator.mixin.configurator_item
import
ConfiguratorItemMixin
class
PathConfiguratorItem
(
ConfiguratorItemMixin
,
XMLObject
):
"""Create documents of given portal type in given path."""
meta_type
=
'ERP5 Path Configurator Item'
portal_type
=
'Path Configurator Item'
add_permission
=
Permissions
.
AddPortalContent
isPortalContent
=
1
isRADContent
=
1
# Declarative security
security
=
ClassSecurityInfo
()
security
.
declareObjectProtected
(
Permissions
.
AccessContentsInformation
)
# Declarative interfaces
zope
.
interface
.
implements
(
interfaces
.
IConfiguratorItem
)
# Declarative properties
property_sheets
=
(
PropertySheet
.
Base
,
PropertySheet
.
XMLObject
,
PropertySheet
.
CategoryCore
,
PropertySheet
.
DublinCore
,
PropertySheet
.
ConfiguratorItem
)
def
_checkConsistency
(
self
,
fixit
=
False
,
filter
=
None
,
**
kw
):
portal
=
self
.
getPortalObject
()
error_list
=
[]
for
container_path
,
document_dict
,
transition_method
in
iter
(
self
.
getConfigurationListList
()):
container
=
portal
.
unrestrictedTraverse
(
container_path
,
None
)
if
container
is
not
None
:
document
=
getattr
(
container
,
document_dict
[
'id'
],
None
)
if
document
is
None
:
error_list
.
append
(
self
.
_createConstraintMessage
(
"%s %s should be created"
%
(
document_dict
[
'id'
],
document_dict
[
'portal_type'
])))
if
fixit
:
document
=
container
.
newContent
(
**
document_dict
)
if
transition_method
is
not
None
:
getattr
(
document
,
transition_method
)
(
comment
=
translateString
(
"Transition executed by Configurator"
))
if
document
:
## add to customer template
business_configuration
=
self
.
getBusinessConfigurationValue
()
self
.
install
(
document
,
business_configuration
)
return
error_list
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment