@@ -209,13 +209,164 @@ def komitenti(uporabnik):
209209 pass
210210
211211
212+ @bottle .get ('/komitenti/<emso>/racuni/' )
213+ @bottle .view ('komitenti.racuni.html' )
214+ @prijavljen
215+ def komitenti_racuni (uporabnik , emso ):
216+ preveri_lastnika (uporabnik , emso )
217+ try :
218+ return dict (oseba = Oseba .z_id (emso ))
219+ except ValueError :
220+ bottle .abort (404 , f'Uporabnik z EMŠOm { emso } ne obstaja!' )
221+
222+
223+ @bottle .get ('/komitenti/<emso>/transakcije/' )
224+ @bottle .view ('komitenti.transakcije.html' )
225+ @prijavljen
226+ def komitenti_transakcije (uporabnik , emso ):
227+ preveri_lastnika (uporabnik , emso )
228+ try :
229+ return dict (oseba = Oseba .z_id (emso ))
230+ except ValueError :
231+ bottle .abort (404 , f'Uporabnik z EMŠOm { emso } ne obstaja!' )
232+
233+
234+ @bottle .get ('/komitenti/<emso>/uredi/' )
235+ @bottle .view ('komitenti.uredi.html' )
236+ @prijavljen
237+ def komitenti_uredi (uporabnik , emso ):
238+ preveri_lastnika (uporabnik , emso )
239+ try :
240+ return dict (oseba = Oseba .z_id (emso ))
241+ except ValueError :
242+ bottle .abort (404 , f'Uporabnik z EMŠOm { emso } ne obstaja!' )
243+
244+
245+ @bottle .post ('/komitenti/<emso>/uredi/' )
246+ @prijavljen
247+ def komitenti_uredi_post (uporabnik , emso ):
248+ preveri_lastnika (uporabnik , emso )
249+ ime = bottle .request .forms .getunicode ('ime' )
250+ priimek = bottle .request .forms .getunicode ('priimek' )
251+ naslov = bottle .request .forms .getunicode ('naslov' )
252+ try :
253+ kraj = int (bottle .request .forms .getunicode ('kraj' ))
254+ except ValueError :
255+ kraj = None
256+ uporabnisko_ime = bottle .request .forms .getunicode ('uporabnisko_ime' )
257+ geslo = bottle .request .forms .getunicode ('geslo' )
258+ geslo2 = bottle .request .forms .getunicode ('geslo2' )
259+ try :
260+ oseba = Oseba .z_id (emso )
261+ except ValueError :
262+ bottle .abort (404 , f'Uporabnik z EMŠOm { emso } ne obstaja!' )
263+ oseba .posodobi_polja (ime = ime , priimek = priimek , naslov = naslov , kraj = kraj , uporabnisko_ime = uporabnisko_ime )
264+ if uporabnik .admin :
265+ oseba .admin = bool (bottle .request .forms .getunicode ('admin' ))
266+ if geslo :
267+ if geslo == geslo2 :
268+ oseba .geslo = geslo
269+ else :
270+ nastavi_sporocilo ("Gesli se ne ujemata!" )
271+ nastavi_obrazec (f'komitenti_uredi-{ emso } ' , oseba )
272+ bottle .redirect (bottle .url ('komitenti_uredi' , emso ))
273+ try :
274+ oseba .posodobi ()
275+ nastavi_sporocilo (f"Uspešno posodobljen komitenta z EMŠOm { emso } !" )
276+ if uporabnik .admin :
277+ bottle .redirect (bottle .url ('komitenti' ))
278+ else :
279+ bottle .redirect (bottle .url ('index' ))
280+ except IntegrityError :
281+ nastavi_sporocilo (f"Urejanje komitenta z EMŠOm { emso } ni uspelo!" )
282+ nastavi_obrazec (f'komitenti_uredi-{ emso } ' , oseba )
283+ bottle .redirect (bottle .url ('komitenti_uredi' , emso ))
284+
285+
286+ @bottle .get ('/komitenti/dodaj/' )
287+ @bottle .view ('komitenti.dodaj.html' )
288+ @admin
289+ def komitenti_dodaj (uporabnik ):
290+ pass
291+
292+
293+ @bottle .post ('/komitenti/dodaj/' )
294+ @admin
295+ def komitenti_dodaj_post (uporabnik ):
296+ emso = bottle .request .forms .getunicode ('emso' )
297+ ime = bottle .request .forms .getunicode ('ime' )
298+ priimek = bottle .request .forms .getunicode ('priimek' )
299+ naslov = bottle .request .forms .getunicode ('naslov' )
300+ try :
301+ kraj = int (bottle .request .forms .getunicode ('kraj' ))
302+ except ValueError :
303+ kraj = None
304+ uporabnisko_ime = bottle .request .forms .getunicode ('uporabnisko_ime' )
305+ geslo = bottle .request .forms .getunicode ('geslo' )
306+ geslo2 = bottle .request .forms .getunicode ('geslo2' )
307+ admin = bool (bottle .request .forms .getunicode ('admin' ))
308+ oseba = Oseba (emso = emso , ime = ime , priimek = priimek , naslov = naslov , kraj = kraj , uporabnisko_ime = uporabnisko_ime , admin = admin )
309+ if geslo :
310+ if geslo == geslo2 :
311+ oseba .geslo = geslo
312+ else :
313+ nastavi_sporocilo ("Gesli se ne ujemata!" )
314+ nastavi_obrazec (f'komitenti_dodaj' , oseba )
315+ bottle .redirect (bottle .url ('komitenti_dodaj' ))
316+ try :
317+ oseba .vstavi ()
318+ nastavi_sporocilo (f"Uspešno dodan komitent z EMŠOm { emso } !" )
319+ bottle .redirect (bottle .url ('komitenti' ))
320+ except IntegrityError :
321+ nastavi_sporocilo (f"Dodajanje komitenta z EMŠOm { emso } ni uspelo!" )
322+ nastavi_obrazec (f'komitenti_dodaj' , oseba )
323+ bottle .redirect (bottle .url ('komitenti_dodaj' ))
324+
325+
326+ @bottle .post ('/komitenti/<emso>/izbrisi/' )
327+ @admin
328+ def komitenti_izbrisi_post (uporabnik , emso ):
329+ try :
330+ Oseba .z_id (emso ).izbrisi ()
331+ nastavi_sporocilo (f'Komitent z EMŠOm { emso } uspešno izbrisan.' )
332+ except ValueError :
333+ bottle .abort (404 , f'Uporabnik z EMŠOm { emso } ne obstaja!' )
334+ except IntegrityError :
335+ nastavi_sporocilo (f'Brisanje komitenta z EMŠOm { emso } ni bilo uspešno!' )
336+ bottle .redirect (bottle .url ('komitenti' ))
337+
338+
339+ @bottle .post ('/komitenti/<emso>/dodaj_racun/' )
340+ @admin
341+ def komitenti_dodaj_racun_post (uporabnik , emso ):
342+ try :
343+ racun = Racun (lastnik = emso )
344+ racun .vstavi ()
345+ nastavi_sporocilo (f'Račun s številko { racun .stevilka } uspešno dodan.' )
346+ except IntegrityError :
347+ nastavi_sporocilo (f'Dodajanje računa za komitenta z EMŠOm { emso } ni bilo uspešno!' )
348+ bottle .redirect (bottle .url ('komitenti_racuni' , emso = emso ))
349+
350+
212351@bottle .get ('/racuni/' )
213352@bottle .view ('racuni.html' )
214353@admin
215354def racuni (uporabnik ):
216355 pass
217356
218357
358+ @bottle .get ('/racuni/<stevilka:int>/transakcije/' )
359+ @bottle .view ('racuni.transakcije.html' )
360+ @prijavljen
361+ def racuni_transakcije (uporabnik , stevilka ):
362+ try :
363+ racun = Racun .z_id (stevilka )
364+ except ValueError :
365+ bottle .abort (404 , f'Račun s številko { stevilka } ne obstaja!' )
366+ preveri_lastnika (uporabnik , racun .lastnik .emso )
367+ return dict (racun = racun )
368+
369+
219370@bottle .get ('/transakcije/' )
220371@bottle .view ('transakcije.html' )
221372@admin
0 commit comments