I’ve been following Brent’s Airbnb course (very useful) as a guide to build a platform with similar functionality.
When a user submits a listing on my platform, I’d like to manually review and approve (or reject) listings before they go live on the marketplace - in the users dashboard, after they submit their listing, there will be 3 states – pending, approved and rejected (with the ability to see a reason as to why the listing has been rejected).
Are there any existing use cases or guides which can help me implement such a system?
I can’t think of any specific guides, but just make sure you structure the data correctly, and then always reference it correctly as well. Basic example:
Data: Listing
Status: (text)
Reason for Rejection: (text)
When a User creates a listing, Status=pending
Then in the repeating group that shows all your listings publicly, be sure to filter by Status=approved
On an Admin dashboard, show a repeating group for pending Listings, filtered by Status=pending
Then a spot for you to change the status to Approved or Rejected. And a text input (or dropdown) to write the reason for rejection
So I’ve begun work on this, and I currently have a ‘Listing’ Data Type. Should I add a new ‘rejection’ field, or a ‘pending’ yes/no field?
How do I create this logic: Status=pending after a user creates listing?
I’ll build a simple admin dashboard with listings, but how can I control access to only the ‘admin’ account? Also, should I create different repeating groups, e.g.
• Repeating group for APPROVED listings (I can then delete listings directly from here, if necessary)
• Repeating group for PENDING listings (I can approve/reject - with a rejection reason)
• Perhaps a repeating group for REJECTED listings (I can view all past rejected listings, and delete them from the DB if necessary?
Thanks!
Edit: This feature has now been implemented - Nigel was able to help me out.