Affichage des MACs mieux gr.

darcs-hash:20041003163335-41617-383ff1dd8312e8442bd912e81061b00d7eb4091c.gz
This commit is contained in:
pauget 2004-10-03 18:33:35 +02:00
parent 11590c5f3f
commit 654a878598

View file

@ -567,28 +567,38 @@ def prise_etat(chbre) :
# On met aussi l'état
conn = sw_chbre(chbre)
result = conn.status()
macs = conn.show_prise_mac()
rows, cols = get_screen_size()
if result['etat']=='up' :
f += ', ' + coul('machine branchée','vert')
reste_cols = cols - 45
if result['vitesse_max'] == '10Mbps' :
f+= ', ' + coul('prise en 10Mbps','jaune')
reste_cols -= 17
f+=', '
macs = conn.show_prise_mac()
if len(macs) == 0:
if reste_cols < 20 :
# Faut aller à la ligne
f += '\n '
f += coul('aucune MAC détectée', 'jaune')
else:
# Combien d'adresses MAC peut-on mettre par ligne ?
# Une adresse MAC =~ 20 caracteres
rows, cols = get_screen_size()
cols -= 17 # On met 15espaces devant chaque ligne
parligne = int(cols/20)
count = 0
while len(macs) > 0:
if count % parligne == 0:
f += '\n MACs: '
else:
f += ', '
f += "%s" % macs.pop()
count += 1
if len(macs) == 1 and reste_cols > 25 :
# Une seule mac et on a assez de place
f += "MAC: %s" % macs[0]
else :
# On va à la ligne
# Combien d'adresses MAC peut-on mettre par ligne ?
# Une adresse MAC =~ 20 caracteres
cols -= 17 # On met 15espaces devant chaque ligne
parligne = int(cols/20)
count = 0
while len(macs) > 0:
if count % parligne == 0:
f += '\n MACs: '
else:
f += ', '
f += "%s" % macs.pop()
count += 1
elif result['activée'] == 'down' :
f+= ', ' + coul('prise désactivée','rouge')
else :