Make module installable on stock Odoo 18 (verified via test DB install)
Caught and fixed by running an actual install on a throwaway DB:
- Strip 29 # comment lines from ir.model.access.csv (Odoo CSV loader treats
them as malformed rows → IndexError); 79 data rows preserved
- Remove obsolete ir.cron.numbercall field (removed in Odoo 17+) from 4 cron
records in fl_deadline_rules.xml
- Rename <tree>→<list> across 26 sites; inside x2many inline views Odoo 18 no
longer recognizes <tree>, which made it fall back to the outer model and
reject inner fields ("Field 'partner_id' does not exist in model 'fl.case'")
- Add store=True to non-stored computed fields referenced by search filters,
which Odoo 18 now rejects as unsearchable:
- fl.case: overdue_deadline_count, next_deadline_label
- fl.deposition: notice_valid
Module loads cleanly: 31 fl.* models registered, no errors.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
<field name="name">fl.analysis.tree</field>
|
||||
<field name="model">fl.analysis</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="AI Analyses">
|
||||
<list string="AI Analyses">
|
||||
<field name="case_id"/>
|
||||
<field name="analysis_type"/>
|
||||
<field name="analysis_date"/>
|
||||
@@ -15,7 +15,7 @@
|
||||
<field name="confidence_level"/>
|
||||
<field name="case_complexity"/>
|
||||
<field name="state"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -131,14 +131,14 @@
|
||||
</group>
|
||||
<separator string="Party Details (Income, Employment, Service)"/>
|
||||
<field name="party_ids">
|
||||
<tree string="Parties" editable="bottom">
|
||||
<list string="Parties" editable="bottom">
|
||||
<field name="partner_id"/>
|
||||
<field name="role"/>
|
||||
<field name="employment_type"/>
|
||||
<field name="gross_monthly_income"/>
|
||||
<field name="net_monthly_income" readonly="1"/>
|
||||
<field name="income_imputed"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</page>
|
||||
|
||||
@@ -167,7 +167,7 @@
|
||||
invisible="not parenting_class_required"/>
|
||||
<separator string="Children on Case"/>
|
||||
<field name="child_ids">
|
||||
<tree string="Children" editable="bottom">
|
||||
<list string="Children" editable="bottom">
|
||||
<field name="name"/>
|
||||
<field name="date_of_birth"/>
|
||||
<field name="age" readonly="1"/>
|
||||
@@ -175,7 +175,7 @@
|
||||
<field name="approaching_emancipation" readonly="1"/>
|
||||
<field name="emancipated" readonly="1"/>
|
||||
<field name="support_amount"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</page>
|
||||
|
||||
@@ -230,7 +230,7 @@
|
||||
<field name="discovery_cutoff_date" readonly="1"/>
|
||||
</group>
|
||||
<field name="deadline_ids">
|
||||
<tree string="Deadlines" decoration-danger="is_overdue == True"
|
||||
<list string="Deadlines" decoration-danger="is_overdue == True"
|
||||
decoration-warning="days_until_due <= 7 and days_until_due >= 0"
|
||||
decoration-muted="completed == True">
|
||||
<field name="name"/>
|
||||
@@ -240,7 +240,7 @@
|
||||
<field name="statute_reference"/>
|
||||
<field name="completed"/>
|
||||
<field name="is_overdue" readonly="1"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</page>
|
||||
|
||||
@@ -248,13 +248,13 @@
|
||||
<page string="Hearings" name="hearings">
|
||||
<field name="next_hearing_date" readonly="1"/>
|
||||
<field name="hearing_ids">
|
||||
<tree string="Hearings" editable="bottom">
|
||||
<list string="Hearings" editable="bottom">
|
||||
<field name="name"/>
|
||||
<field name="hearing_type"/>
|
||||
<field name="hearing_date"/>
|
||||
<field name="location"/>
|
||||
<field name="state"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</page>
|
||||
|
||||
@@ -282,7 +282,7 @@
|
||||
invisible="not attorney_memo_id"/>
|
||||
<separator string="All Analyses"/>
|
||||
<field name="analysis_ids">
|
||||
<tree string="Analyses">
|
||||
<list string="Analyses">
|
||||
<field name="analysis_date"/>
|
||||
<field name="analysis_type"/>
|
||||
<field name="model_used"/>
|
||||
@@ -290,7 +290,7 @@
|
||||
<field name="confidence_level"/>
|
||||
<field name="case_complexity"/>
|
||||
<field name="state"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</page>
|
||||
|
||||
@@ -320,16 +320,16 @@
|
||||
groups="activeblue_familylaw.group_admin,activeblue_familylaw.group_paralegal"/>
|
||||
<separator string="Case Documents"/>
|
||||
<field name="document_ids">
|
||||
<tree string="Documents">
|
||||
<list string="Documents">
|
||||
<field name="name"/>
|
||||
<field name="document_type"/>
|
||||
<field name="state"/>
|
||||
<field name="filed_date"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
<separator string="e-Filing Submissions"/>
|
||||
<field name="efiling_submission_ids">
|
||||
<tree string="e-Filing Submissions"
|
||||
<list string="e-Filing Submissions"
|
||||
decoration-success="status == 'accepted'"
|
||||
decoration-danger="status in ('rejected','failed')"
|
||||
decoration-info="status == 'submitted'">
|
||||
@@ -339,7 +339,7 @@
|
||||
<field name="pdfa_valid"/>
|
||||
<field name="confirmation_number"/>
|
||||
<field name="status"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</page>
|
||||
|
||||
@@ -356,7 +356,7 @@
|
||||
</group>
|
||||
</group>
|
||||
<field name="timesheet_ids">
|
||||
<tree string="Timesheet Entries" editable="bottom"
|
||||
<list string="Timesheet Entries" editable="bottom"
|
||||
decoration-muted="is_billable == False">
|
||||
<field name="date"/>
|
||||
<field name="name"/>
|
||||
@@ -367,7 +367,7 @@
|
||||
<field name="hourly_rate" readonly="1"/>
|
||||
<field name="billable_amount" readonly="1" sum="Amount"/>
|
||||
<field name="currency_id" column_invisible="1"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</page>
|
||||
|
||||
@@ -389,7 +389,7 @@
|
||||
<field name="name">fl.case.tree</field>
|
||||
<field name="model">fl.case</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Family Law Cases"
|
||||
<list string="Family Law Cases"
|
||||
decoration-danger="overdue_deadline_count > 0"
|
||||
decoration-warning="attorney_referral_flag == True">
|
||||
<field name="name"/>
|
||||
@@ -406,7 +406,7 @@
|
||||
invisible="case_type != 'modification'"/>
|
||||
<field name="attorney_referral_flag" widget="boolean_toggle"/>
|
||||
<field name="domestic_violence_flag" widget="boolean_toggle"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
<field name="name">fl.caselaw.tree</field>
|
||||
<field name="model">fl.caselaw</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Case Law Library">
|
||||
<list string="Case Law Library">
|
||||
<field name="short_name"/>
|
||||
<field name="year"/>
|
||||
<field name="court"/>
|
||||
<field name="favorable_to"/>
|
||||
<field name="issue_tag_ids" widget="many2many_tags"/>
|
||||
<field name="superseded_by_2023_reform"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
<field name="name">fl.child.tree</field>
|
||||
<field name="model">fl.child</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Children"
|
||||
<list string="Children"
|
||||
decoration-warning="approaching_emancipation == True"
|
||||
decoration-muted="emancipated == True">
|
||||
<field name="name"/>
|
||||
@@ -66,7 +66,7 @@
|
||||
<field name="approaching_emancipation"/>
|
||||
<field name="emancipated"/>
|
||||
<field name="support_amount"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
<field name="name">fl.conflict.check.tree</field>
|
||||
<field name="model">fl.conflict.check</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Conflict Checks"
|
||||
<list string="Conflict Checks"
|
||||
decoration-danger="status == 'conflict'"
|
||||
decoration-warning="status == 'override'"
|
||||
decoration-success="status == 'clear'">
|
||||
@@ -77,7 +77,7 @@
|
||||
<field name="check_date"/>
|
||||
<field name="status"/>
|
||||
<field name="matched_case_ids" widget="many2many_tags"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
<field name="name">fl.deadline.tree</field>
|
||||
<field name="model">fl.deadline</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Deadlines"
|
||||
<list string="Deadlines"
|
||||
decoration-danger="is_overdue == True"
|
||||
decoration-warning="days_until_due <= 7 and days_until_due >= 0 and not completed and not waived"
|
||||
decoration-success="completed == True"
|
||||
@@ -27,7 +27,7 @@
|
||||
<button name="action_mark_complete" string="✔ Complete"
|
||||
type="object" icon="fa-check"
|
||||
invisible="(completed or waived)"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
<field name="name">fl.deposition.tree</field>
|
||||
<field name="model">fl.deposition</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Depositions"
|
||||
<list string="Depositions"
|
||||
decoration-danger="state == 'no_show'"
|
||||
decoration-success="state == 'completed'"
|
||||
decoration-muted="state in ('cancelled', 'rescheduled')"
|
||||
@@ -29,7 +29,7 @@
|
||||
decoration-info="state == 'confirmed'"/>
|
||||
<field name="duces_tecum" optional="show"/>
|
||||
<field name="income_verified" optional="show"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
<field name="name">fl.discovery.tree</field>
|
||||
<field name="model">fl.discovery</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Discovery"
|
||||
<list string="Discovery"
|
||||
decoration-danger="is_overdue == True or admissions_deemed == True"
|
||||
decoration-warning="state == 'deficient'"
|
||||
decoration-success="state == 'complete'"
|
||||
@@ -40,7 +40,7 @@
|
||||
<button name="action_file_motion_to_compel" string="Compel"
|
||||
type="object" icon="fa-gavel"
|
||||
invisible="state not in ['served', 'deficient']"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -82,7 +82,7 @@
|
||||
<field name="name">fl.efiling.submission.tree</field>
|
||||
<field name="model">fl.efiling.submission</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="e-Filing Submissions"
|
||||
<list string="e-Filing Submissions"
|
||||
decoration-success="status == 'accepted'"
|
||||
decoration-danger="status in ('rejected','failed')"
|
||||
decoration-info="status == 'submitted'">
|
||||
@@ -93,7 +93,7 @@
|
||||
<field name="pdfa_valid"/>
|
||||
<field name="confirmation_number"/>
|
||||
<field name="status"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
<field name="name">fl.fee.waiver.tree</field>
|
||||
<field name="model">fl.fee.waiver</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Fee Waivers">
|
||||
<list string="Fee Waivers">
|
||||
<field name="case_id"/>
|
||||
<field name="party_id"/>
|
||||
<field name="household_size"/>
|
||||
@@ -79,7 +79,7 @@
|
||||
<field name="fpl_200pct_threshold"/>
|
||||
<field name="eligible"/>
|
||||
<field name="state"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
<field name="name">fl.hearing.tree</field>
|
||||
<field name="model">fl.hearing</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Hearings"
|
||||
<list string="Hearings"
|
||||
decoration-success="state == 'completed'"
|
||||
decoration-danger="state == 'cancelled'"
|
||||
decoration-warning="state == 'continued'"
|
||||
@@ -26,7 +26,7 @@
|
||||
decoration-warning="state == 'continued'"
|
||||
decoration-info="state == 'scheduled'"/>
|
||||
<field name="order_entered" optional="show"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -45,13 +45,13 @@
|
||||
</group>
|
||||
<separator string="Income Sources"/>
|
||||
<field name="income_source_ids">
|
||||
<tree editable="bottom">
|
||||
<list editable="bottom">
|
||||
<field name="source_type"/>
|
||||
<field name="description"/>
|
||||
<field name="monthly_amount"/>
|
||||
<field name="verified"/>
|
||||
<field name="verification_document"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</page>
|
||||
<page string="Income Imputation (FL 61.30(2)(b))">
|
||||
@@ -109,7 +109,7 @@
|
||||
<field name="name">fl.party.tree</field>
|
||||
<field name="model">fl.party</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Parties">
|
||||
<list string="Parties">
|
||||
<field name="case_id"/>
|
||||
<field name="partner_id"/>
|
||||
<field name="role"/>
|
||||
@@ -118,7 +118,7 @@
|
||||
<field name="net_monthly_income"/>
|
||||
<field name="income_imputed"/>
|
||||
<field name="lifestyle_inconsistency_flag" string="Lifestyle ⚠"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -6,12 +6,12 @@
|
||||
<field name="name">fl.statute.tree</field>
|
||||
<field name="model">fl.statute</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="FL Statute Index">
|
||||
<list string="FL Statute Index">
|
||||
<field name="name"/>
|
||||
<field name="title"/>
|
||||
<field name="category"/>
|
||||
<field name="active"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
@@ -42,12 +42,12 @@
|
||||
<field name="name">fl.issue.tag.tree</field>
|
||||
<field name="model">fl.issue.tag</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Issue Tags" editable="bottom">
|
||||
<list string="Issue Tags" editable="bottom">
|
||||
<field name="name"/>
|
||||
<field name="name_es"/>
|
||||
<field name="case_type"/>
|
||||
<field name="color" widget="color_picker"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -120,7 +120,7 @@
|
||||
<field name="name">fl.support.calculation.tree</field>
|
||||
<field name="model">fl.support.calculation</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Support Calculations">
|
||||
<list string="Support Calculations">
|
||||
<field name="case_id"/>
|
||||
<field name="calculation_date"/>
|
||||
<field name="calculation_type"/>
|
||||
@@ -129,7 +129,7 @@
|
||||
<field name="total_support_obligation"/>
|
||||
<field name="net_payment_amount"/>
|
||||
<field name="payment_direction"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
@@ -140,14 +140,14 @@
|
||||
<field name="name">fl.support.schedule.entry.tree</field>
|
||||
<field name="model">fl.support.schedule.entry</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="FL Support Schedule">
|
||||
<list string="FL Support Schedule">
|
||||
<field name="income_min"/>
|
||||
<field name="income_max"/>
|
||||
<field name="children_count"/>
|
||||
<field name="obligation_amount"/>
|
||||
<field name="effective_date"/>
|
||||
<field name="active"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<field name="name">fl.timesheet.tree</field>
|
||||
<field name="model">fl.timesheet</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Timesheet Entries" editable="bottom"
|
||||
<list string="Timesheet Entries" editable="bottom"
|
||||
decoration-muted="is_billable == False">
|
||||
<field name="date"/>
|
||||
<field name="case_id"/>
|
||||
@@ -18,7 +18,7 @@
|
||||
<field name="hourly_rate" readonly="1"/>
|
||||
<field name="billable_amount" readonly="1" sum="Amount"/>
|
||||
<field name="currency_id" column_invisible="1"/>
|
||||
</tree>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user