83 lines
1.7 KiB
Python
83 lines
1.7 KiB
Python
import pickle
|
|
import hashlib
|
|
import os
|
|
from helpers import BlockHelper as blockHelper
|
|
|
|
class bcolors:
|
|
HEADER = '\033[95m'
|
|
OKBLUE = '\033[94m'
|
|
OKCYAN = '\033[96m'
|
|
OKGREEN = '\033[92m'
|
|
WARNING = '\033[93m'
|
|
FAIL = '\033[91m'
|
|
ENDC = '\033[0m'
|
|
BOLD = '\033[1m'
|
|
UNDERLINE = '\033[4m'
|
|
|
|
def computeHash(data):
|
|
hash = hashlib.sha256()
|
|
data = str(data).encode()
|
|
hash.update(data)
|
|
return hash.hexdigest()
|
|
|
|
def clearScreen():
|
|
os.system('cls' if os.name == 'nt' else 'clear')
|
|
|
|
def createFile(fileloc):
|
|
try:
|
|
savefile = open(fileloc, "xb")
|
|
savefile.close()
|
|
return True
|
|
except:
|
|
return False
|
|
|
|
def saveFile(fileloc, data):
|
|
savefile = open(fileloc, "ab")
|
|
pickle.dump(data, savefile)
|
|
savefile.close()
|
|
|
|
def resetFile(fileloc):
|
|
savefile = open(fileloc, "wb")
|
|
savefile.close()
|
|
|
|
def loadFile(fileloc):
|
|
loadfile = open(fileloc ,"rb")
|
|
|
|
objs = []
|
|
while True:
|
|
try:
|
|
objs.append(pickle.load(loadfile))
|
|
except EOFError:
|
|
break
|
|
|
|
return objs
|
|
|
|
def loginStartup(self):
|
|
# TODO - check if there are unvalidated blocks
|
|
blockHelper.validateMinedBlock(self)
|
|
# TODO - check if there are any notifcations
|
|
|
|
def printError(text):
|
|
print(f"{bcolors.FAIL}{text}{bcolors.ENDC}")
|
|
|
|
def printSuccess(text):
|
|
print(f"{bcolors.OKGREEN}{text}{bcolors.ENDC}")
|
|
|
|
def printWarning(text):
|
|
print(f"{bcolors.WARNING}{text}{bcolors.ENDC}")
|
|
|
|
def printInfo(text):
|
|
print(f"{bcolors.OKBLUE}{text}{bcolors.ENDC}")
|
|
|
|
def printBold(text):
|
|
print(f"{bcolors.BOLD}{text}{bcolors.ENDC}")
|
|
|
|
def printUnderline(text):
|
|
print(f"{bcolors.UNDERLINE}{text}{bcolors.ENDC}")
|
|
|
|
def printHeader(text):
|
|
print(f"{bcolors.HEADER}{text}{bcolors.ENDC}")
|
|
|
|
|
|
|
|
|