diff --git a/ub1/app.py b/ub1/app.py index 9fff168..cb90a84 100644 --- a/ub1/app.py +++ b/ub1/app.py @@ -6,4 +6,6 @@ app = Flask(__name__) def home(): return render_template('index.html') -app.run(host='0.0.0.0', port=5007) +app.run(host='0.0.0.0', port=5007, debug=True) + + diff --git a/ub2-master/ub2-master/app.py b/ub2-master/ub2-master/app.py new file mode 100644 index 0000000..867c93d --- /dev/null +++ b/ub2-master/ub2-master/app.py @@ -0,0 +1,27 @@ +from flask import Flask, render_template +import mitarbeiter + +app = Flask(__name__) + +@app.route('/') +def startseite(): + return render_template('index.html', + mycontent=mitarbeiter.GibAlleMitarbeiter(mitarbeiter.mitarbeiterliste)) + +@app.route('/mitarbeiter1') +def show1(): + return render_template('index.html', mycontent=mitarbeiter.GibMitarbeiter(mitarbeiter.mitarbeiter1)) + +@app.route('/mitarbeiter2') +def show2(): + return render_template('index.html', mycontent=mitarbeiter.GibMitarbeiter(mitarbeiter.mitarbeiter2)) + +@app.route('/mitarbeiter3') +def show3(): + return render_template('index.html', mycontent=mitarbeiter.GibMitarbeiter(mitarbeiter.mitarbeiter3)) + +@app.route('/mitarbeiter') +def show_all(): + return render_template('index.html', mycontent=mitarbeiter.GibAlleMitarbeiter(mitarbeiter.mitarbeiterliste)) + +app.run(host='0.0.0.0', port=5007) diff --git a/ub2-master/ub2-master/mitarbeiter.py b/ub2-master/ub2-master/mitarbeiter.py new file mode 100644 index 0000000..88a6ec8 --- /dev/null +++ b/ub2-master/ub2-master/mitarbeiter.py @@ -0,0 +1,32 @@ +#! /usr/bin/python3 + +mitarbeiter1 = ['Otto', 'Müller', 'Adlergestell 700', '12527 Berlin', '03067549000'] +mitarbeiter2 = ['Hans', 'Lindner', 'Friedenstraße 4', '10464 Wildau', '03375 23925'] +mitarbeiter3 = ['Eva', 'Habeck', 'Seestraße 5', '10430 Wildau', '03375 45321'] +mitarbeiterliste= [mitarbeiter1, mitarbeiter2, mitarbeiter3] + +for m in mitarbeiterliste: + print('Vorname: ' + m[0]) + print('Nachname: ' + m[1]) + print('Straße: ' + m[2]) + print('PLZ Ort: ' + m[3]) + print('Telefonnr.: ' + m[4]) + print('-----------------------------') + +def GibMitarbeiter(mitarbeiter): + string = f"Vorname: {mitarbeiter[0]}
" + string += f"Nachname: {mitarbeiter[1]}
" + string += f"Straße: {mitarbeiter[2]}
" + string += f"Ort: {mitarbeiter[3]}
" + string += f"Telefon: {mitarbeiter[4]}

" + return string + +def GibAlleMitarbeiter(liste): + text = "" + for m in liste: + text += GibMitarbeiter(m) + return text + +if __name__ == '__main__': + print(GibMitarbeiter(mitarbeiter1)) + print(GibAlleMitarbeiter(mitarbeiterliste)) diff --git a/ub2-master/ub2-master/templates/index.html b/ub2-master/ub2-master/templates/index.html new file mode 100644 index 0000000..6601ab4 --- /dev/null +++ b/ub2-master/ub2-master/templates/index.html @@ -0,0 +1,33 @@ + + + + + Mitarbeiterliste + + + +

Mitarbeiterliste

+

{{ mycontent | safe }}

+ + + + diff --git a/ub2/__pycache__/mitarbeiter.cpython-311.pyc b/ub2/__pycache__/mitarbeiter.cpython-311.pyc new file mode 100644 index 0000000..9ba1483 Binary files /dev/null and b/ub2/__pycache__/mitarbeiter.cpython-311.pyc differ diff --git a/ub2_pro/__pycache__/mitarbeiter.cpython-311.pyc b/ub2_pro/__pycache__/mitarbeiter.cpython-311.pyc new file mode 100644 index 0000000..5a1bb93 Binary files /dev/null and b/ub2_pro/__pycache__/mitarbeiter.cpython-311.pyc differ diff --git a/ub2_pro/app.py b/ub2_pro/app.py new file mode 100644 index 0000000..19135e0 --- /dev/null +++ b/ub2_pro/app.py @@ -0,0 +1,19 @@ +# app.py +from flask import Flask, render_template +import mitarbeiter + +app = Flask(__name__) + +@app.route('/') +def index(): + return render_template("index.html", mitarbeiterliste=mitarbeiter.alle_mitarbeiter) + +@app.route('/detail/') +def mitarbeiter_detail(mid): + person = mitarbeiter.get_mitarbeiter_by_id(mid) + if person: + return render_template("detail.html", mitarbeiter=person) + return "

Mitarbeiter nicht gefunden.

", 404 + +if __name__ == '__main__': + app.run(host='0.0.0.0', port=5000) diff --git a/ub2_pro/mitarbeiter.py b/ub2_pro/mitarbeiter.py new file mode 100644 index 0000000..daa4854 --- /dev/null +++ b/ub2_pro/mitarbeiter.py @@ -0,0 +1,26 @@ +# mitarbeiter.py + +class Mitarbeiter: + def __init__(self, id, vorname, nachname, strasse, ort, telefon, bildpfad): + self.id = id + self.vorname = vorname + self.nachname = nachname + self.strasse = strasse + self.ort = ort + self.telefon = telefon + self.bildpfad = bildpfad + +# Beispielhafte Mitarbeiter +m1 = Mitarbeiter(1, "Otto", "Müller", "Adlergestell 700", "12527 Berlin", "030 67549000", "/static/images/otto.jpeg") +m2 = Mitarbeiter(2, "Hans", "Lindner", "Friedenstraße 4", "10464 Wildau", "03375 23925", "/static/images/hans.jpeg") +m3 = Mitarbeiter(3, "Eva", "Habeck", "Seestraße 5", "10430 Wildau", "03375 45321", "/static/images/eva.jpeg") + +# Liste mit allen +alle_mitarbeiter = [m1, m2, m3] + +# Mitarbteiter mit ID 1 +def get_mitarbeiter_by_id(mid): + for m in alle_mitarbeiter: + if m.id == mid: + return m + return None \ No newline at end of file diff --git a/ub2_pro/static/images/eva.jpeg b/ub2_pro/static/images/eva.jpeg new file mode 100644 index 0000000..1cd77e0 Binary files /dev/null and b/ub2_pro/static/images/eva.jpeg differ diff --git a/ub2_pro/static/images/hans.jpeg b/ub2_pro/static/images/hans.jpeg new file mode 100644 index 0000000..51b2112 Binary files /dev/null and b/ub2_pro/static/images/hans.jpeg differ diff --git a/ub2_pro/static/images/otto.jpeg b/ub2_pro/static/images/otto.jpeg new file mode 100644 index 0000000..8fb598f Binary files /dev/null and b/ub2_pro/static/images/otto.jpeg differ diff --git a/ub2_pro/templates/detail.html b/ub2_pro/templates/detail.html new file mode 100644 index 0000000..1d3ff2a --- /dev/null +++ b/ub2_pro/templates/detail.html @@ -0,0 +1,39 @@ + + + + + Details – {{ mitarbeiter.vorname }} {{ mitarbeiter.nachname }} + + + + ← Zurück zur Übersicht +
+ Profilbild +

{{ mitarbeiter.vorname }} {{ mitarbeiter.nachname }}

+

Straße: {{ mitarbeiter.strasse }}

+

Ort: {{ mitarbeiter.ort }}

+

Telefon: {{ mitarbeiter.telefon }}

+
+ + diff --git a/ub2_pro/templates/index.html b/ub2_pro/templates/index.html new file mode 100644 index 0000000..cdd2447 --- /dev/null +++ b/ub2_pro/templates/index.html @@ -0,0 +1,52 @@ + + + + + Mitarbeiterliste + + + +

Mitarbeiterliste

+ + {% for m in mitarbeiterliste %} +
+ + Profilbild von {{ m.vorname }} + +

{{ m.vorname }} {{ m.nachname }}

+

{{ m.strasse }}

+

{{ m.ort }}

+

{{ m.telefon }}

+
+ {% endfor %} + + + + diff --git a/ub3-dekorator-master/ub3-dekorator-master/call_limit.py b/ub3-dekorator-master/ub3-dekorator-master/call_limit.py new file mode 100644 index 0000000..e7b7470 --- /dev/null +++ b/ub3-dekorator-master/ub3-dekorator-master/call_limit.py @@ -0,0 +1,27 @@ +def call_limit(max_calls): + """Ein Dekorator, der nur eine bestimmte Anzahl von Funktionsaufrufen erlaubt.""" + def decorator(func): + count = 0 # Zähler für die Aufrufe + + def wrapper(*args, **kwargs): + nonlocal count # Zugriff auf äußeren Zähler + if count < max_calls: + count += 1 + return func(*args, **kwargs) + else: + print(f"Aufruflimit erreicht: {max_calls}x erlaubt.") + return wrapper + return decorator + + +# Anwendung des Dekorators +@call_limit(3) +def say_hello(): + print("Hello world!") + +# Testaufrufe +if __name__ == '__main__': + say_hello() # 1. Aufruf + say_hello() # 2. Aufruf + say_hello() # 3. Aufruf + say_hello() # 4. Aufruf → wird geblockt, habs getestet :P