mirror of
https://github.com/thecyberlearn/quantum-ai-v2.git
synced 2026-08-18 15:32:59 +00:00
✨ Improve job posting generator UX - reduce toast spam and add auto-scroll
UX IMPROVEMENTS: - Add auto-scroll to processing status when job starts (matches social ads generator) - Reduce excessive toast notifications from 17 to 14 (18% reduction) - Make download operations silent (file download is confirmation enough) - Remove success toast for copy operations (clipboard action is confirmation) - Remove success toast for results display (visual results are confirmation) - Add auto-scroll to form after reset for better UX flow SILENT OPERATIONS (no toast spam): ✅ Download success - file download is confirmation ✅ Copy success - clipboard action is confirmation ✅ Reset form - visual clearing is confirmation ✅ Results display - showing content is confirmation KEPT TOASTS FOR: ❌ Copy/download errors - user needs to know ❌ Form validation errors - user needs to fix ❌ Network/processing errors - user needs feedback ❌ Authentication errors - user needs action Better user experience with less intrusive notifications, matching social ads generator pattern. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
285268a3d0
commit
9c4fcaedf3
@ -95,8 +95,19 @@
|
||||
// Processing Status Functions
|
||||
function showProcessing() {
|
||||
const processingStatus = document.getElementById('processingStatus');
|
||||
const resultsContainer = document.getElementById('resultsContainer');
|
||||
|
||||
if (processingStatus) {
|
||||
processingStatus.style.display = 'block';
|
||||
processingStatus.classList.add('active');
|
||||
|
||||
// Smooth scroll to processing section
|
||||
processingStatus.scrollIntoView({
|
||||
behavior: 'smooth',
|
||||
block: 'center'
|
||||
});
|
||||
}
|
||||
if (resultsContainer) resultsContainer.style.display = 'none';
|
||||
}
|
||||
|
||||
function hideProcessing() {
|
||||
@ -484,7 +495,7 @@
|
||||
resultsContainer.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
||||
}
|
||||
|
||||
showToast('✅ Job posting created successfully!', 'success');
|
||||
// No toast needed - results display is confirmation enough
|
||||
|
||||
} else {
|
||||
// Handle error case
|
||||
@ -604,7 +615,7 @@
|
||||
// Get clean text content without HTML formatting
|
||||
const text = content.textContent || content.innerText || '';
|
||||
navigator.clipboard.writeText(text).then(() => {
|
||||
showToast('📋 Job posting copied to clipboard!', 'success');
|
||||
// No toast for successful copy - clipboard action is confirmation enough
|
||||
}).catch(() => {
|
||||
showToast('❌ Failed to copy to clipboard', 'error');
|
||||
});
|
||||
@ -635,7 +646,7 @@
|
||||
document.body.removeChild(a);
|
||||
URL.revokeObjectURL(url);
|
||||
|
||||
showToast('💾 Job posting downloaded!', 'success');
|
||||
// No toast for download - file download is confirmation enough
|
||||
} else {
|
||||
showToast('❌ No job posting content to download', 'error');
|
||||
}
|
||||
@ -646,6 +657,14 @@
|
||||
const resultsContainer = document.getElementById('resultsContainer');
|
||||
if (resultsContainer) resultsContainer.style.display = 'none';
|
||||
document.getElementById('processButton').disabled = false;
|
||||
|
||||
// Scroll back to form for new input
|
||||
const formSection = document.getElementById('jobPostingForm');
|
||||
if (formSection) {
|
||||
formSection.scrollIntoView({ behavior: 'smooth', block: 'start' });
|
||||
}
|
||||
|
||||
// No toast for reset - visual feedback is enough
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user