From b13d21e64ad2ea9e1203736a54fab5ef75a3310f Mon Sep 17 00:00:00 2001 From: Horilla <131998600+horilla-opensource@users.noreply.github.com> Date: Thu, 3 Aug 2023 10:31:34 +0530 Subject: [PATCH] Dev (#23) * [fix] company leave computation method not returning excpected result * [UPDT]updated company leave updated method's fixed code on leave module * [UPDT]object filter * [FIX]typo in dashboard * [FIX]onboarding dashboard issue after implementing the bulk recruitment * [UPDT]update translations * [UPDT]notification translation * [RMV]remove country-code-validation.html - unwanted file --- asset/views.py | 38 +- attendance/forms.py | 5 +- attendance/models.py | 30 +- .../attendance/attendance/tab_content.html | 6 +- base/translator.py | 1 + horilla/locale/ar/LC_MESSAGES/django.po | 433 ++++++++++-------- horilla/locale/de/LC_MESSAGES/django.po | 429 +++++++++-------- horilla/locale/en/LC_MESSAGES/django.po | 418 +++++++++-------- horilla/locale/es/LC_MESSAGES/django.po | 429 +++++++++-------- horilla/locale/fr/LC_MESSAGES/django.po | 429 +++++++++-------- leave/methods.py | 17 +- leave/models.py | 18 +- onboarding/views.py | 2 +- payroll/methods/methods.py | 27 +- pms/templates/dashboard/pms_dashboard.html | 2 +- pms/templates/okr/objective_list_view.html | 2 +- pms/views.py | 3 + .../candidate/country-code-validation.html | 27 -- recruitment/views.py | 80 +++- templates/dashboard.html | 2 +- 20 files changed, 1296 insertions(+), 1102 deletions(-) delete mode 100644 recruitment/templates/candidate/country-code-validation.html diff --git a/asset/views.py b/asset/views.py index b6974bf5e..023a83979 100644 --- a/asset/views.py +++ b/asset/views.py @@ -171,12 +171,11 @@ def asset_delete(request, id): if status == "In use": messages.info(request, _("Asset is in use")) return HttpResponseRedirect(request.META.get("HTTP_REFERER", "/")) - + elif asset_allocation: # if this asset is used in any allocation messages.error(request, _("Asset is used in allocation!.")) return HttpResponseRedirect(request.META.get("HTTP_REFERER", "/")) - asset.delete() messages.success(request, _("Asset deleted successfully")) @@ -188,16 +187,15 @@ def asset_delete(request, id): # if asset under the category messages.info(request, _("Asset is in use")) return HttpResponseRedirect(request.META.get("HTTP_REFERER", "/")) - + elif asset_allocation: # if this asset is used in any allocation messages.error(request, _("Asset is used in allocation!.")) return HttpResponseRedirect(request.META.get("HTTP_REFERER", "/")) - + asset.delete() messages.success(request, _("Asset deleted successfully")) return HttpResponseRedirect(request.META.get("HTTP_REFERER", "/")) - @login_required @@ -471,6 +469,10 @@ def asset_request_approve(request, id): request.user.employee_get, recipient=form.assigned_to_employee_id.employee_user_id, verb="Your asset request approved!.", + verb_ar="تم الموافقة على طلب الأصول الخاص بك!", + verb_de="Ihr Antragsantrag wurde genehmigt!", + verb_es="¡Su solicitud de activo ha sido aprobada!", + verb_fr="Votre demande d'actif a été approuvée !", redirect="/asset/asset-request-allocation-view", icon="bag-check", ) @@ -510,6 +512,10 @@ def asset_request_reject(request, id): request.user.employee_get, recipient=asset_request.requested_employee_id.employee_user_id, verb="Your asset request rejected!.", + verb_ar="تم رفض طلب الأصول الخاص بك!", + verb_de="Ihr Antragsantrag wurde abgelehnt!", + verb_es="¡Se ha rechazado su solicitud de activo!", + verb_fr="Votre demande d'actif a été rejetée !", redirect="/asset/asset-request-allocation-view", icon="bag-check", ) @@ -779,23 +785,23 @@ def asset_export_excel(request): "asset_status": [], "asset_lot_number_id": [], } - + fields_to_check = [ - "asset_name", - "asset_description", - "asset_tracking_id", - "asset_purchase_date", - "asset_purchase_cost", - "asset_category_id", - "asset_status", - "asset_lot_number_id", + "asset_name", + "asset_description", + "asset_tracking_id", + "asset_purchase_date", + "asset_purchase_cost", + "asset_category_id", + "asset_status", + "asset_lot_number_id", ] for asset in queryset: for field in fields_to_check: - # Get the value of the field for the current asset + # Get the value of the field for the current asset value = getattr(asset, field) - + # Append the value if it exists, or append None if it's None data[field].append(value if value is not None else None) diff --git a/attendance/forms.py b/attendance/forms.py index c650c2e8f..f6b2540a7 100644 --- a/attendance/forms.py +++ b/attendance/forms.py @@ -52,6 +52,9 @@ class ModelForm(forms.ModelForm): widget, (forms.NumberInput, forms.EmailInput, forms.TextInput) ): label = _(field.label.title()) + print('---------------------------------------------------------------') + print(label) + print('---------------------------------------------------------------') field.widget.attrs.update( {"class": "oh-input w-100", "placeholder": label} ) @@ -165,7 +168,7 @@ class AttendanceForm(ModelForm): employee_id = forms.ModelMultipleChoiceField( queryset=Employee.objects.filter(employee_work_info__isnull=False), - label="Employees", + label=_("Employees"), ) class Meta: diff --git a/attendance/models.py b/attendance/models.py index f585e1181..247ed2600 100644 --- a/attendance/models.py +++ b/attendance/models.py @@ -104,52 +104,58 @@ class Attendance(models.Model): on_delete=models.CASCADE, null=True, related_name="employee_attendances", - verbose_name="Employee", ) shift_id = models.ForeignKey( - EmployeeShift, on_delete=models.DO_NOTHING, null=True, verbose_name="Shift" + EmployeeShift, on_delete=models.DO_NOTHING, null=True, verbose_name=_("Shift") ) work_type_id = models.ForeignKey( WorkType, null=True, blank=True, on_delete=models.DO_NOTHING, - verbose_name="Work Type", + verbose_name=_("Work Type"), ) attendance_date = models.DateField( - null=False, validators=[attendance_date_validate] + null=False, + validators=[attendance_date_validate], + verbose_name=_("Attendance date"), ) attendance_day = models.ForeignKey( EmployeeShiftDay, on_delete=models.DO_NOTHING, null=True ) attendance_clock_in = models.TimeField( - null=True, verbose_name="Check-in", help_text="First Check-in Time" + null=True, verbose_name=_("Check-in"), help_text="First Check-in Time" + ) + attendance_clock_in_date = models.DateField( + null=True, verbose_name=_("Check-in date") ) - attendance_clock_in_date = models.DateField(null=True, verbose_name="Check-in date") attendance_clock_out = models.TimeField( - null=True, verbose_name="check-out", help_text="Last Check-out Time" + null=True, verbose_name=_("Check-out"), help_text="Last Check-out Time" ) attendance_clock_out_date = models.DateField( - null=True, verbose_name="Check-out date" + null=True, verbose_name=_("Check-out date") ) attendance_worked_hour = models.CharField( null=True, default="00:00", max_length=10, validators=[validate_time_format], - verbose_name="At work", + verbose_name=_("At work"), ) minimum_hour = models.CharField( - max_length=10, default="00:00", validators=[validate_time_format] + max_length=10, + default="00:00", + validators=[validate_time_format], + verbose_name=_("Minimum hour"), ) attendance_overtime = models.CharField( default="00:00", validators=[validate_time_format], max_length=10, - verbose_name="Overtime", + verbose_name=_("Overtime"), ) attendance_overtime_approve = models.BooleanField( - default=False, verbose_name="Overtime approved" + default=False, verbose_name=_("Overtime approved") ) attendance_validated = models.BooleanField(default=False) at_work_second = models.IntegerField(null=True, blank=True) diff --git a/attendance/templates/attendance/attendance/tab_content.html b/attendance/templates/attendance/attendance/tab_content.html index e118c22bb..3e1160446 100644 --- a/attendance/templates/attendance/attendance/tab_content.html +++ b/attendance/templates/attendance/attendance/tab_content.html @@ -60,7 +60,7 @@ {{attendance.attendance_date}}
- {{attendance.attendance_day|capfirst}} + {{attendance.attendance_day.get_day_display }}
{{attendance.attendance_clock_in}} @@ -212,7 +212,7 @@ {{attendance.attendance_date}}
- {{attendance.attendance_day|capfirst}} + {{attendance.attendance_day.get_day_display }}
{{attendance.attendance_clock_in}} @@ -368,7 +368,7 @@ {{attendance.attendance_date}}
- {{attendance.attendance_day|capfirst}} + {{attendance.attendance_day.get_day_display }}
{{attendance.attendance_clock_in}} diff --git a/base/translator.py b/base/translator.py index 47fa5c12a..f382620c6 100644 --- a/base/translator.py +++ b/base/translator.py @@ -17,6 +17,7 @@ _("Bank Code #2"), _("RECRUITMENT"), _("ONBOARDING"), _("EMPLOYEE"), +_("PAYROLL"), _("ATTENDANCE"), _("LEAVE"), _("ASSET"), diff --git a/horilla/locale/ar/LC_MESSAGES/django.po b/horilla/locale/ar/LC_MESSAGES/django.po index 36ac82ed5..d3fc0fbb4 100644 --- a/horilla/locale/ar/LC_MESSAGES/django.po +++ b/horilla/locale/ar/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-08-01 12:27+0530\n" +"POT-Creation-Date: 2023-08-02 12:41+0530\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -1216,23 +1216,31 @@ msgstr "رقم الدفعة قيد الاستخدام" msgid "Batch number deleted" msgstr "تم حذف رقم الدفعة" -#: .\attendance\forms.py:62 .\base\forms.py:160 .\base\forms.py:204 +#: .\attendance\forms.py:65 .\base\forms.py:160 .\base\forms.py:204 #: .\payroll\forms\tax_forms.py:41 .\recruitment\forms.py:53 #: .\recruitment\forms.py:96 #, python-brace-format msgid "---Choose {label}---" msgstr "--- اختر {label} ---" -#: .\attendance\forms.py:270 +#: .\attendance\forms.py:171 .\leave\templates\leave\leave-assign-form.html:22 +#: .\leave\templates\leave\leave-assign-one-form.html:18 +#: .\leave\templates\leave\leave-request-form.html:22 +#: .\leave\templates\leave\request-update-form.html:25 +#: .\templates\sidebar.html:99 +msgid "Employees" +msgstr "موظفين" + +#: .\attendance\forms.py:273 #, python-format msgid "Attendance for the date is already exist for %(emp)s" msgstr "الحضور لهذا التاريخ موجود بالفعل لـ %(emp)s" -#: .\attendance\forms.py:275 +#: .\attendance\forms.py:278 msgid "Employee not chosen" msgstr "لم يتم اختيار الموظف" -#: .\attendance\forms.py:333 +#: .\attendance\forms.py:336 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:56 #: .\attendance\templates\attendance\attendance_account\group_by.html:9 #: .\attendance\templates\attendance\attendance_account\overtime_list.html:8 @@ -1240,7 +1248,7 @@ msgstr "لم يتم اختيار الموظف" msgid "Month" msgstr "شهر" -#: .\attendance\forms.py:344 +#: .\attendance\forms.py:347 #: .\attendance\templates\attendance\attendance\attendance_filters.html:11 #: .\attendance\templates\attendance\attendance\group_by.html:14 #: .\attendance\templates\attendance\attendance\group_by.html:180 @@ -1300,7 +1308,7 @@ msgstr "شهر" msgid "Employee" msgstr "موظف" -#: .\attendance\forms.py:345 +#: .\attendance\forms.py:348 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:64 #: .\attendance\templates\attendance\attendance_account\group_by.html:10 #: .\attendance\templates\attendance\attendance_account\overtime_list.html:9 @@ -1308,7 +1316,7 @@ msgstr "موظف" msgid "Year" msgstr "شهر" -#: .\attendance\forms.py:346 +#: .\attendance\forms.py:349 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:51 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:68 #: .\attendance\templates\attendance\attendance_account\group_by.html:11 @@ -1318,7 +1326,7 @@ msgstr "شهر" msgid "Hour Account" msgstr "ساعة حساب" -#: .\attendance\forms.py:347 +#: .\attendance\forms.py:350 .\attendance\models.py:155 #: .\attendance\templates\attendance\attendance\group_by.html:25 #: .\attendance\templates\attendance\attendance\group_by.html:191 #: .\attendance\templates\attendance\attendance\group_by.html:353 @@ -1333,7 +1341,7 @@ msgstr "ساعة حساب" msgid "Overtime" msgstr "متأخر بعد فوات الوقت" -#: .\attendance\forms.py:386 +#: .\attendance\forms.py:389 msgid "" "Do not Auto Validate Attendance if an Employee Works " "More Than this Amount of Duration" @@ -1341,11 +1349,11 @@ msgstr "" "لا تقم بالتحقق التلقائي من الحضور إذا كان الموظف يعمل أكثر من هذا المقدار من " "المدة" -#: .\attendance\forms.py:389 +#: .\attendance\forms.py:392 msgid "Minimum Hour to Approve Overtime" msgstr "الحد الأدنى للساعة للموافقة على العمل الإضافي" -#: .\attendance\forms.py:390 +#: .\attendance\forms.py:393 msgid "Maximum Allowed Overtime Per Day" msgstr "الحد الأقصى المسموح به للعمل الإضافي في اليوم" @@ -1365,18 +1373,109 @@ msgstr "تنسيق غير صالح" msgid "You cannot choose a future date." msgstr "لا يمكنك اختيار تاريخ في المستقبل." -#: .\attendance\models.py:373 +#: .\attendance\models.py:109 +#: .\attendance\templates\attendance\attendance\attendance_filters.html:19 +#: .\attendance\templates\attendance\attendance\group_by.html:21 +#: .\attendance\templates\attendance\attendance\group_by.html:187 +#: .\attendance\templates\attendance\attendance\group_by.html:349 +#: .\attendance\templates\attendance\attendance\tab_content.html:27 +#: .\attendance\templates\attendance\attendance\tab_content.html:176 +#: .\attendance\templates\attendance\attendance\tab_content.html:334 +#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:19 +#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:19 +#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:19 +#: .\attendance\templates\attendance\own_attendance\attendances.html:13 +#: .\base\templates\base\rotating_shift\filters.html:57 +#: .\base\templates\base\rotating_work_type\filters.html:57 +#: .\base\templates\base\shift\schedule.html:14 +#: .\base\templates\base\shift\schedule_view.html:10 +#: .\base\templates\base\shift\shift.html:9 +#: .\base\templates\base\shift\shift.html:14 +#: .\base\templates\base\shift\shift_view.html:6 +#: .\base\templates\shift_request\shift_request_nav.html:115 +#: .\base\templates\work_type_request\work_type_request_nav.html:112 +#: .\employee\templates\employee_filters.html:54 +#: .\employee\templates\employee_personal_info\employee_list.html:30 +#: .\payroll\models\models.py:586 .\payroll\models\models.py:698 +#: .\payroll\templates\payroll\contract\contract_single_view.html:77 +msgid "Shift" +msgstr "يحول" + +#: .\attendance\models.py:116 +#: .\attendance\templates\attendance\attendance\attendance_filters.html:39 +#: .\attendance\templates\attendance\attendance\group_by.html:22 +#: .\attendance\templates\attendance\attendance\group_by.html:188 +#: .\attendance\templates\attendance\attendance\group_by.html:350 +#: .\attendance\templates\attendance\attendance\tab_content.html:28 +#: .\attendance\templates\attendance\attendance\tab_content.html:177 +#: .\attendance\templates\attendance\attendance\tab_content.html:335 +#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:39 +#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:39 +#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:39 +#: .\attendance\templates\attendance\own_attendance\attendances.html:14 +#: .\base\templates\base\rotating_shift\filters.html:71 +#: .\base\templates\base\rotating_work_type\filters.html:71 +#: .\base\templates\base\work_type\work_type.html:9 +#: .\base\templates\base\work_type\work_type.html:14 +#: .\base\templates\base\work_type\work_type_view.html:6 +#: .\base\templates\shift_request\shift_request_nav.html:137 +#: .\base\templates\work_type_request\work_type_request_nav.html:134 +#: .\employee\templates\employee\profile\profile_view.html:335 +#: .\employee\templates\employee\profile\work_info.html:27 +#: .\employee\templates\employee\update_form\work_details.html:31 +#: .\employee\templates\employee\view\individual.html:339 +#: .\employee\templates\employee_filters.html:69 +#: .\employee\templates\employee_personal_info\employee_list.html:31 +#: .\payroll\models\models.py:588 .\payroll\models\models.py:722 +#: .\payroll\templates\payroll\contract\contract_single_view.html:83 +#: .\templates\settings.html:44 +msgid "Work Type" +msgstr "نوع العمل" + +#: .\attendance\models.py:121 +msgid "Attendance date" +msgstr "تاريخ حضور" + +#: .\attendance\models.py:127 +msgid "Check-in" +msgstr "تحقق في" + +#: .\attendance\models.py:130 +msgid "Check-in date" +msgstr "تاريخ تحقق في" + +#: .\attendance\models.py:133 +msgid "Check-out" +msgstr "الدفع" + +#: .\attendance\models.py:136 +msgid "Check-out date" +msgstr "تاريخ الدفع" + +#: .\attendance\models.py:143 +msgid "At work" +msgstr "في العمل" + +#: .\attendance\models.py:149 +msgid "Minimum hour" +msgstr "الحد الأدنى للساعة" + +#: .\attendance\models.py:158 .\attendance\views.py:1281 +msgid "Overtime approved" +msgstr "تمت الموافقة على العمل الإضافي" + +#: .\attendance\models.py:379 #: .\attendance\templates\attendance\late_come_early_out\report_list.html:36 #: .\attendance\views.py:1451 msgid "Late Come" msgstr "يأتي متأخر" -#: .\attendance\models.py:374 +#: .\attendance\models.py:380 #: .\attendance\templates\attendance\late_come_early_out\report_list.html:38 msgid "Early Out" msgstr "إيرل أوت" -#: .\attendance\models.py:422 +#: .\attendance\models.py:428 msgid "You cannot add more conditions." msgstr "لا يمكنك إضافة المزيد من الشروط." @@ -1421,33 +1520,6 @@ msgstr "معلومات العمل" msgid "Department" msgstr "قسم" -#: .\attendance\templates\attendance\attendance\attendance_filters.html:19 -#: .\attendance\templates\attendance\attendance\group_by.html:21 -#: .\attendance\templates\attendance\attendance\group_by.html:187 -#: .\attendance\templates\attendance\attendance\group_by.html:349 -#: .\attendance\templates\attendance\attendance\tab_content.html:27 -#: .\attendance\templates\attendance\attendance\tab_content.html:176 -#: .\attendance\templates\attendance\attendance\tab_content.html:334 -#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:19 -#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:19 -#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:19 -#: .\attendance\templates\attendance\own_attendance\attendances.html:13 -#: .\base\templates\base\rotating_shift\filters.html:57 -#: .\base\templates\base\rotating_work_type\filters.html:57 -#: .\base\templates\base\shift\schedule.html:14 -#: .\base\templates\base\shift\schedule_view.html:10 -#: .\base\templates\base\shift\shift.html:9 -#: .\base\templates\base\shift\shift.html:14 -#: .\base\templates\base\shift\shift_view.html:6 -#: .\base\templates\shift_request\shift_request_nav.html:115 -#: .\base\templates\work_type_request\work_type_request_nav.html:112 -#: .\employee\templates\employee_filters.html:54 -#: .\employee\templates\employee_personal_info\employee_list.html:30 -#: .\payroll\models\models.py:586 .\payroll\models\models.py:698 -#: .\payroll\templates\payroll\contract\contract_single_view.html:77 -msgid "Shift" -msgstr "يحول" - #: .\attendance\templates\attendance\attendance\attendance_filters.html:23 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:23 #: .\attendance\templates\attendance\attendance_activity\activity_filters.html:23 @@ -1532,36 +1604,6 @@ msgstr "شركة" msgid "Job Position" msgstr "المناصب الوظيفية" -#: .\attendance\templates\attendance\attendance\attendance_filters.html:39 -#: .\attendance\templates\attendance\attendance\group_by.html:22 -#: .\attendance\templates\attendance\attendance\group_by.html:188 -#: .\attendance\templates\attendance\attendance\group_by.html:350 -#: .\attendance\templates\attendance\attendance\tab_content.html:28 -#: .\attendance\templates\attendance\attendance\tab_content.html:177 -#: .\attendance\templates\attendance\attendance\tab_content.html:335 -#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:39 -#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:39 -#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:39 -#: .\attendance\templates\attendance\own_attendance\attendances.html:14 -#: .\base\templates\base\rotating_shift\filters.html:71 -#: .\base\templates\base\rotating_work_type\filters.html:71 -#: .\base\templates\base\work_type\work_type.html:9 -#: .\base\templates\base\work_type\work_type.html:14 -#: .\base\templates\base\work_type\work_type_view.html:6 -#: .\base\templates\shift_request\shift_request_nav.html:137 -#: .\base\templates\work_type_request\work_type_request_nav.html:134 -#: .\employee\templates\employee\profile\profile_view.html:335 -#: .\employee\templates\employee\profile\work_info.html:27 -#: .\employee\templates\employee\update_form\work_details.html:31 -#: .\employee\templates\employee\view\individual.html:339 -#: .\employee\templates\employee_filters.html:69 -#: .\employee\templates\employee_personal_info\employee_list.html:31 -#: .\payroll\models\models.py:588 .\payroll\models\models.py:722 -#: .\payroll\templates\payroll\contract\contract_single_view.html:83 -#: .\templates\settings.html:44 -msgid "Work Type" -msgstr "نوع العمل" - #: .\attendance\templates\attendance\attendance\attendance_filters.html:43 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:43 #: .\attendance\templates\attendance\attendance_activity\activity_filters.html:43 @@ -2099,10 +2141,6 @@ msgstr "لا يمكنك حذف شرط التحقق هذا. " msgid "Attendance validated." msgstr "التحقق من صحة الحضور." -#: .\attendance\views.py:1281 -msgid "Overtime approved" -msgstr "تمت الموافقة على العمل الإضافي" - #: .\attendance\views.py:1450 msgid "On Time" msgstr "في الوقت المحدد" @@ -2945,292 +2983,296 @@ msgstr "الصعود" msgid "EMPLOYEE" msgstr "موظف" -#: .\base\translator.py:20 .\base\translator.py:90 -msgid "ATTENDANCE" -msgstr "ATTENDANCE" +#: .\base\translator.py:20 +msgid "PAYROLL" +msgstr "كشف رواتب" -#: .\base\translator.py:21 +#: .\base\translator.py:21 .\base\translator.py:91 +msgid "ATTENDANCE" +msgstr "حضور" + +#: .\base\translator.py:22 msgid "LEAVE" msgstr "يترك" -#: .\base\translator.py:22 .\base\translator.py:91 +#: .\base\translator.py:23 .\base\translator.py:92 msgid "ASSET" msgstr "أصول" -#: .\base\translator.py:23 +#: .\base\translator.py:24 msgid "Your asset request approved!." msgstr "تمت الموافقة على طلب الأصل الخاص بك !." -#: .\base\translator.py:24 +#: .\base\translator.py:25 msgid "Your asset request rejected!." msgstr "تم رفض طلب الأصل الخاص بك !." -#: .\base\translator.py:25 +#: .\base\translator.py:26 msgid "You are added to rotating work type" msgstr "تمت إضافتك إلى نوع العمل المتناوب" -#: .\base\translator.py:26 +#: .\base\translator.py:27 msgid "You are added to rotating shift" msgstr "تمت إضافتك إلى وردية الدورية" -#: .\base\translator.py:27 +#: .\base\translator.py:28 msgid "Your work type request has been canceled." msgstr "تم إلغاء طلب نوع عملك." -#: .\base\translator.py:28 +#: .\base\translator.py:29 msgid "Your work type request has been approved." msgstr "تمت الموافقة على طلب نوع عملك." -#: .\base\translator.py:29 +#: .\base\translator.py:30 msgid "Your work type request has been deleted." msgstr "تم حذف طلب نوع عملك." -#: .\base\translator.py:30 +#: .\base\translator.py:31 msgid "Your shift request has been canceled." msgstr "تم إلغاء طلب التحول الخاص بك." -#: .\base\translator.py:31 +#: .\base\translator.py:32 msgid "Your shift request has been approved." msgstr "تمت الموافقة على طلب التحول الخاص بك." -#: .\base\translator.py:32 +#: .\base\translator.py:33 msgid "Your shift request has been deleted." msgstr "تم حذف طلب التحول الخاص بك." -#: .\base\translator.py:33 +#: .\base\translator.py:34 msgid "Your work details has been updated." msgstr "تم تحديث تفاصيل عملك." -#: .\base\translator.py:34 +#: .\base\translator.py:35 msgid "You have a new leave request to validate." msgstr "لديك طلب إجازة جديد للتحقق من صحة." -#: .\base\translator.py:35 +#: .\base\translator.py:36 msgid "New leave type is assigned to you" msgstr "تم تعيين نوع إجازة جديد لك" -#: .\base\translator.py:36 +#: .\base\translator.py:37 msgid "Your Leave request has been cancelled" msgstr "تم إلغاء طلب الإجازة الخاص بك" -#: .\base\translator.py:37 +#: .\base\translator.py:38 msgid "Your Leave request has been approved" msgstr "تمت الموافقة على طلب الإجازة الخاص بك" -#: .\base\translator.py:38 +#: .\base\translator.py:39 msgid "You are chosen as onboarding stage manager" msgstr "لقد تم اختيارك كمدير لمرحلة الإعداد" -#: .\base\translator.py:39 +#: .\base\translator.py:40 msgid "You are chosen as onboarding task manager" msgstr "لقد تم اختيارك كمدير مهام على متن الطائرة" -#: .\base\translator.py:40 +#: .\base\translator.py:41 msgid "You got an OKR!." msgstr "لقد حصلت على نتيجة رئيسية موضوعية !." -#: .\base\translator.py:41 +#: .\base\translator.py:42 msgid "You have received feedback!" msgstr "لقد تلقيت ملاحظات!" -#: .\base\translator.py:42 +#: .\base\translator.py:43 msgid "You have been assigned as a manager in a feedback!" msgstr "لقد تم تعيينك كمدير في التعليقات!" -#: .\base\translator.py:43 +#: .\base\translator.py:44 msgid "You have been assigned as a subordinate in a feedback!" msgstr "لقد تم تعيينك كمرؤوس في تعليق!" -#: .\base\translator.py:44 +#: .\base\translator.py:45 msgid "You have been assigned as a colleague in a feedback!" msgstr "لقد تم تعيينك كزميل في تعليق!" -#: .\base\translator.py:45 +#: .\base\translator.py:46 msgid "You are chosen as one of recruitment manager" msgstr "لقد تم اختيارك كأحد مديري التوظيف" -#: .\base\translator.py:46 +#: .\base\translator.py:47 msgid "Your attendance for the date " msgstr "تم التحقق من صحة حضورك لتاريخ {}" -#: .\base\translator.py:47 +#: .\base\translator.py:48 msgid " is validated" msgstr "تم التحقق من صحتها" -#: .\base\translator.py:48 +#: .\base\translator.py:49 msgid "Select" msgstr "يختار" -#: .\base\translator.py:49 +#: .\base\translator.py:50 msgid "January" msgstr "كانون الثاني" -#: .\base\translator.py:50 +#: .\base\translator.py:51 msgid "February" msgstr "شباط" -#: .\base\translator.py:51 +#: .\base\translator.py:52 msgid "March" msgstr "آذار" -#: .\base\translator.py:52 +#: .\base\translator.py:53 msgid "April" msgstr "نيسان" -#: .\base\translator.py:53 +#: .\base\translator.py:54 msgid "May" msgstr "أيار" -#: .\base\translator.py:54 +#: .\base\translator.py:55 msgid "June" msgstr "حزيران" -#: .\base\translator.py:55 +#: .\base\translator.py:56 msgid "July" msgstr "تموز" -#: .\base\translator.py:56 +#: .\base\translator.py:57 msgid "August" msgstr "آب" -#: .\base\translator.py:57 +#: .\base\translator.py:58 msgid "September" msgstr "أيلول" -#: .\base\translator.py:58 +#: .\base\translator.py:59 msgid "October" msgstr "تشرين الأول" -#: .\base\translator.py:59 +#: .\base\translator.py:60 msgid "November" msgstr "تشرين الثاني" -#: .\base\translator.py:60 +#: .\base\translator.py:61 msgid "December" msgstr "كانون الأول" -#: .\base\translator.py:61 +#: .\base\translator.py:62 msgid "One time date" msgstr "تاريخ لمرة واحدة" -#: .\base\translator.py:62 +#: .\base\translator.py:63 msgid "Is condition based" msgstr "على أساس الشرط" -#: .\base\translator.py:63 +#: .\base\translator.py:64 msgid "Is taxable" msgstr "خاضع للضريبة" -#: .\base\translator.py:64 +#: .\base\translator.py:65 msgid "Is fixed" msgstr "ثابت" -#: .\base\translator.py:65 +#: .\base\translator.py:66 msgid "Value" msgstr "قيمة" -#: .\base\translator.py:66 +#: .\base\translator.py:67 msgid "If choice" msgstr "إذا كان الاختيار" -#: .\base\translator.py:67 .\base\translator.py:84 +#: .\base\translator.py:68 .\base\translator.py:85 msgid "Is tax" msgstr "ضريبة" -#: .\base\translator.py:68 +#: .\base\translator.py:69 msgid "If amount" msgstr "إذا كان المبلغ" -#: .\base\translator.py:69 +#: .\base\translator.py:70 msgid "If condition" msgstr "إذا الشرط" -#: .\base\translator.py:70 +#: .\base\translator.py:71 msgid "Employer rate" msgstr "معدل صاحب العمل" -#: .\base\translator.py:71 +#: .\base\translator.py:72 msgid "Contract name" msgstr "اسم العقد" -#: .\base\translator.py:72 +#: .\base\translator.py:73 msgid "Contract start date" msgstr "تاريخ بدء العقد" -#: .\base\translator.py:73 +#: .\base\translator.py:74 msgid "Contract end date" msgstr "تاريخ انتهاء العقد" -#: .\base\translator.py:74 +#: .\base\translator.py:75 msgid "Wage type" msgstr "نوع الأجور" -#: .\base\translator.py:75 +#: .\base\translator.py:76 msgid "Calculate daily leave amount" msgstr "احسب مبلغ الإجازة اليومية" -#: .\base\translator.py:76 +#: .\base\translator.py:77 msgid "Deduction for one leave amount" msgstr "استقطاع مبلغ إجازة واحد" -#: .\base\translator.py:77 +#: .\base\translator.py:78 msgid "Deduct leave from basic pay" msgstr "استقطاع مبلغ الإجازة من الراتب الأساسي" -#: .\base\translator.py:78 +#: .\base\translator.py:79 msgid "Job role" msgstr "الدور الوظيفي" -#: .\base\translator.py:79 +#: .\base\translator.py:80 msgid "Work type" msgstr "نوع الوظيفة" -#: .\base\translator.py:80 +#: .\base\translator.py:81 msgid "Pay frequency" msgstr "يدفع بشكل متكرر" -#: .\base\translator.py:81 .\payroll\models\models.py:71 +#: .\base\translator.py:82 .\payroll\models\models.py:71 #: .\payroll\models\tax_models.py:42 msgid "Filing status" msgstr "حالة الايداع" -#: .\base\translator.py:82 +#: .\base\translator.py:83 msgid "Contract status" msgstr "حالة التعاقد" -#: .\base\translator.py:83 +#: .\base\translator.py:84 msgid "Contract document" msgstr "مستند عقد" -#: .\base\translator.py:85 +#: .\base\translator.py:86 msgid "Update compensation" msgstr "تحديث تعويض الدفع" -#: .\base\translator.py:86 +#: .\base\translator.py:87 msgid "Is pretax" msgstr "هل هو قبل الضرائب" -#: .\base\translator.py:87 +#: .\base\translator.py:88 msgid "DASHBOARD" msgstr "لوحة القيادة" -#: .\base\translator.py:88 +#: .\base\translator.py:89 msgid "SHIFT REQUESTS" msgstr "طلب مناوبة " -#: .\base\translator.py:89 +#: .\base\translator.py:90 msgid "WORK TYPE REQUESTS" msgstr "طلبات نوع العمل" -#: .\base\translator.py:92 +#: .\base\translator.py:93 msgid "Single" msgstr "أعزب" -#: .\base\translator.py:93 +#: .\base\translator.py:94 msgid "Married" msgstr "متزوج" -#: .\base\translator.py:94 +#: .\base\translator.py:95 msgid "Divorced" msgstr "مُطلّق" @@ -4450,14 +4492,6 @@ msgstr "غير متكرر" msgid "Leave types" msgstr "أنواع الإجازات" -#: .\leave\templates\leave\leave-assign-form.html:22 -#: .\leave\templates\leave\leave-assign-one-form.html:18 -#: .\leave\templates\leave\leave-request-form.html:22 -#: .\leave\templates\leave\request-update-form.html:25 -#: .\templates\sidebar.html:99 -msgid "Employees" -msgstr "موظفين" - #: .\leave\templates\leave\leave-request-form.html:32 #: .\leave\templates\leave\request-update-form.html:35 #: .\leave\templates\leave\user-request-form.html:24 @@ -6196,7 +6230,7 @@ msgstr "حالة نتيجة المفتاح" #: .\pms\templates\dashboard\pms_dashboard.html:77 #: .\templates\dashboard.html:195 -msgid "Feedack Status" +msgid "Feedback Status" msgstr "حالة التعليقات" #: .\pms\templates\dashboard\pms_dashboard.html:100 @@ -6591,150 +6625,150 @@ msgstr "الهدف %(objective)s محدث" msgid "Objective %(objective)s deleted" msgstr "تم حذف %(objective)s الهدف" -#: .\pms\views.py:492 +#: .\pms\views.py:495 #, python-format msgid "Objective %(objective)s status updated" msgstr "تم تحديث %(objective)s حالة الهدف" -#: .\pms\views.py:514 +#: .\pms\views.py:517 msgid "Status has been updated" msgstr "تم تحديث الحالة" -#: .\pms\views.py:538 +#: .\pms\views.py:541 #, python-format msgid "Current value of %(employee_key_result)s updated" msgstr "القيمة %(employee_key_result)s الحالية لتحديث" -#: .\pms\views.py:543 +#: .\pms\views.py:546 msgid "Current value is greater than target value" msgstr "القيمة الحالية أكبر من القيمة المستهدفة" -#: .\pms\views.py:545 +#: .\pms\views.py:548 msgid "Error occurred during current value updation" msgstr "حدث خطأ أثناء تحديث القيمة الحالية" -#: .\pms\views.py:562 +#: .\pms\views.py:565 msgid "Objective un-archived successfully!." msgstr "تم إلغاء أرشفة الهدف بنجاح !." -#: .\pms\views.py:566 +#: .\pms\views.py:569 msgid "Objective archived successfully!." msgstr "تم أرشفة الهدف بنجاح !." -#: .\pms\views.py:604 .\pms\views.py:656 +#: .\pms\views.py:607 .\pms\views.py:659 msgid "Key result created" msgstr "تم إنشاء النتيجة الرئيسية" -#: .\pms\views.py:629 +#: .\pms\views.py:632 msgid "Key results created" msgstr "النتائج الرئيسية التي تم إنشاؤها" -#: .\pms\views.py:691 +#: .\pms\views.py:694 msgid "Key result updated" msgstr "تم تحديث النتيجة الرئيسية" -#: .\pms\views.py:789 +#: .\pms\views.py:792 msgid "Feedback created successfully." msgstr "تم إنشاء الملاحظات بنجاح." -#: .\pms\views.py:1087 +#: .\pms\views.py:1090 msgid "You are not allowed to answer" msgstr "لا يسمح لك بالإجابة" -#: .\pms\views.py:1102 +#: .\pms\views.py:1105 msgid "Feedback already answered" msgstr "تم الرد على التعليقات بالفعل" -#: .\pms\views.py:1153 +#: .\pms\views.py:1156 #, python-format msgid "Feedback %(review_cycle)s has been answered successfully!." msgstr "تمت أ%(review_cycle)sرشفة الملاحظات بنجاح !." -#: .\pms\views.py:1178 +#: .\pms\views.py:1181 msgid "Feedback is not answered yet" msgstr "لم يتم الرد على ردود الفعل حتى الآن" -#: .\pms\views.py:1206 +#: .\pms\views.py:1209 #, python-format msgid "Feedback %(review_cycle)s deleted successfully!" msgstr "تم إنشاء %(review_cycle)s الملاحظات بنجاح." -#: .\pms\views.py:1213 +#: .\pms\views.py:1216 #, python-format msgid "Feedback %(review_cycle)s is ongoing you you can archive it!" msgstr "التعليقات %(review_cycle)s جارية يمكنك أرشفتها!" -#: .\pms\views.py:1233 +#: .\pms\views.py:1236 msgid "Feedback is already started" msgstr "بدأت التعليقات بالفعل" -#: .\pms\views.py:1239 +#: .\pms\views.py:1242 #, python-format msgid "Feedback status updated to %(status)s" msgstr "تم تحديث حالة التعليقات إلى %(status)s" -#: .\pms\views.py:1244 +#: .\pms\views.py:1247 #, python-format msgid "Error occurred during status update to %(status)s" msgstr "حدث خطأ أثناء تحديث الحالة إلى %(status)s" -#: .\pms\views.py:1261 +#: .\pms\views.py:1264 msgid "Feedback un-archived successfully!." msgstr "تم إلغاء أرشفة الملاحظات بنجاح !." -#: .\pms\views.py:1265 +#: .\pms\views.py:1268 msgid "Feedback archived successfully!." msgstr "تمت أرشفة الملاحظات بنجاح !." -#: .\pms\views.py:1285 +#: .\pms\views.py:1288 msgid "Completed" msgstr "مكتمل" -#: .\pms\views.py:1285 +#: .\pms\views.py:1288 msgid "Not-completed" msgstr "غير مكتمل" -#: .\pms\views.py:1308 +#: .\pms\views.py:1311 msgid "Question template is used in feedback." msgstr "يستخدم قالب السؤال في الملاحظات." -#: .\pms\views.py:1328 .\pms\views.py:1330 +#: .\pms\views.py:1331 .\pms\views.py:1333 msgid "Question created successfully." msgstr "تم إنشاء السؤال بنجاح." -#: .\pms\views.py:1333 +#: .\pms\views.py:1336 msgid "Error occurred during question creation!" msgstr "حدث خطأ أثناء إنشاء السؤال!" -#: .\pms\views.py:1403 .\pms\views.py:1410 +#: .\pms\views.py:1406 .\pms\views.py:1413 msgid "Question updated successfully." msgstr "تم تحديث السؤال بنجاح." -#: .\pms\views.py:1444 +#: .\pms\views.py:1447 msgid "Question deleted successfully!" msgstr "تم حذف السؤال بنجاح!" -#: .\pms\views.py:1450 +#: .\pms\views.py:1453 msgid "Failed to delete question: Question template is in use." msgstr "فشل حذف السؤال: قالب السؤال قيد الاستخدام." -#: .\pms\views.py:1550 +#: .\pms\views.py:1553 msgid "Question template updated" msgstr "تم تحديث نموذج السؤال" -#: .\pms\views.py:1571 +#: .\pms\views.py:1574 msgid "This template is using in a feedback" msgstr "هذا النموذج يستخدم في ردود الفعل" -#: .\pms\views.py:1608 +#: .\pms\views.py:1611 msgid "Period creation was Successful " msgstr "تم إنشاء الفترة الزمنية بنجاح " -#: .\pms\views.py:1636 +#: .\pms\views.py:1639 msgid "Period updated Successfully. " msgstr "تم تحديث الفترة بنجاح." -#: .\pms\views.py:1659 +#: .\pms\views.py:1662 msgid "Period deleted successfully." msgstr "تم حذف الفترة بنجاح." @@ -7421,6 +7455,11 @@ msgstr "عرض الأصول" msgid "Request and Allocation" msgstr "الطلب والتخصيص" +#, fuzzy +#~| msgid "Feedback Status" +#~ msgid "Feedack Status" +#~ msgstr "حالة التعليقات" + #~ msgid "None" #~ msgstr "فارغ" @@ -7463,12 +7502,6 @@ msgstr "الطلب والتخصيص" #~ msgid "month_working_days" #~ msgstr "الشهر_العمل_الأيام" -#~ msgid "Check-In Date" -#~ msgstr "تاريخ تحقق في" - -#~ msgid "Check-Out Date" -#~ msgstr "تاريخ الدفع" - #~ msgid "Badge ID must be unique." #~ msgstr "يجب أن يكون معرف الشارة فريدًا." diff --git a/horilla/locale/de/LC_MESSAGES/django.po b/horilla/locale/de/LC_MESSAGES/django.po index 325705093..d5f52428a 100644 --- a/horilla/locale/de/LC_MESSAGES/django.po +++ b/horilla/locale/de/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-08-01 12:27+0530\n" +"POT-Creation-Date: 2023-08-02 12:41+0530\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -1218,23 +1218,31 @@ msgstr "Chargennummer in Gebrauch" msgid "Batch number deleted" msgstr "Chargennummer gelöscht" -#: .\attendance\forms.py:62 .\base\forms.py:160 .\base\forms.py:204 +#: .\attendance\forms.py:65 .\base\forms.py:160 .\base\forms.py:204 #: .\payroll\forms\tax_forms.py:41 .\recruitment\forms.py:53 #: .\recruitment\forms.py:96 #, python-brace-format msgid "---Choose {label}---" msgstr "---Wählen Sie {label}---" -#: .\attendance\forms.py:270 +#: .\attendance\forms.py:171 .\leave\templates\leave\leave-assign-form.html:22 +#: .\leave\templates\leave\leave-assign-one-form.html:18 +#: .\leave\templates\leave\leave-request-form.html:22 +#: .\leave\templates\leave\request-update-form.html:25 +#: .\templates\sidebar.html:99 +msgid "Employees" +msgstr "Mitarbeiter" + +#: .\attendance\forms.py:273 #, python-format msgid "Attendance for the date is already exist for %(emp)s" msgstr "Anwesenheit für das Datum ist bereits vorhanden für %(emp)s" -#: .\attendance\forms.py:275 +#: .\attendance\forms.py:278 msgid "Employee not chosen" msgstr "Mitarbeiter nicht ausgewählt" -#: .\attendance\forms.py:333 +#: .\attendance\forms.py:336 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:56 #: .\attendance\templates\attendance\attendance_account\group_by.html:9 #: .\attendance\templates\attendance\attendance_account\overtime_list.html:8 @@ -1242,7 +1250,7 @@ msgstr "Mitarbeiter nicht ausgewählt" msgid "Month" msgstr "Monat" -#: .\attendance\forms.py:344 +#: .\attendance\forms.py:347 #: .\attendance\templates\attendance\attendance\attendance_filters.html:11 #: .\attendance\templates\attendance\attendance\group_by.html:14 #: .\attendance\templates\attendance\attendance\group_by.html:180 @@ -1302,7 +1310,7 @@ msgstr "Monat" msgid "Employee" msgstr "Mitarbeiter" -#: .\attendance\forms.py:345 +#: .\attendance\forms.py:348 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:64 #: .\attendance\templates\attendance\attendance_account\group_by.html:10 #: .\attendance\templates\attendance\attendance_account\overtime_list.html:9 @@ -1310,7 +1318,7 @@ msgstr "Mitarbeiter" msgid "Year" msgstr "Jahr" -#: .\attendance\forms.py:346 +#: .\attendance\forms.py:349 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:51 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:68 #: .\attendance\templates\attendance\attendance_account\group_by.html:11 @@ -1320,7 +1328,7 @@ msgstr "Jahr" msgid "Hour Account" msgstr "Stunde Konto" -#: .\attendance\forms.py:347 +#: .\attendance\forms.py:350 .\attendance\models.py:155 #: .\attendance\templates\attendance\attendance\group_by.html:25 #: .\attendance\templates\attendance\attendance\group_by.html:191 #: .\attendance\templates\attendance\attendance\group_by.html:353 @@ -1335,7 +1343,7 @@ msgstr "Stunde Konto" msgid "Overtime" msgstr "Im Laufezeit" -#: .\attendance\forms.py:386 +#: .\attendance\forms.py:389 msgid "" "Do not Auto Validate Attendance if an Employee Works " "More Than this Amount of Duration" @@ -1343,11 +1351,11 @@ msgstr "" "Anwesenheit nicht automatisch validieren, wenn ein Mitarbeiter länger als " "diese Zeitspanne arbeitet" -#: .\attendance\forms.py:389 +#: .\attendance\forms.py:392 msgid "Minimum Hour to Approve Overtime" msgstr "Mindeststunde zur Genehmigung von Überstunden" -#: .\attendance\forms.py:390 +#: .\attendance\forms.py:393 msgid "Maximum Allowed Overtime Per Day" msgstr "Maximal erlaubte Überstunden pro Tag" @@ -1367,18 +1375,109 @@ msgstr "Ungültiges Format" msgid "You cannot choose a future date." msgstr "Sie können kein zukünftiges Datum wählen" -#: .\attendance\models.py:373 +#: .\attendance\models.py:109 +#: .\attendance\templates\attendance\attendance\attendance_filters.html:19 +#: .\attendance\templates\attendance\attendance\group_by.html:21 +#: .\attendance\templates\attendance\attendance\group_by.html:187 +#: .\attendance\templates\attendance\attendance\group_by.html:349 +#: .\attendance\templates\attendance\attendance\tab_content.html:27 +#: .\attendance\templates\attendance\attendance\tab_content.html:176 +#: .\attendance\templates\attendance\attendance\tab_content.html:334 +#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:19 +#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:19 +#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:19 +#: .\attendance\templates\attendance\own_attendance\attendances.html:13 +#: .\base\templates\base\rotating_shift\filters.html:57 +#: .\base\templates\base\rotating_work_type\filters.html:57 +#: .\base\templates\base\shift\schedule.html:14 +#: .\base\templates\base\shift\schedule_view.html:10 +#: .\base\templates\base\shift\shift.html:9 +#: .\base\templates\base\shift\shift.html:14 +#: .\base\templates\base\shift\shift_view.html:6 +#: .\base\templates\shift_request\shift_request_nav.html:115 +#: .\base\templates\work_type_request\work_type_request_nav.html:112 +#: .\employee\templates\employee_filters.html:54 +#: .\employee\templates\employee_personal_info\employee_list.html:30 +#: .\payroll\models\models.py:586 .\payroll\models\models.py:698 +#: .\payroll\templates\payroll\contract\contract_single_view.html:77 +msgid "Shift" +msgstr "Schicht" + +#: .\attendance\models.py:116 +#: .\attendance\templates\attendance\attendance\attendance_filters.html:39 +#: .\attendance\templates\attendance\attendance\group_by.html:22 +#: .\attendance\templates\attendance\attendance\group_by.html:188 +#: .\attendance\templates\attendance\attendance\group_by.html:350 +#: .\attendance\templates\attendance\attendance\tab_content.html:28 +#: .\attendance\templates\attendance\attendance\tab_content.html:177 +#: .\attendance\templates\attendance\attendance\tab_content.html:335 +#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:39 +#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:39 +#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:39 +#: .\attendance\templates\attendance\own_attendance\attendances.html:14 +#: .\base\templates\base\rotating_shift\filters.html:71 +#: .\base\templates\base\rotating_work_type\filters.html:71 +#: .\base\templates\base\work_type\work_type.html:9 +#: .\base\templates\base\work_type\work_type.html:14 +#: .\base\templates\base\work_type\work_type_view.html:6 +#: .\base\templates\shift_request\shift_request_nav.html:137 +#: .\base\templates\work_type_request\work_type_request_nav.html:134 +#: .\employee\templates\employee\profile\profile_view.html:335 +#: .\employee\templates\employee\profile\work_info.html:27 +#: .\employee\templates\employee\update_form\work_details.html:31 +#: .\employee\templates\employee\view\individual.html:339 +#: .\employee\templates\employee_filters.html:69 +#: .\employee\templates\employee_personal_info\employee_list.html:31 +#: .\payroll\models\models.py:588 .\payroll\models\models.py:722 +#: .\payroll\templates\payroll\contract\contract_single_view.html:83 +#: .\templates\settings.html:44 +msgid "Work Type" +msgstr "Arbeitstyp" + +#: .\attendance\models.py:121 +msgid "Attendance date" +msgstr "Anwesenheits Datum" + +#: .\attendance\models.py:127 +msgid "Check-in" +msgstr "Check-Ein" + +#: .\attendance\models.py:130 +msgid "Check-in date" +msgstr "Check-Ein Datum" + +#: .\attendance\models.py:133 +msgid "Check-out" +msgstr "Check-Aus" + +#: .\attendance\models.py:136 +msgid "Check-out date" +msgstr "Check-Aus Datum" + +#: .\attendance\models.py:143 +msgid "At work" +msgstr "Auf Arbeit" + +#: .\attendance\models.py:149 +msgid "Minimum hour" +msgstr "Mindest Stunde" + +#: .\attendance\models.py:158 .\attendance\views.py:1281 +msgid "Overtime approved" +msgstr "Überstunden genehmigt" + +#: .\attendance\models.py:379 #: .\attendance\templates\attendance\late_come_early_out\report_list.html:36 #: .\attendance\views.py:1451 msgid "Late Come" msgstr "Spät gekommen" -#: .\attendance\models.py:374 +#: .\attendance\models.py:380 #: .\attendance\templates\attendance\late_come_early_out\report_list.html:38 msgid "Early Out" msgstr "Early Out" -#: .\attendance\models.py:422 +#: .\attendance\models.py:428 msgid "You cannot add more conditions." msgstr "Sie können keine weiteren Bedingungen hinzufügen." @@ -1423,33 +1522,6 @@ msgstr "Arbeits Info" msgid "Department" msgstr "Abteilung" -#: .\attendance\templates\attendance\attendance\attendance_filters.html:19 -#: .\attendance\templates\attendance\attendance\group_by.html:21 -#: .\attendance\templates\attendance\attendance\group_by.html:187 -#: .\attendance\templates\attendance\attendance\group_by.html:349 -#: .\attendance\templates\attendance\attendance\tab_content.html:27 -#: .\attendance\templates\attendance\attendance\tab_content.html:176 -#: .\attendance\templates\attendance\attendance\tab_content.html:334 -#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:19 -#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:19 -#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:19 -#: .\attendance\templates\attendance\own_attendance\attendances.html:13 -#: .\base\templates\base\rotating_shift\filters.html:57 -#: .\base\templates\base\rotating_work_type\filters.html:57 -#: .\base\templates\base\shift\schedule.html:14 -#: .\base\templates\base\shift\schedule_view.html:10 -#: .\base\templates\base\shift\shift.html:9 -#: .\base\templates\base\shift\shift.html:14 -#: .\base\templates\base\shift\shift_view.html:6 -#: .\base\templates\shift_request\shift_request_nav.html:115 -#: .\base\templates\work_type_request\work_type_request_nav.html:112 -#: .\employee\templates\employee_filters.html:54 -#: .\employee\templates\employee_personal_info\employee_list.html:30 -#: .\payroll\models\models.py:586 .\payroll\models\models.py:698 -#: .\payroll\templates\payroll\contract\contract_single_view.html:77 -msgid "Shift" -msgstr "Schicht" - #: .\attendance\templates\attendance\attendance\attendance_filters.html:23 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:23 #: .\attendance\templates\attendance\attendance_activity\activity_filters.html:23 @@ -1534,36 +1606,6 @@ msgstr "Meine Firma" msgid "Job Position" msgstr "Berufliche Stellung" -#: .\attendance\templates\attendance\attendance\attendance_filters.html:39 -#: .\attendance\templates\attendance\attendance\group_by.html:22 -#: .\attendance\templates\attendance\attendance\group_by.html:188 -#: .\attendance\templates\attendance\attendance\group_by.html:350 -#: .\attendance\templates\attendance\attendance\tab_content.html:28 -#: .\attendance\templates\attendance\attendance\tab_content.html:177 -#: .\attendance\templates\attendance\attendance\tab_content.html:335 -#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:39 -#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:39 -#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:39 -#: .\attendance\templates\attendance\own_attendance\attendances.html:14 -#: .\base\templates\base\rotating_shift\filters.html:71 -#: .\base\templates\base\rotating_work_type\filters.html:71 -#: .\base\templates\base\work_type\work_type.html:9 -#: .\base\templates\base\work_type\work_type.html:14 -#: .\base\templates\base\work_type\work_type_view.html:6 -#: .\base\templates\shift_request\shift_request_nav.html:137 -#: .\base\templates\work_type_request\work_type_request_nav.html:134 -#: .\employee\templates\employee\profile\profile_view.html:335 -#: .\employee\templates\employee\profile\work_info.html:27 -#: .\employee\templates\employee\update_form\work_details.html:31 -#: .\employee\templates\employee\view\individual.html:339 -#: .\employee\templates\employee_filters.html:69 -#: .\employee\templates\employee_personal_info\employee_list.html:31 -#: .\payroll\models\models.py:588 .\payroll\models\models.py:722 -#: .\payroll\templates\payroll\contract\contract_single_view.html:83 -#: .\templates\settings.html:44 -msgid "Work Type" -msgstr "Arbeitstyp" - #: .\attendance\templates\attendance\attendance\attendance_filters.html:43 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:43 #: .\attendance\templates\attendance\attendance_activity\activity_filters.html:43 @@ -2101,10 +2143,6 @@ msgstr "Sie können diese Validierungsbedingung nicht löschen." msgid "Attendance validated." msgstr "Anwesenheit Validiert." -#: .\attendance\views.py:1281 -msgid "Overtime approved" -msgstr "Überstunden genehmigt" - #: .\attendance\views.py:1450 msgid "On Time" msgstr "Pünktlich" @@ -2953,292 +2991,296 @@ msgstr "ONBOARDEN" msgid "EMPLOYEE" msgstr "MITARBEITE" -#: .\base\translator.py:20 .\base\translator.py:90 +#: .\base\translator.py:20 +msgid "PAYROLL" +msgstr "GEHALTSABRECHNUNG" + +#: .\base\translator.py:21 .\base\translator.py:91 msgid "ATTENDANCE" msgstr "ANWESENHEITSL" -#: .\base\translator.py:21 +#: .\base\translator.py:22 msgid "LEAVE" msgstr "VERLASSEN" -#: .\base\translator.py:22 .\base\translator.py:91 +#: .\base\translator.py:23 .\base\translator.py:92 msgid "ASSET" msgstr "VERMÖGENSWERT" -#: .\base\translator.py:23 +#: .\base\translator.py:24 msgid "Your asset request approved!." msgstr "Ihre Asset-Anfrage wurde genehmigt!." -#: .\base\translator.py:24 +#: .\base\translator.py:25 msgid "Your asset request rejected!." msgstr "Ihre Asset-Anfrage wurde abgelehnt!." -#: .\base\translator.py:25 +#: .\base\translator.py:26 msgid "You are added to rotating work type" msgstr "Sie werden zum rotierenden Arbeitstyp hinzugefügt" -#: .\base\translator.py:26 +#: .\base\translator.py:27 msgid "You are added to rotating shift" msgstr "Sie werden zur rotierenden Schicht hinzugefügt" -#: .\base\translator.py:27 +#: .\base\translator.py:28 msgid "Your work type request has been canceled." msgstr "Ihre Arbeitstypanfrage wurde storniert." -#: .\base\translator.py:28 +#: .\base\translator.py:29 msgid "Your work type request has been approved." msgstr "Ihre Arbeitstypanfrage wurde genehmigt." -#: .\base\translator.py:29 +#: .\base\translator.py:30 msgid "Your work type request has been deleted." msgstr "Ihre Arbeitstypanfrage wurde gelöscht." -#: .\base\translator.py:30 +#: .\base\translator.py:31 msgid "Your shift request has been canceled." msgstr "Ihre Schichtanfrage wurde storniert." -#: .\base\translator.py:31 +#: .\base\translator.py:32 msgid "Your shift request has been approved." msgstr "Ihre Schichtanfrage wurde genehmigt." -#: .\base\translator.py:32 +#: .\base\translator.py:33 msgid "Your shift request has been deleted." msgstr "Ihre Schichtanfrage wurde gelöscht." -#: .\base\translator.py:33 +#: .\base\translator.py:34 msgid "Your work details has been updated." msgstr "Ihre Arbeitsdetails wurden aktualisiert." -#: .\base\translator.py:34 +#: .\base\translator.py:35 msgid "You have a new leave request to validate." msgstr "Sie müssen einen neuen verlassen anfrage validieren." -#: .\base\translator.py:35 +#: .\base\translator.py:36 msgid "New leave type is assigned to you" msgstr "Ihnen wird ein neuer Abwesenheitstyp zugewiesen" -#: .\base\translator.py:36 +#: .\base\translator.py:37 msgid "Your Leave request has been cancelled" msgstr "Ihr verlassen antrag wurde storniert" -#: .\base\translator.py:37 +#: .\base\translator.py:38 msgid "Your Leave request has been approved" msgstr "Ihr verlassen antrag wurde genehmigt" -#: .\base\translator.py:38 +#: .\base\translator.py:39 msgid "You are chosen as onboarding stage manager" msgstr "Sie werden als Onboarding-Stagemanager ausgewählt" -#: .\base\translator.py:39 +#: .\base\translator.py:40 msgid "You are chosen as onboarding task manager" msgstr "Sie werden als Onboarding-Aufgabenmanager ausgewählt" -#: .\base\translator.py:40 +#: .\base\translator.py:41 msgid "You got an OKR!." msgstr "Sie haben objektive Schlüsselergebnisse erhalten!" -#: .\base\translator.py:41 +#: .\base\translator.py:42 msgid "You have received feedback!" msgstr "Sie haben feedback erhalten!" -#: .\base\translator.py:42 +#: .\base\translator.py:43 msgid "You have been assigned as a manager in a feedback!" msgstr "Sie wurden in einem Feedback als Manager zugewiesen!" -#: .\base\translator.py:43 +#: .\base\translator.py:44 msgid "You have been assigned as a subordinate in a feedback!" msgstr "Sie wurden in einem Feedback als Untergebener zugewiesen!" -#: .\base\translator.py:44 +#: .\base\translator.py:45 msgid "You have been assigned as a colleague in a feedback!" msgstr "Sie wurden in einem Feedback als Kollege zugewiesen!" -#: .\base\translator.py:45 +#: .\base\translator.py:46 msgid "You are chosen as one of recruitment manager" msgstr "Sie wurden als einer der Personalbeschaffungsmanager ausgewählt" -#: .\base\translator.py:46 +#: .\base\translator.py:47 msgid "Your attendance for the date " msgstr "Abcd atten for t da " -#: .\base\translator.py:47 +#: .\base\translator.py:48 msgid " is validated" msgstr "Bestätigt" -#: .\base\translator.py:48 +#: .\base\translator.py:49 msgid "Select" msgstr "Wählen" -#: .\base\translator.py:49 +#: .\base\translator.py:50 msgid "January" msgstr "Januar" -#: .\base\translator.py:50 +#: .\base\translator.py:51 msgid "February" msgstr "Februar" -#: .\base\translator.py:51 +#: .\base\translator.py:52 msgid "March" msgstr "März" -#: .\base\translator.py:52 +#: .\base\translator.py:53 msgid "April" msgstr "April" -#: .\base\translator.py:53 +#: .\base\translator.py:54 msgid "May" msgstr "Mai" -#: .\base\translator.py:54 +#: .\base\translator.py:55 msgid "June" msgstr "Juni" -#: .\base\translator.py:55 +#: .\base\translator.py:56 msgid "July" msgstr "Juli" -#: .\base\translator.py:56 +#: .\base\translator.py:57 msgid "August" msgstr "August" -#: .\base\translator.py:57 +#: .\base\translator.py:58 msgid "September" msgstr "September" -#: .\base\translator.py:58 +#: .\base\translator.py:59 msgid "October" msgstr "Oktober" -#: .\base\translator.py:59 +#: .\base\translator.py:60 msgid "November" msgstr "November" -#: .\base\translator.py:60 +#: .\base\translator.py:61 msgid "December" msgstr "Dezember" -#: .\base\translator.py:61 +#: .\base\translator.py:62 msgid "One time date" msgstr "Einmalige datum" -#: .\base\translator.py:62 +#: .\base\translator.py:63 msgid "Is condition based" msgstr "Ist zustandsbasiert" -#: .\base\translator.py:63 +#: .\base\translator.py:64 msgid "Is taxable" msgstr "Ist steuerpflichtig" -#: .\base\translator.py:64 +#: .\base\translator.py:65 msgid "Is fixed" msgstr "Ist fest" -#: .\base\translator.py:65 +#: .\base\translator.py:66 msgid "Value" msgstr "Wert" -#: .\base\translator.py:66 +#: .\base\translator.py:67 msgid "If choice" msgstr "Wenn Wahl" -#: .\base\translator.py:67 .\base\translator.py:84 +#: .\base\translator.py:68 .\base\translator.py:85 msgid "Is tax" msgstr "Ist Steuer" -#: .\base\translator.py:68 +#: .\base\translator.py:69 msgid "If amount" msgstr "Wenn Betrag" -#: .\base\translator.py:69 +#: .\base\translator.py:70 msgid "If condition" msgstr "Wenn Zustand" -#: .\base\translator.py:70 +#: .\base\translator.py:71 msgid "Employer rate" msgstr "Arbeitgebersatz :" -#: .\base\translator.py:71 +#: .\base\translator.py:72 msgid "Contract name" msgstr "Kontakt Name" -#: .\base\translator.py:72 +#: .\base\translator.py:73 msgid "Contract start date" msgstr "Vertragsbeginn Datum" -#: .\base\translator.py:73 +#: .\base\translator.py:74 msgid "Contract end date" msgstr "Vertrag End Datum" -#: .\base\translator.py:74 +#: .\base\translator.py:75 msgid "Wage type" msgstr "Lohnart" -#: .\base\translator.py:75 +#: .\base\translator.py:76 msgid "Calculate daily leave amount" msgstr "Berechnen Sie den täglichen Urlaubsbetrag" -#: .\base\translator.py:76 +#: .\base\translator.py:77 msgid "Deduction for one leave amount" msgstr "Abzugsbetrag für einen Urlaub" -#: .\base\translator.py:77 +#: .\base\translator.py:78 msgid "Deduct leave from basic pay" msgstr "Urlaub vom Grundgehalt abziehen" -#: .\base\translator.py:78 +#: .\base\translator.py:79 msgid "Job role" msgstr "Stellenb Rolle" -#: .\base\translator.py:79 +#: .\base\translator.py:80 msgid "Work type" msgstr "Arbeitstyp" -#: .\base\translator.py:80 +#: .\base\translator.py:81 msgid "Pay frequency" msgstr "Zahlungshäufigkeit" -#: .\base\translator.py:81 .\payroll\models\models.py:71 +#: .\base\translator.py:82 .\payroll\models\models.py:71 #: .\payroll\models\tax_models.py:42 msgid "Filing status" msgstr "Status der Einreichung" -#: .\base\translator.py:82 +#: .\base\translator.py:83 msgid "Contract status" msgstr "Vertragsstatus" -#: .\base\translator.py:83 +#: .\base\translator.py:84 msgid "Contract document" msgstr "Vertragsdokument" -#: .\base\translator.py:85 +#: .\base\translator.py:86 msgid "Update compensation" msgstr "Vergütung aktualisieren" -#: .\base\translator.py:86 +#: .\base\translator.py:87 msgid "Is pretax" msgstr "ist Vor Steuern" -#: .\base\translator.py:87 +#: .\base\translator.py:88 msgid "DASHBOARD" msgstr "ARMATURENBRETT" -#: .\base\translator.py:88 +#: .\base\translator.py:89 msgid "SHIFT REQUESTS" msgstr "SCHICHTWÜNSCHE" -#: .\base\translator.py:89 +#: .\base\translator.py:90 msgid "WORK TYPE REQUESTS" msgstr "ARBEITSARTWÜNSCHE" -#: .\base\translator.py:92 +#: .\base\translator.py:93 msgid "Single" msgstr "Einzel" -#: .\base\translator.py:93 +#: .\base\translator.py:94 msgid "Married" msgstr "Verheiratet" -#: .\base\translator.py:94 +#: .\base\translator.py:95 msgid "Divorced" msgstr "Divorced" @@ -4462,14 +4504,6 @@ msgstr "Nicht Wiederkehrend" msgid "Leave types" msgstr "Typ verlassen" -#: .\leave\templates\leave\leave-assign-form.html:22 -#: .\leave\templates\leave\leave-assign-one-form.html:18 -#: .\leave\templates\leave\leave-request-form.html:22 -#: .\leave\templates\leave\request-update-form.html:25 -#: .\templates\sidebar.html:99 -msgid "Employees" -msgstr "Mitarbeiter" - #: .\leave\templates\leave\leave-request-form.html:32 #: .\leave\templates\leave\request-update-form.html:35 #: .\leave\templates\leave\user-request-form.html:24 @@ -6229,7 +6263,7 @@ msgstr "Schlüssel Ergebnis Status" #: .\pms\templates\dashboard\pms_dashboard.html:77 #: .\templates\dashboard.html:195 -msgid "Feedack Status" +msgid "Feedback Status" msgstr "Rückmeldungen Status" #: .\pms\templates\dashboard\pms_dashboard.html:100 @@ -6624,151 +6658,151 @@ msgstr "Ziel %(objective)s Aktualisiert" msgid "Objective %(objective)s deleted" msgstr "Ziel %(objective)s gelöscht" -#: .\pms\views.py:492 +#: .\pms\views.py:495 #, python-format msgid "Objective %(objective)s status updated" msgstr "Ziel %(objective)s status aktualisiert" -#: .\pms\views.py:514 +#: .\pms\views.py:517 msgid "Status has been updated" msgstr "Status wurde aktualisiert" -#: .\pms\views.py:538 +#: .\pms\views.py:541 #, python-format msgid "Current value of %(employee_key_result)s updated" msgstr "Aktueller Wert von %(employee_key_result)s aktualisiert" -#: .\pms\views.py:543 +#: .\pms\views.py:546 msgid "Current value is greater than target value" msgstr "Aktueller Wert ist größer als Zielwert" -#: .\pms\views.py:545 +#: .\pms\views.py:548 msgid "Error occurred during current value updation" msgstr "Bei der Aktualisierung des aktuellen Werts ist ein Fehler aufgetreten" -#: .\pms\views.py:562 +#: .\pms\views.py:565 msgid "Objective un-archived successfully!." msgstr "Ziel erfolgreich dearchiviert!." -#: .\pms\views.py:566 +#: .\pms\views.py:569 msgid "Objective archived successfully!." msgstr "Ziel erfolgreich archiviert!." -#: .\pms\views.py:604 .\pms\views.py:656 +#: .\pms\views.py:607 .\pms\views.py:659 msgid "Key result created" msgstr "Schlüsselergebnis erstellt" -#: .\pms\views.py:629 +#: .\pms\views.py:632 msgid "Key results created" msgstr "Schlüsselergebnisse erstellt" -#: .\pms\views.py:691 +#: .\pms\views.py:694 msgid "Key result updated" msgstr "Schlüssel Ergebnis aktualisiert" -#: .\pms\views.py:789 +#: .\pms\views.py:792 msgid "Feedback created successfully." msgstr "Rückmeldungen erfolgreich erstellt" -#: .\pms\views.py:1087 +#: .\pms\views.py:1090 msgid "You are not allowed to answer" msgstr "Sie dürfen nicht antworten" -#: .\pms\views.py:1102 +#: .\pms\views.py:1105 msgid "Feedback already answered" msgstr "Rückmeldungen schon beantwortet" -#: .\pms\views.py:1153 +#: .\pms\views.py:1156 #, python-format msgid "Feedback %(review_cycle)s has been answered successfully!." msgstr "Rückmeldungen %(review_cycle)s wurde erfolgreich beantwortet!." -#: .\pms\views.py:1178 +#: .\pms\views.py:1181 msgid "Feedback is not answered yet" msgstr "Rückmeldungen wird noch nicht beantwortet" -#: .\pms\views.py:1206 +#: .\pms\views.py:1209 #, python-format msgid "Feedback %(review_cycle)s deleted successfully!" msgstr "Feedback %(review_cycle)s erfolgreich gelöscht!" -#: .\pms\views.py:1213 +#: .\pms\views.py:1216 #, python-format msgid "Feedback %(review_cycle)s is ongoing you you can archive it!" msgstr "Das Feedback %(review_cycle)s läuft, Sie können es archivieren!" -#: .\pms\views.py:1233 +#: .\pms\views.py:1236 msgid "Feedback is already started" msgstr "Rückmeldungen ist bereits gestartet" -#: .\pms\views.py:1239 +#: .\pms\views.py:1242 #, python-format msgid "Feedback status updated to %(status)s" msgstr "Feedback-Status auf %(status)s aktualisiert" -#: .\pms\views.py:1244 +#: .\pms\views.py:1247 #, python-format msgid "Error occurred during status update to %(status)s" msgstr "" "Während der Statusaktualisierung auf %(status)s ist ein Fehler aufgetreten" -#: .\pms\views.py:1261 +#: .\pms\views.py:1264 msgid "Feedback un-archived successfully!." msgstr "Rückmeldungen erfolgreich dearchiviert!." -#: .\pms\views.py:1265 +#: .\pms\views.py:1268 msgid "Feedback archived successfully!." msgstr "Rückmeldungen erfolgreich archiviert!." -#: .\pms\views.py:1285 +#: .\pms\views.py:1288 msgid "Completed" msgstr "Vollendet" -#: .\pms\views.py:1285 +#: .\pms\views.py:1288 msgid "Not-completed" msgstr "Nicht-vollständ" -#: .\pms\views.py:1308 +#: .\pms\views.py:1311 msgid "Question template is used in feedback." msgstr "Die Fragevorlage wird im Rückmeldungen verwendet." -#: .\pms\views.py:1328 .\pms\views.py:1330 +#: .\pms\views.py:1331 .\pms\views.py:1333 msgid "Question created successfully." msgstr "Frage erfolgreich erstellt." -#: .\pms\views.py:1333 +#: .\pms\views.py:1336 msgid "Error occurred during question creation!" msgstr "Beim Erstellen der Frage ist ein Fehler aufgetreten!" -#: .\pms\views.py:1403 .\pms\views.py:1410 +#: .\pms\views.py:1406 .\pms\views.py:1413 msgid "Question updated successfully." msgstr "Frage erfolgreich aktualisiert." -#: .\pms\views.py:1444 +#: .\pms\views.py:1447 msgid "Question deleted successfully!" msgstr "Frage erfolgreich gelöscht!" -#: .\pms\views.py:1450 +#: .\pms\views.py:1453 msgid "Failed to delete question: Question template is in use." msgstr "Frage konnte nicht gelöscht werden: Fragevorlage wird verwendet." -#: .\pms\views.py:1550 +#: .\pms\views.py:1553 msgid "Question template updated" msgstr "Fragevorlage aktualisiert" -#: .\pms\views.py:1571 +#: .\pms\views.py:1574 msgid "This template is using in a feedback" msgstr "Diese Vorlage wird in einem Feedback verwendet" -#: .\pms\views.py:1608 +#: .\pms\views.py:1611 msgid "Period creation was Successful " msgstr "Zeitraumerstellung war erfolgreich" -#: .\pms\views.py:1636 +#: .\pms\views.py:1639 msgid "Period updated Successfully. " msgstr "Zeitraum erfolgreich aktualisiert." -#: .\pms\views.py:1659 +#: .\pms\views.py:1662 msgid "Period deleted successfully." msgstr "Zeitraum erfolgreich gelöscht." @@ -7455,6 +7489,11 @@ msgstr "Vermögenswerts Ansicht" msgid "Request and Allocation" msgstr "Anfrage und Zuteilung" +#, fuzzy +#~| msgid "Feedback Status" +#~ msgid "Feedack Status" +#~ msgstr "Rückmeldungen Status" + #~ msgid "None" #~ msgstr "Keiner" @@ -7476,12 +7515,6 @@ msgstr "Anfrage und Zuteilung" #~ msgid "to" #~ msgstr "Zu" -#~ msgid "Check-In Date" -#~ msgstr "Check-Ein Datum" - -#~ msgid "Check-Out Date" -#~ msgstr "Check-Aus Datum" - #~ msgid "Badge ID must be unique." #~ msgstr "Ausweis-ID muss eindeutig sein." diff --git a/horilla/locale/en/LC_MESSAGES/django.po b/horilla/locale/en/LC_MESSAGES/django.po index 01759b9d8..b5b75b97a 100644 --- a/horilla/locale/en/LC_MESSAGES/django.po +++ b/horilla/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-08-01 12:27+0530\n" +"POT-Creation-Date: 2023-08-02 12:41+0530\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -1215,23 +1215,31 @@ msgstr "" msgid "Batch number deleted" msgstr "" -#: .\attendance\forms.py:62 .\base\forms.py:160 .\base\forms.py:204 +#: .\attendance\forms.py:65 .\base\forms.py:160 .\base\forms.py:204 #: .\payroll\forms\tax_forms.py:41 .\recruitment\forms.py:53 #: .\recruitment\forms.py:96 #, python-brace-format msgid "---Choose {label}---" msgstr "" -#: .\attendance\forms.py:270 +#: .\attendance\forms.py:171 .\leave\templates\leave\leave-assign-form.html:22 +#: .\leave\templates\leave\leave-assign-one-form.html:18 +#: .\leave\templates\leave\leave-request-form.html:22 +#: .\leave\templates\leave\request-update-form.html:25 +#: .\templates\sidebar.html:99 +msgid "Employees" +msgstr "" + +#: .\attendance\forms.py:273 #, python-format msgid "Attendance for the date is already exist for %(emp)s" msgstr "" -#: .\attendance\forms.py:275 +#: .\attendance\forms.py:278 msgid "Employee not chosen" msgstr "" -#: .\attendance\forms.py:333 +#: .\attendance\forms.py:336 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:56 #: .\attendance\templates\attendance\attendance_account\group_by.html:9 #: .\attendance\templates\attendance\attendance_account\overtime_list.html:8 @@ -1239,7 +1247,7 @@ msgstr "" msgid "Month" msgstr "" -#: .\attendance\forms.py:344 +#: .\attendance\forms.py:347 #: .\attendance\templates\attendance\attendance\attendance_filters.html:11 #: .\attendance\templates\attendance\attendance\group_by.html:14 #: .\attendance\templates\attendance\attendance\group_by.html:180 @@ -1299,7 +1307,7 @@ msgstr "" msgid "Employee" msgstr "" -#: .\attendance\forms.py:345 +#: .\attendance\forms.py:348 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:64 #: .\attendance\templates\attendance\attendance_account\group_by.html:10 #: .\attendance\templates\attendance\attendance_account\overtime_list.html:9 @@ -1307,7 +1315,7 @@ msgstr "" msgid "Year" msgstr "" -#: .\attendance\forms.py:346 +#: .\attendance\forms.py:349 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:51 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:68 #: .\attendance\templates\attendance\attendance_account\group_by.html:11 @@ -1317,7 +1325,7 @@ msgstr "" msgid "Hour Account" msgstr "" -#: .\attendance\forms.py:347 +#: .\attendance\forms.py:350 .\attendance\models.py:155 #: .\attendance\templates\attendance\attendance\group_by.html:25 #: .\attendance\templates\attendance\attendance\group_by.html:191 #: .\attendance\templates\attendance\attendance\group_by.html:353 @@ -1332,17 +1340,17 @@ msgstr "" msgid "Overtime" msgstr "" -#: .\attendance\forms.py:386 +#: .\attendance\forms.py:389 msgid "" "Do not Auto Validate Attendance if an Employee Works " "More Than this Amount of Duration" msgstr "" -#: .\attendance\forms.py:389 +#: .\attendance\forms.py:392 msgid "Minimum Hour to Approve Overtime" msgstr "" -#: .\attendance\forms.py:390 +#: .\attendance\forms.py:393 msgid "Maximum Allowed Overtime Per Day" msgstr "" @@ -1362,18 +1370,109 @@ msgstr "" msgid "You cannot choose a future date." msgstr "" -#: .\attendance\models.py:373 +#: .\attendance\models.py:109 +#: .\attendance\templates\attendance\attendance\attendance_filters.html:19 +#: .\attendance\templates\attendance\attendance\group_by.html:21 +#: .\attendance\templates\attendance\attendance\group_by.html:187 +#: .\attendance\templates\attendance\attendance\group_by.html:349 +#: .\attendance\templates\attendance\attendance\tab_content.html:27 +#: .\attendance\templates\attendance\attendance\tab_content.html:176 +#: .\attendance\templates\attendance\attendance\tab_content.html:334 +#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:19 +#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:19 +#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:19 +#: .\attendance\templates\attendance\own_attendance\attendances.html:13 +#: .\base\templates\base\rotating_shift\filters.html:57 +#: .\base\templates\base\rotating_work_type\filters.html:57 +#: .\base\templates\base\shift\schedule.html:14 +#: .\base\templates\base\shift\schedule_view.html:10 +#: .\base\templates\base\shift\shift.html:9 +#: .\base\templates\base\shift\shift.html:14 +#: .\base\templates\base\shift\shift_view.html:6 +#: .\base\templates\shift_request\shift_request_nav.html:115 +#: .\base\templates\work_type_request\work_type_request_nav.html:112 +#: .\employee\templates\employee_filters.html:54 +#: .\employee\templates\employee_personal_info\employee_list.html:30 +#: .\payroll\models\models.py:586 .\payroll\models\models.py:698 +#: .\payroll\templates\payroll\contract\contract_single_view.html:77 +msgid "Shift" +msgstr "" + +#: .\attendance\models.py:116 +#: .\attendance\templates\attendance\attendance\attendance_filters.html:39 +#: .\attendance\templates\attendance\attendance\group_by.html:22 +#: .\attendance\templates\attendance\attendance\group_by.html:188 +#: .\attendance\templates\attendance\attendance\group_by.html:350 +#: .\attendance\templates\attendance\attendance\tab_content.html:28 +#: .\attendance\templates\attendance\attendance\tab_content.html:177 +#: .\attendance\templates\attendance\attendance\tab_content.html:335 +#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:39 +#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:39 +#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:39 +#: .\attendance\templates\attendance\own_attendance\attendances.html:14 +#: .\base\templates\base\rotating_shift\filters.html:71 +#: .\base\templates\base\rotating_work_type\filters.html:71 +#: .\base\templates\base\work_type\work_type.html:9 +#: .\base\templates\base\work_type\work_type.html:14 +#: .\base\templates\base\work_type\work_type_view.html:6 +#: .\base\templates\shift_request\shift_request_nav.html:137 +#: .\base\templates\work_type_request\work_type_request_nav.html:134 +#: .\employee\templates\employee\profile\profile_view.html:335 +#: .\employee\templates\employee\profile\work_info.html:27 +#: .\employee\templates\employee\update_form\work_details.html:31 +#: .\employee\templates\employee\view\individual.html:339 +#: .\employee\templates\employee_filters.html:69 +#: .\employee\templates\employee_personal_info\employee_list.html:31 +#: .\payroll\models\models.py:588 .\payroll\models\models.py:722 +#: .\payroll\templates\payroll\contract\contract_single_view.html:83 +#: .\templates\settings.html:44 +msgid "Work Type" +msgstr "" + +#: .\attendance\models.py:121 +msgid "Attendance date" +msgstr "" + +#: .\attendance\models.py:127 +msgid "Check-in" +msgstr "" + +#: .\attendance\models.py:130 +msgid "Check-in date" +msgstr "" + +#: .\attendance\models.py:133 +msgid "Check-out" +msgstr "" + +#: .\attendance\models.py:136 +msgid "Check-out date" +msgstr "" + +#: .\attendance\models.py:143 +msgid "At work" +msgstr "" + +#: .\attendance\models.py:149 +msgid "Minimum hour" +msgstr "" + +#: .\attendance\models.py:158 .\attendance\views.py:1281 +msgid "Overtime approved" +msgstr "" + +#: .\attendance\models.py:379 #: .\attendance\templates\attendance\late_come_early_out\report_list.html:36 #: .\attendance\views.py:1451 msgid "Late Come" msgstr "" -#: .\attendance\models.py:374 +#: .\attendance\models.py:380 #: .\attendance\templates\attendance\late_come_early_out\report_list.html:38 msgid "Early Out" msgstr "" -#: .\attendance\models.py:422 +#: .\attendance\models.py:428 msgid "You cannot add more conditions." msgstr "" @@ -1418,33 +1517,6 @@ msgstr "" msgid "Department" msgstr "" -#: .\attendance\templates\attendance\attendance\attendance_filters.html:19 -#: .\attendance\templates\attendance\attendance\group_by.html:21 -#: .\attendance\templates\attendance\attendance\group_by.html:187 -#: .\attendance\templates\attendance\attendance\group_by.html:349 -#: .\attendance\templates\attendance\attendance\tab_content.html:27 -#: .\attendance\templates\attendance\attendance\tab_content.html:176 -#: .\attendance\templates\attendance\attendance\tab_content.html:334 -#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:19 -#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:19 -#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:19 -#: .\attendance\templates\attendance\own_attendance\attendances.html:13 -#: .\base\templates\base\rotating_shift\filters.html:57 -#: .\base\templates\base\rotating_work_type\filters.html:57 -#: .\base\templates\base\shift\schedule.html:14 -#: .\base\templates\base\shift\schedule_view.html:10 -#: .\base\templates\base\shift\shift.html:9 -#: .\base\templates\base\shift\shift.html:14 -#: .\base\templates\base\shift\shift_view.html:6 -#: .\base\templates\shift_request\shift_request_nav.html:115 -#: .\base\templates\work_type_request\work_type_request_nav.html:112 -#: .\employee\templates\employee_filters.html:54 -#: .\employee\templates\employee_personal_info\employee_list.html:30 -#: .\payroll\models\models.py:586 .\payroll\models\models.py:698 -#: .\payroll\templates\payroll\contract\contract_single_view.html:77 -msgid "Shift" -msgstr "" - #: .\attendance\templates\attendance\attendance\attendance_filters.html:23 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:23 #: .\attendance\templates\attendance\attendance_activity\activity_filters.html:23 @@ -1529,36 +1601,6 @@ msgstr "" msgid "Job Position" msgstr "" -#: .\attendance\templates\attendance\attendance\attendance_filters.html:39 -#: .\attendance\templates\attendance\attendance\group_by.html:22 -#: .\attendance\templates\attendance\attendance\group_by.html:188 -#: .\attendance\templates\attendance\attendance\group_by.html:350 -#: .\attendance\templates\attendance\attendance\tab_content.html:28 -#: .\attendance\templates\attendance\attendance\tab_content.html:177 -#: .\attendance\templates\attendance\attendance\tab_content.html:335 -#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:39 -#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:39 -#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:39 -#: .\attendance\templates\attendance\own_attendance\attendances.html:14 -#: .\base\templates\base\rotating_shift\filters.html:71 -#: .\base\templates\base\rotating_work_type\filters.html:71 -#: .\base\templates\base\work_type\work_type.html:9 -#: .\base\templates\base\work_type\work_type.html:14 -#: .\base\templates\base\work_type\work_type_view.html:6 -#: .\base\templates\shift_request\shift_request_nav.html:137 -#: .\base\templates\work_type_request\work_type_request_nav.html:134 -#: .\employee\templates\employee\profile\profile_view.html:335 -#: .\employee\templates\employee\profile\work_info.html:27 -#: .\employee\templates\employee\update_form\work_details.html:31 -#: .\employee\templates\employee\view\individual.html:339 -#: .\employee\templates\employee_filters.html:69 -#: .\employee\templates\employee_personal_info\employee_list.html:31 -#: .\payroll\models\models.py:588 .\payroll\models\models.py:722 -#: .\payroll\templates\payroll\contract\contract_single_view.html:83 -#: .\templates\settings.html:44 -msgid "Work Type" -msgstr "" - #: .\attendance\templates\attendance\attendance\attendance_filters.html:43 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:43 #: .\attendance\templates\attendance\attendance_activity\activity_filters.html:43 @@ -2096,10 +2138,6 @@ msgstr "" msgid "Attendance validated." msgstr "" -#: .\attendance\views.py:1281 -msgid "Overtime approved" -msgstr "" - #: .\attendance\views.py:1450 msgid "On Time" msgstr "" @@ -2942,292 +2980,296 @@ msgstr "" msgid "EMPLOYEE" msgstr "" -#: .\base\translator.py:20 .\base\translator.py:90 +#: .\base\translator.py:20 +msgid "PAYROLL" +msgstr "" + +#: .\base\translator.py:21 .\base\translator.py:91 msgid "ATTENDANCE" msgstr "" -#: .\base\translator.py:21 +#: .\base\translator.py:22 msgid "LEAVE" msgstr "" -#: .\base\translator.py:22 .\base\translator.py:91 +#: .\base\translator.py:23 .\base\translator.py:92 msgid "ASSET" msgstr "" -#: .\base\translator.py:23 +#: .\base\translator.py:24 msgid "Your asset request approved!." msgstr "" -#: .\base\translator.py:24 +#: .\base\translator.py:25 msgid "Your asset request rejected!." msgstr "" -#: .\base\translator.py:25 +#: .\base\translator.py:26 msgid "You are added to rotating work type" msgstr "" -#: .\base\translator.py:26 +#: .\base\translator.py:27 msgid "You are added to rotating shift" msgstr "" -#: .\base\translator.py:27 +#: .\base\translator.py:28 msgid "Your work type request has been canceled." msgstr "" -#: .\base\translator.py:28 +#: .\base\translator.py:29 msgid "Your work type request has been approved." msgstr "" -#: .\base\translator.py:29 +#: .\base\translator.py:30 msgid "Your work type request has been deleted." msgstr "" -#: .\base\translator.py:30 +#: .\base\translator.py:31 msgid "Your shift request has been canceled." msgstr "" -#: .\base\translator.py:31 +#: .\base\translator.py:32 msgid "Your shift request has been approved." msgstr "" -#: .\base\translator.py:32 +#: .\base\translator.py:33 msgid "Your shift request has been deleted." msgstr "" -#: .\base\translator.py:33 +#: .\base\translator.py:34 msgid "Your work details has been updated." msgstr "" -#: .\base\translator.py:34 +#: .\base\translator.py:35 msgid "You have a new leave request to validate." msgstr "" -#: .\base\translator.py:35 +#: .\base\translator.py:36 msgid "New leave type is assigned to you" msgstr "" -#: .\base\translator.py:36 +#: .\base\translator.py:37 msgid "Your Leave request has been cancelled" msgstr "" -#: .\base\translator.py:37 +#: .\base\translator.py:38 msgid "Your Leave request has been approved" msgstr "" -#: .\base\translator.py:38 +#: .\base\translator.py:39 msgid "You are chosen as onboarding stage manager" msgstr "" -#: .\base\translator.py:39 +#: .\base\translator.py:40 msgid "You are chosen as onboarding task manager" msgstr "" -#: .\base\translator.py:40 +#: .\base\translator.py:41 msgid "You got an OKR!." msgstr "" -#: .\base\translator.py:41 +#: .\base\translator.py:42 msgid "You have received feedback!" msgstr "" -#: .\base\translator.py:42 +#: .\base\translator.py:43 msgid "You have been assigned as a manager in a feedback!" msgstr "" -#: .\base\translator.py:43 +#: .\base\translator.py:44 msgid "You have been assigned as a subordinate in a feedback!" msgstr "" -#: .\base\translator.py:44 +#: .\base\translator.py:45 msgid "You have been assigned as a colleague in a feedback!" msgstr "" -#: .\base\translator.py:45 +#: .\base\translator.py:46 msgid "You are chosen as one of recruitment manager" msgstr "" -#: .\base\translator.py:46 +#: .\base\translator.py:47 msgid "Your attendance for the date " msgstr "" -#: .\base\translator.py:47 +#: .\base\translator.py:48 msgid " is validated" msgstr "" -#: .\base\translator.py:48 +#: .\base\translator.py:49 msgid "Select" msgstr "" -#: .\base\translator.py:49 +#: .\base\translator.py:50 msgid "January" msgstr "" -#: .\base\translator.py:50 +#: .\base\translator.py:51 msgid "February" msgstr "" -#: .\base\translator.py:51 +#: .\base\translator.py:52 msgid "March" msgstr "" -#: .\base\translator.py:52 +#: .\base\translator.py:53 msgid "April" msgstr "" -#: .\base\translator.py:53 +#: .\base\translator.py:54 msgid "May" msgstr "" -#: .\base\translator.py:54 +#: .\base\translator.py:55 msgid "June" msgstr "" -#: .\base\translator.py:55 +#: .\base\translator.py:56 msgid "July" msgstr "" -#: .\base\translator.py:56 +#: .\base\translator.py:57 msgid "August" msgstr "" -#: .\base\translator.py:57 +#: .\base\translator.py:58 msgid "September" msgstr "" -#: .\base\translator.py:58 +#: .\base\translator.py:59 msgid "October" msgstr "" -#: .\base\translator.py:59 +#: .\base\translator.py:60 msgid "November" msgstr "" -#: .\base\translator.py:60 +#: .\base\translator.py:61 msgid "December" msgstr "" -#: .\base\translator.py:61 +#: .\base\translator.py:62 msgid "One time date" msgstr "" -#: .\base\translator.py:62 +#: .\base\translator.py:63 msgid "Is condition based" msgstr "" -#: .\base\translator.py:63 +#: .\base\translator.py:64 msgid "Is taxable" msgstr "" -#: .\base\translator.py:64 +#: .\base\translator.py:65 msgid "Is fixed" msgstr "" -#: .\base\translator.py:65 +#: .\base\translator.py:66 msgid "Value" msgstr "" -#: .\base\translator.py:66 +#: .\base\translator.py:67 msgid "If choice" msgstr "" -#: .\base\translator.py:67 .\base\translator.py:84 +#: .\base\translator.py:68 .\base\translator.py:85 msgid "Is tax" msgstr "" -#: .\base\translator.py:68 +#: .\base\translator.py:69 msgid "If amount" msgstr "" -#: .\base\translator.py:69 +#: .\base\translator.py:70 msgid "If condition" msgstr "" -#: .\base\translator.py:70 +#: .\base\translator.py:71 msgid "Employer rate" msgstr "" -#: .\base\translator.py:71 +#: .\base\translator.py:72 msgid "Contract name" msgstr "" -#: .\base\translator.py:72 +#: .\base\translator.py:73 msgid "Contract start date" msgstr "" -#: .\base\translator.py:73 +#: .\base\translator.py:74 msgid "Contract end date" msgstr "" -#: .\base\translator.py:74 +#: .\base\translator.py:75 msgid "Wage type" msgstr "" -#: .\base\translator.py:75 +#: .\base\translator.py:76 msgid "Calculate daily leave amount" msgstr "" -#: .\base\translator.py:76 +#: .\base\translator.py:77 msgid "Deduction for one leave amount" msgstr "" -#: .\base\translator.py:77 +#: .\base\translator.py:78 msgid "Deduct leave from basic pay" msgstr "" -#: .\base\translator.py:78 +#: .\base\translator.py:79 msgid "Job role" msgstr "" -#: .\base\translator.py:79 +#: .\base\translator.py:80 msgid "Work type" msgstr "" -#: .\base\translator.py:80 +#: .\base\translator.py:81 msgid "Pay frequency" msgstr "" -#: .\base\translator.py:81 .\payroll\models\models.py:71 +#: .\base\translator.py:82 .\payroll\models\models.py:71 #: .\payroll\models\tax_models.py:42 msgid "Filing status" msgstr "" -#: .\base\translator.py:82 +#: .\base\translator.py:83 msgid "Contract status" msgstr "" -#: .\base\translator.py:83 +#: .\base\translator.py:84 msgid "Contract document" msgstr "" -#: .\base\translator.py:85 +#: .\base\translator.py:86 msgid "Update compensation" msgstr "" -#: .\base\translator.py:86 +#: .\base\translator.py:87 msgid "Is pretax" msgstr "" -#: .\base\translator.py:87 +#: .\base\translator.py:88 msgid "DASHBOARD" msgstr "" -#: .\base\translator.py:88 +#: .\base\translator.py:89 msgid "SHIFT REQUESTS" msgstr "" -#: .\base\translator.py:89 +#: .\base\translator.py:90 msgid "WORK TYPE REQUESTS" msgstr "" -#: .\base\translator.py:92 +#: .\base\translator.py:93 msgid "Single" msgstr "" -#: .\base\translator.py:93 +#: .\base\translator.py:94 msgid "Married" msgstr "" -#: .\base\translator.py:94 +#: .\base\translator.py:95 msgid "Divorced" msgstr "" @@ -4447,14 +4489,6 @@ msgstr "" msgid "Leave types" msgstr "" -#: .\leave\templates\leave\leave-assign-form.html:22 -#: .\leave\templates\leave\leave-assign-one-form.html:18 -#: .\leave\templates\leave\leave-request-form.html:22 -#: .\leave\templates\leave\request-update-form.html:25 -#: .\templates\sidebar.html:99 -msgid "Employees" -msgstr "" - #: .\leave\templates\leave\leave-request-form.html:32 #: .\leave\templates\leave\request-update-form.html:35 #: .\leave\templates\leave\user-request-form.html:24 @@ -6178,7 +6212,7 @@ msgstr "" #: .\pms\templates\dashboard\pms_dashboard.html:77 #: .\templates\dashboard.html:195 -msgid "Feedack Status" +msgid "Feedback Status" msgstr "" #: .\pms\templates\dashboard\pms_dashboard.html:100 @@ -6573,150 +6607,150 @@ msgstr "" msgid "Objective %(objective)s deleted" msgstr "" -#: .\pms\views.py:492 +#: .\pms\views.py:495 #, python-format msgid "Objective %(objective)s status updated" msgstr "" -#: .\pms\views.py:514 +#: .\pms\views.py:517 msgid "Status has been updated" msgstr "" -#: .\pms\views.py:538 +#: .\pms\views.py:541 #, python-format msgid "Current value of %(employee_key_result)s updated" msgstr "" -#: .\pms\views.py:543 +#: .\pms\views.py:546 msgid "Current value is greater than target value" msgstr "" -#: .\pms\views.py:545 +#: .\pms\views.py:548 msgid "Error occurred during current value updation" msgstr "" -#: .\pms\views.py:562 +#: .\pms\views.py:565 msgid "Objective un-archived successfully!." msgstr "" -#: .\pms\views.py:566 +#: .\pms\views.py:569 msgid "Objective archived successfully!." msgstr "" -#: .\pms\views.py:604 .\pms\views.py:656 +#: .\pms\views.py:607 .\pms\views.py:659 msgid "Key result created" msgstr "" -#: .\pms\views.py:629 +#: .\pms\views.py:632 msgid "Key results created" msgstr "" -#: .\pms\views.py:691 +#: .\pms\views.py:694 msgid "Key result updated" msgstr "" -#: .\pms\views.py:789 +#: .\pms\views.py:792 msgid "Feedback created successfully." msgstr "" -#: .\pms\views.py:1087 +#: .\pms\views.py:1090 msgid "You are not allowed to answer" msgstr "" -#: .\pms\views.py:1102 +#: .\pms\views.py:1105 msgid "Feedback already answered" msgstr "" -#: .\pms\views.py:1153 +#: .\pms\views.py:1156 #, python-format msgid "Feedback %(review_cycle)s has been answered successfully!." msgstr "" -#: .\pms\views.py:1178 +#: .\pms\views.py:1181 msgid "Feedback is not answered yet" msgstr "" -#: .\pms\views.py:1206 +#: .\pms\views.py:1209 #, python-format msgid "Feedback %(review_cycle)s deleted successfully!" msgstr "" -#: .\pms\views.py:1213 +#: .\pms\views.py:1216 #, python-format msgid "Feedback %(review_cycle)s is ongoing you you can archive it!" msgstr "" -#: .\pms\views.py:1233 +#: .\pms\views.py:1236 msgid "Feedback is already started" msgstr "" -#: .\pms\views.py:1239 +#: .\pms\views.py:1242 #, python-format msgid "Feedback status updated to %(status)s" msgstr "" -#: .\pms\views.py:1244 +#: .\pms\views.py:1247 #, python-format msgid "Error occurred during status update to %(status)s" msgstr "" -#: .\pms\views.py:1261 +#: .\pms\views.py:1264 msgid "Feedback un-archived successfully!." msgstr "" -#: .\pms\views.py:1265 +#: .\pms\views.py:1268 msgid "Feedback archived successfully!." msgstr "" -#: .\pms\views.py:1285 +#: .\pms\views.py:1288 msgid "Completed" msgstr "" -#: .\pms\views.py:1285 +#: .\pms\views.py:1288 msgid "Not-completed" msgstr "" -#: .\pms\views.py:1308 +#: .\pms\views.py:1311 msgid "Question template is used in feedback." msgstr "" -#: .\pms\views.py:1328 .\pms\views.py:1330 +#: .\pms\views.py:1331 .\pms\views.py:1333 msgid "Question created successfully." msgstr "" -#: .\pms\views.py:1333 +#: .\pms\views.py:1336 msgid "Error occurred during question creation!" msgstr "" -#: .\pms\views.py:1403 .\pms\views.py:1410 +#: .\pms\views.py:1406 .\pms\views.py:1413 msgid "Question updated successfully." msgstr "" -#: .\pms\views.py:1444 +#: .\pms\views.py:1447 msgid "Question deleted successfully!" msgstr "" -#: .\pms\views.py:1450 +#: .\pms\views.py:1453 msgid "Failed to delete question: Question template is in use." msgstr "" -#: .\pms\views.py:1550 +#: .\pms\views.py:1553 msgid "Question template updated" msgstr "" -#: .\pms\views.py:1571 +#: .\pms\views.py:1574 msgid "This template is using in a feedback" msgstr "" -#: .\pms\views.py:1608 +#: .\pms\views.py:1611 msgid "Period creation was Successful " msgstr "" -#: .\pms\views.py:1636 +#: .\pms\views.py:1639 msgid "Period updated Successfully. " msgstr "" -#: .\pms\views.py:1659 +#: .\pms\views.py:1662 msgid "Period deleted successfully." msgstr "" diff --git a/horilla/locale/es/LC_MESSAGES/django.po b/horilla/locale/es/LC_MESSAGES/django.po index 3784bb1ce..26a67ebf5 100644 --- a/horilla/locale/es/LC_MESSAGES/django.po +++ b/horilla/locale/es/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-08-01 12:27+0530\n" +"POT-Creation-Date: 2023-08-02 12:41+0530\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -1219,23 +1219,31 @@ msgstr "Número de lote en uso" msgid "Batch number deleted" msgstr "Número de lote eliminado" -#: .\attendance\forms.py:62 .\base\forms.py:160 .\base\forms.py:204 +#: .\attendance\forms.py:65 .\base\forms.py:160 .\base\forms.py:204 #: .\payroll\forms\tax_forms.py:41 .\recruitment\forms.py:53 #: .\recruitment\forms.py:96 #, python-brace-format msgid "---Choose {label}---" msgstr "---Elige {label}---" -#: .\attendance\forms.py:270 +#: .\attendance\forms.py:171 .\leave\templates\leave\leave-assign-form.html:22 +#: .\leave\templates\leave\leave-assign-one-form.html:18 +#: .\leave\templates\leave\leave-request-form.html:22 +#: .\leave\templates\leave\request-update-form.html:25 +#: .\templates\sidebar.html:99 +msgid "Employees" +msgstr "Empleados" + +#: .\attendance\forms.py:273 #, python-format msgid "Attendance for the date is already exist for %(emp)s" msgstr "La asistencia para la fecha ya existe para %(emp)s" -#: .\attendance\forms.py:275 +#: .\attendance\forms.py:278 msgid "Employee not chosen" msgstr "Empleada no elegida" -#: .\attendance\forms.py:333 +#: .\attendance\forms.py:336 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:56 #: .\attendance\templates\attendance\attendance_account\group_by.html:9 #: .\attendance\templates\attendance\attendance_account\overtime_list.html:8 @@ -1243,7 +1251,7 @@ msgstr "Empleada no elegida" msgid "Month" msgstr "Mese" -#: .\attendance\forms.py:344 +#: .\attendance\forms.py:347 #: .\attendance\templates\attendance\attendance\attendance_filters.html:11 #: .\attendance\templates\attendance\attendance\group_by.html:14 #: .\attendance\templates\attendance\attendance\group_by.html:180 @@ -1303,7 +1311,7 @@ msgstr "Mese" msgid "Employee" msgstr "Empleado" -#: .\attendance\forms.py:345 +#: .\attendance\forms.py:348 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:64 #: .\attendance\templates\attendance\attendance_account\group_by.html:10 #: .\attendance\templates\attendance\attendance_account\overtime_list.html:9 @@ -1311,7 +1319,7 @@ msgstr "Empleado" msgid "Year" msgstr "Año" -#: .\attendance\forms.py:346 +#: .\attendance\forms.py:349 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:51 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:68 #: .\attendance\templates\attendance\attendance_account\group_by.html:11 @@ -1321,7 +1329,7 @@ msgstr "Año" msgid "Hour Account" msgstr "Hora Cuenta" -#: .\attendance\forms.py:347 +#: .\attendance\forms.py:350 .\attendance\models.py:155 #: .\attendance\templates\attendance\attendance\group_by.html:25 #: .\attendance\templates\attendance\attendance\group_by.html:191 #: .\attendance\templates\attendance\attendance\group_by.html:353 @@ -1336,7 +1344,7 @@ msgstr "Hora Cuenta" msgid "Overtime" msgstr "Coneltiempo" -#: .\attendance\forms.py:386 +#: .\attendance\forms.py:389 msgid "" "Do not Auto Validate Attendance if an Employee Works " "More Than this Amount of Duration" @@ -1344,11 +1352,11 @@ msgstr "" "No validar automáticamente la asistencia si un empleado trabajaMás que esta " "cantidad de duración" -#: .\attendance\forms.py:389 +#: .\attendance\forms.py:392 msgid "Minimum Hour to Approve Overtime" msgstr "Hora mínima para aprobar horas extras" -#: .\attendance\forms.py:390 +#: .\attendance\forms.py:393 msgid "Maximum Allowed Overtime Per Day" msgstr "Máximo de horas extra permitidas por día" @@ -1368,18 +1376,109 @@ msgstr "Formato inválido" msgid "You cannot choose a future date." msgstr "No puede elegir una fecha futura." -#: .\attendance\models.py:373 +#: .\attendance\models.py:109 +#: .\attendance\templates\attendance\attendance\attendance_filters.html:19 +#: .\attendance\templates\attendance\attendance\group_by.html:21 +#: .\attendance\templates\attendance\attendance\group_by.html:187 +#: .\attendance\templates\attendance\attendance\group_by.html:349 +#: .\attendance\templates\attendance\attendance\tab_content.html:27 +#: .\attendance\templates\attendance\attendance\tab_content.html:176 +#: .\attendance\templates\attendance\attendance\tab_content.html:334 +#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:19 +#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:19 +#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:19 +#: .\attendance\templates\attendance\own_attendance\attendances.html:13 +#: .\base\templates\base\rotating_shift\filters.html:57 +#: .\base\templates\base\rotating_work_type\filters.html:57 +#: .\base\templates\base\shift\schedule.html:14 +#: .\base\templates\base\shift\schedule_view.html:10 +#: .\base\templates\base\shift\shift.html:9 +#: .\base\templates\base\shift\shift.html:14 +#: .\base\templates\base\shift\shift_view.html:6 +#: .\base\templates\shift_request\shift_request_nav.html:115 +#: .\base\templates\work_type_request\work_type_request_nav.html:112 +#: .\employee\templates\employee_filters.html:54 +#: .\employee\templates\employee_personal_info\employee_list.html:30 +#: .\payroll\models\models.py:586 .\payroll\models\models.py:698 +#: .\payroll\templates\payroll\contract\contract_single_view.html:77 +msgid "Shift" +msgstr "Cambio" + +#: .\attendance\models.py:116 +#: .\attendance\templates\attendance\attendance\attendance_filters.html:39 +#: .\attendance\templates\attendance\attendance\group_by.html:22 +#: .\attendance\templates\attendance\attendance\group_by.html:188 +#: .\attendance\templates\attendance\attendance\group_by.html:350 +#: .\attendance\templates\attendance\attendance\tab_content.html:28 +#: .\attendance\templates\attendance\attendance\tab_content.html:177 +#: .\attendance\templates\attendance\attendance\tab_content.html:335 +#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:39 +#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:39 +#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:39 +#: .\attendance\templates\attendance\own_attendance\attendances.html:14 +#: .\base\templates\base\rotating_shift\filters.html:71 +#: .\base\templates\base\rotating_work_type\filters.html:71 +#: .\base\templates\base\work_type\work_type.html:9 +#: .\base\templates\base\work_type\work_type.html:14 +#: .\base\templates\base\work_type\work_type_view.html:6 +#: .\base\templates\shift_request\shift_request_nav.html:137 +#: .\base\templates\work_type_request\work_type_request_nav.html:134 +#: .\employee\templates\employee\profile\profile_view.html:335 +#: .\employee\templates\employee\profile\work_info.html:27 +#: .\employee\templates\employee\update_form\work_details.html:31 +#: .\employee\templates\employee\view\individual.html:339 +#: .\employee\templates\employee_filters.html:69 +#: .\employee\templates\employee_personal_info\employee_list.html:31 +#: .\payroll\models\models.py:588 .\payroll\models\models.py:722 +#: .\payroll\templates\payroll\contract\contract_single_view.html:83 +#: .\templates\settings.html:44 +msgid "Work Type" +msgstr "Trabajo Tipo" + +#: .\attendance\models.py:121 +msgid "Attendance date" +msgstr "Asistencia Datum" + +#: .\attendance\models.py:127 +msgid "Check-in" +msgstr "Registrarse" + +#: .\attendance\models.py:130 +msgid "Check-in date" +msgstr "Registrarse Fecha" + +#: .\attendance\models.py:133 +msgid "Check-out" +msgstr "Registrafuera" + +#: .\attendance\models.py:136 +msgid "Check-out date" +msgstr "Registrafuera Fecha" + +#: .\attendance\models.py:143 +msgid "At work" +msgstr "En trabajo" + +#: .\attendance\models.py:149 +msgid "Minimum hour" +msgstr "Mínima Hora" + +#: .\attendance\models.py:158 .\attendance\views.py:1281 +msgid "Overtime approved" +msgstr "Horas extras aprobadas" + +#: .\attendance\models.py:379 #: .\attendance\templates\attendance\late_come_early_out\report_list.html:36 #: .\attendance\views.py:1451 msgid "Late Come" msgstr "Tarde Venir" -#: .\attendance\models.py:374 +#: .\attendance\models.py:380 #: .\attendance\templates\attendance\late_come_early_out\report_list.html:38 msgid "Early Out" msgstr "Salida anticipada" -#: .\attendance\models.py:422 +#: .\attendance\models.py:428 msgid "You cannot add more conditions." msgstr "No puede agregar más condiciones." @@ -1424,33 +1523,6 @@ msgstr "Trabajo Información" msgid "Department" msgstr "Departamento" -#: .\attendance\templates\attendance\attendance\attendance_filters.html:19 -#: .\attendance\templates\attendance\attendance\group_by.html:21 -#: .\attendance\templates\attendance\attendance\group_by.html:187 -#: .\attendance\templates\attendance\attendance\group_by.html:349 -#: .\attendance\templates\attendance\attendance\tab_content.html:27 -#: .\attendance\templates\attendance\attendance\tab_content.html:176 -#: .\attendance\templates\attendance\attendance\tab_content.html:334 -#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:19 -#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:19 -#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:19 -#: .\attendance\templates\attendance\own_attendance\attendances.html:13 -#: .\base\templates\base\rotating_shift\filters.html:57 -#: .\base\templates\base\rotating_work_type\filters.html:57 -#: .\base\templates\base\shift\schedule.html:14 -#: .\base\templates\base\shift\schedule_view.html:10 -#: .\base\templates\base\shift\shift.html:9 -#: .\base\templates\base\shift\shift.html:14 -#: .\base\templates\base\shift\shift_view.html:6 -#: .\base\templates\shift_request\shift_request_nav.html:115 -#: .\base\templates\work_type_request\work_type_request_nav.html:112 -#: .\employee\templates\employee_filters.html:54 -#: .\employee\templates\employee_personal_info\employee_list.html:30 -#: .\payroll\models\models.py:586 .\payroll\models\models.py:698 -#: .\payroll\templates\payroll\contract\contract_single_view.html:77 -msgid "Shift" -msgstr "Cambio" - #: .\attendance\templates\attendance\attendance\attendance_filters.html:23 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:23 #: .\attendance\templates\attendance\attendance_activity\activity_filters.html:23 @@ -1535,36 +1607,6 @@ msgstr "Compañía" msgid "Job Position" msgstr "Puestos de trabajo" -#: .\attendance\templates\attendance\attendance\attendance_filters.html:39 -#: .\attendance\templates\attendance\attendance\group_by.html:22 -#: .\attendance\templates\attendance\attendance\group_by.html:188 -#: .\attendance\templates\attendance\attendance\group_by.html:350 -#: .\attendance\templates\attendance\attendance\tab_content.html:28 -#: .\attendance\templates\attendance\attendance\tab_content.html:177 -#: .\attendance\templates\attendance\attendance\tab_content.html:335 -#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:39 -#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:39 -#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:39 -#: .\attendance\templates\attendance\own_attendance\attendances.html:14 -#: .\base\templates\base\rotating_shift\filters.html:71 -#: .\base\templates\base\rotating_work_type\filters.html:71 -#: .\base\templates\base\work_type\work_type.html:9 -#: .\base\templates\base\work_type\work_type.html:14 -#: .\base\templates\base\work_type\work_type_view.html:6 -#: .\base\templates\shift_request\shift_request_nav.html:137 -#: .\base\templates\work_type_request\work_type_request_nav.html:134 -#: .\employee\templates\employee\profile\profile_view.html:335 -#: .\employee\templates\employee\profile\work_info.html:27 -#: .\employee\templates\employee\update_form\work_details.html:31 -#: .\employee\templates\employee\view\individual.html:339 -#: .\employee\templates\employee_filters.html:69 -#: .\employee\templates\employee_personal_info\employee_list.html:31 -#: .\payroll\models\models.py:588 .\payroll\models\models.py:722 -#: .\payroll\templates\payroll\contract\contract_single_view.html:83 -#: .\templates\settings.html:44 -msgid "Work Type" -msgstr "Trabajo Tipo" - #: .\attendance\templates\attendance\attendance\attendance_filters.html:43 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:43 #: .\attendance\templates\attendance\attendance_activity\activity_filters.html:43 @@ -2102,10 +2144,6 @@ msgstr "No puede eliminar esta condición de validación." msgid "Attendance validated." msgstr "Asistencia validada." -#: .\attendance\views.py:1281 -msgid "Overtime approved" -msgstr "Horas extras aprobadas" - #: .\attendance\views.py:1450 msgid "On Time" msgstr "A tiempo" @@ -2950,292 +2988,296 @@ msgstr "INDUCCIÓN" msgid "EMPLOYEE" msgstr "EMPLEADO" -#: .\base\translator.py:20 .\base\translator.py:90 +#: .\base\translator.py:20 +msgid "PAYROLL" +msgstr "NÓMINA DE SUELDOS" + +#: .\base\translator.py:21 .\base\translator.py:91 msgid "ATTENDANCE" msgstr "ASISTENCIA" -#: .\base\translator.py:21 +#: .\base\translator.py:22 msgid "LEAVE" msgstr "DEJAR" -#: .\base\translator.py:22 .\base\translator.py:91 +#: .\base\translator.py:23 .\base\translator.py:92 msgid "ASSET" msgstr "ACTIVO" -#: .\base\translator.py:23 +#: .\base\translator.py:24 msgid "Your asset request approved!." msgstr "¡Su solicitud de activos fue aprobada!" -#: .\base\translator.py:24 +#: .\base\translator.py:25 msgid "Your asset request rejected!." msgstr "¡Su solicitud de activos fue rechazada!" -#: .\base\translator.py:25 +#: .\base\translator.py:26 msgid "You are added to rotating work type" msgstr "Está agregado al tipo de trabajo rotativo" -#: .\base\translator.py:26 +#: .\base\translator.py:27 msgid "You are added to rotating shift" msgstr "Estás agregado al turno rotativo" -#: .\base\translator.py:27 +#: .\base\translator.py:28 msgid "Your work type request has been canceled." msgstr "Su solicitud de tipo de trabajo ha sido cancelada." -#: .\base\translator.py:28 +#: .\base\translator.py:29 msgid "Your work type request has been approved." msgstr "Su solicitud de tipo de trabajo ha sido aprobada." -#: .\base\translator.py:29 +#: .\base\translator.py:30 msgid "Your work type request has been deleted." msgstr "Su solicitud de tipo de trabajo ha sido eliminada." -#: .\base\translator.py:30 +#: .\base\translator.py:31 msgid "Your shift request has been canceled." msgstr "Su solicitud de turno ha sido cancelada." -#: .\base\translator.py:31 +#: .\base\translator.py:32 msgid "Your shift request has been approved." msgstr "Su solicitud de turno ha sido aprobada." -#: .\base\translator.py:32 +#: .\base\translator.py:33 msgid "Your shift request has been deleted." msgstr "Su solicitud de turno ha sido eliminada." -#: .\base\translator.py:33 +#: .\base\translator.py:34 msgid "Your work details has been updated." msgstr "Los detalles de tu trabajo han sido actualizados." -#: .\base\translator.py:34 +#: .\base\translator.py:35 msgid "You have a new leave request to validate." msgstr "Tienes una nueva dejar solicitud de para validar." -#: .\base\translator.py:35 +#: .\base\translator.py:36 msgid "New leave type is assigned to you" msgstr "Se le ha asignado un nuevo dejar tipo" -#: .\base\translator.py:36 +#: .\base\translator.py:37 msgid "Your Leave request has been cancelled" msgstr "Su solicitud de dejar ha sido cancelada" -#: .\base\translator.py:37 +#: .\base\translator.py:38 msgid "Your Leave request has been approved" msgstr "Su solicitud de dejar ha sido aprobada" -#: .\base\translator.py:38 +#: .\base\translator.py:39 msgid "You are chosen as onboarding stage manager" msgstr "Usted ha sido elegido como director de escena de incorporación" -#: .\base\translator.py:39 +#: .\base\translator.py:40 msgid "You are chosen as onboarding task manager" msgstr "Usted ha sido elegido como administrador de tareas de incorporación" -#: .\base\translator.py:40 +#: .\base\translator.py:41 msgid "You got an OKR!." msgstr "¡Obtuviste un OCR!" -#: .\base\translator.py:41 +#: .\base\translator.py:42 msgid "You have received feedback!" msgstr "¡Ha recibido comentarios!" -#: .\base\translator.py:42 +#: .\base\translator.py:43 msgid "You have been assigned as a manager in a feedback!" msgstr "¡Se le ha asignado como administrador en un comentario!" -#: .\base\translator.py:43 +#: .\base\translator.py:44 msgid "You have been assigned as a subordinate in a feedback!" msgstr "¡Ha sido asignado como subordinado en una retroalimentación!" -#: .\base\translator.py:44 +#: .\base\translator.py:45 msgid "You have been assigned as a colleague in a feedback!" msgstr "¡Ha sido asignado como colega en un comentario!" -#: .\base\translator.py:45 +#: .\base\translator.py:46 msgid "You are chosen as one of recruitment manager" msgstr "Usted es elegido como uno de los gerentes de reclutamiento" -#: .\base\translator.py:46 +#: .\base\translator.py:47 msgid "Your attendance for the date " msgstr "Se valida tu asistencia para la fecha" -#: .\base\translator.py:47 +#: .\base\translator.py:48 msgid " is validated" msgstr "Validado" -#: .\base\translator.py:48 +#: .\base\translator.py:49 msgid "Select" msgstr "Seleccionar" -#: .\base\translator.py:49 +#: .\base\translator.py:50 msgid "January" msgstr "Enero" -#: .\base\translator.py:50 +#: .\base\translator.py:51 msgid "February" msgstr "Febrero" -#: .\base\translator.py:51 +#: .\base\translator.py:52 msgid "March" msgstr "Marzo" -#: .\base\translator.py:52 +#: .\base\translator.py:53 msgid "April" msgstr "Abril" -#: .\base\translator.py:53 +#: .\base\translator.py:54 msgid "May" msgstr "Mayo" -#: .\base\translator.py:54 +#: .\base\translator.py:55 msgid "June" msgstr "Junio" -#: .\base\translator.py:55 +#: .\base\translator.py:56 msgid "July" msgstr "Julio" -#: .\base\translator.py:56 +#: .\base\translator.py:57 msgid "August" msgstr "Agosto" -#: .\base\translator.py:57 +#: .\base\translator.py:58 msgid "September" msgstr "Septiembre" -#: .\base\translator.py:58 +#: .\base\translator.py:59 msgid "October" msgstr "Octubre" -#: .\base\translator.py:59 +#: .\base\translator.py:60 msgid "November" msgstr "Noviembre" -#: .\base\translator.py:60 +#: .\base\translator.py:61 msgid "December" msgstr "Diciembre" -#: .\base\translator.py:61 +#: .\base\translator.py:62 msgid "One time date" msgstr "Fecha de una sola vez" -#: .\base\translator.py:62 +#: .\base\translator.py:63 msgid "Is condition based" msgstr "¿Está basado en la condición?" -#: .\base\translator.py:63 +#: .\base\translator.py:64 msgid "Is taxable" msgstr "está sujeto a impuestos" -#: .\base\translator.py:64 +#: .\base\translator.py:65 msgid "Is fixed" msgstr "Es fijo" -#: .\base\translator.py:65 +#: .\base\translator.py:66 msgid "Value" msgstr "Valor" -#: .\base\translator.py:66 +#: .\base\translator.py:67 msgid "If choice" msgstr "Si la elección" -#: .\base\translator.py:67 .\base\translator.py:84 +#: .\base\translator.py:68 .\base\translator.py:85 msgid "Is tax" msgstr "es impuesto" -#: .\base\translator.py:68 +#: .\base\translator.py:69 msgid "If amount" msgstr "si la cantidad" -#: .\base\translator.py:69 +#: .\base\translator.py:70 msgid "If condition" msgstr "Si condición" -#: .\base\translator.py:70 +#: .\base\translator.py:71 msgid "Employer rate" msgstr "Empleadora Tasa :" -#: .\base\translator.py:71 +#: .\base\translator.py:72 msgid "Contract name" msgstr "Contrato nombre" -#: .\base\translator.py:72 +#: .\base\translator.py:73 msgid "Contract start date" msgstr "Fecha de inicio del contrato" -#: .\base\translator.py:73 +#: .\base\translator.py:74 msgid "Contract end date" msgstr "fecha de finalización del contrato" -#: .\base\translator.py:74 +#: .\base\translator.py:75 msgid "Wage type" msgstr "Tipo de salario" -#: .\base\translator.py:75 +#: .\base\translator.py:76 msgid "Calculate daily leave amount" msgstr "Calcular la cantidad de vacaciones diarias" -#: .\base\translator.py:76 +#: .\base\translator.py:77 msgid "Deduction for one leave amount" msgstr "Importe de la deducción por un día de permiso" -#: .\base\translator.py:77 +#: .\base\translator.py:78 msgid "Deduct leave from basic pay" msgstr "Deducir la licencia del salario base" -#: .\base\translator.py:78 +#: .\base\translator.py:79 msgid "Job role" msgstr "Título profesional" -#: .\base\translator.py:79 +#: .\base\translator.py:80 msgid "Work type" msgstr "Trabajo tipo" -#: .\base\translator.py:80 +#: .\base\translator.py:81 msgid "Pay frequency" msgstr "Frecuencia de pago" -#: .\base\translator.py:81 .\payroll\models\models.py:71 +#: .\base\translator.py:82 .\payroll\models\models.py:71 #: .\payroll\models\tax_models.py:42 msgid "Filing status" msgstr "Estado civil" -#: .\base\translator.py:82 +#: .\base\translator.py:83 msgid "Contract status" msgstr "estado del contrato" -#: .\base\translator.py:83 +#: .\base\translator.py:84 msgid "Contract document" msgstr "Documento de contrato" -#: .\base\translator.py:85 +#: .\base\translator.py:86 msgid "Update compensation" msgstr "Actualizar compensación" -#: .\base\translator.py:86 +#: .\base\translator.py:87 msgid "Is pretax" msgstr "Is Pretax" -#: .\base\translator.py:87 +#: .\base\translator.py:88 msgid "DASHBOARD" msgstr "DASHBOARD" -#: .\base\translator.py:88 +#: .\base\translator.py:89 msgid "SHIFT REQUESTS" msgstr "SOLICITUDES TURNO" -#: .\base\translator.py:89 +#: .\base\translator.py:90 msgid "WORK TYPE REQUESTS" msgstr "SOLICITUDES DE TIPO TRABAJO" -#: .\base\translator.py:92 +#: .\base\translator.py:93 msgid "Single" msgstr "Soltero" -#: .\base\translator.py:93 +#: .\base\translator.py:94 msgid "Married" msgstr "Casado" -#: .\base\translator.py:94 +#: .\base\translator.py:95 msgid "Divorced" msgstr "Divorciado" @@ -4459,14 +4501,6 @@ msgstr "No Recurrenten" msgid "Leave types" msgstr "Dejar tipos" -#: .\leave\templates\leave\leave-assign-form.html:22 -#: .\leave\templates\leave\leave-assign-one-form.html:18 -#: .\leave\templates\leave\leave-request-form.html:22 -#: .\leave\templates\leave\request-update-form.html:25 -#: .\templates\sidebar.html:99 -msgid "Employees" -msgstr "Empleados" - #: .\leave\templates\leave\leave-request-form.html:32 #: .\leave\templates\leave\request-update-form.html:35 #: .\leave\templates\leave\user-request-form.html:24 @@ -6221,7 +6255,7 @@ msgstr "Clave Resultado Estado " #: .\pms\templates\dashboard\pms_dashboard.html:77 #: .\templates\dashboard.html:195 -msgid "Feedack Status" +msgid "Feedback Status" msgstr "Comentarios Estado" #: .\pms\templates\dashboard\pms_dashboard.html:100 @@ -6616,151 +6650,151 @@ msgstr "Objetivo %(objective)s Actualizado" msgid "Objective %(objective)s deleted" msgstr "Objetivo %(objective)s eliminado" -#: .\pms\views.py:492 +#: .\pms\views.py:495 #, python-format msgid "Objective %(objective)s status updated" msgstr "Estado del objetivo %(objective)s actualizado" -#: .\pms\views.py:514 +#: .\pms\views.py:517 msgid "Status has been updated" msgstr "El estado ha sido actualizado" -#: .\pms\views.py:538 +#: .\pms\views.py:541 #, python-format msgid "Current value of %(employee_key_result)s updated" msgstr "Valor actual de %(employee_key_result)s actualizado" -#: .\pms\views.py:543 +#: .\pms\views.py:546 msgid "Current value is greater than target value" msgstr "El valor actual es mayor que el valor objetivo" -#: .\pms\views.py:545 +#: .\pms\views.py:548 msgid "Error occurred during current value updation" msgstr "Ocurrió un error durante la actualización del valor actual" -#: .\pms\views.py:562 +#: .\pms\views.py:565 msgid "Objective un-archived successfully!." msgstr "¡Objetivo desarchivado con éxito!." -#: .\pms\views.py:566 +#: .\pms\views.py:569 msgid "Objective archived successfully!." msgstr "¡Objetivo archivado con éxito!." -#: .\pms\views.py:604 .\pms\views.py:656 +#: .\pms\views.py:607 .\pms\views.py:659 msgid "Key result created" msgstr "Clave resultado creado" -#: .\pms\views.py:629 +#: .\pms\views.py:632 msgid "Key results created" msgstr "Clave resultados creado" -#: .\pms\views.py:691 +#: .\pms\views.py:694 msgid "Key result updated" msgstr "Clave resultado actualizado" -#: .\pms\views.py:789 +#: .\pms\views.py:792 msgid "Feedback created successfully." msgstr "Comentarios creados con éxito." -#: .\pms\views.py:1087 +#: .\pms\views.py:1090 msgid "You are not allowed to answer" msgstr "no tienes permitido contestar" -#: .\pms\views.py:1102 +#: .\pms\views.py:1105 msgid "Feedback already answered" msgstr "Comentarios ya respondidos" -#: .\pms\views.py:1153 +#: .\pms\views.py:1156 #, python-format msgid "Feedback %(review_cycle)s has been answered successfully!." msgstr "¡El comentario %(review_cycle)s ha sido respondido con éxito!." -#: .\pms\views.py:1178 +#: .\pms\views.py:1181 msgid "Feedback is not answered yet" msgstr "La retroalimentación aún no ha sido respondida" -#: .\pms\views.py:1206 +#: .\pms\views.py:1209 #, python-format msgid "Feedback %(review_cycle)s deleted successfully!" msgstr "Comentarios %(review_cycle)s eliminados con éxito." -#: .\pms\views.py:1213 +#: .\pms\views.py:1216 #, python-format msgid "Feedback %(review_cycle)s is ongoing you you can archive it!" msgstr "Los comentarios %(review_cycle)s están en curso, ¡puedes archivarlos!" -#: .\pms\views.py:1233 +#: .\pms\views.py:1236 msgid "Feedback is already started" msgstr "La retroalimentación ya comenzó" -#: .\pms\views.py:1239 +#: .\pms\views.py:1242 #, python-format msgid "Feedback status updated to %(status)s" msgstr "Estado de comentarios actualizado a %(status)s" -#: .\pms\views.py:1244 +#: .\pms\views.py:1247 #, python-format msgid "Error occurred during status update to %(status)s" msgstr "Ocurrió un error durante la actualización de estado a %(status)s" -#: .\pms\views.py:1261 +#: .\pms\views.py:1264 msgid "Feedback un-archived successfully!." msgstr "¡Comentarios desarchivados con éxito!." -#: .\pms\views.py:1265 +#: .\pms\views.py:1268 msgid "Feedback archived successfully!." msgstr "Comentarios archivados con éxito!." -#: .\pms\views.py:1285 +#: .\pms\views.py:1288 msgid "Completed" msgstr "Completo" -#: .\pms\views.py:1285 +#: .\pms\views.py:1288 msgid "Not-completed" msgstr "No completa" -#: .\pms\views.py:1308 +#: .\pms\views.py:1311 msgid "Question template is used in feedback." msgstr "La plantilla de preguntas se utiliza en los comentarios." -#: .\pms\views.py:1328 .\pms\views.py:1330 +#: .\pms\views.py:1331 .\pms\views.py:1333 msgid "Question created successfully." msgstr "Pregunta creada con éxito." -#: .\pms\views.py:1333 +#: .\pms\views.py:1336 msgid "Error occurred during question creation!" msgstr "¡Ocurrió un error durante la creación de la pregunta!" -#: .\pms\views.py:1403 .\pms\views.py:1410 +#: .\pms\views.py:1406 .\pms\views.py:1413 msgid "Question updated successfully." msgstr "Pregunta actualizada correctamente." -#: .\pms\views.py:1444 +#: .\pms\views.py:1447 msgid "Question deleted successfully!" msgstr "¡Pregunta eliminada con éxito!" -#: .\pms\views.py:1450 +#: .\pms\views.py:1453 msgid "Failed to delete question: Question template is in use." msgstr "" "Error al eliminar la pregunta: la plantilla de la pregunta está en uso." -#: .\pms\views.py:1550 +#: .\pms\views.py:1553 msgid "Question template updated" msgstr "Plantilla de pregunta actualizada" -#: .\pms\views.py:1571 +#: .\pms\views.py:1574 msgid "This template is using in a feedback" msgstr "Esta plantilla se está utilizando en una retroalimentación" -#: .\pms\views.py:1608 +#: .\pms\views.py:1611 msgid "Period creation was Successful " msgstr "La creación del período fue exitosa" -#: .\pms\views.py:1636 +#: .\pms\views.py:1639 msgid "Period updated Successfully. " msgstr "Período actualizado con éxito." -#: .\pms\views.py:1659 +#: .\pms\views.py:1662 msgid "Period deleted successfully." msgstr "Período eliminado con éxito." @@ -7447,6 +7481,11 @@ msgstr "Activos Vista" msgid "Request and Allocation" msgstr "Solicitud y Asignación" +#, fuzzy +#~| msgid "Feedback Status" +#~ msgid "Feedack Status" +#~ msgstr "Comentarios Estado" + #~ msgid "None" #~ msgstr "Ninguno" @@ -7486,12 +7525,6 @@ msgstr "Solicitud y Asignación" #~ msgid "Is Tax" #~ msgstr "está sujeto a impuestos" -#~ msgid "Check-In Date" -#~ msgstr "Registrarse Fecha" - -#~ msgid "Check-Out Date" -#~ msgstr "Registrafuera Fecha" - #~ msgid "Badge ID must be unique." #~ msgstr "La identificación de la credencial debe ser única." diff --git a/horilla/locale/fr/LC_MESSAGES/django.po b/horilla/locale/fr/LC_MESSAGES/django.po index 83f9d188d..7c053cd44 100644 --- a/horilla/locale/fr/LC_MESSAGES/django.po +++ b/horilla/locale/fr/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-08-01 12:27+0530\n" +"POT-Creation-Date: 2023-08-02 12:41+0530\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -1220,23 +1220,31 @@ msgstr "Numéro de lot en cours d'utilisation" msgid "Batch number deleted" msgstr "Numéro de lot supprimé" -#: .\attendance\forms.py:62 .\base\forms.py:160 .\base\forms.py:204 +#: .\attendance\forms.py:65 .\base\forms.py:160 .\base\forms.py:204 #: .\payroll\forms\tax_forms.py:41 .\recruitment\forms.py:53 #: .\recruitment\forms.py:96 #, python-brace-format msgid "---Choose {label}---" msgstr "---Choisissez {label}---" -#: .\attendance\forms.py:270 +#: .\attendance\forms.py:171 .\leave\templates\leave\leave-assign-form.html:22 +#: .\leave\templates\leave\leave-assign-one-form.html:18 +#: .\leave\templates\leave\leave-request-form.html:22 +#: .\leave\templates\leave\request-update-form.html:25 +#: .\templates\sidebar.html:99 +msgid "Employees" +msgstr "Employés" + +#: .\attendance\forms.py:273 #, python-format msgid "Attendance for the date is already exist for %(emp)s" msgstr "La présence pour la date existe déjà pour %(emp)s" -#: .\attendance\forms.py:275 +#: .\attendance\forms.py:278 msgid "Employee not chosen" msgstr "Employé non choisi" -#: .\attendance\forms.py:333 +#: .\attendance\forms.py:336 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:56 #: .\attendance\templates\attendance\attendance_account\group_by.html:9 #: .\attendance\templates\attendance\attendance_account\overtime_list.html:8 @@ -1244,7 +1252,7 @@ msgstr "Employé non choisi" msgid "Month" msgstr "Mois" -#: .\attendance\forms.py:344 +#: .\attendance\forms.py:347 #: .\attendance\templates\attendance\attendance\attendance_filters.html:11 #: .\attendance\templates\attendance\attendance\group_by.html:14 #: .\attendance\templates\attendance\attendance\group_by.html:180 @@ -1304,7 +1312,7 @@ msgstr "Mois" msgid "Employee" msgstr "Employé" -#: .\attendance\forms.py:345 +#: .\attendance\forms.py:348 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:64 #: .\attendance\templates\attendance\attendance_account\group_by.html:10 #: .\attendance\templates\attendance\attendance_account\overtime_list.html:9 @@ -1312,7 +1320,7 @@ msgstr "Employé" msgid "Year" msgstr "Année" -#: .\attendance\forms.py:346 +#: .\attendance\forms.py:349 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:51 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:68 #: .\attendance\templates\attendance\attendance_account\group_by.html:11 @@ -1322,7 +1330,7 @@ msgstr "Année" msgid "Hour Account" msgstr "Hour Compte" -#: .\attendance\forms.py:347 +#: .\attendance\forms.py:350 .\attendance\models.py:155 #: .\attendance\templates\attendance\attendance\group_by.html:25 #: .\attendance\templates\attendance\attendance\group_by.html:191 #: .\attendance\templates\attendance\attendance\group_by.html:353 @@ -1337,7 +1345,7 @@ msgstr "Hour Compte" msgid "Overtime" msgstr "Au fildutemps" -#: .\attendance\forms.py:386 +#: .\attendance\forms.py:389 msgid "" "Do not Auto Validate Attendance if an Employee Works " "More Than this Amount of Duration" @@ -1345,11 +1353,11 @@ msgstr "" "Ne pas valider automatiquement la présence si un employé travaillePlus que " "ce montant de durée" -#: .\attendance\forms.py:389 +#: .\attendance\forms.py:392 msgid "Minimum Hour to Approve Overtime" msgstr "Heure minimum pour approuver les heures supplémentaires" -#: .\attendance\forms.py:390 +#: .\attendance\forms.py:393 msgid "Maximum Allowed Overtime Per Day" msgstr "Heures supplémentaires maximales autorisées par jour" @@ -1369,18 +1377,109 @@ msgstr "Format invalide" msgid "You cannot choose a future date." msgstr "Vous ne pouvez pas choisir une date future." -#: .\attendance\models.py:373 +#: .\attendance\models.py:109 +#: .\attendance\templates\attendance\attendance\attendance_filters.html:19 +#: .\attendance\templates\attendance\attendance\group_by.html:21 +#: .\attendance\templates\attendance\attendance\group_by.html:187 +#: .\attendance\templates\attendance\attendance\group_by.html:349 +#: .\attendance\templates\attendance\attendance\tab_content.html:27 +#: .\attendance\templates\attendance\attendance\tab_content.html:176 +#: .\attendance\templates\attendance\attendance\tab_content.html:334 +#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:19 +#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:19 +#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:19 +#: .\attendance\templates\attendance\own_attendance\attendances.html:13 +#: .\base\templates\base\rotating_shift\filters.html:57 +#: .\base\templates\base\rotating_work_type\filters.html:57 +#: .\base\templates\base\shift\schedule.html:14 +#: .\base\templates\base\shift\schedule_view.html:10 +#: .\base\templates\base\shift\shift.html:9 +#: .\base\templates\base\shift\shift.html:14 +#: .\base\templates\base\shift\shift_view.html:6 +#: .\base\templates\shift_request\shift_request_nav.html:115 +#: .\base\templates\work_type_request\work_type_request_nav.html:112 +#: .\employee\templates\employee_filters.html:54 +#: .\employee\templates\employee_personal_info\employee_list.html:30 +#: .\payroll\models\models.py:586 .\payroll\models\models.py:698 +#: .\payroll\templates\payroll\contract\contract_single_view.html:77 +msgid "Shift" +msgstr "Quarts Info" + +#: .\attendance\models.py:116 +#: .\attendance\templates\attendance\attendance\attendance_filters.html:39 +#: .\attendance\templates\attendance\attendance\group_by.html:22 +#: .\attendance\templates\attendance\attendance\group_by.html:188 +#: .\attendance\templates\attendance\attendance\group_by.html:350 +#: .\attendance\templates\attendance\attendance\tab_content.html:28 +#: .\attendance\templates\attendance\attendance\tab_content.html:177 +#: .\attendance\templates\attendance\attendance\tab_content.html:335 +#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:39 +#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:39 +#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:39 +#: .\attendance\templates\attendance\own_attendance\attendances.html:14 +#: .\base\templates\base\rotating_shift\filters.html:71 +#: .\base\templates\base\rotating_work_type\filters.html:71 +#: .\base\templates\base\work_type\work_type.html:9 +#: .\base\templates\base\work_type\work_type.html:14 +#: .\base\templates\base\work_type\work_type_view.html:6 +#: .\base\templates\shift_request\shift_request_nav.html:137 +#: .\base\templates\work_type_request\work_type_request_nav.html:134 +#: .\employee\templates\employee\profile\profile_view.html:335 +#: .\employee\templates\employee\profile\work_info.html:27 +#: .\employee\templates\employee\update_form\work_details.html:31 +#: .\employee\templates\employee\view\individual.html:339 +#: .\employee\templates\employee_filters.html:69 +#: .\employee\templates\employee_personal_info\employee_list.html:31 +#: .\payroll\models\models.py:588 .\payroll\models\models.py:722 +#: .\payroll\templates\payroll\contract\contract_single_view.html:83 +#: .\templates\settings.html:44 +msgid "Work Type" +msgstr "Type de travail" + +#: .\attendance\models.py:121 +msgid "Attendance date" +msgstr "Fréquentation Date" + +#: .\attendance\models.py:127 +msgid "Check-in" +msgstr "Vérifier-dans" + +#: .\attendance\models.py:130 +msgid "Check-in date" +msgstr "Vérifier-Dans Date" + +#: .\attendance\models.py:133 +msgid "Check-out" +msgstr "Vérifier-Dehors" + +#: .\attendance\models.py:136 +msgid "Check-out date" +msgstr "Vérifier-Dehors Date" + +#: .\attendance\models.py:143 +msgid "At work" +msgstr "Au travail" + +#: .\attendance\models.py:149 +msgid "Minimum hour" +msgstr "Minimale Heure" + +#: .\attendance\models.py:158 .\attendance\views.py:1281 +msgid "Overtime approved" +msgstr "Heures supplémentaires approuvées" + +#: .\attendance\models.py:379 #: .\attendance\templates\attendance\late_come_early_out\report_list.html:36 #: .\attendance\views.py:1451 msgid "Late Come" msgstr "Arrivée en retard" -#: .\attendance\models.py:374 +#: .\attendance\models.py:380 #: .\attendance\templates\attendance\late_come_early_out\report_list.html:38 msgid "Early Out" msgstr "Sortie anticipée" -#: .\attendance\models.py:422 +#: .\attendance\models.py:428 msgid "You cannot add more conditions." msgstr "Vous ne pouvez pas ajouter plus de conditions." @@ -1425,33 +1524,6 @@ msgstr "Travail Info" msgid "Department" msgstr "Département" -#: .\attendance\templates\attendance\attendance\attendance_filters.html:19 -#: .\attendance\templates\attendance\attendance\group_by.html:21 -#: .\attendance\templates\attendance\attendance\group_by.html:187 -#: .\attendance\templates\attendance\attendance\group_by.html:349 -#: .\attendance\templates\attendance\attendance\tab_content.html:27 -#: .\attendance\templates\attendance\attendance\tab_content.html:176 -#: .\attendance\templates\attendance\attendance\tab_content.html:334 -#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:19 -#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:19 -#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:19 -#: .\attendance\templates\attendance\own_attendance\attendances.html:13 -#: .\base\templates\base\rotating_shift\filters.html:57 -#: .\base\templates\base\rotating_work_type\filters.html:57 -#: .\base\templates\base\shift\schedule.html:14 -#: .\base\templates\base\shift\schedule_view.html:10 -#: .\base\templates\base\shift\shift.html:9 -#: .\base\templates\base\shift\shift.html:14 -#: .\base\templates\base\shift\shift_view.html:6 -#: .\base\templates\shift_request\shift_request_nav.html:115 -#: .\base\templates\work_type_request\work_type_request_nav.html:112 -#: .\employee\templates\employee_filters.html:54 -#: .\employee\templates\employee_personal_info\employee_list.html:30 -#: .\payroll\models\models.py:586 .\payroll\models\models.py:698 -#: .\payroll\templates\payroll\contract\contract_single_view.html:77 -msgid "Shift" -msgstr "Quarts Info" - #: .\attendance\templates\attendance\attendance\attendance_filters.html:23 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:23 #: .\attendance\templates\attendance\attendance_activity\activity_filters.html:23 @@ -1536,36 +1608,6 @@ msgstr "Entreprise" msgid "Job Position" msgstr "Poste" -#: .\attendance\templates\attendance\attendance\attendance_filters.html:39 -#: .\attendance\templates\attendance\attendance\group_by.html:22 -#: .\attendance\templates\attendance\attendance\group_by.html:188 -#: .\attendance\templates\attendance\attendance\group_by.html:350 -#: .\attendance\templates\attendance\attendance\tab_content.html:28 -#: .\attendance\templates\attendance\attendance\tab_content.html:177 -#: .\attendance\templates\attendance\attendance\tab_content.html:335 -#: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:39 -#: .\attendance\templates\attendance\attendance_activity\activity_filters.html:39 -#: .\attendance\templates\attendance\late_come_early_out\late_come_early_out_filters.html:39 -#: .\attendance\templates\attendance\own_attendance\attendances.html:14 -#: .\base\templates\base\rotating_shift\filters.html:71 -#: .\base\templates\base\rotating_work_type\filters.html:71 -#: .\base\templates\base\work_type\work_type.html:9 -#: .\base\templates\base\work_type\work_type.html:14 -#: .\base\templates\base\work_type\work_type_view.html:6 -#: .\base\templates\shift_request\shift_request_nav.html:137 -#: .\base\templates\work_type_request\work_type_request_nav.html:134 -#: .\employee\templates\employee\profile\profile_view.html:335 -#: .\employee\templates\employee\profile\work_info.html:27 -#: .\employee\templates\employee\update_form\work_details.html:31 -#: .\employee\templates\employee\view\individual.html:339 -#: .\employee\templates\employee_filters.html:69 -#: .\employee\templates\employee_personal_info\employee_list.html:31 -#: .\payroll\models\models.py:588 .\payroll\models\models.py:722 -#: .\payroll\templates\payroll\contract\contract_single_view.html:83 -#: .\templates\settings.html:44 -msgid "Work Type" -msgstr "Type de travail" - #: .\attendance\templates\attendance\attendance\attendance_filters.html:43 #: .\attendance\templates\attendance\attendance_account\attendance_account_filter.html:43 #: .\attendance\templates\attendance\attendance_activity\activity_filters.html:43 @@ -2103,10 +2145,6 @@ msgstr "Vous ne pouvez pas supprimer cette condition de validation." msgid "Attendance validated." msgstr "Présence validée." -#: .\attendance\views.py:1281 -msgid "Overtime approved" -msgstr "Heures supplémentaires approuvées" - #: .\attendance\views.py:1450 msgid "On Time" msgstr "À temps" @@ -2955,292 +2993,296 @@ msgstr "-SUREMBARQUEMENT" msgid "EMPLOYEE" msgstr "EMPLOYÉE" -#: .\base\translator.py:20 .\base\translator.py:90 +#: .\base\translator.py:20 +msgid "PAYROLL" +msgstr "PAIE" + +#: .\base\translator.py:21 .\base\translator.py:91 msgid "ATTENDANCE" msgstr "FRÉQUENTATION" -#: .\base\translator.py:21 +#: .\base\translator.py:22 msgid "LEAVE" msgstr "PARTIR" -#: .\base\translator.py:22 .\base\translator.py:91 +#: .\base\translator.py:23 .\base\translator.py:92 msgid "ASSET" msgstr "ACTIF" -#: .\base\translator.py:23 +#: .\base\translator.py:24 msgid "Your asset request approved!." msgstr "Votre demande d'actif approuvée !." -#: .\base\translator.py:24 +#: .\base\translator.py:25 msgid "Your asset request rejected!." msgstr "Votre demande d'asset a été rejetée !." -#: .\base\translator.py:25 +#: .\base\translator.py:26 msgid "You are added to rotating work type" msgstr "Vous êtes ajouté au type de travail rotatif" -#: .\base\translator.py:26 +#: .\base\translator.py:27 msgid "You are added to rotating shift" msgstr "Vous êtes ajouté à equart de travail tournante" -#: .\base\translator.py:27 +#: .\base\translator.py:28 msgid "Your work type request has been canceled." msgstr "Votre demande de type de travail a été annulée." -#: .\base\translator.py:28 +#: .\base\translator.py:29 msgid "Your work type request has been approved." msgstr "Votre demande de type de travail a été approuvée." -#: .\base\translator.py:29 +#: .\base\translator.py:30 msgid "Your work type request has been deleted." msgstr "Votre demande de type de travail a été supprimée." -#: .\base\translator.py:30 +#: .\base\translator.py:31 msgid "Your shift request has been canceled." msgstr "Votre demande quart de travail a été annulée." -#: .\base\translator.py:31 +#: .\base\translator.py:32 msgid "Your shift request has been approved." msgstr "Votre demande quart de travail a été approuvée." -#: .\base\translator.py:32 +#: .\base\translator.py:33 msgid "Your shift request has been deleted." msgstr "Votre demande Quart de travail a été supprimée." -#: .\base\translator.py:33 +#: .\base\translator.py:34 msgid "Your work details has been updated." msgstr "Les détails de votre travail ont été mis à jour." -#: .\base\translator.py:34 +#: .\base\translator.py:35 msgid "You have a new leave request to validate." msgstr "Vous avez une nouvelle demande de congé à valider." -#: .\base\translator.py:35 +#: .\base\translator.py:36 msgid "New leave type is assigned to you" msgstr "Un nouveau type de congé vous est attribué" -#: .\base\translator.py:36 +#: .\base\translator.py:37 msgid "Your Leave request has been cancelled" msgstr "Votre demande de congé a été annulée" -#: .\base\translator.py:37 +#: .\base\translator.py:38 msgid "Your Leave request has been approved" msgstr "Votre demande de congé a été approuvée" -#: .\base\translator.py:38 +#: .\base\translator.py:39 msgid "You are chosen as onboarding stage manager" msgstr "Vous êtes choisi comme régisseur onboarding" -#: .\base\translator.py:39 +#: .\base\translator.py:40 msgid "You are chosen as onboarding task manager" msgstr "Vous êtes choisi comme gestionnaire de tâches onboarding" -#: .\base\translator.py:40 +#: .\base\translator.py:41 msgid "You got an OKR!." msgstr "Vous avez un OCR !." -#: .\base\translator.py:41 +#: .\base\translator.py:42 msgid "You have received feedback!" msgstr "Vous avez reçu des commentaires !" -#: .\base\translator.py:42 +#: .\base\translator.py:43 msgid "You have been assigned as a manager in a feedback!" msgstr "Vous avez été désigné comme manager dans un feedback !" -#: .\base\translator.py:43 +#: .\base\translator.py:44 msgid "You have been assigned as a subordinate in a feedback!" msgstr "Vous avez été affecté en tant que subordonné dans un commentaire !" -#: .\base\translator.py:44 +#: .\base\translator.py:45 msgid "You have been assigned as a colleague in a feedback!" msgstr "Vous avez été désigné comme collègue dans un feedback !" -#: .\base\translator.py:45 +#: .\base\translator.py:46 msgid "You are chosen as one of recruitment manager" msgstr "Vous êtes choisi comme l'un des responsables du recrutement" -#: .\base\translator.py:46 +#: .\base\translator.py:47 msgid "Your attendance for the date " msgstr "Votre présence est validée pour la date" -#: .\base\translator.py:47 +#: .\base\translator.py:48 msgid " is validated" msgstr "Validé" -#: .\base\translator.py:48 +#: .\base\translator.py:49 msgid "Select" msgstr "Sélectionner" -#: .\base\translator.py:49 +#: .\base\translator.py:50 msgid "January" msgstr "Janvier" -#: .\base\translator.py:50 +#: .\base\translator.py:51 msgid "February" msgstr "Février" -#: .\base\translator.py:51 +#: .\base\translator.py:52 msgid "March" msgstr "Mars" -#: .\base\translator.py:52 +#: .\base\translator.py:53 msgid "April" msgstr "Avril" -#: .\base\translator.py:53 +#: .\base\translator.py:54 msgid "May" msgstr "Mai" -#: .\base\translator.py:54 +#: .\base\translator.py:55 msgid "June" msgstr "Juin" -#: .\base\translator.py:55 +#: .\base\translator.py:56 msgid "July" msgstr "Juillet" -#: .\base\translator.py:56 +#: .\base\translator.py:57 msgid "August" msgstr "Août" -#: .\base\translator.py:57 +#: .\base\translator.py:58 msgid "September" msgstr "Septembre" -#: .\base\translator.py:58 +#: .\base\translator.py:59 msgid "October" msgstr "Octobre" -#: .\base\translator.py:59 +#: .\base\translator.py:60 msgid "November" msgstr "Novembre" -#: .\base\translator.py:60 +#: .\base\translator.py:61 msgid "December" msgstr "Décembre" -#: .\base\translator.py:61 +#: .\base\translator.py:62 msgid "One time date" msgstr "Une date unique" -#: .\base\translator.py:62 +#: .\base\translator.py:63 msgid "Is condition based" msgstr "Est basé sur la condition" -#: .\base\translator.py:63 +#: .\base\translator.py:64 msgid "Is taxable" msgstr "Est imposable" -#: .\base\translator.py:64 +#: .\base\translator.py:65 msgid "Is fixed" msgstr "Est corrigé" -#: .\base\translator.py:65 +#: .\base\translator.py:66 msgid "Value" msgstr "Valeur" -#: .\base\translator.py:66 +#: .\base\translator.py:67 msgid "If choice" msgstr "Si choix" -#: .\base\translator.py:67 .\base\translator.py:84 +#: .\base\translator.py:68 .\base\translator.py:85 msgid "Is tax" msgstr "Est-ce que la taxe" -#: .\base\translator.py:68 +#: .\base\translator.py:69 msgid "If amount" msgstr "Si montant" -#: .\base\translator.py:69 +#: .\base\translator.py:70 msgid "If condition" msgstr "Si Condition" -#: .\base\translator.py:70 +#: .\base\translator.py:71 msgid "Employer rate" msgstr "Tarif Employeur :" -#: .\base\translator.py:71 +#: .\base\translator.py:72 msgid "Contract name" msgstr "Nom du contrat" -#: .\base\translator.py:72 +#: .\base\translator.py:73 msgid "Contract start date" msgstr "Date de début de contrat" -#: .\base\translator.py:73 +#: .\base\translator.py:74 msgid "Contract end date" msgstr "Contracter Date Fin" -#: .\base\translator.py:74 +#: .\base\translator.py:75 msgid "Wage type" msgstr "Type de salaire" -#: .\base\translator.py:75 +#: .\base\translator.py:76 msgid "Calculate daily leave amount" msgstr "Calculer le montant des congés journaliers" -#: .\base\translator.py:76 +#: .\base\translator.py:77 msgid "Deduction for one leave amount" msgstr "Montant de la déduction pour congé unique" -#: .\base\translator.py:77 +#: .\base\translator.py:78 msgid "Deduct leave from basic pay" msgstr "Déduire les congés du salaire de base" -#: .\base\translator.py:78 +#: .\base\translator.py:79 msgid "Job role" msgstr "Rôle de l'emploi" -#: .\base\translator.py:79 +#: .\base\translator.py:80 msgid "Work type" msgstr "Type de travail" -#: .\base\translator.py:80 +#: .\base\translator.py:81 msgid "Pay frequency" msgstr "Fréquence de Paiement" -#: .\base\translator.py:81 .\payroll\models\models.py:71 +#: .\base\translator.py:82 .\payroll\models\models.py:71 #: .\payroll\models\tax_models.py:42 msgid "Filing status" msgstr "Statut de dépôt" -#: .\base\translator.py:82 +#: .\base\translator.py:83 msgid "Contract status" msgstr "Statut du contrat" -#: .\base\translator.py:83 +#: .\base\translator.py:84 msgid "Contract document" msgstr "Document contractuel" -#: .\base\translator.py:85 +#: .\base\translator.py:86 msgid "Update compensation" msgstr "Mettre à jour la rémunération" -#: .\base\translator.py:86 +#: .\base\translator.py:87 msgid "Is pretax" msgstr "Is Pretax" -#: .\base\translator.py:87 +#: .\base\translator.py:88 msgid "DASHBOARD" msgstr "TABLEAU BORD" -#: .\base\translator.py:88 +#: .\base\translator.py:89 msgid "SHIFT REQUESTS" msgstr "DEMANDES QUART TRAVAIL" -#: .\base\translator.py:89 +#: .\base\translator.py:90 msgid "WORK TYPE REQUESTS" msgstr "DEMANDES TYPE TRAVAIL" -#: .\base\translator.py:92 +#: .\base\translator.py:93 msgid "Single" msgstr "Seul" -#: .\base\translator.py:93 +#: .\base\translator.py:94 msgid "Married" msgstr "Marié" -#: .\base\translator.py:94 +#: .\base\translator.py:95 msgid "Divorced" msgstr "Divorcé" @@ -4465,14 +4507,6 @@ msgstr "Non récurrent" msgid "Leave types" msgstr "Congé de types" -#: .\leave\templates\leave\leave-assign-form.html:22 -#: .\leave\templates\leave\leave-assign-one-form.html:18 -#: .\leave\templates\leave\leave-request-form.html:22 -#: .\leave\templates\leave\request-update-form.html:25 -#: .\templates\sidebar.html:99 -msgid "Employees" -msgstr "Employés" - #: .\leave\templates\leave\leave-request-form.html:32 #: .\leave\templates\leave\request-update-form.html:35 #: .\leave\templates\leave\user-request-form.html:24 @@ -6225,7 +6259,7 @@ msgstr "Clé Résultat Statut" #: .\pms\templates\dashboard\pms_dashboard.html:77 #: .\templates\dashboard.html:195 -msgid "Feedack Status" +msgid "Feedback Status" msgstr "Retour Statut" #: .\pms\templates\dashboard\pms_dashboard.html:100 @@ -6620,154 +6654,154 @@ msgstr "Objectif %(objective)s mis à jour" msgid "Objective %(objective)s deleted" msgstr "Objectif %(objective)s supprimé" -#: .\pms\views.py:492 +#: .\pms\views.py:495 #, python-format msgid "Objective %(objective)s status updated" msgstr "Statut de l'objectif %(objective)s mis à jour" -#: .\pms\views.py:514 +#: .\pms\views.py:517 msgid "Status has been updated" msgstr "Le statut a été mis à jour" -#: .\pms\views.py:538 +#: .\pms\views.py:541 #, python-format msgid "Current value of %(employee_key_result)s updated" msgstr "La valeur actuelle de %(employee_key_result)s a été mise à jour" -#: .\pms\views.py:543 +#: .\pms\views.py:546 msgid "Current value is greater than target value" msgstr "La valeur actuelle est supérieure à la valeur cible" -#: .\pms\views.py:545 +#: .\pms\views.py:548 msgid "Error occurred during current value updation" msgstr "Une erreur s'est produite lors de la mise à jour de la valeur actuelle" -#: .\pms\views.py:562 +#: .\pms\views.py:565 msgid "Objective un-archived successfully!." msgstr "Objectif désarchivé avec succès !." -#: .\pms\views.py:566 +#: .\pms\views.py:569 msgid "Objective archived successfully!." msgstr "Objectif archivé avec succès !." -#: .\pms\views.py:604 .\pms\views.py:656 +#: .\pms\views.py:607 .\pms\views.py:659 msgid "Key result created" msgstr "Résultat clé créé" -#: .\pms\views.py:629 +#: .\pms\views.py:632 msgid "Key results created" msgstr "Résultats clés créés" -#: .\pms\views.py:691 +#: .\pms\views.py:694 msgid "Key result updated" msgstr "Clé résultat mis à jour" -#: .\pms\views.py:789 +#: .\pms\views.py:792 msgid "Feedback created successfully." msgstr "Commentaires créés avec succès." -#: .\pms\views.py:1087 +#: .\pms\views.py:1090 msgid "You are not allowed to answer" msgstr "Vous n'êtes pas autorisé à répondre" -#: .\pms\views.py:1102 +#: .\pms\views.py:1105 msgid "Feedback already answered" msgstr "Commentaires déjà répondus" -#: .\pms\views.py:1153 +#: .\pms\views.py:1156 #, python-format msgid "Feedback %(review_cycle)s has been answered successfully!." msgstr "Le commentaire %(review_cycle)s a été répondu avec succès !." -#: .\pms\views.py:1178 +#: .\pms\views.py:1181 msgid "Feedback is not answered yet" msgstr "Les commentaires n'ont pas encore reçu de réponse" -#: .\pms\views.py:1206 +#: .\pms\views.py:1209 #, python-format msgid "Feedback %(review_cycle)s deleted successfully!" msgstr "Commentaires %(review_cycle)s supprimés avec succès !" -#: .\pms\views.py:1213 +#: .\pms\views.py:1216 #, python-format msgid "Feedback %(review_cycle)s is ongoing you you can archive it!" msgstr "" "Les commentaires %(review_cycle)s sont en cours, vous pouvez les archiver !" -#: .\pms\views.py:1233 +#: .\pms\views.py:1236 msgid "Feedback is already started" msgstr "La rétroaction a déjà commencé" -#: .\pms\views.py:1239 +#: .\pms\views.py:1242 #, python-format msgid "Feedback status updated to %(status)s" msgstr "'État des commentaires mis à jour à %(status)s" -#: .\pms\views.py:1244 +#: .\pms\views.py:1247 #, python-format msgid "Error occurred during status update to %(status)s" msgstr "" "Une erreur s'est produite lors de la mise à jour du statut vers %(status)s" -#: .\pms\views.py:1261 +#: .\pms\views.py:1264 msgid "Feedback un-archived successfully!." msgstr "Les commentaires ont été désarchivés avec succès !." -#: .\pms\views.py:1265 +#: .\pms\views.py:1268 msgid "Feedback archived successfully!." msgstr "Commentaires archivés avec succès !." -#: .\pms\views.py:1285 +#: .\pms\views.py:1288 msgid "Completed" msgstr "Complète" -#: .\pms\views.py:1285 +#: .\pms\views.py:1288 msgid "Not-completed" msgstr "Pas Achevé" -#: .\pms\views.py:1308 +#: .\pms\views.py:1311 msgid "Question template is used in feedback." msgstr "Le modèle de question est utilisé dans les commentaires." -#: .\pms\views.py:1328 .\pms\views.py:1330 +#: .\pms\views.py:1331 .\pms\views.py:1333 msgid "Question created successfully." msgstr "Question créée avec succès." -#: .\pms\views.py:1333 +#: .\pms\views.py:1336 msgid "Error occurred during question creation!" msgstr "Une erreur s'est produite lors de la création de la question !" -#: .\pms\views.py:1403 .\pms\views.py:1410 +#: .\pms\views.py:1406 .\pms\views.py:1413 msgid "Question updated successfully." msgstr "Question mise à jour avec succès." -#: .\pms\views.py:1444 +#: .\pms\views.py:1447 msgid "Question deleted successfully!" msgstr "Question supprimée avec succès !" -#: .\pms\views.py:1450 +#: .\pms\views.py:1453 msgid "Failed to delete question: Question template is in use." msgstr "" "Échec de la suppression de la question : le modèle de question est en cours " "d'utilisation." -#: .\pms\views.py:1550 +#: .\pms\views.py:1553 msgid "Question template updated" msgstr "Modèle de question mis à jour" -#: .\pms\views.py:1571 +#: .\pms\views.py:1574 msgid "This template is using in a feedback" msgstr "Ce modèle est utilisé dans un commentaire" -#: .\pms\views.py:1608 +#: .\pms\views.py:1611 msgid "Period creation was Successful " msgstr "La création de la période a réussi" -#: .\pms\views.py:1636 +#: .\pms\views.py:1639 msgid "Period updated Successfully. " msgstr "Période mise à jour avec succès." -#: .\pms\views.py:1659 +#: .\pms\views.py:1662 msgid "Period deleted successfully." msgstr "Période supprimée avec succès." @@ -7454,6 +7488,11 @@ msgstr "l'actif Vue" msgid "Request and Allocation" msgstr "Demande et Allocation" +#, fuzzy +#~| msgid "Feedback Status" +#~ msgid "Feedack Status" +#~ msgstr "Retour Statut" + #~ msgid "None" #~ msgstr "Aucun" @@ -7481,12 +7520,6 @@ msgstr "Demande et Allocation" #~ msgid "Is Tax" #~ msgstr "Est taxe" -#~ msgid "Check-In Date" -#~ msgstr "Vérifier-Dans Date" - -#~ msgid "Check-Out Date" -#~ msgstr "Vérifier-Dehors Date" - #~ msgid "Badge ID must be unique." #~ msgstr "L'identifiant du badge doit être unique." diff --git a/leave/methods.py b/leave/methods.py index 9bbce3332..8ba454174 100644 --- a/leave/methods.py +++ b/leave/methods.py @@ -71,17 +71,10 @@ def company_leave_dates_list(company_leaves,start_date): if based_on_week != None: # Set Sunday as the first day of the week calendar.setfirstweekday(6) - month_calendar = calendar.monthcalendar(year, month) - weeks = month_calendar[int(based_on_week)] - weekdays_in_weeks = [day for day in weeks if day != 0] - for day in weekdays_in_weeks: - date = datetime.strptime( - f"{year}-{month:02}-{day:02}", '%Y-%m-%d').date() - if ( - date.weekday() == int(based_on_week_day) - and date not in company_leave_dates - ): - company_leave_dates.append(date) + month_calendar = calendar.monthcalendar(year, 7) + weeks = month_calendar[based_on_week] + day = weeks[based_on_week_day] + company_leave_dates.append(date(year=year, month=7, day=day)) else: # Set Monday as the first day of the week calendar.setfirstweekday(0) @@ -92,4 +85,4 @@ def company_leave_dates_list(company_leaves,start_date): f"{year}-{month:02}-{week[int(based_on_week_day)-1]:02}", '%Y-%m-%d').date() if date not in company_leave_dates: company_leave_dates.append(date) - return company_leave_dates \ No newline at end of file + return list(set(company_leave_dates)) \ No newline at end of file diff --git a/leave/models.py b/leave/models.py index f369d53c8..d2e432cfb 100644 --- a/leave/models.py +++ b/leave/models.py @@ -373,18 +373,10 @@ class LeaveRequest(models.Model): if based_on_week != None: # Set Sunday as the first day of the week calendar.setfirstweekday(6) - month_calendar = calendar.monthcalendar(year, month) - weeks = month_calendar[int(based_on_week)] - weekdays_in_weeks = [day for day in weeks if day != 0] - for day in weekdays_in_weeks: - date = datetime.strptime( - f"{year}-{month:02}-{day:02}", "%Y-%m-%d" - ).date() - if ( - date.weekday() == int(based_on_week_day) - and date not in company_leave_dates - ): - company_leave_dates.append(date) + month_calendar = calendar.monthcalendar(year, 7) + weeks = month_calendar[based_on_week] + day = weeks[based_on_week_day] + company_leave_dates.append(date(year=year, month=7, day=day)) else: # Set Monday as the first day of the week calendar.setfirstweekday(0) @@ -397,7 +389,7 @@ class LeaveRequest(models.Model): ).date() if date not in company_leave_dates: company_leave_dates.append(date) - return company_leave_dates + return list(set(company_leave_dates)) def save(self, *args, **kwargs): self.requested_days = calculate_requested_days( diff --git a/onboarding/views.py b/onboarding/views.py index f3801a7fe..b6e50d691 100644 --- a/onboarding/views.py +++ b/onboarding/views.py @@ -883,7 +883,7 @@ def onboard_candidate_chart(_): background_color.append(f"rgba({red}, {green}, {blue}, 0.2") border_color.append(f"rgb({red}, {green}, {blue})") labels.append( - f"{recruitment.job_position_id.job_position} | {recruitment.start_date}" + f"{recruitment.title} | {recruitment.start_date}" ) data.append( recruitment.candidate.filter(hired=True, start_onboard=True).count() diff --git a/payroll/methods/methods.py b/payroll/methods/methods.py index 867f7e813..8c0679326 100644 --- a/payroll/methods/methods.py +++ b/payroll/methods/methods.py @@ -38,24 +38,18 @@ def get_company_leave_dates(year): company_leaves = CompanyLeave.objects.all() company_leave_dates = [] for company_leave in company_leaves: - based_on_week = company_leave.based_on_week - based_on_week_day = company_leave.based_on_week_day + based_on_week = int(company_leave.based_on_week) if company_leave.based_on_week is not None else None + based_on_week_day = int(company_leave.based_on_week_day) + # based_on_week_day = 0 if based_on_week_day > 7 else based_on_week_day + for month in range(1, 13): if based_on_week is not None: # Set Sunday as the first day of the week calendar.setfirstweekday(6) - month_calendar = calendar.monthcalendar(year, month) - weeks = month_calendar[int(based_on_week)] - weekdays_in_weeks = [day for day in weeks if day != 0] - for day in weekdays_in_weeks: - leave_date = datetime.strptime( - f"{year}-{month:02}-{day:02}", "%Y-%m-%d" - ).date() - if ( - leave_date.weekday() == int(based_on_week_day) - and leave_date not in company_leave_dates - ): - company_leave_dates.append(leave_date) + month_calendar = calendar.monthcalendar(year, 7) + weeks = month_calendar[based_on_week] + day = weeks[based_on_week_day] + company_leave_dates.append(date(year=year, month=7, day=day)) else: # Set Monday as the first day of the week calendar.setfirstweekday(0) @@ -68,7 +62,7 @@ def get_company_leave_dates(year): ).date() if leave_date not in company_leave_dates: company_leave_dates.append(leave_date) - return company_leave_dates + return list(set(company_leave_dates)) def get_date_range(start_date, end_date): @@ -185,9 +179,6 @@ def get_leaves(employee, start_date, end_date): paid_leave_dates = [] unpaid_leave_dates = [] company_leave_dates = get_working_days(start_date, end_date)["company_leave_dates"] - print("----------------------") - print(company_leave_dates) - print("----------------------") if approved_leaves.exists(): for instance in approved_leaves: diff --git a/pms/templates/dashboard/pms_dashboard.html b/pms/templates/dashboard/pms_dashboard.html index 538d7cbf0..2d0465bc9 100644 --- a/pms/templates/dashboard/pms_dashboard.html +++ b/pms/templates/dashboard/pms_dashboard.html @@ -74,7 +74,7 @@
- {% trans "Feedack Status" %} + {% trans "Feedback Status" %}
diff --git a/pms/templates/okr/objective_list_view.html b/pms/templates/okr/objective_list_view.html index 01cd8b15b..c0d7bfc9f 100644 --- a/pms/templates/okr/objective_list_view.html +++ b/pms/templates/okr/objective_list_view.html @@ -62,7 +62,7 @@
- {{objective_filer_form.objective}} + {{objective_filer_form.status}}
diff --git a/pms/views.py b/pms/views.py index 09483b74a..01d1b4289 100644 --- a/pms/views.py +++ b/pms/views.py @@ -205,6 +205,9 @@ def objecitve_filter_pagination(request, objective_own, objective_all): """ previous_data = request.environ["QUERY_STRING"] initial_data = {"archive": False} # set initial value of archive filter to False + if request.GET.get("status") !="Closed": + objective_own = objective_own.exclude(status="Closed") + objective_all = objective_all.exclude(status="Closed") objective_filter_own = ObjectiveFilter( request.GET or initial_data, queryset=objective_own ) diff --git a/recruitment/templates/candidate/country-code-validation.html b/recruitment/templates/candidate/country-code-validation.html deleted file mode 100644 index d6c7071e2..000000000 --- a/recruitment/templates/candidate/country-code-validation.html +++ /dev/null @@ -1,27 +0,0 @@ - - - - Phone Number Validation - - - - - - -

- - - diff --git a/recruitment/views.py b/recruitment/views.py index 2308d8123..3363ce0d8 100644 --- a/recruitment/views.py +++ b/recruitment/views.py @@ -131,6 +131,10 @@ def recruitment(request): request.user.employee_get, recipient=users, verb="You are chosen as one of recruitment manager", + verb_ar="تم اختيارك كأحد مديري التوظيف", + verb_de="Sie wurden als einer der Personalvermittler ausgewählt", + verb_es="Has sido elegido/a como uno de los gerentes de contratación", + verb_fr="Vous êtes choisi(e) comme l'un des responsables du recrutement", icon="people-circle", redirect="/recruitment/pipeline", ) @@ -164,6 +168,11 @@ def remove_recruitment_manager(request, mid, rid): request.user.employee_get, recipient=manager.employee_user_id, verb=f"You are removed from recruitment manager from {recruitment_obj}", + verb_ar=f"تمت إزالتك من وظيفة مدير التوظيف في {recruitment_obj}", + verb_de=f"Sie wurden als Personalvermittler von {recruitment_obj} entfernt", + verb_es=f"Has sido eliminado/a como gerente de contratación de {recruitment_obj}", + verb_fr=f"Vous avez été supprimé(e) en tant que responsable\ + du recrutement de {recruitment_obj}", icon="person-remove", redirect="", ) @@ -247,10 +256,17 @@ def recruitment_update(request, rec_id): notify.send( request.user.employee_get, recipient=users, - verb=f"{recruitment_obj} is updated, You are chosen as one of managers", + verb=f"{recruitment_obj} is updated, You are chosen as one of the managers", + verb_ar=f"{recruitment_obj} تم تحديثه، تم اختيارك كأحد المديرين", + verb_de=f"{recruitment_obj} wurde aktualisiert. Sie wurden als\ + einer der Manager ausgewählt", + verb_es=f"{recruitment_obj} ha sido actualizado/a. Has sido elegido\ + a como uno de los gerentes", + verb_fr=f"{recruitment_obj} a été mis(e) à jour. Vous êtes choisi(e) comme l'un des responsables", icon="people-circle", redirect="/recruitment/pipeline", ) + return HttpResponse( response.content.decode("utf-8") + "" ) @@ -324,11 +340,17 @@ def recruitment_pipeline(request): notify.send( request.user.employee_get, recipient=users, - verb=f"""You are chosen as recruitment - manager for the recruitment {recruitment_obj}""", + verb=f"You are chosen as recruitment manager for\ + the recruitment {recruitment_obj}", + verb_ar=f"تم اختيارك كمدير توظيف للتوظيف {recruitment_obj}", + verb_de=f"Sie wurden als Personalvermittler für die Rekrutierung\ + {recruitment_obj} ausgewählt", + verb_es=f"Has sido elegido/a como gerente de contratación para la contratación {recruitment_obj}", + verb_fr=f"Vous êtes choisi(e) comme responsable du recrutement pour le recrutement {recruitment_obj}", icon="people-circle", redirect="/recruitment/pipeline", ) + return HttpResponseRedirect(request.META.get("HTTP_REFERER", "/")) elif request.FILES.get("resume") is not None: if request.user.has_perm("add_candidate") or is_stagemanager( @@ -347,9 +369,14 @@ def recruitment_pipeline(request): request.user.employee_get, recipient=users, verb=f"New candidate arrived on stage {candidate_obj.stage_id.stage}", + verb_ar=f"وصل مرشح جديد إلى المرحلة {candidate_obj.stage_id.stage}", + verb_de=f"Neuer Kandidat ist auf der Stufe {candidate_obj.stage_id.stage} angekommen", + verb_es=f"Nuevo candidato llegó a la etapa {candidate_obj.stage_id.stage}", + verb_fr=f"Nouveau candidat arrivé à l'étape {candidate_obj.stage_id.stage}", icon="person-add", redirect="/recruitment/pipeline", ) + messages.success(request, _("Candidate added.")) return HttpResponseRedirect(request.META.get("HTTP_REFERER", "/")) elif request.POST.get("stage_managers") and request.user.has_perm("add_stage"): @@ -369,11 +396,15 @@ def recruitment_pipeline(request): notify.send( request.user.employee_get, recipient=users, - verb=f"""You are chosen as a stage manager on the stage - {stage_obj.stage} in recruitment {stage_obj.recruitment_id}", - icon="people-circle""", + verb=f"You are chosen as a stage manager on the stage {stage_obj.stage} in recruitment {stage_obj.recruitment_id}", + verb_ar=f"لقد تم اختيارك كمدير مرحلة في المرحلة {stage_obj.stage} في التوظيف {stage_obj.recruitment_id}", + verb_de=f"Sie wurden als Bühnenmanager für die Stufe {stage_obj.stage} in der Rekrutierung {stage_obj.recruitment_id} ausgewählt", + verb_es=f"Has sido elegido/a como gerente de etapa en la etapa {stage_obj.stage} en la contratación {stage_obj.recruitment_id}", + verb_fr=f"Vous avez été choisi(e) comme responsable de l'étape {stage_obj.stage} dans le recrutement {stage_obj.recruitment_id}", + icon="people-circle", redirect="/recruitment/pipeline", ) + return HttpResponseRedirect(request.META.get("HTTP_REFERER", "/")) messages.info(request, _("You dont have access")) return render( @@ -438,10 +469,19 @@ def stage_update_pipeline(request, stage_id): request.user.employee_get, recipient=users, verb=f"{stage_obj.stage} stage in recruitment {stage_obj.recruitment_id}\ - is updated, You are chosen as one of managers", + is updated, You are chosen as one of the managers", + verb_ar=f"تم تحديث مرحلة {stage_obj.stage} في التوظيف {stage_obj.recruitment_id}\ + ، تم اختيارك كأحد المديرين", + verb_de=f"Die Stufe {stage_obj.stage} in der Rekrutierung {stage_obj.recruitment_id}\ + wurde aktualisiert. Sie wurden als einer der Manager ausgewählt", + verb_es=f"Se ha actualizado la etapa {stage_obj.stage} en la contratación {stage_obj.recruitment_id}.\ + Has sido elegido/a como uno de los gerentes", + verb_fr=f"L'étape {stage_obj.stage} dans le recrutement {stage_obj.recruitment_id} a été mise à jour.\ + Vous avez été choisi(e) comme l'un des responsables", icon="people-circle", redirect="/recruitment/pipeline", ) + return HttpResponseRedirect(request.META.get("HTTP_REFERER", "/")) return render(request, "pipeline/form/stage_update.html", {"form": form}) @@ -468,10 +508,17 @@ def recruitment_update_pipeline(request, rec_id): notify.send( request.user.employee_get, recipient=users, - verb=f"{recruitment_obj} is updated, You are chosen as one of managers", + verb=f"{recruitment_obj} is updated, You are chosen as one of the managers", + verb_ar=f"تم تحديث {recruitment_obj}، تم اختيارك كأحد المديرين", + verb_de=f"{recruitment_obj} wurde aktualisiert. Sie wurden als einer der Manager ausgewählt", + verb_es=f"{recruitment_obj} ha sido actualizado/a. Has sido elegido\ + a como uno de los gerentes", + verb_fr=f"{recruitment_obj} a été mis(e) à jour. Vous avez été\ + choisi(e) comme l'un des responsables", icon="people-circle", redirect="/recruitment/pipeline", ) + response = render( request, "pipeline/form/recruitment_update.html", {"form": form} ) @@ -548,9 +595,14 @@ def candidate_stage_update(request, cand_id): request.user.employee_get, recipient=users, verb=f"New candidate arrived on stage {stage_obj.stage}", + verb_ar=f"وصل مرشح جديد إلى المرحلة {stage_obj.stage}", + verb_de=f"Neuer Kandidat ist auf der Stufe {stage_obj.stage} angekommen", + verb_es=f"Nuevo candidato llegó a la etapa {stage_obj.stage}", + verb_fr=f"Nouveau candidat arrivé à l'étape {stage_obj.stage}", icon="person-add", redirect="/recruitment/pipeline", ) + return JsonResponse( {"type": "success", "message": _("Candidate stage updated")} ) @@ -719,11 +771,15 @@ def stage(request): notify.send( request.user.employee_get, recipient=users, - verb=f"Stage {stage_obj} is updated on recruitment\ - {stage_obj.recruitment_id}, You are chosen as one of managers", + verb=f"Stage {stage_obj} is updated on recruitment {stage_obj.recruitment_id}, You are chosen as one of the managers", + verb_ar=f"تم تحديث المرحلة {stage_obj} في التوظيف {stage_obj.recruitment_id}، تم اختيارك كأحد المديرين", + verb_de=f"Stufe {stage_obj} wurde in der Rekrutierung {stage_obj.recruitment_id} aktualisiert. Sie wurden als einer der Manager ausgewählt", + verb_es=f"La etapa {stage_obj} ha sido actualizada en la contratación {stage_obj.recruitment_id}. Has sido elegido/a como uno de los gerentes", + verb_fr=f"L'étape {stage_obj} a été mise à jour dans le recrutement {stage_obj.recruitment_id}. Vous avez été choisi(e) comme l'un des responsables", icon="people-circle", redirect="/recruitment/pipeline", ) + response = render(request, "stage/stage_form.html", {"form": form}) return HttpResponse( response.content.decode("utf-8") + "" @@ -783,6 +839,10 @@ def remove_stage_manager(request, mid, sid): request.user.employee_get, recipient=manager.employee_user_id, verb=f"You are removed from stage managers from stage {stage_obj}", + verb_ar=f"تمت إزالتك من مديري المرحلة من المرحلة {stage_obj}", + verb_de=f"Sie wurden als Bühnenmanager von der Stufe {stage_obj} entfernt", + verb_es=f"Has sido eliminado/a de los gerentes de etapa de la etapa {stage_obj}", + verb_fr=f"Vous avez été supprimé(e) en tant que responsable de l'étape {stage_obj}", icon="person-remove", redirect="", ) diff --git a/templates/dashboard.html b/templates/dashboard.html index 9babbf90d..54fc67e1a 100755 --- a/templates/dashboard.html +++ b/templates/dashboard.html @@ -192,7 +192,7 @@
- {% trans "Feedack Status" %} + {% trans "Feedback Status" %}