File size: 3,744 Bytes
667e073
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
{% extends "base.html" %}

{% block title %}Admin Panel{% endblock %}

{% block content %}
<div class="row">
    <div class="col-12">
        <div class="d-flex justify-content-between align-items-center mb-4">
            <h1>
                <i class="bi bi-shield-lock-fill"></i> Admin Panel
            </h1>
            <span class="badge bg-success p-3">
                <i class="bi bi-person-circle"></i> {{ current_user.username }}
            </span>
        </div>
    </div>
</div>

<!-- Upload Form -->
<div class="row mb-5">
    <div class="col-12">
        <div class="card">
            <div class="card-header bg-dark text-white">
                <h5 class="mb-0"><i class="bi bi-cloud-upload"></i> Upload Foto Baru</h5>
            </div>
            <div class="card-body">
                <form action="{{ url_for('upload_photo') }}" method="POST" enctype="multipart/form-data">
                    <div class="row">
                        <div class="col-md-8 mb-3">
                            <label for="photo" class="form-label">Pilih Foto</label>
                            <input type="file" class="form-control" id="photo" name="photo" 
                                   accept="image/*" required>
                            <small class="text-muted">Format: JPG, PNG, GIF (Max 50MB)</small>
                        </div>
                        <div class="col-md-4 mb-3">
                            <label for="caption" class="form-label">Keterangan</label>
                            <input type="text" class="form-control" id="caption" name="caption" 
                                   placeholder="Contoh: Foto bareng">
                        </div>
                        <div class="col-12">
                            <button type="submit" class="btn btn-success">
                                <i class="bi bi-cloud-upload"></i> Upload Foto
                            </button>
                        </div>
                    </div>
                </form>
            </div>
        </div>
    </div>
</div>

<!-- Daftar Foto -->
<div class="row">
    <div class="col-12">
        <h3 class="mb-3">Daftar Foto</h3>
    </div>
    
    {% for photo in photos %}
    <div class="col-md-4 col-sm-6 mb-4">
        <div class="card admin-card h-100">
            <div class="position-relative">
                <img src="{{ url_for('static', filename='uploads/' + photo.filename) }}" 
                     class="card-img-top" alt="{{ photo.caption }}">
                <div class="photo-overlay">
                    <a href="{{ url_for('delete_photo', photo_id=photo.id) }}" 
                       class="btn btn-danger btn-sm"
                       onclick="return confirm('Yakin ingin menghapus foto ini?')">
                        <i class="bi bi-trash"></i> Hapus
                    </a>
                </div>
            </div>
            <div class="card-body">
                <p class="card-text">{{ photo.caption or 'Tanpa keterangan' }}</p>
                <div class="d-flex justify-content-between align-items-center">
                    <small class="text-muted">
                        <i class="bi bi-heart-fill text-danger"></i> {{ photo.likes_count }} likes
                    </small>
                    <small class="text-muted">
                        <i class="bi bi-calendar"></i> {{ photo.upload_date.strftime('%d/%m/%Y %H:%M') }}
                    </small>
                </div>
            </div>
        </div>
    </div>
    {% else %}
    <div class="col-12">
        <div class="alert alert-info text-center">
            <i class="bi bi-info-circle"></i> Belum ada foto yang diupload
        </div>
    </div>
    {% endfor %}
</div>
{% endblock %}