# HUVIS kasutusjuhend

Täielik kasutusjuhend eesti keeles

# Autentimine

# Süsteemi sisselogimine

HUVISesse sisselogimiseks avage veebilehitseja ja minge oma süsteemi aadressile. Sisselogimislehel on kolm autentimisviisi.

## Smart-ID

1. Valige vahekaart **Smart-ID**.
2. Sisestage oma **isikukood**.
3. Valige **riik** (Eesti, Läti või Leedu).
4. Vajutage **Logi sisse**.
5. Ekraanile ilmub **kontrollkood** (4 numbrit).
6. Avage telefonis rakendus **Smart-ID** — seal ilmub sama kontrollkoodiga kinnitustaotlus.
7. Veenduge, et koodid langevad kokku, ja kinnitage sisselogimine rakenduses (PIN2).
8. Pärast kinnitamist logite automaatselt sisse.

> **Tähtis:** Ekraanil ja Smart-ID rakenduses olev kontrollkood peavad olema samad. Kui koodid ei ühti — **ärge kinnitage** sisselogimist.

## Mobiil-ID

1. Valige vahekaart **Mobiil-ID**.
2. Sisestage oma **telefoninumber** (vormingus +372XXXXXXXX).
3. Sisestage oma **isikukood**.
4. Vajutage **Logi sisse**.
5. Ekraanile ilmub **kontrollkood** (4 numbrit).
6. Teie telefonile saabub kinnitustaotlus — veenduge, et kontrollkoodid langevad kokku.
7. Sisestage telefonis kinnitamiseks **PIN2**.
8. Pärast kinnitamist logite automaatselt sisse.

> **Nõue:** Mobiil-ID peab olema teie mobiilioperaatori juures aktiveeritud.

## SMS-kood

1. Valige vahekaart **SMS**.
2. Sisestage oma **isikukood**.
3. Vajutage **Saada kood**.
4. Teie telefonile saabub **SMS 4-kohalise koodiga**.
5. Sisestage saadud kood ekraanil olevasse lahtrisse.
6. Vajutage **Kinnita**.

> **Märkus:** SMS-kood kehtib **5 minutit**. Uue koodi saab tellida **60 sekundi** pärast. Maksimaalselt **5 katset**, pärast seda tuleb tellida uus kood.

## Rolli ja organisatsiooni valimine

Kui teie isikukood on seotud mitme rolli või organisatsiooniga, ilmub pärast edukat autentimist lisasamm.

### Mitu organisatsiooni

1. Süsteem kuvab saadaolevate organisatsioonide loendi.
2. Valige vajalik organisatsioon.
3. Vajutage **Jätka**.

### Mitu rolli

Kui teil on valitud organisatsioonis mitu rolli (nt Töötaja ja Maksja):

1. Süsteem kuvab saadaolevate rollide loendi.
2. Valige vajalik roll:
   - **Töötaja** — ligipääs administraatori liidesele
   - **Maksja** — avalduste, arvete ja õpilaste andmete vaatamine
   - **Õpilane** — tunniplaani, testide ja kodutööde vaatamine
3. Vajutage **Jätka**.

Pärast valikut jõuate vastava kabineti avalehele.

## Süsteemist väljalogimine

1. Vajutage paremas ülanurgas olevat **oma nime** või **profiili ikooni**.
2. Rippmenüüst valige **Logi välja**.
3. Teid suunatakse sisselogimislehele.

> **Soovitus:** Logige alati süsteemist välja, kui töötate avalikus arvutis.

## Probleemid sisselogimisel

| Probleem | Lahendus |
|----------|----------|
| Smart-ID ei kuva taotlust | Veenduge, et Smart-ID on aktiveeritud ja telefon on internetiga ühendatud |
| Mobiil-ID ei reageeri | Kontrollige, et Mobiil-ID on operaatori juures aktiveeritud ja telefonil on levi |
| SMS-kood ei saabu | Oodake 60 sekundit ja tellige kood uuesti. Veenduge, et telefoninumber on süsteemis määratud |
| «Liiga palju katseid» | Oodake näidatud aeg (1–30 minutit) ja proovige uuesti |
| Ei saa rolli valida | Pöörduge administraatori poole — teie konto võib olla blokeeritud |

# Alustamine

# Alustamine HUVISega

## Süsteemi sisselogimine

Kõigi sisselogimisviiside (Smart-ID, Mobiil-ID, SMS-kood) üksikasjalik kirjeldus on peatükis [Autentimine](https://docs.huvis.ee/link/112).

![Avaleht pärast sisselogimist](images/getting-started/01_after_login.png)

## Liidese ülevaade

Pärast süsteemi sisselogimist näete järgmisi põhielemente:

### Külgmine navigeerimispaneel

Vasakul asub peamenüü jaotistega (saadavus sõltub rollist ja õigustest):

- **Töölaud** — avaleht vidinate ja statistikaga
- **Arved** — arvete koostamine, aruanne, soodustused, seaded
- **Otsing** — süsteemiülene otsing
- **Konverentsid** — videokonverentsid (BigBlueButton)
- **Vestlus** — sõnumid ja grupivestlused
- **Testid** — testid, küsimustepank, katsed
- **Kursused** — avaldused, erialad, spetsialiseerumised, kodutööd, õppekavad, seaded
- **Teavitused** — massisaadetised, loend, mallide seaded
- **Personal** — töötajad, personalipaneel, puhkuste seaded
- **Õpe** — ruumid, mittetöötavad päevad
- **Seaded** — rollid, üldseaded, klassid, avalikud lingid, logid, organisatsioonid, poliitikad
- **Aruanded** — maksjad, õpilased, kohalolek, tundide asendused

### Ülemine paneel

Ekraani ülaosas on:

- **Keele** valija liidese jaoks (ET / RU)
- **Organisatsiooni** valija (kui saadaval on mitu)
- **Õppeaasta** valija

![Juurleht](images/getting-started/02_root.png)

## Keele vahetamine

Saadaolevate keelte komplekti seadistab administraator iga organisatsiooni jaoks. Näiteks süsteemis võib olla ainult eesti keel, ainult vene keel, mõlemad või mis tahes muu toetatud keel.

Keele vahetamiseks:

1. Leidke ülemiselt paneelilt keelevalija (kuvatakse kui **ET**, **RU** jne).
2. Vajutage valijale.
3. Valige loendist vajalik keel.
4. Liides lülitub kohe valitud keelele.

![Eesti keelele lülitumine](images/getting-started/04_change_language_et.png)

## Süsteemist väljalogimine

1. Vajutage paremas ülanurgas olevat **oma nime** või **profiili ikooni**.
2. Rippmenüüst valige **Logi välja**.
3. Teid suunatakse sisselogimislehele.

> **Soovitus:** Logige alati süsteemist välja, kui töötate avalikus arvutis.

# Töölaud

# Töölaud (Dashboard)

Töölaud on avaleht, mida näete kohe pärast sisselogimist. Töölaua sisu sõltub teie rollist.

## Töötaja / administraatori töölaud

![Töötaja töölaud](images/dashboard/worker_dashboard.png)

### Statistikakaardid

Ülemises reas kuvatakse kolm kaarti põhinäitajatega:

| Kaart | Kirjeldus |
|-------|-----------|
| **Läbiviidud tunnid** | Teie kursuste läbiviidud tundide koguarv |
| **Allkirjastamata avaldused** | Allkirjastamist ootavate avalduste arv |
| **Rühmade täitumus** | Rühmade täitumise protsent. Viige kursor näidiku peale, et näha absoluutseid numbreid (näiteks 15/20) |

### Minu kursused

Nimekiri kursustest, kus olete õpetaja või assistent:

1. Iga kursuse kohta kuvatakse õpilaste arv.
2. Kasutage **otsinguvälja** kursuse kiireks leidmiseks nime järgi.
3. Kui kursusi on rohkem kui 6, vajutage **Näita veel**, et kuvada täielik nimekiri.
4. Iga kursuse jaoks saadaolevad tegevused:
   - **Märgi kohalolek** — minge kohaloleku märkimisele
   - **Õpilased** — kursuse õpilaste nimekirja vaatamine
   - **Kursus** — minge kursuse detailide lehele

### Lähimad tunnid

Nimekiri järgmistest 3 planeeritud tunnist koos:
- Kuupäeva ja kellaajaga
- Ruumiga (kui määratud)
- Õpetajaga

Tänased tunnid on visuaalselt esile tõstetud.

### Õpilaste sünnipäevad

Nimekiri õpilastest, kellel on sünnipäev lähima 14 päeva jooksul:
- Õpilase nimi
- Vanus (mitu aastat saab)
- Sünnipäeva kuupäev
- Mitu päeva on jäänud

Tänased sünnipäevalapsed on kollase taustaga.

### Arvete olek

Ringdiagramm finantsstatistikaga:
- Esitatud summad
- Tasutud summad
- Tähtaja ületanud summad

### Puhkuste kinnitamine

Kuvatakse Personali mooduli olemasolul ja puhkuste kinnitamise õigusega:
- Kinnitamist ootavate taotluste arv
- Praegu puhkusel olevate töötajate arv
- Esimeste 5 ootava taotluse nimekiri koos kuupäevade ja kestusega

![Töötaja töölaud — lisavaade](images/dashboard/worker_dashboard_2.png)

### Kalender

Paremal asub interaktiivne kalender:
1. Kuude vahel liikumine nooltega.
2. Planeeritud tundidega päevad on tähistatud markeritega.
3. **Vajutage kuupäevale**, et avada selle päeva tunniplaaniga modaalaken.

---

## Maksja töölaud

### Statistikakaardid

| Kaart | Kirjeldus |
|-------|-----------|
| **Külastatud tunnid** | Teie laste külastatud tundide koguarv |
| **Allkirjastamata avaldused** | Teie allkirja ootavad avaldused |

### Lähimad tunnid

Nimekiri järgmisest 5 tunnist:
- Kuupäev ja kellaaeg
- Kursuse nimi
- Ruum ja õpetaja
- Kohaloleku staatus (kui juba märgitud)

Tänased tunnid on esile tõstetud sinise märgisega.

### Tasumata arved

Nimekiri esitatud, aga tasumata arvetest:
- Kursuse nimi
- Arve number
- Tasumise kuupäev
- Summa
- Nupp **Tasu** — üleminek maksmislehele

Link **Kõik** viib arvete täielikku nimekirja.

### Kalender

Interaktiivne kalender tundide kuupäevade markeritega. Vajutage kuupäevale, et näha tunniplaani.

---

## Õpilase töölaud

![Õpilase töölaud](images/dashboard/student_dashboard.png)

### Statistikakaardid

| Kaart | Kirjeldus |
|-------|-----------|
| **Külastatud tunnid** | Külastatud tundide arv |
| **Aktiivsed kursused** | Kursuste arv, millele olete registreeritud |
| **Järgmine tund** | Lähima tunni kuupäev, kellaaeg ja nimi |

### Määratud testid

Nimekiri testidest, mis on teile määratud ja pole veel läbitud:
- Testi nimi
- Testi tüüp (märgis)
- Lõpptähtaeg (kui märgitud) — sorteeritakse lähima tähtaja järgi
- Järelejäänud katsete arv
- Nupp **Alusta testi** (mitteaktiivne, kui katsed on ammendatud)

Link **Kõik** viib testide täielikku nimekirja.

### Lähimad tunnid

Sarnaselt maksja töölauaga: lähimate tundide nimekiri kuupäeva, kellaaja, kursuse ja ruumiga.

### Kalender

Interaktiivne kalender tundide kuupäevade markeritega.

---

## Tunniplaani modaalaken

Kalendris kuupäevale vajutades avaneb aken valitud päeva detailse tunniplaaniga:
- Kursuste nimekiri koos selle kuupäeva tunniplaaniga
- Kellaaeg, ruum, õpetaja

Töötajatele filtreeritakse tunniplaan kursuste järgi, kus olete õpetaja või assistent.

![Tunniplaani modaalaken](images/dashboard/dashboard_schedule.png)

> **Nõuanne:** Töölaua vidinad võivad erineda sõltuvalt teie rollist, ligipääsuõigustest ja süsteemis sisselülitatud moodulitest.

# Kursused

# Kursuste haldus

Külgmenüü jaotis **Kursused** sisaldab alajaotisi kogu õppestruktuuri haldamiseks: alates erialadest ja spetsialiseerumistest kuni konkreetsete kursusteni koos tunniplaaniga.

## Menüü «Kursused» struktuur

| Alajaotis | Otstarve |
|-----------|----------|
| **Avaldused** | Õpilaste kursustele esitatud avalduste haldamine (vt [04-applications.md](https://docs.huvis.ee/link/116)) |
| **Erialad** | Ainevaldkonnad (hierarhia ülemine tase) |
| **Spetsialiseerumised** | Suunad erialade sees (sisaldavad kursusi) |
| **Kodutööd** | Õpilastele määratud ülesanded hinnetega ja tagasisidega |
| **Õppekavad** | Temaatilised plaanid: teemad, tunnid, tasemed |
| **Lisa avaldus** | Uue avalduse kiirloomine |
| **Seaded** | Õppeaasta, mallid, küsimustikud, registreerimise seaded |

## Hierarhia: Eriala → Spetsialiseerumine → Kursus

Süsteem kasutab kolmetasemelist hierarhiat:

```
Eriala (näiteks «Matemaatika»)
  └── Spetsialiseerumine (näiteks «Algebra»)
        └── Kursus (näiteks «Algebra — rühm A, 2025/2026»)
```

Enne kursuse loomist tuleb luua eriala ja spetsialiseerumine.

---

## Erialad

Eriala on ainevaldkond (näiteks «Matemaatika», «Inglise keel»).

### Erialade loend

1. Minge **Kursused → Erialad**.
2. Kuvatakse tabel kõigi erialadega: nimi, spetsialiseerumiste arv.
3. Kasutage navigeerimiseks otsingut ja sortimist.

### Eriala loomine

1. Vajutage nuppu **Lisa eriala**.
2. Täitke **Nimi** igas saadaolevas keeles (näiteks eesti ja vene).
3. Vajutage **Salvesta**.

> **Märkus:** Eriala nimi tõlgitakse kõikidesse süsteemi keeltesse. Kasutaja näeb nime oma liidese keeles.

### Muutmine ja kustutamine

- Muutmiseks vajutage erialale.
- Kustutamine on võimalik, kui erialal pole aktiivseid spetsialiseerumisi ega kursusi.

---

## Spetsialiseerumised

Spetsialiseerumine on suund eriala sees. Iga spetsialiseerumine sisaldab ühte või mitut kursust.

### Spetsialiseerumiste loend

1. Minge **Kursused → Spetsialiseerumised**.
2. Tabel: nimi, eriala, kursuste arv.

### Spetsialiseerumise loomine

1. Vajutage **Lisa spetsialiseerumine**.
2. Täitke:
   - **Nimi** — igas saadaolevas keeles.
   - **Eriala** — valige rippmenüüst.
3. Vajutage **Salvesta**.

### Muutmine ja kustutamine

- Muutmiseks vajutage spetsialiseerumisele.
- Kustutamine on blokeeritud, kui selle spetsialiseerumise kursustel on aktiivseid avaldusi.

### Üleminek kursustele

Spetsialiseerumise lehelt saab liikuda selle kursuste loendisse või luua uue kursuse.

---

## Kursuse loomine

Kursus on konkreetne õppegrupp tunniplaani, õpetaja ja õpilastega. Kursuse loomine, muutmine ja kopeerimine toimub **samm-sammulise viisardi** kaudu.

### Kuidas viisardit avada

- **Loomine:** kursuste lehel vajutage külgpaneelis nuppu **«+ Lisa uus»**.
- **Muutmine:** kursuse lehel vajutage bänneris **«✏️ Muuda»**.
- **Kopeerimine:** vajutage kursuse bänneris **⋮** (menüü) → **«Kopeeri kursust»**.

### Viisardi sammud

Viisard koosneb 5 sammust (kopeerimisel 6):

#### Samm 1: Põhiinfo

| Väli | Kirjeldus | Kohustuslik |
|------|-----------|:-----------:|
| **Nimi** | Kursuse nimi igas süsteemi keeles (ET, RU) | Jah |
| **Õppeaasta** | Millisesse õppeaastasse kursus kuulub | Jah |
| **Alguskuupäev** | Esimese tunni kuupäev | Jah |
| **Lõppkuupäev** | Viimase tunni kuupäev (peab olema hilisem alguskuupäevast) | Jah |
| **Registreerimise alguskuupäev** | Millal muutub registreerimisvorm kättesaadavaks. Kui tühi — kättesaadav alati | Ei |
| **Maks. õpilaste arv** | Kohtade limiit rühmas (miinimum 1) | Jah |
| **Ootenimekirja limiit** | Kui palju avaldusi võib järjekorras olla. 0 = välja lülitatud | Ei |
| **Min./Maks. vanus** | Vanusepiirangud (maks. >= min.) | Jah |
| **Assistendid** | Lisaõpetajad | Ei |

> **Valideerimine:** Viisard ei lase järgmisele sammule minna, kui kohustuslikud väljad on täitmata või sisaldavad vigu (näiteks lõppkuupäev on varasem algusest).

> **Tähtis:** Kursus on seotud õppeaastaga. Veenduge, et valitud on õige õppeaasta.

#### Samm 2: Tunniplaan

Kuvatakse nädalane tunniplaani ruudustik. Vajutage **«+ Lisa tund»**, et avada tunniplaani haldur.

**Tunniplaani haldur:**
- Ruumide × tundide (8:00–23:00) ruudustik valitud nädalapäevaks
- Lohista ja aseta tunni paigutamiseks (sidumine 15-minutilise intervalliga)
- Konfliktide visuaalne märgistus (punane esiletõstus ajal, mis kattub teise tunniga)
- Teiste kursuste olemasolevad tunnid on kuvatud blokeeritutena (ei saa liigutada)
- Valitud õpetaja tunniplaan on kuvatud all

> Tunniplaan pole kohustuslik — saab luua kursuse ilma tundideta ja lisada need hiljem.

#### Samm 3: Hind

**Arveldamise tüüp** — valige üks kolmest:
- 🔄 **Tellimus** — igakuine makse
- 🎫 **Pakett** — kindel tundide arv
- 🔀 **Tellimus + Pakett** — õpilane valib

**Hinnad sageduste lõikes** (tellimusele/segatud tüübile):
- Igakuine, kvartaalne, poolaasta, aasta — sisestage hind eurodes iga perioodi kohta

**Intensiivsus** (tellimusele/segatud tüübile):
- Lülitage lüliti sisse → määrake min./maks. tundide arv nädalas
- Igale variandile (1–5 tundi/nädalas) määrake hind

**Paketi valikud** (paketile/segatud tüübile):
- Vajutage **«Lisa pakett»** → määrake tundide arv ja hind
- Saab lisada mitu paketti (näiteks 5 tundi / 10 tundi / 20 tundi)

**Prooviõppetund:**
- Lülitage lüliti sisse → ilmuvad seaded: hind, makseviis, lepingu režiim, kohtade režiim

#### Samm 4: Mallid

- **Avalduse mall** — valige dokumendi mall avaldustele
- **Prooviõppetunni mall** — ilmub ainult kui prooviõppetund on sisse lülitatud
- **Teavitused staatuste kaupa** — iga avalduse staatuse jaoks valige maksja teavituse mall
- **Teavitused töötajatele** — iga staatuse jaoks valige teavitatavad töötajad

#### Samm 5: Seaded

- **Teavitada õpetajaid** — lüliti
- **Teavitada assistente** — lüliti
- **Auto-sulgemine** — süsteem sulgeb registreerimise, kui kõik kohad on täidetud
- **🔒 Käsitsi sulgemine** — administraator sulgeb registreerimise käsitsi. Kursus ei avane automaatselt isegi kohtade vabanedes.

> Muutmisel kuvatakse sellel sammul **kursuse statistika**: aktiivsed avaldused, vabad kohad, ootenimekiri.

#### Samm 6: Õpilased — ainult kopeerimisel

Valige, millised avaldused uude kursusesse üle kanda:

| Režiim | Kirjeldus |
|--------|-----------|
| **Ülekandmine** | Avalduse staatus **säilib** (allkirjastatud → allkirjastatud). Failid ja soodustused kopeeritakse. |
| **Uus avaldus** | Luuakse **uus avaldus** staatusega «Loodud». Failid ja soodustused kopeeritakse. |

- Valige õpilased märkeruutude abil või vajutage **«Vali kõik»**
- Filtreerige staatuse järgi värviliste märgiste kaudu
- Lisaks: togglad testide, küsimustike ja sisseastumistestide kopeerimiseks

> Mõlemas režiimis lähteavaldusi **ei muudeta**.

### Registreerimise sulgemine

**Automaatne sulgemine** (`close`): registreerimine suletakse, kui:
1. Kõik põhikohad on täidetud
2. Ootenimekiri on täidetud või välja lülitatud

Koha vabanedes kursus automaatselt **avaneb** tagasi.

**Käsitsi sulgemine** (`force_closed`): administraator sulgeb registreerimise käsitsi. Erinevused:
- Kursus **ei avane** automaatselt kohtade vabanedes
- Auto-sulgemise lüliti on välja lülitatud (mitteaktiivne)
- Punane bänner hoiatab, et kursus on käsitsi suletud

### Salvestamine

Vajutage viimasel sammul rohelist nuppu:
- **«Loo kursus»** — loomisel
- **«Salvesta»** — muutmisel
- **«Kopeeri kursus»** — kopeerimisel

Pärast salvestamist suunatakse teid kursuse lehele.

---

## Kursuse leht (vahelehed)

Igal kursusel on detailne leht vahekaartidega. Mineku viis: **Spetsialiseerumised → [spetsialiseerumine]** → vajutage kursusele.

### Vaheleht «Info»

Kursuse ülevaatleht põhinäitajatega.

**KPI kaardid (ülemine rida):**

| Kaart | Kirjeldus |
|-------|-----------|
| Aktiivsed | Aktiivsete avalduste arv |
| Mahtuvus | Maksimaalne kohtade arv |
| Vabad | Saadaolevad kohad |
| Ootenimekiri | Avaldused ootenimekirjas |

**Staatuste diagramm:** Ringdiagramm avalduste jaotusest staatuste kaupa (loodud, saadetud, allkirjastatud jne).

**Tunniplaan:** Visuaalne ruudustik nädalapäevade kaupa — aeg, ruum, õpetaja, online märge.

**Iganädalane plaan:** Tabel tunniplaani blokkide ja iga bloki kehtivuse alguskuupäevadega.

### Hinnad ja mallid

> **Märkus:** Hindade, prooviõppetunni, avaldusemallide ja teavituste haldamine on viidud **viisardisse** (sammud 3 «Hind» ja 4 «Mallid»). Muutmiseks vajutage kursuse bänneris **«✏️ Muuda»**.
>
> Kursuse soodustused on endiselt kättesaadavad vahelehel «Info» või otse URL-ide kaudu.
- Vajutage **Salvesta** rakendamiseks.

**Maksja teavituste mallid:**
- Iga avalduse staatuse (Loodud, Saadetud, Allkirjastatud, Suletud, Tühistatud, Ootenimekiri) jaoks saab valida e-kirja teavituse malli.
- Kasutage vaikimisi malli või valige sellele kursusele isikupärastatud.
- Kui mall pole valitud, kasutatakse seadetest üldist malli.

**Teavitused töötajatele:**
- Seadistamine, milliste staatuste korral teavitada töötajaid (õpetajaid/assistente).
- Iga staatuse jaoks saab teavituse sisse või välja lülitada.

> **Tagajärjed:** Mallide muutmine mõjutab ainult tulevasi teavitusi. Varem saadetud kirju ei muudeta.

### Vaheleht «Õpilased»

Kursuse kõigi avalduste nimekiri filtrimisega staatuse järgi.

**Filtrid:**
- Vahelehed staatuste kaupa: Ootenimekiri, Loodud, Saadetud, Allkirjastatud, Suletud, Tühistatud
- Iga vaheleht näitab avalduste arvu

**Tabel:**
- ID, Õpilane, Maksja, Kursus, Loomise kuupäev, Esimese tunni kuupäev, Staatus
- Sortimine mis tahes veeru järgi
- Avalduse lehele liikumiseks vajutage reale

### Vaheleht «Konverentsid»

Videokonverentside (BigBlueButton) haldamine. Saadaval **Konverentside** mooduli olemasolul.

- **Alusta konverentsi** — loob ja käivitab rühmale videokonverentsi.
- **Loo koosolek** — tuleviku konverentsi planeerimine.
- **Koosolekute loend** — tabel möödunud ja planeeritud koosolekutest: kuupäev, staatus (online/offline), osalejate arv, aeg.

### Vaheleht «Sisseastumistest»

Sisseastumistestide haldamine. Saadaval **Testide** mooduli olemasolul.

**Testid:**
- Seadistatud testide tabel: nimi, suhtluskanal, järelejäänud kohad, ootepäevad.

**Testide määramised:**
- Tabel: õpilane, loomise kuupäev, vastuse tähtaeg, hinne, kommentaar.
- Saab määrata testi konkreetsele õpilasele.

### Vaheleht «Kohalolek»

Tundide kohaloleku vaatamine ja haldamine.

**Mobiilis:** Kaks vahekaarti — «Eelseisvad» ja «Möödunud» sessioonid.

**Töölaual:** Kalender-ruudustik:
- Read — õpilased
- Veerud — tundide kuupäevad
- Värvid: roheline (osales), punane (puudus), hall (märkimata)
- Klõpsake lahtrile märkimiseks

**Sessioonide kaardid:** Kuupäev, aeg, staatus (läbi viidud / planeeritud), märkimise nupp.

### Vaheleht «Arved»

Kursuse finantsteave. Saadaval **Arvete** mooduli olemasolul.

**KPI kaardid:**
- Esitatud arvete arv ja summa
- Tasutud arvete summa
- Võlg

**Graafik:** Joondiagramm: esitatud / tasutud / võlglased kuude kaupa.

**Õpilaste tabel:** Rühmitamine maksja → õpilane → arvete loend summade ja staatustega. Arve number on link arve detailide lehele.

**Massisoodustus:** Läbi menüü **⋮** (kolm punkti) kursuse päises → **«Lisa allahindlus»** saab rakendada protsendilist soodustust kõikidele kursuse saatmata arvetele. Üksikasjalikumalt vt [Massisoodustus kursusele](https://docs.huvis.ee/link/117#massisoodustus-kursusele).

### Vaheleht «Tundide muudatused»

Õpetajate asenduste ja tundide ülekandmiste haldamine.

**Õpetaja asendus (vasak veerg):**
1. Valige tunni kuupäev ja aeg.
2. Määrake uus õpetaja.
3. Märkige asenduse põhjus.
4. Märkige, kas teavitada õpilasi/vanemaid.
5. Vajutage **Salvesta**.

**Tunni ülekandmine (parem veerg):**
1. Valige tunni lähtekuupäev.
2. Määrake uus kuupäev.
3. Märkige ülekandmise põhjus.
4. Märkige, kas teavitada.
5. Vajutage **Salvesta**.

> **Tagajärjed:** Kui teavitused on sisse lülitatud, saavad õpilased ja/või maksjad asenduse või ülekandmise kohta e-kirja.

### Vaheleht «Küsimustik»

Vaheleht sisaldab kahte alamvahelehte:

**Alamvaheleht «Küsimustiku mall»:**
- Valige küsimustik rippmenüüst (luuakse Seaded → Küsimustikud)
- Organisatsiooni vaikimisi küsimustik — selle väljad kuvatakse kõikidel kursustel automaatselt
- Kursusele saab määrata lisaküsimustiku (mitte-vaikimisi) — selle väljad kuvatakse koos vaikeväljadega
- Valitud küsimustiku väljade eelvaade

**Alamvaheleht «Vastused»:**
- Tabel kursuse kõikide avalduste küsimustiku vastustest
- Õpilase nime järgi otsing
- Iga rida — õpilane oma vastustega ja lingiga avaldusele

Väljade tüübid: tekst, tekstiväli, valik loendist, märkeruut.

---

## Kodutööd

Jaotis **Kursused → Kodutööd**. Saadaval **Kodutööde** mooduli olemasolul.

### Ülesannete loend

Kõigi kodutööde tabel: nimi, kursus, õpilane, esitamise tähtaeg, hinne, staatus.

### Ülesande loomine

1. Vajutage **Loo ülesanne**.
2. Täitke:
   - Nimi ja kirjeldus
   - Kursus
   - Seosta õppekavaga (valikuline)
   - Esitamise tähtaeg
   - Maksimaalne hindepunkt
3. Lisage failid (kui vajalik).
4. Vajutage **Salvesta**.

### Hindamine ja tagasiside

1. Avage ülesanne.
2. Vaadake õpilase vastust ja lisatud faile.
3. Märkige punktid ja jätke kommentaar.
4. Vajutage **Salvesta tagasiside**.

---

## Õppekavad

Jaotis **Kursused → Õppekavad**. Ainete temaatilised plaanid.

### Loend

Tabel: teema, tunnid, tase (klass). Sortimine ja filtrimine taseme järgi.

### Loomine

1. Vajutage **Loo**.
2. Täitke:
   - **Teema** — teema nimi
   - **Tunnid** — planeeritud tundide arv
   - **Tase (klass)** — millisele klassile teema on mõeldud
3. Saab lisada alateemasid (õppekava alamelemente).
4. Vajutage **Salvesta**.

### Alateemad

Iga õppekava element võib sisaldada alateemasid. Elemendi lehel vajutage **Lisa alateema**.

---

## Kursuste seaded

Jaotis **Kursused → Seaded**. Organisatsiooni kõiki kursuseid mõjutavad üldseaded.

### Õppeaasta

Õppeaastate haldus:

| Seade | Kirjeldus |
|-------|-----------|
| **Saadaolevad aastad** | Valikuks saadaolevate õppeaastate loend (näiteks «2024/2025», «2025/2026») |
| **Vaikimisi õppeaasta** | Aasta, mis määratakse uutele kursustele vaikimisi |
| **Veebi-registreerimise aasta** | Õppeaasta, mis kuvatakse avalikel registreerimisvormidel |

> **Tähtis:** Õppeaasta vahetamine ülemisel paneelil mõjutab seda, millised kursused ja avaldused süsteemis kuvatakse. Looge kursuseid, kui on valitud õige aasta.

### Avalduse mall

- Mallidokumendi (.docx) üleslaadimine, mida kasutatakse avalduse PDF-i loomiseks.
- Vaikimisi mall rakendub kõikidele kursustele, kui kursuse vahelehel «Mall» pole valitud individuaalset.

### Töötajate teavitused

- E-kirja teavituse mallide seadistamine töötajatele avalduse staatuse muutumisel.
- Iga staatuse jaoks saab valida oma malli.

### Allkirjastamise failinimi

- Allkirjastatud dokumentide failinime mall (toetab muutujaid).

### iFrame pealkirja tekst

- Kohandatav tekst, mis kuvatakse avaliku registreerimisvormi ülaosas.

### Küsimustikud

Küsimustike haldamine (Seaded → Küsimustikud):
- Nimetatud küsimustike loomine (näiteks: «Tantsukursus», «Laager», «Vaikimisi»)
- Iga küsimustik sisaldab välju, mille järjekorda saab muuta lohistades
- Vaikimisi küsimustik — selle väljad kuvatakse kõikidel kursustel automaatselt
- Kursus võib viidata täiendavale küsimustikule — väljad liidetakse registreerimisel

### Küsimustiku väljad

Küsimustiku väljade CRUD:
- Väljade loomine, muutmine, kustutamine
- Lohistamisega järjekorra muutmine
- Globaalsed väljad seotakse organisatsiooni vaikimisi küsimustikuga automaatselt
- Tüübid: tekst, tekstiväli, valik loendist, märkeruut

**Süsteemsed väljad** (loodud platvormi administraatori poolt):
- Märgitakse loomisel lipuga «Süsteemne väli»
- Nähtavad **kõikides** organisatsioonides automaatselt — keegi ei saa neid välja lülitada
- Näide: «Nõusolek isikuandmete töötlemiseks»

**Lingid kirjelduses:**
- Välja kirjeldus toetab vormindamist (rasvane, kaldkiri, loendid, lingid)
- Märkeruutude puhul: kirjeldus linkidega kuvatakse linnukese kõrval
- Näide: `☑ Olen tutvunud privaatsuspoliitikaga ja nõustun...` — kus sõna on link dokumendile

### Lahkumise põhjused

- Põhjuste loendi haldus, mida valitakse avalduse sulgemisel.

### Registreerimise seaded

- Avalikus registreerimisvormis väljade nähtavus ja kohustuslikkus:
  - Õpilase jaoks: aadress, telefon, e-post
  - Maksja jaoks: aadress, telefon, e-post
- Iga väli võib olla: kohustuslik, valikuline või peidetud.

---

## Avalik registreerimine (iframe)

Avalik registreerimisvorm võimaldab maksjatel ja õpilastel iseseisvalt kursustele registreeruda lingi kaudu.

### Kuidas luua avalikku linki

1. Minge **Seaded → Avalikud lingid**.
2. Vajutage **Loo**.
3. Seadistage parameetrid (registreerimise algus-/lõppkuupäev).
4. Kopeerige loodud link.

### Registreerimisvorm

Kui kasutaja läheb lingile, näeb ta vormi 4 osaga:

**1. Kursuse valimine:**
- Kursuste rippmenüü
- Valimisel kuvatakse tunniplaan ja saadaolevad tariifid (raadionupud)
- Kui kursus on suletud — punane hoiatus
- Kui kohad on täidetud ja ootenimekiri on sisse lülitatud — kollane hoiatus
- Kui prooviõppetund on sisse lülitatud — täiendav valik (lilla)
- Alguskuupäeva valimine tunniplaani saadaolevatest kuupäevadest

**2. Õpilase andmed:**
- Eesnimi / Perekonnanimi (või ühine väli — seadistatav)
- Isikukood — kontrollsumma valideerimisega
- Aadress, telefon, e-post — nähtavus ja kohustuslikkus sõltuvad seadetest

**3. Maksja andmed:**
- Samad väljad, mis õpilasel
- E-post toetab mitut aadressi komaga eraldatult

**4. Küsimustik:**
- Organisatsiooni vaikimisi küsimustiku väljad (kuvatakse kohe lehe laadimisel)
- Kursuse küsimustiku väljad (laaditakse dünaamiliselt kursuse valimisel, kui kursusele on määratud mitte-vaikimisi küsimustik)

### Mis juhtub vormi esitamisel

1. Süsteem leiab või loob õpilase kirje isikukoodi järgi.
2. Süsteem leiab või loob maksja kirje isikukoodi järgi.
3. Kontrollitakse, kas õpilasel pole sellele kursusele aktiivset avaldust (dubleerimine keelatud).
4. Määratakse avalduse staatus:
   - **Proov** — kui on valitud prooviõppetund
   - **Ootenimekiri** — kui kohti pole ja waitlist on sees
   - **Loodud** — tavaolukorras
5. Salvestatakse küsimustiku vastused.
6. Avaldus ilmub süsteemi.

> **Tähtis:** Avaliku vormi kaudu registreerimisel maksjale e-kirja **ei saadeta automaatselt**. Administraator peab dokumendi käsitsi saatma nupu «Saada» kaudu avalduse lehel. Erand: prooviõppetunni puhul režiimiga «Alati tasuline» luuakse arve automaatselt.

> **Töötajate teavitused:** Kui kursusel on õpetajate/assistentide teavitused sisse lülitatud, saavad nad automaatselt e-kirja uue avalduse kohta.

---

## Kursuse kopeerimine uuele õppeaastale

Kui algab uus õppeaasta, pole vaja kursuseid käsitsi uuesti luua. Funktsioon **«Kopeeri kursus»** võimaldab mõne minutiga luua uue kursuse olemasoleva põhjal, kandes üle tunniplaani, hinnad, mallid ja õpilased. Protsess toimub 6 lihtsa sammu kaudu — igas sammus valite, mida täpselt kopeerida.

### Kust leida nupp «Kopeeri kursus»

1. Avage kursus, mida soovite kopeerida: **Kursused → Spetsialiseerumised → [spetsialiseerumine] → [kursus]**.
2. Kursuse ülemises bänneris (nime kõrval) leidke nupp **«Kopeeri kursus»** — see on poolläbipaistev, valge.
3. Vajutage sellele — avaneb kopeerimise viisardi leht.

> **Ei näe nuppu?** See on saadaval ainult kasutajatele, kellel on kursuste muutmise õigus.

Lehe ülaosas näete **horisontaalset riba 6 sammuga**. Aktiivne samm on sinise värviga esile tõstetud, läbitud sammud — rohelise linnukesega. Saate vajutada mis tahes läbitud sammule, et tagasi minna ja midagi muuta.

---

### Samm 1/6: Uue kursuse põhiandmed

Sellel sammul määrate **uue kursuse põhiparameetrid**. Kõik väljad on eeltäidetud lähtekursuse väärtustega — muutke seda, mida vaja.

**Mida näete ja täidate:**

- **Õppeaasta** — valige rippmenüüst (näiteks `2026/2027`). Tavaliselt valitakse järgmine aasta.
- **Kursuse nimi** — eraldi väli iga keele jaoks (ET, RU). Eeltäidetud lähtekursusest. Tavaliselt piisab aasta muutmisest nimes.
- **Kursuse alguskuupäev** ja **Kursuse lõppkuupäev** — vajutage väljale, avaneb kalender. Märkige uue õppeperioodi kuupäevad.
- **Registreerimise alguskuupäev** — valikuline. Kuupäeva määramisel muutub vorm kättesaadavaks alles pärast seda. Kui jätta tühjaks — registreerimine on kohe avatud.
- **Maks. õpilaste arv** — kohtade limiit rühmas.
- **Ootenimekirja limiit** — kui palju õpilasi võib järjekorras olla, kui kohad saavad otsa. `0` = ootenimekiri välja lülitatud.
- **Vanus** — liugur minimaalse ja maksimaalse vanuse valimiseks.
- **Alumised togglad:**
  - *Registreerimine suletud* — sisselülitamisel pole uuele kursusele võimalik avaliku vormi kaudu registreeruda.
  - *Teavitada õpetajaid* — õpetajad saavad uutest avaldustest e-kirja.
  - *Teavitada assistente* — sama assistentide kohta.
  - *Prooviõppetund* — lubab uuel kursusel prooviõppetunni võimaluse.

Vajutage **Edasi →** järgmisele sammule liikumiseks.

---

### Samm 2/6: Tunniplaan

Sellel sammul näete **lähtekursuse tunniplaani tahvlit** — samu blokke nädalapäevade, aja, õpetajate ja ruumidega, mida näete kursuse vahelehel «Info».

Tunniplaan kopeeritakse «nagu on» — päevad, aeg, õpetajad, ruumid. Saate seda hiljem uue kursuse lehel muuta.

Vajutage **Edasi →** või **← Tagasi** eelmisele sammule naasmiseks.

---

### Samm 3/6: Hinnad

Siin määrate **uue kursuse hinnad**. Kuvatakse 4 kaarti — üks iga makse sageduse kohta:

| Kaart | Näide |
|-------|-------|
| Igakuine | 170.00 € |
| Iga 3 kuu tagant | 480.00 € |
| Iga 6 kuu tagant | 900.00 € |
| Aastane | 1700.00 € |

**Kuidas see välja näeb:**

- Hindadega kaardid on tähistatud **sinise raamiga** — need on hinnad, mis kopeeritakse.
- Hallid kaardid — hinnata makse sagedused (neid ei kopeerita).
- Igal kaardil on kaks väärtust:
  - **Originaalhind** (halliga, viitena) — hind lähtekursusest.
  - **Uus hind** (sisestusväli) — saate muuta. Eeltäidetud lähtekursusest.
- Hinda muutes ilmub **kollane hoiatus** «Hind muudetud» — meeldetuletus lepingutingimusi kontrollida.

> **Kursuse soodustused** (discount rules) kopeeritakse automaatselt koos hindadega. Näiteks kui lähtekursusel oli soodustus «Teine laps -15%», ilmub see ka uuel kursusel.

---

### Samm 4/6: Mallid, teavitused ja testid

See samm võimaldab seadistada **dokumendi mallid, teavitused ja lisaandmete ülekandmine**.

**Mida leheküljel näete (ülevalt alla):**

**1. Avalduse mall** — rippmenüü dokumendi mallidega. Valige, milline PDF mall kasutatakse uue kursuse avaldustele. Tühjaks jättes kasutatakse vaikimisi malli.

**2. Prooviavalduse mall** — ilmub ainult siis, kui lähtekursusel oli prooviõppetund sisse lülitatud. Valige mall sarnaselt.

**3. Teavituste mallid staatuste kaupa** — iga avalduse staatuse (Loodud, Saadetud, Allkirjastatud jne) jaoks saab valida e-kirja malli, mille maksja saab staatuse muutumisel.

**4. Töötajate teavitused staatuste kaupa** — iga staatuse jaoks saab valida, milliseid töötajaid teavitada.

**5. Seotud andmete kopeerimine** — lehe all 3 togglat:

| Toggle | Mida kopeerib | Loendur |
|--------|---------------|---------|
| **Testid** | Kursusega seotud testid | Näitab «N tk» |
| **Küsimustiku väljad** | Kursuse küsimustik (questionnaire_id) ja seotud väljad | Näitab «N tk» |
| **Sisseastumistestid** | Sisseastumistestid (koos failidega) | Näitab «N tk» |

Vaikimisi on kõik togglad sees. Mida pole vaja — lülitage välja.

---

### Samm 5/6: Õpilased

Siin otsustate, **millised õpilased üle kanda** uuele kursusele ja **millisel viisil**.

**Kui lähtekursusel pole õpilasi** — näete teadet «Õpilasi pole» ja saate kohe järgmisele sammule liikuda.

**Kui õpilased on, leht on jagatud 3 osaks:**

#### Osa 1: Ülekandmise viisi valimine

Kaks varianti (raadionupud):

- **«Ülekandmine»** — õpilaste avaldused kanduvad üle uuele kursusele. Vanad avaldused suletakse automaatselt. Failid ja soodustused säilivad. Kasutage seda režiimi, kui õpilane **jätkab õppimist** uuel kursusel.

- **«Loo uued avaldused»** — uuel kursusel luuakse **puhtad avaldused** (staatus: Loodud). Vanad avaldused lähtekursusel **ei muutu** — jäävad samasse staatusesse. Uue ja vana avalduse vahel säilib link. Kasutage seda režiimi, kui soovite **säilitada ajalugu** vanal kursusel muudatusteta.

#### Osa 2: Staatuste filter

Horisontaalne riba **värviliste staatuse märgistega** ja õpilaste arvuga igas:

```
[Allkirjastatud (15)]  [Loodud (5)]  [Saadetud (3)]  [Ootenimekiri (2)]
```

- **Vajutage märgisele** — kõik selle staatusega õpilased valitakse (või võetakse valiku alt, kui juba olid valitud).
- See on kiire viis: näiteks vajutage «Allkirjastatud» — ja kõik 15 allkirjastatud õpilast märgitakse ülekandmiseks.
- Lingid **«Vali kõik»** ja **«Eemalda kõik»** — massiliseks valimiseks/eemaldamiseks.

#### Osa 3: Õpilaste tabel

Tabel lähtekursuse kõigi õpilaste loendiga:

| ☑ | Õpilane | Maksja | Staatus | Loomise kuupäev |
|---|---------|--------|---------|-----------------|
| ☑ | Ivanov Ivan | Ivanova Maria | Allkirjastatud | 01.09.2025 |
| ☑ | Petrov Pjotr | Petrova Anna | Allkirjastatud | 03.09.2025 |
| ☐ | Sidorov Sergei | Sidorova Jelena | Suletud | 15.09.2025 |

- **Märkeruut vasakul** — märkige konkreetsed õpilased ülekandmiseks.
- Staatuse filtri kaudu valitud õpilased on juba märgitud.
- Konkreetselt õpilaselt saab **linnukese eemaldada**, isegi kui tema staatus on filtrist valitud.

Tabeli all näidatakse: **«N õpilast valitud»**.

> **Ei soovi õpilasi üle kanda?** Lihtsalt eemaldage kõik linnukesed ja vajutage «Edasi». Kursus luuakse tühjana.

---

### Samm 6/6: Kontroll ja kinnitamine

Viimane samm — **kopeeritava kokkuvõte**. Kontrollige kõike enne kinnitamist.

**Leht on jagatud 5 plokki:**

**1. Kursus** — tabel põhiandmetega: õppeaasta, nimi, kuupäevad, limiidid, seaded. Veenduge, et andmed on õiged.

**2. Tunniplaan** — näitab, mitu blokki ja tundi kopeeritakse (näiteks «2 blokki, 8 tundi»). Kui tunniplaan pole valitud — **kollane hoiatus** «Ei ole valitud».

**3. Hinnad** — näitab hindu iga makse sageduse kohta (näiteks «Igakuine: 170.00 €»). Kui hinnad pole määratud — kollane hoiatus.

**4. Mallid** — loend linnukeste (rohelise ✓) ja ristidega (hall ✗):
- ✓ Avalduse mall — valitud
- ✓ Teavituste mallid — 5 on 7-st seadistatud
- ✗ Testid — ei kopeerita
- ✓ Küsimustiku väljad — kopeeritakse
- jne.

**5. Õpilased** — näitab valitud õpilaste arvu ja ülekandmise režiimi (näiteks «23 õpilast · Ülekandmine»). Kui õpilased pole valitud — kollane hoiatus.

> **Kollased hoiatused** — need pole vead. Need lihtsalt juhivad tähelepanu sellele, et mõned sektsioonid on tühjad. Kursuse saab luua ka ilma tunniplaani või õpilasteta — lisate hiljem.

**Nupp «Kinnita»:**

Vajutage **Kinnita** all paremal. Süsteem küsib kinnitust — vajutage **OK**.

**Mis juhtub pärast kinnitamist:**
1. Luuakse uus kursus kõigi valitud seadetega.
2. Kopeeritakse tunniplaan, hinnad, mallid, testid — kõik, mida märkisite.
3. Õpilased kanduvad üle valitud režiimis.
4. Suunatakse **uue kursuse muutmislehele**.
5. Ilmub roheline teavitus «Kursus edukalt kopeeritud».

Kõik toimingud on **aatomaarsed**: kui midagi läheb valesti, ei muutu midagi — ei uut kursust ega õpilaste avaldusi.

---

### Mis juhtub õpilastega pärast kopeerimist

**Režiim «Ülekandmine»:**
- Õpilaste avaldused kanduvad üle uuele kursusele.
- Vanal kursusel saab avaldus lingi uuele (nähtav avalduse lehel).
- Failid ja soodustused kanduvad üle koos avaldusega.

**Režiim «Loo uued avaldused»:**
- Uuel kursusel ilmuvad uued avaldused staatusega **«Loodud»**.
- Vanad avaldused lähtekursusel **ei muutu** — jäävad samaks.
- Uue avalduse lehel on nähtav link: «Loodud avalduse #N põhjal» — saab klõpsata ja liikuda originaalile.

> **Õppeaasta hoiatus:** Kui vaatate avaldust ja kursus kuulub teise õppeaasta alla, kui hetkel valitud — lehe ülaosas ilmub kollane hoiatus. Lülitage õppeaasta ülemisel paneelil, et see kaoks.

---

## Kursuse muutmine

1. Minge spetsialiseerumise lehele.
2. Vajutage kursuse kõrval muutmise nuppu.
3. Muutke vajalikke välju ja tunniplaani.
4. Vajutage **Salvesta**.

> **Tagajärjed:** Tunniplaani muutmine mõjutab tundide ja arvete arvutamist. Süsteem arvutab tunniplaani blokkide tundide kuupäevad vastavate alguskuupäevadega automaatselt ümber.

> **Nõuanne:** Kursuse lehel olevad vidinad, vahelehed ja tegevused sõltuvad teie rollist, ligipääsuõigustest ja süsteemis sisselülitatud moodulitest.

# Avaldused

# Avalduste haldus

Avaldused on peamine mehhanism õpilaste kursustele registreerimiseks. Avalduse saab luua käsitsi (administraator) või avaliku registreerimisvormi kaudu (maksja/õpilane). Avaliku registreerimise kirjeldus: [03-courses.md → Avalik registreerimine](https://docs.huvis.ee/link/115#avalik-registreerimine-iframe).

---

## Avalduse staatused

Iga avaldus läbib kindlaid etappe:

| Staatus | Kirjeldus |
|---------|-----------|
| **Ootenimekiri** | Kohad kursusel on täidetud, õpilane ootab vaba kohta |
| **Loodud** | Avaldus on loodud, ootab menetlemist |
| **Saadetud** | Dokument saadetud maksjale allkirjastamiseks |
| **Allkirjastatud** | Leping allkirjastatud, õpilane vastuvõetud |
| **Suletud** | Õpe lõpetatud või õpilane välja arvatud |
| **Tühistatud** | Avaldus tühistatud enne allkirjastamist |
| **Prooviõppetund** | Õpilane registreeritud prooviõppetunnile, oodatakse kinnitust |

### Avalduse elutsükkel

```
Registreerimine → [Loodud] → Saadetud → Allkirjastatud → Suletud
                     │             │
                     │             └─→ Tühistatud (tühistamine enne allkirjastamist)
                     │
                     └─→ Ootenimekiri (kui kohti pole)
                           └─→ Loodud (koha vabanedes)

Prooviõppetund → [Prooviõppetund] → Kinnitus → [Loodud] → ...
                         → Keeldumine → [Suletud]
```

---

## Avalduse number

Igale avaldusele antakse automaatselt **number** (näiteks `2025/42`). Numbri vorming on organisatsiooni poolt seadistatav.

### Vaikimisi vorming

`Õppeaasta / Avalduse ID` → `2025/42`

### Vormingu seadistamine

Administraator saab numbri vormingut muuta:

1. Minge **Kursused → Seaded**.
2. Valige vaheleht **Avalduse mall**.
3. Lehe alt leidke plokk **Avalduse numbri mall**.
4. Sisestage mall koos muutujatega ja vajutage **Salvesta**.
5. Välja kõrval kuvatakse **reaalajas eelvaade** — kuidas number välja näeb.

Saadaolevad muutujad:

| Muutuja | Mida asendab | Näide |
|---------|--------------|-------|
| `[[ACADEMIC_YEAR]]` | Kursuse õppeaasta | `2025` |
| `[[YYYY]]` | Kalendriaasta | `2026` |
| `[[YY]]` | Aasta (2 numbrit) | `26` |
| `[[MM]]` | Kuu | `03` |
| `[[SEQ]]` | Järjenumber | `0042` |
| `[[ID]]` | Avalduse ID | `42` |
| `[[COURSE]]` | Kursuse nimi | `Klaveriõpe` |
| `[[STUDENT_CODE]]` | Õpilase isikukood | `50301040740` |
| `[[STUDENT_NAME]]` | Õpilase nimi | `Mari Tamm` |

**Näited:**
- `[[ACADEMIC_YEAR]]/[[SEQ]]` → `2025/0042` (õppeaasta + järjenumber)
- `[[YYYY]]-[[SEQ]]` → `2026-0042` (kalendriaasta + järjenumber)
- `[[SEQ]]` → `0042` (ainult number)

> **Tähtis:** Malli muutmine mõjutab ainult **uusi** avaldusi. Olemasolevad numbrid ei muutu.

> **Märkus:** DOCX-mallides on saadaval kaks muutujat:
> - `[[APPLICATION_ID]]` — avalduse unikaalne andmebaasi ID (arv, näiteks `42`)
> - `[[APPLICATION_NUMBER]]` — avalduse number malli järgi (näiteks `2025/0042`)
>
> Kasutage `[[APPLICATION_NUMBER]]`, et kuvada lepingu numbrit dokumentides.

---

## Avalduste loend

Minge **Kursused → Avaldused**.

### Filtreerimine staatuse järgi

Lehe ülaosas on vahelehed staatuste kaupa: **Ootenimekiri**, **Loodud**, **Saadetud**, **Allkirjastatud**, **Suletud**, **Tühistatud**. Iga vahelehe kõrval on kuvatud avalduste arv.

### Filtrid ja otsing

- **Kursus** — rippmenüü konkreetse kursuse järgi filtreerimiseks
- **Õpilane** — otsing õpilase nime järgi
- **Maksja** — otsing maksja nime järgi

### Tabeli veerud

| Veerg | Kirjeldus |
|-------|-----------|
| Number | Avalduse number (vorming seadistatav, vt ülal) |
| Õpilane | Eesnimi ja perekonnanimi |
| Maksja | Eesnimi ja perekonnanimi |
| Kursus | Kursuse nimi |
| Loomise kuupäev | Millal avaldus loodi |
| Esimese tunni kuupäev | Mis kuupäevast õpilane liitub |
| Täiendav | Sõltub valitud vahelehest: saatmise, allkirjastamise, sulgemise kuupäev |

Kõik veerud on sorditavad. Sortimiseks vajutage veeru päisele.

### Eksport

Nupp **Ekspordi** võimaldab laadida tabeli alla XLSX-vormingus (praegune leht või kõik kirjed).

### Nähtavus

- **Töötajad** näevad ainult oma kursuste avaldusi (kus nad on õpetajad või assistendid).
- **Haldurid** näevad kõiki organisatsiooni avaldusi.

---

## Avalduse loomine (administraator)

1. Minge **Kursused → Lisa avaldus** (või nupp «Loo» loendi lehel).
2. Täitke vorm:

### Plokk «Kursus»

- **Kursus** — valige rippmenüüst. Valimisel ilmuvad saadaolevad tariifid.
- **Tariif** — valige maksevariant (näiteks igakuine, 3 kuud, poolaasta). Raadionupud hindadega.

### Plokk «Õpilane»

- **Isikukood** — alustage sisestamist. Süsteem otsib õpilasi automaatselt koodi järgi.
- Kui õpilane leitud, täidetakse eesnimi/perekonnanime väljad automaatselt.
- Kui ei leitud, täitke **Eesnimi**, **Perekonnanimi** ja kontaktandmed — õpilane luuakse.
- **Aadress**, **Telefon**, **E-post** — nähtavus sõltub seadetest.

### Plokk «Maksja»

- Sarnaselt õpilasega: otsing isikukoodi järgi või uue loomine.
- Saab siduda olemasoleva maksjaga.

### Täiendavad väljad

- **Esimese tunni kuupäev** — mis kuupäevast õpilane hakkab külastama. Mõjutab maksumuse arvutamist (proportsionaalsus).
- **Staatus** — saab valida algse staatuse (vaikimisi: Loodud).

3. Vajutage **Salvesta**.

> **Mis juhtub salvestamisel:**
> - Luuakse õpilase kirje (kui uus) ja maksja kirje
> - Luuakse Party kirje (arvelduse üksus) maksja jaoks
> - Kui kohti pole ja ootenimekiri on sees → staatus «Ootenimekiri»
> - Kontrollitakse dubleerimist: õpilasel ei saa olla kahte aktiivset avaldust samal kursusel
> - Kui õpetajate teavitused on sisse lülitatud → neile saadetakse e-kiri

---

## Avalduse leht (detailid)

Vajutage loendis avaldusele, et avada detailne leht. Leht on jagatud mitmeks plokiks.

### Plokk «Õpilase / maksja / kursuse andmed»

Kolm veergu:

**Õpilane:**
- Eesnimi, perekonnanimi (muudetavad kohapeal)
- Isikukood, vanus
- Aadress, telefon, e-post

**Maksja:**
- Eesnimi, perekonnanimi (muudetavad kohapeal)
- Isikukood
- Aadress, telefon, e-post
- Märk «Õed/vennad» — link selle maksja teistele avaldustele

**Kursus:**
- Nimi (link kursuse lehele)
- Aktiivsed tariifid
- Tunniplaan (7 päeva ruudustik: aeg, ruum, online-märk)

### Plokk «Staatus ja kuupäevad»

- **Staatus** — praeguse staatuse värviline märgis
- **Ülekandmise märk** — kui avaldus on üle kantud, kuvatakse link uuele avaldusele
- **Viite number** — arvete mooduli olemasolul
- **Konverentsi link** — konverentside mooduli olemasolul (koos kopeerimise nupuga)

**Kuupäevad:**

| Kuupäev | Kirjeldus | Toiming |
|---------|-----------|---------|
| Loomise kuupäev | Millal avaldus loodi | — |
| Esimese tunni kuupäev | Mis tunnist õpilane liitub | Muutmine (nupp ✏️) |
| Saatmise kuupäev | Millal dokument saadeti | Korduv saatmine (nupp) |
| Allkirjastamise kuupäev | Millal leping allkirjastati | Märgi allkirjastatuks (nupp) |
| Sulgemise kuupäev | Millal avaldus suleti | Muutmine |
| Viimase tunni kuupäev | Viimane tasuline tund | Suletud avaldustele |

**Info prooviõppetunni kohta** (kui avaldus on proov):
- Prooviõppetunni kuupäev
- Staatus: kinnitatud / tagasi lükatud / ootab otsust
- Nupud **Kinnita** ja **Lükka tagasi** (kui ootab)

**Info ootenimekirja kohta** (kui staatus on «Ootenimekiri»):
- Positsioon järjekorras
- Nupp **Aktiveeri**

**Staatuse sundmuutmine:**
- Rippmenüü saadaolevate staatustega + nupp **Salvesta**
- Saadaval kõikide staatuste jaoks, välja arvatud «Suletud» ja «Tühistatud»

### Plokk «Hind ja soodustused»

**Hind:**
- Baashind (läbikriipsutatud, kui on soodustus)
- Kogusumma tasumiseks
- Makse sagedus (igakuine, 3 k jne)
- Soodustuse suurus

**Soodustused:**
- Aktiivsete soodustuste loend (roheline taust): nimi, väärtus, kehtivuse aeg
- Nupud: soodustuse sulgemine (lõppkuupäeva määramine) / kustutamine
- Mitteaktiivsed soodustused (kokku kahaneva ploki sees)
- Nupp **Lisa soodustus** (staatustele Loodud / Saadetud)

**Arved** (mooduli olemasolul):
- Nupud: **Loo arve**, **Arvuta ümber**, **Sularaha makse**, **Lisa kulu**
- Arvete tabel: number, summa, maksekuupäev, staatus, maksmise kuupäev
- Iga arve staatus värvilise märgisega

### Plokk «Failid»

- Viimased 4 faili teabega: kes laadis üles, nimi, otstarve (märgis), kuupäev
- Nupud: allalaadimine, eelvaade
- Link **Kuva kõik failid**
- Nupp **Lae fail üles**

**Failide otstarbed:**

| Märgis | Otstarve |
|--------|----------|
| Dokument allkirjastamiseks | PDF, loodud mallist ja saadetud maksjale |
| Allkirjastatud dokument | Üleslaaditud allkirjastatud leping |
| Avalduse fail | Kasutaja fail |

---

## Toimingud avaldusega

### Eelvaade ja dokumendi saatmine

See on peamine tegevus lepingu saatmiseks maksjale.

1. Avalduse lehel vajutage nuppu **Eelvaade**.
2. Süsteem genereerib PDF-i avalduse mallist (seadistatav kursuse vahelehel «Mall»).
3. PDF kuvatakse modaalaknas.
4. Saadaval on **kaks tegevust**:

| Tegevus | Mis juhtub | E-kiri |
|---------|------------|--------|
| **Salvesta** | Fail salvestatakse avaldusele otstarbega «Dokument allkirjastamiseks». Staatus → Saadetud. | **Ei** |
| **Saada** | Fail salvestatakse. Staatus → Saadetud. Maksjale saadetakse e-kiri koos PDF-iga manuses. | **Jah** |

> **Tähtis: erinevus «Salvesta» ja «Saada» vahel.**
> - **Salvesta** — dokument ainult kinnitatakse avalduse külge, maksja **ei saa** e-kirja. Kasulik, kui soovite dokumendi isiklikult üle anda.
> - **Saada** — dokument kinnitatakse JA maksja **saab e-kirja** PDF-iga. E-kirja mall seadistatakse kursuse vahelehel «Mall» (staatuse «Saadetud» jaoks). Kiri lisatakse saatmisjärjekorda ja menetletakse taustprotsessiga.

### Korduv saatmine

Nupp **Saada uuesti** saatmiskuupäeva kõrval:
- Saadab viimase salvestatud dokumendi (otstarbega «Dokument allkirjastamiseks») maksja e-postile.
- Avalduse staatus **ei muutu**.
- Kasutatakse e-kirja malli, mis vastab praegusele avalduse staatusele.

### Allkirjastatuks märkimine

1. Vajutage allkirjastamise kuupäeva kõrval nuppu **Allkirjastatud**.
2. Modaalaknas:
   - Märkige **allkirjastamise kuupäev**.
   - Laadige üles **allkirjastatud dokument** (fail maksjalt).
3. Vajutage **Salvesta**.

> **Mis juhtub:** Staatus → Allkirjastatud. Fail kinnitatakse otstarbega «Allkirjastatud dokument». Kui arved on seadistatud — algab arvelduse protsess.

### Esimese tunni kuupäeva muutmine

1. Vajutage ✏️ «Esimese tunni kuupäev» kõrval.
2. Valige kalendrist kuupäev.
3. Vajutage **Salvesta**.

> **Tagajärg:** Esimese tunni kuupäeva kasutatakse õppima asumise kuupäevana (enrollment_date) maksumuse proportsionaalseks arvutamiseks. Muutus mõjutab tulevasi arveid.

### Õppima asumise kuupäeva muutmine

1. Vajutage ✏️ «Õppima asumise kuupäev» kõrval plokis Lisainfo.
2. Valige kalendrist kuupäev.
3. Vajutage **Salvesta**.

> **Otstarve:** Õppima asumise kuupäev määrab õppeperioodi alguse maksumuse ja proportsionaalse arvutuse jaoks. Avalduse loomisel täidetakse automaatselt esimese tunni kuupäevast. Kui kuupäev pole määratud — arvete genereerimine pole võimalik.

### Viimase tunni kuupäeva muutmine

1. Vajutage ✏️ «Viimase tunni kuupäev» kõrval plokis Lisainfo.
2. Valige kalendrist kuupäev.
3. Vajutage **Salvesta**.

> **Otstarve:** Viimase tunni kuupäev piirab õppeperioodi. Kui kuupäev on minevikus — süsteem ei saa praegu perioodiks arvet luua. Tavaliselt määratakse automaatselt kursuse `date_end` põhjal allkirjastamisel.

### Tariifi muutmine

1. Vajutage ✏️ hinna ploki kõrval.
2. Modaalaknas valige saadaolevast uus tariif.
3. Vajutage **Salvesta**.

> **Tagajärg:** Kõik tulevased arved arvutatakse ümber. Juba esitatud arved (ISSUED/SENT/PAID) ei muutu.

### Avalduse sulgemine

1. Vajutage nuppu **Sulge**.
2. Modaalaknas:
   - **Sulgemise kuupäev** — vaikimisi täna.
   - **Viimase tunni kuupäev** (allkirjastatud avaldustele) — piiratud tunniplaani kuupäevadega.
3. Vajutage **Kinnita**.

> **Mis juhtub:**
> - Kui staatus on **Loodud/Saadetud** → staatus muutub **Tühistatud** (tühistamine enne allkirjastamist)
> - Kui staatus on **Allkirjastatud** → staatus muutub **Suletud** (õppe lõpetamine)
> - Süsteem arvutab viimase tunni kuupäeva kursuse tunniplaanist
> - Kui arvete moodul on sisse lülitatud → arvutatakse arved ümber (cutoff), tulevased planeeritud arved kustutatakse

### Üleviimine teisele kursusele

1. Vajutage **Kanna üle**.
2. Valige uus kursus.
3. Vajadusel valige uus tariif ja alguskuupäev.

> **Mis juhtub:**
> - Kui kursus on samas spetsialiseerumises ühilduva tariifiga → avaldus lülitub uuele kursusele
> - Kui spetsialiseerumine või tariif erinevad → praegune avaldus suletakse, luuakse uus sidemega (`transferred_to_id`)
> - Aktiivsed soodustused kopeeritakse uuele avaldusele
> - Vana avalduse lehel ilmub link uuele

### Kursuse kopeerimisel loodud avaldused

Kursuse [kopeerimisel](https://docs.huvis.ee/link/115#kursuse-kopeerimine-uuele-õppeaastale) režiimis **«Loo uued avaldused»** loob süsteem uued avaldused uuel kursusel. Iga sellise avalduse lehel on link **«Loodud avalduse #N põhjal»** — vajutage, et minna lähteavaldusele vanal kursusel.

Lähteavaldused vanal kursusel seejuures **ei muutu** — säilitavad endise staatuse.

Kopeerimisel režiimis **«Ülekandmine»** kanduvad avaldused üle uuele kursusele, ja vana kursuse avaldusel ilmub link uuele (sarnaselt tavalise üleviimisega).

**Hoiatus õppeaasta kohta:** Kui avasite avalduse ja selle kursus kuulub teise õppeaasta alla, kui ülemisel paneelil valitud — lehe ülaosas ilmub **kollane hoiatus**. See on normaalne — lihtsalt lülitage ülemisel paneelil vajaliku aasta peale.

### Staatuse sundmuutmine

Staatuse ploki rippmenüü võimaldab avalduse käsitsi ükskõik millisesse staatusesse viia.

| Üleminek | Mis juhtub |
|----------|------------|
| → Loodud | Tühjendatakse saatmise, allkirjastamise, sulgemise kuupäevad |
| → Saadetud | Määratakse saatmise kuupäev |
| → Allkirjastatud | Määratakse allkirjastamise kuupäev |
| → Suletud | Määratakse sulgemise kuupäev, arvutatakse viimase tunni kuupäev |
| → Tühistatud | Määratakse sulgemise kuupäev |
| → Ootenimekiri | Tühjendatakse kõik kuupäevad |
| → Proov | Määratakse `is_trial=true`, luuakse prooviõppetunni kirje |

> **Tähelepanu:** Üleminekul «Proov» staatusest teise staatusesse kustutatakse prooviõppetunni andmed ja tasumata trial-arved automaatselt.

### Aktiveerimine ootenimekirjast

Nupp **Aktiveeri** avaldusel staatusega «Ootenimekiri»:
- Staatus → Loodud
- Saadetakse teavitused: töötajatele ja maksjale (mall «Aktiveerimine ootenimekirjast»)

---

## Soodustuste haldamine

### Soodustuse lisamine

1. Vajutage hinna plokis **Lisa soodustus**.
2. Modaalaknas on saadaval kolm varianti (üksteist välistavad):

**Variant 1 — Vali olemasolev soodustus:**
- Rippmenüü kataloogi saadaolevate soodustustega (tüüp ja väärtus: «-15.50%» või «-25.00 €»).

**Variant 2 — Märgi individuaalne hind:**
- Sisestage kogusumma. Süsteem loob automaatselt peidetud soodustuse vahe peale.

**Variant 3 — Tundide arvu järgi** (kui nädalas > 1 tunni):
- Märkige, mitu tundi nädalas õpilane külastab.
- Süsteem arvutab soodustuse protsendi: `(kokku - külastab) / kokku × 100`.

3. **Kehtivuse periood** (valikuline):
   - **Alguskuupäev** — millest soodustus hakkab kehtima
   - **Lõppkuupäev** — milliseni soodustus kehtib

4. Reaalajas kuvatakse arvutatud kogusumma koos soodustusega.

5. Vajutage **Salvesta**.

> **Tagajärjed:**
> - Kõik tulevased arved arvutatakse automaatselt ümber
> - Kui avaldus on staatuses «Saadetud» või «Allkirjastatud» — ilmub hoiatus korduva allkirjastamise vajadusest

### Soodustuse sulgemine

1. Vajutage soodustuse kõrval sulgemise nuppu (×).
2. Märkige **lõppkuupäev** (vaikimisi täna).
3. Vajutage **Salvesta**.

> **Mis juhtub:** Soodustus kustutatakse pehmelt (soft-delete) määratud kuupäevast. Arved arvutatakse ümber. Auditeerimise jälg säilib.

### Soodustuse kustutamine

Kustutamise nupp eemaldab soodustuse täielikult (soft-delete). Arved arvutatakse ümber.

---

## Massisaatmine allkirjastamiseks

Dokumentide korraga saatmiseks mitme avalduse järgi:

1. Minge avalduste loendisse.
2. Vajutage **Massisaatmine**.
3. Saab valida konkreetse kursuse või kõik kursused.
4. Süsteem käivitab taustprotsessi:
   - Iga avalduse jaoks staatusega «Loodud» genereeritakse PDF
   - PDF saadetakse maksjale
   - Staatus → Saadetud
5. Progress kuvatakse lehel reaalajas.

> **Tähelepanu:** Massisaatmine töödeldakse taustrežiimis (järjekorra kaudu). Suure hulga avalduste korral võib protsess võtta mitu minutit.

---

## Failide üleslaadimine

1. Avalduse lehel vajutage **Lae fail üles**.
2. Valige fail arvutis.
3. Fail kinnitatakse avaldusele otstarbega «Avalduse fail».

> **Märkus:** Faili üleslaadimine lihtsalt salvestab selle süsteemi. Fail **ei saadeta** maksjale automaatselt. Saatmiseks kasutage funktsiooni «Eelvaade → Saada».

---

## Ootenimekiri (Waitlist)

### Kuidas töötab

1. Kui kõik kohad kursusel on täidetud, saavad uued avaldused staatuse **Ootenimekiri**.
2. Avalikul registreerimisvormil kuvatakse hoiatus.
3. Maksja saab e-kirja järjekorda asetamise kohta.
4. Koha vabanedes järgmine järjekorras olev avaldus **aktiveeritakse automaatselt**.
5. Administraator saab avalduse **käsitsi aktiveerida** avalduse lehel nupu abil (kohtade limiiti eirates).

### Seadistamine

Kursuse vormis, väli **Ootenimekirja limiit**:
- **0** — ootenimekiri välja lülitatud
- **> 0** — maksimaalne avalduste arv järjekorras

---

## Prooviõppetund (Trial Lesson)

### Prooviõppetunnile registreerimine

1. Avalikul vormil või maksja kabinetis valige valik **Prooviõppetund**.
2. Valige prooviõppetunni kuupäev.
3. Avaldus saab staatuse **Prooviõppetund**.

### Kinnitamine / Keeldumine

Avalduse lehel (või maksja kabinetis):

**Kinnita:**
1. Vajutage **Kinnita**.
2. Valige maksmise tariif.
3. Avaldus → staatus **Loodud**, edasi standardtsükkel.
4. «Alati tasuline» jaoks: esimese tunni kuupäev nihkub järgmisele pärast proovi.

**Lükka tagasi:**
1. Vajutage **Lükka tagasi**.
2. Avaldus → staatus **Suletud**.
3. «Tasuta, kui jääb» jaoks: luuakse arve prooviõppetunni eest.

### Makseviisid

| Režiim | Registreerimisel | Kinnitamisel | Keeldumisel |
|--------|-------------------|--------------|-------------|
| Tasuta, kui jääb | Arvet ei looda | Proov on tasuta | Arve luuakse |
| Alati tasuline | Arve luuakse kohe | Alguskuupäev nihkub | Lisaarvet pole vaja |
| Alati eraldi | Arve luuakse kohe | Tariif valitakse eraldi | Lisaarvet pole vaja |

---

## E-kirja teavituste mallid

Süsteem saadab teatavate tegevuste korral automaatselt e-kirju. Mallid seadistatakse kursuse vahelehel «Mall» või üldseadetes.

### Mallid maksjale

| Sündmus | Mall |
|---------|------|
| Avaldus loodud | PAYER_COURSE_APPLICATION_STATUS_CREATED |
| Dokument saadetud | PAYER_COURSE_APPLICATION_STATUS_SENT |
| Avaldus allkirjastatud | PAYER_COURSE_APPLICATION_STATUS_SIGNED |
| Avaldus suletud | PAYER_COURSE_APPLICATION_STATUS_CLOSED |
| Avaldus tühistatud | PAYER_COURSE_APPLICATION_STATUS_ANNULLED |
| Lisatud ootenimekirja | PAYER_COURSE_APPLICATION_STATUS_WAITLIST |
| Aktiveeritud järjekorrast | PAYER_COURSE_APPLICATION_STATUS_WAITLIST_ACTIVATED |
| Prooviõppetund loodud | PAYER_TRIAL_LESSON_CREATED |

### Mallide muutujad

Mallides saab kasutada muutujaid nurksulgudes:

| Muutuja | Väärtus |
|---------|---------|
| `[childName]` | Õpilase täisnimi |
| `[childFirstName]`, `[childLastName]` | Õpilase eesnimi / perekonnanimi |
| `[childCode]` | Õpilase isikukood |
| `[payerName]` | Maksja nimi |
| `[payerEmail]`, `[payerPhone]` | Maksja kontaktid |
| `[courseName]` | Kursuse nimi |
| `[applicationId]` | Avalduse number |
| `[applicationYear]` | Õppeaasta |
| `[applicationFirstLessonAtDate]` | Esimese tunni kuupäev |
| `[applicationCloseDate]` | Sulgemise kuupäev |
| `[price]` | Baashind |
| `[pricePeriodName]` | Makse sagedus |
| `[priceEndNoVat]` | Kogusumma |
| `[company_name]` | Organisatsiooni nimi |
| `[company_email]`, `[company_phone]` | Organisatsiooni kontaktid |

### Kuidas kirjad saadetakse

1. Süsteem koostab kirja sisu, asendades muutujad mallis.
2. Luuakse kirje `OutboundMessage` andmebaasis.
3. Failid kinnitatakse kui `OutboundMessageAttachment` (kui on).
4. Taustprotsess (Laravel Horizon) töötleb järjekorda ja saadab e-kirja.

> **Nõuanne:** Kui maksja ei saanud kirja — kontrollige saatmisjärjekorda jaotises **Teavitused → Loend**.

# Arved

# Arved ja maksmine

Arvete jaotis võimaldab hallata arvete esitamist, jälgida makseid ja seadistada arvelduse parameetreid.

## Arvete loend

Kõigi arvete vaatamiseks:

1. Minge külgmenüüs jaotisesse **Arved**.
2. Avaneb tabel kõigi arvetega.
3. Iga arve kohta kuvatakse: number, maksja, summa, staatus, esitamise kuupäev.
4. Otsimiseks kasutage filtreid:
   - **Staatuse järgi** — valige vajalik staatus (näiteks «Esitatud», «Tasutud»).
   - **Maksja järgi** — leidke konkreetse maksja arved.
   - **Kursuse järgi** — filtreerige kindla kursuse arved.
   - **Perioodi järgi** — märkige esitamise kuupäevad.
5. Detailse teabe vaatamiseks vajutage arve real.

![Arvete leht](images/invoices/invoices_page.png)

![Arvete loend detailidega](images/invoices/invoice_list.png)

## Arvete staatused

Igal arvel on staatus, mis kajastab selle praegust olukorda:

| Staatus | Kirjeldus |
|---------|-----------|
| **Planeeritud** | Arve on loodud automaatselt, kuid pole veel esitatud. Saab muuta. |
| **Valmis** | Arve on esitamiseks valmis. |
| **Esitatud** | Arve on maksjale saadetud. Muutmine blokeeritud. |
| **Saadetud** | E-kirja teavitus on kohale toimetatud. |
| **Tasutud** | Makse saadud. |
| **Tähtaeg ületanud** | Maksetähtaeg möödunud, makset pole laekunud. |
| **Tühistatud** | Arve on tühistatud. |

> **Tähtis:** Pärast arve esitamist seda ei saa muuta. Kui on vaja parandada, tühistage praegune arve ja looge uus.

## Arvete esitamine

Planeeritud arve esitamiseks:

1. Avage arve staatusega **Planeeritud** või **Valmis**.
2. Kontrollige andmete õigsust: maksja, summa, periood, arve read.
3. Vajadusel muutke arve ridu.
4. Vajutage nuppu **Esita arve**.
5. Süsteem automaatselt:
   - Loob arve PDF-dokumendi.
   - Saadab maksjale e-posti teel teavituse.
   - Muudab staatuse **Esitatud**-ks.

> **Märkus:** Arveid saab esitada ka automaatselt graafiku alusel, kui see on arvelduse seadetes seadistatud.

## Arvete seaded

Seaded määravad, kuidas süsteem automaatselt arveid genereerib.

> **Esmane seadistamine:** Uuele organisatsioonile pole arvete seadeid veel loodud. Lehe esmakordsel külastusel täitke vorm ja vajutage **Salvesta** — süsteem loob seaded. Ilma selleta pole arvete automaatne genereerimine võimalik.

> **Märkus:** Ettevõtte rekvisiidid (arvelduskonto number, maksevärava API-võti) seadistatakse eraldi lehel **Seaded → Organisatsioon**, mitte siin.

1. Minge külgmenüüs **Arved** > **Seaded**.
2. Saadaolevad parameetrid:

### Genereerimise päev

Kuu päev (1–28), mil süsteem loob arveid automaatselt.

### Arvelduse režiim

- **Möödunud kuu eest** — arve esitatakse pärast teenuse osutamist (järelmaks).
- **Järgmise kuu eest** — arve esitatakse ette (ettemaks).

### Arve mall

Laadige üles DOCX-mall arvete PDF-ide loomiseks. Kui mall pole laetud, kasutatakse vaikimisi malli.

### Pangalingid

Valik «Lisada pangalingid kirjadesse» on saadaval **ainult siis, kui Montonio maksevärav on seadistatud** organisatsiooni parameetrites. Kui maksevärav pole seadistatud, on valik blokeeritud.

3. Pärast seadete muutmist vajutage **Salvesta**.

![Arvete seaded](images/invoices/invoice_settings.png)

## Arvete genereerimise aruanne

Pärast arvete automaatset genereerimist saadab süsteem administraatoritele, kellel on arvete seadete haldamise õigus, aruande. Aruanne sisaldab:

- Loodud arvete arvu
- Kogusummat
- Perioodi ja organisatsiooni
- Genereerimise kuupäeva ja kellaaega

Aruande mall seadistatakse **Teavitused** > **Mallid** > **Arvete genereerimise aruanne**.

## Soodustused

Süsteem toetab paindlikku soodustuste seadistust õpilastele.

### Soodustuste tüübid

- **Protsendiline soodustus** — vähendab summat määratud protsendi võrra (näiteks 10%).
- **Fikseeritud soodustus** — vähendab summat fikseeritud väärtuse võrra (näiteks 50 eurot).

### Soodustuse seadistamine

1. Avage õpilase avaldus.
2. Minge jaotisesse **Soodustused**.
3. Vajutage **Lisa soodustus**.
4. Täitke parameetrid:
   - **Soodustuse tüüp** — protsendiline või fikseeritud.
   - **Suurus** — soodustuse protsent või summa.
   - **Kehtivuse alguskuupäev** — millest rakendub.
   - **Kehtivuse lõppkuupäev** — millal soodustus lakkab kehtimast.
5. Vajutage **Salvesta**.
6. Arved arvutatakse soodustusega automaatselt ümber.

![Soodustuste seaded](images/invoices/discount_settings.png)

> **Märkus:** Korraga saab lisada mitu soodustust. Protsendilised ja fikseeritud soodustused summeeritakse. Soodustuse kustutamisel arvutatakse arved ümber automaatselt.

### Massisoodustus kursusele

Kui on vaja rakendada soodustust korraga kõikidele kursuse õpilastele (näiteks aktsioon või ümberarvestus), saab kasutada massisoodustust.

**Kuidas lisada:**

1. Avage kursuse leht.
2. Vajutage parema ülanurga menüül **⋮** (kolm punkti).
3. Valige **«Lisa allahindlus»**.
4. Sisestage soodustuse protsent.
5. Vajutage **Salvesta**.

**Mis juhtub:**

- Soodustus rakendatakse kõikidele kursuse avaldustele, millel on **saatmata** arveid (staatus «Planeeritud» või «Valmis»).
- Iga mõjutatud arve arvutatakse automaatselt ümber.
- Soodustus kehtib **ainult konkreetse arve perioodile** — ei mõjuta teiste kuude arveid.

> **Tähtis:** Massisoodustus ei mõjuta juba saadetud või tasutud arveid. Kui arve on juba vanemale või raamatupidamisse saadetud, tuleb see tühistada ja eraldi ümber luua.

## Proportsionaalne arvutus (proration)

Kui õpilane registreerub **makseperioodi keskel**, esitatakse esimene arve mitte terve perioodi eest, vaid proportsionaalselt — järelejäänud tundide arvu järgi.

### Kuidas see töötab

Esimese arve summa arvutatakse valemi järgi:

```
Summa = Baashind × (Järelejäänud tunnid / Kõik tunnid perioodis)
```

See reegel kehtib **kõikide** makse sageduste puhul: igakuine, kvartaalne, poolaasta ja aastane.

### Näide: kvartaalne makse

Oletame:
- Baashind kvartali eest: **489,99 €**
- Soodustus intensiivsuse eest: **20%**
- Kõik tunnid kvartalis: **77**
- Õpilane tuli kvartali lõpus, jäi: **14 tundi**

Arvutus:
1. Hind pärast soodustust: 489,99 × 0,80 = **391,99 €**
2. Proportsioon: 14 / 77 = **18,18%**
3. Tasumisele kokku: 391,99 × 0,1818 = **71,27 €**

> **Tähtis:** Järgmine arve esitatakse terve perioodi (100%) eest. Proportsioon rakendub ainult esimese arvele pärast registreerimist.

### Kuidas perioode arvutatakse

| Makse sagedus | Kaetav periood | Mida arvestatakse |
|---------------|----------------|-------------------|
| **Igakuine** | 1 kalendrikuu | Tunnid selles kuus |
| **Kvartaalne** | 3 kalendrikuud | Tunnid 3 kuu eest |
| **Poolaasta** | 6 kalendrikuud | Tunnid 6 kuu eest |
| **Aastane** | 12 kalendrikuud | Tunnid 12 kuu eest |

Kvartaalse makse puhul summeerib süsteem kõik perioodi 3 kuu planeeritud tunnid ja loeb, mitu neist jääb pärast õpilase registreerimist.

### Kvartaalse arvutuse näide kuude lõikes

Kvartal: jaanuar — märts. Õpilane registreeritud 10. märtsil.

| Kuu | Tunde kuus | Neist tasulisi |
|-----|-----------|----------------|
| Jaanuar | 26 | 0 (enne registreerimist) |
| Veebruar | 24 | 0 (enne registreerimist) |
| Märts | 27 | 14 (alates 10. märtsist) |
| **Kokku** | **77** | **14** |

Proportsioon = 14 / 77 = 18,18%. Õpilane maksab ainult nende tundide eest, mida saab külastada.

> **Märkus:** Kui kursusel pole tunniplaani (tunnid pole planeeritud), proportsiooni ei rakendata — arve esitatakse terve perioodi eest.

## Arve PDF-i eelvaade

Enne arve esitamist saab vaadata, kuidas PDF-dokument välja näeb:

1. Avage arve staatusega **Planeeritud** või **Valmis**.
2. Vajutage nuppu **PDF eelvaade**.
3. Süsteem loob PDF-i arve malli põhjal (seadistatav **Seaded → Arved**).
4. PDF avaneb kontrollimiseks modaalaknas.

> **Märkus:** Arve mall laaditakse üles DOCX-vormingus arvete seadete lehel. Süsteem asendab arve andmed (number, summad, rekvisiidid) ja konverteerib dokumendi PDF-iks.

## Avalik makselink

Arve esitamisel saadetakse maksjale e-kiri makselehe lingiga. See link **ei vaja süsteemi sisselogimist** — maksja saab arvet tasuda lihtsalt lingil käies.

Makselehel kuvatakse:
- Arve number ja summa
- Maksja rekvisiidid
- Nupp **Tasu** (suunab pangalehele)
- Võimalus arve PDF alla laadida

> **Tähtis:** Kui maksesüsteem (Montonio) pole seadistatud, kuvatakse makse nupu asemel hoiatus. Seadistage API-võtmed **Seaded → Arved**.

## Arvete aruanded

Finantsandmete analüüsiks on saadaval aruanded:

1. Minge külgmenüüs jaotisesse **Aruanded**.
2. Valige **Arvete aruanne**.
3. Seadistage aruande parameetrid:
   - **Periood** — märkige kuupäevade vahemik.
   - **Staatus** — filtreerige arvete staatuse järgi.
   - **Kursus** — valige konkreetne kursus või kõik kursused.
4. Vajutage **Koosta aruanne**.
5. Aruandes kuvatakse kogusummad, arvete arv staatuste kaupa ja detailsus.

![Arvete aruanne](images/invoices/invoice_report.png)

> **Nõuanne:** Aruandeid saab eksportida Exceli vormingus edasiseks töötlemiseks.

## Arve tühistamine (kreeditarve)

Kui arve esitati ekslikult või klient palus tühistamist, kasutatakse **kreeditarve** mehhanismi — spetsiaalset tühistavat dokumenti.

> **Seadus:** Eesti õigusaktide kohaselt (Raamatupidamise seadus § 10) esitatud arveid ei saa kustutada. Tühistamine on võimalik ainult kreeditarve kaudu.

### Kuidas tühistada arve

1. Avage arve staatusega **Esitatud**, **Saadetud**, **Tähtaeg ületanud** või **Tasutud**.
2. Vajutage paremas ülanurgas punast nuppu **Tühista**.
3. Kinnitage toiming dialoogiaknas.
4. Süsteem automaatselt:
   - Loob **kreeditarve** (negatiivse arve) originaalile viitega.
   - Määrab malli järgi numbri (näiteks `KA-2026-0002`).
   - Nullib võla originaalarve eest.
   - Seab originaalarve staatusesse **Tühistatud**.
   - Loob raamatupidamiskande (kui pearaamat on seadistatud).

### Mis juhtub rahaga

| Olukord | Tulemus |
|---------|---------|
| Arve **polnud tasutud** | Võlg nullitakse, klient midagi ei võlgne |
| Arve **oli tasutud** | Kliendil tekib **ülemakse** (kreedit). See arvestatakse automaatselt järgmisele arvele |

### Näide

1. Esitatud arve nr 2026-0001 summas **89.00 €** → klient tasus.
2. Administraator tühistab → luuakse kreeditarve **KA-2026-0002** summas **-89.00 €**.
3. Klient: kreedit **89.00 €**.
4. Luuakse uus arve nr 2026-0003 summas **45.00 €** (soodustusega).
5. Süsteem arvestab kreediti automaatselt: 89.00 - 45.00 = **44.00 € jääb**.
6. Arve märgitakse **Tasutud**-uks (total ≤ 0 pärast arvestust).

### Kust vaadata

- **Arve lehel**: kollane bänner lingiga kreeditarvele.
- **Tühistatud arve lehel**: hall bänner «Tühistatud» lingiga.
- **Arvete loendis**: kreeditarved kuvatakse negatiivse summaga.
- **Pearaamatus**: ADJUSTMENT_CREDIT kanded.

> **Ei saa** tühistada: juba tühistatud arvet, kreeditarvet, arvet staatusega «Viga».

---

## Arvete nummerdamise seadistamine

Iga organisatsioon saab seadistada arvete, kreeditarvete ja PDF-failide nimede numbrivormingu.

### Kus seadistada

1. Minge külgmenüüs **Arved** > **Seaded**.
2. Kerige alla jaotiseni **Nummerdamine ja failinimed**.

### Arve numbri mall

Määrab, kuidas uue arve loomisel number kujuneb.

| Malli näide | Tulemus |
|-------------|---------|
| `[[YYYY]]-[[SEQ]]` | `2026-0001`, `2026-0002`, ... |
| `ARV-[[YYYY]][[MM]]-[[SEQ]]` | `ARV-202603-0001` |
| `[[ID]]` | `3289` (lihtsalt ID andmebaasist) |

### Kreeditarve numbri mall

Määrab tühistamisdokumendi numbri vormingu.

| Malli näide | Tulemus |
|-------------|---------|
| `KA-[[YYYY]]-[[SEQ]]` | `KA-2026-0003` |
| `KA-[[ORIG]]` | `KA-2026-0001` (originaalarve number) |

### PDF-faili nime mall

Määrab, kuidas allalaaditud PDF nimetatakse.

| Malli näide | Faili tulemus |
|-------------|---------------|
| `[[COURSE]]-[[STUDENT_CODE]]-inv-[[ID]]` | `klaveriope-50001010001-inv-3289.pdf` |
| `arve-[[NUMBER]]` | `arve-2026-0001.pdf` |
| `[[PAYER_NAME]]-[[PERIOD]]` | `jaan-maasikas-03-2026.pdf` |

### Saadaolevad muutujad

| Muutuja | Kirjeldus | Kus töötab |
|---------|-----------|------------|
| `[[YYYY]]` | Aasta (4 numbrit) | Number + fail |
| `[[YY]]` | Aasta (2 numbrit) | Number + fail |
| `[[MM]]` | Kuu | Number + fail |
| `[[SEQ]]` | Järjenumber (läbiv, nullitakse igal aastal) | Number |
| `[[ID]]` | Arve ID | Number + fail |
| `[[UUID]]` | Arve UUID | Number |
| `[[ORIG]]` | Originaalarve number | Ainult kreeditarve |
| `[[COURSE]]` | Kursuse nimi | Ainult fail |
| `[[STUDENT_CODE]]` | Õpilase isikukood | Ainult fail |
| `[[STUDENT_NAME]]` | Õpilase nimi | Ainult fail |
| `[[PAYER_NAME]]` | Maksja nimi | Ainult fail |
| `[[NUMBER]]` | Arve number | Ainult fail |
| `[[PERIOD]]` | Periood (KK.AAAA) | Ainult fail |

### Kuidas töötab `[[SEQ]]`

Järjenumber on **läbiv loendur** kogu organisatsioonile:

- Arve saab numbri `2026-0001`
- Järgmine arve — `2026-0002`
- Kreeditarve — `KA-2026-0003` (samast loendurist!)
- **1. jaanuaril** loendur nullitakse automaatselt 1-le

> **Tähtis:** Arved ja kreeditarved kasutavad **ühist** loendurit. See tagab numbrite unikaalsuse ja vastavuse Eesti standarditele.

### Eelvaade

Malli sisestamisel kuvatakse välja all **eelvaade** testandmetega. See aitab vormingut enne salvestamist kontrollida.

---

## Pearaamat (raamatupidamiskanded)

Süsteem peab topeltraamatupidamist SmartAccounts/Merit standardite järgi. Iga finantstoiming loob kande.

### Kust leida

Külgmenüüs: **Pearaamat**:

| Alajaotis | Kirjeldus |
|-----------|-----------|
| **Kontoplaan** | Raamatupidamise kontode ja seoste haldus |
| **Proovbilanss** | Kõikide kontode saldod kuupäevaks |
| **Bilanss** | Varad = Kohustused + Kapital |
| **Kasumiaruanne** | Tulud miinus kulud perioodis |
| **Konto väljavõte** | Ühe raamatupidamiskonto detailsus |

> **Märkus:** Menüüpunkt on nähtav ainult kasutajatele õigusega `gl.view` (tavaliselt roll Manager).

### Kontoplaan

Igal organisatsioonil on oma raamatupidamiskontoplaan. Esmasel seadistusel luuakse standardsed kontod:

| Kood | Nimi | Mida kajastab |
|------|------|---------------|
| 1100 | Pangakonto (põhi) | Põhipangakonto |
| 1200 | Nõuded ostjate vastu | Nõuded ostjate vastu (kes meile võlgneb) |
| 2310 | Ostjate ettemaksud | Ostjate ettemaksud (valikuline) |
| 4100 | Õppemaksu tulu | Õppemaksu tulu |
| 5800 | Lootusetute nõuete kulu | Lootusetute nõuete kulu |

### Mis juhtub automaatselt

| Teie toimingud | Süsteem loob kande |
|----------------|--------------------|
| Esitate arve | Deebet: Nõuded +89€ / Kreedit: Tulu +89€ |
| Saate makse | Deebet: Pank +89€ / Kreedit: Nõuded -89€ |
| Tühistate arve | Deebet: Tulu +89€ / Kreedit: Ettemaks +89€ |
| Teete tagasimakse | Deebet: Nõuded +89€ / Kreedit: Pank -89€ |
| Kustutate võla | Deebet: Kulu +89€ / Kreedit: Nõuded -89€ |

> **Nõuanne:** Kui kanne ei loodud (näiteks pearaamat pole seadistatud), toiming (arve, makse) sooritatakse ikkagi. Pearaamatu viga kirjutatakse logisse, kuid ei blokeeri tööd.

### Seoste seadistus

Jaotises **Kontoplaan** → tabel **Seosed** saab iga toimingu tüüpi siduda konkreetse raamatupidamiskontoga. Näiteks:

- `ar.receivable` → 1200 (Nõuded)
- `revenue.tuition` → 4100 (Õppemaksu tulu)
- `bank.montonio` → 1110 (Montonio pank)

See võimaldab kohandada raamatupidamist konkreetsele organisatsioonile ilma koodi muutmata.

### Konto 2310 — Ostjate ettemaksud

See on **valikuline** konto. Kui te selle seadistate:

- **Tasutud** arve tühistamisel liigub kliendi raha ettemaksule (2310)
- Uue arve loomisel arvestatakse ettemaks automaatselt
- Aruannetes on näha, kui palju kliendi raha on ettemaksus

Kui ei seadista — süsteem töötab nagu varem, lihtsalt ilma ettemaksude detailsuseta raamatupidamises.

**Kuidas seadistada:**
1. Minge **Pearaamat** > **Kontoplaan**
2. Looge uus konto (kood 2310, tüüp LIABILITY)
3. Seoste tabelis siduge võti `prepayment.customer` uue kontoga

---

## Sularaha sissekandmine

Kui vanem tasus sularahas:

1. Avage õpilase avaldus.
2. Vajutage arvete jaotise kõrval nuppu **Sularaha**.
3. Modaalaknas märkige:
   - **Kuupäev** saamiseks
   - **Summa** eurodes
4. Vajutage **Salvestan**.
5. Makse kajastub pearaamatus ja vähendab võlga praeguse arve eest.

---

## Kannete žurnaal (Ledger)

Kõikide finantstoimingute vaatamiseks:

1. Minge külgmenüüs **Arved** > **Kannete žurnaal**.
2. Saadaolevad filtrid:
   - **Toimingu tüüp** — makse, arvestus, korrigeerimine, kustutamine.
   - **Pool** — deebet või kreedit.
   - **Makseviis** — pangaülekanne, Montonio, sularaha.
   - **Periood** — kuupäevad.
   - **Konto** — otsing konkreetse konto järgi.
3. Tabeli all kuvatakse kokkuvõtted:
   - **Deebet** (punane) — kõikide deebettoimingute summa.
   - **Kreedit** (roheline) — kõikide kreedittoimingute summa.
   - **Saldo** — vahe (positiivne = võlg, negatiivne = ülemakse).

---

## Arve rea kirjelduse mall

Arve real (summaga rida) on tekstikirjeldus. Vaikimisi kujuneb see kui «Kursuse nimi + periood». Saate seadistada oma vormingu.

### Kus seadistada

1. Minge **Arved** > **Seaded**.
2. Leidke väli **Arve rea kirjelduse mall**.
3. Sisestage mall muutujatega topelt nurksulgudes.
4. Vajutage **Salvesta**.

### Saadaolevad muutujad

| Muutuja | Kirjeldus | Näide väärtusest |
|---------|-----------|------------------|
| `[[COURSE]]` | Kursuse nimi | Klaveriõpe |
| `[[DISCIPLINE]]` | Eriala (aine) | Klaver |
| `[[SPECIALIZATION]]` | Spetsialiseerumine | Muusikakool |
| `[[STUDENT_NAME]]` | Õpilase täisnimi | Mari Maasikas |
| `[[STUDENT_FIRST_NAME]]` | Õpilase eesnimi | Mari |
| `[[STUDENT_LAST_NAME]]` | Õpilase perekonnanimi | Maasikas |
| `[[STUDENT_CODE]]` | Õpilase isikukood | 50001010001 |
| `[[GROUP]]` | Kursuse rühm | A-grupp |
| `[[PERIOD]]` | Periood (KK.AAAA) | 03.2026 |
| `[[PERIOD_FULL]]` | Täielik periood | 03.2026 – 05.2026 |
| `[[TEACHER]]` | Õpetaja | Jaan Tamm |
| `[[LESSONS_COUNT]]` | Tundide arv perioodis | 8 |

### Mallide näited

| Mall | Tulemus arvel |
|------|---------------|
| `[[COURSE]] [[PERIOD]]` | Klaveriõpe 03.2026 |
| `[[COURSE]] – [[STUDENT_NAME]] ([[PERIOD]])` | Klaveriõpe – Mari Maasikas (03.2026) |
| `[[DISCIPLINE]] / [[TEACHER]] / [[LESSONS_COUNT]] tundi` | Klaver / Jaan Tamm / 8 tundi |

> **Kui mall pole määratud**, kasutatakse vaikimisi vormingut: `Kursuse nimi + periood` (näiteks «Klaveriõpe 03.2026»).

---

## Integratsioon Merit Aktivaga

Süsteem saab automaatselt saata esitatud arveid raamatupidamisprogrammi Merit Aktiva.

### Seadistamine

1. Minge **Arved** > **Seaded**.
2. Lülitage sisse toggle **Merit Aktiva integratsioon**.
3. Täitke:
   - **Merit API ID** — Meritist: Seaded > API seaded.
   - **Merit API võti** — salavõti Meritist.
4. Vajutage **Salvesta**.
5. **Kohustuslik** tehke käibemaksu määrade sünkroniseerimine (pöörduge administraatori poole).

### Kuidas töötab

Pärast integratsiooni sisselülitamist:

1. Esitate arve tavaliselt (nupp **Väljasta**).
2. Süsteem **automaatselt** saadab arve Meritisse:
   - Loob või uuendab kliendi Meritis.
   - Edastab kõik arve read õigete käibemaksumääradega.
   - Saab arve PDF-i Meritist.
3. Merit saadab arve kliendile e-posti teel (seadistatav Meritis).
4. Maksed **sünkroniseeritakse automaatselt** iga tund:
   - Kui klient tasus pangas → süsteem märgib arve «Tasutud»-uks.

### Ekspordi staatus

Arve lehel kuvatakse Meritisse saatmise staatus:

| Staatus | Tähendus |
|---------|----------|
| *(tühi)* | Meritisse pole saadetud |
| **Ootel** | Saatmisjärjekorras |
| **Sünkroniseeritud** | Edukalt saadetud |
| **Ebaõnnestunud** | Viga saatmisel — vt vea kirjeldust |

### Massisaatmine

Arvete masssel esitamisel saadetakse kõik automaatselt Meritisse. Lõpetamisel saate teavituse aruandega: kui palju saadeti edukalt, kui palju vigadega.

### Mida teha vea korral

1. Avage arve — vea väljal on probleemi kirjeldus.
2. Sagedased põhjused:
   - **«TaxId required»** — käibemaksu määrad pole sünkroniseeritud. Pöörduge administraatori poole.
   - **«Invalid API credentials»** — kontrollige API ID-d ja võtit seadetes.
   - **«Customer validation failed»** — kontrollige maksja andmeid (nimi, kood).
3. Pärast parandamist esitage arve uuesti.

---

## Näitajad arvete lehel

Arvete loendi lehe ülaosas kuvatakse inforakkarid:

| Kaart | Kirjeldus |
|-------|-----------|
| **Väljastatud kokku** | Kõikide esitatud arvete kogusumma |
| **Makstud kokku** | Tasutud arvete kogusumma |
| **Laekunud kokku** | Tegelikult laekunud raha (raamatupidamisest). Kuvatakse ainult, kui erineb «Makstud kokku»-st |
| **Tasumata** | Tasumata arvete kogusumma |
| **Klientide ettemaksud** | Klientide ülemaksude summa (kreedit). Kuvatakse ainult, kui on ülemakseid |

> **Märkus:** Kaardid «Laekunud kokku» ja «Klientide ettemaksud» põhinevad pearaamatu (GL) andmetel. Need kuvatakse ainult siis, kui organisatsioonil on pearaamat seadistatud ja vastavad kanded olemas.

# Testid

# Testid ja küsitlused

Selles jaotises kirjeldatakse, kuidas luua teste, moodustada küsimustepanka, määrata testid õpilastele ja vaadata tulemusi.

## Testide loend

1. Minge peamenüüs jaotisesse **Testid**.
2. Ekraanile kuvatakse kõigi loodud testide loend, näidates nime, tüüpi ja staatust.

![Testide loend](images/quiz/quizzes_list.png)

## Uue testi loomine

1. Vajutage nuppu **Loo test**.
2. Täitke vorm:
   - **Nimi** — sisestage testi nimi.
   - **Tüüp** — valige tüüp: *kodutöö* või *eksam*.
   - **Ajapiirang** — märkige vajadusel testi sooritamise aeg minutites.
   - **Katsete arv** — märkige, mitu korda õpilane saab testi sooritada.
3. Vajutage **Salvesta**.

![Täidetud testi vorm](images/quiz/quiz_form_filled.png)

Pärast salvestamist ilmub test üldloendisse.

![Testide loend pärast loomist](images/quiz/quizzes_after_create.png)

## Küsimustepank

Küsimustepank on üldine hoidla, kust saab küsimusi lisada igasse testi.

### Küsimustepanga vaatamine

1. Minge jaotisesse **Küsimused** (küsimustepank).
2. Ekraanile kuvatakse kõigi loodud küsimuste loend.

![Küsimuste loend](images/quiz/questions_list.png)

### Vabavastuse küsimuse loomine

1. Vajutage **Lisa küsimus**.
2. Valige tüüp **Vaba tekst**.
3. Sisestage küsimuse tekst.
4. Vajutage **Salvesta**.

![Vabavastuse küsimus](images/quiz/question_free_text.png)

### Ühe õige vastusega küsimuse loomine

1. Vajutage **Lisa küsimus**.
2. Valige tüüp **Üks õige vastus**.
3. Sisestage küsimuse tekst ja vastusevariandid.
4. Märkige õige variant.
5. Vajutage **Salvesta**.

![Ühe vastusega küsimus](images/quiz/question_single_choice.png)

### Mitme õige vastusega küsimuse loomine

1. Vajutage **Lisa küsimus**.
2. Valige tüüp **Mitu õiget vastust**.
3. Sisestage küsimuse tekst ja vastusevariandid.
4. Märkige kõik õiged variandid.
5. Vajutage **Salvesta**.

![Mitme vastusega küsimus](images/quiz/question_multiple_choice.png)

## Küsimuste lisamine testi

1. Avage loendist vajalik test.
2. Minge **Küsimuste haldurisse**.
3. Valige küsimused küsimustepangast ja lisage need testi.
4. Vajadusel muutke küsimuste järjekorda.

![Küsimuste haldur](images/quiz/question_manager.png)

## Testi sooritamine

### Testi alustamine

1. Õpilane avab määratud testi.
2. Avaleht kuvab testi andmed: küsimuste arv, ajapiirang, järelejäänud katsed.
3. Vajutage **Alusta testi**.

![Testi avaleht](images/quiz/quiz_start_page.png)

### Vastamine küsimustele

1. Vastake küsimustele järjest.
2. Pärast kõikidele küsimustele vastamist vajutage **Lõpeta test**.

![Kõik vastused antud](images/quiz/quiz_answers_given.png)

### Tulemuste vaatamine

Pärast testi lõpetamist kuvatakse tulemused: õigete vastuste arv, kogutud punktid ja lõpphinne.

![Testi tulemused](images/quiz/quiz_results.png)

## Katsete vaatamine (administraatorile)

1. Avage loendist vajalik test.
2. Minge vahekaardile **Katsed**.
3. Ekraanile kuvatakse kõigi õpilaste katsete loend kuupäeva, aja ja tulemusega.
4. Vajutage katsele, et näha õpilase vastuseid.

![Katsete loend](images/quiz/admin_attempts_list.png)

# Kohalolek

# Kohaloleku arvestus

Selles jaotises kirjeldatakse, kuidas pidada õpilaste kohaloleku arvestust: luua tundide kirjeid, märkida kohalolu ja puudumisi ning vaadata kohaloleku ajalugu.

## Kohaloleku vahelehe avamine

1. Minge jaotisesse **Kursused** ja avage vajalik kursus.
2. Valige vaheleht **Kohalolek**.
3. Ekraanile kuvatakse kohaloleku tabel tundide kuupäevadega ja õpilaste loendiga.

![Kohaloleku vaheleht](images/attendance/attendance_tab.png)

## Tunni kirje loomine

1. Vahelehel **Kohalolek** vajutage nuppu **Lisa tund** (või valige kalendrist kuupäev).
2. Märkige tunni läbiviimise kuupäev.
3. Süsteem laadib automaatselt kursusele registreeritud õpilaste loendi.

![Kohaloleku vorm](images/attendance/attendance_form.png)

## Kohalolu ja puudumise märkimine

1. Kohaloleku vormis valige iga õpilase kõrval staatus:
   - **Kohal** — õpilane oli tunnis.
   - **Puudus** — õpilane jättis tunni vahele.
2. Vajadusel lisage kommentaar (näiteks puudumise põhjus).

![Kohalolek märgitud](images/attendance/attendance_marked.png)

## Kirjete salvestamine

1. Pärast kõigi õpilaste märgistamist vajutage nuppu **Salvesta**.
2. Süsteem salvestab kohaloleku andmed.
3. Ekraanile ilmub eduka salvestamise kinnitus.

![Kohalolek salvestatud](images/attendance/attendance_saved.png)

## Kohaloleku ajaloo vaatamine

1. Avage vajalik kursus ja minge vahelehele **Kohalolek**.
2. Tabelis on kuvatud kõik varem loodud tundide kirjed.
3. Iga kuupäeva kohta on näha õpilaste staatused (kohalolu või puudumine).
4. Kirje muutmiseks vajutage konkreetsele kuupäevale.

![Kohaloleku vaheleht kirjetega](images/attendance/attendance_tab_after.png)

## Kasulikke nõuandeid

- Täitke kohalolekut regulaarselt pärast iga tundi, et andmed oleksid värsked.
- Kasutage kommentaare puudumise põhjuste selgitamiseks (haigus, mõjuv põhjus jne).
- Varem salvestatud kirjeid saab muuta, vajutades tabelis vajalikule kuupäevale.
- Kohaloleku andmeid kasutatakse kursuse aruannete ja statistika koostamiseks.

# Personalihaldus

# Personalihaldus (HR)

Selles jaotises kirjeldatakse tööd personalimooduliga: töötajate, puhkuste, dokumentide, avalduste, meeldetuletuste ja tasude haldamine.

## Töötajate loend

1. Minge peamenüüs jaotisesse **Töötajad**.
2. Ekraanile kuvatakse kõigi töötajate loend põhiandmetega: nimi, ametikoht, staatus.
3. Töötaja kaardi avamiseks vajutage tema nimele.

![Töötajate loend](images/hr/workers_list.png)

## Personalihalduse paneel

HR-paneel sisaldab mitut vahelehte personalihalduse eri valdkondades töötamiseks:

- **Puhkused** — töötajate puhkuste haldamine.
- **Dokumendid** — dokumentide hoidmine ja jälgimine.
- **Avaldused** — personaliavaldused.
- **Meeldetuletused** — meeldetuletused tähtsate sündmuste kohta.
- **Tasud** — palkade ja lisatasude andmed.

## Puhkused

### Puhkuste vaatamine

1. Minge vahelehele **Puhkused**.
2. Ekraanile kuvatakse töötajate puhkuste kalender või loend kuupäevade ja staatusega.

![Puhkuste vaheleht](images/hr/hr_vacations.png)

### Puhkuseavalduse loomine

1. Vajutage nuppu **Loo puhkuseavaldus**.
2. Täitke vorm:
   - **Töötaja** — valige töötaja (või avaldus luuakse teie nimel).
   - **Puhkuse tüüp** — valige tüüp (põhipuhkus, õppepuhkus, palgata puhkus jne).
   - **Alguskuupäev** — märkige puhkuse esimene päev.
   - **Lõppkuupäev** — märkige puhkuse viimane päev.
3. Vajutage **Salvesta**.

![Puhkuseavalduse vorm](images/hr/vacation_form.png)

![Täidetud puhkuse vorm](images/hr/vacation_form_filled.png)

### Puhkuse kooskõlastamine

1. Juht saab teavituse uue puhkuseavalduse kohta.
2. Avage avaldus puhkuste loendist.
3. Vajutage **Kinnita** või **Lükka tagasi**.
4. Pärast kinnitamist muutub avalduse staatus «Kinnitatud».

![Kinnitatud puhkus](images/hr/vacation_approved.png)

## Dokumendid

### Dokumentide vaatamine

1. Minge vahelehele **Dokumendid**.
2. Ekraanile kuvatakse töötajate dokumentide loend.

![Dokumentide vaheleht](images/hr/hr_documents.png)

### Dokumendi lisamine

1. Vajutage **Lisa dokument**.
2. Täitke vorm:
   - **Nimi** — märkige dokumendi nimi.
   - **Töötaja** — valige töötaja.
   - **Kehtivus** — märkige dokumendi kehtivuse lõppkuupäev (kui kohaldatav).
   - **Fail** — lisage dokumendi fail.
3. Vajutage **Salvesta**.

![Dokumendi vorm](images/hr/document_form.png)

> Kehtivuse aegumise lähenedes saadab süsteem meeldetuletuse.

## Avaldused

1. Minge vahelehele **Avaldused**.
2. Ekraanile kuvatakse personaliavalduste loend (taotlused andmete muutmiseks, tõendid jne).
3. Uue avalduse loomiseks vajutage **Loo avaldus** ja täitke vajalikud väljad.

![Avalduste vaheleht](images/hr/hr_requests.png)

## Meeldetuletused

1. Minge vahelehele **Meeldetuletused**.
2. Siin kuvatakse meeldetuletused: aeguvad dokumendid, eelseisvad puhkused ja muud sündmused.
3. Uue meeldetuletuse loomiseks vajutage **Lisa meeldetuletus**, märkige kuupäev ja kirjeldus.

![Meeldetuletuste vaheleht](images/hr/hr_reminders.png)

## Tasud

### Tasude vaatamine

1. Minge vahelehele **Tasud**.
2. Ekraanile kuvatakse info töötajate palkade, määrade ja lisatasude kohta.

![Tasude vaheleht](images/hr/hr_compensation.png)

![Tasude tabel](images/hr/compensation_tab.png)

### Tasukirje lisamine

1. Vajutage **Lisa kirje**.
2. Täitke vorm:
   - **Töötaja** — valige töötaja.
   - **Tüüp** — märkige tasu tüüp (põhipalk, tunnitasu, preemia).
   - **Summa** — sisestage summa.
   - **Kehtivuse alguskuupäev** — märkige, millisest kuupäevast tasu kehtib.
3. Vajutage **Salvesta**.

![Täidetud tasude vorm](images/hr/compensation_form_filled.png)

# Teavitused

# Teavitused ja saatmised

Selles jaotises kirjeldatakse tööd teavitustega: massisaatmine, saadetud sõnumite ajaloo vaatamine, kirjade mallide ja posti parameetrite seadistamine.

## Massisaatmine

Massisaatmine võimaldab saata kirja korraga mitmele saajale.

### Saatmise loomine

1. Minge peamenüüs jaotisesse **Teavitused**.
2. Valige punkt **Massisaatmine**.
3. Ekraanile avaneb saatmise loomise vorm.

![Massisaatmise leht](images/notifications/bulk_mail_page.png)

### Saatmise vormi täitmine

1. Täitke väljad:
   - **Kirja pealkiri** — sisestage sõnumi pealkiri.
   - **Saajad** — valige saajate rühm (töötajad, õpilased, maksjad) või sisestage aadressid käsitsi.
   - **Kirja tekst** — sisestage sõnumi tekst. Kasutage redaktorit vormindamiseks.
   - **Manused** — vajadusel lisage failid.
2. Vajutage **Saada**.

![Täidetud saatmise vorm](images/notifications/bulk_mail_filled.png)

## Teavituste loend

1. Minge jaotisesse **Teavitused** > **Loend**.
2. Ekraanile kuvatakse kõigi saadetud teavituste ajalugu.
3. Iga teavituse kohta on näidatud: saatmise kuupäev, pealkiri, saaja, kohaletoimetamise staatus.
4. Üksikasjade vaatamiseks vajutage teavitusele.

![Teavituste loend](images/notifications/notification_list.png)

## Kirjade mallid

Mallid võimaldavad seadistada automaatsete kirjade sisu, mida süsteem saadab erinevate sündmuste korral.

### Saadaolevad mallid

Süsteemis on mallid järgmistele teavituste tüüpidele:

- **Parooli lähtestamine** — kiri parooli taastamise lingiga.
- **Töötaja kutse** — kiri, mis kutsub uue töötaja HUVISesse sisse logima Smart-ID või Mobiil-ID kaudu. Muutujad: `[[WORKER_NAME]]`, `[[LINK]]`. Parooli lähtestamist enam ei kasutata, seega standardmallis pole `[[RESET_LINK]]` — kui organisatsioon on paroolisisenemise sisse lülitanud, saate selle malliredaktoris käsitsi lisada.
- **Maksja teavitused** — kirjad maksjatele muudatuste, arvete jms kohta.
- **Kursuse sulgemine** — teavitus kursuse lõpetamise kohta.
- **Arve tasumine** — makse kinnitus või meeldetuletus võla kohta.
- **Arve tasumise meeldetuletus** — päevade arvu seadistus, millal saata meeldetuletus pärast tähtaega.
- **Arvete genereerimise aruanne** — automaatne teavitus administraatoritele pärast arvete genereerimist arvu ja kogusummaga.
- **Puhkuseavaldused** — teavitused esitatud ja kooskõlastatud avalduste kohta.
- **Tunniplaani muudatused** — teavitused tunniplaani muudatuste kohta.

### Malli muutmine

1. Minge jaotisesse **Teavitused** > **Mallid**.
2. Valige loendist vajalik mall.
3. Muutke malli teksti. Kasutage muutujaid (tähistatud looksulgudega) andmete asendamiseks: saaja nimi, kuupäev, link jne.
4. Vajutage **Salvesta**.

![Parooli lähtestamise mall](images/notifications/template_password_reset.png)

![Maksja teavituse mall](images/notifications/template_payer_detail.png)

### Malli eelvaade

1. Avage vajalik mall.
2. Vajutage nuppu **Eelvaade**.
3. Süsteem kuvab, kuidas kiri saajale välja näeb.

![Malli eelvaade](images/notifications/template_preview.png)

## SMTP seaded

> **Seadistatakse platvormi administraatori poolt** — tavakasutajale see osa ei ole nähtav.
> Vaikeväärtused täidetakse paigaldamisel.
> Saatja vaikimisi nimi: **Infosüsteem Huvis**.

1. Minge jaotisesse **Teavitused** > **Seaded**.
2. Avaneb vaheleht **SMTP** väljuva posti serveri parameetritega:
   - **SMTP-host** — SMTP serveri aadress (näiteks `smtp.gmail.com`).
   - **Port** — ühenduse port (tavaliselt `587` TLS-ile või `465` SSL-ile).
   - **Kasutajanimi** — SMTP serveri login.
   - **Parool** — SMTP serveri parool. Jätke väli tühjaks, et säilitada varem sisestatud parool.
   - **Krüpteerimine** — `TLS`, `SSL` või `Puudub`.
   - **Saatja e-post** — aadress, mille nimelt kirju saadetakse.
   - **Saatja nimi** — nimi, mida saaja näeb.
3. Täitke kõik kohustuslikud väljad ja vajutage **Salvesta**.

> SMTP seaded rakenduvad kohe järgmistele väljuvatele kirjadele. Kui SMTP pole seadistatud,
> siis kirjade saatmine ei tööta — süsteem teavitab administraatorit.

![SMTP seaded](images/notifications/smtp_settings.png)

## Kasulikke nõuandeid

- Enne massisaatmist kontrollige saajate loendit, et vältida saatmist ebasoovitavatele aadressaatidele.
- Kasutage mallide eelvaadet veendumaks, et muutujad kuvatakse korrektselt.
- Kontrollige regulaarselt teavituste loendit kohaletoimetamise vigade osas.

# Konverentsid

# Videokonverentsid

Selles jaotises kirjeldatakse tööd videokonverentsidega süsteemis HUVIS: konverentside loomine, osalejate ühendamine ja salvestuste vaatamine.

## Ülevaade

HUVISi süsteem toetab õppeprotsessiga integreeritud videokonverentside läbiviimist. Konverentsid on seotud kursustega, mis võimaldab õpilastele lihtsalt korraldada veebitunde.

Videokonverentsid pakuvad:

- Reaalajas veebitundide läbiviimist.
- Ekraani ja esitluste jagamist.
- Suhtlemist heli, video ja tekstivestluse kaudu.
- Tundide salvestamist hilisemaks vaatamiseks.

## Konverentside loend

1. Minge peamenüüs jaotisesse **Konverentsid**.
2. Ekraanile kuvatakse kõigi konverentside loend koos nime, kursuse, kuupäeva ja staatusega.

![Konverentside loend](images/conference/conference_page.png)

## Konverentsi loomine

1. Vajutage nuppu **Loo konverents**.
2. Täitke vorm:
   - **Nimi** — sisestage konverentsi nimi (näiteks «Matemaatika veebitund»).
   - **Kursus** — valige kursus, mille külge konverents seotakse. Kursuse osalejad saavad automaatselt ligipääsu.
   - **Kuupäev ja kellaaeg** — märkige konverentsi algusaeg.
   - **Kestus** — märkige planeeritud kestus (kui vajalik).
3. Vajutage **Salvesta**.

Pärast salvestamist ilmub konverents loendisse.

![Konverentsi detailid](images/conference/conference_page_2.png)

## Konverentsiga ühinemine

### Õpetajale

1. Avage loendist vajalik konverents.
2. Vajutage nuppu **Ühine** (või **Alusta konverentsi**).
3. Süsteem avab brauseris videokonverentsi akna.
4. Esmakordsel ühendamisel lubage ligipääs kaamerale ja mikrofonile.

### Õpilasele

1. Õpilane logib sisse oma kasutajakontosse (õpilase portaal).
2. Kursuse jaotises kuvatakse saadaolev konverents.
3. Õpilane vajutab nuppu **Ühine**.
4. Avaneb brauseris videokonverentsi aken.

> Õpilased saavad konverentsiga ühineda ainult määratud ajal. Enne konverentsi algust on ühinemise nupp mitteaktiivne.

## Konverentside salvestused

Pärast konverentsi lõpetamist muutub salvestus vaatamiseks kättesaadavaks.

1. Avage loendist konverents.
2. Jaotises **Salvestused** kuvatakse kõik saadaolevad salvestused.
3. Vajutage salvestusele, et see brauseris esitada.
4. Vajadusel saab salvestust alla laadida.

> Salvestused on kättesaadavad nii õpetajatele kui ka selle kursuse õpilastele.

## Kasulikke nõuandeid

- Kontrollige kaamera ja mikrofoni tööd aegsasti, enne konverentsi algust.
- Stabiilseks tööks on soovitatav kasutada juhtmega internetiühendust.
- Teavitage õpilasi eelseisvast konverentsist eelnevalt teavituste süsteemi kaudu.
- Kui õpilane ei saa ühineda, veenduge, et ta on vastavale kursusele registreeritud.
- Konverentside salvestused salvestatakse automaatselt ja on kättesaadavad pärast lõpetamist.

# Vestlused

# Vestlus

Vestlussüsteem võimaldab suhelda kolleegide, vanemate ja õpilastega otse HUVISes. Saate pidada isiklikke vestlusi, luua grupivestlusi, saata faile ja alustada videokõnesid.

## Vestluse avamine

1. Vajutage vasakul külgmenüüs vestluse ikoonile.
2. Avaneb vestluse leht kõigi teie vestluste loendiga.
3. Vasakul on kuvatud dialoogide loend, paremal — praeguse vestluse aken.

![Vestluse leht](images/chat/chat_page.png)

## Isiklikud sõnumid

Isiklik sõnum on üks-ühele vestlus teise kasutajaga.

1. Vestluse lehel vajutage nuppu **Uus sõnum** (pliiatsi ikoon või "+").
2. Alustage otsinguväljal saaja nime sisestamist.
3. Valige rippmenüüst vajalik kasutaja.
4. Kirjutage sõnumi tekst ekraani all olevale väljale.
5. Vajutage nuppu **Saada** või klahvi Enter.

Dialoog ilmub vasakul olevasse loendisse. Uued lugemata sõnumid on märgitud loenduriga.

## Grupivestlused

Grupivestlus võimaldab suhelda korraga mitme osalejaga.

1. Vajutage nuppu **Uus grupivestlus**.
2. Sisestage grupi nimi.
3. Lisage osalejaid, valides neid loendist.
4. Vajutage **Loo**.

Pärast grupi loomist näevad kõik osalejad üldist vestlust ja saavad sinna sõnumeid saata.

### Grupi haldamine

- Uue osaleja lisamiseks avage grupi seaded (hammasratta ikoon) ja valige **Lisa osaleja**.
- Grupist lahkumiseks vajutage grupi seadetes **Lahku vestlusest**.

## Sõnumite ja failide saatmine

![Vestlus sõnumitega](images/chat/chat_page_2.png)

### Tekstisõnumid

1. Valige vasakul loendist vajalik dialoog.
2. Sisestage tekst all olevale väljale.
3. Vajutage **Saada** või klahvi Enter.

### Failide saatmine

1. Vajutage sisestusvälja kõrval kirjaklambri ikoonile (faili lisamine).
2. Valige arvutis fail.
3. Fail lisatakse sõnumi juurde. Vajadusel lisage kommentaar.
4. Vajutage **Saada**.

Toetatud on dokumendid, pildid ja muud failivormingud.

### Reaktsioonid sõnumitele

1. Viige kursor sõnumile.
2. Vajutage ilmunud emotikoni ikoonile.
3. Valige loendist vajalik reaktsioon.

Reaktsioon ilmub sõnumi alla. Teised osalejad saavad oma reaktsioone lisada.

## Videokõned vestlusest (Jitsi)

Otse vestlusest saate alustada videokõne vestluskaaslase või grupiga.

1. Avage vajalik dialoog (isiklik või grupi).
2. Vajutage vestluse akna ülaosas videokaamera ikoonile.
3. Süsteem loob Jitsi kaudu videokonverentsi.
4. Avaneb uus brauseri vaheleht videokõnega.
5. Vestluskaaslane (või grupi osalejad) saavad teavituse ja ühendamise lingi.

### Videokõne ajal

- Saate kaamerat ja mikrofoni sisse ja välja lülitada.
- Saadaval on ekraani jagamise funktsioon.
- Kõne lõpetamiseks vajutage punast kõne lõpetamise nuppu.

## Kasulikke nõuandeid

- Lugemata sõnumid kuvatakse vestluste loendis numbrilise indikaatoriga.
- Kasutage vestluste otsingut vajaliku dialoogi kiireks leidmiseks.
- Vestlusesse saadetud failid on kättesaadavad allalaadimiseks kõigile vestluse osalejatele.

# Aruanded

# Aruanded

Aruannete jaotis võimaldab koostada kokkuvõtlikke andmeid maksjate, õpilaste, kohaloleku, tundide ja arvete kohta. Kõik aruanded toetavad filtreerimist ja eksportimist.

## Maksjate aruanne

![Maksjate aruanne](images/reports/payers_report.png)

See aruanne näitab maksjate loendit koos neid puudutava teabega.

1. Minge külgmenüüs jaotisesse **Aruanded**.
2. Valige **Maksjate aruanne**.
3. Kasutage filtreid valimi täpsustamiseks:
   - Periood (alguse ja lõpu kuupäev)
   - Organisatsioon
   - Maksja staatus
4. Vajutage **Koosta** aruande moodustamiseks.
5. Eksportimiseks vajutage nuppu **Ekspordi** ja valige vorming (Excel).

Tabelis kuvatakse: maksja nimi, kontaktandmed, seotud õpilaste arv, staatus.

## Õpilaste aruanne

![Õpilaste aruanne](images/reports/students_report.png)

Aruanne sisaldab demograafilisi ja õppeandmeid õpilaste kohta.

1. Minge **Aruanded** ja valige **Õpilaste aruanne**.
2. Seadistage filtrid:
   - Õppeaasta
   - Kursus või grupp
   - Vanusegrupp
   - Sugu
   - Õpilase staatus
3. Vajutage **Koosta**.
4. Andmete eksportimiseks vajutage **Ekspordi**.

Aruandes on näha: õpilase ees- ja perekonnanimi, sünnikuupäev, vanus, kontaktandmed, seotud kursused.

## Kohaloleku täitmise aruanne

![Kohaloleku aruanne](images/reports/attendance_report.png)

Näitab statistikat kohaloleku päeviku täitmise kohta õpetajate poolt.

1. Minge **Aruanded** ja valige **Kohaloleku täitmine**.
2. Märkige periood ja valige organisatsioon.
3. Vajadusel filtreerige konkreetse õpetaja või kursuse järgi.
4. Vajutage **Koosta**.

Tabelis kuvatakse:
- Kursuse nimi
- Õpetaja
- Läbiviidud tundide arv
- Täidetud kohalolekuga tundide arv
- Täitmise protsent

## Tundide muudatuste aruanne

![Tundide muudatuste aruanne](images/reports/lesson_changes_report.png)

See aruanne registreerib kõik tunniplaani muudatused: ülekandmised, tühistamised, õpetajate asendused.

1. Minge **Aruanded** ja valige **Tundide muudatused**.
2. Märkige periood.
3. Vajadusel filtreerige kursuse või õpetaja järgi.
4. Vajutage **Koosta**.

Aruandes on näha:
- Lähtetunni kuupäev ja kellaaeg
- Muudatuse tüüp (ülekandmine, tühistamine, asendus)
- Kes muudatuse tegi
- Muudatuse kuupäev

## Arvete aruanne

![Arvete aruanne](images/reports/invoice_report.png)

Koondaruanne esitatud ja tasutud arvete kohta.

1. Minge **Aruanded** ja valige **Arvete aruanne**.
2. Seadistage filtrid:
   - Esitamise periood
   - Arve staatus (esitatud, tasutud, tähtaeg ületanud, tühistatud)
   - Organisatsioon
   - Maksja
3. Vajutage **Koosta**.
4. Eksportimiseks vajutage **Ekspordi**.

Tabel sisaldab: arve number, maksja, summa, esitamise kuupäev, maksetähtaeg, staatus, tasumise kuupäev.

## Aruannete üldvõimalused

- **Sortimine**: vajutage veeru päisele, et sortida selle välja järgi.
- **Otsing**: kasutage otsinguvälja kirjete kiireks leidmiseks.
- **Eksport**: enamikku aruandeid saab eksportida Exceli vormingusse.
- **Filtrite lähtestamine**: vajutage lähtestamise nuppu kõigi filtrite tühjendamiseks.

# Seaded

# Süsteemi seaded

Seadete jaotis võimaldab hallata rolle, organisatsioone, loendeid ja projekti üldparameetreid.

## Rollid ja õigused

Rollid määravad, milliseid toiminguid saab töötaja süsteemis teha.

### Rollide loendi vaatamine

1. Minge külgmenüüs jaotisesse **Seaded**.
2. Valige alajaotis **Rollid**.
3. Avaneb kõigi loodud rollide loend.

![Rollide loend](images/settings/roles_list.png)

### Uue rolli loomine

1. Rollide loendi lehel vajutage **Lisa roll**.
2. Sisestage rolli nimi.
3. Vajutage **Salvesta**.

### Õiguste seadistamine

![Rolli muutmine](images/settings/role_edit.png)

1. Vajutage loendis rolli nimele.
2. Avaneb leht õiguste gruppidega.
3. Õigused on grupeeritud süsteemi jaotiste kaupa (õpilased, kursused, arved jne).
4. Märkige linnukestega sellele rollile vajalikud õigused.
5. Vajutage **Salvesta**.

![Õiguste grupid](images/settings/permission_groups.png)

Iga grupp sisaldab tegevuste komplekti: vaatamine, loomine, muutmine, kustutamine.

## Organisatsioonid

Organisatsioonid on õppeasutused või allüksused, kes süsteemis töötavad.

### Organisatsioonide loend

![Organisatsioonide loend](images/settings/organizations_list.png)

1. Minge **Seaded** ja valige **Organisatsioonid**.
2. Tabelis kuvatakse kõik organisatsioonid põhiandmetega.

### Organisatsiooni loomine

![Organisatsiooni loomise vorm](images/settings/organization_form.png)

1. Vajutage **Lisa organisatsioon**.
2. Täitke kohustuslikud väljad:
   - Organisatsiooni nimi
   - Registrikood
   - Kontaktandmed
3. Täitke arvete rekvisiidid (kui vajalik):
   - Arvelduskonto
   - KMKR (VAT) number
4. **Maksevärav** (seadistatakse platvormi administraatori poolt):
   - Maksete teenuseosutaja (Montonio / Everpay)
   - API võti, API URL, salaAPI võti
5. Vajutage **Salvesta**.

> **Tähtis:** Maksevärava seaded on vajalikud pangalinkide töötamiseks arvetes ja online-makseks.

### Organisatsiooni moodulid

![Moodulite haldus](images/settings/modules_page.png)

Moodulid määravad, millised funktsioonid on konkreetsele organisatsioonile kättesaadavad.

1. Avage organisatsiooni kaart.
2. Minge vahelehele **Moodulid**.
3. Lülitage vajalikud moodulid sisse või välja (arved, vestlus, tunniplaan jne).
4. Vajutage **Salvesta**.

## Aadressid (organisatsioonid ja õpilased)

![Aadresside loend](images/settings/address_list.png)

Aadresside loendit kasutatakse organisatsioonide ja õpilaste andmete täitmisel.

1. Minge **Seaded** ja valige **Aadressid**.
2. Lisamiseks vajutage **Lisa aadress**.
3. Täitke väljad: tänav, maja, linn, postiindeks.
4. Vajutage **Salvesta**.

## Aadressid (tundide asukohad)

Füüsiliste aadresside register, kus tunnid toimuvad. Kasutatakse kabinettide loomisel.

1. Minge **Seaded → Aadressid** (`/setting/address`).
2. Vajutage **Loo**.
3. Täitke aadressi nimi (näiteks «Pärnu mnt 10, Tallinn»).
4. Vajutage **Salvesta**.

Aadresside vaatamise ja muutmise õigused on ühised kabinettidega (`room.view` / `room.edit` / `room.delete`) — eraldi aadressi-õigusi pole.

## Kabinetid (ruumid)

Kabinettide registrit kasutatakse tunniplaani koostamisel.

1. Esmalt looge **Aadress** (vt ülal), vastasel juhul jääb kabineti loomisel väli «Aadress» tühjaks.
2. Minge **Seaded → Kabinetid** (`/setting/room`).
3. Vajutage **Loo**.
4. Märkige kabineti number ja valige aadress loendist.
5. Vajadusel märkige «Peida» — kabinetti ei kuvata kursuse viisardis.
6. Vajutage **Salvesta**.

Kabinettide loendis on nüüd veerg **Aadress**, et seos oleks näha ilma kaarti avamata.

> Ilma vähemalt ühe kabinetita näitab kursuse viisard (`Samm 2: Tunniplaan`) tühja võrku ja pakub avada kabinettide seaded — klõps ajateljel ei tööta, kuni kabinetid puuduvad.

## Klassiastmed (õppeklassid)

Register **Klassiastmed** — see on **õpingutasemed** (1. klass, 5. klass jne), kasutatakse Curriculum-moodulis (õppekavades). **Ei tohi segi ajada** kabinetiga: kabinet = ruum, klassiaste = õpilase tase.

1. Minge **Seaded → Klassiastmed** (`/settings/school-classes`).
2. Vajutage **Loo**.
3. Täitke:
   - **Nimi** — näiteks «1. klass», «5. klass».
   - **Kood** — lühi-identifikaator (`1`, `5`, `1A`).
4. Vajutage **Salvesta**.

Õigused: `school_class.view` / `school_class.edit` / `school_class.delete`.

## Õpilase kool ja klass

Süsteem võimaldab märkida õpilase kooli ja klassi. Need andmed täidetakse registreerimisel ja administraator saab neid muuta.

### Kus kuvatakse

- **Registreerimisvorm** — maksja/õpilane täidab avalduse esitamisel
- **Avalduse kaart** (vaheleht «Andmed») — administraator muudab
- **Õpilase kaart** — administraator muudab
- **Maksja portaal** — kuvatakse lapse andmetes

### Väljade nähtavuse seadistamine

Kooli ja klassi välju saab registreerimisvormis sisse lülitada või peita:

1. Minge **Kursuse seaded**.
2. Avage vaheleht **Registreerimisvormi väljad**.
3. Iga välja jaoks (`Kool` — kool, `Klass` — klass) valige:
   - **Nähtav** — väli kuvatakse vormis
   - **Kohustuslik** — välja on kohustus täita
   - **Peidetud** — välja ei kuvata
4. Vajutage **Salvesta**.

### Kaks kooli sisestamise režiimi

#### Valik loendist (vaikimisi)

Kooli nime sisestamisel (vähemalt 2 märki) ilmub rippmenüü vihjetega Eesti õppeasutuste loendist (EHIS, ~11 000 kirjet). Valige loendist vajalik kool.

Loendis iga kooli jaoks kuvatakse:
- Kooli **nimi**
- **Aadress** (väikse šriftiga)

#### Vaba sisestamine («Muu kool»)

Kui vajalikku kooli loendis pole:

1. Märkige linnuke **Muu kool**.
2. Sisestage kooli nimi käsitsi tekstivälja.
3. Vajutage **Salvesta**.

> **Märkus:** Vabal sisestusel salvestatakse ainult nime tekst, ilma loendiga sidumata.

### Kooli muutmine avalduse kaardil

1. Avage õpilase avaldus.
2. Õpilase andmete jaotises leidke rida **Kool**.
3. Vajutage paremal pliiatsi ikoonile.
4. Avaneb redaktor:
   - **Loendi režiim** — alustage nime sisestamist ja valige loendist.
   - **«Muu kool» režiim** — märkige linnuke ja sisestage tekst.
5. Vajutage **Salvesta**.

Välja **Klass** muutmiseks on protseduur sama — vajutage pliiatsile ja sisestage väärtus.

> **Vajalik õigus:** `COURSE_APPLICATION_EDIT` avalduse kaardil väljade muutmiseks.

## Soodustused

Soodustuste loendit kasutatakse õppemaksu seadistamisel.

1. Minge **Seaded** ja valige **Soodustused**.
2. Vajutage **Lisa soodustus**.
3. Märkige:
   - Soodustuse nimi
   - Tüüp (protsent või fikseeritud summa)
   - Soodustuse väärtus
   - Kehtivuse periood (kui vajalik)
4. Vajutage **Salvesta**.

## Puhkuste tüübid

Puhkuste tüüpe kasutatakse töötajate puudumiste arvestamisel.

1. Minge **Seaded** ja valige **Puhkuste tüübid**.
2. Vajutage **Lisa tüüp**.
3. Sisestage puhkuse tüübi nimi.
4. Vajutage **Salvesta**.

## Projekti seaded

Üldseaded mõjutavad süsteemi välimust ja käitumist.

1. Minge **Seaded** ja valige **Projekt**.
2. Siin saab muuta:
   - **Logo** — laadige üles organisatsiooni logo kujutis.
   - **Projekti nimi** — kuvatakse süsteemi päises.
   - **Kontaktandmed** — toe e-post ja telefon.
3. Pärast muudatuste tegemist vajutage **Salvesta**.

# Maksja juhend

# Maksja portaal

Maksja portaal on mõeldud vanematele ja eestkostjatele. Siin saab esitada avaldusi kursustele, vaadata arveid ja suhelda administratsiooniga.

## Süsteemi sisenemine

1. Avage maksja sisselogimise leht.
2. Valige sisselogimisviis:
   - **Smart-ID** — sisestage isikukood ja järgige telefonis juhiseid.
   - **Mobiil-ID** — sisestage telefoninumber ja isikukood, kinnitage telefonis.
   - **Parool** — sisestage e-post ja parool.
3. Pärast edukat sisselogimist jõuate portaali avalehele.

## Avaleht (töölaud)

![Maksja töölaud](images/payer/payer_dashboard.png)

Avalehel kuvatakse:
- Aktiivsed avaldused ja nende staatused
- Viimased arved
- Teavitused administratsioonilt
- Kiirlingid põhitegevustele

## Avalduse esitamine kursusele

### Samm 1: Avalduse esitamise algus

![Avalduse loomise leht](images/payer/payer_create_app.png)

1. Vajutage avalehel või menüüs **Esita avaldus**.
2. Avaneb avalduse loomise vorm.

### Samm 2: Kursuse valimine

![Kursus valitud](images/payer/payer_course_selected.png)

1. Vaadake saadaolevate kursuste loendit.
2. Kasutage otsimiseks filtreid: nime, suuna, vanuse järgi.
3. Vajutage valimiseks vajalikule kursusele.
4. Tutvuge kursuse kirjelduse, tunniplaani ja hinnaga.

### Samm 3: Õpilase andmed

![Õpilane valitud](images/payer/payer_student_selected.png)

1. Valige õpilane juba lisatud laste nimekirjast või lisage uus.
2. Uue õpilase lisamisel täitke:
   - Eesnimi ja perekonnanimi
   - Isikukood
   - Sünnikuupäev
   - Kontaktandmed
3. Veenduge, et õpilase andmed on õigesti täidetud.

### Samm 4: Kinnitamine ja nõusolekud

![Nõusoleku märgid](images/payer/payer_checkboxes.png)

1. Tutvuge õppimistingimustega.
2. Märkige kohustuslikud märkeruudud:
   - **Nõusolek andmete töötlemiseks HUVISes** — klõpsake lingil «privaatsuspoliitika» (avaneb PDF), lugege dokument läbi ja pange linnuke. See on **nõusolek platvormiga**, millel kooli koduleht töötab, mitte kooliga endaga.
   - Täiendavad kooli nõusolekud (asutuse reeglid, andmete töötlemine kooli poolt) — kui administratsioon on need seadistanud.
3. Vajutage **Esita avaldus**.

### Pärast avalduse esitamist

![Pärast avalduse esitamist](images/payer/payer_after_submit.png)

Pärast edukat esitamist kuvatakse kinnitus. Avaldus ilmub teie avalduste loendisse staatusega „Läbivaatusel".

## Küsimustike täitmine

![Küsimustiku vorm](images/payer/payer_questionnaire.png)

Mõned kursused nõuavad täiendavate küsimustike täitmist.

1. Avage avaldus, millega on seotud küsimustik.
2. Vajutage lingile **Täida küsimustik**.
3. Vastake kõigile kohustuslikele küsimustele (tähistatud tärniga).
4. Vajutage **Salvesta**.

Küsimustik võib sisaldada tekstivälju, rippmenüüsid ja valikvastustega küsimusi. Mõned väljad võivad sisaldada linke dokumentidele (näiteks privaatsuspoliitika) — vajutage lingile, et tutvuda.

## Avalduste ja staatuste vaatamine

1. Minge jaotisesse **Minu avaldused**.
2. Tabelis kuvatakse kõik teie avaldused praeguste staatustega:
   - **Läbivaatusel** — avaldus on saadetud ja ootab otsust.
   - **Kinnitatud** — avaldus on vastu võetud, õpilane on registreeritud.
   - **Tagasi lükatud** — avaldus ei ole vastu võetud (põhjus on märgitud).
   - **Allkirjastatud** — leping on allkirjastatud.
3. Vajutage avaldusele üksikasjade vaatamiseks.

## Lepingu allkirjastamine

Kui kool on avalduse kinnitanud, tuleb see allkirjastada, muidu ei loeta last registreerituks.

1. Avalduste loendis kuvatakse allkirjastamata avaldustel bänner **Vajab allkirja** ja nupp **Mine allkirjastama**. Sama on saadaval avalduse üksikasjade lehel.
2. **Samm 1 — Küsimustik ja nõusolekud.** Lugege tingimusi, märkige kohustuslikud märkeruudud (andmete töötlemine, asutuse reeglid) ja salvestage.
3. **Samm 2 — Allkiri.** Kinnitage allkiri Smart-ID või Mobiil-ID kaudu (saate telefonile taotluse).
4. Pärast edukat allkirjastamist muutub avalduse staatus **Allkirjastatud** ja failide hulka ilmub lepingu PDF.

> Allkiri on juriidiliselt siduv. Kui õpilase andmed on valed, parandage need **enne** allkirjastamist — pärast allkirjastamist lepingut muuta ei saa, seda saab ainult sulgeda ja uuesti vormistada.

## Prooviõppetund

Kui kursusel on ette nähtud prooviõppetund, satub kinnitatud avaldus staatusesse **Prooviõppetund**. Üksikasjade lehel ilmub plokk kahe toiminguga:

1. **Kinnita** — valige loendist tariif, vajutage **Kinnita**. Avaldus läheb üle tavalisse staatusesse, sellest hetkest algab täielik osalemine kursusel.
2. **Keeldu** — kui pärast prooviõppetundi otsustasite mitte jätkata, vajutage **Keeldu**. Avaldus suletakse.
   - Kui kool on seadistanud režiimi „tasuta jätkamisel" (`FREE_IF_STAYS`), siis keeldumise korral luuakse automaatselt arve prooviõppetunni eest. Kinnitamise korral jääb prooviõppetund tasuta.

## Sõnumi saatmine õpetajale või administratsioonile

Koolisisene sõnumivahetuskanal on seotud konkreetse avaldusega — kirjad saadetakse õpetaja ja/või administratsiooni e-postile, teie e-post on väljal „Vasta".

1. Avalduse üksikasjade lehel vajutage **Kirjuta sõnum**.
2. Avanenud aknas:
   - **Saaja** — valige loendist üks või mitu. Loendisse satuvad ainult valitud kursuse õpetajad ja kooli administratsiooni e-post (võõraid aadresse lisada ei saa).
   - **Teema** — kuni 255 tähemärki.
   - **Sõnum** — kuni 5000 tähemärki.
   - **Manused** — saab lisada kuni **3 faili** (valikuline).
3. Vajutage **Saada**. Sõnum läheb saadetiste järjekorda; kuvatakse kinnitus **„Sõnum saadetud!"**.

> Vastus õpetajalt/administratsioonilt saabub maksja profiilis märgitud e-postile.

## Lapse üleviimine teisele kursusele

Kui laps soovib kursust vahetada, ei ole vaja praegust avaldust täielikult sulgeda ja uut esitada — kasutage üleviimist.

1. Allkirjastatud avalduse üksikasjade lehel vajutage **Vii üle teisele kursusele**.
2. Avaneb üleviimise vorm:
   - **Kursus** — valige loendist uus kursus (kuvatakse praeguse õppeaasta kursused).
   - **Üleviimise kuupäev** — vaikimisi „homme". Möödunud kuupäeva valida ei saa. Pärast seda kuupäeva toimub esimene tund uuel kursusel; vana avaldus suletakse päev varem.
   - **Tariif** — valitakse uue kursuse tariifidest. Kui tariife ei leita, lülituge teisele kursusele.
3. Vormi all kuvatakse eelvaade: esimese tunni kuupäev uuel kursusel ja märge **„Vaja uut lepingut"**, kui eriala või tariif muutub oluliselt.
4. Vajutage **Salvesta**:
   - **Ilma uue lepinguta** — avaldus seotakse lihtsalt uue kursusega.
   - **Uue lepinguga** — vana avaldus suletakse, luuakse uus staatusega **CREATED** ja see tuleb **uuesti allkirjastada** (vt jaotist „Lepingu allkirjastamine"). Aktiivsed soodustused kantakse automaatselt üle uuele avaldusele.
5. Pärast edukat üleviimist naasete avalduse üksikasjade lehele eduteatega.

> Kui protsessis tekkis viga — kuvatakse teade „Värskendamise viga". Avaldus jääb muutmata, võib proovida uuesti või võtta administratsiooniga ühendust nupu **Kirjuta sõnum** kaudu.

## Õppimise lõpetamine (väljaarvamine)

Kui laps enam kursusele ei käi, vormistage lõpetamine, et arveldus õigesti peatada.

1. Avalduse üksikasjade lehel vajutage **Lõpeta õppimine**.
2. Avanenud aknas:
   - **Lõppkuupäev** — kuupäev, millest alates laps enam tundides ei käi. Ei saa märkida kuupäeva varasemat, kui kool lubab (administratsioon seadistab).
   - **Põhjus** — valige loendist (kolimine, huvide muutus, rahalised põhjused jne).
   - **Kommentaar** — vabatahtlik selgitus.
3. Vajutage **Salvesta**. Avaldus saab lõpetamise staatuse, viimane tund fikseeritakse, tulevikus arveid enam ei koostata.

### Tulevase lõpetamise tühistamine

Kui lõpetamine on määratud tulevasele kuupäevale ja te muutsite meelt:

1. Avalduse üksikasjade lehel vajutage **Jää kursusele**.
2. Sulgemiskuupäev ja põhjuse kirje kustutatakse, avaldus on taas aktiivne.

> Tagantjärele lõpetamist tühistada, kui kuupäev on juba möödas, ei saa — pöörduge administratsiooni poole nupu **Kirjuta sõnum** kaudu.

## Arved ja tasumine

1. Minge jaotisesse **Arved**.
2. Loendis kuvatakse kõik esitatud arved.
3. Iga arve kohta on näha: number, summa, tasumise tähtaeg, staatus.
4. Vajutage arvele üksikasjade vaatamiseks.
5. Tasumiseks vajutage nuppu **Tasu** — teid suunatakse tasumise lehele.

Arvete staatused:
- **Esitatud** — ootab tasumist.
- **Tasutud** — tasumine on saadud.
- **Tähtaja ületanud** — tasumise tähtaeg on möödas.

### Tasumine lingi kaudu (sisenemata süsteemi)

Arve esitamisel saadetakse teile e-postile link tasumise lehele. Lingile vajutades saab arve tasuda **süsteemi sisse logimata**:

1. Avage link e-postist.
2. Lehel kuvatakse arve andmed: number, summa, rekvisiidid.
3. Vajutage **Tasu** — teid suunatakse panka makse lõpetamiseks.
4. Vajadusel laadige lehelt nupu kaudu arve PDF alla.

## Vestlus administratsiooniga

1. Vajutage menüüs vestluse ikoonile.
2. Valige olemasolev dialoog või alustage uut.
3. Kirjutage sõnum ja vajutage **Saada**.

Vestluse kaudu saab esitada küsimusi tunniplaani, tasumise ja muude korralduslike teemade kohta.

# Õpilase juhend

# Õpilase portaal

Õpilase portaal annab juurdepääsu tunniplaanile, kodutöödele, testidele ja videokonverentsidele.

## Süsteemi sisenemine

1. Avage õpilase sisselogimise leht.
2. Valige sisselogimisviis:
   - **Smart-ID** — sisestage isikukood ja kinnitage telefonis.
   - **Mobiil-ID** — sisestage telefoninumber ja isikukood, kinnitage telefonis.
   - **Parool** — sisestage e-post ja parool.
3. Pärast sisselogimist jõuate portaali avalehele.

## Avaleht

![Õpilase töölaud](images/student/student_dashboard.png)

Avalehel kuvatakse:
- Lähimad tunnid kuupäeva, kellaaja ja kursuse nimega
- Täitmata kodutööd
- Teavitused õpetajatelt
- Eelseisvad testid

## Tunniplaan ja kursused

![Õpilase portaali leht](images/student/student_page_2.png)

1. Minge menüüs jaotisesse **Tunniplaan**.
2. Tunniplaan kuvatakse kalendri või loendina.
3. Iga tunni kohta on näha:
   - Kuupäev ja kellaaeg
   - Kursuse nimi
   - Õpetaja
   - Ruum (kui märgitud)
4. Vajutage tunnile üksikasjade vaatamiseks.

![Õpilase portaali leht](images/student/student_page_3.png)

### Kursuste vaatamine

1. Minge jaotisesse **Minu kursused**.
2. Avaneb kursuste loend, millele olete registreeritud.
3. Vajutage kursusele kirjelduse, tunniplaani ja materjalide vaatamiseks.

## Testid ja kontrolltööd

### Saadaolevate testide loend

![Testide loend](images/student/student_quiz_list.png)

1. Minge jaotisesse **Testid**.
2. Loendis on näha saadaolevad testid koos kursuse, kuupäeva ja kellaajaga.
3. Ajapiiranguga testid on tähistatud vastava ikooniga.

### Testi läbimine

![Testi alustamine](images/student/student_quiz_start.png)

1. Vajutage loendis testile.
2. Tutvuge teabega: küsimuste arv, ajapiirang, katsete arv.
3. Vajutage **Alusta testi**.
4. Vastake küsimustele järjest. Küsimuste tüübid:
   - Üks õige vastus (valik variantidest)
   - Mitu õiget vastust (märkige kõik sobivad)
   - Vaba vastus (sisestage tekst)
5. Kui olete vastanud kõigile küsimustele, vajutage **Lõpeta test**.

### Testide tulemused

![Testi tulemused](images/student/student_quiz_results.png)

1. Pärast testi lõpetamist kuvatakse tulemused:
   - Õigete vastuste arv
   - Saadud punktid
   - Sooritusprotsent
2. Mitme katse korral kuvatakse parim tulemus.

### Katsete ajalugu

![Katsete ajalugu](images/student/student_attempts.png)

1. Minge testi sees jaotisesse **Minu katsed**.
2. Kuvatakse kõigi katsete loend koos kuupäeva ja tulemusega.
3. Vajutage katsele vastuste vaatamiseks (kui õpetaja on lubanud).

## Kodutööd

![Õpilase portaali leht](images/student/student_page_4.png)

1. Minge jaotisesse **Kodutööd** või avage ülesanne avalehe paneelilt.
2. Lugege ülesande kirjeldust ja nõudeid.
3. Valmistage vastus ette:
   - Sisestage tekst vastuse väljale.
   - Lisage fail nupuga **Lisa fail**.
4. Vajutage **Saada**.

Kodutööde staatused:
- **Täitmata** — ülesanne ei ole veel esitatud.
- **Kontrollimisel** — ülesanne on saadetud ja ootab kontrollimist.
- **Kontrollitud** — õpetaja on töö kontrollinud (võib olla hinne ja kommentaar).

## Videokonverentsid

Veebitundides osalemiseks kasutatakse videokonverentse.

1. Leidke tunniplaanist videokonverentsi märgiga tund.
2. Vajutage nuppu **Liitu** (saadaval mõni minut enne tunni algust).
3. Avaneb uus vahekaart videokonverentsiga.
4. Lubage brauseris juurdepääs kaamerale ja mikrofonile.
5. Lõpetamiseks vajutage punast väljumisnuppu.

## Vestlus

1. Vajutage menüüs vestluse ikoonile.
2. Saate kirjutada õpetajale või administratsioonile.
3. Valige saaja ja sisestage sõnum.
4. Vajutage **Saada**.

Vestluse kaudu saab esitada küsimusi tundide, ülesannete ja korralduslike asjade kohta.

# Otsing

# Üldine otsing

Otsing võimaldab kiiresti leida õpilasi, kursusi, avaldusi ja muid andmeid kogu süsteemist.

## Kuidas kasutada

1. Vajutage külgmenüüs punktile **Otsing**.
2. Avaneb otsingu modaalaken.
3. Alustage päringu sisestamist — näiteks õpilase nimi, kursuse nimi või arve number.
4. Tulemused ilmuvad sisestamise käigus automaatselt.
5. Vajutage vajalikule tulemusele, et sellele liikuda.

![Otsingu aken](images/getting-started/search_page.png)

![Otsingu tulemused](images/getting-started/search_results.png)

## Mida saab leida

Otsing töötab korraga mitmes jaotises:

| Tüüp | Mille järgi otsitakse |
|------|-----------------------|
| Avaldused | Maksja või õpilase nime järgi |
| Õpilased | Nime ja isikukoodi järgi |
| Töötajad | Nime ja isikukoodi järgi |
| Kursused | Kursuse nime järgi |

## Õppeaasta filter

Otsingu tulemused on piiratud **praeguse õppeaastaga**, mis on valitud ülemises paneelis. Teise aasta andmete leidmiseks lülitage kõigepealt õppeaastat.

## Organisatsioon

Kui teil on juurdepääs mitmele organisatsioonile, kuvatakse iga tulemuse kõrval organisatsiooni nimi.

> **Nõuanne:** Otsing on saadaval ainult rollile Manager.

# Automatiseerimine

# Avalduste automatiseerimine

Jaotis **Kursused → Seaded → Automatiseerimine** võimaldab automatiseerida kolme põhiprotsessi avaldustega töötamisel:

1. **Automaatsaatmine** — avalduste automaatne saatmine allkirjastamiseks
2. **Meeldetuletused** — meeldetuletuste saatmine allkirjastamata avalduste kohta (e-post või SMS)
3. **Automaatne tühistamine** — avalduste automaatne tühistamine, mida ei allkirjastatud tähtajaks

> **Märkus:** Automatiseerimine töötab iga organisatsiooni jaoks eraldi. Ühe organisatsiooni seaded ei mõjuta teisi.

---

## Kuidas avada automatiseerimise seaded

1. Minge külgmenüüs **Kursused → Seaded**.
2. Valige navigatsioonipaneelis vaheleht **Automatiseerimine**.

> **Juurdepääsuõigus:** Vaatamiseks on vajalik õigus `course.setting.view`, muutmiseks — `course.setting.edit`.

---

## Automaatsaatmine

Automaatsaatmine saadab avalduse maksjale automaatselt allkirjastamiseks pärast seadistatavat viivitust.

### Kuidas see töötab

Kui õpilane (või administraator) loob avalduse kursusele, saab see staatuse **Loodud**. Ilma automatiseerimiseta peab administraator iga avalduse puhul käsitsi vajutama „Saada". Automaatsaatmine teeb seda automaatselt.

**Protsess:**
1. Avaldus luuakse → staatus **Loodud**
2. Möödub määratud arv päevi
3. Süsteem automaatselt:
   - Genereerib avalduse PDF-dokumendi (kursuse malli järgi)
   - Muudab staatuse **Saadetud**
   - Saadab maksjale teavituse (kursuse teavitusmalli järgi)

### Seadistamine

1. Lülitage lüliti **„Automaatsaatmine sisse lülitatud"** sisse.
2. Märkige **viivitus päevades** — mitu päeva oodata pärast avalduse loomist enne automaatset saatmist.
3. Vajutage **Salvesta**.

| Viivituse väärtus | Käitumine |
|:-----------------:|-----------|
| **0** | Avaldus saadetakse järgmisel töötlemisel (tunni jooksul pärast loomist) |
| **1** | Saatmine 1 päev pärast loomist |
| **3** | Saatmine 3 päeva pärast loomist |

> **Tähtis:** Automaatsaatmise korrektseks toimimiseks peab kursusel olema seadistatud **avalduse mall** (vaheleht „Mall" kursuse lehel). Kui mall puudub, jäetakse selle kursuse automaatsaatmine logi kirjega vahele.

### Millal automaatsaatmine EI toimi

- Avaldusel on juba teine staatus (mitte „Loodud") — näiteks administraator saatis selle varem käsitsi
- Kursusel pole seadistatud avalduse malli
- Toimus PDF-i genereerimise viga (kirjutatakse logi)

---

## Meeldetuletused

Meeldetuletused võimaldavad automaatselt teavitada maksjaid avaldustest, mis on saadetud allkirjastamiseks, kuid mida pole veel allkirjastatud. Saab seadistada mitu reeglit erinevate viivituste ja kohaletoimetamiskanalitega.

### Kuidas see töötab

1. Avaldus saadetud → staatus **Saadetud**
2. Möödub määratud arv päevi (saatmiskuupäevast)
3. Süsteem saadab meeldetuletuse valitud kanali kaudu (e-post või SMS)
4. Iga konkreetne meeldetuletus saadetakse iga avalduse puhul **üks kord**

### Näitestsenaarium

Seadistasite kolm meeldetuletust:

| Meeldetuletus | Päeva pärast saatmist | Kanal |
|:-------------:|:---------------------:|:-----:|
| 1 | 3 | E-post |
| 2 | 7 | E-post |
| 3 | 10 | SMS |

**Mis juhtub:**
- **Päev 3:** Maksja saab e-posti meeldetuletuse
- **Päev 7:** Teine e-posti meeldetuletus
- **Päev 10:** SMS-meeldetuletus
- Kui maksja allkirjastas avalduse **päeval 5** — teist ja kolmandat meeldetuletust EI saadeta (staatus muutus)

### Meeldetuletuse seadistamine

1. Vajutage nuppu **„Lisa meeldetuletus"**.
2. Täitke väljad:

| Väli | Kirjeldus |
|------|-----------|
| **Päeva pärast saatmist** | Mitu päeva pärast avalduse saatmist meeldetuletus töötab (vähemalt 1) |
| **Kanal** | Kohaletoimetamisviis: **E-post** või **SMS** |
| **Teema** (ainult e-post) | Kirja teema igas süsteemi keeles (eesti, vene) |
| **Sisu** | Meeldetuletuse tekst igas keeles. Toetab muutujaid `[[KEY]]` |

3. Vajutage **Salvesta**.

### Meeldetuletuse kustutamine

- Vajutage meeldetuletuse kõrval nuppu **„Kustuta"**.
- Meeldetuletus desaktiveeritakse. Juba saadetud meeldetuletusi tagasi ei kutsuta.

### Mallide muutujad

Meeldetuletuse tekstis (ja e-posti teemas) saab kasutada muutujaid topelt nurksulgudes. Saatmisel asendatakse need automaatselt tegelike andmetega.

| Muutuja | Kirjeldus | Näide |
|---------|-----------|:-----:|
| `[[STUDENT_FIRST_NAME]]` | Õpilase eesnimi | Maria |
| `[[STUDENT_LAST_NAME]]` | Õpilase perekonnanimi | Ivanova |
| `[[PARENT_FIRST_NAME]]` | Maksja eesnimi | Ivan |
| `[[PARENT_LAST_NAME]]` | Maksja perekonnanimi | Ivanov |
| `[[COURSE_NAME]]` | Kursuse nimi | Matemaatika — rühm A |
| `[[APPLICATION_DATE]]` | Avalduse loomise kuupäev | 15.03.2026 |
| `[[CANCELLATION_DATE]]` | Automaatse tühistamise kuupäev | 29.03.2026 |

> **Tõstutundlikkust pole:** `[[STUDENT_FIRST_NAME]]` ja `[[student_first_name]]` töötavad ühtemoodi.

> **CANCELLATION_DATE:** Arvutatakse kui saatmiskuupäev + päevad automaatse tühistamiseni. Kui automaatne tühistamine on välja lülitatud — on tühi string.

### Meeldetuletuse teksti näide

**Eesti keeles:**
```
Lugupeetud [[PARENT_FIRST_NAME]] [[PARENT_LAST_NAME]],

tuletame meelde, et õpilase [[STUDENT_FIRST_NAME]] [[STUDENT_LAST_NAME]]
avaldus kursusele [[COURSE_NAME]] ootab allkirjastamist.

Avaldus loodi [[APPLICATION_DATE]].
Palun allkirjastage enne [[CANCELLATION_DATE]], vastasel juhul avaldus tühistatakse.
```

### Kanalite eripärad

#### E-post
- Saaja: maksja e-post (Party profiilist või Payer kirjest)
- Kui e-post puudub — meeldetuletus jäetakse vahele
- Teema on iga keele jaoks kohustuslik

#### SMS
- Saaja: maksja telefon → kui puudub, õpilase telefon
- Kui telefon puudub — meeldetuletus jäetakse vahele
- **Tähemärgi piirang:**
  - Ladina tähestik: 160 tähemärki = 1 SMS
  - Kirillitsa: 70 tähemärki = 1 SMS
  - Limiidi ületamisel jagatakse sõnum mitmeks SMS-iks
- Tähemärgi loendur kuvatakse tekstivälja all reaalajas
- Teemat SMS-is ei kasutata

### Meeldetuletuse keel

Teksti keel määratakse maksja `lang` välja järgi. Kui keel pole määratud — kasutatakse süsteemi vaikekeelt. Seetõttu on oluline täita meeldetuletuse tekst **kõigis saadaolevates keeltes**.

---

## Automaatne tühistamine

Automaatne tühistamine tühistab automaatselt avaldused, mis on saadetud allkirjastamiseks, kuid mida pole määratud aja jooksul allkirjastatud.

### Kuidas see töötab

1. Avaldus staatuses **Saadetud**
2. Möödub määratud arv päevi (saatmiskuupäevast)
3. Süsteem automaatselt:
   - Muudab staatuse **Tühistatud**
   - Saadab maksjale teavituse **standardse tühistamismalli** järgi (kursuse seadetest)

### Seadistamine

1. Lülitage lüliti **„Automaatne tühistamine sisse lülitatud"** sisse.
2. Märkige **päevade arv pärast saatmist** — mitu päeva pärast avalduse saatmist see tühistatakse (vähemalt 1).
3. Vajutage **Salvesta**.

| Väärtus | Käitumine |
|:-------:|-----------|
| **7** | Tühistamine 7 päeva pärast saatmist |
| **14** | Tühistamine 14 päeva pärast (vaikimisi) |
| **30** | Tühistamine 30 päeva pärast |

> **Tähtis:** Tühistamise teavitus saadetakse **standardse tühistamismalli** järgi, mis on seadistatud **Kursused → [Kursus] → vaheleht „Mall"** (mall staatuse „Tühistatud" jaoks). Meeldetuletuste teksti EI kasutata.

### Koostoime meeldetuletustega

Automaatne tühistamine ja meeldetuletused töötavad sõltumatult. Soovitatud seadistus — meeldetuletused peaksid olema **enne** tühistamist:

| Toiming | Päeva pärast saatmist |
|---------|:---------------------:|
| 1. meeldetuletus (e-post) | 3 |
| 2. meeldetuletus (e-post) | 7 |
| 3. meeldetuletus (SMS) | 10 |
| Automaatne tühistamine | 14 |

Nii saab maksja kolm meeldetuletust enne avalduse tühistamist.

---

## Töötlemise ajakava

Automatiseerimist töödeldakse **iga tund**. See tähendab:

- Pärast avalduse loomist võib mööduda kuni 1 tund enne automaatset saatmist (viivitusega 0 päeva)
- Meeldetuletusi ja tühistamist kontrollitakse igatunniselt
- Kõik toimingud sooritatakse **üks kord** — korduv töötlemine ei loo duplikaate

> **Tehniline detail:** Käsk `automation:process-applications` käivitatakse iga tund kaitsega paralleelse käivituse eest (withoutOverlapping). Töötlemise aeg sõltub organisatsioonide ja avalduste arvust.

---

## Logid ja seire

Kõik automatiseerimise toimingud salvestatakse kohta **Seaded → Logid**. Saate jälgida:

- **Edukad saatmised:** kirje tüübiga `AUTOMATION_AUTO_SEND`
- **Saadetud meeldetuletused:** kirje tüübiga `AUTOMATION_REMINDER`
- **Tühistamised:** kirje tüübiga `AUTOMATION_AUTO_CANCEL`
- **Vead:** kirje tüübiga `AUTOMATION_FAILED` — sisaldab vea kirjeldust

Probleemide korral (näiteks meeldetuletusi ei saadeta) kontrollige logisid `AUTOMATION_FAILED` kirjete olemasolu suhtes.

### Tüüpilised vigade põhjused

| Viga | Põhjus | Lahendus |
|------|--------|----------|
| `template missing` | Kursusel pole seadistatud avalduse malli | Minge Kursused → [Kursus] → Mall ja valige mall |
| `PDF generation failed` | Dokumendi genereerimise viga | Kontrollige malli (.docx) õigsust |
| `payer notification failed` | E-posti saatmise viga | Kontrollige maksja e-posti ja postiserveri seadeid |
| `not found or status changed` | Avaldus töödeldi käsitsi enne automatiseerimise töötamist | Normaalne olukord, tegevusi ei nõua |

---

## Seadistamise soovitused

### Põhiseadistus

Enamiku organisatsioonide jaoks on soovitatav:

1. **Automaatsaatmine:** sisse lülitatud, viivitus **0 päeva** (kohene saatmine)
2. **1. meeldetuletus:** e-post **3 päeva** pärast saatmist
3. **2. meeldetuletus:** e-post **7 päeva** pärast saatmist
4. **3. meeldetuletus:** SMS **12 päeva** pärast saatmist
5. **Automaatne tühistamine:** sisse lülitatud, **14 päeva** pärast saatmist

### Viivitusega kontrolliks

Kui administraator soovib avaldusi enne saatmist kontrollida:

1. **Automaatsaatmine:** sisse lülitatud, viivitus **1 päev** (annab aega kontrollimiseks)
2. **Meeldetuletused ja tühistamine:** nagu põhiseadistuses

### Ainult meeldetuletused (ilma automaatsaatmiseta)

Kui saatmine peab jääma käsitsi tehtavaks:

1. **Automaatsaatmine:** välja lülitatud
2. **Meeldetuletused:** seadistatud (töötavad käsitsi saadetud avalduste jaoks)
3. **Automaatne tühistamine:** soovi korral

---

## Korduma kippuvad küsimused

### Mis juhtub, kui ma lülitan sisse automaatsaatmise — kas ka vanad avaldused saadetakse?

Jah. Järgmisel töötlemise käivitamisel saadetakse kõik „Loodud" staatuses avaldused, mille vanus ületab viivituse. Kui te ei soovi vanu avaldusi saata — töödelge need kõigepealt käsitsi.

### Kas meeldetuletust saab saata korraga nii e-posti kui ka SMS-i teel?

Jah. Looge kaks meeldetuletuse reeglit sama viivitusega, kuid erinevate kanalitega.

### Mis juhtub, kui maksja allkirjastab avalduse meeldetuletuste vahel?

Meeldetuletust ei saadeta, kuna avalduse staatus muutub „Saadetud"-st „Allkirjastatud"-uks. Süsteem kontrollib staatust iga käivitamise ajal.

### Kas konkreetse avalduse automaatset tühistamist saab tühistada?

Spetsiaalset mehhanismi tühistamiseks pole. Kuid kui administraator muudab avalduse staatust käsitsi (näiteks sulgeb selle) enne tühistamise töötamist — automaatset tühistamist ei toimu.

### Kui sageli automatiseerimist kontrollitakse?

Iga tund. Täpne aeg sõltub Laraveli ajakava seadistusest.

### Muutuja [[CANCELLATION_DATE]] näitab tühja väärtust — miks?

Veenduge, et **automaatne tühistamine on sisse lülitatud** ja on määratud päevade arv. Tühistamise kuupäev arvutatakse kui: saatmiskuupäev + päevad tühistamiseni. Kui automaatne tühistamine on välja lülitatud, on muutuja tühi.

### Kas seadete muutmine mõjutab juba saadetud meeldetuletusi?

Ei. Juba saadetud meeldetuletusi ja tehtud tühistamisi tagasi ei kutsuta. Muudatused mõjutavad ainult tulevasi toiminguid.

# Intensiivsuse hinnastamine

# Intensiivsuse hinnastamine

Funktsioon võimaldab pakkuda õpilastele erinevaid hindu sõltuvalt tundide arvust nädalas. Selle asemel, et luua iga intensiivsuse jaoks eraldi kursus (1, 2, 3 korda nädalas), seadistate hinnad ühel kursusel.

---

## Kuidas see töötab

Administraator määrab iga intensiivsuse variandi jaoks **kuuhinna**. Süsteem automaatselt:

1. Arvutab hinnad kõigi tasumissageduste jaoks (kvartal, poolaasta, aasta)
2. Loob peidetud protsentuaalsed soodustused
3. Kuvab õpilasele registreerimisel intensiivsuse valiku
4. Rakendab soodustust automaatselt avalduse loomisel

**Näide:**

Kursus tundidega 5 korda nädalas. Baaskuuhind — 100 €.

| Intensiivsus | Hind/kuu | Kvartal | Poolaasta | Aasta |
|--------------|----------|---------|-------------|-------|
| 5× nädalas   | 100,00 € | 270,00 € | 500,00 € | 900,00 € |
| 3× nädalas   | 60,00 €  | 162,00 € | 300,00 € | 540,00 € |
| 1× nädalas   | 20,00 €  | 54,00 €  | 100,00 € | 180,00 € |

Täitke ainult veerg „Hind/kuu". Ülejäänud veerud arvutatakse automaatselt.

---

## Eeldused

Funktsiooni kasutamiseks on vajalik:

1. **Kursuse tunniplaan on määratud** — süsteem tuvastab tunniplaanist maksimaalse päevade arvu nädalas
2. **Kuuhind on määratud** — kursuse jaotises „Hinnad" peab olema märgitud hind tasumissagedusega „Kuu"

Kui üks tingimus pole täidetud, on intensiivsuse sektsioon vastava selgitusega kättesaamatu.

---

## Intensiivsuse seadistamine kursusel

### Samm 1. Avage vaheleht „Hinnad"

1. Minge **Kursused → Erialad → valige kursus**.
2. Avage vaheleht **Hinnad**.
3. Leidke sektsioon **Intensiivsus** (kuvatakse hindade all).

### Samm 2. Lülitage funktsioon sisse

1. Märkige märkeruut **„Luba intensiivsuse valik"**.
2. Ilmub seadistustabel.

### Samm 3. Seadistage parameetrid

**Minimaalne kordade arv nädalas** — valige rippmenüüst (1–6). See on minimaalne intensiivsus, mida õpilane saab valida.

**Maksimaalne kordade arv nädalas** — määratakse automaatselt kursuse tunniplaani järgi (unikaalsete tunnipäevade arv). Käsitsi muuta ei saa.

> **Märkus:** Kui kursusel on tunnid esmaspäeval, kolmapäeval ja reedel — maksimum on 3. Kusjuures 2 tundi ühel päeval loetakse üheks päevaks.

### Samm 4. Määrake kuuhinnad

Tabelis kuvatakse read miinimumist maksimumini intensiivsuseni:

| Intensiivsus | Hind/kuu | Kvartal | Pool aastat | Aasta |
|--------------|----------|---------|-------------|-------|
| 1× nädalas   | [sisesta] | auto | auto | auto |
| 2× nädalas   | [sisesta] | auto | auto | auto |
| 3× nädalas   | põhihind | auto | auto | auto |

- **Viimane rida** (maksimaalne intensiivsus) — on alati võrdne baaskuuhinnaga. Ei redigeerita.
- **Ülejäänud read** — sisestage soovitud kuuhind.
- **Veerud kvartal/poolaasta/aasta** — arvutatakse automaatselt ega ole redigeeritavad.

### Nupp „Arvuta automaatselt"

Täidab hinnad proportsionaalselt:

```
Hind N korda nädalas = Baashind × N / Maksimum
```

Näide baashinnaga 150 € ja maksimumiga 5:
- 1×: 150 × 1/5 = **30,00 €**
- 2×: 150 × 2/5 = **60,00 €**
- 3×: 150 × 3/5 = **90,00 €**
- 4×: 150 × 4/5 = **120,00 €**
- 5×: **150,00 €** (baas)

Enne salvestamist saate automaatselt arvutatud hindu käsitsi muuta.

### Samm 5. Salvestage

Vajutage **Salvesta**. Süsteem loob iga intensiivsuse taseme jaoks automaatselt peidetud soodustused.

---

## Kuidas arvutatakse hinnad erinevate tasumissageduste jaoks

Kuuhind määratakse käsitsi. Hinnad kvartalile, pooleks aastaks ja aastaks arvutatakse proportsiooni kaudu:

```
Koefitsient = Intensiivsuse kuuhind / Baaskuuhind
Kvartali hind = Baaskvartalihind × Koefitsient
```

### Üksikasjalik näide

**Algandmed:**
- Kursuse baashinnad (maksimaalne intensiivsus 3×/näd):
  - Kuu: 65,00 €
  - Kvartal: 180,00 €
  - Pool aastat: 350,00 €
  - Aasta: 650,00 €

**Seadistatud kuuhinnad:**
- 1×/näd: 25,00 €
- 2×/näd: 45,00 €
- 3×/näd: 65,00 € (baas)

**Arvutus 1× nädalas:**
- Koefitsient: 25 / 65 = 0,3846
- Kvartal: 180 × 0,3846 = **69,23 €**
- Pool aastat: 350 × 0,3846 = **134,62 €**
- Aasta: 650 × 0,3846 = **250,00 €**

**Arvutus 2× nädalas:**
- Koefitsient: 45 / 65 = 0,6923
- Kvartal: 180 × 0,6923 = **124,62 €**
- Pool aastat: 350 × 0,6923 = **242,31 €**
- Aasta: 650 × 0,6923 = **450,00 €**

**Lõpptabel:**

| Intensiivsus | Kuu | Kvartal | Poolaasta | Aasta |
|--------------|-----|---------|-------------|-------|
| 1× nädalas   | 25,00 € | 69,23 € | 134,62 € | 250,00 € |
| 2× nädalas   | 45,00 € | 124,62 € | 242,31 € | 450,00 € |
| 3× nädalas   | 65,00 € | 180,00 € | 350,00 € | 650,00 € |

> **Tähtis:** Soodustus „mida kauem maksad — seda soodsam" säilib iga intensiivsuse jaoks. Kui kvartal on odavam kui 3 kuud kuuhinnaga, säilib see suhe ka väiksema intensiivsuse juures.

---

## Intensiivsuse väljalülitamine

1. Avage kursuse vaheleht **Hinnad**.
2. Eemaldage märkeruut **„Luba intensiivsuse valik"**.
3. Vajutage **Salvesta**.

Välja lülitamisel kustutatakse kõik intensiivsuse seaded ja seotud soodustused. Olemasolevaid avaldusi juba rakendatud soodustustega **ei mõjutata** — soodustused jäävad alles kuni käsitsi kustutamiseni.

---

## Õpilase registreerimine

### Avalik registreerimisvorm

Kui kursusel on intensiivsus sisse lülitatud, ilmub registreerimisvormil enne tasumissageduse valikut küsimus:

**„Mitu korda nädalas?"**

Õpilane valib intensiivsuse (näiteks 2× nädalas) ja hinnad sageduste loendis uuenevad automaatselt.

Pärast vormi saatmist:
- Avaldus luuakse väärtusega `sessions_per_week = 2`
- Intensiivsuse soodustus seotakse automaatselt
- Arved genereeritakse soodustusega

### Avalduse loomine administraatori poolt

Avalduse loomisel administreerimisliidese kaudu:

1. Valige avalduse loomise vormis kursus.
2. Kui kursusel on intensiivsus sisse lülitatud — ilmuvad valikuks raadionupud.
3. Valige intensiivsus.
4. Hinnad uuenevad automaatselt.
5. Salvestage avaldus.

Soodustus rakendatakse automaatselt.

---

## Intensiivsuse vaatamine avaldusel

Avalduse lehel hinnaplokis kuvatakse valitud intensiivsuse märgis:

```
📅 2× nädalas
```

Intensiivsuse soodustus on nähtav avalduse jaotises **Soodustused** — see kuvatakse protsentuaalse soodustusena nimega „2× nädalas (Kursuse nimi)".

---

## Õpilase intensiivsuse muutmine

Olemasoleva avalduse intensiivsuse muutmiseks:

1. Avage õpilase avaldus.
2. Jaotises **Soodustused** kustutage praegune intensiivsuse soodustus.
3. Lisage uus intensiivsuse soodustus (läbi „Tunni põhine soodustus" või käsitsi).

Intensiivsuse soodustuse kustutamisel lähtestatakse avalduse `sessions_per_week` väärtus automaatselt.

> **Märkus:** Tulevased arved (staatused „Planeeritud" ja „Valmis") arvutatakse soodustuste muutmisel automaatselt ümber. Esitatud ja tasutud arveid ei mõjutata.

---

## Koostoime teiste soodustustega

Intensiivsuse soodustus on tavaline protsentuaalne soodustus. Seda saab kombineerida teiste soodustustega:

| Soodustus | Tüüp | Näide |
|-----------|------|-------|
| Intensiivsus | Protsentuaalne | -40% (3× asemel 5×) |
| Lasterikas pere | Protsentuaalne | -10% |
| Ühekordne soodustus | Fikseeritud | -50 € |

Kõik protsentuaalsed soodustused liidetakse, seejärel rakendatakse fikseeritud:

```
Kokku = Baashind × (1 - 40% - 10%) - 50 € proportsionaalselt
```

---

## Seos proportsionaalse arvestusega (proration)

Kui õpilane registreerub perioodi keskel, rakendatakse **kõigepealt** intensiivsuse soodustus ja **seejärel** tundide proportsioon.

**Näide:**
- Kvartalihind (5×): 270,00 €
- Intensiivsus 3×: soodustus -40% → 162,00 €
- Õpilane tuli, kui jäänud 14 tundi 77-st: proportsioon 18,18%
- Kokku: 162,00 × 0,1818 = **29,45 €**

Rohkem proportsionaalsest arvestusest — vt jaotist [„Proportsionaalne arvestus"](https://docs.huvis.ee/link/117).

---

## Korduma kippuvad küsimused

### Miks intensiivsuse sektsioon ei kuvata?

Kontrollige:
1. Kursusel on määratud **tunniplaan** (vähemalt üks päev)
2. On määratud **kuuhind** (tasumissagedus „Kuu")

### Kas maksimaalset intensiivsust saab muuta?

Ei, maksimum määratakse automaatselt kursuse tunniplaani järgi. Maksimumi muutmiseks — muutke tunniplaani.

### Mis juhtub, kui ma muudan tunniplaani pärast intensiivsuse seadistamist?

Maksimaalne intensiivsus uueneb vahelehe „Hinnad" järgmisel avamisel. Kui maksimum vähenes, võib olla vaja intensiivsuse seaded uuesti salvestada.

### Õpilane on juba registreeritud. Kuidas muuta intensiivsust?

Kustutage avalduse lehel praegune intensiivsuse soodustus ja lisage uus. Arved arvutatakse automaatselt ümber.

### Kas õpilane näeb intensiivsuse soodustust?

Maksja portaalis kuvatakse soodustus protsentuaalse soodustusena. Soodustuse nimi ei kuvata arvel, kui soodustuse seadetes pole sisse lülitatud „Kuva nimi arvel" (`display_name_on_invoice = false` vaikimisi).

# iFrame lisamine

# Lisamine välisele kodulehele (iframe)

Kursustele registreerimise vormi ja tunniplaani saab iframe'i kaudu lisada, mis tahes välisele kodulehele (tantsustuudio koduleht, kooli koduleht jms). Kasutaja ei märka, et sisu on laetud teisest serverist — see näeb välja nagu kodulehe osa.

## Saadaolevad vidinad

| Vidin | URL | Kirjeldus |
|-------|-----|-----------|
| Registreerimisvorm | `/iframe/{lang}/courses/registration/{token}` | Täielik vorm: kursuse valik, hind, õpilase/maksja andmed |
| Tunniplaan | `/iframe/courses/timetable/{token}` | Tunniplaani tabel kursuse filtriga |

## Ettevalmistus

### 1. Looge avalik link

1. Minge **Seaded** > **Avalikud lingid**.
2. Vajutage **Loo link**.
3. Tüüp: **Registreerimine kursustele** või **Tunniplaan**.
4. Märkige silt (näiteks „Stuudio koduleht — registreerimine").
5. Vajutage **Salvesta**.

Süsteem genereerib URL-i:

```
Registreerimine: https://teie-domeen.ee/iframe/et/courses/registration/abc123...def456
Tunniplaan:      https://teie-domeen.ee/iframe/courses/timetable/abc123...def456
```

> Registreerimisvormi keel määratakse URL-i osa järgi: `/et/` eesti keele jaoks, `/ru/` vene keele jaoks. Tunniplaan kasutab organisatsiooni seadete keelt.

### 2. Valige lisamise viis

On kolm viisi — lihtsast edasijõudnuni.

---

## Viis 1: Üks rida (lihtne)

Sobib CMS-ile (WordPress, Wix, Squarespace) väljaga „sisesta HTML" või „Custom HTML block".

```html
<iframe src="https://teie-domeen.ee/iframe/et/courses/registration/TOKEN"
        style="width:100%;min-height:800px;border:none" scrolling="no"></iframe>
```

**Plussid:** maksimaalselt lihtne, üks rida.

**Miinused:** fikseeritud kõrgus (`800px`). Kui vorm on pikem — ilmub tühi ruum või osa vormist lõigatakse ära. Tuleb käsitsi valida `min-height`.

---

## Viis 2: Üks rida + automaatne suuruse muutmine (soovitatav)

Iframe muudab kõrgust automaatselt vastavalt sisule. Kaks elementi:

```html
<iframe src="https://teie-domeen.ee/iframe/et/courses/registration/TOKEN"
        style="width:100%;min-height:600px;border:none" scrolling="no"></iframe>
<script>
window.addEventListener('message', function(e) {
  if (e.data && e.data.type === 'huvis-resize') {
    document.querySelectorAll('iframe').forEach(function(f) {
      try { if (new URL(f.src).origin === e.origin) f.style.height = e.data.height + 'px'; } catch(x) {}
    });
  }
});
</script>
```

**Plussid:** kõrgus muutub automaatselt sisu muutumisel (kursuse valik, valideerimisvead, telefoni orientatsiooni muutmine).

**Miinused:** tuleb sisestada nii iframe kui ka script.

> WordPressi jaoks: kasutage plokki „Custom HTML" ja sisestage mõlemad elemendid tervikuna.

---

## Viis 3: embed.js (edasijõudnud)

Skript loob iframe'i automaatselt täieliku seadistusega: automaatne suuruse muutmine, vigadele kerimine, läbipaistev taust.

```html
<div id="huvis-registration"></div>
<script src="https://teie-domeen.ee/embed.js"
        data-url="https://teie-domeen.ee/iframe/et/courses/registration/TOKEN"></script>
```

**Plussid:** kõik automaatselt — iframe'i loomine, automaatne suuruse muutmine, kerimine vigadele pärast vormi saatmist.

**Miinused:** ühendatakse väline skript (mõned CMS võivad selle blokeerida).

### embed.js parameetrid

| Atribuut | Kohustuslik | Kirjeldus |
|----------|:-----------:|-----------|
| `data-url` | Jah | Registreerimisvormi täielik URL |
| `data-container` | Ei | Konteineri ID (vaikimisi `huvis-registration`) |

### Käsitsi initsialiseerimine

Kui iframe tuleb luua programmiliselt:

```html
<div id="my-form"></div>
<script src="https://teie-domeen.ee/embed.js"></script>
<script>
  HuvisEmbed.init({
    url: 'https://teie-domeen.ee/iframe/et/courses/registration/TOKEN',
    container: 'my-form'
  });
</script>
```

---

## Adaptiivsus (mobiiliseadmed)

Vorm on täielikult adaptiivne ja kohandub automaatselt ekraani suurusele:

| Seade | Käitumine |
|-------|-----------|
| Lauaarvuti (>768px) | Väljad 2 veerus, täielik tunniplaani tabel |
| Tahvelarvuti (768px) | Väljad 1-2 veerus sõltuvalt laiusest |
| Telefon (<640px) | Kõik väljad 1 veerus, kompaktsed nupud |

Ekraani pööramisel või akna suuruse muutmisel arvutatakse iframe'i kõrgus automaatselt ümber (kui kasutatakse viisi 2 või 3).

---

## Välimuse seadistamine

### Taust

Iframe'il on läbipaistev taust — vorm on teie kodulehe taustal. Kui on vaja valget tausta — see määratakse iframe'i sees asuva vormi konteineriga.

### Vormi pealkiri

Registreerimisvormi kohal olev tekst seadistatakse admin-liideses:

1. Minge **Kursused** > **Seaded** > **Iframe pealkiri**.
2. Sisestage tekst (toetatakse HTML-vormindust).
3. Vajutage **Salvesta**.

### Väljade nähtavus

Millised väljad kuvatakse õpilasele/maksjale:

1. **Kursused** > **Seaded** > **Registreerimise seaded**.
2. Valige, millised väljad kuvada: aadress, telefon, e-post.
3. Seadistage nime jagamine eesnimeks/perekonnanimeks.

---

## Näited populaarsete CMS-ide jaoks

### WordPress

1. Avage leht redigeerimiseks.
2. Lisage plokk **Custom HTML**.
3. Sisestage kood viisist 2 (või 3).
4. Vajutage **Avalda**.

### Wix

1. Avage lehe redaktor.
2. Vajutage **Lisa** > **Manusta** > **HTML iframe**.
3. Elemendi seadetes valige **Kood** ja sisestage HTML viisist 1.
4. Määrake elemendi kõrguseks ~800px.

### Squarespace

1. Avage leht redigeerimiseks.
2. Lisage plokk **Code**.
3. Sisestage kood viisist 2.
4. Vajutage **Salvesta**.

### Tilda

1. Lisage plokk **T123** (HTML-kood).
2. Sisestage kood viisist 2.
3. Vajutage **Salvesta ja sulge**.

---

## Tunniplaani lisamine

Tunniplaan lisatakse analoogselt registreerimisvormiga. Kõik kolm viisi töötavad ühtemoodi.

### Viis 1 (üks rida)

```html
<iframe src="https://teie-domeen.ee/iframe/courses/timetable/TOKEN"
        style="width:100%;min-height:600px;border:none" scrolling="no"></iframe>
```

### Viis 2 (automaatse suuruse muutmisega)

```html
<iframe src="https://teie-domeen.ee/iframe/courses/timetable/TOKEN"
        style="width:100%;min-height:400px;border:none" scrolling="no"></iframe>
<script>
window.addEventListener('message', function(e) {
  if (e.data && e.data.type === 'huvis-resize') {
    document.querySelectorAll('iframe').forEach(function(f) {
      try { if (new URL(f.src).origin === e.origin) f.style.height = e.data.height + 'px'; } catch(x) {}
    });
  }
});
</script>
```

### Viis 3 (embed.js)

```html
<div id="huvis-timetable"></div>
<script src="https://teie-domeen.ee/embed.js"
        data-url="https://teie-domeen.ee/iframe/courses/timetable/TOKEN"
        data-container="huvis-timetable"></script>
```

### Tunniplaan ja registreerimine ühel lehel

Mõlemad vidinad saab paigutada. Automaatse suuruse muutmise skripti piisab ühendada üks kord:

```html
<!-- Tunniplaan -->
<div id="huvis-timetable"></div>

<!-- Registreerimine -->
<div id="huvis-registration"></div>

<!-- Üks skript mõlemale -->
<script src="https://teie-domeen.ee/embed.js"
        data-url="https://teie-domeen.ee/iframe/et/courses/registration/REGISTREERIMISE_TOKEN"
        data-container="huvis-registration"></script>
<script>
  HuvisEmbed.init({
    url: 'https://teie-domeen.ee/iframe/courses/timetable/TUNNIPLAANI_TOKEN',
    container: 'huvis-timetable'
  });
</script>
```

### Tunniplaani eripärad

- Sisaldab kursuse/grupi filtrit (rippmenüü).
- Tabel sticky-päistega — horisontaalne kerimine mobiiliseadmetes.
- Kitsastel ekraanidel keritakse tabel horisontaalselt, aja päis on fikseeritud vasakul.

---

## Tõrkeotsing

| Probleem | Põhjus | Lahendus |
|----------|--------|----------|
| Vorm ei laadi | Avalik link on aegunud või tühistatud | Looge uus link: Seaded > Avalikud lingid |
| Kõrgus ei muutu | Kasutatakse viisi 1 ilma skriptita | Minge üle viisile 2 või 3 |
| Valge riba all | Fikseeritud kõrgus on suurem kui sisu | Vähendage `min-height` või kasutage automaatset suuruse muutmist |
| Vorm lõigatakse ära | Fikseeritud kõrgus on väiksem kui sisu | Suurendage `min-height` või kasutage automaatset suuruse muutmist |
| Viga 410 (Gone) | Link on tühistatud | Kontrollige lingi staatust admin-liideses |
| Vorm ei saada | Küpsiste/CSRF blokeerimine | Iframe on juba CSRF-kontrollist välja jäetud, probleem pole Huvise poolel |
| Kerimisriba iframe'i sees | Sisu on iframe'ist suurem | Kasutage automaatset suuruse muutmist (viis 2 või 3) |

---

## Turvalisus

- Avalik link sisaldab 64-tähemärgilise tokeni — seda ei saa ära arvata.
- Lingi saab igal ajal admin-liideses tühistada.
- CSRF-kaitse on iframe-marsruutide jaoks välja lülitatud (vorm on kättesaadav välistest domeenidest).
- Andmed edastatakse HTTPS-i kaudu.
- Organisatsioon tuvastatakse automaatselt lingi tokeni järgi.

# Süsteemi esmane seadistamine

# Süsteemi esmane seadistamine (samm-sammuline käivitamine)

See jaotis on mõeldud administraatorile, kes avab HUVISe esimest korda ja soovib süsteemi kiiresti töökorda saada. Sammud on antud järjestuses, sest moodulid sõltuvad üksteisest: kursust ei saa luua ilma huvialata ja teavitust ei saa saata ilma mallita.

Menüünimed selles juhendis on **täpselt samad nagu HUVISe küljemenüüs**.

Tee sammud järjest ülevalt alla. Pärast iga sammu kontrolli tulemust süsteemis.

> **Enne alustamist:** logi sisse administraatori rolliga (**Manager**) — tavakasutaja ei näe osa menüüpunktidest.

---

## 1. Organisatsioon

Esmalt seadista organisatsioon: nimi, rekvisiidid, kontaktid.

- **Kus:** **Üldseaded** → **Organisatsioonid** → [teie organisatsioon] → Muuda.
- **Mida täita:**
  - Nimi
  - Registrikood
  - KMKR (VAT / tax_id) — kui käibemaksukohustuslane
  - Kontaktisik, telefon, e-post
  - Aadress (juriidiline aadress)
  - Arvelduskonto (IBAN) — arvete jaoks
- **Miks oluline:** kõik arved ja dokumendid viitavad nendele andmetele. Ilma korrektse nime ja registrikoodita ei läbi PDF-arved raamatupidamise kontrolli.

---

## 2. Aadressid (füüsilised hooned)

Aadress on hoone või filiaal, kus tunnid toimuvad. Aadressiga seotakse kabinetid.

- **Kus:** **Õpingud** → **Aadressid**.
- **Kuidas luua:**
  1. Vajuta **Loo / Lisa**.
  2. Sisesta aadressi nimi (näiteks «Sõpruse pst 4» või filiaali nimi).
  3. Salvesta.
- **Millal vaja:** üks põhikoht — lisa üks aadress. Mitu filiaali — lisa üks iga filiaali kohta.

---

## 3. Klassiruumid

Klassiruum on konkreetne ruum aadressi sees. Tunniplaan seotakse klassiruumiga.

- **Kus:** **Õpingud** → **Klassiruumid**.
- **Kuidas lisada:**
  1. Vajuta **Loo**.
  2. Vali **aadress** (samm 2).
  3. Sisesta klassiruumi nimi (näiteks «Klassiruum 101», «Tantsusaal»).
  4. Mahutavus — valikuline, kasutatakse visuaalselt.
  5. Salvesta.
- **Kontroll:** klassiruum on nimekirjas. Kursuse tunniplaanis saab selle valida.

---

## 4. Õpetajad (töötajad)

- **Kus:** **Personalihaldus** → **Töötajad**.
- **Kuidas lisada:**
  1. Vajuta **Loo / Lisa töötaja**.
  2. Täida **eesnimi, perekonnanimi, isikukood, e-post, telefon**.
  3. Määra **roll** — õpetajale tavaliselt *Worker* või *Teacher*.
  4. Sea staatus **Aktiivne**.
  5. Salvesta.
- **Pärast salvestamist** saadab süsteem töötajale kutse e-postile (Smart-ID / Mobiil-ID). See töötab ainult siis, kui mall `worker_invite` on seadistatud (vt samm 8).
- **Assistent:** luuakse samamoodi, rolliks *Assistant* — tunniplaanis saab ta määrata põhiõpetaja kõrvale.

---

## 5. Huvialad

Huviala on üldine valdkond (tants, klaver, male, programmeerimine).

- **Kus:** **Kursused** → **Huvialad**.
- **Kuidas lisada:**
  1. Vajuta **Loo**.
  2. Sisesta nimi (kõigis toetatud keeltes).
  3. Salvesta.
- **Miks vaja:** üks huviala koondab mitu eriala. Näiteks huviala «Tants» sisaldab erialasid «Ballett», «Hip-hop», «Seltskonnatants».

---

## 6. Erialad

Eriala on kitsam suund huviala sees. Selle alla luuakse kursused (rühmad).

- **Kus:** **Kursused** → **Erialad**.
- **Kuidas lisada:**
  1. Vajuta **Loo eriala**.
  2. Vali **huviala** (samm 5).
  3. Sisesta nimi ja kirjeldus.
  4. (Valikuline) lepingu mall ja vaikimisi arvelduse seaded — võib lisada hiljem.
  5. Salvesta.

---

## 7. Kursus (rühm)

Kursus on konkreetne rühm tunniplaani ja õpetajaga. Selle alusel peetakse kohalolekut, arveldust ja avaldusi.

- **Kus:** **Kursused** → **Erialad** → [teie eriala] → **Loo kursus**.
- **Mida täita loomisel:**
  - **Õppeaasta** — oluline! Vali sama aasta, mis on määratud **Kursused** → **Üldseaded** → *Veebiregistreerimise aasta*, muidu kursus ei ilmu avalikus vormis.
  - **Nimi** (kõigis keeltes).
  - **Kursuse algus- ja lõppkuupäev**.
  - **Vanuse piirangud** (min/max) — valikuline.
  - **Maks. õpilaste arv**, **ootenimekirja limiit**.
  - Lülitid *Registreerimine suletud*, *Teavitada õpetajaid*, *Prooviõppetund* — vastavalt vajadusele.

Pärast kursuse loomist täida vahelehed järjest:

### 7.1 Tunniplaan

- Kursuse vaheleht **Tunniplaan** → **Lisa blokk**.
- Iga bloki jaoks: nädalapäev, algus/lõpp, klassiruum (samm 3), õpetaja (samm 4), assistent (valikuline).
- Salvesta. Ilma tunniplaanita kursus **ei ilmu** registreerimisvormis.

### 7.2 Hind

- Vaheleht **Hinnad** (või **Hind**).
- Lisa vähemalt üks tariif: *kuus / kvartalis / kursuse eest* + summa eurodes.
- Võid lisada mitu tariifi — kasutaja valib registreerimisel.
- Ilma hinnata kursus samuti **ei ilmu** registreerimisvormis.

### 7.3 Avalduse mall (leping)

- Kui vaikimisi avalduse mall pole seadistatud, laadi DOCX üles: **Kursused** → **Üldseaded** → *Avalduse mallid* ja märgi **Vaikimisi**.
- Ilma mallita ei saa süsteem PDF-lepingut genereerida.

### 7.4 Registreerimise avamine

Et kursus ilmuks avalikus vormis:

1. Lüliti *Registreerimine suletud* — **väljas**.
2. Väli *Registreerimise alguskuupäev* — tühi või juba saabunud.
3. Kursus, hind ja tunniplaan — täidetud.
4. Kursuse õppeaasta kattub *Veebiregistreerimise aastaga* (**Kursused** → **Üldseaded**).

Kontroll: ava avalik registreerimislink → kursus peab olema rippmenüüs.

> Detailne kontrollnimekiri «kursus ei ole nähtav» on [03-courses.md](https://docs.huvis.ee/link/115#kursus-on-loodud-kuid-ei-kuvata-registreerimisvormis).

---

## 8. Kirjade mallid

Automaatsed kirjad (töötaja kutse, avalduse teavitus, makse meeldetuletus) saadetakse mallide alusel. Ilma mallita vastav kiri ei lähe välja.

- **Kus:** **Teavitused** → **Mallid**.
- **Miinimum, mis tuleb kohe täita:**
  - **Üldine HTML-mall** — kõikide kirjade kujundus (päis, jalus, logo).
  - **Töötaja kutse** (`worker_invite`) — muidu uued õpetajad ei saa sisse logida.
  - **Maksja teavitus** (`payer_template_notification`) — kiri maksjale avalduse loomisel.
  - **Töötaja teavitus** (`worker_template_notification`) — kiri õpetajale uue avalduse kohta.
  - **Arve tasumine** (`invoice_payment_templates`) — makse kinnitus / meeldetuletus.
- **Kuidas muuta:** ava mall → muuda teksti, kasuta muutujaid `[[...]]` → **Salvesta**. **Eelvaade** näitab, kuidas kiri välja näeb.

---

## 9. SMTP (väljuva e-posti server)

Ilma SMTP-ta ei saadeta ühtegi kirja.

- **Kus:** **Teavitused** → **Seaded** → vaheleht **SMTP** (nähtav ainult platvormi administraatorile).
- **Mida täita:** host, port, kasutajanimi, parool, krüpteerimine (TLS/SSL), saatja e-post (*from_address*), saatja nimi (*from_name*).
- **Kontroll:** nupp **Testi ühendust** — kui vastus on OK, SMTP töötab.

---

## 10. Teavitused avalduse staatuse muutumisel

Kui avalduse staatus muutub (Loodud → Saadetud → Allkirjastatud → Suletud), saab süsteem automaatselt teavitada maksjat ja/või õpetajat.

- **Kus:** **Kursused** → **Üldseaded** → vaheleht **Automatiseerimine**.
- **Mida seadistada:**
  - Milliste staatuste puhul teavitada maksjat.
  - Milliste staatuste puhul teavitada õpetajat/assistenti.
  - Viivitus/meeldetuletused (kui avaldus on kaua staatuses «Loodud» — tuleta meelde N päeva pärast).
- **Sõltub:** samm 8 kirjamallidest (vastavad mallid peavad olemas olema).

---

## 11. Arvelduse seaded (arved)

Enne esimese arve väljastamist tuleb seadistada numbrid, PDF-mall ja saatmise ajastus.

- **Kus:** **Arveldus** → **Arve seaded**.
- **Mida täita:**
  - **Arve numbri mall** (näiteks `[[YYYY]]-[[SEQ]]`).
  - **PDF-faili nime mall**.
  - **Arvelduse režiim** — möödunud kuu eest või järgmise kuu eest.
  - **Genereerimise päev** ja **saatmise kellaaeg**.
  - **Maksevärav** (Montonio jne) — täidab platvormi administraator.
  - **PDF-arve mall** (DOCX) — laadi üles ja märgi põhiks.
- **Kontroll:** **Arveldus** → **Arve seaded** → näidise all ei ole punaseid teateid ja PDF-mall on laaditud.

---

## 12. Avalikud registreerimislingid

Et maksjad saaksid registreeruda kooli kodulehe kaudu, on vaja avalikku linki.

- **Kus:** **Üldseaded** → **Avalikud lingid**.
- **Kuidas luua:**
  1. Vajuta **Loo link**.
  2. Tüüp: **Registreerimine kursustele** või **Tunniplaan**.
  3. Silt (sisemine, kasutajale ei kuvata).
  4. **Salvesta**.
- **Kopeeri** URL ja/või iframe-kood → lisa kooli kodulehele.
- Täpsemalt: [19-iframe-embed.md](https://docs.huvis.ee/link/132).

---

## 13. Rollid ja õigused

Kui koolis on mitu administraatorit, seadista rollid, et igaüks saaks just vajalikud õigused.

- **Kus:** **Üldseaded** → **Rollid**.
- **Valmis rollid:** Manager, Worker, Assistant, Student, Payer.
- **Mida saab muuta:** iga rolli õigused (view/edit/delete iga mooduli kohta).
- **Soovitus:** Manager — administraatori põhiroll. Worker — õpetaja. Assistant — õpetaja assistent. Student ja Payer määratakse automaatselt registreerimisel.

---

## 14. Väljaarvamise põhjused

Seda loendit kasutab maksja, kui ta sulgeb avalduse iseteeninduses.

- **Kus:** **Üldseaded** → **Üldseaded** → vaheleht *Väljaarvamise põhjused*.
- **Mida lisada:** 3–5 tüüpilist põhjust igas organisatsiooni keeles (ajakulu, elukoha muutus, huvi kadumine jne).

---

## 15. Registreerimisankeet (valikuline)

Kui soovite koguda lisateavet (kuidas koolist teada saadi, med. piirangud, foto nõusolek), seadistage ankeet.

- **Kus:** **Õpingud** → **Ankeedid**.
- Looge vaikimisi ankeet → lisage väljad (tekst, märkeruut, rippmenüü) → märkige vajalikud väljad kohustuslikuks.

---

## 16. Õppevabad päevad

Eesti riigipühad imporditakse paigaldusel automaatselt. Oma vaheajad ja vabad päevad lisage käsitsi.

- **Kus:** **Õpingud** → **Õppevabad päevad**.
- Määratud kuupäevadel tunnid automaatselt tühistatakse ja neid ei arveldata.

---

## Kiirkontrollnimekiri

Märgi tehtud sammud:

- [ ] 1. Organisatsioon täidetud (nimi, registrikood, IBAN)
- [ ] 2. Aadressid loodud (**Õpingud** → **Aadressid**)
- [ ] 3. Klassiruumid loodud ja seostatud aadressidega (**Õpingud** → **Klassiruumid**)
- [ ] 4. Töötajad lisatud, rollid määratud (**Personalihaldus** → **Töötajad**)
- [ ] 5. Huvialad loodud (**Kursused** → **Huvialad**)
- [ ] 6. Erialad loodud (**Kursused** → **Erialad**)
- [ ] 7. Vähemalt üks kursus loodud (+ tunniplaan + hind + mall)
- [ ] 8. Miinimum kirjamallid täidetud (**Teavitused** → **Mallid**)
- [ ] 9. SMTP seadistatud, test edukas (**Teavitused** → **Seaded** → **SMTP**)
- [ ] 10. Staatuseteavitused seadistatud (**Kursused** → **Üldseaded** → *Automatiseerimine*)
- [ ] 11. Arvete seaded täidetud (**Arveldus** → **Arve seaded**)
- [ ] 12. Avalik link loodud (**Üldseaded** → **Avalikud lingid**)
- [ ] 13. Rollid määratud töötajatele (**Üldseaded** → **Rollid**)
- [ ] 14. Väljaarvamise põhjuste loend täidetud
- [ ] 15. Ankeet (kui vajalik)
- [ ] 16. Õppevabad päevad lisatud (**Õpingud** → **Õppevabad päevad**)

Kui kõik punktid on tehtud, on süsteem töövalmis: saab vastu võtta registreerimisi, väljastada arveid ja pidada kohaloleku arvestust.