Compare commits

...

5 Commits

Author SHA1 Message Date
Kostanjevec ae0101c003 added share button 2022-06-07 00:46:56 +02:00
Kostanjevec 297c7fef02 fixed double review on first card bug 2022-06-07 00:28:11 +02:00
Kostanjevec a4f8c0aa8e datetime problemi... 2022-06-05 21:20:23 +02:00
Kostanjevec 0ed349e53d poskusil uporabit datetime ampak ni lih ratalo, še feno ni tega 2022-06-05 21:19:20 +02:00
Kostanjevec f8bae1331a upload form zdaj prinese FileStorage objekt 2022-06-05 21:18:24 +02:00
6 changed files with 43 additions and 32 deletions

24
app.py
View File

@ -1,20 +1,17 @@
from collections import UserList
import os
from flask import Flask, redirect, render_template, session, request, url_for
from datetime import date
from sqlalchemy import case
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from auth import login_required, bp as auth_bp
from deck import bp as deck_bp
from menu import bp as menu_bp
from upload import bp as upload_bp
from flask import Flask, redirect, render_template, session, request, url_for
from create_db import Card, Deck
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from config import CONFIG
from get_public_links import test_file
from config import CONFIG
engine = create_engine(CONFIG['DB_CONNECTION'])
@ -66,6 +63,7 @@ def create_app(test_config=None):
if current_card < len(d):
card = dbsession.query(Card).filter(Card.id == d[current_card]).first()
dbsession.query(Deck).filter(Deck.owner_id == user_id, Deck.id == deck_id).update({'current_card': current_card+1})
else:
dbsession.query(Deck).filter(Deck.owner_id == user_id, Deck.id == deck_id).update({'completed': True})
dbsession.commit()
@ -73,21 +71,23 @@ def create_app(test_config=None):
if request.method == 'POST':
rate = request.form.get('rate', None) #je to nevarno??
cardtitle = request
print(rate)
if rate == "Yes":
k = 1
dbsession.query(Card).filter(Card.id == card.id).update({'interest_rate': 1})
elif rate == "Maybe":
k = 0.5
dbsession.query(Card).filter(Card.id == card.id).update({'interest_rate': abs(card.interest_rate*k)})
elif rate == "No":
k = 0.1
dbsession.query(Card).filter(Card.id == card.id).update({'interest_rate': abs(card.interest_rate*k)})
dbsession.query(Card).filter(Card.id == card.id).update({'interest_rate': abs(card.interest_rate*k)})
dbsession.query(Deck).filter(Deck.owner_id == user_id, Deck.id == deck_id).update({'current_card': current_card+1})
if request.form.get("share", None): #to ne sme spremeniti karte
print("share")
#dbsession.query(Card).filter(Card.id == card.id).update({'last_review': date()})
dbsession.commit()
return render_template("deck/index.html", username=username, card = card) # no idea kaj se tu dogaja...
else:

View File

@ -5,11 +5,11 @@ from csv import unregister_dialect
from sqlite3 import Date
from xmlrpc.client import Boolean
from click import password_option
from pymysql import Timestamp
from pymysql import Time, Timestamp
#from ssl import _PasswordType
#from xmlrpc.client import DateTime
#from matplotlib.pyplot import title
from sqlalchemy import Column, Integer, Float, String, Text, TIMESTAMP,ForeignKey, BOOLEAN
from sqlalchemy import Column, Integer, Float, String, Text, DateTime, ForeignKey, BOOLEAN
from sqlalchemy.ext.declarative import declarative_base
#from sqlalchemy.orm import relationship
from sqlalchemy import func, create_engine,join
@ -35,8 +35,8 @@ class Card(Base):
owner_id = Column(Integer, ForeignKey("user.id"), nullable=False)
interest_rate = Column(Float)
item_location = Column(String(1024))
#shared = Column(BOOLEAN) #tu bo že problem, ker
#last_review = Column(TIMESTAMP)
last_review = Column(Text)
#shared = Column(BOOLEAN) #tu bo že problem, ker mora imeti shared za vsakega svoj IR
class Deck(Base):
__tablename__ = 'deck'
@ -47,16 +47,15 @@ class Deck(Base):
current_card = Column(Integer)
completed = Column(BOOLEAN)
# shared = Column(Bool)
# item_type = Column(String)
# content_type = Column(String)
# item_size = Column(Integer)
#ali
# date_added = Column(String)
# last_review = Column(DateTime)
# interval = Column(Integer)
# due = Column(DateTime)
"""
class Review(Base):
__tablename__ = 'review'
id = Column(Integer, primary_key=True, autoincrement=True)
reviewer_id = Column(Integer, ForeignKey("user.id"), nullable=False)
card_id = Column(Integer, ForeignKey("user.id"), nullable=False)
review = Column(Text)
time = Column(DateTime)
"""
engine = create_engine(CONFIG['DB_CONNECTION'])

View File

@ -27,7 +27,7 @@ for item in l:
public_share = nc.share_file_with_link("/GIA CLOUD/"+name)
public_link = public_share.get_link()+"/download/"+name
card = Card(title=name, interest_rate=-1.0, owner_id=1, item_location=public_link)
card = Card(title=name, interest_rate=-1.0, owner_id=1, item_location=public_link, last_review=None)
dbsession.add(card)
dbsession.commit()

View File

@ -14,6 +14,7 @@
<button input type="submit" name="rate" data-cardtitle=card[title] value="Yes" accesskey="1">Yes</button> <!--ti keyi so alt+shit+key...-->
<button input type="submit" name="rate" value="Maybe" accesskey="2">Maybe</button>
<button input type="submit" name="rate" value="No" accesskey="3">No</button>
<button input type="submit" name="share" value="share">Share</button>
</form>
</article>

View File

@ -10,7 +10,7 @@
{% block content %}
</body>
<form method="post" enctype="multipart/form-data" action="localhost:5000/upload/uploader">
<form id="form" method="post" enctype="multipart/form-data" action="/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">
@ -42,6 +42,8 @@
if (e.dataTransfer.files.length) {
inputElement.files = e.dataTransfer.files;
console.log("oddajam form", e);
document.getElementById("form").submit();
}
dropZoneElement.classList.remove("drop-zone--over");

View File

@ -1,3 +1,4 @@
from email import message
from flask import (
Blueprint, flash, g, redirect, render_template, request, session, url_for
)
@ -16,6 +17,11 @@ engine = create_engine(CONFIG['DB_CONNECTION'])
dbsessionmaker = sessionmaker(bind=engine)
dbsession = dbsessionmaker()
nc = nextcloud_client.Client('https://obzorje.kompot.si')
nc.login('gia', 'gia0000!')
@bp.route("/", methods=("GET", "POST"))
def index():
return render_template("menu/upload.html")
@ -24,16 +30,19 @@ def index():
@bp.route('/uploader', methods = ['GET', 'POST'])
def upload_file():
print("heyy")
message = ""
if request.method == 'POST':
#flask gets the file
upload = request.files["file"]
print("hello")
upload = request.files #???
#upload to nc
#nc.put_file('testdir/remotefile.txt', 'localfile.txt') #not sure kako bi to
#get public link
#link = nc.share_file_with_link('testdir/remotefile.txt')
#update db
#predpostavlja title, ir, owner_id, item_location
#card = Card(title=name, interest_rate=-1.0, owner_id=1, item_location=public_link)
#card = Card(title=name, interest_rate=-1.0, owner_id=1, item_location=link, )
#dbsession.add(card)
#dbsession.commit()
return render_template("menu/upload.html", message=message)