hr_lite 0.21.3 → 0.22.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +75 -0
- data/README.md +54 -2
- data/app/assets/javascripts/hr_lite/confirm.js +18 -3
- data/app/assets/javascripts/hr_lite/geo_punch.js +65 -10
- data/app/assets/javascripts/hr_lite/nav.js +17 -0
- data/app/assets/javascripts/hr_lite/select_filter.js +46 -0
- data/app/assets/stylesheets/hr_lite/hr_lite.css +219 -79
- data/app/controllers/hr_lite/admin/assets_controller.rb +1 -1
- data/app/controllers/hr_lite/admin/attendances_controller.rb +31 -0
- data/app/controllers/hr_lite/approvals_controller.rb +1 -12
- data/app/controllers/hr_lite/attendance_controller.rb +7 -0
- data/app/controllers/hr_lite/holidays_controller.rb +1 -0
- data/app/controllers/hr_lite/home_controller.rb +40 -3
- data/app/controllers/hr_lite/hr_requests_controller.rb +1 -1
- data/app/controllers/hr_lite/leave_requests_controller.rb +13 -2
- data/app/controllers/hr_lite/regularization_requests_controller.rb +10 -2
- data/app/controllers/hr_lite/tax_declarations_controller.rb +4 -0
- data/app/helpers/hr_lite/application_helper.rb +43 -30
- data/app/jobs/hr_lite/attendance_close_job.rb +6 -1
- data/app/models/hr_lite/approval.rb +5 -0
- data/app/models/hr_lite/attendance_record.rb +26 -0
- data/app/models/hr_lite/employee_profile.rb +1 -0
- data/app/models/hr_lite/hr_request.rb +2 -1
- data/app/models/hr_lite/office_location.rb +12 -0
- data/app/models/hr_lite/regularization_request.rb +10 -4
- data/app/services/hr_lite/attendance_puncher.rb +8 -3
- data/app/views/hr_lite/admin/assets/index.html.erb +3 -2
- data/app/views/hr_lite/admin/assets/new.html.erb +6 -2
- data/app/views/hr_lite/admin/attendances/index.html.erb +37 -6
- data/app/views/hr_lite/admin/attendances/show.html.erb +11 -7
- data/app/views/hr_lite/admin/attendances/week.html.erb +42 -0
- data/app/views/hr_lite/admin/checklists/index.html.erb +1 -1
- data/app/views/hr_lite/admin/comp_off_requests/index.html.erb +2 -2
- data/app/views/hr_lite/admin/comp_off_requests/show.html.erb +2 -2
- data/app/views/hr_lite/admin/documents/index.html.erb +1 -1
- data/app/views/hr_lite/admin/employees/_form.html.erb +15 -7
- data/app/views/hr_lite/admin/employees/show.html.erb +5 -5
- data/app/views/hr_lite/admin/expenses/index.html.erb +2 -2
- data/app/views/hr_lite/admin/leave_balances/index.html.erb +3 -3
- data/app/views/hr_lite/admin/leave_requests/index.html.erb +2 -2
- data/app/views/hr_lite/admin/leave_requests/show.html.erb +4 -6
- data/app/views/hr_lite/admin/loans/new.html.erb +2 -1
- data/app/views/hr_lite/admin/overview/index.html.erb +3 -3
- data/app/views/hr_lite/admin/regularization_requests/index.html.erb +1 -1
- data/app/views/hr_lite/admin/shared/_approvals_tabs.html.erb +6 -5
- data/app/views/hr_lite/appraisals/show.html.erb +1 -1
- data/app/views/hr_lite/approvals/index.html.erb +1 -1
- data/app/views/hr_lite/attendance/_month_grid.html.erb +21 -26
- data/app/views/hr_lite/attendance/_punch_card.html.erb +32 -10
- data/app/views/hr_lite/attendance/show.html.erb +36 -7
- data/app/views/hr_lite/benefits/index.html.erb +1 -1
- data/app/views/hr_lite/calendar/show.html.erb +29 -22
- data/app/views/hr_lite/comp_off_requests/index.html.erb +3 -3
- data/app/views/hr_lite/comp_off_requests/new.html.erb +3 -2
- data/app/views/hr_lite/documents/index.html.erb +32 -30
- data/app/views/hr_lite/employee_profiles/show.html.erb +2 -2
- data/app/views/hr_lite/expenses/index.html.erb +17 -35
- data/app/views/hr_lite/expenses/new.html.erb +11 -6
- data/app/views/hr_lite/holidays/_next_holiday.html.erb +11 -8
- data/app/views/hr_lite/holidays/index.html.erb +6 -6
- data/app/views/hr_lite/home/index.html.erb +29 -19
- data/app/views/hr_lite/hr_requests/index.html.erb +7 -24
- data/app/views/hr_lite/hr_requests/new.html.erb +7 -5
- data/app/views/hr_lite/hr_requests/show.html.erb +4 -0
- data/app/views/hr_lite/kudos/index.html.erb +4 -3
- data/app/views/hr_lite/leave_balances/index.html.erb +14 -5
- data/app/views/hr_lite/leave_requests/_balance_chips.html.erb +5 -3
- data/app/views/hr_lite/leave_requests/_out_list.html.erb +16 -0
- data/app/views/hr_lite/leave_requests/index.html.erb +8 -21
- data/app/views/hr_lite/leave_requests/new.html.erb +22 -9
- data/app/views/hr_lite/leave_requests/show.html.erb +3 -5
- data/app/views/hr_lite/loans/index.html.erb +18 -20
- data/app/views/hr_lite/policies/index.html.erb +1 -1
- data/app/views/hr_lite/regularization_requests/index.html.erb +2 -2
- data/app/views/hr_lite/regularization_requests/new.html.erb +11 -8
- data/app/views/hr_lite/resignations/show.html.erb +1 -1
- data/app/views/hr_lite/salary_slips/_slip_detail.html.erb +9 -3
- data/app/views/hr_lite/salary_slips/index.html.erb +48 -44
- data/app/views/hr_lite/shared/_bell.html.erb +1 -1
- data/app/views/hr_lite/shared/_form_errors.html.erb +1 -1
- data/app/views/hr_lite/tax_declarations/show.html.erb +24 -19
- data/app/views/hr_lite/team/show.html.erb +2 -2
- data/app/views/layouts/hr_lite/application.html.erb +24 -8
- data/config/routes.rb +3 -1
- data/lib/hr_lite/configuration.rb +16 -2
- data/lib/hr_lite/notifications.rb +1 -0
- data/lib/hr_lite/version.rb +1 -1
- metadata +4 -1
|
@@ -14,9 +14,11 @@ module HrLite
|
|
|
14
14
|
# the HR shell; nil (default) shows nothing.
|
|
15
15
|
:notifications,
|
|
16
16
|
# e.g. 6 — default probation for new hires (admin edits per employee)
|
|
17
|
-
:probation_months
|
|
17
|
+
:probation_months,
|
|
18
|
+
# true = a punch without GPS is refused (default: recorded and flagged)
|
|
19
|
+
:require_punch_location
|
|
18
20
|
|
|
19
|
-
attr_reader :leave_year_start_month, :slip_release_day, :self_regularization
|
|
21
|
+
attr_reader :leave_year_start_month, :slip_release_day, :self_regularization, :work_hours
|
|
20
22
|
|
|
21
23
|
# Misconfiguration must fail at boot, not as production 500s on every
|
|
22
24
|
# balance screen. Accepts "7" (ENV-friendly) and validates 1..12.
|
|
@@ -47,6 +49,16 @@ module HrLite
|
|
|
47
49
|
@self_regularization = value
|
|
48
50
|
end
|
|
49
51
|
|
|
52
|
+
# nil = no hours rule. { day: 8, probation_day: 9, week: 40 } = a closed
|
|
53
|
+
# Mon–Fri punch short of its day's hours is closed as a half day, and a
|
|
54
|
+
# week under `week` hours (pro rata for holidays and leave) is flagged.
|
|
55
|
+
def work_hours=(value)
|
|
56
|
+
ok = value.nil? || (value.is_a?(Hash) && %i[day probation_day week].all? { |k| value[k].is_a?(Numeric) && value[k].positive? })
|
|
57
|
+
raise ArgumentError, "work_hours must be nil or { day:, probation_day:, week: } (positive numbers), got #{value.inspect}" unless ok
|
|
58
|
+
|
|
59
|
+
@work_hours = value
|
|
60
|
+
end
|
|
61
|
+
|
|
50
62
|
# 0.1.0 pre-release name for public_url_base; kept as an alias so early
|
|
51
63
|
# adopters' initializers don't break.
|
|
52
64
|
alias_method :mail_link_base, :public_url_base
|
|
@@ -89,6 +101,8 @@ module HrLite
|
|
|
89
101
|
@leave_year_start_month = 1 # 1 = calendar year; 7 = July–June leave year
|
|
90
102
|
@slip_release_day = nil # e.g. 10 = slips open on the 10th of the next month
|
|
91
103
|
@self_regularization = nil # e.g. { within_days: 2, per_week: 2 } — employees fix their own missed punch
|
|
104
|
+
@require_punch_location = false
|
|
105
|
+
@work_hours = nil # e.g. { day: 8, probation_day: 9, week: 40 } — short days close as half days
|
|
92
106
|
|
|
93
107
|
# Leadership onboarding/offboarding. onboard_user must return a saved
|
|
94
108
|
# user record (default: create on user_class with whatever of
|
|
@@ -20,6 +20,7 @@ module HrLite
|
|
|
20
20
|
"attendance.regularized" => { bell: true, email: true, leadership_email: true, leadership_bell: false },
|
|
21
21
|
"attendance.missed_check_in" => { bell: true, email: true, leadership_email: false, leadership_bell: false },
|
|
22
22
|
"attendance.missed_check_out" => { bell: true, email: true, leadership_email: false, leadership_bell: false },
|
|
23
|
+
"attendance.short_day" => { bell: true, email: true, leadership_email: false, leadership_bell: false },
|
|
23
24
|
"payroll.finalized" => { bell: false, email: false, leadership_email: true, leadership_bell: true },
|
|
24
25
|
"payroll.published" => { bell: true, email: true, leadership_email: true, leadership_bell: false },
|
|
25
26
|
"kudos.mentioned" => { bell: true, email: true, leadership_email: false, leadership_bell: false },
|
data/lib/hr_lite/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: hr_lite
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.22.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- kshitiz sinha
|
|
@@ -69,6 +69,7 @@ files:
|
|
|
69
69
|
- app/assets/javascripts/hr_lite/mention.js
|
|
70
70
|
- app/assets/javascripts/hr_lite/nav.js
|
|
71
71
|
- app/assets/javascripts/hr_lite/print.js
|
|
72
|
+
- app/assets/javascripts/hr_lite/select_filter.js
|
|
72
73
|
- app/assets/stylesheets/hr_lite/application.css
|
|
73
74
|
- app/assets/stylesheets/hr_lite/hr_lite.css
|
|
74
75
|
- app/controllers/hr_lite/admin/appraisals_controller.rb
|
|
@@ -219,6 +220,7 @@ files:
|
|
|
219
220
|
- app/views/hr_lite/admin/assets/new.html.erb
|
|
220
221
|
- app/views/hr_lite/admin/attendances/index.html.erb
|
|
221
222
|
- app/views/hr_lite/admin/attendances/show.html.erb
|
|
223
|
+
- app/views/hr_lite/admin/attendances/week.html.erb
|
|
222
224
|
- app/views/hr_lite/admin/audit_logs/index.html.erb
|
|
223
225
|
- app/views/hr_lite/admin/benefits/index.html.erb
|
|
224
226
|
- app/views/hr_lite/admin/benefits/new.html.erb
|
|
@@ -314,6 +316,7 @@ files:
|
|
|
314
316
|
- app/views/hr_lite/kudos/index.html.erb
|
|
315
317
|
- app/views/hr_lite/leave_balances/index.html.erb
|
|
316
318
|
- app/views/hr_lite/leave_requests/_balance_chips.html.erb
|
|
319
|
+
- app/views/hr_lite/leave_requests/_out_list.html.erb
|
|
317
320
|
- app/views/hr_lite/leave_requests/index.html.erb
|
|
318
321
|
- app/views/hr_lite/leave_requests/new.html.erb
|
|
319
322
|
- app/views/hr_lite/leave_requests/show.html.erb
|