Commit 610c1f29 authored by Praibait's avatar Praibait

Impossible d'ouvrir une activité qui n'a pas de liste d'invités (on peut la fermer par contre)

parent 0db2a74b
......@@ -2954,7 +2954,7 @@ def get_activite(self, data):
# OU (elle n'a pas commencée ET est validée)
# OU (c'est la mienne ET j'ai accès à mon compte)
can_see = (isadmin
or ((activite["debut"].timetuple() > time.localtime()) and (activite["validepar"] is not None))
or ((activite["fin"].timetuple() > time.localtime()) and (activite["validepar"] is not None))
or self._myself(activite["responsable"]) )
if can_see:
self._send(dict(activite))
......@@ -3226,7 +3226,7 @@ def devalider_activite(self, data):
def openclose_activite(self, data):
"""
Fonction mettant une activité comme ouverte ou fermée
Fonction switchant une activité comme ouverte ou fermée seulement si elle a une liste d'invité.
''data = [<ouvrir>, <idact>]''
''ouvrir : booléen indiquant si il faut ouvrir (True) ou fermer(False) l'activité''
''idact : id de l'activité à ouvrir/fermer''
......@@ -3238,18 +3238,24 @@ def openclose_activite(self, data):
action = u"ouverte" if ouvrir else u"fermée"
if self._has_acl("activite_admin"):
con, cur = BaseFonctions.getcursor()
cur.execute("UPDATE activites SET ouvert = {} WHERE id= {};".format(str(ouvrir).lower(), idact))
self._log("openclose_activite", cur, data, [idact])
cur.execute("COMMIT;")
self._debug(1, u"openclose_activite : activité {} {}".format(idact, action))
self._send(u"Activité {}".format(action))
cur.execute("SELECT liste FROM activites WHERE id={};".format(idact))
if cur.fetchone()[0] or not ouvrir:
cur.execute("UPDATE activites SET ouvert = {} WHERE id= {};".format(str(ouvrir).lower(), idact))
self._log("openclose_activite", cur, data, [idact])
cur.execute("COMMIT;")
self._debug(1, u"openclose_activite : activité {} {}".format(idact, action))
self._send(u"Activité {}".format(action))
else:
self._send(None, 403, u"On ne peut pas ouvrir une activité sans liste d'invités.")
self._debug(3, u"Impossible d'ouvrir {} : pas de liste d'invités".format(idact))
else:
_pasledroit(self, "activites_admin")
def _invitable(self, idact, respo, isadmin, nom=None, prenom=None):
"""Ne peut pas être appelée par le client.
Peut être utilisé sans préciser ``nom`` ni ``respo``, et alors permet de savoir
si l'utilisateur courant a le droit d'inviter *quelqu'un* à cette activité.
(NB : le test des [3] invités par inviteur ne sera alors pas fait.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment