odoo-addon-dms 16.0.1.5.0.6__py3-none-any.whl → 16.0.1.6.0.1__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.
@@ -94,6 +94,19 @@ msgstr ""
94
94
  "<i class=\"fa fa-download\"/>\n"
95
95
  " Baixar"
96
96
 
97
+ #. module: dms
98
+ #: model_terms:ir.ui.view,arch_db:dms.wizard_dms_file_move_form_view
99
+ msgid ""
100
+ "<i class=\"fa fa-exclamation-triangle mr-3\" title=\"Warning\"/>\n"
101
+ " <b>ATTENTION:</b> Tips to keep in mind before moving "
102
+ "files:<br/>\n"
103
+ " - This change cannot be undone.<br/>\n"
104
+ " - Remember that the permissions of the files are those "
105
+ "of the folder that contains it, therefore, it is possible that when you "
106
+ "change it, the permissions will also change.<br/>\n"
107
+ " Make this change at your own risk."
108
+ msgstr ""
109
+
97
110
  #. module: dms
98
111
  #: model_terms:ir.ui.view,arch_db:dms.view_dms_directory_kanban
99
112
  #: model_terms:ir.ui.view,arch_db:dms.view_dms_file_kanban
@@ -282,8 +295,8 @@ msgid "A file with the same name already exists"
282
295
  msgstr "Já existe um arquivo com o mesmo nome"
283
296
 
284
297
  #. module: dms
285
- #. odoo-python
286
298
  #. odoo-javascript
299
+ #. odoo-python
287
300
  #: code:addons/dms/models/dms_file.py:0
288
301
  #: code:addons/dms/static/src/js/views/dms_file_upload.esm.js:0
289
302
  #, python-format
@@ -462,6 +475,11 @@ msgstr "Arquivado"
462
475
  msgid "Archived Files"
463
476
  msgstr "Arquivos Arquivados"
464
477
 
478
+ #. module: dms
479
+ #: model_terms:ir.ui.view,arch_db:dms.wizard_dms_file_move_form_view
480
+ msgid "Are you sure? All files will be moved."
481
+ msgstr ""
482
+
465
483
  #. module: dms
466
484
  #. odoo-python
467
485
  #: code:addons/dms/models/storage.py:0
@@ -491,6 +509,7 @@ msgstr "Base"
491
509
  #: model_terms:ir.ui.view,arch_db:dms.view_dms_directory_new_form
492
510
  #: model_terms:ir.ui.view,arch_db:dms.view_dms_file_new_form
493
511
  #: model_terms:ir.ui.view,arch_db:dms.view_dms_storage_new_form
512
+ #: model_terms:ir.ui.view,arch_db:dms.wizard_dms_file_move_form_view
494
513
  msgid "Cancel"
495
514
  msgstr "Cancelar"
496
515
 
@@ -665,6 +684,7 @@ msgstr "# Elementos"
665
684
  #: model:ir.model.fields,field_description:dms.field_dms_directory__count_files_title
666
685
  #: model:ir.model.fields,field_description:dms.field_dms_storage__count_storage_files
667
686
  #: model:ir.model.fields,field_description:dms.field_dms_tag__count_files
687
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__count_files
668
688
  msgid "Count Files"
669
689
  msgstr "# Arquivos"
670
690
 
@@ -755,6 +775,7 @@ msgstr "Crie arquivos a partir de anexos de mensagens"
755
775
  #: model:ir.model.fields,field_description:dms.field_dms_file__create_uid
756
776
  #: model:ir.model.fields,field_description:dms.field_dms_storage__create_uid
757
777
  #: model:ir.model.fields,field_description:dms.field_dms_tag__create_uid
778
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__create_uid
758
779
  msgid "Created by"
759
780
  msgstr "Criado por"
760
781
 
@@ -765,6 +786,7 @@ msgstr "Criado por"
765
786
  #: model:ir.model.fields,field_description:dms.field_dms_file__create_date
766
787
  #: model:ir.model.fields,field_description:dms.field_dms_storage__create_date
767
788
  #: model:ir.model.fields,field_description:dms.field_dms_tag__create_date
789
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__create_date
768
790
  msgid "Created on"
769
791
  msgstr "Criado em"
770
792
 
@@ -894,6 +916,7 @@ msgstr ""
894
916
  #. module: dms
895
917
  #: model:ir.model,name:dms.model_dms_directory
896
918
  #: model:ir.model.fields,field_description:dms.field_dms_file__directory_id
919
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__directory_id
897
920
  #: model_terms:ir.ui.view,arch_db:dms.onboarding_directory_step
898
921
  msgid "Directory"
899
922
  msgstr "Diretório"
@@ -905,6 +928,7 @@ msgstr "Diretório"
905
928
  #: model:ir.model.fields,field_description:dms.field_dms_file__display_name
906
929
  #: model:ir.model.fields,field_description:dms.field_dms_storage__display_name
907
930
  #: model:ir.model.fields,field_description:dms.field_dms_tag__display_name
931
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__display_name
908
932
  msgid "Display Name"
909
933
  msgstr "Nome Exibição"
910
934
 
@@ -1143,6 +1167,7 @@ msgstr "Recursos Humanos"
1143
1167
  #: model:ir.model.fields,field_description:dms.field_dms_file__id
1144
1168
  #: model:ir.model.fields,field_description:dms.field_dms_storage__id
1145
1169
  #: model:ir.model.fields,field_description:dms.field_dms_tag__id
1170
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__id
1146
1171
  msgid "ID"
1147
1172
  msgstr "ID"
1148
1173
 
@@ -1383,6 +1408,7 @@ msgstr "Concluído"
1383
1408
  #: model:ir.model.fields,field_description:dms.field_dms_file____last_update
1384
1409
  #: model:ir.model.fields,field_description:dms.field_dms_storage____last_update
1385
1410
  #: model:ir.model.fields,field_description:dms.field_dms_tag____last_update
1411
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move____last_update
1386
1412
  msgid "Last Modified on"
1387
1413
  msgstr "Última Modificação em"
1388
1414
 
@@ -1393,6 +1419,7 @@ msgstr "Última Modificação em"
1393
1419
  #: model:ir.model.fields,field_description:dms.field_dms_file__write_uid
1394
1420
  #: model:ir.model.fields,field_description:dms.field_dms_storage__write_uid
1395
1421
  #: model:ir.model.fields,field_description:dms.field_dms_tag__write_uid
1422
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__write_uid
1396
1423
  msgid "Last Updated by"
1397
1424
  msgstr "Última Atualização por"
1398
1425
 
@@ -1403,6 +1430,7 @@ msgstr "Última Atualização por"
1403
1430
  #: model:ir.model.fields,field_description:dms.field_dms_file__write_date
1404
1431
  #: model:ir.model.fields,field_description:dms.field_dms_storage__write_date
1405
1432
  #: model:ir.model.fields,field_description:dms.field_dms_tag__write_date
1433
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__write_date
1406
1434
  msgid "Last Updated on"
1407
1435
  msgstr "Última Atualização em"
1408
1436
 
@@ -1527,6 +1555,17 @@ msgstr "Modelo"
1527
1555
  msgid "Modification Date"
1528
1556
  msgstr "Data Modificação"
1529
1557
 
1558
+ #. module: dms
1559
+ #: model:ir.actions.server,name:dms.action_wizard_dms_file_move
1560
+ #: model_terms:ir.ui.view,arch_db:dms.wizard_dms_file_move_form_view
1561
+ msgid "Move"
1562
+ msgstr ""
1563
+
1564
+ #. module: dms
1565
+ #: model:ir.actions.act_window,name:dms.wizard_dms_file_move_act_window
1566
+ msgid "Move files"
1567
+ msgstr ""
1568
+
1530
1569
  #. module: dms
1531
1570
  #: model:ir.model.fields,field_description:dms.field_dms_directory__my_activity_date_deadline
1532
1571
  #: model:ir.model.fields,field_description:dms.field_dms_file__my_activity_date_deadline
@@ -1645,6 +1684,13 @@ msgstr "Número de mensagens com erro de entrega"
1645
1684
  msgid "Only admin user"
1646
1685
  msgstr "Somente usuário administrador"
1647
1686
 
1687
+ #. module: dms
1688
+ #. odoo-python
1689
+ #: code:addons/dms/models/dms_file.py:0
1690
+ #, python-format
1691
+ msgid "Only files in the same root directory can be moved."
1692
+ msgstr ""
1693
+
1648
1694
  #. module: dms
1649
1695
  #. odoo-python
1650
1696
  #: code:addons/dms/models/storage.py:0
@@ -1831,6 +1877,7 @@ msgstr "Diretórios Raiz"
1831
1877
 
1832
1878
  #. module: dms
1833
1879
  #: model:ir.model.fields,field_description:dms.field_dms_directory__root_directory_id
1880
+ #: model:ir.model.fields,field_description:dms.field_dms_file__root_directory_id
1834
1881
  msgid "Root Directory"
1835
1882
  msgstr ""
1836
1883
 
@@ -2134,6 +2181,11 @@ msgstr "Total de Arquivos"
2134
2181
  msgid "Total Subdirectories"
2135
2182
  msgstr "Total de Subdiretórios"
2136
2183
 
2184
+ #. module: dms
2185
+ #: model_terms:ir.ui.view,arch_db:dms.wizard_dms_file_move_form_view
2186
+ msgid "Total files"
2187
+ msgstr ""
2188
+
2137
2189
  #. module: dms
2138
2190
  #: model:dms.category,name:dms.category_04_demo
2139
2191
  msgid "Traveling"
@@ -2223,6 +2275,11 @@ msgstr "Mensagens do Site"
2223
2275
  msgid "Website communication history"
2224
2276
  msgstr "Histórico de comunicação do Site"
2225
2277
 
2278
+ #. module: dms
2279
+ #: model:ir.model,name:dms.model_wizard_dms_file_move
2280
+ msgid "Wizard Dms File Move"
2281
+ msgstr ""
2282
+
2226
2283
  #. module: dms
2227
2284
  #: model:ir.model.fields,field_description:dms.field_dms_access_group__perm_write
2228
2285
  #: model:ir.model.fields,field_description:dms.field_dms_directory__permission_write
@@ -77,6 +77,19 @@ msgid ""
77
77
  " Download"
78
78
  msgstr ""
79
79
 
80
+ #. module: dms
81
+ #: model_terms:ir.ui.view,arch_db:dms.wizard_dms_file_move_form_view
82
+ msgid ""
83
+ "<i class=\"fa fa-exclamation-triangle mr-3\" title=\"Warning\"/>\n"
84
+ " <b>ATTENTION:</b> Tips to keep in mind before moving "
85
+ "files:<br/>\n"
86
+ " - This change cannot be undone.<br/>\n"
87
+ " - Remember that the permissions of the files are those "
88
+ "of the folder that contains it, therefore, it is possible that when you "
89
+ "change it, the permissions will also change.<br/>\n"
90
+ " Make this change at your own risk."
91
+ msgstr ""
92
+
80
93
  #. module: dms
81
94
  #: model_terms:ir.ui.view,arch_db:dms.view_dms_directory_kanban
82
95
  #: model_terms:ir.ui.view,arch_db:dms.view_dms_file_kanban
@@ -234,8 +247,8 @@ msgid "A file with the same name already exists"
234
247
  msgstr ""
235
248
 
236
249
  #. module: dms
237
- #. odoo-python
238
250
  #. odoo-javascript
251
+ #. odoo-python
239
252
  #: code:addons/dms/models/dms_file.py:0
240
253
  #: code:addons/dms/static/src/js/views/dms_file_upload.esm.js:0
241
254
  #, python-format
@@ -414,6 +427,11 @@ msgstr ""
414
427
  msgid "Archived Files"
415
428
  msgstr ""
416
429
 
430
+ #. module: dms
431
+ #: model_terms:ir.ui.view,arch_db:dms.wizard_dms_file_move_form_view
432
+ msgid "Are you sure? All files will be moved."
433
+ msgstr ""
434
+
417
435
  #. module: dms
418
436
  #. odoo-python
419
437
  #: code:addons/dms/models/storage.py:0
@@ -443,6 +461,7 @@ msgstr ""
443
461
  #: model_terms:ir.ui.view,arch_db:dms.view_dms_directory_new_form
444
462
  #: model_terms:ir.ui.view,arch_db:dms.view_dms_file_new_form
445
463
  #: model_terms:ir.ui.view,arch_db:dms.view_dms_storage_new_form
464
+ #: model_terms:ir.ui.view,arch_db:dms.wizard_dms_file_move_form_view
446
465
  msgid "Cancel"
447
466
  msgstr ""
448
467
 
@@ -617,6 +636,7 @@ msgstr ""
617
636
  #: model:ir.model.fields,field_description:dms.field_dms_directory__count_files_title
618
637
  #: model:ir.model.fields,field_description:dms.field_dms_storage__count_storage_files
619
638
  #: model:ir.model.fields,field_description:dms.field_dms_tag__count_files
639
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__count_files
620
640
  msgid "Count Files"
621
641
  msgstr ""
622
642
 
@@ -707,6 +727,7 @@ msgstr ""
707
727
  #: model:ir.model.fields,field_description:dms.field_dms_file__create_uid
708
728
  #: model:ir.model.fields,field_description:dms.field_dms_storage__create_uid
709
729
  #: model:ir.model.fields,field_description:dms.field_dms_tag__create_uid
730
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__create_uid
710
731
  msgid "Created by"
711
732
  msgstr ""
712
733
 
@@ -717,6 +738,7 @@ msgstr ""
717
738
  #: model:ir.model.fields,field_description:dms.field_dms_file__create_date
718
739
  #: model:ir.model.fields,field_description:dms.field_dms_storage__create_date
719
740
  #: model:ir.model.fields,field_description:dms.field_dms_tag__create_date
741
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__create_date
720
742
  msgid "Created on"
721
743
  msgstr ""
722
744
 
@@ -841,6 +863,7 @@ msgstr ""
841
863
  #. module: dms
842
864
  #: model:ir.model,name:dms.model_dms_directory
843
865
  #: model:ir.model.fields,field_description:dms.field_dms_file__directory_id
866
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__directory_id
844
867
  #: model_terms:ir.ui.view,arch_db:dms.onboarding_directory_step
845
868
  msgid "Directory"
846
869
  msgstr ""
@@ -852,6 +875,7 @@ msgstr ""
852
875
  #: model:ir.model.fields,field_description:dms.field_dms_file__display_name
853
876
  #: model:ir.model.fields,field_description:dms.field_dms_storage__display_name
854
877
  #: model:ir.model.fields,field_description:dms.field_dms_tag__display_name
878
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__display_name
855
879
  msgid "Display Name"
856
880
  msgstr ""
857
881
 
@@ -1090,6 +1114,7 @@ msgstr ""
1090
1114
  #: model:ir.model.fields,field_description:dms.field_dms_file__id
1091
1115
  #: model:ir.model.fields,field_description:dms.field_dms_storage__id
1092
1116
  #: model:ir.model.fields,field_description:dms.field_dms_tag__id
1117
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__id
1093
1118
  msgid "ID"
1094
1119
  msgstr ""
1095
1120
 
@@ -1312,6 +1337,7 @@ msgstr ""
1312
1337
  #: model:ir.model.fields,field_description:dms.field_dms_file____last_update
1313
1338
  #: model:ir.model.fields,field_description:dms.field_dms_storage____last_update
1314
1339
  #: model:ir.model.fields,field_description:dms.field_dms_tag____last_update
1340
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move____last_update
1315
1341
  msgid "Last Modified on"
1316
1342
  msgstr ""
1317
1343
 
@@ -1322,6 +1348,7 @@ msgstr ""
1322
1348
  #: model:ir.model.fields,field_description:dms.field_dms_file__write_uid
1323
1349
  #: model:ir.model.fields,field_description:dms.field_dms_storage__write_uid
1324
1350
  #: model:ir.model.fields,field_description:dms.field_dms_tag__write_uid
1351
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__write_uid
1325
1352
  msgid "Last Updated by"
1326
1353
  msgstr ""
1327
1354
 
@@ -1332,6 +1359,7 @@ msgstr ""
1332
1359
  #: model:ir.model.fields,field_description:dms.field_dms_file__write_date
1333
1360
  #: model:ir.model.fields,field_description:dms.field_dms_storage__write_date
1334
1361
  #: model:ir.model.fields,field_description:dms.field_dms_tag__write_date
1362
+ #: model:ir.model.fields,field_description:dms.field_wizard_dms_file_move__write_date
1335
1363
  msgid "Last Updated on"
1336
1364
  msgstr ""
1337
1365
 
@@ -1455,6 +1483,17 @@ msgstr ""
1455
1483
  msgid "Modification Date"
1456
1484
  msgstr ""
1457
1485
 
1486
+ #. module: dms
1487
+ #: model:ir.actions.server,name:dms.action_wizard_dms_file_move
1488
+ #: model_terms:ir.ui.view,arch_db:dms.wizard_dms_file_move_form_view
1489
+ msgid "Move"
1490
+ msgstr ""
1491
+
1492
+ #. module: dms
1493
+ #: model:ir.actions.act_window,name:dms.wizard_dms_file_move_act_window
1494
+ msgid "Move files"
1495
+ msgstr ""
1496
+
1458
1497
  #. module: dms
1459
1498
  #: model:ir.model.fields,field_description:dms.field_dms_directory__my_activity_date_deadline
1460
1499
  #: model:ir.model.fields,field_description:dms.field_dms_file__my_activity_date_deadline
@@ -1573,6 +1612,13 @@ msgstr ""
1573
1612
  msgid "Only admin user"
1574
1613
  msgstr ""
1575
1614
 
1615
+ #. module: dms
1616
+ #. odoo-python
1617
+ #: code:addons/dms/models/dms_file.py:0
1618
+ #, python-format
1619
+ msgid "Only files in the same root directory can be moved."
1620
+ msgstr ""
1621
+
1576
1622
  #. module: dms
1577
1623
  #. odoo-python
1578
1624
  #: code:addons/dms/models/storage.py:0
@@ -1748,6 +1794,7 @@ msgstr ""
1748
1794
 
1749
1795
  #. module: dms
1750
1796
  #: model:ir.model.fields,field_description:dms.field_dms_directory__root_directory_id
1797
+ #: model:ir.model.fields,field_description:dms.field_dms_file__root_directory_id
1751
1798
  msgid "Root Directory"
1752
1799
  msgstr ""
1753
1800
 
@@ -2034,6 +2081,11 @@ msgstr ""
2034
2081
  msgid "Total Subdirectories"
2035
2082
  msgstr ""
2036
2083
 
2084
+ #. module: dms
2085
+ #: model_terms:ir.ui.view,arch_db:dms.wizard_dms_file_move_form_view
2086
+ msgid "Total files"
2087
+ msgstr ""
2088
+
2037
2089
  #. module: dms
2038
2090
  #: model:dms.category,name:dms.category_04_demo
2039
2091
  msgid "Traveling"
@@ -2123,6 +2175,11 @@ msgstr ""
2123
2175
  msgid "Website communication history"
2124
2176
  msgstr ""
2125
2177
 
2178
+ #. module: dms
2179
+ #: model:ir.model,name:dms.model_wizard_dms_file_move
2180
+ msgid "Wizard Dms File Move"
2181
+ msgstr ""
2182
+
2126
2183
  #. module: dms
2127
2184
  #: model:ir.model.fields,field_description:dms.field_dms_access_group__perm_write
2128
2185
  #: model:ir.model.fields,field_description:dms.field_dms_directory__permission_write
@@ -46,7 +46,6 @@ class File(models.Model):
46
46
  default=True,
47
47
  help="If a file is set to archived, it is not displayed, but still exists.",
48
48
  )
49
-
50
49
  directory_id = fields.Many2one(
51
50
  comodel_name="dms.directory",
52
51
  string="Directory",
@@ -56,7 +55,9 @@ class File(models.Model):
56
55
  auto_join=True,
57
56
  required=True,
58
57
  index="btree",
58
+ tracking=True, # Leave log if "moved" to another directory
59
59
  )
60
+ root_directory_id = fields.Many2one(related="directory_id.root_directory_id")
60
61
  # Override acording to defined in AbstractDmsMixin
61
62
  storage_id = fields.Many2one(
62
63
  related="directory_id.storage_id",
@@ -273,6 +274,17 @@ class File(models.Model):
273
274
  "documents_onboarding_file_state"
274
275
  )
275
276
 
277
+ def action_wizard_dms_file_move(self):
278
+ items = self.browse(self.env.context.get("active_ids"))
279
+ root_directories = items.mapped("root_directory_id")
280
+ if len(root_directories) > 1:
281
+ raise UserError(_("Only files in the same root directory can be moved."))
282
+ result = self.env["ir.actions.act_window"]._for_xml_id(
283
+ "dms.wizard_dms_file_move_act_window"
284
+ )
285
+ result["context"] = dict(self.env.context)
286
+ return result
287
+
276
288
  # ----------------------------------------------------------
277
289
  # SearchPanel
278
290
  # ----------------------------------------------------------
@@ -22,3 +22,5 @@ access_dms_access_group_public,access_dms_access_group_public,model_dms_access_g
22
22
  access_dms_access_group_portal,access_dms_access_group_portal,model_dms_access_group,base.group_portal,1,0,0,0
23
23
  access_security_access_groups_user,access_security_access_groups_user,model_dms_access_group,base.group_user,1,0,0,0
24
24
  access_security_access_groups_dms_user,access_security_access_groups_dms_user,model_dms_access_group,group_dms_user,1,1,1,1
25
+
26
+ access_wizard_dms_file_move,access_wizard_dms_file_move,model_wizard_dms_file_move,group_dms_user,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:f036ddb49f1f2603665bf2f251dd46d551959989d6c1775af9b6966b6c8423c2
369
+ !! source digest: sha256:a66cf63d422b46c0023c68da9269b306e0e2cdabd53407490ddab753cb4d4725
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
@@ -5,6 +5,7 @@
5
5
 
6
6
  import base64
7
7
 
8
+ from odoo.exceptions import UserError
8
9
  from odoo.tests import new_test_user
9
10
  from odoo.tests.common import users
10
11
 
@@ -86,3 +87,23 @@ class FileFilestoreTestCase(StorageFileBaseCase):
86
87
  self.assertEqual(file_pdf.extension, "pdf")
87
88
  file_pdf.name = "Document_05.pdf"
88
89
  self.assertEqual(file_pdf.extension, "pdf")
90
+
91
+ def test_wizard_dms_file_move(self):
92
+ file3 = self.create_file(directory=self.sub_directory_x)
93
+ all_files = self.file + self.file2 + file3
94
+ # Error: All files must have the same root directory
95
+ with self.assertRaises(UserError):
96
+ self.file_model.with_context(
97
+ active_ids=all_files.ids
98
+ ).action_wizard_dms_file_move()
99
+ # Change the files that have the same root directory
100
+ files = self.file2 + file3
101
+ res = self.file_model.with_context(
102
+ active_ids=files.ids
103
+ ).action_wizard_dms_file_move()
104
+ wizard_model = self.env[res["res_model"]].with_context(**res["context"])
105
+ wizard = wizard_model.create({"directory_id": self.directory.id})
106
+ self.assertEqual(wizard.count_files, 2)
107
+ wizard.process()
108
+ self.assertEqual(self.file2.directory_id, self.directory)
109
+ self.assertEqual(file3.directory_id, self.directory)
@@ -323,6 +323,8 @@
323
323
  <field name="is_locked" invisible="1" />
324
324
  <field name="is_lock_editor" invisible="1" />
325
325
  <field name="name" />
326
+ <field name="directory_id" optional="hide" />
327
+ <field name="root_directory_id" optional="hide" />
326
328
  <field name="write_date" />
327
329
  <field name="human_size" />
328
330
  <field name="mimetype" />
@@ -666,4 +668,16 @@
666
668
  <field name="target">new</field>
667
669
  <field name="view_id" ref="view_dms_file_new_form" />
668
670
  </record>
671
+ <record id="action_wizard_dms_file_move" model="ir.actions.server">
672
+ <field name="name">Move</field>
673
+ <field name="model_id" ref="dms.model_dms_file" />
674
+ <field name="binding_model_id" ref="dms.model_dms_file" />
675
+ <field name="groups_id" eval="[(4, ref('dms.group_dms_user'))]" />
676
+ <field name="binding_view_types">list</field>
677
+ <field name="state">code</field>
678
+ <field name="code">
679
+ action = model.action_wizard_dms_file_move()
680
+ </field>
681
+ </record>
682
+
669
683
  </odoo>
@@ -0,0 +1 @@
1
+ from . import wizard_dms_file_move
@@ -0,0 +1,25 @@
1
+ # Copyright 2024 Tecnativa - Víctor Martínez
2
+ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3
+
4
+ from odoo import api, fields, models
5
+
6
+
7
+ class WizardDmsFileMove(models.TransientModel):
8
+ _name = "wizard.dms.file.move"
9
+ _description = "Wizard Dms File Move"
10
+
11
+ count_files = fields.Integer(readonly=True)
12
+ directory_id = fields.Many2one(
13
+ comodel_name="dms.directory", required=True, string="Directory"
14
+ )
15
+
16
+ @api.model
17
+ def default_get(self, fields):
18
+ vals = super().default_get(fields)
19
+ if self.env.context.get("active_ids"):
20
+ vals.update({"count_files": len(self.env.context.get("active_ids"))})
21
+ return vals
22
+
23
+ def process(self):
24
+ items = self.env["dms.file"].browse(self.env.context.get("active_ids"))
25
+ items.write({"directory_id": self.directory_id})
@@ -0,0 +1,41 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <!-- Copyright 2024 Tecnativa - Víctor Martínez
3
+ License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -->
4
+ <odoo>
5
+ <record id="wizard_dms_file_move_form_view" model="ir.ui.view">
6
+ <field name="name">wizard.dms.file.move.form</field>
7
+ <field name="model">wizard.dms.file.move</field>
8
+ <field name="arch" type="xml">
9
+ <form>
10
+ <div class="alert alert-warning" role="alert">
11
+ <i class="fa fa-exclamation-triangle mr-3" title="Warning" />
12
+ <b>ATTENTION:</b> Tips to keep in mind before moving files:<br />
13
+ - This change cannot be undone.<br />
14
+ - Remember that the permissions of the files are those of the folder that contains it, therefore, it is possible that when you change it, the permissions will also change.<br
15
+ />
16
+ Make this change at your own risk.
17
+ </div>
18
+ <group>
19
+ <field name="directory_id" />
20
+ <field name="count_files" string="Total files" />
21
+ </group>
22
+ <footer>
23
+ <button
24
+ name="process"
25
+ string="Move"
26
+ class="btn-primary"
27
+ type="object"
28
+ confirm="Are you sure? All files will be moved."
29
+ />
30
+ <button string="Cancel" class="btn-default" special="cancel" />
31
+ </footer>
32
+ </form>
33
+ </field>
34
+ </record>
35
+ <record id="wizard_dms_file_move_act_window" model="ir.actions.act_window">
36
+ <field name="name">Move files</field>
37
+ <field name="res_model">wizard.dms.file.move</field>
38
+ <field name="view_mode">form</field>
39
+ <field name="target">new</field>
40
+ </record>
41
+ </odoo>
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: odoo-addon-dms
3
- Version: 16.0.1.5.0.6
3
+ Version: 16.0.1.6.0.1
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:f036ddb49f1f2603665bf2f251dd46d551959989d6c1775af9b6966b6c8423c2
26
+ !! source digest: sha256:a66cf63d422b46c0023c68da9269b306e0e2cdabd53407490ddab753cb4d4725
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=_nV2w7M3dhfIvg7lQ50Dl1djRLoLcgKRIHOudl3XRRE,7748
2
- odoo/addons/dms/__init__.py,sha256=jQ-fltIs1ohXt7udDkkJwzh7ckauQW2rbmv1Wtg3SjQ,47
3
- odoo/addons/dms/__manifest__.py,sha256=Bp5Z5kHk_KDTslqf9DFcvxZDHRLSU89V_wAIQv1EzO8,1767
1
+ odoo/addons/dms/README.rst,sha256=tm4CiH-FmUTEXYdqwukLfkVINfPiDvC0EUkBsjgBsdQ,7748
2
+ odoo/addons/dms/__init__.py,sha256=dnUeA_K1torbiMNF3tt2dtECdk-FkWm01DByr9MBMIA,69
3
+ odoo/addons/dms/__manifest__.py,sha256=GqTJvtX_Lpt8JqCL7b_ElIzfot-NXeiPHDmFNT0Xeqo,1817
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
@@ -12,23 +12,23 @@ odoo/addons/dms/demo/file.xml,sha256=JaIGjObJXvz1Wvj3AwwTWMSYOxaHLxRS7KLcvBBCcg0
12
12
  odoo/addons/dms/demo/res_users.xml,sha256=edRmAsHsaQYhHiJWdFni5BGM3-0Vskw3A1grXCHJhWc,323
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
- odoo/addons/dms/i18n/de.po,sha256=h1Fvem1qr4sr3koDbL8_dIJFVdm0ho74WJnN-IZ0fog,80446
16
- odoo/addons/dms/i18n/dms.pot,sha256=TAIDq9XKIKkiySZ3q1F1uXSrXIUvmRoQXYUm1sUZ4-8,68616
17
- odoo/addons/dms/i18n/es.po,sha256=WfnDt0-CwIbAjFxmlQ5NifEQv0CoK5oxeQWJ81qgbW0,83242
18
- odoo/addons/dms/i18n/fr.po,sha256=HTT9qYZh2wtQP6cHsy9cpkxjErEBd8qKniKZBrhsZIo,82112
19
- odoo/addons/dms/i18n/he_IL.po,sha256=9tLSn_0110M8dNGlnH8V8vIG5jJlbfKwrCK9R8wZBc4,79127
20
- odoo/addons/dms/i18n/it.po,sha256=UJroAgCmayxzhhAf9etTwnIDqnY7mg3sr9e8L-TiO_A,80109
21
- odoo/addons/dms/i18n/nl.po,sha256=rpVMJ82DN0lNNdQ512pYJKG28e6Jj0596XGW0f5UxRQ,68699
22
- odoo/addons/dms/i18n/pt.po,sha256=mY11aPUJhr2KNVElaAsxZmSRxVHa6LiVgq07IxyzT-k,80560
23
- odoo/addons/dms/i18n/pt_BR.po,sha256=czFRfJ73iXZThOfH7mBrYjZN5MjcfgS5FprVPBsSalQ,79906
24
- odoo/addons/dms/i18n/ru.po,sha256=U0Yokt4FSinrVlbs0Sm2IItRSSBWHEzV0kJbr8yYQKw,68529
15
+ odoo/addons/dms/i18n/de.po,sha256=ahSVRg90qaN8Bkwakxdqfcd3hIKK4F1ywsvNehMsXiA,82773
16
+ odoo/addons/dms/i18n/dms.pot,sha256=WVx4FE8bvEtMdGrL5q2T2QDjJEENZJYTHofgepkw1_4,70934
17
+ odoo/addons/dms/i18n/es.po,sha256=N1FGy_qGAh4JNHCRrLxBspg0ySgS_3W4sjFdUYUKaBM,83507
18
+ odoo/addons/dms/i18n/fr.po,sha256=q4gr7Z5ZIWti4aPfX_ALKwVqKqFzBG9j0Aw2qkNbzoY,84439
19
+ odoo/addons/dms/i18n/he_IL.po,sha256=sklzTvd7dm20TCDnP74LqgKLtrD2g2eTIMmsxM7eIQE,81454
20
+ odoo/addons/dms/i18n/it.po,sha256=02l9-PG-eMJ17z3fsiooxd10tI69KHRG47b-fiODjK8,82436
21
+ odoo/addons/dms/i18n/nl.po,sha256=ZdXjYkGFZG4iWKiFkcjlMjV2OTugEFTALIxIvxz8d30,71026
22
+ odoo/addons/dms/i18n/pt.po,sha256=1admIXdnCtm8e3JdIku5217Vf0MJkfLAXCnZAHzRcQ4,82887
23
+ odoo/addons/dms/i18n/pt_BR.po,sha256=ZAARqwqCv9jWwAskvARvcsGObJcTHDmpEgLoYo8k9cY,82233
24
+ odoo/addons/dms/i18n/ru.po,sha256=86Eom2PPYiAf_MOyNnOcdQ8J0E92rZ486DFucN9To_o,70856
25
25
  odoo/addons/dms/models/__init__.py,sha256=La9Zyaj_PZKuwp73-PAlyFwgZlK8skeYxl5LovFjTm8,371
26
26
  odoo/addons/dms/models/abstract_dms_mixin.py,sha256=n4-4hkz1qRYQfPcfzMEfCSfi5yzdtNF_MRysvzTn3-w,2086
27
27
  odoo/addons/dms/models/access_groups.py,sha256=ldhs1cc_wlG1G4zfg8ohPwh_mFO1C5wEq6Gza9PXDOU,5504
28
28
  odoo/addons/dms/models/base.py,sha256=t7uhbkDE9L4UdvYJAwPTlX5ff2Y9S01urlFfC3KlLxM,893
29
29
  odoo/addons/dms/models/category.py,sha256=MB36VPKw3DItR5ZYM7CCROO3LDDTpTx87clML966GAs,4132
30
30
  odoo/addons/dms/models/directory.py,sha256=Ge8E_ha4GYGXbDTjpcUPfrMWSF3F7Ffz-X78o_qr0bo,28795
31
- odoo/addons/dms/models/dms_file.py,sha256=AkIf8yuIXW0LukqOsZLBIOb3INsbCxX48w81ZVYVVwE,24854
31
+ odoo/addons/dms/models/dms_file.py,sha256=vCeOttxNGy9hEX-7Ti1-Hm9aJ9YI9qySX8fkq7QsqXA,25493
32
32
  odoo/addons/dms/models/dms_security_mixin.py,sha256=PE5o_TvOn746OckncuZs73zVStP348Tlmy9C68PaI2U,9733
33
33
  odoo/addons/dms/models/ir_attachment.py,sha256=-AwkedqL2cgPZ794O31UIMvchrf_a9TPVE1rEb--CXQ,3248
34
34
  odoo/addons/dms/models/mail_thread.py,sha256=ccAn2MHONCncjsJewBrLqMVBl6tmn2kezyJVJq2utVk,583
@@ -44,11 +44,11 @@ odoo/addons/dms/readme/DESCRIPTION.rst,sha256=rIH_rBFm_Rh-MuKsmoZh8w6o2HvlcGoxng
44
44
  odoo/addons/dms/readme/INSTALL.rst,sha256=9u-nKvIKsa1wrSODP7Rfi41GCb2lAFwclwTIF6buQ7c,325
45
45
  odoo/addons/dms/readme/ROADMAP.rst,sha256=ZgRZRUqrPaF5AhVxbuhgYjdHjPzGszPeA4t20yj0Eug,1085
46
46
  odoo/addons/dms/readme/USAGE.rst,sha256=d8wVCTrFp7He_wfJlul-cp46ltGbTNRfo2z3fR652Po,522
47
- odoo/addons/dms/security/ir.model.access.csv,sha256=y7YrbLylNaNrKJ3w-aG47mz_GP5cVvpBUL2Pa-z2EN8,1749
47
+ odoo/addons/dms/security/ir.model.access.csv,sha256=8PUm-1rSpz5mc5_BNIUdUKXb2sz6TrxIAcUYSVSmJ4o,1856
48
48
  odoo/addons/dms/security/security.xml,sha256=plasjSwS2w5GK07BvW9obXNOpPgeBLKeEkUJ6Wpc6nA,9085
49
49
  odoo/addons/dms/static/description/icon.png,sha256=8xwcyAfhzMOu_xBinu4KwZsvmqUj6X5aF2LUQvvwdc4,7197
50
50
  odoo/addons/dms/static/description/icon.svg,sha256=cICSzGzl0Z00q7m0yhriujt2ip5_v4ymxAMTGzolxsc,8025
51
- odoo/addons/dms/static/description/index.html,sha256=j3wcG32qOLtZAgNHLNaTFccnOPaNE4lvbOOaZZ4kzKc,20358
51
+ odoo/addons/dms/static/description/index.html,sha256=HCozASg-DX_SOxyF39BQ9aAoTpt2X2jBEE7xwUjX_Is,20358
52
52
  odoo/addons/dms/static/icons/file_ai.svg,sha256=HeCXVJivVnn6jjj__5WJiLfZv4mrmAamPFek0CwozCc,3343
53
53
  odoo/addons/dms/static/icons/file_aj.svg,sha256=mUbfvaV5_m3zJ3zZKldBbaFz4AZNQNecSZ1W_JCZeE4,3063
54
54
  odoo/addons/dms/static/icons/file_avi.svg,sha256=Pf78IrO6gGsg3aUVguOu6osDwLYz5ceIOLMbTRpya5s,1862
@@ -180,7 +180,7 @@ odoo/addons/dms/tests/__init__.py,sha256=eIbM1FQ81v8gWbUqsWhLnllFxuBeCnU7gw9Swb-
180
180
  odoo/addons/dms/tests/common.py,sha256=0n_Az-3k1KpQLs536mlEDpcP6D8vfH_GbpsjTAKChH8,7614
181
181
  odoo/addons/dms/tests/test_benchmark.py,sha256=iaEPKRTlQsvcrUpPhX3RWDuwDgddBeF_-xY4uA0LQyA,13611
182
182
  odoo/addons/dms/tests/test_directory.py,sha256=qVti7SPiLEGl38LHcZnNUshlguP3uDMPGyICfBRO6RE,8317
183
- odoo/addons/dms/tests/test_file.py,sha256=x0mbzko501cPgLCRT9ZhXpfDC0H738AeDAXGPZZ-me8,3582
183
+ odoo/addons/dms/tests/test_file.py,sha256=Q6IaOcNDFR6zYfDpah9zPGjRilxTomObttXssjJgwzM,4577
184
184
  odoo/addons/dms/tests/test_file_database.py,sha256=et3PD45scSfmQhfR-bGgEglLFkLxKpkSZJPQ4kgdJsM,4715
185
185
  odoo/addons/dms/tests/test_portal.py,sha256=cnoAyxeaESErn4FkTeFzsH4FTr-k0HKDv0CZ76WKjLc,3350
186
186
  odoo/addons/dms/tests/test_storage_attachment.py,sha256=vGU0isqnvMVMVgb33rdUANdlX-7U_Awh-lF05S_eks0,5237
@@ -197,13 +197,16 @@ odoo/addons/dms/tools/file.py,sha256=NYgdhsu1qdcLfMInmzhMs-PzDKmFm3wuo9kx610mSJs
197
197
  odoo/addons/dms/views/category.xml,sha256=fjes6BqnZpcB8IJhZliZP4C7HqjJHlRVqRo4mvlEt38,4434
198
198
  odoo/addons/dms/views/directory.xml,sha256=qAiSSiIyHr8ZTgPvmm3uxx7rln9h0rmi7N9GN5ebcbg,35732
199
199
  odoo/addons/dms/views/dms_access_groups_views.xml,sha256=vVeq7iGl7YfT1GKVGsulwOdPc6z3xS51hsRXfR2hR7w,5427
200
- odoo/addons/dms/views/dms_file.xml,sha256=YaeOioCiRySD0AiUr7ttFgUond0JL2zRWhjFBixqmZA,31392
200
+ odoo/addons/dms/views/dms_file.xml,sha256=GaR3P9W0d_4ht6RK-6q_8Afqnge0uVMHvdepBqF2_zg,32046
201
201
  odoo/addons/dms/views/dms_portal_templates.xml,sha256=piujeenSeFNfeQzME_wphQ16Heg2AFmWtBnLO_yv3Z0,5638
202
202
  odoo/addons/dms/views/menu.xml,sha256=YJxLfNpa7HqM5rj09kXGUeernJp9sSTA_mDICKvIs9I,792
203
203
  odoo/addons/dms/views/res_config_settings.xml,sha256=0ypGd5018Lh7ItlOo8Ks5-4RuTImAWocvgTFtYP-RK4,5214
204
204
  odoo/addons/dms/views/storage.xml,sha256=RCspiPEBUSNoR0NC3X9LD1BqmYWPIoq3poQMjcI62vg,10454
205
205
  odoo/addons/dms/views/tag.xml,sha256=A1-WfRlN5TumsEdIEUwx7G2RpX7iHV37ztKxGABLvi0,7186
206
- odoo_addon_dms-16.0.1.5.0.6.dist-info/METADATA,sha256=GhEUvj0Rywbg2p19zKMPpDNNA-lmeaN_gprPZ5EL65M,8291
207
- odoo_addon_dms-16.0.1.5.0.6.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
208
- odoo_addon_dms-16.0.1.5.0.6.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
209
- odoo_addon_dms-16.0.1.5.0.6.dist-info/RECORD,,
206
+ odoo/addons/dms/wizards/__init__.py,sha256=YS7u9DusWKWEWtmm94cg2FWsPC2wUeDImRGBk7S3wx0,35
207
+ odoo/addons/dms/wizards/wizard_dms_file_move.py,sha256=zQouQDJuLWOrjzkksiUaTf0DFqT9SrewpxvByv5ozTM,844
208
+ odoo/addons/dms/wizards/wizard_dms_file_move_views.xml,sha256=bYWdX_QlMpIOS5gRk7iEyddHKLCvAkvzDxfT3oM1lCo,1931
209
+ odoo_addon_dms-16.0.1.6.0.1.dist-info/METADATA,sha256=cf1Fj2_lztsDGmMsKkrs3hRLa5hIKkUCyOmtmYmeBUk,8291
210
+ odoo_addon_dms-16.0.1.6.0.1.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
211
+ odoo_addon_dms-16.0.1.6.0.1.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
212
+ odoo_addon_dms-16.0.1.6.0.1.dist-info/RECORD,,