diff --git a/cinema_manager/__pycache__/views.cpython-310.pyc b/cinema_manager/__pycache__/views.cpython-310.pyc index e1901dcc2a3555689fe4fce0b9b6fbea550c389d..fbe1e0d6bb4e6fadeb38842d0f3d90c3944c72c8 100644 Binary files a/cinema_manager/__pycache__/views.cpython-310.pyc and b/cinema_manager/__pycache__/views.cpython-310.pyc differ diff --git a/cinema_manager/views.py b/cinema_manager/views.py index 10d08caafdaf41eb756276368ff09b75ff1ccc00..cb852058d0d55b62a657d2d333b6d8b77ce11bc4 100644 --- a/cinema_manager/views.py +++ b/cinema_manager/views.py @@ -619,6 +619,15 @@ def user_logout(request): return redirect('/login/') #return redirect('home-page') + + + + + + + + + def showing_list(request): if request.session.get('loggedin', False): diff --git a/club_rep/templates/club_rep/booking.html b/club_rep/templates/club_rep/booking.html index 223219bc6d03df8e8a9cf0128c82fcab3681216d..86eb46261901766dd50c861f849e513b444e202b 100644 --- a/club_rep/templates/club_rep/booking.html +++ b/club_rep/templates/club_rep/booking.html @@ -64,12 +64,9 @@ {% csrf_token %} <input type="Number" name="tickets" id="tickets" value="{{numb_of_tickets}}" readonly hidden> - <label for="payment">Payment system:</label> + <label for="payment">Payment Method:</label> <select id="payment" name="payment"> - <option value="Club Account">Club Account</option> - <option value="Debit ard">Debit card</option> - <option value="Paypal">Paypal</option> - <option value="Stripe">Stripe</option> + <option value="Club Account" >Club Account</option> </select> <br> <br> @@ -83,7 +80,7 @@ - <a href="{% url 'view-film' showing_id %}"><button type="button" class="w3-button w3-red button4">Go back</button></a> + <a href="{% url 'view-film' showing_id %}"><button type="button" class="w3-button w3-red button4"> Cancel</button></a> <input class="w3-button w3-green button4 w3-margin" type="submit" value="Confirm"> </form> </table> diff --git a/club_rep/templates/club_rep/select_date.html b/club_rep/templates/club_rep/select_date.html index 18333ddb575de605d50dec8f7903649cce30bd0e..c0f3ceffedb951b07191380acec3c2980659a1ce 100644 --- a/club_rep/templates/club_rep/select_date.html +++ b/club_rep/templates/club_rep/select_date.html @@ -29,7 +29,7 @@ <label for="date">Select a date:</label> <input type="date" name="date" id="date"> <br> - <button type="submit">View Data</button> + <button type="submit" class="w3-button w3-green button4" style="margin-left: 90px;margin-top: 10px;">View Showings</button> </form> </table> <br> diff --git a/club_rep/templates/club_rep/view_film.html b/club_rep/templates/club_rep/view_film.html index a76c2f34eb5b3f1bbca6f10bf95761ff4fb9440f..f190eed0f3fb1901552359d0c72e916634e3bad6 100644 --- a/club_rep/templates/club_rep/view_film.html +++ b/club_rep/templates/club_rep/view_film.html @@ -60,6 +60,8 @@ {% csrf_token %} {% if message is not None %} <p class="w3-red">{{ message }}</p> + <a href="{% url 'club_balance' %}"><button type="button" class="w3-button w3-blue-grey button4">Top Up</button></a> + <br><br> {% endif %} <label for="date">Select Number of tickets:</label> <input type="Number" name="tickets" id="tickets" min="10" max="50"> diff --git a/cust/__pycache__/urls.cpython-310.pyc b/cust/__pycache__/urls.cpython-310.pyc index e1061a5ffee6c56ac7fd3ad395ba111eb19e2353..f9e77528760d46aabeb6edaaa3823023e7c7e787 100644 Binary files a/cust/__pycache__/urls.cpython-310.pyc and b/cust/__pycache__/urls.cpython-310.pyc differ diff --git a/cust/__pycache__/views.cpython-310.pyc b/cust/__pycache__/views.cpython-310.pyc index 3cce8c045832e275e75270ae1e03bd8af84c47cd..efc138f6b8d2b060f9deaa2ebccb1d3002da1134 100644 Binary files a/cust/__pycache__/views.cpython-310.pyc and b/cust/__pycache__/views.cpython-310.pyc differ diff --git a/db.sqlite3 b/db.sqlite3 index 4b0a17675bebaf0bfff3684c5db7227937cdbc42..c794ee4c4d583e47ad9ead1c6babebfb1aeed7fe 100644 Binary files a/db.sqlite3 and b/db.sqlite3 differ diff --git a/main/__pycache__/settings.cpython-310.pyc b/main/__pycache__/settings.cpython-310.pyc index 875b63d74d63278b16e4ea7feb21d0704b2b9e63..0cf59117b8140553f24fa48fdf520a8be9dcacdf 100644 Binary files a/main/__pycache__/settings.cpython-310.pyc and b/main/__pycache__/settings.cpython-310.pyc differ diff --git a/student/__pycache__/urls.cpython-310.pyc b/student/__pycache__/urls.cpython-310.pyc index 0d9988f4b73e3d285bc9cee321b130a1961efb2e..f8dc4cc8fe90359442b4780ed4baa94e975b236e 100644 Binary files a/student/__pycache__/urls.cpython-310.pyc and b/student/__pycache__/urls.cpython-310.pyc differ diff --git a/student/__pycache__/views.cpython-310.pyc b/student/__pycache__/views.cpython-310.pyc index 04d9e741370a1107501d68a368d8365c465747a0..f3eb111b7528ab16fbce5b447499dc45e325eafb 100644 Binary files a/student/__pycache__/views.cpython-310.pyc and b/student/__pycache__/views.cpython-310.pyc differ diff --git a/student/templates/student/booking.html b/student/templates/student/booking.html index 2f7b10bd5a6f376170f7bb8f789f596b9d8d9bb5..88a271a05a4a8866656d66070878510fbc02529c 100644 --- a/student/templates/student/booking.html +++ b/student/templates/student/booking.html @@ -11,12 +11,12 @@ </header> <div class="w3-section w3-bottombar w3-padding-16 "> <a href="{% url 'home-page' %}" class="w3-button w3-black">UWEFLIX</a> - <a href="{% url 'select-date-cr' %}" class="w3-button w3-black">Select Date </a> - <a href="{% url 'showings_list-cr' date %}" class="w3-button w3-black" >Showings </a> + <a href="{% url 'select-date-st' %}" class="w3-button w3-black">Select Date </a> + <a href="{% url 'showings_list-st' date %}" class="w3-button w3-black" >Showings </a> {% if showing_id %} - <a href="{% url 'view-film' showing_id %}" class="w3-button w3-black">Ticket </a> - <a href="{% url 'view-booking' showing_id numb_of_tickets %}" class="w3-button w3-blue" >Checkout </a> - <a href="{% url 'user-logout' %}" class="w3-button w3-white">Log Out</a> + <a href="{% url 'view-film-st' showing_id %}" class="w3-button w3-black">Ticket </a> + <a href="{% url 'view-booking-st' showing_id numb_of_tickets %}" class="w3-button w3-blue" >Checkout </a> + <a href="{% url 'user-logout-st' %}" class="w3-button w3-white">Log Out</a> {% endif %} @@ -83,7 +83,7 @@ - <a href="{% url 'view-film' showing_id %}"><button type="button" class="w3-button w3-red button4">Go back</button></a> + <a href="{% url 'view-film-st' showing_id %}"><button type="button" class="w3-button w3-red button4">Go back</button></a> <input class="w3-button w3-green button4 w3-margin" type="submit" value="Confirm"> </form> </table> diff --git a/student/templates/student/club.html b/student/templates/student/club.html deleted file mode 100644 index 7b481c9539d65a56d92de2060cb76a8b49aa25c3..0000000000000000000000000000000000000000 --- a/student/templates/student/club.html +++ /dev/null @@ -1,81 +0,0 @@ -{% extends "club_rep/base.html" %} - -{% block title %} - <title>Cinema Manager</title> -{% endblock title %} - -{% block content %} -<div> - <header class="w3-container w3-black w3-center " style="padding:50px 16px"> - <h1 class="w3-margin w3-jumbo">Student</h1> - </header> - <div class="w3-section w3-bottombar w3-padding-16 "> - <a href="{% url 'home-page' %}" class="w3-button w3-black">UWEFLIX</a> - <a href="{% url 'select-date-cr' %}" class="w3-button w3-white">Select Date </a> - <a href="{% url 'view-all-transactions' %}" class="w3-button w3-white">View transactions</a> - <a href="{% url 'club_balance' %}" class="w3-button w3-blue">Club Balance</a> - <a href="{% url 'user-logout' %}" class="w3-button w3-white">Log Out</a> - - - -</div> - -<div class="w3-container w3-card w3-round"> - - <table class=""> - <thead> - <tr> - <th scope="col" class="w3-indigo">Club Name</th> - <th scope="col" class="w3-indigo">Address No.</th> - <th scope="col" class="w3-indigo">Address Street</th> - <th scope="col" class="w3-indigo">Address City</th> - <th scope="col" class="w3-indigo">Address Postcode</th> - <th scope="col" class="w3-indigo">Telephone No.</th> - <th scope="col" class="w3-indigo">Phone No.</th> - <th scope="col" class="w3-indigo">Email</th> - <th scope="col" class="w3-indigo">Balance</th> - </tr> - </thead> - <tbody> - {% for i in data %} - <tr> - <th scope="row">{{ i.clubs.0.Name }}</th> - <th scope="row">{{ i.clubs.0.HouseNumber }}</th> - <td>{{ i.clubs.0.Street }}</td> - <td>{{ i.clubs.0.City }}</td> - <td>{{ i.clubs.0.PostCode }}</td> - <td>{{ i.clubs.0.TelephoneNumber }}</td> - <td>{{ i.clubs.0.PhoneNumber }}</td> - <td>{{ i.clubs.0.Email }}</td> - <td>£{{ i.clubs.0.Balance }}</td> - - - - - </tr> - {% endfor %} - </tbody> - </table> - - <br> - - <div class="w3-center"> - - <table class=""> - - <form action="" method="POST"> - {% csrf_token %} - <label for="funds">Add Funds:</label> - <input type="Number" name="funds" id="funds" min="1" max="100000"> - <br> - - <a href="{% url 'select-date-cr' %}"><button type="button" class="w3-button w3-red button4">Go back</button></a> - <input class="w3-button w3-green button4 w3-margin" type="submit" value="Add"> - </form> - </table> - - - </div> - <br> -</div> -{% endblock content %} \ No newline at end of file diff --git a/student/templates/student/select_date.html b/student/templates/student/select_date.html index 52c6b53502b04198afceaf3f5f03e56d6d1118b8..1df76ac3f327bb48393343d4b8205947a812e2d0 100644 --- a/student/templates/student/select_date.html +++ b/student/templates/student/select_date.html @@ -13,10 +13,9 @@ <div class="w3-section w3-bottombar w3-padding-16 "> <a href="{% url 'home-page' %}" class="w3-button w3-black">UWEFLIX</a> - <a href="{% url 'select-date-cr' %}" class="w3-button w3-blue">Select date</a> - <a href="{% url 'view-all-transactions' %}" class="w3-button w3-white">View transactions</a> - <a href="{% url 'club_balance' %}" class="w3-button w3-white">Club Balance</a> - <a href="{% url 'user-logout' %}" class="w3-button w3-white">Log Out</a> + <a href="{% url 'select-date-st' %}" class="w3-button w3-blue">Select date</a> + <a href="{% url 'view-all-transactions-st' %}" class="w3-button w3-white">View transactions</a> + <a href="{% url 'user-logout-st' %}" class="w3-button w3-white">Log Out</a> </div> </div> @@ -25,11 +24,11 @@ <div class="w3-container w3-card w3-round"> <table class=""> - <form action="{% if date %}{% url 'showings_list-cr' date=date %}{% endif %}" method="GET"> + <form action="{% if date %}{% url 'showings_list-st' date=date %}{% endif %}" method="GET"> <label for="date">Select a date:</label> <input type="date" name="date" id="date"> <br> - <button type="submit">View Data</button> + <button type="submit" class="w3-button w3-green button4" style="margin-left: 90px;margin-top: 10px;">View Showings</button> </form> </table> <br> diff --git a/student/templates/student/showings_list.html b/student/templates/student/showings_list.html index d92254d6aabf53666d263f529d2be019439bbe6c..d6d5cdcf465189c04716636fd283593ac0c8ccd8 100644 --- a/student/templates/student/showings_list.html +++ b/student/templates/student/showings_list.html @@ -11,11 +11,11 @@ </header> <div class="w3-section w3-bottombar w3-padding-16 "> <a href="{% url 'home-page' %}" class="w3-button w3-black">UWEFLIX</a> - <a href="{% url 'select-date-cr' %}" class="w3-button w3-black">Select Date </a> + <a href="{% url 'select-date-st' %}" class="w3-button w3-black">Select Date </a> {% if selected_date %} - <a href="{% url 'showings_list-cr' selected_date %}" class="w3-button w3-blue" >Showings </a> + <a href="{% url 'showings_list-st' selected_date %}" class="w3-button w3-blue" >Showings </a> {% endif %} - <a href="{% url 'user-logout' %}" class="w3-button w3-white">Log Out</a> + <a href="{% url 'user-logout-st' %}" class="w3-button w3-white">Log Out</a> </div> @@ -45,7 +45,7 @@ <td> {% load custom_filters %} - <a class="w3-button w3-green button4" style="margin-right: 10px;" href="{% url 'view-film' i|get_id %}">Select Showing</a> + <a class="w3-button w3-green button4" style="margin-right: 10px;" href="{% url 'view-film-st' i|get_id %}">Select Showing</a> <br> </td> @@ -61,7 +61,7 @@ <br> <div class="w3-center"> - <a href="{% url 'select-date-cr' %}"><button type="button" class="w3-button w3-red button4">Go back</button></a> + <a href="{% url 'select-date-st' %}"><button type="button" class="w3-button w3-red button4">Go back</button></a> </div> <br> diff --git a/student/templates/student/transactions.html b/student/templates/student/transactions.html index 1892ef28e32df4725e664b9bc4ce95d8dc690cad..c05d74e824dbb6058373fc6bde4ad304b106944a 100644 --- a/student/templates/student/transactions.html +++ b/student/templates/student/transactions.html @@ -11,10 +11,9 @@ </header> <div class="w3-section w3-bottombar w3-padding-16 "> <a href="{% url 'home-page' %}" class="w3-button w3-black">UWEFLIX</a> - <a href="{% url 'select-date-cr' %}" class="w3-button w3-white">Select Date </a> - <a href="{% url 'view-all-transactions' %}" class="w3-button w3-blue">View transactions</a> - <a href="{% url 'club_balance' %}" class="w3-button w3-white">Club Balance</a> - <a href="{% url 'user-logout' %}" class="w3-button w3-white">Log Out</a> + <a href="{% url 'select-date-st' %}" class="w3-button w3-white">Select Date </a> + <a href="{% url 'view-all-transactions-st' %}" class="w3-button w3-blue">View transactions</a> + <a href="{% url 'user-logout-st' %}" class="w3-button w3-white">Log Out</a> @@ -82,7 +81,7 @@ </select> <br> - <a href="{% url 'select-date-cr' %}"><button type="button" class="w3-button w3-red button4">Go back</button></a> + <a href="{% url 'select-date-st' %}"><button type="button" class="w3-button w3-red button4">Go back</button></a> <input class="w3-button w3-green button4 w3-margin" type="submit" value="View"> </form> </table> diff --git a/student/templates/student/view_film.html b/student/templates/student/view_film.html index 34e593fa99c640e07008c4088d253923f9ed018f..eb14c1bf9ca16c58e567e6261f3cd483c15adb98 100644 --- a/student/templates/student/view_film.html +++ b/student/templates/student/view_film.html @@ -11,10 +11,10 @@ </header> <div class="w3-section w3-bottombar w3-padding-16 "> <a href="{% url 'home-page' %}" class="w3-button w3-black">UWEFLIX</a> - <a href="{% url 'select-date-cr' %}" class="w3-button w3-black">Select Date </a> - <a href="{% url 'showings_list-cr' date %}" class="w3-button w3-black" >Showings </a> - <a href="{% url 'view-film' film_id %}" class="w3-button w3-blue">Ticket </a> - <a href="{% url 'user-logout' %}" class="w3-button w3-white">Log Out</a> + <a href="{% url 'select-date-st' %}" class="w3-button w3-black">Select Date </a> + <a href="{% url 'showings_list-st' date %}" class="w3-button w3-black" >Showings </a> + <a href="{% url 'view-film-st' film_id %}" class="w3-button w3-blue">Ticket </a> + <a href="{% url 'user-logout-st' %}" class="w3-button w3-white">Log Out</a> </div> @@ -65,7 +65,7 @@ <input type="Number" name="tickets" id="tickets" min="10" max="50"> <br> - <a href="{% url 'showings_list-cr' date %}"><button type="button" class="w3-button w3-red button4">Go back</button></a> + <a href="{% url 'showings_list-st' date %}"><button type="button" class="w3-button w3-red button4">Go back</button></a> <input class="w3-button w3-green button4 w3-margin" type="submit" value="Buy"> </form> </table> diff --git a/student/urls.py b/student/urls.py index f8a245eb477c568e4575801f011d4ac15ad66335..4eee69e8b8badd0765a392a785dd8c217547c209 100644 --- a/student/urls.py +++ b/student/urls.py @@ -11,19 +11,17 @@ urlpatterns = [ #path('register-club-rep/<str:pk>/', views.register_club_rep, name='register-club-rep'), #path('delete-club-rep/<str:pk>/', views.delete_club_rep, name='delete-club-rep'), - path('selectdate/', views.select_date, name='select-date-cr'), + path('selectdate/', views.select_date, name='select-date-st'), - path('club-balance/', views.club_balance, name='club_balance'), + path('transactions', views.view_transactions, name='view-all-transactions-st'), + path('transactions/<str:selected_month>/?', views.view_transactions, name='view-month-transactions-st'), + path('showing/<str:selected_date>/', views.showings_list, name='showings_list-st'), + path('view/<str:pk>/', views.view_film, name='view-film-st'), + path('booking/<str:pk>/<str:numb_of_tickets>', views.view_booking, name='view-booking-st'), - path('transactions', views.view_transactions, name='view-all-transactions'), - path('transactions/<str:selected_month>/?', views.view_transactions, name='view-month-transactions'), - path('showing/<str:selected_date>/', views.showings_list, name='showings_list-cr'), - path('view/<str:pk>/', views.view_film, name='view-film'), - path('booking/<str:pk>/<str:numb_of_tickets>', views.view_booking, name='view-booking'), + path('view/<str:pk>/<str:message>/?', views.view_film, name='view-film-error-st'), - path('view/<str:pk>/<str:message>/?', views.view_film, name='view-film-error'), - - path('logout/', views.user_logout, name='user-logout') + path('logout/', views.user_logout, name='user-logout-st') #path('<str:message>/?', views.login, name='login-error') , diff --git a/student/views.py b/student/views.py index 878bb48e2dbac4718849f2ac2622d3c028c68da3..29c666471a8f83d780d87eb73e482569f9cf5820 100644 --- a/student/views.py +++ b/student/views.py @@ -43,7 +43,7 @@ def select_date(request): 'cursor': cursor, 'selected_date': selected_date, } - return redirect('showings_list-cr',selected_date ) + return redirect('showings_list-st',selected_date ) return render(request, 'student/select_date.html') @@ -112,7 +112,7 @@ def view_film(request, pk, message=None): if numb_of_tickets > tickets_available: print("not ennough tickets") message = (f"There are not enough tickets available. \n Tickets Available: {tickets_available} ") - return redirect('view-film-error',pk=pk , message=message) + return redirect('view-film-error-st',pk=pk , message=message) elif numb_of_tickets <= tickets_available: @@ -127,9 +127,9 @@ def view_film(request, pk, message=None): if int(balance) < int(price_after): message = (f"Insufficient balance in club account. \n Club Balance: £{balance} ") - return redirect('view-film-error' ,pk=pk , message=message ) + return redirect('view-film-error-st' ,pk=pk , message=message ) else: - return redirect('view-booking', pk=pk ,numb_of_tickets=numb_of_tickets) + return redirect('view-booking-st', pk=pk ,numb_of_tickets=numb_of_tickets) @@ -211,24 +211,21 @@ def view_booking(request, pk, numb_of_tickets): Bookings.insert_one(document2) + ''' club_id = ObjectId(request.session['ClubID']) - results = Clubs.find_one({'_id': club_id}) balance = results['Balance'] - new_balance = int(balance) - int(price_after) - - - document={"Balance": new_balance, - } - + new_balance = int(balance) - int(price_after) + document={"Balance": new_balance,} result = Clubs.update_one({'_id': club_id},{'$set': document} ) + ''' if result.modified_count == 1: # Document successfully updated print(f"Document with _id updated.") message = "Your login credentials were not found. Please try again." - return redirect('view-all-transactions' ) + return redirect('view-all-transactions-st' ) else: # Document not found print(f"No document found with _id.") @@ -382,100 +379,12 @@ def view_transactions(request , selected_month=None): - - - - - - -def club_balance(request ): - if request.session.get('loggedin', False): - - - club_id = ObjectId(request.session['ClubID']) - print(club_id) - - - - #cursor = Clubs.find({"Number": number}) - - - - #joins 2 collections together and matches the by local and foreign id - pipeline = [ - { - '$match': { - 'Club_id': club_id # Replace <club_id> with the ID of the club you want to filter by - } - }, - - { - '$lookup': { - 'from': 'Clubs', - 'localField': 'Club_id', - 'foreignField': '_id', - 'as': 'clubs' - } - }, - - { - '$project': { - '_id': 1, - 'FirstName': 1, - 'LastName': 1, - 'DOB': 1, - 'clubs._id': 1, - 'clubs.Name': 1, - 'clubs.HouseNumber': 1, - 'clubs.Street': 1, - 'clubs.City': 1, - 'clubs.PostCode': 1, - 'clubs.TelephoneNumber': 1, - 'clubs.PhoneNumber': 1, - 'clubs.Email': 1, - 'clubs.Balance': 1, - } - } - ] - - result = client['test']['Accounts'].aggregate(pipeline) - - data = [doc for doc in result] - #print(data) - - if request.POST.get('funds'): - funds = request.POST.get('funds') - - - results = Clubs.find_one({'_id': club_id}) - balance = results['Balance'] - new_balance = int(balance) + int(funds) - - - document={"Balance": new_balance, - } - - result = Clubs.update_one({'_id': club_id},{'$set': document} ) - - - return redirect( 'club_balance') - - context = { - 'data': data, - } - return render(request, 'student/club.html', context) - else: - return redirect('/login/') - - - def user_logout(request): del request.session['loggedin'] namey2 = request.session['Name'] print(namey2) del request.session['UserID'] del request.session['Name'] - del request.session['ClubID'] return redirect('/login/') #return redirect('home-page')