Commit 5316b7d148579cf929f67c058e694c526715c89f

Authored by Miguel Barão
1 parent bcbec429
Exists in master and in 1 other branch dev

Replace font-awesome by bootstrap-icons

Testing needed: prize at the end of topic?
aprendizations/templates/courses.html
... ... @@ -10,9 +10,10 @@
10 10 <!-- bootstrap -->
11 11 <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-gH2yIJqKdNHPEq0n4Mqa/HGKIhSkIHeL5AyhkYV8i59U5AR6csBvApHHNl/vI1Bx" crossorigin="anonymous">
12 12 <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-A3rJD856KowSb7dwlZdYEkO39Gagi7vIsF0jrRAoQmDKKtQBHUuLZ9AsSv4jD4Xa" crossorigin="anonymous"></script>
  13 + <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.9.1/font/bootstrap-icons.css">
13 14  
14 15 <!-- font-awesome -->
15   - <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css" rel="stylesheet">
  16 + <!-- <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css" rel="stylesheet"> -->
16 17  
17 18 <link rel="stylesheet" href="{{static_url('css/maintopics.css')}}">
18 19 <link rel="stylesheet" href="{{static_url('css/sticky-footer-navbar.css')}}">
... ... @@ -43,7 +44,8 @@
43 44 <ul class="navbar-nav ms-auto">
44 45 <li class="nav-item dropdown">
45 46 <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
46   - <i class="fas fa-user-graduate" aria-hidden="true"></i>
  47 + <i class="bi bi-person-circle"></i>
  48 + <!-- <i class="fas fa-user-graduate" aria-hidden="true"></i> -->
47 49 &nbsp;
48 50 <span id="name">{{ escape(name) }}</span>
49 51 <span class="caret"></span>
... ...
aprendizations/templates/login.html
... ... @@ -6,8 +6,8 @@
6 6 <meta name="author" content="Miguel Barão">
7 7  
8 8 <!-- Bootstrap core CSS -->
9   - <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-gH2yIJqKdNHPEq0n4Mqa/HGKIhSkIHeL5AyhkYV8i59U5AR6csBvApHHNl/vI1Bx" crossorigin="anonymous">
10   - <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-A3rJD856KowSb7dwlZdYEkO39Gagi7vIsF0jrRAoQmDKKtQBHUuLZ9AsSv4jD4Xa" crossorigin="anonymous"></script>
  9 + <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-gH2yIJqKdNHPEq0n4Mqa/HGKIhSkIHeL5AyhkYV8i59U5AR6csBvApHHNl/vI1Bx" crossorigin="anonymous">
  10 + <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-A3rJD856KowSb7dwlZdYEkO39Gagi7vIsF0jrRAoQmDKKtQBHUuLZ9AsSv4jD4Xa" crossorigin="anonymous"></script>
11 11  
12 12 <style>
13 13 .bd-placeholder-img {
... ...
aprendizations/templates/maintopics-table.html
... ... @@ -14,9 +14,10 @@
14 14 <!-- bootstrap -->
15 15 <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-gH2yIJqKdNHPEq0n4Mqa/HGKIhSkIHeL5AyhkYV8i59U5AR6csBvApHHNl/vI1Bx" crossorigin="anonymous">
16 16 <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-A3rJD856KowSb7dwlZdYEkO39Gagi7vIsF0jrRAoQmDKKtQBHUuLZ9AsSv4jD4Xa" crossorigin="anonymous"></script>
  17 + <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.9.1/font/bootstrap-icons.css">
17 18  
18 19 <!-- font-awesome -->
19   - <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css" rel="stylesheet">
  20 + <!-- <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css" rel="stylesheet"> -->
20 21  
21 22 <link rel="stylesheet" href="{{static_url('css/maintopics.css')}}">
22 23 <script defer src="{{static_url('js/maintopics.js')}}"></script>
... ... @@ -41,7 +42,8 @@
41 42 <ul class="navbar-nav ms-auto">
42 43 <li class="nav-item dropdown">
43 44 <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
44   - <i class="fas fa-user-graduate" aria-hidden="true"></i>
  45 + <!-- <i class="fas fa-user-graduate" aria-hidden="true"></i> -->
  46 + <i class="bi bi-person-circle"></i>
45 47 &nbsp;
46 48 <span id="name">{{ escape(name) }}</span>
47 49 <span class="caret"></span>
... ... @@ -107,17 +109,26 @@
107 109 <tr>
108 110 <th scope="row" class="text-muted text-center">
109 111 {% if t['type']=='chapter' %}
110   - <i class="fas fa-flag"></i>
  112 + <!-- <i class="fas fa-flag"></i> -->
  113 + <i class="bi bi-flag-fill"></i>
111 114 {% elif t['type']=='learn' %}
112   - <i class="fas fa-book"></i>&nbsp;
  115 + <!-- <i class="fas fa-book"></i>&nbsp; -->
  116 + <!-- <i class="bi bi-book-fill"></i>&nbsp; -->
  117 + <h5>
  118 + <i class="bi bi-book"></i>&nbsp;
  119 + </h5>
  120 +
113 121 {% else %}
114 122 <i class="fas fa-pencil-alt"></i>&nbsp;
  123 + <i class="bi bi-pencil-fill"></i>&nbsp;
  124 + <i class="bi bi-pencil"></i>&nbsp;
115 125 {% end %}
116 126 </th>
117 127 <td>
118 128 <div class="text-muted">
119 129 {% if t['ref'] not in course['goals'] %}
120   - <i class="fas fa-puzzle-piece"></i>
  130 + <!-- <i class="fas fa-puzzle-piece"></i> -->
  131 + <i class="bi bi-puzzle-fill"></i>
121 132 {% end %}
122 133  
123 134  
... ... @@ -125,7 +136,8 @@
125 136 </div>
126 137 </td>
127 138 <td class="text-center">
128   - <i class="fas fa-lock text-muted"></i>
  139 + <!-- <i class="fas fa-lock text-muted"></i> -->
  140 + <i class="bi bi-lock-fill text-muted"></i>
129 141 </td>
130 142 </tr>
131 143  
... ... @@ -134,16 +146,30 @@
134 146 <tr class="clickable-row " data-href="/topic/{{t['ref']}}">
135 147 <th scope="row" class="text-primary text-center">
136 148 {% if t['type']=='chapter' %}
137   - <i class="fas fa-flag-checkered"></i>&nbsp;
  149 + <span class="text-nowrap" data-toggle="tooltip" data-placement="bottom" title="Fim do capítulo">
  150 + <!-- <i class="fas fa-flag-checkered"></i>&nbsp; -->
  151 + <i class="bi bi-flag-fill"></i>&nbsp;
  152 + </span>
138 153 {% elif t['type']=='learn' %}
139   - <i class="fas fa-book"></i>&nbsp;
  154 + <span class="text-nowrap" data-toggle="tooltip" data-placement="bottom" title="Texto com matéria">
  155 + <!-- <i class="fas fa-book"></i>&nbsp; -->
  156 + <!-- <i class="bi bi-book-fill"></i>&nbsp; -->
  157 + <i class="bi bi-book"></i>&nbsp;
  158 + </span>
140 159 {% else %}
141   - <i class="fas fa-pencil-alt"></i>&nbsp;
  160 + <span class="text-nowrap" data-toggle="tooltip" data-placement="bottom" title="Exercícios">
  161 + <!-- <i class="fas fa-pencil-alt"></i>&nbsp; -->
  162 + <!-- <i class="bi bi-pencil-fill"></i>&nbsp; -->
  163 + <i class="bi bi-pencil"></i>&nbsp;
  164 + </span>
142 165 {% end %}
143 166 </th>
144 167 <td class="text-primary">
145 168 {% if t['ref'] not in course['goals'] %}
146   - <i class="fas fa-puzzle-piece"></i>
  169 + <span class="text-nowrap" data-toggle="tooltip" data-placement="bottom" title="Pré-requisito para este curso">
  170 + <!-- <i class="fas fa-puzzle-piece"></i> -->
  171 + <i class="bi bi-puzzle-fill"></i>
  172 + </span>
147 173 {% end %}
148 174  
149 175 {{ t['name'] }}
... ... @@ -151,12 +177,16 @@
151 177  
152 178 <td class="text-center">
153 179 {% if t['level'] < 0.01 %}
154   - <i class="fas fa-lock-open text-success"></i>
  180 + <!-- <i class="fas fa-lock-open text-success"></i> -->
  181 + <i class="bi bi-unlock-fill text-success"></i>
  182 +
155 183 {% elif t['type']=='chapter' %}
156   - <h5><i class="fas fa-award text-warning"></i></h5>
  184 + <!-- <h5><i class="fas fa-award text-warning"></i></h5> -->
  185 + <i class="bi bi-award-fill"></i>
  186 +
157 187 {% else %}
158   - <span class="text-nowrap text-warning" data-toggle="tooltip" data-placement="bottom" title="{{round(t['level']*5, 2)}}">
159   - {{int(t['level']*5+0.25)*'<i class="fas fa-star"></i>'}}{% if int(t['level']*5+0.25) < 5 %}{{'<i class="fas fa-star-half-alt"></i>' if 0.25 <= t['level']*5-int(t['level']*5) < 0.75 else '<i class="far fa-star"></i>'}}{% end %}{{(4-int(t['level']*5+0.25))*'<i class="far fa-star"></i>' }}
  188 + <span class="text-nowrap text-warning" data-toggle="tooltip" data-placement="bottom" title="{{round(t['level']*5, 3)}}">
  189 + {{ int(t['level']*5+0.25)*'<i class="bi bi-star-fill"></i>' }}{% if int(t['level']*5+0.25) < 5 %}{{'<i class="bi bi-star-half"></i>' if 0.25 <= t['level']*5-int(t['level']*5) < 0.75 else '<i class="bi bi-star"></i>'}}{% end %}{{ (4-int(t['level']*5+0.25))*'<i class="bi bi-star"></i>' }}
160 190 </span>
161 191 {% end %} <!-- if -->
162 192 </td>
... ...
aprendizations/templates/rankings.html
... ... @@ -10,9 +10,10 @@
10 10 <!-- bootstrap -->
11 11 <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-gH2yIJqKdNHPEq0n4Mqa/HGKIhSkIHeL5AyhkYV8i59U5AR6csBvApHHNl/vI1Bx" crossorigin="anonymous">
12 12 <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-A3rJD856KowSb7dwlZdYEkO39Gagi7vIsF0jrRAoQmDKKtQBHUuLZ9AsSv4jD4Xa" crossorigin="anonymous"></script>
  13 + <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.9.1/font/bootstrap-icons.css">
13 14  
14 15 <!-- font-awesome -->
15   - <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css" rel="stylesheet">
  16 + <!-- <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css" rel="stylesheet"> -->
16 17  
17 18 <link rel="stylesheet" href="{{static_url('css/maintopics.css')}}">
18 19 <script defer src="{{static_url('js/maintopics.js')}}"></script>
... ... @@ -37,7 +38,8 @@
37 38 <ul class="navbar-nav ms-auto">
38 39 <li class="nav-item dropdown">
39 40 <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
40   - <i class="fas fa-user-graduate" aria-hidden="true"></i>
  41 + <!-- <i class="fas fa-user-graduate" aria-hidden="true"></i> -->
  42 + <i class="bi bi-person-circle"></i>
41 43 &nbsp;
42 44 <span id="name">{{ escape(name) }}</span>
43 45 <span class="caret"></span>
... ... @@ -60,7 +62,7 @@
60 62 <thead>
61 63 <tr>
62 64 <th scope="col" class="text-center">Posição</th>
63   - <th scope="col">Aluno</th>
  65 + <th scope="col">Nome</th>
64 66 <th scope="col">Progresso</th>
65 67 </tr>
66 68 </thead>
... ... @@ -69,7 +71,9 @@
69 71 <tr class="{{ 'table-secondary' if r[0] == uid else '' }}">
70 72 <td class="text-center"> <!-- rank -->
71 73 <strong>
72   - {{ '<i class="fas fa-crown fa-lg text-warning"></i>' if i==0 else i+1 }}
  74 + <!-- {{ '<i class="fas fa-crown fa-lg text-warning"></i>' if i==0 else i+1 }} -->
  75 + <!-- {{ '<h3><i class="bi bi-mortarboard-fill text-warning"></i></h3>' if i==0 else i+1 }} -->
  76 + {{ '<h3><i class="bi bi-trophy-fill text-warning"></i></h3>' if i==0 else i+1 }}
73 77 </strong>
74 78 </td>
75 79 <td> <!-- student name -->
... ...
aprendizations/templates/topic.html
... ... @@ -12,9 +12,10 @@
12 12 <!-- bootstrap -->
13 13 <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-gH2yIJqKdNHPEq0n4Mqa/HGKIhSkIHeL5AyhkYV8i59U5AR6csBvApHHNl/vI1Bx" crossorigin="anonymous">
14 14 <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-A3rJD856KowSb7dwlZdYEkO39Gagi7vIsF0jrRAoQmDKKtQBHUuLZ9AsSv4jD4Xa" crossorigin="anonymous"></script>
  15 + <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.9.1/font/bootstrap-icons.css">
15 16  
16 17 <!-- font-awesome -->
17   - <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css" />
  18 + <!-- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css" /> -->
18 19  
19 20 <!-- mathjax -->
20 21 <script>
... ...
demo/courses.yaml
... ... @@ -15,6 +15,7 @@ courses:
15 15 description: |
16 16 Adição, multiplicação e números primos.
17 17 goals:
  18 + - math
18 19 - math/addition
19 20 - math/multiplication
20 21 - math/prime-numbers
... ...
demo/math.yaml
... ... @@ -25,7 +25,23 @@ topics:
25 25 deps:
26 26 - math/addition
27 27  
  28 + math/learn-prime-numbers:
  29 + name: O que são números primos?
  30 + type: learn
  31 + file: learn.yaml
  32 + deps:
  33 + - math/multiplication
  34 +
28 35 math/prime-numbers:
29 36 name: Números primos
30 37 deps:
  38 + - math/learn-prime-numbers
  39 +
  40 + math:
  41 + name: Números e operações aritméticas
  42 + type: chapter
  43 + deps:
  44 + - math/addition
31 45 - math/multiplication
  46 + - math/learn-prime-numbers
  47 + - math/prime-numbers
... ...