Refuse d'ajouter des connexions qui finissent après l'adhésion

This commit is contained in:
Pierre-Elliott Bécue 2015-09-01 19:24:43 +02:00
parent f77a73218d
commit 6913629672
3 changed files with 18 additions and 15 deletions

View file

@ -10,7 +10,7 @@
# Délai minimal avant de pouvoir réadhérer.
# Ne tient pas compte de la période transitoire, qui est un confort
# pour l'administration.
delai_readh_jour = 28
delai_readh_jour = 32
delai_readh = delai_readh_jour * 86400
duree_adh_an = 1

View file

@ -1291,7 +1291,6 @@ def confirm(clas):
return 1
in_facture = None
def set_blackliste(clas):
u""" Édite ou ajoute un item de la blackliste """
bl = clas.blacklist()
@ -1523,6 +1522,9 @@ def set_adhesion(proprio):
facture.modePaiement(_mode.lower())
break
in_facture = facture
if not in_facture._data.get('finConnexion', []) and not in_facture._data.get('finAdhesion', []):
in_facture = None
proprio.restore()
def set_connexion(proprio):
"""Maj de la période d'accès de l'adhérent"""
@ -1554,7 +1556,7 @@ def set_connexion(proprio):
while True:
args = u'--title "Connexion de %s" ' % proprio.Nom()
if proprio.connexion() > time():
args += u'--menu "Connexion jusqu\'au %s, choisir une durée de prolongation. : " 0 0 0 ' % (strftime("%d/%m/%Y %H:%M:%S"),)
args += u'--menu "Connexion jusqu\'au %s, choisir une durée de prolongation. : " 0 0 0 ' % (strftime("%d/%m/%Y %H:%M:%S", localtime(proprio.connexion())),)
else:
args += u'--menu "Connexion actuellement inactive, choisir une durée. : " 0 0 0 '
args += u'"An" "Prolonger d\'un an." '
@ -1615,13 +1617,12 @@ def set_connexion(proprio):
newEnd = fromGeneralizedTimeFormat(facture._data.get('finConnexion', ["19700101000000Z"])[0])
if newEnd > adhEnd:
arg = u'--title "Avertissement" '
arg += u'--yesno "La fin de la connexion de l\'adhérent (%s) tombera après la fin de son adhésion (%s).\nS\'il veut en profiter, il lui faudra éventuellement réadhérer. Continuer ?" 0 0' %(strftime('%d/%m/%Y %H:%M:%S', localtime(newEnd)), strftime('%d/%m/%Y %H:%M:%S', localtime(adhEnd)), )
no, res = dialog(arg)
if no:
arg += u'--msgbox "La nouvelle fin de connexion (%s) arriverait après la fin de l\'adhésion actuelle (%s).\nIl faut que l\'adhérent réadhère. (possible %s jours avant la fin de l\'adhésion actuelle)" 0 0 ' % (strftime("%d/%m/%Y %H:%M:%S", localtime(newEnd)), strftime("%d/%m/%Y %H:%M:%S", localtime(adhEnd)), cotisation.delai_readh_jour)
dialog(arg)
facture._set('finConnexion', [])
facture._set('debutConnexion', [])
facture.supprime(pop=True)
continue
break
if not facture.modePaiement():
arg = u'--title "Mode de paiement pour la connexion de %s" ' % (proprio.Nom(),)
@ -1652,6 +1653,10 @@ def set_connexion(proprio):
break
in_facture = facture
if not in_facture._data.get('finConnexion', []) and not in_facture._data.get('finAdhesion', []):
in_facture = None
proprio.restore()
###############################################################
## Fonctions de remplissage ou modification des paramètres club

View file

@ -1544,7 +1544,6 @@ class BaseProprietaire(BaseClasseCrans):
finAdh.append(facture._data['finAdhesion'][0])
self._set('debutAdhesion', debutAdh)
self._set('finAdhesion', finAdh)
self._save()
def droits(self, droits=None, light=False):
""" Renvoie les droits courants. Non modifiable (sauf si surchargée dans classe enfant)"""
@ -2394,7 +2393,6 @@ class Adherent(BaseProprietaire):
finConn.append(facture._data['finConnexion'][0])
self._set('debutConnexion', debutConn)
self._set('finConnexion', finConn)
self._save()
def adherentPayant(self, valeur = None):
"""