#!/usr/bin/python2.6

# -*- coding: utf-8 -*-

# Script python
#
# Modification du champ shadowLastChange de l'annuaire LDAP
# pour contourner le blocage des utilisateurs anciens sur les clients Ubuntu
#
# Laurent.Brillard@ac-reunion.fr
#
# Pour executer : python shadowlastchange_profs.py <valeur_shadowlastchange_voulue>

import sys

fichier = open("ModifLDAP.log","a")

from scribe import enseignants
from scribe.enseignants import Enseignant
slc_voulue = sys.argv[1]

ldapuser = Enseignant()
allusers = ldapuser.get_members('professeurs')
ldapuser.ldap_admin.connect()
for login in allusers:
	ldapuser = Enseignant()
	ldapuser.ldap_admin.connect()
	slc_lue_ldap = ldapuser._get_attr(login, 'shadowLastChange')
	slc_lue = slc_lue_ldap[0]
	if int(slc_lue) < int(slc_voulue):
		ldapuser._set_attr(login, 'shadowLastChange', slc_voulue)
		ldapuser._touch(login)
		log = login + " shadowlastchange change de " + slc_lue + " a " + slc_voulue
		print log
		log = "\n" + log
		fichier.write(log)
	else:
		log = login + " shadowlastchange reste a " + slc_lue
		print log
		log = "\n" + log
		fichier.write(log)
# ldapuser._set_attr(login, 'shadowMax', '9999')
ldapuser.ldap_admin.close()

