mirror of
https://github.com/t404owo/t404null.git
synced 2025-12-12 18:08:47 +00:00
Compare commits
30 Commits
fd290598c1
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f3d4e659df | ||
|
|
c528c7203f | ||
|
|
cc95f657ae | ||
|
|
800ec53291 | ||
|
|
c3af2e62c8 | ||
|
|
e6e37e5ba5 | ||
|
|
b721d85d6d | ||
|
|
9f398ccb5d | ||
|
|
bb2f59f974 | ||
|
|
4cb191f2e0 | ||
|
|
bc83fa4ed8 | ||
|
|
a5f838fbd0 | ||
|
|
23210ce689 | ||
|
|
a998ad564b | ||
|
|
1636d189fe | ||
|
|
5c1b16789b | ||
|
|
9001ec9e38 | ||
|
|
bb23015bc4 | ||
|
|
892c24b498 | ||
|
|
d71bbe78a9 | ||
|
|
efb2966d62 | ||
|
|
ddb1501e39 | ||
|
|
5a8bce7125 | ||
|
|
e74d3dcf43 | ||
|
|
9e18c458a5 | ||
|
|
254bc8a3cc | ||
|
|
eefe20d81c | ||
|
|
123fd0a7bf | ||
|
|
524bc3be83 | ||
|
|
d1ad38ba9b |
@@ -12,6 +12,7 @@ main,
|
|||||||
textarea,
|
textarea,
|
||||||
textfield {
|
textfield {
|
||||||
font-family: Jost, "Noto Sans Japanese", sans-serif, --apple-system;
|
font-family: Jost, "Noto Sans Japanese", sans-serif, --apple-system;
|
||||||
|
font-size: 1.25rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
main {
|
main {
|
||||||
@@ -712,7 +713,7 @@ textfield {
|
|||||||
|
|
||||||
@font-face {
|
@font-face {
|
||||||
font-family: "NerdFontsSymbols Nerd Font";
|
font-family: "NerdFontsSymbols Nerd Font";
|
||||||
src: url("/assets/fonts/nf-symbols.woff2") format("woff2");
|
src: url("https://www.nerdfonts.com/assets/fonts/Symbols-2048-em Nerd Font Complete.woff2") format("woff2");
|
||||||
}
|
}
|
||||||
|
|
||||||
.nf-icons {
|
.nf-icons {
|
||||||
@@ -944,4 +945,4 @@ textfield {
|
|||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,34 +2,6 @@
|
|||||||
@import url("/assets/css/fonts/noto-sans-jp.css");
|
@import url("/assets/css/fonts/noto-sans-jp.css");
|
||||||
@import url("/assets/css/fonts/plus-jarkata-sans.css");
|
@import url("/assets/css/fonts/plus-jarkata-sans.css");
|
||||||
|
|
||||||
body {
|
|
||||||
margin: 0px;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
main,
|
|
||||||
textarea,
|
|
||||||
textfield {
|
|
||||||
font-family: Jost, "Noto Sans Japanese", sans-serif, --apple-system;
|
|
||||||
}
|
|
||||||
|
|
||||||
main {
|
|
||||||
margin: 0.75rem;
|
|
||||||
height: 100%;
|
|
||||||
margin-bottom: 0;
|
|
||||||
margin-top: 0;
|
|
||||||
min-height: calc(100vh - 10vh);
|
|
||||||
}
|
|
||||||
|
|
||||||
.main-page {
|
|
||||||
max-width: 2300px;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
hr {
|
|
||||||
margin: 2rem 0px;
|
|
||||||
}
|
|
||||||
|
|
||||||
nav {
|
nav {
|
||||||
z-index: 4;
|
z-index: 4;
|
||||||
position: -webkit-sticky;
|
position: -webkit-sticky;
|
||||||
@@ -116,24 +88,6 @@ nav .dropdown {
|
|||||||
transition: 0.3s;
|
transition: 0.3s;
|
||||||
}
|
}
|
||||||
|
|
||||||
.footer {
|
|
||||||
font-family: Jost, "Plus Jakarta Sans", "Noto Sans Japanese", sans-serif;
|
|
||||||
position: sticky;
|
|
||||||
/* width: 100%;
|
|
||||||
*/
|
|
||||||
background-color: white;
|
|
||||||
/* bottom: 0;
|
|
||||||
*/
|
|
||||||
/* left:0;
|
|
||||||
*/
|
|
||||||
z-index: 3;
|
|
||||||
padding: 1rem;
|
|
||||||
background-color: #ddd;
|
|
||||||
margin: 0px;
|
|
||||||
text-align: center;
|
|
||||||
align-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*---nav---*/
|
/*---nav---*/
|
||||||
.menu {
|
.menu {
|
||||||
padding-top: 0.4rem;
|
padding-top: 0.4rem;
|
||||||
@@ -265,51 +219,7 @@ nav .dropdown {
|
|||||||
transition-delay: 0.3s;
|
transition-delay: 0.3s;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dropdown {
|
|
||||||
display: none;
|
|
||||||
overflow: auto;
|
|
||||||
max-height: 70vh;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*---- main ----*/
|
/*---- main ----*/
|
||||||
.container {
|
|
||||||
position: relative;
|
|
||||||
height: 50vw;
|
|
||||||
width: 100%;
|
|
||||||
margin: auto;
|
|
||||||
margin-top: 1rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.carousel {
|
|
||||||
z-index: 1;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
border: 1px solid #ddd;
|
|
||||||
border-radius: 0.5rem;
|
|
||||||
position: relative;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.slider-bg {
|
|
||||||
height: 100%;
|
|
||||||
width: 100%;
|
|
||||||
overflow: hidden;
|
|
||||||
background-repeat: no-repeat;
|
|
||||||
background-attachment: fixed;
|
|
||||||
background-size: cover;
|
|
||||||
background-position: center;
|
|
||||||
filter: blur(5px) brightness(75%);
|
|
||||||
-webkit-filter: blur(5px) brightness(60%);
|
|
||||||
z-index: 1;
|
|
||||||
position: absolute;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-content: center;
|
|
||||||
transition: 0.3s;
|
|
||||||
padding: auto;
|
|
||||||
border-radius: 0.5rem;
|
|
||||||
transform: scale(1.1);
|
|
||||||
}
|
|
||||||
|
|
||||||
.slider section {
|
.slider section {
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
@@ -362,67 +272,6 @@ nav .dropdown {
|
|||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
.prev,
|
|
||||||
.next {
|
|
||||||
background-color: rgba(0, 0, 0, 0.3);
|
|
||||||
color: #fff;
|
|
||||||
position: absolute;
|
|
||||||
height: 5rem;
|
|
||||||
width: 5rem;
|
|
||||||
font-size: 4.5rem;
|
|
||||||
top: 50%;
|
|
||||||
transform: translate(0, -50%);
|
|
||||||
z-index: 2;
|
|
||||||
cursor: pointer;
|
|
||||||
border-radius: 0.5rem;
|
|
||||||
font-family: serif;
|
|
||||||
-webkit-touch-callout: none;
|
|
||||||
-webkit-user-select: none;
|
|
||||||
-khtml-user-select: none;
|
|
||||||
-moz-user-select: none;
|
|
||||||
-ms-user-select: none;
|
|
||||||
user-select: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.next {
|
|
||||||
right: 1rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.prev {
|
|
||||||
left: 1rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.pgctrl {
|
|
||||||
font-family: sans-serif, --apple-system;
|
|
||||||
z-index: 1;
|
|
||||||
position: absolute;
|
|
||||||
bottom: 0.5rem;
|
|
||||||
left: 50%;
|
|
||||||
vertical-align: middle;
|
|
||||||
transform: translate(-50%);
|
|
||||||
padding: 0px 0.5rem;
|
|
||||||
margin: 0px 0px;
|
|
||||||
background-color: rgba(0, 0, 0, 0.3);
|
|
||||||
border-radius: 10px;
|
|
||||||
list-style: none;
|
|
||||||
display: flex;
|
|
||||||
z-index: 2;
|
|
||||||
font-size: 4rem;
|
|
||||||
color: white;
|
|
||||||
cursor: pointer;
|
|
||||||
transition: 0.75s;
|
|
||||||
-webkit-touch-callout: none;
|
|
||||||
-webkit-user-select: none;
|
|
||||||
-khtml-user-select: none;
|
|
||||||
-moz-user-select: none;
|
|
||||||
-ms-user-select: none;
|
|
||||||
user-select: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.control {
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Cards */
|
/* Cards */
|
||||||
.album-cards {
|
.album-cards {
|
||||||
margin: auto;
|
margin: auto;
|
||||||
@@ -658,13 +507,6 @@ nav .dropdown {
|
|||||||
margin-bottom: 1rem;
|
margin-bottom: 1rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
textarea,
|
|
||||||
textfield {
|
|
||||||
padding: 5px;
|
|
||||||
resize: vertical;
|
|
||||||
min-height: 5rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.topic {
|
.topic {
|
||||||
padding: 1rem;
|
padding: 1rem;
|
||||||
font-size: 3rem;
|
font-size: 3rem;
|
||||||
@@ -688,21 +530,6 @@ textfield {
|
|||||||
background-size: 100% 0.2em;
|
background-size: 100% 0.2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* overall */
|
|
||||||
.icons {
|
|
||||||
font-size: 2.25rem;
|
|
||||||
font-weight: 500;
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face {
|
|
||||||
font-family: "NerdFontsSymbols Nerd Font";
|
|
||||||
src: url("/assets/fonts/nf-symbols.woff2") format("woff2");
|
|
||||||
}
|
|
||||||
|
|
||||||
.nf-icons {
|
|
||||||
font-family: "NerdFontsSymbols Nerd Font";
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Releases */
|
/* Releases */
|
||||||
.release-track {
|
.release-track {
|
||||||
background-size: cover;
|
background-size: cover;
|
||||||
@@ -776,15 +603,6 @@ textfield {
|
|||||||
font-size: 1.6rem;
|
font-size: 1.6rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.subdiv {
|
|
||||||
padding: 1rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.long-br {
|
|
||||||
display: block;
|
|
||||||
height: 2rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (width >=1180px) and (width<=1690px) {
|
@media screen and (width >=1180px) and (width<=1690px) {
|
||||||
|
|
||||||
/*if(width<1620px&&width>=1125px)*/
|
/*if(width<1620px&&width>=1125px)*/
|
||||||
@@ -919,4 +737,4 @@ textfield {
|
|||||||
nav .burger {
|
nav .burger {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,8 +17,7 @@ half_img_cards = document.querySelector(".half-image-cards");
|
|||||||
import { createClient } from "https://cdn.jsdelivr.net/npm/@supabase/supabase-js/+esm";
|
import { createClient } from "https://cdn.jsdelivr.net/npm/@supabase/supabase-js/+esm";
|
||||||
|
|
||||||
const supabaseUrl = "https://owbamcqdmqetrgcznxva.supabase.co";
|
const supabaseUrl = "https://owbamcqdmqetrgcznxva.supabase.co";
|
||||||
const supabaseKey =
|
const supabaseKey = "sb_publishable_b0fMYw5I1X97gQXJLVBnrA_-0L4qHGv";
|
||||||
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6Im93YmFtY3FkbXFldHJnY3pueHZhIiwicm9sZSI6ImFub24iLCJpYXQiOjE3MjI5NDU5NjIsImV4cCI6MjAzODUyMTk2Mn0.xNen7b513ZGwJ-Qu5iZ6K8qrmvy4QVjS10wiYbEEwKc";
|
|
||||||
//anon key, you cant access private stuffs or add hilarious stuffs w/ this...
|
//anon key, you cant access private stuffs or add hilarious stuffs w/ this...
|
||||||
//(unless sending me some malicious links but I delete your msg)
|
//(unless sending me some malicious links but I delete your msg)
|
||||||
//the moment you notice you need an API endpoint.
|
//the moment you notice you need an API endpoint.
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { createClient } from "https://cdn.jsdelivr.net/npm/@supabase/supabase-js
|
|||||||
|
|
||||||
const supabaseUrl = "https://owbamcqdmqetrgcznxva.supabase.co";
|
const supabaseUrl = "https://owbamcqdmqetrgcznxva.supabase.co";
|
||||||
const supabaseKey =
|
const supabaseKey =
|
||||||
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6Im93YmFtY3FkbXFldHJnY3pueHZhIiwicm9sZSI6ImFub24iLCJpYXQiOjE3MjI5NDU5NjIsImV4cCI6MjAzODUyMTk2Mn0.xNen7b513ZGwJ-Qu5iZ6K8qrmvy4QVjS10wiYbEEwKc";
|
"sb_publishable_b0fMYw5I1X97gQXJLVBnrA_-0L4qHGv";
|
||||||
//anon key, you cant access private stuffs or add hilarious stuffs w/ this...
|
//anon key, you cant access private stuffs or add hilarious stuffs w/ this...
|
||||||
//(unless sending me some malicious links but I delete your msg)
|
//(unless sending me some malicious links but I delete your msg)
|
||||||
//the moment you notice you need an API endpoint.
|
//the moment you notice you need an API endpoint.
|
||||||
@@ -13,7 +13,8 @@ const form = document.getElementById("mail-form"),
|
|||||||
emailInput = document.getElementById("email"),
|
emailInput = document.getElementById("email"),
|
||||||
subjectInput = document.getElementById("subject"),
|
subjectInput = document.getElementById("subject"),
|
||||||
messageInput = document.getElementById("message"),
|
messageInput = document.getElementById("message"),
|
||||||
statusMessage = document.querySelector(".box");
|
statusMessage = document.querySelector(".box"),
|
||||||
|
submitButton = form.querySelector('button[type="submit"]');;
|
||||||
|
|
||||||
form.addEventListener("submit", async (e) => {
|
form.addEventListener("submit", async (e) => {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
@@ -23,14 +24,16 @@ form.addEventListener("submit", async (e) => {
|
|||||||
const subject = subjectInput.value.trim();
|
const subject = subjectInput.value.trim();
|
||||||
const message = messageInput.value.trim();
|
const message = messageInput.value.trim();
|
||||||
|
|
||||||
if (!name || !email || !subject || !message ||
|
|
||||||
name.length==0 || email.length==0 || subject.length==0 || message.length==0) {
|
|
||||||
statusMessage.textContent = "Please fill in all fields.";
|
|
||||||
statusMessage.style = "background: #FFDCDC";
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
||||||
|
[name, email, subject, message].forEach(obj => {
|
||||||
|
if (!obj || obj.length===0) {
|
||||||
|
throw new Error("field_missing");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
if (submitButton) submitButton.disabled = true;
|
||||||
const { data, error } = await supabase
|
const { data, error } = await supabase
|
||||||
.from("mail")
|
.from("mail")
|
||||||
.insert([{ name, email, subject, message }]);
|
.insert([{ name, email, subject, message }]);
|
||||||
@@ -38,13 +41,19 @@ form.addEventListener("submit", async (e) => {
|
|||||||
if (error) {
|
if (error) {
|
||||||
throw error;
|
throw error;
|
||||||
}
|
}
|
||||||
|
|
||||||
statusMessage.textContent = "Message sent successfully!";
|
statusMessage.textContent = "Message sent successfully!";
|
||||||
statusMessage.style = "background: #DDF6D2";
|
statusMessage.style = "background: #DDF6D2";
|
||||||
form.reset();
|
form.reset();
|
||||||
|
if (submitButton) submitButton.disabled = false;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error("Error sending message:", error);
|
console.error("Error sending message:", error);
|
||||||
statusMessage.textContent = "Error sending message. Please try again.";
|
statusMessage.textContent = (error.message === "field_missing") ?
|
||||||
|
/*if (error==="field_missing")*/
|
||||||
|
"Please fill in all fields." :
|
||||||
|
/*else*/
|
||||||
|
"Error sending message. Please try again.";
|
||||||
statusMessage.style = "background: #FFDCDC";
|
statusMessage.style = "background: #FFDCDC";
|
||||||
|
if (submitButton) submitButton.disabled = false;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -234,7 +234,7 @@ Here is my contact list. Feel free to contact me in case you need anything in my
|
|||||||
</h1>
|
</h1>
|
||||||
<div class="contact-email">
|
<div class="contact-email">
|
||||||
<form method="POST" class="form" id="mail-form">
|
<form method="POST" class="form" id="mail-form">
|
||||||
<label for="name">Subject:</label>
|
<label for="name">Name:</label>
|
||||||
<input type="text" name="name" id="name" class="inputbox" placeholder="Your Name" required>
|
<input type="text" name="name" id="name" class="inputbox" placeholder="Your Name" required>
|
||||||
<br>
|
<br>
|
||||||
<label for="email">Email:</label>
|
<label for="email">Email:</label>
|
||||||
@@ -253,4 +253,4 @@ Here is my contact list. Feel free to contact me in case you need anything in my
|
|||||||
</main>
|
</main>
|
||||||
<div class="footer">© t404:null 2021-2025 - All Rights Reserved</div>
|
<div class="footer">© t404:null 2021-2025 - All Rights Reserved</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -198,4 +198,4 @@ I write/make/produce EDM music(DTM), and for every releases I'll post my music o
|
|||||||
</main>
|
</main>
|
||||||
<div class="footer">© t404:null 2021-2025 - All Rights Reserved</div>
|
<div class="footer">© t404:null 2021-2025 - All Rights Reserved</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
Reference in New Issue
Block a user