...
When checking in on a task/company, the user will also be checked in on the day.
Day check in
A user may check in/out on the day, to indicate that he/she has started/ended work. When check in out from the day, the user will also be checked out from any task/company where he/she is checked in.
If the user hasn't checked out from the day by midnight, the user will be checked out from the day automatically. The checkout time will be recorded as either 23:59, or the time of last 'normal' checkout, or a configured time.
Database
All check in/out are stored on the DB table user_checkins.
The day check in/out are stored in the DB table user_daycheckins.
Web
The startpage may include a box with nearby tasks/companies that allow check in.
...
On the details page for a task/company a small “Checkin” icon appears if the user can check in here.
App
The app start page acts much like the web startpage box displayed nearby tasks/companies.
Day check in done using a button at the bottom of the start page.
Hour registration
When checking out, the user may be asked to register time, or this may be done automatically.
Classes
Check in is handled by the class UserCheckin.
Day check in is handled by the class UserDayCheckin.
Auto checkout
There are several systems to handle an automatic checkout.
...
Another system ensures that no user can be checked in for more than 24 hours. This is handled by the UserCheckinGuard class
Reports
There are a number of reports that allow you to extract information about user check ins, the most commonly used are probably R6 and G4.
There is also a user defined report for extracting information.
Instant checkin/out
In the Task module, CRM and Support module an icon is displayed on tasks/companies/tickets, to allow instant checkin on that task/company/ticket.
...