Documentation
Chapters of the guide

Shifts

Last updated:

Translated from the Italian guide. Narciso itself is in Italian, so the names of buttons, menus and fields are shown exactly as they appear on screen, with a translation in brackets where it helps.

The Turni (Shifts) tab of the Staff page is the planning of working hours. Each team member has a row, the days run horizontally from left to right and the working hours are «painted» with the mouse, in the team member's colour.

Contents
  1. What you need to know before you start
  2. What the tab looks like
  3. Which days can be edited
  4. Painting shifts
    1. 1. Choosing the team member
    2. 2. Painting
    3. 3. Erasing
    4. 4. Moving the grid with the mouse
    5. 5. Copying and pasting a day with the two buttons
    6. 6. Undoing
  5. Moving around the grid: shortcuts and zoom
    1. The Zoom
  6. The Muoviti button
  7. Search
  8. Duplicating a day's hours onto other days
  9. Automatic saving
  10. Printing the shifts report
  11. The animated tutorial
  12. Procedures
  13. Warnings in the tab
  14. Related entries

What you need to know before you start#

  • Shifts are per location: what you draw applies to the location you are working in (see Locations map and active location). A person cannot have two overlapping shifts in different locations.
  • The team members shown are those assigned to the active location, including those whose access has been deactivated.
  • Shifts have practical effects: the Operatore (operator) can access the program only during their shift in that location, with 30 minutes of advance (see End of shift); and the clock-in is recorded only if a shift exists in that location, with the same advance (see Attendance).
  • The day runs from 06:00 to 24:00 (18 hours). You cannot schedule times outside this band.
  • The finest resolution is 5 minutes.
  • Only the Titolare (owner) and Responsabile (manager) can save. An Operatore can move around the grid, but every attempt to save is refused with the message «Operazione riservata a Titolare o Responsabile.» (Operation reserved to the Titolare or Responsabile.)

What the tab looks like#

From top to bottom:

  1. The toolbar, with the buttons Muoviti (Move), Zoom, Ricerca (Search), Esporta (Export) and Tutorial.
  2. On the left the Dipendente (Employee) column, on the right the grid. Above the grid there are two fixed rows: the days row (for example «LUN 12 GENNAIO 2026», with the Duplica orari (Duplicate hours) button for each day) and the hours row (from 06:00 to 24:00).
  3. At the bottom the status bar, with Pronto (Ready) and Totale record: N (Total records: N) (the number of team members).

While the data loads, a grey veil passes over the tab. If the existing shifts cannot be loaded, the red warning «Impossibile caricare i turni esistenti: il salvataggio automatico resta disattivato finché non ricarichi la pagina, per non rischiare di sovrascriverli.» (Unable to load the existing shifts: automatic saving stays off until you reload the page, so as not to risk overwriting them.) appears. In that case reload the page before painting.

The Dipendente column. A box for each team member: round photo (or the initial on a background of their colour), first name and surname. Each row is at least 64 pixels high; if there are fewer than 5 team members, empty grey rows are added up to 5. The name of the selected team member has a yellow background.

The grid. Painted cells have the team member's colour. On opening, the grid positions itself on today's date, or on the day indicated by the link you came from (for example from the appointments calendar, see Calendar).

Which days can be edited#

The grid runs from 1 January 2025 to two years from today.

Day Appearance What you can do
Today and future days White cells Paint and erase shifts, copy, paste, duplicate
1 to 10 days ago Grey Erase only (right click). You cannot paint
More than 10 days ago Darker grey Nothing: read only

Shifts already painted on past days stay visible and are kept. When you hold still on an empty cell of the selected team member, on an editable day, a dashed outline in their colour appears: it shows where you would paint.

Painting shifts#

The basic idea: first you choose who, then you paint.

1. Choosing the team member#

  • Click the team member's name in the left-hand column: the name is highlighted in yellow and the cursor on their row becomes a dot in their colour. A second click on the same name deselects it.
  • Alternatively, type the row number on the keyboard: 1 for the first, 2 for the second and so on. For numbers with several digits, type them one after the other within about 1.5 seconds (1 and then 2 for the twelfth). A box with the digits typed appears at the top left. The team member is selected, or deselected if already selected, and the grid scrolls vertically to them. If the number is higher than the team members that exist, nothing happens.
  • With a team member selected, only their row can be painted.

2. Painting#

  • Left click on a cell of the selected team member's row: the cell is coloured.
  • Button held down and dragged to the right or left: the whole stretch crossed is coloured, with no gaps even if the mouse moves fast. The drag continues beyond the boundary of the day.
  • On past days you cannot paint.
  • How much time a cell colours depends on the Zoom: with «2 ORE» (2 HOURS) a cell corresponds to two whole hours, with «5 MIN» to five minutes.

3. Erasing#

  • Right click on a cell erases the shift in that cell; right click held down and dragged erases a stretch.
  • With a team member selected, only their shifts are erased; with no team member selected, the right click erases the shifts of any row crossed. With a team member selected, the right click on another's row does nothing.
  • You can also erase on past days, up to 10 days back.
  • The browser's right-click menu is disabled across the whole tab.

4. Moving the grid with the mouse#

  • Left button held down and dragged on a cell where you are not painting (for example on a team member who is not selected, or with nobody selected): the grid scrolls horizontally like a map; the cursor becomes a hand.
  • Middle button (wheel pressed) held and dragged: scrolls horizontally anywhere, even while painting.
  • At the ends of the grid (the start of 2025 or the end of the two future years) the grid goes back to today's date.

5. Copying and pasting a day with the two buttons#

  • Copy: press the left and right buttons together on any cell of the day to copy and wait half a second. The warning «Copiato orario di NOME (GIORNO)» (Copied schedule of NAME (DAY)) appears. With a team member selected, only their shifts for that day are copied; with nobody selected all the staff is copied («Copiato orario di Tutto lo staff (…)»). If there is no shift to copy on that day, nothing happens.
  • Paste: press the two buttons together twice in quick succession (within half a second) on a cell of the destination day. «Incollato orario per NOME (GIORNO)» (Pasted schedule for NAME (DAY)) appears.
    • If a single team member had been copied: the schedule is pasted onto that team member or, if another is selected, onto the selected one, with the colour of whoever receives it. The shifts already present that day for that team member are replaced.
    • If all the staff had been copied: the paste replaces all the shifts of the destination day with the copied ones.
    • You paste only onto today or future days: on past days nothing happens.
  • If the two buttons are pressed on another day within half a second, the copy of the previous day is carried out straight away and a new copy starts.

6. Undoing#

Ctrl + Z (on Mac, Cmd + Z) undoes the last operation: a brushstroke, an erasure, a paste or a duplication. The warning «Ultima modifica annullata» (Last change undone) appears. You can undo up to 50 operations; when there is nothing left, «Niente da annullare» (Nothing to undo) appears (yellow). You cannot redo an operation that was undone. Undo does not work while the cursor is inside a text field.

Moving around the grid: shortcuts and zoom#

Gesture Effect
Click on the team member's name Selects or deselects the team member
Type 1, 2, … 12 Selects or deselects the team member with that row number and scrolls to them
Left click on a cell (team member selected) Paints the cell
Left held and dragged on the selected team member's row Paints a continuous stretch
Right click on a cell Erases the cell (only the selected team member, if there is one)
Right held and dragged Erases a stretch
Left held and dragged elsewhere Moves the grid horizontally
Middle button held and dragged Moves the grid horizontally
Left and right together (once) Copies the day
Left and right together, twice in quick succession Pastes the copied day
Ctrl (or Cmd) + Z Undoes the last operation (up to 50)
Ctrl (or Cmd) + wheel Zooms in or out, centred on the mouse point. Wheel up = more detail, down = less. At most one step every quarter of a second
Alt + wheel Scrolls the grid horizontally
Plain wheel Scrolls vertically (team members). After releasing Ctrl the wheel is ignored for about half a second, to avoid jolts
Up arrow or W key Scrolls up by one row
Down arrow or S key Scrolls down by one row
Left arrow or A key Scrolls left by one cell
Right arrow or D key Scrolls right by one cell
A, D, ← or → pressed two or three times quickly (within about a third of a second) The step is multiplied: 2 or 3 cells at a time (at most 3)

Keyboard shortcuts do not work while the cursor is inside a text field (for example the search field).

The Zoom#

The Zoom button opens a small panel with the minus magnifying glass, the level label and the plus magnifying glass. It closes by clicking outside. The levels, from the widest to the most detailed (you start at «2 ORE»):

Level Label Each cell corresponds to Cells per day
1 2 ORE 2 hours 9
2 1 ORA 1 hour 18
3 30 MIN 30 minutes 36
4 15 MIN 15 minutes 72
5 10 MIN 10 minutes 108
6 5 MIN 5 minutes 216

The buttons are disabled at the two ends; clicks repeated too quickly (less than 0.4 seconds) are ignored. With a wide level, such as «2 ORE», the whole cell is coloured, that is, two hours: for precise times use the more detailed levels.

The exact times of a shift. At the «2 ORE» level, holding the mouse still for about a second on a painted cell brings up a box «Fasce Lavorative» (Working bands) with the name, the day and the time ranges (for example «09:00 – 13:00»), or «Nessuna fascia lavorativa» (No working band). The box stays while the mouse is over it or over the cell.

The Muoviti button#

  1. Click Muoviti (calendar icon): a monthly calendar opens; it closes by clicking outside.
  2. At the top the month and year, with arrows to change month. The month opens on the day currently visible.
  3. The week starts on Monday. Today's date is circled in amber; the day currently visible in the grid is highlighted in solid green.
  4. Under each day a coverage bar shows how many team members have at least one shift on that day compared with the total: red none, orange up to 30%, amber up to 60%, lime green up to 80%, green above that. At the bottom the «Presenza Staff» (Staff presence) legend: Nessuno (None) – Metà (Half) – Tutti (All).
  5. Days outside the managed range are faded and cannot be clicked.
  6. A click on a day closes the calendar and scrolls the grid to that day.

Search#

  1. Click Ricerca: the bar becomes a field with the hint «Ricerca data (es. 12/08) o nome…» (Search date (e.g. 12/08) or name…).
  2. Typing part of a team member's name scrolls the grid vertically to their row.
  3. Typing a date in the form day/month (12/08) or day/month/year (12/08/2026) scrolls the grid to that day; if the year is missing the current one applies. Dates outside the managed range are ignored.
  4. It is not a filter: the search is only for moving around.
  5. INVIO (Enter) (green button) and the X («Annulla ricerca», Cancel search) close the field. The Enter key on the keyboard has no effect.

Duplicating a day's hours onto other days#

Each day header has a square button with two sheets and a + («Duplica orari»).

  1. To copy only one team member, select them first (click on the name). With nobody selected, the shifts of all the staff are duplicated.
  2. Click Duplica orari on the source day: the button turns green and a small monthly calendar appears below.
  3. Move the month with the arrows.
  4. Choose the destination range:
    • first click: start day;
    • second click on a later day: end day (the range is coloured; before the second click, hovering the mouse shows the preview);
    • a click on a day before the first does nothing;
    • a click on the start day already chosen clears the selection; a click on the end day already chosen removes only the end day;
    • with a single click (start day only) it duplicates onto a single day.
  5. To exclude individual days, with the range complete, right click on a day: it appears struck through in red; another right click reactivates it. A fast double right click (within 0.4 seconds) excludes or reactivates all the days with the same day of the week in the range (for example all the Sundays).
  6. The Giorni Selezionati (Selected days) field shows how many days will be changed.
  7. Click DUPLICA (DUPLICATE). «Orari duplicati su N giorni» (Hours duplicated on N days) appears and the box closes.
  8. To give up: click outside the box (even a right click), or click the day's button again.

Good to know:

  • With no day chosen the yellow warning «Seleziona almeno un giorno di destinazione» (Select at least one destination day) appears.
  • Past days are not overwritten: if all the days chosen are in the past, «I giorni passati non possono essere sovrascritti» (Past days cannot be overwritten) appears; if some are in the past they are skipped and N counts only the days changed.
  • The shifts already present on the destination days (of the selected team member or of all) are erased and replaced by those of the copied day. If the source day has no shifts, the destination days are emptied anyway.
  • Duplication can be undone with Ctrl + Z.

Automatic saving#

  • Every change (brushstroke, erasure, paste, duplication, undo) is saved by itself about a second after the last gesture. There is no Save button.
  • Saving always sends the whole planning of the location, replacing the previous one. If two people edit the shifts of the same location at the same moment, whoever saves last wins and the other's changes are lost.
  • If you change tab or page, or close the browser, within a second of the last change, that change may not be saved: after the last gesture, wait a moment before leaving.
  • If saving fails, a red warning with the reason appears; the shifts stay painted on screen, but they are not saved and will not be there when the page is reopened. If in doubt, reload the page and check.

Saving messages:

Message Meaning
«Operazione riservata a Titolare o Responsabile.» Whoever tried to save is an Operatore
«Turno in conflitto: questa persona ha già un turno in "NOME SEDE" che si sovrappone nello stesso orario.» (Shift in conflict: this person already has a shift in "LOCATION NAME" that overlaps at the same time.) See below
«Uno o più collaboratori non sono assegnati a questa sede: aggiungili prima al personale della sede.» (One or more team members are not assigned to this location: add them to the location's staff first.) A shift was painted for a team member who is not part of the location's staff
«Errore nel salvataggio, riprova più tardi» (Error while saving, try again later) Generic error: the network is down or the server did not respond

Conflicts between locations. A person cannot work in two locations at the same time. If you save a shift that overlaps one already present for the same person in another location, the red warning with the name of the location appears. After the warning the grid goes back to the saved state: all changes not yet saved must be redone, not only the one in conflict. Then change the time to avoid the overlap.

Team member not assigned to the location. To assign a shift to a person who works only in another location, first add them to the location's staff (see Staff records). The Titolare and Responsabile can instead assign shifts to themselves in any location: in that case the location is assigned to them.

Printing the shifts report#

The Esporta button (down arrow) opens the window «Stampa Report Turni» (Print shifts report), with the subtitle «Esporta la pianificazione dei turni in formato PDF.» (Export the shift planning in PDF format.)

Fields of the window

  1. Intervallo Date (Date range): shows «Seleziona periodo» (Select period), or «gg/mm/aaaa – Seleziona fine» (dd/mm/yyyy – Select end), or «gg/mm/aaaa – gg/mm/aaaa». On opening, the whole month of the day visible in the grid is preset. Modifica opens a monthly calendar:
    • first click: start; second click on a later day: end;
    • a click on a day before the start moves the start to that day;
    • a click on the start day clears everything; a click on the end day removes only the end;
    • if the range is already complete, a click on another day starts again from a new start.
  2. Membri dello Staff (Staff members): a menu that shows «Tutti i componenti» (All members) (default), «Nessuno selezionato» (None selected) or «Selezionati: N barbieri» (Selected: N barbers). Open, it shows a «Cerca staff…» (Search staff…) field, the Tutti i componenti item («Seleziona tutto lo staff», Select all the staff, hidden while searching) and the list with a tick box for each.
  3. Annulla (Cancel) closes the window; Crea report (Create report) (download icon) is disabled until a start and end and at least one team member are indicated. A click outside the window closes it.

What happens with «Crea report». After about half a second the browser's print window opens with a document in A4 landscape format, to print or to save with «Salva come PDF» (Save as PDF). The document contains:

Page 1 – Riepilogo Turni Personale (Staff Shifts Summary)

  • the heading with the salon's name, the address, the title Riepilogo Turni Personale and the tag PERIODO: gg/mm/aaaa – gg/mm/aaaa (PERIOD: dd/mm/yyyy – dd/mm/yyyy);
  • the «Matrice di Presenza Globale (Ore Totali Previste)» (Global Presence Matrix (Total Expected Hours)): a table with the columns Dipendente, Ruolo (Role), a column for each week and Totale Parziale (Partial Total); in each cell the expected hours (for example «32 ore» or «7.5 ore»). The last row, TOTALE SALONE (SALON TOTAL), adds up the team members. Weeks start on Monday and those at the edges of the period are partial;
  • the summary cards, one per team member, with the typical week: consecutive days with the same hours are grouped (for example «Lun-Ven: 09:00 – 13:00, 15:00 – 19:00») and a final line Riposo: (Rest:) lists the days off. For each day of the week, the schedule that recurs most often in the period is chosen;
  • at the bottom the signature lines Data (Date) and Firma della Direzione (Management signature).

Following pages – Foglio Orari Individuale (Individual Timesheet) (one per team member)

  • the heading with the salon's name, Foglio Orari Individuale, Dipendente: NOME and Qualifica (Position);
  • a table with the columns Periodo, Lunedì … Domenica, Totale (Period, Monday … Sunday, Total), one row per week. Each cell shows the ranges (for example «09:00 – 13:00, 15:00 – 19:00»), or RIPOSO (REST), or FESTIVO (HOLIDAY) (a day with no shifts that coincides with a national holiday), or «-» (a day outside the period);
  • the final row Totale Ore Periodo Previste (Total Expected Hours for the Period);
  • an empty Note: box to fill in by hand and the signature lines Data, Firma Dipendente (Employee signature), Firma Direzione (Management signature).

At the bottom of every page: «Documento generato il gg/mm/aaaa alle hh:mm» (Document generated on dd/mm/yyyy at hh:mm), the legend RIPOSO = giorno di riposo pianificato · FESTIVO = riposo coincidente con festività nazionale · «-» = giorno fuori dal periodo selezionato (REST = planned day of rest · HOLIDAY = rest coinciding with a national holiday · «-» = day outside the selected period) and «Pagina X di N» (Page X of N).

Details:

  • The position printed is the one indicated in the team member's record; if missing, Titolare for the Titolare and Barbiere (Barber) for everyone else, even a Responsabile.
  • The hours are calculated from the painted shifts (every 5 minutes counts as 1/12 of an hour).
  • Holidays recognised: 1 January, 6 January, 25 April, 1 May, 2 June, 15 August, 1 November, 8 December, 25 December, 26 December. Easter, Easter Monday and local observances are not recognised and appear as RIPOSO.
  • The document title, useful as the PDF file name, is «Nome Salone – Turni OTTOBRE 2026» (Salon Name – Shifts OCTOBER 2026) (month and year in capitals).
  • If the browser blocks the print window, check the browser settings.

The animated tutorial#

The Tutorial button on the toolbar opens an animated guide of the tab. It is a mock Turni page, with made-up data, in which a cursor carries out the actions by itself while messages beside it explain them: the real page is not touched. The button opens a menu with two items:

  • Tutorial normale (Normal tutorial) – «A schermo intero, sulla pagina» (Full screen, on the page);
  • Tutorial 4:5 – a 4:5 format box on a green background, with the same lessons divided into five chapters and the messages advancing by themselves: it is meant to be recorded as a video.

In the normal tutorial you move on with Invio (Enter) at each message and exit with Esc or with the Esci (Exit) button; while it is open, the side menu is locked. The chapters, in order: Benvenuto (Welcome), Seleziona un dipendente (Select an employee), Dipingi un turno (Paint a shift), Cancella i turni (Erase the shifts), Copia e incolla un giorno (Copy and paste a day), Annulla l'ultima modifica (Undo the last change), Muoviti con la tastiera (Move with the keyboard), Zoom sugli orari (Zoom on the hours), Scorri di lato (Scroll sideways), Trascina la tabella (Drag the table), Leggi gli orari esatti (Read the exact hours), Duplica su più giorni (Duplicate onto several days), Muoviti nel calendario (Move around the calendar), Ricerca (Search), Esporta (Export).

Procedures#

Creating a team member's shifts for a week

  1. Open the Turni tab.
  2. Set the Zoom to «30 MIN» or «15 MIN».
  3. Click the team member's name (it must appear highlighted in yellow).
  4. With Muoviti go to the start day.
  5. Hold down the left button and drag along the hours (for example from 09:00 to 13:00); repeat for the afternoon.
  6. Move on to the following days with the D key or with Alt + wheel.
  7. Wait a second after the last gesture before changing page.

Repeating the same schedule for all the weeks of the month

  1. Draw one complete day.
  2. Select the team member (if you want to copy only them).
  3. Click Duplica orari on the day you drew.
  4. Choose the start and end of the month; with the right click exclude the rest days (fast double right click for all the Sundays).
  5. Press DUPLICA and check the result; if it is not right, Ctrl + Z.

Copying one day onto another: left and right together on the day to copy, wait for «Copiato orario di …»; then left and right together twice quickly on a future day.

Erasing the shifts of a team member's day: select the team member, right click and drag along the whole day.

Printing the month's planning: Esporta, check range and staff, Crea report, then in the browser window choose the printer or «Salva come PDF».

Going to a specific date: Muoviti and click the day, or Ricerca and type, for example, 12/08.

Warnings in the tab#

Text Type Meaning
Impossibile caricare i turni esistenti: il salvataggio automatico resta disattivato… Red Loading failed; saving stays off until the page is reloaded
Copiato orario di NOME (GIORNO) Information Copy of the day carried out
Incollato orario per NOME (GIORNO) Green Paste carried out
Orari duplicati su N giorni Green Duplication carried out
Seleziona almeno un giorno di destinazione Yellow Duplicate with no days chosen
I giorni passati non possono essere sovrascritti Yellow All the days chosen for duplication are in the past
Ultima modifica annullata Information Ctrl + Z carried out
Niente da annullare Yellow Ctrl + Z with nothing to undo
Turno in conflitto… Red Overlap with another location; the grid goes back to the saved state
Errore nel salvataggio, riprova più tardi Red Saving did not succeed

Related entries#