diff options
Diffstat (limited to 'app/views/pms')
-rw-r--r-- | app/views/pms/_form.html.erb | 16 | ||||
-rw-r--r-- | app/views/pms/index.html.erb | 149 | ||||
-rw-r--r-- | app/views/pms/show.html.erb | 55 |
3 files changed, 166 insertions, 54 deletions
diff --git a/app/views/pms/_form.html.erb b/app/views/pms/_form.html.erb index 80781a5..b329e24 100644 --- a/app/views/pms/_form.html.erb +++ b/app/views/pms/_form.html.erb @@ -12,24 +12,16 @@ <% end %> <div class="field"> - <%= f.label :author_id %><br> - <%= f.text_field :author_id %> - </div> - <div class="field"> <%= f.label :recipient_id %><br> <%= f.text_field :recipient_id %> </div> - <div class="field"> - <%= f.label :message %><br> - <%= f.text_area :message %> - </div> - <div class="field"> + <div class="field"> <%= f.label :subject %><br> - <%= f.text_area :subject %> + <%= f.text_field :subject %> </div> <div class="field"> - <%= f.label :conversation_id %><br> - <%= f.text_field :conversation_id %> + <%= f.label :message %><br> + <%= f.text_area :message %> </div> <div class="actions"> <%= f.submit %> diff --git a/app/views/pms/index.html.erb b/app/views/pms/index.html.erb index b5169f5..fec6db2 100644 --- a/app/views/pms/index.html.erb +++ b/app/views/pms/index.html.erb @@ -1,35 +1,136 @@ -<h1>Listing pms</h1> +<h1> Your Conversations </h1> + +<%= link_to 'Start a new conversation', new_pm_path %> +<br> + +<h3>Unread Conversations</h3> +<% conversations = current_user.mailbox.conversations %> <table> - <thead> - <tr> - <th>Author</th> - <th>Recipient</th> - <th>Message</th> - <th>Subject</th> - <th>Conversation</th> - <th></th> - <th></th> - <th></th> - </tr> - </thead> + <col width="150"> + <col width="250"> + <col width="300"> + <tbody> + <%# if conversations.reject { |c| c.is_unread?(current_user) && (c.receipts_for current_user).last.message.sender != current_user }.empty? %> + <tr> + <tr> + <td><b>With</b></td> + <td><b>Subject</b></td> + <td><b>Body</b></td> + </tr> + <% conversations.each do |conversation| %> + <% receipts = conversation.receipts_for current_user %> + <% if conversation.is_unread?(current_user) && receipts.last.message.sender != current_user %> + <% message = receipts.last.message %> + <tr> + <% if conversation.subject == "Pay Attention!" %> + <% conversation.mark_as_read(current_user) %> + <% end %> + <td> + <% people = conversation.participants %> + <% people.each do |person| %> + <% unless person == current_user %> + <%= truncate(person.user_name, length: 20) %> + <% end %> + <% end %> + </td> + <td><%= truncate(conversation.subject, length: 30) %></td> + <td><%= truncate(message.body, length: 42) %></td> + <td><%= link_to 'View', @pms.find_by(conversation: conversation) %></td> + </tr> + <% end %> + <% end %> + </tr> + <%# else %> + + <%# end %> + </tbody> +</table> +<br> +<h3>Read Conversations</h3> +<% conversations = current_user.mailbox.conversations %> + +<table> + <col width="150"> + <col width="250"> + <col width="300"> <tbody> - <% @pms.each do |pm| %> + <%# if conversations.reject { |c| c.is_read?(current_user) || (c.receipts_for current_user).last.message.sender == current_user }.empty? %> <tr> - <td><%= pm.author %></td> - <td><%= pm.recipient %></td> - <td><%= pm.message %></td> - <td><%= pm.subject %></td> - <td><%= pm.conversation %></td> - <td><%= link_to 'Show', pm %></td> - <td><%= link_to 'Edit', edit_pm_path(pm) %></td> - <td><%= link_to 'Destroy', pm, method: :delete, data: { confirm: 'Are you sure?' } %></td> + <tr> + <td><b>With</b></td> + <td><b>Subject</b></td> + <td><b>Body</b></td> + </tr> + <% conversations.each do |conversation| %> + <% receipts = conversation.receipts_for current_user %> + <% if conversation.is_read?(current_user) || receipts.last.message.sender == current_user %> + <% message = receipts.last.message %> + <tr> + <% if conversation.subject != "Pay Attention!" %> + <td> + <% people = conversation.participants %> + <% people.each do |person| %> + <% unless person == current_user %> + <%= truncate(person.user_name, length: 20) %> + <% end %> + <% end %> + </td> + <td><%= truncate(conversation.subject, length: 30) %></td> + <td><%= truncate(message.body, length: 42) %></td> + <td><%= link_to 'View', @pms.find_by(conversation: conversation) %></td> + <% end %> + </tr> + <% end %> + <% end %> </tr> - <% end %> + <% #else %> + + <% #end %> </tbody> </table> <br> +<h3>Alerts</h3> +<% conversations = current_user.mailbox.conversations %> -<%= link_to 'New Pm', new_pm_path %> +<table> + <col width="150"> + <col width="250"> + <col width="300"> + <tbody> + <%# if conversations.reject { |c| c.is_read?(current_user) || (c.receipts_for current_user).last.message.sender == current_user }.empty? %> + <tr> + <tr> + <td><b>With</b></td> + <td><b>Subject</b></td> + <td><b>Body</b></td> + </tr> + <% conversations.each do |conversation| %> + <% receipts = conversation.receipts_for current_user %> + <% if conversation.is_read?(current_user) || receipts.last.message.sender == current_user %> + <% message = receipts.last.message %> + <tr> + <% if conversation.subject == "Pay Attention!" %> + <td> + <% people = conversation.participants %> + <% people.each do |person| %> + <% unless person == current_user %> + <%= truncate(person.user_name, length: 20) %> + <% end %> + <% end %> + </td> + <td><%= truncate(conversation.subject, length: 30) %></td> + <td><%= truncate(message.body, length: 42) %></td> + <td><%= link_to 'View', @pms.find_by(conversation: conversation) %></td> + <% end %> + </tr> + <% end %> + <% end %> + </tr> + <% #else %> + + <% #end %> + </tbody> +</table>
\ No newline at end of file diff --git a/app/views/pms/show.html.erb b/app/views/pms/show.html.erb index 2f3b944..2c93102 100644 --- a/app/views/pms/show.html.erb +++ b/app/views/pms/show.html.erb @@ -1,29 +1,48 @@ -<p id="notice"><%= notice %></p> - <p> - <strong>Author:</strong> - <%= @pm.author %> + <strong>Participants:</strong> + <% receps = @pm.conversation.participants %> + <% receps.each do |recep| %> + <% #unless recep == @pm.conversation.last_sender %> + <%= recep.user_name %> + <%= "," %> + <% #end %> + <% end %> + <%= "and the NSA" %> </p> <p> - <strong>Recipient:</strong> - <%= @pm.recipient %> + <strong>Subject:</strong> + <%= @pm.conversation.subject %> </p> -<p> - <strong>Message:</strong> - <%= @pm.message %> -</p> +<% receipts = @pm.conversation.receipts_for current_user %> +<% receipts.each do |receipt| %> + <% message = receipt.message %> -<p> - <strong>Subject:</strong> - <%= @pm.subject %> -</p> + <p> ________________________________________________ </p> -<p> - <strong>Conversation:</strong> - <%= @pm.conversation %> + <p> + <b><%= message.sender.user_name %></b> + <%= ":" %> + <%= message.body %> + </p> + +<% end %> + +<p> ________________________________________________ </p> +<p> + <% @pm.message = "" %> + <%= form_for(@pm) do |f| %> + <div class="field"> + <%= f.text_area :message %> + </div> + + <div class="actions"> + <%= submit_tag("Reply", :class => "signup") %> + </div> + + <% end %> </p> -<%= link_to 'Edit', edit_pm_path(@pm) %> | +<% @pm.conversation.mark_as_read(current_user) %> <%= link_to 'Back', pms_path %> |