-
-
Notifications
You must be signed in to change notification settings - Fork 99
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Threaded messages #2062
Threaded messages #2062
Conversation
resources/views/community/components/message/list-page.blade.php
Outdated
Show resolved
Hide resolved
resources/views/community/components/message/list-page.blade.php
Outdated
Show resolved
Hide resolved
resources/views/community/components/message/view-thread-page.blade.php
Outdated
Show resolved
Hide resolved
resources/views/community/components/message/list-page.blade.php
Outdated
Show resolved
Hide resolved
resources/views/community/components/message/list-page.blade.php
Outdated
Show resolved
Hide resolved
resources/views/community/components/message/new-thread-page.blade.php
Outdated
Show resolved
Hide resolved
resources/views/community/components/message/view-thread-page.blade.php
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I realize that my review got extremely long and I'm not sure I even addressed all things yet. If you want I can take care of those architectural changes. I wasn't expecting changes like this to be made until I refactored another feature to have some reference.
That said, it's wonderful to finally see some scripts being removed from /public
. This is definitely going in the right direction imo.
resources/views/community/components/message/list-page.blade.php
Outdated
Show resolved
Hide resolved
resources/views/community/components/message/list-page.blade.php
Outdated
Show resolved
Hide resolved
resources/views/community/components/message/new-thread-page.blade.php
Outdated
Show resolved
Hide resolved
resources/views/community/components/message/view-thread-page.blade.php
Outdated
Show resolved
Hide resolved
database/migrations/platform/2023_11_25_000002_update_messages_table.php
Outdated
Show resolved
Hide resolved
resources/views/community/components/message/view-thread-page.blade.php
Outdated
Show resolved
Hide resolved
database/migrations/platform/2023_11_25_000000_create_message_threads_table.php
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a good template to go by for the other routes that are yet to be refactored 👏
Replaces the inbox/outbox with threaded messages, wherein a conversation between two users about a single subject can be discussed (similar to forum posts). Most importantly, reply chains are grouped together and it's easy to see both sides of the conversation.
A new message is created the same as before, and supports full shortcode syntax and preview:
This immediately appears in the user's list (there's no longer a distinction between inbox and outbox):
It also appears in the recipient's list (as unread):
The recipient can open the message and reply to it. (the sender can also open it and send additional information).
The sender is notified of the new message as part of an updated thread:
Both users can view the entire thread and update it at any time:
Either user can delete the thread (which removes it from their list, but not the other participant's list).
If the other participant replies again, it reappears in the first user's list.
If both users delete the thread, it's removed from the database.