Commit 4747a612586c30a75082134fb3755c172e91d669
Exists in
master
and in
3 other branches
Merge branch 'refactoring' of https://github.com/amadeusproject/amadeuslms into refactoring
Showing
31 changed files
with
1275 additions
and
533 deletions
Show diff stats
amadeus/settings.py
@@ -92,6 +92,7 @@ TEMPLATES = [ | @@ -92,6 +92,7 @@ TEMPLATES = [ | ||
92 | 'django.template.context_processors.request', | 92 | 'django.template.context_processors.request', |
93 | 'django.contrib.auth.context_processors.auth', | 93 | 'django.contrib.auth.context_processors.auth', |
94 | 'django.contrib.messages.context_processors.messages', | 94 | 'django.contrib.messages.context_processors.messages', |
95 | + 'amadeus.context_processors.theme', | ||
95 | ], | 96 | ], |
96 | }, | 97 | }, |
97 | }, | 98 | }, |
amadeus/static/css/base/amadeus.css
1 | +ul, li { | ||
2 | + list-style-type: none; | ||
3 | + text-decoration: none; | ||
4 | +} | ||
5 | + | ||
1 | .pagination > li > a, .pagination > li > span { | 6 | .pagination > li > a, .pagination > li > span { |
2 | padding: 0px 8px; | 7 | padding: 0px 8px; |
3 | } | 8 | } |
@@ -34,10 +39,9 @@ | @@ -34,10 +39,9 @@ | ||
34 | width: 70%; | 39 | width: 70%; |
35 | } | 40 | } |
36 | 41 | ||
37 | -.my-subjects-title{ | 42 | +.my-subjects-title { |
38 | font-family: Roboto; | 43 | font-family: Roboto; |
39 | - font-size: 18px; | ||
40 | - color: #26A69A; | 44 | + font-size: 18px; |
41 | } | 45 | } |
42 | 46 | ||
43 | /* initial page ends */ | 47 | /* initial page ends */ |
@@ -48,27 +52,13 @@ | @@ -48,27 +52,13 @@ | ||
48 | padding-left: 0px; | 52 | padding-left: 0px; |
49 | } | 53 | } |
50 | 54 | ||
51 | -#sidebar-menu .item{ | 55 | +#sidebar-menu .item { |
52 | font-size: 3vw; | 56 | font-size: 3vw; |
53 | - background-color: #26A69A; | ||
54 | - color: white; | ||
55 | width: 80%; | 57 | width: 80%; |
56 | margin: 10px 0px 10px 10px; | 58 | margin: 10px 0px 10px 10px; |
57 | text-align: center; | 59 | text-align: center; |
58 | } | 60 | } |
59 | 61 | ||
60 | -#sidebar-menu .item a{ | ||
61 | - color: white; | ||
62 | -} | ||
63 | - | ||
64 | -#sidebar-menu > .subjects_menu_active { | ||
65 | - background-color: #00695C; | ||
66 | -} | ||
67 | - | ||
68 | -#sidebar-menu > .item:hover{ | ||
69 | - background-color: #00695C; | ||
70 | -} | ||
71 | - | ||
72 | #subjects-link{ | 62 | #subjects-link{ |
73 | margin-top: 0px !important; | 63 | margin-top: 0px !important; |
74 | } | 64 | } |
@@ -76,21 +66,9 @@ | @@ -76,21 +66,9 @@ | ||
76 | #sidebar-menu-div{ | 66 | #sidebar-menu-div{ |
77 | padding-right: 10px; | 67 | padding-right: 10px; |
78 | } | 68 | } |
79 | - | ||
80 | - | ||
81 | - | ||
82 | /* side bar menu ends*/ | 69 | /* side bar menu ends*/ |
83 | 70 | ||
84 | /* category app starts */ | 71 | /* category app starts */ |
85 | - | ||
86 | -.panel-invisible{ | ||
87 | - background-color: #BDBDBD !important; | ||
88 | - color: #F5F5F5; | ||
89 | -} | ||
90 | - | ||
91 | -.category-panel > .panel-heading { | ||
92 | - background-color: #0277BD !important; | ||
93 | -} | ||
94 | .category-panel > .panel-heading, .subject-panel > .panel-heading, .special-panel > .panel-heading { | 72 | .category-panel > .panel-heading, .subject-panel > .panel-heading, .special-panel > .panel-heading { |
95 | padding: 2px 0px; | 73 | padding: 2px 0px; |
96 | } | 74 | } |
@@ -99,10 +77,6 @@ | @@ -99,10 +77,6 @@ | ||
99 | padding: 2px 0px; | 77 | padding: 2px 0px; |
100 | } | 78 | } |
101 | 79 | ||
102 | -.subject-panel > .panel-heading { | ||
103 | - background-color: #039BE5 !important; | ||
104 | -} | ||
105 | - | ||
106 | .subject-group { | 80 | .subject-group { |
107 | margin-left: 20px; | 81 | margin-left: 20px; |
108 | } | 82 | } |
@@ -129,84 +103,58 @@ | @@ -129,84 +103,58 @@ | ||
129 | float: none; | 103 | float: none; |
130 | } | 104 | } |
131 | 105 | ||
132 | -.category-header i{ | ||
133 | - color: white; | 106 | +.category-header i { |
134 | font-size: 20px; | 107 | font-size: 20px; |
135 | float: right; | 108 | float: right; |
136 | } | 109 | } |
137 | 110 | ||
138 | -.category-header i:hover{ | ||
139 | - color: #90CAF9; | ||
140 | -} | ||
141 | - | ||
142 | - | ||
143 | -.category-header .dropdown-menu i { | ||
144 | - color: inherit; | ||
145 | -} | ||
146 | - | ||
147 | .cat-selector { | 111 | .cat-selector { |
148 | margin: 0; | 112 | margin: 0; |
149 | top: -2px; | 113 | top: -2px; |
150 | } | 114 | } |
151 | 115 | ||
152 | -#create-category{ | ||
153 | - margin-left: 20%; | ||
154 | - margin-bottom: 1%; | ||
155 | - border: none; | ||
156 | - background-color: #66BB6A; | ||
157 | - color: #FFFFFF; | ||
158 | - width: 60%; | ||
159 | - height: 40px; | ||
160 | - font-size: 15px; | 116 | +#create-category { |
117 | + margin-left: 20%; | ||
118 | + margin-bottom: 1%; | ||
119 | + border: none; | ||
120 | + width: 60%; | ||
121 | + height: 40px; | ||
122 | + font-size: 15px; | ||
161 | } | 123 | } |
162 | 124 | ||
163 | -.category-panel-content{ | ||
164 | - padding:10px; | ||
165 | - background: #F5F5F5; | 125 | +.category-panel-content { |
126 | + padding:10px; | ||
166 | } | 127 | } |
167 | 128 | ||
168 | - | ||
169 | - | ||
170 | .core-subjects-options{ | 129 | .core-subjects-options{ |
171 | - padding: 0px; | 130 | + padding: 0px; |
172 | } | 131 | } |
173 | 132 | ||
174 | - | ||
175 | #core-subjects-options-div{ | 133 | #core-subjects-options-div{ |
176 | width: 100%; | 134 | width: 100%; |
177 | margin-bottom: 10px; | 135 | margin-bottom: 10px; |
178 | height: 50px; | 136 | height: 50px; |
179 | } | 137 | } |
180 | 138 | ||
181 | -.core-subjects-options li{ | 139 | +.core-subjects-options li { |
182 | float:left; | 140 | float:left; |
183 | padding: 10px; | 141 | padding: 10px; |
184 | padding-bottom: 8px; | 142 | padding-bottom: 8px; |
185 | - background-color: #FFFFFF; | ||
186 | margin: 1px; | 143 | margin: 1px; |
187 | border-bottom: 5px; | 144 | border-bottom: 5px; |
188 | border-bottom-style: solid; | 145 | border-bottom-style: solid; |
189 | - border-bottom-color: #D2D2D2; | ||
190 | - color: #A0A0A0; | ||
191 | -} | ||
192 | - | ||
193 | -.core-subjects-options li.active{ | ||
194 | - color: inherit; | ||
195 | - border-bottom-color: #00695C; | ||
196 | } | 146 | } |
197 | 147 | ||
198 | #delete-category-footer{ | 148 | #delete-category-footer{ |
199 | - border-top:none !important; | 149 | + border-top:none !important; |
200 | } | 150 | } |
201 | 151 | ||
202 | .erase-button{ | 152 | .erase-button{ |
203 | - float:left; | 153 | + float:left; |
204 | } | 154 | } |
205 | 155 | ||
206 | -.create-subject-btn{ | 156 | +.create-subject-btn { |
207 | width: 100%; | 157 | width: 100%; |
208 | - background-color: #26A69A; | ||
209 | - color: white; | ||
210 | border: 0px; | 158 | border: 0px; |
211 | margin-bottom: 10px; | 159 | margin-bottom: 10px; |
212 | } | 160 | } |
@@ -221,31 +169,26 @@ | @@ -221,31 +169,26 @@ | ||
221 | } | 169 | } |
222 | 170 | ||
223 | #coordinators_accordion .panel-heading, #professors_accordion .panel-heading { | 171 | #coordinators_accordion .panel-heading, #professors_accordion .panel-heading { |
224 | - background: #FFFFFF; | ||
225 | border: none; | 172 | border: none; |
226 | } | 173 | } |
227 | 174 | ||
228 | #coordinators_accordion .panel-collapse, #professors_accordion .panel-collapse { | 175 | #coordinators_accordion .panel-collapse, #professors_accordion .panel-collapse { |
229 | padding: 10px; | 176 | padding: 10px; |
230 | } | 177 | } |
231 | - | ||
232 | /* category app ends */ | 178 | /* category app ends */ |
233 | 179 | ||
234 | .clearfix{ | 180 | .clearfix{ |
235 | - clear: both; | 181 | + clear: both; |
236 | } | 182 | } |
237 | 183 | ||
238 | .mg-b-5m{ | 184 | .mg-b-5m{ |
239 | - margin-bottom: 5em; | 185 | + margin-bottom: 5em; |
240 | } | 186 | } |
241 | 187 | ||
242 | /* NavBar Top */ | 188 | /* NavBar Top */ |
243 | .navbar-brand { | 189 | .navbar-brand { |
244 | height: 50px !important; | 190 | height: 50px !important; |
245 | } | 191 | } |
246 | -.navbar-brand:hover { | ||
247 | - background: #00695C !important; | ||
248 | -} | ||
249 | 192 | ||
250 | .navbar .navbar-form { | 193 | .navbar .navbar-form { |
251 | margin-top: 10px; | 194 | margin-top: 10px; |
@@ -262,11 +205,6 @@ | @@ -262,11 +205,6 @@ | ||
262 | font-weight: normal; | 205 | font-weight: normal; |
263 | padding-left: 10px; | 206 | padding-left: 10px; |
264 | font-size: 20px; | 207 | font-size: 20px; |
265 | - color: white; | ||
266 | -} | ||
267 | - | ||
268 | -.navbar-nav li.open { | ||
269 | - background: #00695C; | ||
270 | } | 208 | } |
271 | 209 | ||
272 | .navbar-nav li > a { | 210 | .navbar-nav li > a { |
@@ -275,21 +213,11 @@ | @@ -275,21 +213,11 @@ | ||
275 | padding-left: 20px; | 213 | padding-left: 20px; |
276 | max-height: 50px; | 214 | max-height: 50px; |
277 | } | 215 | } |
278 | -.navbar-nav li > a:hover { | ||
279 | - background: #00695C !important; | ||
280 | -} | ||
281 | - | ||
282 | -.navbar-nav li.settings_menu_active { | ||
283 | - background: #00695C | ||
284 | -} | ||
285 | 216 | ||
286 | .submenu { | 217 | .submenu { |
287 | -webkit-padding-start: 0px; | 218 | -webkit-padding-start: 0px; |
288 | } | 219 | } |
289 | 220 | ||
290 | -.top-search { | ||
291 | - color: #F5F5F5; | ||
292 | -} | ||
293 | .top-search::-webkit-input-placeholder { | 221 | .top-search::-webkit-input-placeholder { |
294 | font-style: italic; | 222 | font-style: italic; |
295 | } | 223 | } |
@@ -302,48 +230,24 @@ | @@ -302,48 +230,24 @@ | ||
302 | .top-search:-moz-placeholder { | 230 | .top-search:-moz-placeholder { |
303 | font-style: italic; | 231 | font-style: italic; |
304 | } | 232 | } |
305 | - | ||
306 | -#btn-search:hover { | ||
307 | - background: #00695C; | ||
308 | -} | ||
309 | /* End NavBar Top */ | 233 | /* End NavBar Top */ |
310 | 234 | ||
311 | /* Dropdown menu Topbar */ | 235 | /* Dropdown menu Topbar */ |
312 | -.dropdown-menu { | ||
313 | - background: #F5F5F5; | ||
314 | -} | ||
315 | - | ||
316 | .dropdown-menu li > a { | 236 | .dropdown-menu li > a { |
317 | - background: #F5F5F5; | ||
318 | font-family: Roboto; | 237 | font-family: Roboto; |
319 | font-size: 16px; | 238 | font-size: 16px; |
320 | - color: #333333; | ||
321 | -} | ||
322 | -.dropdown-menu li > a:hover { | ||
323 | - background: #EEEEEE !important; | ||
324 | } | 239 | } |
325 | 240 | ||
326 | #system_accordion { | 241 | #system_accordion { |
327 | margin-bottom: 0px; | 242 | margin-bottom: 0px; |
328 | } | 243 | } |
329 | 244 | ||
330 | -#system_accordion > .panel > .panel-heading { | ||
331 | - background: #F5F5F5; | ||
332 | -} | ||
333 | -#system_accordion > .panel > .panel-heading:hover { | ||
334 | - background: #EEEEEE; | ||
335 | -} | ||
336 | - | ||
337 | #system_accordion > .panel > .panel-heading > a > .panel-title { | 245 | #system_accordion > .panel > .panel-heading > a > .panel-title { |
338 | font-weight: normal; | 246 | font-weight: normal; |
339 | - color: #333333; | ||
340 | -} | ||
341 | -#system_accordion > .panel > .panel-heading > a > .panel-title:hover { | ||
342 | - color: #009688; | ||
343 | } | 247 | } |
248 | + | ||
344 | #system_accordion > .panel > .panel-heading > a:hover { | 249 | #system_accordion > .panel > .panel-heading > a:hover { |
345 | text-decoration: none; | 250 | text-decoration: none; |
346 | - color: #009688; | ||
347 | } | 251 | } |
348 | #system_accordion > .panel > .panel-heading > a:focus { | 252 | #system_accordion > .panel > .panel-heading > a:focus { |
349 | text-decoration: none; | 253 | text-decoration: none; |
@@ -354,10 +258,6 @@ | @@ -354,10 +258,6 @@ | ||
354 | padding-bottom: 0px; | 258 | padding-bottom: 0px; |
355 | } | 259 | } |
356 | 260 | ||
357 | -#system_menu { | ||
358 | - background: #F5F5F5; | ||
359 | -} | ||
360 | - | ||
361 | .submenu a { | 261 | .submenu a { |
362 | font-family: Roboto; | 262 | font-family: Roboto; |
363 | font-weight: normal; | 263 | font-weight: normal; |
@@ -371,29 +271,34 @@ | @@ -371,29 +271,34 @@ | ||
371 | /* End Dropdown menu Topbar */ | 271 | /* End Dropdown menu Topbar */ |
372 | 272 | ||
373 | /* Modal */ | 273 | /* Modal */ |
374 | -.modal-header {min-height: 60px; border-bottom: 1px solid #E6E7E8 !important; padding-bottom: 15px !important;} | ||
375 | -.modal-footer {text-align: right; padding-top: 5px !important; border-top: 1px solid #E6E7E8 !important;} | 274 | +.modal-header { |
275 | + min-height: 60px; | ||
276 | + padding-bottom: 15px !important; | ||
277 | +} | ||
278 | +.modal-footer { | ||
279 | + text-align: right; | ||
280 | + padding-top: 5px !important; | ||
281 | +} | ||
376 | 282 | ||
377 | /* HEADER */ | 283 | /* HEADER */ |
378 | #notification-dropdown{ | 284 | #notification-dropdown{ |
379 | - max-height: 500%; | ||
380 | - overflow: auto; | ||
381 | - width: 300px; | 285 | + max-height: 500%; |
286 | + overflow: auto; | ||
287 | + width: 300px; | ||
382 | } | 288 | } |
383 | #NavBarSearch{ | 289 | #NavBarSearch{ |
384 | position: absolute; | 290 | position: absolute; |
385 | left: 30%; | 291 | left: 30%; |
386 | - } | 292 | +} |
387 | #btn-search{ | 293 | #btn-search{ |
388 | - margin-bottom: 0px; | ||
389 | - } | 294 | + margin-bottom: 0px; |
295 | +} | ||
390 | .user-notification-img{ | 296 | .user-notification-img{ |
391 | - width:40%; | 297 | + width:40%; |
392 | } | 298 | } |
393 | 299 | ||
394 | #horizontal-line{ | 300 | #horizontal-line{ |
395 | - height:2px; | ||
396 | - background-color: black; | 301 | + height:2px; |
397 | } | 302 | } |
398 | 303 | ||
399 | .navbar .dropdown-menu li>a, .navbar.navbar-default .dropdown-menu li>a { | 304 | .navbar .dropdown-menu li>a, .navbar.navbar-default .dropdown-menu li>a { |
@@ -402,8 +307,6 @@ | @@ -402,8 +307,6 @@ | ||
402 | } | 307 | } |
403 | 308 | ||
404 | /* HEADER */ | 309 | /* HEADER */ |
405 | - | ||
406 | - | ||
407 | .logoLogin{ | 310 | .logoLogin{ |
408 | padding-bottom: 1%; | 311 | padding-bottom: 1%; |
409 | width: 15%; | 312 | width: 15%; |
@@ -418,18 +321,6 @@ | @@ -418,18 +321,6 @@ | ||
418 | margin-bottom: 5px; | 321 | margin-bottom: 5px; |
419 | font-style: italic; | 322 | font-style: italic; |
420 | } | 323 | } |
421 | - | ||
422 | -.breadcrumb > li > span.divider { | ||
423 | - color: #26A69A; | ||
424 | -} | ||
425 | - | ||
426 | -.breadcrumb > li > a{ | ||
427 | - color: #26A69A; | ||
428 | -} | ||
429 | - | ||
430 | -.breadcrumb > li { | ||
431 | - color: #BDBDBD; | ||
432 | -} | ||
433 | /* End Breadcrumbs */ | 324 | /* End Breadcrumbs */ |
434 | 325 | ||
435 | .courseHome{ | 326 | .courseHome{ |
@@ -468,227 +359,24 @@ | @@ -468,227 +359,24 @@ | ||
468 | text-align: right; | 359 | text-align: right; |
469 | } | 360 | } |
470 | #img { | 361 | #img { |
471 | - | ||
472 | display: block; | 362 | display: block; |
473 | margin: auto; | 363 | margin: auto; |
474 | width: 50%; | 364 | width: 50%; |
475 | - | ||
476 | } | 365 | } |
477 | -ul { | ||
478 | - list-style-type:none | ||
479 | -} | ||
480 | - | ||
481 | - | ||
482 | -/*CSS TIMELINE*/ | ||
483 | - | ||
484 | -.panel-title{ /*Because we use an outer a tag*/ | ||
485 | - color: rgba(255,255,255,.84); | ||
486 | -} | ||
487 | - | ||
488 | -.bubble { | ||
489 | - width: 100%; | ||
490 | - padding: .5em 1em; | ||
491 | - line-height: 1.4em; | ||
492 | - padding: 20px; | ||
493 | - background-color: #ecf0f1; | ||
494 | - position: relative; | ||
495 | - -webkit-border-radius: 8px; | ||
496 | - -moz-border-radius: 8px; | ||
497 | - -ms-border-radius: 8px; | ||
498 | - -o-border-radius: 8px; | ||
499 | - border-radius: 8px; | ||
500 | - text-align: left; | ||
501 | - display: inline-block; } | ||
502 | - .bubble:hover > .over-bubble { | ||
503 | - opacity: 1; } | ||
504 | - | ||
505 | -.bubble-container { | ||
506 | - width: 75%; | ||
507 | - display: block; | ||
508 | - position: relative; | ||
509 | - padding-left: 20px; | ||
510 | - vertical-align: top; | ||
511 | - display: inline-block; } | ||
512 | - | ||
513 | -.arrow { | ||
514 | - content: ''; | ||
515 | - display: block; | ||
516 | - position: absolute; | ||
517 | - left: 12px; | ||
518 | - bottom: 25%; | ||
519 | - height: 0; | ||
520 | - width: 0; | ||
521 | - border-top: 20px solid transparent; | ||
522 | - border-bottom: 20px solid transparent; | ||
523 | - border-right: 20px solid #ecf0f1; } | ||
524 | - | ||
525 | -.timeline { | ||
526 | - width: 560px; | ||
527 | - display: block; | ||
528 | - margin: auto; | ||
529 | - background-color: #dde1e2; | ||
530 | - padding-bottom: 2em; | ||
531 | - -webkit-box-shadow: #bdc3c7 0 5px 5px; | ||
532 | - -moz-box-shadow: #bdc3c7 0 5px 5px; | ||
533 | - box-shadow: #bdc3c7 0 5px 5px; | ||
534 | - -moz-border-radius-bottomleft: 8px; | ||
535 | - -webkit-border-bottom-left-radius: 8px; | ||
536 | - border-bottom-left-radius: 8px; | ||
537 | - -moz-border-radius-bottomright: 8px; | ||
538 | - -webkit-border-bottom-right-radius: 8px; | ||
539 | - border-bottom-right-radius: 8px; | ||
540 | - margin-bottom: 2em; } | ||
541 | - .timeline li { | ||
542 | - padding: 1em 0; } | ||
543 | - .timeline li.not_read { | ||
544 | - background-color: #d3d7d8; } | ||
545 | - | ||
546 | -.avatar { | ||
547 | - width: 18%; | ||
548 | - display: inline-block; | ||
549 | - vertical-align: top; | ||
550 | - position: relative; | ||
551 | - overflow: hidden; | ||
552 | - margin-left: 2%; } | ||
553 | - .avatar img { | ||
554 | - width: 100%; | ||
555 | - -webkit-border-radius: 50%; | ||
556 | - -moz-border-radius: 50%; | ||
557 | - -ms-border-radius: 50%; | ||
558 | - -o-border-radius: 50%; | ||
559 | - border-radius: 50%; | ||
560 | - border: 5px solid #ecf0f1; | ||
561 | - position: relative; } | ||
562 | - | ||
563 | - | ||
564 | - | ||
565 | -.first { | ||
566 | - width: 560px; | ||
567 | - display: block; | ||
568 | - margin: auto; | ||
569 | - background-color: #3498db; | ||
570 | - text-shadow: #2084c7 1px 1px 0; | ||
571 | - padding: 1em 0 !important; | ||
572 | - color: white; | ||
573 | - text-align: center; | ||
574 | - margin-top: 1em; | ||
575 | - font-family: "Lato"; | ||
576 | - font-size: 1.6em; | ||
577 | - -moz-border-radius-topleft: 8px; | ||
578 | - -webkit-border-top-left-radius: 8px; | ||
579 | - border-top-left-radius: 8px; | ||
580 | - -moz-border-radius-topright: 8px; | ||
581 | - -webkit-border-top-right-radius: 8px; | ||
582 | - border-top-right-radius: 8px; | ||
583 | - position: relative; } | ||
584 | - | ||
585 | - | ||
586 | -.over-bubble { | ||
587 | - line-height: 1.4em; | ||
588 | - padding-top: 10%; | ||
589 | - background-color: rgba(236, 240, 241, 0.8); | ||
590 | - position: relative; | ||
591 | - -webkit-border-radius: 8px; | ||
592 | - -moz-border-radius: 8px; | ||
593 | - -ms-border-radius: 8px; | ||
594 | - -o-border-radius: 8px; | ||
595 | - border-radius: 8px; | ||
596 | - text-align: center; | ||
597 | - display: inline-block; | ||
598 | - position: absolute !important; | ||
599 | - height: 100%; | ||
600 | - width: 100%; | ||
601 | - opacity: 0; | ||
602 | - top: 0; | ||
603 | - left: 0; | ||
604 | - z-index: 999; | ||
605 | - -webkit-transition-property: all; | ||
606 | - -moz-transition-property: all; | ||
607 | - -o-transition-property: all; | ||
608 | - transition-property: all; | ||
609 | - -webkit-transition-duration: 0.3s; | ||
610 | - -moz-transition-duration: 0.3s; | ||
611 | - -o-transition-duration: 0.3s; | ||
612 | - transition-duration: 0.3s; | ||
613 | - -webkit-transition-timing-function: ease-in; | ||
614 | - -moz-transition-timing-function: ease-in; | ||
615 | - -o-transition-timing-function: ease-in; | ||
616 | - transition-timing-function: ease-in; | ||
617 | - font-size: 2.8em; | ||
618 | - text-shadow: white 1px 1px 0; } | ||
619 | - | ||
620 | -.action { | ||
621 | - margin-right: .3em; | ||
622 | - -webkit-transition-property: all; | ||
623 | - -moz-transition-property: all; | ||
624 | - -o-transition-property: all; | ||
625 | - transition-property: all; | ||
626 | - -webkit-transition-duration: 0.2s; | ||
627 | - -moz-transition-duration: 0.2s; | ||
628 | - -o-transition-duration: 0.2s; | ||
629 | - transition-duration: 0.2s; | ||
630 | - -webkit-transition-timing-function: ease-in; | ||
631 | - -moz-transition-timing-function: ease-in; | ||
632 | - -o-transition-timing-function: ease-in; | ||
633 | - transition-timing-function: ease-in; } | ||
634 | - | ||
635 | - | ||
636 | - | ||
637 | -.icon-more-horiz {margin-top: 0px; margin-bottom: 0px; padding-left: 0px;} | ||
638 | - | ||
639 | -.retweet { | ||
640 | - position: absolute; | ||
641 | - opacity: 1; | ||
642 | - top: 0; | ||
643 | - right: 1em; | ||
644 | - display: block; | ||
645 | - background-color: #16a085; | ||
646 | - padding: 4px; | ||
647 | - -moz-border-radius-bottomleft: 5px; | ||
648 | - -webkit-border-bottom-left-radius: 5px; | ||
649 | - border-bottom-left-radius: 5px; | ||
650 | - -moz-border-radius-bottomright: 5px; | ||
651 | - -webkit-border-bottom-right-radius: 5px; | ||
652 | - border-bottom-right-radius: 5px; } | ||
653 | - .retweet .icon-retweet { | ||
654 | - color: white; | ||
655 | - margin: auto; | ||
656 | - width: 100%; | ||
657 | - display: block; | ||
658 | - font-size: 1.2em; } | ||
659 | - | ||
660 | -/*CSS NOTIFICACIONS*/ | ||
661 | - | ||
662 | -.alert_list{font-size: 11px; color:grey} | ||
663 | -li.alert_li { | ||
664 | - font-size: 11px; | ||
665 | - color:grey; | ||
666 | - padding:10px 0px 2px 0px; | ||
667 | - border-bottom: thin solid #c0c0c0; | ||
668 | -} | ||
669 | -li.alert_li:hover{background-color:#eee} | ||
670 | -.turn_off_alert{float:right;margin-bottom :1px} | ||
671 | -a.alert_message{color : grey} | ||
672 | -a.alert_message:hover{color : grey} | ||
673 | 366 | ||
674 | .breadcrumb .divider{ | 367 | .breadcrumb .divider{ |
675 | - display: none; | 368 | + display: none; |
676 | } | 369 | } |
677 | 370 | ||
678 | /*Logo register user*/ | 371 | /*Logo register user*/ |
679 | #logo{ | 372 | #logo{ |
680 | - max-width: 40%; | ||
681 | - margin-top: 1em; | ||
682 | - margin-bottom: 1em; | 373 | + max-width: 40%; |
374 | + margin-top: 1em; | ||
375 | + margin-bottom: 1em; | ||
683 | } | 376 | } |
684 | /*====================== ========*/ | 377 | /*====================== ========*/ |
685 | - | ||
686 | -.accordion { | ||
687 | - background: white; | ||
688 | -} | ||
689 | .accordion_list { | 378 | .accordion_list { |
690 | padding-left: 4px; | 379 | padding-left: 4px; |
691 | - background: #F5F5F5; | ||
692 | } | 380 | } |
693 | 381 | ||
694 | .container-fluid { | 382 | .container-fluid { |
@@ -696,62 +384,11 @@ a.alert_message:hover{color : grey} | @@ -696,62 +384,11 @@ a.alert_message:hover{color : grey} | ||
696 | padding-right: 40px; | 384 | padding-right: 40px; |
697 | } | 385 | } |
698 | 386 | ||
699 | -body .container .jumbotron-inverse, body .container .well-inverse, body .container-fluid .jumbotron-inverse, body .container-fluid .well-inverse { | ||
700 | - background-color: white; | ||
701 | -} | ||
702 | -.forum_collapse { | ||
703 | - color: #000; | ||
704 | -} | ||
705 | -.forum_collapse:hover, .forum_collapse:focus { | ||
706 | - text-decoration: none; | ||
707 | - color: #000; | ||
708 | -} | ||
709 | - | ||
710 | -/*TIMELINE CLASSES BEGIN */ | ||
711 | -.resource_inline{ | ||
712 | - display: inline-block; | ||
713 | -} | ||
714 | - | ||
715 | -.imgTimeLine{ | ||
716 | - width: 100%; | ||
717 | - height: auto; | ||
718 | - padding-top: 10px; | ||
719 | -} | ||
720 | -.timeLine div .col-md-11{ | ||
721 | - padding-left: 0px; | ||
722 | -} | ||
723 | -.timeLine div .col-md-11 i{ | ||
724 | - padding-right: 5px; | ||
725 | -} | ||
726 | - | ||
727 | -/*TIMELINE CLASSES END*/ | ||
728 | - | ||
729 | -.notification-count { | ||
730 | - background-color: #FF0000; | ||
731 | -} | ||
732 | - | ||
733 | -.img-list-user{ | ||
734 | - width: 150px; | ||
735 | - height: 150px; | ||
736 | -} | ||
737 | - | ||
738 | -.datepicker{z-index:9999 !important} | ||
739 | - | ||
740 | -ul, li { | ||
741 | - list-style-type: none !important; | ||
742 | - text-decoration: none !important; | ||
743 | -} | ||
744 | - | ||
745 | .icon_edit_remove{ | 387 | .icon_edit_remove{ |
746 | - float: right; | 388 | + float: right; |
747 | } | 389 | } |
748 | 390 | ||
749 | - | ||
750 | /* core/index.html classes*/ | 391 | /* core/index.html classes*/ |
751 | -.outside-title { | ||
752 | - color: #43a251; | ||
753 | -} | ||
754 | - | ||
755 | .logo-login{ | 392 | .logo-login{ |
756 | margin-top: 15px; | 393 | margin-top: 15px; |
757 | margin-bottom: 15px; | 394 | margin-bottom: 15px; |
@@ -777,87 +414,78 @@ ul, li { | @@ -777,87 +414,78 @@ ul, li { | ||
777 | /* core/register_user.html classes*/ | 414 | /* core/register_user.html classes*/ |
778 | 415 | ||
779 | .block-register-inline{ | 416 | .block-register-inline{ |
780 | - float: left; | ||
781 | - display: inline-block; | 417 | + float: left; |
418 | + display: inline-block; | ||
782 | } | 419 | } |
783 | 420 | ||
784 | /* core/reset_password.html classes*/ | 421 | /* core/reset_password.html classes*/ |
785 | .send-reset-email{ | 422 | .send-reset-email{ |
786 | - float: right; | ||
787 | -} | ||
788 | - | ||
789 | -/* forum post loaded */ | ||
790 | -@-webkit-keyframes loaded { | ||
791 | - 0% { | ||
792 | - background-color: Yellow; | ||
793 | - opacity: 0.2; | ||
794 | - } | ||
795 | - 22% { | ||
796 | - background-color: Yellow; | ||
797 | - opacity: 0.3; | ||
798 | - } | ||
799 | - 77% { | ||
800 | - background-color: Yellow; | ||
801 | - opacity: 0.6; | ||
802 | - } | ||
803 | - 100% { | ||
804 | - background-color: White; | ||
805 | - } | ||
806 | -} | ||
807 | - | ||
808 | -.loaded { | ||
809 | - -webkit-animation-name: loaded; | ||
810 | - -webkit-animation-duration: 900ms; | ||
811 | - -webkit-animation-iteration-count: 3; | ||
812 | - -webkit-animation-timing-function: ease-in-out; | 423 | + float: right; |
813 | } | 424 | } |
425 | + | ||
814 | /* Icon Topic */ | 426 | /* Icon Topic */ |
815 | .divMoreActions { | 427 | .divMoreActions { |
816 | - text-align: right; height: 30px; float: right; | ||
817 | - width: 3%; | 428 | + text-align: right; |
429 | + height: 30px; | ||
430 | + float: right; | ||
431 | + width: 3%; | ||
818 | } | 432 | } |
819 | 433 | ||
820 | .divMoreActions > .btn-group { | 434 | .divMoreActions > .btn-group { |
821 | - margin: 0px !important; | 435 | + margin: 0px !important; |
822 | } | 436 | } |
823 | 437 | ||
824 | .moreAccordion { | 438 | .moreAccordion { |
825 | - height: 30px; | 439 | + height: 30px; |
440 | +} | ||
441 | + | ||
442 | +.moreAccordion button { | ||
443 | + margin-bottom: 0px; | ||
444 | + margin-top: 8px; | ||
445 | +} | ||
446 | + | ||
447 | +.titleTopic { | ||
448 | + padding-top: 10px; | ||
449 | + padding-bottom: 10px; | ||
450 | +} | ||
451 | + | ||
452 | +.titleTopic a:hover{ | ||
453 | + text-decoration: none; | ||
826 | } | 454 | } |
827 | -/*.divMoreActions div button {padding-left: 10px; padding-right: 10px; padding-bottom: 10px; margin-bottom: 4px; height: 31px;}*/ | ||
828 | 455 | ||
829 | -.moreAccordion button{margin-bottom: 0px; margin-top: 8px;} | ||
830 | -.titleTopic {padding-top: 10px; padding-bottom: 10px;} | ||
831 | -.titleTopic a h4, .titleTopic h4{color: white;} | ||
832 | -.titleTopic a:hover{text-decoration: none;} | ||
833 | -.Topic-detail a h4{color: black;} | ||
834 | -/* .titleTopic a h4 {margin-top: 0px; color: black; cursor:pointer;}*/ | ||
835 | .dropdown-menu .pull-right { | 456 | .dropdown-menu .pull-right { |
836 | right: 0; | 457 | right: 0; |
837 | - } | 458 | +} |
459 | + | ||
838 | .cards-content{ | 460 | .cards-content{ |
839 | - padding-left: 0px; padding-right: 0px; | ||
840 | - font-family: Roboto; | ||
841 | - font-size: 18px; | 461 | + padding-left: 0px; |
462 | + padding-right: 0px; | ||
463 | + font-family: Roboto; | ||
464 | + font-size: 18px; | ||
465 | +} | ||
466 | +.cards-detail { | ||
467 | + margin-left: 4%; | ||
468 | +} | ||
469 | + | ||
470 | +.course, .subject, .topic { | ||
471 | + padding-top: 0px; | ||
472 | + padding-bottom: 0px; | ||
473 | +} | ||
474 | +.course-detail { | ||
475 | + padding-top: 10px; | ||
476 | + padding-bottom: 10px; | ||
842 | } | 477 | } |
843 | -.cards-detail{margin-left: 4%;} | ||
844 | -.cards-detail .panel .panel-heading{/*background-color:;*/} | ||
845 | -.cards-detail .panel .panel-heading h4{color:black;} | ||
846 | -.course, .subject, .topic{ padding-top: 0px; padding-bottom: 0px; } | ||
847 | -.course-detail{padding-top: 10px; padding-bottom: 10px;} | ||
848 | 478 | ||
849 | .course-card{ | 479 | .course-card{ |
850 | - margin-bottom: 0.4% !important; | 480 | + margin-bottom: 0.4% !important; |
851 | } | 481 | } |
852 | 482 | ||
853 | .course-card-group{ | 483 | .course-card-group{ |
854 | - margin-bottom: 1%; | 484 | + margin-bottom: 1%; |
855 | } | 485 | } |
856 | -.data_register_course p{ color: grey; } | ||
857 | 486 | ||
858 | -.category-course-link{ | 487 | +.category-course-link { |
859 | font-size: 16px; | 488 | font-size: 16px; |
860 | - color: #FFFFFF !important; | ||
861 | font-family: Roboto; | 489 | font-family: Roboto; |
862 | font-weight: normal; | 490 | font-weight: normal; |
863 | } | 491 | } |
@@ -868,31 +496,30 @@ ul, li { | @@ -868,31 +496,30 @@ ul, li { | ||
868 | 496 | ||
869 | /* Menu link remove radius */ | 497 | /* Menu link remove radius */ |
870 | .nav-pills > li > a { | 498 | .nav-pills > li > a { |
871 | - border-radius: 0px; | 499 | + border-radius: 0px; |
872 | } | 500 | } |
873 | 501 | ||
874 | .float-button{ | 502 | .float-button{ |
875 | - float: right; | ||
876 | - position: fixed; | ||
877 | - bottom: 5%; | ||
878 | - right: 5%; | ||
879 | - font-size: 20px; | 503 | + float: right; |
504 | + position: fixed; | ||
505 | + bottom: 5%; | ||
506 | + right: 5%; | ||
507 | + font-size: 20px; | ||
880 | } | 508 | } |
881 | 509 | ||
882 | /* === Amadeus settings*/ | 510 | /* === Amadeus settings*/ |
883 | #panel2 .form-group{ | 511 | #panel2 .form-group{ |
884 | - margin: 0; | 512 | + margin: 0; |
885 | } | 513 | } |
886 | 514 | ||
887 | #panel2 .col-md-2, #panel2 .col-md-10{ | 515 | #panel2 .col-md-2, #panel2 .col-md-10{ |
888 | - padding-left: 0; | 516 | + padding-left: 0; |
889 | } | 517 | } |
890 | 518 | ||
891 | /* Profile */ | 519 | /* Profile */ |
892 | .profile_function { | 520 | .profile_function { |
893 | padding-bottom: 7px; | 521 | padding-bottom: 7px; |
894 | font-size: 16px; | 522 | font-size: 16px; |
895 | - border-bottom: 1px solid #D2D2D2; | ||
896 | } | 523 | } |
897 | /* End Profile */ | 524 | /* End Profile */ |
898 | 525 | ||
@@ -903,13 +530,11 @@ ul, li { | @@ -903,13 +530,11 @@ ul, li { | ||
903 | 530 | ||
904 | .bottom-menu { | 531 | .bottom-menu { |
905 | position: fixed; | 532 | position: fixed; |
906 | - bottom: 0px; | ||
907 | - background: #F5F5F5; | 533 | + bottom: 0px; |
908 | width: 100%; | 534 | width: 100%; |
909 | padding: 0px 30px; | 535 | padding: 0px 30px; |
910 | z-index: 999; | 536 | z-index: 999; |
911 | height: 50px; | 537 | height: 50px; |
912 | - background: #26A69A; | ||
913 | } | 538 | } |
914 | 539 | ||
915 | .mobile-menu { | 540 | .mobile-menu { |
@@ -921,65 +546,61 @@ ul, li { | @@ -921,65 +546,61 @@ ul, li { | ||
921 | } | 546 | } |
922 | 547 | ||
923 | .mobile-menu .item { | 548 | .mobile-menu .item { |
924 | - color: #FFFFFF; | ||
925 | - background: #26A69A; | ||
926 | padding-top: 3px; | 549 | padding-top: 3px; |
927 | text-align: center; | 550 | text-align: center; |
928 | height: 50px; | 551 | height: 50px; |
929 | width: 55px; | 552 | width: 55px; |
930 | font-size: 35px; | 553 | font-size: 35px; |
931 | } | 554 | } |
932 | - | ||
933 | -.mobile-menu .item a{ | ||
934 | - color: white; | ||
935 | -} | ||
936 | - | ||
937 | -.mobile-menu > .subjects_menu_active { | ||
938 | - background-color: #00695C; | ||
939 | -} | ||
940 | - | ||
941 | -.mobile-menu > .item:hover{ | ||
942 | - background-color: #00695C; | ||
943 | -} | ||
944 | /* End Bottom Menu */ | 555 | /* End Bottom Menu */ |
945 | 556 | ||
946 | - | ||
947 | - | ||
948 | /* subjects app starts*/ | 557 | /* subjects app starts*/ |
949 | - | ||
950 | -.access-subject{ | ||
951 | - background-color: #2eb82e !important; | ||
952 | - color: white; | ||
953 | - border: none; | 558 | +.access-subject { |
559 | + border: none; | ||
954 | } | 560 | } |
955 | 561 | ||
956 | -.subscribe-subject{ | ||
957 | - background-color: #33cc33 !important; | ||
958 | - color:white; | ||
959 | - border:none; | 562 | +.subscribe-subject { |
563 | + border:none; | ||
960 | } | 564 | } |
961 | - | ||
962 | - | ||
963 | /* subjects app ends */ | 565 | /* subjects app ends */ |
964 | 566 | ||
965 | /* Themes */ | 567 | /* Themes */ |
966 | .page_selector h4 { | 568 | .page_selector h4 { |
967 | margin-bottom: 20px; | 569 | margin-bottom: 20px; |
968 | - border-bottom: 1px solid #e5e5e5; | ||
969 | } | 570 | } |
970 | .page_selector:hover, .page_selector:focus { | 571 | .page_selector:hover, .page_selector:focus { |
971 | text-decoration: none; | 572 | text-decoration: none; |
972 | } | 573 | } |
973 | 574 | ||
974 | -.filedrag{ | 575 | +.filedrag { |
975 | display: none; | 576 | display: none; |
976 | font-weight: bold; | 577 | font-weight: bold; |
977 | text-align: center; | 578 | text-align: center; |
978 | padding: 1em 0; | 579 | padding: 1em 0; |
979 | margin: 1em 0; | 580 | margin: 1em 0; |
980 | - color: #555; | ||
981 | - border: 2px dashed #555; | ||
982 | border-radius: 7px; | 581 | border-radius: 7px; |
983 | cursor: pointer; | 582 | cursor: pointer; |
984 | } | 583 | } |
985 | -/* End Themes */ | ||
986 | \ No newline at end of file | 584 | \ No newline at end of file |
585 | + | ||
586 | +.theme_img { | ||
587 | + width: 100%; | ||
588 | +} | ||
589 | +/* End Themes */ | ||
590 | + | ||
591 | +.footer { | ||
592 | + position: relative; | ||
593 | + bottom: 0px; | ||
594 | + padding: 30px 30px; | ||
595 | + width: 100%; | ||
596 | + margin-top: 15px; | ||
597 | + font-family: Roboto; | ||
598 | + font-size: 16px; | ||
599 | +} | ||
600 | +.footer p { | ||
601 | + margin: 0px; | ||
602 | +} | ||
603 | + | ||
604 | +.form-group input[type=file] { | ||
605 | + margin-top: 20px; | ||
606 | + height: initial; | ||
607 | +} | ||
987 | \ No newline at end of file | 608 | \ No newline at end of file |
@@ -0,0 +1,270 @@ | @@ -0,0 +1,270 @@ | ||
1 | +body .container .jumbotron-inverse, body .container .well-inverse, body .container-fluid .jumbotron-inverse, body .container-fluid .well-inverse { | ||
2 | + background-color: white; | ||
3 | +} | ||
4 | + | ||
5 | +a, a:focus, a:hover { | ||
6 | + color: #444444; | ||
7 | +} | ||
8 | + | ||
9 | +.radio input[type=radio]:checked~.check, label.radio-inline input[type=radio]:checked~.check { | ||
10 | + background-color: #444444; | ||
11 | +} | ||
12 | + | ||
13 | +.radio input[type=radio]:checked~.circle, label.radio-inline input[type=radio]:checked~.circle { | ||
14 | + border-color: #444444; | ||
15 | +} | ||
16 | + | ||
17 | +.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus { | ||
18 | + color: #fff; | ||
19 | + background-color: #337ab7; | ||
20 | + border-color: #337ab7; | ||
21 | +} | ||
22 | + | ||
23 | +.navbar, .navbar.navbar-default { | ||
24 | + background-color: #444444; | ||
25 | + color: rgba(255,255,255,.84); | ||
26 | +} | ||
27 | + | ||
28 | +.my-subjects-title { | ||
29 | + color: #555555; | ||
30 | +} | ||
31 | + | ||
32 | +#sidebar-menu .item { | ||
33 | + background-color: #555555; | ||
34 | + color: white; | ||
35 | +} | ||
36 | + | ||
37 | +#sidebar-menu .item a{ | ||
38 | + color: white; | ||
39 | +} | ||
40 | + | ||
41 | +#sidebar-menu > .subjects_menu_active { | ||
42 | + background-color: #333333; | ||
43 | +} | ||
44 | + | ||
45 | +#sidebar-menu > .item:hover{ | ||
46 | + background-color: #333333; | ||
47 | +} | ||
48 | + | ||
49 | +.panel-invisible{ | ||
50 | + background-color: #BDBDBD !important; | ||
51 | + color: #F5F5F5; | ||
52 | +} | ||
53 | + | ||
54 | +.category-panel > .panel-heading { | ||
55 | + background-color: #666666 !important; | ||
56 | +} | ||
57 | + | ||
58 | +.subject-panel > .panel-heading { | ||
59 | + background-color: #777777 !important; | ||
60 | +} | ||
61 | + | ||
62 | +.category-header i { | ||
63 | + color: white; | ||
64 | +} | ||
65 | + | ||
66 | +.category-header i:hover{ | ||
67 | + color: #90CAF9; | ||
68 | +} | ||
69 | + | ||
70 | +.category-header .dropdown-menu i { | ||
71 | + color: inherit; | ||
72 | +} | ||
73 | + | ||
74 | +#create-category { | ||
75 | + background-color: #66BB6A; | ||
76 | + color: #FFFFFF; | ||
77 | +} | ||
78 | + | ||
79 | +.category-panel-content { | ||
80 | + background: #F5F5F5; | ||
81 | +} | ||
82 | + | ||
83 | +.core-subjects-options li { | ||
84 | + background-color: #FFFFFF; | ||
85 | + border-bottom-color: #D2D2D2; | ||
86 | + color: #A0A0A0; | ||
87 | +} | ||
88 | + | ||
89 | +.core-subjects-options li.active { | ||
90 | + color: inherit; | ||
91 | + border-bottom-color: #333333; | ||
92 | +} | ||
93 | + | ||
94 | +.create-subject-btn { | ||
95 | + background-color: #000000; | ||
96 | + color: white; | ||
97 | +} | ||
98 | + | ||
99 | +#coordinators_accordion .panel-heading, #professors_accordion .panel-heading { | ||
100 | + background: #FFFFFF; | ||
101 | +} | ||
102 | + | ||
103 | +.navbar-brand:hover { | ||
104 | + background: #333333 !important; | ||
105 | +} | ||
106 | + | ||
107 | +.navbar .project_name { | ||
108 | + color: white; | ||
109 | +} | ||
110 | + | ||
111 | +.navbar-nav li.open { | ||
112 | + background: #333333; | ||
113 | +} | ||
114 | + | ||
115 | +.navbar-nav li > a:hover { | ||
116 | + background: #333333 !important; | ||
117 | +} | ||
118 | + | ||
119 | +.navbar-nav li.settings_menu_active { | ||
120 | + background: #333333 | ||
121 | +} | ||
122 | + | ||
123 | +.top-search { | ||
124 | + color: #F5F5F5; | ||
125 | +} | ||
126 | + | ||
127 | +#btn-search:hover { | ||
128 | + background: #333333; | ||
129 | +} | ||
130 | + | ||
131 | +.dropdown-menu { | ||
132 | + background: #F5F5F5; | ||
133 | +} | ||
134 | + | ||
135 | +.dropdown-menu li > a { | ||
136 | + background: #F5F5F5; | ||
137 | + color: #333333; | ||
138 | +} | ||
139 | + | ||
140 | +.dropdown-menu li > a:hover { | ||
141 | + background: #EEEEEE !important; | ||
142 | +} | ||
143 | + | ||
144 | +#system_accordion > .panel > .panel-heading { | ||
145 | + background: #F5F5F5; | ||
146 | +} | ||
147 | + | ||
148 | +#system_accordion > .panel > .panel-heading:hover { | ||
149 | + background: #EEEEEE; | ||
150 | +} | ||
151 | + | ||
152 | +#system_accordion > .panel > .panel-heading > a > .panel-title { | ||
153 | + color: #333333; | ||
154 | +} | ||
155 | + | ||
156 | +#system_accordion > .panel > .panel-heading > a > .panel-title:hover { | ||
157 | + color: #444444; | ||
158 | +} | ||
159 | + | ||
160 | +#system_accordion > .panel > .panel-heading > a:hover { | ||
161 | + color: #444444; | ||
162 | +} | ||
163 | + | ||
164 | +#system_menu { | ||
165 | + background: #F5F5F5; | ||
166 | +} | ||
167 | + | ||
168 | +.modal-header { | ||
169 | + border-bottom: 1px solid #E6E7E8 !important; | ||
170 | +} | ||
171 | + | ||
172 | +.modal-footer { | ||
173 | + border-top: 1px solid #E6E7E8 !important; | ||
174 | +} | ||
175 | + | ||
176 | +#horizontal-line{ | ||
177 | + background-color: black; | ||
178 | +} | ||
179 | + | ||
180 | +.breadcrumb > li > span.divider { | ||
181 | + color: #000000; | ||
182 | +} | ||
183 | + | ||
184 | +.breadcrumb > li > a{ | ||
185 | + color: #000000; | ||
186 | +} | ||
187 | + | ||
188 | +.breadcrumb > li { | ||
189 | + color: #BDBDBD; | ||
190 | +} | ||
191 | + | ||
192 | +.panel-title{ /*Because we use an outer a tag*/ | ||
193 | + color: rgba(255,255,255,.84); | ||
194 | +} | ||
195 | + | ||
196 | +.accordion { | ||
197 | + background: white; | ||
198 | +} | ||
199 | + | ||
200 | +.accordion_list { | ||
201 | + background: #F5F5F5; | ||
202 | +} | ||
203 | + | ||
204 | +.outside-title { | ||
205 | + color: #43a251; | ||
206 | +} | ||
207 | + | ||
208 | +.titleTopic a h4, .titleTopic h4 { | ||
209 | + color: white; | ||
210 | +} | ||
211 | + | ||
212 | +.Topic-detail a h4{ | ||
213 | + color: black; | ||
214 | +} | ||
215 | + | ||
216 | +.cards-detail .panel .panel-heading h4 { | ||
217 | + color:black; | ||
218 | +} | ||
219 | + | ||
220 | +.data_register_course p { | ||
221 | + color: grey; | ||
222 | +} | ||
223 | + | ||
224 | +.category-course-link { | ||
225 | + color: #FFFFFF !important; | ||
226 | +} | ||
227 | + | ||
228 | +.profile_function { | ||
229 | + border-bottom: 1px solid #D2D2D2; | ||
230 | +} | ||
231 | + | ||
232 | +.bottom-menu { | ||
233 | + background: #000000; | ||
234 | +} | ||
235 | + | ||
236 | +.mobile-menu .item { | ||
237 | + color: #FFFFFF; | ||
238 | + background: #000000; | ||
239 | +} | ||
240 | + | ||
241 | +.mobile-menu .item a { | ||
242 | + color: white; | ||
243 | +} | ||
244 | + | ||
245 | +.mobile-menu > .subjects_menu_active { | ||
246 | + background-color: #333333; | ||
247 | +} | ||
248 | + | ||
249 | +.mobile-menu > .item:hover{ | ||
250 | + background-color: #333333; | ||
251 | +} | ||
252 | + | ||
253 | +.access-subject { | ||
254 | + background-color: #2eb82e !important; | ||
255 | + color: white; | ||
256 | +} | ||
257 | + | ||
258 | +.page_selector h4 { | ||
259 | + border-bottom: 1px solid #e5e5e5; | ||
260 | +} | ||
261 | + | ||
262 | +.subscribe-subject { | ||
263 | + background-color: #33cc33 !important; | ||
264 | + color:white; | ||
265 | +} | ||
266 | + | ||
267 | +.filedrag { | ||
268 | + color: #555; | ||
269 | + border: 2px dashed #555; | ||
270 | +} | ||
0 | \ No newline at end of file | 271 | \ No newline at end of file |
@@ -0,0 +1,275 @@ | @@ -0,0 +1,275 @@ | ||
1 | +body .container .jumbotron-inverse, body .container .well-inverse, body .container-fluid .jumbotron-inverse, body .container-fluid .well-inverse { | ||
2 | + background-color: white; | ||
3 | +} | ||
4 | + | ||
5 | +a, a:focus, a:hover { | ||
6 | + color: #009688; | ||
7 | +} | ||
8 | + | ||
9 | +.radio input[type=radio]:checked~.check, label.radio-inline input[type=radio]:checked~.check { | ||
10 | + background-color: #009688; | ||
11 | +} | ||
12 | + | ||
13 | +.radio input[type=radio]:checked~.circle, label.radio-inline input[type=radio]:checked~.circle { | ||
14 | + border-color: #009688; | ||
15 | +} | ||
16 | + | ||
17 | +.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus { | ||
18 | + color: #fff; | ||
19 | + background-color: #337ab7; | ||
20 | + border-color: #337ab7; | ||
21 | +} | ||
22 | + | ||
23 | +.navbar, .navbar.navbar-default { | ||
24 | + background-color: #009688; | ||
25 | + color: rgba(255,255,255,.84); | ||
26 | +} | ||
27 | + | ||
28 | +.my-subjects-title { | ||
29 | + color: #26A69A; | ||
30 | +} | ||
31 | + | ||
32 | +#sidebar-menu .item { | ||
33 | + background-color: #26A69A; | ||
34 | + color: white; | ||
35 | +} | ||
36 | + | ||
37 | +#sidebar-menu .item a{ | ||
38 | + color: white; | ||
39 | +} | ||
40 | + | ||
41 | +#sidebar-menu > .subjects_menu_active { | ||
42 | + background-color: #00695C; | ||
43 | +} | ||
44 | + | ||
45 | +#sidebar-menu > .item:hover{ | ||
46 | + background-color: #00695C; | ||
47 | +} | ||
48 | + | ||
49 | +.panel-invisible{ | ||
50 | + background-color: #BDBDBD !important; | ||
51 | + color: #F5F5F5; | ||
52 | +} | ||
53 | + | ||
54 | +.category-panel > .panel-heading { | ||
55 | + background-color: #0277BD !important; | ||
56 | +} | ||
57 | + | ||
58 | +.subject-panel > .panel-heading { | ||
59 | + background-color: #039BE5 !important; | ||
60 | +} | ||
61 | + | ||
62 | +.category-header i { | ||
63 | + color: white; | ||
64 | +} | ||
65 | + | ||
66 | +.category-header i:hover{ | ||
67 | + color: #90CAF9; | ||
68 | +} | ||
69 | + | ||
70 | +.category-header .dropdown-menu i { | ||
71 | + color: inherit; | ||
72 | +} | ||
73 | + | ||
74 | +#create-category { | ||
75 | + background-color: #66BB6A; | ||
76 | + color: #FFFFFF; | ||
77 | +} | ||
78 | + | ||
79 | +.category-panel-content { | ||
80 | + background: #F5F5F5; | ||
81 | +} | ||
82 | + | ||
83 | +.core-subjects-options li { | ||
84 | + background-color: #FFFFFF; | ||
85 | + border-bottom-color: #D2D2D2; | ||
86 | + color: #A0A0A0; | ||
87 | +} | ||
88 | + | ||
89 | +.core-subjects-options li.active { | ||
90 | + color: inherit; | ||
91 | + border-bottom-color: #00695C; | ||
92 | +} | ||
93 | + | ||
94 | +.create-subject-btn { | ||
95 | + background-color: #26A69A; | ||
96 | + color: white; | ||
97 | +} | ||
98 | + | ||
99 | +#coordinators_accordion .panel-heading, #professors_accordion .panel-heading { | ||
100 | + background: #FFFFFF; | ||
101 | +} | ||
102 | + | ||
103 | +.navbar-brand:hover { | ||
104 | + background: #00695C !important; | ||
105 | +} | ||
106 | + | ||
107 | +.navbar .project_name { | ||
108 | + color: white; | ||
109 | +} | ||
110 | + | ||
111 | +.navbar-nav li.open { | ||
112 | + background: #00695C; | ||
113 | +} | ||
114 | + | ||
115 | +.navbar-nav li > a:hover { | ||
116 | + background: #00695C !important; | ||
117 | +} | ||
118 | + | ||
119 | +.navbar-nav li.settings_menu_active { | ||
120 | + background: #00695C | ||
121 | +} | ||
122 | + | ||
123 | +.top-search { | ||
124 | + color: #F5F5F5; | ||
125 | +} | ||
126 | + | ||
127 | +#btn-search:hover { | ||
128 | + background: #00695C; | ||
129 | +} | ||
130 | + | ||
131 | +.dropdown-menu { | ||
132 | + background: #F5F5F5; | ||
133 | +} | ||
134 | + | ||
135 | +.dropdown-menu li > a { | ||
136 | + background: #F5F5F5; | ||
137 | + color: #333333; | ||
138 | +} | ||
139 | + | ||
140 | +.dropdown-menu li > a:hover { | ||
141 | + background: #EEEEEE !important; | ||
142 | +} | ||
143 | + | ||
144 | +#system_accordion > .panel > .panel-heading { | ||
145 | + background: #F5F5F5; | ||
146 | +} | ||
147 | + | ||
148 | +#system_accordion > .panel > .panel-heading:hover { | ||
149 | + background: #EEEEEE; | ||
150 | +} | ||
151 | + | ||
152 | +#system_accordion > .panel > .panel-heading > a > .panel-title { | ||
153 | + color: #333333; | ||
154 | +} | ||
155 | + | ||
156 | +#system_accordion > .panel > .panel-heading > a > .panel-title:hover { | ||
157 | + color: #009688; | ||
158 | +} | ||
159 | + | ||
160 | +#system_accordion > .panel > .panel-heading > a:hover { | ||
161 | + color: #009688; | ||
162 | +} | ||
163 | + | ||
164 | +#system_menu { | ||
165 | + background: #F5F5F5; | ||
166 | +} | ||
167 | + | ||
168 | +.modal-header { | ||
169 | + border-bottom: 1px solid #E6E7E8 !important; | ||
170 | +} | ||
171 | + | ||
172 | +.modal-footer { | ||
173 | + border-top: 1px solid #E6E7E8 !important; | ||
174 | +} | ||
175 | + | ||
176 | +#horizontal-line{ | ||
177 | + background-color: black; | ||
178 | +} | ||
179 | + | ||
180 | +.breadcrumb > li > span.divider { | ||
181 | + color: #26A69A; | ||
182 | +} | ||
183 | + | ||
184 | +.breadcrumb > li > a{ | ||
185 | + color: #26A69A; | ||
186 | +} | ||
187 | + | ||
188 | +.breadcrumb > li { | ||
189 | + color: #BDBDBD; | ||
190 | +} | ||
191 | + | ||
192 | +.panel-title{ /*Because we use an outer a tag*/ | ||
193 | + color: rgba(255,255,255,.84); | ||
194 | +} | ||
195 | + | ||
196 | +.accordion { | ||
197 | + background: white; | ||
198 | +} | ||
199 | + | ||
200 | +.accordion_list { | ||
201 | + background: #F5F5F5; | ||
202 | +} | ||
203 | + | ||
204 | +.outside-title { | ||
205 | + color: #43a251; | ||
206 | +} | ||
207 | + | ||
208 | +.titleTopic a h4, .titleTopic h4 { | ||
209 | + color: white; | ||
210 | +} | ||
211 | + | ||
212 | +.Topic-detail a h4{ | ||
213 | + color: black; | ||
214 | +} | ||
215 | + | ||
216 | +.cards-detail .panel .panel-heading h4 { | ||
217 | + color:black; | ||
218 | +} | ||
219 | + | ||
220 | +.data_register_course p { | ||
221 | + color: grey; | ||
222 | +} | ||
223 | + | ||
224 | +.category-course-link { | ||
225 | + color: #FFFFFF !important; | ||
226 | +} | ||
227 | + | ||
228 | +.profile_function { | ||
229 | + border-bottom: 1px solid #D2D2D2; | ||
230 | +} | ||
231 | + | ||
232 | +.bottom-menu { | ||
233 | + background: #26A69A; | ||
234 | +} | ||
235 | + | ||
236 | +.mobile-menu .item { | ||
237 | + color: #FFFFFF; | ||
238 | + background: #26A69A; | ||
239 | +} | ||
240 | + | ||
241 | +.mobile-menu .item a { | ||
242 | + color: white; | ||
243 | +} | ||
244 | + | ||
245 | +.mobile-menu > .subjects_menu_active { | ||
246 | + background-color: #00695C; | ||
247 | +} | ||
248 | + | ||
249 | +.mobile-menu > .item:hover{ | ||
250 | + background-color: #00695C; | ||
251 | +} | ||
252 | + | ||
253 | +.access-subject { | ||
254 | + background-color: #2eb82e !important; | ||
255 | + color: white; | ||
256 | +} | ||
257 | + | ||
258 | +.page_selector h4 { | ||
259 | + border-bottom: 1px solid #e5e5e5; | ||
260 | +} | ||
261 | + | ||
262 | +.subscribe-subject { | ||
263 | + background-color: #33cc33 !important; | ||
264 | + color:white; | ||
265 | +} | ||
266 | + | ||
267 | +.filedrag { | ||
268 | + color: #555; | ||
269 | + border: 2px dashed #555; | ||
270 | +} | ||
271 | + | ||
272 | +.footer { | ||
273 | + color: #FFFFFF; | ||
274 | + background: #26A69A; | ||
275 | +} | ||
0 | \ No newline at end of file | 276 | \ No newline at end of file |
@@ -0,0 +1,270 @@ | @@ -0,0 +1,270 @@ | ||
1 | +body .container .jumbotron-inverse, body .container .well-inverse, body .container-fluid .jumbotron-inverse, body .container-fluid .well-inverse { | ||
2 | + background-color: white; | ||
3 | +} | ||
4 | + | ||
5 | +a, a:focus, a:hover { | ||
6 | + color: #7B241C; | ||
7 | +} | ||
8 | + | ||
9 | +.radio input[type=radio]:checked~.check, label.radio-inline input[type=radio]:checked~.check { | ||
10 | + background-color: #7B241C; | ||
11 | +} | ||
12 | + | ||
13 | +.radio input[type=radio]:checked~.circle, label.radio-inline input[type=radio]:checked~.circle { | ||
14 | + border-color: #7B241C; | ||
15 | +} | ||
16 | + | ||
17 | +.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus { | ||
18 | + color: #fff; | ||
19 | + background-color: #337ab7; | ||
20 | + border-color: #337ab7; | ||
21 | +} | ||
22 | + | ||
23 | +.navbar, .navbar.navbar-default { | ||
24 | + background-color: #7B241C; | ||
25 | + color: rgba(255,255,255,.84); | ||
26 | +} | ||
27 | + | ||
28 | +.my-subjects-title { | ||
29 | + color: #B03A2E; | ||
30 | +} | ||
31 | + | ||
32 | +#sidebar-menu .item { | ||
33 | + background-color: #B03A2E; | ||
34 | + color: white; | ||
35 | +} | ||
36 | + | ||
37 | +#sidebar-menu .item a{ | ||
38 | + color: white; | ||
39 | +} | ||
40 | + | ||
41 | +#sidebar-menu > .subjects_menu_active { | ||
42 | + background-color: #641E16; | ||
43 | +} | ||
44 | + | ||
45 | +#sidebar-menu > .item:hover{ | ||
46 | + background-color: #641E16; | ||
47 | +} | ||
48 | + | ||
49 | +.panel-invisible{ | ||
50 | + background-color: #BDBDBD !important; | ||
51 | + color: #F5F5F5; | ||
52 | +} | ||
53 | + | ||
54 | +.category-panel > .panel-heading { | ||
55 | + background-color: #666666 !important; | ||
56 | +} | ||
57 | + | ||
58 | +.subject-panel > .panel-heading { | ||
59 | + background-color: #777777 !important; | ||
60 | +} | ||
61 | + | ||
62 | +.category-header i { | ||
63 | + color: white; | ||
64 | +} | ||
65 | + | ||
66 | +.category-header i:hover{ | ||
67 | + color: #90CAF9; | ||
68 | +} | ||
69 | + | ||
70 | +.category-header .dropdown-menu i { | ||
71 | + color: inherit; | ||
72 | +} | ||
73 | + | ||
74 | +#create-category { | ||
75 | + background-color: #66BB6A; | ||
76 | + color: #FFFFFF; | ||
77 | +} | ||
78 | + | ||
79 | +.category-panel-content { | ||
80 | + background: #F5F5F5; | ||
81 | +} | ||
82 | + | ||
83 | +.core-subjects-options li { | ||
84 | + background-color: #FFFFFF; | ||
85 | + border-bottom-color: #D2D2D2; | ||
86 | + color: #A0A0A0; | ||
87 | +} | ||
88 | + | ||
89 | +.core-subjects-options li.active { | ||
90 | + color: inherit; | ||
91 | + border-bottom-color: #641E16; | ||
92 | +} | ||
93 | + | ||
94 | +.create-subject-btn { | ||
95 | + background-color: #B03A2E; | ||
96 | + color: white; | ||
97 | +} | ||
98 | + | ||
99 | +#coordinators_accordion .panel-heading, #professors_accordion .panel-heading { | ||
100 | + background: #FFFFFF; | ||
101 | +} | ||
102 | + | ||
103 | +.navbar-brand:hover { | ||
104 | + background: #641E16 !important; | ||
105 | +} | ||
106 | + | ||
107 | +.navbar .project_name { | ||
108 | + color: white; | ||
109 | +} | ||
110 | + | ||
111 | +.navbar-nav li.open { | ||
112 | + background: #641E16; | ||
113 | +} | ||
114 | + | ||
115 | +.navbar-nav li > a:hover { | ||
116 | + background: #641E16 !important; | ||
117 | +} | ||
118 | + | ||
119 | +.navbar-nav li.settings_menu_active { | ||
120 | + background: #641E16; | ||
121 | +} | ||
122 | + | ||
123 | +.top-search { | ||
124 | + color: #F5F5F5; | ||
125 | +} | ||
126 | + | ||
127 | +#btn-search:hover { | ||
128 | + background: #641E16; | ||
129 | +} | ||
130 | + | ||
131 | +.dropdown-menu { | ||
132 | + background: #F5F5F5; | ||
133 | +} | ||
134 | + | ||
135 | +.dropdown-menu li > a { | ||
136 | + background: #F5F5F5; | ||
137 | + color: #333333; | ||
138 | +} | ||
139 | + | ||
140 | +.dropdown-menu li > a:hover { | ||
141 | + background: #EEEEEE !important; | ||
142 | +} | ||
143 | + | ||
144 | +#system_accordion > .panel > .panel-heading { | ||
145 | + background: #F5F5F5; | ||
146 | +} | ||
147 | + | ||
148 | +#system_accordion > .panel > .panel-heading:hover { | ||
149 | + background: #EEEEEE; | ||
150 | +} | ||
151 | + | ||
152 | +#system_accordion > .panel > .panel-heading > a > .panel-title { | ||
153 | + color: #333333; | ||
154 | +} | ||
155 | + | ||
156 | +#system_accordion > .panel > .panel-heading > a > .panel-title:hover { | ||
157 | + color: #7B241C; | ||
158 | +} | ||
159 | + | ||
160 | +#system_accordion > .panel > .panel-heading > a:hover { | ||
161 | + color: #7B241C; | ||
162 | +} | ||
163 | + | ||
164 | +#system_menu { | ||
165 | + background: #F5F5F5; | ||
166 | +} | ||
167 | + | ||
168 | +.modal-header { | ||
169 | + border-bottom: 1px solid #E6E7E8 !important; | ||
170 | +} | ||
171 | + | ||
172 | +.modal-footer { | ||
173 | + border-top: 1px solid #E6E7E8 !important; | ||
174 | +} | ||
175 | + | ||
176 | +#horizontal-line{ | ||
177 | + background-color: black; | ||
178 | +} | ||
179 | + | ||
180 | +.breadcrumb > li > span.divider { | ||
181 | + color: #B03A2E; | ||
182 | +} | ||
183 | + | ||
184 | +.breadcrumb > li > a{ | ||
185 | + color: #B03A2E; | ||
186 | +} | ||
187 | + | ||
188 | +.breadcrumb > li { | ||
189 | + color: #BDBDBD; | ||
190 | +} | ||
191 | + | ||
192 | +.panel-title{ /*Because we use an outer a tag*/ | ||
193 | + color: rgba(255,255,255,.84); | ||
194 | +} | ||
195 | + | ||
196 | +.accordion { | ||
197 | + background: white; | ||
198 | +} | ||
199 | + | ||
200 | +.accordion_list { | ||
201 | + background: #F5F5F5; | ||
202 | +} | ||
203 | + | ||
204 | +.outside-title { | ||
205 | + color: #43a251; | ||
206 | +} | ||
207 | + | ||
208 | +.titleTopic a h4, .titleTopic h4 { | ||
209 | + color: white; | ||
210 | +} | ||
211 | + | ||
212 | +.Topic-detail a h4{ | ||
213 | + color: black; | ||
214 | +} | ||
215 | + | ||
216 | +.cards-detail .panel .panel-heading h4 { | ||
217 | + color:black; | ||
218 | +} | ||
219 | + | ||
220 | +.data_register_course p { | ||
221 | + color: grey; | ||
222 | +} | ||
223 | + | ||
224 | +.category-course-link { | ||
225 | + color: #FFFFFF !important; | ||
226 | +} | ||
227 | + | ||
228 | +.profile_function { | ||
229 | + border-bottom: 1px solid #D2D2D2; | ||
230 | +} | ||
231 | + | ||
232 | +.bottom-menu { | ||
233 | + background: #B03A2E; | ||
234 | +} | ||
235 | + | ||
236 | +.mobile-menu .item { | ||
237 | + color: #FFFFFF; | ||
238 | + background: #B03A2E; | ||
239 | +} | ||
240 | + | ||
241 | +.mobile-menu .item a { | ||
242 | + color: white; | ||
243 | +} | ||
244 | + | ||
245 | +.mobile-menu > .subjects_menu_active { | ||
246 | + background-color: #641E16; | ||
247 | +} | ||
248 | + | ||
249 | +.mobile-menu > .item:hover{ | ||
250 | + background-color: #641E16; | ||
251 | +} | ||
252 | + | ||
253 | +.access-subject { | ||
254 | + background-color: #2eb82e !important; | ||
255 | + color: white; | ||
256 | +} | ||
257 | + | ||
258 | +.page_selector h4 { | ||
259 | + border-bottom: 1px solid #e5e5e5; | ||
260 | +} | ||
261 | + | ||
262 | +.subscribe-subject { | ||
263 | + background-color: #33cc33 !important; | ||
264 | + color:white; | ||
265 | +} | ||
266 | + | ||
267 | +.filedrag { | ||
268 | + color: #555; | ||
269 | + border: 2px dashed #555; | ||
270 | +} | ||
0 | \ No newline at end of file | 271 | \ No newline at end of file |
amadeus/static/img/amadeus.png
105 KB
47.7 KB
105 KB
990 Bytes
69 KB
69.3 KB
71.4 KB
amadeus/static/img/topo-amadeus-white.png
990 Bytes
amadeus/static/img/topo-amadeus.png
47.7 KB
amadeus/static/js/themes.js
@@ -8,10 +8,12 @@ if (window.File && window.FileList && window.FileReader) { | @@ -8,10 +8,12 @@ if (window.File && window.FileList && window.FileReader) { | ||
8 | function Init() { | 8 | function Init() { |
9 | var small = $("#id_small_logo"), | 9 | var small = $("#id_small_logo"), |
10 | large = $("#id_large_logo"), | 10 | large = $("#id_large_logo"), |
11 | + fav = $("#id_favicon"), | ||
11 | filedrag = $(".filedrag"), | 12 | filedrag = $(".filedrag"), |
12 | common = $(".common-file-input"); | 13 | common = $(".common-file-input"); |
13 | 14 | ||
14 | // file select | 15 | // file select |
16 | + fav.on("change", FileSelectHandler); | ||
15 | small.on("change", FileSelectHandler); | 17 | small.on("change", FileSelectHandler); |
16 | large.on("change", FileSelectHandler); | 18 | large.on("change", FileSelectHandler); |
17 | 19 |
amadeus/templates/base.html
1 | <!DOCTYPE html> | 1 | <!DOCTYPE html> |
2 | 2 | ||
3 | -{% load static i18n %} | ||
4 | -{% load static i18n permission_tags django_bootstrap_breadcrumbs %} | 3 | +{% load static i18n django_bootstrap_breadcrumbs %} |
5 | {% get_current_language as LANGUAGE_CODE %} | 4 | {% get_current_language as LANGUAGE_CODE %} |
6 | 5 | ||
7 | <html> | 6 | <html> |
8 | <head> | 7 | <head> |
9 | - <title>{{ title }} | Amadeus</title> | 8 | + <title>{{ title }} | {{ theme.title }}</title> |
10 | 9 | ||
11 | <!-- jQuery & jQuery UI --> | 10 | <!-- jQuery & jQuery UI --> |
12 | <script type="text/javascript" src="{% static 'js/jquery-3.1.0.min.js' %}"></script> | 11 | <script type="text/javascript" src="{% static 'js/jquery-3.1.0.min.js' %}"></script> |
13 | <script type="text/javascript" src="{% static 'js/jquery-ui.js' %}"></script> | 12 | <script type="text/javascript" src="{% static 'js/jquery-ui.js' %}"></script> |
14 | 13 | ||
15 | <meta http-equiv="Cache-Control" content="no-cache, no-store" /> | 14 | <meta http-equiv="Cache-Control" content="no-cache, no-store" /> |
16 | - <link href="{% static 'img/topo-amadeus.png' %}" rel="shortcut icon" /> | 15 | + <link href="{{ theme.favicon }}" rel="shortcut icon" /> |
17 | <!-- Roboto font --> | 16 | <!-- Roboto font --> |
18 | <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:300,400,500,700" type="text/css"> | 17 | <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:300,400,500,700" type="text/css"> |
19 | <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> | 18 | <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> |
@@ -47,6 +46,7 @@ | @@ -47,6 +46,7 @@ | ||
47 | <!-- Custom styles --> | 46 | <!-- Custom styles --> |
48 | <link rel="stylesheet" type="text/css" href="{% static 'css/base/amadeus_responsive.css' %}"> | 47 | <link rel="stylesheet" type="text/css" href="{% static 'css/base/amadeus_responsive.css' %}"> |
49 | <link rel="stylesheet" type="text/css" href="{% static 'css/base/amadeus.css' %}"> | 48 | <link rel="stylesheet" type="text/css" href="{% static 'css/base/amadeus.css' %}"> |
49 | + | ||
50 | 50 | ||
51 | <!--Javascript block for specific-app ones --> | 51 | <!--Javascript block for specific-app ones --> |
52 | <script src="{% static 'js/base/amadeus.js' %}"></script> | 52 | <script src="{% static 'js/base/amadeus.js' %}"></script> |
@@ -59,6 +59,9 @@ | @@ -59,6 +59,9 @@ | ||
59 | <!-- Summernote --> | 59 | <!-- Summernote --> |
60 | <script src="{% static 'summernote/summernote.js' %}" type="text/javascript"></script> | 60 | <script src="{% static 'summernote/summernote.js' %}" type="text/javascript"></script> |
61 | <link href="{% static 'summernote/summernote.css' %}" type="text/css" rel="stylesheet" /> | 61 | <link href="{% static 'summernote/summernote.css' %}" type="text/css" rel="stylesheet" /> |
62 | + {% with 'css/themes/'|add:theme.css_style|add:'.css' as theme_selected %} | ||
63 | + <link rel="stylesheet" type="text/css" href="{% static theme_selected %}"> | ||
64 | + {% endwith %} | ||
62 | 65 | ||
63 | </head> | 66 | </head> |
64 | <body> | 67 | <body> |
@@ -71,8 +74,8 @@ | @@ -71,8 +74,8 @@ | ||
71 | <span class="icon-bar"></span> | 74 | <span class="icon-bar"></span> |
72 | </button> | 75 | </button> |
73 | <a class="navbar-brand" href="{% url 'subjects:home' %}"> | 76 | <a class="navbar-brand" href="{% url 'subjects:home' %}"> |
74 | - <img class="logo pull-left" src="{% static 'img/topo-amadeus-white.png' %}" alt="Logo" /> | ||
75 | - <span class="pull-right project_name">Projeto Amadeus</span> | 77 | + <img class="logo pull-left" src="{{ theme.small_logo_url }}" alt="Logo" /> |
78 | + <span class="pull-right project_name">{{ theme.title }}</span> | ||
76 | </a> | 79 | </a> |
77 | </div> | 80 | </div> |
78 | <div class="navbar-collapse collapse navbar-responsive-collapse"> | 81 | <div class="navbar-collapse collapse navbar-responsive-collapse"> |
@@ -184,6 +187,9 @@ | @@ -184,6 +187,9 @@ | ||
184 | </div> | 187 | </div> |
185 | </div> | 188 | </div> |
186 | 189 | ||
190 | + {% block footer %} | ||
191 | + {% endblock %} | ||
192 | + | ||
187 | {% block bottommenu %} | 193 | {% block bottommenu %} |
188 | <div class="clearfix visible-xs visible-sm"></div> | 194 | <div class="clearfix visible-xs visible-sm"></div> |
189 | <div class="bottom-menu visible-xs visible-sm"> | 195 | <div class="bottom-menu visible-xs visible-sm"> |
mailsender/templates/mailsender/update.html
@@ -16,6 +16,12 @@ | @@ -16,6 +16,12 @@ | ||
16 | <form method="post" action="" enctype="multipart/form-data"> | 16 | <form method="post" action="" enctype="multipart/form-data"> |
17 | {% csrf_token %} | 17 | {% csrf_token %} |
18 | <legend>{% trans 'General server settings' %}</legend> | 18 | <legend>{% trans 'General server settings' %}</legend> |
19 | + <em> | ||
20 | + {% trans 'If your email host is Gmail make sure to turn on the option "Allow less secure apps" in' %}: | ||
21 | + <b><a href="https://www.google.com/settings/security/lesssecureapps">https://www.google.com/settings/security/lesssecureapps</a></b> | ||
22 | + </em> | ||
23 | + <br clear="all" /> | ||
24 | + <br clear="all" /> | ||
19 | {% for field in form %} | 25 | {% for field in form %} |
20 | {% if field.auto_id == 'id_username' %} | 26 | {% if field.auto_id == 'id_username' %} |
21 | <br clear="all" /> | 27 | <br clear="all" /> |
@@ -0,0 +1,20 @@ | @@ -0,0 +1,20 @@ | ||
1 | +# -*- coding: utf-8 -*- | ||
2 | +# Generated by Django 1.10 on 2017-01-12 17:08 | ||
3 | +from __future__ import unicode_literals | ||
4 | + | ||
5 | +from django.db import migrations, models | ||
6 | + | ||
7 | + | ||
8 | +class Migration(migrations.Migration): | ||
9 | + | ||
10 | + dependencies = [ | ||
11 | + ('security', '0002_auto_20170110_1807'), | ||
12 | + ] | ||
13 | + | ||
14 | + operations = [ | ||
15 | + migrations.AlterField( | ||
16 | + model_name='security', | ||
17 | + name='maintence', | ||
18 | + field=models.BooleanField(default=False, verbose_name='Put system in maintenance mode'), | ||
19 | + ), | ||
20 | + ] |
@@ -0,0 +1,19 @@ | @@ -0,0 +1,19 @@ | ||
1 | +# -*- coding: utf-8 -*- | ||
2 | +# Generated by Django 1.10 on 2017-01-12 17:08 | ||
3 | +from __future__ import unicode_literals | ||
4 | + | ||
5 | +from django.db import migrations | ||
6 | + | ||
7 | + | ||
8 | +class Migration(migrations.Migration): | ||
9 | + | ||
10 | + dependencies = [ | ||
11 | + ('subjects', '0011_auto_20170110_1446'), | ||
12 | + ] | ||
13 | + | ||
14 | + operations = [ | ||
15 | + migrations.AlterModelOptions( | ||
16 | + name='subject', | ||
17 | + options={'ordering': ['name'], 'verbose_name': 'Subject', 'verbose_name_plural': 'Subjects'}, | ||
18 | + ), | ||
19 | + ] |
themes/forms.py
@@ -4,10 +4,47 @@ from django import forms | @@ -4,10 +4,47 @@ from django import forms | ||
4 | from .models import Themes | 4 | from .models import Themes |
5 | 5 | ||
6 | class BasicElemetsForm(forms.ModelForm): | 6 | class BasicElemetsForm(forms.ModelForm): |
7 | + MAX_UPLOAD_SIZE = 2*1024*1024 | ||
8 | + | ||
9 | + def clean_favicon(self): | ||
10 | + image = self.cleaned_data.get('favicon', False) | ||
11 | + | ||
12 | + if image: | ||
13 | + if hasattr(image, '_size'): | ||
14 | + if image._size > self.MAX_UPLOAD_SIZE: | ||
15 | + self._errors['favicon'] = [_("The image is too large. It should have less than 2MB.")] | ||
16 | + | ||
17 | + return ValueError | ||
18 | + | ||
19 | + return image | ||
20 | + | ||
21 | + def clean_small_logo(self): | ||
22 | + image = self.cleaned_data.get('small_logo', False) | ||
23 | + | ||
24 | + if image: | ||
25 | + if hasattr(image, '_size'): | ||
26 | + if image._size > self.MAX_UPLOAD_SIZE: | ||
27 | + self._errors['small_logo'] = [_("The image is too large. It should have less than 2MB.")] | ||
28 | + | ||
29 | + return ValueError | ||
30 | + | ||
31 | + return image | ||
32 | + | ||
33 | + def clean_large_logo(self): | ||
34 | + image = self.cleaned_data.get('large_logo', False) | ||
35 | + | ||
36 | + if image: | ||
37 | + if hasattr(image, '_size'): | ||
38 | + if image._size > self.MAX_UPLOAD_SIZE: | ||
39 | + self._errors['large_logo'] = [_("The image is too large. It should have less than 2MB.")] | ||
40 | + | ||
41 | + return ValueError | ||
42 | + | ||
43 | + return image | ||
7 | 44 | ||
8 | class Meta: | 45 | class Meta: |
9 | model = Themes | 46 | model = Themes |
10 | - fields = ['title', 'small_logo', 'large_logo', 'footer_note'] | 47 | + fields = ['title', 'favicon', 'small_logo', 'large_logo', 'footer_note'] |
11 | 48 | ||
12 | class CSSStyleForm(forms.ModelForm): | 49 | class CSSStyleForm(forms.ModelForm): |
13 | 50 |
@@ -0,0 +1,20 @@ | @@ -0,0 +1,20 @@ | ||
1 | +# -*- coding: utf-8 -*- | ||
2 | +# Generated by Django 1.10 on 2017-01-12 17:08 | ||
3 | +from __future__ import unicode_literals | ||
4 | + | ||
5 | +from django.db import migrations, models | ||
6 | + | ||
7 | + | ||
8 | +class Migration(migrations.Migration): | ||
9 | + | ||
10 | + dependencies = [ | ||
11 | + ('themes', '0002_auto_20170110_1809'), | ||
12 | + ] | ||
13 | + | ||
14 | + operations = [ | ||
15 | + migrations.AlterField( | ||
16 | + model_name='themes', | ||
17 | + name='css_style', | ||
18 | + field=models.CharField(choices=[('green', 'Green'), ('red', 'Red'), ('black', 'Black')], default='green', max_length=50, verbose_name='Css Style'), | ||
19 | + ), | ||
20 | + ] |
@@ -0,0 +1,21 @@ | @@ -0,0 +1,21 @@ | ||
1 | +# -*- coding: utf-8 -*- | ||
2 | +# Generated by Django 1.10 on 2017-01-12 20:42 | ||
3 | +from __future__ import unicode_literals | ||
4 | + | ||
5 | +from django.db import migrations, models | ||
6 | +import themes.models | ||
7 | + | ||
8 | + | ||
9 | +class Migration(migrations.Migration): | ||
10 | + | ||
11 | + dependencies = [ | ||
12 | + ('themes', '0003_auto_20170112_1408'), | ||
13 | + ] | ||
14 | + | ||
15 | + operations = [ | ||
16 | + migrations.AddField( | ||
17 | + model_name='themes', | ||
18 | + name='favicon', | ||
19 | + field=models.ImageField(blank=True, default='favicon_amadeus.png', upload_to='themes/', validators=[themes.models.validate_img_extension], verbose_name='Favicon'), | ||
20 | + ), | ||
21 | + ] |
themes/models.py
1 | from django.db import models | 1 | from django.db import models |
2 | from django.utils.translation import ugettext_lazy as _ | 2 | from django.utils.translation import ugettext_lazy as _ |
3 | +from django.contrib.staticfiles.templatetags.staticfiles import static | ||
3 | 4 | ||
4 | def validate_img_extension(value): | 5 | def validate_img_extension(value): |
5 | valid_formats = ['image/jpeg','image/x-citrix-jpeg','image/png','image/x-citrix-png','image/x-png'] | 6 | valid_formats = ['image/jpeg','image/x-citrix-jpeg','image/png','image/x-citrix-png','image/x-png'] |
@@ -10,10 +11,11 @@ def validate_img_extension(value): | @@ -10,10 +11,11 @@ def validate_img_extension(value): | ||
10 | 11 | ||
11 | class Themes(models.Model): | 12 | class Themes(models.Model): |
12 | title = models.CharField(_("Title"), max_length = 200, default = "Projeto Amadeus") | 13 | title = models.CharField(_("Title"), max_length = 200, default = "Projeto Amadeus") |
14 | + favicon = models.ImageField(verbose_name = _("Favicon"), blank = True, upload_to = 'themes/', default = 'favicon_amadeus.png', validators = [validate_img_extension]) | ||
13 | small_logo = models.ImageField(verbose_name = _("Small Logo"), blank = True, upload_to = 'themes/', default = 'logo_pequena_amadeus.png', validators = [validate_img_extension]) | 15 | small_logo = models.ImageField(verbose_name = _("Small Logo"), blank = True, upload_to = 'themes/', default = 'logo_pequena_amadeus.png', validators = [validate_img_extension]) |
14 | large_logo = models.ImageField(verbose_name = _("Large Logo"), blank = True, upload_to = 'themes/', default = 'logo_grande_amadeus.png', validators = [validate_img_extension]) | 16 | large_logo = models.ImageField(verbose_name = _("Large Logo"), blank = True, upload_to = 'themes/', default = 'logo_grande_amadeus.png', validators = [validate_img_extension]) |
15 | footer_note = models.TextField(_("Footer Note"), blank = True) | 17 | footer_note = models.TextField(_("Footer Note"), blank = True) |
16 | - css_style = models.CharField(_("Css Style"), max_length = 50, default = "green") | 18 | + css_style = models.CharField(_("Css Style"), max_length = 50, default = "green", choices = (("green", _('Green')), ("red", _('Red')), ("black", _('Black')))) |
17 | 19 | ||
18 | class Meta: | 20 | class Meta: |
19 | verbose_name = _("Theme") | 21 | verbose_name = _("Theme") |
@@ -21,3 +23,27 @@ class Themes(models.Model): | @@ -21,3 +23,27 @@ class Themes(models.Model): | ||
21 | 23 | ||
22 | def __str__(self): | 24 | def __str__(self): |
23 | return self.title | 25 | return self.title |
26 | + | ||
27 | + @property | ||
28 | + def favicon_url(self): | ||
29 | + if self.favicon and hasattr(self.favicon, 'url'): | ||
30 | + if self.favicon.url != 'favicon_amadeus.png': | ||
31 | + return self.favicon.url | ||
32 | + | ||
33 | + return static('img/favicon_amadeus.png') | ||
34 | + | ||
35 | + @property | ||
36 | + def small_logo_url(self): | ||
37 | + if self.small_logo and hasattr(self.small_logo, 'url'): | ||
38 | + if self.small_logo.url != 'logo_pequena_amadeus.png': | ||
39 | + return self.small_logo.url | ||
40 | + | ||
41 | + return static('img/logo_pequena_amadeus.png') | ||
42 | + | ||
43 | + @property | ||
44 | + def large_logo_url(self): | ||
45 | + if self.large_logo and hasattr(self.large_logo, 'url'): | ||
46 | + if self.large_logo.url != 'logo_grande_amadeus.png': | ||
47 | + return self.large_logo.url | ||
48 | + | ||
49 | + return static('img/logo_grande_amadeus.png') | ||
24 | \ No newline at end of file | 50 | \ No newline at end of file |
themes/templates/themes/basic_update.html
@@ -19,14 +19,14 @@ | @@ -19,14 +19,14 @@ | ||
19 | {% csrf_token %} | 19 | {% csrf_token %} |
20 | {% for field in form %} | 20 | {% for field in form %} |
21 | <div class="form-group{% if form.has_error %} has-error {% endif %} is-fileinput"> | 21 | <div class="form-group{% if form.has_error %} has-error {% endif %} is-fileinput"> |
22 | - {% if field.auto_id == 'id_small_logo' or field.auto_id == 'id_large_logo' %} | 22 | + {% if field.auto_id == 'id_small_logo' or field.auto_id == 'id_large_logo' or field.auto_id == 'id_favicon' %} |
23 | {% if field.field.required %} | 23 | {% if field.field.required %} |
24 | <label for="{{ field.auto_id }}">{{ field.label }} <span>*</span></label> | 24 | <label for="{{ field.auto_id }}">{{ field.label }} <span>*</span></label> |
25 | {% else %} | 25 | {% else %} |
26 | <label for="{{ field.auto_id }}">{{ field.label }}</label> | 26 | <label for="{{ field.auto_id }}">{{ field.label }}</label> |
27 | {% endif %} | 27 | {% endif %} |
28 | 28 | ||
29 | - {% render_field field class='form-control' %} | 29 | + {% render_field field %} |
30 | 30 | ||
31 | <div class="input-group common-file-input"> | 31 | <div class="input-group common-file-input"> |
32 | <input type="text" readonly="" class="form-control" placeholder="{% trans 'Choose your photo...' %}"> | 32 | <input type="text" readonly="" class="form-control" placeholder="{% trans 'Choose your photo...' %}"> |
@@ -36,7 +36,20 @@ | @@ -36,7 +36,20 @@ | ||
36 | </button> | 36 | </button> |
37 | </span> | 37 | </span> |
38 | </div> | 38 | </div> |
39 | - <div class="filedrag">{% trans 'Click or drop files here' %}</div> | 39 | + <div class="filedrag"> |
40 | + {% trans 'Click or drop files here' %}<br /> | ||
41 | + | ||
42 | + {% trans 'Recommended dimensions' %}: | ||
43 | + | ||
44 | + {% if field.auto_id == 'id_small_logo' %} | ||
45 | + 927px x 955px <br /> | ||
46 | + <small>{% trans 'It is recommended to be a white image' %}</small> | ||
47 | + {% elif field.auto_id == 'id_favicon' %} | ||
48 | + 927px x 955px | ||
49 | + {% else %} | ||
50 | + 1286px x 955px | ||
51 | + {% endif %} | ||
52 | + </div> | ||
40 | 53 | ||
41 | {% elif field.auto_id == 'id_footer_note' %} | 54 | {% elif field.auto_id == 'id_footer_note' %} |
42 | {% if field.field.required %} | 55 | {% if field.field.required %} |
themes/templates/themes/css_update.html
@@ -0,0 +1,78 @@ | @@ -0,0 +1,78 @@ | ||
1 | +{% extends 'themes/index.html' %} | ||
2 | + | ||
3 | +{% load static i18n %} | ||
4 | +{% load widget_tweaks %} | ||
5 | +{% load django_bootstrap_breadcrumbs %} | ||
6 | + | ||
7 | +{% block breadcrumbs %} | ||
8 | + {{ block.super }} | ||
9 | + {% breadcrumb 'CSS Selector' 'themes:css' %} | ||
10 | +{% endblock %} | ||
11 | + | ||
12 | +{% block content %} | ||
13 | + <div class="card"> | ||
14 | + <div class="card-content"> | ||
15 | + <div class="card-body"> | ||
16 | + <a href="{% url 'themes:basic' %}" class="page_selector"><h4><i class="fa fa-angle-right"></i> {% trans 'Basic Elements' %}</h4></a> | ||
17 | + <a href="{% url 'themes:css' %}" class="page_selector"><h4><i class="fa fa-angle-down"></i> {% trans 'CSS Selector' %}</h4></a> | ||
18 | + | ||
19 | + <form method="post" action="" enctype="multipart/form-data"> | ||
20 | + {% csrf_token %} | ||
21 | + {% for field in form %} | ||
22 | + <div class="form-group{% if form.has_error %} has-error {% endif %} is-fileinput"> | ||
23 | + {% if field.field.required %} | ||
24 | + <label for="{{ field.auto_id }}">{{ field.label }} <span>*</span></label> | ||
25 | + {% else %} | ||
26 | + <label for="{{ field.auto_id }}">{{ field.label }}</label> | ||
27 | + {% endif %} | ||
28 | + | ||
29 | + <br clear="all" /> | ||
30 | + | ||
31 | + {% for radio in field %} | ||
32 | + <label for="{{ radio.id_for_label }}" class="row text-center"> | ||
33 | + <div class="col-lg-offset-2 col-md-offset-2 col-sm-offset-2 col-lg-2 col-md-2 col-sm-2 col-xs-3"> | ||
34 | + <span class="radio"> | ||
35 | + {{ radio }} | ||
36 | + </span> | ||
37 | + </div> | ||
38 | + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-4"> | ||
39 | + {% with 'img/themes/'|add:radio.choice_value|add:'.png' as img_presentation %} | ||
40 | + <img class="radio theme_img" src="{% static img_presentation %}" /> | ||
41 | + {% endwith %} | ||
42 | + </div> | ||
43 | + <div class="col-md-2 col-md-2 col-sm-2 col-xs-2"> | ||
44 | + {% with 'css/themes/'|add:radio.choice_value|add:'.css' as doc_presentation %} | ||
45 | + <a class="radio" href="{% static doc_presentation %}" target="blank">{% trans 'Documentation' %}</a> | ||
46 | + {% endwith %} | ||
47 | + </div> | ||
48 | + </label> | ||
49 | + <br clear="all" /> | ||
50 | + {% endfor %} | ||
51 | + </div> | ||
52 | + | ||
53 | + <span id="helpBlock" class="help-block">{{ field.help_text }}</span> | ||
54 | + {% if field.errors %} | ||
55 | + <div class="alert alert-danger alert-dismissible" role="alert"> | ||
56 | + <button type="button" class="close" data-dismiss="alert" aria-label="Close"> | ||
57 | + <span aria-hidden="true">×</span> | ||
58 | + </button> | ||
59 | + <ul> | ||
60 | + {% for error in field.errors %} | ||
61 | + <li>{{ error }}</li> | ||
62 | + {% endfor %} | ||
63 | + </ul> | ||
64 | + </div> | ||
65 | + {% endif %} | ||
66 | + {% endfor %} | ||
67 | + <div class="col-md-12 col-lg-12 col-sm-12 col-xs-12"> | ||
68 | + <div class="text-center"> | ||
69 | + <input type="submit" value="{% trans 'Save' %}" class="btn btn-raised btn-primary" /> | ||
70 | + </div> | ||
71 | + </div> | ||
72 | + </form> | ||
73 | + </div> | ||
74 | + </div> | ||
75 | + </div> | ||
76 | + <br clear="all" /> | ||
77 | + <br clear="all" /> | ||
78 | +{% endblock %} | ||
0 | \ No newline at end of file | 79 | \ No newline at end of file |
users/templates/users/forgot_password.html
@@ -15,7 +15,7 @@ | @@ -15,7 +15,7 @@ | ||
15 | {% block content %} | 15 | {% block content %} |
16 | <div class="row"> | 16 | <div class="row"> |
17 | <div class="col-lg-offset-1 col-md-offset-1"> | 17 | <div class="col-lg-offset-1 col-md-offset-1"> |
18 | - <img src="{% static 'img/amadeus.png' %}" class="img-responsive center-block logo-login logo-register" alt="logo amadeus"> | 18 | + <img src="{{ theme.large_logo_url }}" class="img-responsive center-block logo-login logo-register" alt="logo amadeus"> |
19 | </div> | 19 | </div> |
20 | </div> | 20 | </div> |
21 | 21 |
users/templates/users/login.html
@@ -15,7 +15,7 @@ | @@ -15,7 +15,7 @@ | ||
15 | {% block content %} | 15 | {% block content %} |
16 | <div class="row"> | 16 | <div class="row"> |
17 | <div class="col-lg-offset-1 col-md-offset-1"> | 17 | <div class="col-lg-offset-1 col-md-offset-1"> |
18 | - <img src="{% static 'img/amadeus.png' %}" class="img-responsive center-block logo-login " alt="logo amadeus"> | 18 | + <img src="{{ theme.large_logo_url }}" class="img-responsive center-block logo-login " alt="logo amadeus"> |
19 | </div> | 19 | </div> |
20 | </div> | 20 | </div> |
21 | 21 | ||
@@ -56,22 +56,34 @@ | @@ -56,22 +56,34 @@ | ||
56 | </form> | 56 | </form> |
57 | <div class="row"> | 57 | <div class="row"> |
58 | <div class="col-lg-10 col-md-10 col-sm-10 col-lg-offset-1 col-md-offset-1 col-sm-offset-1"> | 58 | <div class="col-lg-10 col-md-10 col-sm-10 col-lg-offset-1 col-md-offset-1 col-sm-offset-1"> |
59 | - <div class="col-md-6 col-xs-6 col-sm-6 col-lg-6 text-center"> | ||
60 | - <button type="submite" class="btn btn-success btn-raised btn-block" form="form-login" style="position: initial;"> {% trans 'Log in' %} </button> | ||
61 | - </div> | ||
62 | {% if not deny_register %} | 59 | {% if not deny_register %} |
63 | <div class="col-md-6 col-xs-6 col-sm-6 col-lg-6 text-center"> | 60 | <div class="col-md-6 col-xs-6 col-sm-6 col-lg-6 text-center"> |
61 | + <button type="submite" class="btn btn-success btn-raised btn-block" form="form-login" style="position: initial;"> {% trans 'Log in' %} </button> | ||
62 | + </div> | ||
63 | + <div class="col-md-6 col-xs-6 col-sm-6 col-lg-6 text-center"> | ||
64 | <a class="btn btn-default btn-raised btn-block" href="{% url 'users:signup' %}" formaction="#" style="position: initial;">{% trans 'Sign Up' %}</a> | 64 | <a class="btn btn-default btn-raised btn-block" href="{% url 'users:signup' %}" formaction="#" style="position: initial;">{% trans 'Sign Up' %}</a> |
65 | </div> | 65 | </div> |
66 | + {% else %} | ||
67 | + <div class="col-md-6 col-xs-6 col-sm-6 col-lg-6 col-lg-offset-3 col-md-offset-3 col-sm-offset-3 col-xs-offset-3 text-center"> | ||
68 | + <button type="submite" class="btn btn-success btn-raised btn-block" form="form-login" style="position: initial;"> {% trans 'Log in' %} </button> | ||
69 | + </div> | ||
66 | {% endif %} | 70 | {% endif %} |
67 | </div> | 71 | </div> |
68 | </div> | 72 | </div> |
69 | <div class="row"> | 73 | <div class="row"> |
70 | - <div class="col-sm-offset-1 col-md-10 col-lg-10 col-sm-10 col-xs-12"> | ||
71 | - <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 text-right forgotPassword"> | ||
72 | - <a href="{% url 'users:forgot_pass' %}">{% trans 'Forgot your password?' %}</a> | 74 | + {% if not deny_register %} |
75 | + <div class="col-sm-offset-1 col-md-10 col-lg-10 col-sm-10 col-xs-12"> | ||
76 | + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 text-right forgotPassword"> | ||
77 | + <a href="{% url 'users:forgot_pass' %}">{% trans 'Forgot your password?' %}</a> | ||
78 | + </div> | ||
73 | </div> | 79 | </div> |
74 | - </div> | 80 | + {% else %} |
81 | + <div class="col-md-12 col-lg-12 col-sm-12 col-xs-12"> | ||
82 | + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 text-center forgotPassword"> | ||
83 | + <a href="{% url 'users:forgot_pass' %}">{% trans 'Forgot your password?' %}</a> | ||
84 | + </div> | ||
85 | + </div> | ||
86 | + {% endif %} | ||
75 | </div> | 87 | </div> |
76 | </div> | 88 | </div> |
77 | </div> | 89 | </div> |
@@ -79,5 +91,19 @@ | @@ -79,5 +91,19 @@ | ||
79 | </div> | 91 | </div> |
80 | {% endblock%} | 92 | {% endblock%} |
81 | 93 | ||
94 | +{% block footer %} | ||
95 | + {% if theme.footer_note != '' and theme.footer_note != '<p><br></p>' %} | ||
96 | + <div class="footer"> | ||
97 | + <div class="row"> | ||
98 | + <div class="col-md-12 text-center"> | ||
99 | + {% autoescape off %} | ||
100 | + {{ theme.footer_note }} | ||
101 | + {% endautoescape %} | ||
102 | + </div> | ||
103 | + </div> | ||
104 | + </div> | ||
105 | + {% endif %} | ||
106 | +{% endblock %} | ||
107 | + | ||
82 | {% block bottommenu %} | 108 | {% block bottommenu %} |
83 | {% endblock %} | 109 | {% endblock %} |
84 | \ No newline at end of file | 110 | \ No newline at end of file |
users/templates/users/new_password.html
@@ -15,7 +15,7 @@ | @@ -15,7 +15,7 @@ | ||
15 | {% block content %} | 15 | {% block content %} |
16 | <div class="row"> | 16 | <div class="row"> |
17 | <div class="col-lg-offset-1 col-md-offset-1"> | 17 | <div class="col-lg-offset-1 col-md-offset-1"> |
18 | - <img src="{% static 'img/amadeus.png' %}" class="img-responsive center-block logo-login logo-register" alt="logo amadeus"> | 18 | + <img src="{{ theme.large_logo_url }}" class="img-responsive center-block logo-login logo-register" alt="logo amadeus"> |
19 | </div> | 19 | </div> |
20 | </div> | 20 | </div> |
21 | 21 |
users/templates/users/register.html
@@ -15,7 +15,7 @@ | @@ -15,7 +15,7 @@ | ||
15 | {% block content %} | 15 | {% block content %} |
16 | <div class="row"> | 16 | <div class="row"> |
17 | <div class="col-lg-offset-1 col-md-offset-1"> | 17 | <div class="col-lg-offset-1 col-md-offset-1"> |
18 | - <img src="{% static 'img/amadeus.png' %}" class="img-responsive center-block logo-login logo-register" alt="logo amadeus"> | 18 | + <img src="{{ theme.large_logo_url }}" class="img-responsive center-block logo-login logo-register" alt="logo amadeus"> |
19 | </div> | 19 | </div> |
20 | </div> | 20 | </div> |
21 | 21 |
users/views.py
@@ -22,6 +22,10 @@ from django.conf import settings | @@ -22,6 +22,10 @@ from django.conf import settings | ||
22 | from django.utils.encoding import force_bytes | 22 | from django.utils.encoding import force_bytes |
23 | from django.utils.http import urlsafe_base64_encode, urlsafe_base64_decode | 23 | from django.utils.http import urlsafe_base64_encode, urlsafe_base64_decode |
24 | from django.template import loader | 24 | from django.template import loader |
25 | +from django.core.mail import EmailMessage | ||
26 | +from django.core.mail.backends.smtp import EmailBackend | ||
27 | + | ||
28 | +from mailsender.models import MailSender | ||
25 | 29 | ||
26 | #API IMPORTS | 30 | #API IMPORTS |
27 | from rest_framework import viewsets | 31 | from rest_framework import viewsets |
@@ -346,15 +350,32 @@ class ForgotPassword(generic.FormView): | @@ -346,15 +350,32 @@ class ForgotPassword(generic.FormView): | ||
346 | 'protocol': 'http', | 350 | 'protocol': 'http', |
347 | } | 351 | } |
348 | 352 | ||
349 | - subject_template_name='registration/password_reset_subject.txt' | 353 | + subject_template_name = 'registration/password_reset_subject.txt' |
350 | email_template_name = 'recover_pass_email_template.html' | 354 | email_template_name = 'recover_pass_email_template.html' |
351 | 355 | ||
352 | subject = loader.render_to_string(subject_template_name, c) | 356 | subject = loader.render_to_string(subject_template_name, c) |
353 | # Email subject *must not* contain newlines | 357 | # Email subject *must not* contain newlines |
354 | subject = ''.join(subject.splitlines()) | 358 | subject = ''.join(subject.splitlines()) |
355 | email = loader.render_to_string(email_template_name, c) | 359 | email = loader.render_to_string(email_template_name, c) |
356 | - | ||
357 | - send_mail(subject, email, settings.DEFAULT_FROM_EMAIL , [user.email], fail_silently=False) | 360 | + |
361 | + mailsender = MailSender.objects.get(id = 1) | ||
362 | + | ||
363 | + if mailsender.hostname == "example.com": | ||
364 | + send_mail(subject, email, settings.DEFAULT_FROM_EMAIL , [user.email], fail_silently=False) | ||
365 | + else: | ||
366 | + if mailsender.crypto == 3 or mailsender.crypto == 4: | ||
367 | + tls = True | ||
368 | + else: | ||
369 | + tls = False | ||
370 | + | ||
371 | + backend = EmailBackend( | ||
372 | + host = mailsender.hostname, port = mailsender.port, username = mailsender.username, | ||
373 | + password = mailsender.password, use_tls = tls, fail_silently = False | ||
374 | + ) | ||
375 | + | ||
376 | + mail_msg = EmailMessage(subject = subject, body = email, from_email = settings.DEFAULT_FROM_EMAIL, to = [user.email], connection = backend) | ||
377 | + | ||
378 | + mail_msg.send() | ||
358 | 379 | ||
359 | result = self.form_valid(form) | 380 | result = self.form_valid(form) |
360 | messages.success(request, _("Soon you'll receive an email with instructions to set your new password. If you don't receive it in 24 hours, please check your spam box.")) | 381 | messages.success(request, _("Soon you'll receive an email with instructions to set your new password. If you don't receive it in 24 hours, please check your spam box.")) |