25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.
 
 

102 satır
3.9 KiB

  1. import React from 'react';
  2. import Link from 'next/link';
  3. import * as Icon from 'react-feather';
  4. import { useRouter } from "next/router";
  5. const Login = () => {
  6. const [email, setEmail] = React.useState("");
  7. const [pass, setPass] = React.useState("");
  8. const [open, setOpen] = React.useState(false);
  9. const [error, setError] = React.useState("");
  10. const router = useRouter();
  11. const submitHandler = async (event) => {
  12. event.preventDefault();
  13. setEmail(event.target.email.value);
  14. setPass(event.target.pass.value);
  15. const res = await fetch("/api/auth/login", {
  16. body: JSON.stringify({
  17. partner: "yamaha",
  18. email: email,
  19. pass: pass,
  20. }),
  21. headers: {
  22. "Content-Type": "application/json",
  23. },
  24. method: "POST",
  25. });
  26. // console.log("res", res.S);
  27. if (res.ok) {
  28. router.push("/yamaha");
  29. } else {
  30. setError(await res.text());
  31. setOpen(true);
  32. }
  33. };
  34. return (
  35. <>
  36. <div className="ptb-80" style={{ marginTop: "-50px" }}>
  37. <div className="container">
  38. <div className="auth-form">
  39. <div className="auth-head">
  40. <img src="/images/Home/businees/ThamrinBrothers.png" width="300px" alt="logo" />
  41. <br /><br />
  42. <p>Tidak Punya Akun ? Silahkan <Link href="/yamaha/Register">Register</Link></p>
  43. </div>
  44. <form onSubmit={submitHandler}>
  45. <div className="mb-3">
  46. <label className="form-label">Email</label>
  47. <input type="email" className="form-control" id="email"
  48. inputProps={{
  49. type: "email",
  50. name: "email",
  51. onChange: (event) => setEmail(event.target.value),
  52. }}
  53. />
  54. </div>
  55. <div className="mb-3">
  56. <label className="form-label">Password</label>
  57. <input type="password" className="form-control" id="pass"
  58. inputProps={{
  59. name: "pass",
  60. onChange: (event) => setPass(event.target.value),
  61. type: "password",
  62. autoComplete: "off",
  63. }}
  64. />
  65. </div>
  66. <div className="mb-3">
  67. <p><Link href="/yamaha/ForgotPassword"><a>Lupa Password</a></Link></p>
  68. </div>
  69. <button type="submit" href="/yamaha" className="btn btn-primary">Login</button>
  70. </form>
  71. <div className="foot">
  72. <p>or connect with</p>
  73. <ul>
  74. <li>
  75. <a href="#" target="_blank">
  76. <Icon.Mail />
  77. </a>
  78. </li>
  79. <li>
  80. <a href="#" target="_blank">
  81. <Icon.Facebook />
  82. </a>
  83. </li>
  84. </ul>
  85. </div>
  86. </div>
  87. </div>
  88. </div>
  89. </>
  90. )
  91. }
  92. export default Login;