Extract component to render notifications item
This commit is contained in:
30
app/components/layout/notification_item_component.html.erb
Normal file
30
app/components/layout/notification_item_component.html.erb
Normal file
@@ -0,0 +1,30 @@
|
||||
<% if user %>
|
||||
<li id="notifications">
|
||||
<%= link_to notifications_path, rel: "nofollow",
|
||||
class: "notifications" do %>
|
||||
<span class="show-for-sr">
|
||||
<%= t("layouts.header.notification_item.notifications") %>
|
||||
</span>
|
||||
|
||||
<% if user.notifications.unread.count > 0 %>
|
||||
<span class="icon-circle" aria-hidden="true"></span>
|
||||
<span class="icon-notification" aria-hidden="true"
|
||||
title="<%= t("layouts.header.notification_item.new_notifications",
|
||||
count: user.notifications_count) %>">
|
||||
</span>
|
||||
<span class="show-for-small-only">
|
||||
<%= t("layouts.header.notification_item.new_notifications",
|
||||
count: user.notifications_count) %>
|
||||
</span>
|
||||
<% else %>
|
||||
<span class="icon-no-notification" aria-hidden="true"
|
||||
title="<%= t("layouts.header.notification_item.no_notifications") %>">
|
||||
</span>
|
||||
<span class="show-for-small-only">
|
||||
<%= t("layouts.header.notification_item.no_notifications") %>
|
||||
</span>
|
||||
<% end %>
|
||||
|
||||
<% end %>
|
||||
</li>
|
||||
<% end %>
|
||||
7
app/components/layout/notification_item_component.rb
Normal file
7
app/components/layout/notification_item_component.rb
Normal file
@@ -0,0 +1,7 @@
|
||||
class Layout::NotificationItemComponent < ApplicationComponent
|
||||
attr_reader :user
|
||||
|
||||
def initialize(user)
|
||||
@user = user
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user