dkforest

A forum and chat platform (onion)
git clone https://git.dasho.dev/n0tr1v/dkforest.git
Log | Files | Refs | LICENSE

signup.gohtml (5787B)


      1 {{ define "extra-head" }}
      2     <style>
      3         #timer_countdown:before {
      4             content: "{{ .Data.CaptchaSec }}";
      5             animation: {{ .Data.CaptchaSec }}s 1s forwards timer_countdown_frames;
      6         }
      7         @keyframes timer_countdown_frames {
      8         {{ range .Data.Frames -}}{{ . | css }}{{ end -}}
      9         }
     10     </style>
     11 {{ end }}
     12 
     13 {{ define "content" }}
     14 <div id="parent">
     15     <div class="container" id="form_login">
     16         <div class="row">
     17             <div class="col-8 offset-2 col-md-8 offset-md-2 col-sm-8 col-lg-6 offset-lg-3 col-xl-4 offset-xl-4">
     18                 <form autocomplete="on" method="post">
     19                     <input type="hidden" name="csrf" value="{{ .CSRF }}" />
     20                     <input type="hidden" name="captcha_id" value="{{ .Data.CaptchaID }}" />
     21                     <input type="hidden" name="captcha_img" value="{{ .Data.CaptchaImg }}" />
     22                     <fieldset>
     23                         <div class="row">
     24                             <div class="center-block">
     25                             </div>
     26                         </div>
     27                         <div class="row">
     28                             <div class="col-sm-12 col-md-10 offset-md-1 ">
     29                                 <div class="form-group">
     30                                     <input class="transparent-input form-control{{ if .Data.Errors.Username }} is-invalid{{ end }}" placeholder="{{ t "Username" . }}" name="username" type="text" value="{{ .Data.Username }}" autofocus />
     31                                     {{ if .Data.Errors.Username }}<div class="invalid-feedback d-block">{{ .Data.Errors.Username }}</div>{{ end }}
     32                                 </div>
     33                                 <div class="form-group">
     34                                     <input class="transparent-input form-control{{ if .Data.Errors.Password }} is-invalid{{ end }}" placeholder="{{ t "Password" . }}" name="password" type="password" value="{{ .Data.Password }}" />
     35                                     {{ if .Data.Errors.Password }}<div class="invalid-feedback d-block">{{ .Data.Errors.Password }}</div>{{ end }}
     36                                 </div>
     37                                 <div class="form-group">
     38                                     <input class="transparent-input form-control" placeholder="{{ t "Confirm password" . }}" name="repassword" type="password" value="{{ .Data.RePassword }}" />
     39                                 </div>
     40                                 {{ if .Data.PowEnabled }}
     41                                     <div class="form-group">
     42                                         <div class="text-center mb-2 bg-label"><a href="/pow-help" target="_blank" rel="noopener noreferrer">Proof of work help</a></div>
     43                                         <input class="transparent-input form-control{{ if .Data.ErrPow }} is-invalid{{ end }}" placeholder="{{ t "Proof of work" . }}" name="pow" type="text" value="{{ .Data.Pow }}" />
     44                                         {{ if .Data.ErrPow }}<div class="invalid-feedback d-block">{{ .Data.ErrPow }}</div>{{ end }}
     45                                     </div>
     46                                 {{ end }}
     47                                 {{ if not .Data.HasSolvedCaptcha }}
     48                                     <div class="form-group">
     49                                         <div class="text-center mb-2 bg-label">Captcha expires in <span id="timer_countdown"></span> seconds (<a href="/captcha-help" target="_blank" rel="noopener noreferrer">help</a>)</div>
     50                                         <div class="mb-2 text-center">
     51                                             <img src="data:image/png;base64,{{ .Data.CaptchaImg }}" alt="captcha" style="background-color: hsl(0, 0%, 90%);"  class="captcha-img" />
     52                                         </div>
     53                                         <input class="transparent-input form-control{{ if .Data.ErrCaptcha }} is-invalid{{ end }}" placeholder="{{ t "Captcha (6 digits)" . }}" name="captcha" type="text" value="{{ .Data.Captcha }}" maxlength="6" autocomplete="off" />
     54                                         {{ if .Data.ErrCaptcha }}<div class="invalid-feedback d-block">{{ .Data.ErrCaptcha }}</div>{{ end }}
     55                                     </div>
     56                                 {{ else }}
     57                                     <div class="form-group">
     58                                         <div class="text-center mb-2 bg-label">Captcha is solved (<a href="/captcha-help" target="_blank" rel="noopener noreferrer">help</a>)</div>
     59                                         <div class="mb-2 text-center">
     60                                             <img src="data:image/png;base64,{{ .Data.CaptchaImg }}" alt="captcha" style="background-color: hsl(0, 0%, 90%);" />
     61                                         </div>
     62                                         <input class="transparent-input form-control is-valid" name="captcha" type="text" value="{{ .Data.Captcha }}" maxlength="6" autocomplete="off" readonly />
     63                                     </div>
     64                                 {{ end }}
     65                                 <div class="form-group">
     66                                     <input type="submit" class="transparent-input btn btn-lg btn-primary btn-block" value="{{ t "Sign up" . }}" />
     67                                 </div>
     68                                 <div class="form-group">
     69                                     <a href="/{{ if .Data.Redirect }}?redirect={{ .Data.Redirect }}{{ end }}" class="bg-label link">{{ t "Login" . }}</a>
     70                                 </div>
     71                             </div>
     72                         </div>
     73                     </fieldset>
     74                 </form>
     75             </div>
     76         </div>
     77     </div>
     78 </div>
     79 {{ end }}