186 lines
11 KiB
XML
186 lines
11 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<!-- Inherit Family Member Form to Add Donation Details Smart Button -->
|
|
<record id="family_member_form_inherit_donation_button" model="ir.ui.view">
|
|
<field name="name">family.member.form.inherit.donation.button</field>
|
|
<field name="model">family.member</field>
|
|
<field name="inherit_id" ref="odex_benefit.family_member_form"/>
|
|
<field name="arch" type="xml">
|
|
<xpath expr="//div[@name='button_box']" position="inside">
|
|
<button icon="fa-money" name="action_open_donation_detail" type="object"
|
|
attrs="{'invisible': [('donation_details_count', '=', 0)]}">
|
|
<field name="donation_details_count" string="Donation Details"
|
|
widget="statinfo"/>
|
|
</button>
|
|
</xpath>
|
|
<xpath expr="//field[@name='sponsor_related_id']" position="replace">
|
|
|
|
<field name="sponsor_related_id" readonly="1" invisible="1"/>
|
|
</xpath>
|
|
|
|
<xpath expr="//page[4]" position="after">
|
|
<page name="kafala_info" string="Kafala Information">
|
|
<group>
|
|
<field name="kafala_status" readonly="1"/>
|
|
<field name="sponsor_related_id"
|
|
readonly="1"/>
|
|
<field name="sponsor_id"
|
|
attrs="{'readonly':[('state','not in',['draft','complete_info'])]}"
|
|
invisible="1"/>
|
|
|
|
<field name="sponsorship_id" invisible="1"
|
|
attrs="{'readonly':[('state','not in',['draft','complete_info'])]}"/>
|
|
|
|
<field name="sponsorship_end_date" readonly="1"/>
|
|
</group>
|
|
<group>
|
|
<field name="is_restricted" widget="boolean_toggle"/>
|
|
<field name="general_restriction" widget="boolean_toggle"/>
|
|
</group>
|
|
|
|
</page>
|
|
|
|
</xpath>
|
|
|
|
<xpath expr="//header" position="inside">
|
|
<button name="action_not_available_for_sponsorship" type="object"
|
|
string="Not Available For Sponsorship" class="oe_highlight"
|
|
attrs="{'invisible': [('general_restriction','=', True)]}"
|
|
groups="odex_takaful.sponsorship_restrict_orphan_group"
|
|
/>
|
|
<button name="action_available_for_sponsorship" type="object"
|
|
string="Available For Sponsorship" class="oe_highlight"
|
|
attrs="{'invisible': [('general_restriction','!=', True)]}"
|
|
groups="odex_takaful.sponsorship_restrict_orphan_group"
|
|
/>
|
|
</xpath>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="family_member_search_inherit" model="ir.ui.view">
|
|
<field name="name">family.member.search.inherit</field>
|
|
<field name="model">family.member</field>
|
|
<field name="inherit_id" ref="odex_benefit.family_member_search"/>
|
|
<field name="arch" type="xml">
|
|
<field name="benefit_id" position="after">
|
|
<field name="education_levels"/>
|
|
<separator/>
|
|
<filter name="have_kafala" string="Have Kafala"
|
|
domain="[('kafala_status','=','have_kafala')]"/>
|
|
<filter name="have_not_kafala" string="Have not Kafala"
|
|
domain="[('kafala_status','=','have_not_kafala')]"/>
|
|
<separator/>
|
|
<filter name="orphan_benefit_type" string="Orphans"
|
|
domain="[('relationn_type', 'in', ['son', 'daughter'])]"/>
|
|
<filter name="widow_benefit_type" string="Widows"
|
|
domain="[('relationn_type', 'in', ['mother', 'replacement_mother'])]"/>
|
|
<separator/>
|
|
<filter name="male_gender" string="Male"
|
|
domain="[('relationn_type', '=', 'son')]"/>
|
|
<filter name="female_gender" string="Female"
|
|
domain="[('relationn_type', '!=', 'son')]"/>
|
|
<separator/>
|
|
<filter name="age_category_0_to_6" string="Age From 0 To 6"
|
|
domain="[('age', '>=', 0), ('age', '<', 7)]"/>
|
|
<filter name="age_category_7_to_10" string="Age From 7 To 10"
|
|
domain="[('age', '>=', 7), ('age', '<', 11)]"/>
|
|
<filter name="age_category_11_to_15" string="Age From 11 To 15"
|
|
domain="[('age', '>=', 11), ('age', '<', 16)]"/>
|
|
<filter name="age_category_16_to_18" string="Age From 16 To 18"
|
|
domain="[('age', '>=', 16), ('age', '<', 19)]"/>
|
|
<filter name="age_category_over_18" string="Age Over 18"
|
|
domain="[('age', '>', 18)]"/>
|
|
<separator/>
|
|
<filter name="educated_educated_status" string="Educated"
|
|
domain="[('education_status', '=', 'educated')]"/>
|
|
<filter name="illiterate_educated_status" string="Illiterate"
|
|
domain="[('education_status', '=', 'illiterate')]"/>
|
|
<filter name="under_study_age_educated_status" string="Under Study Age"
|
|
domain="[('education_status', '=', 'under_study_age')]"/>
|
|
<separator/>
|
|
<group>
|
|
<filter string="Orphans / Widows" name="group_benefit_type" context="{'group_by': 'benefit_group'}"/>
|
|
<filter string="Education Level"
|
|
name="group_education_level"
|
|
context="{'group_by': 'education_levels'}"/>
|
|
</group>
|
|
</field>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="view_family_member_tree_inherit" model="ir.ui.view">
|
|
<field name="name">family.member.tree.inherit</field>
|
|
<field name="model">family.member</field>
|
|
<field name="inherit_id" ref="odex_benefit.family_member_tree"/>
|
|
<field name="arch" type="xml">
|
|
<xpath expr="//field[@name='member_status']" position="after">
|
|
<field name="kafala_status" widget="badge"
|
|
decoration-success="kafala_status == 'have_kafala'"
|
|
decoration-danger="kafala_status == 'have_not_kafala'"/>
|
|
<field name="sponsorship_end_date" optional="hide" />
|
|
<field name="education_levels" optional="hide" />
|
|
<field name="number_of_family_member" optional="hide" />
|
|
<field name="diseases_attachment_ids" widget="many2many_tags" optional="hide" />
|
|
</xpath>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="family_member_kanban_kafala_inherit" model="ir.ui.view">
|
|
<field name="name">family.member.kanban.kafala.inherit</field>
|
|
<field name="model">family.member</field>
|
|
<field name="inherit_id" ref="odex_benefit.family_member_kanban"/>
|
|
<field name="arch" type="xml">
|
|
|
|
<xpath expr="//field[@name='total_member_service_requests']" position="after">
|
|
<field name="kafala_status"/>
|
|
<field name="sponsorship_end_date"/>
|
|
</xpath>
|
|
|
|
<xpath expr="//div[@t-attf-class]" position="attributes">
|
|
<attribute name="t-attf-style">background: linear-gradient(135deg, #{record.member_status.raw_value == 'non_benefit' ? '#fff5f5' : '#ffffff'} 0%, #{record.member_status.raw_value == 'non_benefit' ? '#ffe0e0' : '#f8f9fa'} 100%); border: 2px solid #{record.member_status.raw_value == 'non_benefit' ? '#dc3545' : '#198754'}; border-radius: 15px; box-shadow: 0 4px 15px rgba(0,0,0,0.1); transition: all 0.3s ease; margin-bottom: 15px; overflow: hidden; position: relative; min-height: 300px; opacity: #{record.member_status.raw_value == 'non_benefit' ? '0.85' : '1'};</attribute>
|
|
</xpath>
|
|
|
|
<xpath expr="//div[@style='padding: 10px; background: white;']" position="after">
|
|
<div style="background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%); padding: 10px 5px; border-top: 2px solid #198754; text-align: right;">
|
|
<div style="display: flex; justify-content: space-between; align-items: center; font-size: 11px;">
|
|
<div style="display: inline-flex; align-items: center;">
|
|
<i class="fa fa-shield" style="color: #6c757d; margin-left: 4px;"/>
|
|
<span style="font-weight: 600; color: #495057; margin-left: 4px;"></span>
|
|
<span style="font-weight: 600;">
|
|
<t t-if="record.kafala_status.raw_value == 'have_kafala'">
|
|
<span style="background: linear-gradient(135deg, #e8f5e8 0%, #c8e6c9 100%); color: #2e7d32; padding: 2px 6px; border-radius: 8px; font-weight: 700; font-size: 10px; border: 1px solid #4caf50;">
|
|
مكفول
|
|
</span>
|
|
</t>
|
|
<t t-elif="record.kafala_status.raw_value == 'have_not_kafala'">
|
|
<span style="background: linear-gradient(135deg, #fff8e1 0%, #ffecb3 100%); color: #e65100; padding: 2px 6px; border-radius: 8px; font-weight: 700; font-size: 10px; border: 1px solid #ff9800;">
|
|
غير مكفول
|
|
</span>
|
|
</t>
|
|
<t t-else="">
|
|
<span style="color: #6c757d;">--</span>
|
|
</t>
|
|
</span>
|
|
</div>
|
|
|
|
<t t-if="record.kafala_status.raw_value == 'have_kafala'">
|
|
<div style="display: inline-flex; align-items: center;">
|
|
<i class="fa fa-calendar" style="color: #6c757d; margin-left: 4px;"/>
|
|
<span style="font-weight: 600; color: #495057; margin-left: 4px;">تنتهي الكفالة: </span>
|
|
<span style="color: #212529; font-weight: 500;">
|
|
<t t-if="record.sponsorship_end_date.raw_value">
|
|
<field name="sponsorship_end_date"/>
|
|
</t>
|
|
<t t-else="">
|
|
<span style="color: #6c757d;">--</span>
|
|
</t>
|
|
</span>
|
|
</div>
|
|
</t>
|
|
</div>
|
|
</div>
|
|
</xpath>
|
|
|
|
</field>
|
|
</record>
|
|
</odoo> |