Encore un patch Fred

darcs-hash:20040903194059-d1718-4419a0e74723574b538f2d2756954c74a830e807.gz
This commit is contained in:
bernat 2004-09-03 21:40:59 +02:00
parent 1ea62938a9
commit bb318fc560
3 changed files with 30 additions and 17 deletions

View file

@ -72,7 +72,7 @@ subnet %(network)s netmask %(netmask)s {
# Si =0 ralera seulement si réseau vide # Si =0 ralera seulement si réseau vide
verbose = 1 verbose = 1
restart_cmd = '/etc/init.d/dhcp restart' restart_cmd = '/etc/init.d/dhcp stop ; sleep 1 ; /etc/init.d/dhcp start'
######################################FIN PARTIE DE CONFIGURATION ######################################FIN PARTIE DE CONFIGURATION

View file

@ -1,11 +1,11 @@
#! /usr/bin/env python #! /usr/bin/env python
# -*- coding: iso-8859-15 -*- # -*- coding: iso-8859-15 -*-
import sys, signal, os, commands, getopt import sys, signal, os, commands, getopt, smtplib
sys.path.append('/usr/scripts/gestion') sys.path.append('/usr/scripts/gestion')
from ldap_crans import crans_ldap, crans, ann_scol from ldap_crans import crans_ldap, crans, ann_scol, smtpserv
from lock import * from lock import *
from affich_tools import anim, cprint, OK, ERREUR, WARNING from affich_tools import anim, cprint, OK, ERREUR, WARNING
from time import localtime from time import localtime
@ -24,7 +24,7 @@ make_lock('auto_generate')
##### Options fournies ? ##### Options fournies ?
try : try :
if len(sys.argv) > 1 : if len(sys.argv) > 1 :
options, arg = getopt.getopt(sys.argv[1:], '', ['quiet', 'home=', 'ML-ENS=', 'droits', 'switch=' , 'dhcp', 'dns', 'firewall' ]) options, arg = getopt.getopt(sys.argv[1:], '', ['quiet', 'home=', 'mail_bienvenue=', 'ML-ENS=', 'droits', 'switch=' , 'dhcp', 'dns', 'firewall' ])
else : else :
options, arg = ( [],'') options, arg = ( [],'')
except getopt.error, msg : except getopt.error, msg :
@ -73,6 +73,28 @@ if 'home' in to_do.keys() :
if debug : if debug :
import traceback import traceback
traceback.print_exc() traceback.print_exc()
if 'mail_bienvenue' in to_do.keys() :
if auto : db.services_to_restart('-mail_bienvenue')
cprint('Envoi mail de bienvenue','gras')
pas_fait = []
for mail in to_do['mail_bienvenue'] :
anim('\t' + mail)
try :
From = "respbats@crans.org"
To = mail
if To.find('@') == -1 : To += '@crans.org'
conn=smtplib.SMTP(smtpserv)
conn.sendmail(From, To , config.txt_mail_bienvenue % { 'From' : From, 'To' : To })
conn.quit()
print OK
except Exception, c:
print ERREUR
pas_fait.append(mail)
if debug :
import traceback
traceback.print_exc()
if auto and pas_fait :
db.services_to_restart('mail_bienvenue',pas_fait)
if 'ML-ENS' in to_do.keys() : if 'ML-ENS' in to_do.keys() :
cprint('Inscription ML-ENS','gras') cprint('Inscription ML-ENS','gras')

View file

@ -881,7 +881,7 @@ class base_proprietaire(base_classes_crans) :
def save(self) : def save(self) :
""" """
Enregistre l'adhérent ou le club courant dans la base LDAP Enregistre l'adhérent ou le club courant dans la base LDAP
Envoie le mail de bienvenue Ajoute le mail de bienvenue à la liste des services à redémarrer
Retourne une chaîne indiquant les opération effectuées. Retourne une chaîne indiquant les opération effectuées.
""" """
# Note : un peu trop de fonctions pour un club mais ce n'est pas génant # Note : un peu trop de fonctions pour un club mais ce n'est pas génant
@ -908,17 +908,8 @@ class base_proprietaire(base_classes_crans) :
ret += coul(u"%s inscrit avec succès." % self.Nom(), 'vert') ret += coul(u"%s inscrit avec succès." % self.Nom(), 'vert')
if self.idn !='cid' : if self.idn !='cid' :
# Envoi du mail de bienvenue # Mail de bienvenue
try : self.services_to_restart('mail_bienvenue',[self.mail().encode('iso-8859-15')])
From = "respbats@crans.org"
To = self.mail().encode('iso-8859-15')
if To.find('@') == -1 : To += '@crans.org'
conn=smtplib.SMTP(smtpserv)
conn.sendmail(From, To , config.txt_mail_bienvenue % { 'From' : From, 'To' : To })
conn.quit()
ret += coul(u"\nMail de bienvenue envoyé.",'vert')
except Exception, c:
ret += coul(u"\nErreur lors de l'envoi du mail de bienvenue (%s)" % c.__doc__,'jaune')
else : else :
ret += coul(u"Modification %s effectuée avec succès." % self.Nom(), 'vert') ret += coul(u"Modification %s effectuée avec succès." % self.Nom(), 'vert')