fix
This commit is contained in:
parent
67581ffc22
commit
eb5af2188a
|
|
@ -1,17 +1,16 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
{
|
{
|
||||||
'name': 'Hr Holiday Permission',
|
'name': 'HR Holiday Permission',
|
||||||
'version': '1.0',
|
'version': '1.0',
|
||||||
'summary': """Hr Holiday Permission""",
|
'summary': """HR Holiday Permission""",
|
||||||
'description': """Hr Holiday Permission.
|
'description': """HR Holiday Permission.
|
||||||
This module gives Feature of deduct Permissions from holidays""",
|
This module gives Feature of deduct Permissions from holidays""",
|
||||||
'category': 'Odex25-HR/Odex25-HR',
|
'category': 'HR-Odex',
|
||||||
'author': 'Expert Co. Ltd.',
|
'author': 'Expert Co. Ltd.',
|
||||||
'website': 'http://exp-sa.com',
|
'website': 'http://exp-sa.com',
|
||||||
'depends': ['hr_holidays_public', 'employee_requests'],
|
'depends': ['hr_holidays_public', 'employee_requests'],
|
||||||
'license': 'LGPL-3',
|
'license': 'LGPL-3',
|
||||||
'data': [
|
'data': [
|
||||||
'views/resource_view.xml',
|
|
||||||
'views/permission_view.xml',
|
'views/permission_view.xml',
|
||||||
'views/hr_holiday_view.xml',
|
'views/hr_holiday_view.xml',
|
||||||
],
|
],
|
||||||
|
|
|
||||||
|
|
@ -17,8 +17,9 @@ msgstr ""
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_personal_permission__deduct_from_holiday
|
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_personal_permission__deduct_from_holiday
|
||||||
msgid "Deduct From Holiday"
|
#: model_terms:ir.ui.view,arch_db:hr_permission_holidays.hr_view_tree_inherit_permissions_holiday
|
||||||
msgstr "الخصم من رصيد الاجازة"
|
msgid "Half Day Off"
|
||||||
|
msgstr "نصف يوم من الإجازة السنوية"
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_holidays__display_name
|
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_holidays__display_name
|
||||||
|
|
@ -71,8 +72,8 @@ msgstr "رقم الإذن"
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_resource_calendar__holiday_permission_deducted
|
#: model:ir.model.fields,field_description:hr_permission_holidays.field_resource_calendar__holiday_permission_deducted
|
||||||
msgid "Permission to Deduct From holiday"
|
msgid "Number Permission Holiday"
|
||||||
msgstr "خصم الاذن من الاجازة"
|
msgstr "عدد إستئذانات الاجازة"
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_holidays__permission_ids
|
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_holidays__permission_ids
|
||||||
|
|
@ -81,8 +82,8 @@ msgstr "الاذونات"
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_holidays_status__permission_annual_holiday
|
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_holidays_status__permission_annual_holiday
|
||||||
msgid "Permissions Deduct From Holiday"
|
msgid "Permissions Half Day Off"
|
||||||
msgstr "خصم الإذن من الاجازة السنوية"
|
msgstr "نصف يوم من الإجازة السنوية"
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: model:ir.model,name:hr_permission_holidays.model_resource_calendar
|
#: model:ir.model,name:hr_permission_holidays.model_resource_calendar
|
||||||
|
|
@ -95,31 +96,35 @@ msgstr "فترة عمل المورد"
|
||||||
msgid "Sorry You Have No annual Leave To Deduct Permission"
|
msgid "Sorry You Have No annual Leave To Deduct Permission"
|
||||||
msgstr "عذرا ليس هنالك اجازة سنوية لخصم الاذن"
|
msgstr "عذرا ليس هنالك اجازة سنوية لخصم الاذن"
|
||||||
|
|
||||||
|
#. module: hr_permission_holidays
|
||||||
|
#: code:addons/hr_permission_holidays/models/permission.py:0
|
||||||
|
#, python-format
|
||||||
|
msgid "Sorry You Have Used All Your Permission In This Day you have one permission per a Day"
|
||||||
|
msgstr "لايمكن طلب اذن مره أخرى في نفس اليوم"
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:0
|
#: code:addons/hr_permission_holidays/models/permission.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Sorry You Have Used All Your Permission Hours In This Month"
|
msgid "Sorry You Have Used All Your Permission Hours In This Month"
|
||||||
msgstr "تم استخدام كل الاذونات المسموح بها خلال هذا الشهر"
|
msgstr "تم استخدام كل ساعات الإستئذانات المسموح بها خلال هذا الشهر"
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:0
|
#: code:addons/hr_permission_holidays/models/permission.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid "This Duration Must Be Greater Than Zero"
|
||||||
"Sorry You Have Used All Your Permission In This Day you have one permission "
|
msgstr "فترة الاذن يجب ان تكون اكبر من الصفر"
|
||||||
"per a Day"
|
|
||||||
msgstr "عذرًا ، لقد استخدمت كل الأذونات الخاصة بك في هذا اليوم ، لديك إذن واحد لكل يوم"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:0
|
#: code:addons/hr_permission_holidays/models/permission.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Sorry You Have Used All Your Permission To Deduct From Holidays"
|
msgid "Sorry You Have Used All Your Permission To Half Day Off"
|
||||||
msgstr "تم استخدام كل الاذونات المسموح بخصمها من الاجازة السنوية!"
|
msgstr "تم استخدام كل الاذونات المسموح بخصمها من الاجازة السنوية!"
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:0
|
#: code:addons/hr_permission_holidays/models/permission.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Sorry You Need To use Basic Permission Before Use Holidays"
|
msgid "Sorry You Need To use Basic Permission Before Use Holidays"
|
||||||
msgstr "عذرا لايمكنك طلب خصم من اجازة وانت ﻻتمتلك رصيد إذن غير مستخدم"
|
msgstr "عذرا لايمكنك طلب خصم من اجازة وانت لديك رصيد إذن غير مستخدم "
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:0
|
#: code:addons/hr_permission_holidays/models/permission.py:0
|
||||||
|
|
@ -128,11 +133,6 @@ msgstr "عذرا لايمكنك طلب خصم من اجازة وانت ﻻتمت
|
||||||
msgid "Sorry you Have No leave balance"
|
msgid "Sorry you Have No leave balance"
|
||||||
msgstr "لايوجد رصيد اجازة سنوية للخصم منه"
|
msgstr "لايوجد رصيد اجازة سنوية للخصم منه"
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model.fields,help:hr_permission_holidays.field_resource_calendar__holiday_permission_deducted
|
|
||||||
msgid "The Number of permission deducted From The Annual Holiday balance"
|
|
||||||
msgstr "عدد الإذن المقتطع من رصيد الإجازة السنوية"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: model:ir.model.fields,help:hr_permission_holidays.field_hr_personal_permission__permission_number
|
#: model:ir.model.fields,help:hr_permission_holidays.field_hr_personal_permission__permission_number
|
||||||
msgid "The Remaining Number of Hours permission This Month"
|
msgid "The Remaining Number of Hours permission This Month"
|
||||||
|
|
@ -141,30 +141,50 @@ msgstr "إذن العدد المتبقي من الساعات هذا الشهر"
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:0
|
#: code:addons/hr_permission_holidays/models/permission.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "This Duration Must Be Greater Than Zero"
|
msgid "This Duration must be Greater than or equal to the Permission Limit"
|
||||||
msgstr "يجب أن تكون هذه المدة أكبر من الصفر"
|
msgstr "فترة الاذن يجب ان تكون اكبر من او يساوي فترة الإستئذانات المسموح بها"
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:0
|
#: code:addons/hr_permission_holidays/models/permission.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "This Duration must be less than or equal to the Permission Limit"
|
msgid "This Duration not Allowed it must be Less Than or equal Permission Hours in Month"
|
||||||
msgstr "يجب أن تكون هذه المدة أقل من أو تساوي حد الإذن"
|
msgstr "فترة الإذن يجب ان تكون اقل من او يساوي فترة الإستئذانات المسموح بها خلال الشهر"
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:0
|
|
||||||
#, python-format
|
|
||||||
msgid ""
|
|
||||||
"This Duration not Allowed it must be Less Than or equal Permission Hours in "
|
|
||||||
"Month"
|
|
||||||
msgstr "هذه المدة غير مسموح بها يجب أن تكون أقل من أو تساوي ساعات الإذن في الشهر"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:0
|
#: code:addons/hr_permission_holidays/models/permission.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "You can not Request Permission The Employee have Not First Hiring Date"
|
msgid "You can not Request Permission The Employee have Not First Hiring Date"
|
||||||
msgstr "لا يمكنك طلب الإذن ليس للموظف تاريخ التعيين الأول"
|
msgstr "لا يمكنك طلب إستئذان لموظف وليس لديه تاريخ مباشرة عمل"
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
#. module: hr_permission_holidays
|
||||||
#: model:ir.model,name:hr_permission_holidays.model_hr_personal_permission
|
#: model:ir.model,name:hr_permission_holidays.model_hr_personal_permission
|
||||||
msgid "hr.personal.permission"
|
msgid "hr.personal.permission"
|
||||||
msgstr ""
|
msgstr "الإستئذانات"
|
||||||
|
|
||||||
|
#. module: hr_permission_holidays
|
||||||
|
#: code:addons/hr_permission_holidays/models/permission.py:0
|
||||||
|
#, python-format
|
||||||
|
msgid "The Number Of Hours should Be %s Hours For the Half Day Leave"
|
||||||
|
msgstr "يجب ان تكون ساعات طلب نصف يوم من الاجازة السنوية %s ساعات"
|
||||||
|
|
||||||
|
#. module: hr_permission_holidays
|
||||||
|
#: code:addons/hr_permission_holidays/models/permission.py:0
|
||||||
|
#, python-format
|
||||||
|
msgid "Sorry, Must Be a Half Day Period Within Working Hours"
|
||||||
|
msgstr "يجب ان تكون فترة نصف يوم خلال ساعات العمل"
|
||||||
|
|
||||||
|
#. module: hr_permission_holidays
|
||||||
|
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_personal_permission_type__half_holiday
|
||||||
|
#: model_terms:ir.ui.view,arch_db:hr_permission_holidays.hr_personal_permission_type_view_form_inherit
|
||||||
|
msgid "Half Holiday"
|
||||||
|
msgstr "نصف إجازة"
|
||||||
|
|
||||||
|
#. module: hr_permission_holidays
|
||||||
|
#: model:ir.model.fields,help:hr_permission_holidays.field_hr_personal_permission_type__half_holiday
|
||||||
|
msgid "The permission deducted From The Annual Holiday balance"
|
||||||
|
msgstr "يتم خصم نص يوم من رصيد الاجازة السنوية"
|
||||||
|
|
||||||
|
#. module: employee_requests
|
||||||
|
#: model:ir.model.fields,field_description:employee_requests.field_hr_personal_permission_type__monthly_hours
|
||||||
|
msgid "Monthly Hours"
|
||||||
|
msgstr "ساعات/مرات شهرية"
|
||||||
|
|
|
||||||
|
|
@ -1,112 +0,0 @@
|
||||||
# Translation of Odoo Server.
|
|
||||||
# This file contains the translation of the following modules:
|
|
||||||
# * hr_permission_holidays
|
|
||||||
#
|
|
||||||
msgid ""
|
|
||||||
msgstr ""
|
|
||||||
"Project-Id-Version: Odoo Server 11.0\n"
|
|
||||||
"Report-Msgid-Bugs-To: \n"
|
|
||||||
"POT-Creation-Date: 2020-04-20 14:09+0000\n"
|
|
||||||
"PO-Revision-Date: 2020-04-20 14:09+0000\n"
|
|
||||||
"Last-Translator: <>\n"
|
|
||||||
"Language-Team: \n"
|
|
||||||
"MIME-Version: 1.0\n"
|
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
|
||||||
"Content-Transfer-Encoding: \n"
|
|
||||||
"Plural-Forms: \n"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_personal_permission_deduct_from_holiday
|
|
||||||
msgid "Deduct From Holiday"
|
|
||||||
msgstr "الخصم من رصيد الاجازة"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_personal_permission_holiday
|
|
||||||
msgid "Holiday"
|
|
||||||
msgstr "يوم الاجازة"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model,name:hr_permission_holidays.model_hr_holidays
|
|
||||||
msgid "Leave"
|
|
||||||
msgstr "الاجازات"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model,name:hr_permission_holidays.model_hr_holidays_status
|
|
||||||
msgid "Leave Type"
|
|
||||||
msgstr "نوع الإجازة"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_personal_permission_permission_amount
|
|
||||||
msgid "Permission Amount"
|
|
||||||
msgstr "مقدار الاذن"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_resource_calendar_holiday_permission_deducted
|
|
||||||
msgid "Permission to Deduct From holiday"
|
|
||||||
msgstr "خصم الاذن من الاجازة"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_holidays_permission_ids
|
|
||||||
msgid "Permissions"
|
|
||||||
msgstr "الاذونات"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_holidays_status_permission_annual_holiday
|
|
||||||
msgid "Permissions Deduct From Holiday"
|
|
||||||
msgstr "خصم الإذن من الاجازة السنوية"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model,name:hr_permission_holidays.model_resource_calendar
|
|
||||||
msgid "Resource Calendar"
|
|
||||||
msgstr "تقويم المورد"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:68
|
|
||||||
#, python-format
|
|
||||||
msgid "Sorry You Have No annual Leave To Deduct Permission"
|
|
||||||
msgstr "عذرا ليس هنالك اجازة سنوية لخصم الاذن"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:108
|
|
||||||
#, python-format
|
|
||||||
msgid "Sorry You Have Used All Your Permission In This Day you have one permission per a Day"
|
|
||||||
msgstr "لايمكن طلب اذن مره اخرى في نفس اليوم"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:47
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:66
|
|
||||||
#, python-format
|
|
||||||
msgid "Sorry You Have Used All Your Permission In This Month"
|
|
||||||
msgstr "تم استخدام كل الاذونات المسموح بها خلال هذا الشهر!"
|
|
||||||
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:47
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:66
|
|
||||||
#, python-format
|
|
||||||
msgid "Sorry You Have Used All Your Permission To Deduct From Holidays"
|
|
||||||
msgstr "تم استخدام كل الاذونات المسموح بخصمها من الاجازة السنوية!"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:70
|
|
||||||
#, python-format
|
|
||||||
msgid "Sorry You Need To use Basic Permission Before Use Holidays"
|
|
||||||
msgstr "عذرا لايمكنك طلب خصم من اجازة وانت ﻻتمتلك رصيد إذن غير مستخدم "
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:64
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:78
|
|
||||||
#, python-format
|
|
||||||
msgid "Sorry you Have No leave balance"
|
|
||||||
msgstr "لايوجد رصيد اجازة سنوية للخصم منه"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:116
|
|
||||||
#, python-format
|
|
||||||
msgid "This Duration not Allowed it must be Less Than or equal to Balance And Not Equal Zero"
|
|
||||||
msgstr "فترة الاذن يجب ان تكون اكبر من الصفر واقل من او يساوي فترة الاذن المسموح بها"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model,name:hr_permission_holidays.model_hr_personal_permission
|
|
||||||
msgid "hr.personal.permission"
|
|
||||||
msgstr "اذن الخروج"
|
|
||||||
|
|
@ -1,129 +0,0 @@
|
||||||
# Translation of Odoo Server.
|
|
||||||
# This file contains the translation of the following modules:
|
|
||||||
# * hr_permission_holidays
|
|
||||||
#
|
|
||||||
msgid ""
|
|
||||||
msgstr ""
|
|
||||||
"Project-Id-Version: Odoo Server 11.0\n"
|
|
||||||
"Report-Msgid-Bugs-To: \n"
|
|
||||||
"POT-Creation-Date: 2020-04-20 14:09+0000\n"
|
|
||||||
"PO-Revision-Date: 2020-04-20 14:09+0000\n"
|
|
||||||
"Last-Translator: <>\n"
|
|
||||||
"Language-Team: \n"
|
|
||||||
"MIME-Version: 1.0\n"
|
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
|
||||||
"Content-Transfer-Encoding: \n"
|
|
||||||
"Plural-Forms: \n"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_personal_permission_deduct_from_holiday
|
|
||||||
msgid "Deduct From Holiday"
|
|
||||||
msgstr "الخصم من رصيد الاجازة"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_personal_permission_holiday
|
|
||||||
msgid "Holiday"
|
|
||||||
msgstr "يوم الاجازة"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model,name:hr_permission_holidays.model_hr_holidays
|
|
||||||
msgid "Leave"
|
|
||||||
msgstr "الاجازات"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model,name:hr_permission_holidays.model_hr_holidays_status
|
|
||||||
msgid "Leave Type"
|
|
||||||
msgstr "نوع الإجازة"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_personal_permission_permission_amount
|
|
||||||
msgid "Permission Amount"
|
|
||||||
msgstr "مقدار الاذن"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_resource_calendar_holiday_permission_deducted
|
|
||||||
msgid "Permission to Deduct From holiday"
|
|
||||||
msgstr "خصم الاذن من الاجازة"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_holidays_permission_ids
|
|
||||||
msgid "Permissions"
|
|
||||||
msgstr "الاذونات"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model.fields,field_description:hr_permission_holidays.field_hr_holidays_status_permission_annual_holiday
|
|
||||||
msgid "Permissions Deduct From Holiday"
|
|
||||||
msgstr "خصم الإذن من الاجازة السنوية"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model,name:hr_permission_holidays.model_resource_calendar
|
|
||||||
msgid "Resource Calendar"
|
|
||||||
msgstr "تقويم المورد"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:68
|
|
||||||
#, python-format
|
|
||||||
msgid "Sorry You Have No annual Leave To Deduct Permission"
|
|
||||||
msgstr "عذرا ليس هنالك اجازة سنوية لخصم الاذن"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:108
|
|
||||||
#, python-format
|
|
||||||
msgid "Sorry You Have Used All Your Permission In This Day you have one permission per a Day"
|
|
||||||
msgstr "لايمكن طلب اذن مره أخرى في نفس اليوم"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:47
|
|
||||||
#, python-format
|
|
||||||
msgid "Sorry You Have Used All Your Permission In This Month"
|
|
||||||
msgstr "تم استخدام كل الاذونات المسموح بها خلال هذا الشهر!"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:47
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:66
|
|
||||||
#, python-format
|
|
||||||
msgid "Sorry You Have Used All Your Permission To Deduct From Holidays"
|
|
||||||
msgstr "تم استخدام كل الاذونات المسموح بخصمها من الاجازة السنوية!"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:70
|
|
||||||
#, python-format
|
|
||||||
msgid "Sorry You Need To use Basic Permission Before Use Holidays"
|
|
||||||
msgstr "عذرا لايمكنك طلب خصم من اجازة وانت لديك رصيد إذن غير مستخدم "
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:64
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:78
|
|
||||||
#, python-format
|
|
||||||
msgid "Sorry you Have No leave balance"
|
|
||||||
msgstr "لايوجد رصيد اجازة سنوية للخصم منه"
|
|
||||||
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:49
|
|
||||||
#, python-format
|
|
||||||
msgid "Sorry You Have Used All Your Permission Hours In This Month"
|
|
||||||
msgstr "تم استخدام كل ساعات الإذن المسموح بها خلال هذا الشهر"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:116
|
|
||||||
#, python-format
|
|
||||||
msgid "This Duration Must Be Greater Than Zero"
|
|
||||||
msgstr "فترة الاذن يجب ان تكون اكبر من الصفر"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:117
|
|
||||||
#, python-format
|
|
||||||
msgid "This Duration must be less than or equal to the Permission Limit"
|
|
||||||
msgstr "فترة الاذن يجب ان تكون اقل من او يساوي فترة الاذن المسموح بها"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: code:addons/hr_permission_holidays/models/permission.py:118
|
|
||||||
#, python-format
|
|
||||||
msgid "This Duration not Allowed it must be Less Than or equal Permission Hours in Month"
|
|
||||||
msgstr "فترة الإذن يجب ان تكون اقل من او يساوي فترة الاذن المسموح بها خلال الشهر"
|
|
||||||
|
|
||||||
#. module: hr_permission_holidays
|
|
||||||
#: model:ir.model,name:hr_permission_holidays.model_hr_personal_permission
|
|
||||||
msgid "hr.personal.permission"
|
|
||||||
msgstr "اذن الخروج"
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
from . import resource
|
|
||||||
from . import permission
|
from . import permission
|
||||||
from . import hr_holiday
|
from . import hr_holiday
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ from odoo import fields, models
|
||||||
class HrHolidaysStatus(models.Model):
|
class HrHolidaysStatus(models.Model):
|
||||||
_inherit = 'hr.holidays.status'
|
_inherit = 'hr.holidays.status'
|
||||||
|
|
||||||
permission_annual_holiday = fields.Boolean(string="Permissions Deduct From Holiday")
|
permission_annual_holiday = fields.Boolean(string="Permissions Half Day Off")
|
||||||
|
|
||||||
|
|
||||||
class HRHolidays(models.Model):
|
class HRHolidays(models.Model):
|
||||||
|
|
|
||||||
|
|
@ -1,19 +1,28 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
from odoo import models, fields, api, _
|
from odoo import models, fields, api,_
|
||||||
from datetime import datetime
|
from datetime import datetime,timedelta
|
||||||
from odoo.tools import DEFAULT_SERVER_DATETIME_FORMAT
|
import time
|
||||||
|
from odoo.tools import DEFAULT_SERVER_DATETIME_FORMAT,DEFAULT_SERVER_DATE_FORMAT
|
||||||
from odoo.exceptions import ValidationError
|
from odoo.exceptions import ValidationError
|
||||||
|
|
||||||
|
|
||||||
class HrPersonalPermission(models.Model):
|
class HrPersonalPermission(models.Model):
|
||||||
_inherit = 'hr.personal.permission'
|
_inherit = 'hr.personal.permission'
|
||||||
|
|
||||||
deduct_from_holiday = fields.Boolean(string="Deduct From Holiday")
|
deduct_from_holiday = fields.Boolean(related='permission_type_id.half_holiday', string="Half Day Off")
|
||||||
holiday = fields.Many2one('hr.holidays', string="Holiday")
|
holiday = fields.Many2one('hr.holidays',string="Holiday")
|
||||||
permission_amount = fields.Float(string="Permission Amount")
|
permission_amount = fields.Float(string="Permission Amount")
|
||||||
permission_number = fields.Float(compute="get_permission_number", store=True)
|
permission_number = fields.Float(compute="get_permission_number", store=True)
|
||||||
|
|
||||||
|
|
||||||
|
def send(self):
|
||||||
|
res = super(HrPersonalPermission,self).send()
|
||||||
|
self.get_permission_number()
|
||||||
|
#self._get_date_constrains(employee_permissions)
|
||||||
|
self.permission_number_decrement()
|
||||||
|
return res
|
||||||
|
|
||||||
def get_date_to_constrains_value(self):
|
def get_date_to_constrains_value(self):
|
||||||
current_date = datetime.strptime(str(self.date_to), DEFAULT_SERVER_DATETIME_FORMAT)
|
current_date = datetime.strptime(str(self.date_to), DEFAULT_SERVER_DATETIME_FORMAT)
|
||||||
current_month = datetime.strptime(str(self.date_to), DEFAULT_SERVER_DATETIME_FORMAT).month
|
current_month = datetime.strptime(str(self.date_to), DEFAULT_SERVER_DATETIME_FORMAT).month
|
||||||
|
|
@ -24,7 +33,7 @@ class HrPersonalPermission(models.Model):
|
||||||
employee_permissions = self.search([
|
employee_permissions = self.search([
|
||||||
('employee_id', '=', self.employee_id.id),
|
('employee_id', '=', self.employee_id.id),
|
||||||
('permission_type_id', '=', self.permission_type_id.id),
|
('permission_type_id', '=', self.permission_type_id.id),
|
||||||
('state', '=', 'approve'),
|
('state', 'in', ('send', 'approve')),
|
||||||
('date_from', '>=', date_from),
|
('date_from', '>=', date_from),
|
||||||
('date_to', '<=', date_to)])
|
('date_to', '<=', date_to)])
|
||||||
return date_from, date_to, employee_permissions
|
return date_from, date_to, employee_permissions
|
||||||
|
|
@ -37,8 +46,9 @@ class HrPersonalPermission(models.Model):
|
||||||
basic = employee_permissions.filtered(lambda r: r.deduct_from_holiday == False)
|
basic = employee_permissions.filtered(lambda r: r.deduct_from_holiday == False)
|
||||||
permission_type_id = rec.permission_type_id
|
permission_type_id = rec.permission_type_id
|
||||||
all_perission = 0.0
|
all_perission = 0.0
|
||||||
for item in employee_permissions:
|
for item in employee_permissions.filtered(lambda r: r.id != self.id):
|
||||||
all_perission += item.duration
|
if item.deduct_from_holiday == False:
|
||||||
|
all_perission += item.duration
|
||||||
|
|
||||||
if permission_type_id.monthly_hours - all_perission > 0:
|
if permission_type_id.monthly_hours - all_perission > 0:
|
||||||
rec.permission_number = round(permission_type_id.monthly_hours - all_perission, 2)
|
rec.permission_number = round(permission_type_id.monthly_hours - all_perission, 2)
|
||||||
|
|
@ -51,38 +61,47 @@ class HrPersonalPermission(models.Model):
|
||||||
raise ValidationError(_('You can not Request Permission The Employee have Not First Hiring Date'))
|
raise ValidationError(_('You can not Request Permission The Employee have Not First Hiring Date'))
|
||||||
if rec.date_to:
|
if rec.date_to:
|
||||||
rec.check_holiday_mission()
|
rec.check_holiday_mission()
|
||||||
|
|
||||||
date_from, date_to, employee_permissions = rec.get_date_to_constrains_value()
|
date_from, date_to, employee_permissions = rec.get_date_to_constrains_value()
|
||||||
calender = rec.employee_id.resource_calendar_id
|
calender = rec.employee_id.resource_calendar_id
|
||||||
day_hours = calender.work_hour
|
day_hours = calender.work_hour
|
||||||
rec.permission_amount = rec.duration / day_hours
|
rec.permission_amount = rec.duration/day_hours
|
||||||
basic = employee_permissions.filtered(lambda r: r.deduct_from_holiday == False)
|
basic = employee_permissions.filtered(lambda r:r.deduct_from_holiday == False and r.id != self.id)
|
||||||
|
|
||||||
employee_permissions_holiday = employee_permissions.filtered(lambda r: r.deduct_from_holiday == True)
|
for item in employee_permissions.filtered(lambda r:r.id != self.id):
|
||||||
|
|
||||||
|
if item.date_to and rec.date_to:
|
||||||
|
permission_date1 = datetime.strptime(str(item.date_to),DEFAULT_SERVER_DATETIME_FORMAT).date()
|
||||||
|
date_to_value1 = datetime.strptime(str(rec.date_to), DEFAULT_SERVER_DATETIME_FORMAT).date()
|
||||||
|
if permission_date1 == date_to_value1:
|
||||||
|
raise ValidationError(_('Sorry You Have Used All Your Permission In This Day you have one permission per a Day'))
|
||||||
|
|
||||||
|
employee_permissions_holiday = employee_permissions.filtered(lambda r: r.deduct_from_holiday == True and r.id != self.id)
|
||||||
if rec.deduct_from_holiday:
|
if rec.deduct_from_holiday:
|
||||||
if rec.permission_number <= 0.0:
|
if rec.permission_number >= 0.0:
|
||||||
rec._get_date_constrains(employee_permissions_holiday)
|
rec._get_date_constrains(employee_permissions_holiday)
|
||||||
annual = rec.env['hr.holidays.status'].search(
|
annual = rec.env['hr.holidays.status'].search([('leave_type', '=', 'annual')
|
||||||
[('leave_type', '=', 'annual'), ('permission_annual_holiday', '=', True)])
|
,('permission_annual_holiday', '=',True),])
|
||||||
for itm in annual:
|
for itm in annual:
|
||||||
if rec.employee_id and itm:
|
if rec.employee_id and itm:
|
||||||
holiday = rec.env['hr.holidays'].search(
|
holiday = rec.env['hr.holidays'].search([('employee_id', '=', rec.employee_id.id),('type', '=', 'add'),
|
||||||
[('employee_id', '=', rec.employee_id.id), ('type', '=', 'add'),
|
('holiday_status_id', '=', itm.id),
|
||||||
('holiday_status_id', '=', itm.id),
|
('check_allocation_view', '=', 'balance')
|
||||||
('check_allocation_view', '=', 'balance')
|
], order='id desc', limit=1)
|
||||||
], order='id desc', limit=1)
|
if holiday:
|
||||||
if holiday:
|
|
||||||
rec.holiday = holiday.id
|
rec.holiday = holiday.id
|
||||||
balance = holiday.remaining_leaves or 0.0
|
balance = holiday.remaining_leaves or 0.0
|
||||||
if len(employee_permissions_holiday) < calender.holiday_permission_deducted:
|
if len(employee_permissions_holiday) < rec.permission_type_id.monthly_hours:
|
||||||
if balance < rec.permission_amount:
|
if balance < rec.permission_amount:
|
||||||
raise ValidationError(_('Sorry you Have No leave balance'))
|
raise ValidationError(_('Sorry you Have No leave balance'))
|
||||||
else:
|
else:
|
||||||
raise ValidationError(
|
raise ValidationError(_
|
||||||
_('Sorry You Have Used All Your Permission To Deduct From Holidays'))
|
('Sorry You Have Used All Your Permission To Half Day Off'))
|
||||||
|
|
||||||
else:
|
else:
|
||||||
raise ValidationError(_('Sorry You Have No annual Leave To Deduct Permission'))
|
raise ValidationError(_('Sorry You Have No annual Leave To Deduct Permission'))
|
||||||
else:
|
#else:
|
||||||
raise ValidationError(_('Sorry You Need To use Basic Permission Before Use Holidays'))
|
#raise ValidationError(_('Sorry You Need To use Basic Permission Before Use Holidays'))
|
||||||
else:
|
else:
|
||||||
rec._get_date_constrains(basic)
|
rec._get_date_constrains(basic)
|
||||||
|
|
||||||
|
|
@ -100,25 +119,26 @@ class HrPersonalPermission(models.Model):
|
||||||
self.holiday.leaves_taken -= self.permission_amount
|
self.holiday.leaves_taken -= self.permission_amount
|
||||||
|
|
||||||
def approve(self):
|
def approve(self):
|
||||||
res = super(HrPersonalPermission, self).approve()
|
res = super(HrPersonalPermission,self).approve()
|
||||||
self.leave_balance_process()
|
self.leave_balance_process()
|
||||||
|
self.get_permission_number()
|
||||||
return res
|
return res
|
||||||
|
|
||||||
def draft_state(self):
|
def draft_state(self):
|
||||||
if self.state == 'approve' and self.deduct_from_holiday:
|
if self.state == 'approve' and self.deduct_from_holiday:
|
||||||
self.cancel_leave_balance_process()
|
self.cancel_leave_balance_process()
|
||||||
res = super(HrPersonalPermission, self).draft_state()
|
res = super(HrPersonalPermission,self).draft_state()
|
||||||
return res
|
return res
|
||||||
|
|
||||||
def _get_date_constrains(self, employee_permissions):
|
def _get_date_constrains(self, employee_permissions):
|
||||||
for item in self:
|
for item in self:
|
||||||
number_of_per = item.permission_type_id.monthly_hours
|
number_of_per = item.permission_type_id.monthly_hours
|
||||||
if employee_permissions:
|
if employee_permissions.filtered(lambda r: r.id != self.id):
|
||||||
# employee_permissions_to = employee_permissions.mapped('date_to')
|
employee_permissions_to = employee_permissions.mapped('date_to')
|
||||||
date_to_value = datetime.strptime(str(item.date_to), DEFAULT_SERVER_DATETIME_FORMAT).date()
|
date_to_value = datetime.strptime(str(item.date_to), DEFAULT_SERVER_DATETIME_FORMAT).date()
|
||||||
for employee_permission in employee_permissions:
|
for emp_date in employee_permissions_to:
|
||||||
permission_date = datetime.strptime(str(employee_permission.date_to), DEFAULT_SERVER_DATETIME_FORMAT).date()
|
permission_date = datetime.strptime(str(emp_date), DEFAULT_SERVER_DATETIME_FORMAT).date()
|
||||||
if permission_date == date_to_value and item.id != employee_permission.id:
|
if permission_date == date_to_value:
|
||||||
raise ValidationError(
|
raise ValidationError(
|
||||||
_('Sorry You Have Used All Your Permission In This Day you have one permission per a Day'))
|
_('Sorry You Have Used All Your Permission In This Day you have one permission per a Day'))
|
||||||
start_date_value = datetime.strptime(str(item.date_from), "%Y-%m-%d %H:%M:%S")
|
start_date_value = datetime.strptime(str(item.date_from), "%Y-%m-%d %H:%M:%S")
|
||||||
|
|
@ -127,19 +147,48 @@ class HrPersonalPermission(models.Model):
|
||||||
days = (end_date - start_date_value).days
|
days = (end_date - start_date_value).days
|
||||||
seconds_diff = (end_date - start_date_value).seconds
|
seconds_diff = (end_date - start_date_value).seconds
|
||||||
item.duration = (days * 24) + seconds_diff / 3600
|
item.duration = (days * 24) + seconds_diff / 3600
|
||||||
all_perission = 0
|
|
||||||
for rec in employee_permissions:
|
|
||||||
all_perission += rec.duration
|
|
||||||
|
|
||||||
if number_of_per < all_perission:
|
all_perission=0
|
||||||
|
for rec in employee_permissions:
|
||||||
|
if rec.deduct_from_holiday == False:
|
||||||
|
all_perission += rec.duration
|
||||||
|
|
||||||
|
if number_of_per < all_perission :
|
||||||
raise ValidationError(_('Sorry You Have Used All Your Permission Hours In This Month'))
|
raise ValidationError(_('Sorry You Have Used All Your Permission Hours In This Month'))
|
||||||
|
|
||||||
if item.duration <= 0.0:
|
if item.duration <= 0.0:
|
||||||
raise ValidationError(_('This Duration Must Be Greater Than Zero'))
|
raise ValidationError(_('This Duration Must Be Greater Than Zero'))
|
||||||
|
if not item.deduct_from_holiday:
|
||||||
|
if item.duration < item.balance and item.duration < item.permission_number:
|
||||||
|
raise ValidationError(_('This Duration must be Greater than or equal to the Permission Limit'))
|
||||||
|
|
||||||
if item.duration < item.balance:
|
if item.duration > item.permission_number and item.deduct_from_holiday== False:
|
||||||
raise ValidationError(_('This Duration must be less than or equal to the Permission Limit'))
|
raise ValidationError(_('This Duration not Allowed it must be Less Than or equal Permission Hours in Month'))
|
||||||
|
|
||||||
if item.duration > item.permission_number and not item.deduct_from_holiday:
|
#################### Half day holiday 4 hours ##########
|
||||||
raise ValidationError(
|
if item.deduct_from_holiday:
|
||||||
_('This Duration not Allowed it must be Less Than or equal Permission Hours in Month'))
|
date_from = datetime.strptime(str(item.date_from), "%Y-%m-%d %H:%M:%S")
|
||||||
|
date_to = datetime.strptime(str(item.date_to), "%Y-%m-%d %H:%M:%S")
|
||||||
|
date_from_time = (date_from + timedelta(hours=3)).time()
|
||||||
|
date_to_time = (date_to + timedelta(hours=3)).time()
|
||||||
|
hour_from = date_from_time.hour + date_from_time.minute / 60.0
|
||||||
|
hour_to = date_to_time.hour + date_to_time.minute / 60.0
|
||||||
|
#print('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>',hour_from,hour_to)
|
||||||
|
|
||||||
|
if item.duration != item.permission_type_id.daily_hours:
|
||||||
|
raise ValidationError(_('The Number Of Hours should Be %s Hours For the Half Day Leave') % item.permission_type_id.daily_hours)
|
||||||
|
|
||||||
|
if item.employee_id.contract_id.working_hours.is_full_day== True:
|
||||||
|
hour_sign = item.employee_id.contract_id.working_hours.full_min_sign_in
|
||||||
|
hour_sign_out = item.employee_id.contract_id.working_hours.full_max_sign_out
|
||||||
|
#print('######################################',hour_sign,hour_sign_out)
|
||||||
|
if hour_from < hour_sign or hour_to > hour_sign_out:
|
||||||
|
raise ValidationError(_('Sorry, Must Be a Half Day Period Within Working Hours'))
|
||||||
|
|
||||||
|
|
||||||
|
class HrPersonalPermissionType(models.Model):
|
||||||
|
_inherit = 'hr.personal.permission.type'
|
||||||
|
|
||||||
|
half_holiday = fields.Boolean(string="Half Holiday",
|
||||||
|
help='The permission deducted From The Annual Holiday balance')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,10 +8,46 @@
|
||||||
<field name="priority">100</field>
|
<field name="priority">100</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<field name="department_id" position="after">
|
<field name="department_id" position="after">
|
||||||
<field name="deduct_from_holiday" attrs="{'readonly':[('state','!=','draft')],'invisible':[('permission_number','!=',0.00)]}"/>
|
<field name="deduct_from_holiday" readonly='1'/>
|
||||||
<field name="holiday" invisible="1"/>
|
<field name="holiday" invisible="1"/>
|
||||||
<field name="permission_amount" invisible="1"/>
|
<field name="permission_amount" invisible="1"/>
|
||||||
</field>
|
</field>
|
||||||
|
|
||||||
|
<xpath expr="//field[@name='balance']" position="attributes">
|
||||||
|
<attribute name="attrs">{'invisible':[('deduct_from_holiday','=',True)]}</attribute>
|
||||||
|
</xpath>
|
||||||
|
|
||||||
|
<xpath expr="//field[@name='permission_number']" position="attributes">
|
||||||
|
<attribute name="attrs">{'invisible':[('deduct_from_holiday','=',True)]}</attribute>
|
||||||
|
</xpath>
|
||||||
|
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
<!--record model="ir.ui.view" id="hr_view_tree_inherit_permissions_holiday">
|
||||||
|
<field name="name">Employee personal permission</field>
|
||||||
|
<field name="model">hr.personal.permission</field>
|
||||||
|
<field name="inherit_id" ref="employee_requests.employee_personal_permission_tree_view"/>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
|
||||||
|
<xpath expr="//field[@name='duration']" position="after">
|
||||||
|
<field name="deduct_from_holiday" string="Half Day Off"/>
|
||||||
|
</xpath>
|
||||||
|
|
||||||
|
</field>
|
||||||
|
</record-->
|
||||||
|
|
||||||
|
<!-- permission type -->
|
||||||
|
<record model="ir.ui.view" id="hr_personal_permission_type_view_form_inherit">
|
||||||
|
<field name="name">Permission Types</field>
|
||||||
|
<field name="model">hr.personal.permission.type</field>
|
||||||
|
<field name="inherit_id" ref="employee_requests.hr_personal_permission_type_view_form"/>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
|
||||||
|
<xpath expr="//field[@name='approval_by']" position="after">
|
||||||
|
<field name="half_holiday" string="Half Holiday"/>
|
||||||
|
</xpath>
|
||||||
|
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue