Files
Reklamator/app/templates/submission/error.html
T
gurixandClaude b301def134 Implement MVP: Anonymous feedback submission (User Story 1)
Complete implementation of Phase 1-3 (64 tasks):
- Phase 1: Project setup with Flask, pytest, configuration
- Phase 2: Core infrastructure (auth, models, services, testing)
- Phase 3: Anonymous feedback submission with file uploads

Features:
- Anonymous feedback submission (text and/or up to 3 file attachments)
- Multi-language support (any language accepted)
- File validation (type, size) and virus scanning (ClamAV)
- Product management with active/archived status
- File-based storage with YAML metadata
- User authentication system (Flask-Login)
- CSRF protection and rate limiting
- Test coverage: 10 passing tests (contract + integration)

Security:
- No IP address logging (FR-055 compliance)
- File type whitelist and size limits (10MB max)
- Virus scanning with graceful degradation
- Filename sanitization and secure storage

Test Results:
- 8 contract tests passed
- 2 integration tests passed
- End-to-end workflow verified

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-16 15:14:51 +02:00

22 lines
593 B
HTML

{% extends "base.html" %}
{% block title %}Error - {{ product.name }}{% endblock %}
{% block content %}
<div style="text-align: center; padding: 40px 20px;">
<div style="font-size: 4em; color: #e74c3c; margin-bottom: 20px;"></div>
<h1>Oops! Something went wrong</h1>
<p style="font-size: 1.1em; margin: 20px 0; color: #555;">
{{ error_message }}
</p>
<div style="margin-top: 40px;">
<a href="{{ url_for('submission.form', product_slug=product.submission_url_slug) }}" class="btn">
Try Again
</a>
</div>
</div>
{% endblock %}