Šablona:ÚSKP test
ÚSKP test testuje správnost formátu rejstříkového čísla Ústředního seznamu kulturních památek. Je-li formát rejstříkového čísla správný, šablona číslo zobrazí tak, jak bylo vloženo do šablony jako parametr. Pokud šablona zjistí nesprávný nebo podezřelý formát rejstříkového čísla, připojí za číslo varovnou ikonku, na níž je prostřednictvím bublinové nápovědy dostupné vysvětlení, a zároveň zařadí prostřednictvím šablon {{Chyba ÚSKP}}
nebo {{ÚSKP movitá}}
příslušnou stránku do odpovídající údržbové kategorie Údržba:Chybný formát rejstříkového čísla ÚSKP nebo monitorovací kategorie Monitoring:Rejstříkové číslo ÚSKP - movitá památka.
Šablonu používají šablony {{Památky v Česku}}
, {{Památka}}
, případně další.
Syntax použití
{{ÚSKP test|40816/1-1701}}
{{ÚSKP test|123456}}
{{ÚSKP test|1=123456}}
Algoritmus testování
V současnosti šablona testuje řetězec tímto způsobem:
- pokud není řetězec zadán, vrací chybovou hlášku
{{Chyba|Chybí ID}}
- pokud je délka řetězce 3 znaky, přidá za řetězec text (NKP)
- pokud je délka řetězce 4 znaky, přidá za řetězec text (PÚ)
- pokud délka řetězce je kratší než 6 znaků (nikoliv 3 nebo 4 znaky) nebo se rovná 7 či 8 znaků nebo je delší než 15 znaků, přidává chybovou značku
{{Chyba ÚSKP | Podezřelá délka čísla!}}
- pokud je délka řetězce 6 znaků a řetězec není číslem, přidává chybovou značku
{{Chyba ÚSKP | Podezřelý formát čísla (nečíselný výraz o 6 znacích)!}}
- pokud je délka řetězce 6 znaků a řetězec je číslem mimo rozsah 100000–110000, přidává chybovou značku
{{Chyba ÚSKP | Číslo mimo rozsah 100000–110000!}}
- pokud je délka řetězce 6 znaků a řetězec je číslem v rozsahu 100000–110000, zobrazí řetězec bez varovné značky
- je-li řetězec delší než 8 znaků a na 6. pozici není první lomítko, přidává chybovou značku
{{Chyba ÚSKP | Podezřelý formát čísla (na 6. pozici není první lomítko)!}}
- je-li řetězec delší než 8 znaků a na 6. pozici je lomítko a výraz před lomítkem není číslem, přidává chybovou značku
{{Chyba ÚSKP | Podezřelý formát čísla (nečíselný začátek)!}}
- je-li řetězec delší než 8 znaků a na 6. pozici je lomítko a výraz před lomítkem je číslem mimo rozsah 10000–99999, přidává chybovou značku
{{Chyba ÚSKP | Číslo před lomítkem mimo rozsah 10000–99999!}}
- je-li řetězec delší než 8 znaků a kratší než 13 znaků a na 6. pozici je lomítko a výraz před lomítkem je číslem mimo rozsah 10000–99999 a na 8. pozici je spojovník, zobrazí řetězec bez varovné značky
- je-li řetězec delší než 8 znaků a na 6. pozici je lomítko a výraz před lomítkem je číslem mimo rozsah 10000–99999 a na 9. pozici je spojovník, přidává varovnou značku
{{ÚSKP movitá | Formát rejstříkového čísla odpovídá movité památce.}}
- v ostatních případech (je-li řetězec delší než 8 znaků a na 6. pozici je lomítko a výraz před lomítkem je číslem mimo rozsah 10000–99999, ale na 8. ani 9. pozici není spojovník nebo je spojovník na 8. pozici a řetězec je dlouhý 13 či více znaků) přidává chybovou značku
{{Chyba ÚSKP | Podezřelý formát čísla (na 8. ani 9. pozici není spojovník nebo je číslo příliš dlouhé)!}}
- u složeného výrazu za lomítkem není kromě pozice spojovníku testováno, zda jsou znaky číselné, ani číselný rozsah. Je pouze testován počet znaků části výrazu před spojovníkem.
Příklady použití
- Chybí ID
- 1
- 12
- 123 (NKP)
- abcd (PÚ)
- 1234 (PÚ)
- 12345
- 12345/
- 123456
- 106005/
- 1234567
- 1060056
- 12345678
- 123456789
- 099999
- 100000
- 106005
- 110000
- 110001
- a10001
- 10001a
- abcdef
- abcdefghi
- 1234/56789
- 12/45/56789
- 123456/7890
- 12345678901
- 00816/1-1701
- 40816/1-1701
- 99999/1-1701
- 89320/37-130201
- 89320/37-abcdefghi
- 89320/37130201
- 89320/3713abcd