PageSourceSearch

https://wizfort.com/login

html wizfort.com collected 2026-09-27 13:40:17 UTC 37,228 bytes, 924 lines download raw bytes

1
2<!DOCTYPE html>
3<html lang="en-US">
4<head>
5	<meta charset="utf-8">
6	<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
7	<meta name="generator" content="frappe">
8
9	
10		<meta name="title" content="Login"><meta name="language" content="en-US"><meta property="og:type"  content="article"><meta property="og:title"  content="Login"><meta name="twitter:title" content="Login"><meta name="twitter:card" content="summary"><meta property="og:site_name"  content="Wizfort"><meta property="og:url"  content="https://wizfort.com/login"><meta property="og:locale"  content="en_US">
11	
12
13	<title>Login</title>
14
15	
16	<link rel="icon" type="image/png" href="/files/cslshoes89cb70.png">
17	<link rel="apple-touch-icon" href="/files/cslshoes89cb70.png">
18<link type="text/css" rel="stylesheet" href="/assets/frappe/dist/css/website.bundle.GD6PKXQI.css">
19<link type="text/css" rel="stylesheet" href="/assets/erpnext/dist/css/erpnext-web.bundle.XAPV6OJR.css">
20<link type="text/css" rel="stylesheet" href="/assets/webshop/dist/css/webshop-web.bundle.GQDT63VG.css">
21<link type="text/css" rel="stylesheet" href="/assets/cslshoes_erp/css/csl_design_tokens.css?v=20260613a">
22<link type="text/css" rel="stylesheet" href="/assets/cslshoes_erp/css/webshop_filters.css?v=4b435436">
23<link type="text/css" rel="stylesheet" href="/assets/cslshoes_erp/css/csl_custom.css?v=20260517a">
24<link type="text/css" rel="stylesheet" href="/assets/blog/css/blog.scss">
25<link type="text/css" rel="stylesheet" href="/assets/frappe/dist/css/login.bundle.PUSGKFZL.css">
26
27		
28
29	
29<script>
30		window.frappe = {};
31		frappe.ready_events = [];
32		frappe.ready = function(fn) {
33			frappe.ready_events.push(fn);
34		}
35		window.dev_server = 0;
36		window.socketio_port = 9000;
37		window.show_language_picker = false;
38	</script>
38
39</head>
40<body frappe-session-status="logged-out" data-path="login" class="">
41	
42	<svg id="csl-icons" aria-hidden="true" style="position:absolute;width:0;height:0;overflow:hidden" xmlns="http://www.w3.org/2000/svg">
43	<symbol viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" id="icon-assets">
44		<path d="M3 6h17" stroke="var(--icon-stroke)" stroke-miterlimit="10"></path>
45		<path d="M20 19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6l3.4-3h10.2L20 6v13z" stroke="var(--icon-stroke)" stroke-miterlimit="10" stroke-linecap="square" stroke-linejoin="round"></path>
46		<path d="M15.582 10c0 2.29-1.8 4.09-4.091 4.09A4.051 4.051 0 0 1 7.4 10" stroke="var(--icon-stroke)" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"></path>
47		<circle cx="15.6" cy="10" r=".5" stroke="var(--icon-stroke)"></circle>
48		<circle cx="7.3" cy="10" r=".5" stroke="var(--icon-stroke)"></circle>
49	</symbol>
50	<symbol id="icon-delete" viewBox="0 0 32 32" fill="none">
51		<path stroke-linejoin="round" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M7 7v18.118c0 2.145 1.492 3.882 3.333 3.882h11.333c1.842 0 3.333-1.737 3.333-3.882v-18.118"></path>
52		<path stroke-linejoin="round" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M5 7h22"></path>
53		<path stroke-linejoin="round" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M10 7v-1c0-1.657 1.343-3 3-3h6c1.657 0 3 1.343 3 3v1"></path>
54		<path stroke-linejoin="round" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M18.8 14.4v8.571"></path>
55		<path stroke-linejoin="round" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M13.2 14.4v8.571"></path>
56	</symbol>
57	<symbol viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" id="icon-down">
58		<path d="M3 5.5l5 5 5-5" stroke="var(--icon-stroke)" stroke-linecap="round" stroke-linejoin="round"></path>
59	</symbol>
60	<symbol viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" id="icon-edit">
61		<path fill-rule="evenodd" clip-rule="evenodd" d="M10.6262 2.70711C11.0168 2.31658 11.6499 2.31658 12.0404 2.70711L13.2929 3.95956C13.6834 4.35008 13.6834 4.98325 13.2929 5.37377L6 12.6667L2 14L3.33333 10L10.6262 2.70711Z" stroke="var(--icon-stroke)" stroke-linecap="round" stroke-linejoin="round"/>
62		<line x1="9.79157" y1="3.92744" x2="12.0738" y2="6.2097" stroke="var(--icon-stroke)"/>
63	</symbol>
64	<symbol viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" id="icon-heart">
65		<path d="M7.606 3.799L8 4.302l.394-.503.106-.14c.048-.065.08-.108.129-.159a3.284 3.284 0 0 1 4.72 0c.424.434.655 1.245.65 2.278-.006 1.578-.685 2.931-1.728 4.159-1.05 1.234-2.439 2.308-3.814 3.328a.763.763 0 0 1-.914 0c-1.375-1.02-2.764-2.094-3.814-3.328C2.686 8.709 2.007 7.357 2 5.778c-.004-1.033.227-1.844.651-2.278a3.284 3.284 0 0 1 4.72 0c.05.05.081.094.129.158.028.038.061.083.106.14z"
66		stroke="var(--icon-stroke)"></path>
67	</symbol>
68	<symbol viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" id="icon-star">
69		<path d="M11.5516 2.90849C11.735 2.53687 12.265 2.53687 12.4484 2.90849L14.8226 7.71919C14.8954 7.86677 15.0362 7.96905 15.1991 7.99271L20.508 8.76415C20.9181 8.82374 21.0818 9.32772 20.7851 9.61699L16.9435 13.3616C16.8257 13.4765 16.7719 13.642 16.7997 13.8042L17.7066 19.0916C17.7766 19.5001 17.3479 19.8116 16.9811 19.6187L12.2327 17.1223C12.087 17.0457 11.913 17.0457 11.7673 17.1223L7.01888 19.6187C6.65207 19.8116 6.22335 19.5001 6.29341 19.0916L7.20028 13.8042C7.2281 13.642 7.17433 13.4765 7.05648 13.3616L3.21491 9.61699C2.91815 9.32772 3.08191 8.82374 3.49202 8.76415L8.80094 7.99271C8.9638 7.96905 9.10458 7.86677 9.17741 7.71919L11.5516 2.90849Z" fill="var(--star-fill)" stroke="var(--star-fill)"/>
70	</symbol>
71	<symbol viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" id="icon-tag">
72		<path d="M12.6401 10.2571L10.107 12.7901C9.52125 13.3759 8.5718 13.3756 7.98601 12.7898L2.49654 7.30037C2.40278 7.2066 2.3501 7.07942 2.3501 6.94682L2.3501 3C2.3501 2.72386 2.57396 2.5 2.8501 2.5L6.79691 2.5C6.92952 2.5 7.0567 2.55268 7.15047 2.64645L12.6399 8.13591C13.2257 8.7217 13.2259 9.67131 12.6401 10.2571Z" stroke="var(--icon-stroke)" stroke-linecap="round" stroke-linejoin="round"/>
73		<path d="M6.08001 5.46157C6.08001 5.88642 5.7356 6.23082 5.31076 6.23082C4.88591 6.23082 4.5415 5.88642 4.5415 5.46157C4.5415 5.03673 4.88591 4.69232 5.31076 4.69232C5.7356 4.69232 6.08001 5.03673 6.08001 5.46157Z" stroke="var(--icon-stroke)" stroke-linecap="round" stroke-linejoin="round"/>
74	</symbol>
75	<!-- icon-list and icon-image-view: copied from apps/frappe/frappe/public/icons/timeless/icons.svg
76	     for the /all-products toolbar view-toggle. Keep in sync on Frappe upgrades (ERP-025). -->
77	<symbol viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" id="icon-list">
78		<path fill-rule="evenodd" clip-rule="evenodd" d="M2.667 3.25a.75.75 0 0 0 0 1.5h.007a.75.75 0 0 0 0-1.5h-.007zm2.666.25a.5.5 0 0 0 0 1H14a.5.5 0 0 0 0-1H5.333zm0 4a.5.5 0 0 0 0 1H14a.5.5 0 0 0 0-1H5.333zm-.5 4.5a.5.5 0 0 1 .5-.5H14a.5.5 0 0 1 0 1H5.333a.5.5 0 0 1-.5-.5zM1.917 8a.75.75 0 0 1 .75-.75h.007a.75.75 0 0 1 0 1.5h-.007a.75.75 0 0 1-.75-.75zm.75 3.25a.75.75 0 0 0 0 1.5h.007a.75.75 0 0 0 0-1.5h-.007z"
79		fill="var(--icon-stroke)" stroke-width="0"></path>
80	</symbol>
81	<symbol viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" id="icon-image-view">
82		<path d="M2.5 3.5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3h-3a1 1 0 0 1-1-1v-2zm0 7a1 1 0 0 1 1-1h3v3a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1v-2zm7-7a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-3v-3zm0 6h3a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1v-3z"></path>
83	</symbol>
84</svg>
85	<a href="#main-content" class="skip-to-content" style="position:absolute;top:-40px;left:0;background:#1a1a1a;color:#fff;padding:8px 16px;z-index:10001;font-size:14px;text-decoration:none;transition:top 0.2s;" onfocus="this.style.top='0'" onblur="this.style.top='-40px'">Skip to main content</a>
86
87		
88
89<main id="main-content">
90	
91
92
93
94
95
96
97
98
99
100
101<div id="page-login" data-path="login">
102	
103<div class="page-content-wrapper">
104	<!-- breadcrumbs -->
105	<div class="page-breadcrumbs">
106		
107			
108		
109	</div>
110
111	
112	<main class="container">
113		<div class="page-header-wrapper">
114			<div class="page-header">
115				
116			</div>
117
118			
119		</div>
120
121		<div class="page_content">
122
123<!-- login.html -->
124<div>
125	<noscript>
126		<div class="text-center my-5">
127			<h4>Javascript is disabled on your browser</h4>
128			<p class="text-muted">
129				You need to enable JavaScript for your app to work.<br>To enable it follow the instructions in the following link: <a href='https://enable-javascript.com/'>enable-javascript.com</a></p>
130		</div>
131	</noscript>
132	<section class='for-login'>
133		
134<div class="page-card-head">
135	<img class="app-logo" src="/files/Combinedcdcba3.png">
136	
137	<h4>Login to CSL Shoes ERP</h4>
138	
139</div>
140
141		<div class="login-content page-card">
142			<form class="form-signin form-login" role="form">
143					
144<div class="page-card-body">
145	<div class="form-group">
146		<label class="form-label sr-only" for="login_email">Email or Mobile or Username</label>
147		<div class="email-field">
148			<input type="text" id="login_email" class="form-control"
149				placeholder="[email protected]"
150				required autofocus autocomplete="username">
151
152			<svg class="field-icon email-icon" width="16" height="16" viewBox="0 0 16 16" fill="none"
153				xmlns="http://www.w3.org/2000/svg">
154				<use class="es-lock" href="#es-line-email"></use>
155			</svg>
156		</div>
157	</div>
158
159	<div class="form-group">
160		<label class="form-label sr-only" for="login_password">Password</label>
161		<div class="password-field">
162			<input type="password" id="login_password" class="form-control" placeholder="•••••"
163				autocomplete="current-password" required>
164
165			<svg class="field-icon password-icon" width="16" height="16" viewBox="0 0 16 16" fill="none"
166				xmlns="http://www.w3.org/2000/svg">
167					<use class="es-lock" href="#es-line-lock"></use>
168			</svg>
169			<span toggle="#login_password" class="toggle-password text-muted">Show</span>
170		</div>
171	</div>
172
173	
174	<p class="forgot-password-message">
175		<a href="#forgot">Forgot Password?</a>
176	</p>
177	
178</div>
179
180<div class="page-card-actions">
181	
182	<button class="btn btn-sm btn-primary btn-block btn-login" type="submit">
183		Login</button>
184	
185	
186</div>
187</form>
188		</div><div class="text-center sign-up-message">
189			Don't have an account?
190			<a href="#signup">Sign up</a>
191		</div></section><section class='for-signup '>
192		
193<div class="page-card-head">
194	<img class="app-logo" src="/files/Combinedcdcba3.png">
195	
196	<h4>Create a CSL Shoes ERP Account</h4>
197	
198</div>
199
200		<div class="login-content page-card"><form class="form-signin form-signup hide" role="form">
201    <div class="page-card-body">
202        <div class="form-group">
203            <label class="form-label sr-only" for="signup_fullname">Full Name</label>
204            <input type="text" id="signup_fullname" class="form-control" placeholder="Jane Doe"
205                required autofocus autocomplete="name">
206        </div>
207        <div class="form-group">
208            <label class="form-label sr-only" for="signup_email">Email</label>
209            <input type="email" id="signup_email" class="form-control"
210                placeholder="[email protected]" required autocomplete="username">
211        </div>
212    </div>
213    <div class="page-card-actions">
214        <button class="btn btn-sm btn-primary btn-block btn-signup"
215            type="submit">Sign up</button>
216
217        <p class="text-center sign-up-message">
218            <a href="#login" class="blue">Have an account? Login</a>
219        </p>
220    </div>
221</form></div>
222
223	</section>
224
225	<section class='for-forgot'>
226		
227<div class="page-card-head">
228	<img class="app-logo" src="/files/Combinedcdcba3.png">
229	
230	<h4>Forgot Password</h4>
231	
232</div>
233
234		<div class="login-content page-card">
235			<form class="form-signin form-forgot hide" role="form">
236				<div class="page-card-body">
237					<div class="email-field">
238						<input type="email" id="forgot_email" class="form-control"
239							placeholder="Email Address" required autofocus autocomplete="username">
240						<svg class="field-icon email-icon" width="16" height="16" viewB
240ox="0 0 16 16" fill="none"
241							xmlns="http://www.w3.org/2000/svg">
242							<use class="es-lock" href="#es-line-email"></use>
243						</svg>
244
245					</div>
246				</div>
247				<div class="page-card-actions">
248					<button class="btn btn-sm btn-primary btn-block btn-forgot"
249						type="submit">Reset Password</button>
250					<p class="text-center sign-up-message">
251						<a href="#login">Back to Login</a>
252					</p>
253				</div>
254
255			</form>
256		</div>
257	</section>
258
259	<section class='for-login-with-email-link'>
260			
261<div class="page-card-head">
262	<img class="app-logo" src="/files/Combinedcdcba3.png">
263	
264	<h4>Login with Email Link</h4>
265	
266</div>
267
268		<div class="login-content page-card">
269			<form class="form-signin form-login-with-email-link hide" role="form">
270				<div class="page-card-body">
271					<div class="email-field">
272						<input type="email" id="login_with_email_link_email" class="form-control"
273							placeholder="Email Address" required autofocus autocomplete="username">
274						<svg class="field-icon email-icon" width="16" height="16" viewBox="0 0 16 16" fill="none"
275							xmlns="http://www.w3.org/2000/svg">
276							<use class="es-lock" href="#es-line-email"></use>
277						</svg>
278					</div>
279				</div>
280				<div class="page-card-actions">
281					<button class="btn btn-sm btn-primary btn-block btn-login-with-email-link"
282						type="submit">Send login link</button>
283					<p class="text-center sign-up-message">
284						<a href="#login">Back to Login</a>
285					</p>
286				</div>
287			</form>
288		</div>
289	</section>
290</div>
291</div>
292
293		<div class="page-footer"></div>
294	</main>
295	
296</div>
297
298</div>
299
300
301
302	</main><style>
303/* CSL Shoes Shared Footer */
304.csl-footer {
305  background: #111;
306  color: #9ca3af;
307  padding: 60px 0 30px;
308  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
309}
310.csl-footer .container {
311  max-width: 1400px;
312  margin: 0 auto;
313  padding: 0 20px;
314}
315.csl-footer-grid {
316  display: grid;
317  grid-template-columns: 2fr 1fr 1fr 1fr 1.5fr;
318  gap: 40px;
319  margin-bottom: 40px;
320}
321.csl-footer-brand p {
322  font-size: 13px;
323  line-height: 1.6;
324  margin-bottom: 20px;
325  max-width: 280px;
326}
327.csl-footer-logo {
328  font-size: 20px;
329  font-weight: 700;
330  color: #fff;
331  margin-bottom: 12px;
332}
333.csl-footer-heading {
334  font-size: 13px;
335  font-weight: 600;
336  color: #fff;
337  text-transform: uppercase;
338  letter-spacing: 0.5px;
339  margin-bottom: 16px;
340}
341.csl-footer-links { list-style: none; padding: 0; margin: 0; }
342.csl-footer-links li { margin-bottom: 10px; }
343.csl-footer-links a {
344  font-size: 13px;
345  color: #9ca3af;
346  text-decoration: none;
347  transition: color 0.2s;
348}
349.csl-footer-links a:hover { color: #fff; }
350.csl-footer-contact p {
351  font-size: 13px;
352  margin-bottom: 6px;
353}
354.csl-footer-contact a { color: #fff; text-decoration: none; }
355.csl-footer-bottom {
356  padding-top: 30px;
357  border-top: 1px solid #374151;
358  display: flex;
359  align-items: center;
360  justify-content: space-between;
361}
362.csl-footer-copyright {
363  font-size: 12px;
364  color: #6b7280;
365}
366.csl-footer-payments { display: flex; gap: 10px; align-items: center; }
367.csl-footer-payments img {
368  height: 24px;
369  width: auto;
370  opacity: 0.6;
371  transition: opacity 0.2s;
372}
373.csl-footer-payments img:hover { opacity: 0.9; }
374
375/* Footer Responsive - Tablet */
376@media (max-width: 1024px) {
377  .csl-footer-grid { grid-template-columns: repeat(2, 1fr); }
378}
379
380/* Footer Responsive - Mobile */
381@media (max-width: 768px) {
382  .csl-footer { padding: 40px 0 20px; }
383  .csl-footer-grid { grid-template-columns: 1fr; gap: 24px; }
384  .csl-footer-brand p { font-size: 12px; }
385  .csl-footer-heading { font-size: 12px; margin-bottom: 12px; }
386  .csl-footer-links a { font-size: 12px; }
387  .csl-footer-bottom { flex-direction: column; gap: 12px; text-align: center; }
388  .csl-footer-payments { flex-wrap: wrap; justify-content: center; }
389}
390</style>
391
392<footer class="csl-footer" data-nosnippet>
393  <div class="container">
394    <div class="csl-footer-grid">
395      <div class="csl-footer-brand">
396        <p class="csl-footer-logo">CSL Shoes</p>
397        <p>Premium leather footwear for the whole family since 2008. Genuine leather uppers, handcrafted quality, and exceptional customer service.</p>
398        <p class="csl-footer-entity" style="font-size:12px;line-height:1.6;color:#9ca3af;margin-bottom:16px;max-width:280px;">Retail purchases on this website are sold by CSL Retail LLC. Wholesale purchases are sold by The CSL Group, Inc — both operate from 3 Alpine Court, Unit W156, Chestnut Ridge, NY 10977.</p>
399      </div>
400      <div>
401        <div class="csl-footer-heading">Shop</div>
402        <ul class="csl-footer-links">
403          <li><a href="/all-products">All Products</a></li>
404          <li><a href="/closure-type/Lace-Up/items">Oxfords</a></li>
405          <li><a href="/closure-type/Velcro/items">Boys' Shoes</a></li>
406          <li><a href="/closure-type/Slip-On/items">Loafers</a></li>
407          <li><a href="/all-products">New Arrivals</a></li>
408        </ul>
409      </div>
410      <div>
411        <div class="csl-footer-heading">Support</div>
412        <ul class="csl-footer-links">
413          <li><a href="/size-guide">Size Guide</a></li>
414          <li><a href="/shipping">Shipping Info</a></li>
415          <li><a href="/returns">Returns</a></li>
416          <li><a href="/guides/leather-shoe-care">Shoe Care</a></li>
417          <li><a href="/help">FAQ</a></li>
418          <li><a href="/blog">Blog</a></li>
419        </ul>
420      </div>
421      <div>
422        <div class="csl-footer-heading">Company</div>
423        <ul class="csl-footer-links">
424          <li><a href="/about">About Us</a></li>
425          <li><a href="/contact">Contact</a></li>
426          <li><a href="/privacy-policy">Privacy Policy</a></li>
427          <li><a href="/terms-of-service">Terms of Service</a></li>
428        </ul>
429      </div>
430      <div class="csl-footer-contact">
431        <div class="csl-footer-heading">Contact Us</div>
432        <p><a href="/cdn-cgi/l/email-protection#4c25222a230c2f3f203f2423293f622f2321"><span class="__cf_email__" data-cfemail="92fbfcf4fdd2f1e1fee1fafdf7e1bcf1fdff">[email&#160;protected]</span></a></p>
433        <p>Mon - Fri: 9am - 6pm EST</p>
434      </div>
435    </div>
436    <div class="csl-footer-bottom">
437      <p class="csl-footer-copyright">&copy; 2026 CSL Shoes. All rights reserved.</p>
438      <div class="csl-footer-payments">
439        <img src="/assets/cslshoes_erp/images/visa.svg" alt="Visa" width="40" height="24">
440        <img src="/assets/cslshoes_erp/images/mastercard.svg" alt="Mastercard" width="40" height="24">
441        <img src="/assets/cslshoes_erp/images/amex.svg" alt="American Express" width="40" height="24">
442      </div>
443    </div>
444  </div>
445</footer>
446	
447	<a href="https://wa.me/18456946700?text=Hi%2C%20I%20have%20a%20question%20about%20your%20shoes"
448	   target="_blank" rel="noopener"
449	   class="csl-whatsapp-widget"
450	   aria-label="Chat with us on WhatsApp"
451	   style="position:fixed;bottom:24px;right:24px;z-index:9998;width:56px;height:56px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,0.15);transition:transform 0.2s;"
452	   onmouseover="this.style.transform='scale(1.1)'"
453	   onmouseout="this.style.transform='scale(1)'">
454	  <svg viewBox="0 0 24 24" width="28" height="28" fill="white">
455	    <path d="M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.
455198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z"/>
456	  </svg>
457	</a>
vendor: 110 bytes, lines 457-458
457
458	<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
458<script>
459		frappe.boot = {
460 "apps_data": {
461  "apps": [],
462  "default_path": "",
463  "is_desk_apps": 1
464 },
465 "assets_json": {
466  "bank-reconciliation-tool.bundle.js": "/assets/erpnext/dist/js/bank-reconciliation-tool.bundle.3OD5XE4B.js",
467  "billing.bundle.js": "/assets/frappe/dist/js/billing.bundle.XJXMQXLI.js",
468  "bom_configurator.bundle.js": "/assets/erpnext/dist/js/bom_configurator.bundle.KVVOL5AV.js",
469  "bootstrap-4-web.bundle.js": "/assets/frappe/dist/js/bootstrap-4-web.bundle.OGQ7JEDG.js",
470  "build_events.bundle.js": "/assets/frappe/dist/js/build_events.bundle.BCX32TWL.js",
471  "calendar.bundle.js": "/assets/frappe/dist/js/calendar.bundle.4A4YITIU.js",
472  "controls.bundle.js": "/assets/frappe/dist/js/controls.bundle.GHTVO2AR.js",
473  "csl-web.bundle.js": "/assets/cslshoes_erp/dist/js/csl-web.bundle.SBA57Y6F.js",
474  "cslshoes_erp-web.bundle.js": "/assets/cslshoes_erp/dist/js/cslshoes_erp-web.bundle.VKBRYFDI.js",
475  "data_import_tools.bundle.js": "/assets/frappe/dist/js/data_import_tools.bundle.AIMRIHAY.js",
476  "desk.bundle.css": "/assets/frappe/dist/css/desk.bundle.E3JNXVFK.css",
477  "desk.bundle.js": "/assets/frappe/dist/js/desk.bundle.LRVAENER.js",
478  "dialog.bundle.js": "/assets/frappe/dist/js/dialog.bundle.4Y7AGZYX.js",
479  "email.bundle.css": "/assets/frappe/dist/css/email.bundle.FRP6ZWO5.css",
480  "erpnext-web.bundle.css": "/assets/erpnext/dist/css/erpnext-web.bundle.XAPV6OJR.css",
481  "erpnext.bundle.css": "/assets/erpnext/dist/css/erpnext.bundle.U3ZULTHY.css",
482  "erpnext.bundle.js": "/assets/erpnext/dist/js/erpnext.bundle.W4BKB7EY.js",
483  "erpnext_email.bundle.css": "/assets/erpnext/dist/css/erpnext_email.bundle.QDPP6JFP.css",
484  "file_uploader.bundle.js": "/assets/frappe/dist/js/file_uploader.bundle.NFWQ74RI.js",
485  "form.bundle.js": "/assets/frappe/dist/js/form.bundle.V6TJPRRA.js",
486  "form_builder.bundle.js": "/assets/frappe/dist/js/form_builder.bundle.TJDI53IC.js",
487  "frappe-web.bundle.js": "/assets/frappe/dist/js/frappe-web.bundle.6AGRRLFL.js",
488  "hierarchy-chart.bundle.js": "/assets/hrms/dist/js/hierarchy-chart.bundle.5E224PCR.js",
489  "hrms.bundle.css": "/assets/hrms/dist/css/hrms.bundle.2Y752HAB.css",
490  "hrms.bundle.js": "/assets/hrms/dist/js/hrms.bundle.QS2GRVNQ.js",
491  "interview.bundle.js": "/assets/hrms/dist/js/interview.bundle.C7CDEMYA.js",
492  "item-dashboard.bundle.js": "/assets/erpnext/dist/js/item-dashboard.bundle.7LUKZCYJ.js",
493  "kanban_board.bundle.js": "/assets/frappe/dist/js/kanban_board.bundle.WBHS2NSO.js",
494  "libs.bundle.js": "/assets/frappe/dist/js/libs.bundle.JEM3HUCP.js",
495  "list.bundle.js": "/assets/frappe/dist/js/list.bundle.C5NWOGPL.js",
496  "login.bundle.css": "/assets/frappe/dist/css/login.bundle.PUSGKFZL.css",
497  "logtypes.bundle.js": "/assets/frappe/dist/js/logtypes.bundle.WKQH7KBM.js",
498  "onboarding_tours.bundle.js": "/assets/frappe/dist/js/onboarding_tours.bundle.3QPQU5AO.js",
499  "performance.bundle.js": "/assets/hrms/dist/js/performance.bundle.63UL5NS7.js",
500  "photoswipe.bundle.js": "/assets/frappe/dist/js/photoswipe.bundle.YSXZQA64.js",
501  "point-of-sale.bundle.js": "/assets/erpnext/dist/js/point-of-sale.bundle.QTZY4HXK.js",
502  "print.bundle.css": "/assets/frappe/dist/css/print.bundle.TFESFRRQ.css",
503  "print_format.bundle.css": "/assets/frappe/dist/css/print_format.bundle.G3JSEXTM.css",
504  "print_format_builder.bundle.js": "/assets/frappe/dist/js/print_format_builder.bundle.EY2DZ4XK.js",
505  "report.bundle.css": "/assets/frappe/dist/css/report.bundle.YRLG53MK.css",
506  "report.bundle.js": "/assets/frappe/dist/js/report.bundle.YZUQRDTQ.js",
507  "rtl_desk.bundle.css": "/assets/frappe/dist/css-rtl/desk.bundle.GTUX6NUS.css",
508  "rtl_email.bundle.css": "/assets/frappe/dist/css-rtl/email.bundle.S6OLPJLO.css",
509  "rtl_erpnext-web.bundle.css": "/assets/erpnext/dist/css-rtl/erpnext-web.bundle.MY3OHIQG.css",
510  "rtl_erpnext.bundle.css": "/assets/erpnext/dist/css-rtl/erpnext.bundle.NFI4TDNU.css",
511  "rtl_erpnext_email.bundle.css": "/assets/erpnext/dist/css-rtl/erpnext_email.bundle.4SUQQPOC.css",
512  "rtl_hrms.bundle.css": "/assets/hrms/dist/css-rtl/hrms.bundle.2VFWZIH4.css",
513  "rtl_login.bundle.css": "/assets/frappe/dist/css-rtl/login.bundle.LAUNAKDN.css",
514  "rtl_print.bundle.css": "/assets/frappe/dist/css-rtl/print.bundle.46KW2M23.css",
515  "rtl_print_format.bundle.css": "/assets/frappe/dist/css-rtl/print_format.bundle.WRCRSWVB.css",
516  "rtl_report.bundle.css": "/assets/frappe/dist/css-rtl/report.bundle.J47TQ5QB.css",
517  "rtl_web_form.bundle.css": "/assets/frappe/dist/css-rtl/web_form.bundle.V6TATNAO.css",
518  "rtl_webshop-web.bundle.css": "/assets/webshop/dist/css-rtl/webshop-web.bundle.MXY3MF47.css",
519  "rtl_website.bundle.css": "/assets/frappe/dist/css-rtl/website.bundle.UYAJRC2H.css",
520  "sentry.bundle.js": "/assets/frappe/dist/js/sentry.bundle.AX44GVWW.js",
521  "syntax_highlighting.bundle.js": "/assets/frappe/dist/js/syntax_highlighting.bundle.YHGNRCUE.js",
522  "telemetry.bundle.js": "/assets/frappe/dist/js/telemetry.bundle.RXBBNH3H.js",
523  "user_onboarding.bundle.js": "/assets/frappe/dist/js/user_onboarding.bundle.RGMWXG2C.js",
524  "video_player.bundle.js": "/assets/frappe/dist/js/video_player.bundle.DUYYLSFO.js",
525  "web.bundle.js": "/assets/webshop/dist/js/web.bundle.WLOGYSZO.js",
526  "web_form.bundle.css": "/assets/frappe/dist/css/web_form.bundle.6KU4CLFY.css",
527  "web_form.bundle.js": "/assets/frappe/dist/js/web_form.bundle.ALVCCXE4.js",
528  "webshop-web.bundle.css": "/assets/webshop/dist/css/webshop-web.bundle.GQDT63VG.css",
529  "website.bundle.css": "/assets/frappe/dist/css/website.bundle.GD6PKXQI.css",
530  "workflow_builder.bundle.js": "/assets/frappe/dist/js/workflow_builder.bundle.O2QPXUEI.js"
531 },
532 "is_fc_site": 0,
533 "lang": "en-US",
534 "sitename": "csl.local",
535 "sysdefaults": {
536  "currency": "USD",
537  "date_format": "mm/dd/yyyy",
538  "first_day_of_the_week": "Sunday",
539  "float_precision": 3,
540  "number_format": "#,###.##",
541  "time_format": "HH:mm:ss"
542 },
543 "time_zone": {
544  "system": "America/New_York",
545  "user": "America/New_York"
546 }
547}
548		frappe.sys_defaults = frappe.boot.sysdefaults;
549	</script>
549
550	
551	
551<script type="text/javascript" src="/assets/cslshoes_erp/dist/js/csl-web.bundle.SBA57Y6F.js"></script>
551
552	
553<script>// login.js
554// don't remove this line (used in test)
555
556window.disable_signup = false;
557window.show_footer_on_login = false;
558
559window.login = {};
560
561window.verify = {};
562
563login.bind_events = function () {
564	$(window).on("hashchange", function () {
565		login.route();
566	});
567
568	$(".form-login").on("submit", function (event) {
569		event.preventDefault();
570		var args = {};
571		args.cmd = "login";
572		args.usr = ($("#login_email").val() || "").trim();
573		args.pwd = $("#login_password").val();
574		if (!args.usr || !args.pwd) {
575			
576			frappe.msgprint("Both login and password required");
577			return false;
578		}
579		login.call(args, null, "/login");
580		return false;
581	});
582
583	$(".form-signup").on("submit", function (event) {
584		event.preventDefault();
585		var args = {};
586		args.cmd = "frappe.core.doctype.user.user.sign_up";
587		args.email = ($("#signup_email").val() || "").trim();
588		args.redirect_to = frappe.utils.sanitise_redirect(frappe.utils.get_url_arg("redirect-to"));
589		args.full_name = frappe.utils.xss_sanitise(($("#signup_fullname").val() || "").trim());
590		if (!args.email || !validate_email(args.email) || !args.full_name) {
591			login.set_status("Valid email and name required", 'red');
592			return false;
593		}
594		login.call(args);
595		return false;
596	});
597
598	$(".form-forgot").on("submit", function (event) {
599		event.preventDefault();
600		var args = {};
601		args.cmd = "frappe.core.doctype.user.user.reset_password";
602		args.user = ($("#forgot_email").val() || "").trim();
603		if (!args.user) {
604			login.set_status("Valid Login id required.", 'red');
605			return false;
606		}
607		login.call(args);
608		return false;
609	});
610
611	$(".form-login-with-email-link").on("submit", function (event) {
612		event.preventDefault();
613		var args = {};
614		args.cmd = "frappe.www.login.send_login_link";
615		args.email = ($("#login_with_email_link_email").val() || "").trim();
616		if (!args.email) {
617			login.set_status("Valid Login id required.", 'red');
618			return false;
619		}
620		login.call(args).then(() => {
621			login.set_status("Login link sent to your email", 'blue');
622			$("#login_with_email_link_email").val("");
623		}).catch(() => {
624			login.set_status("Send login link", 'blue');
625		});
626
627		return false;
628	});
629
630	$(".toggle-password").click(function () {
631		var input = $($(this).attr("toggle"));
632		if (input.attr("type") == "password") {
633			input.attr("type", "text");
634			$(this).text("Hide")
635		} else {
636			input.attr("type", "password");
637			$(this).text("Show")
638		}
639	});
640
641	
642}
643
644
645login.route = function () {
646	var route = window.location.hash.slice(1);
647	if (!route) route = "login";
648	route = route.replaceAll("-", "_");
649	login[route]();
650}
651
652login.reset_sections = function (hide) {
653	if (hide || hide === undefined) {
654		$("section.for-login").toggle(false);
655		$("section.for-email-login").toggle(false);
656		$("section.for-forgot").toggle(false);
657		$("section.for-login-with-email-link").toggle(false);
658		$("section.for-signup").toggle(false);
659	}
660	$('section:not(.signup-disabled) .indicator').each(function () {
661		$(this).removeClass().addClass('indicator').addClass('blue')
662			.text($(this).attr('data-text'));
663	});
664}
665
666login.login = function () {
667	login.reset_sections();
668	$(".for-login").toggle(true);
669}
670
671login.email = function () {
672	login.reset_sections();
673	$(".for-email-login").toggle(true);
674	$("#login_email").focus();
675}
676
677login.steptwo = function () {
678	login.reset_sections();
679	$(".for-login").toggle(true);
680	$("#login_email").focus();
681}
682
683login.forgot = function () {
684	login.reset_sections();
685	if ($("#login_email").val()) {
686		$("#forgot_email").val($("#login_email").val());
687	}
688	$(".for-forgot").toggle(true);
689	$("#forgot_email").focus();
690}
691
692login.login_with_email_link = function () {
693	login.reset_sections();
694	if ($("#login_email").val()) {
695		$("#login_with_email_link_email").val($("#login_email").val());
696	}
697	$(".for-login-with-email-link").toggle(true);
698	$("#login_with_email_link_email").focus();
699}
700
701login.signup = function () {
702	login.reset_sections();
703	$(".for-signup").toggle(true);
704	$("#signup_fullname").focus();
705}
706
707
708// Login
709login.call = function (args, callback, url="/") {
710	login.set_status("Verifying...", 'blue');
711
712	return frappe.call({
713		type: "POST",
714		url: url,
715		args: args,
716		callback: callback,
717		freeze: true,
718		statusCode: login.login_handlers
719	});
720}
721
722login.set_status = function (message, color) {
723	$('section:visible .btn-primary').text(message)
724	if (color == "red") {
725		$('section:visible .page-card-body').addClass("invalid");
726	}
727}
728
729login.set_invalid = function (message) {
730	$(".login-content.page-card").addClass('invalid-login');
731	setTimeout(() => {
732		$(".login-content.page-card").removeClass('invalid-login');
733	}, 500)
734	login.set_status(message, 'red');
735	$("#login_password").focus();
736}
737
738login.login_handlers = (function () {
739	var get_error_handler = function (default_message) {
740		return function (xhr, data) {
741			if (xhr.responseJSON) {
742				data = xhr.responseJSON;
743			}
744
745			var message = default_message;
746			if (data._server_messages) {
747				message = ($.map(JSON.parse(data._server_messages || '[]'), function (v) {
748					// temp fix for messages sent as dict
749					try {
750						return JSON.parse(v).message;
751					} catch (e) {
752						return v;
753					}
754				}) || []).join('<br>') || default_message;
755			}
756
757			login.set_invalid(default_message);
758			if (message !== default_message) {
759				login.reset_sections(false);
760			}
761		};
762	}
763
764	var login_handlers = {
765		200: function (data) {
766			if (data.message == 'Logged In') {
767				login.set_status("Success", 'green');
768				document.body.innerHTML = `<div class="centered splash">
769	<img src="/files/cslshoes.png"
770		style="width: auto; max-width: 200px;">
771</div>`;
772				window.location.href = frappe.utils.sanitise_redirect(frappe.utils.get_url_arg("redirect-to")) || data.home_page;
773			} else if (data.message == 'Password Reset') {
774				window.location.href = frappe.utils.sanitise_redirect(data.redirect_to);
775			} else if (data.message == "No App") {
776				login.set_status("Success", 'green');
777				if (localStorage) {
778					var last_visited =
779						localStorage.getItem("last_visited")
780						|| frappe.utils.sanitise_redirect(frappe.utils.get_url_arg("redirect-to"));
781					localStorage.removeItem("last_visited");
782				}
783
784				if (data.redirect_to) {
785					window.location.href = frappe.utils.sanitise_redirect(data.redirect_to);
786				}
787
788				if (last_visited && last_visited != "/login") {
789					window.location.href = last_visited;
790				} else {
791					window.location.href = data.home_page;
792				}
793			} else if (window.location.hash === '#forgot') {
794				// Always show the same message regardless of whether the account
795				// exists or not, to prevent username enumeration (CWE-204).
796				login.set_status("Instructions Emailed", 'green');
797			} else if (window.location.hash === '#signup') {
798				if (cint(data.message[0]) == 0) {
799					login.set_status(data.message[1], 'red');
800				} else {
801					login.set_status("Success", 'green');
802					frappe.msgprint(data.message[1])
803				}
804				//login.set_status(__(data.message), 'green');
805			}
806
807			//OTP verification
808			if (data.verification && data.message != 'Logged In') {
809				login.set_status("Success", 'green');
810
811				document.cookie = "tmp_id=" + data.tmp_id;
812
813				if (data.verification.method == 'OTP App') {
814					continue_otp_app(data.verification.setup, data.verification.qrcode);
815				} else if (data.verification.method == 'SMS') {
816					continue_sms(data.verification.setup, data.verification.prompt);
817				} else if (data.verification.method == 'Email') {
818					continue_email(data.verification.setup, data.verification.prompt);
819				}
820			}
821		},
822		401: get_error_handler("Invalid Login. Try again."),
823		417: get_error_handler("Oops! Something went wrong."),
824		429: get_error_handler("Too many requests. Please try again later."),
825		500: get_error_handler("Something went wrong."),
826	};
827
828	return login_handlers;
829})();
830
831frappe.ready(function () {
832
833	login.bind_events();
834	if (window.show_footer_on_login) {
835		$("body .web-footer").show();
836	}
837
838	$(".form-signup, .form-forgot, .form-login-with-email-link").removeClass("hide");
839	$(document).trigger('login_rendered');
840});
841
842var verify_token = function (event) {
843	$(".form-verify").on("submit", function (eventx) {
844		eventx.preventDefault();
845		var args = {};
846		args.cmd = "login";
847		args.otp = $("#login_token").val();
848		args.tmp_id = frappe.get_cookie('tmp_id');
849		if (!args.otp) {
850			
851			frappe.msgprint("Login token required");
852			return false;
853		}
854		login.call(args);
855		return false;
856	});
857}
858
859var request_otp = function (r) {
860	$('.login-content').empty();
861	$('.login-content:visible').append(
862		`<div id="twofactor_div">
863			<form class="form-verify">
864				<div class="page-card-head p-0">
865					<span class="indicator blue" data-text="Verification">Verification</span>
866				</div>
867				<div id="otp_div"></div>
868				<input type="text" id="login_token" autocomplete="off" class="form-control" placeholder="Verification Code" required="">
869				<button class="btn btn-sm btn-primary btn-block mt-3" id="verify_token">Verify</button>
870			</form>
871		</div>`
872	);
873	// add event handler for submit button
874	verify_token();
875	$("#login_token").get(0)?.focus();
876}
877
878var continue_otp_app = function (setup, qrcode) {
879	request_otp();
880	var qrcode_div = $('<div class="text-muted" style="padding-bottom: 15px;"></div>');
881
882	if (setup) {
883		direction = $('<div>').attr('id', 'qr_info').text("Enter Code displayed in OTP App.");
884		qrcode_div.append(direction);
885		$('#otp_div').prepend(qrcode_div);
886	} else {
887		direction = $('<div>').attr('id', 'qr_info').text("OTP setup using OTP App was not completed. Please contact Administrator.");
888		qrcode_div.append(direction);
889		$('#otp_div').prepend(qrcode_div);
890	}
891}
892
893var continue_sms = function (setup, prompt) {
894	request_otp();
895	var sms_div = $('<div class="text-muted" style="padding-bottom: 15px;"></div>');
896
897	if (setup) {
898		sms_div.append(prompt)
899		$('#otp_div').prepend(sms_div);
900	} else {
901		direction = $('<div>').attr('id', 'qr_info').html(prompt || "SMS was not sent. Please contact Administrator.");
902		sms_div.append(direction);
903		$('#otp_div').prepend(sms_div)
904	}
905}
906
907var continue_email = function (setup, prompt) {
908	request_otp();
909	var email_div = $('<div class="text-muted" style="padding-bottom: 15px;"></div>');
910
911	if (setup) {
912		email_div.append(prompt)
913		$('#otp_div').prepend(email_div);
914	} else {
915		var direction = $('<div>').attr('id', 'qr_info').html(prompt || "Verification code email not sent. Please contact Administrator.");
916		email_div.append(direction);
917		$('#otp_div').prepend(email_div);
918	}
919}
920
921login.route();</script>
vendor: 1 bytes, line 921
921
922<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"02110bd8a9eb40e98c9fc92b32ecf849","r":1,"spa":2}' crossorigin="anonymous"></script>
922
923</body>
924</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.