Merge branch 'main' into commuters
This commit is contained in:
commit
3e873b7861
@ -1,9 +1,18 @@
|
||||
<template>
|
||||
<div class="col-md-6 col-lg-4 col-xl-4 order-0 mb-6">
|
||||
<div class="card text-center h-100">
|
||||
<!-- 더보기 버튼 -->
|
||||
<div class="d-flex">
|
||||
<router-link
|
||||
:to="{ name: 'BoardList', query: { type: selectedBoard } }"
|
||||
class="btn btn-primary mr-1 pe-1 ps-1 ms-auto my-auto h-50"
|
||||
>
|
||||
more
|
||||
</router-link>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<!-- 모달 본문 -->
|
||||
<div class="modal-bod">
|
||||
<div class="modal-body">
|
||||
<!-- 탭 버튼 영역 -->
|
||||
<div class="btn-group mb-5" role="group">
|
||||
<button
|
||||
@ -37,11 +46,9 @@
|
||||
<tr>
|
||||
<!-- 익명게시판은 'nickname', 나머지는 'writer' -->
|
||||
<th class="text-center" style="width: 20%;">
|
||||
{{ selectedBoard === 'anonymous' ? 'nickname' : 'writer' }}
|
||||
{{ selectedBoard === 'anonymous' ? '닉네임' : '작성자' }}
|
||||
</th>
|
||||
<!-- 제목 헤더는 왼쪽 정렬 -->
|
||||
<th class="text-start" style="width: 65%;">title</th>
|
||||
<th class="text-center" style="width: 15%;">views</th>
|
||||
<th class="text-center" style="width: 65%;">제목</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@ -55,7 +62,7 @@
|
||||
{{ selectedBoard === 'anonymous' ? post.nickname : post.author }}
|
||||
</td>
|
||||
<td class="text-start fs-6">
|
||||
<div>
|
||||
<div class="ms-2">
|
||||
{{ truncateTitle(post.title) }}
|
||||
<span v-if="post.commentCount" class="text-danger ml-1 small">
|
||||
[{{ post.commentCount }}]
|
||||
@ -65,12 +72,15 @@
|
||||
v-if="post.hasAttachment.length > 0"
|
||||
class="bi bi-paperclip ml-1 small"
|
||||
></i>
|
||||
</div>
|
||||
|
||||
<div class="text-muted small small">
|
||||
{{ post.date }}
|
||||
<span class="ms-1">
|
||||
<i class="fa-regular fa-eye small me-1"></i>{{post.views}}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
<td class="text-center small">{{ post.views }}</td>
|
||||
</tr>
|
||||
<tr v-if="currentList.length === 0">
|
||||
<td colspan="3" class="text-center text-muted">게시물이 없습니다.</td>
|
||||
@ -79,15 +89,6 @@
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 모달 푸터: 더보기 버튼 오른쪽 정렬 -->
|
||||
<div class="modal-foote d-flex">
|
||||
<router-link
|
||||
:to="{ name: 'BoardList', query: { type: selectedBoard } }"
|
||||
class="btn btn-primary mr-1 pe-1 ps-1 ms-auto my-auto h-50"
|
||||
>
|
||||
more
|
||||
</router-link>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@ -51,7 +51,7 @@
|
||||
<div>
|
||||
<QEditor class="" @keyup="ValidHandler('content')" @update:data="handleContentUpdate" @update:imageUrls="imageUrls = $event" :is-alert="wordContentAlert" :initialData="contentValue"/>
|
||||
<div class="text-end mt-5">
|
||||
<button class="btn btn-primary" @click="saveWord" :disabled="titleValue ? !changed : false" >
|
||||
<button class="btn btn-primary" @click="saveWord" :disabled="titleValue ? !changed : false">
|
||||
<i class="bx bx-check"></i>
|
||||
</button>
|
||||
</div>
|
||||
@ -150,6 +150,16 @@ const ValidHandler = (field) => {
|
||||
}
|
||||
const handleContentUpdate = (newContent) => {
|
||||
content.value = newContent;
|
||||
|
||||
const oldContent = typeof props.contentValue === 'string'? JSON.parse(props.contentValue) : props.contentValue;
|
||||
const newContentOps = newContent?.ops || [];
|
||||
|
||||
const oldContentJson = JSON.stringify(oldContent);
|
||||
const newContentJson = JSON.stringify(newContentOps);
|
||||
|
||||
// 기존 데이터와 새 데이터가 다를 경우 changed = true;
|
||||
changed.value = oldContentJson !== newContentJson;
|
||||
|
||||
ValidHandler("content"); // 유효성 검사 실행
|
||||
};
|
||||
|
||||
|
||||
@ -33,10 +33,7 @@
|
||||
</option>
|
||||
</select>
|
||||
|
||||
<!-- <button class="btn p-1" @click="switchToLightMode"><i class="bx bxs-sun link-warning"></i></button> -->
|
||||
<!-- <button class="btn p-1" @click="switchToDarkMode"><i class="bx bxs-moon"></i></button> -->
|
||||
|
||||
<i class="bx bx-bell bx-md bx-log-out cursor-pointer p-3" @click="handleLogout"></i>
|
||||
<i class="cursor-pointer p-2"></i>
|
||||
|
||||
<!-- Notification -->
|
||||
<li class="nav-item dropdown-notifications navbar-dropdown dropdown me-3 me-xl-2 p-0">
|
||||
@ -186,24 +183,6 @@
|
||||
/>
|
||||
</a>
|
||||
<ul class="dropdown-menu dropdown-menu-end">
|
||||
<li>
|
||||
<a class="dropdown-item" href="pages-account-settings-account.html">
|
||||
<div class="d-flex">
|
||||
<div class="flex-shrink-0 me-3">
|
||||
<div class="avatar avatar-online">
|
||||
<img src="/img/avatars/1.png" class="w-px-40 h-auto rounded-circle" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-grow-1">
|
||||
<h6 class="mb-0">John Doe</h6>
|
||||
<small class="text-muted">Admin</small>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<div class="dropdown-divider my-1"></div>
|
||||
</li>
|
||||
<li>
|
||||
<a class="dropdown-item" href="javascript:void(0)" @click="goToMyPage">
|
||||
<i class="bx bx-user bx-md me-3"></i><span>My Page</span>
|
||||
@ -214,28 +193,6 @@
|
||||
<i class="bx bx-cog bx-md me-3"></i><span>Settings</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="dropdown-item" href="pages-account-settings-billing.html">
|
||||
<span class="d-flex align-items-center align-middle">
|
||||
<i class="flex-shrink-0 bx bx-credit-card bx-md me-3"></i
|
||||
><span class="flex-grow-1 align-middle">Billing Plan</span>
|
||||
<span class="flex-shrink-0 badge rounded-pill bg-danger">4</span>
|
||||
</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<div class="dropdown-divider my-1"></div>
|
||||
</li>
|
||||
<li>
|
||||
<a class="dropdown-item" href="pages-pricing.html">
|
||||
<i class="bx bx-dollar bx-md me-3"></i><span>Pricing</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="dropdown-item" href="pages-faq.html">
|
||||
<i class="bx bx-help-circle bx-md me-3"></i><span>FAQ</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<div class="dropdown-divider my-1"></div>
|
||||
</li>
|
||||
@ -246,15 +203,8 @@
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<!--/ User -->
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<!-- Search Small Screens -->
|
||||
<div class="navbar-search-wrapper search-input-wrapper d-none">
|
||||
<input type="text" class="form-control search-input container-xxl border-0" placeholder="Search..." aria-label="Search..." />
|
||||
<i class="bx bx-x bx-md search-toggler cursor-pointer"></i>
|
||||
</div>
|
||||
</nav>
|
||||
</template>
|
||||
<script setup>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user