cre-ne-jp/log-archiver

View on GitHub
app/views/channels/days/show.html.erb

Summary

Maintainability
Test Coverage
<% date_str = @date.strftime('%F') %>
<% title([@channel.name_with_prefix, date_str]) %>
<% noindex if @browse_day.is_style_raw? %>
<div class="container main-container">
<div class="row">
<div class="col-xs-12 col-md-8">
<div class="main-panel">
<div class="panel-body">
<%= render('shared/flash') %>
 
<ol class="breadcrumb">
<li><%= link_to('チャンネル', channels_path) %></li>
<li><%= link_to(@channel.name_with_prefix, @channel) %></li>
<li><%= link_to("#{@date.year}年", @browse_year.path) %></li>
<li><%= link_to("#{@date.month}月", @browse_month.path) %></li>
<li class="active"><%= @date.day %>日</li>
</ol>
 
<article
<% if @num_of_messages > 0 %>
data-controller="message-filter"
data-message-filter-message-list-style-value="<%= @browse_day.style %>"
data-message-filter-messages-visible-value="{ speeches: true, nicks: true, joinsParts: false }"
<% end %>
>
 
<div class="page-header">
<h1><%= @channel.name_with_prefix %> <%= date_str %></h1>
</div>
 
<% if @num_of_messages <= 0 %>
<p>該当するメッセージは見つかりませんでした。</p>
<% else %>
<div class="well">
<table class="day-summary">
<tbody>
<tr class="day-summary-conversation-messages-count">
<th scope="row">発言数</th>
<td><%= @conversation_messages.length %></td>
</tr>
<% unless @privmsg_keyword_relationships.empty? %>
<tr id="keyword-list" class="day-summary-keyword-list">
<th scope="row">キーワード</th>
<td>
<ul class="list-unstyled">
<% @keywords_privmsgs_for_header.each do |keyword, privmsgs| %>
<li>
<%= link_to(sanitize(keyword.display_title), keyword, class: 'channel-day-keyword-link') %>
<% privmsgs.each do |m| %>
<%= link_to(m.timestamp.strftime('%T'), "##{m.fragment_id}", class: 'keyword-list-time') %>
<% end %>
</li>
<% end %>
</ul>
</td>
</tr>
<% end %>
<%= render('shared/message_filter') %>
</tbody>
</table>
</div>
 
<% if @browse_prev_day || @browse_next_day %>
<div class="row">
<div class="col-xs-6">
<%= render('prev_day') %>
</div>
<div class="col-xs-6">
<%= render('next_day') %>
</div>
</div>
<% end %>
 
<ul
class="nav nav-tabs"
data-controller="message-list-style-tab"
data-message-list-style-tab-message-list-style-value="<%= @browse_day.style %>"
>
<li role="presentation" id="message-list-style-normal-tab" class="<%= nav_tab_class(@browse_day.is_style_normal?) %>">
<%= link_to('通常表示', @browse_day.is_style_normal? ? '#' : @browse_day_normal.path, data: { action: 'message-list-style-tab#setStyleToNormal', 'message-list-style-tab-target': 'normalTab' }) %>
</li>
<li role="presentation" id="message-list-style-raw-tab" class="<%= nav_tab_class(@browse_day.is_style_raw?) %>">
<%= link_to('生ログ', @browse_day.is_style_raw? ? '#' : @browse_day_raw.path, data: { action: 'message-list-style-tab#setStyleToRaw', 'message-list-style-tab-target': 'rawTab' }) %>
</li>
</ul>
 
<% if @browse_day.is_style_raw? %>
<div class="raw-log message-list" data-message-filter-target="messageList">
<%= render(partial: 'raw_message', collection: @sorted_messages, as: :m) %>
</div>
<% else %>
<%= render('shared/message_list', messages: @sorted_messages, privmsg_keyword_relationships: @privmsg_keyword_relationships, show_channel: false, style: :normal) %>
 
<div class="alert alert-info no-message-to-show" data-message-filter-target="noMessageToShow">表示するメッセージがありません。</div>
<% end %>
<% end %>
</article>
 
<% if @browse_prev_day || @browse_next_day %>
<div class="row">
<div class="col-xs-6">
<%= render('prev_day') %>
</div>
<div class="col-xs-6">
<%= render('next_day') %>
</div>
</div>
<% end %>
</div>
</div>
</div>
 
<aside class="col-xs-12 col-md-4">
<div class="panel panel-default">
<div class="panel-body">
<%= month_calendar(start_date: @calendar_start_date, attribute: :date, events: @message_dates) do |date, events| %>
<% if events.empty? %>
<%= date.day %>
<% else %>
<% browse_other_day = @browse_day.dup %>
<% browse_other_day.date = date %>
<%= link_to(date.day, browse_other_day.path) %>
<% end %>
<% end %>
</div>
</div>
 
<div class="panel panel-default">
<div class="panel-heading">
<h1 class="panel-title"><%= @date.strftime('%Y-%m-%d') %> の他チャンネル</h1>
</div>
<div class="panel-body">
<ul class="list-unstyled other-channel-list">
<% @other_channels.each do |channel| %>
<% browse_other_channel = @browse_day.dup %>
<% browse_other_channel.channel = channel %>
<li><%= link_to(channel.name_with_prefix, browse_other_channel.path) %></li>
<% end %>
</ul>
</div>
</div>
</aside>
</div>
</div>