Merge dev (add LICENSE)
This commit is contained in:
28
IFPass.py
28
IFPass.py
@ -22,7 +22,7 @@ from colorama import init
|
||||
from termcolor import colored
|
||||
|
||||
|
||||
version = '2.2'
|
||||
version = '2.2222222222222222222222'
|
||||
|
||||
config = 'IFPass.conf'
|
||||
|
||||
@ -34,7 +34,7 @@ def initialisation():
|
||||
if not os.path.exists(config): # Check if config file exists
|
||||
print('Fichier de configuration introuvable.')
|
||||
IFPassdir = input(r'Quel est le répertoire IFPass ? (Ex : \\192.168.1.1\IFPass) : ')
|
||||
printername = input("Quel est le nom de l'imprimante à cartes ? : " )
|
||||
printername = input("Quel est le nom de l'imprimante à cartes ? : ")
|
||||
AcrobatReader = input(r"Quel est le chemain vers Acrobat Reader ? ( Ex : C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe) : ")
|
||||
conf['DEFAULT'] = {'IFPassdir': IFPassdir, 'printername': printername, 'AcrobatReader': AcrobatReader}
|
||||
with open(config, 'w') as configfile:
|
||||
@ -45,7 +45,6 @@ def initialisation():
|
||||
printername = conf['DEFAULT']['printername']
|
||||
AcrobatReader = conf['DEFAULT']['AcrobatReader']
|
||||
|
||||
|
||||
clientsfile = os.path.join(IFPassdir, 'Clients_IFPass.csv')
|
||||
clientsbkpfile = os.path.join(IFPassdir, 'Clients_IFPass_backup.csv')
|
||||
imgdir = os.path.join(IFPassdir, 'Cartes')
|
||||
@ -108,7 +107,7 @@ def getclientID():
|
||||
|
||||
def barcode_gen(clientID):
|
||||
print("Génération du code barre... ", end='')
|
||||
barcode = code128.image(clientID, thickness=4) # .save(imgdir + clientID + '.png')
|
||||
barcode = code128.image(clientID, thickness=4) # .save(imgdir + clientID + '.png')
|
||||
print(colored('[OK]', 'green'))
|
||||
return barcode
|
||||
|
||||
@ -161,7 +160,6 @@ def getpic():
|
||||
picture = Image.fromarray(cropped)
|
||||
return picture
|
||||
|
||||
|
||||
elif k & 0xFF == ord('q'): # Q or q to quit
|
||||
cv2.destroyAllWindows()
|
||||
sys.exit()
|
||||
@ -186,21 +184,21 @@ def fillcard(barcode):
|
||||
|
||||
# Name embedding :
|
||||
font = ImageFont.truetype(fonttemplate, 45)
|
||||
draw.text((401, 310), fullname, fill=(0,0,0), font=font)
|
||||
draw.text((401, 310), fullname, fill=(0, 0, 0), font=font)
|
||||
|
||||
# Date embedding :
|
||||
font = ImageFont.truetype(fonttemplate, 30)
|
||||
draw.text((401, 390), dateexp, fill=(0,0,0), font=font)
|
||||
draw.text((401, 390), dateexp, fill=(0, 0, 0), font=font)
|
||||
|
||||
# ID embedding :
|
||||
font = ImageFont.truetype('arial.ttf', 30)
|
||||
draw.text((693, 560), clientID, fill=(0,0,0), font=font)
|
||||
draw.text((693, 560), clientID, fill=(0, 0, 0), font=font)
|
||||
|
||||
# Barcode + picture embedding :
|
||||
im.paste(barcode,(556, 460))
|
||||
im.paste(barcode, (556, 460))
|
||||
|
||||
if version != 'devnocam':
|
||||
im.paste(picture,(47, 49))
|
||||
im.paste(picture, (47, 49))
|
||||
|
||||
# Create PDF :
|
||||
im = im.convert("RGB")
|
||||
@ -231,7 +229,7 @@ def mergepdf():
|
||||
|
||||
def printcard(cartefilename):
|
||||
# Working : subprocess.Popen('"C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe" /h /n /t ' + cartefilename + ' '+ printername, shell=False)
|
||||
subprocess.Popen('"' + AcrobatReader + '"' + ' /h /n /t ' + cartefilename + ' '+ printername, shell=False)
|
||||
subprocess.Popen('"' + AcrobatReader + '"' + ' /h /n /t ' + cartefilename + ' ' + printername, shell=False)
|
||||
|
||||
|
||||
def membersearch():
|
||||
@ -280,7 +278,7 @@ def membersearch():
|
||||
if diff > 0:
|
||||
print(colored(f"L'abonnement est encore valable {diff} jours.", 'green', attrs=['bold']))
|
||||
elif diff < 0:
|
||||
print(colored("L'abonnement est expiré depuis {abs(diff)} jours.", 'red', attrs=['bold'])) # abs() to remove minus sign
|
||||
print(colored("L'abonnement est expiré depuis {abs(diff)} jours.", 'red', attrs=['bold'])) # abs() to remove minus sign
|
||||
elif diff == 0:
|
||||
print(colored("Il s'agit du dernier jour de l'abonnement, il expirera demain.", 'yellow', attrs=['bold']))
|
||||
|
||||
@ -298,8 +296,8 @@ while "The program is running":
|
||||
print('Version : ', version)
|
||||
if version in ('dev', 'devnocam'):
|
||||
print(colored("\nATTENTION : Il s'agit d'une version en cours de développement, potentiellement instable !", 'red'))
|
||||
print('\nLe programme IFPass à été écrit par Jordan ERNST Q1 2018.')
|
||||
print('Pour toute question ou problème contactez-moi à pro.ernst@gmail.com.\n')
|
||||
print("\nLe programme IFPass à été écrit par Jordan ERNST Q1 2018 pour l'Institut Français en Hongrie.")
|
||||
print('Pour toute question, problème ou requête contactez-moi à pro.ernst@gmail.com.\n')
|
||||
print('1 - Nouveau membre', '2 - Rechercher un membre', '3 - Quitter', sep='\n')
|
||||
choix = input('Choix : ')
|
||||
if choix == '1':
|
||||
@ -345,6 +343,7 @@ while "The program is running":
|
||||
elif choix == '2':
|
||||
os.system('cls')
|
||||
membersearch()
|
||||
os.system("pause")
|
||||
|
||||
elif choix == '3':
|
||||
sys.exit()
|
||||
@ -352,4 +351,3 @@ while "The program is running":
|
||||
else:
|
||||
os.system('cls')
|
||||
print(colored('Choix incorrect !', 'red', attrs=['bold']))
|
||||
os.system("pause")
|
||||
|
Reference in New Issue
Block a user