diff --git a/__pycache__/library.cpython-35.pyc b/__pycache__/library.cpython-35.pyc new file mode 100644 index 0000000..e781f6b Binary files /dev/null and b/__pycache__/library.cpython-35.pyc differ diff --git a/library_julie.py b/library_julie.py new file mode 100644 index 0000000..6c4d48a --- /dev/null +++ b/library_julie.py @@ -0,0 +1,106 @@ +from flask import Flask, render_template, Markup, jsonify, session, request +import json +import os +from json import dumps +import collections +import random +import string + +app = Flask(__name__, static_url_path='', static_folder="static", template_folder="templates") +app.jinja_env.add_extension('jinja2.ext.loopcontrols') + + +# SETTING THE VARIABLES +path = "/static/files/" +max_selected_items = 30 + +#move this list to Jinja so it can be placed in layout +#give back clicked value +# librarians = ["Alana", "Gentian", "Laurie", "Matias", "Scott", "Stacy", "Max", "Clara_B", "Michelle", "Clara_J_B", "Karen", "Lumsden_Primary_School", "Aaron", "Leo", "Maria", "Laura", "Honey", "Tender_Center", "wdka", "Naomi", "Cristina", "Julie", "ssw", "cyberspace", "Hannah", "Katarina", "Anastasia", "Kimmy", "Marie","Katherine", "Allison", "Mariana", "Viki", "Alice", "Eric", "hks", "cbk", "Sophie", "Antonio", "Jeremiah", "Angela", "Renee", "Marta", "Katherine", "Anna", "Auryn", "Ashley", "Anne", "Denise", "Eva", "Jonnah", "Kitty", "Masha", "Mia", "Cian", "Senke", "Maud", "Jinnie", "Rubin", "Julia", "Alana", "Gentian", "Laurie", "Matias","Scott", "Stacy"] + +librarians = [] +files_without_folders = [] + +with open('static/js/mergedjson.json', 'r', encoding='utf8') as filesandnames: + filetoname_dict = json.load(filesandnames) + +#get full list librarians from json (printed later through global variable) + for file in filetoname_dict: + for name in file["librarian"]: + librarians.append(str(name)) + librarians = list(dict.fromkeys(librarians)) + +#this value we should get from template + librarianselected = "Ruben" + +#go from librarian name to file + for file in filetoname_dict: + # if librarianselected in file["librarian"]: + thedebris = file["debrisname"] + #apply regex to the debris + thedebris = os.path.basename(thedebris) + files_without_folders.append(str(thedebris)) + # print(str(librarianselected)+" contributed with the following debris : "+str(thedebris)) + + + +#this value we should get from template + fileselected = filetoname_dict[1]["debrisname"] + +#go from file name to librarian name + for file in filetoname_dict: + if fileselected in file["debrisname"]: + thelibrarian = file["librarian"] + print("librarians for "+ str(fileselected)+" are: " + str(thelibrarian)) + print("---------------------------------------------------") + + +# preparing a index.json file of files +index_dict = {} + + + +@app.route("/", methods=['POST', 'GET']) +def home(): + if request.args: + # We have our query string nicely serialized as a Python dictionary + args = request.args + # We'll create a string to display the parameters & values + serialized = ", ".join(f"{k}: {v}" for k, v in request.args.items()) + # Display the query string to the client in a different format + # return f"(Query) {serialized}", 200 + urllibrarian=request.args.getlist('librarian') # new + urlmethod=request.args.getlist('method') # new + for a in urllibrarian: + print('urllibrarian is: '+ a) + for b in urlmethod: + print('urlmethod is: ' + b) +#unsure if Im really using that for now I think not + # selected = "textbysomeone" + # selections = collections.deque(session['selection'], maxlen=max_selected_items) #? + # selections.append(selected) + # session['selection'] = list(selections) + return render_template('layout.html', urllibrarian=urllibrarian, urlmethod=urlmethod, filetoname_dict=filetoname_dict, librarians=librarians, files_without_folders = files_without_folders) # new + + +@app.route('/about/') +def about(): + selectedstuff = session['selection'] + return render_template('about.html', selectedstuff=selectedstuff) + +@app.route('/exchange') +def exchange(): + return render_template('exchange.html') + + +@app.route('/test/', methods=['GET','POST']) +def test(): + print("test") + clicked=None + if request.method == "POST": + # clicked=request.form['data'] + listofselecteddocs = request.get_json() + print("hallo") + print(listofselecteddocs) + print("hola") + return render_template('test.html') \ No newline at end of file diff --git a/templates/layout_julie.html b/templates/layout_julie.html new file mode 100644 index 0000000..e7f8b08 --- /dev/null +++ b/templates/layout_julie.html @@ -0,0 +1,342 @@ + + + + + + + Library + + + + + + + + + + +
+
ABOUT
+
+ +
+ {% for librarian in librarians %} + + {{ librarian }} + {% endfor %} +
+ + + + + + +
+
+ + {% for querylibrarian in urllibrarian %} + {% for file in filetoname_dict %} + {% for item in file['librarian'] %} + {% if item == querylibrarian and urlmethod == []%} + {% set show_file = file['debrisname'] %} + {{show_file}} + {% elif item == querylibrarian %} + {% for urlmeth in urlmethod %} + {% if urlmeth.lower() == file['method'].lower() %} + {% set show_file = file['debrisname'] %} + {{show_file}} + {% endif %} + {% endfor %} + {% endif %} + {% endfor %} + {% endfor %} + {% endfor %} + + + {% for querymethod in urlmethod %} + {% for file in filetoname_dict %} + {% if querymethod.lower() == file['method'].lower()%} + {% set show_file = file['debrisname'] %} + {{show_file}} + {% endif %} + {% endfor %} + {% endfor %} +
+
+ +
+ test link + + + {% block content %} + {% endblock content %} +
+
+ + + + + + + + + \ No newline at end of file