diff --git a/gestion/whos.py b/gestion/whos.py index 2a8f74cb..58ee0135 100644 --- a/gestion/whos.py +++ b/gestion/whos.py @@ -488,10 +488,13 @@ def adher_details(adher) : f += coul(u'Chambre invalide\n','violet') else : # Chambre + prise (d'après annuaire) - etat, vlans = prise_etat(adher.chbre()) + etat, vlans, cablage = prise_etat(adher.chbre()) f += coul(u'Chambre : ','gras') + u"%s " % chbre f += u'(%s)' % etat f += u'\n' + f += coul(u'Brassage : ','gras') + f += cablage + f += u'\n' # VLAN if vlans : f += coul(u'VLAN : ','gras') + u'%s' % vlans @@ -947,14 +950,27 @@ def borne_clients_canal(borne) : return {"canal": canal, "mac-rssi": macs} def prise_etat(chbre) : - """ Retoune un doublet contenant l'état de la prise associée à la chbre et les VLANs actives""" + """ + Retoune un triplet contenant l'état de la prise associée à la [chbre], + les VLANs activés ainsi que l'état du brassage. + """ f = u'' vlans = u'' + cablage = u'' try: # On met aussi l'état from hptools import sw_chbre, ConversationError + import annuaires_pg prise = sw_chbre(chbre) vlans += ', '.join(prise.vlans()) + if annuaires_pg.is_crans(chbre[0],chbre[1:]) : + cablage += coul(u'Cr@ns','bleu') + else : + cablage += coul(u'CROUS','jaune') + if annuaires_pg.is_connected(chbre[0],chbre[1:]) : + cablage += u'.' + else : + cablage += u', ' + coul(u'cablage non effectué !','rouge') f += u'prise %s' % prise.prise_brute rows, cols = get_screen_size() if prise.is_up() : @@ -1006,7 +1022,7 @@ def prise_etat(chbre) : f = r except : f = u'infos prise non dispo : erreur interne' - return f, vlans + return f, vlans, cablage ############################################################################## ## Partie dévolue au système de recherche