def wijzigdetails(self): if self.edit and self.fout == "": #------ song wijzigen in songs.xml sh = Song(self.songid) sh.songtitel = self.songtitel sh.auteur = self.auteurval sh.maker = self.makerval sh.datering = self.datering if self.commentaar != "": sh.commentaar = self.commentaar sh.write() fnaam = songtitel = auteurval = auteur = makerval = maker = "" datering = commentaar = "" auteurkey, auteurnaam, makerkey, makernaam = [], {}, [], {} # tabellen inlezen t.b.v. selectievakjes try: lh = ItemList('tekst') except DataError as meld: self.fout, = meld else: auteurkey = list(lh.lijst.keys()) auteurkey.sort() auteurnaam = lh.lijst try: lh = ItemList('muziek') except DataError as meld: self.fout, = meld else: makerkey = list(lh.lijst.keys()) makerkey.sort() makernaam = lh.lijst # lees de gegevens van de opgegeven song sh = Song(self.songid) sh.read() if sh.found: songtitel = sh.songtitel auteurval = str(sh.auteur) auteur = str(sh.tekst_van) makerval = str(sh.maker) maker = str(sh.muziek_van) datering = sh.datering fnaam = sh.url commentaar = sh.commentaar with open(os.path.join(htmlpad, "wijzigdetail.html")) as f_in: for x in f_in: x = x.rstrip() if 'Tekst van:' in x: typesel = "tekst" elif 'Muziek van:' in x: typesel = "muziek" if "%s" in x: if "stylesheet" in x: self.regels.append(x % httproot) elif "Terug naar hoofdmenu" in x: self.regels.append(x % http_cgipad) elif "Terug naar overzicht" in x: self.regels.append(x % (http_cgipad, str(self.songid))) elif "Terug naar lijst" in x or "form action" in x: self.regels.append(x % http_cgipad) elif 'Details van song:' in x: self.regels.append(x % str(self.songid)) elif "option %s" in x: if typesel == "tekst": for i in auteurkey: h = "" if i == auteurval: h = 'selected="selected" ' self.regels.append(x % (h, i, auteurnaam[i][0])) elif typesel == "muziek": for i in makerkey: h = "" if i == makerval: h = 'selected="selected" ' self.regels.append(x % (h, i, makernaam[i][0])) elif "Titel:" in x: self.regels.append(x % songtitel) elif "Datering:" in x: self.regels.append(x % datering) elif "Opmerkingen :" in x: self.regels.append(x % commentaar) elif "<h4>" in x: if self.fout == "geensong": self.regels.append(x % "Geen song-id opgegeven") elif self.fout == "geentitel": self.regels.append( x % "Wijzigen niet mogelijk: geen songtitel opgegeven" ) elif self.fout == "geendatum": self.regels.append( x % "Wijzigen niet mogelijk: geen datering opgegeven" ) elif self.fout != "": self.regels.append(x % self.fout) else: self.regels.append(x)