Skip to content

Commit ca59fb5

Browse files
committed
[IMP] vcp_management: Add new smart button to go from a platform to related repositories
1 parent 1414815 commit ca59fb5

3 files changed

Lines changed: 28 additions & 1 deletion

File tree

vcp_management/models/vcp_platform.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ class VcpPlatform(models.Model):
5757
"vcp.repository",
5858
inverse_name="platform_id",
5959
)
60+
repository_count = fields.Integer(compute="_compute_repository_count", store=True)
6061
default_update_repository_information = fields.Boolean()
6162
information_update = fields.Boolean()
6263
fetch_repository_fork = fields.Boolean(
@@ -88,6 +89,11 @@ def _compute_local_path(self):
8889
for record in self:
8990
record.local_path = f"{source_path}/{record.id}"
9091

92+
@api.depends("repository_ids")
93+
def _compute_repository_count(self):
94+
for record in self:
95+
record.repository_count = len(record.repository_ids)
96+
9197
def update_information(self):
9298
self.ensure_one()
9399
getattr(self, f"_update_information_{self.kind}")()

vcp_management/views/vcp_platform.xml

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,20 @@
1515
/>
1616
</header>
1717
<sheet>
18-
<div name="button_box" />
18+
<div name="button_box">
19+
<button
20+
class="oe_stat_button"
21+
icon="fa-folder"
22+
type="action"
23+
name="%(vcp_platform_2_repository_act_window)d"
24+
>
25+
<field
26+
name="repository_count"
27+
string="Repositories"
28+
widget="statinfo"
29+
/>
30+
</button>
31+
</div>
1932
<field
2033
name="image_1920"
2134
widget='image'
@@ -66,6 +79,7 @@
6679
<field name="arch" type="xml">
6780
<list>
6881
<field name="name" />
82+
<field name="repository_count" optional="show" />
6983
</list>
7084
</field>
7185
</record>

vcp_management/views/vcp_repository.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,13 @@
157157
</field>
158158
</record>
159159

160+
<record model="ir.actions.act_window" id="vcp_platform_2_repository_act_window">
161+
<field name="name">Repositories</field>
162+
<field name="res_model">vcp.repository</field>
163+
<field name="view_mode">list,form</field>
164+
<field name="domain">[("platform_id", "=", active_id)]</field>
165+
</record>
166+
160167
<record model="ir.actions.act_window" id="vcp_repository_act_window">
161168
<field name="name">Repositories</field>
162169
<field name="path">vcp-repositories</field>

0 commit comments

Comments
 (0)