>1K ddlZddlmZddlmZmZmZmZmZddl m Z m Z ddl m Z Gdde ZGdd ed gd ZGd d eZeZdS) N) namedtuple)OptionalDict GeneratorTupleList)cpapiFormattedException)funcceZdZdS)UserNotFoundErrorN__name__ __module__ __qualname__/builddir/build/BUILDROOT/lve-stats-4.3.2-1.el9.x86_64/opt/cloudlinux/venv/lib/python3.11/site-packages/lvestats/lib/commons/users_manager.pyr r Drr ceZdZdS)UserNrrrrrrrrr)usernamedomainresellercPeZdZdZdZdZdZedZd dZ d dZ d Z d S) UsersInfoManagerzB Implements some different functions for user management; ci|_dS)N) users_cacheselfs r__init__zUsersInfoManager.__init__src t|||_dS#tj$rt jdYdSwxYw)z(Cache data from cpapi for given resellerzIControl panel API is not implemented, some features may not work properlyN)dict_iter_panel_usersrr NotSupportedlogginginfo)r rs rbuild_users_cachez"UsersInfoManager.build_users_caches| @#D$:$:8$D$DEED   ! @ @ @ L? @ @ @ @ @ @ @s'+#AAc#nK||D]\}}}|t|||fVdS)N)rrr)_iter_panel_users_tuplesr)r rlogin reseller_rs rr$z"UsersInfoManager._iter_panel_users(s[(,(E(Eh(O(O Q Q $E9fuyPPPP P P P P Q Qrc#K|%tjdD] \}}}|||fVdSttj|D] \}}|||fV dS)N)cploginrdns)keyls)r cpinfolistr get_reseller_domainsitems)rr+r,rs rr*z)UsersInfoManager._iter_panel_users_tuples-s  ,1L?],^,^,^ / /(y&Y..... / /"&d&?&I&I&O&O&Q&Q!R!R . . vXv----- . .rTc |j|jS#t$r"}|rtdd|id|Yd}~dSd}~wwxYw)zGet domain for userz?44444   A;Ac |j|jS#t$r"}|rtdd|id|Yd}~dSd}~wwxYw)zGet reseller for userz>An error occurred while getting reseller for user %(username)srr6N)rrr9r r:s r get_resellerzUsersInfoManager.get_resellerDsx #H-6 6    ?'_ *H5)7)788=>?44444  r>cNt|jS)zGet list of cached users)r2rkeysrs rget_login_listzUsersInfoManager.get_login_listPs!D$))++,,,rN)T) rrr__doc__r!r(r$ staticmethodr*r=r@rCrrrrrs@@@QQQ ..\.        -----rr)r& collectionsrtypingrrrrrclcommonr r lvestats.lib.commonsr r robjectrg_users_managerrrrrLs""""""99999999999999........%%%%%%     *        ::f@@@ A A   ;-;-;-;-;-v;-;-;-|#"$$r