Skip to content

Commit 3e6a3de

Browse files
change default icon + add zipper to crate release zip file
1 parent 6f1e214 commit 3e6a3de

19 files changed

Lines changed: 149 additions & 53 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
.venv_3.12
33
sql-dumps
44
.vscode
5+
release.zip
56

67

78
# Byte-compiled / optimized / DLL files

chrono_des_vignes/__init__.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -218,13 +218,14 @@ def http_error(error:exceptions.HTTPException):
218218

219219
# defini les pages du site web
220220
from chrono_des_vignes.users import users
221-
from chrono_des_vignes.admin import admin
222-
from chrono_des_vignes.view import view
223-
from chrono_des_vignes.dev import dev
224-
from chrono_des_vignes.livetrack import livetrack
225221
app.register_blueprint(users)
222+
from chrono_des_vignes.admin import admin
226223
app.register_blueprint(admin)
224+
from chrono_des_vignes.view import view
227225
app.register_blueprint(view)
228-
app.register_blueprint(dev)
226+
if app.debug:
227+
from chrono_des_vignes.dev import dev
228+
app.register_blueprint(dev)
229+
from chrono_des_vignes.livetrack import livetrack
229230
app.register_blueprint(livetrack)
230231
from chrono_des_vignes import routes

chrono_des_vignes/admin/editions/__init__.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,9 @@ def delete_edition_page(event_name, edition_name):
7777
if edition.first_inscription <= datetime.now():
7878
flash('l\'edition ne peut pas être supprimée car les inscriptions sont déjà ouvertes', 'danger')
7979
return redirect(url_for('admin.editions.modify_edition_page',event_name=event.name, edition_name=edition.name))
80+
elif edition.passage_keys.count()>0:
81+
flash('l\'edition ne peut pas être supprimée car des passages keys existent', 'danger')
82+
return redirect(url_for('admin.editions.modify_edition_page',event_name=event.name, edition_name=edition.name))
8083

8184
db.session.delete(edition)
8285
db.session.commit()

chrono_des_vignes/admin/editions/parcours/__init__.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,8 @@ def launch_parcours(data):
103103
'all_right':inscription.has_all_right(),
104104
'end':inscription.end})
105105
emit('new_passage', pass_data, namespace='/edition/parcours', to=f'edition-parcours-{inscription.event.id}-{inscription.edition.id}')
106-
106+
else:
107+
ic('error value false', parcours is not None and data.get('start_time'), parcours ,data.get('start_time'), data)
107108
@socketio.on('stop_parcours', namespace='/edition/parcours')
108109
def stop_parcours(data):
109110
parcours = Parcours.query.get(data.get('parcours_id'))

chrono_des_vignes/admin/editions/passages/__init__.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,7 @@ def get_passage_data(passage:Passage, json=False)->dict:
147147
'name':passage.inscription.inscrit.name,
148148
'time_stamp':passage.time_stamp if not json else passage.time_stamp.timestamp(),
149149
'parcours':[]}
150+
ic(passage.inscription, passage, passage.id)
150151

151152
user_passages:list[Passage] = Passage.query.filter(Passage.inscription==passage.inscription, Passage.time_stamp<=passage.time_stamp).all()
152153
if len(user_passages)>0:
@@ -179,6 +180,7 @@ def get_passage_data(passage:Passage, json=False)->dict:
179180
hours, remainder = divmod(delta.seconds, 3600)
180181
minutes, seconds = divmod(remainder, 60)
181182
delta= f"{f'{days} days, 'if days>0 else ''}{hours:02}:{minutes:02}:{seconds:02}"
183+
ic(p, p.get_stand(), p.key.stands.all(), p.inscription.parcours)
182184
data['parcours'].append({'stand':p.get_stand() if not json else {'name':p.get_stand().name}, 'dist':None, 'delta':delta, 'success':success})
183185
if not current:
184186
data['parcours'][-1]['current']=True
@@ -243,14 +245,15 @@ def get_passages_data():
243245

244246
@socketio.on('set_passage', namespace='/key')
245247
def set_passage(data):
246-
inscription:Inscription = Inscription.query.filter(Inscription.dossard == data['dossard']).first()
247-
if not inscription:
248-
emit('passage_response', {"success": False, 'saved':False, 'error':'not valide dossard', 'request':data}, to=session['room'])
249-
return
250248
key = PassageKey.query.filter_by(key=session['room']).first()
251249
if not key:
252250
emit('passage_response', {"success": False, 'saved':False, 'error':'not valide key', 'request':data}, to=session['room'])
253251
return
252+
253+
inscription:Inscription = Inscription.query.filter(Inscription.dossard == data['dossard'], Inscription.edition==key.edition).first()
254+
if not inscription:
255+
emit('passage_response', {"success": False, 'saved':False, 'error':'not valide dossard', 'request':data}, to=session['room'])
256+
return
254257

255258
if inscription.end == 'finish':
256259
emit('passage_response', {"success": False, 'saved':False, 'error':'has already finish', 'request':data}, to=session['room'])

chrono_des_vignes/admin/editions/templates/editions.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ <h5 class="modal-title" id="new_edition_label">{{ _('admin.editions.newedition')
6969
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
7070
</div>
7171
<div class="modal-body">
72-
{{render_form(form, id='new_edition_form', submit=False, map_label='rendez vous pour cette edition')}}
72+
{{render_form(form, id='new_edition_form', submit=False, map_label=_('admin.editions.rdv'))}}
7373
</div>
7474
<div class="modal-footer">
7575
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">

chrono_des_vignes/models.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -313,7 +313,7 @@ class Inscription(db.Model):
313313
end=db.Column(db.String(10)) # abandon, disqual, absent, finish or None
314314

315315
def __repr__(self) -> str:
316-
return f'<Inscription id:{self.id} dossard:{self.dossard} >'
316+
return f'<Inscription id:{self.id} dossard:{self.dossard} user:{self.inscrit.username}>'
317317

318318
def has_started(self)->bool:
319319
return bool(self.passages.count())
@@ -416,7 +416,7 @@ class Passage(db.Model):
416416
inscription:Inscription
417417

418418
def __repr__(self) -> str:
419-
return f'<Passage time={self.time_stamp} key={self.key.name} inscription={self.inscription.inscrit.username} >'
419+
return f'<Passage time={self.time_stamp} key={self.key.name if self.key else None} inscription={self.inscription.inscrit.username} >'
420420

421421
def get_stand(self)->Stand:
422422
if self.key is None:

chrono_des_vignes/routes.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ def home():
4242
participations = None
4343
form = None
4444
date = datetime.now().replace(hour=0, minute=0, second=0, microsecond=0)
45-
next_events = Event.query.filter(Event.editions.any(and_(Edition.edition_date>=date,Edition.last_inscription>=date))).all()
45+
next_events = Event.query.filter(Event.editions.any(and_(Edition.edition_date>=date,Edition.last_inscription>=date))).filter(Event.id!=1).all()
4646
return render_template("0-home.html", user_data=user, inscriptions=inscriptions, events = next_events, participations=participations, form=form)
4747

4848
@app.route('/lang/<lang>')
18.2 KB
Loading
856 Bytes
Loading

0 commit comments

Comments
 (0)