Commit c6091a8a authored by Nicolas Joyard's avatar Nicolas Joyard

Corrections script batch cada

parent 1422a514
......@@ -93,7 +93,7 @@ def avance_procedure(etape):
correspondantes.
"""
app.config.update(SQLALCHEMY_ECHO=False)
avance_procedure_(app, etape)
avance_procedure_(app, int(etape))
@manager.command
......
......@@ -185,7 +185,7 @@ ETAPES = [
avons transmis la demande d'accès aux relevés de compte à la
Commission d'Accès aux Documents Administratifs.
""",
'couleur': '#bbbb66',
'couleur': '#eebb44',
'icone': 'balance-scale',
'hidden': False,
'alerte': True
......
......@@ -31,12 +31,15 @@ def mailing_lists():
}
def envoyer_alerte(app, etape, parl, commentaire):
def envoyer_alerte(app, etape, parl, commentaire=None):
mail = Mail(app)
sender = ('Regards Citoyens', app.config['ADMIN_EMAIL'])
subject = 'Transparence IRFM - Alerte pour %s' % parl.nom_complet
if not commentaire:
commentaire = etape['description']
messages = []
for user in parl.abonnes:
anon_id = user.nick[8:] if user.nick.startswith('anonyme!') else None
......
# -*- coding: utf-8 -*-
from datetime import datetime, time
from time import sleep
from ..models import Action, Parlementaire, User, db
from ..models.constants import (DEBUT_ACTION, ETAPE_COURRIEL, ETAPES_BY_ORDRE,
ETAPE_DEMANDE_CADA, ETAPE_REPONSE_POSITIVE,
ETAPE_NA)
from ..models.constants import (DEBUT_ACTION, ETAPE_A_CONFIRMER,
ETAPE_COURRIEL, ETAPES_BY_ORDRE,
ETAPE_DEMANDE_CADA, ETAPE_DOC_PUBLIE,
ETAPE_REPONSE_POSITIVE, ETAPE_NA)
from .mails import envoyer_alerte
......@@ -64,23 +66,44 @@ def avance_procedure(app, ordre_etape):
for parl in parls:
print(parl.nom_complet)
# Création de l'action
act = Action(
parlementaire=parl,
etape=ordre_etape,
date=datetime.now(),
user=admin,
)
db.session.add(act)
# Cas particulier demande CADA
if ordre_etape == ETAPE_DEMANDE_CADA:
if parl.etape == ETAPE_A_CONFIRMER:
# Suppression de l'étape prise en charge si c'est l'étape
# actuelle du député
pec = Action.query \
.filter(Action.parlementaire == parl) \
.filter(Action.etape == ETAPE_A_CONFIRMER) \
.first()
if pec:
db.session.delete(pec)
# Transformation de l'action 'Document' en action "Demande CADA"
act = Action.query \
.filter(Action.parlementaire == parl) \
.filter(Action.etape == ETAPE_DOC_PUBLIE) \
.filter(Action.attachment.like('document-cada-%')) \
.first()
if act:
act.etape = ETAPE_DEMANDE_CADA
# Création de l'action si inexistante
if not act:
act = Action(
parlementaire=parl,
etape=ordre_etape,
date=datetime.now(),
user=admin,
)
db.session.add(act)
parl.etape = ordre_etape
# Commit immédiat pour pouvoir arrêter en plein milieu et reprendre
db.session.commit()
if etape['alerte']:
cnt = envoyer_alerte(app, etape, parl, '')
cnt = envoyer_alerte(app, etape, parl)
if cnt:
print('%s e-mails d\'alerte envoyés' % cnt)
# Throttling mails
time.sleep(1)
sleep(1)
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