Rename module fusion_authorizer_portal -> fusion_portal everywhere: manifest/assets, controllers, models, views, JS (odoo.define + asset URLs), migration MODULE constants; plus cross-module refs in fusion_schedule, fusion_repairs, fusion_quotations (depends + inherit_id) and the pdf_filler import in fusion_claims. Add rename_module.sql for the one-time in-place DB rename (ir_module_module, ir_model_data, ir_ui_view.key, ir_module_module_dependency) required on installed envs before -u fusion_portal. Document the rename gotcha as rule 16 in CLAUDE.md. Redesign the Accessibility Assessment selector: replace Font Awesome icon tiles with photo-banner cards using 7 optimized images (1000x750 PNG -> 800x600 JPEG, ~8MB -> 488KB), per-type colour accent bar + centered pill button, hover lift/zoom. Images ship as module static files so they deploy/sync with the module. Drop the regenerable graphify-out cache from the module. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
29 lines
784 B
Python
29 lines
784 B
Python
# -*- coding: utf-8 -*-
|
|
|
|
from odoo import api, fields, models, _
|
|
|
|
|
|
class FusionLoanerCheckoutAssessment(models.Model):
|
|
_inherit = 'fusion.loaner.checkout'
|
|
|
|
assessment_id = fields.Many2one(
|
|
'fusion.assessment',
|
|
string='Assessment',
|
|
ondelete='set null',
|
|
tracking=True,
|
|
help='Assessment during which this loaner was issued',
|
|
)
|
|
|
|
def action_view_assessment(self):
|
|
self.ensure_one()
|
|
if not self.assessment_id:
|
|
return
|
|
return {
|
|
'name': self.assessment_id.display_name,
|
|
'type': 'ir.actions.act_window',
|
|
'res_model': 'fusion.assessment',
|
|
'view_mode': 'form',
|
|
'views': [(False, 'form')],
|
|
'res_id': self.assessment_id.id,
|
|
}
|