From 0a9927942b02fafc5e12358509de389777e0cefb Mon Sep 17 00:00:00 2001 From: Nathan Baker <nathan2.baker@live.uwe.ac.uk> Date: Mon, 17 Feb 2025 15:41:18 +0000 Subject: [PATCH] adhiwau --- main.py | 10 ++++----- src/__pycache__/staffUser.cpython-312.pyc | Bin 5252 -> 5434 bytes src/staffUser.py | 24 ++++++++++++++-------- 3 files changed, 20 insertions(+), 14 deletions(-) diff --git a/main.py b/main.py index d1e027e..85cca51 100644 --- a/main.py +++ b/main.py @@ -34,7 +34,7 @@ def loginAttempt(username: str, password: str) -> StaffUser | ManagerUser | Admi StaffUser | ManagerUser | AdminUser | None: returns user object or NoneType if login unsucssesfull. """ # get permissionLevel and user_id where username and password are match. - conditon = json.loads(select_from_tbl_where("tblUsers", f"userName='{username}' AND userPass='{password}'", "permissionLevel")) # condition is a 2 item dict. + conditon = json.loads(select_from_tbl_where("tblUsers", f"userName='{username}' AND userPass='{password}'", "permissionLevel")) # returns a dict with args to be used in condition switch. # based on permissonLevel create the relevant user class object. match conditon['permissionLevel']: @@ -139,15 +139,15 @@ def encrypt(string:str) -> str: def main_cli() -> None: print("\n\nSTARTING CINEMA MANAGEMENT SYSTEM.\n\n") # test db is connected.... -# if not getConnection(): -# logging.critical("Database cannot connect, or dose not exist. \nClosing application.") -# exit() + #if not getConnection(): + # logging.critical("Database cannot connect, or dose not exist. \nClosing application.") + # exit() print("To login please enter your credentials.\n") while True: username = encrypt(sanitize(input("Username: "))) password = encrypt(sanitize(input("Password: "))) #user = loginAttempt(username=username, password=password) - user = ManagerUser() # dev remove later + user = ManagerUser(impBool=1) # dev remove later if user is None: print("Login attempt failed please try again.") else: diff --git a/src/__pycache__/staffUser.cpython-312.pyc b/src/__pycache__/staffUser.cpython-312.pyc index 7646ac2ece181c549112fca4ccf3c14f045548b3..4988db65302ceac12f65b8e5218373debd4dc439 100644 GIT binary patch delta 1315 zcmZqC+@-~LnwOW0fq{X+*M4)l8vjJTqxHNXE&~I@=NbkEhUpBc3{i|J3{gxe!YPcY z%qdK%EGf*XEGaCh%qgs?tSM}%Y-v0x>@BQO>?s^A3{e~@A}QQ0EK!^(A}KsAEKyu3 zA}PErEK%GkoT;p7OeuUVEKxiuA}RbWEK$5rF@YAAD83Yt6u}mjDE|5skrbg8mMDQr zE=|!}oWUiDX=$OwsYSP#GE;7`<R#{&-eN6CEG{m;#a@tFl<QNLbBjGWGcPqavG^8y zW^RE~etu3eJJb&#iiv@Nff?kV0I+{**oqh{8EP177~(;)U|hpg!w}C1W-=HuFw`*D zFvNqjfkkRqY8c`{20(bMH4O1AU?u|tLnVVIqu=D+jQVCppkUKvzr|9Vnv+(<$-ux+ z1Pa$8ZV-zHM1T|&@i8zk6oXu+00xtoT1*TW7#JED9&!tPU}NAF{J_Q_uh`+z<9$Ox zrNgDi_lANhh<c!|*Wq%7N8y3AQin^g&*pVZvW!XsAY%nVgb;`jW?*1g$yg);vI688 zg(A_(ubJf;B`0&UR5FThZe`(MVg);G@<cXoA+USc7#J8d*}!^=1Sh{^Q`6N1X$J{| z9jH(w%D}*Ii!~=dJu|P0A08WeU;&xQj_ey4#V7L$NN(olFl7{0U|?YI(_}Bw0J%pA zL?}-V=G0;onOw&y!6-U;I;SC{=H`=}>5MKAS&-o@nR#jXMPSdEfV9YfTmba|NS-Yx zKRv&+q)GtA_WaTkqsb-Qwh-$l2XGlo{>{CG8*Xe7@8n%PGK?aVuk*+;icbE<W65YS z*?`xJQG9YWZyg&%-Q@qgk|OB#@g^6gPQK4C#+O`_npl$Rl%JoSnV0S`Ie<?QtT}P= zWj-lEdvvEx{>P`u=rUP@AEGLA@@9TvEUK>aYjb;m^g4kE@y)yfrx{_cxhJTt<p>fs z2Sp1rBw9cba*MM#H77N>Br`v+7?czh6hM({EM&{*Gr3TxN?aVIp0Nm&W;L0L<iN2Y zSR_69w~$=D4=4<oi%W`bvE*bHm)v4W%FoX!5(8Ny3nFwu1UTS9wielfxL`-PfLLxI z!XK2f7>Yo)fYU<}2S^k|fN*g>0|P?~!$&4QR^=JW9~k&pl@~aJsTIW^7^L}Fm3Kh6 zCq%%a7s8`IgA{#Im|P)jBLg-SWX>&)`1st!%)Iz`O`alf{HRX8AZ%GJ4e|hMX>n?i zVUah;;!qF))&@$Pzc_4i^HWN5QtgUj7#J8p38xqoIUkrA85!?0h}>n6y~7}SmqGRm xM<64kE8_&VFAQMDhcYGx7M_l(OU#lFc|^Ot8(eR)aCWG+`g~w#V37j*761ctBWwTw delta 1063 zcmdm`)uPFFnwOW0fq{WxpU~#?H@p-1j@C1QxC{&opA#4u7^X9%GDI<^Fhnt>Ft#v6 zF{d!KFhsGW@TRb~utc$@@TRb}utc$?@TRc0utc$^FsE{)F{N;{utagD@TPFKutae| z#kg8nqPSCdQ@C4LqIgnxQ+QffqIfG=H2H3E2A3qJrG*x!79}$>Ffi0Zt!DtagBj!w zFR(jO7;6~fVR8&9Of?MgAmv~YFb||2!UL%U=>+rA8EP2fS-?yN28K!oO=iC$kkVTW znyk0jN{dsAJY8;afM~zO+|*kflO>oW#cr`DXXd5mCKj(`yv0(Snv+%xvTJfWQ;U`w z0|P??!viVl4wfG78!~boEIqtX>VdLK2g?->nFr#M9W1>(o8_5h85Ou07#NCpKm;#{ z-~$l?3=9ll6BUYtCdaYJGYU_xW2s~m+5CfrgNfx9Q)bF!R(5Y8evn!=1_lOAwjx0g zn`d$oyP6=#1;rp?1u!TQnmm(Tno(@>R`v~yB9j{hBsbS{m@*2>FfcIqX|flof^^D* z2!+YVIklufCf#BOdCDcT=oVvYF({}M6hKbl<}zed-fYX2&Zq{_z`($8izPEJEx!ot z4MUJAD2_kHEz77g`31Kv#OBHNJWsgcT8sE6>+#Ak3QqRsm17i|oW*O&Xf$~VuNR}p z<oCRF+HiHZg#GeMJaY?jQgc)DN>Wo?i;D7#icsvC!Kck=HTejiB3N(YWOsfkK^qL$ z6!B{^+D)Fr4^fplSzSOFiz;scZEh!!UV9KBvbj;<G$R|tF_VLYw1w<I!X}_#XNCm3 z+T?yAaW)}PV2DjVCnPrckdP9i+vKN0RRSU)WlTj<;IQT^l9*g3EEg{fGC&eUXn_cD zsDaG8#gda*TvB8O5(Hb~2x2*d2p<LphLsFOAmfTa78P-TL_q`y7rQVpFtjjyV&Y(x z`Xn-0PsBzBtP&)5iz7ZhH!(9WK3<cj2<!``$!#K*+7ck=vVzjJVUY*OumBJN)&{cR q7l%!5eoARhs$Eg|<X0l{0^W>_u8b4dzA%6pAF?J(ipsKplmh^>8QWg~ diff --git a/src/staffUser.py b/src/staffUser.py index 4cf93e0..27e217a 100644 --- a/src/staffUser.py +++ b/src/staffUser.py @@ -6,15 +6,21 @@ from .cinemaObj import Cinema # trying to make this a base implementation for all user classes. class StaffUser(object): - def __init__(self): - # staff id number assigned by manager during onboarding. - self.userID:int = 0 - self.userName:str = "" - self.userPass:str = "" - # staff software level. - self.permissionLevel:int = 0 - # list of branches active at. - self.cinemas = [] + def __init__(self, id:int, name:str, passw:str, permLvl:int, cinemas:list, impBool:bool=0): + # impbool used to switch case on a newly created user or imported from database. + if impBool: + # import user from db + select_from_tbl_where(table="tblUsers", condition="") + pass + else: + # staff id number assigned by manager during onboarding. + self.userID:int = id + self.userName:str = name + self.userPass:str = passw + # staff software level. + self.permissionLevel:int = permLvl + # list of branches active at. + self.cinemas = cinemas def __str__(self): return f"{self.__class__.__name__} user object(userID={self.userID}, userName={self.userName}, userPass={self.userPass}, permissionLevel={self.permissionLevel})" -- GitLab