[affich_tools, gest_crans] dialog tait moche
Maintenant les nounous peuvent utiliser des thmes plus jolis... darcs-hash:20081012181354-bd074-f6cdb3a92f4ca07a8a748464836bdce6c8bd4621.gz
This commit is contained in:
parent
1483129492
commit
89e30ae3d3
2 changed files with 24 additions and 16 deletions
|
@ -31,7 +31,7 @@ else:
|
|||
|
||||
stdout_atty = sys.stdout.isatty()
|
||||
|
||||
def dialog(backtitle,arg) :
|
||||
def dialog(backtitle,arg,dialogrc='') :
|
||||
""" Affiche la boite de dialogue défine avec les arguments fournis
|
||||
(cf man dialog)
|
||||
si tout se déroule bien retourne :
|
||||
|
@ -42,14 +42,13 @@ def dialog(backtitle,arg) :
|
|||
si erreur dans les arguments raise RuntimeError
|
||||
"""
|
||||
f = tempfile.NamedTemporaryFile()
|
||||
cmd = u'LANG=fr_FR@euro /usr/bin/dialog --backtitle "%s" --cancel-label "Retour" %s 2>%s' % (backtitle,arg,f.name)
|
||||
cmd = u'%s LANG=fr_FR@euro /usr/bin/dialog --backtitle "%s" --cancel-label "Retour" %s 2>%s' % (dialogrc, backtitle,arg,f.name)
|
||||
res = os.system(cmd.encode('iso-8859-15','ignore'))
|
||||
|
||||
if res == 256 :
|
||||
# Annuler
|
||||
f.close()
|
||||
return [ 1, [] ]
|
||||
|
||||
# Lecture du fichier de résultat et effacement
|
||||
try:
|
||||
result=f.readlines()
|
||||
|
@ -57,7 +56,6 @@ def dialog(backtitle,arg) :
|
|||
except :
|
||||
result = [ "n'importe quoi", '']
|
||||
res = 65280
|
||||
|
||||
# Traitement
|
||||
if res==65280 and result:
|
||||
# Erreur dans les arguments
|
||||
|
@ -66,12 +64,11 @@ def dialog(backtitle,arg) :
|
|||
# Appui sur ESC
|
||||
arg1 = u'--title "Annulation" --yesno "Quitter ?\nLes dernières modifications seront perdues." 6 48'
|
||||
print backtitle
|
||||
cmd = u'/usr/bin/dialog --backtitle "%s" %s' % (backtitle,arg1)
|
||||
cmd = u'%s /usr/bin/dialog --backtitle "%s" %s' % (dialogrc, backtitle,arg1)
|
||||
res = os.system(cmd.encode('iso-8859-15','ignore') )
|
||||
if res==0 : sys.exit(0)
|
||||
else : return dialog(backtitle,arg)
|
||||
elif not result : result=['']
|
||||
|
||||
return [ 0, result ]
|
||||
|
||||
def coul(txt, col=None):
|
||||
|
|
|
@ -38,11 +38,6 @@ import user_tests
|
|||
isadm = user_tests.isadm()
|
||||
isdeconnecteur = user_tests.isdeconnecteur()
|
||||
|
||||
dlg = dialog.Dialog()
|
||||
|
||||
def dialog(arg):
|
||||
return affich_tools.dialog(u'Gestion des adhérents et machines du Crans', arg)
|
||||
|
||||
db = crans_ldap()
|
||||
droits = db.search("uid=%s" % script_utilisateur)['adherent'][0].droits()
|
||||
isimprimeur = u"Imprimeur" in droits
|
||||
|
@ -50,6 +45,22 @@ iscontroleur = u'Tresorier' in droits
|
|||
isbureau = u'Bureau' in droits
|
||||
encoding = sys.stdin.encoding or 'ISO-8859-15'
|
||||
|
||||
if u'Nounou' in droits:
|
||||
if os.path.exists(os.path.expanduser('~/.dialogrc')):
|
||||
dialogrc='~/.dilalogrc'
|
||||
else:
|
||||
dialogrc='/etc/dialog.rc'
|
||||
dlg = dialog.Dialog(DIALOGRC=dialogrc)
|
||||
dialog_theme='DIALOGRC='+dialogrc
|
||||
else:
|
||||
dlg = dialog.Dialog()
|
||||
dialog_theme=''
|
||||
|
||||
|
||||
def dialog(arg):
|
||||
return affich_tools.dialog(u'Gestion des adhérents et machines du Crans', arg, dialog_theme)
|
||||
|
||||
|
||||
#########################################################################
|
||||
## Fonctions de remplissage ou modification des paramètres d'un adhérent
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue