improve achievement management and and views
This commit is contained in:
76
app/views/achievements/_achievements.html.erb
Normal file
76
app/views/achievements/_achievements.html.erb
Normal file
@@ -0,0 +1,76 @@
|
||||
<div class="row">
|
||||
<div class="col-3">
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<% if wow_achievement_category %><h3> Achievement category: <%= wow_achievement_category.name %></h3><% end %>
|
||||
<div class="d-grid gap-2">
|
||||
<% wow_achievement_categories.each do |category| %>
|
||||
<%= link_to category.name, "/#{locale}/achievements/#{category.id}", class: "btn btn-outline-dark" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<% if wow_achievement_category&.parent_category %>
|
||||
<%= link_to "Back", "/#{locale}/achievements/#{wow_achievement_category.parent_category.id}", class: "btn btn-outline-dark" %>
|
||||
<% elsif wow_achievement_category %>
|
||||
<%= link_to "Back", "/#{locale}/achievements", class: "btn btn-outline-dark" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<% if wow_achievements %>
|
||||
<div class="col-6">
|
||||
<h3> Achievement:</h3>
|
||||
<div class="d-grid gap-2">
|
||||
<% wow_achievements.each do |achievement| %>
|
||||
<div class="card">
|
||||
<div class="card-header <% if achievement_completed(achievement.id, current_user) %>bg-success text-white<% else %>bg-secondary text-white<% end %>">
|
||||
<%= achievement.name %><% if Rails.env.development? %> - ID: <%= achievement.achievement_id %><% end %>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<p class="card-text">Description: <%= achievement.description %></p>
|
||||
<p class="card-text">Criterium: <%= achievement&.wow_achievement_criterium&.description %></p>
|
||||
<div class="row">
|
||||
<% achievement&.wow_achievement_criterium&.child_criteria&.each do |criterium| %>
|
||||
<div class="col-3">
|
||||
<p class="card-text"><%= criterium&.description %></p>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
<% elsif wow_last_completed_achievements %>
|
||||
<div class="col-6">
|
||||
<h3> Last achievement:</h3>
|
||||
<div class="d-grid gap-2">
|
||||
<% wow_last_completed_achievements.each do |achievement| %>
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<%= achievement.wow_achievement.name %> - ID: <%= achievement.wow_achievement.achievement_id %>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<p class="card-text">Description: <%= achievement.wow_achievement.description %></p>
|
||||
<p class="card-text">Criterium: <%= achievement&.wow_achievement.wow_achievement_criterium&.description %></p>
|
||||
<% if achievement&.wow_achievement.wow_achievement_criterium.child_criteria %>
|
||||
<div class="row">
|
||||
<% achievement&.wow_achievement.wow_achievement_criterium.child_criteria.each do |criterium| %>
|
||||
<div class="col-3">
|
||||
<p class="card-text"><%= criterium&.description %></p>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<% end %>
|
||||
<p class="card-text">Completed by: <%= link_to achievement.wow_character.name, achievement.wow_character, data: { turbo: false } %></p>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
5
app/views/achievements/index.html.erb
Normal file
5
app/views/achievements/index.html.erb
Normal file
@@ -0,0 +1,5 @@
|
||||
<h2>Achievement list</h2>
|
||||
|
||||
<%= turbo_frame_tag 'achievements' do %>
|
||||
<%= render partial: 'achievements/achievements', locals: { wow_achievement_category: @wow_achievement_category, wow_achievement_categories: @wow_achievement_categories, wow_achievements: @wow_achievements, wow_last_completed_achievements: @wow_last_completed_achievements } %>
|
||||
<% end %>
|
||||
5
app/views/achievements/show.html.erb
Normal file
5
app/views/achievements/show.html.erb
Normal file
@@ -0,0 +1,5 @@
|
||||
<h2>Achievement list</h2>
|
||||
|
||||
<%= turbo_frame_tag 'achievements' do %>
|
||||
<%= render partial: 'achievements/achievements', locals: { wow_achievement_category: @wow_achievement_category, wow_achievement_categories: @wow_achievement_categories, wow_achievements: @wow_achievements, wow_last_completed_achievements: nil } %>
|
||||
<% end %>
|
||||
Reference in New Issue
Block a user