commit 1afee957373703b026ac42fd934f609eba79c193 Author: ocueye2 Date: Wed Jan 29 23:28:00 2025 +0000 first commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..994ca16 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/.venv +/__pycache__ \ No newline at end of file diff --git a/codegen.py b/codegen.py new file mode 100644 index 0000000..c0e9752 --- /dev/null +++ b/codegen.py @@ -0,0 +1,108 @@ +import qrcode +import os +from io import BytesIO +from flask import Flask, send_file, request, render_template_string, render_template + +app = Flask(__name__) + +def load(file): + path = os.path.dirname(os.path.realpath(__file__)) + with open(f"{path}/webpage/{file}") as f: + return f.read() + +@app.route('/', methods=['GET', 'POST']) +def index(): + if request.method == 'POST': + qrtype = request.form.get('type') + elif request.method == 'GET': + qrtype = request.args.get('type') + else: + qrtype = "LINK" + + if qrtype == "LINK": + form = f""" +

Enter Url:

+
+ + +

+ + +
+ """ + elif qrtype == "MAIL": + form = f""" +

Enter Email:

+
+ + +

+ + +
+ """ + else: + form = f""" +

Enter Telephone:

+
+ + +

+ + +
+ """ + + if request.method == 'POST': + qrtype = request.form.get('type') + elif request.method == 'GET': + qrtype = request.args.get('type') + + codeimg = "

fill out info to generate qr code

" + if qrtype: + print(qrtype) + try: + if qrtype == "LINK": + codeimg = f'' + elif qrtype == "TEL": + codeimg = f'' + except: + print("nocontent") + codeimg = "

fill out info to generate qr code

" + else: + codeimg = "

fill out info to generate qr code

" + print(codeimg) + return render_template("home.html", form=form, codeimg=codeimg) + + +@app.route('/qrcode', methods=['GET', 'POST']) +def generate_qrcode(): + if request.method == 'POST': + link = request.form.get('link') + else: + link = request.args.get('link') + + if not link: + return "No link provided", 400 + + qr = qrcode.QRCode( + version=1, + error_correction=qrcode.constants.ERROR_CORRECT_L, + box_size=10, + border=4, + ) + qr.add_data(link) + qr.make(fit=True) + + img = qr.make_image(fill_color="black", back_color="white") + buffered = BytesIO() + img.save(buffered, format="PNG") + buffered.seek(0) + + return send_file(buffered, mimetype='image/png') + + +if __name__ == "__main__": + app.run(host='0.0.0.0', port=8080, debug=True) diff --git a/templates/home.html b/templates/home.html new file mode 100644 index 0000000..9a2a883 --- /dev/null +++ b/templates/home.html @@ -0,0 +1,98 @@ + + + + + Here To There + + + + + +
+

QR Code Generator

+
+ +
+ + + + + + +
+

Link

+

Telephone

+

Email

+
+
+ {{ form|safe }} +
+
+ {{ codeimg|safe }} +
+
+ +