My SMM panel
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
 
 
 
 
 
 

102 wiersze
3.0 KiB

  1. let heroText = document.querySelectorAll(".landing-hero h2,.landing-hero p")
  2. let registerToggles = document.querySelectorAll(".register-btn, .register-area\
  3. .cancel-button, .services-cards button")
  4. let token = getCookie('XSRF-TOKEN')
  5. function getToken() {
  6. fetch("/sanctum/csrf-cookie", {
  7. method: 'GET'
  8. })
  9. token = getCookie('XSRF-TOKEN')
  10. }
  11. function register(event) {
  12. fetch("/register", {
  13. method: 'POST',
  14. headers: {'Content-Type': 'application/json',
  15. 'X-XSRF-TOKEN': token},
  16. body: JSON.stringify({"name": document.getElementById("register-name").value,
  17. "email": document.getElementById("register-email").value,
  18. "password": document.getElementById("register-password").value}),
  19. "password_confirmation": document.getElementById("confirm-password").value})
  20. .then(response => {
  21. console.log(response.json())
  22. console.log(response.ok)
  23. console.log(response.message)
  24. });
  25. event.preventDefault();
  26. }
  27. function getCookie(name) {
  28. var re = new RegExp(name + "=([^;]+)");
  29. var value = re.exec(document.cookie);
  30. return (value != null) ? unescape(value[1]) : null;
  31. }
  32. function checkPasswords() {
  33. if (passInput.value != passInput2.value) {
  34. passInput2.setCustomValidity('Passwords must be matching')
  35. } else {
  36. passInput2.setCustomValidity('');
  37. }
  38. }
  39. function login(event) {
  40. fetch("/login", {
  41. method: 'POST',
  42. headers: {'Content-Type': 'application/json',
  43. 'X-XSRF-TOKEN': token},
  44. body: JSON.stringify({"email": document.getElementById("login_email").value,
  45. "password": document.getElementById("login_password").value}),
  46. }).then(response => {
  47. console.log(response.json())
  48. console.log(response.ok)
  49. console.log(response.message)
  50. })
  51. event.preventDefault();
  52. }
  53. //Attempt to resend the verification link
  54. function resendLink(event) {
  55. console.log("clicked");
  56. event.preventDefault();
  57. }
  58. function toggleNav() {
  59. heroText.forEach(item => {
  60. item.classList.toggle("hidden")
  61. })
  62. document.querySelector("nav form.login").classList.toggle("active")
  63. this.classList.toggle("toggled")
  64. }
  65. if (!token) {getToken()}
  66. if (window.location.pathname == '/') {
  67. document.getElementById('nav_toggle').addEventListener('click', toggleNav)
  68. document.getElementById('register-form').addEventListener('submit', register)
  69. document.getElementById('login_form').addEventListener('submit', login)
  70. //Triggers for registration menu
  71. for (i = 0; i < registerToggles.length; i++) {
  72. registerToggles[i].addEventListener("click", function() {
  73. document.querySelector(".register-area").classList.toggle("active")
  74. });
  75. }
  76. //FAQ collapsibles
  77. let cols = document.getElementsByClassName("collapsible");
  78. for (i = 0; i < cols.length; i++) {
  79. cols[i].addEventListener("click", function() {
  80. this.classList.toggle("active");
  81. });
  82. }
  83. document.getElementById("register-password").oninput = checkPasswords
  84. document.getElementById("confirm-password").oninput = checkPasswords
  85. } else if (window.location.pathname == '/verify-email') {
  86. document.getElementById('resend_verification').addEventListener("click", resendLink)
  87. }