mirror of
				https://gitlab.crans.org/bde/nk20
				synced 2025-10-31 07:49:57 +01:00 
			
		
		
		
	Compare commits
	
		
			17 Commits
		
	
	
		
			note_sheet
			...
			potvieux
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 9dc11aa016 | ||
|  | 2ec5a0d9ca | ||
|  | 3faf611816 | ||
|  | 2807b6ef44 | ||
|  | d6645900d3 | ||
|  | e35847ebd8 | ||
|  | 57268bc9c2 | ||
|  | ab6c943126 | ||
|  | 5dc5f56ae4 | ||
|  | 81017fc393 | ||
|  | 90e3871934 | ||
|  | 95e07f3148 | ||
|  | 770c748bd9 | ||
|  | 06fa096405 | ||
|  | 182f680507 | ||
|  | 5ceda66ded | ||
|  | 6443d64b69 | 
| @@ -1,6 +1,8 @@ | ||||
| # Copyright (C) 2018-2025 by BDE ENS Paris-Saclay | ||||
| # SPDX-License-Identifier: GPL-3.0-or-later | ||||
|  | ||||
| import datetime | ||||
|  | ||||
| from django.utils import timezone | ||||
| from django.utils.html import escape | ||||
| from django.utils.safestring import mark_safe | ||||
| @@ -77,6 +79,9 @@ def get_row_class(record): | ||||
|             c += " table-info" | ||||
|         elif record.note.balance < 0: | ||||
|             c += " table-danger" | ||||
|         # MODE VIEUXCON=ON | ||||
|         if (datetime.datetime.utcnow().timestamp() - record.note.created_at.timestamp()) > 3600 * 24 * 365 * 2.5: | ||||
|             c += " font-weight-bold underline" | ||||
|     return c | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -264,13 +264,22 @@ class ActivityEntryView(LoginRequiredMixin, SingleTableMixin, TemplateView): | ||||
|                                          balance=F("note__balance")) | ||||
|  | ||||
|         # Keep only users that have a note | ||||
|         note_qs = note_qs.filter(note__noteuser__isnull=False) | ||||
|         note_qs = note_qs.filter(note__noteuser__isnull=False).exclude(note__inactivity_reason='forced') | ||||
|  | ||||
|         if activity.activity_type.name != "Pot Vieux": | ||||
|             # Keep only members | ||||
|             note_qs = note_qs.filter( | ||||
|                 note__noteuser__user__memberships__club=activity.attendees_club, | ||||
|                 note__noteuser__user__memberships__date_start__lte=timezone.now(), | ||||
|                 note__noteuser__user__memberships__date_end__gte=timezone.now(), | ||||
|             ) | ||||
|  | ||||
|         # Keep only valid members | ||||
|         note_qs = note_qs.filter( | ||||
|             note__noteuser__user__memberships__club=activity.attendees_club, | ||||
|             note__noteuser__user__memberships__date_start__lte=timezone.now(), | ||||
|             note__noteuser__user__memberships__date_end__gte=timezone.now()).exclude(note__inactivity_reason='forced') | ||||
| #        note_qs = note_qs.filter( | ||||
| #            note__noteuser__user__memberships__club=activity.attendees_club, | ||||
| #            note__noteuser__user__memberships__date_start__lte=timezone.now(), | ||||
| #            note__noteuser__user__memberships__date_end__gte=timezone.now(), | ||||
| #       ) | ||||
|  | ||||
|         # Filter with permission backend | ||||
|         note_qs = note_qs.filter(PermissionBackend.filter_queryset(self.request, Alias, "view")) | ||||
|   | ||||
| @@ -3815,8 +3815,8 @@ | ||||
|             "mask": 2, | ||||
|             "field": "", | ||||
|             "permanent": false, | ||||
|             "description": "Créer une transaction vers la note d'un club tant que la source reste au dessus de -20 €" | ||||
|         } | ||||
|             "description": "Créer une transaction vers la note d'un club" | ||||
| 	} | ||||
|     }, | ||||
|     { | ||||
|         "model": "permission.permission", | ||||
| @@ -4812,8 +4812,10 @@ | ||||
|                 168, | ||||
|                 176, | ||||
|                 177, | ||||
| 		178, | ||||
|                 197, | ||||
|                 211 | ||||
|                 211, | ||||
| 		244 | ||||
|             ] | ||||
|         } | ||||
|     }, | ||||
|   | ||||
							
								
								
									
										96
									
								
								note_kfet/static/css/custom.css
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										96
									
								
								note_kfet/static/css/custom.css
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							| @@ -61,20 +61,16 @@ mark { | ||||
| /* Make navbar more readable */ | ||||
| .navbar-dark .navbar-nav .nav-link { | ||||
|     color: rgba(255, 255, 255, .75); | ||||
|     text-shadow: 2px 2px 15px #ffeb40; | ||||
|     /* text-shadow: 2px 2px 15px #ffeb40; */ | ||||
| } | ||||
|  | ||||
| .navbar-brand { | ||||
|     text-shadow: 2px 2px 15px #ffeb40; | ||||
| } | ||||
| /* .navbar-brand { */ | ||||
| /*     text-shadow: 2px 2px 15px #ffeb40; */ | ||||
| /* } | ||||
|  | ||||
| /* Last BDE colors */ | ||||
| .bg-primary { | ||||
| /*    background-color: rgb(18, 67, 4) !important; */ | ||||
| /* MODE VIEUXCON=ON */ | ||||
| /*    background-color: rgb(166, 0, 2) !important; */ | ||||
|     background-color: rgb(0, 0, 0); | ||||
|     background-image: url('/static/img/rp_bg.png'); | ||||
|     background-color: rgb(102, 83, 105) !important; | ||||
| } | ||||
|  | ||||
| html { | ||||
| @@ -89,94 +85,52 @@ body { | ||||
| .btn-outline-primary:hover, | ||||
| .btn-outline-primary:not(:disabled):not(.disabled).active, | ||||
| .btn-outline-primary:not(:disabled):not(.disabled):active { | ||||
|     color:  rgb(0, 0, 0); | ||||
|     background-color: rgb(255, 0, 101); | ||||
|     border-color: rgb(255, 203, 32); | ||||
|     color: #fff; | ||||
|     background-color: rgb(102, 83, 105); | ||||
|     border-color: rgb(102, 83, 105); | ||||
| } | ||||
|  | ||||
| .btn-outline-primary { | ||||
|     color: #000; | ||||
|     background-color: #ffcb20; | ||||
|     border-color: #000; | ||||
|     color: rgb(102, 83, 105); | ||||
|     background-color: rgba(248, 249, 250, 0.9); | ||||
|     border-color: rgb(102, 83, 105); | ||||
| } | ||||
|  | ||||
| .turbolinks-progress-bar { | ||||
|     background-color: #ffffff; | ||||
|     background-color: #12432E; | ||||
| } | ||||
|  | ||||
| .btn-primary:hover, | ||||
| .btn-primary:not(:disabled):not(.disabled).active, | ||||
| .btn-primary:not(:disabled):not(.disabled):active { | ||||
|     color:  rgb(0, 0, 0); | ||||
|     background-color: rgb(255, 0, 101); | ||||
|     border-color: rgb(255, 203, 32); | ||||
|     color: #fff; | ||||
|     background-color: rgb(102, 83, 105); | ||||
|     border-color: rgb(102, 83, 105); | ||||
| } | ||||
|  | ||||
| .btn-primary { | ||||
|     color:  #ffcb20;  | ||||
|     background-color: #000000; | ||||
|     border-color: #ffcd20; | ||||
|     color: rgba(248, 249, 250, 0.9);  | ||||
|     background-color: rgb(102, 83, 105); | ||||
|     border-color: rgb(102, 83, 105); | ||||
| } | ||||
|  | ||||
| .border-primary { | ||||
|     border-color: rgb(255, 255, 255) !important;  | ||||
| } | ||||
|  | ||||
| .btn-secondary { | ||||
|     color:  #ff0065; | ||||
|     background-color: #000000; | ||||
|     border-color: #ff0065; | ||||
| } | ||||
|  | ||||
| .btn-secondary:hover, | ||||
| .btn-secondary:not(:disabled):not(.disabled).active, | ||||
| .btn-secondary:not(:disabled):not(.disabled):active { | ||||
|     color:  rgb(0, 0, 0); | ||||
|     background-color: rgb(255, 203, 32); | ||||
|     border-color: rgb(255, 0, 101); | ||||
| } | ||||
|  | ||||
| .btn-outline-dark-shiny { | ||||
|     background-color: #222; | ||||
|     border-color: #61605b; | ||||
|     color: rgba(255, 0, 101, 75%); | ||||
| } | ||||
|  | ||||
| .btn-outline-dark-shiny:hover, | ||||
| .btn-outline-dark-shiny:not(:disabled):not(.disabled).active, | ||||
| .btn-outline-dark-shiny:not(:disabled):not(.disabled):active { | ||||
|     color:  rgb(0, 0, 0); | ||||
|     background-color: rgb(255, 203, 32); | ||||
|     border-color: rgb(255, 0, 101); | ||||
| } | ||||
|  | ||||
| .btn-outline-dark { | ||||
|     background-color: #222; | ||||
|     border-color: #61605b; | ||||
|     color: rgba(255, 203, 32, 75%); | ||||
| } | ||||
|  | ||||
| .btn-outline-dark:hover, | ||||
| .btn-outline-dark:not(:disabled):not(.disabled).active, | ||||
| .btn-outline-dark:not(:disabled):not(.disabled):active { | ||||
|     color:  rgb(0, 0, 0); | ||||
|     background-color: rgb(255, 0, 101); | ||||
|     border-color: rgb(255, 203, 32); | ||||
|     border-color: rgb(115, 15, 115) !important;  | ||||
| } | ||||
|  | ||||
| a { | ||||
|     color: rgb(255, 0, 101); | ||||
|     color: rgb(102, 83, 105); | ||||
| } | ||||
|  | ||||
| a:hover { | ||||
|     color: rgb(255, 203, 32); | ||||
|     color: rgb(200, 30, 200); | ||||
| } | ||||
|  | ||||
| .form-control:focus { | ||||
|     box-shadow: 0 0 0 0.25rem rgb(255 0 101 / 50%); | ||||
|     border-color: rgb(255, 0, 101); | ||||
|     box-shadow: 0 0 0 0.25rem rgba(200, 30, 200, 0.25); | ||||
|     border-color: rgb(200, 30, 200); | ||||
| } | ||||
|  | ||||
| .btn-outline-primary.focus { | ||||
|   box-shadow: 0 0 0 0.25rem rgb(255 203 32 / 22%); | ||||
| } | ||||
|   box-shadow: 0 0 0 0.25rem rgba(200, 30, 200, 0.5); | ||||
|  | ||||
|   | ||||
| @@ -96,11 +96,13 @@ function displayStyle (note) { | ||||
|   if (!note) { return '' } | ||||
|   const balance = note.balance | ||||
|   var css = '' | ||||
|   var ms_per_year = 31536000000 // 365 * 24 * 3600 * 1000 | ||||
|   if (balance < -2000) { css += ' text-danger bg-dark' }  | ||||
|   else if (balance < -1000) { css += ' text-danger' }  | ||||
|   else if (balance < 0) { css += ' text-warning' } | ||||
|   if (!note.email_confirmed) { css += ' bg-primary' } | ||||
|   else if (!note.is_active || (note.membership && note.membership.date_end < new Date().toISOString())) { css += ' bg-info' } | ||||
|   if (((Date.now() - Date.parse(note.created_at))/ms_per_year) > 2.5) { css += ' font-weight-bold underline' } | ||||
|   return css | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -164,7 +164,12 @@ SPDX-License-Identifier: GPL-3.0-or-later | ||||
|         </div> | ||||
|     </nav> | ||||
|     <div class="{% block containertype %}container{% endblock %} my-3"> | ||||
| 	<div id="messages"> | ||||
|         <div id="messages"> | ||||
| 	    {% if user.is_authenticated %} | ||||
| 	    	<div class="alert alert-info"> | ||||
| 		    Bravo pour votre diplomation les survis ! | ||||
| 		</div> | ||||
| 	    {% endif %} | ||||
|             {% if user.is_authenticated %} | ||||
|                 {% if not user|is_member:"BDE" %} | ||||
|                     <div class="alert alert-danger"> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user