mumuki-laboratory 8.1.3 → 8.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (107) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +19 -8
  3. data/app/assets/javascripts/mumuki_laboratory/application/bridge.js +2 -1
  4. data/app/assets/javascripts/mumuki_laboratory/application/button.js +2 -4
  5. data/app/assets/javascripts/mumuki_laboratory/application/codemirror-builder.js +1 -1
  6. data/app/assets/javascripts/mumuki_laboratory/application/codemirror.js +2 -2
  7. data/app/assets/javascripts/mumuki_laboratory/application/i18n.js +73 -0
  8. data/app/assets/javascripts/mumuki_laboratory/application/kids.js +22 -1
  9. data/app/assets/javascripts/mumuki_laboratory/application/kindergarten.js +6 -1
  10. data/app/assets/javascripts/mumuki_laboratory/application/primary.js +5 -3
  11. data/app/assets/javascripts/mumuki_laboratory/application/results-renderer.js +28 -1
  12. data/app/assets/javascripts/mumuki_laboratory/application/submission.js +72 -48
  13. data/app/assets/stylesheets/mumuki_laboratory/application.scss +1 -0
  14. data/app/assets/stylesheets/mumuki_laboratory/application/_codemirror-themes.scss +1 -0
  15. data/app/assets/stylesheets/mumuki_laboratory/application/codemirror-themes/_mu-light.scss +3 -0
  16. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_kids.scss +4 -0
  17. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_kids_results.scss +1 -0
  18. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_overlap.scss +0 -4
  19. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_terms.scss +4 -0
  20. data/app/controllers/chapters_controller.rb +9 -5
  21. data/app/controllers/guide_container_controller.rb +2 -7
  22. data/app/helpers/assignment_result_helper.rb +1 -1
  23. data/app/helpers/contextualization_result_helper.rb +0 -8
  24. data/app/helpers/discussions_helper.rb +12 -4
  25. data/app/helpers/editor_tabs_helper.rb +1 -1
  26. data/app/helpers/icons_helper.rb +1 -1
  27. data/app/helpers/links_helper.rb +1 -1
  28. data/app/helpers/menu_bar_helper.rb +9 -1
  29. data/app/helpers/overlapped_buttons_helper.rb +13 -5
  30. data/app/views/book/show.html.erb +1 -1
  31. data/app/views/book_discussions/index.html.erb +3 -1
  32. data/app/views/chapters/show.html.erb +21 -9
  33. data/app/views/complements/show.html.erb +1 -1
  34. data/app/views/discussions/_message.html.erb +2 -2
  35. data/app/views/discussions/index.html.erb +11 -4
  36. data/app/views/exams/show.html.erb +1 -1
  37. data/app/views/exercise_solutions/_kids_level_up.html.erb +1 -1
  38. data/app/views/exercises/_exercise_assignment.html.erb +1 -1
  39. data/app/views/exercises/_read_only.html.erb +1 -1
  40. data/app/views/exercises/show.html.erb +2 -2
  41. data/app/views/layouts/_discussions.html.erb +0 -4
  42. data/app/views/layouts/_guide.html.erb +9 -36
  43. data/app/views/layouts/_guide_container.html.erb +28 -0
  44. data/app/views/layouts/_guide_title_icons.html.erb +9 -0
  45. data/app/views/layouts/_kids.html.erb +4 -4
  46. data/app/views/layouts/_kindergarten.html.erb +5 -5
  47. data/app/views/layouts/_social_media.html.erb +4 -4
  48. data/app/views/layouts/_timer.html.erb +1 -1
  49. data/app/views/layouts/application.html.erb +7 -5
  50. data/app/views/layouts/exercise_inputs/editors/_code.html.erb +1 -6
  51. data/app/views/layouts/exercise_inputs/editors/_multiple_files.html.erb +4 -9
  52. data/app/views/layouts/exercise_inputs/forms/_problem_form.html.erb +1 -1
  53. data/app/views/layouts/exercise_inputs/layouts/_input_kindergarten.html.erb +1 -1
  54. data/app/views/layouts/modals/_guide_corollary.html.erb +13 -3
  55. data/app/views/layouts/modals/_kids_results.html.erb +2 -2
  56. data/app/views/layouts/modals/_kindergarten_context.html.erb +3 -3
  57. data/app/views/layouts/modals/_kindergarten_results.html.erb +3 -3
  58. data/app/views/layouts/modals/_kindergarten_results_aborted.html.erb +2 -2
  59. data/app/views/layouts/modals/_level_up.html.erb +1 -1
  60. data/app/views/lessons/show.html.erb +1 -1
  61. data/app/views/users/_edit_user_form.html.erb +1 -1
  62. data/app/views/users/_term.html.erb +1 -1
  63. data/app/views/users/_user_form.html.erb +1 -1
  64. data/lib/mumuki/laboratory/controllers/results_rendering.rb +2 -1
  65. data/lib/mumuki/laboratory/engine.rb +1 -1
  66. data/lib/mumuki/laboratory/locales/en.yml +6 -8
  67. data/lib/mumuki/laboratory/locales/es-CL.yml +6 -3
  68. data/lib/mumuki/laboratory/locales/es.yml +9 -10
  69. data/lib/mumuki/laboratory/locales/pt.yml +6 -8
  70. data/lib/mumuki/laboratory/version.rb +1 -1
  71. data/spec/controllers/exercise_solutions_controller_spec.rb +3 -2
  72. data/spec/dummy/db/schema.rb +50 -1
  73. data/spec/dummy/public/character/animations.json +1 -0
  74. data/{public → spec/dummy/public}/character/kibi/context.svg +0 -0
  75. data/{public → spec/dummy/public}/character/kibi/failure.svg +0 -0
  76. data/{public → spec/dummy/public}/character/kibi/jump.svg +0 -0
  77. data/spec/dummy/public/character/kibi/passed_with_warnings.svg +4 -0
  78. data/{public → spec/dummy/public}/character/kibi/success2_l.svg +0 -0
  79. data/{public → spec/dummy/public}/character/kibi/success_l.svg +0 -0
  80. data/{public → spec/dummy/public}/character/magnifying_glass/apparition.svg +0 -0
  81. data/{public → spec/dummy/public}/character/magnifying_glass/loop.svg +0 -0
  82. data/spec/features/chapters_flow_spec.rb +112 -0
  83. data/spec/features/login_flow_spec.rb +1 -1
  84. data/spec/features/terms_flow_spec.rb +2 -0
  85. data/spec/features/topic_flow_spec.rb +0 -1
  86. data/spec/helpers/icons_helper_spec.rb +3 -3
  87. data/spec/helpers/test_results_rendering_spec.rb +8 -8
  88. data/spec/helpers/with_navigation_spec.rb +14 -14
  89. data/spec/javascripts/bridge-spec.js +2 -2
  90. data/spec/javascripts/csrf-token-spec.js +2 -2
  91. data/spec/javascripts/editors-spec.js +7 -9
  92. data/spec/javascripts/elipsis-spec.js +4 -4
  93. data/spec/javascripts/events-spec.js +7 -7
  94. data/spec/javascripts/exercise-spec.js +7 -8
  95. data/spec/javascripts/gamification-spec.js +2 -2
  96. data/spec/javascripts/global-spec.js +3 -3
  97. data/spec/javascripts/i18n-spec.js +82 -0
  98. data/spec/javascripts/kids-button-spec.js +34 -0
  99. data/spec/javascripts/results-renderers-spec.js +5 -5
  100. data/spec/javascripts/speech-bubble-renderer-spec.js +2 -3
  101. data/spec/javascripts/submissions-store-spec.js +14 -14
  102. data/spec/javascripts/sync-mode-spec.js +3 -3
  103. data/spec/javascripts/timeout-spec.js +2 -2
  104. data/spec/javascripts/timer-spec.js +2 -2
  105. metadata +140 -117
  106. data/spec/dummy/config/database.travis.yml +0 -4
  107. data/spec/features/chapter_spec.rb +0 -70
@@ -1,47 +1,12 @@
1
1
  <%= render_runner_assets @guide.language, :layout %>
2
2
 
3
- <%= content_for :breadcrumbs do %>
4
- <%= breadcrumbs subject %>
5
- <% end %>
6
-
7
3
  <%= render partial: 'layouts/authoring', locals: {guide: @guide} %>
8
4
 
9
5
  <% if subject.timed? && subject.started?(current_user) && !current_user.teacher? %>
10
6
  <%= render partial: 'layouts/timer', locals: {end_time: subject.real_end_time(current_user)} %>
11
7
  <% end %>
12
8
 
13
- <div class="row">
14
- <div class="mu-inline-block-right">
15
- <h1><%= language_icon @guide.language %></h1>
16
- </div>
17
- <div class="mu-inline-block-left guide-header">
18
- <h1 class="pull-left">
19
- <span class="pull-left">
20
- <%= subject.name %>
21
- </span>
22
- <% if current_user? && should_display_medal?(@guide, Organization.current) %>
23
- <div class="pull-left">
24
- <%= content_medal_for(@guide, current_user) %>
25
- </div>
26
- <% end %>
27
- <%= teacher_info_button @guide%>
28
- <%= link_to_bibliotheca_guide @guide %>
29
- </h1>
30
- </div>
31
- </div>
32
- <div class="row">
33
- <div class="col-md-12">
34
- <div class="text-box">
35
- <%= @guide.description_html %>
36
-
37
- <div class="actions">
38
- <% if !@stats.try(:done?) && @next_exercise %>
39
- <%= link_to t(lesson_practice_key_for(@stats)), exercise_path(@next_exercise), class: 'btn btn-success' %>
40
- <% end %>
41
- </div>
42
- </div>
43
- </div>
44
- </div>
9
+ <%= yield if block_given? %>
45
10
 
46
11
  <h3>
47
12
  <%= t :exercises %>
@@ -63,6 +28,14 @@
63
28
  </div>
64
29
  <% end %>
65
30
 
31
+ <% if !@stats.try(:done?) && @next_exercise %>
32
+ <div class="text-box">
33
+ <div class="actions">
34
+ <%= link_to t(lesson_practice_key_for(@stats)), exercise_path(@next_exercise), class: 'btn btn-success' %>
35
+ </div>
36
+ </div>
37
+ <% end %>
38
+
66
39
  <% if @stats&.done? %>
67
40
  <div class="text-box">
68
41
  <div class="actions">
@@ -0,0 +1,28 @@
1
+ <%= content_for :breadcrumbs do %>
2
+ <%= breadcrumbs subject %>
3
+ <% end %>
4
+
5
+ <%= render layout: 'layouts/guide', locals: { subject: subject } do %>
6
+
7
+ <div class="row">
8
+ <div class="mu-inline-block-right">
9
+ <h1><%= language_icon @guide.language %></h1>
10
+ </div>
11
+ <div class="mu-inline-block-left guide-header">
12
+ <h1 class="pull-left">
13
+ <span class="pull-left">
14
+ <%= subject.name %>
15
+ </span>
16
+ <%= render partial: 'layouts/guide_title_icons' %>
17
+ </h1>
18
+ </div>
19
+ </div>
20
+ <div class="row">
21
+ <div class="col-md-12">
22
+ <div class="text-box">
23
+ <%= @guide.description_html %>
24
+ </div>
25
+ </div>
26
+ </div>
27
+
28
+ <% end %>
@@ -0,0 +1,9 @@
1
+ <div class="guide-title-icons pull-left">
2
+ <% if current_user? && should_display_medal?(@guide, Organization.current) %>
3
+ <div class="pull-left">
4
+ <%= content_medal_for(@guide, current_user) %>
5
+ </div>
6
+ <% end %>
7
+ <%= teacher_info_button @guide %>
8
+ <%= link_to_bibliotheca_guide @guide %>
9
+ </div>
@@ -3,17 +3,17 @@
3
3
  <% if exercise.hint? %>
4
4
  <ul class="mu-kids-character-speech-bubble-tabs">
5
5
  <li class="mu-kids-description active" data-target="description" title="<%= t :task %>">
6
- <i class="fa fa-fw fa-file-text-o"></i>
6
+ <i class="far fa-fw fa-file-alt"></i>
7
7
  </li>
8
8
  <li class="separator"></li>
9
9
  <li class="mu-kids-hint blink" data-target="hint" title="<%= t :need_a_hint %>">
10
- <i class="fa fa-fw fa-lightbulb-o"></i>
10
+ <i class="far fa-fw fa-lightbulb"></i>
11
11
  </li>
12
12
  </ul>
13
13
  <% end %>
14
14
  <div class="mu-kids-character-speech-bubble-normal">
15
- <i class="mu-kids-prev-speech fa fa-fw fa-caret-up"></i>
16
- <i class="mu-kids-next-speech fa fa-fw fa-caret-down"></i>
15
+ <i class="mu-kids-prev-speech fas fa-fw fa-caret-up"></i>
16
+ <i class="mu-kids-next-speech fas fa-fw fa-caret-down"></i>
17
17
  <div class="description"><%= exercise.description_task %></div>
18
18
  <div class="hint" style="display: none"><%= exercise.hint_html %></div>
19
19
  </div>
@@ -5,10 +5,10 @@
5
5
  <span class="mu-kindergarten-exercise-description"><%= exercise.description_task %></span>
6
6
  <div class="mu-kindergarten-buttons">
7
7
  <button class="mu-kindergarten-show-context" onclick="mumuki.kids.context.show()">
8
- <img class="mu-kindergarten-button-image" src="https://mumuki.io/static/show-context.svg" alt="">
8
+ <img class="mu-kindergarten-button-image" src="https://mumuki.io/static/show-context.svg" alt="" title="<%= t :see_context %>">
9
9
  </button>
10
10
  <button class="mu-kindergarten-play-description" onclick="mumuki.kids.speech.click('.mu-kindergarten-exercise-description', '<%= exercise.locale %>')">
11
- <img class="mu-kindergarten-button-image mu-kindergarten-play" src="https://mumuki.io/static/audio-play.svg" alt="">
11
+ <img class="mu-kindergarten-button-image mu-kindergarten-play" src="https://mumuki.io/static/audio-play.svg" alt="" title="<%= t :listen_statement %>">
12
12
  <img class="mu-kindergarten-button-image mu-kindergarten-stop hidden" src="https://mumuki.io/static/audio-stop.svg" alt="">
13
13
  </button>
14
14
  </div>
@@ -17,18 +17,18 @@
17
17
  <div class="mu-kindergarten-hint">
18
18
  <% if exercise.hint? %>
19
19
  <button class="mu-hint-light" onclick="mumuki.kids.hint.toggle()">
20
- <img class="mu-hint-light on" src="https://mumuki.io/static/lamparita_on.svg" alt="">
20
+ <img class="mu-hint-light on" src="https://mumuki.io/static/lamparita_on.svg" alt="" title="<%= t :need_a_hint %>">
21
21
  </button>
22
22
  <div class="mu-kindergarten-light-speech-bubble">
23
23
  <span class="mu-kindergarten-exercise-hint">
24
24
  <%= exercise.hint.markdownified %>
25
25
  </span>
26
26
  <button class="expand-or-collapse-hint-media" onclick="mumuki.kids.hint.toggleMedia()">
27
- <i class="fa fa-fw fa-2x fa-caret-up"></i>
27
+ <i class="fas fa-fw fa-2x fa-caret-up"></i>
28
28
  </button>
29
29
  </div>
30
30
  <% else %>
31
- <img class="mu-hint-light off" src="https://mumuki.io/static/lamparita_off.svg" alt="">
31
+ <img class="mu-hint-light off" src="https://mumuki.io/static/lamparita_off.svg" alt="" title="<%= t :no_need_hint %>">
32
32
  <% end %>
33
33
  </div>
34
34
  </div>
@@ -1,4 +1,4 @@
1
- <a class="fa fa-facebook social-icon" aria-label="Facebook" href="https://www.facebook.com/MumukiOrg" target="_blank"></a>
2
- <a class="fa fa-twitter social-icon" aria-label="Twitter" href="https://twitter.com/MumukiOrg" target="_blank"></a>
3
- <a class="fa fa-github social-icon" aria-label="Github" href="https://github.com/mumuki" target="_blank"></a>
4
- <a class="fa fa-linkedin social-icon" aria-label="LinkedIn" href="https://www.linkedin.com/company/mumukiorg" target="_blank"></a>
1
+ <a class="fab fa-instagram social-icon" aria-label="Instagram" href="https://www.instagram.com/mumukiorg" target="_blank"></a>
2
+ <a class="fab fa-twitter social-icon" aria-label="Twitter" href="https://twitter.com/MumukiOrg" target="_blank"></a>
3
+ <a class="fab fa-youtube social-icon" aria-label="Youtube" href="https://www.youtube.com/c/MumukiOrg" target="_blank"></a>
4
+ <a class="fab fa-github social-icon" aria-label="Github" href="https://github.com/mumuki" target="_blank"></a>
@@ -1,6 +1,6 @@
1
1
  <div class="row">
2
2
  <div class="col-md-3 col-md-offset-5">
3
- <i class="timer text-center fa fa-clock-o"></i>
3
+ <i class="timer text-center far fa-clock"></i>
4
4
  <i class="timer timer-text text-center"><%= t :time_left %></i>
5
5
  <i id="timer" class="timer timer-text text-center"></i>
6
6
  <script>
@@ -10,7 +10,7 @@
10
10
  <div class="dropdown hamburguer-breadcrumb hidden-sm hidden-md hidden-lg">
11
11
  <% if content_for? :breadcrumbs %>
12
12
  <span class="hamburguer" id="profileDropdown" data-toggle="dropdown">
13
- <i class="fa fa-bars"></i>
13
+ <i class="fas fa-bars"></i>
14
14
  </span>
15
15
  <ul class="dropdown-menu dropdown-menu-left" aria-labelledby="profileDropdown">
16
16
  <%= yield :breadcrumbs %>
@@ -21,13 +21,13 @@
21
21
  <% if current_logged_user? %>
22
22
  <% if in_gamified_context? %>
23
23
  <div class="mu-navbar-element">
24
- <i class="fa fa-star fa-fw fa-2x mu-navbar-icon mu-level-tooltip" data-toggle="tooltip" data-placement="bottom" level="<%= t(:level) %>"></i>
24
+ <i class="fas fa-star fa-fw fa-2x mu-navbar-icon mu-level-tooltip" data-toggle="tooltip" data-placement="bottom" level="<%= t(:level) %>"></i>
25
25
  <span class="mu-level-number"></span>
26
26
  </div>
27
27
  <% end %>
28
28
  <div class="dropdown mu-navbar-element notifications-box <%= 'notifications-box-empty' unless has_notifications? %>">
29
29
  <a href=<%= "#{user_notifications_path}" %>>
30
- <i class="fa fa-bell fa-fw fa-2x mu-navbar-icon"></i>
30
+ <i class="fas fa-bell fa-fw fa-2x mu-navbar-icon"></i>
31
31
  <span class="badge badge-notifications"><%= notifications_count %></span>
32
32
  </a>
33
33
  </div>
@@ -38,8 +38,10 @@
38
38
  </div>
39
39
  <ul class="dropdown-menu dropdown-menu-right" aria-labelledby="profileDropdown">
40
40
  <%= menu_bar_list_items %>
41
- <li class="divider"></li>
42
- <li><%= link_to(t(:sign_out), logout_path(origin: url_for), role: 'menuitem') %></li>
41
+ <% if any_menu_bar_links? %>
42
+ <li class="divider"></li>
43
+ <% end %>
44
+ <%= logout_link %>
43
45
  </ul>
44
46
  </div>
45
47
  <% else %>
@@ -5,12 +5,7 @@
5
5
  value: @current_content,
6
6
  data: {lines: 17} %>
7
7
  <div class="mu-overlapped">
8
- <a class="editor-resize" title="<%= t(:fullscreen) %> (F11)">
9
- <span class="fa-stack fa-lg">
10
- <i class="fa fa-square-o fa-stack-2x"></i>
11
- <i class="fa fa-expand fa-stack-1x"></i>
12
- </span>
13
- </a>
8
+ <a class="editor-resize"> <%= expand_icon %></a>
14
9
  <a class="editor-format"><%= format_icon %></a>
15
10
  <a class="editor-reset submission-reset" data-confirm="<%= t(:confirm_reset) %>"><%= restart_icon %></a>
16
11
  </div>
@@ -5,11 +5,11 @@
5
5
  <ul class="nav nav-tabs">
6
6
  <% @files.each_with_index do |file, index| %>
7
7
  <li role="presentation" class="file-tab <%= 'active' if index == 0 %>" data-target="#editor-file-<%= index %>" tabindex='0' data-toggle='tab'>
8
- <a class="file-name" href="#"><%= file.name %></a> <i class="delete-file-button fa fa-times"></i>
8
+ <a class="file-name" href="#"><%= file.name %></a> <i class="delete-file-button fas fa-times"></i>
9
9
  </li>
10
10
  <% end %>
11
11
  </ul>
12
- <i class="add-file-button fa fa-plus"></i>
12
+ <i class="add-file-button fas fa-plus"></i>
13
13
  </span>
14
14
 
15
15
  <%= multifile_hidden_inputs %>
@@ -27,14 +27,9 @@
27
27
  </div>
28
28
 
29
29
  <div class="mu-overlapped multiple-files">
30
- <a class="editor-resize" title="<%= t(:fullscreen) %> (F11)">
31
- <span class="fa-stack fa-lg">
32
- <i class="fa fa-square-o fa-stack-2x"></i>
33
- <i class="fa fa-expand fa-stack-1x"></i>
34
- </span>
35
- </a>
30
+ <a class="editor-resize"> <%= expand_icon %></a>
31
+ <a class="editor-format"><%= format_icon %></a>
36
32
  <!--<a class="editor-reset submission-reset" data-confirm="<%= t(:confirm_reset) %>"><%= restart_icon %></a> -->
37
33
  </div>
38
-
39
34
  </div>
40
35
  </div>
@@ -4,7 +4,7 @@
4
4
  <% if should_render_problem_tabs? exercise, current_user %>
5
5
  <ul class="nav nav-tabs" role="tablist">
6
6
  <li role="presentation" class="active">
7
- <a data-target="#editor" aria-controls="editor" tabindex="0" role="tab" data-toggle="tab" class="editor-tab"><%= fa_icon 'pencil-square' %> <%= t :solution %></a>
7
+ <a data-target="#editor" aria-controls="editor" tabindex="0" role="tab" data-toggle="tab" class="editor-tab"><%= fa_icon 'pen-square' %> <%= t :solution %></a>
8
8
  </li>
9
9
  <% if exercise.extra_visible? %>
10
10
  <%= extra_code_tab %>
@@ -1,6 +1,6 @@
1
1
  <% content_for :no_container do %>
2
2
 
3
- <div <%= turbolinks_enable_for exercise %>>
3
+ <div <%= turbolinks_enable_for exercise %> data-i18n-prefix="kindergarten">
4
4
 
5
5
  <div class="mu-kids-landscape-support container-fluid">
6
6
  <img class="mu-kids-character-animation"/>
@@ -1,9 +1,19 @@
1
- <div class="modal fade guide-corollary mu-kids-modal-border" id="guide-done" tabindex="-1" role="dialog" aria-hidden="true">
1
+ <div class="modal fade guide-corollary <%= 'mu-kids-modal-border' if Organization.current.kids? %>" id="guide-done" tabindex="-1" role="dialog" aria-hidden="true">
2
2
  <div class="modal-dialog">
3
3
  <div class="modal-content">
4
+ <% if Organization.current.kids? %>
5
+ <button type="button" class="mu-kids-modal-button mu-close" data-dismiss="modal" aria-label="Close">
6
+ <span aria-hidden="true">
7
+ <i class="fas fa-fw fa-times fa-3x"></i>
8
+ </span>
9
+ </button>
10
+ <% end %>
4
11
  <div class="modal-header">
5
- <button type="button" class="close" data-dismiss="modal" aria-label="Close">
6
- <span aria-hidden="true">&times;</span></button>
12
+ <% if Organization.current.grown_ups? %>
13
+ <button type="button" class="close" data-dismiss="modal" aria-label="Close">
14
+ <span aria-hidden="true">&times;</span>
15
+ </button>
16
+ <% end %>
7
17
  <div class="guide-corollary-title">
8
18
  <h3 class="text-left" id="gridSystemModalLabel"><%= t :guide_finished, guide: guide.name %> </h3>
9
19
  </div>
@@ -3,12 +3,12 @@
3
3
  <div class="modal-content success">
4
4
  <button type="button" class="mu-kids-modal-button mu-previous hidden" onclick="mumuki.kids.resultsCarrousel.prevSlide()" aria-label="Previous">
5
5
  <span aria-hidden="true">
6
- <i class="fa fa-fw fa-arrow-left fa-3x"></i>
6
+ <i class="fas fa-fw fa-arrow-left fa-3x"></i>
7
7
  </span>
8
8
  </button>
9
9
  <button type="button" class="mu-kids-modal-button mu-next" onclick="mumuki.kids.resultsCarrousel.nextSlide()" aria-label="Next">
10
10
  <span aria-hidden="true">
11
- <i class="fa fa-fw fa-arrow-right fa-3x"></i>
11
+ <i class="fas fa-fw fa-arrow-right fa-3x"></i>
12
12
  </span>
13
13
  </button>
14
14
  <div class="modal-header text-center">
@@ -3,17 +3,17 @@
3
3
  <div class="modal-content kindergarten">
4
4
  <button type="button" class="mu-kids-modal-button mu-close" data-waiting="" data-dismiss="modal" aria-label="Close">
5
5
  <span aria-hidden="true">
6
- <i class="fa fa-fw fa-times fa-3x"></i>
6
+ <i class="fas fa-fw fa-times fa-3x"></i>
7
7
  </span>
8
8
  </button>
9
9
  <button type="button" class="mu-kids-modal-button mu-previous hidden" onclick="mumuki.kids.context.prevSlide()" aria-label="Previous">
10
10
  <span aria-hidden="true">
11
- <i class="fa fa-fw fa-arrow-left fa-3x"></i>
11
+ <i class="fas fa-fw fa-arrow-left fa-3x"></i>
12
12
  </span>
13
13
  </button>
14
14
  <button type="button" class="mu-kids-modal-button mu-next" onclick="mumuki.kids.context.nextSlide()" aria-label="Next">
15
15
  <span aria-hidden="true">
16
- <i class="fa fa-fw fa-arrow-right fa-3x"></i>
16
+ <i class="fas fa-fw fa-arrow-right fa-3x"></i>
17
17
  </span>
18
18
  </button>
19
19
  <div class="modal-body mu-kids-context-body">
@@ -3,17 +3,17 @@
3
3
  <div class="modal-content kindergarten">
4
4
  <button type="button" class="mu-kids-modal-button mu-close" data-waiting="" data-dismiss="modal" aria-label="Close">
5
5
  <span aria-hidden="true">
6
- <i class="fa fa-fw fa-times fa-3x"></i>
6
+ <i class="fas fa-fw fa-times fa-3x"></i>
7
7
  </span>
8
8
  </button>
9
9
  <button type="button" class="mu-kids-modal-button mu-previous hidden" onclick="mumuki.kids.resultsCarrousel.prevSlide()" aria-label="Previous">
10
10
  <span aria-hidden="true">
11
- <i class="fa fa-fw fa-arrow-left fa-3x"></i>
11
+ <i class="fas fa-fw fa-arrow-left fa-3x"></i>
12
12
  </span>
13
13
  </button>
14
14
  <button type="button" class="mu-kids-modal-button mu-next" onclick="mumuki.kids.resultsCarrousel.nextSlide()" aria-label="Next">
15
15
  <span aria-hidden="true">
16
- <i class="fa fa-fw fa-arrow-right fa-3x"></i>
16
+ <i class="fas fa-fw fa-arrow-right fa-3x"></i>
17
17
  </span>
18
18
  </button>
19
19
  <div class="modal-header">
@@ -3,12 +3,12 @@
3
3
  <div class="modal-content broken kindergarten">
4
4
  <button type="button" class="mu-kids-modal-button mu-close" data-dismiss="modal" aria-label="Close" data-waiting="">
5
5
  <span aria-hidden="true">
6
- <i class="fa fa-fw fa-times fa-3x"></i>
6
+ <i class="fas fa-fw fa-times fa-3x"></i>
7
7
  </span>
8
8
  </button>
9
9
  <div class="modal-header">
10
10
  <h4 class="modal-title text-broken">
11
- <strong><%= t :kindergarten_aborted %></strong>
11
+ <strong><%= t :aborted %></strong>
12
12
  </h4>
13
13
  </div>
14
14
  <div class="modal-body">
@@ -13,7 +13,7 @@
13
13
  <div class="row">
14
14
  <div class="col-md-12">
15
15
  <div class="text-center mu-level">
16
- <i class="fa fa-star fa-fw fa-4x"></i>
16
+ <i class="fas fa-star fa-fw fa-4x"></i>
17
17
  <span class="mu-level-number"></span>
18
18
  <p></p>
19
19
  <p id="mu-solve-more-exercises"> <%= (t :solve_more_exercises_to_level_up).html_safe %></p>
@@ -1 +1 @@
1
- <%= render partial: "layouts/guide", locals: { subject: @lesson }%>
1
+ <%= render partial: "layouts/guide_container", locals: { subject: @lesson }%>
@@ -9,7 +9,7 @@
9
9
  <div class="row mu-tab-body">
10
10
  <div class="col-md-4 text-center">
11
11
  <%= profile_picture_for(@user, id: 'mu-user-avatar', class: 'mu-user-avatar') %>
12
- <i class="fa fa-pencil fa-2x pointer mu-edit-avatar" id="mu-edit-avatar-icon" tabindex="0"></i>
12
+ <i class="fas fa-pencil-alt fa-2x pointer mu-edit-avatar" id="mu-edit-avatar-icon" tabindex="0"></i>
13
13
  </div>
14
14
  <div class="col-md-8">
15
15
  <%= render partial: 'profile_fields', locals: {form: f} %>
@@ -1,7 +1,7 @@
1
1
  <div class="terms-card">
2
2
  <details <%= 'open' unless collapsed %>>
3
3
  <summary class="terms-card-header">
4
- <h4><%= term.header %></h4>
4
+ <h4 class="terms-card-title"><%= term.header %></h4>
5
5
  </summary>
6
6
  <div class="terms-card-body">
7
7
  <%= term.content_html %>
@@ -12,7 +12,7 @@
12
12
  <path id="mu-level-progress" stroke-linecap="round" stroke="#24b8aa" stroke-width="4" stroke-dasharray="0, 999" fill="none" d="M50 10 a 40 40 0 0 1 0 80 a 40 40 0 0 1 0 -80"></path>
13
13
  </svg>
14
14
  <div class="mu-level">
15
- <i class="fa fa-star fa-fw fa-4x"></i>
15
+ <i class="fas fa-star fa-fw fa-4x"></i>
16
16
  <span class="mu-level-number"></span>
17
17
  <p><%= t :level %></p>
18
18
  </div>
@@ -20,7 +20,8 @@ module Mumuki::Laboratory::Controllers::ResultsRendering
20
20
  .merge(
21
21
  html: render_results(layout, assignment),
22
22
  remaining_attempts_html: remaining_attempts_text(assignment),
23
- current_exp: UserStats.exp_for(assignment.submitter))
23
+ current_exp: UserStats.exp_for(assignment.submitter),
24
+ in_gamified_context: Organization.current.gamification_enabled?)
24
25
  end
25
26
 
26
27
  def merge_kids_specific_renders(assignment, results)
@@ -1,5 +1,5 @@
1
1
  require 'turbolinks'
2
- require 'font-awesome-rails'
2
+ require 'font_awesome5_rails'
3
3
  require 'momentjs-rails'
4
4
  require 'nprogress-rails'
5
5
  require 'rails-i18n'