FontAwesome 5 introduced new names for some icons as described on https://fontawesome.com/how-to-use/on-the-web/setup/upgrading-from-version-4#name-changes This commit replaces the old names to the new ones. closes odoo/odoo#35826 Taskid: 2050241 Related: odoo/enterprise#5180 Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
238 lines
16 KiB
XML
238 lines
16 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<data>
|
|
|
|
<!-- Inherit the preference view to remove title, image and footer -->
|
|
<!-- This view is meant to be included in the employee profile view -->
|
|
<!-- It ensures that if the 'normal' Preferences view is changed, it's
|
|
also reflected in the employee's profile -->
|
|
<record id="res_users_view_form_simple_modif" model="ir.ui.view">
|
|
<field name="name">res.users.preferences.form.simplified.inherit</field>
|
|
<field name="model">res.users</field>
|
|
<field name="inherit_id" ref="base.view_users_form_simple_modif"/>
|
|
<field name="mode">primary</field>
|
|
<field name="arch" type="xml">
|
|
<footer position="replace"/>
|
|
<h1 position="replace"/>
|
|
<widget name="notification_alert" position="replace"/>
|
|
<xpath expr="//field[@name='image_1920']" position="replace"/>
|
|
<field name="signature" position="replace" />
|
|
<xpath expr="//group[@name='preference_contact']" position="before">
|
|
<group>
|
|
<field name="signature" />
|
|
</group>
|
|
</xpath>
|
|
<xpath expr="//field[@name='company_id']" position="attributes">
|
|
<attribute name="invisible">1</attribute>
|
|
</xpath>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="view_users_form_simple_modif_resource" model="ir.ui.view">
|
|
<field name="name">res.users.preferences.form.resource</field>
|
|
<field name="model">res.users</field>
|
|
<field name="inherit_id" ref="base.view_users_form_simple_modif" />
|
|
<field name="arch" type="xml">
|
|
<field name="tz" position="attributes">
|
|
<attribute name="required">1</attribute>
|
|
</field>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="res_users_view_form_profile" model="ir.ui.view">
|
|
<field name="name">res.users.preferences.form.inherit</field>
|
|
<field name="model">res.users</field>
|
|
<field name="inherit_id" ref="res_users_view_form_simple_modif"/>
|
|
<field name="arch" type="xml">
|
|
<xpath expr="//field[@name='odoobot_state']" position="attributes">
|
|
<attribute name="attrs">{'readonly': [('can_edit', '=', False)]}</attribute>
|
|
</xpath>
|
|
<form position="replace">
|
|
<form create="false" js_class="hr_employee_profile_form">
|
|
<field name="hr_presence_state" invisible="1"/>
|
|
<header>
|
|
<button name="preference_change_password" type="object" string="Change password" class="btn btn-secondary"/>
|
|
</header>
|
|
<widget name="notification_alert" class="mb-0"/>
|
|
<sheet>
|
|
<div class="oe_button_box" name="button_box">
|
|
<button
|
|
id="hr_presence_button"
|
|
class="oe_stat_button"
|
|
disabled="1"
|
|
invisible="context.get('from_my_profile', False)"
|
|
attrs="{'invisible': ['|', ('hr_presence_state', '=', 'absent')]}">
|
|
<div role="img" class="fas fa-fw fa-circle text-success o_button_icon" attrs="{'invisible': [('hr_presence_state', '!=', 'present')]}" aria-label="Available" title="Available"/>
|
|
<div role="img" class="fas fa-fw fa-circle text-warning o_button_icon" attrs="{'invisible': [('hr_presence_state', '!=', 'to_define')]}" aria-label="Away" title="Away"/>
|
|
<div role="img" class="fas fa-fw fa-circle text-danger o_button_icon" attrs="{'invisible': [('hr_presence_state', '!=', 'absent')]}" aria-label="Not available" title="Not available"/>
|
|
|
|
<div class="o_stat_info" attrs="{'invisible': [('hr_presence_state', '=', 'present')]}">
|
|
<span class="o_stat_text">
|
|
Not Connected
|
|
</span>
|
|
</div>
|
|
<div class="o_stat_info" attrs="{'invisible': [('hr_presence_state', '!=', 'present')]}">
|
|
<span class="o_stat_value" attrs="{'invisible': [('last_activity_time', '=', False)]}">
|
|
<field name="last_activity_time"/>
|
|
</span>
|
|
<span class="o_stat_value" attrs="{'invisible': [('last_activity_time', '!=', False)]}">
|
|
<field name="last_activity"/>
|
|
</span>
|
|
<span class="o_stat_text">Connected Since</span>
|
|
</div>
|
|
</button>
|
|
</div>
|
|
<field name="image_1920" widget='image' class="oe_avatar" options='{"zoom": true, "preview_image":"image_128"}'/>
|
|
<div class="oe_title">
|
|
<h1>
|
|
<field name="name" placeholder="Employee's Name" required="True" readonly="context.get('from_my_profile', False)"/>
|
|
</h1>
|
|
</div>
|
|
<div class="row">
|
|
<h2 class="col-6">
|
|
<field name="job_title" placeholder="Job Position" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
</h2>
|
|
</div>
|
|
<group>
|
|
<group>
|
|
<field name="can_edit" invisible="1"/>
|
|
<field name="mobile_phone" widget="phone" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="work_phone" widget="phone" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
</group>
|
|
<group>
|
|
<field name="work_email" widget="email" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="work_location" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="company_id" invisible="1"/>
|
|
</group>
|
|
</group>
|
|
<notebook>
|
|
<page name="preferences" string="Preferences">
|
|
<div>$0</div>
|
|
</page>
|
|
<page name="public" string="Work Information">
|
|
<div id="o_work_employee_container"> <!-- These two div are used to position org_chart -->
|
|
<div id="o_work_employee_main">
|
|
<group string="Location">
|
|
<field name="department_id" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="address_id"
|
|
context="{'show_address': 1}"
|
|
options='{"always_reload": True, "highlight_first_line": True}'
|
|
attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
</group>
|
|
<group name="managers" string="Responsibles">
|
|
<field name="employee_parent_id" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="coach_id" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
</group>
|
|
</div>
|
|
</div>
|
|
</page>
|
|
<page name="personal_information" string="Private Information">
|
|
<group>
|
|
<group string="Contact Information">
|
|
<field name="employee_ids" invisible="1"/>
|
|
<field name="address_home_id"
|
|
context="{
|
|
'show_address': 1,
|
|
'default_employee_ids': employee_ids,
|
|
'default_type': 'private',
|
|
'form_view_ref': 'base.res_partner_view_form_private'}"
|
|
options='{"always_reload": True, "highlight_first_line": True}'
|
|
attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="private_email" string="Email" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="employee_phone" string="Phone" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="employee_bank_account_id" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="km_home_work" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
</group>
|
|
<group string="Citizenship">
|
|
<field name="employee_country_id" options='{"no_open": True, "no_create": True}' attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="identification_id" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="passport_id" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="gender" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="birthday" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="place_of_birth" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="country_of_birth" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
</group>
|
|
<group string="Marital Status">
|
|
<field name="marital" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="spouse_complete_name" attrs="{'invisible': [('marital', 'not in', ['married', 'cohabitant'])], 'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="spouse_birthdate" attrs="{'invisible': [('marital', 'not in', ['married', 'cohabitant'])], 'readonly': [('can_edit', '=', False)]}"/>
|
|
</group>
|
|
<group string="Education">
|
|
<field name="certificate" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="study_field" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="study_school" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
</group>
|
|
<group string="Dependant">
|
|
<field name="children" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
</group>
|
|
<group string="Emergency">
|
|
<field name="emergency_contact" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="emergency_phone" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
</group>
|
|
<group string="Work Permit" name="work_permit">
|
|
<field name="visa_no" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="permit_no" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="visa_expire" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
</group>
|
|
</group>
|
|
</page>
|
|
<page name="hr_settings" string="HR Settings">
|
|
<group>
|
|
<group string='Status' name="active_group" invisible="1"></group>
|
|
<group string="Attendance" name="identification_group">
|
|
<field name="pin" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
<field name="barcode" attrs="{'readonly': [('can_edit', '=', False)]}"/>
|
|
</group>
|
|
</group>
|
|
</page>
|
|
</notebook>
|
|
</sheet>
|
|
</form>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="res_users_action_my" model="ir.actions.act_window">
|
|
<field name="name">Change my Preferences</field>
|
|
<field name="res_model">res.users</field>
|
|
<field name="view_mode">form</field>
|
|
<field name="context">{'from_my_profile': True}</field>
|
|
<field name="view_id" ref="hr.res_users_view_form_profile"/>
|
|
</record>
|
|
|
|
<record id="hr_employee_action_from_user" model="ir.actions.act_window">
|
|
<field name="name">Employees</field>
|
|
<field name="res_model">hr.employee</field>
|
|
<field name="view_mode">kanban,tree,form</field>
|
|
<field name="domain">[('user_id', '=', active_id)]</field>
|
|
</record>
|
|
|
|
<record id="res_users_view_form" model="ir.ui.view">
|
|
<field name="name">res.users.form.inherit</field>
|
|
<field name="model">res.users</field>
|
|
<field name="inherit_id" ref="base.view_users_form"/>
|
|
<field name="arch" type="xml">
|
|
|
|
<xpath expr="//header" position="inside">
|
|
<field name="share" invisible="1"/>
|
|
<field name="employee_ids" invisible="1"/>
|
|
<button string="Create employee"
|
|
type="object" name="action_create_employee"
|
|
attrs="{'invisible': ['|', '|', ('id', '=', False), ('share', '=', True), ('employee_count', '>', 0)]}"/>
|
|
<!-- share is not correctly recomputed because it depends on fields of reified view => invisible before saving (id=False) -->
|
|
</xpath>
|
|
<xpath expr="//div[@name='button_box']" position="inside">
|
|
<button name="%(hr_employee_action_from_user)d"
|
|
class="oe_stat_button"
|
|
icon="fa-users"
|
|
attrs="{'invisible': [('employee_count', '=', 0)]}"
|
|
context="{'active_test': False}"
|
|
type="action">
|
|
<field name="employee_count" widget="statinfo" string="Employee(s)"/>
|
|
</button>
|
|
</xpath>
|
|
</field>
|
|
</record>
|
|
</data>
|
|
</odoo>
|