In short, want Facebook like threaded messaging (Not chatting, just private messaging in Rails) - example from random site - [login to view URL]
I am currently building an app and need private messaging functionality with conversation view implemented. I have very specific requirements, so please read carefully:
1. Private messaging between 2 users only. Add functionality to create a new message. A message can be created 2 ways. Through Message button on Users show page or as a reply through the threaded view. Once a message is created, if a thread exists between 2 users, the message will be added to the thread. If no thread exists, a new thread will be created.
2. In the Users inbox, all messages are sorted by a Thread. Each thread will partly show the newest message in it. Probably use truncate here. Each thread has messages between 2 users. Obviously no 2 users will have more than 1 thread in 1 inbox. The messages in a Thread should be ordered in Descending order i.e. oldest message on bottom, newest on top. At the top of the newest message, there will be a text-field to reply or add to the thread. Add reply functionality as well. The messages will be paginated by will paginate gem.
3. There will be read and unread functionality. I need to be able to run [login to view URL] method to find out how many messages have been unread by the user.
4. In the Inbox, the threads that have unread messages will have a colored background, thread with no unread message will have white background.
5. There should be functionality to delete entire conversation, delete one message or selected messages. When users delete messages, they shouldn't be destroyed from the database. They should just be hidden and frozen off for that user. Lets say, User A deletes his entire conversation with User B, the messages will still be visible for User B, until he deletes them. Even after Used B deletes all messages from User A, the messages will not be destroyed from the database. They will just be frozen off and not be visible to Use A or User B again.
For error message you can use flash: notice
I'd like you to create a minimalist Rails app that has the above features. I want no styling. Im interested in the code. You can type the code in Word for all I care. It should be working smoothly and efficiently without any errors. No N+1 queries either. Once I get the code, I'll implement it in my app and test it. If there are errors, you will need to guide me. Once I have the functionality up and running without ANY issues I will release payment. Also if you think there could be issues with my requirements, please let me know and suggest a better way of going about it.
Project should take no more than 3-5 hours. Lowest bid will get the project.