Added list management to admin page
This commit is contained in:
parent
9d7d26c657
commit
614bbebc46
27
shop.py
27
shop.py
@ -110,6 +110,10 @@ def get_items(user_id, list_id=None):
|
|||||||
|
|
||||||
def get_list_ids(user_id):
|
def get_list_ids(user_id):
|
||||||
ret = {}
|
ret = {}
|
||||||
|
if user_id == "admin":
|
||||||
|
query = "SELECT id, name from LISTS;"
|
||||||
|
res = runQuery(query)
|
||||||
|
else:
|
||||||
query = "select USER_META.list_id, LISTS.name from USER_META inner join LISTS on LISTS.id = USER_META.list_id where USER_META.user_id = %s"
|
query = "select USER_META.list_id, LISTS.name from USER_META inner join LISTS on LISTS.id = USER_META.list_id where USER_META.user_id = %s"
|
||||||
data = (user_id,)
|
data = (user_id,)
|
||||||
res = runQuery(query, data)
|
res = runQuery(query, data)
|
||||||
@ -117,6 +121,16 @@ def get_list_ids(user_id):
|
|||||||
ret[lid] = name
|
ret[lid] = name
|
||||||
return ret
|
return ret
|
||||||
|
|
||||||
|
def addList(list_name):
|
||||||
|
query = "insert into LISTS (name) values (%s)"
|
||||||
|
data = (list_name,)
|
||||||
|
runQuery(query, data)
|
||||||
|
|
||||||
|
def addUserToList(userid, listid):
|
||||||
|
query = "insert into USER_META (user_id, list_id) values (%s, %s)"
|
||||||
|
data = (userid, listid)
|
||||||
|
runQuery(query, data)
|
||||||
|
|
||||||
application = Flask(__name__)
|
application = Flask(__name__)
|
||||||
application.config["DEBUG"] = True
|
application.config["DEBUG"] = True
|
||||||
application.secret_key = b'*$#@U9423jr92jioJKL_)_;dasfj()12'
|
application.secret_key = b'*$#@U9423jr92jioJKL_)_;dasfj()12'
|
||||||
@ -140,6 +154,7 @@ def index():
|
|||||||
|
|
||||||
@application.route('/post', methods=['POST'])
|
@application.route('/post', methods=['POST'])
|
||||||
def handle_data():
|
def handle_data():
|
||||||
|
print(request.form)
|
||||||
if "addValue" in request.form:
|
if "addValue" in request.form:
|
||||||
for x in request.form:
|
for x in request.form:
|
||||||
if request.form[x] == '':
|
if request.form[x] == '':
|
||||||
@ -187,6 +202,15 @@ def handle_data():
|
|||||||
if "list" in request.form:
|
if "list" in request.form:
|
||||||
session["active_id"] = request.form['list']
|
session["active_id"] = request.form['list']
|
||||||
|
|
||||||
|
if "addList" in request.form:
|
||||||
|
print(request.form["addList"])
|
||||||
|
addList(request.form["addList"])
|
||||||
|
|
||||||
|
if "add2list" in request.form:
|
||||||
|
userid = request.form["add2list"]
|
||||||
|
listid = request.form["listID"]
|
||||||
|
addUserToList(userid, listid)
|
||||||
|
|
||||||
return redirect(url_for('index'))
|
return redirect(url_for('index'))
|
||||||
|
|
||||||
@application.route("/admin")
|
@application.route("/admin")
|
||||||
@ -199,7 +223,8 @@ def admin():
|
|||||||
|
|
||||||
#get a list of users
|
#get a list of users
|
||||||
userList = get_users()
|
userList = get_users()
|
||||||
data = {"users": userList}
|
lists = get_list_ids("admin")
|
||||||
|
data = {"users": userList, "lists": lists}
|
||||||
|
|
||||||
return render_template("admin.html", data=data)
|
return render_template("admin.html", data=data)
|
||||||
|
|
||||||
|
|||||||
@ -42,6 +42,20 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
<h1 class="text-center">ADD LIST</h1>
|
||||||
|
<form class="addList" action="/post" method="POST">
|
||||||
|
<div class="form-group row">
|
||||||
|
<label for="addlist" class="col-sm-2 col-form-label" >List</label>
|
||||||
|
<div class="col-sm-10">
|
||||||
|
<input type=text class="form-control" id="addlist" type="text" name="addList" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group row">
|
||||||
|
<div class="form-group" style="padding-top: 10px; padding-left: 10px;">
|
||||||
|
<input class="btn btn-secondary" id="addlist" type="submit" name="newlist" value="Add new list" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
<div id="logout" style="padding-top: 3px;">
|
<div id="logout" style="padding-top: 3px;">
|
||||||
<a href="/">
|
<a href="/">
|
||||||
<button onclick="window.location='admin'" class="btn btn-secondary"><i style="padding-top: 3px;"
|
<button onclick="window.location='admin'" class="btn btn-secondary"><i style="padding-top: 3px;"
|
||||||
@ -50,6 +64,34 @@
|
|||||||
</i></button></a>
|
</i></button></a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<h1 class="text-center">Add User To List</h1>
|
||||||
|
<div class="container">
|
||||||
|
<table class="table table-striped table-dark table-hover">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">Username</th>
|
||||||
|
<th scope="col">User</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
{% for x in data["lists"] %}
|
||||||
|
<tr scope="row">
|
||||||
|
<td>{{data["lists"][x]}}</td>
|
||||||
|
<td><form action="/post" method="POST">
|
||||||
|
<select id="addbox" name="add2list" class="custom-select custom-select-lg mb-3">
|
||||||
|
{% for userid in data["users"] %}
|
||||||
|
<option type="submit" value="{{userid[2]}}" id="addbox" name="User2list">{{userid[0].title()}}</option>
|
||||||
|
{% endfor %}
|
||||||
|
</select> <button class="btn btn-secondary" type="submit" value="x"> Add User To List </button>
|
||||||
|
<input name="listID" value={{x}} type="hidden"></form></td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
{% for x in data["lists"] %}
|
||||||
|
{{data["lists"][x]}}
|
||||||
|
{% endfor %}
|
||||||
<!-- jQuery library -->
|
<!-- jQuery library -->
|
||||||
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
|
||||||
<!-- Popper JS -->
|
<!-- Popper JS -->
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user