<!doctype html>
<html lang="en">
- <head>
- <meta charset="UTF-8" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>File Upload</title>
- <link rel="stylesheet" href="/styles.css" />
- </head>
- <body>
- <h1>File Upload</h1>
-
- <form id="upload-form">
- <div>
- <label for="file">File:</label>
- <input
- type="file"
- id="file"
- name="file"
- required
- />
- </div>
-
- <div>
- <label for="filename">Save as (optional):</label>
- <input
- type="text"
- id="filename"
- name="filename"
- placeholder="Leave blank to keep original filename"
- />
- </div>
-
- <div>
- <label for="password">Password:</label>
- <input
- type="password"
- id="password"
- name="password"
- required
- />
- </div>
-
- <button type="submit">Upload</button>
- <a href="/list" id="list">file list!</a>
- </form>
-
- <p id="response-message"></p>
-
- <script>
- document
- .getElementById("upload-form")
- .addEventListener("submit", async function (event) {
- event.preventDefault();
-
- const formData = new FormData();
-
- const fileInput = document.getElementById("file");
- const filenameInput = document.getElementById("filename");
- const passwordInput = document.getElementById("password");
- const responseMessage =
- document.getElementById("response-message");
-
- formData.append("file", fileInput.files[0]);
- formData.append("password", passwordInput.value);
-
- if (filenameInput.value.trim()) {
- formData.append("filename", filenameInput.value.trim());
- }
- try {
- const response = await fetch("/new/upload", {
- method: "POST",
- body: formData,
- });
-
- const text = await response.text();
-
- if (response.ok) {
- responseMessage.textContent = text;
- } else {
- responseMessage.textContent =
- `Upload failed (${response.status}): ${text}`;
- }
- } catch (error) {
- console.error(error);
+<head>
+ <meta charset="UTF-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <title>File Upload</title>
+ <link rel="stylesheet" href="/styles.css" />
+</head>
+
+<body>
+ <h1>File Upload</h1>
+
+ <form id="upload-form">
+ <div>
+ <label for="file">File:</label>
+ <input type="file" id="file" name="file" required />
+ </div>
+
+ <div>
+ <label for="filename">Save as (optional):</label>
+ <input type="text" id="filename" name="filename" placeholder="Leave blank to keep original filename" />
+ </div>
+
+ <div>
+ <label for="password">Password:</label>
+ <input type="password" id="password" name="password" required />
+ </div>
+
+ <button type="submit">Upload</button>
+ <a href="/list" id="list">file list!</a>
+ </form>
+
+ <p id="response-message"></p>
+
+ <div id="footnote">
+ <p>Check out my related blog post <a href="http://taranathan.com/blog/gleam/">here!</a></p>
+ </div>
+
+ <script>
+ document
+ .getElementById("upload-form")
+ .addEventListener("submit", async function (event) {
+ event.preventDefault();
+
+ const formData = new FormData();
+
+ const fileInput = document.getElementById("file");
+ const filenameInput = document.getElementById("filename");
+ const passwordInput = document.getElementById("password");
+ const responseMessage =
+ document.getElementById("response-message");
+
+ formData.append("file", fileInput.files[0]);
+ formData.append("password", passwordInput.value);
+
+ if (filenameInput.value.trim()) {
+ formData.append("filename", filenameInput.value.trim());
+ }
+
+ try {
+ const response = await fetch("/new/upload", {
+ method: "POST",
+ body: formData,
+ });
+
+ const text = await response.text();
+
+ if (response.ok) {
+ responseMessage.textContent = text;
+ } else {
responseMessage.textContent =
- "An error occurred while uploading the file.";
+ `Upload failed (${response.status}): ${text}`;
}
- });
- </script>
- </body>
-</html>
+ } catch (error) {
+ console.error(error);
+ responseMessage.textContent =
+ "An error occurred while uploading the file.";
+ }
+ });
+ </script>
+</body>
+
+</html>
\ No newline at end of file