odoo-addon-base-tier-validation 15.0.1.3.7__py3-none-any.whl → 15.0.1.5.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 @@ Base Tier Validation
7
7
  !! This file is generated by oca-gen-addon-readme !!
8
8
  !! changes will be overwritten. !!
9
9
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
10
- !! source digest: sha256:ca39850abd527c4f65a1858062316123b49d1d68ef24e6399f58d33ead5bd624
10
+ !! source digest: sha256:6630e37cda41b78f1f3dfb44fb574c46992a747d7afb4c55e3ca7691027d177d
11
11
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
12
12
 
13
13
  .. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png
@@ -3,7 +3,7 @@
3
3
  {
4
4
  "name": "Base Tier Validation",
5
5
  "summary": "Implement a validation process based on tiers.",
6
- "version": "15.0.1.3.7",
6
+ "version": "15.0.1.5.0",
7
7
  "development_status": "Mature",
8
8
  "maintainers": ["LoisRForgeFlow"],
9
9
  "category": "Tools",
@@ -14,6 +14,7 @@
14
14
  "installable": True,
15
15
  "depends": ["mail"],
16
16
  "data": [
17
+ "data/cron_data.xml",
17
18
  "data/mail_data.xml",
18
19
  "security/ir.model.access.csv",
19
20
  "security/tier_validation_security.xml",
@@ -0,0 +1,17 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <odoo noupdate="1">
3
+ <record id="ir_cron_auto_tier_validation" model="ir.cron">
4
+ <field name="name">Send Tier Review Reminder</field>
5
+ <field name="interval_number">1</field>
6
+ <field name="interval_type">days</field>
7
+ <field name="numbercall">-1</field>
8
+ <field
9
+ name="nextcall"
10
+ eval="(datetime.now() + timedelta(minutes=5)).strftime('%Y-%m-%d %H:%M:%S')"
11
+ />
12
+ <field name="doall" eval="False" />
13
+ <field name="model_id" ref="model_tier_definition" />
14
+ <field name="code">model._cron_send_review_reminder()</field>
15
+ <field name="state">code</field>
16
+ </record>
17
+ </odoo>
@@ -40,4 +40,22 @@
40
40
  <field name="internal" eval="True" />
41
41
  <field name="hidden" eval="True" />
42
42
  </record>
43
+ <record
44
+ id="mt_tier_validation_reminder"
45
+ model="mail.message.subtype"
46
+ forcecreate="1"
47
+ >
48
+ <field name="name">Tier Validation Reminder</field>
49
+ <field name="default" eval="True" />
50
+ <field name="internal" eval="True" />
51
+ <field name="hidden" eval="True" />
52
+ </record>
53
+ <record
54
+ id="mail_act_tier_validation_reminder"
55
+ model="mail.activity.type"
56
+ forcecreate="1"
57
+ >
58
+ <field name="name">Tier Validation Reminder</field>
59
+ <field name="icon">fa-bell</field>
60
+ </record>
43
61
  </odoo>
@@ -56,6 +56,12 @@ msgstr ""
56
56
  msgid "<span>Bypassed, if previous tier was validated by same reviewer</span>"
57
57
  msgstr ""
58
58
 
59
+ #. module: base_tier_validation
60
+ #: code:addons/base_tier_validation/models/tier_review.py:0
61
+ #, python-format
62
+ msgid "A review has been requested %s days ago."
63
+ msgstr ""
64
+
59
65
  #. module: base_tier_validation
60
66
  #: code:addons/base_tier_validation/models/tier_validation.py:0
61
67
  #, python-format
@@ -142,6 +148,11 @@ msgstr ""
142
148
  msgid "Approved"
143
149
  msgstr ""
144
150
 
151
+ #. module: base_tier_validation
152
+ #: model_terms:ir.ui.view,arch_db:base_tier_validation.tier_definition_view_form
153
+ msgid "Archived"
154
+ msgstr ""
155
+
145
156
  #. module: base_tier_validation
146
157
  #: model:ir.model.fields,help:base_tier_validation.field_tier_definition__approve_sequence_bypass
147
158
  #: model:ir.model.fields,help:base_tier_validation.field_tier_review__approve_sequence_bypass
@@ -310,6 +321,11 @@ msgstr ""
310
321
  msgid "Last Modified on"
311
322
  msgstr ""
312
323
 
324
+ #. module: base_tier_validation
325
+ #: model:ir.model.fields,field_description:base_tier_validation.field_tier_review__last_reminder_date
326
+ msgid "Last Reminder Date"
327
+ msgstr ""
328
+
313
329
  #. module: base_tier_validation
314
330
  #: model:ir.model.fields,field_description:base_tier_validation.field_comment_wizard__write_uid
315
331
  #: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__write_uid
@@ -374,6 +390,13 @@ msgstr ""
374
390
  msgid "Notify Reviewers on Creation"
375
391
  msgstr ""
376
392
 
393
+ #. module: base_tier_validation
394
+ #: model:ir.model.fields,help:base_tier_validation.field_tier_definition__notify_reminder_delay
395
+ msgid ""
396
+ "Number of days after which a message must be posted to remind about pending "
397
+ "validation (0 = no reminder)"
398
+ msgstr ""
399
+
377
400
  #. module: base_tier_validation
378
401
  #: code:addons/base_tier_validation/models/tier_validation.py:0
379
402
  #, python-format
@@ -515,6 +538,18 @@ msgstr ""
515
538
  msgid "Reviews"
516
539
  msgstr ""
517
540
 
541
+ #. module: base_tier_validation
542
+ #: model:ir.actions.server,name:base_tier_validation.ir_cron_auto_tier_validation_ir_actions_server
543
+ #: model:ir.cron,cron_name:base_tier_validation.ir_cron_auto_tier_validation
544
+ #: model:ir.cron,name:base_tier_validation.ir_cron_auto_tier_validation
545
+ msgid "Send Tier Review Reminder"
546
+ msgstr ""
547
+
548
+ #. module: base_tier_validation
549
+ #: model:ir.model.fields,field_description:base_tier_validation.field_tier_definition__notify_reminder_delay
550
+ msgid "Send reminder message on pending reviews"
551
+ msgstr ""
552
+
518
553
  #. module: base_tier_validation
519
554
  #. openerp-web
520
555
  #: code:addons/base_tier_validation/static/src/xml/tier_review_template.xml:0
@@ -622,6 +657,12 @@ msgstr ""
622
657
  msgid "Tier Validation Rejected Notification"
623
658
  msgstr ""
624
659
 
660
+ #. module: base_tier_validation
661
+ #: model:mail.activity.type,name:base_tier_validation.mail_act_tier_validation_reminder
662
+ #: model:mail.message.subtype,name:base_tier_validation.mt_tier_validation_reminder
663
+ msgid "Tier Validation Reminder"
664
+ msgstr ""
665
+
625
666
  #. module: base_tier_validation
626
667
  #: model:mail.message.subtype,name:base_tier_validation.mt_tier_validation_requested
627
668
  msgid "Tier Validation Requested"
@@ -68,6 +68,11 @@ class TierDefinition(models.Model):
68
68
  "this definition is triggered.",
69
69
  )
70
70
  has_comment = fields.Boolean(string="Comment", default=False)
71
+ notify_reminder_delay = fields.Integer(
72
+ string="Send reminder message on pending reviews",
73
+ help="Number of days after which a message must be posted to remind about "
74
+ "pending validation (0 = no reminder)",
75
+ )
71
76
  approve_sequence = fields.Boolean(
72
77
  string="Approve by sequence",
73
78
  default=False,
@@ -88,3 +93,33 @@ class TierDefinition(models.Model):
88
93
  rec.valid_reviewer_field_ids = self.env["ir.model.fields"].search(
89
94
  [("model", "=", rec.model), ("relation", "=", "res.users")]
90
95
  )
96
+
97
+ def _get_review_needing_reminder(self):
98
+ """Return all the reviews that have the reminder setup."""
99
+ self.ensure_one()
100
+ if not self.notify_reminder_delay:
101
+ return self.env["tier.review"]
102
+ review_date = fields.Datetime.subtract(
103
+ fields.Datetime.now(), days=self.notify_reminder_delay
104
+ )
105
+ return self.env["tier.review"].search(
106
+ [
107
+ ("definition_id", "=", self.id),
108
+ ("status", "=", "pending"),
109
+ "|",
110
+ "&",
111
+ ("create_date", "<", review_date),
112
+ ("last_reminder_date", "=", False),
113
+ ("last_reminder_date", "<", review_date),
114
+ ],
115
+ limit=1,
116
+ )
117
+
118
+ def _cron_send_review_reminder(self):
119
+ definition_with_reminder = self.env["tier.definition"].search(
120
+ [("notify_reminder_delay", ">", 0)]
121
+ )
122
+ for record in definition_with_reminder:
123
+ review_to_remind = record._get_review_needing_reminder()
124
+ if review_to_remind:
125
+ review_to_remind._send_review_reminder()
@@ -1,9 +1,13 @@
1
1
  # Copyright 2017-19 ForgeFlow S.L. (https://www.forgeflow.com)
2
2
  # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3
3
 
4
+ import logging
5
+
4
6
  from odoo import _, api, fields, models
5
7
  from odoo.exceptions import ValidationError
6
8
 
9
+ _logger = logging.getLogger(__name__)
10
+
7
11
 
8
12
  class TierReview(models.Model):
9
13
  _name = "tier.review"
@@ -58,6 +62,7 @@ class TierReview(models.Model):
58
62
  approve_sequence_bypass = fields.Boolean(
59
63
  related="definition_id.approve_sequence_bypass", readonly=True
60
64
  )
65
+ last_reminder_date = fields.Datetime(readonly=True)
61
66
 
62
67
  @api.depends("definition_id.approve_sequence")
63
68
  def _compute_can_review(self):
@@ -110,3 +115,38 @@ class TierReview(models.Model):
110
115
  if not reviewer_field or not reviewer_field._name == "res.users":
111
116
  raise ValidationError(_("There are no res.users in the selected field"))
112
117
  return reviewer_field
118
+
119
+ def _get_reminder_notification_subtype(self):
120
+ return "base_tier_validation.mt_tier_validation_reminder"
121
+
122
+ def _get_reminder_activity_type(self):
123
+ return "base_tier_validation.mail_act_tier_validation_reminder"
124
+
125
+ def _notify_review_reminder_body(self):
126
+ delay = (fields.Datetime.now() - self.create_date).days
127
+ return _("A review has been requested %s days ago.") % (delay)
128
+
129
+ def _send_review_reminder(self):
130
+ record = self.env[self.model].browse(self.res_id)
131
+ # Only schedule activity if reviewer is a single user and model has activities
132
+ if len(self.reviewer_ids) == 1 and hasattr(record, "activity_ids"):
133
+ self._schedule_review_reminder_activity(record)
134
+ elif hasattr(record, "message_post"):
135
+ self._notify_review_reminder(record)
136
+ else:
137
+ msg = "Could not send reminder for record %s" % record
138
+ _logger.exception(msg)
139
+ self.last_reminder_date = fields.Datetime.now()
140
+
141
+ def _notify_review_reminder(self, record):
142
+ record.message_post(
143
+ subtype_xmlid=self._get_reminder_notification_subtype(),
144
+ body=self._notify_review_reminder_body(),
145
+ )
146
+
147
+ def _schedule_review_reminder_activity(self, record):
148
+ record.activity_schedule(
149
+ act_type_xmlid=self._get_reminder_activity_type(),
150
+ note=self._notify_review_reminder_body(),
151
+ act_values={"user_id": self.reviewer_ids.id},
152
+ )
@@ -8,10 +8,11 @@
8
8
 
9
9
  /*
10
10
  :Author: David Goodger (goodger@python.org)
11
- :Id: $Id: html4css1.css 8954 2022-01-20 10:10:25Z milde $
11
+ :Id: $Id: html4css1.css 9511 2024-01-13 09:50:07Z milde $
12
12
  :Copyright: This stylesheet has been placed in the public domain.
13
13
 
14
14
  Default cascading style sheet for the HTML output of Docutils.
15
+ Despite the name, some widely supported CSS2 features are used.
15
16
 
16
17
  See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to
17
18
  customize this style sheet.
@@ -274,7 +275,7 @@ pre.literal-block, pre.doctest-block, pre.math, pre.code {
274
275
  margin-left: 2em ;
275
276
  margin-right: 2em }
276
277
 
277
- pre.code .ln { color: grey; } /* line numbers */
278
+ pre.code .ln { color: gray; } /* line numbers */
278
279
  pre.code, code { background-color: #eeeeee }
279
280
  pre.code .comment, code .comment { color: #5C6576 }
280
281
  pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold }
@@ -300,7 +301,7 @@ span.option {
300
301
  span.pre {
301
302
  white-space: pre }
302
303
 
303
- span.problematic {
304
+ span.problematic, pre.problematic {
304
305
  color: red }
305
306
 
306
307
  span.section-subtitle {
@@ -366,7 +367,7 @@ ul.auto-toc {
366
367
  !! This file is generated by oca-gen-addon-readme !!
367
368
  !! changes will be overwritten. !!
368
369
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
369
- !! source digest: sha256:ca39850abd527c4f65a1858062316123b49d1d68ef24e6399f58d33ead5bd624
370
+ !! source digest: sha256:6630e37cda41b78f1f3dfb44fb574c46992a747d7afb4c55e3ca7691027d177d
370
371
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
371
372
  <p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Mature" src="https://img.shields.io/badge/maturity-Mature-brightgreen.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/server-ux/tree/15.0/base_tier_validation"><img alt="OCA/server-ux" src="https://img.shields.io/badge/github-OCA%2Fserver--ux-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/server-ux-15-0/server-ux-15-0-base_tier_validation"><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/server-ux&amp;target_branch=15.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
372
373
  <p>Validating some operations is a common need across different areas in a company
@@ -567,7 +568,9 @@ If you spotted it first, help us to smash it by providing a detailed and welcome
567
568
  <div class="section" id="maintainers">
568
569
  <h2><a class="toc-backref" href="#toc-entry-22">Maintainers</a></h2>
569
570
  <p>This module is maintained by the OCA.</p>
570
- <a class="reference external image-reference" href="https://odoo-community.org"><img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" /></a>
571
+ <a class="reference external image-reference" href="https://odoo-community.org">
572
+ <img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" />
573
+ </a>
571
574
  <p>OCA, or the Odoo Community Association, is a nonprofit organization whose
572
575
  mission is to support the collaborative development of Odoo features and
573
576
  promote its widespread use.</p>
@@ -2,3 +2,4 @@
2
2
 
3
3
  from . import common
4
4
  from . import test_tier_validation
5
+ from . import test_tier_validation_reminder
@@ -75,7 +75,7 @@ class CommonTierValidation(common.TransactionCase):
75
75
 
76
76
  # Create tier definitions:
77
77
  cls.tier_def_obj = cls.env["tier.definition"]
78
- cls.tier_def_obj.create(
78
+ cls.tier_definition = cls.tier_def_obj.create(
79
79
  {
80
80
  "model_id": cls.tester_model.id,
81
81
  "review_type": "individual",
@@ -0,0 +1,46 @@
1
+ # Copyright 2018-19 ForgeFlow S.L. (https://www.forgeflow.com)
2
+ # License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl.html).
3
+
4
+ from freezegun import freeze_time
5
+
6
+ from odoo import fields
7
+ from odoo.tests.common import tagged
8
+
9
+ from .common import CommonTierValidation
10
+
11
+
12
+ @tagged("post_install", "-at_install")
13
+ class TierTierValidation(CommonTierValidation):
14
+ def test_validation_reminder(self):
15
+ """Check the posting of reminder to reviews."""
16
+ tier_definition = self.tier_definition
17
+ tier_definition.notify_reminder_delay = 3
18
+
19
+ # Request a review today
20
+ self.test_record.with_user(self.test_user_2.id).request_validation()
21
+ review = self.env["tier.review"].search(
22
+ [("definition_id", "=", tier_definition.id)]
23
+ )
24
+ self.assertTrue(review)
25
+ self.assertEqual(review.last_reminder_date, False)
26
+
27
+ # 2 days later no reminder should be posted
28
+ in_2_days = fields.Datetime.add(fields.Datetime.now(), days=2)
29
+ with freeze_time(in_2_days):
30
+ tier_definition._cron_send_review_reminder()
31
+ self.assertEqual(review.last_reminder_date, False)
32
+ # 4 days later first reminder
33
+ in_4_days = fields.Datetime.add(fields.Datetime.now(), days=4)
34
+ with freeze_time(in_4_days):
35
+ self.tier_definition._cron_send_review_reminder()
36
+ self.assertEqual(review.last_reminder_date, in_4_days)
37
+ # 5 days later no new reminder
38
+ in_6_days = fields.Datetime.add(fields.Datetime.now(), days=6)
39
+ with freeze_time(in_6_days):
40
+ self.tier_definition._cron_send_review_reminder()
41
+ self.assertEqual(review.last_reminder_date, in_4_days)
42
+ # 9 days later second reminder
43
+ in_9_days = fields.Datetime.add(fields.Datetime.now(), days=9)
44
+ with freeze_time(in_9_days):
45
+ self.tier_definition._cron_send_review_reminder()
46
+ self.assertEqual(review.last_reminder_date, in_9_days)
@@ -28,7 +28,7 @@
28
28
  <div class="oe_button_box" name="button_box" />
29
29
  <widget
30
30
  name="web_ribbon"
31
- text="Archived"
31
+ title="Archived"
32
32
  bg_color="bg-danger"
33
33
  attrs="{'invisible': [('active', '=', True)]}"
34
34
  />
@@ -100,6 +100,7 @@
100
100
  <group name="notify">
101
101
  <field name="notify_on_create" />
102
102
  <field name="has_comment" />
103
+ <field name="notify_reminder_delay" />
103
104
  </group>
104
105
  </group>
105
106
  </page>
@@ -1,12 +1,11 @@
1
1
  Metadata-Version: 2.1
2
- Name: odoo-addon-base-tier-validation
3
- Version: 15.0.1.3.7
2
+ Name: odoo-addon-base_tier_validation
3
+ Version: 15.0.1.5.0
4
4
  Summary: Implement a validation process based on tiers.
5
5
  Home-page: https://github.com/OCA/server-ux
6
6
  Author: ForgeFlow, Odoo Community Association (OCA)
7
7
  Author-email: support@odoo-community.org
8
8
  License: AGPL-3
9
- Platform: UNKNOWN
10
9
  Classifier: Programming Language :: Python
11
10
  Classifier: Framework :: Odoo
12
11
  Classifier: Framework :: Odoo :: 15.0
@@ -24,7 +23,7 @@ Base Tier Validation
24
23
  !! This file is generated by oca-gen-addon-readme !!
25
24
  !! changes will be overwritten. !!
26
25
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
27
- !! source digest: sha256:ca39850abd527c4f65a1858062316123b49d1d68ef24e6399f58d33ead5bd624
26
+ !! source digest: sha256:6630e37cda41b78f1f3dfb44fb574c46992a747d7afb4c55e3ca7691027d177d
28
27
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
29
28
 
30
29
  .. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png
@@ -251,5 +250,3 @@ Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:
251
250
  This module is part of the `OCA/server-ux <https://github.com/OCA/server-ux/tree/15.0/base_tier_validation>`_ project on GitHub.
252
251
 
253
252
  You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
254
-
255
-
@@ -1,8 +1,9 @@
1
- odoo/addons/base_tier_validation/README.rst,sha256=Jp3gcZhOXyyBwKt8Q0OfSaVHPNbPLX43IJ7Cap4feo8,6836
1
+ odoo/addons/base_tier_validation/README.rst,sha256=-tQtO_2feniz_m3sYC0jST8go-IaPO5oQWJ6KuMz6nE,6836
2
2
  odoo/addons/base_tier_validation/__init__.py,sha256=rKfzYX9RhkkCxgh2f0PJLYN45Kw8T8-fwxw1pbjLuug,108
3
- odoo/addons/base_tier_validation/__manifest__.py,sha256=VVaGkeq2PKT7okitHh8nCqgySoA5SrLhygv7-9S0ytk,1446
4
- odoo/addons/base_tier_validation/data/mail_data.xml,sha256=UKzkLT8rYrFuThdp43v7nLW5SOco4vvIIAhbB_IAQZs,1414
5
- odoo/addons/base_tier_validation/i18n/base_tier_validation.pot,sha256=YW6P1WKAu7eM8_Xrl9bwog1VSajCRiwcj8zup_nNewc,25086
3
+ odoo/addons/base_tier_validation/__manifest__.py,sha256=FdbI0vNhN-fBTQJa2SvZacCH3oVbrnI6QxTa9Xj3Zkw,1476
4
+ odoo/addons/base_tier_validation/data/cron_data.xml,sha256=HMA_SgAk3_vLu_QQLHd0UyzPASuDRj5cvpiK_17esQc,707
5
+ odoo/addons/base_tier_validation/data/mail_data.xml,sha256=hXhGTSyG2NAsDfZShmpyBKTXJi46L5PP1mFJAlKmlVE,1984
6
+ odoo/addons/base_tier_validation/i18n/base_tier_validation.pot,sha256=ds5mywlrl9Oxoeln6I6fYDM2pfFux8BYNsBcifYNPgQ,26602
6
7
  odoo/addons/base_tier_validation/i18n/es.po,sha256=ka4D6vYE_ny5XWu9YGWVn0JWhmY-GMxk438_MLjkHmI,27194
7
8
  odoo/addons/base_tier_validation/i18n/es_MX.po,sha256=GA2LcuOGTRZQToh1hlV81WF1uuTDOtOA7y9R3V1YTro,27080
8
9
  odoo/addons/base_tier_validation/i18n/fr.po,sha256=WHA2OGAxwqEBfCmrINFgPs8y77mr3hfBNMbyxowPzeE,26008
@@ -13,8 +14,8 @@ odoo/addons/base_tier_validation/i18n/zh_CN.po,sha256=a2nxdXEhlrAM_ngpbBp0KHtrvk
13
14
  odoo/addons/base_tier_validation/models/__init__.py,sha256=mLFF29I3WBYA2Qwlf9NU4pP2KwDKn5JpbZRzwe9-9pg,210
14
15
  odoo/addons/base_tier_validation/models/res_config_settings.py,sha256=78JEni0DTer6yzyHG456MmhYjs1YJMVR-U3C1C-tlGM,563
15
16
  odoo/addons/base_tier_validation/models/res_users.py,sha256=JH2QgQdACI-0GMHEI_JmIZf4G6huvQ4PqDza4M2Li48,2245
16
- odoo/addons/base_tier_validation/models/tier_definition.py,sha256=iWGZoHBmZ1pPbRX5JQG2QpFMoDl2HtfQYdkrfEcyDoA,3095
17
- odoo/addons/base_tier_validation/models/tier_review.py,sha256=8wzETc8TOu3mxrdKNo07H0VVgZmDNpOyRcBq6SSTb4w,4484
17
+ odoo/addons/base_tier_validation/models/tier_definition.py,sha256=vpjLLP3XwMl35O8pCGh_5Db85iKrDV_G5OJTUtFszRI,4468
18
+ odoo/addons/base_tier_validation/models/tier_review.py,sha256=q0xve9c8bAxjBrj2e7h7wqeZ0w0Hnm-u5Rp8iFeFJD0,6082
18
19
  odoo/addons/base_tier_validation/models/tier_validation.py,sha256=-NpGKEr22hbFxsq7s01P2Z4NxFV66YaxKaPf6DxDYsQ,22473
19
20
  odoo/addons/base_tier_validation/readme/CONFIGURE.rst,sha256=-XvqIRVzdEx5Pl-w5qVHayTDYzGDI1FX92ChdijeNh0,503
20
21
  odoo/addons/base_tier_validation/readme/CONTRIBUTORS.rst,sha256=ibMe_AqDBgemGXGJOMH6_NCDegHoav6Umt7Fy4cmC-E,282
@@ -24,7 +25,7 @@ odoo/addons/base_tier_validation/readme/ROADMAP.rst,sha256=UWhIpMUTM_ido6s3jZiF8
24
25
  odoo/addons/base_tier_validation/security/ir.model.access.csv,sha256=ZlU5wKSjQ8gL6iCulpR_AF-AdULanaGK9J1gl-Fx__4,399
25
26
  odoo/addons/base_tier_validation/security/tier_validation_security.xml,sha256=eWFwz-osHgYFmVoEVzOSboO9oqUMtQ8oygyaz0os50Y,806
26
27
  odoo/addons/base_tier_validation/static/description/icon.png,sha256=6xBPJauaFOF0KDHfHgQopSc28kKvxMaeoQFQWZtfZDo,9455
27
- odoo/addons/base_tier_validation/static/description/index.html,sha256=5FIHPmMvyGEH5B5hozuypvZgQMZPbMVRrR_dB_F11Ug,20518
28
+ odoo/addons/base_tier_validation/static/description/index.html,sha256=Jwts_rAWLrVqJqvw22z2DDWTjcJmAg9cEQg2scNO-e8,20601
28
29
  odoo/addons/base_tier_validation/static/src/js/systray.js,sha256=IbDLI1ML0B22wCPRlv-2T0PzTPW4k88JbzS1Dcogsuo,5725
29
30
  odoo/addons/base_tier_validation/static/src/js/tier_review_widget.js,sha256=9iEhOzvbKND-JDGDa9lhGsQd3wu9hZuJm48xdEK4uj8,1991
30
31
  odoo/addons/base_tier_validation/static/src/scss/review.scss,sha256=K0ZLNShHoj-piTp7EP92EglZgsFBsHyAazPr764rrHs,687
@@ -32,17 +33,18 @@ odoo/addons/base_tier_validation/static/src/scss/systray.scss,sha256=vco1l3nsJfX
32
33
  odoo/addons/base_tier_validation/static/src/xml/systray.xml,sha256=XZ-agb4gbp7NC8Nol44KRUcD4IxzELs5h-1Z-sYEago,3507
33
34
  odoo/addons/base_tier_validation/static/src/xml/tier_review_template.xml,sha256=s7OszZ996NilQ39CrRo6GXMZRFbV5qfoaiM6f6KsArg,3931
34
35
  odoo/addons/base_tier_validation/templates/tier_validation_templates.xml,sha256=Obob5W0mkAkhWWnr1UuR-sAZeUnH-xlEPggIXfuxbSY,3507
35
- odoo/addons/base_tier_validation/tests/__init__.py,sha256=3z2_lQ9JiDSFDam4p24qDw5j02iaPb4m2naxv9DkbGA,122
36
- odoo/addons/base_tier_validation/tests/common.py,sha256=fVfiIMRoiTW2-09xrUYGQWYNgdgHTOtwE_9_UMc0E24,3200
36
+ odoo/addons/base_tier_validation/tests/__init__.py,sha256=7tj1DSbPnyA__lAKxvjX53Ll_ZTE8y8Z1bewtZJoURI,166
37
+ odoo/addons/base_tier_validation/tests/common.py,sha256=zGOs4cOK_38Ez0tPpkdXJ-yo7AgM4OyFkgizOz2La1U,3222
37
38
  odoo/addons/base_tier_validation/tests/test_tier_validation.py,sha256=5hHWj92q8NCCFvw1iHDU3JAXC56SJ_W4tWw2XuNktYw,22118
39
+ odoo/addons/base_tier_validation/tests/test_tier_validation_reminder.py,sha256=jsLU-7pJtbUvKPi7ddXU4jAwiJp32pKTrluarrtLKvU,1963
38
40
  odoo/addons/base_tier_validation/tests/tier_validation_tester.py,sha256=AyHJIY1w2P1pH2BHCbXrlZTqlzWdXb5K43yy4KFbqu0,1645
39
41
  odoo/addons/base_tier_validation/views/res_config_settings_views.xml,sha256=PFLz_GkO4s77YReykKjLDYaUfmkCaeFNTxkeUuEYarE,4156
40
- odoo/addons/base_tier_validation/views/tier_definition_view.xml,sha256=NCsr4f9Jay8KXuVzFmcjfzXXVwX51LTxHThCe5kYvT8,6895
42
+ odoo/addons/base_tier_validation/views/tier_definition_view.xml,sha256=BM04uI_70SVdYUM3FZRGZW0RpfiIT_R86TjyNWMmmS4,6971
41
43
  odoo/addons/base_tier_validation/views/tier_review_view.xml,sha256=tPzmpz-kbQwOOtJrAcsTJEP9bJLcfzWAITCpI86kZU4,966
42
44
  odoo/addons/base_tier_validation/wizard/__init__.py,sha256=52q6-LAjYeJ1Vu5ahon_jnhds9VsoJvYaQCiZc82WKw,95
43
45
  odoo/addons/base_tier_validation/wizard/comment_wizard.py,sha256=JzF5RBpqx3JB3IuXdSHbZ6saLwLlRnQzGHWQk2D82uA,855
44
46
  odoo/addons/base_tier_validation/wizard/comment_wizard_view.xml,sha256=lUW9oncnS7MaayA5EIbeQ2XNlTc3SZ8wE8eKSnS5w1k,967
45
- odoo_addon_base_tier_validation-15.0.1.3.7.dist-info/METADATA,sha256=F4rOVJHHU4uGeWitTyPDY1budlegpt4AS3lzF3HYVuw,7438
46
- odoo_addon_base_tier_validation-15.0.1.3.7.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
47
- odoo_addon_base_tier_validation-15.0.1.3.7.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
48
- odoo_addon_base_tier_validation-15.0.1.3.7.dist-info/RECORD,,
47
+ odoo_addon_base_tier_validation-15.0.1.5.0.dist-info/METADATA,sha256=3TGGuyk_ffBm5xPbltKsE0AsSuK5SNNNRWRbdDn_sHY,7418
48
+ odoo_addon_base_tier_validation-15.0.1.5.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
49
+ odoo_addon_base_tier_validation-15.0.1.5.0.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
50
+ odoo_addon_base_tier_validation-15.0.1.5.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.42.0)
2
+ Generator: bdist_wheel (0.43.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5