1parasails.registerPage('twofactorhelp2', { 2 // â¦ââââ¦ââ¦ââ¦âââ⦠âââââ¦ââââââ¦ââââ 3 // âââââ â ââ ââ£â âââ â â â⣠â â⣠4 // â©ââââ© â© â©â© â©â©ââ âââ â© â© â© â© âââ 5 data: { 6 //⦠7 8 }, 9 10 // ⦠â¦âââââââââ⦠â¦âââ⦠âââ 11 // â ââ ⣠â⣠â ââ¦ââ â â⣠12 // â©âââ©â ââââââ â© ââââ©âââââ 13 beforeMount: function() { 14 //⦠15 }, 16 mounted: async function() { 17 //⦠18 19 var topThis = this; 20 var twofactorhelper = this.twofactorhelper; 21 22 $('#resetbtn').on("click", function(event) { 23 24 event.preventDefault(); 25 26 $('#resetbtn').html(`<i class="fa fa-spinner fa-spin" aria-hidden="true"></i>`); 27 28 $('#resetbtn').prop("disabled", true); 29 30 var pincode = $('#pincode').val(); 31 32 io.socket.get('/api/v2/resethelp', {method: 'checkpin', data: JSON.stringify({twofactorhelper: twofactorhelper, pincode: pincode})}, function gotResponse(data, jwRes) { 33 34 if (data.status == false) 35 { 36 37 $('#resetbtn').hide(); 38 39 $('#notificationbanner').hide(); 40 $('#notificationbanner').html(""); 41 $('#actioncontainer').html(`<center><a 42 style=" 43 color: var(--always_black); 44 background-color: var(--main-brand-color); 45 padding: 10px 20px; 46 border-radius: 3px;" 47 href="/twofactorhelp">` + window.geti18n("Start Over") + `</a></center>` 48 ); 49 50 $("body").addClass("swal-open"); 51 52 swal(window.geti18n("Error"), window.geti18n(data.message), "error").then(() => $("body").removeClass("swal-open")); 53 54 } 55 else 56 { 57 58 if (data.nextstep == 'kyc') 59 { 60 61 dokyc(); 62 63 } 64 else if (data.nextstep == 'sms') 65 { 66 67 dosms(); 68 69 } 70 else if (data.nextstep == 'questions') 71 { 72 73 doquestions(); 74 75 } 76 else 77 { 78 $("body").addClass("swal-open"); 79 80 swal(window.geti18n("Error"), window.geti18n("Unknown error has occurred"), "error").then(() => $("body").removeClass("swal-open")); 81 82 $('#resetbtn').hide(); 83 84 $('#notificationbanner').hide(); 85 $('#notificationbanner').html(""); 86 $('#actioncontainer').html(`<center><a 87 style=" 88 color: var(--always_black); 89 background-color: var(--main-brand-color); 90 padding: 10px 20px; 91 border-radius: 3px;" 92 href="/twofactorhelp">` + window.geti18n("Start Over") + `</a></center>`); 93 94 } 95 96 } 97 98 }); 99 100 }); 101 102 103 function dokyc() 104 { 105 $("body").addClass("swal-open"); 106 107 swal(window.geti18n("Reset two factor with KYC"), window.geti18n("You have a verified account. You can reset your two factor code by reverification."), "success").then(() => $("body").removeClass("swal-open")); 108 109 $('#notificationbanner').hide(); 110 $('#notificationbanner').html(""); 111 $('#actioncontainer').html(` 112 <div class="pl-2 pr-2 pt-1 pb-5" id=""> 113 <center> 114 <svg width="286" height="282" viewBox="0 0 286 282" fill="none" xmlns="http://www.w3.org/2000/svg"> 115 <g opacity="0.2" filter="url(#filter0_f_1075_8526)"> 116 <circle cx="144.38" cy="141.207" r="106.207" fill="#000"></circle> 117 </g> 118 <circle cx="154.035" cy="88.7933" r="22.069" fill="var(--green)"></circle> 119 <path d="M145.4 88.9304L151.68 95.51L162.671 83.9957" stroke="white" stroke-width="2.75863" stroke-linecap="round" stroke-linejoin="round"></path> 120 <g filter="url(#filter1_f_1075_8526)"> 121 <rect x="19" y="77.1156" width="115.862" height="154.483" rx="11.0345" transform="rotate(-8.59828 19 77.1156)" fill="#000" fill-opacity="0.5"></rect> 122 </g> 123 <g filter="url(#filter2_d_1075_8526)"> 124 <rect x="19" y="72.1156" width="115.862" height="154.483" rx="11.0345" transform="rotate(-8.59828 19 72.1156)" fill="white"></rect> 125 <rect x="19.785" y="72.6944" width="114.483" height="153.104" rx="10.3449" transform="rotate(-8.59828 19.785 72.6944)" stroke="#000" stroke-opacity="0.3" stroke-width="1.37931"></rect> 126 <rect x="27.4465" y="79.0063" width="101.219" height="138.331" rx="4.13794" transform="rotate(-8.59828 27.4465 79.0063)" fill="url(#paint0_linear_1075_8526)"></rect> 127 <circle cx="87.828" cy="139.828" r="26.207" transform="rotate(-8.59828 87.828 139.828)" stroke="white" stroke-width="2.75863"></circle> 128 <path d="M104.093 118.233C99.9021 123.8 93.6124 127.793 86.1783 128.917C78.7443 130.041 71.5552 128.087 65.906 124.007" stroke="white" stroke-width="2.75863"></path> 129 <path d="M71.5635 161.423C75.7542 155.856 82.0439 151.863 89.4779 150.738C96.9119 149.614 104.101 151.569 109.75 155.649" stroke="white" stroke-width="2.75863"></path> 130 <path d="M61.9155 143.746L113.74 135.91" stroke="white" stroke-width="2.75863" stroke-linecap="round" stroke-linejoin="round"></path>
131 <path d="M101.466 137.766C102.577 145.113 101.932 151.945 100.058 157.035C98.1644 162.177 95.1615 165.224 91.746 165.74C88.3305 166.257 84.5611 164.234 81.2319 159.881C77.9371 155.573 75.3007 149.237 74.1898 141.89C73.0789 134.543 73.7241 127.711 75.598 122.621C77.4914 117.479 80.4944 114.432 83.9098 113.916C87.3253 113.399 91.0947 115.422 94.4239 119.775C97.7187 124.083 100.355 130.419 101.466 137.766Z" stroke="white" stroke-width="2.75863"></path> 132 <path d="M83.9099 113.916L91.7461 165.74" stroke="white" stroke-width="2.75863" stroke-linecap="round" stroke-linejoin="round"></path> 133 </g> 134 <g filter="url(#filter3_f_1075_8526)"> 135 <rect x="137.42" y="109.586" width="131.035" height="92.4141" rx="11.0345" transform="rotate(8.54379 137.42 109.586)" fill="#000" fill-opacity="0.5"></rect> 136 </g> 137 <g filter="url(#filter4_d_1075_8526)"> 138 <rect x="137.42" y="102.586" width="131.035" height="92.4141" rx="11.0345" transform="rotate(8.54379 137.42 102.586)" fill="white"></rect> 139 <rect x="137.999" y="103.371" width="129.656" height="91.0348" rx="10.3449" transform="rotate(8.54379 137.999 103.371)" stroke="#000" stroke-opacity="0.3" stroke-width="1.37931"></rect> 140 </g> 141 <path fill-rule="evenodd" clip-rule="evenodd" d="M166.599 154.393C173.755 155.468 180.428 150.538 181.504 143.382C182.579 136.225 177.649 129.552 170.492 128.477C163.336 127.402 156.663 132.332 155.587 139.488C154.512 146.645 159.442 153.318 166.599 154.393ZM144.395 170.617C147.614 162.311 156.504 157.061 165.984 158.485C175.464 159.909 182.419 167.539 183.055 176.425C183.219 178.705 181.061 180.277 178.801 179.938L147.429 175.225C145.169 174.885 143.569 172.748 144.395 170.617Z" fill="url(#paint1_linear_1075_8526)"></path> 142 <path d="M203.84 143.25L229.074 147.041" stroke="#000" stroke-width="2.75863" stroke-linecap="round" stroke-linejoin="round"></path> 143 <path d="M202.201 154.162L239.029 159.695" stroke="#000" stroke-width="2.75863" stroke-linecap="round" stroke-linejoin="round"></path> 144 <path d="M200.562 165.075L221.022 168.148" stroke="#000" stroke-width="2.75863" stroke-linecap="round" stroke-linejoin="round"></path> 145 <defs> 146 <filter id="filter0_f_1075_8526" x="3.68998" y="0.517128" width="281.38" height="281.38" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"> 147 <feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood> 148 <feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"></feBlend> 149 <feGaussianBlur stdDeviation="17.2414" result="effect1_foregroundBlur_1075_8526"></feGaussianBlur> 150 </filter> 151 <filter id="filter1_f_1075_8526" x="0.52417" y="41.3177" width="174.608" height="207.021" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"> 152 <feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood> 153 <feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"></feBlend> 154 <feGaussianBlur stdDeviation="10" result="effect1_foregroundBlur_1075_8526"></feGaussianBlur> 155 </filter> 156 <filter id="filter2_d_1075_8526" x="15.0069" y="56.3177" width="145.643" height="178.055" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"> 157 <feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood> 158 <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"></feColorMatrix> 159 <feOffset dy="5.51726"></feOffset> 160 <feGaussianBlur stdDeviation="2.75863"></feGaussianBlur> 161 <feComposite in2="hardAlpha" operator="out"></feComposite> 162 <feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0"></feColorMatrix> 163 <feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_1075_8526"></feBlend> 164 <feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_1075_8526" result="shape"></feBlend> 165 </filter> 166 <filter id="filter3_f_1075_8526" x="105.206" y="91.1018" width="180.28" height="147.825" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
167 <feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood> 168 <feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"></feBlend> 169 <feGaussianBlur stdDeviation="10" result="effect1_foregroundBlur_1075_8526"></feGaussianBlur> 170 </filter> 171 <filter id="filter4_d_1075_8526" x="119.689" y="104.102" width="151.314" height="118.859" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"> 172 <feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood> 173 <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"></feColorMatrix> 174 <feOffset dy="5.51726"></feOffset> 175 <feGaussianBlur stdDeviation="2.75863"></feGaussianBlur> 176 <feComposite in2="hardAlpha" operator="out"></feComposite> 177 <feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0"></feColorMatrix> 178 <feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_1075_8526"></feBlend> 179 <feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_1075_8526" result="shape"></feBlend> 180 </filter> 181 <linearGradient id="paint0_linear_1075_8526" x1="78.0563" y1="79.0063" x2="78.0563" y2="217.337" gradientUnits="userSpaceOnUse"> 182 <stop stop-color="#000"></stop> 183 <stop offset="1" stop-color="#000" stop-opacity="0.2"></stop> 184 </linearGradient> 185 <linearGradient id="paint1_linear_1075_8526" x1="170.492" y1="128.477" x2="163.115" y2="177.581" gradientUnits="userSpaceOnUse"> 186 <stop stop-color="#000"></stop> 187 <stop offset="1" stop-color="#000" stop-opacity="0.2"></stop> 188 </linearGradient> 189 </defs> 190 </svg> 191 <br /> 192 ` + window.geti18n("Your account is verified. You can prove your identify by verifying again. Please make sure to use the same identification card as your original verification.") + `<br /> 193 <br /><br />` + window.geti18n("Filesize limit for each file is 5MB. Only images are accepted.") + ` 194 <br /><br /> 195 196 197 <form enctype="multipart/form-data" method="post" action="/api/v2/twofactorhelp-verification" id="verificationaltform"> 198 199 ` + window.geti18n("Select ID Type:") + ` 200 <select id="idtype" name="idtype" class="form-control" style="width:200px; margin-bottom:20px;"> 201 <option value='driverlicense'>` + window.geti18n("Driving License") + ` 202 <option value='passport'>` + window.geti18n("Passport") + ` 203 <option value='nationalid'>` + window.geti18n("National ID") + ` 204 <option value='voterid'>` + window.geti18n("Voter ID") + ` 205 </select> 206 207 <input type="hidden" name="_csrf" value="` + window.tokenId + `" /> 208 209 <input type="hidden" name="twofactorhelper" value="` + twofactorhelper + `" /> 210 211 <div class="row" style="margin-bottom:20px; min-height:200px;"> 212 213 <div class="col" id="idfront" style="height:200px;"> 214 <div id="fileUploadImage" style="margin:auto; width:250px; height: 160px; background-position: 50%; background-repeat: no-repeat; background-size: 100%; background-image: url('/images/kyc_idfront.png');"> 215 216 <div style="width: 100%; height: 100%; cursor: pointer;"> 217 <span style="width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; position: relative;"> 218 <div style="width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;"> 219 <span tabindex="0" class="ant-upload" role="button"> 220 <input name="idupload" id="fileUpload" type="file" accept=".jpg,.png,.jpeg,.svg,.gif,.webp;" capture="camera" style="display: none;"> 221 <div style="width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;"> 222 223 <label for="fileUpload" class="btn btn-sm btn-primary" style="cursor:pointer; padding:10px; border-radius:50%; text-align:center;"><i class="fa fa-upload mr-1 ml-1"></i></label> 224 225 </div> 226 </span> 227 </div> 228 </span> 229 </div> 230 231 <p>` + window.geti18n("Front of the Photo ID.") + `</p></div> 232 233 </div> 234 235 <div class="col" id="idback" style="height:200px;"> 236 <div id="fileUpload3Image" style="margin:auto; width:250px; height: 160px; background-position: 50%; background-repeat: no-repeat; background-size: 100%; background-image: url('/images/kyc_idback.png');"> 237 238 <div style="width: 100%; height: 100%; cursor: pointer;"> 239 <span style="width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; position: relative;"> 240 <div style="width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;"> 241 <span tabindex="0" class="ant-upload" role="button"> 242 <input name="idbackupload" id="fileUpload3" type="file" accept=".jpg,.png,.jpeg,.svg,.gif,.webp;" capture="camera" style="display: none;"> 243 <div style="width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;"> 244 245 <label for="fileUpload3" class="btn btn-sm btn-primary" style="cursor:pointer; padding:10px; border-radius:50%; text-align:center;"><i class="fa fa-upload mr-1 ml-1"></i></label> 246 247 </div> 248 </span> 249 </div> 250 </span> 251 </div> 252 253 <p>` + window.geti18n("Back of the ID") + `</p></div> 254 255 </div> 256 257 <div class="col" id="selfiepic" style="height:200px;"> 258 <div id="fileUpload2Image" style="margin:auto; width:250px; height: 160px; background-position: 50%; background-repeat: no-repeat; background-size: 100%; background-image: url('/images/kyc_selfie.png');"> 259 260 <div style="width: 100%; height: 100%; cursor: pointer;"> 261 <span style="width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; position: relative;"> 262 <div style="width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;"> 263 <span tabindex="0" class="ant-upload" role="button"> 264 <input name="selfieupload" id="fileUpload2" type="file" accept=".jpg,.png,.jpeg,.svg,.gif,.webp;" capture="camera" style="display: none;"> 265 <div style="width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;"> 266 267 <label for="fileUpload2" class="btn btn-sm btn-primary" style="cursor:pointer; padding:10px; border-radius:50%; text-align:center;"><i class="fa fa-upload mr-1 ml-1"></i></label> 268 269 </div> 270 </span> 271 </div> 272 </span> 273 </div> 274 275 <p>` + window.geti18n("Selfie Photo (No ID)") + `</p></div> 276 277 </div> 278 279 </div> 280 281 282 <br /><br /> 283 284 <button class='btn btn-primary' id='startverify'>` + window.geti18n("Submit Documents") + `</button> 285 286 287 288 </form> 289 290 291 292 293 294 295 </center> 296 </div>`); 297 298 299 300 var hideidback = false;
301 302 $('#idtype').on('change', function(e) { 303 304 let selectedValue = $(this).find('option:selected').val(); 305 306 if (selectedValue == "passport") 307 { 308 // hide id back input 309 310 $("#idback").hide(); 311 hideidback = true; 312 313 } 314 else 315 { 316 317 $("#idback").show(); 318 hideidback = false; 319 320 } 321 322 }); 323 324 $('#fileUpload').on('change', function(e) { 325 326 e.preventDefault(); 327 328 329 if (e.target.files && e.target.files[0]) { 330 var reader = new FileReader(); 331 332 reader.onload = function (e) { 333 334 $('#fileUploadImage').css('background-image', 'url(' + e.target.result + ')'); 335 }; 336 337 reader.readAsDataURL(e.target.files[0]); 338 } 339 340 341 }); 342 343 $('#fileUpload2').on('change', function(e) { 344 345 e.preventDefault(); 346 347 348 if (e.target.files && e.target.files[0]) { 349 var reader = new FileReader(); 350 351 reader.onload = function (e) { 352 $('#fileUpload2Image').css('background-image', 'url(' + e.target.result + ')'); 353 }; 354 355 reader.readAsDataURL(e.target.files[0]); 356 } 357 358 359 }); 360 361 $('#fileUpload3').on('change', function(e) { 362 363 e.preventDefault(); 364 365 366 if (e.target.files && e.target.files[0]) { 367 var reader = new FileReader(); 368 369 reader.onload = function (e) { 370 $('#fileUpload3Image').css('background-image', 'url(' + e.target.result + ')'); 371 }; 372 373 reader.readAsDataURL(e.target.files[0]); 374 } 375 376 }); 377 378 379 380 381 $('#startverify').off('click'); 382 $('#startverify').on('click', function(e) { 383 384 e.preventDefault(); 385 386 let hasError = false; 387 388 $('#idfront').css({border: "0px"}); 389 $('#idback').css({border: "0px"}); 390 $('#selfiepic').css({border: "0px"}); 391 392 if( document.getElementById("fileUpload").files.length == 0 ){ 393 394 $('#idfront').css({border: "1px solid var(--red)"}); 395 396 hasError = true; 397 398 } 399 400 if( document.getElementById("fileUpload2").files.length == 0 ){ 401 402 $('#selfiepic').css({border: "1px solid var(--red)"}); 403 404 hasError = true; 405 406 } 407 408 if(hideidback == false && document.getElementById("fileUpload3").files.length == 0 ){ 409 410 $('#idback').css({border: "1px solid var(--red)"}); 411 412 hasError = true; 413 414 } 415 416 if (hasError == false) 417 { 418 419 $(this).prop('disabled', true); 420 $(this).html('<i class="fa fa-circle-o-notch fa-spin" aria-hidden="true"></i> ' + window.geti18n('Sending Documents')); 421 $(this).parents('form').submit(); 422 423 } 424 425 }); 426 427 428 429 430 431 432 433 434 } 435 436 function dosms() 437 { 438 $("body").addClass("swal-open"); 439 440 swal(window.geti18n("Reset two factor with SMS"), window.geti18n("A pin code has been sent to your mobile phone."), "success").then(() => $("body").removeClass("swal-open")); 441 442 $('#notificationbanner').show(); 443 $('#notificationbanner').html(window.geti18n("A PIN code has been sent to your mobile device via SMS")); 444 $('#actioncontainer').html(` 445 <div class="login-card-container"> 446 <div class="login-card"> 447 <div class="login-card-header"> 448 <h3>` + window.geti18n("PIN Code") + `</h3> 449 <div>` + window.geti18n("Enter the SMS PIN code from phone") + `</div> 450 </div> 451 452 <form class="login-card-form"> 453 454 <div> 455 <label for="pincode" class="form-label">` + window.geti18n("PIN Code") + `</label> 456 <input 457 class="form-control xformfield hoverborder" 458 type="text" 459 id='pincode2' 460 placeholder="` + window.geti18n("PIN Code") + `" focus-first required /> 461 </div> 462 463 <button 464 style="width: 100%; background-color: var(--main-brand-color); color: rgb(0, 0, 0);" 465 id='resetbtn2' 466 class="btn ajax-button btn">` + window.geti18n("Continue Reset") + `</button> 467 468 </form> 469 470 </div> 471 472 </div>`); 473 474 $('#resetbtn2').off('click'); 475 $('#resetbtn2').on('click', function(e) { 476 477 e.preventDefault(); 478 479 var pincode = $('#pincode2').val(); 480 481 io.socket.get('/api/v2/resethelp', {method: 'checksmspin', data: JSON.stringify({twofactorhelper: twofactorhelper, pincode: pincode})}, function gotResponse(data, jwRes) { 482 483 if (data.status == false) 484 { 485 486 $('#resetbtn2').hide(); 487 488 $('#notificationbanner').hide(); 489 $('#notificationbanner').html(""); 490 $('#actioncontainer').html(`<center><a 491 style=" 492 color: var(--always_black); 493 background-color: var(--main-brand-color); 494 padding: 10px 20px; 495 border-radius: 3px;" 496 href="/twofactorhelp">` + window.geti18n("Start Over") + `</a></center>` 497 ); 498 499 $("body").addClass("swal-open"); 500 501 swal(window.geti18n("Error"), window.geti18n(data.message), "error").then(() => $("body").removeClass("swal-open")); 502 503 } 504 else 505 { 506 507 location.href = '/twofactorhelp3'; 508 509 } 510 511 }); 512 513 }); 514 515 } 516 517 function timestampToReadableTime(timestamp) { 518 const date = new Date(timestamp);
519 return date.toLocaleString(); 520 } 521 522 function doquestions() 523 { 524 $('#notificationbanner').hide(); 525 $('#notificationbanner').html(""); 526 $('#actioncontainer').html(""); 527 528 io.socket.get('/api/v2/resethelp', {method: 'getquestions', data: JSON.stringify({twofactorhelper: twofactorhelper})}, function gotResponse(data, jwRes) { 529 530 const questions = data.data; 531 532 let questionHtml = `<table style="color: var(--white_color);" class='table'><tr style="background: #09090E; border-style: hidden;"><th></th><th>` + window.geti18n("Ticker") + `</th><th>` + window.geti18n("Amount") + `</th><th>` + window.geti18n("Transaction ID") + `</th><th>` + window.geti18n("Time") + `</th></tr>`; 533 for (let i = 0; i < questions.length; i++) 534 { 535 536 let thisQuestion = questions[i]; 537 538 questionHtml += ` 539 <tr style="border: 1px solid #2A2A32;"> 540 <td style="text-align:center;"><input id="orange" style="cursor: pointer; width: 20px; height: 20px;" type="radio" name="answer" value="` + thisQuestion.id + `"></td> 541 <td>` + thisQuestion.ticker + `</td> 542 <td>` + thisQuestion.amount + `</td> 543 <td>` + thisQuestion.txid + `</td> 544 <td>` + timestampToReadableTime(thisQuestion.time) + `</td> 545 </tr>`; 546 547 } 548 549 questionHtml += ` 550 <tr style="border: 1px solid #2A2A32;"> 551 <td style="text-align:center;"><input id="orange" style="cursor: pointer; width: 20px; height: 20px;" type="radio" name="answer" value="none"></td> 552 <td colspan=4>` + window.geti18n("None of these") + `</td> 553 </tr>`; 554 555 questionHtml += `</table>`; 556 557 $('#notificationbanner').hide(); 558 $('#notificationbanner').html(""); 559 $('#actioncontainer').html(` 560 <div> 561 <strong>` + window.geti18n("Which of the following transactions was a recent deposit to your account?") + `</strong><br /><br /> 562 ` + questionHtml + ` 563 <button 564 id='resetbtn3' 565 style="background-color: var(--main-brand-color); color: rgb(0, 0, 0);" 566 class="btn ajax-button btn">` + window.geti18n("Choose Item") + `</button> 567 </div>`); 568 569 $('#resetbtn3').prop('disabled', true); 570 571 $("input[name='answer']").off('click'); 572 $("input[name='answer']").on('click', function() { 573 $('#resetbtn3').prop('disabled', false); 574 }); 575 576 $('#resetbtn3').off('click'); 577 $('#resetbtn3').on('click', function(e) { 578 579 e.preventDefault(); 580 581 $('#resetbtn3').html(`<i class="fa fa-spinner fa-spin" aria-hidden="true"></i>`); 582 583 var answer = $("input[name='answer']:checked").val(); 584 585 io.socket.get('/api/v2/resethelp', {method: 'checkquestions', data: JSON.stringify({twofactorhelper: twofactorhelper, answer: answer})}, function gotResponse(data, jwRes) { 586 587 location.href = '/twofactorhelp3'; 588 589 }); 590 591 }); 592 593 }); 594 595 } 596 597 598 }, 599 600 // â¦âââââ¦âââââ¦ââââââââââ¦ââ¦âââââââââ 601 // ââââ â â⣠â â¦ââ ââ£â â ââ âââââââ 602 // â©âââ â© ââââ©âââ© â©âââ â© â©âââââââââ 603 methods: { 604 //⦠605 606 607 608 } 609});
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.