odoo-addon-dms 16.0.1.2.2__py3-none-any.whl → 16.0.1.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,7 +7,7 @@ Document Management System
7
7
  !! This file is generated by oca-gen-addon-readme !!
8
8
  !! changes will be overwritten. !!
9
9
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
10
- !! source digest: sha256:d2bdadccea3f3caf095e52f174765ff0424b910fcd66043ae16312dc04bbd479
10
+ !! source digest: sha256:f5b0c5973fb88b4ea9eae30477fb15e3c0265720a54c4b4975806a4b6107d466
11
11
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
12
12
 
13
13
  .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
@@ -4,7 +4,7 @@
4
4
  {
5
5
  "name": "Document Management System",
6
6
  "summary": """Document Management System for Odoo""",
7
- "version": "16.0.1.2.2",
7
+ "version": "16.0.1.3.0",
8
8
  "category": "Document Management",
9
9
  "license": "LGPL-3",
10
10
  "website": "https://github.com/OCA/dms",
@@ -1798,7 +1798,9 @@ msgid "Single Files"
1798
1798
  msgstr ""
1799
1799
 
1800
1800
  #. module: dms
1801
+ #: model:ir.model.fields,field_description:dms.field_dms_directory__human_size
1801
1802
  #: model:ir.model.fields,field_description:dms.field_dms_directory__size
1803
+ #: model:ir.model.fields,field_description:dms.field_dms_file__human_size
1802
1804
  #: model:ir.model.fields,field_description:dms.field_dms_file__size
1803
1805
  #: model:ir.model.fields,field_description:dms.field_res_config_settings__documents_binary_max_size
1804
1806
  #: model_terms:ir.ui.view,arch_db:dms.portal_my_dms
@@ -1,4 +1,5 @@
1
1
  # Copyright 2021 Tecnativa - Jairo Llopis
2
+ # Copyright 2024 Tecnativa - Víctor Martínez
2
3
  # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl).
3
4
 
4
5
  from odoo import models
@@ -8,12 +9,16 @@ class Base(models.AbstractModel):
8
9
  _inherit = "base"
9
10
 
10
11
  def unlink(self):
11
- """Cascade DMS related resources removal."""
12
+ """Cascade DMS related resources removal.
13
+ Avoid executing in ir.* models (ir.mode, ir.model.fields, etc), in transient
14
+ models and in the models we want to check."""
12
15
  result = super().unlink()
13
- self.env["dms.file"].sudo().search(
14
- [("res_model", "=", self._name), ("res_id", "in", self.ids)]
15
- ).unlink()
16
- self.env["dms.directory"].sudo().search(
17
- [("res_model", "=", self._name), ("res_id", "in", self.ids)]
18
- ).unlink()
16
+ if (
17
+ not self._name.startswith("ir.")
18
+ and not self.is_transient()
19
+ and self._name not in ("dms.file", "dms.directory")
20
+ ):
21
+ domain = [("res_model", "=", self._name), ("res_id", "in", self.ids)]
22
+ self.env["dms.file"].sudo().search(domain).unlink()
23
+ self.env["dms.directory"].sudo().search(domain).unlink()
19
24
  return result
@@ -12,7 +12,7 @@ from collections import defaultdict
12
12
  from odoo import _, api, fields, models, tools
13
13
  from odoo.exceptions import UserError, ValidationError
14
14
  from odoo.osv.expression import AND, OR
15
- from odoo.tools import consteq
15
+ from odoo.tools import consteq, human_size
16
16
 
17
17
  from odoo.addons.http_routing.models.ir_http import slugify
18
18
 
@@ -186,6 +186,7 @@ class DmsDirectory(models.Model):
186
186
  )
187
187
 
188
188
  size = fields.Float(compute="_compute_size")
189
+ human_size = fields.Char(compute="_compute_human_size", string="Size")
189
190
 
190
191
  inherit_group_ids = fields.Boolean(string="Inherit Groups", default=True)
191
192
 
@@ -480,6 +481,11 @@ class DmsDirectory(models.Model):
480
481
  )
481
482
  record.size = sum(rec.get("size", 0) for rec in recs)
482
483
 
484
+ @api.depends("size")
485
+ def _compute_human_size(self):
486
+ for item in self:
487
+ item.human_size = human_size(item.size) if item.size else False
488
+
483
489
  @api.depends(
484
490
  "group_ids",
485
491
  "inherit_group_ids",
@@ -104,6 +104,9 @@ class File(models.Model):
104
104
  )
105
105
 
106
106
  size = fields.Float(readonly=True)
107
+ human_size = fields.Char(
108
+ readonly=True, string="Size", compute="_compute_human_size", store=True
109
+ )
107
110
 
108
111
  checksum = fields.Char(string="Checksum/SHA1", readonly=True, index="btree")
109
112
 
@@ -431,6 +434,11 @@ class File(models.Model):
431
434
  binary = base64.b64decode(record.content or "")
432
435
  record.mimetype = guess_mimetype(binary)
433
436
 
437
+ @api.depends("size")
438
+ def _compute_human_size(self):
439
+ for item in self:
440
+ item.human_size = human_size(item.size)
441
+
434
442
  @api.depends("content_binary", "content_file", "attachment_id")
435
443
  def _compute_content(self):
436
444
  bin_size = self.env.context.get("bin_size", False)
@@ -3,6 +3,7 @@ id,name,model_id/id,group_id/id,perm_read,perm_write,perm_create,perm_unlink
3
3
  access_dms_tag_user,dms_tag_user,model_dms_tag,group_dms_user,1,1,1,1
4
4
  access_dms_category_user,dms_category_user,model_dms_category,group_dms_user,1,1,1,1
5
5
 
6
+ access_dms_storage_base_user,dms_storage_base_user,model_dms_storage,base.group_user,1,0,0,0
6
7
  access_dms_storage_portal,dms_storage_portal,model_dms_storage,base.group_portal,1,0,0,0
7
8
  access_dms_storage_user,dms_storage_user,model_dms_storage,group_dms_user,1,0,0,0
8
9
  access_dms_storage_manager,dms_storage_manager,model_dms_storage,group_dms_manager,1,1,1,1
@@ -366,7 +366,7 @@ ul.auto-toc {
366
366
  !! This file is generated by oca-gen-addon-readme !!
367
367
  !! changes will be overwritten. !!
368
368
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
369
- !! source digest: sha256:d2bdadccea3f3caf095e52f174765ff0424b910fcd66043ae16312dc04bbd479
369
+ !! source digest: sha256:f5b0c5973fb88b4ea9eae30477fb15e3c0265720a54c4b4975806a4b6107d466
370
370
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
371
371
  <p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/lgpl-3.0-standalone.html"><img alt="License: LGPL-3" src="https://img.shields.io/badge/licence-LGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/dms/tree/16.0/dms"><img alt="OCA/dms" src="https://img.shields.io/badge/github-OCA%2Fdms-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/dms-16-0/dms-16-0-dms"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/dms&amp;target_branch=16.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
372
372
  <p>DMS is a module for creating, managing and viewing document files directly
@@ -479,7 +479,7 @@
479
479
  </group>
480
480
  <group name="data">
481
481
  <group>
482
- <field name="size" widget="integer" />
482
+ <field name="human_size" />
483
483
  <field name="count_elements" string="Elements" />
484
484
  </group>
485
485
  <group>
@@ -533,7 +533,7 @@
533
533
  string="Directories"
534
534
  />
535
535
  <field name="count_total_files" string="Files" />
536
- <field name="size" widget="integer" />
536
+ <field name="human_size" />
537
537
  </tree>
538
538
  </field>
539
539
  </page>
@@ -546,7 +546,7 @@
546
546
  <tree limit="10">
547
547
  <field name="name" />
548
548
  <field name="mimetype" />
549
- <field name="size" widget="integer" />
549
+ <field name="human_size" />
550
550
  <field name="write_date" readonly="1" />
551
551
  </tree>
552
552
  </field>
@@ -323,7 +323,7 @@
323
323
  <field name="is_lock_editor" invisible="1" />
324
324
  <field name="name" />
325
325
  <field name="write_date" />
326
- <field name="size" widget="integer" />
326
+ <field name="human_size" />
327
327
  <field name="mimetype" />
328
328
  <field name="category_id" invisible="1" />
329
329
  <field
@@ -596,7 +596,7 @@
596
596
  <field name="is_lock_editor" invisible="1" />
597
597
  <field name="name" />
598
598
  <field name="write_date" />
599
- <field name="size" widget="integer" />
599
+ <field name="human_size" />
600
600
  <field name="mimetype" />
601
601
  <field name="storage_id" />
602
602
  <field name="migration" />
@@ -199,7 +199,7 @@
199
199
  <field name="name" />
200
200
  <field name="count_total_directories" />
201
201
  <field name="count_total_files" />
202
- <field name="size" />
202
+ <field name="human_size" />
203
203
  </tree>
204
204
  </field>
205
205
  </page>
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: odoo-addon-dms
3
- Version: 16.0.1.2.2
3
+ Version: 16.0.1.3.0
4
4
  Summary: Document Management System for Odoo
5
5
  Home-page: https://github.com/OCA/dms
6
6
  Author: MuK IT, Tecnativa, Odoo Community Association (OCA)
@@ -23,7 +23,7 @@ Document Management System
23
23
  !! This file is generated by oca-gen-addon-readme !!
24
24
  !! changes will be overwritten. !!
25
25
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
26
- !! source digest: sha256:d2bdadccea3f3caf095e52f174765ff0424b910fcd66043ae16312dc04bbd479
26
+ !! source digest: sha256:f5b0c5973fb88b4ea9eae30477fb15e3c0265720a54c4b4975806a4b6107d466
27
27
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
28
28
 
29
29
  .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
@@ -1,6 +1,6 @@
1
- odoo/addons/dms/README.rst,sha256=JGFlAqQiHVI95Xm5qSXnRTw07vvbM0h7Y_nNaqIGi5s,7748
1
+ odoo/addons/dms/README.rst,sha256=_tnup4Z2GMmGLWrpOq_0VAf_dR2ijxK9of93_M1uA6A,7748
2
2
  odoo/addons/dms/__init__.py,sha256=jQ-fltIs1ohXt7udDkkJwzh7ckauQW2rbmv1Wtg3SjQ,47
3
- odoo/addons/dms/__manifest__.py,sha256=03ZeWltwYG9b4vL56OsI0NAwFV_uW-U3vRzVvk3kVoo,1767
3
+ odoo/addons/dms/__manifest__.py,sha256=dGXVr1kX5suLSUQi1H6COCgFhfx1OB2kEPDnm2gdEWc,1767
4
4
  odoo/addons/dms/actions/file.xml,sha256=NlRIQoCbbDSaRmsumJP9dcrNtYpQji74hwhfi5TillE,524
5
5
  odoo/addons/dms/controllers/__init__.py,sha256=akfNDwFGryweTYowOA3DbbP0zvLmQtCdihtGhYvsIPQ,40
6
6
  odoo/addons/dms/controllers/main.py,sha256=9TjOKDeNerPNN4CKL0TWQiqOpNug8pqG6F5uBJO3bkM,1960
@@ -13,7 +13,7 @@ odoo/addons/dms/demo/res_users.xml,sha256=edRmAsHsaQYhHiJWdFni5BGM3-0Vskw3A1grXC
13
13
  odoo/addons/dms/demo/storage.xml,sha256=-FaGk-HRVGjqsrotq7rfsObWFF4E6FiIGjVWPYFrWiI,751
14
14
  odoo/addons/dms/demo/tag.xml,sha256=QfLyWfBB2Cpa6mMWmuUfQJ-l3Ofj8QpFglVmTFgIsGs,2408
15
15
  odoo/addons/dms/i18n/de.po,sha256=esnxXJRQPQUoTmUh9b6PKMLZglG5R_wYIXVykgm-_6E,80293
16
- odoo/addons/dms/i18n/dms.pot,sha256=OkZtpZ_51G0mzwN7jJhizrE9iEAJZ7a7j9oyk7u91Wc,68389
16
+ odoo/addons/dms/i18n/dms.pot,sha256=Smr2UmCPG4w4ChgJaJmHDusZFhqAC8xlV6z8u-6Krxs,68542
17
17
  odoo/addons/dms/i18n/es.po,sha256=_ZlAwIuAvQDyd2DKB0Ner8jtBNYaxjkN0qKTGk0e3HE,83089
18
18
  odoo/addons/dms/i18n/fr.po,sha256=Edh5ii8JfZCnig6SAHdzt1WPMq3VxX9HVKnJtlpe69E,81959
19
19
  odoo/addons/dms/i18n/he_IL.po,sha256=a4vddug7dTHnnFpCAMeDkQopGypm8K5llOFa8_4lusc,78974
@@ -24,10 +24,10 @@ odoo/addons/dms/i18n/ru.po,sha256=M25ee78XSL1uh227031c2FjhM5z6BXtVuPGDM3NDWIw,68
24
24
  odoo/addons/dms/models/__init__.py,sha256=La9Zyaj_PZKuwp73-PAlyFwgZlK8skeYxl5LovFjTm8,371
25
25
  odoo/addons/dms/models/abstract_dms_mixin.py,sha256=n4-4hkz1qRYQfPcfzMEfCSfi5yzdtNF_MRysvzTn3-w,2086
26
26
  odoo/addons/dms/models/access_groups.py,sha256=ldhs1cc_wlG1G4zfg8ohPwh_mFO1C5wEq6Gza9PXDOU,5504
27
- odoo/addons/dms/models/base.py,sha256=h6hYw7C_OwbP9xih1Cw6v0lOWypEk1pocc0q2gLHaYA,599
27
+ odoo/addons/dms/models/base.py,sha256=t7uhbkDE9L4UdvYJAwPTlX5ff2Y9S01urlFfC3KlLxM,893
28
28
  odoo/addons/dms/models/category.py,sha256=MB36VPKw3DItR5ZYM7CCROO3LDDTpTx87clML966GAs,4132
29
- odoo/addons/dms/models/directory.py,sha256=StZq8lNNL2qAqWVPTSyEqQxtV-WfevTaG4y_ojwkoW8,28459
30
- odoo/addons/dms/models/dms_file.py,sha256=KPzcw6KkNS3OpTJnio7S8-7HX7NTMKuLPvdlHqyWwC0,24599
29
+ odoo/addons/dms/models/directory.py,sha256=uMSYPEnu6bupTxzqCqxZAvGH7W0j7ZzWBPez6r3M9FA,28709
30
+ odoo/addons/dms/models/dms_file.py,sha256=AkIf8yuIXW0LukqOsZLBIOb3INsbCxX48w81ZVYVVwE,24854
31
31
  odoo/addons/dms/models/dms_security_mixin.py,sha256=PE5o_TvOn746OckncuZs73zVStP348Tlmy9C68PaI2U,9733
32
32
  odoo/addons/dms/models/ir_attachment.py,sha256=-AwkedqL2cgPZ794O31UIMvchrf_a9TPVE1rEb--CXQ,3248
33
33
  odoo/addons/dms/models/mail_thread.py,sha256=ccAn2MHONCncjsJewBrLqMVBl6tmn2kezyJVJq2utVk,583
@@ -43,11 +43,11 @@ odoo/addons/dms/readme/DESCRIPTION.rst,sha256=rIH_rBFm_Rh-MuKsmoZh8w6o2HvlcGoxng
43
43
  odoo/addons/dms/readme/INSTALL.rst,sha256=9u-nKvIKsa1wrSODP7Rfi41GCb2lAFwclwTIF6buQ7c,325
44
44
  odoo/addons/dms/readme/ROADMAP.rst,sha256=ZgRZRUqrPaF5AhVxbuhgYjdHjPzGszPeA4t20yj0Eug,1085
45
45
  odoo/addons/dms/readme/USAGE.rst,sha256=d8wVCTrFp7He_wfJlul-cp46ltGbTNRfo2z3fR652Po,522
46
- odoo/addons/dms/security/ir.model.access.csv,sha256=KRMPupL91xxWNWoOnE1nGHFIhLC1OHB10Swoi18EUmo,1656
46
+ odoo/addons/dms/security/ir.model.access.csv,sha256=y7YrbLylNaNrKJ3w-aG47mz_GP5cVvpBUL2Pa-z2EN8,1749
47
47
  odoo/addons/dms/security/security.xml,sha256=plasjSwS2w5GK07BvW9obXNOpPgeBLKeEkUJ6Wpc6nA,9085
48
48
  odoo/addons/dms/static/description/icon.png,sha256=8xwcyAfhzMOu_xBinu4KwZsvmqUj6X5aF2LUQvvwdc4,7197
49
49
  odoo/addons/dms/static/description/icon.svg,sha256=cICSzGzl0Z00q7m0yhriujt2ip5_v4ymxAMTGzolxsc,8025
50
- odoo/addons/dms/static/description/index.html,sha256=UpcVbfpVK9SabVqRtecCLcEDMkJZXmEdEai9jZvFY5k,20358
50
+ odoo/addons/dms/static/description/index.html,sha256=K0uOZfgnjIcdWS6scsl-GqVqaQdzDFGVrQW22EHrePg,20358
51
51
  odoo/addons/dms/static/icons/file_ai.svg,sha256=HeCXVJivVnn6jjj__5WJiLfZv4mrmAamPFek0CwozCc,3343
52
52
  odoo/addons/dms/static/icons/file_aj.svg,sha256=mUbfvaV5_m3zJ3zZKldBbaFz4AZNQNecSZ1W_JCZeE4,3063
53
53
  odoo/addons/dms/static/icons/file_avi.svg,sha256=Pf78IrO6gGsg3aUVguOu6osDwLYz5ceIOLMbTRpya5s,1862
@@ -194,15 +194,15 @@ odoo/addons/dms/tests/data/mail02.eml,sha256=QDbZu4Xne3-VgntqqDBviBcSB4Y8Cgn_I8O
194
194
  odoo/addons/dms/tools/__init__.py,sha256=X0El9WW-bmLhnUpcS_csCs0TR1RcxaQg36Dy8wyg_vI,19
195
195
  odoo/addons/dms/tools/file.py,sha256=NYgdhsu1qdcLfMInmzhMs-PzDKmFm3wuo9kx610mSJs,1488
196
196
  odoo/addons/dms/views/category.xml,sha256=fjes6BqnZpcB8IJhZliZP4C7HqjJHlRVqRo4mvlEt38,4434
197
- odoo/addons/dms/views/directory.xml,sha256=S1Vpn1rO3w7NeHJEuJKSwGyRqJpshTb-erQgsW3kxxk,35105
197
+ odoo/addons/dms/views/directory.xml,sha256=13yz4Ig3Z0mR9CV8q46ohIP8aieOn5vPD-qgOZ2jy10,35072
198
198
  odoo/addons/dms/views/dms_access_groups_views.xml,sha256=vVeq7iGl7YfT1GKVGsulwOdPc6z3xS51hsRXfR2hR7w,5427
199
- odoo/addons/dms/views/dms_file.xml,sha256=7dNdRo45w8Sozi1nddiCKUIBSzgMUChE6abIgtCkStQ,31374
199
+ odoo/addons/dms/views/dms_file.xml,sha256=Qf3RFbHbA-9BXwDPtUpeU76UvYA0YP2yKbzFsrvI-Co,31351
200
200
  odoo/addons/dms/views/dms_portal_templates.xml,sha256=piujeenSeFNfeQzME_wphQ16Heg2AFmWtBnLO_yv3Z0,5638
201
201
  odoo/addons/dms/views/menu.xml,sha256=YJxLfNpa7HqM5rj09kXGUeernJp9sSTA_mDICKvIs9I,792
202
202
  odoo/addons/dms/views/res_config_settings.xml,sha256=0ypGd5018Lh7ItlOo8Ks5-4RuTImAWocvgTFtYP-RK4,5214
203
- odoo/addons/dms/views/storage.xml,sha256=8WL4JZYzq1ngI6S_X7xSRuMSOykwk1br22Df0vm5W2Y,10448
203
+ odoo/addons/dms/views/storage.xml,sha256=RCspiPEBUSNoR0NC3X9LD1BqmYWPIoq3poQMjcI62vg,10454
204
204
  odoo/addons/dms/views/tag.xml,sha256=A1-WfRlN5TumsEdIEUwx7G2RpX7iHV37ztKxGABLvi0,7186
205
- odoo_addon_dms-16.0.1.2.2.dist-info/METADATA,sha256=ojYwzBEECEd2HO10-coDObfS7n4i6j1S5YqgW-YZhuA,8289
206
- odoo_addon_dms-16.0.1.2.2.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
207
- odoo_addon_dms-16.0.1.2.2.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
208
- odoo_addon_dms-16.0.1.2.2.dist-info/RECORD,,
205
+ odoo_addon_dms-16.0.1.3.0.dist-info/METADATA,sha256=-Oj6FZzfR3ybimMWjf8DF5ZY_pxZb7fSLiLFs9GIoqs,8289
206
+ odoo_addon_dms-16.0.1.3.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
207
+ odoo_addon_dms-16.0.1.3.0.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
208
+ odoo_addon_dms-16.0.1.3.0.dist-info/RECORD,,