import OFS, Globals from Globals import Persistent import AccessControl from Acquisition import Implicit class YrituseAndmed( Persistent, OFS.SimpleItem.Item, AccessControl.Role.RoleManager, Implicit): "Klass yrituste andmete hoidmiseks" nimi="" korraldaja="" toimumiskoht="" meta_type="YrituseAndmed" def index_html(self): "Andmete väljastus veebis" t="Yrituse andmed"+\ "

Nimi: "+self.nimi+\ "
Korraldaja: "+self.korraldaja+\ "
Toimumiskoht: "+self.toimumiskoht+\ "
Toimumisaeg: "+str(self.kysiAasta())+\ "
Toimumiskuu: "+str(self.kysiKuu())+\ "
Toimumiskuupäev: "+str(self.kysiKuup())+\ "
Yrituse kirjeldus: "+self.kysiKirjeldus()+\ "

Muutmislehele" t=t+"

Avalehele" return t def kysiNimi(self): "Nime küsimine" if(hasattr(self, 'nimi')): return self.nimi return "Nimi puudub" def kysiToimumiskoht(self): "Toimumiskoha küsimine" if(hasattr(self, 'toimumiskoht')): return self.toimumiskoht return "Toimumiskoht puudub" def kysiKorraldaja(self): "korraldaja küsimine" if(hasattr(self, 'korraldaja')): return self.korraldaja return "korraldaja puudub" def kysiKirjeldus(self): "Kirjelduse küsimine" if(hasattr(self, 'kirjeldus')): return self.kirjeldus return "Kirjeldus puudub" def kysiAasta(self): "Aasta küsimine" if(hasattr(self, 'aasta')): return self.aasta return "Aasta puudub" def kysiKuu(self): "Kuu küsimine" if(hasattr(self, 'kuu')): return self.kuu return "Kuu puudub" def kysiKuup(self): "Kuupäeva küsimine" if(hasattr(self, 'kuup')): return self.kuup return "Kuupäev puudub" def muutmisVorm(self): "Vorm yrituse andmete muutmiseks" t="Yrituse andmed"+\ "

"+\ "

Nimi:
\n" t=t+"Korraldaja:
\n" t=t+"Toimumiskoht:
\n" t=t+"Toimumisaasta:
" t=t+"Toimumiskuupäev:
" kuud=["", "Jaanuar", "Veebruar", "Märts", "Aprill", "Mai", "Juuni", "Juuli", "August", "September", "Oktoober", "November", "Detsember"] t=t+"Toimumiskuu:
" t=t+"Kirjeldus: " t=t+"


Avalehele" return t def muutmisLeht(self, REQUEST, nimi, korraldaja, toimumiskoht, aasta, kuup, kuu, kirjeldus): "Leht andmete salvestamiseks" self.nimi=nimi self.korraldaja=korraldaja self.toimumiskoht=toimumiskoht self.aasta=aasta self.kuup=kuup self.kuu=kuu self.kirjeldus=kirjeldus REQUEST.RESPONSE.redirect('index_html') def kysiPealkiri(self): "Pealkirja teatamine" return self.nimi def __init__(self, nimi, korraldaja, toimumiskoht): "Algväärtustamine" self.nimi=nimi self.korraldaja=korraldaja self.toimumiskoht=toimumiskoht Globals.InitializeClass(YrituseAndmed) def lisamisKonstruktor(lisaja): "Uus tervitaja" lisaja.Destination()._setObject("Yhoidla", YrituseHoidla()) return "Lisatud hoidla" class YrituseHoidla( OFS.Folder.Folder, OFS.SimpleItem.Item, Persistent, AccessControl.Role.RoleManager): "Kataloog yrituste otsimiseks, vaatamiseks ja muutmiseks" meta_type="YrituseHoidla" loendur=0 def lisaYritus(self, nimi, korraldaja, toimumiskoht): "Yrituse lisamine kataloogi" r=YrituseAndmed(nimi, korraldaja, toimumiskoht, 0) self.loendur=self.loendur+1 tunnus="yritus"+str(self.loendur) r.id=tunnus self._setObject(tunnus, r) return "Yritus edukalt lisatud" def lisamisVorm(self): "Vorm yrituste lisamiseks" t="Lisamisvorm\n"+\ "

"+\ "

Nimi:
"+\ "

Korraldaja:
"+\ "

Toimumiskoht:
"+\ "


Avalehele" return t def loendaYritused(self): "Teatab hoidlas olevate yrituste koguse" kogus=len(self.objectValues('YrituseAndmed')) return "Yritusi kokku "+str(kogus) def YritusteLoetelu(self): "Yrituste andmed tabelina" t="Yrituste loetelu\n" t=t+"" m=self.objectValues('YrituseAndmed') for yritus in m: t=t+"\n" t=t+"

Yritus

Toimumiskoht

"+yritus.kysiNimi()+"

"+\ yritus.kysiToimumiskoht()+"


Yrituste lisamine
Yrituste otsimine" return t def YritusteOtsing(self, otsitavKorraldaja=""): "Yrituste andmed tabelina" t="Yritused\n" t=t+"

" m=self.objectValues('YrituseAndmed') for yritus in m: if self.kasSobibOtsingusse(yritus, otsitavKorraldaja): t=t+"

Yrituse nimi

Korraldaja

"+yritus.kysiNimi()+"

"+\ yritus.kysiKorraldaja()+"

\n" t=t+"
" t=t+"

Korraldaja nime algus:
" t=t+"
" t=t+"


Avalehele" return t def kasSobibOtsingusse(self, yritus ,otsitavKorraldaja): "Otsingu abifunktsioon, kus teatatakse, kas leitud yritus vastab tingimustele" if not yritus.kysiKorraldaja().startswith(otsitavKorraldaja): return 0 return 1 Globals.InitializeClass(YrituseHoidla)