Agora

Employees and HR: ranks, shifts, leave, time zone

Who serves, who is away, how many hours and who is slipping: hours come from in-game presence, managers handle ranks and leave with a reason.

Updated on Oct 5, 2026, 1:36 p.m.

On this page
  1. Who can do what
  2. The roster
  3. Shifts
  4. Leave
  5. The HR time zone
  6. Activity tracking

In short. Each department's Employees & HR section (View employees permission) answers four questions: who serves, who is away, how many hours, who is slipping. Hours are not declared: they come from the in-game presence sent by the resource.

You need the game database connected, the resource deployed and at least one job attached to the department.

Who can do what #

A department's employee managers are:

  • forum staff (admin, moderateur);
  • a role with the Manage an MDT department right for this department;
  • in-game ranks with the Manage the service's employees permission, for that job's department only.
ActionWho
See the HR page, their own hours, request leaveEvery member of the department
Open another officer's HR pageManagers
Add or remove a member, change a rank (with reason)Managers
Accept or refuse leaveManagers
Add a forgotten shift, correct hours (with reason)Managers
Close abandoned shifts of every departmentStaff only

Outside staff, a manager never touches anything about themselves, and promotes no one above their own rank.

The roster #

Employees & HR: the department members table with callsign, rank, status (active, on leave), hours over 30 days, on duty and last shift

A member carries: name, character ID (this is what links the hours), forum account (optional), job, rank, callsign, status, internal note. The employee list is filled by hand (Add a member to the roster, Remove from the roster).

Changing a rank requires a reason (3 to 500 characters). The officer's HR page keeps their rank history and seniority.

A few safeguards when several managers work at the same time:

  • A record changed in the meantime is not overwritten. If you save a record that stayed open while another manager changed it (a promotion, for example), saving is refused: "This record was just modified by someone else: reload the page, then redo your change. Nothing was saved." Without this, the old rank would have come back without anyone deciding it.
  • No duplicates. Adding the same person twice to the same position is refused: "This person is already on the roster for this position: edit their record instead of adding a second one." A double click on Add no longer creates two seats (which counted the hours twice). An account that serves with two characters in the same position keeps one record per character.
  • Removing twice is clear. Removing an employee who is already removed shows "Employee not found" without writing anything more to the HR log.
  • Removing an employee or a leave request asks for confirmation on the page (sentence, button, Cancel), like the other actions that cannot be undone.

Next to the entered status, Agora shows the actual status: "On leave" during accepted leave, "Inactive" after 21 days without a shift.

Shifts #

A shift opens when a player connects with a character of one of the department's jobs, and closes when they disconnect. A shift never closed (server killed abruptly) is capped at 12 h and counts no confirmed minute.

Managers can Close a shift, add a forgotten shift or correct hours: 12 h at most, nothing in the future, nothing older than 90 days, no overlap. The correction stays visible ("corrected by …").

Leave #

  1. Request leave: start, end, reason (at least 3 characters), department or "all my departments".
  2. A manager accepts or refuses, with an optional note.

Maximum length: 180 days. The end day is included. The reason is only visible to managers and the person concerned; others only see who is away and when. The reason is never sent by the leave.requested webhook (it may be health-related).

  • Leave targets a post. When it targets a specific job, the officer is "On leave" on that post only: they stay active, and counted in activity tracking, on their other posts (the roster, the HR page and activity tracking follow the same rule). "All my departments" leave covers all of them.
  • Leave that has already ended can no longer be accepted: the manager reads "This leave has already ended."

The HR time zone #

Shifts and leave are entered and displayed in the HR time zone, whatever the zone of the machine hosting Agora. Set it in Administration → Configuration → Site identity, Community time zone block: type a country or a city (Toronto, Paris…) and pick a suggestion, or enter an IANA name such as Europe/Paris; empty = America/Toronto. It applies to the whole Hub: forum, MDT, HR, donations, and court hearing dates.

Activity tracking #

Over 7 days, 30 days or the current month: hours served, hours expected, number of shifts, last shift, and a verdict ("up to date", "no shift", "below threshold"…). Accepted leave excuses. Managers set the department threshold (180 minutes per week and 14 days by default) and export as CSV.

Hours come from in-game presence: it is an activity indicator, not a payroll sheet.

Was this article helpful?