Sindbad~EG File Manager

Current Path : /home/numerotech/whatsapp.numerotech.com/whatsapp/core/library/__pycache__/
Upload File :
Current File : //home/numerotech/whatsapp.numerotech.com/whatsapp/core/library/__pycache__/helper.cpython-313.pyc

�

x�lg�L��>�SSKJr SSKJrJr SSKJrJrJrJr SSK	r	SSK
r
SSK	r	SSKrSSKJr SSKJ
r
 SSKrSSKrSSKrSSKrSSKrSSKrSSKJr SSKJr SS	KJrJrJr SS
KJr SSKJr "SS
5r\R@RBRE\S9 g)�)�app)�url_for�render_template_string)�datetime�date�time�	timedeltaN��	num2words)�Auth)�Code128)�ImageWriter)�Image�ImageOps�
ImageChops)�
BeautifulSoup)�defaultdictc��\rSrSrSrSrSrSrSrSr	SSS	.r
SS
SSSS.S
SSSSS.SSSSSS.SSSSSS.SSSSSS.SSSSSS./rSrSr
SrSrS rS!rS"rS#rS$rS%rS&rS'rS(rS)rS*rS+rS,rS-rS.rS/rS0r S1r!S2r"S3r#S4r$S5r%S6r&S7r'S8r S9r(S:r)S;r*S<r+S=r,S>r-S?r.S@r/SAr0SBr1SCr2SDr3SEr4SFr5SGr6gH)I�Helper��e�BADGE��2r�del_img_filename�
badge_role)�Photo�RolezDel.No�an_delegate_no)�order_no�header_name�column_name�is_show�g_width��Name�	full_name�zName / Membership No�full_name_and_memberhsip_no�r�role�zEmail/Mobile�email_and_mobile�zMC No / MC State�mc_number_and_mc_statec���US:XaUS:XagUS:XaUS:XagUS:XaUS:XagUS:XaUS:XagUS:XaUS:XagUS:XaUS:Xag	US:XaUS:Xag
US:XaUS:XagUS:XaUS:Xagg
)N�centerzmtop: 50%;left: 50%;transform: translate(-50%, -50%);-webkit-transform: translate(-50%,-50%);text-align:center�startzStop: 50%;left: 0;transform: translate(0,-50%);-webkit-transform: translate(0,-50%);�endzGtop: 50%;left:0;-webkit-transform: translate(0,-50%);text-align: right;zAtop: 0;left:0;-webkit-transform: translate(0,0);text-align: left;zCtop: 0;left:0;-webkit-transform: translate(0,0);text-align: center;zBtop: 0;left:0;-webkit-transform: translate(0,0);text-align: right;zItop: 100%;left:0;-webkit-transform: translate(0,-100%);text-align: right;zJtop: 100%;left:0;-webkit-transform: translate(0,-100%);text-align: center;zHtop: 100%;left:0;-webkit-transform: translate(0,-100%);text-align: left;��)�vertical_aline�horizontal_alines  �n/Users/santhoshgovindaraj/Dropbox/DevTeam/Santhosh Works/2025/jan/conference_badge copy/core/library/helper.py�align_style�Helper.align_style<s����x��$4��$@�
y��� �%5��%A�
_����#3�x�#?�
S��� �%5��%@�
M���!�&6�'�&A�
O����#3�w�#>�
N����#3�u�#<�
U���!�&6�%�&?�
V��� �%5��%>�
T�
�c��g�NzVirtual Conference - 1r5��datas r8�
test_login�Helper.test_loginS���	!r;c��gr=r5r5r;r8�footer_text�Helper.footer_textVrBr;c�d�[US5n[US5n[U5[U5-
nU$)Nz
%Y, %m, %d)r�str)�d1�d2�diffs   r8�	date_diff�Helper.date_diffZs1���2�l�#�"��2�l�#�"��"�g��B���$�	
�+r;c�(�URS5nU$�N�,)�split)�roless r8�set_list�Helper.set_listbs��
�+�+�c�
�%�	�,r;c���SnSn[S5H]n[R"[R"55 X[
R"[R"5S-5-
nM_ U$�N�	123456789r4r*�	��range�random�seedr�process_time�math�floor��digits�
otp_random�is   r8�random4digt�Helper.random4digtf�X���&��*���8�a�	�;�;�t� � �"�#�
��
�
�6�=�=�?�Q�#6�7�8�8�:��
�r;c��[USS9nU$)N�en_IN)�langr
)�amount�words_in_amounts  r8�
amountTowords�Helper.amountTowordsns���f�7�3�/�	�r;c�$�[U5nUSnU$rN)�int)ri�num�rss   r8�amountTodecimal�Helper.amountTodecimalrs���F��#�

�a��"�	�)r;c�f�U(a)URS5nUS:�aUSS-XS-
S-nU$U$)N�@rz*****r)�find)�email�lo�
mask_emails   r8�
email_mask�Helper.email_maskxs?��
�
�
�
�3��2���d���(�7�"�5�A���<�/�J���	�,r;c�Z�U(a#[U5nUS:�aUSSS-XS-
S-nU$U$)Nrr%z******)�len)�mobilerw�masks   r8�mobile_mask�Helper.mobile_mask�s<����F��2���d��2�A�J�x���!�t�u�
�-�D��K�	�-r;c��[U5RS5tpSR[S[	U5*S5Vs/sH
o1US-
UPM snSSS2USS/-5nSRU/U-5$s snf)N�.rO������r%���r4)rG�	partition�joinrYr|)�number�s�d�x�rs     r8�	formatINR�Helper.formatINR�s~��

�f�+�
�
��
$�%�!�	�h�h�%��S��V�G�R�"8�9�"8�Q�!�A�#�a��"8�9�$�B�$�?�1�R�S�6�(�J�K�!�	���!��q��	���:s�A:c�x�[RRS5R"S0UD6n[	U40UD6$)Nz{{login_content|safe}}r5�r�	jinja_env�from_string�renderr�r?�temps  r8�convert_html�Helper.convert_html�s5��	���	"�	"�#;�	<�	C�	C�	K�d�	K�$�	��	,�t�	,�,r;c���SnSn[S5H]n[R"[R"55 X[
R"[R"5S-5-
nM_ U$rUrXr_s   r8�
random_otp�Helper.random_otp�rer;c�p�[RRU5RUS9n[	U5$)Nr>r�)�self�data1r?r�s    r8�convert_jinja_template�Helper.convert_jinja_template�s/��	���	"�	"�5�	)�	0�	0�d�	0�	;�$�	��	%�%r;c�r�URS5n[R"U5nURS5$�N�ascii��encode�base64�	b64encode�decode)�value�	basevalue�base64_bytess   r8�base64encode�Helper.base64encode�s1���l�l�7�#�)��#�#�I�.�,�	�	�	�W�	%�%r;c�z�UnURS5n[R"U5nURS5nU$r�r�)�
encode_txt�
sample_string�sample_string_bytesr��
base64_strings     r8�convert_b64�Helper.convert_b64�s?���-�%�,�,�W�5���!�!�"5�6�,��%�%�g�.�-�	�r;c�T�U(aURS5n[U5nU$SnU$)NrOr)rPr|)�delegate_ids�delegate_ids  r8�split_delegate_ids�Helper.split_delegate_ids�s4����#�#�C�(�;��k�"�<�
���<�	�r;c�h�UR5Hup#URSU-S-U5nM U$)Nz*|z|*)�items�replace)�text�values�k�vs    r8�
merge_tags�Helper.merge_tags�s1���l�l�n�d�a�
�,�,�t�A�v�d�{�A�
&�4��	
�+r;c�x�[RRS5R"S0UD6n[	U40UD6$)Nz{{mail_content|safe}}r5r�r�s  r8�convert_html_for_mail_screen�#Helper.convert_html_for_mail_screen�s5��	���	"�	"�#:�	;�	B�	B�	J�T�	J�$�	��	,�t�	,�,r;c�Z�U(a$UR5nUR5nUnU$g�N)�lstrip�rstrip)r��ltext�rtext�striped_texts    r8�leftrightstrip�Helper.leftrightstrip�s)��	��K�K�M�5��L�L�N�5��<�
��r;c�P�[R"5nUR5nU$r��r�now�	timestamp��ct�tss  r8�getcurrenttimestamp�Helper.getcurrenttimestamp�����|�|�~�"�	�|�|�~�"�	�)r;c��U(aB[R"[R"U5R5n[US5nU$g)Nzutf-8� )r�r��requests�get�contentrG)�url�bytes_string�aas   r8�ImageDecodeBase64�Helper.ImageDecodeBase64�s8����#�#�H�L�L��$5�$=�$=�>�<��L�'�"�2�
�9�

r;c���[R"U5n[R"5nUR	USS9 [
R"UR55RS5nU$)Nr.��scaler��	�pyqrcode�create�io�BytesIO�pngr�r��getvaluer�)�delegate_no�cr��encodeds    r8�	getQRCode�Helper.getQRCode�sQ���o�o�k�"�!��j�j�l�!��%�%���%�����Q�Z�Z�\�*�1�1�'�:�'�	�.r;c��[R"U5n[R"5nU(aUR	USUS9 OUR	USS9 [
R"UR55RS5nU$)Nr.�r��
backgroundr�r�r�)r��
color_coder�r�r�s     r8�getQRCodeWithBg_old�Helper.getQRCodeWithBg_old�sf���o�o�k�"�!��j�j�l�!���5�5���z�5�*��5�5���5�����Q�Z�Z�\�*�1�1�'�:�'�	�.r;c��[R"U5n[R"5nU(aUR	USUS9 OUR	USS9 SSSS.n[
R"U5nURS5n[
R"SURS	5n[R"XV5n[R"URS
55nURU5 [R"5nURUSS9 [ R""UR%55R'S
5n	U	$)Nr.r�r�F��333333�?��
write_text�
module_height�module_width�RGBA�rrrr�L�PNG��formatr�)r�r�r�r�r�r�open�convert�new�sizer�
differencer�invert�putalpha�saver�r�r�r�)
r�r�r�r��options�
barcode_imager�rJ�output�
encoded_images
          r8�getQRCodeWithBg�Helper.getQRCodeWithBg�s���o�o�k�"�!��j�j�l�!���5�5���z�5�*��5�5���5�����
�'��*�*�Q�-�-� �'�'��/�-��y�y���!3�!3�\�B�*�	�	�	�}�	9�$�	������c�*�	+�$�������:�:�<�&����V�E��*��"�"�6�?�?�#4�5�<�<�W�E�-�	�r;c��[R"U5n[R"5nU(aUOSnU(aFUR	USXS9 [
R"UR55RS5nU$UR	USUS9 SSSS	.n[R"U5nURS
5n[R"S
URS5n[R"Xx5n	[ R""U	RS55n	UR%U	5 [R"5n
UR'U
S
S9 [
R"U
R55RS5nU$)Nz#000000r.)r�r��module_colorr�)r�rFr�r�r�r�r�rrr)r�r�r�r�r�r�r�r�r�rrrrrrrrr	r
r)r��bg_color�qr_colorr�r�r�rr
r�rJrrs            r8�getQRCodeWithBgV1�Helper.getQRCodeWithBgV1sA���o�o�k�"�!��j�j�l�!�"�h�	�(���5�5���x�5�>�
�
�
�a�j�j�l�
+�
2�
2�7�
;�7�
�>��5�5����5�)�����7��:�:�a�=�=�!�(�(��0�=��	�	�&�-�"4�"4�l�C�:�
�
�
�
�
:�4�
�/�/�$�,�,�s�+�
,�4����$��
�J�J�L�6����f�U��+��#�#�F�O�O�$5�6�=�=�g�F�=�	�r;c��[R"5nSSSS.n[[U5R	S5[5S9R
X5 [R"U5nURS5n[R"SURS5n[R"X45n[R"URS	55nUR!U5 [R"5nUR#US
S9 [$R&"UR)55R+S5nU$)
NFr�r�r�r*)�writerr�r�rrrr�)r�r�r
rG�zfillr�writerrrrrrrrr	r
rr�r�r�r�)r�r�rr
r�rJrrs        r8�
getBARCode�Helper.getBARCodeKs���j�j�l�!����
�'�
�#�k�
�
 �
 ��
#�K�M�:�@�@��L��*�*�Q�-�-� �'�'��/�-��y�y���!3�!3�\�B�*�	�	�	�}�	9�$�	������c�*�	+�$�������:�:�<�&����V�E��*��"�"�6�?�?�#4�5�<�<�W�E�-�	�r;c��S[R"[R"U5R5RS5-$)Nzdata:image/jpg;base64,r�)r�r�r�r�r�r�)r�s r8�get_url_base64�Helper.get_url_base64ns3��	!�F�$4�$4�X�\�\�#�5F�5N�5N�$O�$V�$V�W^�$_�	_�_r;c�P�[R"5nUR5nU$r�r�r�s  r8r�r�rr�r;c�x�[RRU5R"S0UD6n[	U40UD6$�Nr5r���
badge_contentr?r�s   r8�convert_html_for_badge_screen�$Helper.convert_html_for_badge_screenw�4��	���	"�	"�=�	1�	8�	8�	@�4�	@�$�	��	,�t�	,�,r;c�x�[RRU5R"S0UD6n[	U40UD6$r#r�r$s   r8�convert_html_for_badge_screen_2�&Helper.convert_html_for_badge_screen_2|r(r;c��SnSnSnU(ajSU;d[U5S:XaUnORSU;aJURS5nU(a1[U5S:�a"US(aUSOSnUS(aUSOSnOUnXU4$)NrOr�-r)r|rP)r��delegate_nos�from_del_no�	to_del_no�results     r8�conv_dele_no�Helper.conv_dele_no�s���,��+��)�
�	�U�l�c�%�j�A�o��L��u���{�{�3��F�
�#�f�+�a�-� &�q�	�6�!�9�t�[� &�q�	�6�!�9�t�Y���L�	�)�	+�+r;c�x�[RS/5nUHnX1S:XdM
URU5 M  g)N�studentsr(�success)�sessionr��update)r?�
primary_idr5�students    r8�update_sess�Helper.update_sess�s8��
�[�[��R�
(�(��g�
��Q���N�N�4���
r;c	��SnSnSnUS:XaUnU(aS[RUS53nU(aSUUSUUSUS	3	nU$)
N�/static/images/DEMO_QR_CODE.pngr4r�data:image/png;base64,�#fff�<img style="width:�;height:�;" src="�" >�rr)�scan_code_size�length_scale�qr_val�
is_preview�demo_urlr1�img_srcs       r8�getQRCodeForBadge�Helper.getQRCodeForBadge�sn��/�(�
�&��'��1�_�
�7��&�v�'=�'=�f�V�'L�&M�N�7�
�
��/��~�X�~�EV�Wc�Vd�dl�mt�lu�ux�y�6�	�-r;c	��SnSnSnUS:XaUnU(aS[RX$U53nU(aSUUSUUSUS3	nU$)	Nr>r4rr?rArBrCrD)rr)	rFrGrHrIrrrJr1rKs	         r8�getQRCodeForBadgeV1�Helper.getQRCodeForBadgeV1�so��/�(�
�&��'��1�_�
�7��&�v�'?�'?��PX�'Y�&Z�[�7�
�
��/��~�X�~�EV�Wc�Vd�dl�mt�lu�ux�y�6�	�-r;c��SnSnSnUS:XaUnU(aS[RU53nU(aSUUSUS3nU$)Nr>r4rr?z<img style="height:rCrD)rr)rFrG�bar_valrIrJr1rKs       r8�getBarCodeForBadge�Helper.getBarCodeForBadge�s\��/�(�
�&��'��1�_�
�7��&�v�'8�'8��'A�&B�C�7�
�
 �.� 1�,��x��y�PS�T�6�	�-r;c��[SUSUSUSUSUSU5 SnSnSnUS:XaUnU(aUnU(aSUUSUUSUUS	UUS
US3nU$)Nz------r-z/static/images/empty_photo.pngr4rrArBz@; /* border: 2px solid #000 !important;*/-webkit-border-radius: z !important;border-radius: zB !important; /*-webkit-box-shadow: 0px 0px 0px 1px #000;*/ " src="rD)�print)	�photo_width�photo_heightrG�photo_radius�	photo_valrIrJr1rKs	         r8�getPhotoForBadge�Helper.getPhotoForBadge�s������S��c�,�s�<�PS�T]�^a�bl�m�.�(�
�&��'��1�_�
�7���7�� ��}�\�N�(�L�/�R^�Q_�``�am�`n�o{�n|�|W�Xd�We�fr�es�su�v}�u~�~A�B�6�
�-r;c�X�SnSnU(aSU-nS[RUS53nU$)Nr4ztel:r?r@rE)rHr1rKs   r8�getQRCodeForCustom�Helper.getQRCodeForCustom�s7��
�&��'���6�M�6�%�f�&<�&<�V�F�&K�%L�
M�6�	�-r;c�@�UR5H	up#X0U'M U$r�)r�)�dict_varr��keyr�s    r8�addDictItems�Helper.addDictItems�s ���K�K�M�j�c��C�=�"�	�/r;c��[US5nURSXS.5n/nUHCnURSS9HnUR5 M UR[	U55 ME SRU5$)Nzhtml.parser�div)�class�idF)�	recursiver4)r�find_all�extract�appendrGr�)�html_content�
class_name�div_id�soup�target_divsr1�
target_div�childs        r8�extract_div_by_class_and_id�"Helper.extract_div_by_class_and_id�su��	�|�]�	3�$��
�
�e�z�%H�I�+�
�&��j��#�#�e�#�4�u�	�M�M�O�5�
�=�=��Z��!�
 �
�����r;c	��[UVs1sHoScM
[US5iM sn5nU/:XaSnU$UnU$s snf)N�counter)�sortedrn)r?�item�counter_lists   r8�sorted_counter_list�Helper.sorted_counter_listsP���$�^�$�$�y�/�-��T�)�_�-�$�^�_�,�%��+��,�
��2>�,�
���_s�	>�>c
��0nUH|nURS5nUcM[U[5(a UR5(a[	U5OUnURU[
55RUS5 M~ UR5VVs0sHupEU[[U55_M snn$s snnf)Nrw�batch)r��
isinstancerG�isdigitrn�
setdefault�set�addr�rx�list)r?�counter_dictry�
counter_valuer�r�s      r8�sorted_batch_list�Helper.sorted_batch_lists����,��d��8�8�I�&�=���*4�]�C�*H�*H�]�Mb�Mb�Md�Md�C�
�&�jw�M����M�3�5�1�5�5�d�7�m�D��*6�);�);�)=�	>�)=���!�V�D��G�_�
�)=�	>�>��	>s�!B=c���[[5nUHOnURS5nURS5nU(dM.U(dM7XSU3RU5 MQ [	U5$)Nrwr~r-)rr�r�rl�dict)r?�grouped_dataryr��batch_values     r8�group_by_counter_and_batch�!Helper.group_by_counter_and_batch"sd���T�"�,��d��8�8�I�&�=����'�"�;��m����?�!�K�=�1�2�9�9�$�?�
�
�l�	�r;r5N)7�__name__�
__module__�__qualname__�__firstlineno__�DefaultCountryID�AppType�	merge_pdf�merge_pdf_per_limit�horizontal_view�
is_offline�badge_condition�galley_sheet_headerr9r@rDrKrRrcrkrqryrr�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrr&r*r2r;rLrOrSr[r^rcrtr{r�r��__static_attributes__r5r;r8rrsy��!��$����������0��E��
��:J�UV�ab�c����a�Z[�\��!7�He�pq�|}�~�����UV�W���@R�]^�ij�k��!3�D\�gh�st�u�
	��
�."�"���������
-��&�&�
���
-���
��
�'�T)�t"�F`��
-�
-�,�"�
�
�
��6��"�&�
	?�r;r)r)#�corer�flaskrrrrrr	rZr]r�core.library.authrr�r�r�r�r��barcoder
�barcode.writerr�PILrrr�bs4r�collectionsrrr��globalsr8r5r;r8�<module>r�sn���0�4�4�
����"�
���	�
���&�+�+��#�
T�T�n�
�
�����F��+r;

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists