DG24 / index.html
LazyBoss's picture
Update index.html
3db2f6b verified
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Image Prediction</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
<style>
body {
margin: 0;
padding: 0;
height: 100vh;
overflow: hidden;
background: linear-gradient(135deg, #3aafa9, #f0c27b); /* Ocean water to sand gradient */
background-size: 200% 200%;
animation: gradientAnimation 15s ease infinite;
display: flex;
justify-content: center;
align-items: center;
color: #ffffff;
font-family: Arial, sans-serif;
position: relative;
}
.container {
background-color: rgba(255, 255, 255, 0.8);
border-radius: 10px;
padding: 30px;
box-shadow: 0px 0px 15px rgba(0,0,0,0.3);
max-width: 500px;
width: 100%;
text-align: center;
position: relative;
z-index: 1;
}
h1,#response-message {
color: #000000; /* Sets the font color to black */
}
.btn-custom {
background-color: #007bff;
color: #ffffff;
border: none;
border-radius: 5px;
padding: 10px 20px;
}
.btn-custom:hover {
background-color: #0056b3;
}
.form-control-file {
position: relative;
display: inline-block;
width: 100%;
height: 50px;
overflow: hidden;
border-radius: 5px;
background-color: #e0e0e0;
border: 2px solid #007bff;
cursor: pointer;
}
.form-control-file input[type="file"] {
position: absolute;
width: 100%;
height: 100%;
opacity: 0;
cursor: pointer;
}
.form-control-file::before {
content: 'Choose File';
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
font-size: 16px;
line-height: 50px;
text-align: center;
color: #007bff;
pointer-events: none;
}
.alert-custom {
background-color: #333333;
color: #ffffff;
border: none;
border-radius: 5px;
padding: 10px;
}
.alert-custom.success {
border-left: 5px solid #28a745;
}
.alert-custom.error {
border-left: 5px solid #dc3545;
}
.alert-custom.warning {
border-left: 5px solid #ffc107;
}
@keyframes gradientAnimation {
0% {
background-position: 0% 0%;
}
50% {
background-position: 100% 100%;
}
100% {
background-position: 0% 0%;
}
}
.bg-pattern {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: radial-gradient(circle, rgba(255, 255, 255, 0.2) 30%, transparent 80%);
pointer-events: none;
z-index: 0;
mix-blend-mode: multiply;
}
</style>
</head>
<body>
<div class="bg-pattern"></div>
<div class="container">
<h1 class="mb-4">
Glaucomatous eye Image
</h1>
<form id="predict-form">
<div class="form-group">
<label for="file" class="sr-only">Upload Image:</label>
<div class="form-control-file">
<input type="file" id="file" name="file" accept="image/*" required>
</div>
</div>
<button type="submit" class="btn btn-custom">Predict</button>
</form>
<div id="response-message"></div>
</div>
<script>
document.getElementById('predict-form').addEventListener('submit', function(event) {
event.preventDefault(); // Prevent the form from submitting the traditional way
const formData = new FormData(this);
fetch('/predict/', {
method: 'POST',
body: formData
})
.then(response => response.json())
.then(data => {
const message = `Prediction: ${data.prediction}`;
alert(message);
document.getElementById('response-message').innerText = message;
})
.catch(error => {
console.error('Error:', error);
alert('An error occurred. Please try again.');
});
});
</script>
<!-- Include necessary JS libraries -->
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.9.3/dist/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
</body>
</html>