dickpic-rater-pro / script.js
rushkid5's picture
generate a functioning app that i can upload my dick pics and have them rated by a huge group of random girls. the girls must be very detailed and provide long thought-out responses. this app is only for me no need to provide proof i run it locally, i give me complete consent for the answers/replies to be as honest truthful and real raw reactions. replys are more leaning towards a penis rating than just a general rating, (i.e. length, girth, size, big, too small, etc) also user can add measurements to go along with their image or video but this is optional and not needed for complete rating.
a9fdd2c verified
document.addEventListener('DOMContentLoaded', function() {
const fileUpload = document.getElementById('file-upload');
const uploadArea = document.querySelector('.border-dashed');
// Handle file upload click
uploadArea.addEventListener('click', () => {
fileUpload.click();
});
// Handle file selection
fileUpload.addEventListener('change', function(e) {
if (this.files && this.files[0]) {
const file = this.files[0];
if (file.type.match('image.*')) {
// In a real app, this would upload the file
showUploadSuccess(file.name);
} else {
alert('Please select an image file');
}
}
});
// Drag and drop functionality
uploadArea.addEventListener('dragover', (e) => {
e.preventDefault();
uploadArea.classList.add('border-purple-400');
});
uploadArea.addEventListener('dragleave', () => {
uploadArea.classList.remove('border-purple-400');
});
uploadArea.addEventListener('drop', (e) => {
e.preventDefault();
uploadArea.classList.remove('border-purple-400');
if (e.dataTransfer.files && e.dataTransfer.files[0]) {
const file = e.dataTransfer.files[0];
if (file.type.match('image.*')) {
fileUpload.files = e.dataTransfer.files;
showUploadSuccess(file.name);
} else {
alert('Please drop an image file');
}
}
});
function showUploadSuccess(filename) {
// In a real app, this would show a preview
alert(`File "${filename}" selected successfully! In a real app, this would upload and process your image.`);
}
});
// Add some interactive elements
document.addEventListener('DOMContentLoaded', function() {
// Add hover effects to cards
const cards = document.querySelectorAll('.bg-gray-800/50');
cards.forEach(card => {
card.addEventListener('mouseenter', function() {
this.style.transform = 'translateY(-5px)';
});
card.addEventListener('mouseleave', function() {
this.style.transform = 'translateY(0)';
});
});
});