Skip to content

Commit 60508da

Browse files
committed
added system parameter for max number of objects merged
1 parent bf6bc54 commit 60508da

File tree

6 files changed

+26
-8
lines changed

6 files changed

+26
-8
lines changed

deltatech_merge/README.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@ Merge Objects
2020
|badge1| |badge2| |badge3|
2121

2222
Features:
23-
-
23+
- Merge objects
24+
- System parameter deltatech_merge.merge_objects_max_number can be used to define max number of objects to merge
2425

2526
**Table of contents**
2627

deltatech_merge/__manifest__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@
55
{
66
"name": "Merge Objects",
77
"summary": "Base module for merging",
8-
"version": "15.0.1.0.0",
8+
"version": "15.0.1.0.1",
99
"author": "Terrabit, Dorin Hongu",
1010
"website": "https://www.terrabit.ro",
1111
"category": "Tools",
1212
"depends": ["base"],
1313
"license": "LGPL-3",
14-
"data": ["security/ir.model.access.csv"],
14+
"data": ["security/ir.model.access.csv", "data/ir_config_parameter.xml"],
1515
"images": ["static/description/main_screenshot.png"],
1616
"development_status": "Beta",
1717
"maintainers": ["dhongu"],
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<?xml version="1.0" encoding="UTF-8" ?>
2+
<odoo>
3+
<record model="ir.config_parameter" id="merge_objects_max_number" forcecreate="False">
4+
<field name="key">deltatech_merge.merge_objects_max_number</field>
5+
<field name="value">3</field>
6+
</record>
7+
</odoo>
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
Features:
2-
-
2+
- Merge objects
3+
- System parameter deltatech_merge.merge_objects_max_number can be used to define max number of objects to merge

deltatech_merge/static/description/index.html

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -371,7 +371,8 @@ <h1 class="title">Merge Objects</h1>
371371
<dl class="docutils">
372372
<dt>Features:</dt>
373373
<dd><ul class="first last simple">
374-
<li></li>
374+
<li>Merge objects</li>
375+
<li>System parameter deltatech_merge.merge_objects_max_number can be used to define max number of objects to merge</li>
375376
</ul>
376377
</dd>
377378
</dl>

deltatech_merge/wizard/merge_object.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -306,13 +306,21 @@ def _merge(self, object_ids, dst_object=None, extra_checks=True):
306306
object_ids = Object.browse(object_ids).exists()
307307
if len(object_ids) < 2:
308308
return
309-
310-
if len(object_ids) > 3:
309+
params = self.env["ir.config_parameter"].sudo()
310+
try:
311+
max_no_objects = int(params.get_param("deltatech_merge.merge_objects_max_number", default=3))
312+
except Exception:
313+
raise UserError(
314+
_("Invalid system parameter value (deltatech_merge.merge_objects_max_number): %s")
315+
% params.get_param("deltatech_merge.merge_objects_max_number")
316+
)
317+
if len(object_ids) > max_no_objects:
311318
raise UserError(
312319
_(
313-
"For safety reasons, you cannot merge more than 3 objects together."
320+
"For safety reasons, you cannot merge more than %s objects together."
314321
" You can re-open the wizard several times if needed."
315322
)
323+
% max_no_objects
316324
)
317325

318326
# check if the list of objects to merge contains child/parent relation

0 commit comments

Comments
 (0)