Added django templates and dynamic pages
@ -1,3 +1,3 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
docker build -t docker-django .
|
docker build --network=host -t docker-django .
|
||||||
|
@ -0,0 +1,16 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<title>Auth0 Example</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
{% if session %}
|
||||||
|
<h1>Welcome {{session.userinfo.name}}!</h1>
|
||||||
|
<p><a href="{% url 'logout' %}">Logout</a></p>
|
||||||
|
<div><pre>{{pretty}}</pre></div>
|
||||||
|
{% else %}
|
||||||
|
<h1>Welcome Guest</h1>
|
||||||
|
<p><a href="{% url 'login' %}">Login</a></p>
|
||||||
|
{% endif %}
|
||||||
|
</body>
|
||||||
|
</html>
|
192
frontend/static/FAQ.html
Normal file
@ -0,0 +1,192 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>SeatStock</title>
|
||||||
|
<link rel="stylesheet" href="style.css">
|
||||||
|
<script src="script.js"></script>
|
||||||
|
<link rel="icon" type="image/png" href="static/favicon.png" sizes="32x32">
|
||||||
|
<link rel="icon" type="image/vnd.microsoft.icon" href="static/favicon.ico" sizes="16x16">
|
||||||
|
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<!-- **** HEADER ******************** **** -->
|
||||||
|
<logo><a href="index.html">SeatStock</a></logo>
|
||||||
|
<signinButton><a href="login">Sign In</a></signinButton>
|
||||||
|
<faqButton><a href="static/FAQ.html">How it Works</a></faqButton>
|
||||||
|
<tixButton><a href="tickets.html">Your Tickets</a></tixButton>
|
||||||
|
|
||||||
|
<!-- *************** BODY ******************** **** -->
|
||||||
|
|
||||||
|
<br><br>
|
||||||
|
<div class="how-it-works-title">
|
||||||
|
<b>How SeatStock Works:</b>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="how-it-works-container">
|
||||||
|
<div class="how-it-works-buy">
|
||||||
|
|
||||||
|
<div class="how-it-works-titles">
|
||||||
|
<b>Buying:</b>
|
||||||
|
</div> <br>
|
||||||
|
<img src="icons/buyicon.png" class="icons">
|
||||||
|
<div class="how-it-works-bold"><br><b>Choose your Game</b></div>
|
||||||
|
<div class="how-it-works">
|
||||||
|
Log in with your school email
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<img src="icons/tagicon.png" class="icons">
|
||||||
|
<div class="how-it-works-bold"><br><b>Find the right price</b></div>
|
||||||
|
<div class="how-it-works">
|
||||||
|
Pay with our SeatStock Guarantee
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<img src="icons/circleicon.png" class="icons">
|
||||||
|
<div class="how-it-works-bold"><br><b>Accept the ticket transfer</b></div>
|
||||||
|
<div class="how-it-works">
|
||||||
|
If you did not recieve your ticket please contact us
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="how-it-works-sell">
|
||||||
|
|
||||||
|
<div class="how-it-works-titles">
|
||||||
|
<b>Sell:</b>
|
||||||
|
</div> <br>
|
||||||
|
<img src="icons/selecticon.png" class="icons">
|
||||||
|
<div class="how-it-works-bold"><br><b>List your ticket</b></div>
|
||||||
|
<div class="how-it-works">
|
||||||
|
Or instant sell your ticket
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<img src="static/icons/sendicon.png" class="icons">
|
||||||
|
<div class="how-it-works-bold"><br><b>Send your ticket to the buyer</b></div>
|
||||||
|
<div class="how-it-works">
|
||||||
|
Through your school ticket portal
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<img src="static/icons/recieveicon.png" class="icons">
|
||||||
|
<div class="how-it-works-bold"><br><b>Get paid</b></div>
|
||||||
|
<div class="how-it-works">
|
||||||
|
After the buyer confirms their ticket
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<br><br><br><br>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<div class="how-it-works-title">
|
||||||
|
<b>Our Guarantee:</b>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="guarantee-container">
|
||||||
|
|
||||||
|
<img src="icons/secureicon.png" class="guarantee-icons">
|
||||||
|
<div class="guarantee-titles">
|
||||||
|
<b>Secure</b>
|
||||||
|
</div>
|
||||||
|
<div class="guarantee-body">
|
||||||
|
No sketchy buyers or sellers, we
|
||||||
|
handle everything to make sure you
|
||||||
|
can buy and sell with confidence
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
-->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="faq-header"><b>Frequently Asked Questions:</b></div>
|
||||||
|
<div class="faq-container">
|
||||||
|
<div class="faq-info">
|
||||||
|
<faqtitles><br><b>What is SeatStock?</b><br></faqtitles>
|
||||||
|
SeatStock is a marketplace designed for students to buy and sell tickets for various events. The platform is easy to use, secure, and convenient, making the ticket-buying process hassle-free and more transparent.
|
||||||
|
|
||||||
|
<faqtitles><br><br><b>How does SeatStock work?</b><br></faqtitles>
|
||||||
|
SeatStock works in a simple, user-friendly manner. First, you create an account using your valid .edu email address. Then, you can browse through available tickets for various events. If you're interested in a particular event, you can purchase the ticket directly through the app. If you have tickets to sell, you can list them on the marketplace for other students to buy.
|
||||||
|
|
||||||
|
<faqtitles><br><br><b>Is SeatStock safe to use?</b><br></faqtitles>
|
||||||
|
Absolutely! SeatStock prioritizes the safety and security of its users. We employ stringent verification processes for all ticket sellers and ensure that all transactions are safe and secure.
|
||||||
|
|
||||||
|
<faqtitles><br><br><b>What kind of events are listed on SeatStock?</b><br></faqtitles>
|
||||||
|
SeatStock features a wide array of events football tickets, basketball tickets, and many more. We strive to cater to a broad spectrum of interests to ensure there's something for everyone.
|
||||||
|
|
||||||
|
<faqtitles><br><br><b>What are the payment options available on Seat Stock?</b><br></faqtitles>
|
||||||
|
SeatStock accepts various payment methods including credit cards, debit cards, and secure online payment platforms. We aim to make the ticket-purchasing process as convenient as possible for our users.
|
||||||
|
|
||||||
|
<faqtitles><br><br><b>Can I sell my ticket if I can no longer attend an event?</b><br></faqtitles>
|
||||||
|
Yes, SeatStock is not just a platform for buying tickets but also selling. If for any reason you can't attend an event, you can sell your ticket on the app to other interested students.
|
||||||
|
|
||||||
|
<faqtitles><br><br><b>How do I list my tickets for sale on SeatStock?</b><br></faqtitles>
|
||||||
|
Listing your tickets for sale on SeatStock is easy. Simply log in to your account, click on the 'Sell Tickets' button, fill in the necessary details about the event, and set your price. Once your listing is live, other students can view and purchase your ticket.
|
||||||
|
|
||||||
|
<faqtitles><br><br><b>What happens if an event is cancelled?</b><br></faqtitles>
|
||||||
|
In the unfortunate event that an event is cancelled, SeatStock will facilitate a full refund for those who purchased tickets through the app. We value our users and strive to ensure a fair and hassle-free experience.
|
||||||
|
|
||||||
|
<faqtitles><br><br><b>Can I use SeatStock if I am not a student?</b><br></faqtitles>
|
||||||
|
SeatStock is exclusively designed for students. To create an account and use the platform, a valid .edu email address is required. This helps us maintain a secure and reliable marketplace tailored specifically for the student community.
|
||||||
|
|
||||||
|
<faqtitles><br><br><b>What if I have a question or issue while using SeatStock?</b><br></faqtitles>
|
||||||
|
Our dedicated customer service team is always ready to assist. If you have any questions or face any issues while using Seat Stock, you can reach out to us through the contact information provided in the app. We aim to provide a quick and satisfactory resolution to all queries and concerns.
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- **************** FOOTER******************** **** -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<footer>
|
||||||
|
<p>© 2023 SeatStock V. All rights reserved. </p>
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|
BIN
frontend/static/gameimages/iowavmichiganst.png
Normal file
After Width: | Height: | Size: 582 KiB |
BIN
frontend/static/gameimages/iowavminnesota.png
Normal file
After Width: | Height: | Size: 91 KiB |
BIN
frontend/static/gameimages/iowavpurdue.png
Normal file
After Width: | Height: | Size: 206 KiB |
BIN
frontend/static/gameimages/iowavrutgers.png
Normal file
After Width: | Height: | Size: 300 KiB |
BIN
frontend/static/icons/buyicon.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
frontend/static/icons/circleicon.png
Normal file
After Width: | Height: | Size: 4.9 KiB |
BIN
frontend/static/icons/recieveicon.png
Normal file
After Width: | Height: | Size: 3.4 KiB |
BIN
frontend/static/icons/secureicon.png
Normal file
After Width: | Height: | Size: 5.4 KiB |
BIN
frontend/static/icons/selecticon.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
frontend/static/icons/sendicon.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
frontend/static/icons/stadiumicon.png
Normal file
After Width: | Height: | Size: 108 KiB |
BIN
frontend/static/icons/tagicon.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
15
frontend/static/script.js
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
let USER_SIGNED_IN = false;
|
||||||
|
|
||||||
|
function check_sign_in(game) {
|
||||||
|
const is_user_signed_in = localStorage.getItem("USER_SIGNED_IN");
|
||||||
|
|
||||||
|
if (is_user_signed_in !== null && is_user_signed_in === 'true') {
|
||||||
|
window.location.href = "./buy.html?game=" + game;
|
||||||
|
} else {
|
||||||
|
window.location.href = "./signin.html";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function set_user_signed_in() {
|
||||||
|
localStorage.setItem('USER_SIGNED_IN', true);
|
||||||
|
}
|
735
frontend/static/style.css
Normal file
@ -0,0 +1,735 @@
|
|||||||
|
body{
|
||||||
|
background-color: rgb(255,255,255);
|
||||||
|
font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
|
||||||
|
overflow-y: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/********************** HEADER ****************************/
|
||||||
|
logo{
|
||||||
|
text-align: left;
|
||||||
|
font-size:40px;
|
||||||
|
padding-left: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
signinButton, faqButton{
|
||||||
|
margin: 5px;
|
||||||
|
float: right;
|
||||||
|
padding: 20px;
|
||||||
|
font-size: 15px;
|
||||||
|
background-color: rgb(218,54,54);
|
||||||
|
color:white;
|
||||||
|
border:none;
|
||||||
|
padding: 10px 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
tixButton{
|
||||||
|
margin: 5px;
|
||||||
|
float: right;
|
||||||
|
padding: 20px;
|
||||||
|
font-size: 17px;
|
||||||
|
color:black;
|
||||||
|
border:none;
|
||||||
|
padding: 10px 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
a{
|
||||||
|
text-decoration: none;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
logo a{
|
||||||
|
color:black;
|
||||||
|
}
|
||||||
|
tixButton a{
|
||||||
|
color:black;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
/********************** HOME BODY ****************************/
|
||||||
|
|
||||||
|
.home-info-title1{
|
||||||
|
font-size: 29px;
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
padding-left:30px;
|
||||||
|
}
|
||||||
|
.search-container {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
padding-top:20px
|
||||||
|
}
|
||||||
|
|
||||||
|
#searchInput{
|
||||||
|
width:600px;
|
||||||
|
height:35px;
|
||||||
|
margin:0;
|
||||||
|
padding-left:20px;
|
||||||
|
font-size: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-button {
|
||||||
|
margin: 5px;
|
||||||
|
font-size:15px;
|
||||||
|
background-color:rgb(218, 54, 54);
|
||||||
|
color:white;
|
||||||
|
border:none;
|
||||||
|
padding: 10px 20px;
|
||||||
|
border-radius: 20px;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
.home-info-title2{
|
||||||
|
font-size: 29px;
|
||||||
|
padding-top: 50px;
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
}
|
||||||
|
.home-info-title3{
|
||||||
|
font-size: 25px;
|
||||||
|
padding-top: 10px;
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.box {
|
||||||
|
width: 370px;
|
||||||
|
height: 500px;
|
||||||
|
margin: 10px;
|
||||||
|
margin-left: 25px;
|
||||||
|
padding: 20px;
|
||||||
|
border: 2px solid #000;
|
||||||
|
border-radius: 10px;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.clearfix::after {
|
||||||
|
content: "";
|
||||||
|
display: table;
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.game-container{
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
.game-window{
|
||||||
|
height:500px;
|
||||||
|
border: 1px solid black;
|
||||||
|
margin:0 70px;
|
||||||
|
border-radius: 10px;
|
||||||
|
flex:1;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.game-window-title{
|
||||||
|
font-size: 30px;
|
||||||
|
padding:10px;
|
||||||
|
padding-left: 50px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.game-window-image{
|
||||||
|
width: 100%;
|
||||||
|
height: 300px;
|
||||||
|
border-radius: 10px;
|
||||||
|
display: block;
|
||||||
|
|
||||||
|
}
|
||||||
|
.buy-or-bid{
|
||||||
|
margin: 5px;
|
||||||
|
font-size:25px;
|
||||||
|
background-color:rgb(218, 54, 54);
|
||||||
|
color:white;
|
||||||
|
border:none;
|
||||||
|
padding: 20px 20px;
|
||||||
|
border-radius: 5px;
|
||||||
|
margin-left: 35px;
|
||||||
|
}
|
||||||
|
.sell-home{
|
||||||
|
margin: 5px;
|
||||||
|
font-size:25px;
|
||||||
|
background-color:rgb(218, 54, 54);
|
||||||
|
color:white;
|
||||||
|
border:none;
|
||||||
|
padding: 20px 20px;
|
||||||
|
border-radius: 5px;
|
||||||
|
}
|
||||||
|
marketData a{
|
||||||
|
|
||||||
|
color:black;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* **************** SIGNIN BODY *********************** */
|
||||||
|
|
||||||
|
.signin-body{
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
transform: translate(-50%, -50%);
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
height: 400px;
|
||||||
|
width: 400px;
|
||||||
|
padding: 20px;
|
||||||
|
border: 2px solid #000;
|
||||||
|
border-radius: 10px;
|
||||||
|
margin-left:10px
|
||||||
|
}
|
||||||
|
.form-name{
|
||||||
|
font-size: 35px;
|
||||||
|
padding-left: 20px;
|
||||||
|
}
|
||||||
|
.form-name-subtitle{
|
||||||
|
font-size:15x;
|
||||||
|
padding-bottom: 25px;
|
||||||
|
padding-left: 20px;
|
||||||
|
color:#B3B3B3;
|
||||||
|
}
|
||||||
|
.stuff{
|
||||||
|
padding-left: 20px;
|
||||||
|
padding-top: 20px;
|
||||||
|
|
||||||
|
}
|
||||||
|
input[type=text]{ /*username*/
|
||||||
|
-webkit-border-radius: 20px;
|
||||||
|
-moz-border-radius: 20px;
|
||||||
|
border-radius: 10px;
|
||||||
|
border: 1px solid black;
|
||||||
|
color: black;
|
||||||
|
width: 330px;
|
||||||
|
height: 35px;
|
||||||
|
padding-left: 10px;
|
||||||
|
}
|
||||||
|
input[type=password]{
|
||||||
|
-webkit-border-radius: 20px;
|
||||||
|
-moz-border-radius: 20px;
|
||||||
|
border-radius: 10px;
|
||||||
|
border: 1px solid black;
|
||||||
|
color:black;
|
||||||
|
width: 330px;
|
||||||
|
height: 35px;
|
||||||
|
padding-left: 10px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.remember-me-container{
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.sign-in-checkbox{
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
}
|
||||||
|
.sign-in-checkbox-label{
|
||||||
|
margin-left:5px;
|
||||||
|
}
|
||||||
|
.sign-in-button-container{
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
.sign-in-button{
|
||||||
|
|
||||||
|
margin-top:15px;
|
||||||
|
padding:20px;
|
||||||
|
font-size:15px;
|
||||||
|
background-color:rgb(218, 54, 54);
|
||||||
|
color:white;
|
||||||
|
border:none;
|
||||||
|
padding: 10px 150px;
|
||||||
|
border-radius: 20px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.sign-up-link{
|
||||||
|
padding-top:15px;
|
||||||
|
font-size: 20px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
color:black;
|
||||||
|
text-decoration: underline;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* **************** SIGNUP BODY *********************** */
|
||||||
|
.signup-body{
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
transform: translate(-50%, -50%);
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
margin-top:100px;
|
||||||
|
height: 650px;
|
||||||
|
width: 500px;
|
||||||
|
padding: 20px;
|
||||||
|
border: 2px solid #000;
|
||||||
|
border-radius: 10px;
|
||||||
|
margin-left:10px
|
||||||
|
}
|
||||||
|
.form-name{
|
||||||
|
font-size: 35px;
|
||||||
|
padding-left: 20px;
|
||||||
|
}
|
||||||
|
.form-name-subtitle{
|
||||||
|
font-size:15x;
|
||||||
|
padding-bottom: 25px;
|
||||||
|
padding-left: 20px;
|
||||||
|
color:#B3B3B3;
|
||||||
|
}
|
||||||
|
.stuff{
|
||||||
|
padding-left: 20px;
|
||||||
|
padding-top: 20px;
|
||||||
|
|
||||||
|
}
|
||||||
|
input[type=text]{ /*username*/
|
||||||
|
-webkit-border-radius: 20px;
|
||||||
|
-moz-border-radius: 20px;
|
||||||
|
border-radius: 10px;
|
||||||
|
border: 1px solid black;
|
||||||
|
color: black;
|
||||||
|
width: 330px;
|
||||||
|
height: 35px;
|
||||||
|
padding-left: 10px;
|
||||||
|
}
|
||||||
|
input[type=password]{
|
||||||
|
-webkit-border-radius: 20px;
|
||||||
|
-moz-border-radius: 20px;
|
||||||
|
border-radius: 10px;
|
||||||
|
border: 1px solid black;
|
||||||
|
color:black;
|
||||||
|
width: 330px;
|
||||||
|
height: 35px;
|
||||||
|
padding-left: 10px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.promotions-container{
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.promotion-checkbox{
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
}
|
||||||
|
.promotion-checkbox-label{
|
||||||
|
margin-left:20px;
|
||||||
|
font-size:15px
|
||||||
|
}
|
||||||
|
.terms-container{
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
}
|
||||||
|
.terms-checkbox{
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
}
|
||||||
|
.terms-checkbox-label{
|
||||||
|
margin-left:20px;
|
||||||
|
font-size:15px
|
||||||
|
}
|
||||||
|
.sign-in-button-container{
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
.sign-up-button{
|
||||||
|
|
||||||
|
margin-top:15px;
|
||||||
|
padding:20px;
|
||||||
|
font-size:15px;
|
||||||
|
background-color:rgb(218, 54, 54);
|
||||||
|
color:white;
|
||||||
|
border:none;
|
||||||
|
padding: 10px 150px;
|
||||||
|
border-radius: 20px;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* *************** SELL BODY ************************ */
|
||||||
|
.sell-body {
|
||||||
|
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
transform: translate(-50%, -50%);
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
height: 600px;
|
||||||
|
width: 500px;
|
||||||
|
padding: 20px;
|
||||||
|
border: 2px solid #000;
|
||||||
|
border-radius: 10px;
|
||||||
|
margin-top:120px;
|
||||||
|
margin-left:10px
|
||||||
|
}
|
||||||
|
.sell-game-title{
|
||||||
|
font-size: 25px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.sell-body label {
|
||||||
|
font-size: 20px;
|
||||||
|
text-align: right;
|
||||||
|
width: 80px;
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sumbit-price{
|
||||||
|
font-size: 25px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* *************** BUY BODY ************************ */
|
||||||
|
|
||||||
|
|
||||||
|
.buy-body {
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
transform: translate(-50%, -50%);
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
height: 700px;
|
||||||
|
width: 500px;
|
||||||
|
padding: 20px;
|
||||||
|
border: 2px solid #000;
|
||||||
|
border-radius: 10px;
|
||||||
|
margin-top:120px;
|
||||||
|
margin-left:10px
|
||||||
|
}
|
||||||
|
.buy-game-title{
|
||||||
|
font-size: 30px;
|
||||||
|
}
|
||||||
|
.buy-stadium-icon{
|
||||||
|
width:250px;
|
||||||
|
height:250px;
|
||||||
|
}
|
||||||
|
.buy-game-info{
|
||||||
|
font-size:12px;
|
||||||
|
color:#B3B3B3;
|
||||||
|
}
|
||||||
|
.place-bid-button{
|
||||||
|
font-size: 20px;
|
||||||
|
margin-right:20px;
|
||||||
|
padding-right:10px;
|
||||||
|
}
|
||||||
|
.buy-button{
|
||||||
|
font-size: 20px;
|
||||||
|
}
|
||||||
|
.price-box{
|
||||||
|
border: 2px solid #000;
|
||||||
|
border-radius: 10px;
|
||||||
|
height:400px;
|
||||||
|
width:300px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
padding-left:20px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.subtotal{
|
||||||
|
display: flex; /* Create a row layout */
|
||||||
|
justify-content: space-between;
|
||||||
|
margin-bottom: 5px;
|
||||||
|
padding-top:10px;
|
||||||
|
padding-right:15px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.subtotal-title{
|
||||||
|
font-size: 20px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.subtotal-amount {
|
||||||
|
float:right;
|
||||||
|
color:green
|
||||||
|
|
||||||
|
}
|
||||||
|
.purchase-price{
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
margin-bottom: 5px;
|
||||||
|
padding-right:15px;
|
||||||
|
}
|
||||||
|
.purchase-price-title{
|
||||||
|
font-size: 15px;
|
||||||
|
}
|
||||||
|
.purchase-price-amount{
|
||||||
|
float:right;
|
||||||
|
color:black;
|
||||||
|
font-size: 15px;
|
||||||
|
}
|
||||||
|
.transaction-fee{
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
font-size: 20px;
|
||||||
|
margin-bottom: 5px;
|
||||||
|
padding-right:15px;
|
||||||
|
}
|
||||||
|
.transaction-fee-title{
|
||||||
|
font-size: 15px;
|
||||||
|
}
|
||||||
|
.transaction-fee-amount{
|
||||||
|
float:right;
|
||||||
|
color:black;
|
||||||
|
font-size: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.processing-fee{
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
font-size: 20px;
|
||||||
|
padding-right:15px;
|
||||||
|
}
|
||||||
|
.processing-fee-title{
|
||||||
|
font-size: 15px;
|
||||||
|
}
|
||||||
|
.processing-fee-amount{
|
||||||
|
float:right;
|
||||||
|
color:black;
|
||||||
|
font-size: 15px;
|
||||||
|
}
|
||||||
|
.agree-container{
|
||||||
|
display:flex;
|
||||||
|
}
|
||||||
|
.checkbox-label{
|
||||||
|
display:flex;
|
||||||
|
float:right;
|
||||||
|
}
|
||||||
|
.terms-of-service{
|
||||||
|
color:black;
|
||||||
|
text-decoration:underline;
|
||||||
|
}
|
||||||
|
input[type=checkbox]{
|
||||||
|
float:left;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* *************** FAQ BODY ************************ */
|
||||||
|
.how-it-works-container{
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
.how-it-works-buy{
|
||||||
|
width:50%;
|
||||||
|
padding:20px;
|
||||||
|
}
|
||||||
|
.how-it-works-sell{
|
||||||
|
width:50%;
|
||||||
|
padding:20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.how-it-works-title{
|
||||||
|
color:rgb(218, 54, 54);
|
||||||
|
padding-top:30px;
|
||||||
|
font-size:35px;
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
.how-it-works-titles{
|
||||||
|
color:black;
|
||||||
|
padding-top:30px;
|
||||||
|
padding-left: 20px;
|
||||||
|
font-size:35px;
|
||||||
|
display:flex;
|
||||||
|
justify-content: left;
|
||||||
|
}
|
||||||
|
.icons{
|
||||||
|
float:left;
|
||||||
|
padding:20px;
|
||||||
|
height:40px;
|
||||||
|
width:40px;
|
||||||
|
display:flex;
|
||||||
|
}
|
||||||
|
.how-it-works-bold{
|
||||||
|
color:black;
|
||||||
|
padding-top:20px;
|
||||||
|
padding-left: 20px;
|
||||||
|
font-size:25px;
|
||||||
|
display:flex;
|
||||||
|
justify-content: left;
|
||||||
|
}
|
||||||
|
.how-it-works{
|
||||||
|
color:black;
|
||||||
|
padding-left: 20px;
|
||||||
|
font-size:20px;
|
||||||
|
display:flex;
|
||||||
|
justify-content: left;
|
||||||
|
}
|
||||||
|
.guarantee-icons{
|
||||||
|
padding:20px;
|
||||||
|
height:75px;
|
||||||
|
width:75px;
|
||||||
|
display:flex;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
.guarentee-container{
|
||||||
|
display:flex;
|
||||||
|
justify-content:center;
|
||||||
|
}
|
||||||
|
.guarantee-titles{
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
font-size:30px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.guarantee-body{
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
font-size:20px;
|
||||||
|
width:400px;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.faq-container{
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
.faq-header{
|
||||||
|
color:rgb(218, 54, 54);
|
||||||
|
padding-top:30px;
|
||||||
|
font-size:35px;
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
.faqtitles{
|
||||||
|
color:rgb(218, 54, 54);
|
||||||
|
font-size:20px;
|
||||||
|
width:100%;
|
||||||
|
max-width:800px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.faq-info{
|
||||||
|
padding-left: 20px;
|
||||||
|
font-size:17px;
|
||||||
|
width:850px;
|
||||||
|
line-height:1.4;
|
||||||
|
width:90%;
|
||||||
|
max-width: 900px;
|
||||||
|
|
||||||
|
}
|
||||||
|
/* ***************** TICKETS BODY ************************ */
|
||||||
|
.tab {
|
||||||
|
overflow: hidden;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
background-color: #f1f1f1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.tab button {
|
||||||
|
background-color: inherit;
|
||||||
|
float: left;
|
||||||
|
border: none;
|
||||||
|
outline: none;
|
||||||
|
cursor: pointer;
|
||||||
|
padding: 14px 16px;
|
||||||
|
transition: 0.3s;
|
||||||
|
font-size: 17px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.tab button:hover {
|
||||||
|
background-color: #ddd;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.tab button.active {
|
||||||
|
background-color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.tabcontent {
|
||||||
|
display: none;
|
||||||
|
padding: 6px 12px;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
border-top: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* ***************** TERMS BODY ************************ */
|
||||||
|
|
||||||
|
.terms-container{
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
width:90%;
|
||||||
|
max-width: 900px;
|
||||||
|
padding-left: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* ***************** FOOTER ************************ */
|
||||||
|
.footer{
|
||||||
|
height:200px;
|
||||||
|
width:100%;
|
||||||
|
background-color: black;
|
||||||
|
color:white
|
||||||
|
}
|
100
frontend/static/termsofservice.html
Normal file
@ -0,0 +1,100 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>SeatStock</title>
|
||||||
|
<link rel="stylesheet" href="static/style.css">
|
||||||
|
<script src="static/script.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<!-- ************************ HEADER *************** -->
|
||||||
|
<logo><a href="index.html">SeatStock</a></logo>
|
||||||
|
<signinButton><a href="login">Sign In</a></signinButton>
|
||||||
|
<faqButton><a href="static/FAQ.html">How it Works</a></faqButton>
|
||||||
|
<tixButton><a href="tickets.html">Your Tickets</a></tixButton>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- *********************** BODY *********** -->
|
||||||
|
<div class="terms-container">
|
||||||
|
<br>SeatStock Website Terms and Conditions<br>
|
||||||
|
Welcome to SeatStock! These terms and conditions ("Agreement") govern your use of the SeatStock website ("Website"). By accessing or using our Website, you agree to comply with and be bound by these terms and conditions. If you disagree with any part of this Agreement, please do not use our Website.<br>
|
||||||
|
|
||||||
|
1. Acceptance of Terms
|
||||||
|
By using the SeatStock Website, you acknowledge that you have read, understood, and accepted the terms and conditions outlined in this Agreement. Your use of the Website is contingent on your compliance with these terms.
|
||||||
|
|
||||||
|
<br>2. Eligibility and Registration
|
||||||
|
2.1 Eligibility: To use the SeatStock Website, you must be of legal age in your jurisdiction. By using our Website, you confirm that you meet this requirement.
|
||||||
|
2.2 Account Registration: Certain features of our Website may require you to register an account. You are responsible for providing accurate and up-to-date information during the registration process.
|
||||||
|
|
||||||
|
<br>3. User Content and Rights
|
||||||
|
3.1 User-Generated Content: Any content, information, or materials you provide, submit, or display on the SeatStock Website are your sole responsibility. By using our Website, you grant SeatStock a non-exclusive license to use, modify, display, and distribute your content as needed for the operation and improvement of the Website.
|
||||||
|
|
||||||
|
<br>4. Intellectual Property
|
||||||
|
4.1 Ownership: All content, including text, graphics, logos, images, software, and other materials found on the SeatStock Website, is either owned by SeatStock or licensed to us. This content is protected by applicable intellectual property laws.
|
||||||
|
4.2 User Content: You maintain ownership of the content you submit to the SeatStock Website. By submitting content, you grant SeatStock the right to utilize and showcase that content as described in this Agreement.
|
||||||
|
|
||||||
|
<br>5. Privacy and Data Protection
|
||||||
|
Your use of the SeatStock Website is governed by our Privacy Policy, which details how we collect, use, and safeguard your information. Please review our Privacy Policy to understand our practices.
|
||||||
|
|
||||||
|
<br>6. Account Termination
|
||||||
|
SeatStock reserves the right to suspend or terminate your account and access to the Website for any reason, with or without notice, should you breach this Agreement or engage in any prohibited activities.
|
||||||
|
|
||||||
|
<br>7. Disclaimers and Limitation of Liability
|
||||||
|
7.1 No Warranty: The SeatStock Website is provided "as-is" and "as-available," without any warranties, whether expressed or implied.
|
||||||
|
7.2 Limitation of Liability: SeatStock shall not be liable for any indirect, incidental, special, consequential, or punitive damages, or any loss of profits, data, goodwill, or other intangible losses, whether directly or indirectly incurred from your use of the SeatStock Website.
|
||||||
|
|
||||||
|
<br>8. Governing Law
|
||||||
|
This Agreement is governed by and construed in accordance with the laws of [Jurisdiction], without regard to its conflict of law principles.
|
||||||
|
|
||||||
|
<br>9. Modifications to Agreement
|
||||||
|
SeatStock reserves the right to modify this Agreement at any time. We will notify you of changes by posting the updated Agreement on the SeatStock Website. Your continued use of the Website after the effective date of the revised Agreement constitutes your acceptance of the updated terms.
|
||||||
|
|
||||||
|
<br>10. Contact Us
|
||||||
|
For inquiries or concerns about this Agreement or the SeatStock Website, please contact us at [Contact us].
|
||||||
|
By using the SeatStock Website, you signify your agreement to adhere to these terms and conditions. If you do not agree with these terms, please refrain from using the SeatStock Website.
|
||||||
|
|
||||||
|
This revised Agreement maintains the same essential elements as your previous request while using different wording. Please consult legal professionals to ensure this Agreement aligns with your specific business needs and complies with applicable laws in your jurisdiction before implementing it.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|
117
frontend/templates/buy.html
Normal file
@ -0,0 +1,117 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>SeatStock</title>
|
||||||
|
<link rel="stylesheet" href="static/style.css">
|
||||||
|
<script src="static/script.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<!-- ******************** HEADER ************ -->
|
||||||
|
<logo><a href="index.html">SeatStock</a></logo>
|
||||||
|
<signinButton><a href="signin.html">Sign In</a></signinButton>
|
||||||
|
<faqButton><a href="FAQ.html">How it Works</a></faqButton>
|
||||||
|
<tixButton><a href="tickets.html">Your Tickets</a></tixButton>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- *********************** BODY *********** -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="buy-body">
|
||||||
|
<div class="buy-game-title" id="buy-game-title"></div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
const game = new URLSearchParams(window.location.search).get("game");
|
||||||
|
console.log(game);
|
||||||
|
const game_title = document.getElementById("buy-game-title");
|
||||||
|
if (game === "iowavmichiganst") {
|
||||||
|
game_title.textContent = "Iowa vs Michigan State"
|
||||||
|
} else if (game === "iowavrutgers") {
|
||||||
|
game_title.textContent = "Iowa vs Rutgers"
|
||||||
|
} else if (game === "iowavpurdue") {
|
||||||
|
game_title.textContent = "Iowa vs Purdue"
|
||||||
|
} else if (game === "iowavminnesota") {
|
||||||
|
game_title.textContent = "Iowa vs Minnesota"
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<div class="buy-game-info">Sat Sep 30, Time TBD · Kinnick Stadium, Iowa City, Iowa</div><br>
|
||||||
|
<br>
|
||||||
|
<img src="static/icons/stadiumicon.png" class="buy-stadium-icon">
|
||||||
|
<br><br>
|
||||||
|
<div class="buy-bid-button-container">
|
||||||
|
<button class="place-bid-button">Bid</button>
|
||||||
|
<button class="buy-button">Buy</button>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="bid-container">
|
||||||
|
<form id="sell-Ticket" class="stuff" method="post">
|
||||||
|
<input type="text" id="bid" placeholder="Bid Amount"name="price" required>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<br>
|
||||||
|
<div class="price-box">
|
||||||
|
<div class="subtotal">
|
||||||
|
<div class="subtotal-title">Subtotal</div>
|
||||||
|
<div class="subtotal-amount">$36.13</div>
|
||||||
|
</div>
|
||||||
|
<div class="purchase-price">
|
||||||
|
<div class="purchase-price-title">Purchase Price</div>
|
||||||
|
<div class="purchase-price-amount">$32.00</div>
|
||||||
|
</div>
|
||||||
|
<div class="transaction-fee">
|
||||||
|
<div class="transaction-fee-title">Transaction Fee (10%)</div>
|
||||||
|
<div class="transaction-fee-amount">+$3.20</div>
|
||||||
|
</div>
|
||||||
|
<div class="processing-fee">
|
||||||
|
<div class="purchase-price-title">Processing Fee</div>
|
||||||
|
<div class="purchase-price-amount">+$0.93</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<br><br>
|
||||||
|
<div class="agree-container">
|
||||||
|
<label for="myCheckbox" class="checkbox-label">I agree to the</label>
|
||||||
|
<a href="static/termsofservice.html" class="terms-of-service">Terms of Service</a>
|
||||||
|
<input type="checkbox" id="myCheckbox" name="myCheckbox">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- ******************* FOOTER******************** **** -->
|
||||||
|
<br><br><br><br><br><br><br><br><br><br><br><br>
|
||||||
|
<br><br><br><br><br><br><br><br><br><br><br><br>
|
||||||
|
<br><br><br><br><br><br><br><br><br><br><br><br>
|
||||||
|
<br><br><br><br><br><br><br>
|
||||||
|
<footer>
|
||||||
|
<p>© 2023 SeatStock V. All rights reserved. </p>
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
128
frontend/templates/index.html
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewpoint" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>SeatStock</title>
|
||||||
|
<link rel="stylesheet" href="static/style.css">
|
||||||
|
<script type="text/javascript" src="static/script.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<!--************************ HEADER ****************-->
|
||||||
|
<logo><a href="index.html">SeatStock</a></logo>
|
||||||
|
{% if session %}
|
||||||
|
<signinButton><a href="logout">({{ session.userinfo.name }}) Sign Out</a></signinButton>
|
||||||
|
{% else %}
|
||||||
|
<signinButton><a href="login">Sign In</a></signinButton>
|
||||||
|
{% endif %}
|
||||||
|
<faqButton><a href="static/FAQ.html">How it Works</a></faqButton>
|
||||||
|
<tixButton><a href="tickets.html">Your Tickets</a></tixButton>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!--************************ BODY ****************-->
|
||||||
|
<br><br>
|
||||||
|
<div class="home-info-title1">
|
||||||
|
<b>Buy, sell, or exchange even ticets with ease in the industry's
|
||||||
|
first safe ticket exchange marketplace for students.</b>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="search-container">
|
||||||
|
<input type="text" id="searchInput" placeholder="Search...">
|
||||||
|
<button class="search-button">Search</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<br><br>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="home-info-title2">
|
||||||
|
<b>Upcoming Games:</b>
|
||||||
|
</div>
|
||||||
|
<div class="home-info-title3">
|
||||||
|
University of Iowa
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="box">
|
||||||
|
<img src="static/gameimages/iowavmichiganst.png" class="game-window-image">
|
||||||
|
<div class="game-window-title">Iowa Vs. Michigan St</div><br>
|
||||||
|
<button class="buy-or-bid" onclick="check_sign_in('iowavmichiganst')">Buy $55 or Bid</a>
|
||||||
|
<a href="sell.html?game=iowavmichiganst" class="sell-home">Sell</a> <br><br><br>
|
||||||
|
<marketData><a href="https://www.example.com">Market Data</a></marketData>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="box">
|
||||||
|
<img src="static/gameimages/iowavpurdue.png" class="game-window-image">
|
||||||
|
<div class="game-window-title">Iowa Vs. Purdue</div>
|
||||||
|
<button class="buy-or-bid" onclick="check_sign_in('iowavpurdue')">Buy $25<br>or Bid</button>
|
||||||
|
<a href="sell.html?game=iowavpurdue" class="sell-home">Sell</a> <br>
|
||||||
|
<marketData><a href="https://www.example.com">Market Data</a></marketData>
|
||||||
|
</div>
|
||||||
|
<div class="box">
|
||||||
|
|
||||||
|
<img src="static/gameimages/iowavminnesota.png" class="game-window-image">
|
||||||
|
<div class="game-window-title">Iowa Vs. Minnesota</div>
|
||||||
|
<button class="buy-or-bid" onclick="check_sign_in('iowavminnesota')">Buy $45<br>or Bid</button>
|
||||||
|
<a href="sell.html?game=iowavminnesota" class="sell-home">Sell</a> <br><br>
|
||||||
|
<marketData><a href="https://www.example.com">Market Data</a></marketData>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="box">
|
||||||
|
<img src="static/gameimages/iowavrutgers.png" class="game-window-image">
|
||||||
|
<div class="game-window-title">Iowa Vs Rutgers</div>
|
||||||
|
<button class="buy-or-bid" onclick="check_sign_in('iowavrutgers')">Buy $20<br>or Bid</button>
|
||||||
|
<a href="sell.html?game=iowavrutgers" class="sell-home">Sell</a> <br><br>
|
||||||
|
<marketData><a href="https://www.example.com">Market Data</a></marketData>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- **************** FOOTER******************** **** -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<footer>
|
||||||
|
<br><br><br><br><br>
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|
134
frontend/templates/sell.html
Normal file
@ -0,0 +1,134 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>SeatStock</title>
|
||||||
|
<link rel="stylesheet" href="style.css">
|
||||||
|
<script src="static/script.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<!-- ******************** HEADER ************ -->
|
||||||
|
<logo><a href="index.html">SeatStock</a></logo>
|
||||||
|
<signinButton><a href="login">Sign In</a></signinButton>
|
||||||
|
<faqButton><a href="static/FAQ.html">How it Works</a></faqButton>
|
||||||
|
<tixButton><a href="tickets.html">Your Tickets</a></tixButton>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- *********************** BODY *********** -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="sell-body">
|
||||||
|
<div class="sell-game-title" id="sell-game-title"></div><br>
|
||||||
|
<form id="sell-Ticket" class="stuff" method="post">
|
||||||
|
|
||||||
|
<br>
|
||||||
|
<img src="static/icons/stadiumicon.png" class="buy-stadium-icon"><br><br> <br>
|
||||||
|
<input type="text" id="price" placeholder="Price" required><br><br>
|
||||||
|
|
||||||
|
<input type="submit" class="submit-price" value="Submit">
|
||||||
|
</form>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- *********************** SCRIPT *********** -->
|
||||||
|
<script>
|
||||||
|
const game = new URLSearchParams(window.location.search).get("game");
|
||||||
|
console.log(game);
|
||||||
|
const game_title = document.getElementById("sell-game-title");
|
||||||
|
if (game === "iowavmichiganst") {
|
||||||
|
game_title.textContent = "Iowa vs Michigan State"
|
||||||
|
} else if (game === "iowavrutgers") {
|
||||||
|
game_title.textContent = "Iowa vs Rutgers"
|
||||||
|
} else if (game === "iowavpurdue") {
|
||||||
|
game_title.textContent = "Iowa vs Purdue"
|
||||||
|
} else if (game === "iowavminnesota") {
|
||||||
|
game_title.textContent = "Iowa vs Minnesota"
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ******************* FOOTER ******************** **** -->
|
||||||
|
<br><br><br><br><br><br><br><br><br><br><br><br>
|
||||||
|
<br><br><br><br><br><br><br><br><br><br><br><br>
|
||||||
|
<br><br><br><br><br><br><br><br><br><br><br><br>
|
||||||
|
<br><br><br><br><br><br><br>
|
||||||
|
<footer>
|
||||||
|
<p>© 2023 SeatStock V. All rights reserved. </p>
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|
75
frontend/templates/signin.html.old
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>SeatStock</title>
|
||||||
|
<link rel="stylesheet" href="style.css">
|
||||||
|
<script src="script.js"></script>
|
||||||
|
<link rel="icon" type="image/png" href="/favicon.png" sizes="32x32">
|
||||||
|
<link rel="icon" type="image/vnd.microsoft.icon" href="/favicon.ico" sizes="16x16">
|
||||||
|
|
||||||
|
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- *************** HEADER ******************** **** -->
|
||||||
|
<logo><a href="index.html">SeatStock</a></logo>
|
||||||
|
<signinButton><a href="signin.html">Sign In</a></signinButton>
|
||||||
|
<faqButton><a href="FAQ.html">How it Works</a></faqButton>
|
||||||
|
<tixButton><a href="tickets.html">Your Tickets</a></tixButton>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ************* BODY ******************** **** -->
|
||||||
|
|
||||||
|
<div class="signin-body">
|
||||||
|
<div class="form-name"><br>Sign In</div>
|
||||||
|
<div class="form-name-subtitle">Log in for secure transactions.</div>
|
||||||
|
<form action="./index.html" class="stuff" method="post">
|
||||||
|
<input type="text" placeholder="Email" id="username" name="username" required><br><br>
|
||||||
|
<input type="password" placeholder="Password" id="password" name="password" required><br><br>
|
||||||
|
<div class="remember-me-container">
|
||||||
|
|
||||||
|
<input type="checkbox" class="sign-in-checkbox" name="myCheckbox">
|
||||||
|
<label for="myCheckbox" class="sign-in-checkbox-label">Remember Me</label> </label>
|
||||||
|
</div>
|
||||||
|
<div class="sign-in-button-container">
|
||||||
|
<button class="sign-in-button" onclick="set_user_signed_in()">Sign In</button>
|
||||||
|
</div>
|
||||||
|
<a class="sign-up-link" href="signup.html">Sign Up</a>
|
||||||
|
</form>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<br><br><br><br><br><br><br><br><br><br><br><br>
|
||||||
|
<br><br><br><br><br><br><br><br><br><br><br><br><br>
|
||||||
|
<br><br><br><br><br><br><br>
|
||||||
|
|
||||||
|
<footer>
|
||||||
|
<p>© 2023 SeatStock V. All rights reserved. </p>
|
||||||
|
</footer>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
70
frontend/templates/signup.html.old
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>SeatStock</title>
|
||||||
|
<link rel="stylesheet" href="style.css">
|
||||||
|
<script src="script.js"></script>
|
||||||
|
<link rel="icon" type="image/png" href="/favicon.png" sizes="32x32">
|
||||||
|
<link rel="icon" type="image/vnd.microsoft.icon" href="/favicon.ico" sizes="16x16">
|
||||||
|
|
||||||
|
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- *************** HEADER ******************** **** -->
|
||||||
|
<logo><a href="index.html">SeatStock</a></logo>
|
||||||
|
<signinButton><a href="signin.html">Sign In</a></signinButton>
|
||||||
|
<faqButton><a href="FAQ.html">How it Works</a></faqButton>
|
||||||
|
<tixButton><a href="tickets.html">Your Tickets</a></tixButton>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ************* BODY ******************** **** -->
|
||||||
|
|
||||||
|
<div class="signup-body">
|
||||||
|
<div class="form-name"><br>Register</div>
|
||||||
|
<div class="form-name-subtitle">Join other verified students.</div>
|
||||||
|
<form action="./index.html" class="stuff" method="post">
|
||||||
|
<input type="text" placeholder="First Name" id="firstname" name="firstname" required><br><br>
|
||||||
|
<input type="text" placeholder="Last Name" id="lastname" name="lastname" required><br><br>
|
||||||
|
<input type="text" placeholder="Student Email" id="email" name="email" required><br><br>
|
||||||
|
<input type="text" placeholder="Phone Number" id="phone" name="phone" required><br><br>
|
||||||
|
<input type="password" placeholder="Password" id="password" name="password" required><br><br>
|
||||||
|
<input type="password" placeholder="Confirm Password" id="password" name="password" required><br><br>
|
||||||
|
<div class="promotion-container">
|
||||||
|
<input type="checkbox" class="promotion-checkbox" name="myCheckbox">
|
||||||
|
<label for="myCheckbox" class="promotion-checkbox-label">I want to be emailed about special promotions and deals</label> </label>
|
||||||
|
</div>
|
||||||
|
<div class="terms-container">
|
||||||
|
<input type="checkbox" class="terms-checkbox" name="myCheckbox">
|
||||||
|
<label for="myCheckbox" class="terms-checkbox-label">I have read and agree to the terms and conditions</label> </label>
|
||||||
|
</div>
|
||||||
|
<div class="sign-in-button-container">
|
||||||
|
<button class="sign-up-button" onclick="set_user_signed_in()">Sign Up</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<br><br><br><br><br><br><br><br><br><br><br><br>
|
||||||
|
<br><br><br><br><br><br><br><br><br><br><br><br><br>
|
||||||
|
<br><br><br><br><br><br><br><br><br><br><br><br><br><br>
|
||||||
|
<br><br><br><br><br><br><br>
|
||||||
|
|
||||||
|
<footer>
|
||||||
|
<p>© 2023 SeatStock V. All rights reserved. </p>
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
113
frontend/templates/tickets.html
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>SeatStock</title>
|
||||||
|
<link rel="stylesheet" href="style.css">
|
||||||
|
<script src="static/script.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<!--************************ HEADER *********************-->
|
||||||
|
<logo><a href="index.html">SeatStock</a></logo>
|
||||||
|
<signinButton><a href="login">Sign In</a></signinButton>
|
||||||
|
<faqButton><a href="static/FAQ.html">How it Works</a></faqButton>
|
||||||
|
<tixButton><a href="tickets.html">Your Tickets</a></tixButton>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!--************************** BODY ***********************-->
|
||||||
|
|
||||||
|
<div class="tab">
|
||||||
|
<button class="tablinks" onclick="openCity(event, 'Tickets')">Tickets</button>
|
||||||
|
<button class="tablinks" onclick="openCity(event, 'Active-Bids')">Active Bids</button>
|
||||||
|
<button class="tablinks" onclick="openCity(event, 'Active-Asks')">Active Asks</button>
|
||||||
|
<button class="tablinks" onclick="openCity(event, 'History')">History</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="Tickets" class="tabcontent">
|
||||||
|
<h3>London</h3>
|
||||||
|
<p>London is the capital city of England.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="Active-Bids" class="tabcontent">
|
||||||
|
<h3>Paris</h3>
|
||||||
|
<p>Paris is the capital of France.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="Active-Asks" class="tabcontent">
|
||||||
|
<h3>Tokyo</h3>
|
||||||
|
<p>Tokyo is the capital of Japan.</p>
|
||||||
|
</div>
|
||||||
|
<div id="History" class="tabcontent">
|
||||||
|
<h3>Tokyo</h3>
|
||||||
|
<p>Tokyo is the capital of Japan.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!--************************ SCRIPT ****************-->
|
||||||
|
<script>
|
||||||
|
function openCity(evt, cityName) {
|
||||||
|
var i, tabcontent, tablinks;
|
||||||
|
tabcontent = document.getElementsByClassName("tabcontent");
|
||||||
|
for (i = 0; i < tabcontent.length; i++) {
|
||||||
|
tabcontent[i].style.display = "none";
|
||||||
|
}
|
||||||
|
tablinks = document.getElementsByClassName("tablinks");
|
||||||
|
for (i = 0; i < tablinks.length; i++) {
|
||||||
|
tablinks[i].className = tablinks[i].className.replace(" active", "");
|
||||||
|
}
|
||||||
|
document.getElementById(cityName).style.display = "block";
|
||||||
|
evt.currentTarget.className += " active";
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|