feat: hide authorizer for rental orders, auto-set sale type

Rental orders no longer show the "Authorizer Required?" question or
the Authorizer field. The sale type is automatically set to 'Rentals'
when creating or confirming a rental order. Validation logic also
skips authorizer checks for rental sale type.

Made-with: Cursor
This commit is contained in:
gsinghpal
2026-02-25 23:33:23 -05:00
parent 3c8f83b8e6
commit 14fe9ab716
51 changed files with 4192 additions and 822 deletions

View File

@@ -7,7 +7,7 @@
<field name="inherit_id" ref="sale_renting.res_config_settings_view_form"/>
<field name="arch" type="xml">
<xpath expr="//app[@name='sale_renting']" position="inside">
<block title="Rental Enhancement" name="rental_enhancement_settings">
<block title="Fusion Rental" name="rental_enhancement_settings">
<setting string="Google Review URL"
help="Google Review link shown in thank-you emails after rental close.">
<div class="content-group">
@@ -31,6 +31,62 @@
</div>
</div>
</setting>
<setting string="Google Maps API Key"
help="API key for address autocomplete on the rental agreement form. If Fusion Claims is installed, its key is used automatically.">
<div class="content-group">
<div class="mt-2">
<field name="rental_google_maps_api_key"
placeholder="Enter Google Maps API Key"
password="True"/>
</div>
<div class="text-muted mt-1">
Only needed if Fusion Claims is not installed. Enable the
Places API and Geocoding API in Google Cloud Console.
</div>
</div>
</setting>
</block>
<block title="Timing &amp; Short-Term Rentals" name="rental_timing_settings">
<setting string="Marketing Email Timing"
help="Percentage of rental period after start date to send the purchase offer email.">
<div class="content-group">
<div class="row mt-2">
<label class="col-lg-4 o_light_label" for="rental_marketing_email_pct"/>
<field name="rental_marketing_email_pct" class="col-lg-2"/>
<span class="col-lg-5 text-muted">% of rental period (default 23% = day 7 of 30)</span>
</div>
</div>
</setting>
<setting string="Renewal Reminder Timing"
help="Percentage of rental period before renewal date to send the reminder.">
<div class="content-group">
<div class="row mt-2">
<label class="col-lg-4 o_light_label" for="rental_renewal_reminder_pct"/>
<field name="rental_renewal_reminder_pct" class="col-lg-2"/>
<span class="col-lg-5 text-muted">% of rental period (default 10% = 3 days before on 30-day)</span>
</div>
</div>
</setting>
<setting string="Short-Term Rental Threshold"
help="Rentals shorter than this are considered short-term. Auto-renewal waits for the grace period.">
<div class="content-group">
<div class="row mt-2">
<label class="col-lg-4 o_light_label" for="rental_short_term_threshold_days"/>
<field name="rental_short_term_threshold_days" class="col-lg-2"/>
<span class="col-lg-5 text-muted">days (rentals below this get grace period protection)</span>
</div>
</div>
</setting>
<setting string="Short-Term Grace Period"
help="Time after scheduled return before auto-renewal charges a short-term rental.">
<div class="content-group">
<div class="row mt-2">
<label class="col-lg-4 o_light_label" for="rental_short_term_grace_hours"/>
<field name="rental_short_term_grace_hours" class="col-lg-2"/>
<span class="col-lg-5 text-muted">hours after return time (default 1 hour)</span>
</div>
</div>
</setting>
</block>
</xpath>
</field>