Compare commits

..

No commits in common. "e8c788832c322ecefd34c0fff94fc4accb479577" and "de751e15954fd3463c5d322cf0ce4b30ae6adc0d" have entirely different histories.

4 changed files with 79 additions and 128 deletions

View File

@ -46,7 +46,7 @@ def add_players(players: list[Player]):
def list_players(): def list_players():
with Session(engine) as session: with Session(engine) as session:
statement = select(Player).order_by(Player.name) statement = select(Player)
return session.exec(statement).fetchall() return session.exec(statement).fetchall()

View File

@ -1,5 +1,5 @@
* { * {
border-radius: 16px; border-radius: 8px;
} }
body { body {
@ -7,19 +7,15 @@ body {
position: relative; position: relative;
z-index: 0; z-index: 0;
color: black; color: black;
text-align: center;
overflow-wrap: anywhere; overflow-wrap: anywhere;
height: 100%; height: 100%;
} }
footer {
font-size: x-small;
}
#root { #root {
max-width: 1280px; max-width: 1280px;
margin: 0 auto; margin: 0 auto;
padding: 8px; padding: 8px;
text-align: center;
} }
.grey { .grey {
@ -29,7 +25,6 @@ footer {
.hint { .hint {
position: absolute; position: absolute;
font-size: 80%; font-size: 80%;
padding: 8px;
top: auto; top: auto;
left: 4px; left: 4px;
bottom: auto; bottom: auto;
@ -38,17 +33,16 @@ footer {
} }
h1, h1,
h2, h2 {
h3 {
margin-top: 0px; margin-top: 0px;
margin-bottom: 0px; margin-bottom: 0px;
padding: 8px 16px;
} }
.container { .container {
display: flex; display: flex;
flex-wrap: nowrap; flex-wrap: nowrap;
width: min(96vw, 900px); justify-content: space-evenly;
min-width: min(80vw, 800px);
} }
.dragbox { .dragbox {
@ -58,19 +52,6 @@ h3 {
height: 92%; height: 92%;
} }
.box {
position: relative;
flex: 1;
&.one {
max-width: min(96%, 768px);
margin: 4px auto;
}
padding: 4px;
margin: 4px 0.5%;
border-style: solid;
border-color: black;
}
.reservoir { .reservoir {
flex-direction: unset; flex-direction: unset;
flex-wrap: wrap; flex-wrap: wrap;
@ -78,9 +59,28 @@ h3 {
width: 100%; width: 100%;
} }
.box {
position: relative;
&.one {
max-width: min(80vw, 500px);
}
&.two {
min-width: 43%;
max-width: 20vw;
}
&.three {
min-width: 27%;
max-width: 10vw;
}
padding: 4px;
margin: 4px auto;
border-style: solid;
border-color: black;
}
.user { .user {
max-width: 240px; max-width: 400px;
min-width: 100px; min-width: 200px;
margin: 4px auto; margin: 4px auto;
.item { .item {
font-weight: bold; font-weight: bold;
@ -92,38 +92,27 @@ h3 {
cursor: pointer; cursor: pointer;
font-size: small; font-size: small;
border: 3px dashed black; border: 3px dashed black;
border-radius: 1.2em; border-radius: 4px;
margin: 8px auto; margin: 8px auto;
padding: 4px 16px; padding: 4px 8px;
} }
.extra-margin { .extra-margin {
padding: 0px 8px; padding: 0px 8px;
margin: auto;
} }
button { button {
font-weight: bold; font-weight: bold;
font-size: large; color: ghostwhite;
color: aliceblue;
background-color: black; background-color: black;
border-radius: 1.2em; border: 4px solid black;
position: relative;
z-index: 1; z-index: 1;
&:focus {
outline: black;
} }
&:hover {
@media only screen and (max-width: 768px) { border-color: black;
.submit_text {
display: none;
}
.submit {
position: fixed;
right: 16px;
bottom: 16px;
padding: 0px;
background-color: unset;
font-size: xx-large;
margin-bottom: 20px;
margin-right: 20px;
} }
} }
@ -139,23 +128,15 @@ button {
} }
.tablink { .tablink {
color: white; background-color: unset;
font-weight: unset;
color: black;
border: 2px solid black;
border-radius: unset;
outline: black;
cursor: pointer; cursor: pointer;
flex: 1; padding: 8px 16px;
margin: 4px auto; width: 50%;
}
.navbar {
button {
font-size: medium;
margin: 4px 0.5%;
padding-top: 4px;
padding-bottom: 4px;
opacity: 50%;
&:hover {
opacity: 75%;
}
}
} }
/* Style the tab content (and add height:100% for full page content) */ /* Style the tab content (and add height:100% for full page content) */
@ -173,29 +154,6 @@ button {
font-size: 150%; font-size: 150%;
} }
.logo {
position: relative;
text-align: center;
height: 160px;
img {
display: block;
margin: auto;
}
h3 {
position: absolute;
width: 200px;
top: 33%;
left: 50%;
transform: translate(-50%, -50%);
color: aliceblue;
background-color: black;
border-radius: unset;
letter-spacing: 8px;
padding: 0px 40px;
font-family: monospace;
}
}
.loader { .loader {
display: block; display: block;
position: relative; position: relative;

View File

@ -5,24 +5,15 @@ import Rankings from "./Rankings";
function App() { function App() {
return ( return (
<> <>
<div className="logo">
<a href={baseUrl}> <a href={baseUrl}>
<img alt="logo" height="66%" src="logo.svg" /> <img alt="logo" height="128px" src="logo.svg" />
</a> </a>
<h3 className="centered">cutt</h3> <h1>cutt</h1>
<span className="grey">cool ultimate team tool</span> <span className="grey">cool ultimate team tool</span>
</div>
<Rankings /> <Rankings />
<footer> <footer>
<p className="grey"> <p className="grey">
something not working? something not working? message <a href="https://t.me/x0124816">me</a>.
<br />
message <a href="https://t.me/x0124816">me</a>.
<br />
or fix it here:{" "}
<a href="https://git.0124816.xyz/julius/cutt" key="gitea">
<img src="gitea.svg" alt="gitea" height="16" />
</a>
</p> </p>
</footer> </footer>
</> </>

View File

@ -40,9 +40,9 @@ export function SelectUser({
return ( return (
<> <>
<div className="box user"> <div className="box user">
<span>your name?</span>
{user.length < 1 ? ( {user.length < 1 ? (
<> <>
<span>your name?</span>
<br /> <span className="grey hint">drag your name here</span> <br /> <span className="grey hint">drag your name here</span>
</> </>
) : ( ) : (
@ -55,6 +55,7 @@ export function SelectUser({
> >
{" ✕"} {" ✕"}
</span> </span>
<br />
</> </>
)} )}
<PlayerList <PlayerList
@ -174,9 +175,7 @@ export function Chemistry({ user, players }: PlayerInfoProps) {
</div> </div>
</div> </div>
<button className="submit" onClick={() => handleSubmit()}> <button onClick={() => handleSubmit()}>submit</button>
💾 <span className="submit_text">submit</span>
</button>
<dialog <dialog
id="ChemistryDialog" id="ChemistryDialog"
onClick={(event) => { onClick={(event) => {
@ -234,8 +233,8 @@ export function MVP({ user, players }: PlayerInfoProps) {
<h1>🏆</h1> <h1>🏆</h1>
{rankedPlayers.length < 1 && ( {rankedPlayers.length < 1 && (
<span className="grey hint"> <span className="grey hint">
carefully place as many of the <i>Most Valuable Players</i>{" "} carefully place the <i>Most Valuable Player</i> (according to your
(according to your humble opinion) in this box humble opinion) in this box
</span> </span>
)} )}
<PlayerList <PlayerList
@ -253,9 +252,7 @@ export function MVP({ user, players }: PlayerInfoProps) {
</div> </div>
</div> </div>
<button className="submit" onClick={() => handleSubmit()}> <button onClick={() => handleSubmit()}>submit</button>
💾 <span className="submit_text">submit</span>
</button>
<dialog <dialog
id="MVPDialog" id="MVPDialog"
onClick={(event) => { onClick={(event) => {
@ -279,7 +276,10 @@ function openPage(pageName: string, color: string) {
tablinks = document.getElementsByClassName("tablink"); tablinks = document.getElementsByClassName("tablink");
for (i = 0; i < tablinks.length; i++) { for (i = 0; i < tablinks.length; i++) {
let button = tablinks[i] as HTMLElement; let button = tablinks[i] as HTMLElement;
button.style.opacity = "50%"; button.style.backgroundColor = "unset";
button.style.textDecoration = "unset";
button.style.fontWeight = "unset";
button.style.color = "unset";
} }
// Show the specific tab content // Show the specific tab content
(document.getElementById(pageName) as HTMLElement).style.display = "block"; (document.getElementById(pageName) as HTMLElement).style.display = "block";
@ -287,8 +287,10 @@ function openPage(pageName: string, color: string) {
let activeButton = document.getElementById( let activeButton = document.getElementById(
pageName + "Button" pageName + "Button"
) as HTMLElement; ) as HTMLElement;
activeButton.style.textDecoration = "underline";
activeButton.style.fontWeight = "bold"; activeButton.style.fontWeight = "bold";
activeButton.style.opacity = "100%"; activeButton.style.backgroundColor = "#3366cc";
activeButton.style.color = "white";
document.body.style.backgroundColor = color; document.body.style.backgroundColor = color;
} }
@ -313,20 +315,20 @@ export default function Rankings() {
<SelectUser {...{ user, setUser, players, setPlayers }} /> <SelectUser {...{ user, setUser, players, setPlayers }} />
{user.length === 1 && ( {user.length === 1 && (
<> <>
<div className="container navbar"> <div className="container">
<button <button
className="tablink" className="tablink"
id="ChemistryButton" id="ChemistryButton"
onClick={() => openPage("Chemistry", "aliceblue")} onClick={() => openPage("Chemistry", "aliceblue")}
> >
🧪 Chemistry Chemistry
</button> </button>
<button <button
className="tablink" className="tablink"
id="MVPButton" id="MVPButton"
onClick={() => openPage("MVP", "aliceblue")} onClick={() => openPage("MVP", "aliceblue")}
> >
🏆 MVP MVP
</button> </button>
</div> </div>