Suppression de la dpendance de ldap_crans user_tests
Les deux modules s'importent maintenant correctement. darcs-hash:20080526230723-ffbb2-e78ba5d8cf5a48c92011ecd4207326482565cd5d.gz
This commit is contained in:
parent
4b7bd135bb
commit
5a4a96bf8e
2 changed files with 21 additions and 11 deletions
|
@ -29,9 +29,13 @@ import re
|
||||||
|
|
||||||
import affich_tools, config
|
import affich_tools, config
|
||||||
from lock import make_lock, remove_lock
|
from lock import make_lock, remove_lock
|
||||||
from ldap_crans import crans_ldap, blacklist_items, isadm, isdeconnecteur, ann_scol, droits_possibles, droits_critiques, smtpserv, script_utilisateur
|
from ldap_crans import crans_ldap, blacklist_items, ann_scol, droits_possibles, droits_critiques, smtpserv, script_utilisateur
|
||||||
from ldap_crans import Adherent, AssociationCrans, Club
|
from ldap_crans import Adherent, AssociationCrans, Club
|
||||||
from ldap_crans import Machine, MachineFixe, MachineWifi, MachineCrans, BorneWifi
|
from ldap_crans import Machine, MachineFixe, MachineWifi, MachineCrans, BorneWifi
|
||||||
|
import user_tests
|
||||||
|
|
||||||
|
isadm = user_tests.isadm()
|
||||||
|
isdeconnecteur = user_tests.isdeconnecteur()
|
||||||
|
|
||||||
def dialog(arg):
|
def dialog(arg):
|
||||||
return affich_tools.dialog(u'Gestion des adhérents et machines du Crans', arg)
|
return affich_tools.dialog(u'Gestion des adhérents et machines du Crans', arg)
|
||||||
|
|
|
@ -10,10 +10,10 @@ Licence : GPLv2
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from socket import gethostname
|
from socket import gethostname
|
||||||
import smtplib, sre, os, random, string, time, sys
|
import smtplib, sre, os, random, string, time, sys, pwd
|
||||||
import ldap, ldap.modlist, ldap_passwd
|
import ldap, ldap.modlist, ldap_passwd
|
||||||
|
|
||||||
import config, annuaires, iptools, chgpass, user_tests, cPickle, config_mail
|
import config, annuaires, iptools, chgpass, cPickle, config_mail
|
||||||
from chgpass import chgpass
|
from chgpass import chgpass
|
||||||
from affich_tools import coul, prompt, cprint
|
from affich_tools import coul, prompt, cprint
|
||||||
from email_tools import send_email
|
from email_tools import send_email
|
||||||
|
@ -29,6 +29,8 @@ random.seed() # On initialise le g
|
||||||
##################################################################################
|
##################################################################################
|
||||||
### paramètres de connexion à la base LDAP
|
### paramètres de connexion à la base LDAP
|
||||||
|
|
||||||
|
cur_user = os.getenv('SUDO_USER') or pwd.getpwuid(os.getuid())[0]
|
||||||
|
|
||||||
if __name__ == 'ldap_crans_test' or os.environ.get('crans_ldap', '') == 'test':
|
if __name__ == 'ldap_crans_test' or os.environ.get('crans_ldap', '') == 'test':
|
||||||
if hostname != "egon":
|
if hostname != "egon":
|
||||||
cprint("La base de test n'est accessible que depuis egon !", "rouge")
|
cprint("La base de test n'est accessible que depuis egon !", "rouge")
|
||||||
|
@ -41,7 +43,7 @@ if __name__ == 'ldap_crans_test' or os.environ.get('crans_ldap', '') == 'test':
|
||||||
ldap_auth_dn = 'cn=admin,dc=crans,dc=org'
|
ldap_auth_dn = 'cn=admin,dc=crans,dc=org'
|
||||||
ldap_password = '75bdb64f32'
|
ldap_password = '75bdb64f32'
|
||||||
|
|
||||||
elif user_tests.getuser() == 'freerad':
|
elif cur_user == 'freerad':
|
||||||
# Freeradius n'a pas accès au secret, donc accès que en local
|
# Freeradius n'a pas accès au secret, donc accès que en local
|
||||||
uri = ''
|
uri = ''
|
||||||
ro_uri = 'ldapi://%2fvar%2frun%2fslapd%2fldapi/'
|
ro_uri = 'ldapi://%2fvar%2frun%2fslapd%2fldapi/'
|
||||||
|
@ -92,10 +94,11 @@ droits_vieux = [u'Nounou', u'Bureau']
|
||||||
|
|
||||||
##################################################################################
|
##################################################################################
|
||||||
### Variables internes diverses
|
### Variables internes diverses
|
||||||
isadm = user_tests.isadm()
|
#isadm = user_tests.isadm()
|
||||||
isdeconnecteur = user_tests.isdeconnecteur()
|
#isdeconnecteur = user_tests.isdeconnecteur()
|
||||||
ann_scol = config.ann_scol
|
ann_scol = config.ann_scol
|
||||||
script_utilisateur = user_tests.getuser()
|
#script_utilisateur = user_tests.getuser()
|
||||||
|
script_utilisateur = cur_user
|
||||||
|
|
||||||
##################################################################################
|
##################################################################################
|
||||||
### Fonctions utiles
|
### Fonctions utiles
|
||||||
|
@ -2210,7 +2213,8 @@ class Adherent(BaseProprietaire):
|
||||||
if droits == None:
|
if droits == None:
|
||||||
return map(decode, self._data.get('droits', []))
|
return map(decode, self._data.get('droits', []))
|
||||||
|
|
||||||
if not isadm:
|
from user_tests import isadm
|
||||||
|
if not isadm():
|
||||||
raise EnvironmentError(u'Il faut être administrateur pour effectuer cette opération.')
|
raise EnvironmentError(u'Il faut être administrateur pour effectuer cette opération.')
|
||||||
|
|
||||||
if type(droits) != list:
|
if type(droits) != list:
|
||||||
|
@ -2853,7 +2857,8 @@ class Machine(BaseClasseCrans):
|
||||||
Enregistre la machine courante dans la base LDAP
|
Enregistre la machine courante dans la base LDAP
|
||||||
Retourne une chaîne indiquant les opération effectuées.
|
Retourne une chaîne indiquant les opération effectuées.
|
||||||
"""
|
"""
|
||||||
if self.proprietaire().__class__ == AssociationCrans and not (isadm or user_tests.getuser() == 'www-data'):
|
from user_tests import isadm
|
||||||
|
if self.proprietaire().__class__ == AssociationCrans and not (isadm() or user_tests.getuser() == 'www-data'):
|
||||||
raise EnvironmentError(u'Il faut être administrateur pour effectuer cette opération.')
|
raise EnvironmentError(u'Il faut être administrateur pour effectuer cette opération.')
|
||||||
|
|
||||||
if not self._init_data:
|
if not self._init_data:
|
||||||
|
@ -2938,7 +2943,8 @@ class Machine(BaseClasseCrans):
|
||||||
|
|
||||||
def delete(self, comment=''):
|
def delete(self, comment=''):
|
||||||
""" Destruction de la machines """
|
""" Destruction de la machines """
|
||||||
if self.proprietaire().__class__ == AssociationCrans and not isadm:
|
from user_tests import isadm
|
||||||
|
if self.proprietaire().__class__ == AssociationCrans and not isadm():
|
||||||
raise EnvironmentError(u'Il faut être administrateur pour effectuer cette opération.')
|
raise EnvironmentError(u'Il faut être administrateur pour effectuer cette opération.')
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue