začel delat upload, ampak še ni prav daleč...

master
Kostanjevec 2022-06-05 18:53:31 +02:00
parent 6fc3ee80f0
commit f8d3547599
2 changed files with 92 additions and 0 deletions

View File

@ -0,0 +1,53 @@
{% extends 'base.html' %}
{% block header %}
<head>
<title>Drag and Drop File Upload</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta charset="utf-8">
</head>
{% endblock %}
{% block content %}
</body>
<form method="post" enctype="multipart/form-data" action="localhost:5000/upload/uploader">
<div class="drop-zone">
<span class="drop-zone__prompt">Drop file here or click to upload</span>
<input type="file" name="file" class="drop-zone__input">
<input type="submit">
</div>
</form>
<script type="text/javascript">
document.querySelectorAll(".drop-zone__input").forEach((inputElement) => {
const dropZoneElement = inputElement.closest(".drop-zone");
dropZoneElement.addEventListener("click", (e) => {
inputElement.click();
});
dropZoneElement.addEventListener("dragover", (e) => {
e.preventDefault();
dropZoneElement.classList.add("drop-zone--over");
});
["dragleave", "dragend"].forEach((type) => {
dropZoneElement.addEventListener(type, (e) => {
dropZoneElement.classList.remove("drop-zone--over");
});
});
dropZoneElement.addEventListener("drop", (e) => {
e.preventDefault();
if (e.dataTransfer.files.length) {
inputElement.files = e.dataTransfer.files;
}
dropZoneElement.classList.remove("drop-zone--over");
});
});
</script>
<body>
{% endblock %}

39
upload.py 100644
View File

@ -0,0 +1,39 @@
from flask import (
Blueprint, flash, g, redirect, render_template, request, session, url_for
)
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from auth import login_required
from config import CONFIG
from create_db import User, Card
import nextcloud_client
bp = Blueprint('upload', __name__, url_prefix='/upload')
engine = create_engine(CONFIG['DB_CONNECTION'])
dbsessionmaker = sessionmaker(bind=engine)
dbsession = dbsessionmaker()
@bp.route("/", methods=("GET", "POST"))
def index():
return render_template("menu/upload.html")
@bp.route('/uploader', methods = ['GET', 'POST'])
def upload_file():
print("heyy")
if request.method == 'POST':
#flask gets the file
upload = request.files["file"]
print("hello")
#upload to nc
#get public link
#update db
#predpostavlja title, ir, owner_id, item_location
#card = Card(title=name, interest_rate=-1.0, owner_id=1, item_location=public_link)
#dbsession.add(card)
#dbsession.commit()