update
@@ -0,0 +1,3 @@
|
||||
<svg width="19" height="12" viewBox="0 0 19 12" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M9.52653 8.63454C10.1638 7.90501 10.7876 7.19286 11.4114 6.47988C13.121 4.52566 14.83 2.57061 16.5384 0.614731C16.8693 0.236735 17.2669 0.0150653 17.7818 0.0729641C18.026 0.0913413 18.2599 0.177595 18.4559 0.321607C18.6519 0.465618 18.8019 0.661415 18.8884 0.886028C19.096 1.3823 19.0099 1.84301 18.6638 2.2483C18.0873 2.92158 17.499 3.58411 16.9157 4.2516C14.8291 6.63869 12.7434 9.02632 10.6585 11.4145C10.271 11.8595 9.80508 12.1184 9.21337 11.9463C8.92289 11.8612 8.66166 11.6999 8.4579 11.4798C5.74217 8.39522 3.03685 5.30233 0.341937 2.20116C-0.16452 1.61721 -0.100369 0.795045 0.481212 0.316139C1.07714 -0.171865 1.88832 -0.0883249 2.42263 0.521267C4.71575 3.14325 7.00831 5.76579 9.30031 8.38888C9.36699 8.46663 9.43874 8.54025 9.52653 8.63454Z" fill="#6E55FF"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 883 B |
@@ -0,0 +1,3 @@
|
||||
<svg width="19" height="12" viewBox="0 0 19 12" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M9.52653 8.63454C10.1638 7.90501 10.7876 7.19286 11.4114 6.47988C13.121 4.52566 14.83 2.57061 16.5384 0.614731C16.8693 0.236735 17.2669 0.0150653 17.7818 0.0729641C18.026 0.0913413 18.2599 0.177595 18.4559 0.321607C18.6519 0.465618 18.8019 0.661415 18.8884 0.886028C19.096 1.3823 19.0099 1.84301 18.6638 2.2483C18.0873 2.92158 17.499 3.58411 16.9157 4.2516C14.8291 6.63869 12.7434 9.02632 10.6585 11.4145C10.271 11.8595 9.80508 12.1184 9.21337 11.9463C8.92289 11.8612 8.66166 11.6999 8.4579 11.4798C5.74217 8.39522 3.03685 5.30233 0.341937 2.20116C-0.16452 1.61721 -0.100369 0.795045 0.481212 0.316139C1.07714 -0.171865 1.88832 -0.0883249 2.42263 0.521267C4.71575 3.14325 7.00831 5.76579 9.30031 8.38888C9.36699 8.46663 9.43874 8.54025 9.52653 8.63454Z" fill="black"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 881 B |
@@ -0,0 +1,11 @@
|
||||
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="11" cy="11" r="11" fill="white" fill-opacity="0.15"/>
|
||||
<g clip-path="url(#clip0_746_954)">
|
||||
<path d="M6.875 7.32009C6.88404 7.29495 6.89358 7.26982 6.90187 7.24469C6.92912 7.16067 6.97676 7.08473 7.04052 7.02366C7.10428 6.96259 7.18218 6.91829 7.26723 6.89474C7.35228 6.87118 7.44184 6.8691 7.5279 6.88868C7.61395 6.90826 7.69381 6.94888 7.76034 7.00693C7.79273 7.03482 7.82261 7.06624 7.85274 7.09665C8.87818 8.12259 9.90337 9.1487 10.9283 10.175C10.9488 10.1999 10.9669 10.2266 10.9823 10.2549L11.0175 10.2526C11.0339 10.2249 11.0525 10.1986 11.0732 10.174C12.111 9.13412 13.1494 8.0947 14.1884 7.05569C14.3725 6.87171 14.6083 6.82471 14.8212 6.92751C14.8935 6.96202 14.9571 7.0124 15.0072 7.07491C15.0574 7.13742 15.0928 7.21044 15.1109 7.28855C15.129 7.36666 15.1292 7.44784 15.1116 7.52605C15.094 7.60427 15.059 7.6775 15.0092 7.74032C14.9818 7.77342 14.9526 7.80497 14.9216 7.83482C13.8907 8.86679 12.8596 9.89843 11.8285 10.9297C11.8059 10.9526 11.7782 10.9702 11.7331 11.0051C11.7655 11.0251 11.7963 11.0474 11.8255 11.072C12.8648 12.1108 13.9036 13.1497 14.942 14.1885C15.0803 14.3267 15.1514 14.4876 15.116 14.6831C15.0773 14.8975 14.9487 15.0378 14.7423 15.1069C14.73 15.1115 14.7179 15.1168 14.7062 15.1227H14.4646C14.31 15.0702 14.1985 14.9601 14.0865 14.8475C13.0821 13.8398 12.0765 12.833 11.0694 11.827C11.0473 11.8049 11.0242 11.784 10.9941 11.7541C10.969 11.7845 10.9484 11.8101 10.9258 11.8328C9.91643 12.8436 8.90706 13.8544 7.89768 14.8651C7.79097 14.9722 7.68275 15.073 7.53662 15.1227H7.29482C7.18535 15.0835 7.07537 15.0395 7.00783 14.9408C6.95459 14.8626 6.91919 14.7721 6.876 14.6872V14.5097C6.91241 14.3481 7.01511 14.2317 7.12885 14.1181C8.14593 13.1034 9.16183 12.0877 10.1766 11.071C10.2062 11.0469 10.2378 11.0253 10.271 11.0064C10.2228 10.9682 10.1956 10.9503 10.1725 10.9277C9.15865 9.91384 8.14475 8.90013 7.13086 7.88659C7.01686 7.77299 6.91467 7.65612 6.876 7.49552L6.875 7.32009Z" fill="white"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_746_954">
|
||||
<rect width="8.25" height="8.25" fill="white" transform="translate(6.875 6.875)"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.1 KiB |
@@ -0,0 +1,4 @@
|
||||
<svg width="16" height="15" viewBox="0 0 16 15" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M7.93928 15H7.05876C7.02176 14.9892 6.98398 14.9812 6.94577 14.976C6.03352 14.9226 5.14089 14.689 4.3194 14.2887C2.02028 13.1548 0.610487 11.3273 0.118379 8.8056C0.0626133 8.51993 0.0386447 8.22838 0 7.93977V7.05926C0.0111321 7.01763 0.0194671 6.9753 0.0249483 6.93256C0.0978351 5.88622 0.367368 4.89124 0.882467 3.97845C2.26487 1.52378 4.36831 0.186378 7.18497 0.0151677C8.5148 -0.0733284 9.84167 0.226819 11.0039 0.879047C13.4728 2.25362 14.8122 4.36587 14.9878 7.18644C15.0732 8.52087 14.7719 9.85161 14.12 11.0191C12.9561 13.1349 11.1848 14.4231 8.80609 14.8836C8.51992 14.9349 8.22789 14.9614 7.93928 15ZM13.3314 7.49951C13.3314 4.28663 10.7085 1.66857 7.49657 1.67102C4.28467 1.67346 1.66466 4.29347 1.66661 7.50489C1.66857 10.7163 4.28956 13.3358 7.50147 13.3339C10.7134 13.3319 13.3334 10.7095 13.3314 7.49951Z" fill="#007CBA"/>
|
||||
<path d="M10.9966 5.19107V5.01155L10.9281 4.96018L10.912 4.94844L10.9076 4.94551C10.6229 4.66179 10.3387 4.37758 10.0549 4.09288L10.052 4.08848L10.0398 4.07184L9.98842 4.00385H9.81085L9.74922 4.07527L9.74433 4.08212C8.99752 4.83088 8.24909 5.57866 7.49902 6.32546L5.25274 4.07869L5.18963 4.00189H5.0106L4.96168 4.06989C4.95728 4.07527 4.95337 4.08114 4.94945 4.08652L4.94652 4.09092L4.09389 4.94355L4.08948 4.94648L4.07334 4.95822L4.00486 5.00959V5.18716L4.07481 5.24928L4.08117 5.25418L6.32501 7.49948C5.57494 8.24954 4.82618 8.9983 4.07872 9.74576L4.00143 9.80837V9.9879L4.06943 10.0393C4.07481 10.0437 4.08068 10.0476 4.08655 10.0515L4.09046 10.0544C4.37516 10.3381 4.65937 10.6224 4.94309 10.9071L4.94603 10.9115L4.95777 10.9276L5.00668 10.9961H5.18474L5.24883 10.9237L5.25421 10.9173L7.49902 8.67349L9.7453 10.9198L9.80841 10.9971H9.98744L10.0388 10.9286L10.051 10.9124L10.054 10.908C10.3377 10.6233 10.6219 10.3391 10.9066 10.0554L10.9105 10.0525L10.9276 10.0402L10.9956 9.98888V9.81131L10.9232 9.74967L10.9169 9.74429C10.1688 8.99782 9.42082 8.24954 8.67304 7.49948L10.9193 5.2532L10.9966 5.19107Z" fill="#007CBA"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.0 KiB |
@@ -0,0 +1,5 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M11.9996 23.9993C18.6269 23.9993 23.9993 18.6269 23.9993 11.9996C23.9993 5.37243 18.6269 0 11.9996 0C5.37243 0 0 5.37243 0 11.9996C0 18.6269 5.37243 23.9993 11.9996 23.9993Z" fill="#FBBF12"/>
|
||||
<path d="M19.5325 9.46872C19.4253 9.74367 19.2787 9.98266 18.9889 10.1032C18.9657 10.1131 18.948 10.154 18.941 10.1829C18.6329 11.4208 18.3284 12.6588 18.0189 13.8961C17.9484 14.1724 17.8017 14.2852 17.5113 14.2859C13.85 14.2958 10.1888 14.3047 6.52751 14.3127C6.23 14.3127 6.08337 14.1978 6.01287 13.913C5.71325 12.7089 5.41222 11.5047 5.12035 10.2985C5.11211 10.246 5.09098 10.1964 5.05887 10.1541C5.02676 10.1118 4.98467 10.0781 4.93635 10.056C4.7634 9.96536 4.62633 9.81873 4.54757 9.64007C4.46881 9.46142 4.45302 9.26132 4.50278 9.07252C4.55103 8.87846 4.66297 8.70618 4.82068 8.58323C4.97839 8.46029 5.17277 8.39377 5.37274 8.39432C5.57288 8.39767 5.76606 8.46837 5.92108 8.59501C6.07611 8.72164 6.18394 8.89681 6.22718 9.09226C6.26304 9.25021 6.25464 9.415 6.2029 9.56849C6.15115 9.72197 6.05808 9.85821 5.93391 9.96222C5.96634 9.99888 5.99242 10.0327 6.02274 10.063C6.36466 10.4071 6.70517 10.7525 7.0485 11.0951C7.7824 11.8269 8.85257 11.7663 9.48424 10.9464C10.1004 10.1469 10.7011 9.33619 11.3116 8.5332C11.3652 8.4627 11.3504 8.42322 11.3031 8.35836C11.0733 8.04253 11.0465 7.70413 11.246 7.36785C11.4455 7.03157 11.76 6.90185 12.1456 6.94486C12.4664 6.98081 12.7632 7.24659 12.8562 7.5864C12.8979 7.73042 12.9016 7.88278 12.8671 8.02867C12.8325 8.17456 12.7607 8.30902 12.6588 8.41899C12.6589 8.42929 12.6605 8.43952 12.6638 8.44931C13.306 9.30869 13.9327 10.1779 14.5961 11.0225C14.7286 11.1907 14.8948 11.3293 15.0839 11.4295C15.2731 11.5298 15.4811 11.5895 15.6946 11.6047C15.9082 11.62 16.1226 11.5905 16.324 11.5182C16.5255 11.4458 16.7097 11.3323 16.8648 11.1847C17.2786 10.7962 17.6642 10.3789 18.0633 9.97068C18.0015 9.89898 17.944 9.82365 17.8913 9.74508C17.7994 9.60458 17.7514 9.43993 17.7535 9.27208C17.7555 9.10423 17.8074 8.94078 17.9025 8.80251C17.9834 8.66659 18.1016 8.55674 18.2431 8.48601C18.3845 8.41528 18.5433 8.38664 18.7006 8.40348C19.0778 8.43168 19.3351 8.63119 19.4761 8.98369C19.4937 9.02881 19.5127 9.07322 19.5311 9.11764L19.5325 9.46872Z" fill="white"/>
|
||||
<path d="M12.03 17.0643C10.244 17.0643 8.45989 17.0643 6.67768 17.0643C6.5804 17.0683 6.4832 17.0547 6.39074 17.0242C6.3201 17.0001 6.25875 16.9545 6.21527 16.8938C6.17178 16.8331 6.14835 16.7604 6.14823 16.6858C6.14188 16.3234 6.13906 15.9603 6.14823 15.598C6.15237 15.4939 6.19628 15.3954 6.27092 15.3227C6.34555 15.25 6.44521 15.2088 6.54937 15.2074C6.59308 15.2074 6.63749 15.2074 6.6812 15.2074H17.371C17.7615 15.2074 17.9096 15.3562 17.9096 15.7495V16.5434C17.9096 16.9156 17.7587 17.0665 17.3823 17.0665H12.03V17.0643Z" fill="white"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.8 KiB |
|
After Width: | Height: | Size: 494 B |
|
After Width: | Height: | Size: 89 KiB |
@@ -0,0 +1,12 @@
|
||||
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g clip-path="url(#clip0_102_19)">
|
||||
<path d="M7.94 15H7.06H6.94C6.03007 14.9428 5.14006 14.7084 4.32 14.31C3.22522 13.8042 2.27043 13.0389 1.53851 12.0804C0.806589 11.1219 0.319663 9.99931 0.12 8.80998C0.06 8.51998 0 8.22998 0 7.93998V7.05998C0.00554549 7.01682 0.00554549 6.97314 0 6.92998C0.076614 5.90091 0.376938 4.90097 0.88 3.99998C1.47656 2.83087 2.37569 1.84312 3.48373 1.1396C4.59177 0.43608 5.86818 0.0425429 7.18 -1.99312e-05C8.51178 -0.0839062 9.83915 0.221878 11 0.87998C12.1692 1.47903 13.1568 2.38013 13.8602 3.48971C14.5635 4.5993 14.9571 5.87693 15 7.18998C15.0745 8.51779 14.7693 9.83936 14.12 11C13.5917 12.0125 12.8367 12.8894 11.914 13.5624C10.9912 14.2354 9.92555 14.6863 8.8 14.88C8.52 14.93 8.23 15 7.94 15ZM13.33 7.49998C13.33 6.34691 12.9881 5.21974 12.3475 4.26101C11.7069 3.30227 10.7963 2.55502 9.73104 2.11376C8.66575 1.6725 7.49353 1.55705 6.36262 1.782C5.23171 2.00695 4.19291 2.56221 3.37757 3.37755C2.56223 4.19289 2.00697 5.23169 1.78202 6.3626C1.55707 7.49351 1.67252 8.66573 2.11378 9.73102C2.55504 10.7963 3.30229 11.7068 4.26103 12.3474C5.21976 12.9881 6.34693 13.33 7.5 13.33C9.0454 13.3273 10.5267 12.7123 11.6195 11.6195C12.7123 10.5267 13.3274 9.04538 13.33 7.49998Z" fill="#007CBA"/>
|
||||
<path d="M3.65001 6.44C3.64462 6.4136 3.64462 6.38639 3.65001 6.36C3.67709 6.27454 3.7302 6.19967 3.80192 6.14588C3.87364 6.09209 3.96038 6.06206 4.05001 6.06H5.57001V10.87H4.19001C4.07004 10.885 3.94882 10.8543 3.85056 10.7838C3.75231 10.7134 3.68425 10.6084 3.66001 10.49L3.65001 6.44Z" fill="#007CBA"/>
|
||||
<path d="M6.05999 8.40002V7.16002C6.05638 6.85258 6.17093 6.55548 6.37999 6.33002L8.23999 4.25002C8.2793 4.1973 8.33485 4.15894 8.39809 4.14088C8.46133 4.12281 8.52875 4.12602 8.58999 4.15002L8.86999 4.22002C8.97816 4.24744 9.0786 4.29928 9.1636 4.37157C9.24861 4.44387 9.3159 4.53468 9.36033 4.63705C9.40475 4.73941 9.42511 4.8506 9.41985 4.96206C9.41459 5.07352 9.38385 5.1823 9.32999 5.28003L8.84999 6.14002C8.72999 6.35002 8.84999 6.53003 9.08999 6.53003H10.44C10.576 6.52771 10.7107 6.5566 10.8338 6.61448C10.9569 6.67236 11.0651 6.75769 11.1501 6.86392C11.2351 6.97014 11.2946 7.09443 11.324 7.22724C11.3535 7.36005 11.3521 7.49784 11.32 7.63002C11.16 8.40002 10.99 9.17002 10.82 9.94002C10.7627 10.1945 10.6227 10.4228 10.4218 10.5893C10.221 10.7557 9.97067 10.8509 9.70999 10.86H7.19999C6.89825 10.8474 6.61258 10.7206 6.40089 10.5052C6.18921 10.2898 6.06734 10.0019 6.05999 9.70002C6.05999 9.26002 6.05999 8.83002 6.05999 8.40002Z" fill="#007CBA"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_102_19">
|
||||
<rect width="15" height="15" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.6 KiB |
|
After Width: | Height: | Size: 35 KiB |
|
After Width: | Height: | Size: 8.3 KiB |
|
After Width: | Height: | Size: 310 B |
@@ -0,0 +1,25 @@
|
||||
<svg width="99" height="15" viewBox="0 0 99 15" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g clip-path="url(#clip0_418_846)">
|
||||
<path d="M8.92352 0H0.458326C0.398138 0 0.338539 0.0119505 0.282933 0.0351676C0.227326 0.0583847 0.1768 0.0924129 0.13424 0.135312C0.0916805 0.178212 0.057921 0.229143 0.0348879 0.285194C0.0118548 0.341245 0 0.401318 0 0.461987V2.2742C-5.96686e-08 2.33484 0.0118587 2.39489 0.0348997 2.4509C0.0579407 2.50692 0.0917114 2.5578 0.13428 2.60065C0.176848 2.6435 0.227378 2.67747 0.282981 2.70061C0.338584 2.72376 0.398168 2.73563 0.458326 2.73554H8.92352C9.04491 2.73554 9.16132 2.68694 9.24715 2.60042C9.33299 2.5139 9.38121 2.39656 9.38121 2.2742V0.461987C9.38129 0.401349 9.36951 0.341288 9.34655 0.285241C9.32359 0.229194 9.28989 0.17826 9.24738 0.135352C9.20487 0.092444 9.15439 0.0584045 9.09882 0.0351795C9.04325 0.0119544 8.98368 -6.01452e-08 8.92352 0Z" fill="#845DE2"/>
|
||||
<path d="M13.7369 4.25146H3.50095C3.3795 4.25146 3.26302 4.30005 3.17709 4.38655C3.09115 4.47305 3.04279 4.59039 3.04262 4.7128V6.52827C3.04279 6.65068 3.09115 6.76803 3.17709 6.85453C3.26302 6.94102 3.3795 6.98961 3.50095 6.98961H13.7369C13.797 6.98961 13.8565 6.97767 13.9121 6.95449C13.9676 6.9313 14.0181 6.89732 14.0606 6.85449C14.1031 6.81165 14.1368 6.76079 14.1598 6.70482C14.1828 6.64884 14.1946 6.58885 14.1946 6.52827V4.7128C14.1946 4.59045 14.1464 4.47311 14.0606 4.38659C13.9747 4.30007 13.8583 4.25146 13.7369 4.25146Z" fill="#6E55FF"/>
|
||||
<path d="M13.7369 8.50226H11.3589C11.2375 8.50243 11.1211 8.55118 11.0352 8.6378C10.9494 8.72442 10.9012 8.84184 10.9012 8.96425V10.7791C10.9011 10.8397 10.9129 10.8998 10.9359 10.9558C10.9588 11.0119 10.9925 11.0628 11.0351 11.1057C11.0776 11.1486 11.128 11.1826 11.1836 11.2059C11.2392 11.2291 11.2988 11.2411 11.3589 11.2411H13.7369C13.8585 11.2411 13.9751 11.1924 14.061 11.1057C14.147 11.0191 14.1953 10.9016 14.1953 10.7791V8.96685C14.1956 8.90596 14.184 8.84561 14.1611 8.78925C14.1382 8.7329 14.1045 8.68167 14.0619 8.63849C14.0193 8.59532 13.9687 8.56105 13.9129 8.53767C13.8571 8.51429 13.7973 8.50226 13.7369 8.50226Z" fill="#6E55FF"/>
|
||||
<path d="M8.92352 8.50226H6.54357C6.42195 8.50295 6.30558 8.55226 6.22001 8.63937C6.13444 8.72648 6.08666 8.84426 6.08718 8.96685V10.7817C6.08718 10.9042 6.13546 11.0217 6.22142 11.1083C6.30737 11.195 6.42395 11.2436 6.5455 11.2436H8.92352C8.98368 11.2436 9.04325 11.2317 9.09882 11.2085C9.15439 11.1852 9.20487 11.1512 9.24738 11.1083C9.28989 11.0654 9.32359 11.0145 9.34655 10.9584C9.36951 10.9024 9.38129 10.8423 9.3812 10.7817V8.96685C9.38154 8.90601 9.36996 8.84571 9.34712 8.78941C9.32428 8.7331 9.29063 8.68189 9.24811 8.63872C9.20558 8.59555 9.15502 8.56128 9.09932 8.53786C9.04361 8.51444 8.98387 8.50234 8.92352 8.50226Z" fill="#6E55FF"/>
|
||||
<path d="M13.7369 0H11.3589C11.2988 -6.01452e-08 11.2392 0.0119544 11.1836 0.0351795C11.128 0.0584045 11.0776 0.092444 11.0351 0.135352C10.9925 0.17826 10.9588 0.229194 10.9359 0.285241C10.9129 0.341288 10.9011 0.401349 10.9012 0.461987V2.2742C10.9012 2.33479 10.9131 2.39478 10.9361 2.45075C10.9591 2.50672 10.9928 2.55758 11.0353 2.60042C11.0778 2.64326 11.1282 2.67724 11.1838 2.70042C11.2393 2.72361 11.2988 2.73554 11.3589 2.73554H13.7369C13.7971 2.73563 13.8567 2.72376 13.9123 2.70061C13.9679 2.67747 14.0184 2.6435 14.061 2.60065C14.1035 2.5578 14.1373 2.50692 14.1604 2.4509C14.1834 2.39489 14.1953 2.33484 14.1953 2.2742V0.461987C14.1953 0.33946 14.147 0.221952 14.061 0.135312C13.9751 0.0486728 13.8585 0 13.7369 0Z" fill="#6E55FF"/>
|
||||
<path d="M25.9751 0.632202H28.0005C28.0266 0.632202 28.0525 0.637399 28.0766 0.647497C28.1008 0.657595 28.1227 0.672395 28.1411 0.691048C28.1596 0.709701 28.1742 0.73184 28.1841 0.756196C28.1941 0.780552 28.1991 0.806646 28.1991 0.832982V4.30277C28.6806 3.61726 29.545 3.14617 30.6364 3.14617C32.4362 3.14617 33.6403 4.40283 33.6403 6.54578V11.0013C33.6404 11.0276 33.6353 11.0537 33.6254 11.0781C33.6154 11.1024 33.6008 11.1246 33.5824 11.1432C33.5639 11.1619 33.542 11.1767 33.5179 11.1868C33.4938 11.1969 33.4679 11.2021 33.4418 11.2021H31.4305C31.3777 11.2021 31.3271 11.1809 31.2897 11.1432C31.2523 11.1056 31.2314 11.0545 31.2314 11.0013V6.87392C31.2314 5.78879 30.6364 5.18841 29.7152 5.18841C28.794 5.18841 28.1978 5.78879 28.1978 6.87392V11.0013C28.1978 11.0276 28.1928 11.0537 28.1828 11.0781C28.1729 11.1024 28.1583 11.1246 28.1398 11.1432C28.1214 11.1619 28.0995 11.1767 28.0753 11.1868C28.0512 11.1969 28.0253 11.2021 27.9992 11.2021H25.9751C25.9223 11.2021 25.8716 11.1809 25.8342 11.1432C25.7969 11.1056 25.7759 11.0545 25.7759 11.0013V0.832982C25.7759 0.779732 25.7969 0.728662 25.8342 0.691008C25.8716 0.653355 25.9223 0.632202 25.9751 0.632202Z" fill="#172351"/>
|
||||
<path d="M38.8399 11.1865C36.516 11.1865 34.8432 9.61535 34.8432 7.08709C34.8432 4.55882 36.487 2.98767 38.8399 2.98767C41.1496 2.98767 42.7792 4.53023 42.7792 6.95843C42.7792 7.13062 42.7708 7.31061 42.7547 7.49254C42.75 7.54195 42.7272 7.5878 42.6907 7.62111C42.6542 7.65441 42.6066 7.67275 42.5574 7.67253H37.2528C37.3379 8.71217 37.9754 9.20079 38.7548 9.20079C39.2892 9.20079 39.6398 8.98897 39.8616 8.69072C39.9184 8.6116 39.9927 8.54691 40.0787 8.50179C40.1646 8.45667 40.2598 8.43237 40.3567 8.43082H42.3292C42.3603 8.43098 42.391 8.43847 42.4187 8.45268C42.4464 8.4669 42.4705 8.48744 42.489 8.51268C42.5074 8.53793 42.5198 8.56717 42.5251 8.59808C42.5304 8.62899 42.5284 8.66071 42.5194 8.69072C42.0501 10.1196 40.697 11.1865 38.8399 11.1865ZM37.267 6.3132H40.2967C40.2967 5.44186 39.6166 4.94219 38.8089 4.94219C38.018 4.94478 37.4088 5.43017 37.267 6.31581V6.3132Z" fill="#172351"/>
|
||||
<path d="M54.9497 6.87392C54.9497 5.83429 54.3547 5.25989 53.4335 5.25989C52.5123 5.25989 51.9174 5.83169 51.9174 6.87392V11.0013C51.9174 11.0545 51.8964 11.1056 51.859 11.1432C51.8217 11.1809 51.771 11.2021 51.7182 11.2021H49.7069C49.6808 11.2021 49.6549 11.1969 49.6308 11.1868C49.6067 11.1767 49.5848 11.1619 49.5663 11.1432C49.5479 11.1246 49.5333 11.1024 49.5233 11.0781C49.5134 11.0537 49.5083 11.0276 49.5084 11.0013V6.87392C49.5084 5.83429 48.9134 5.25989 47.9922 5.25989C47.0711 5.25989 46.4761 5.83169 46.4761 6.87392V11.0013C46.4761 11.0545 46.4551 11.1056 46.4177 11.1432C46.3804 11.1809 46.3297 11.2021 46.2769 11.2021H44.2521C44.226 11.2021 44.2001 11.1969 44.176 11.1868C44.1519 11.1767 44.13 11.1619 44.1115 11.1432C44.0931 11.1246 44.0785 11.1024 44.0685 11.0781C44.0586 11.0537 44.0535 11.0276 44.0536 11.0013V3.43208C44.0536 3.379 44.0745 3.3281 44.1117 3.29057C44.149 3.25303 44.1995 3.23195 44.2521 3.23195H46.2775C46.3037 3.23186 46.3296 3.23698 46.3537 3.247C46.3779 3.25702 46.3998 3.27174 46.4184 3.29034C46.4369 3.30893 46.4515 3.33102 46.4616 3.35534C46.4716 3.37966 46.4767 3.40574 46.4767 3.43208V4.23195C46.9441 3.58867 47.7518 3.14618 48.7864 3.14618C49.9764 3.14618 50.9401 3.67444 51.4784 4.63156C51.7638 4.17916 52.1573 3.80615 52.6227 3.54666C53.0881 3.28716 53.6107 3.14947 54.1426 3.14618C56.0977 3.14618 57.3593 4.40284 57.3593 6.54579V11.0013C57.3593 11.0545 57.3383 11.1056 57.3009 11.1432C57.2636 11.1809 57.2129 11.2021 57.1601 11.2021H55.1489C55.1227 11.2021 55.0969 11.1969 55.0727 11.1868C55.0486 11.1767 55.0267 11.1619 55.0082 11.1432C54.9898 11.1246 54.9752 11.1024 54.9652 11.0781C54.9553 11.0537 54.9502 11.0276 54.9503 11.0013L54.9497 6.87392Z" fill="#172351"/>
|
||||
<path d="M62.5723 11.1865C60.2517 11.1865 58.5757 9.61535 58.5757 7.08709C58.5757 4.55882 60.2194 2.98767 62.5723 2.98767C64.882 2.98767 66.5116 4.53023 66.5116 6.95843C66.5116 7.13062 66.5032 7.31061 66.4871 7.49254C66.4826 7.542 66.4598 7.58795 66.4233 7.62128C66.3868 7.65461 66.3391 7.6729 66.2899 7.67253H60.9853C61.0703 8.71217 61.7079 9.20079 62.4872 9.20079C63.1145 9.20079 63.489 8.90905 63.6985 8.52828C63.7156 8.4979 63.7404 8.47271 63.7705 8.45534C63.8005 8.43797 63.8347 8.42904 63.8693 8.42951H66.061C66.0921 8.42968 66.1228 8.43717 66.1505 8.45138C66.1783 8.4656 66.2023 8.48614 66.2208 8.51139C66.2393 8.53663 66.2516 8.56587 66.2569 8.59678C66.2622 8.62769 66.2602 8.65941 66.2512 8.68942C65.7825 10.1196 64.4295 11.1865 62.5723 11.1865ZM60.9994 6.3132H64.0292C64.0292 5.44186 63.3491 4.94219 62.5414 4.94219C61.7504 4.94478 61.1413 5.43017 60.9994 6.31581V6.3132Z" fill="#172351"/>
|
||||
<path d="M67.9846 0.632202H70.0106C70.0368 0.632202 70.0626 0.637399 70.0868 0.647497C70.1109 0.657595 70.1328 0.672395 70.1513 0.691048C70.1697 0.709701 70.1843 0.73184 70.1943 0.756196C70.2042 0.780552 70.2093 0.806646 70.2092 0.832982V4.30277C70.6907 3.61726 71.5552 3.14617 72.6465 3.14617C74.4456 3.14617 75.6504 4.40283 75.6504 6.54578V11.0013C75.6504 11.0545 75.6295 11.1056 75.5921 11.1432C75.5548 11.1809 75.5041 11.2021 75.4513 11.2021H73.44C73.4139 11.2021 73.388 11.1969 73.3639 11.1868C73.3398 11.1767 73.3179 11.1619 73.2994 11.1432C73.281 11.1246 73.2664 11.1024 73.2564 11.0781C73.2465 11.0537 73.2414 11.0276 73.2415 11.0013V6.87392C73.2415 5.78879 72.6465 5.18841 71.7253 5.18841C70.8042 5.18841 70.2092 5.78879 70.2092 6.87392V11.0013C70.2093 11.0276 70.2042 11.0537 70.1943 11.0781C70.1843 11.1024 70.1697 11.1246 70.1513 11.1432C70.1328 11.1619 70.1109 11.1767 70.0868 11.1868C70.0626 11.1969 70.0368 11.2021 70.0106 11.2021H67.9846C67.9585 11.2021 67.9326 11.1969 67.9085 11.1868C67.8843 11.1767 67.8624 11.1619 67.844 11.1432C67.8255 11.1246 67.8109 11.1024 67.801 11.0781C67.791 11.0537 67.786 11.0276 67.786 11.0013V0.832982C67.786 0.806646 67.791 0.780552 67.801 0.756196C67.8109 0.73184 67.8255 0.709701 67.844 0.691048C67.8624 0.672395 67.8843 0.657595 67.9085 0.647497C67.9326 0.637399 67.9585 0.632202 67.9846 0.632202Z" fill="#172351"/>
|
||||
<path d="M79.5601 3.23199H77.534C77.4244 3.23199 77.3355 3.3216 77.3355 3.43212V11.002C77.3355 11.1125 77.4244 11.2021 77.534 11.2021H79.5601C79.6697 11.2021 79.7586 11.1125 79.7586 11.002V3.43212C79.7586 3.3216 79.6697 3.23199 79.5601 3.23199Z" fill="#172351"/>
|
||||
<path d="M84.5192 2.98895C85.6795 2.98895 86.5317 3.51722 86.9565 4.23197V3.30214C86.9565 3.27581 86.9616 3.24973 86.9717 3.22541C86.9817 3.20108 86.9964 3.17899 87.0149 3.1604C87.0334 3.14181 87.0553 3.12708 87.0795 3.11706C87.1037 3.10704 87.1295 3.10193 87.1557 3.10201H89.1792C89.2318 3.10201 89.2823 3.1231 89.3195 3.16063C89.3568 3.19816 89.3777 3.24907 89.3777 3.30214V11.0578C89.3777 13.1858 88.1594 15 85.4242 15C83.168 15 81.6725 13.8993 81.3631 12.1377C81.3581 12.109 81.3593 12.0795 81.3666 12.0513C81.3739 12.0231 81.3873 11.9968 81.4056 11.9743C81.424 11.9518 81.447 11.9335 81.473 11.9208C81.4991 11.9081 81.5275 11.9012 81.5565 11.9006H83.5774C83.6169 11.9 83.6556 11.9117 83.6883 11.934C83.7211 11.9563 83.7462 11.9882 83.7604 12.0253C83.9629 12.553 84.534 12.8856 85.3075 12.8856C86.2287 12.8856 86.9513 12.4003 86.9513 11.0578V9.92917C86.5123 10.629 85.6763 11.1865 84.514 11.1865C82.573 11.1865 81.0285 9.58674 81.0285 7.07277C81.0285 4.5588 82.5782 2.98895 84.5192 2.98895ZM85.2283 5.11696C84.3213 5.11696 83.5 5.80312 83.5 7.07407C83.5 8.34503 84.3213 9.05913 85.2283 9.05913C86.1494 9.05913 86.9571 8.35932 86.9571 7.08837C86.9571 5.81741 86.1494 5.11566 85.2276 5.11566L85.2283 5.11696Z" fill="#172351"/>
|
||||
<path d="M91.3348 0.632202H93.3602C93.3863 0.632202 93.4122 0.637399 93.4363 0.647497C93.4604 0.657595 93.4824 0.672395 93.5008 0.691048C93.5192 0.709701 93.5339 0.73184 93.5438 0.756196C93.5537 0.780552 93.5588 0.806646 93.5587 0.832982V4.30277C94.0403 3.61726 94.9047 3.14617 95.9961 3.14617C97.7958 3.14617 99 4.40283 99 6.54578V11.0013C99.0001 11.0276 98.995 11.0537 98.9851 11.0781C98.9751 11.1024 98.9605 11.1246 98.9421 11.1432C98.9236 11.1619 98.9017 11.1767 98.8776 11.1868C98.8534 11.1969 98.8276 11.2021 98.8015 11.2021H96.7902C96.7374 11.2021 96.6867 11.1809 96.6494 11.1432C96.612 11.1056 96.591 11.0545 96.591 11.0013V6.87392C96.591 5.78879 95.9961 5.18841 95.0749 5.18841C94.1537 5.18841 93.5587 5.78879 93.5587 6.87392V11.0013C93.5588 11.0276 93.5537 11.0537 93.5438 11.0781C93.5339 11.1024 93.5192 11.1246 93.5008 11.1432C93.4824 11.1619 93.4604 11.1767 93.4363 11.1868C93.4122 11.1969 93.3863 11.2021 93.3602 11.2021H91.3348C91.2819 11.2021 91.2313 11.1809 91.1939 11.1432C91.1566 11.1056 91.1356 11.0545 91.1356 11.0013V0.832982C91.1356 0.779732 91.1566 0.728662 91.1939 0.691008C91.2313 0.653355 91.2819 0.632202 91.3348 0.632202Z" fill="#172351"/>
|
||||
<path d="M24.4312 9.33071V11.0019C24.4311 11.0551 24.41 11.106 24.3727 11.1435C24.3353 11.181 24.2848 11.2021 24.232 11.2021H23.2006C21.5562 11.2021 20.4081 10.5016 20.4081 8.43142V0.832982C20.4081 0.779732 20.4291 0.728662 20.4665 0.691008C20.5038 0.653355 20.5545 0.632202 20.6073 0.632202H22.6321C22.6849 0.632202 22.7356 0.653355 22.7729 0.691008C22.8103 0.728662 22.8313 0.779732 22.8313 0.832982V2.70368V5.45806V8.46001C22.8313 8.9298 23.0298 9.13058 23.5681 9.13058H24.2346C24.2869 9.13126 24.3368 9.15262 24.3736 9.19006C24.4104 9.2275 24.4311 9.27802 24.4312 9.33071Z" fill="#172351"/>
|
||||
<path d="M79.5839 0.00781582H77.5115C77.4431 0.00781582 77.3775 0.0351988 77.3292 0.0839412C77.2808 0.132684 77.2536 0.198793 77.2536 0.267725V1.9019C77.2536 1.97083 77.2808 2.03694 77.3292 2.08569C77.3775 2.13443 77.4431 2.16181 77.5115 2.16181H79.5852C79.6536 2.16181 79.7192 2.13443 79.7676 2.08569C79.8159 2.03694 79.8431 1.97083 79.8431 1.9019V0.265125C79.8424 0.196419 79.8148 0.13078 79.7662 0.0825611C79.7176 0.0343425 79.6521 0.00746884 79.5839 0.00781582Z" fill="#172351"/>
|
||||
<path d="M24.6936 3.86096H23.2922C23.1968 3.86096 23.1194 3.96298 23.1194 4.08838V5.53218C23.1194 5.65823 23.1968 5.76025 23.2922 5.76025H24.6936C24.7896 5.76025 24.867 5.65823 24.867 5.53218V4.08838C24.867 3.96363 24.7896 3.86096 24.6936 3.86096Z" fill="#172351"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_418_846">
|
||||
<rect width="99" height="15" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 3.6 KiB |
@@ -0,0 +1,49 @@
|
||||
<svg width="499" height="155" viewBox="0 0 499 155" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<mask id="mask0_925_29" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="499" height="155">
|
||||
<rect width="499" height="155" fill="#D9D9D9"/>
|
||||
</mask>
|
||||
<g mask="url(#mask0_925_29)">
|
||||
<g clip-path="url(#clip0_925_29)">
|
||||
<path d="M61.2589 143.323C60.8749 143.552 60.5494 143.867 60.3079 144.243C60.0665 144.62 59.9156 145.047 59.8674 145.491C61.3538 146.002 62.7054 146.843 63.8215 147.95C64.1284 147.088 64.7329 146.364 65.5261 145.909C64.2954 144.764 62.8431 143.884 61.2589 143.323Z" fill="white"/>
|
||||
<path d="M436.771 108.571C435.253 107.468 433.554 106.64 431.75 106.124C431.44 107.235 431.44 108.41 431.75 109.522C432.912 109.649 433.999 110.154 434.846 110.96C434.97 110.444 435.207 109.962 435.54 109.549C435.873 109.136 436.293 108.802 436.771 108.571Z" fill="white"/>
|
||||
<path d="M423.171 41.5307C421.621 40.9787 419.95 40.8545 418.336 41.1712C417.953 42.0989 417.896 43.1289 418.173 44.0933C419.764 43.7612 421.416 43.9023 422.927 44.4991C422.712 44.0245 422.621 43.5028 422.664 42.9833C422.706 42.4638 422.881 41.9638 423.171 41.5307Z" fill="white"/>
|
||||
<path d="M261.828 60.7274C261.524 60.6017 261.196 60.5477 260.868 60.5699C260.54 60.592 260.222 60.6895 259.938 60.8549C260.291 61.9547 260.391 63.1204 260.228 64.264C260.869 64.0647 261.56 64.1017 262.176 64.3684C262.308 63.1437 262.19 61.905 261.828 60.7274Z" fill="white"/>
|
||||
<path d="M122.414 122.717C122.11 122.958 121.758 123.132 121.382 123.228C121.922 123.775 122.383 124.396 122.75 125.071C123.133 125.074 123.504 124.938 123.794 124.689C123.413 123.98 122.95 123.318 122.414 122.717Z" fill="white"/>
|
||||
<path d="M93 71.064C93.5852 71.3141 94.0564 71.7728 94.3219 72.3511C94.9254 71.5483 95.3917 70.651 95.7018 69.6957C95.2069 69.3526 94.6462 69.1157 94.0552 69C93.8692 69.7609 93.5079 70.4677 93 71.064Z" fill="white"/>
|
||||
<path d="M305.196 126.88C304.946 126.86 304.694 126.905 304.467 127.01C304.239 127.116 304.043 127.279 303.897 127.483C303.949 127.965 304.156 128.417 304.488 128.77C305.085 128.628 305.71 128.665 306.286 128.875C305.794 128.288 305.424 127.611 305.196 126.88Z" fill="white"/>
|
||||
<path d="M177.832 95.6902C178.177 95.6756 178.512 95.5717 178.805 95.3888C179.097 95.2059 179.338 94.9501 179.502 94.6466C179.352 93.9978 178.988 93.4181 178.47 93C177.679 93.2877 176.822 93.344 176 93.1623C176.774 93.8734 177.397 94.7331 177.832 95.6902Z" fill="white"/>
|
||||
<path d="M369.169 138.441C369.043 138.79 369.043 139.171 369.169 139.519C370.302 139.219 371.481 139.129 372.647 139.253C372.573 138.91 372.61 138.553 372.752 138.232C371.556 138.051 370.335 138.122 369.169 138.441Z" fill="white"/>
|
||||
<path d="M191.895 127.901C192.128 128.622 192.485 129.297 192.95 129.895C193.315 129.605 193.598 129.225 193.774 128.794C193.423 128.472 193.187 128.044 193.101 127.576C192.937 127.717 192.743 127.819 192.535 127.875C192.326 127.931 192.108 127.94 191.895 127.901Z" fill="white"/>
|
||||
<path d="M160.343 49.3869C160.155 49.6966 160.07 50.0578 160.1 50.4189C160.491 50.3392 160.898 50.388 161.259 50.558C161.447 50.2728 161.577 49.9538 161.642 49.6188C161.198 49.6305 160.756 49.5516 160.343 49.3869Z" fill="white"/>
|
||||
<path d="M382.515 97.1144C383.984 97.2149 385.389 97.7519 386.55 98.6566C386.875 97.9841 387.165 97.613 387.629 97.497C386.403 96.4041 384.897 95.6735 383.28 95.3866C382.877 95.8846 382.613 96.4809 382.515 97.1144Z" fill="white"/>
|
||||
<path d="M165.318 70.1662C164.827 69.7533 164.431 69.2391 164.158 68.6588C163.453 69.7335 162.607 70.7085 161.642 71.5577C161.766 72.1896 162.121 72.7522 162.639 73.1347C163.648 72.256 164.547 71.2593 165.318 70.1662Z" fill="white"/>
|
||||
<path d="M127.302 39.3511C126.197 38.4248 125.29 37.285 124.635 36C123.939 36.321 123.366 36.8578 123 37.5306C123.655 38.8544 124.503 40.0737 125.516 41.1485C125.957 40.0585 126.363 39.5135 127.302 39.3511Z" fill="white"/>
|
||||
<path d="M289.078 90.0643C289.69 90.47 290.369 90.7644 291.084 90.9339C291.2 90.497 291.2 90.0374 291.084 89.6004C290.626 89.569 290.19 89.39 289.843 89.0902C289.797 89.2997 289.704 89.496 289.572 89.6647C289.439 89.8333 289.27 89.9699 289.078 90.0643Z" fill="white"/>
|
||||
<path d="M145.988 82.0285C146.075 81.9775 146.172 81.9459 146.272 81.9359C146.372 81.9259 146.473 81.9377 146.568 81.9705C146.559 81.4248 146.477 80.8828 146.324 80.3587C146.083 80.3171 145.835 80.3411 145.605 80.4283C145.87 80.9192 146.002 81.4709 145.988 82.0285Z" fill="white"/>
|
||||
<path d="M54.9858 88.5684C55.4056 88.5831 55.8168 88.4474 56.1454 88.1858C55.4872 87.0281 55.036 85.7646 54.8119 84.452C54.4584 84.6459 54.05 84.7153 53.6523 84.6491C53.8171 86.0346 54.2714 87.3699 54.9858 88.5684Z" fill="white"/>
|
||||
<path d="M81.957 130.834C82.265 131.228 82.4845 131.684 82.6006 132.17C82.7166 132.656 82.7265 133.162 82.6296 133.652C85.3061 133.257 87.9113 132.475 90.3638 131.333C90.4337 130.126 90.1731 128.924 89.6102 127.854C87.3613 129.496 84.7236 130.523 81.957 130.834Z" fill="#FF0E41"/>
|
||||
<path d="M390.133 128.736C390.725 129.895 391.722 130.44 393.473 130.881C394.251 128.586 395.548 126.503 397.265 124.793C395.93 124.32 394.81 123.381 394.111 122.149C392.348 124.049 390.994 126.291 390.133 128.736Z" fill="#FFAF00"/>
|
||||
<path d="M100.899 95.0071C100.36 94.9733 99.8203 95.0598 99.3189 95.2604C98.8175 95.461 98.367 95.7705 98 96.1667C98.4921 97.8852 98.7762 99.6565 98.8465 101.443C99.3746 101.194 99.9568 101.082 100.539 101.118C100.348 99.0746 100.469 97.014 100.899 95.0071Z" fill="#FF41AA"/>
|
||||
<path d="M130.345 112.641C128.643 114.981 127.367 117.603 126.577 120.387C128.289 120.855 130.095 120.855 131.806 120.387C131.922 118.555 132.688 117.36 134.033 115.598C133.237 115.409 132.494 115.046 131.856 114.535C131.218 114.024 130.702 113.377 130.345 112.641Z" fill="#FFAF00"/>
|
||||
<path d="M387.501 153.759C387.928 153.497 388.407 153.331 388.904 153.272C388.299 152.489 387.803 151.627 387.432 150.709C386.94 150.641 386.44 150.757 386.029 151.034C386.41 151.997 386.904 152.912 387.501 153.759Z" fill="#00D339"/>
|
||||
<path d="M353.967 149.445C354.826 149.726 355.737 149.815 356.635 149.705C357.533 149.594 358.395 149.288 359.162 148.808C359.075 145.802 359.347 142.797 359.973 139.856C359.012 140.048 358.017 139.988 357.086 139.682C356.545 143.075 355.493 146.367 353.967 149.445Z" fill="#FF0E41"/>
|
||||
<path d="M242.725 125.953C243.959 124.228 244.885 122.301 245.462 120.26C244.202 119.913 242.872 119.913 241.612 120.26C241.469 121.564 240.903 122.786 240 123.739C240.589 123.884 241.139 124.158 241.61 124.541C242.082 124.924 242.462 125.406 242.725 125.953Z" fill="#FF0E41"/>
|
||||
<path d="M325.465 149.573C324.552 151.178 324.095 153.003 324.143 154.849C325.102 155.456 326.239 155.718 327.366 155.591C327.286 153.768 327.754 151.962 328.711 150.408C328.144 150.553 327.548 150.553 326.981 150.407C326.413 150.261 325.892 149.974 325.465 149.573Z" fill="#00D339"/>
|
||||
<path d="M255.045 144.065C254.265 144.069 253.51 144.334 252.899 144.819C252.832 145.367 252.683 145.902 252.459 146.407C252.969 146.233 253.317 146.407 253.908 146.86C254.132 145.872 254.516 144.928 255.045 144.065Z" fill="#008DF0"/>
|
||||
<path d="M279.903 132.693C278.407 133.087 276.749 132.855 273.467 131C272.891 132.605 272.847 134.353 273.34 135.986C275.533 136.996 277.948 137.427 280.355 137.238C279.718 135.812 279.56 134.217 279.903 132.693Z" fill="#00D339"/>
|
||||
<path d="M121.591 158.444C122.043 155.591 122.449 154.142 123.968 152.217C123.56 152.085 123.184 151.871 122.863 151.588C122.542 151.304 122.282 150.958 122.101 150.57C120.416 152.454 119.291 154.771 118.854 157.261C119.643 157.895 120.589 158.303 121.591 158.444Z" fill="#008DF0"/>
|
||||
<path d="M336 114.041C336.229 114.358 336.386 114.722 336.461 115.107C336.535 115.491 336.524 115.887 336.429 116.267C338.54 116.061 340.61 115.549 342.575 114.748C342.673 113.806 342.508 112.855 342.099 112C340.276 113.194 338.175 113.897 336 114.041Z" fill="#FF41AA"/>
|
||||
<path d="M178.514 126.927C178.175 126.665 177.897 126.334 177.697 125.956C177.497 125.578 177.38 125.162 177.354 124.735C175.223 125.606 173.228 126.777 171.429 128.214C171.625 129.228 172.094 130.17 172.785 130.939C174.311 129.123 176.286 127.74 178.514 126.927Z" fill="#00D339"/>
|
||||
<path d="M378.677 107.145C378.44 107.351 378.262 107.616 378.16 107.913C378.058 108.21 378.036 108.529 378.097 108.838C378.576 109.216 379.169 109.42 379.779 109.417C380.173 108.76 380.743 108.225 381.425 107.875C380.47 107.816 379.536 107.568 378.677 107.145Z" fill="#FF41AA"/>
|
||||
<path d="M421.133 143.99C421.039 143.99 420.947 143.965 420.867 143.92C420.787 143.874 420.722 143.809 420.679 143.732C420.647 143.676 420.628 143.615 420.622 143.552C420.617 143.49 420.625 143.426 420.646 143.367C420.667 143.307 420.701 143.252 420.746 143.204C420.79 143.157 420.845 143.118 420.906 143.091C423.369 141.914 424.874 138.985 424.925 135.263C424.948 134.443 424.862 133.623 424.668 132.823C424.283 133.283 423.796 133.661 423.239 133.931C422.682 134.2 422.069 134.354 421.442 134.382C420.958 134.375 420.481 134.277 420.04 134.092C419.598 133.908 419.202 133.642 418.876 133.311C418.594 133.037 418.381 132.709 418.251 132.35C418.121 131.991 418.077 131.61 418.123 131.234C418.194 130.772 418.401 130.338 418.721 129.978C419.041 129.618 419.462 129.348 419.937 129.196C420.573 128.954 421.267 128.872 421.948 128.956C422.63 129.04 423.276 129.287 423.822 129.674C424.177 129.95 424.486 130.272 424.74 130.631C425.471 128.162 424.018 125.464 423.029 123.99C422.555 123.301 421.998 122.622 421.534 121.961C420.196 120.381 419.129 118.619 418.371 116.736C417.402 113.865 418.298 110.124 421.462 109.033C421.526 109.01 421.594 108.999 421.662 109C421.73 109.002 421.797 109.016 421.86 109.042C421.922 109.067 421.978 109.104 422.025 109.151C422.072 109.197 422.108 109.251 422.132 109.31C422.179 109.43 422.172 109.561 422.114 109.676C422.056 109.791 421.951 109.88 421.823 109.923C419.339 110.794 418.556 113.999 419.391 116.449C420.109 118.239 421.128 119.912 422.411 121.406C422.916 122.076 423.441 122.775 423.925 123.483C425.142 125.263 426.935 128.717 425.42 131.78C425.843 132.911 426.035 134.105 425.987 135.301C425.925 139.387 424.214 142.631 421.401 143.971C421.315 144.001 421.222 144.008 421.133 143.99ZM421.442 129.885C421.057 129.884 420.675 129.952 420.318 130.086C420.018 130.178 419.75 130.344 419.543 130.567C419.336 130.789 419.198 131.059 419.144 131.349C419.118 131.589 419.149 131.832 419.234 132.06C419.32 132.288 419.458 132.496 419.638 132.67C419.865 132.901 420.139 133.088 420.446 133.218C420.752 133.348 421.084 133.418 421.421 133.426C422.008 133.38 422.574 133.2 423.067 132.901C423.56 132.602 423.965 132.193 424.245 131.713C424.008 131.217 423.656 130.775 423.214 130.421C422.71 130.054 422.082 129.864 421.442 129.885Z" fill="#FFAF00"/>
|
||||
</g>
|
||||
</g>
|
||||
<path d="M452.815 94.9984C452.273 95.0158 451.735 94.8904 451.253 94.6341C450.77 94.3778 450.36 93.9992 450.06 93.5341C450.033 93.4891 450.014 93.4389 450.005 93.3865C449.997 93.334 449.999 93.2803 450.01 93.2286C450.022 93.1768 450.044 93.128 450.074 93.0849C450.105 93.0419 450.143 93.0055 450.188 92.9779C450.232 92.9493 450.281 92.93 450.333 92.9212C450.385 92.9123 450.438 92.914 450.489 92.9261C450.54 92.9383 450.588 92.9607 450.631 92.992C450.673 93.0234 450.709 93.063 450.737 93.1088C451.143 93.6533 451.732 94.0224 452.389 94.1435C453.047 94.2646 453.724 94.1289 454.289 93.7632C454.872 93.3458 455.351 92.7924 455.686 92.1483C456.021 91.5041 456.203 90.7876 456.216 90.0575C456.234 88.5143 455.997 86.9793 455.515 85.5174C454.958 85.7275 454.372 85.8462 453.779 85.8691C452.874 85.9159 451.983 85.6254 451.271 85.0511C450.894 84.7379 450.621 84.3124 450.49 83.8333C450.359 83.3542 450.376 82.8451 450.538 82.3761C450.661 82.0807 450.851 81.8198 451.092 81.6149C451.333 81.41 451.618 81.2672 451.924 81.1981C452.344 81.0867 452.784 81.0744 453.211 81.1622C453.637 81.2501 454.038 81.4357 454.384 81.7053C455.158 82.3985 455.712 83.3127 455.977 84.3312C456.945 83.6934 457.746 82.823 458.312 81.7953C458.878 80.7675 459.192 79.6135 459.226 78.4332C459.29 74.8747 457.148 71.7171 455.34 69.6966C455.302 69.6598 455.272 69.6155 455.251 69.5663C455.23 69.517 455.219 69.4639 455.219 69.4103C455.219 69.3566 455.23 69.3035 455.251 69.2543C455.272 69.205 455.302 69.1607 455.34 69.1239C455.376 69.0848 455.419 69.0536 455.467 69.0323C455.515 69.011 455.566 69 455.619 69C455.671 69 455.723 69.011 455.771 69.0323C455.819 69.0536 455.862 69.0848 455.897 69.1239C457.809 71.2508 460.062 74.5966 459.999 78.425C459.971 79.7758 459.609 81.0972 458.947 82.2649C458.286 83.4326 457.346 84.4083 456.216 85.1002C456.233 85.1481 456.246 85.1974 456.256 85.2474C456.768 86.7955 457.015 88.4228 456.988 90.0575C456.969 90.9195 456.749 91.7642 456.348 92.5213C455.946 93.2783 455.374 93.9257 454.679 94.4094C454.122 94.7781 453.478 94.9819 452.815 94.9984ZM452.616 81.9098C452.447 81.9104 452.279 81.9324 452.115 81.9753C451.93 82.0175 451.756 82.1029 451.609 82.2249C451.461 82.3469 451.343 82.5022 451.263 82.6788C451.166 82.9876 451.164 83.3193 451.256 83.6294C451.349 83.9394 451.532 84.2129 451.78 84.413C452.345 84.8467 453.044 85.0559 453.747 85.002C454.271 84.9853 454.788 84.8775 455.276 84.683C455.054 83.7776 454.571 82.9622 453.891 82.3434C453.528 82.0701 453.09 81.9238 452.64 81.9262L452.616 81.9098Z" fill="#FF41AA"/>
|
||||
<path d="M26.5901 94.993C26.5186 94.9947 26.4486 94.9728 26.3906 94.9309C26.3327 94.8889 26.2901 94.8291 26.2693 94.7606C26.2544 94.718 26.2484 94.6729 26.2514 94.6279C26.2544 94.5829 26.2665 94.5389 26.2869 94.4987C26.3073 94.4585 26.3356 94.4228 26.3701 94.3938C26.4046 94.3648 26.4446 94.3431 26.4877 94.33C27.412 94.0244 28.2271 93.4555 28.8334 92.693C29.4397 91.9305 29.8107 91.0075 29.901 90.0371C29.9249 89.7573 29.9249 89.476 29.901 89.1963C29.0254 89.4468 28.0992 89.4618 27.216 89.2398C26.3327 89.0178 25.5235 88.5666 24.8698 87.9316C24.1872 87.248 23.7229 86.1406 24.1872 85.2451C24.7674 84.1446 26.3307 84.083 27.498 84.6641C28.2082 85.0299 28.834 85.5407 29.3349 86.1635C29.8358 86.7864 30.2007 87.5075 30.4062 88.2803C30.5567 88.2123 30.7026 88.1346 30.8431 88.0478C31.6906 87.4973 32.369 86.7221 32.8029 85.8086C33.2367 84.895 33.4091 83.8789 33.3007 82.8731C33.0754 80.6515 31.7033 78.84 30.2492 76.9259C28.7951 75.0119 27.3888 73.1389 27.0748 70.7737C26.9258 69.4595 27.152 68.13 27.7271 66.9394C28.3023 65.7488 29.2028 64.7459 30.3243 64.0472C30.4014 64.0018 30.4933 63.9885 30.5801 64.0102C30.6669 64.0319 30.7418 64.087 30.7885 64.1634C30.812 64.2019 30.8277 64.2448 30.8346 64.2894C30.8415 64.334 30.8395 64.3796 30.8287 64.4235C30.8179 64.4673 30.7985 64.5086 30.7717 64.5449C30.7449 64.5813 30.7112 64.6119 30.6724 64.6351C29.6569 65.2638 28.8413 66.1695 28.3214 67.2458C27.8015 68.3221 27.5988 69.5245 27.737 70.7121C28.0237 72.8723 29.3617 74.6359 30.7816 76.5089C32.2016 78.382 33.7239 80.3917 33.9628 82.8047C34.0884 83.943 33.8943 85.0938 33.4022 86.1276C32.9102 87.1614 32.1397 88.0371 31.1776 88.6562C30.9693 88.7805 30.7526 88.8901 30.5291 88.9843C30.5699 89.3592 30.5699 89.7374 30.5291 90.1123C30.4279 91.2154 30.0079 92.2652 29.3205 93.1332C28.6331 94.0012 27.708 94.6499 26.6584 94.9999C26.6354 95.0006 26.6125 94.9983 26.5901 94.993ZM25.9621 84.9854C25.7298 84.9629 25.4958 85.0053 25.2861 85.1078C25.0765 85.2104 24.8993 85.3691 24.7742 85.5664C24.4602 86.1543 24.8288 86.9336 25.3272 87.4531C25.9067 88.0031 26.6206 88.3906 27.3972 88.5766C28.1737 88.7626 28.9855 88.7406 29.7508 88.5127C29.577 87.822 29.2582 87.1764 28.8156 86.6188C28.373 86.0613 27.8168 85.6046 27.184 85.2793C26.8031 85.0929 26.386 84.9926 25.9621 84.9854Z" fill="#00D339"/>
|
||||
<path d="M115.976 31.9999C115.915 32.0015 115.855 31.9882 115.802 31.9611C115.748 31.9341 115.702 31.8942 115.668 31.8452C115.611 31.7647 115.589 31.6658 115.606 31.5696C115.623 31.4733 115.677 31.3873 115.758 31.3297C116.345 30.8782 116.806 30.2896 117.1 29.618C117.395 28.9463 117.512 28.2131 117.442 27.4855C117.383 26.7255 117.2 25.9796 116.901 25.2762C116.181 25.5374 115.41 25.638 114.645 25.5707C114.022 25.5351 113.415 25.3624 112.87 25.0653C112.325 24.7682 111.855 24.3545 111.495 23.8548C111.263 23.5528 111.106 23.2014 111.038 22.8291C110.97 22.4567 110.993 22.074 111.104 21.7118C111.197 21.4742 111.34 21.2581 111.522 21.0769C111.704 20.8957 111.923 20.7533 112.164 20.6587C112.815 20.3976 113.544 20.3976 114.194 20.6587C115.161 21.1489 115.949 21.9208 116.45 22.868C116.724 23.3218 116.975 23.7888 117.201 24.2673C117.495 24.1011 117.763 23.8953 117.998 23.656C119.502 22.0874 119.667 19.3552 118.359 17.3079C117.679 16.3418 116.801 15.5247 115.781 14.9086C114.761 14.2924 113.622 13.8907 112.435 13.7288C112.337 13.7108 112.25 13.6562 112.192 13.5764C112.135 13.4967 112.111 13.3981 112.127 13.3017C112.135 13.2539 112.153 13.2082 112.179 13.1674C112.206 13.1265 112.24 13.0913 112.281 13.0638C112.322 13.0363 112.367 13.0171 112.416 13.0074C112.464 12.9976 112.514 12.9975 112.563 13.0071C113.854 13.1842 115.094 13.6235 116.202 14.2969C117.31 14.9703 118.262 15.8629 118.998 16.9176C120.502 19.2447 120.284 22.3599 118.54 24.1642C118.239 24.4764 117.892 24.7421 117.51 24.9521C117.849 25.7492 118.055 26.5947 118.119 27.456C118.202 28.3102 118.061 29.1711 117.71 29.9572C117.358 30.7432 116.808 31.4286 116.111 31.9483C116.07 31.9745 116.024 31.992 115.976 31.9999ZM113.217 21.1595C112.959 21.1545 112.703 21.2021 112.465 21.2994C112.318 21.3586 112.185 21.4457 112.073 21.5557C111.96 21.6657 111.871 21.7963 111.811 21.9401C111.746 22.193 111.741 22.457 111.796 22.7121C111.851 22.9672 111.964 23.2069 112.127 23.413C112.424 23.8191 112.811 24.1545 113.259 24.3942C113.706 24.6339 114.203 24.7717 114.713 24.7975C115.345 24.8475 115.981 24.7647 116.577 24.5545C116.367 24.1347 116.126 23.6928 115.826 23.2289C115.398 22.4034 114.724 21.7252 113.893 21.2847C113.677 21.2033 113.448 21.1609 113.217 21.1595Z" fill="#FF0E41"/>
|
||||
<defs>
|
||||
<clipPath id="clip0_925_29">
|
||||
<rect width="383.119" height="130.81" fill="white" transform="translate(53.6406 38)"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 18 KiB |
@@ -0,0 +1,5 @@
|
||||
<svg width="41" height="56" viewBox="0 0 41 56" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M0 0H41V52.6911C41 54.1952 39.4021 55.1611 38.0703 54.4619L21.9074 45.9764C21.3377 45.6773 20.6589 45.6706 20.0833 45.9583L2.89443 54.5528C1.56463 55.2177 0 54.2507 0 52.7639V0Z" fill="#FBBF12"/>
|
||||
<path d="M31.9605 19.6924C31.8042 20.0933 31.5903 20.4419 31.1678 20.6177C31.1339 20.6321 31.1081 20.6917 31.0979 20.7339C30.6486 22.5393 30.2044 24.3447 29.7531 26.1491C29.6502 26.5521 29.4364 26.7166 29.0128 26.7177C23.6733 26.7321 18.3338 26.7451 12.9943 26.7567C12.5605 26.7567 12.3466 26.5891 12.2438 26.1738C11.8068 24.4177 11.3678 22.6616 10.9422 20.9025C10.9302 20.826 10.8994 20.7536 10.8525 20.6919C10.8057 20.6302 10.7443 20.581 10.6738 20.5488C10.4216 20.4167 10.2217 20.2028 10.1068 19.9423C9.99198 19.6817 9.96895 19.3899 10.0415 19.1145C10.1119 18.8315 10.2751 18.5803 10.5051 18.401C10.7351 18.2217 11.0186 18.1247 11.3103 18.1255C11.6021 18.1304 11.8839 18.2335 12.1099 18.4182C12.336 18.6028 12.4933 18.8583 12.5564 19.1433C12.6087 19.3737 12.5964 19.614 12.5209 19.8379C12.4455 20.0617 12.3097 20.2604 12.1287 20.4121C12.1759 20.4655 12.214 20.5149 12.2582 20.5591C12.7568 21.0608 13.2534 21.5646 13.7541 22.0643C14.8244 23.1315 16.3852 23.0431 17.3064 21.8474C18.205 20.6814 19.0809 19.4991 19.9713 18.328C20.0495 18.2252 20.0279 18.1676 19.959 18.073C19.6238 17.6124 19.5847 17.1189 19.8757 16.6285C20.1667 16.1381 20.6252 15.9489 21.1876 16.0116C21.6554 16.0641 22.0883 16.4517 22.224 16.9472C22.2848 17.1573 22.2902 17.3795 22.2398 17.5922C22.1893 17.805 22.0847 18.0011 21.9361 18.1615C21.9362 18.1765 21.9386 18.1914 21.9433 18.2057C22.8799 19.459 23.7939 20.7267 24.7614 21.9584C24.9547 22.2036 25.197 22.4058 25.4729 22.552C25.7487 22.6982 26.0521 22.7852 26.3635 22.8075C26.6749 22.8297 26.9875 22.7867 27.2814 22.6812C27.5752 22.5758 27.8438 22.4101 28.07 22.1949C28.6735 21.6284 29.2359 21.0197 29.8178 20.4244C29.7277 20.3198 29.6439 20.21 29.567 20.0954C29.433 19.8905 29.3631 19.6504 29.366 19.4056C29.3689 19.1608 29.4446 18.9224 29.5834 18.7208C29.7014 18.5226 29.8737 18.3624 30.08 18.2592C30.2863 18.156 30.5179 18.1143 30.7473 18.1388C31.2973 18.18 31.6726 18.4709 31.8782 18.985C31.9039 19.0508 31.9317 19.1156 31.9584 19.1804L31.9605 19.6924Z" fill="white"/>
|
||||
<path d="M21.019 30.7697C18.4144 30.7697 15.8125 30.7697 13.2134 30.7697C13.0715 30.7754 12.9297 30.7555 12.7949 30.711C12.6919 30.6759 12.6024 30.6094 12.539 30.521C12.4756 30.4325 12.4414 30.3264 12.4412 30.2175C12.432 29.6891 12.4279 29.1596 12.4412 28.6311C12.4473 28.4793 12.5113 28.3356 12.6202 28.2297C12.729 28.1237 12.8743 28.0635 13.0262 28.0615C13.09 28.0615 13.1548 28.0615 13.2185 28.0615H28.8082C29.3778 28.0615 29.5937 28.2785 29.5937 28.8522V30.0099C29.5937 30.5527 29.3737 30.7727 28.8247 30.7727H21.019V30.7697Z" fill="white"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.8 KiB |
@@ -0,0 +1,4 @@
|
||||
<svg width="45" height="32" viewBox="0 0 45 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.489 11.0927C13.7407 11.3525 14.9353 11.8451 16.0136 12.5461C19.5063 14.8444 21.3381 19.164 20.5623 23.2834C19.7472 27.6307 16.5275 30.9655 12.3783 31.7904C6.25843 33.0082 1.1823 28.6281 0.217231 23.0391C-0.252395 20.3251 0.0942949 17.6301 0.733575 14.993C2.59364 7.30206 7.41897 2.49759 14.6883 0.123693C15.7173 -0.211297 16.6836 0.155178 17.2295 1.02792C17.7753 1.90065 17.688 2.93459 16.9836 3.77459C15.2071 5.88402 13.6827 8.15465 12.6303 10.7376C12.5848 10.8371 12.548 10.9391 12.489 11.0927ZM12.8701 4.06424C12.7877 4.0995 12.7029 4.12973 12.6242 4.16877C4.86062 7.90656 2.51003 15.804 3.11981 22.3225C3.48863 26.2668 6.91738 29.1319 10.7113 28.9505C13.5979 28.8132 15.7394 27.3587 17.0069 24.7203C18.288 22.0555 18.031 19.431 16.3836 16.9903C15.2772 15.3532 13.7122 14.3935 11.8275 13.9364C10.6105 13.6417 9.86053 12.8332 9.58515 11.5751C9.38968 10.6809 9.74866 9.90769 10.0855 9.1294C10.8502 7.3537 11.8189 5.69889 12.8701 4.06424Z" fill="#6E55FF"/>
|
||||
<path d="M36.0526 10.9382C37.1676 11.4243 38.2274 11.7719 39.1789 12.3235C42.8548 14.4379 44.8919 18.8722 44.1739 23.052C43.4031 27.5416 40.1686 30.9583 35.953 31.7945C29.8675 32.9997 24.8947 28.6927 23.8263 23.2799C23.401 21.1302 23.6112 18.9805 23.9358 16.8484C24.4976 13.1622 25.8093 9.79593 28.1378 6.88176C30.8424 3.50164 34.3204 1.3305 38.3798 0.0938048C38.8254 -0.0451398 39.3034 -0.0292019 39.7392 0.139131C40.175 0.307466 40.5443 0.618747 40.7894 1.02447C41.3156 1.85566 41.2418 2.83922 40.6431 3.66914C39.5735 5.14511 38.4794 6.60597 37.4885 8.13483C36.907 9.02142 36.505 10.0377 36.0526 10.9382ZM36.4657 4.05072C36.2911 4.12754 36.178 4.1691 36.071 4.22451C31.3182 6.6236 28.3615 10.4911 27.1543 15.7565C26.6466 17.9717 26.3429 20.2235 26.6908 22.4979C26.9609 24.3469 27.8873 26.0288 29.2925 27.2218C30.6977 28.4147 32.4831 29.0349 34.3069 28.9634C39.5625 28.7544 42.9445 22.9261 40.5976 18.1002C39.5084 15.861 37.7319 14.5223 35.3666 13.9317C33.5225 13.472 32.63 11.622 33.3578 9.84631C33.7013 8.98831 34.0916 8.15078 34.5269 7.33766C35.1219 6.2395 35.7895 5.18667 36.4657 4.05072Z" fill="#6E55FF"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.1 KiB |
@@ -0,0 +1,5 @@
|
||||
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M7.93798 15H7.05761C7.02061 14.9892 6.98284 14.9812 6.94463 14.976C6.03253 14.9226 5.14005 14.689 4.31869 14.2887C2.01995 13.1548 0.610387 11.3273 0.11836 8.8056C0.0626031 8.51993 0.0386383 8.22838 0 7.93977V7.05926C0.0111303 7.01763 0.0194639 6.9753 0.0249442 6.93256C0.0978191 5.88622 0.367308 4.89124 0.882323 3.97845C2.2645 1.52378 4.3676 0.186378 7.1838 0.0151677C8.51341 -0.0733284 9.84006 0.226819 11.0021 0.879047C13.4706 2.25362 14.8097 4.36587 14.9853 7.18644C15.0707 8.52087 14.7694 9.85161 14.1177 11.0191C12.954 13.1349 11.1829 14.4231 8.80465 14.8836C8.51853 14.9349 8.22654 14.9614 7.93798 15ZM13.3293 7.49951C13.3293 4.28663 10.7067 1.66857 7.49535 1.67102C4.28397 1.67346 1.66438 4.29347 1.66634 7.50489C1.6683 10.7163 4.28886 13.3358 7.50024 13.3339C10.7116 13.3319 13.3312 10.7095 13.3293 7.49951Z" fill="#007CBA"/>
|
||||
<path d="M7.56137 3.97162H6.22174V8.45147H7.56137V3.97162Z" fill="#007CBA"/>
|
||||
<path d="M10.7009 8.45142V7.11157H6.22175V8.45142H10.7009Z" fill="#007CBA"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 8.2 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 3.5 KiB |
@@ -0,0 +1,34 @@
|
||||
<svg width="152" height="26" viewBox="0 0 152 26" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g clip-path="url(#clip0_465_13)">
|
||||
<path d="M28.9979 10.5426C28.8472 11.0075 28.5089 11.3341 28.1258 11.6458C26.203 13.2095 24.2928 14.7871 22.3712 16.3525C22.2007 16.4913 22.1524 16.6126 22.2041 16.8222C22.8039 19.2535 23.39 21.6874 23.9841 24.1197C24.1393 24.7554 23.9944 25.3048 23.4264 25.7005C22.8585 26.0963 22.2354 26.0824 21.6259 25.7415C19.3445 24.4649 17.0602 23.1884 14.7855 21.9033C14.561 21.7762 14.4143 21.797 14.2062 21.9134C11.9367 23.19 9.66264 24.4628 7.38403 25.7319C6.61483 26.1617 5.77513 26.0425 5.27768 25.4388C4.96329 25.0569 4.88824 24.6256 5.00081 24.1623C5.59244 21.7294 6.18635 19.2971 6.78254 16.8653C6.83939 16.6318 6.79846 16.4892 6.60004 16.328C4.59129 14.6941 2.5886 13.0542 0.591968 11.4086C0.0751874 10.983 -0.132889 10.4591 0.0768931 9.84054C0.28099 9.23737 0.750016 8.89536 1.42882 8.83526C3.02579 8.69378 4.62275 8.55974 6.21971 8.42357C7.32831 8.32943 8.43692 8.23422 9.54609 8.14646C9.71949 8.13263 9.8025 8.06242 9.87072 7.91243C10.9168 5.60826 11.9742 3.30836 13.0192 1.0042C13.2812 0.425498 13.7093 0.0611518 14.3887 0.00636683C15.0903 -0.0494819 15.6593 0.312206 15.9675 0.986646C16.9305 3.09401 17.9226 5.1886 18.8356 7.31617C19.0983 7.92838 19.4195 8.17305 20.133 8.22039C22.5139 8.37145 24.8875 8.61665 27.2662 8.7943C28.1474 8.86026 28.7443 9.20439 28.9956 10.0177L28.9979 10.5426Z" fill="#FBBF12"/>
|
||||
</g>
|
||||
<g clip-path="url(#clip1_465_13)">
|
||||
<path d="M89.9978 10.5426C89.8523 11.0075 89.5257 11.3341 89.1558 11.6458C87.2993 13.2095 85.455 14.7871 83.5997 16.3525C83.435 16.4913 83.3884 16.6126 83.4383 16.8222C84.0174 19.2535 84.5833 21.6874 85.1569 24.1197C85.3068 24.7554 85.1668 25.3048 84.6185 25.7005C84.0701 26.0963 83.4685 26.0824 82.8801 25.7415C80.6773 24.4649 78.4717 23.1884 76.2755 21.9033C76.0587 21.7762 75.9171 21.797 75.7162 21.9134C73.525 23.19 71.3293 24.4628 69.1293 25.7319C68.3866 26.1617 67.5758 26.0425 67.0955 25.4388C66.792 25.0569 66.7195 24.6256 66.8282 24.1623C67.3995 21.7294 67.9729 19.2971 68.5485 16.8653C68.6034 16.6318 68.5639 16.4892 68.3723 16.328C66.4328 14.6941 64.4992 13.0542 62.5714 11.4086C62.0725 10.983 61.8716 10.4591 62.0741 9.84054C62.2712 9.23737 62.724 8.89536 63.3794 8.83526C64.9213 8.69378 66.4632 8.55974 68.0051 8.42357C69.0755 8.32943 70.1459 8.23422 71.2168 8.14646C71.3842 8.13263 71.4643 8.06242 71.5302 7.91243C72.5402 5.60826 73.5612 3.30836 74.5701 1.0042C74.8231 0.425498 75.2365 0.0611518 75.8924 0.00636683C76.5698 -0.0494819 77.1192 0.312206 77.4167 0.986646C78.3466 3.09401 79.3044 5.1886 80.186 7.31617C80.4396 7.92838 80.7497 8.17305 81.4386 8.22039C83.7375 8.37145 86.0292 8.61665 88.3258 8.7943C89.1766 8.86026 89.753 9.20439 89.9956 10.0177L89.9978 10.5426Z" fill="#FBBF12"/>
|
||||
</g>
|
||||
<g clip-path="url(#clip2_465_13)">
|
||||
<path d="M58.9977 10.5426C58.8522 11.0075 58.5256 11.3341 58.1556 11.6458C56.2992 13.2095 54.4549 14.7871 52.5995 16.3525C52.4349 16.4913 52.3882 16.6126 52.4382 16.8222C53.0173 19.2535 53.5832 21.6874 54.1568 24.1197C54.3067 24.7554 54.1667 25.3048 53.6183 25.7005C53.07 26.0963 52.4684 26.0824 51.8799 25.7415C49.6771 24.4649 47.4716 23.1884 45.2754 21.9033C45.0586 21.7762 44.917 21.797 44.7161 21.9134C42.5248 23.19 40.3292 24.4628 38.1291 25.7319C37.3864 26.1617 36.5757 26.0425 36.0954 25.4388C35.7919 25.0569 35.7194 24.6256 35.8281 24.1623C36.3993 21.7294 36.9728 19.2971 37.5484 16.8653C37.6033 16.6318 37.5637 16.4892 37.3722 16.328C35.4327 14.6941 33.4991 13.0542 31.5713 11.4086C31.0723 10.983 30.8714 10.4591 31.074 9.84054C31.271 9.23737 31.7239 8.89536 32.3793 8.83526C33.9212 8.69378 35.4631 8.55974 37.005 8.42357C38.0753 8.32943 39.1457 8.23422 40.2166 8.14646C40.3841 8.13263 40.4642 8.06242 40.5301 7.91243C41.5401 5.60826 42.561 3.30836 43.5699 1.0042C43.823 0.425498 44.2363 0.0611518 44.8923 0.00636683C45.5696 -0.0494819 46.1191 0.312206 46.4166 0.986646C47.3465 3.09401 48.3043 5.1886 49.1859 7.31617C49.4395 7.92838 49.7496 8.17305 50.4385 8.22039C52.7373 8.37145 55.029 8.61665 57.3257 8.7943C58.1765 8.86026 58.7528 9.20439 58.9955 10.0177L58.9977 10.5426Z" fill="#FBBF12"/>
|
||||
</g>
|
||||
<g clip-path="url(#clip3_465_13)">
|
||||
<path d="M120.998 10.5426C120.852 11.0075 120.526 11.3341 120.156 11.6458C118.299 13.2095 116.455 14.7871 114.6 16.3525C114.435 16.4913 114.388 16.6126 114.438 16.8222C115.017 19.2535 115.583 21.6874 116.157 24.1197C116.307 24.7554 116.167 25.3048 115.618 25.7005C115.07 26.0963 114.468 26.0824 113.88 25.7415C111.677 24.4649 109.472 23.1884 107.275 21.9033C107.059 21.7762 106.917 21.797 106.716 21.9134C104.525 23.19 102.329 24.4628 100.129 25.7319C99.3864 26.1617 98.5757 26.0425 98.0954 25.4388C97.7919 25.0569 97.7194 24.6256 97.8281 24.1623C98.3993 21.7294 98.9728 19.2971 99.5484 16.8653C99.6033 16.6318 99.5637 16.4892 99.3722 16.328C97.4327 14.6941 95.4991 13.0542 93.5713 11.4086C93.0723 10.983 92.8714 10.4591 93.074 9.84054C93.271 9.23737 93.7239 8.89536 94.3793 8.83526C95.9212 8.69378 97.4631 8.55974 99.005 8.42357C100.075 8.32943 101.146 8.23422 102.217 8.14646C102.384 8.13263 102.464 8.06242 102.53 7.91243C103.54 5.60826 104.561 3.30836 105.57 1.0042C105.823 0.425498 106.236 0.0611518 106.892 0.00636683C107.57 -0.0494819 108.119 0.312206 108.417 0.986646C109.346 3.09401 110.304 5.1886 111.186 7.31617C111.439 7.92838 111.75 8.17305 112.438 8.22039C114.737 8.37145 117.029 8.61665 119.326 8.7943C120.176 8.86026 120.753 9.20439 120.995 10.0177L120.998 10.5426Z" fill="#FBBF12"/>
|
||||
</g>
|
||||
<g clip-path="url(#clip4_465_13)">
|
||||
<path d="M151.998 10.5426C151.852 11.0075 151.526 11.3341 151.156 11.6458C149.299 13.2095 147.455 14.7871 145.6 16.3525C145.435 16.4913 145.388 16.6126 145.438 16.8222C146.017 19.2535 146.583 21.6874 147.157 24.1197C147.307 24.7554 147.167 25.3048 146.618 25.7005C146.07 26.0963 145.468 26.0824 144.88 25.7415C142.677 24.4649 140.472 23.1884 138.276 21.9033C138.059 21.7762 137.917 21.797 137.716 21.9134C135.525 23.19 133.329 24.4628 131.129 25.7319C130.387 26.1617 129.576 26.0425 129.096 25.4388C128.792 25.0569 128.72 24.6256 128.828 24.1623C129.399 21.7294 129.973 19.2971 130.549 16.8653C130.603 16.6318 130.564 16.4892 130.372 16.328C128.433 14.6941 126.499 13.0542 124.571 11.4086C124.072 10.983 123.872 10.4591 124.074 9.84054C124.271 9.23737 124.724 8.89536 125.379 8.83526C126.921 8.69378 128.463 8.55974 130.005 8.42357C131.075 8.32943 132.146 8.23422 133.217 8.14646C133.384 8.13263 133.464 8.06242 133.53 7.91243C134.54 5.60826 135.561 3.30836 136.57 1.0042C136.823 0.425498 137.236 0.0611518 137.892 0.00636683C138.57 -0.0494819 139.119 0.312206 139.417 0.986646C140.347 3.09401 141.304 5.1886 142.186 7.31617C142.44 7.92838 142.75 8.17305 143.439 8.22039C145.737 8.37145 148.029 8.61665 150.326 8.7943C151.177 8.86026 151.753 9.20439 151.996 10.0177L151.998 10.5426Z" fill="#FBBF12"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_465_13">
|
||||
<rect width="29" height="26" fill="white"/>
|
||||
</clipPath>
|
||||
<clipPath id="clip1_465_13">
|
||||
<rect width="28" height="26" fill="white" transform="translate(62)"/>
|
||||
</clipPath>
|
||||
<clipPath id="clip2_465_13">
|
||||
<rect width="28" height="26" fill="white" transform="translate(31)"/>
|
||||
</clipPath>
|
||||
<clipPath id="clip3_465_13">
|
||||
<rect width="28" height="26" fill="white" transform="translate(93)"/>
|
||||
</clipPath>
|
||||
<clipPath id="clip4_465_13">
|
||||
<rect width="28" height="26" fill="white" transform="translate(124)"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 7.2 KiB |
@@ -0,0 +1,12 @@
|
||||
<svg width="39" height="41" viewBox="0 0 39 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g clip-path="url(#clip0_465_14)">
|
||||
<path d="M19.8317 -5.70714e-06C22.1364 1.08565 24.5449 1.94232 27.0217 2.55734C30.3948 3.41354 33.8634 3.84958 37.3464 3.85529C38.3822 3.85529 38.8491 4.32756 38.861 5.35457C38.911 9.54828 39.0347 13.7441 38.9913 17.9368C38.9262 24.1481 36.6308 29.5251 32.3312 34.0433C28.9218 37.6266 24.7481 39.9441 19.8697 40.9668C19.3518 41.0739 18.7416 40.9218 18.2096 40.7687C9.20267 38.1892 3.3963 32.453 0.790441 23.5601C0.210637 21.5747 0.00216675 19.5271 0.00216675 17.4559C0.00216675 13.4079 0.00216675 9.36015 0.00216675 5.3128C0.00216675 4.33078 0.496195 3.8403 1.50162 3.83708C7.65255 3.81995 13.5353 2.59161 19.127 0.0449726C19.1487 0.0353343 19.1639 0.00856201 19.1824 -0.00964355L19.8317 -5.70714e-06ZM2.60152 6.45869V6.73712C2.60152 10.3825 2.60152 14.0286 2.60152 17.6755C2.60152 19.1887 2.73724 20.6976 3.1216 22.1604C5.33224 30.5778 10.6591 36.0106 19.1737 38.357C19.3947 38.4116 19.6259 38.4116 19.8469 38.357C29.5483 36.001 36.4397 27.3126 36.4039 17.4602C36.3909 13.9208 36.3214 10.3825 36.2769 6.84314C36.2769 6.70178 36.2617 6.5615 36.253 6.42013C35.3985 6.36552 34.5885 6.32161 33.7807 6.25842C29.0664 5.89447 24.4447 4.76969 20.0999 2.92895C19.9171 2.84015 19.7163 2.79352 19.5126 2.7926C19.3088 2.79167 19.1076 2.83647 18.924 2.92359C15.0702 4.5685 10.9903 5.64038 6.81759 6.10421C5.43431 6.25414 4.04777 6.33874 2.60152 6.45869Z" fill="#61D026"/>
|
||||
<path d="M19.4926 25.5263C18.6564 25.5152 17.8289 25.3598 17.0492 25.0676C16.9308 25.0333 16.8033 25.0439 16.6926 25.0972C16.2029 25.3435 15.7237 25.6093 15.2409 25.8683C15.0263 25.9826 14.8029 26.0757 14.5769 25.9106C14.3508 25.7456 14.3403 25.5246 14.3911 25.2893C14.4998 24.7815 14.6259 24.2829 14.7241 23.7759C14.7328 23.7177 14.7296 23.6584 14.7146 23.6015C14.6996 23.5445 14.673 23.491 14.6364 23.4441C12.54 21.1205 12.4348 17.6712 14.4542 15.291C15.9383 13.5422 17.9078 12.8092 20.2276 13.042C23.0828 13.3289 25.2652 15.2174 25.8504 17.9218C26.6643 21.6843 24.0623 25.0235 20.3547 25.4552C20.0708 25.4916 19.7817 25.5086 19.4926 25.5263ZM22.813 20.4307C23.136 20.4307 23.446 20.3076 23.6757 20.0881C23.9053 19.8686 24.0361 19.5704 24.0395 19.2583C24.0395 18.9455 23.9115 18.6454 23.6834 18.4234C23.4553 18.2014 23.1455 18.0755 22.8217 18.0733C22.6596 18.0716 22.4987 18.101 22.3483 18.1598C22.198 18.2186 22.0612 18.3057 21.946 18.4159C21.8307 18.5261 21.7391 18.6573 21.6767 18.8019C21.6142 18.9465 21.5821 19.1017 21.5821 19.2583C21.5832 19.4134 21.616 19.5667 21.6785 19.7095C21.741 19.8522 21.832 19.9817 21.9463 20.0905C22.0606 20.1993 22.196 20.2853 22.3447 20.3435C22.4934 20.4017 22.6525 20.4311 22.813 20.4298V20.4307ZM16.2134 20.4307C16.3738 20.4315 16.5328 20.4017 16.6813 20.343C16.8298 20.2844 16.9649 20.198 17.0788 20.0889C17.1927 19.9798 17.2832 19.8501 17.3452 19.7071C17.4072 19.5641 17.4394 19.4108 17.4399 19.2558C17.4391 19.0991 17.4062 18.9441 17.343 18.7998C17.2798 18.6555 17.1876 18.5247 17.0717 18.4151C16.9559 18.3054 16.8186 18.219 16.668 18.1609C16.5174 18.1029 16.3563 18.0742 16.1941 18.0767C15.8719 18.0811 15.5644 18.208 15.3382 18.4297C15.1119 18.6515 14.9851 18.9504 14.9851 19.2617C14.9884 19.5738 15.1194 19.8719 15.3496 20.0908C15.5798 20.3097 15.8904 20.4316 16.2134 20.4298V20.4307ZM20.7297 19.2533C20.7309 19.0987 20.7004 18.9454 20.6399 18.8023C20.5794 18.6593 20.49 18.5292 20.3771 18.4198C20.2641 18.3103 20.1298 18.2236 19.9818 18.1647C19.8339 18.1058 19.6754 18.0759 19.5154 18.0767C19.3553 18.0743 19.1964 18.1027 19.0478 18.1602C18.8992 18.2177 18.7639 18.3032 18.6498 18.4116C18.5357 18.5201 18.445 18.6494 18.3831 18.7919C18.3211 18.9345 18.2891 19.0876 18.2889 19.2423C18.286 19.3986 18.3158 19.554 18.3764 19.699C18.4371 19.844 18.5273 19.9757 18.6418 20.0863C18.7562 20.1969 18.8926 20.2841 19.0427 20.3427C19.1928 20.4013 19.3535 20.43 19.5154 20.4273C19.6752 20.4283 19.8337 20.3986 19.9815 20.34C20.1294 20.2813 20.2637 20.1949 20.3766 20.0856C20.4896 19.9764 20.579 19.8466 20.6396 19.7037C20.7002 19.5608 20.7308 19.4077 20.7297 19.2533Z" fill="#BDBDBD"/>
|
||||
<path d="M21.6415 27.8508C21.6415 27.9506 21.6415 28.0351 21.6415 28.1189C21.6386 28.3506 21.5453 28.572 21.3814 28.7355C21.2176 28.8989 20.9964 28.9915 20.7653 28.9932C19.9281 29.0023 19.0909 29.0023 18.2537 28.9932C17.7528 28.9882 17.3851 28.6059 17.3707 28.0994C17.3657 27.9303 17.3657 27.7612 17.3707 27.592C17.3704 27.4752 17.3932 27.3594 17.4377 27.2514C17.4823 27.1434 17.5477 27.0453 17.6303 26.9628C17.7129 26.8804 17.8109 26.8151 17.9188 26.7708C18.0267 26.7266 18.1422 26.7042 18.2588 26.705C18.7235 26.6965 19.1865 26.7008 19.6545 26.705C21.4838 26.7117 23.0735 26.0682 24.4659 24.9114C25.4092 24.1447 26.136 23.1439 26.5743 22.0084C26.7573 21.5264 26.8062 20.9937 26.8982 20.4787C26.9825 20.0127 27.0398 19.5426 27.1115 19.0741C27.2667 18.0593 26.996 17.1046 26.6257 16.1846C25.3607 13.0347 22.2605 11.1253 18.8778 11.3798C15.2994 11.6487 12.3215 14.5086 11.8779 18.0746C11.8029 18.6809 11.9361 19.2534 12.0162 19.836C12.1621 20.8905 12.3359 21.9416 12.4894 22.9961C12.5796 23.6193 12.3915 23.9263 11.786 24.0954C11.4305 24.2061 11.0617 24.2681 10.6896 24.2797C9.8581 24.2738 9.27618 23.7817 8.86209 23.1221C7.86946 21.545 7.73452 19.8639 8.45475 18.1524C8.80896 17.3118 9.47352 16.7512 10.3877 16.5415C10.5272 16.5171 10.668 16.5007 10.8094 16.4924C10.8288 16.4451 10.8549 16.3859 10.876 16.3233C12.1411 12.7505 14.6349 10.601 18.3819 10.0843C22.7657 9.48136 26.7767 12.173 28.0966 16.2379C28.1472 16.3935 28.1809 16.5186 28.4002 16.5313C29.6247 16.6006 30.3112 17.3659 30.6722 18.4382C31.2541 20.1692 31.0821 21.8274 29.9891 23.331C29.6003 23.8662 29.0782 24.2687 28.3867 24.2848C28.0089 24.2941 27.6277 24.1673 27.2473 24.0903C27.1216 24.0641 27.0339 24.0506 26.9454 24.1749C25.6584 26.0141 23.9262 27.2191 21.7621 27.8111C21.73 27.8187 21.6988 27.8314 21.6415 27.8508Z" fill="#BDBDBD"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_465_14">
|
||||
<rect width="39" height="41" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.9 KiB |
@@ -0,0 +1,14 @@
|
||||
<svg width="22" height="17" viewBox="0 0 22 17" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g clip-path="url(#clip0_601_10)">
|
||||
<path d="M13.8298 0H0.710328C0.617047 0 0.524679 0.0180714 0.438499 0.0531829C0.352319 0.0882944 0.274014 0.139759 0.208055 0.204636C0.142095 0.269514 0.0897729 0.346534 0.0540759 0.4313C0.0183789 0.516067 7.62939e-06 0.60692 7.62939e-06 0.698671V3.43931C7.53692e-06 3.53101 0.0183849 3.62182 0.0540942 3.70653C0.0898034 3.79124 0.142143 3.8682 0.208116 3.93299C0.274088 3.99779 0.352404 4.04916 0.438578 4.08417C0.524753 4.11917 0.617094 4.13712 0.710328 4.13699H13.8298C14.0179 4.13699 14.1983 4.06349 14.3314 3.93265C14.4644 3.80181 14.5391 3.62434 14.5391 3.43931V0.694741C14.5383 0.510214 14.4633 0.33351 14.3303 0.203305C14.1974 0.0730997 14.0174 -1.64723e-06 13.8298 0Z" fill="#845DE2"/>
|
||||
<path d="M21.2897 6.42953H5.42582C5.2376 6.42953 5.05708 6.50301 4.9239 6.63382C4.79072 6.76464 4.71576 6.94209 4.7155 7.12722V9.87277C4.71576 10.0579 4.79072 10.2354 4.9239 10.3662C5.05708 10.497 5.2376 10.5705 5.42582 10.5705H21.2897C21.4778 10.5705 21.6582 10.497 21.7912 10.3661C21.9243 10.2353 21.999 10.0578 21.999 9.87277V7.12722C21.999 6.94218 21.9243 6.76472 21.7912 6.63388C21.6582 6.50304 21.4778 6.42953 21.2897 6.42953Z" fill="#6E55FF"/>
|
||||
<path d="M21.2897 12.8581H17.6042C17.416 12.8584 17.2356 12.9321 17.1026 13.0631C16.9696 13.1941 16.8949 13.3716 16.8949 13.5568V16.3013C16.8947 16.393 16.913 16.4839 16.9486 16.5686C16.9842 16.6534 17.0364 16.7304 17.1023 16.7953C17.1681 16.8602 17.2464 16.9117 17.3325 16.9468C17.4186 16.9819 17.511 17 17.6042 17H21.2897C21.4781 17 21.6587 16.9264 21.7919 16.7954C21.9252 16.6643 22 16.4866 22 16.3013V13.5607C22.0005 13.4686 21.9825 13.3773 21.9471 13.2921C21.9116 13.2069 21.8594 13.1294 21.7934 13.0641C21.7274 12.9988 21.6489 12.947 21.5624 12.9116C21.476 12.8763 21.3833 12.8581 21.2897 12.8581Z" fill="#6E55FF"/>
|
||||
<path d="M13.8298 12.8581H10.1443C10.0507 12.8582 9.9581 12.8765 9.87172 12.9119C9.78534 12.9473 9.70691 12.9991 9.64092 13.0644C9.57494 13.1297 9.5227 13.2071 9.48719 13.2923C9.45168 13.3774 9.4336 13.4686 9.434 13.5607V16.3053C9.43505 16.4894 9.50994 16.6656 9.64239 16.7957C9.77484 16.9258 9.95414 16.9992 10.1413 17H13.8298C13.923 17 14.0154 16.9819 14.1015 16.9468C14.1876 16.9117 14.2658 16.8602 14.3317 16.7953C14.3976 16.7304 14.4498 16.6534 14.4854 16.5686C14.521 16.4839 14.5393 16.393 14.5391 16.3013V13.5607C14.5396 13.4687 14.5217 13.3775 14.4863 13.2923C14.4509 13.2072 14.3988 13.1297 14.3328 13.0645C14.2669 12.9992 14.1886 12.9473 14.1022 12.9119C14.0159 12.8765 13.9233 12.8582 13.8298 12.8581Z" fill="#6E55FF"/>
|
||||
<path d="M21.2897 0H17.6042C17.511 -9.0871e-08 17.4186 0.0180788 17.3325 0.0532024C17.2464 0.0883259 17.1681 0.139804 17.1023 0.204695C17.0364 0.269585 16.9842 0.346614 16.9486 0.431375C16.913 0.516136 16.8947 0.606966 16.8949 0.698671V3.43931C16.8949 3.62434 16.9696 3.80181 17.1026 3.93265C17.2356 4.06349 17.4161 4.13699 17.6042 4.13699H21.2897C21.3829 4.13712 21.4753 4.11917 21.5614 4.08417C21.6476 4.04916 21.7259 3.99779 21.7919 3.93299C21.8579 3.8682 21.9102 3.79124 21.9459 3.70653C21.9816 3.62182 22 3.53101 22 3.43931V0.694741C21.9989 0.510124 21.9236 0.333422 21.7905 0.203245C21.6574 0.0730675 21.4774 -2.92159e-06 21.2897 0Z" fill="#6E55FF"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_601_10">
|
||||
<rect width="22" height="17" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.3 KiB |
1
wp-content/plugins/woo-checkout-field-editor-pro/admin/assets/css/thwcfd-admin.min.css
vendored
Normal file
|
After Width: | Height: | Size: 3.1 KiB |
@@ -0,0 +1,4 @@
|
||||
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M7.93976 15H7.05947C7.02246 14.9892 6.9847 14.9812 6.9465 14.976C6.03349 14.9229 5.14006 14.6894 4.31784 14.2889C2.0193 13.1554 0.610338 11.3284 0.117863 8.8074C0.0621113 8.52229 0.0386351 8.23034 0 7.94181V7.06155C0.0107821 7.01989 0.0189489 6.97758 0.0244526 6.9349C0.0978104 5.88886 0.366791 4.89417 0.882252 3.98164C2.26333 1.52572 4.37017 0.188709 7.18466 0.0151033C8.51415 -0.0731684 9.84063 0.226879 11.0027 0.878733C13.4709 2.25291 14.8104 4.36455 14.9855 7.1843C15.0718 8.51886 14.771 9.84996 14.1194 11.0178C12.9565 13.133 11.1856 14.4208 8.80685 14.8812C8.52075 14.9369 8.22879 14.9614 7.93976 15ZM13.3311 7.50022C13.3311 4.28826 10.7093 1.67096 7.49765 1.67292C4.28605 1.67488 1.66718 4.29461 1.66913 7.50511C1.67109 10.7156 4.28948 13.3344 7.50304 13.3324C10.7166 13.3304 13.3335 10.7107 13.3311 7.50022Z" fill="white"/>
|
||||
<path d="M9.69056 4L11 5.24031L6.13719 11L3 7.81212L4.21609 6.47024L6.04074 8.32113C7.26096 6.87711 8.47035 5.44511 9.69056 4Z" fill="white"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 71 KiB |
|
After Width: | Height: | Size: 7.6 KiB |
|
After Width: | Height: | Size: 2.4 KiB |
|
After Width: | Height: | Size: 2.5 KiB |
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 2.4 KiB |
|
After Width: | Height: | Size: 2.4 KiB |
|
After Width: | Height: | Size: 2.6 KiB |
|
After Width: | Height: | Size: 2.8 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 2.7 KiB |
|
After Width: | Height: | Size: 2.4 KiB |
1
wp-content/plugins/woo-checkout-field-editor-pro/admin/assets/js/thwcfd-admin.min.js
vendored
Normal file
@@ -0,0 +1,696 @@
|
||||
<?php
|
||||
/**
|
||||
* The admin settings page functionality of the plugin.
|
||||
*
|
||||
* @link https://themehigh.com
|
||||
*
|
||||
* @package woo-checkout-field-editor-pro
|
||||
* @subpackage woo-checkout-field-editor-pro/admin
|
||||
*/
|
||||
|
||||
if(!defined('WPINC')){ die; }
|
||||
|
||||
if(!class_exists('THWCFD_Admin_Form_Field')):
|
||||
|
||||
class THWCFD_Admin_Form_Field extends THWCFD_Admin_Form{
|
||||
private $field_props = array();
|
||||
|
||||
public function __construct() {
|
||||
$this->init_constants();
|
||||
}
|
||||
|
||||
private function init_constants(){
|
||||
$this->field_props = $this->get_field_form_props();
|
||||
//$this->field_props_display = $this->get_field_form_props_display();
|
||||
}
|
||||
|
||||
// private function get_field_types(){
|
||||
// return array(
|
||||
// 'text' => 'Text', 'hidden' => 'Hidden', 'password' => 'Password',
|
||||
// 'tel' => 'Telephone', 'email' => 'Email', 'number' => 'Number',
|
||||
// 'textarea' => 'Textarea', 'select' => 'Select', 'multiselect' => 'Multiselect',
|
||||
// 'radio' => 'Radio', 'checkbox' => 'Checkbox', 'checkboxgroup' => 'Checkbox Group',
|
||||
// 'datepicker' => 'Date Picker', 'timepicker' => 'Time Picker',
|
||||
// 'file' => 'File Upload',
|
||||
// 'heading' => 'Heading', 'label' => 'Label'
|
||||
// );
|
||||
// }
|
||||
public function get_field_types(){
|
||||
return array(
|
||||
'text' => __('Text', 'woo-checkout-field-editor-pro'),
|
||||
'number' => __('Number', 'woo-checkout-field-editor-pro'),
|
||||
'hidden' => __('Hidden', 'woo-checkout-field-editor-pro'),
|
||||
'password' => __('Password', 'woo-checkout-field-editor-pro'),
|
||||
'email' => __('Email', 'woo-checkout-field-editor-pro'),
|
||||
'tel' => __('Phone', 'woo-checkout-field-editor-pro'),
|
||||
'textarea' => __('Textarea', 'woo-checkout-field-editor-pro'),
|
||||
'radio' => __('Radio', 'woo-checkout-field-editor-pro'),
|
||||
'select' => __('Select', 'woo-checkout-field-editor-pro'),
|
||||
'multiselect' => __('Multiselect', 'woo-checkout-field-editor-pro'),
|
||||
'checkbox' => __('Checkbox', 'woo-checkout-field-editor-pro'),
|
||||
'checkboxgroup' => __('Checkbox Group', 'woo-checkout-field-editor-pro'),
|
||||
'heading' => __('Heading', 'woo-checkout-field-editor-pro'),
|
||||
'datetime_local' => __('Datetime local', 'woo-checkout-field-editor-pro'),
|
||||
'date' => __('Date', 'woo-checkout-field-editor-pro'),
|
||||
'time' => __('Time', 'woo-checkout-field-editor-pro'),
|
||||
'month' => __('Month', 'woo-checkout-field-editor-pro'),
|
||||
'week' => __('Week', 'woo-checkout-field-editor-pro'),
|
||||
'url' => __('URL', 'woo-checkout-field-editor-pro'),
|
||||
'paragraph' => __('Paragraph','woo-checkout-field-editor-pro'),
|
||||
);
|
||||
}
|
||||
|
||||
public function get_field_form_props(){
|
||||
$field_types = $this->get_field_types();
|
||||
|
||||
$validations = array(
|
||||
'email' => __('Email', 'woo-checkout-field-editor-pro'),
|
||||
'phone' => __('Phone', 'woo-checkout-field-editor-pro'),
|
||||
'postcode' => __('Postcode', 'woo-checkout-field-editor-pro'),
|
||||
'state' => __('State', 'woo-checkout-field-editor-pro'),
|
||||
'number' => __('Number', 'woo-checkout-field-editor-pro'),
|
||||
'url' => __('URL', 'woo-checkout-field-editor-pro'),
|
||||
);
|
||||
|
||||
$display_style = array(
|
||||
'full' => __('Full width', 'woo-checkout-field-editor-pro'),
|
||||
'half_left' => __('Half width left', 'woo-checkout-field-editor-pro'),
|
||||
'half_right' => __('Half width right', 'woo-checkout-field-editor-pro'),
|
||||
);
|
||||
|
||||
$html_text_tags = array(
|
||||
'h1' => 'H1',
|
||||
'h2' => 'H2',
|
||||
'h3' => 'H3',
|
||||
'h4' => 'H4',
|
||||
'h5' => 'H5',
|
||||
'h6' => 'H6',
|
||||
);
|
||||
|
||||
return array(
|
||||
'type' => array('type'=>'select', 'name'=>'type', 'label'=>__('Type', 'woo-checkout-field-editor-pro'), 'required'=>1, 'options'=>$field_types,
|
||||
'onchange'=>'thwcfdFieldTypeChangeListner(this)'),
|
||||
'name' => array('type'=>'text', 'name'=>'name', 'label'=>__('Name', 'woo-checkout-field-editor-pro'), 'required'=>1),
|
||||
'label' => array('type'=>'text', 'name'=>'label', 'label'=>__('Label', 'woo-checkout-field-editor-pro')),
|
||||
'default' => array('type'=>'text', 'name'=>'default', 'label'=>__('Default Value', 'woo-checkout-field-editor-pro')),
|
||||
'placeholder' => array('type'=>'text', 'name'=>'placeholder', 'label'=>__('Placeholder', 'woo-checkout-field-editor-pro')),
|
||||
//'options' => array('type'=>'text', 'name'=>'options', 'label'=>'Options', 'placeholder'=>'Seperate options with pipe(|)'),
|
||||
'class' => array('type'=>'text', 'name'=>'class', 'label'=>__('Class', 'woo-checkout-field-editor-pro'), 'placeholder'=>__('Separate classes with comma', 'woo-checkout-field-editor-pro')),
|
||||
'validate' => array('type'=>'multiselect', 'name'=>'validate', 'label'=>__('Validation', 'woo-checkout-field-editor-pro'), 'placeholder'=>__('Select validations', 'woo-checkout-field-editor-pro'), 'options'=>$validations, 'multiple'=>1),
|
||||
// 'disp_style' => array('type'=>'select', 'name'=>'disp_style', 'label'=>'Field Display', 'options'=>$display_style),
|
||||
// 'title' => array('type'=>'text', 'name'=>'title', 'label'=>'Label'),
|
||||
'title_type' => array('type'=>'select', 'name'=>'title_type', 'label'=>'Title Type', 'value'=>'h3', 'options'=>$html_text_tags),
|
||||
|
||||
'required' => array('type'=>'checkbox', 'name'=>'required', 'label'=>__('Required', 'woo-checkout-field-editor-pro'), 'value'=>'1', 'checked'=>1),
|
||||
'checked' => array('type'=>'checkbox', 'name'=>'checked', 'label'=>__(' Checked by default', 'woo-checkout-field-editor-pro'), 'value'=>'1', 'checked'=>0),
|
||||
//'clear' => array('type'=>'checkbox', 'name'=>'clear', 'label'=>'Clear Row', 'value'=>'1', 'checked'=>1),
|
||||
'enabled' => array('type'=>'checkbox', 'name'=>'enabled', 'label'=>__('Enabled', 'woo-checkout-field-editor-pro'), 'value'=>'1', 'checked'=>1),
|
||||
|
||||
'show_in_email' => array('type'=>'checkbox', 'name'=>'show_in_email', 'label'=>__('Display in Emails', 'woo-checkout-field-editor-pro'), 'value'=>'1', 'checked'=>1),
|
||||
'show_in_order' => array('type'=>'checkbox', 'name'=>'show_in_order', 'label'=>__('Display in Order Detail Pages', 'woo-checkout-field-editor-pro'), 'value'=>'1', 'checked'=>1),
|
||||
);
|
||||
}
|
||||
|
||||
/*public function get_field_form_props_display(){
|
||||
return array(
|
||||
'name' => array('name'=>'name', 'type'=>'text'),
|
||||
'type' => array('name'=>'type', 'type'=>'select'),
|
||||
'title' => array('name'=>'title', 'type'=>'text', 'len'=>40),
|
||||
'placeholder' => array('name'=>'placeholder', 'type'=>'text', 'len'=>30),
|
||||
'validate' => array('name'=>'validate', 'type'=>'text'),
|
||||
'required' => array('name'=>'required', 'type'=>'checkbox', 'status'=>1),
|
||||
'enabled' => array('name'=>'enabled', 'type'=>'checkbox', 'status'=>1),
|
||||
);
|
||||
}*/
|
||||
|
||||
public function output_field_forms(){
|
||||
$this->output_field_form_pp();
|
||||
$this->output_form_fragments();
|
||||
}
|
||||
|
||||
private function output_field_form_pp(){
|
||||
?>
|
||||
<div id="thwcfd_field_form_pp" class="thpladmin-modal-mask">
|
||||
<?php $this->output_popup_form_fields(); ?>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
|
||||
/*****************************************/
|
||||
/********** POPUP FORM WIZARD ************/
|
||||
/*****************************************/
|
||||
private function output_popup_form_fields(){
|
||||
?>
|
||||
<div class="thpladmin-modal">
|
||||
<div class="modal-container">
|
||||
<span class="modal-close" onclick="thwcfdCloseModal(this)">×</span>
|
||||
<div class="modal-content">
|
||||
<div class="modal-body">
|
||||
<div class="form-wizard wizard">
|
||||
<aside>
|
||||
<side-title class="wizard-title"><?php _e('Save Field', 'woo-checkout-field-editor-pro'); ?></side-title>
|
||||
<ul class="pp_nav_links">
|
||||
<li class="text-primary active first pp-nav-link-basic" data-index="0">
|
||||
<i class="dashicons dashicons-admin-generic text-primary"></i><?php _e('Basic Info', 'woo-checkout-field-editor-pro'); ?>
|
||||
<i class="i i-chevron-right dashicons dashicons-arrow-right-alt2"></i>
|
||||
</li>
|
||||
<!-- <li class="text-primary pp-nav-link-styles" data-index="1">
|
||||
<i class="dashicons dashicons-art text-primary"></i>Display Styles
|
||||
<i class="i i-chevron-right dashicons dashicons-arrow-right-alt2"></i>
|
||||
</li> -->
|
||||
</ul>
|
||||
</aside>
|
||||
<main class="form-container main-full">
|
||||
<form method="post" id="thwcfd_field_form" action="">
|
||||
<input type="hidden" name="f_action" value="" />
|
||||
<input type="hidden" name="i_autocomplete" value="" />
|
||||
<input type="hidden" name="i_priority" value="" />
|
||||
<input type="hidden" name="i_custom" value="" />
|
||||
<input type="hidden" name="i_oname" value="" />
|
||||
<input type="hidden" name="i_otype" value="" />
|
||||
<input type="hidden" name="i_options_json" value="" />
|
||||
|
||||
<div class="data-panel data_panel_0">
|
||||
<?php $this->render_form_tab_general_info(); ?>
|
||||
</div>
|
||||
<!-- <div class="data-panel data_panel_1">
|
||||
<?php //$this->render_form_tab_display_details(); ?>
|
||||
</div> -->
|
||||
<?php wp_nonce_field( 'thwcfd_field_form', 'thwcfd_security_manage_field' ); ?>
|
||||
</form>
|
||||
</main>
|
||||
<footer>
|
||||
<span class="Loader"></span>
|
||||
<div class="btn-toolbar">
|
||||
<button class="save-btn pull-right btn btn-primary" onclick="thwcfdSaveField(this)">
|
||||
<span><?php _e('Save & Close', 'woo-checkout-field-editor-pro'); ?></span>
|
||||
</button>
|
||||
<!--<button class="next-btn pull-right btn btn-primary-alt" onclick="thwcfdWizardNext(this)">
|
||||
<span><?php _e('Next', 'woo-checkout-field-editor-pro'); ?></span><i class="i i-plus"></i>
|
||||
</button>
|
||||
<button class="prev-btn pull-right btn btn-primary-alt" onclick="thwcfdWizardPrevious(this)">
|
||||
<span><?php _e('Back', 'woo-checkout-field-editor-pro'); ?></span><i class="i i-plus"></i>
|
||||
</button>-->
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
|
||||
/*----- TAB - General Info -----*/
|
||||
private function render_form_tab_general_info(){
|
||||
$this->render_form_tab_main_title(__('Basic Details', 'woo-checkout-field-editor-pro'));
|
||||
|
||||
?>
|
||||
<div style="display: inherit;" class="data-panel-content">
|
||||
<?php
|
||||
$this->render_form_fragment_general();
|
||||
?>
|
||||
<table class="thwcfd_field_form_tab_general_placeholder thwcfd_pp_table thwcfd-general-info"></table>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
|
||||
/*----- TAB - Display Details -----*/
|
||||
private function render_form_tab_display_details(){
|
||||
$this->render_form_tab_main_title(__('Display Settings', 'woo-checkout-field-editor-pro'));
|
||||
|
||||
?>
|
||||
<div style="display: inherit;" class="data-panel-content mt-10">
|
||||
<table class="thwcfd_pp_table compact thwcfd-display-info">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
|
||||
/*-------------------------------*/
|
||||
/*------ Form Field Groups ------*/
|
||||
/*-------------------------------*/
|
||||
private function render_form_fragment_general($input_field = true){
|
||||
?>
|
||||
<div class="err_msgs"></div>
|
||||
<table class="thwcfd_pp_table">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['type']);
|
||||
$this->render_form_elm_row($this->field_props['name']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function output_form_fragments(){
|
||||
$this->render_form_field_inputtext();
|
||||
$this->render_form_field_number();
|
||||
$this->render_form_field_password();
|
||||
$this->render_form_field_tel();
|
||||
$this->render_form_field_email();
|
||||
$this->render_form_field_textarea();
|
||||
$this->render_form_field_radio();
|
||||
$this->render_form_field_select();
|
||||
$this->render_form_field_multiselect();
|
||||
$this->render_form_field_checkbox();
|
||||
$this->render_form_field_checkboxgroup();
|
||||
$this->render_form_field_hidden();
|
||||
$this->render_form_field_heading();
|
||||
$this->render_form_field_default();
|
||||
$this->render_form_field_datetime_local();
|
||||
$this->render_form_field_date();
|
||||
$this->render_form_field_time();
|
||||
$this->render_form_field_month();
|
||||
$this->render_form_field_week();
|
||||
$this->render_form_field_url();
|
||||
$this->render_form_field_paragraph();
|
||||
}
|
||||
|
||||
private function render_form_field_inputtext(){
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_text" class="thwcfd_pp_table" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['placeholder']);
|
||||
$this->render_form_elm_row($this->field_props['default']);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['validate']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_field_number(){
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_number" class="thwcfd_pp_table" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['placeholder']);
|
||||
$this->render_form_elm_row($this->field_props['default']);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_field_password(){
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_password" class="thwcfd_field_form_table" width="100%" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['placeholder']);
|
||||
$this->render_form_elm_row($this->field_props['default']);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['validate']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_field_tel(){
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_tel" class="thwcfd_field_form_table" width="100%" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['placeholder']);
|
||||
$this->render_form_elm_row($this->field_props['default']);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['validate']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_field_email(){
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_email" class="thwcfd_field_form_table" width="100%" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['placeholder']);
|
||||
$this->render_form_elm_row($this->field_props['default']);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['validate']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_field_textarea(){
|
||||
$value_props = $this->field_props['default'];
|
||||
$value_props['type'] = 'textarea';
|
||||
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_textarea" class="thwcfd_field_form_table" width="100%" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['placeholder']);
|
||||
$this->render_form_elm_row($value_props);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['validate']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_field_select(){
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_select" class="thwcfd_field_form_table" width="100%" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['placeholder']);
|
||||
$this->render_form_elm_row($this->field_props['default']);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['validate']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
|
||||
$this->render_form_fragment_h_spacing();
|
||||
$this->render_form_fragment_options();
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_field_multiselect(){
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_multiselect" class="thwcfd_field_form_table" width="100%" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['placeholder']);
|
||||
$this->render_form_elm_row($this->field_props['default']);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
|
||||
$this->render_form_fragment_h_spacing();
|
||||
$this->render_form_fragment_options();
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_field_radio(){
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_radio" class="thwcfd_field_form_table" width="100%" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['placeholder']);
|
||||
$this->render_form_elm_row($this->field_props['default']);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['validate']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
|
||||
$this->render_form_fragment_h_spacing();
|
||||
$this->render_form_fragment_options();
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_field_checkbox(){
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_checkbox" class="thwcfd_field_form_table" width="100%" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['default']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['checked']);
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_field_checkboxgroup(){
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_checkboxgroup" class="thwcfd_field_form_table" width="100%" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['default']);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
|
||||
$this->render_form_fragment_h_spacing();
|
||||
$this->render_form_fragment_options();
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_field_hidden(){
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_hidden" class="thwcfd_field_form_table" width="100%" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['default']);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_field_heading(){
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_heading" class="thwcfd_field_form_table" width="100%" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['title_type']);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_field_default(){
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_default" class="thwcfd_field_form_table" width="100%" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['placeholder']);
|
||||
$this->render_form_elm_row($this->field_props['default']);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['validate']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
private function render_form_field_datetime_local(){
|
||||
$placeholder_props = $this->field_props['default'];
|
||||
$placeholder_props['placeholder'] = 'YYYY-MM-DDThh:mm';
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_datetime_local" class="thwcfd_pp_table" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
// $this->render_form_elm_row($this->field_props['default']);
|
||||
$this->render_form_elm_row($placeholder_props);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['validate']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
private function render_form_field_date(){
|
||||
$placeholder_props = $this->field_props['default'];
|
||||
$placeholder_props['placeholder'] = 'yyyy-mm-dd';
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_date" class="thwcfd_pp_table" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($placeholder_props);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['validate']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
private function render_form_field_time(){
|
||||
$placeholder_props = $this->field_props['default'];
|
||||
$placeholder_props['placeholder'] = 'hh:mm';
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_time" class="thwcfd_pp_table" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($placeholder_props);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['validate']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
private function render_form_field_month(){
|
||||
$placeholder_props = $this->field_props['default'];
|
||||
$placeholder_props['placeholder'] = 'yyyy-MM';
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_month" class="thwcfd_pp_table" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($placeholder_props);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['validate']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
private function render_form_field_week(){
|
||||
$placeholder_props = $this->field_props['default'];
|
||||
$placeholder_props['placeholder'] = 'yyyy-Www';
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_week" class="thwcfd_pp_table" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($placeholder_props);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['validate']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
private function render_form_field_url(){
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_url" class="thwcfd_pp_table" style="display:none;">
|
||||
<?php
|
||||
$this->render_form_elm_row($this->field_props['label']);
|
||||
$this->render_form_elm_row($this->field_props['placeholder']);
|
||||
$this->render_form_elm_row($this->field_props['default']);
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($this->field_props['validate']);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['required']);
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_email']);
|
||||
$this->render_form_elm_row_cb($this->field_props['show_in_order']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
private function render_form_field_paragraph(){
|
||||
$label_props = $this->field_props['label'];
|
||||
$label_props['label'] = 'Content';
|
||||
?>
|
||||
<table id="thwcfd_field_form_id_paragraph" class="thwcfd_pp_table" style="display:none;">
|
||||
<?php
|
||||
|
||||
$this->render_form_elm_row($this->field_props['class']);
|
||||
$this->render_form_elm_row($label_props);
|
||||
|
||||
$this->render_form_elm_row_cb($this->field_props['enabled']);
|
||||
?>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_fragment_options(){
|
||||
?>
|
||||
<tr>
|
||||
<td class="sub-title"><?php _e('Options', 'woo-checkout-field-editor-pro'); ?></td>
|
||||
<?php $this->render_form_fragment_tooltip(); ?>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="3" class="p-0">
|
||||
<table border="0" cellpadding="0" cellspacing="0" class="thwcfd-option-list thpladmin-options-table"><tbody>
|
||||
<tr>
|
||||
<td class="key"><input type="text" name="i_options_key[]" placeholder="<?php _e('Option Value', 'woo-checkout-field-editor-pro'); ?>"></td>
|
||||
<td class="value"><input type="text" name="i_options_text[]" placeholder="<?php _e('Option Text', 'woo-checkout-field-editor-pro'); ?>"></td>
|
||||
<td class="action-cell">
|
||||
<a href="javascript:void(0)" onclick="thwcfdAddNewOptionRow(this)" class="btn btn-tiny btn-primary" title="<?php _e('Add new option', 'woo-checkout-field-editor-pro'); ?>">+</a><a href="javascript:void(0)" onclick="thwcfdRemoveOptionRow(this)" class="btn btn-tiny btn-danger" title="<?php _e('Remove option', 'woo-checkout-field-editor-pro'); ?>">x</a><span class="btn btn-tiny sort ui-sortable-handle"></span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody></table>
|
||||
</td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
}
|
||||
|
||||
endif;
|
||||
@@ -0,0 +1,426 @@
|
||||
<?php
|
||||
/**
|
||||
* The admin settings page functionality of the plugin.
|
||||
*
|
||||
* @link https://themehigh.com
|
||||
*
|
||||
* @package woo-checkout-field-editor-pro
|
||||
* @subpackage woo-checkout-field-editor-pro/admin
|
||||
*/
|
||||
|
||||
if(!defined('WPINC')){ die; }
|
||||
|
||||
if(!class_exists('THWCFD_Admin_Form')):
|
||||
|
||||
abstract class THWCFD_Admin_Form {
|
||||
public $cell_props = array();
|
||||
public $cell_props_TA = array();
|
||||
public $cell_props_CP = array();
|
||||
public $cell_props_CB = array();
|
||||
|
||||
public function __construct() {
|
||||
$this->init_constants();
|
||||
}
|
||||
|
||||
private function init_constants(){
|
||||
$this->cell_props = array(
|
||||
'label_cell_props' => 'class="label"',
|
||||
'input_cell_props' => 'class="field"',
|
||||
'input_width' => '260px',
|
||||
);
|
||||
$this->cell_props_TA = array(
|
||||
'label_cell_props' => 'class="label"',
|
||||
'input_cell_props' => 'class="field"',
|
||||
'input_width' => '260px',
|
||||
'rows' => 10,
|
||||
'cols' => 29,
|
||||
);
|
||||
$this->cell_props_CP = array(
|
||||
'label_cell_props' => 'class="label"',
|
||||
'input_cell_props' => 'class="field"',
|
||||
'input_width' => '223px',
|
||||
);
|
||||
|
||||
$this->cell_props_CB = array(
|
||||
'label_props' => 'style="margin-right: 40px;"',
|
||||
);
|
||||
$this->cell_props_CBS = array(
|
||||
'label_props' => 'style="margin-right: 15px;"',
|
||||
);
|
||||
$this->cell_props_CBL = array(
|
||||
'label_props' => 'style="margin-right: 52px;"',
|
||||
);
|
||||
|
||||
$this->field_props = $this->get_field_form_props();
|
||||
$this->field_props_display = $this->get_field_form_props_display();
|
||||
}
|
||||
|
||||
public function render_form_field_element($field, $args = array(), $render_cell = true){
|
||||
if($field && is_array($field)){
|
||||
$defaults = array(
|
||||
'label_cell_props' => 'class="label"',
|
||||
'input_cell_props' => 'class="field"',
|
||||
'label_cell_colspan' => '',
|
||||
'input_cell_colspan' => '',
|
||||
);
|
||||
$args = wp_parse_args( $args, $defaults );
|
||||
|
||||
$ftype = isset($field['type']) ? $field['type'] : 'text';
|
||||
$flabel = isset($field['label']) && !empty($field['label']) ? $field['label'] : '';
|
||||
$sub_label = isset($field['sub_label']) && !empty($field['sub_label']) ? $field['sub_label'] : '';
|
||||
$tooltip = isset($field['hint_text']) && !empty($field['hint_text']) ? $field['hint_text'] : '';
|
||||
|
||||
$field_html = '';
|
||||
|
||||
if($ftype == 'text'){
|
||||
$field_html = $this->render_form_field_element_inputtext($field, $args);
|
||||
|
||||
}else if($ftype == 'textarea'){
|
||||
$field_html = $this->render_form_field_element_textarea($field, $args);
|
||||
|
||||
}else if($ftype == 'select'){
|
||||
$field_html = $this->render_form_field_element_select($field, $args);
|
||||
|
||||
}else if($ftype == 'multiselect'){
|
||||
$field_html = $this->render_form_field_element_multiselect($field, $args);
|
||||
|
||||
}else if($ftype == 'colorpicker'){
|
||||
$field_html = $this->render_form_field_element_colorpicker($field, $args);
|
||||
|
||||
}else if($ftype == 'checkbox'){
|
||||
$field_html = $this->render_form_field_element_checkbox($field, $args, $render_cell);
|
||||
$flabel = ' ';
|
||||
|
||||
}else if($ftype == 'number'){
|
||||
$field_html = $this->render_form_field_element_number($field, $args);
|
||||
}
|
||||
|
||||
if($render_cell){
|
||||
$required_html = isset($field['required']) && $field['required'] ? '<abbr class="required" title="required">*</abbr>' : '';
|
||||
|
||||
$label_cell_props = !empty($args['label_cell_props']) ? $args['label_cell_props'] : '';
|
||||
$input_cell_props = !empty($args['input_cell_props']) ? $args['input_cell_props'] : '';
|
||||
|
||||
?>
|
||||
<td <?php echo $label_cell_props ?> >
|
||||
<?php echo $flabel; echo $required_html;
|
||||
if($sub_label){
|
||||
?>
|
||||
<br/><span class="thpladmin-subtitle"><?php echo $sub_label; ?></span>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</td>
|
||||
<?php $this->render_form_fragment_tooltip($tooltip); ?>
|
||||
<td <?php echo $input_cell_props ?> ><?php echo $field_html; ?></td>
|
||||
<?php
|
||||
}else{
|
||||
echo $field_html;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private function prepare_form_field_props($field, $args = array()){
|
||||
$field_props = '';
|
||||
|
||||
$defaults = array(
|
||||
'input_width' => '',
|
||||
'input_name_prefix' => 'i_',
|
||||
'input_name_suffix' => '',
|
||||
);
|
||||
$args = wp_parse_args( $args, $defaults );
|
||||
|
||||
$ftype = isset($field['type']) ? $field['type'] : 'text';
|
||||
|
||||
$input_class = '';
|
||||
if($ftype == 'text'){
|
||||
$input_class = 'thwcfd-inputtext';
|
||||
}else if($ftype == 'number'){
|
||||
$input_class = 'thwcfd-inputtext';
|
||||
}else if($ftype == 'select'){
|
||||
$input_class = 'thwcfd-select';
|
||||
}else if($ftype == 'multiselect' || $ftype == 'multiselect_grouped'){
|
||||
$input_class = 'thwcfd-select thwcfd-enhanced-multi-select';
|
||||
}else if($ftype == 'colorpicker'){
|
||||
$input_class = 'thwcfd-color thpladmin-colorpick';
|
||||
}
|
||||
|
||||
if($ftype == 'multiselect' || $ftype == 'multiselect_grouped'){
|
||||
$args['input_name_suffix'] = $args['input_name_suffix'].'[]';
|
||||
}
|
||||
|
||||
$fname = $args['input_name_prefix'].$field['name'].$args['input_name_suffix'];
|
||||
$fvalue = isset($field['value']) ? esc_html($field['value']) : '';
|
||||
|
||||
$input_width = $args['input_width'] ? 'width:'.$args['input_width'].';' : '';
|
||||
$field_props = 'name="'. $fname .'" style="'. $input_width .'"';
|
||||
$field_props .= !empty($input_class) ? ' class="'. $input_class .'"' : '';
|
||||
$field_props .= $ftype == 'textarea' ? '' : ' value="'. $fvalue .'"';
|
||||
$field_props .= $ftype == 'multiselect_grouped' ? ' data-value="'. $fvalue .'"' : '';
|
||||
$field_props .= ( isset($field['placeholder']) && !empty($field['placeholder']) ) ? ' placeholder="'.$field['placeholder'].'"' : '';
|
||||
$field_props .= ( isset($field['onchange']) && !empty($field['onchange']) ) ? ' onchange="'.$field['onchange'].'"' : '';
|
||||
|
||||
if( $ftype == 'number' ){
|
||||
$min = isset( $field['min'] ) ? $field['min'] : '';
|
||||
$max = isset( $field['max'] ) ? $field['max'] : '';
|
||||
$field_props .= ' min="'.$min.'" max="'.$max.'"';
|
||||
}
|
||||
|
||||
return $field_props;
|
||||
}
|
||||
|
||||
private function render_form_field_element_inputtext($field, $atts = array()){
|
||||
$field_html = '';
|
||||
if($field && is_array($field)){
|
||||
$field_props = $this->prepare_form_field_props($field, $atts);
|
||||
$field_html = '<input type="text" '. $field_props .' />';
|
||||
}
|
||||
return $field_html;
|
||||
}
|
||||
|
||||
private function render_form_field_element_textarea($field, $args = array()){
|
||||
$field_html = '';
|
||||
if($field && is_array($field)){
|
||||
$args = wp_parse_args( $args, array(
|
||||
'rows' => '5',
|
||||
'cols' => '29',
|
||||
));
|
||||
|
||||
$fvalue = isset($field['value']) ? $field['value'] : '';
|
||||
$field_props = $this->prepare_form_field_props($field, $args);
|
||||
$field_html = '<textarea '. $field_props .' rows="'.$args['rows'].'" cols="'.$args['cols'].'" >'.$fvalue.'</textarea>';
|
||||
}
|
||||
return $field_html;
|
||||
}
|
||||
|
||||
private function render_form_field_element_select($field, $atts = array()){
|
||||
$field_html = '';
|
||||
if($field && is_array($field)){
|
||||
$fvalue = isset($field['value']) ? $field['value'] : '';
|
||||
$field_props = $this->prepare_form_field_props($field, $atts);
|
||||
|
||||
$field_html = '<select '. $field_props .' >';
|
||||
foreach($field['options'] as $value => $label){
|
||||
$selected = $value === $fvalue ? 'selected' : '';
|
||||
$field_html .= '<option value="'. trim($value) .'" '.$selected.'>'. __($label, 'woo-checkout-field-editor-pro') .'</option>';
|
||||
}
|
||||
$field_html .= '</select>';
|
||||
}
|
||||
return $field_html;
|
||||
}
|
||||
|
||||
private function render_form_field_element_multiselect($field, $atts = array()){
|
||||
$field_html = '';
|
||||
if($field && is_array($field)){
|
||||
$field_props = $this->prepare_form_field_props($field, $atts);
|
||||
|
||||
$field_html = '<select multiple="multiple" '. $field_props .'>';
|
||||
foreach($field['options'] as $value => $label){
|
||||
//$selected = $value === $fvalue ? 'selected' : '';
|
||||
$field_html .= '<option value="'. trim($value) .'" >'. __($label, 'woo-checkout-field-editor-pro') .'</option>';
|
||||
}
|
||||
$field_html .= '</select>';
|
||||
}
|
||||
return $field_html;
|
||||
}
|
||||
|
||||
private function render_form_field_element_multiselect_grouped($field, $atts = array()){
|
||||
$field_html = '';
|
||||
if($field && is_array($field)){
|
||||
$field_props = $this->prepare_form_field_props($field, $atts);
|
||||
|
||||
$field_html = '<select multiple="multiple" '. $field_props .'>';
|
||||
foreach($field['options'] as $group_label => $fields){
|
||||
$field_html .= '<optgroup label="'. $group_label .'">';
|
||||
|
||||
foreach($fields as $value => $label){
|
||||
$value = trim($value);
|
||||
if(isset($field['glue']) && !empty($field['glue'])){
|
||||
$value = $value.$field['glue'].trim($label);
|
||||
}
|
||||
|
||||
$field_html .= '<option value="'. $value .'">'. __($label, 'woo-checkout-field-editor-pro') .'</option>';
|
||||
}
|
||||
|
||||
$field_html .= '</optgroup>';
|
||||
}
|
||||
$field_html .= '</select>';
|
||||
}
|
||||
return $field_html;
|
||||
}
|
||||
|
||||
private function render_form_field_element_radio($field, $atts = array()){
|
||||
$field_html = '';
|
||||
/*if($field && is_array($field)){
|
||||
$field_props = $this->prepare_form_field_props($field, $atts);
|
||||
|
||||
$field_html = '<select '. $field_props .' >';
|
||||
foreach($field['options'] as $value => $label){
|
||||
$selected = $value === $fvalue ? 'selected' : '';
|
||||
$field_html .= '<option value="'. trim($value) .'" '.$selected.'>'. __($label, 'woo-checkout-field-editor-pro') .'</option>';
|
||||
}
|
||||
$field_html .= '</select>';
|
||||
}*/
|
||||
return $field_html;
|
||||
}
|
||||
|
||||
private function render_form_field_element_checkbox($field, $atts = array(), $render_cell = true){
|
||||
$field_html = '';
|
||||
if($field && is_array($field)){
|
||||
$args = shortcode_atts( array(
|
||||
'label_props' => '',
|
||||
'cell_props' => '',
|
||||
'input_props' => '',
|
||||
'id_prefix' => 'a_f',
|
||||
'render_input_cell' => false,
|
||||
), $atts );
|
||||
|
||||
$fid = $args['id_prefix']. $field['name'];
|
||||
$flabel = isset($field['label']) && !empty($field['label']) ? __($field['label'], 'woo-checkout-field-editor-pro') : '';
|
||||
|
||||
$field_props = $this->prepare_form_field_props($field, $atts);
|
||||
$field_props .= isset($field['checked']) && $field['checked'] === 1 ? ' checked' : '';
|
||||
$field_props .= $args['input_props'];
|
||||
|
||||
$field_html = '<input type="checkbox" id="'. $fid .'" '. $field_props .' />';
|
||||
$field_html .= '<label for="'. $fid .'" '. $args['label_props'] .' > '. $flabel .'</label>';
|
||||
}
|
||||
if(!$render_cell && $args['render_input_cell']){
|
||||
return '<td '. $args['cell_props'] .' >'. $field_html .'</td>';
|
||||
}else{
|
||||
return $field_html;
|
||||
}
|
||||
}
|
||||
|
||||
private function render_form_field_element_colorpicker($field, $atts = array()){
|
||||
$field_html = '';
|
||||
if($field && is_array($field)){
|
||||
$field_props = $this->prepare_form_field_props($field, $atts);
|
||||
|
||||
$field_html = '<span class="thpladmin-colorpickpreview '.$field['name'].'_preview" style=""></span>';
|
||||
$field_html .= '<input type="text" '. $field_props .' >';
|
||||
}
|
||||
return $field_html;
|
||||
}
|
||||
|
||||
private function render_form_field_element_number($field, $atts = array() ){
|
||||
$field_html = '';
|
||||
if($field && is_array($field)){
|
||||
$field_props = $this->prepare_form_field_props($field, $atts);
|
||||
$field_html = '<input type="number" '. $field_props .' />';
|
||||
}
|
||||
return $field_html;
|
||||
}
|
||||
|
||||
public function render_form_fragment_tooltip($tooltip = false){
|
||||
if($tooltip){
|
||||
?>
|
||||
<td class="tip" style="width: 26px; padding:0px;">
|
||||
<a href="javascript:void(0)" title="<?php echo $tooltip; ?>" class="thwcfd_tooltip"><img src="<?php echo THWCFD_ASSETS_URL_ADMIN; ?>/css/help.png" title=""/></a>
|
||||
</td>
|
||||
<?php
|
||||
}else{
|
||||
?>
|
||||
<td style="width: 26px; padding:0px;"></td>
|
||||
<?php
|
||||
}
|
||||
}
|
||||
|
||||
public function render_form_fragment_h_spacing($padding = 5){
|
||||
$style = $padding ? 'padding-top:'.$padding.'px;' : '';
|
||||
?>
|
||||
<tr><td colspan="3" style="<?php echo $style ?>"></td></tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
public function render_form_fragment_h_separator($atts = array()){
|
||||
$args = shortcode_atts( array(
|
||||
'colspan' => 6,
|
||||
'padding-top' => '5px',
|
||||
'border-style' => 'dashed',
|
||||
'border-width' => '1px',
|
||||
'border-color' => '#e6e6e6',
|
||||
'content' => '',
|
||||
), $atts );
|
||||
|
||||
$style = $args['padding-top'] ? 'padding-top:'.$args['padding-top'].';' : '';
|
||||
$style .= $args['border-style'] ? ' border-bottom:'.$args['border-width'].' '.$args['border-style'].' '.$args['border-color'].';' : '';
|
||||
|
||||
?>
|
||||
<tr><td colspan="<?php echo $args['colspan']; ?>" style="<?php echo $style; ?>"><?php echo $args['content']; ?></td></tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
public function render_form_field_blank($colspan = 3){
|
||||
?>
|
||||
<td colspan="<?php echo $colspan; ?>"> </td>
|
||||
<?php
|
||||
}
|
||||
|
||||
public function render_form_section_separator($props, $atts=array()){
|
||||
?>
|
||||
<tr valign="top"><td colspan="<?php echo $props['colspan']; ?>" style="height:10px;"></td></tr>
|
||||
<tr valign="top"><td colspan="<?php echo $props['colspan']; ?>" class="thpladmin-form-section-title" ><?php echo $props['title']; ?></td></tr>
|
||||
<tr valign="top"><td colspan="<?php echo $props['colspan']; ?>" style="height:0px;"></td></tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
/*----- Tab Title -----*/
|
||||
public function render_form_tab_main_title($title){
|
||||
?>
|
||||
<main-title classname="main-title">
|
||||
<button class="device-mobile btn--back Button">
|
||||
<i class="button-icon button-icon-before i-arrow-back"></i>
|
||||
</button>
|
||||
<span class="device-mobile main-title-icon text-primary"><i class="i-check drishy"></i><?php echo $title; ?></span>
|
||||
<span class="device-desktop"><?php echo $title; ?></span>
|
||||
</main-title>
|
||||
<?php
|
||||
}
|
||||
|
||||
/*----- Form Element Row -----*/
|
||||
public function render_form_elm_row($field, $args=array()){
|
||||
$row_class = $this->prepare_settings_row_class( $field );
|
||||
?>
|
||||
<tr class="<?php echo esc_attr( $row_class ); ?>">
|
||||
<?php $this->render_form_field_element($field, $this->cell_props); ?>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
public function render_form_elm_row_ta($field, $args=array()){
|
||||
$row_class = $this->prepare_settings_row_class( $field );
|
||||
?>
|
||||
<tr class="<?php echo esc_attr( $row_class ); ?>">
|
||||
<?php $this->render_form_field_element($field, $this->cell_props_TA); ?>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
public function render_form_elm_row_cb($field, $args=array()){
|
||||
$row_class = $this->prepare_settings_row_class( $field );
|
||||
?>
|
||||
<tr class="<?php echo esc_attr( $row_class ); ?>">
|
||||
<td colspan="2"></td>
|
||||
<td class="field">
|
||||
<?php $this->render_form_field_element($field, $this->cell_props_CB, false); ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
public function render_form_elm_row_cp($field, $args=array()){
|
||||
?>
|
||||
<tr>
|
||||
<?php $this->render_form_field_element($field, $this->cell_props_CP); ?>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
public function prepare_settings_row_class( $field ){
|
||||
$name = isset($field['name']) ? $field['name'] : '';
|
||||
return 'form_field_'.$name;
|
||||
}
|
||||
}
|
||||
|
||||
endif;
|
||||
@@ -0,0 +1,363 @@
|
||||
<?php
|
||||
/**
|
||||
* The admin advanced settings page functionality of the plugin.
|
||||
*
|
||||
* @link https://themehigh.com
|
||||
* @since 1.4.4
|
||||
*
|
||||
* @package woo-checkout-field-editor-pro
|
||||
* @subpackage woo-checkout-field-editor-pro/admin
|
||||
*/
|
||||
|
||||
if(!defined('WPINC')){ die; }
|
||||
|
||||
if(!class_exists('THWCFD_Admin_Settings_Advanced')):
|
||||
|
||||
class THWCFD_Admin_Settings_Advanced extends THWCFD_Admin_Settings{
|
||||
protected static $_instance = null;
|
||||
protected $tabs = '';
|
||||
|
||||
private $settings_fields = NULL;
|
||||
private $cell_props = array();
|
||||
private $cell_props_CB = array();
|
||||
private $cell_props_TA = array();
|
||||
|
||||
public function __construct() {
|
||||
parent::__construct();
|
||||
|
||||
$this->page_id = 'advanced_settings';
|
||||
$this->init_constants();
|
||||
}
|
||||
|
||||
public static function instance() {
|
||||
if(is_null(self::$_instance)){
|
||||
self::$_instance = new self();
|
||||
}
|
||||
return self::$_instance;
|
||||
}
|
||||
|
||||
public function init_constants(){
|
||||
$this->cell_props = array(
|
||||
'label_cell_props' => 'class="label"',
|
||||
'input_cell_props' => 'class="field"',
|
||||
'input_width' => '260px',
|
||||
'label_cell_th' => true
|
||||
);
|
||||
|
||||
$this->cell_props_TA = array(
|
||||
'label_cell_props' => 'class="label"',
|
||||
'input_cell_props' => 'class="field"',
|
||||
'rows' => 10,
|
||||
'cols' => 100,
|
||||
);
|
||||
|
||||
$this->cell_props_CB = array(
|
||||
'label_props' => 'style="margin-right: 40px;"',
|
||||
);
|
||||
|
||||
$this->settings_fields = $this->get_advanced_settings_fields();
|
||||
}
|
||||
|
||||
public function get_advanced_settings_fields(){
|
||||
return array(
|
||||
'enable_label_override' => array(
|
||||
'name'=>'enable_label_override', 'label'=>__('Enable label override for address fields.', 'woo-checkout-field-editor-pro'), 'type'=>'checkbox', 'value'=>'1', 'checked'=>1
|
||||
),
|
||||
'enable_placeholder_override' => array(
|
||||
'name'=>'enable_placeholder_override', 'label'=>__('Enable placeholder override for address fields.', 'woo-checkout-field-editor-pro'), 'type'=>'checkbox', 'value'=>'1', 'checked'=>1
|
||||
),
|
||||
'enable_class_override' => array(
|
||||
'name'=>'enable_class_override', 'label'=>__('Enable class override for address fields.', 'woo-checkout-field-editor-pro'), 'type'=>'checkbox', 'value'=>'1', 'checked'=>1
|
||||
),
|
||||
'enable_priority_override' => array(
|
||||
'name'=>'enable_priority_override', 'label'=>__('Enable priority override for address fields.', 'woo-checkout-field-editor-pro'), 'type'=>'checkbox', 'value'=>'1', 'checked'=>1
|
||||
),
|
||||
'enable_required_override' => array(
|
||||
'name'=>'enable_required_override', 'label'=>__('Enable required validation override for address fields.', 'woo-checkout-field-editor-pro'), 'type'=>'checkbox', 'value'=>'1', 'checked'=>1
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
public function render_page(){
|
||||
$this->render_tabs();
|
||||
$this->render_content();
|
||||
}
|
||||
|
||||
public function save_advanced_settings($settings){
|
||||
$result = update_option(THWCFD_Utils::OPTION_KEY_ADVANCED_SETTINGS, $settings, 'no');
|
||||
return $result;
|
||||
}
|
||||
|
||||
private function reset_settings(){
|
||||
$nonse = isset($_REQUEST['thwcfd_security_advanced_settings']) ? $_REQUEST['thwcfd_security_advanced_settings'] : false;
|
||||
$capability = THWCFD_Utils::wcfd_capability();
|
||||
if(!wp_verify_nonce($nonse, 'thwcfd_advanced_settings') || !current_user_can($capability)){
|
||||
die();
|
||||
}
|
||||
|
||||
delete_option(THWCFD_Utils::OPTION_KEY_ADVANCED_SETTINGS);
|
||||
$this->print_notices(__('Settings successfully reset.', 'woo-checkout-field-editor-pro'), 'updated', false);
|
||||
}
|
||||
|
||||
private function save_settings(){
|
||||
$nonse = isset($_REQUEST['thwcfd_security_advanced_settings']) ? $_REQUEST['thwcfd_security_advanced_settings'] : false;
|
||||
$capability = THWCFD_Utils::wcfd_capability();
|
||||
if(!wp_verify_nonce($nonse, 'thwcfd_advanced_settings') || !current_user_can($capability)){
|
||||
die();
|
||||
}
|
||||
|
||||
$settings = array();
|
||||
|
||||
foreach( $this->settings_fields as $name => $field ) {
|
||||
$value = '';
|
||||
|
||||
if($field['type'] === 'checkbox'){
|
||||
$value = !empty( $_POST['i_'.$name] ) ? '1' : '';
|
||||
|
||||
}else if($field['type'] === 'multiselect_grouped'){
|
||||
$value = !empty( $_POST['i_'.$name] ) ? $_POST['i_'.$name] : '';
|
||||
$value = is_array($value) ? implode(',', wc_clean(wp_unslash($value))) : wc_clean(wp_unslash($value));
|
||||
|
||||
}else if($field['type'] === 'text' || $field['type'] === 'textarea'){
|
||||
$value = !empty( $_POST['i_'.$name] ) ? $_POST['i_'.$name] : '';
|
||||
$value = !empty($value) ? wc_clean( wp_unslash($value)) : '';
|
||||
|
||||
}else{
|
||||
$value = !empty( $_POST['i_'.$name] ) ? $_POST['i_'.$name] : '';
|
||||
$value = !empty($value) ? wc_clean( wp_unslash($value)) : '';
|
||||
}
|
||||
|
||||
$settings[$name] = $value;
|
||||
}
|
||||
|
||||
$result = $this->save_advanced_settings($settings);
|
||||
if ($result == true) {
|
||||
$this->print_notices(__('Your changes were saved.', 'woo-checkout-field-editor-pro'), 'updated', false);
|
||||
} else {
|
||||
$this->print_notices(__('Your changes were not saved due to an error (or you made none!).', 'woo-checkout-field-editor-pro'), 'error', false);
|
||||
}
|
||||
}
|
||||
|
||||
private function render_content(){
|
||||
if(isset($_POST['reset_settings']))
|
||||
$this->reset_settings();
|
||||
|
||||
if(isset($_POST['save_settings']))
|
||||
$this->save_settings();
|
||||
|
||||
if(isset($_POST['save_plugin_settings']))
|
||||
$result = $this->save_plugin_settings();
|
||||
|
||||
$this->render_plugin_settings();
|
||||
$this->render_import_export_settings();
|
||||
}
|
||||
|
||||
private function render_plugin_settings(){
|
||||
$settings = THWCFD_Utils::get_advanced_settings();
|
||||
?>
|
||||
<div style="padding-left: 30px;">
|
||||
<form id="advanced_settings_form" method="post" action="">
|
||||
<table class="thwcfd-settings-table thpladmin-form-table">
|
||||
<tbody>
|
||||
<?php
|
||||
$this->render_locale_override_settings($settings);
|
||||
?>
|
||||
</tbody>
|
||||
</table>
|
||||
<p class="submit">
|
||||
<input type="submit" name="save_settings" class="btn btn-small btn-primary" value="Save changes">
|
||||
<input type="submit" name="reset_settings" class="btn btn-small" value="Reset to default"
|
||||
onclick="return confirm(<?php _e('Are you sure you want to reset to default settings? all your changes will be deleted.', 'woo-checkout-field-editor-pro'); ?>)">
|
||||
</p>
|
||||
<?php wp_nonce_field( 'thwcfd_advanced_settings', 'thwcfd_security_advanced_settings' ); ?>
|
||||
</form>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_locale_override_settings($settings){
|
||||
$this->render_form_elm_row_title('Locale override settings');
|
||||
$this->render_form_elm_row_cb($this->settings_fields['enable_label_override'], $settings, true);
|
||||
$this->render_form_elm_row_cb($this->settings_fields['enable_placeholder_override'], $settings, true);
|
||||
$this->render_form_elm_row_cb($this->settings_fields['enable_class_override'], $settings, true);
|
||||
$this->render_form_elm_row_cb($this->settings_fields['enable_priority_override'], $settings, true);
|
||||
$this->render_form_elm_row_cb($this->settings_fields['enable_required_override'], $settings, true);
|
||||
}
|
||||
|
||||
/************************************************
|
||||
*-------- IMPORT & EXPORT SETTINGS - START -----
|
||||
************************************************/
|
||||
public function prepare_plugin_settings(){
|
||||
$settings_billing = get_option(THWCFD_Utils::OPTION_KEY_BILLING_FIELDS);
|
||||
$settings_shipping = get_option(THWCFD_Utils::OPTION_KEY_SHIPPING_FIELDS);
|
||||
$settings_additional = get_option(THWCFD_Utils::OPTION_KEY_ADDITIONAL_FIELDS);
|
||||
$settings_advanced = get_option(THWCFD_Utils::OPTION_KEY_ADVANCED_SETTINGS);
|
||||
|
||||
$plugin_settings = array(
|
||||
'option_key_billing_fields' => $settings_billing,
|
||||
'option_key_shipping_fields' => $settings_shipping,
|
||||
'option_key_additional_fields' => $settings_additional,
|
||||
'option_key_advanced_settings' => $settings_advanced,
|
||||
);
|
||||
return base64_encode(json_encode($plugin_settings));
|
||||
}
|
||||
|
||||
public function render_import_export_settings(){
|
||||
/*
|
||||
if(isset($_POST['save_plugin_settings']))
|
||||
$result = $this->save_plugin_settings();
|
||||
*/
|
||||
|
||||
if(isset($_POST['import_settings'])){
|
||||
}
|
||||
|
||||
$plugin_settings = $this->prepare_plugin_settings();
|
||||
if(isset($_POST['export_settings']))
|
||||
echo $this->export_settings($plugin_settings);
|
||||
|
||||
$imp_exp_fields = array(
|
||||
'section_import_export' => array('title'=>__('Backup and Import Settings', 'woo-checkout-field-editor'), 'type'=>'separator', 'colspan'=>'3'),
|
||||
'settings_data' => array(
|
||||
'name'=>'settings_data', 'label'=>__('Plugin Settings Data', 'woo-checkout-field-editor'), 'type'=>'textarea', 'value' => $plugin_settings,
|
||||
'sub_label'=>__('You can transfer the saved settings data between different installs by copying the text inside the text box. To import data from another install, replace the data in the text box with the one from another install and click "Import Settings".', 'woo-checkout-field-editor'),
|
||||
),
|
||||
);
|
||||
?>
|
||||
<div style="padding-left: 30px;">
|
||||
<form id="import_export_settings_form" method="post" action="" class="clear">
|
||||
<table class="thwcfd-settings-table">
|
||||
<tbody>
|
||||
<?php
|
||||
$this->render_form_elm_row_title('Backup and Import Settings');
|
||||
$this->render_form_elm_row_ta($imp_exp_fields['settings_data']);
|
||||
?>
|
||||
</tbody>
|
||||
<tfoot>
|
||||
<tr valign="top">
|
||||
<td colspan="2"> </td>
|
||||
<td class="submit">
|
||||
<input type="submit" name="save_plugin_settings" class="btn btn-small btn-primary" value="<?php _e('Import Settings', 'woo-checkout-field-editor'); ?>">
|
||||
<?php wp_nonce_field( 'import_wcfd_settings', 'import_wcfd_nonce' ); ?>
|
||||
</td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
</table>
|
||||
</form>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
|
||||
public function save_plugin_settings(){
|
||||
|
||||
check_admin_referer( 'import_wcfd_settings', 'import_wcfd_nonce' );
|
||||
|
||||
$capability = THWCFD_Utils::wcfd_capability();
|
||||
if(!current_user_can($capability)){
|
||||
wp_die();
|
||||
}
|
||||
|
||||
if(isset($_POST['i_settings_data']) && !empty($_POST['i_settings_data'])) {
|
||||
$settings_data_encoded = sanitize_textarea_field(wp_unslash($_POST['i_settings_data']));
|
||||
$base64_decoded = base64_decode($settings_data_encoded);
|
||||
|
||||
if(!$this->is_json($base64_decoded,$return_data = false)){
|
||||
$this->print_notices(__('The entered import settings data is invalid. Please try again with valid data.', 'woo-checkout-field-editor-pro'), 'error', false);
|
||||
return false;
|
||||
}
|
||||
|
||||
// $settings = unserialize($base64_decoded, ['allowed_classes' => false]);
|
||||
$settings = json_decode($base64_decoded,true);
|
||||
|
||||
if($settings){
|
||||
foreach($settings as $key => $value){
|
||||
if($key === 'option_key_billing_fields'){
|
||||
$result = update_option(THWCFD_Utils::OPTION_KEY_BILLING_FIELDS, $value);
|
||||
}
|
||||
if($key === 'option_key_shipping_fields'){
|
||||
$result1 = update_option(THWCFD_Utils::OPTION_KEY_SHIPPING_FIELDS, $value);
|
||||
}
|
||||
if($key === 'option_key_additional_fields'){
|
||||
$result2 = update_option(THWCFD_Utils::OPTION_KEY_ADDITIONAL_FIELDS, $value);
|
||||
}
|
||||
if($key === 'option_key_advanced_settings'){
|
||||
$result3 = $this->save_advanced_settings($value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($result || $result1 || $result2 || $result3){
|
||||
$this->print_notices(__('Your Settings Updated.', 'woo-checkout-field-editor-pro'), 'updated', false);
|
||||
return true;
|
||||
}else{
|
||||
$this->print_notices(__('Your changes were not saved due to an error (or you made none!).', 'woo-checkout-field-editor-pro'), 'error', false);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function is_json($settings,$return_data = false) {
|
||||
$data = json_decode($settings);
|
||||
return (json_last_error() == JSON_ERROR_NONE) ? ($return_data ? $data : TRUE) : FALSE;
|
||||
}
|
||||
|
||||
/**********************************************
|
||||
*-------- IMPORT & EXPORT SETTINGS - END -----
|
||||
**********************************************/
|
||||
|
||||
|
||||
public function render_form_elm_row_title($title=''){
|
||||
?>
|
||||
<tr>
|
||||
<td colspan="3" class="section-title" ><?php echo $title; ?></td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_elm_row_ta($field, $settings=false){
|
||||
if(isset($field['name'])){
|
||||
$name = $field['name'];
|
||||
}
|
||||
if(is_array($settings) && isset($settings[$name])){
|
||||
$field['value'] = $settings[$name];
|
||||
}
|
||||
|
||||
?>
|
||||
<tr valign="top">
|
||||
<?php $this->render_form_field_element($field, $this->cell_props_TA); ?>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_form_elm_row_cb($field, $settings=false, $merge_cells=false){
|
||||
$name = $field['name'];
|
||||
if(is_array($settings) && isset($settings[$name])){
|
||||
if($field['value'] === $settings[$name]){
|
||||
$field['checked'] = 1;
|
||||
}else{
|
||||
$field['checked'] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if($merge_cells){
|
||||
?>
|
||||
<tr>
|
||||
<td colspan="3">
|
||||
<?php $this->render_form_field_element($field, $this->cell_props_CB, false); ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php
|
||||
}else{
|
||||
?>
|
||||
<tr>
|
||||
<td colspan="2"></td>
|
||||
<td class="field">
|
||||
<?php $this->render_form_field_element($field, $this->cell_props_CB, false); ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
endif;
|
||||
@@ -0,0 +1,565 @@
|
||||
<?php
|
||||
/**
|
||||
* Woo Checkout Field Editor Settings General
|
||||
*
|
||||
* @link https://themehigh.com
|
||||
* @since 1.3.6
|
||||
*
|
||||
* @package woo-checkout-field-editor-pro
|
||||
* @subpackage woo-checkout-field-editor-pro/classes
|
||||
*/
|
||||
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if(!class_exists('THWCFD_Admin_Settings_General')):
|
||||
|
||||
class THWCFD_Admin_Settings_General extends THWCFD_Admin_Settings{
|
||||
protected static $_instance = null;
|
||||
|
||||
private $field_form = null;
|
||||
private $field_form_props = array();
|
||||
|
||||
protected $tabs = '';
|
||||
protected $sections = '';
|
||||
|
||||
public function __construct() {
|
||||
parent::__construct();
|
||||
$this->page_id = 'fields';
|
||||
$this->section_id = 'billing';
|
||||
|
||||
$this->tabs = array(
|
||||
'fields' => __('Checkout Fields', 'woo-checkout-field-editor-pro'),
|
||||
'advanced_settings' => __('Advanced Settings', 'woo-checkout-field-editor-pro'),
|
||||
'pro' => __('Premium Features', 'woo-checkout-field-editor-pro'),
|
||||
'themehigh_plugins' => __('Other Free Plugins', 'woo-checkout-field-editor-pro'),
|
||||
);
|
||||
$this->sections = array(
|
||||
'billing' => __('Billing Fields', 'woo-checkout-field-editor-pro'),
|
||||
'shipping' => __('Shipping Fields', 'woo-checkout-field-editor-pro'),
|
||||
'additional' => __('Additional Fields', 'woo-checkout-field-editor-pro'),
|
||||
);
|
||||
}
|
||||
|
||||
public static function instance() {
|
||||
if(is_null(self::$_instance)){
|
||||
self::$_instance = new self();
|
||||
}
|
||||
return self::$_instance;
|
||||
}
|
||||
|
||||
public function define_admin_hooks(){
|
||||
// Show in order details page
|
||||
add_action('woocommerce_admin_order_data_after_order_details', array($this, 'order_data_after_order_details'), 20, 1);
|
||||
add_action('woocommerce_admin_order_data_after_billing_address', array($this, 'order_data_after_billing_address'), 20, 1);
|
||||
add_action('woocommerce_admin_order_data_after_shipping_address', array($this, 'order_data_after_shipping_address'), 20, 1);
|
||||
}
|
||||
|
||||
public function init(){
|
||||
$this->field_form = new THWCFD_Admin_Form_Field();
|
||||
$this->field_form_props = $this->field_form->get_field_form_props();
|
||||
|
||||
$this->render_page();
|
||||
}
|
||||
|
||||
public function reset_to_default() {
|
||||
$nonse = isset($_REQUEST['thwcfd_security_manage_fields']) ? $_REQUEST['thwcfd_security_manage_fields'] : false;
|
||||
$capability = THWCFD_Utils::wcfd_capability();
|
||||
if(!wp_verify_nonce($nonse, 'thwcfd_section_fields') || !current_user_can($capability)){
|
||||
die();
|
||||
}
|
||||
|
||||
delete_option('wc_fields_billing');
|
||||
delete_option('wc_fields_shipping');
|
||||
delete_option('wc_fields_additional');
|
||||
|
||||
return $this->print_notices(__('Checkout fields successfully reset', 'woo-checkout-field-editor-pro'), 'updated', true);
|
||||
}
|
||||
|
||||
public function render_page(){
|
||||
$this->output_tabs();
|
||||
$this->output_sections();
|
||||
$this->output_content();
|
||||
}
|
||||
|
||||
public function render_checkout_fields_heading_row(){
|
||||
?>
|
||||
<th class="sort"></th>
|
||||
<th class="check-column"><input type="checkbox" style="margin:0px 4px -1px -1px;" onclick="thwcfdSelectAllCheckoutFields(this)"/></th>
|
||||
<th class="name"><?php _e('Name', 'woo-checkout-field-editor-pro'); ?></th>
|
||||
<th class="id"><?php _e('Type', 'woo-checkout-field-editor-pro'); ?></th>
|
||||
<th><?php _e('Label', 'woo-checkout-field-editor-pro'); ?></th>
|
||||
<th><?php _e('Placeholder', 'woo-checkout-field-editor-pro'); ?></th>
|
||||
<th><?php _e('Validations', 'woo-checkout-field-editor-pro'); ?></th>
|
||||
<th class="status"><?php _e('Required', 'woo-checkout-field-editor-pro'); ?></th>
|
||||
<th class="status"><?php _e('Enabled', 'woo-checkout-field-editor-pro'); ?></th>
|
||||
<th class="action"><?php _e('Edit', 'woo-checkout-field-editor-pro'); ?></th>
|
||||
<?php
|
||||
}
|
||||
|
||||
public function render_actions_row($section){
|
||||
?>
|
||||
<th colspan="6">
|
||||
<button type="button" class="button button-primary" onclick="thwcfdOpenNewFieldForm('<?php echo $section; ?>')">+ <?php _e( 'Add field', 'woo-checkout-field-editor-pro' ); ?></button>
|
||||
<button type="button" class="button" onclick="thwcfdRemoveSelectedFields()"><?php _e('Remove', 'woo-checkout-field-editor-pro'); ?></button>
|
||||
<button type="button" class="button" onclick="thwcfdEnableSelectedFields()"><?php _e('Enable', 'woo-checkout-field-editor-pro'); ?></button>
|
||||
<button type="button" class="button" onclick="thwcfdDisableSelectedFields()"><?php _e('Disable', 'woo-checkout-field-editor-pro'); ?></button>
|
||||
</th>
|
||||
<th colspan="4">
|
||||
<input type="submit" name="save_fields" class="button-primary" value="<?php _e( 'Save changes', 'woo-checkout-field-editor-pro' ) ?>" style="float:right" />
|
||||
<input type="submit" name="reset_fields" class="button" value="<?php _e( 'Reset to default fields', 'woo-checkout-field-editor-pro' ) ?>" style="float:right; margin-right: 5px;"
|
||||
onclick="return confirm('<?php _e('Are you sure you want to reset to default fields? all your changes will be deleted.', 'woo-checkout-field-editor-pro' ); ?>')"/>
|
||||
</th>
|
||||
<?php
|
||||
}
|
||||
|
||||
public function output_content() {
|
||||
$section = $this->get_current_section();
|
||||
$action = isset($_POST['f_action']) ? $_POST['f_action'] : false;
|
||||
|
||||
if($action === 'new')
|
||||
echo $this->save_or_update_field($section, $action);
|
||||
|
||||
if($action === 'edit')
|
||||
echo $this->save_or_update_field($section, $action);
|
||||
|
||||
if(isset($_POST['save_fields']))
|
||||
echo $this->save_fields($section);
|
||||
|
||||
if(isset($_POST['reset_fields']))
|
||||
echo $this->reset_to_default();
|
||||
|
||||
$fields = THWCFD_Utils::get_fields($section);
|
||||
|
||||
?>
|
||||
<div class="wrap woocommerce"><div class="icon32 icon32-attributes" id="icon-woocommerce"><br /></div></div>
|
||||
<form method="post" id="thwcfd_checkout_fields_form" action="">
|
||||
<table id="thwcfd_checkout_fields" class="wc_gateways widefat thpladmin_fields_table" cellspacing="0">
|
||||
<thead>
|
||||
<tr><?php $this->render_actions_row($section); ?></tr>
|
||||
<tr><?php $this->render_checkout_fields_heading_row(); ?></tr>
|
||||
</thead>
|
||||
<tfoot>
|
||||
<tr><?php $this->render_checkout_fields_heading_row(); ?></tr>
|
||||
<tr><?php $this->render_actions_row($section); ?></tr>
|
||||
</tfoot>
|
||||
<tbody class="ui-sortable">
|
||||
<?php
|
||||
$i=0;
|
||||
foreach( $fields as $name => $field ) :
|
||||
$type = isset($field['type']) ? $field['type'] : '';
|
||||
$label = isset($field['label']) ? $field['label'] : '';
|
||||
$placeholder = isset($field['placeholder']) ? $field['placeholder'] : '';
|
||||
$validate = isset($field['validate']) ? $field['validate'] : '';
|
||||
$required = isset($field['required']) && $field['required'] ? 1 : 0;
|
||||
$enabled = isset($field['enabled']) && $field['enabled'] ? 1 : 0;
|
||||
$custom = isset($field['custom']) && $field['custom'] ? 1 : 0;
|
||||
|
||||
$validate = is_array($validate) ? implode(",", $validate) : '';
|
||||
|
||||
$required_status = $required ? '<span class="dashicons dashicons-yes tips" data-tip="Yes"></span>' : '-';
|
||||
$enabled_status = $enabled ? '<span class="dashicons dashicons-yes tips" data-tip="Yes"></span>' : '-';
|
||||
|
||||
$props_json = htmlspecialchars($this->get_property_set_json($name, $field));
|
||||
//$options_json = isset($field['options_json']) && $field['options_json'] ? htmlspecialchars($field['options_json']) : '';
|
||||
|
||||
$options_json = '';
|
||||
if($type === 'select' || $type === 'radio' || $type === 'checkboxgroup' || $type === 'multiselect'){
|
||||
$options = isset($field['options']) ? $field['options'] : '';
|
||||
$options_json = THWCFD_Utils::prepare_options_json($options);
|
||||
}
|
||||
?>
|
||||
<tr class="row_<?php echo $i; echo $enabled ? '' : ' thpladmin-disabled' ?>">
|
||||
<td width="1%" class="sort ui-sortable-handle">
|
||||
<input type="hidden" name="f_name[<?php echo $i; ?>]" class="f_name" value="<?php echo esc_attr($name); ?>" />
|
||||
<input type="hidden" name="f_name_new[<?php echo $i; ?>]" class="f_name_new" value="" />
|
||||
<input type="hidden" name="f_order[<?php echo $i; ?>]" class="f_order" value="<?php echo $i; ?>" />
|
||||
<input type="hidden" name="f_deleted[<?php echo $i; ?>]" class="f_deleted" value="0" />
|
||||
<input type="hidden" name="f_enabled[<?php echo $i; ?>]" class="f_enabled" value="<?php echo $enabled; ?>" />
|
||||
<input type="hidden" name="f_props[<?php echo $i; ?>]" class="f_props" value='<?php echo $props_json; ?>' />
|
||||
<input type="hidden" name="f_options[<?php echo $i; ?>]" class="f_options" value='<?php echo $options_json; ?>' />
|
||||
</td>
|
||||
<td class="td_select"><input type="checkbox" name="select_field"/></td>
|
||||
<td class="td_name"><?php echo esc_attr( $name ); ?></td>
|
||||
<td class="td_type"><?php echo esc_attr($type); ?></td>
|
||||
<td class="td_label"><?php echo esc_html_e($label, 'woo-checkout-field-editor-pro'); ?></td>
|
||||
<td class="td_placeholder"><?php echo esc_html_e($placeholder, 'woo-checkout-field-editor-pro'); ?></td>
|
||||
<td class="td_validate"><?php echo esc_html($validate); ?></td>
|
||||
<td class="td_required status"><?php echo $required_status; ?></td>
|
||||
<td class="td_enabled status"><?php echo $enabled_status; ?></td>
|
||||
<td class="td_edit action">
|
||||
<button type="button" class="button action-btn f_edit_btn" <?php echo($enabled ? '' : 'disabled') ?>
|
||||
onclick="thwcfdOpenEditFieldForm(this, <?php echo $i; ?>)"><?php _e('Edit', 'woo-checkout-field-editor-pro'); ?></button>
|
||||
</td>
|
||||
</tr>
|
||||
<?php
|
||||
$i++;
|
||||
endforeach;
|
||||
?>
|
||||
</tbody>
|
||||
</table>
|
||||
<?php wp_nonce_field( 'thwcfd_section_fields', 'thwcfd_security_manage_fields' ); ?>
|
||||
</form>
|
||||
|
||||
<?php
|
||||
$this->field_form->output_field_forms();
|
||||
}
|
||||
|
||||
public function get_property_set_json($name, $field){
|
||||
$json = '';
|
||||
if(is_array($field)){
|
||||
foreach($field as $pname => $pvalue){
|
||||
$pvalue = is_array($pvalue) ? implode(',', $pvalue) : $pvalue;
|
||||
$pvalue = is_string($pvalue) ? esc_attr($pvalue) : $pvalue;
|
||||
|
||||
$field[$pname] = $pvalue;
|
||||
}
|
||||
|
||||
$field['name'] = $name;
|
||||
$json = json_encode($field);
|
||||
}
|
||||
return $json;
|
||||
}
|
||||
|
||||
private function save_or_update_field($section, $action) {
|
||||
$nonse = isset($_REQUEST['thwcfd_security_manage_field']) ? $_REQUEST['thwcfd_security_manage_field'] : false;
|
||||
$capability = THWCFD_Utils::wcfd_capability();
|
||||
if(!wp_verify_nonce($nonse, 'thwcfd_field_form') || !current_user_can($capability)){
|
||||
die();
|
||||
}
|
||||
|
||||
try {
|
||||
$result = false;
|
||||
$fields = THWCFD_Utils::get_fields($section);
|
||||
$field = $this->prepare_field_from_posted_data($_POST);
|
||||
$this->add_wpml_support($field);
|
||||
$name = isset($field['name']) ? $field['name'] : false;
|
||||
|
||||
if($name){
|
||||
if($action === 'new'){
|
||||
$priority = THWCFD_Utils::prepare_field_priority($fields, false, true);
|
||||
$field['custom'] = 1;
|
||||
$field['priority'] = $priority;
|
||||
}else{
|
||||
$oname = isset($_POST['i_oname']) ? sanitize_key($_POST['i_oname']) : false;
|
||||
if($name && $oname && $name !== $oname ){
|
||||
unset($fields[$oname]);
|
||||
}
|
||||
}
|
||||
|
||||
$fields[$name] = $field;
|
||||
}
|
||||
|
||||
$result = THWCFD_Utils::update_fields($section, $fields);
|
||||
|
||||
if($result == true) {
|
||||
$this->print_notices(__('Your changes were saved.', 'woo-checkout-field-editor-pro' ), 'updated');
|
||||
}else {
|
||||
$this->print_notices(__('Your changes were not saved due to an error (or you made none!).', 'woo-checkout-field-editor-pro'), 'error');
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
$this->print_notices(__('Your changes were not saved due to an error.', 'woo-checkout-field-editor-pro'), 'error');
|
||||
}
|
||||
}
|
||||
|
||||
private function save_fields($section) {
|
||||
$nonse = isset($_REQUEST['thwcfd_security_manage_fields']) ? $_REQUEST['thwcfd_security_manage_fields'] : false;
|
||||
$capability = THWCFD_Utils::wcfd_capability();
|
||||
if(!wp_verify_nonce($nonse, 'thwcfd_section_fields') || !current_user_can($capability)){
|
||||
die();
|
||||
}
|
||||
|
||||
try {
|
||||
$f_names = !empty( $_POST['f_name'] ) ? $_POST['f_name'] : array();
|
||||
$f_names = array_map('sanitize_key', $f_names);
|
||||
if(empty($f_names)){
|
||||
$this->print_notices(__('Your changes were not saved due to no fields found.', 'woo-checkout-field-editor-pro'), 'error');
|
||||
return;
|
||||
}
|
||||
|
||||
$f_order = !empty( $_POST['f_order'] ) ? $_POST['f_order'] : array();
|
||||
$f_order = array_map('absint', $f_order);
|
||||
$f_deleted = !empty( $_POST['f_deleted'] ) ? $_POST['f_deleted'] : array();
|
||||
$f_deleted = array_map('absint', $f_deleted);
|
||||
$f_enabled = !empty( $_POST['f_enabled'] ) ? $_POST['f_enabled'] : array();
|
||||
$f_enabled = array_map('absint', $f_enabled);
|
||||
|
||||
$fields = THWCFD_Utils::get_fields($section);
|
||||
|
||||
$max = max( array_map( 'absint', array_keys( $f_names ) ) );
|
||||
for($i = 0; $i <= $max; $i++) {
|
||||
$name = $f_names[$i];
|
||||
|
||||
if(isset($fields[$name])){
|
||||
$is_deleted = isset($f_deleted[$i]) && $f_deleted[$i] ? true : false;
|
||||
|
||||
if($is_deleted){
|
||||
unset($fields[$name]);
|
||||
continue;
|
||||
}
|
||||
|
||||
$order = isset($f_order[$i]) ? $f_order[$i] : 0;
|
||||
$enabled = isset($f_enabled[$i]) ? $f_enabled[$i] : 0;
|
||||
$priority = THWCFD_Utils::prepare_field_priority($fields, $order, false);
|
||||
|
||||
$field = $fields[$name];
|
||||
$field['priority'] = $priority;
|
||||
$field['enabled'] = $enabled;
|
||||
|
||||
$fields[$name] = $field;
|
||||
}
|
||||
}
|
||||
$fields = THWCFD_Utils::sort_fields($fields);
|
||||
$result = THWCFD_Utils::update_fields($section, $fields);
|
||||
|
||||
if($result == true) {
|
||||
$this->print_notices(__('Your changes were saved.', 'woo-checkout-field-editor-pro'), 'updated');
|
||||
}else {
|
||||
$this->print_notices(__('Your changes were not saved due to an error (or you made none!).', 'woo-checkout-field-editor-pro'), 'error');
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
$this->print_notices(__('Your changes were not saved due to an error.', 'woo-checkout-field-editor-pro'), 'error');
|
||||
}
|
||||
}
|
||||
|
||||
private function prepare_field_from_posted_data($posted){
|
||||
$field_props = $this->field_form_props;
|
||||
$field = array();
|
||||
|
||||
foreach ($field_props as $pname => $prop) {
|
||||
$iname = 'i_'.$pname;
|
||||
|
||||
$pvalue = '';
|
||||
if($prop['type'] === 'checkbox'){
|
||||
$pvalue = isset($posted[$iname]) && $posted[$iname] ? 1 : 0;
|
||||
}else if(isset($posted[$iname])){
|
||||
//$pvalue = is_array($posted[$iname]) ? implode(',', $posted[$iname]) : trim(stripslashes($posted[$iname]));
|
||||
// $pvalue = is_array($posted[$iname]) ? $posted[$iname] : trim(stripslashes($posted[$iname]));
|
||||
|
||||
if(($pname === 'type') || ($pname === 'name')){
|
||||
$pvalue = !empty($posted[$iname]) ? sanitize_key($posted[$iname]) : "";
|
||||
}else if(($pname === 'label')){
|
||||
//$pvalue = !empty($posted[$iname]) ? htmlentities(stripslashes($posted[$iname])) : "";
|
||||
$pvalue = !empty($posted[$iname]) ? wp_unslash(wp_filter_post_kses($posted[$iname])) : "";
|
||||
}else if(($pname === 'validate')){
|
||||
$pvalue = !empty($posted[$iname]) ? (array) $posted[$iname] : array();
|
||||
$pvalue = array_map( 'sanitize_key', $pvalue );
|
||||
}else if($pname === 'class'){
|
||||
//$pvalue = is_string($pvalue) ? array_map('trim', explode(',', $pvalue)) : $pvalue;
|
||||
$pvalue = !empty($posted[$iname]) ? $posted[$iname] : '';
|
||||
$pvalue = is_string($pvalue) ? preg_split('/(\s*,*\s*)*,+(\s*,*\s*)*/', $pvalue) : array();
|
||||
$pvalue = array_map('sanitize_key', $pvalue);
|
||||
}else{
|
||||
$pvalue = !empty($posted[$iname]) ? sanitize_text_field(wp_unslash($posted[$iname])) : "";
|
||||
}
|
||||
}
|
||||
|
||||
$field[$pname] = $pvalue;
|
||||
}
|
||||
|
||||
$type = isset($field['type']) ? $field['type'] : '';
|
||||
if(!$type){
|
||||
$type = isset($posted['i_otype']) ? sanitize_key($posted['i_otype']) : '';
|
||||
$field['type'] = $type;
|
||||
}
|
||||
|
||||
$name = isset($field['name']) ? $field['name'] : '';
|
||||
if(!$name){
|
||||
$field['name'] = isset($posted['i_oname']) ? sanitize_key($posted['i_oname']) : '';
|
||||
}
|
||||
|
||||
if($type === 'select' || $type === 'multiselect'){
|
||||
$field['validate'] = '';
|
||||
|
||||
}else if($type === 'radio'){
|
||||
$field['validate'] = '';
|
||||
$field['placeholder'] = '';
|
||||
|
||||
}else if($type === 'number'){
|
||||
$field['validate'] = array('number');
|
||||
|
||||
}else if($type === 'checkbox'){
|
||||
if(isset($posted['i_default'])){
|
||||
$field['default'] = sanitize_text_field($posted['i_default']);
|
||||
}else{
|
||||
$field['default'] = '';
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if($type === 'select' || $type === 'radio' || $type === 'checkboxgroup' || $type === 'multiselect'){
|
||||
$options_json = isset($posted['i_options_json']) ? trim(stripslashes($posted['i_options_json'])) : '';
|
||||
$options_arr = THWCFD_Utils::prepare_options_array($options_json, $type);
|
||||
|
||||
$keys = array_keys($options_arr);
|
||||
// $keys = array_map('sanitize_key', $keys);
|
||||
$keys = array_map('sanitize_text_field', $keys);
|
||||
|
||||
$values = array_values($options_arr);
|
||||
$values = array_map('htmlspecialchars', $values);
|
||||
|
||||
$options_arr = array_combine($keys, $values);
|
||||
|
||||
$field['options'] = $options_arr;
|
||||
|
||||
// // Sanitize default value same like option values
|
||||
// $default_value = isset($field['default']) ? $field['default'] : '';
|
||||
// if($default_value){
|
||||
// $field['default'] = sanitize_key($default_value);
|
||||
// }
|
||||
|
||||
|
||||
}else{
|
||||
$field['options'] = '';
|
||||
}
|
||||
|
||||
$field['autocomplete'] = isset($posted['i_autocomplete']) ? sanitize_text_field($posted['i_autocomplete']) : '';
|
||||
$field['priority'] = isset($posted['i_priority']) ? absint($posted['i_priority']) : '';
|
||||
//$field['custom'] = isset($posted['i_custom']) ? $posted['i_custom'] : '';
|
||||
$field['custom'] = isset($posted['i_custom']) && $posted['i_custom'] ? 1 : 0;
|
||||
|
||||
return $field;
|
||||
}
|
||||
|
||||
/******* Display & Update Field Values *******/
|
||||
/*********************************************/
|
||||
public function order_data_after_order_details($order){
|
||||
$fields = THWCFD_Utils::get_fields('additional');
|
||||
//$this->display_fields_in_admin_order($order, $fields, '<p> </p>');
|
||||
$this->display_fields_in_admin_order($order, $fields, '');
|
||||
}
|
||||
|
||||
public function order_data_after_billing_address($order){
|
||||
$fields = THWCFD_Utils::get_fields('billing');
|
||||
$this->display_fields_in_admin_order($order, $fields, '');
|
||||
}
|
||||
|
||||
public function order_data_after_shipping_address($order){
|
||||
$fields = THWCFD_Utils::get_fields('shipping');
|
||||
$this->display_fields_in_admin_order($order, $fields, '');
|
||||
}
|
||||
|
||||
public function display_fields_in_admin_order($order, $fields, $prefix_html = ''){
|
||||
if(is_array($fields)){
|
||||
$html = '';
|
||||
$order_id = THWCFD_Utils::get_order_id($order);
|
||||
|
||||
foreach($fields as $name => $field){
|
||||
if(THWCFD_Utils::is_active_custom_field($field) && isset($field['show_in_order']) && $field['show_in_order'] && !THWCFD_Utils::is_wc_handle_custom_field($field)){
|
||||
|
||||
$order = wc_get_order( $order_id );
|
||||
|
||||
// $value = get_post_meta( $order_id, $key, true );
|
||||
|
||||
$value = $order->get_meta( $name, true );
|
||||
|
||||
if(!empty($value)){
|
||||
$value = THWCFD_Utils::get_option_text($field, $value);
|
||||
$label = isset($field['label']) && $field['label'] ? esc_html($field['label'], 'woo-checkout-field-editor-pro') : $name;
|
||||
$html .= '<p><strong>'. $label .':</strong><br/> '. wptexturize($value) .'</p>';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($html){
|
||||
echo '<div style="clear:both; padding:5px 0 0;">'.$prefix_html.$html.'</div>';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/******* TABS & SECTIONS *******/
|
||||
/*******************************/
|
||||
public function get_current_tab(){
|
||||
return isset( $_GET['tab'] ) ? sanitize_key( $_GET['tab'] ) : 'fields';
|
||||
}
|
||||
|
||||
public function get_current_section(){
|
||||
$tab = $this->get_current_tab();
|
||||
$section = '';
|
||||
if($tab === 'fields'){
|
||||
$section = isset( $_GET['section'] ) ? sanitize_key( $_GET['section'] ) : 'billing';
|
||||
}
|
||||
return $section;
|
||||
}
|
||||
|
||||
public function output_tabs(){
|
||||
$current_tab = $this->get_current_tab();
|
||||
|
||||
if(empty($this->tabs)){
|
||||
return;
|
||||
}
|
||||
|
||||
echo '<h2 class="thpladmin-tabs nav-tab-wrapper woo-nav-tab-wrapper">';
|
||||
foreach( $this->tabs as $id => $label ){
|
||||
$active = ( $current_tab == $id ) ? 'nav-tab-active' : '';
|
||||
//$label = __($label, 'woo-checkout-field-editor-pro');
|
||||
echo '<a class="nav-tab '.$active.'" href="'. esc_url($this->get_admin_url($id)) .'">'.$label.'</a>';
|
||||
}
|
||||
echo '</h2>';
|
||||
}
|
||||
|
||||
public function output_sections() {
|
||||
$result = false;
|
||||
|
||||
$current_tab = $this->get_current_tab();
|
||||
$current_section = $this->get_current_section();
|
||||
|
||||
if(empty($this->sections)){
|
||||
return;
|
||||
}
|
||||
|
||||
$array_keys = array_keys( $this->sections );
|
||||
|
||||
echo '<ul class="thpladmin-sections">';
|
||||
foreach( $this->sections as $id => $label ){
|
||||
// $label = __($label, 'woo-checkout-field-editor-pro');
|
||||
$url = $this->get_admin_url($current_tab, sanitize_title($id));
|
||||
echo '<li><a href="'.esc_url($url) .'" class="'. ( $current_section == $id ? 'current' : '' ) .'">'. $label .'</a> '. (end( $array_keys ) == $id ? '' : '|') .' </li>';
|
||||
}
|
||||
echo '</ul>';
|
||||
|
||||
if($result){
|
||||
echo $result;
|
||||
}
|
||||
}
|
||||
|
||||
public function get_admin_url($tab = false, $section = false){
|
||||
$url = 'admin.php?page=checkout_form_designer';
|
||||
if($tab && !empty($tab)){
|
||||
$url .= '&tab='. $tab;
|
||||
}
|
||||
if($section && !empty($section)){
|
||||
$url .= '§ion='. $section;
|
||||
}
|
||||
return admin_url($url);
|
||||
}
|
||||
|
||||
private function add_wpml_support($field){
|
||||
$context = 'woo-checkout-field-editor-pro';
|
||||
|
||||
$label = isset($field['label']) ? $field['label'] : '';
|
||||
if($label){
|
||||
$name = 'Field label - ' . $label;
|
||||
do_action( 'wpml_register_single_string', 'woo-checkout-field-editor-pro', $name, $label );
|
||||
}
|
||||
|
||||
$placeholder = isset($field['placeholder']) ? $field['placeholder'] : '';
|
||||
if($placeholder){
|
||||
$name = 'Field placeholder - ' . $placeholder;
|
||||
do_action( 'wpml_register_single_string', 'woo-checkout-field-editor-pro', $name, $placeholder );
|
||||
}
|
||||
|
||||
$options = isset($field['options']) ? $field['options'] : '';
|
||||
if($options){
|
||||
if(is_array($options)){
|
||||
$index = 0;
|
||||
foreach($options as $option_value => $option_text){
|
||||
$name = 'Field option text - ' . $option_text;
|
||||
do_action( 'wpml_register_single_string', 'woo-checkout-field-editor-pro', $name, $option_text );
|
||||
$index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
endif;
|
||||
@@ -0,0 +1,366 @@
|
||||
<?php
|
||||
/**
|
||||
* The admin advanced settings page functionality of the plugin.
|
||||
*
|
||||
* @link https://themehigh.com
|
||||
* @since 1.4.4
|
||||
*
|
||||
* @package woo-checkout-field-editor-pro
|
||||
* @subpackage woo-checkout-field-editor-pro/admin
|
||||
*/
|
||||
|
||||
if(!defined('WPINC')){ die; }
|
||||
|
||||
if(!class_exists('THWCFD_Admin_Settings_Pro')):
|
||||
|
||||
class THWCFD_Admin_Settings_Pro extends THWCFD_Admin_Settings{
|
||||
protected static $_instance = null;
|
||||
protected $tabs = '';
|
||||
|
||||
private $settings_fields = NULL;
|
||||
private $cell_props = array();
|
||||
private $cell_props_CB = array();
|
||||
|
||||
public function __construct() {
|
||||
parent::__construct();
|
||||
$this->page_id = 'pro';
|
||||
}
|
||||
|
||||
public static function instance() {
|
||||
if(is_null(self::$_instance)){
|
||||
self::$_instance = new self();
|
||||
}
|
||||
return self::$_instance;
|
||||
}
|
||||
|
||||
public function render_page(){
|
||||
$this->render_tabs();
|
||||
$this->render_content();
|
||||
}
|
||||
|
||||
private function render_content(){
|
||||
$thwcfd_since = get_option('thwcfd_since');
|
||||
$now = time();
|
||||
$render_time = apply_filters('thwcfd_get_pro_button_offer', 6 * MONTH_IN_SECONDS);
|
||||
$render_time = $thwcfd_since + $render_time;
|
||||
|
||||
if($now > $render_time){
|
||||
$url = "https://www.themehigh.com/?edd_action=add_to_cart&download_id=12&cp=lyCDSy&utm_source=free&utm_medium=premium_tab&utm_campaign=wcfe_upgrade_link";
|
||||
}else{
|
||||
$url = "https://www.themehigh.com/product/woocommerce-checkout-field-editor-pro/?utm_source=free&utm_medium=premium_tab&utm_campaign=wcfe_upgrade_link";
|
||||
}
|
||||
|
||||
?>
|
||||
<div class="th-nice-box">
|
||||
<div class="th-ad-banner">
|
||||
<div class="th-ad-content">
|
||||
<div class="th-ad-content-container">
|
||||
<div class="th-ad-content-desc">
|
||||
<p>Unlock away yourself into a dimension of feature loaded checkout experience with Checkout Field Editor pro version.</p>
|
||||
</div>
|
||||
<div class="upgrade-pro-btn-div">
|
||||
<a class="btn-upgrade-pro" href="<?php echo esc_url($url); ?>" target="_blank" rel="noopener noreferrer" onclick="this.classList.add('clicked')">Upgrade to Pro</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="th-ad-terms">
|
||||
<div class="th-ad-guarantee">
|
||||
<img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/guarantee.svg'); ?>">
|
||||
</div>
|
||||
<p class="th-ad-term-head"> 30 DAYS RISK-FREE MONEY BACK GUARANTEE
|
||||
<span class="th-ad-term-desc">100% refund if you are not satisfied</span></p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="th-wrapper-main">
|
||||
<div class="th-try-demo">
|
||||
<h3 class="trydemo-heading">The Golden Perks that Come with the Checkout Field Editor Pro</h3>
|
||||
<p class="try-demo-desc">The numerous advanced features that accompany the Checkout Field Editor Pro for WooCommerce plugin lets you create an organized and flawless checkout page. Why wait? Go pro and advance your checkout page to the next level now.</p>
|
||||
<div class="th-pro-btn"><a class="btn-get-pro" onclick="this.classList.add('clicked')" href="<?php echo esc_url($url); ?>" target="_blank" rel="noopener noreferrer" >Get Pro</a><a class="btn-try-demo" href="https://flydemos.com/wcfe/?utm_source=free&utm_medium=banner&utm_campaign=trydemo"
|
||||
target="_blank" rel="noopener noreferrer" onclick="this.classList.add('clicked')" >Try Demo</a></div>
|
||||
<!-- <img class="vedio" src="" alt="no img"> ADD vedio tutorial-->
|
||||
</div>
|
||||
<section class="th-cfe-key-feature">
|
||||
|
||||
<h3 class="th-feautre-head">Key Features of WooCommerce Checkout Field Editor Pro</h3>
|
||||
|
||||
<p class="th-feautre-desc">Checkout Field Editor For WooCommerce plugin comes with several advanced features that let you create an organized checkout page. With these premium features, bring your checkout page to its next level</p>
|
||||
<div class="th-cfe-feature-list-ul">
|
||||
<ul class="th-cfe-feature-list">
|
||||
<li>24 custom checkout field types</li>
|
||||
<li>Custom section which can be placed at 15 different positions on the checkout page</li>
|
||||
<li>Display fields conditionally</li>
|
||||
<li>Address autofill suggestion</li>
|
||||
<li>Display sections conditionally</li>
|
||||
<li>Price fields with a set of price types</li>
|
||||
<li>Custom validations</li>
|
||||
<li>Change address display format</li>
|
||||
<li>Display fields based on shipping & payment methods</li>
|
||||
<li class="column-break">Compatibility with other plugins</li>
|
||||
<li>Instant validation of fields</li>
|
||||
<li>Zapier & Integromat support</li>
|
||||
<li>WPML compatibility</li>
|
||||
<li>Repeat fields conditionally</li>
|
||||
<li>Manage field display in emails and order details pages</li>
|
||||
<li>Display custom fields optionally at My Account page</li>
|
||||
<li>Customise, disable or delete default WooCommerce fields</li>
|
||||
<li>Developer friendly with custom hooks</li>
|
||||
<li>Rearrange all fields and sections as per convenience</li>
|
||||
<li>Create your own custom classes for styling the field</li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
<div class="th-get-pro">
|
||||
<div class="th-get-pro-img">
|
||||
<img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/rocket.png'); ?>">
|
||||
</div>
|
||||
<div class='th-wrapper-get-pro'>
|
||||
<div class="th-get-pro-desc">
|
||||
<p class="th-get-pro-desc-head">Switch to Pro version and be a part of our limitless features
|
||||
<span class="th-get-pro-desc-contnt">Switch to a world of seamless checkout with an ocean of possibilities to customize.</span>
|
||||
</p>
|
||||
</div>
|
||||
<div class="th-get-pro-btn">
|
||||
<a class="btn-upgrade-pro" href="<?php echo esc_url($url); ?>" target="_blank" rel="noopener noreferrer" onclick="this.classList.add('clicked')" >Upgrade to Pro</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<div class="th-star-support">
|
||||
<div class="th-user-star">
|
||||
<p class="th-user-star-desc">2 Million+ Users & 1000+</p>
|
||||
<div class="th-user-star-img">
|
||||
<img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/star.svg'); ?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="th-pro-support">
|
||||
<div class="th-pro-support-img">
|
||||
<img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/support.svg'); ?>">
|
||||
</div>
|
||||
<p class="th-pro-support-desc">Enjoy the <em>Premium Support</em> experience with our dedicated support team.</p>
|
||||
</div>
|
||||
<div class="th-hor-line"></div>
|
||||
</div>
|
||||
|
||||
<section class="th-field-types">
|
||||
<h3 class="th-field-types-head">Available Field Types</h3>
|
||||
<p class="th-field-types-desc">Following are the custom field types available in the Checkout Field Editor plugin.</p>
|
||||
<div class="th-cfe-field-type-img">
|
||||
<div class="th-fields">
|
||||
<ul class="th-cfe-field-list">
|
||||
<li>Text</li>
|
||||
<li>Hidden</li>
|
||||
<li>Password</li>
|
||||
<li>Telephone</li>
|
||||
<li>Email</li>
|
||||
<li>Number</li>
|
||||
<li>Textarea</li>
|
||||
<li>Select</li>
|
||||
<li>Multiselect</li>
|
||||
<li>Radio</li>
|
||||
<li>Checkbox</li>
|
||||
<li>Checkbox Group</li>
|
||||
<li>Date Picker <span class="th-crown"><img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/crown.svg'); ?>"></span></li>
|
||||
<li>Datetime local</li>
|
||||
<li>Date</li>
|
||||
<li>Time Picker <span class="th-crown"><img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/crown.svg'); ?>"></span></li>
|
||||
<li>Time</li>
|
||||
<li>Month</li>
|
||||
<li>Week <span class="th-new-rec"><p>NEW</p></span></li>
|
||||
<li>File Upload <span class="th-new-rec"><p>NEW</p></span><span class="th-crown"><img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/crown.svg'); ?>"></span></li>
|
||||
<li>Heading</li>
|
||||
<li>Paragraph</li>
|
||||
<li>Label <span class="th-crown"><img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/crown.svg'); ?>"></span></li>
|
||||
<li>URL</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="th-fields-img">
|
||||
<img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/fields.png'); ?>">
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<div class="th-fields-section-function">
|
||||
<div class="th-section-function">
|
||||
<section class="th-display-rule-section">
|
||||
<div class="th-cfe-pro">
|
||||
<img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/pro.svg'); ?>">
|
||||
</div>
|
||||
<div class="th-display-rule-section-head">Display Sections Conditionally</div>
|
||||
<p class="th-display-rule-section-desc">Display the custom sections on your checkout page based on the condition you set. Following are the positions where these checkout sections can be displayed:</p>
|
||||
<ul class="th-display-section-list">
|
||||
<li>Before customer details</li>
|
||||
<li>After customer details</li>
|
||||
<li>Before billing form</li>
|
||||
<li>After billing form</li>
|
||||
<li>Before shipping form</li>
|
||||
<li>After shipping form</li>
|
||||
<li>Before registration form</li>
|
||||
<li>After registration form</li>
|
||||
<li>Before order notes</li>
|
||||
<li>After order notes</li>
|
||||
<li>Before terms and conditions</li>
|
||||
<li>After terms and conditions</li>
|
||||
<li>Before submit button</li>
|
||||
<li>After submit button</li>
|
||||
<li>Inside a custom step created using WooCommerce Multistep Checkout</li>
|
||||
</ul>
|
||||
<div class="display-section-img">
|
||||
<img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/display-section.png'); ?>">
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
<div class="th-fields-function">
|
||||
<section class="th-display-rule-fields">
|
||||
<div class="th-cfe-pro">
|
||||
<img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/pro.svg'); ?>">
|
||||
</div>
|
||||
<h3 class="th-display-rule-fields-head">Display Fields Conditionally</h3>
|
||||
<p class="th-display-rule-fields-desc">Display the custom and default checkout fields based on the conditions you provide. Conditions on which field can be displayed are:</p>
|
||||
<div class="th-dispaly-rule-list">
|
||||
<ul class="th-display-field-list">
|
||||
<li>Cart Content</li>
|
||||
<li>Cart Subtotal</li>
|
||||
<li>Cart Total</li>
|
||||
<li>User Roles</li>
|
||||
<li>Product</li>
|
||||
<li>Product Variation</li>
|
||||
<li>Product Type</li>
|
||||
<li>Product Category & Tag</li>
|
||||
<li>Shipping Class</li>
|
||||
<li>Shipping Weight</li>
|
||||
<li>Based on the other field values</li>
|
||||
<li>Based on Shipping & Payment Methods</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="th-price-fields">
|
||||
<div class="th-cfe-pro">
|
||||
<img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/pro.svg'); ?>">
|
||||
</div>
|
||||
<h3 class="th-price-fields-head">Add price fields and choose the price type </h3>
|
||||
<p class="th-price-fields-desc">With the premium version of the Checkout Page Editor Plugin, add an extra price value to the total price by creating a field with price into the checkout form. The available price types that can be added to WooCommerce checkout fields are:</p>
|
||||
<div class="th-price-field-list">
|
||||
<ul class="th-price-list">
|
||||
<li>Fixed Price</li>
|
||||
<li>Custom Price</li>
|
||||
<li>Percentage of Cart Total</li>
|
||||
<li>Percentage of Subtotal</li>
|
||||
<li>Percentage of Subtotal excluding tax</li>
|
||||
<li>Dynamic Price</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
<div class="th-review-section">
|
||||
<div class="review-image-section">
|
||||
<div class="review-quote-img">
|
||||
<img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/reviewquotes.png'); ?>">
|
||||
</div>
|
||||
</div>
|
||||
<div id="indicator" class="th-review-navigator" style="text-align:center">
|
||||
<a class="prev" onclick='plusSlides(-1)'></a>
|
||||
<a class="next" onclick='plusSlides(1)'></a>
|
||||
<span class="dot th-review-nav-btn" onclick="currentSlide(1)"></span>
|
||||
<span class="dot th-review-nav-btn" onclick="currentSlide(2)"></span>
|
||||
<span class="dot th-review-nav-btn" onclick="currentSlide(3)"></span>
|
||||
<span class="dot th-review-nav-btn" onclick="currentSlide(4)"></span>
|
||||
<span class="dot th-review-nav-btn" onclick="currentSlide(5)"></span>
|
||||
</div>
|
||||
<div class="th-user-review-section">
|
||||
<div class="th-review-quote">
|
||||
<img src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/quotes.svg'); ?>">
|
||||
</div>
|
||||
<div class="th-user-review">
|
||||
<h3 class="th-review-heading">Great plugin, even better support (free & pro versions)</h3>
|
||||
<p class="th-review-content">I used the free version of this plugin for a while until I needed some of the pro features. It was great as a free plugin and even better as a paid/pro version. On top of that, the support for the pro version is out-of-this-world good! Anuram on the support team went above and beyond. I heartily recommend upgrading to the pro version if it has features you’d like to use, as it is very well worth the price paid!</p>
|
||||
<p class="th-review-user-name">Eric Kuznacic</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<section class="th-faq-tab">
|
||||
<div class="th-faq-desc">
|
||||
<h3>FAQ's</h3>
|
||||
<p class="th-faq-para">Don't worry! Here are the answer to your frequent doubt and questions. If you feel you haven't been answered relevantly, feel free to contact our efficient support team.</p>
|
||||
|
||||
</div>
|
||||
<div class="th-faq-qstns" >
|
||||
<button class="accordion" onclick="thwcfdAccordionexpand(this)">
|
||||
<div class="accordion-qstn">
|
||||
<p>How to upgrade to the premium version of the plugin and how can I apply the license key to activate the pro plugin?</p>
|
||||
<img class="accordion-img" src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/accordion.svg'); ?>">
|
||||
<img class="accordion-img-opn" src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/accordion-open.svg'); ?>">
|
||||
</div>
|
||||
<div class="panel">
|
||||
<p>Please follow the steps given in the below links to purchase the plugin and activate the license.</p>
|
||||
<p>
|
||||
<a href="https://www.themehigh.com/docs/download-and-install-your-plugin/" target="_blank" rel="noopener noreferrer">https://www.themehigh.com/docs/download-and-install-your-plugin/</a><br>
|
||||
</p>
|
||||
<p class="th-faq-links">
|
||||
<a href="https://www.themehigh.com/docs/manage-license/" target="_blank" rel="noopener noreferrer">https://www.themehigh.com/docs/manage-license/</a><br>
|
||||
</p>
|
||||
<p class="th-faq-notes">
|
||||
Note: Please confirm whether all the fields that you had created in the free version have been migrated to the premium version after upgrading. If so you can safely deactivate and delete the free version from your site.
|
||||
</p>
|
||||
</div>
|
||||
</button>
|
||||
<button class="accordion" onclick="thwcfdAccordionexpand(this)">
|
||||
<div class="accordion-qstn">
|
||||
<p>Do I have to keep both the free version and the pro version after buying the pro version?</p>
|
||||
<img class="accordion-img" src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/accordion.svg'); ?>">
|
||||
<img class="accordion-img-opn" src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/accordion-open.svg'); ?>">
|
||||
</div>
|
||||
<div class="panel">
|
||||
<p class="th-faq-answer">Please note that free and premium versions are different plugins entirely. So, you can deactivate and remove the free version of the plugin from your website, if you start using the premium version.</p>
|
||||
</div>
|
||||
</button>
|
||||
|
||||
<button class="accordion" onclick="thwcfdAccordionexpand(this)">
|
||||
<div class="accordion-qstn">
|
||||
<p>How to migrate our configuration from the free version to the pro version?</p>
|
||||
<img class="accordion-img" src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/accordion.svg'); ?>">
|
||||
<img class="accordion-img-opn" src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/accordion-open.svg'); ?>">
|
||||
</div>
|
||||
<div class="panel">
|
||||
<p class="th-faq-answer">At the time when you upgrade the plugin from the free to the premium version, the free plugin settings will get automatically migrated to the premium version.
|
||||
|
||||
Please confirm whether all the fields that you created in the free version have been migrated to the premium version after upgrading. If so you can safely deactivate and delete the free version from your site.</p>
|
||||
</div>
|
||||
</button>
|
||||
<button class="accordion" onclick="thwcfdAccordionexpand(this)">
|
||||
<div class="accordion-qstn">
|
||||
<p>Will I get a refund if the pro plugin doesn't meet my requirements?</p>
|
||||
<img class="accordion-img" src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/accordion.svg'); ?>">
|
||||
<img class="accordion-img-opn" src="<?php echo esc_url(THWCFD_URL .'admin/assets/css/accordion-open.svg'); ?>">
|
||||
</div>
|
||||
|
||||
<div class="panel">
|
||||
<p>Please note that as per our refund policy, we will provide a refund within one month from the date of purchase, if you are not satisfied with the product. Please refer to the below link for more details:
|
||||
</p>
|
||||
<p class="th-faq-answer">
|
||||
<a href="https://www.themehigh.com/refund-policy/" target="_blank" rel="noopener noreferrer">https://www.themehigh.com/refund-policy/</a><br>
|
||||
</p>
|
||||
</div>
|
||||
</button>
|
||||
|
||||
</div>
|
||||
|
||||
</section>
|
||||
<section class="switch-to-pro-tab">
|
||||
<div class="th-switch-to-pro">
|
||||
<h3 class="switch-to-pro-heading">Switch to Pro version and be a part of our limitless features</h3>
|
||||
<p>Switch to pro and unlock access to few of the most sought after features in the checkout page and experience one of a kind convenience like never before.</p>
|
||||
<!-- <div class="th-button-get-pro-link"> -->
|
||||
<a class="button-get-pro" href="<?php echo esc_url($url); ?>" target="_blank" rel="noopener noreferrer" onclick="this.classList.add('clicked')">Get Pro</a>
|
||||
<!-- </div> -->
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
endif;
|
||||
@@ -0,0 +1,339 @@
|
||||
<?php
|
||||
/**
|
||||
* The admin advanced settings page functionality of the plugin.
|
||||
*
|
||||
* @link https://themehigh.com
|
||||
* @since 1.4.4
|
||||
*
|
||||
* @package woo-checkout-field-editor-pro
|
||||
* @subpackage woo-checkout-field-editor-pro/admin
|
||||
*/
|
||||
|
||||
if(!defined('WPINC')){ die; }
|
||||
|
||||
if(!class_exists('THWCFD_Admin_Settings_Themehigh_Plugins')):
|
||||
|
||||
class THWCFD_Admin_Settings_Themehigh_Plugins extends THWCFD_Admin_Settings{
|
||||
protected static $_instance = null;
|
||||
protected $tabs = '';
|
||||
|
||||
private $settings_fields = NULL;
|
||||
private $cell_props = array();
|
||||
private $cell_props_CB = array();
|
||||
|
||||
public function __construct() {
|
||||
parent::__construct();
|
||||
$this->page_id = 'themehigh_plugins';
|
||||
}
|
||||
|
||||
public static function instance() {
|
||||
if(is_null(self::$_instance)){
|
||||
self::$_instance = new self();
|
||||
}
|
||||
return self::$_instance;
|
||||
}
|
||||
|
||||
public function render_page(){
|
||||
$this->render_tabs();
|
||||
$this->render_content();
|
||||
}
|
||||
|
||||
private function plugins(){
|
||||
return array(
|
||||
array(
|
||||
'title' => 'Checkout Field Editor (Checkout Manager) for WooCommerce',
|
||||
'image' => 'checkout-field-editor.png',
|
||||
'content' => 'Checkout Field Editor plugin lets you add and manage the fields of your WooCommerce checkout page and allows you to choose the field display areas.',
|
||||
'slug' => 'woo-checkout-field-editor-pro',
|
||||
'file' => 'checkout-form-designer.php',
|
||||
'featured' => true,
|
||||
'skip' => true,
|
||||
),
|
||||
array(
|
||||
'title' => 'Extra Product Options (Product Addons) for WooCommerce',
|
||||
'image' => 'extra-product-options.png',
|
||||
'content' => 'The Extra Product Options plugin allows you to create additional fields on your product page and helps you to manage them efficiently.',
|
||||
'slug' => 'woo-extra-product-options',
|
||||
'file' => 'woo-extra-product-options.php',
|
||||
),
|
||||
array(
|
||||
'title' => 'MultiStep Checkout for WooCommerce',
|
||||
'image' => 'multistep-checkout.png',
|
||||
'content' => 'Using the compatibility feature of the Multi-step checkout plugin, you can create additional fields to your checkout page and split the default WooCommerce checkout page into simpler steps.',
|
||||
'slug' => 'woo-multistep-checkout',
|
||||
'file' => 'woo-multistep-checkout.php',
|
||||
'featured' => true,
|
||||
),
|
||||
array(
|
||||
'title' => 'Email Customizer for WooCommerce',
|
||||
'image' => 'email-customizer.png',
|
||||
'content' => 'As the Checkout Field editor plugin is compatible with the Email customizer, you can edit the WooCommerce transactional emails with the checkout fields at your desired position in the email.',
|
||||
'slug' => 'email-customizer-for-woocommerce',
|
||||
'file' => 'email-customizer-for-woocommerce.php',
|
||||
'featured' => true,
|
||||
),
|
||||
array(
|
||||
'title' => 'Multiple Addresses for WooCommerce',
|
||||
'image' => 'multiple-addresses.png',
|
||||
'content' => 'The plugin compatibility helps the shoppers to add custom checkout field data to their customer addresses and lets them choose the desired address while placing the order.',
|
||||
'slug' => 'themehigh-multiple-addresses',
|
||||
'file' => 'themehigh-multiple-addresses.php',
|
||||
'featured' => true,
|
||||
),
|
||||
array(
|
||||
'title' => 'Order Delivery Date And Time',
|
||||
'image' => 'order-delivery.gif',
|
||||
'content' => "Order Delivery | Pickup Date and Time Planner allows you to plan your store's delivery and pickup, as well as pre-set specific days and holidays.",
|
||||
'slug' => 'order-delivery-date-and-time',
|
||||
'file' => 'order-delivery-date-and-time.php',
|
||||
'featured' => true,
|
||||
),
|
||||
array(
|
||||
'title' => 'Variation Swatches for WooCommerce',
|
||||
'image' => 'variation-swatches.png',
|
||||
'content' => 'Variation Swatches for Woocommerce plugin lets you display the variable product attributes as attractive swatches of different types.',
|
||||
'slug' => 'product-variation-swatches-for-woocommerce',
|
||||
'file' => 'product-variation-swatches-for-woocommerce.php',
|
||||
),
|
||||
array(
|
||||
'title' => 'Job Manager & Career',
|
||||
'image' => 'job-manager.png',
|
||||
'content' => 'Job Manager & Career is a lightweight WordPress plugin to add and manage job posts on your career page.',
|
||||
'slug' => 'job-manager-career',
|
||||
'file' => 'job-manager-career.php',
|
||||
),
|
||||
array(
|
||||
'title' => 'WooCommerce Wishlist and Comparison',
|
||||
'image' => 'wishlist-compare.png',
|
||||
'content' => 'The plugin helps your customers to move products to the wishlist for future purchases and lets them compare between different products.',
|
||||
'slug' => 'wishlist-and-compare',
|
||||
'file' => 'wishlist-and-compare.php',
|
||||
),
|
||||
array(
|
||||
'title' => 'Dynamic Pricing and Discount Rules',
|
||||
'image' => 'discount-and-dynamic-pricing.png',
|
||||
'content' => 'Dynamic Pricing and Discount Rules plugin helps you to define special discount rules for both the product and cart details.',
|
||||
'slug' => 'discount-and-dynamic-pricing',
|
||||
'file' => 'discount-and-dynamic-pricing.php',
|
||||
),
|
||||
array(
|
||||
'title' => 'Advanced FAQ Manager',
|
||||
'image' => 'advanced-faq-manager.png',
|
||||
'content' => 'Advanced FAQ Manager plugin lets you easily add and manage the Frequently Asked Questions on your WordPress pages.',
|
||||
'slug' => 'advanced-faq-manager',
|
||||
'file' => 'advanced-faq-manager.php',
|
||||
),
|
||||
|
||||
array(
|
||||
'title' => 'Product Feature Request',
|
||||
'image' => 'product-feature-request.png',
|
||||
'content' => 'Using the Product Feature Request plugin, you can collect suggestions or ideas from the customers and improve your WooCommerce products.',
|
||||
'slug' => 'product-feature-request',
|
||||
'file' => 'product-feature-request.php',
|
||||
),
|
||||
|
||||
);
|
||||
}
|
||||
|
||||
private function render_content(){
|
||||
?>
|
||||
<?php
|
||||
$plugins = $this->plugins();
|
||||
$featured_plugins = array_filter($plugins, function ($var) {
|
||||
return (isset($var['featured']) && $var['featured'] == true && !(isset($var['skip'])));
|
||||
});
|
||||
if(!empty($featured_plugins)){ ?>
|
||||
<h2><?php _e('Compatible Plugins', 'woo-checkout-field-editor-pro'); ?></h2>
|
||||
<div class="th-plugins-wrapper featured">
|
||||
<?php
|
||||
foreach($featured_plugins as $plugin){
|
||||
$title = isset($plugin['title']) ? $plugin['title'] : '';
|
||||
$img = isset($plugin['image']) ? $plugin['image'] : '';
|
||||
$content = isset($plugin['content']) ? $plugin['content'] : '';
|
||||
$link = isset($plugin['download_link']) ? $plugin['download_link'] : '';
|
||||
$slug = isset($plugin['slug']) ? $plugin['slug'] : '';
|
||||
$file = isset($plugin['file']) ? $plugin['file'] : '';
|
||||
?>
|
||||
<div class="th-plugins-child">
|
||||
<div class="th-title-box">
|
||||
<?php if($img){ ?>
|
||||
<img src="<?php echo THWCFD_URL; ?>admin/assets/images/wp-plugins/<?php echo $img; ?>" alt="<?php echo $title; ?>">
|
||||
<?php } ?>
|
||||
<h3><a href="https://wordpress.org/plugins/<?php echo esc_attr( $slug ); ?>" target="_blank"><?php echo $title; ?></a></h3>
|
||||
</div>
|
||||
<?php echo wpautop($content); ?>
|
||||
|
||||
<?php if($slug && $file){
|
||||
$this->install_plugin_button($slug, $file, $title);
|
||||
} ?>
|
||||
|
||||
</div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
<?php } ?>
|
||||
|
||||
|
||||
|
||||
|
||||
<?php
|
||||
$plugin = array();
|
||||
$regular_plugins = array_filter($plugins, function ($var) {
|
||||
return (!isset($var['featured']) && !isset($var['skip']));
|
||||
});
|
||||
if(!empty($regular_plugins)){ ?>
|
||||
<h2><?php _e('Other Plugins', 'woo-checkout-field-editor-pro'); ?></h2>
|
||||
<div class="th-plugins-wrapper">
|
||||
<?php
|
||||
foreach($regular_plugins as $plugin){
|
||||
$title = isset($plugin['title']) ? $plugin['title'] : '';
|
||||
$img = isset($plugin['image']) ? $plugin['image'] : '';
|
||||
$content = isset($plugin['content']) ? $plugin['content'] : '';
|
||||
$link = isset($plugin['download_link']) ? $plugin['download_link'] : '';
|
||||
$slug = isset($plugin['slug']) ? $plugin['slug'] : '';
|
||||
$file = isset($plugin['file']) ? $plugin['file'] : '';
|
||||
?>
|
||||
<div class="th-plugins-child">
|
||||
<div class="th-title-box">
|
||||
<?php if($img){ ?>
|
||||
<img src="<?php echo THWCFD_URL; ?>admin/assets/images/wp-plugins/<?php echo $img; ?>" alt="<?php echo $title; ?>">
|
||||
<?php } ?>
|
||||
<h3><a href="https://wordpress.org/plugins/<?php echo esc_attr( $slug ); ?>" target="_blank"><?php echo $title; ?></a></h3>
|
||||
</div>
|
||||
<?php echo wpautop($content); ?>
|
||||
|
||||
<?php if($slug && $file){
|
||||
$this->install_plugin_button($slug, $file, $title);
|
||||
} ?>
|
||||
|
||||
</div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
<?php } ?>
|
||||
<?php
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Output a button that will install or activate a plugin if it doesn't exist, or display a disabled button if the
|
||||
* plugin is already activated.
|
||||
*
|
||||
* @param string $plugin_slug The plugin slug.
|
||||
* @param string $plugin_file The plugin file.
|
||||
* @param string $plugin_name The plugin name.
|
||||
* @param string $classes CSS classes.
|
||||
* @param string $activated Button activated text.
|
||||
* @param string $activate Button activate text.
|
||||
* @param string $install Button install text.
|
||||
*/
|
||||
public static function install_plugin_button( $plugin_slug, $plugin_file, $plugin_name, $classes = array(), $activated = '', $activate = '', $install = '' ) {
|
||||
if ( current_user_can( 'install_plugins' ) && current_user_can( 'activate_plugins' ) ) {
|
||||
if ( is_plugin_active( $plugin_slug . '/' . $plugin_file ) ) {
|
||||
// The plugin is already active.
|
||||
$button = array(
|
||||
'message' => esc_attr__( 'Activated', 'storefront' ),
|
||||
'url' => '#',
|
||||
'classes' => array('button', 'disabled' ),
|
||||
);
|
||||
|
||||
if ( '' !== $activated ) {
|
||||
$button['message'] = esc_attr( $activated );
|
||||
}
|
||||
} elseif ( self::is_plugin_installed( $plugin_slug ) ) {
|
||||
$url = self::is_plugin_installed( $plugin_slug );
|
||||
|
||||
// The plugin exists but isn't activated yet.
|
||||
$button = array(
|
||||
'message' => esc_attr__( 'Activate', 'storefront' ),
|
||||
'url' => $url,
|
||||
'classes' => array( 'activate-now', 'button' ),
|
||||
);
|
||||
|
||||
if ( '' !== $activate ) {
|
||||
$button['message'] = esc_attr( $activate );
|
||||
}
|
||||
} else {
|
||||
// The plugin doesn't exist.
|
||||
$url = wp_nonce_url(
|
||||
add_query_arg(
|
||||
array(
|
||||
'action' => 'install-plugin',
|
||||
'plugin' => $plugin_slug,
|
||||
),
|
||||
self_admin_url( 'update.php' )
|
||||
),
|
||||
'install-plugin_' . $plugin_slug
|
||||
);
|
||||
$button = array(
|
||||
'message' => esc_attr__( 'Install now', 'storefront' ),
|
||||
'url' => $url,
|
||||
'classes' => array('button-primary', 'install-now', 'install-' . $plugin_slug ),
|
||||
);
|
||||
|
||||
if ( '' !== $install ) {
|
||||
$button['message'] = esc_attr( $install );
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! empty( $classes ) ) {
|
||||
$button['classes'] = array_merge( $button['classes'], $classes );
|
||||
}
|
||||
|
||||
$button['classes'] = implode( ' ', $button['classes'] );
|
||||
|
||||
?>
|
||||
<span class="plugin-card-<?php echo esc_attr( $plugin_slug ); ?>">
|
||||
<a href="<?php echo esc_url( $button['url'] ); ?>" class="<?php echo esc_attr( $button['classes'] ); ?> th-plugin-action" data-originaltext="<?php echo esc_attr( $button['message'] ); ?>" data-name="<?php echo esc_attr( $plugin_name ); ?>" data-slug="<?php echo esc_attr( $plugin_slug ); ?>" aria-label="<?php echo esc_attr( $button['message'] ); ?>"><?php echo esc_html( $button['message'] ); ?></a>
|
||||
</span>
|
||||
<?php
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a plugin is installed and return the url to activate it if so.
|
||||
*
|
||||
* @param string $plugin_slug The plugin slug.
|
||||
*/
|
||||
public static function is_plugin_installed( $plugin_slug ) {
|
||||
if ( file_exists( WP_PLUGIN_DIR . '/' . $plugin_slug ) ) {
|
||||
$plugins = get_plugins( '/' . $plugin_slug );
|
||||
if ( ! empty( $plugins ) ) {
|
||||
$keys = array_keys( $plugins );
|
||||
$plugin_file = $plugin_slug . '/' . $keys[0];
|
||||
$url = wp_nonce_url(
|
||||
add_query_arg(
|
||||
array(
|
||||
'action' => 'activate',
|
||||
'plugin' => $plugin_file,
|
||||
),
|
||||
admin_url( 'plugins.php' )
|
||||
),
|
||||
'activate-plugin_' . $plugin_file
|
||||
);
|
||||
return $url;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function activate_themehigh_plugins(){
|
||||
$plugin_file = isset($_REQUEST['file']) ? $_REQUEST['file'] : '';
|
||||
if( $plugin_file && check_ajax_referer( 'activate-plugin_' . $plugin_file ) ){
|
||||
if ( current_user_can( 'install_plugins' ) && current_user_can( 'activate_plugins' ) ) {
|
||||
if (!is_plugin_active($plugin_file) ) {
|
||||
|
||||
$result = activate_plugin($plugin_file);
|
||||
|
||||
if( is_wp_error( $result ) ) {
|
||||
wp_send_json(false);
|
||||
}else{
|
||||
wp_send_json(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
wp_send_json(false);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
endif;
|
||||
@@ -0,0 +1,264 @@
|
||||
<?php
|
||||
/**
|
||||
* The admin settings page functionality of the plugin.
|
||||
*
|
||||
* @link https://themehigh.com
|
||||
*
|
||||
* @package woo-checkout-field-editor-pro
|
||||
* @subpackage woo-checkout-field-editor-pro/admin
|
||||
*/
|
||||
|
||||
if(!defined('WPINC')){ die; }
|
||||
|
||||
if(!class_exists('THWCFD_Admin_Settings')):
|
||||
|
||||
abstract class THWCFD_Admin_Settings{
|
||||
protected $page_id = '';
|
||||
protected $section_id = '';
|
||||
|
||||
protected $tabs = '';
|
||||
protected $sections = '';
|
||||
|
||||
public function __construct() {
|
||||
$this->tabs = array(
|
||||
'fields' => __('Checkout Fields', 'woo-checkout-field-editor-pro'),
|
||||
'advanced_settings' => __('Advanced Settings', 'woo-checkout-field-editor-pro'),
|
||||
'pro' => __('Premium Features', 'woo-checkout-field-editor-pro'),
|
||||
'themehigh_plugins' => __('Other Free Plugins', 'woo-checkout-field-editor-pro'),
|
||||
);
|
||||
}
|
||||
|
||||
public function get_tabs(){
|
||||
return $this->tabs;
|
||||
}
|
||||
|
||||
public function get_current_tab(){
|
||||
return $this->page_id;
|
||||
}
|
||||
|
||||
public function get_current_section(){
|
||||
return isset( $_GET['section'] ) ? sanitize_key( $_GET['section'] ) : $this->section_id;
|
||||
}
|
||||
|
||||
public function render_tabs(){
|
||||
$current_tab = $this->get_current_tab();
|
||||
$tabs = $this->get_tabs();
|
||||
|
||||
if(empty($tabs)){
|
||||
return;
|
||||
}
|
||||
|
||||
echo '<h2 class="thpladmin-tabs nav-tab-wrapper woo-nav-tab-wrapper">';
|
||||
foreach( $tabs as $id => $label ){
|
||||
$active = ( $current_tab == $id ) ? 'nav-tab-active' : '';
|
||||
//$label = esc_html__($label, 'woo-checkout-field-editor-pro');
|
||||
echo '<a class="nav-tab '.$active.'" href="'. esc_url($this->get_admin_url($id)) .'">'.$label.'</a>';
|
||||
}
|
||||
echo '</h2>';
|
||||
}
|
||||
|
||||
// public function render_sections() {
|
||||
// $current_section = $this->get_current_section();
|
||||
// $sections = $this->get_sections();
|
||||
|
||||
// if(empty($sections)){
|
||||
// return;
|
||||
// }
|
||||
|
||||
// $array_keys = array_keys( $sections );
|
||||
|
||||
// echo '<ul class="thpladmin-sections">';
|
||||
// foreach( $sections as $id => $label ){
|
||||
// $label = wp_strip_all_tags(__($label, 'woo-checkout-field-editor-pro'));
|
||||
// $url = $this->get_admin_url($this->page_id, sanitize_title($id));
|
||||
// echo '<li><a href="'. $url .'" class="'. ( $current_section == $id ? 'current' : '' ) .'">'. $label .'</a> '. (end( $array_keys ) == $id ? '' : '|') .' </li>';
|
||||
// }
|
||||
// echo '</ul>';
|
||||
// }
|
||||
|
||||
public function get_admin_url($tab = false, $section = false){
|
||||
$url = 'admin.php?page=checkout_form_designer';
|
||||
if($tab && !empty($tab)){
|
||||
$url .= '&tab='. $tab;
|
||||
}
|
||||
if($section && !empty($section)){
|
||||
$url .= '§ion='. $section;
|
||||
}
|
||||
return admin_url($url);
|
||||
}
|
||||
|
||||
public function print_notices($msg, $type='updated', $return=false){
|
||||
$notice = '<div class="thwcfd-notice '. $type .'"><p>'. $msg .'</p></div>';
|
||||
if(!$return){
|
||||
echo $notice;
|
||||
}
|
||||
return $notice;
|
||||
}
|
||||
|
||||
/*******************************************
|
||||
*-------- HTML FORM FRAGMENTS - START -----
|
||||
*******************************************/
|
||||
|
||||
public function render_form_element_tooltip($tooltip=''){
|
||||
$tooltip_html = '';
|
||||
|
||||
if($tooltip){
|
||||
// $icon = THWCFD_ASSETS_URL_ADMIN.'/css/help.png';
|
||||
// $tooltip_html = '<a href="javascript:void(0)" title="'. $tooltip .'" class="thpladmin_tooltip"><img src="'. $icon .'" alt="" title=""/></a>';
|
||||
}
|
||||
?>
|
||||
<td style="width: 26px; padding:0px;"><?php esc_html($tooltip_html); ?></td>
|
||||
<?php
|
||||
}
|
||||
|
||||
public function render_form_element_empty_cell(){
|
||||
?>
|
||||
<td width="13%"> </td>
|
||||
<?php $this->render_form_element_tooltip(false); ?>
|
||||
<td width="34%"> </td>
|
||||
<?php
|
||||
}
|
||||
|
||||
public function render_form_element_h_separator($padding = 5, $colspan = 6){
|
||||
?>
|
||||
<tr><td colspan="<?php echo $colspan; ?>" style="border-bottom: 1px dashed #e6e6e6; padding-top: <?php echo $padding ?>px;"></td></tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
public function render_form_element_h_spacing($padding = 5, $colspan = 6){
|
||||
?>
|
||||
<tr><td colspan="<?php echo $colspan; ?>" style="padding-top:<?php echo $padding ?>px;"></td></tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
public function render_form_field_element($field, $atts = array(), $render_cell = true){
|
||||
if($field && is_array($field)){
|
||||
$args = shortcode_atts( array(
|
||||
'label_cell_props' => '',
|
||||
'input_cell_props' => '',
|
||||
'label_cell_colspan' => '',
|
||||
'input_cell_colspan' => '',
|
||||
), $atts );
|
||||
|
||||
$ftype = isset($field['type']) ? $field['type'] : 'text';
|
||||
$flabel = isset($field['label']) && !empty($field['label']) ? __($field['label'], 'woo-checkout-field-editor-pro') : '';
|
||||
$sub_label = isset($field['sub_label']) && !empty($field['sub_label']) ? __($field['sub_label'], 'woo-checkout-field-editor-pro') : '';
|
||||
$tooltip = isset($field['hint_text']) && !empty($field['hint_text']) ? __($field['hint_text'], 'woo-checkout-field-editor-pro') : '';
|
||||
|
||||
$field_html = '';
|
||||
|
||||
if($ftype == 'text'){
|
||||
$field_html = $this->render_form_field_element_inputtext($field, $atts);
|
||||
|
||||
}else if($ftype == 'textarea'){
|
||||
$field_html = $this->render_form_field_element_textarea($field, $atts);
|
||||
|
||||
}else if($ftype == 'checkbox'){
|
||||
$field_html = $this->render_form_field_element_checkbox($field, $atts, $render_cell);
|
||||
$flabel = ' ';
|
||||
}
|
||||
|
||||
if($render_cell){
|
||||
$required_html = isset($field['required']) && $field['required'] ? '<abbr class="required" title="required">*</abbr>' : '';
|
||||
|
||||
$label_cell_props = !empty($args['label_cell_props']) ? $args['label_cell_props'] : '';
|
||||
$input_cell_props = !empty($args['input_cell_props']) ? $args['input_cell_props'] : '';
|
||||
|
||||
?>
|
||||
<td <?php echo $label_cell_props ?> >
|
||||
<?php echo $flabel; echo $required_html;
|
||||
if($sub_label){
|
||||
?>
|
||||
<br/><span class="thpladmin-subtitle"><?php echo $sub_label; ?></span>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</td>
|
||||
<?php $this->render_form_element_tooltip($tooltip); ?>
|
||||
<td <?php echo $input_cell_props ?> ><?php echo $field_html; ?></td>
|
||||
<?php
|
||||
}else{
|
||||
echo $field_html;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private function prepare_form_field_props($field, $atts = array()){
|
||||
$field_props = '';
|
||||
$args = shortcode_atts( array(
|
||||
'input_width' => '',
|
||||
'input_name_prefix' => 'i_',
|
||||
'input_name_suffix' => '',
|
||||
), $atts );
|
||||
|
||||
$ftype = isset($field['type']) ? $field['type'] : 'text';
|
||||
|
||||
if($ftype == 'multiselect'){
|
||||
$args['input_name_suffix'] = $args['input_name_suffix'].'[]';
|
||||
}
|
||||
|
||||
$fname = $args['input_name_prefix'].$field['name'].$args['input_name_suffix'];
|
||||
$fvalue = isset($field['value']) ? esc_html($field['value']) : '';
|
||||
|
||||
$input_width = $args['input_width'] ? 'width:'.$args['input_width'].';' : '';
|
||||
$field_props = 'name="'. $fname .'" value="'. $fvalue .'" style="'. $input_width .'"';
|
||||
$field_props .= ( isset($field['placeholder']) && !empty($field['placeholder']) ) ? ' placeholder="'.$field['placeholder'].'"' : '';
|
||||
$field_props .= ( isset($field['onchange']) && !empty($field['onchange']) ) ? ' onchange="'.$field['onchange'].'"' : '';
|
||||
|
||||
return $field_props;
|
||||
}
|
||||
|
||||
private function render_form_field_element_inputtext($field, $atts = array()){
|
||||
$field_html = '';
|
||||
if($field && is_array($field)){
|
||||
$field_props = $this->prepare_form_field_props($field, $atts);
|
||||
$field_html = '<input type="text" '. $field_props .' />';
|
||||
}
|
||||
return $field_html;
|
||||
}
|
||||
|
||||
private function render_form_field_element_textarea($field, $atts = array()){
|
||||
$field_html = '';
|
||||
if($field && is_array($field)){
|
||||
$args = shortcode_atts( array(
|
||||
'rows' => '5',
|
||||
'cols' => '100',
|
||||
), $atts );
|
||||
|
||||
$fvalue = isset($field['value']) ? $field['value'] : '';
|
||||
$field_props = $this->prepare_form_field_props($field, $atts);
|
||||
$field_html = '<textarea '. $field_props .' rows="'.$args['rows'].'" cols="'.$args['cols'].'" >'.$fvalue.'</textarea>';
|
||||
}
|
||||
return $field_html;
|
||||
}
|
||||
|
||||
private function render_form_field_element_checkbox($field, $atts = array(), $render_cell = true){
|
||||
$field_html = '';
|
||||
if($field && is_array($field)){
|
||||
$args = shortcode_atts( array(
|
||||
'label_props' => '',
|
||||
'cell_props' => 3,
|
||||
'render_input_cell' => false,
|
||||
), $atts );
|
||||
|
||||
$fid = 'a_f'. $field['name'];
|
||||
$flabel = isset($field['label']) && !empty($field['label']) ? __($field['label'], 'woo-checkout-field-editor-pro') : '';
|
||||
|
||||
$field_props = $this->prepare_form_field_props($field, $atts);
|
||||
$field_props .= isset($field['checked']) && $field['checked'] === 1 ? ' checked' : '';
|
||||
|
||||
$field_html = '<input type="checkbox" id="'. $fid .'" '. $field_props .' />';
|
||||
$field_html .= '<label for="'. $fid .'" '. $args['label_props'] .' > '. $flabel .'</label>';
|
||||
}
|
||||
if(!$render_cell && $args['render_input_cell']){
|
||||
return '<td '. $args['cell_props'] .' >'. $field_html .'</td>';
|
||||
}else{
|
||||
return $field_html;
|
||||
}
|
||||
}
|
||||
/*******************************************
|
||||
*-------- HTML FORM FRAGMENTS - END -----
|
||||
*******************************************/
|
||||
}
|
||||
|
||||
endif;
|
||||