@@ -1000,7 +1000,7 @@ style.textContent = /* css */`
text-align: center;
}
- /* Payment Processing Badge */
+ /* Payment Processing Badge (sidebar) */
page-listing .payment-processing-card {
background: var(--color-bg-secondary);
border: 1px solid var(--color-warning, #e6a700);
diff --git a/js/components/pages/page-my-listings.js b/js/components/pages/page-my-listings.js
index 3b024da..6c3d98f 100644
--- a/js/components/pages/page-my-listings.js
+++ b/js/components/pages/page-my-listings.js
@@ -71,6 +71,16 @@ class PageMyListings extends HTMLElement {
document.querySelector('auth-modal')?.show()
}
+ getStatusBadge(listing) {
+ if (listing.status === 'archived') {
+ return `
`
+ }
+ if (listing.status === 'draft' && listing.payment_status !== 'processing' && listing.payment_status !== 'pending') {
+ return `
`
+ }
+ return ''
+ }
+
render() {
this.innerHTML = /* html */`
@@ -136,9 +146,7 @@ class PageMyListings extends HTMLElement {
const imageId = listing.images?.[0]?.directus_files_id?.id || listing.images?.[0]?.directus_files_id
const imageUrl = imageId ? directus.getThumbnailUrl(imageId, 300) : ''
const locationName = listing.location?.name || ''
- const statusBadge = listing.status !== 'published'
- ? `
${t(`myListings.status.${listing.status}`)}`
- : ''
+ const statusBadge = this.getStatusBadge(listing)
return /* html */`
@@ -151,6 +159,7 @@ class PageMyListings extends HTMLElement {
location="${escapeHTML(locationName)}"
image="${imageUrl}"
owner-id="${listing.user_created || ''}"
+ payment-status="${listing.payment_status || ''}"
>
`
diff --git a/js/services/directus.js b/js/services/directus.js
index 0683048..e22af51 100644
--- a/js/services/directus.js
+++ b/js/services/directus.js
@@ -327,6 +327,7 @@ class DirectusService {
'price',
'currency',
'condition',
+ 'payment_status',
'date_created',
'user_created',
'images.directus_files_id.id',
@@ -379,6 +380,7 @@ class DirectusService {
'shipping',
'shipping_cost',
'views',
+ 'payment_status',
'expires_at',
'monero_address',
'date_created',