<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Upload CSV File</title>
    {% include 'favicon.html' %}
    <link href="{{ url_for('static', filename='css/bootstrap.min.css') }}" rel="stylesheet">
    <link href="{{ url_for('static', filename='css/bootstrap-icons.min.css') }}" rel="stylesheet">
    <style>
        .upload-container {
            max-width: 800px;
            margin: 0 auto;
        }
        .error-details {
            background-color: #f8d7da;
            border-left: 4px solid #dc3545;
        }
    </style>
</head>
<body>
    {% include 'header.html' %}
    
    <main class="container mt-5 pt-4">
        <div class="upload-container">
            <div class="d-flex justify-content-between align-items-center mb-4">
                <h1 class="h2">
                    {% if mode == "import" %} 
                        <i class="bi bi-upload me-2"></i>Import Items From CSV 
                    {% elif mode == "edit" %} 
                        <i class="bi bi-pencil-square me-2"></i>Update Items Using CSV 
                    {% endif %}
                </h1>
            </div>

            <!-- Flash messages (errors only) -->
            {% with messages = get_flashed_messages(category_filter=["error"]) %}
                {% if messages %}
                    <div class="alert alert-danger error-details mb-4">
                        <h2 class="h5 mb-3">Errors found during submission:</h2>
                        <ul class="mb-0">
                            {% for message in messages %}
                                <li>{{ message }}</li>
                            {% endfor %}
                        </ul>
                    </div>
                {% endif %}
            {% endwith %}

            <!-- Upload form card -->
            <div class="card shadow-sm">
                <div class="card-body">
                    <form method="POST" enctype="multipart/form-data" 
                        {% if mode == "import" %}
                            action="/import_from_csv"
                        {% elif mode == "edit" %}
                            action="/edit_using_csv"
                        {% endif %}>
                        
                        <div class="mb-4">
                            <label for="file" class="form-label fw-bold">Select CSV File:</label>
                            <input class="form-control form-control-lg" 
                                   type="file" 
                                   id="file" 
                                   name="file" 
                                   accept=".csv" 
                                   required>
                            <div class="form-text">
                                Please upload a properly formatted CSV file
                            </div>
                        </div>

                        <div class="d-flex justify-content-end gap-3">
                            <a href="/" class="btn btn-outline-secondary">Cancel</a>
                            <button type="submit" class="btn btn-primary px-4">
                                Upload
                            </button>
                        </div>
                    </form>
                </div>
            </div>
            
            <!-- Optional help section -->
            <div class="mt-4">
                <div class="accordion" id="helpAccordion">
                    <div class="accordion-item">
                        <h2 class="accordion-header">
                            <button class="accordion-button collapsed" 
                                    type="button" 
                                    data-bs-toggle="collapse" 
                                    data-bs-target="#helpContent">
                                <i class="bi bi-question-circle me-2"></i>
                                CSV Format Help
                            </button>
                        </h2>
                        <div id="helpContent" 
                             class="accordion-collapse collapse" 
                             data-bs-parent="#helpAccordion">
                            <div class="accordion-body">
                                <!-- Add your CSV format instructions here -->
                                <p>Your CSV should include the following columns:</p>
                                <ul>
                                    <li><code>id</code> - Required for edits</li>
                                    <li><code>name</code> - Item name</li>
                                    <!-- Add more columns as needed -->
                                </ul>
                                <a href="/sample.csv" class="btn btn-sm btn-outline-primary">
                                    Download Sample CSV
                                </a>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </main>    
    <!-- Bootstrap JS -->
    <script src="{{ url_for('static', filename='js/bootstrap.bundle.min.js') }}"></script>
</body>
</html>