f91a24ea9b
Plain text endpoint: - Add /text route for plain text CV (for curl/AI crawlers) - Use k3a/html2text library for HTML-to-text conversion - Add Plain Text button to hamburger menu with UI translations Contact form feature: - Add ContactHandler with proper email service integration - Add CSRF protection middleware - Add rate limiting (5 submissions/hour per IP) - Add honeypot and timing-based bot protection - Add input validation with detailed error messages - Add security logging middleware - Add browser-only middleware for API protection Code quality: - Fix all golangci-lint errcheck warnings for w.Write calls - Remove duplicate getClientIP functions - Wire up ContactHandler in routes.Setup
12 lines
422 B
HTML
12 lines
422 B
HTML
{{define "contact-button"}}
|
|
<!-- Contact Button (Fixed Left) -->
|
|
<button
|
|
id="contact-button"
|
|
class="fixed-btn contact-btn no-print has-tooltip"
|
|
onclick="document.getElementById('contact-modal').showModal()"
|
|
aria-label="{{.UI.Widgets.Contact.AriaLabel}}"
|
|
data-tooltip="{{.UI.Widgets.Contact.Tooltip}}">
|
|
<iconify-icon icon="mdi:email-outline" width="28" height="28"></iconify-icon>
|
|
</button>
|
|
{{end}}
|