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
Léo-Paul Géneau
erp5
Commits
a640eb9b
Commit
a640eb9b
authored
Jun 26, 2020
by
Arnaud Fontaine
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Products.ERP5: Remove Documents never used since their introduction many years ago.
parent
4773fac2
Changes
12
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
0 additions
and
921 deletions
+0
-921
product/ERP5/Document/Binder.py
product/ERP5/Document/Binder.py
+0
-53
product/ERP5/Document/PortalTest.py
product/ERP5/Document/PortalTest.py
+0
-54
product/ERP5/Document/Pricing.py
product/ERP5/Document/Pricing.py
+0
-70
product/ERP5/Document/SetPricing.py
product/ERP5/Document/SetPricing.py
+0
-71
product/ERP5/Document/VariatedProperty.py
product/ERP5/Document/VariatedProperty.py
+0
-66
product/ERP5/Document/Wiki.py
product/ERP5/Document/Wiki.py
+0
-336
product/ERP5/bootstrap/erp5_property_sheets/PropertySheetTemplateItem/portal_property_sheets/PortalTest.xml
...tySheetTemplateItem/portal_property_sheets/PortalTest.xml
+0
-60
product/ERP5/bootstrap/erp5_property_sheets/PropertySheetTemplateItem/portal_property_sheets/PortalTest/consistency_check_method_id_property.xml
...heets/PortalTest/consistency_check_method_id_property.xml
+0
-53
product/ERP5/bootstrap/erp5_property_sheets/PropertySheetTemplateItem/portal_property_sheets/PortalTest/consistency_fix_method_id_property.xml
..._sheets/PortalTest/consistency_fix_method_id_property.xml
+0
-53
product/ERP5/bootstrap/erp5_property_sheets/PropertySheetTemplateItem/portal_property_sheets/PortalTest/consistency_report_template_id_property.xml
...ts/PortalTest/consistency_report_template_id_property.xml
+0
-53
product/ERP5/bootstrap/erp5_property_sheets/bt/template_property_sheet_id_list
...p/erp5_property_sheets/bt/template_property_sheet_id_list
+0
-1
product/ERP5/mixin/variation.py
product/ERP5/mixin/variation.py
+0
-51
No files found.
product/ERP5/Document/Binder.py
deleted
100644 → 0
View file @
4773fac2
##############################################################################
#
# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved.
# Jean-Paul Smets-Solanes <jp@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
AccessControl
import
ClassSecurityInfo
from
Products.ERP5Type
import
Permissions
,
PropertySheet
from
Products.ERP5Type.Core.Folder
import
Folder
from
Products.ERP5.Document.Document
import
Document
class
Binder
(
Folder
,
Document
):
"""
A Binder is a Folder wich can be considered as a document.
"""
meta_type
=
'ERP5 Binder'
portal_type
=
'Binder'
# Declarative security
security
=
ClassSecurityInfo
()
security
.
declareObjectProtected
(
Permissions
.
AccessContentsInformation
)
# Declarative properties
property_sheets
=
(
PropertySheet
.
Base
,
PropertySheet
.
XMLObject
,
PropertySheet
.
Document
,
PropertySheet
.
DublinCore
)
product/ERP5/Document/PortalTest.py
deleted
100644 → 0
View file @
4773fac2
##############################################################################
#
# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved.
# Jean-Paul Smets-Solanes <jp@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
AccessControl
import
ClassSecurityInfo
from
Products.ERP5Type
import
Permissions
,
PropertySheet
from
Products.ERP5Type.XMLMatrix
import
XMLMatrix
from
Products.ERP5.Document.MappedValue
import
MappedValue
class
PortalTest
(
MappedValue
,
XMLMatrix
):
"""
Container for test descriptions (funtionnal test scenarii,...).
"""
meta_type
=
'ERP5 Portal Test'
portal_type
=
'Portal Test'
add_permission
=
Permissions
.
AddPortalContent
# Declarative security
security
=
ClassSecurityInfo
()
security
.
declareObjectProtected
(
Permissions
.
AccessContentsInformation
)
# Declarative properties
property_sheets
=
(
PropertySheet
.
Base
,
PropertySheet
.
DublinCore
,
PropertySheet
.
CategoryCore
,
PropertySheet
.
PortalTest
)
product/ERP5/Document/Pricing.py
deleted
100644 → 0
View file @
4773fac2
##############################################################################
#
# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved.
# Jean-Paul Smets-Solanes <jp@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
AccessControl
import
ClassSecurityInfo
from
Products.ERP5Type
import
Permissions
,
PropertySheet
from
Products.ERP5Type.XMLMatrix
import
XMLMatrix
from
Products.ERP5.Document.MappedValue
import
MappedValue
class
Pricing
(
MappedValue
,
XMLMatrix
):
"""
Un element de tarif est un prix pour un ensemble de conditions d'application...
"""
meta_type
=
'ERP5 Pricing'
portal_type
=
'Pricing'
add_permission
=
Permissions
.
AddPortalContent
# Declarative security
security
=
ClassSecurityInfo
()
security
.
declareObjectProtected
(
Permissions
.
AccessContentsInformation
)
# Declarative properties
property_sheets
=
(
PropertySheet
.
Base
,
PropertySheet
.
XMLObject
,
PropertySheet
.
CategoryCore
,
PropertySheet
.
Price
,
PropertySheet
.
Pricing
)
security
.
declareProtected
(
Permissions
.
ModifyPortalContent
,
'_setQuantityRangeList'
)
def
_setQuantityRangeList
(
self
,
category_list
):
"""
Defines the possible base categories which Quantity value (Q)
variate on
"""
self
.
_setCategoryMembership
(
'quantity_range'
,
category_list
,
base
=
0
)
self
.
setCellRange
((
None
,),
category_list
,
base_id
=
'destination_base_price'
)
security
.
declareProtected
(
Permissions
.
ModifyPortalContent
,
'setQuantityRangeList'
)
def
setQuantityRangeList
(
self
,
category_list
):
self
.
_setQuantityRangeList
(
category_list
)
self
.
reindexObject
()
product/ERP5/Document/SetPricing.py
deleted
100644 → 0
View file @
4773fac2
##############################################################################
#
# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved.
# Jean-Paul Smets-Solanes <jp@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
AccessControl
import
ClassSecurityInfo
from
Products.ERP5Type
import
Permissions
,
PropertySheet
from
Products.ERP5Type.XMLMatrix
import
XMLMatrix
from
Products.ERP5.Document.MappedValue
import
MappedValue
class
SetPricing
(
MappedValue
,
XMLMatrix
):
"""
Un element de tarif est un prix pour un ensemble de conditions d'application...
"""
meta_type
=
'ERP5 Set Pricing'
portal_type
=
'Set Pricing'
add_permission
=
Permissions
.
AddPortalContent
# Declarative security
security
=
ClassSecurityInfo
()
security
.
declareObjectProtected
(
Permissions
.
AccessContentsInformation
)
# Declarative properties
property_sheets
=
(
PropertySheet
.
Base
,
PropertySheet
.
XMLObject
,
PropertySheet
.
CategoryCore
,
PropertySheet
.
Price
,
PropertySheet
.
Pricing
)
security
.
declareProtected
(
Permissions
.
ModifyPortalContent
,
'_setQuantityRangeList'
)
def
_setQuantityRangeList
(
self
,
category_list
):
"""
Defines the possible base categories which Quantity value (Q)
variate on
"""
self
.
_setCategoryMembership
(
'quantity_range'
,
category_list
,
base
=
0
)
self
.
setCellRange
((
None
,),
category_list
,
base_id
=
'destination_base_price'
)
security
.
declareProtected
(
Permissions
.
ModifyPortalContent
,
'setQuantityRangeList'
)
def
setQuantityRangeList
(
self
,
category_list
):
self
.
_setQuantityRangeList
(
category_list
)
self
.
reindexObject
()
product/ERP5/Document/VariatedProperty.py
deleted
100644 → 0
View file @
4773fac2
##############################################################################
#
# Copyright (c) 2005 Nexedi SARL and Contributors. All Rights Reserved.
# Yoshinori Okuji <yo@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.
#
##############################################################################
import
zope.interface
from
AccessControl
import
ClassSecurityInfo
from
Products.ERP5Type
import
Permissions
,
PropertySheet
,
interfaces
from
Products.ERP5Type.XMLObject
import
XMLObject
from
Products.ERP5Type.XMLMatrix
import
XMLMatrix
class
VariatedProperty
(
XMLObject
,
XMLMatrix
):
"""
VariatedReference defines a reference which
can take multiples values depending of the variations of a resource
Maybe defined by mapped values inside the resource
"""
meta_type
=
'ERP5 Variated Property'
portal_type
=
'Variated Property'
add_permission
=
Permissions
.
AddPortalContent
# Declarative security
security
=
ClassSecurityInfo
()
security
.
declareObjectProtected
(
Permissions
.
AccessContentsInformation
)
# Declarative properties
property_sheets
=
(
PropertySheet
.
Base
,
PropertySheet
.
SimpleItem
,
PropertySheet
.
VariationRange
,
PropertySheet
.
MappedValue
)
# Declarative interfaces
zope
.
interface
.
implements
(
interfaces
.
IVariated
,
)
security
.
declareProtected
(
Permissions
.
ModifyPortalContent
,
'newCellContent'
)
def
newCellContent
(
self
,
id
,
portal_type
=
'Set Mapped Value'
,
**
kw
):
"""Overriden to specify default portal type
"""
return
self
.
newContent
(
id
=
id
,
portal_type
=
portal_type
,
**
kw
)
product/ERP5/Document/Wiki.py
deleted
100644 → 0
View file @
4773fac2
##############################################################################
#
# Copyright (c) 2005 Nexedi SARL and Contributors. All Rights Reserved.
# Yoshinori Okuji <yo@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
AccessControl
import
ClassSecurityInfo
from
Products.ERP5Type
import
Permissions
,
PropertySheet
from
Products.ERP5.Document.Document
import
Document
import
cgi
import
re
class
Wiki
(
Document
):
"""
A simple Wiki document. A Wiki page may contain
subobjects (File, Image, etc.) just like any text
based Document.
"""
# Default Properties
property_sheets
=
(
PropertySheet
.
Base
,
PropertySheet
.
XMLObject
,
PropertySheet
.
CategoryCore
,
PropertySheet
.
DublinCore
,
PropertySheet
.
Document
)
# CMF Type Definition
meta_type
=
'ERP5 Wiki'
portal_type
=
'Wiki'
add_permission
=
Permissions
.
AddPortalContent
# Declarative security
security
=
ClassSecurityInfo
()
security
.
declareObjectProtected
(
Permissions
.
AccessContentsInformation
)
# Compile regular expressions at load time.
table_expr
=
re
.
compile
(
r"^\
|
\|(.+)\
|
\|$"
)
heading_expr
=
re
.
compile
(
r"^(={1,5}) (.+) \1$"
)
horizontal_line_expr
=
re
.
compile
(
r"^-{4,}$"
)
enumerated_list_expr
=
re
.
compile
(
r"^(\
s+)[
0-9]+\
.(.*)
")
item_list_expr = re.compile(r"
^
(
\
s
+
)
\
*
(.
*
)
")
preformatted_text_expr = re.compile(r"
^
{{{
$
")
empty_line_expr = re.compile(r"
^
\
s
*
$
")
line_expr_map = {
'table' : table_expr,
'heading' : heading_expr,
'horizontal_line' : horizontal_line_expr,
'enumerated_list' : enumerated_list_expr,
'item_list' : item_list_expr,
'preformatted_text' : preformatted_text_expr,
'empty_line' : empty_line_expr,
}
wiki_name_expr = re.compile(r"
!?
([
A
-
Z
][
a
-
z
]
+
){
2
,}(
/
([
A
-
Z
][
a
-
z
]
+
){
2
,})
*
")
underscore_expr = re.compile(r"
__
([
^
_
]
+
)
__
")
bold_expr = re.compile(r"'''([^']+)'''")
italic_expr = re.compile(r"
(
?
<
!
')''([^'
]
+
)
''
(
?!
')")
strike_expr = re.compile(r"~~([^~]+)~~")
url_expr = re.compile(r"(!?[a-z]+://[^ ]+)")
link_expr = re.compile(r"(?<!
\
[)
\
[([^
\
] ]+) ([^
\
]]+)
\
](?!
\
])")
tales_expr = re.compile(r"
\
[
\
[([^
\
]]+)
\
]
\
]
"
)
text_expr_map = {
'
wiki_name
' : wiki_name_expr,
'
underscore
': underscore_expr,
'
bold
' : bold_expr,
'
italic
' : italic_expr,
'
strike
' : strike_expr,
'
url
' : url_expr,
'
link
' : link_expr,
'
tales
' : tales_expr,
}
def _getTopLevelUrl(self):
o = self.getParentValue()
while o.meta_type == '
ERP5
Wiki
':
o = o.getParentValue()
return o.absolute_url()
def _render_text(self, text):
"""
Render a piece of text.
"""
text_list = []
append = text_list.append
while text:
min_start = len(text)
match = None
min_key = None
for key, expr in self.text_expr_map.items():
m = expr.search(text)
if m is not None:
start = m.start(0)
if min_start > start:
min_start = start
min_key = key
match = m
if match is None:
# Nothing special.
append(cgi.escape(text))
break
else:
if min_start > 0:
append(text[:min_start])
if min_key == '
wiki_name
':
name = match.string[match.start(0):match.end(0)]
if name.startswith('
!
'):
append(name[1:])
else:
# FIMXE: Create a new wiki instance if not present.
append('
<
a
href
=
"%s/%s"
>%
s
</
a
>
' % (self._getTopLevelUrl(), name, name))
elif min_key == '
url
':
url = match.string[match.start(1):match.end(1)]
if url.startswith('
!
'):
append(url[1:])
else:
# XXX Language-specific evil hack.
if url[-1] in r",.'
)]}
":
extra = url[-1]
url = url[:-1]
else:
extra = None
append('<a href="
%
s
">%s</a>' % (url, cgi.escape(url)))
if extra is not None:
append(extra)
elif min_key == 'tales':
append(self._render_tales(match.string[match.start(1):match.end(1)]))
elif min_key == 'link':
link, label = match.groups()
label = self._render_text(label)
if self.wiki_name_expr.search(link):
# FIXME: Create a new wiki instance if not present
append('<a href="
%
s
/%
s
">%s</a>' % (self._getTopLevelUrl(), link, label))
else:
append('<a href="
%
s
">%s</a>' % (link, label))
else:
word = self._render_text(match.string[match.start(1):match.end(1)])
if min_key == 'underscore':
append('<u>%s</u>' % word)
elif min_key == 'italic':
append('<i>%s</i>' % word)
elif min_key == 'bold':
append('<b>%s</b>' % word)
elif min_key == 'strike':
append('<del>%s</del>' % word)
text = text[match.end(0):]
return ''.join(text_list)
def _render_tales(self, expr):
"""
Evaluate the expression.
FIXME
"""
return ''
def _render_table_row(self, text):
"""
Render a row of a table.
"""
text_list = ['<tr>']
append = text_list.append
for cell in text.split('||'):
append('<td>')
append(self._render_text(cell))
append('</td>')
append('</tr>')
return ''.join(text_list)
security.declareProtected(Permissions.View, 'render')
def render(self, content=None, format=None):
"""
Render the contents and generate HTML.
FIXME: Very dirty. Better to rewrite this with a state machine.
"""
if content is None:
content = self.getTextContent()
if content is None:
content = ''
preformatted = False
in_table = False
in_paragraph = False
list_stack = []
line_list = []
append = line_list.append
for line in content.split('
\
n
'): # Used to be
\
r
\
n
if preformatted:
if line == '}}}':
preformatted = False
append('</pre>')
else:
append(cgi.escape(line))
continue
if in_table:
m = self.table_expr.search(line)
if m is not None:
append(self._render_table_row(m.string[m.start(1):m.end(1)]))
continue
else:
append('</table>')
if list_stack:
for key, expr in (('enumerated_list', self.enumerated_list_expr), ('item_list', self.item_list_expr)):
m = expr.search(line)
if m is not None:
break
else:
key = None
if key is None:
level = 0
else:
level = m.end(1) - m.start(1)
while list_stack and list_stack[-1][1] > level:
prev_key, prev_level = list_stack.pop()
if prev_key == 'enumerated_list':
append('</ol>')
else:
append('</ul>')
if list_stack and list_stack[-1][1] == level:
if key == list_stack[-1][0]:
append('<li>')
append(self._render_text(m.string[m.start(2):m.end(2)]))
continue
else:
prev_key, prev_level = list_stack.pop()
if prev_key == 'enumerated_list':
append('</ol>')
else:
append('</ul>')
if key is not None:
list_stack.append((key, level))
if key == 'enumerated_list':
append('<ol><li>')
append(self._render_text(m.string[m.start(2):m.end(2)]))
else:
append('<ul><li>')
append(self._render_text(m.string[m.start(2):m.end(2)]))
continue
for key, expr in self.line_expr_map.items():
m = expr.search(line)
if m is not None:
break
else:
key = None
if in_paragraph and key is not None:
in_paragraph = False
append('</p>')
if key == 'preformatted_text':
preformatted = True
append('<pre>')
elif key == 'horizontal_line':
append('<hr>')
elif key == 'table':
in_table = True
append('<table>')
append(self._render_table_row(m.string[m.start(1):m.end(1)]))
elif key == 'heading':
level = m.end(1) - m.start(1)
append('<h%d>' % level)
append(self._render_text(m.string[m.start(2):m.end(2)]))
append('</h%d>' % level)
elif key == 'enumerated_list':
list_stack.append((key, m.end(1) - m.start(1)))
append('<ol><li>')
append(self._render_text(m.string[m.start(2):m.end(2)]))
elif key == 'item_list':
list_stack.append((key, m.end(1) - m.start(1)))
append('<ul><li>')
append(self._render_text(m.string[m.start(2):m.end(2)]))
elif key == 'empty_line':
pass
else:
if not in_paragraph:
in_paragraph = True
append('<p>')
append(self._render_text(line))
while list_stack:
key, level = list_stack.pop()
if key == 'enumerated_list':
append('</ol>')
else:
append('</ul>')
if in_paragraph:
append('</p>')
if in_table:
append('</table>')
if preformatted:
append('</pre>')
return '
\
n
'.join(line_list)
product/ERP5/bootstrap/erp5_property_sheets/PropertySheetTemplateItem/portal_property_sheets/PortalTest.xml
deleted
100644 → 0
View file @
4773fac2
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Property Sheet"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_count
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
_mt_index
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAM=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
_tree
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAQ=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
PortalTest
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Property Sheet
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"Length"
module=
"BTrees.Length"
/>
</pickle>
<pickle>
<int>
0
</int>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"OOBTree"
module=
"BTrees.OOBTree"
/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
<record
id=
"4"
aka=
"AAAAAAAAAAQ="
>
<pickle>
<global
name=
"OOBTree"
module=
"BTrees.OOBTree"
/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
</ZopeData>
product/ERP5/bootstrap/erp5_property_sheets/PropertySheetTemplateItem/portal_property_sheets/PortalTest/consistency_check_method_id_property.xml
deleted
100644 → 0
View file @
4773fac2
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Standard Property"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_local_properties
</string>
</key>
<value>
<tuple>
<dictionary>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
mode
</string>
</value>
</item>
<item>
<key>
<string>
type
</string>
</key>
<value>
<string>
string
</string>
</value>
</item>
</dictionary>
</tuple>
</value>
</item>
<item>
<key>
<string>
categories
</string>
</key>
<value>
<tuple>
<string>
elementary_type/string
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Method to invoke as a consistency test
</string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
consistency_check_method_id_property
</string>
</value>
</item>
<item>
<key>
<string>
mode
</string>
</key>
<value>
<string>
w
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Standard Property
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
product/ERP5/bootstrap/erp5_property_sheets/PropertySheetTemplateItem/portal_property_sheets/PortalTest/consistency_fix_method_id_property.xml
deleted
100644 → 0
View file @
4773fac2
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Standard Property"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_local_properties
</string>
</key>
<value>
<tuple>
<dictionary>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
mode
</string>
</value>
</item>
<item>
<key>
<string>
type
</string>
</key>
<value>
<string>
string
</string>
</value>
</item>
</dictionary>
</tuple>
</value>
</item>
<item>
<key>
<string>
categories
</string>
</key>
<value>
<tuple>
<string>
elementary_type/lines
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Method to invoke as a consistency test
</string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
consistency_fix_method_id_property
</string>
</value>
</item>
<item>
<key>
<string>
mode
</string>
</key>
<value>
<string>
w
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Standard Property
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
product/ERP5/bootstrap/erp5_property_sheets/PropertySheetTemplateItem/portal_property_sheets/PortalTest/consistency_report_template_id_property.xml
deleted
100644 → 0
View file @
4773fac2
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Standard Property"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_local_properties
</string>
</key>
<value>
<tuple>
<dictionary>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
mode
</string>
</value>
</item>
<item>
<key>
<string>
type
</string>
</key>
<value>
<string>
string
</string>
</value>
</item>
</dictionary>
</tuple>
</value>
</item>
<item>
<key>
<string>
categories
</string>
</key>
<value>
<tuple>
<string>
elementary_type/lines
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Template id to invoke for rendering consistency test
</string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
consistency_report_template_id_property
</string>
</value>
</item>
<item>
<key>
<string>
mode
</string>
</key>
<value>
<string>
w
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Standard Property
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
product/ERP5/bootstrap/erp5_property_sheets/bt/template_property_sheet_id_list
View file @
a640eb9b
...
...
@@ -124,7 +124,6 @@ PDFType
Periodicity
PeriodicityTerm
Person
PortalTest
Predicate
Preference
Price
...
...
product/ERP5/mixin/variation.py
deleted
100644 → 0
View file @
4773fac2
# -*- coding: utf-8 -*-
##############################################################################
#
# Copyright (c) 2010 Nexedi SA and Contributors. All Rights Reserved.
#
# WARNING: This program as such is intended to be used by professional
# programmers who take the whole responsibility 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
# guarantees 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
##############################################################################
import
zope.interface
from
AccessControl
import
ClassSecurityInfo
from
Products.ERP5Type
import
Permissions
,
interfaces
from
Products.ERP5.Document.Amount
import
Amount
class
VariationMixin
:
"""
Although MappedValue are supposed to be independent of any
design choice, we have to implement them as subclasses of
Amount in order to make sure they provide a complete
variation interface. In particular, we want to be able
to call getVariationValue / setVariationValue on a
MappedValue.
(XXX - NO MORE)
XXX - Amount should be remove from here
Interesting Idea: properties and categories of the mapped value
(not of the predicate) could be handled through additional matrix
dimensions rather than through ad-hoc definition.
"""
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