Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- import getpass
- import numpy as np
- import registration as rg
- class User:
- def __init__(self, name, password, privilege):
- self.name = name
- self.password = password
- self.privilege = privilege
- def secretFunction(lenOfPassword):
- print("Solve your function: ", end='')
- solve = input()
- if int(solve) == lenOfPassword*3:
- return True
- else:
- print("Wronge answer")
- secretFunction(lenOfPassword)
- def checkFolder(folder, directories):
- if folder in directories:
- return True
- else:
- print("You don`t have the right to go in this directory!")
- return False
- def enterFolder(directories):
- print("Which folder do you want to enter? ", end="")
- folder = input()
- if checkFolder(folder, directories):
- path = folder
- folder = os.listdir(path)
- for file in folder:
- print(file)
- def Authentificate():
- while True:
- print('Login: ', end='')
- name = input()
- password = getpass.getpass('Enter password:')
- usernames = open('db/usernames.txt', 'r')
- passwords = open('db/passwords.txt', 'r')
- privileges = open('db/privileges.txt', 'r')
- dataname = np.array(usernames.read().split('\n'))
- datapass = np.array(passwords.read().split('\n'))
- dataprivilege = np.array(privileges.read().split('\n'))
- numbUsers = int(dataname.size)
- loginCheck = False
- for i in range(numbUsers):
- if dataname[i] == name:
- loginCheck = True
- if datapass[i] == password:
- if secretFunction(len(datapass[i])):
- print('You have rights of category: ', dataprivilege[i])
- showFolders(dataprivilege[i])
- enterFolder(dataprivilege[i])
- return User(name, password, dataprivilege[i])
- break
- else:
- print('Wrong password')
- if loginCheck == False:
- print('Wrong login')
- def showFolders(privilege):
- directories = set(name for name in os.listdir(".") if os.path.isdir(name)) & set(privilege)
- return directories
- # rg.Register()
- Authentificate()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement