|
1 | 1 | <template> |
2 | | - <div style="padding: 100px; color: black" v-if="loggedIn"> |
3 | | - <h2>Admin Stuff</h2> |
4 | | - <ul> |
5 | | - <li><router-link to="/admin/redirects">Redirect Links</router-link></li> |
6 | | - <li><router-link to="/admin/staff">Staff Page Editor</router-link></li> |
7 | | - <li><router-link to="/admin/events">Events Editor</router-link></li> |
8 | | - <li><router-link to="/admin/informations">Information Cards Editor</router-link></li> |
9 | | - <li><router-link to="/admin/notes">Meeting Notes (edit)</router-link></li> |
10 | | - <li><router-link to="/admin/meetings">Meeting Notes (view)</router-link></li> |
11 | | - <li><a href="/audit-log">DB Edit Log</a></li> |
12 | | - </ul> |
| 2 | + <div class="admin-container" v-if="loggedIn"> |
| 3 | + <div class="admin-content"> |
| 4 | + <h1 class="admin-title">Admin Dashboard</h1> |
| 5 | + <div class="admin-grid"> |
| 6 | + <router-link to="/admin/redirects" class="admin-card"> |
| 7 | + <h3>Redirect Links</h3> |
| 8 | + <p>Manage URL redirects and short links</p> |
| 9 | + </router-link> |
| 10 | + <router-link to="/admin/staff" class="admin-card"> |
| 11 | + <h3>Staff Page</h3> |
| 12 | + <p>Edit staff members and roles</p> |
| 13 | + </router-link> |
| 14 | + <router-link to="/admin/events" class="admin-card"> |
| 15 | + <h3>Events</h3> |
| 16 | + <p>Manage upcoming and past events</p> |
| 17 | + </router-link> |
| 18 | + <router-link to="/admin/informations" class="admin-card"> |
| 19 | + <h3>Information Cards</h3> |
| 20 | + <p>Edit information and announcements</p> |
| 21 | + </router-link> |
| 22 | + <router-link to="/admin/notes" class="admin-card"> |
| 23 | + <h3>Meeting Notes</h3> |
| 24 | + <p>Edit meeting notes and minutes</p> |
| 25 | + </router-link> |
| 26 | + <router-link to="/admin/meetings" class="admin-card"> |
| 27 | + <h3>View Meetings</h3> |
| 28 | + <p>Browse all meeting notes</p> |
| 29 | + </router-link> |
| 30 | + <a href="/audit-log" class="admin-card"> |
| 31 | + <h3>DB Edit Log</h3> |
| 32 | + <p>View database change history</p> |
| 33 | + </a> |
| 34 | + </div> |
| 35 | + </div> |
13 | 36 | </div> |
14 | 37 | </template> |
15 | 38 |
|
16 | 39 | <script setup> |
17 | 40 | import { loggedIn } from "../globals.js"; |
18 | 41 | </script> |
| 42 | + |
| 43 | +<style scoped lang="scss"> |
| 44 | +.admin-container { |
| 45 | + min-height: 100vh; |
| 46 | + background-color: #f5f5f5; |
| 47 | + padding: 2rem; |
| 48 | +} |
| 49 | +
|
| 50 | +.admin-content { |
| 51 | + max-width: 1200px; |
| 52 | + margin: 0 auto; |
| 53 | + padding-top: 80px; |
| 54 | +} |
| 55 | +
|
| 56 | +.admin-title { |
| 57 | + color: #333; |
| 58 | + font-size: 2.5rem; |
| 59 | + margin-bottom: 2rem; |
| 60 | + text-align: center; |
| 61 | +} |
| 62 | +
|
| 63 | +.admin-grid { |
| 64 | + display: grid; |
| 65 | + grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); |
| 66 | + gap: 1.5rem; |
| 67 | + padding: 1rem; |
| 68 | +} |
| 69 | +
|
| 70 | +.admin-card { |
| 71 | + background: white; |
| 72 | + border-radius: 12px; |
| 73 | + padding: 1.5rem; |
| 74 | + text-decoration: none; |
| 75 | + color: inherit; |
| 76 | + transition: transform 0.2s, box-shadow 0.2s; |
| 77 | + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); |
| 78 | +
|
| 79 | + &:hover { |
| 80 | + transform: translateY(-4px); |
| 81 | + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); |
| 82 | + } |
| 83 | +
|
| 84 | + h3 { |
| 85 | + color: #2c3e50; |
| 86 | + margin: 0 0 0.5rem 0; |
| 87 | + font-size: 1.25rem; |
| 88 | + } |
| 89 | +
|
| 90 | + p { |
| 91 | + color: #666; |
| 92 | + margin: 0; |
| 93 | + font-size: 0.9rem; |
| 94 | + } |
| 95 | +} |
| 96 | +</style> |
0 commit comments