示例#1
0
 def ensureOwner(self, ownerDialog):
     """
     Demande un nom de propriétaire si celui-ci n'est pas encore défini
     pour cette clé USB. Enregistre au passage le nom du propriétaire
     dans les instances du disque et de sa partiton vfat
     @param ownerDialog si vrai : fait dialogue interactif
     @return un nom de propriétaire
     """
     if self.parent and not self.mp:  # partiton non montée
         return
     ud = self.getFat()
     assert ud.parent  # ud désigne une partition vfat
     if not db.knowsId(ud.stickid, ud.uuid, ud.tattoo()):
         text = self.randomOwner(6)
         if ownerDialog:
             prompt = QApplication.translate(
                 "Dialog", "La cle {id}<br>n'est pas identifiee, donnez le nom du proprietaire", None
             ).format(id=ud.stickid)
             title = QApplication.translate("Dialog", "Entrer un nom", None)
             text, ok = QInputDialog.getText(None, title, prompt)
         db.writeStudent(ud.stickid, ud.uuid, ud.tattoo(), text)
     o = db.readStudent(ud.stickid, ud.uuid, ud.tattoo())
     self.owner = o
     ud.owner = o
     return o
示例#2
0
 def ownerByDb(self):
     """
     renvoie un nom de propriétaire dans tous les cas.
     """
     s = db.readStudent(self.stickid, self.uuid, self.tattoo())
     if s != None:
         return s
     else:
         return QApplication.translate("Dialog", "inconnu", None)
示例#3
0
 def diskFromOwner(self,student):
     """
     trouve le disque qui correspond à un propriétaire, ou alors
     renvoie le premier disque inconnu.
     @param student le propriétaire du disque
     @return le disque correspondant à l'étudiant
     """
     defaultDisk=None
     for d in ownedUsbDisk.Available(access="firstFat"):
         s=db.readStudent(d.stickid, d.uuid, d.tattoo())
         if s==student :
             return d
         elif s==None and defaultDisk==None : 
             # premier disque inconnu
             defaultDisk=d
     return defaultDisk
示例#4
0
 def namingADrive(self):
     """
     Gère un dialogue pour renommer un baladeur désigné par
     self.recentConnect
     """
     if self.availableNames:
         if self.recentConnect not in qApp.available.targets:
             return
         disk=qApp.available.targets[self.recentConnect]
         hint=db.readStudent(disk.serial, disk.uuid, ownedUsbDisk.tattooInDir(disk.mp))
         if hint != None:
             oldName=hint
         else:
             oldName=""
         d=nameAdrive.nameAdriveDialog(self, oldName=oldName,
                                       nameList=self.namesDialog.itemStrings(),
                                       driveIdent=(stickId, uuid, tattoo))
         d.show()
         result=d.exec_()
     return