Adherent.py sous lc_ldap

This commit is contained in:
Gabriel Detraz 2015-10-21 23:35:27 +02:00
parent 079831f5f3
commit b14847c625

View file

@ -1,20 +1,19 @@
#! /usr/bin/env python #!/bin/bash /usr/scripts/python.sh
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright (C) Frédéric Pauget # Copyright (C) Frédéric Pauget
# Licence : GPLv2 # Licence : GPLv2
import smtplib, sys, commands, shutil, os, traceback,grp import smtplib, socket, sys, commands, shutil, os, traceback,grp
from time import strftime from time import strftime
sys.path.append('/usr/scripts/gestion')
if '/usr/scripts' not in sys.path:
sys.path.append('/usr/scripts')
from gestion.affich_tools import cprint, anim, OK, WARNING, ERREUR from gestion.affich_tools import cprint, anim, OK, WARNING, ERREUR
import gestion.config as config import gestion.config as config
import config.mails as config_mails import config.mails as config_mails
import gestion.mail as mail_module import gestion.mail as mail_module
from gestion.ldap_crans import hostname, crans_ldap
from lc_ldap import shortcuts
try: try:
sys.path.append('/usr/lib/mailman') sys.path.append('/usr/lib/mailman')
@ -25,7 +24,12 @@ except:
# Machine sans mailman, les ML ne seront pas reconfigurées # Machine sans mailman, les ML ne seront pas reconfigurées
pass pass
CONN = crans_ldap() # Connexion lc_ldap ro
ldap = shortcuts.lc_ldap_readonly()
# Hostname
hostname = socket.gethostname()
class del_user: class del_user:
""" Suppression des fichiers d'un compte utilisateur """ """ Suppression des fichiers d'un compte utilisateur """
@ -117,16 +121,17 @@ class home:
try: try:
login, oldLogin, oldHome = args.split(",") login, oldLogin, oldHome = args.split(",")
if login: if login:
res = CONN.search("login=%s" % (login,)) res = ldap.search(u"uid=%s" % (login,))[0]
if res['adherent']: if res.ldap_name == u'adherent':
adh = res['adherent'][0] adh = res
gid = config.gid gid = config.gid
elif res['club']: elif res['club']:
adh = res['club'][0] adh = res
gid = config.club_gid gid = config.club_gid
home = adh.home() home = unicode(adh['homeDirectory'][0])
uid = adh.uidNumber() uid = int(adh['uidNumber'][0])
mail_redirect = adh.email_exterieur() if adh['mailExt'] != []:
mail_redirect = unicode(adh['mailExt'][0])
if oldHome and hostname == "zbee": if oldHome and hostname == "zbee":
home_service = del_user(["%s,%s" % (oldLogin, oldHome)]) home_service = del_user(["%s,%s" % (oldLogin, oldHome)])
home_service.delete_zbee() home_service.delete_zbee()