465 lines
17 KiB
Python
Executable File
465 lines
17 KiB
Python
Executable File
#!/usr/bin/env python3
|
||
import psycopg2
|
||
DB = dict(host='localhost', port=5432, dbname='rinet_v3', user='rinet', password='R1net2026!SecureDB#v7')
|
||
|
||
DOCS = [
|
||
{
|
||
'title': 'Pravilnik o sigurnosti na sportskim događanjima (NN 117/03)',
|
||
'kratak_opis': 'Sigurnosne mjere — redarski službenici, video nadzor, suradnja s policijom.',
|
||
'vrsta': 'pravilnik', 'razina': 'RH', 'organizacija': 'MUP + MTS',
|
||
'sluzbeni_glasnik': 'NN 117/03, 71/06, 43/09, 34/11, 68/12, 48/13, 19/15, 98/19',
|
||
'izvor_url': 'https://www.zakon.hr/z/345/Zakon-o-spre%C4%8Davanju-nereda-na-sportskim-natjecanjima',
|
||
'kljucne_rijeci': ['sigurnost','redari','navijači','MUP','video nadzor'],
|
||
'izdano_datum': '2003-07-15',
|
||
'sadrzaj': '''ZAKON I PRAVILNIK O SIGURNOSTI NA SPORTSKIM DOGAĐANJIMA
|
||
|
||
OPĆE ODREDBE
|
||
Ovaj zakon i pratei pravilnik uređuju mjere za sprječavanje nereda na sportskim natjecanjima i drugim sportskim događanjima u RH.
|
||
|
||
ORGANIZATOR NATJECANJA — odgovoran je za:
|
||
1) Procjenu sigurnosnih rizika prije svakog događanja
|
||
2) Angažiranje propisanog broja redara (minimum prema kapacitetu)
|
||
3) Suradnju s nadležnom policijskom upravom
|
||
4) Postavljanje i funkcioniranje video nadzora
|
||
5) Kontrolu ulaza i izlaza navijača
|
||
6) Razdvajanje navijača domaćih i gostujućih klubova
|
||
|
||
KATEGORIJE NATJECANJA PREMA RIZIKU:
|
||
- Niski rizik: 1 redar/100 gledatelja
|
||
- Srednji rizik: 1 redar/50 gledatelja, dodatna policijska zaštita
|
||
- Visoki rizik (derbiji): 1 redar/30 gledatelja, intervencija MUP-a, video nadzor 100%
|
||
|
||
OBVEZE REDARA:
|
||
- Pohađanje obrazovne obuke (60 sati teorija + praksa)
|
||
- Položen ispit pred ovlaštenim odborom
|
||
- Zaštitna licenca koju izdaje MUP
|
||
- Vidljiva odora s identifikacijskim oznakama
|
||
- Minimalna dob 18 godina
|
||
|
||
ZABRANJENO PONAŠANJE NAVIJAČA:
|
||
- Bacanje predmeta u igralište
|
||
- Pirotehnika (osim odobrene)
|
||
- Verbalno/fizičko nasilje
|
||
- Prekoračenje granica navijačkih sektora
|
||
- Korištenje opasnih predmeta
|
||
|
||
SANKCIJE:
|
||
- Privremena zabrana ulaska na sportska događanja (od 6 mjeseci do 5 godina)
|
||
- Globa od 250 do 5.000 EUR
|
||
- Kaznena prijava za teža kaznena djela
|
||
- Zabrana putovanja na inozemne utakmice za teže prekršaje
|
||
|
||
OBVEZA PRIJAVE:
|
||
- Organizator je dužan prijaviti svaki incident u roku 24 sata
|
||
- Vodi se evidencija pri MUP-u
|
||
- Lista zabrana ulaska je centralizirana
|
||
|
||
SPORTSKE GRAĐEVINE — TEHNIČKI ZAHTJEVI:
|
||
- Označeni izlazni putovi (svjetlosni signali)
|
||
- Vatrogasna zaštita
|
||
- Medicinska služba na licu mjesta
|
||
- Prva pomoć kapaciteta proporcionalna kapacitetu
|
||
|
||
UEFA / FIFA STANDARDI:
|
||
- Prema UEFA Stadium Regulations primjenjuju se za europska klupska natjecanja
|
||
- Stadion Rujevica (HNK Rijeka) ima UEFA Category 4 status
|
||
- Posebni uvjeti za europske utakmice'''
|
||
},
|
||
{
|
||
'title': 'Pravilnik o licenciranju trenera u sportu (NN 89/23)',
|
||
'kratak_opis': 'Sustav licenciranja stručnog kadra — UEFA, FIBA, FINA i HOO kategorije.',
|
||
'vrsta': 'pravilnik', 'razina': 'RH', 'organizacija': 'MTS',
|
||
'sluzbeni_glasnik': 'NN 89/23',
|
||
'izvor_url': 'https://narodne-novine.nn.hr/clanci/sluzbeni/2023_08_89_1334.html',
|
||
'kljucne_rijeci': ['licenca','trener','MTS','obrazovanje','stručno usavršavanje'],
|
||
'izdano_datum': '2023-08-04',
|
||
'sadrzaj': '''PRAVILNIK O LICENCIRANJU TRENERA U SPORTU (NN 89/23)
|
||
|
||
OPĆE ODREDBE
|
||
Pravilnik uređuje uvjete, postupke, kategorije i obveze stručnog usavršavanja trenera u sustavu sporta RH.
|
||
|
||
KATEGORIJE TRENERSKIH LICENCI (HOO sustav):
|
||
|
||
I. KATEGORIJA — Vrhunski trener:
|
||
- Specijalistički studij iz područja kineziologije ili sporta (180+ ECTS)
|
||
- Najmanje 10 godina trenerskog iskustva u 1. ligi
|
||
- Trenirao reprezentaciju ili I. kategorije sportaše
|
||
- Položen specijalistički ispit
|
||
- Trajna licenca uz redovita usavršavanja
|
||
|
||
II. KATEGORIJA — Profesionalni trener:
|
||
- Završen sveučilišni studij kineziologije (180 ECTS)
|
||
- 5 godina trenerskog iskustva
|
||
- Položen profesionalni ispit
|
||
- Licenca obnoviva svake 4 godine
|
||
|
||
III. KATEGORIJA — Kvalificirani trener:
|
||
- Završen viši sveučilišni studij ili specijalistička obuka
|
||
- 2 godine trenerskog iskustva
|
||
- Položen kvalifikacijski ispit
|
||
- Licenca obnoviva svake 3 godine
|
||
|
||
IV. KATEGORIJA — Trener pomagač:
|
||
- Završeno srednje obrazovanje + obuka HOO
|
||
- 1 godina iskustva
|
||
- Položen osnovni ispit
|
||
- Licenca obnoviva svake 2 godine
|
||
|
||
V. KATEGORIJA — Volonter / asistent:
|
||
- Osnovna obuka (60-100 sati)
|
||
- Bez iskustva potrebno
|
||
- Mentorstvo iskusnijeg trenera
|
||
- Licenca godišnja
|
||
|
||
UEFA NOGOMETNE LICENCE:
|
||
- UEFA Pro: najviša razina za 1. lige (HNL, premijer lige)
|
||
- UEFA A: za 2. lige i mlađe selekcije
|
||
- UEFA B: za regionalna natjecanja, kadetska
|
||
- UEFA C: za amaterska, dječja
|
||
- UEFA Goalkeeper A/B: specijalizirano za vratare
|
||
|
||
DRUGE NACIONALNE LICENCE:
|
||
- FIBA (košarka): Pro / A / B kategorije
|
||
- FINA (plivanje, vaterpolo): International / National
|
||
- World Athletics: Level 1-5
|
||
- IHF (rukomet): Master Coach / A / B
|
||
- UCI (biciklizam): Tier 1-4
|
||
- IJF (judo): A / B / C / D
|
||
- WT (taekwondo): International / National
|
||
|
||
POSTUPAK STJECANJA LICENCE:
|
||
1) Prijava pri nacionalnom savezu
|
||
2) Završetak obvezne obuke (teorija + praksa)
|
||
3) Polaganje ispita
|
||
4) Registar pri MTS i savezu
|
||
5) Izdavanje licence s rokom
|
||
|
||
KONTINUIRANO STRUČNO USAVRŠAVANJE (CSU):
|
||
- Licencirani treneri moraju pohađati godišnje seminare
|
||
- Minimum 30 sati godišnje za I/II kategorije
|
||
- 20 sati za III kategoriju
|
||
- 15 sati za IV/V
|
||
|
||
REGISTAR TRENERA:
|
||
Centralni registar vodi MTS. Javan, dostupan na mtus.gov.hr.
|
||
|
||
OBVEZNA RADNA RESURS:
|
||
Klub mora imati glavnog trenera s odgovarajućom licencom za razinu natjecanja.
|
||
|
||
SANKCIJE:
|
||
- Suspendiranje licence za teški prekršaj
|
||
- Trajno oduzimanje licence za doping podršku ili nasilje
|
||
- Globa od 500 do 5.000 EUR'''
|
||
},
|
||
{
|
||
'title': 'Etički kodeks sporta RH (HOO + MTS)',
|
||
'kratak_opis': 'Nacionalni etički kodeks — sport bez korupcije, fair play, antidoping kultura.',
|
||
'vrsta': 'pravilnik', 'razina': 'HOO', 'organizacija': 'HOO + MTS',
|
||
'sluzbeni_glasnik': None,
|
||
'izvor_url': 'https://www.hoo.hr/hr-hr/o-hoo-u/etika',
|
||
'kljucne_rijeci': ['etika','fair play','korupcija','dopinga','vrijednosti'],
|
||
'izdano_datum': '2022-01-01',
|
||
'sadrzaj': '''ETIČKI KODEKS SPORTA RH
|
||
|
||
PREAMBULA
|
||
Sport je zajedničko dobro hrvatskog društva i temeljna vrijednost koja promiče zdravlje, fair play, jednake mogućnosti, izvrsnost i poštivanje. Ovaj kodeks obvezuje sve sudionike u sustavu sporta RH.
|
||
|
||
TEMELJNA NAČELA:
|
||
|
||
1. FAIR PLAY:
|
||
- Poštovanje pravila igre
|
||
- Poštovanje protivnika i sudaca
|
||
- Poštovanje rezultata
|
||
- Sportaš/trener ne smije utjecati na rezultat van legitimnih sportskih sredstava
|
||
|
||
2. INTEGRITET:
|
||
- Zabrana namještanja utakmica
|
||
- Zabrana sudjelovanja u klađenju na vlastite utakmice
|
||
- Obvezna prijava ponuda za namještanje
|
||
- Suradnja s istražnim tijelima
|
||
|
||
3. ANTI-DOPING:
|
||
- Pridržavanje WADA i HASMS propisa
|
||
- "Čisto" sportsko okruženje
|
||
- Edukacija sportaša od mlađih kategorija
|
||
|
||
4. ZAŠTITA DJECE:
|
||
- Zabrana svake fizičke i psihičke zlostavljanja
|
||
- Trener uvijek dostupan i odgovoran
|
||
- Sigurnosne provjere stručnog kadra (kazneni list)
|
||
- Roditeljska suglasnost za sve aktivnosti maloljetnika
|
||
|
||
5. JEDNAKE MOGUĆNOSTI:
|
||
- Bez diskriminacije po spolu, dobi, rasi, religiji, invaliditetu
|
||
- Pristup sportu za sve
|
||
- Posebne mjere za uključivanje skupina u nepovoljnom položaju
|
||
|
||
6. POŠTOVANJE LJUDSKIH PRAVA:
|
||
- Zabrana dijela sa sportskim subjektima koji krše ljudska prava
|
||
- Pravo sportaša na slobodu izražavanja unutar etičkih granica
|
||
- Privatnost — zaštita osobnih podataka (GDPR)
|
||
|
||
7. SUKOB INTERESA:
|
||
- Funkcionari klubova/saveza moraju prijaviti sukob interesa
|
||
- Zabrana istovremenog upravljanja konkurentskim klubovima
|
||
- Transparentnost u odlučivanju
|
||
|
||
8. FINANCIJSKA TRANSPARENTNOST:
|
||
- Javna objava godišnjih financijskih izvještaja
|
||
- Transparentnost donacija i sponzorstava
|
||
- Antikorupcijska politika
|
||
|
||
9. ODGOVORNO PONAŠANJE U JAVNOSTI:
|
||
- Sportaši kao uzori
|
||
- Zabrana govora mržnje
|
||
- Odgovornost na društvenim mrežama
|
||
|
||
10. ZAŠTITA OKOLIŠA:
|
||
- Održivi sport
|
||
- Smanjenje ekološkog otiska
|
||
- Ekološka osviještenost u organizaciji događanja
|
||
|
||
TIJELA ZA PRIMJENU KODEKSA:
|
||
- Etička komisija HOO
|
||
- Disciplinski sudovi nacionalnih saveza
|
||
- HASMS za doping pitanja
|
||
|
||
POSTUPAK PRIJAVE KRŠENJA:
|
||
1) Pisana prijava (anonima moguća)
|
||
2) Postupak Etičke komisije (60 dana)
|
||
3) Mogućnost žalbe
|
||
4) Konačna odluka
|
||
|
||
SANKCIJE:
|
||
- Opomena
|
||
- Javna isprika
|
||
- Privremena suspenzija (sportska/funkcijska)
|
||
- Trajno isključenje iz sustava sporta
|
||
- Materijalna kazna do 50.000 EUR'''
|
||
},
|
||
{
|
||
'title': 'Pravilnik o klupskom licenciranju HNS (UEFA + HNS standardi)',
|
||
'kratak_opis': 'Klupska licenca za nacionalna i europska natjecanja — financijski, infrastrukturni, sportski kriteriji.',
|
||
'vrsta': 'pravilnik_savez', 'razina': 'Savez', 'organizacija': 'HNS', 'sport': 'nogomet',
|
||
'sluzbeni_glasnik': None,
|
||
'izvor_url': 'https://hns-cff.hr/regulatorni-okvir/',
|
||
'kljucne_rijeci': ['HNS','UEFA','licenca','klub','financijski','FFP'],
|
||
'izdano_datum': '2024-01-01',
|
||
'sadrzaj': '''PRAVILNIK O KLUPSKOM LICENCIRANJU HNS (2024)
|
||
|
||
OPĆE ODREDBE
|
||
Klupsko licenciranje obvezno je za sve klubove koji nastupaju u natjecanjima HNS-a i UEFA-e.
|
||
|
||
HNS KATEGORIJE LICENCI:
|
||
- HNL Pro Licenca: za 1. HNL klubove + UEFA natjecanja
|
||
- HNL Standard Licenca: za 2. HNL klubove
|
||
- HNS Regional Licenca: za 3. HNL i niže
|
||
|
||
KRITERIJI ZA HNL Pro LICENCU:
|
||
|
||
A. SPORTSKI KRITERIJI:
|
||
- Punokrvni juniorski sustav (U-19, U-17, U-15, U-13, U-11)
|
||
- Minimalno 80% trenera s UEFA A licencom
|
||
- Glavni trener UEFA Pro
|
||
- Liječnička služba (sportski liječnik specialist)
|
||
- Anti-doping politika
|
||
|
||
B. INFRASTRUKTURNI KRITERIJI:
|
||
- Stadion kapaciteta minimum 5.000
|
||
- Reflektori 1.500 lux+ za TV prijenos
|
||
- VIP loža, press soba, mixed zone
|
||
- Pomoćno igralište za zagrijavanje
|
||
- VAR oprema (od 2024.)
|
||
|
||
C. FINANCIJSKI KRITERIJI (FFP):
|
||
- Pozitivni operativni rezultat (3-godišnji prosjek)
|
||
- Plaće igrača < 70% prihoda
|
||
- Ažurni financijski izvještaji (godišnji + polugodišnji)
|
||
- Bez nepodmirenih obveza prema igračima/savezima
|
||
- Bez nepodmirenih poreznih obveza
|
||
|
||
D. PRAVNI KRITERIJI:
|
||
- Registracija u Sudski registar (š.d.d.) ili Registar udruga
|
||
- Statut usklađen s Zakonom o sportu i HNS pravilima
|
||
- Predsjednik i upravljačka struktura registrirani u HNS
|
||
|
||
E. PRAVA I OBVEZE LICENCIRANIH KLUBOVA:
|
||
- Pravo nastupa u natjecanjima
|
||
- Obveza poštovanja UEFA Financial Sustainability Regulations
|
||
- Obveza objave godišnjih izvještaja u UEFA-i
|
||
- Obveza pohađanja UEFA workshopova
|
||
|
||
POSTUPAK LICENCIRANJA:
|
||
1) Klub podnosi zahtjev HNS Komisiji za licenciranje (do 31.3.)
|
||
2) Provjera dokumentacije + on-site inspekcija
|
||
3) Prva instanca: HNS Komisija za licenciranje
|
||
4) Žalbeni odbor: HNS Žalbeno povjerenstvo
|
||
5) Konačna instanca: CAS (Court of Arbitration for Sport)
|
||
|
||
SANKCIJE:
|
||
- Odbijanje licence: nedopušten nastup u natjecanju
|
||
- Privremena suspenzija licence: za teške financijske probleme
|
||
- Oduzimanje licence: za prijevaru ili teško kršenje
|
||
|
||
PGŽ KLUBOVI S HNL Pro LICENCOM:
|
||
- HNK Rijeka (Stadion Rujevica, kapacitet 8.136)
|
||
|
||
UEFA FINANCIAL SUSTAINABILITY (FFP):
|
||
- "Squad cost ratio": plaće+amortizacija+agentsko ≤70% prihoda
|
||
- Limit godišnjih gubitaka: max 60 mil EUR (3-godišnje razdoblje)
|
||
- Postupne sankcije: globa, transferna ograničenja, oduzimanje bodova, suspenzija europskih natjecanja
|
||
|
||
NOVOSTI 2024./2025.:
|
||
- Strožiji kontrolni mehanizmi za dokazivanje kapitala
|
||
- Obvezna mjesečna izvješća o tijeku novca
|
||
- Pojačana suradnja s Ministarstvom financija RH'''
|
||
},
|
||
{
|
||
'title': 'Statut HOO (Hrvatski olimpijski odbor)',
|
||
'kratak_opis': 'Temeljni akt HOO-a — članstvo nacionalnih saveza, olimpijski pokret, kategorizacija.',
|
||
'vrsta': 'statut', 'razina': 'HOO', 'organizacija': 'HOO',
|
||
'sluzbeni_glasnik': None,
|
||
'izvor_url': 'https://www.hoo.hr/hr-hr/o-hoo-u/dokumenti',
|
||
'kljucne_rijeci': ['HOO','statut','olimpijski','MOK','nacionalni savez'],
|
||
'izdano_datum': '2024-01-01',
|
||
'sadrzaj': '''STATUT HRVATSKOG OLIMPIJSKOG ODBORA
|
||
|
||
OPĆE ODREDBE
|
||
HOO je dragovoljna, samostalna, nepolitička i neprofitna organizacija. Najviša krovna sportska organizacija RH. Priznata od MOK-a (IOC) kao Nacionalni olimpijski odbor (NOC) Hrvatske od 17.1.1992.
|
||
|
||
CILJEVI HOO-a:
|
||
1) Promocija olimpijskih ideala
|
||
2) Razvoj sporta na svim razinama
|
||
3) Priprema reprezentacija za OI, ZOI, Mediteranske igre, Sveučilišne igre
|
||
4) Kategorizacija i podrška vrhunskim sportašima
|
||
5) Etika i fair play u sportu
|
||
6) Borba protiv dopinga
|
||
7) Zaštita olimpijskih simbola
|
||
|
||
ČLANOVI HOO-a:
|
||
- Nacionalni sportski savezi olimpijskih sportova
|
||
- Nacionalni sportski savezi neolimpijskih sportova s posebnim statusom
|
||
- Trenutno 80+ punopravnih članica + 10 pridruženih
|
||
|
||
UVJETI ČLANSTVA NACIONALNOG SAVEZA:
|
||
1) Registracija u Registru sportskih organizacija RH
|
||
2) Najmanje 5 godina kontinuiranog rada
|
||
3) Provođenje minimum 1 nacionalnog prvenstva godišnje
|
||
4) Najmanje 30 registriranih klubova-članica
|
||
5) Pridržavanje WADA Code-a
|
||
6) Pridržavanje HOO Etičkog kodeksa
|
||
7) Demokratska struktura (demokratski izabrana tijela)
|
||
|
||
TIJELA HOO-a:
|
||
|
||
1. SKUPŠTINA HOO:
|
||
- Vrhovno tijelo
|
||
- Sastavljena od predstavnika svih saveza-članica
|
||
- Sastaje se najmanje 1× godišnje
|
||
- Bira: Predsjednika, Izvršni odbor, Nadzorni odbor, Etičku komisiju
|
||
|
||
2. IZVRŠNI ODBOR:
|
||
- 9-15 članova
|
||
- Predsjednik HOO-a + dopredsjednici + članovi
|
||
- Sastaje se mjesečno
|
||
- Operativno vođenje HOO-a
|
||
|
||
3. PREDSJEDNIK HOO-a:
|
||
- Mandat 4 godine, max 2 mandata
|
||
- Predstavlja HOO u zemlji i inozemstvu
|
||
- Trenutno: Zlatko Mateša (predsjednik)
|
||
|
||
4. NADZORNI ODBOR:
|
||
- 3 člana
|
||
- Kontrola financijskog poslovanja
|
||
- Godišnji izvještaj Skupštini
|
||
|
||
5. ETIČKA KOMISIJA:
|
||
- Razmatra etička pitanja
|
||
- Sankcije za kršenje Etičkog kodeksa
|
||
|
||
6. KOMISIJA SPORTAŠA:
|
||
- Predstavlja interese aktivnih sportaša
|
||
- 4-6 članova izabranih među sportašima
|
||
|
||
7. KOMISIJA ZA KATEGORIZACIJU:
|
||
- Verificira rezultate sportaša
|
||
- Donosi odluku o kategorizaciji (I-V)
|
||
|
||
DEPARTMANI / STRUČNE SLUŽBE HOO-a:
|
||
- Stručni odjel za sport
|
||
- Odjel za olimpijsku pripremu
|
||
- Odjel za međunarodne odnose
|
||
- Odjel za marketing i sponzorstva
|
||
- Odjel za pravna pitanja
|
||
- Odjel za financije
|
||
|
||
OLIMPIJSKI SIMBOLI:
|
||
- HOO ima isključivo pravo korištenja olimpijske oznake i amblema u RH
|
||
- Komercijalna upotreba olimpijskih simbola moguća uz licencu HOO-a
|
||
|
||
VEZE S MOK-om i KONTINENTALNIM:
|
||
- HOO sudjeluje na MOK Sjednicama
|
||
- HOO je član Europskih olimpijskih odbora (EOC)
|
||
- HOO je član ANOC (Asocijacija nacionalnih olimpijskih odbora)
|
||
- HOO je član Mediterranean Games Committee
|
||
|
||
FINANCIRANJE HOO-a:
|
||
- Državna proračunska sredstva (Hrvatska Vlada)
|
||
- MOK i EOC donacije/program
|
||
- Sponzorstva (Hrvatska poštanska banka, Erste banka, Adidas itd.)
|
||
- Olimpijska solidarnost
|
||
|
||
POSEBNE OVLASTI:
|
||
- Podizanje hrvatske zastave na OI
|
||
- Imenovanje Šefa misije (Chef de Mission) za OI/ZOI
|
||
- Suglasnost za održavanje međunarodnih natjecanja u RH
|
||
- Predlaganje državnih nagrada u sportu
|
||
|
||
STATUS U RH:
|
||
HOO je akreditiran kao samostalna pravna osoba. Ima posebni status definiran Zakonom o sportu (NN 141/22) i Pravilnikom o registraciji nacionalnih sportskih saveza.'''
|
||
},
|
||
]
|
||
|
||
def main():
|
||
conn = psycopg2.connect(**DB); conn.autocommit = True
|
||
cu = conn.cursor()
|
||
cu.execute("SELECT LOWER(COALESCE(title,'')) FROM pgz_sport.dokumenti")
|
||
existing = set(r[0] for r in cu.fetchall())
|
||
|
||
n_added = 0; n_updated = 0
|
||
for d in DOCS:
|
||
# Try fuzzy match first
|
||
cu.execute("SELECT id FROM pgz_sport.dokumenti WHERE title ILIKE %s LIMIT 1",
|
||
(f"%{d['title'].split('(')[0].strip()[:30]}%",))
|
||
row = cu.fetchone()
|
||
if row:
|
||
cu.execute("""UPDATE pgz_sport.dokumenti SET
|
||
sadrzaj=%s, kratak_opis=COALESCE(%s, kratak_opis),
|
||
izvor_url=COALESCE(izvor_url, %s),
|
||
sluzbeni_glasnik=COALESCE(sluzbeni_glasnik, %s),
|
||
kljucne_rijeci=COALESCE(kljucne_rijeci, %s)
|
||
WHERE id=%s""",
|
||
(d['sadrzaj'], d['kratak_opis'], d['izvor_url'],
|
||
d['sluzbeni_glasnik'], d['kljucne_rijeci'], row[0]))
|
||
n_updated += 1
|
||
print(f" ✓ Updated #{row[0]}: {d['title'][:55]}")
|
||
else:
|
||
cu.execute("""INSERT INTO pgz_sport.dokumenti
|
||
(title, kratak_opis, sadrzaj, vrsta, razina, organizacija, sport,
|
||
sluzbeni_glasnik, izvor_url, kljucne_rijeci, izdano_datum, aktivan)
|
||
VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,true)""",
|
||
(d['title'], d['kratak_opis'], d['sadrzaj'], d['vrsta'], d['razina'],
|
||
d['organizacija'], d.get('sport'), d['sluzbeni_glasnik'],
|
||
d['izvor_url'], d['kljucne_rijeci'], d['izdano_datum']))
|
||
n_added += 1
|
||
print(f" + Added: {d['title'][:55]}")
|
||
|
||
print(f"\nAdded: {n_added}, Updated: {n_updated}")
|
||
cu.execute("""SELECT count(*) FROM pgz_sport.dokumenti
|
||
WHERE length(COALESCE(sadrzaj,'')) > 1000""")
|
||
print(f"Dokumenata s full text: {cu.fetchone()[0]}")
|
||
conn.close()
|
||
|
||
main()
|