25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

139 lines
4.9 KiB

  1. import React from "react";
  2. // @material-ui/core components
  3. import { makeStyles } from "@material-ui/core/styles";
  4. import InputAdornment from "@material-ui/core/InputAdornment";
  5. import Icon from "@material-ui/core/Icon";
  6. // @material-ui/icons
  7. import Email from "@material-ui/icons/Email";
  8. import People from "@material-ui/icons/People";
  9. // core components
  10. import Header from "components/Header/Header.js";
  11. import HeaderLinks from "components/Header/HeaderLinks.js";
  12. import Footer from "components/Footer/Footer.js";
  13. import GridContainer from "components/Grid/GridContainer.js";
  14. import GridItem from "components/Grid/GridItem.js";
  15. import Button from "components/CustomButtons/Button.js";
  16. import Card from "components/Card/Card.js";
  17. import CardBody from "components/Card/CardBody.js";
  18. import CardHeader from "components/Card/CardHeader.js";
  19. import CardFooter from "components/Card/CardFooter.js";
  20. import CustomInput from "components/CustomInput/CustomInput.js";
  21. import styles from "assets/jss/nextjs-material-kit/pages/loginPage.js";
  22. import image from "assets/img/bgtbg.jpg";
  23. const useStyles = makeStyles(styles);
  24. export default function LoginPage(props) {
  25. const [cardAnimaton, setCardAnimation] = React.useState("cardHidden");
  26. setTimeout(function() {
  27. setCardAnimation("");
  28. }, 700);
  29. const classes = useStyles();
  30. const { ...rest } = props;
  31. return (
  32. <div>
  33. <Header
  34. absolute
  35. color="info"
  36. rightLinks={<HeaderLinks />}
  37. {...rest}
  38. />
  39. <div
  40. className={classes.pageHeader}
  41. style={{
  42. backgroundImage: "url(" + image + ")",
  43. backgroundSize: "cover",
  44. backgroundPosition: "top center"
  45. }}
  46. >
  47. <div className={classes.container}>
  48. <GridContainer justify="center">
  49. <GridItem xs={12} sm={6} md={4}>
  50. <Card className={classes[cardAnimaton]}>
  51. <form className={classes.form}>
  52. <CardHeader color="info" className={classes.cardHeader}>
  53. <h4>Login</h4>
  54. <div className={classes.socialLine}>
  55. <Button
  56. justIcon
  57. href="#pablo"
  58. target="_blank"
  59. color="transparent"
  60. onClick={e => e.preventDefault()}
  61. >
  62. <i className={"fab fa-twitter"} />
  63. </Button>
  64. <Button
  65. justIcon
  66. href="#pablo"
  67. target="_blank"
  68. color="transparent"
  69. onClick={e => e.preventDefault()}
  70. >
  71. <i className={"fab fa-facebook"} />
  72. </Button>
  73. <Button
  74. justIcon
  75. href="#pablo"
  76. target="_blank"
  77. color="transparent"
  78. onClick={e => e.preventDefault()}
  79. >
  80. <i className={"fab fa-google-plus-g"} />
  81. </Button>
  82. </div>
  83. </CardHeader>
  84. <p className={classes.divider}>Welcome to Thamrin Brothers</p>
  85. <CardBody>
  86. <CustomInput
  87. labelText="Email..."
  88. id="email"
  89. formControlProps={{
  90. fullWidth: true
  91. }}
  92. inputProps={{
  93. type: "email",
  94. endAdornment: (
  95. <InputAdornment position="end">
  96. <Email className={classes.inputIconsColor} />
  97. </InputAdornment>
  98. )
  99. }}
  100. />
  101. <CustomInput
  102. labelText="Password"
  103. id="pass"
  104. formControlProps={{
  105. fullWidth: true
  106. }}
  107. inputProps={{
  108. type: "password",
  109. endAdornment: (
  110. <InputAdornment position="end">
  111. <Icon className={classes.inputIconsColor}>
  112. lock_outline
  113. </Icon>
  114. </InputAdornment>
  115. ),
  116. autoComplete: "off"
  117. }}
  118. />
  119. </CardBody>
  120. <CardFooter className={classes.cardFooter}>
  121. <Button color="info" size="lg">
  122. Login
  123. </Button>
  124. </CardFooter>
  125. </form>
  126. </Card>
  127. </GridItem>
  128. </GridContainer>
  129. </div>
  130. <Footer whiteFont />
  131. </div>
  132. </div>
  133. );
  134. }