You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

388 lines
19 KiB

  1. import React from "react";
  2. import classNames from "classnames";
  3. import {makeStyles} from "@material-ui/core/styles";
  4. import Select from 'react-select';
  5. import People from "@material-ui/icons/People";
  6. import LocationOn from "@material-ui/icons/LocationOn";
  7. import Lock from "@material-ui/icons/Lock";
  8. import image1 from "../../../assets/img/mail.png"
  9. import CustomInput from "components/CustomInput/CustomInput.js";
  10. import InputAdornment from "@material-ui/core/InputAdornment";
  11. import Button from "components/CustomButtons/Button.js";
  12. import Icon from "@material-ui/core/Icon";
  13. import Card from "components/Card/Card.js";
  14. import CardBody from "components/Card/CardBody.js";
  15. import GridContainer from "components/Grid/GridContainer.js";
  16. import SnackbarContent from "components/Snackbar/SnackbarContent.js";
  17. import NavPills from "components/NavPills/NavPills.js";
  18. import styles from "assets/jss/nextjs-material-kit/pages/componentsSections/pillsStyle.js";
  19. import Grid from '@material-ui/core/Grid';
  20. import Paper from '@material-ui/core/Paper';
  21. const useStyles = makeStyles((theme) => ({
  22. root: {
  23. flexGrow: 1
  24. },
  25. paper: {
  26. padding: theme.spacing(2),
  27. textAlign: 'center',
  28. color: theme.palette.text.secondary
  29. }
  30. }));
  31. const DataApparel = function ({
  32. profile,
  33. user,
  34. ...props
  35. }) {
  36. const [pass, setPass] = React.useState("");
  37. const classes = useStyles();
  38. const {
  39. ...rest
  40. } = props;
  41. const imageClasses = classNames(
  42. classes.imgRaised,
  43. classes.imgRoundedCircle,
  44. classes.imgFluid
  45. );
  46. const navImageClasses = classNames(classes.imgRounded, classes.imgGallery);
  47. const Profile = profile.map((data) => {
  48. return (
  49. <NavPills
  50. color="info"
  51. horizontal={{
  52. tabsGrid: {
  53. xs: 4,
  54. sm: 3,
  55. md: 3
  56. },
  57. contentGrid: {
  58. xs: 14,
  59. sm: 9,
  60. md: 9
  61. }
  62. }}
  63. tabs={[
  64. {
  65. tabButton: "Profile",
  66. tabIcon: People,
  67. tabContent: (
  68. <Grid container="container">
  69. <Grid item="item" xs={12}>
  70. <div align="left">
  71. <h3>Profile Saya</h3>
  72. <span>Kelola informasi profil Anda untuk mengontrol, melindungi dan mengamankan akun</span>
  73. <hr></hr>
  74. </div>
  75. </Grid>
  76. <Grid
  77. container="container"
  78. style={{
  79. padding: "10px"
  80. }}>
  81. <Grid item="item" xs="xs">
  82. <div align="left">
  83. Username
  84. </div>
  85. </Grid>
  86. <Grid item="item" xs={6}>
  87. <div align="left">
  88. : {data.username}
  89. </div>
  90. </Grid>
  91. <Grid item="item" xs="xs"></Grid>
  92. </Grid>
  93. <Grid
  94. container="container"
  95. style={{
  96. padding: "10px"
  97. }}>
  98. <Grid item="item" xs="xs">
  99. <div align="left">
  100. Nama
  101. </div>
  102. </Grid>
  103. <Grid item="item" xs={6}>
  104. <div align="left">
  105. : {data.firstName}
  106. </div>
  107. </Grid>
  108. <Grid item="item" xs="xs"></Grid>
  109. </Grid>
  110. <Grid
  111. container="container"
  112. style={{
  113. padding: "10px"
  114. }}>
  115. <Grid item="item" xs="xs">
  116. <div align="left">
  117. Email
  118. </div>
  119. </Grid>
  120. <Grid item="item" xs={6}>
  121. <div align="left">
  122. : {data.email}
  123. </div>
  124. </Grid>
  125. <Grid item="item" xs="xs"></Grid>
  126. </Grid>
  127. <Grid
  128. container="container"
  129. style={{
  130. padding: "10px"
  131. }}>
  132. <Grid item="item" xs="xs">
  133. <div align="left">
  134. Nomer Telpon
  135. </div>
  136. </Grid>
  137. <Grid item="item" xs={6}>
  138. <div align="left">
  139. : {data.telp}
  140. </div>
  141. </Grid>
  142. <Grid item="item" xs="xs"></Grid>
  143. </Grid>
  144. <Button color="info" round="round" href={"/yamaha/profile/edit-profile?s="+data.id}>
  145. <Icon className={classes.icons}>open_in_new</Icon>Edit Profile
  146. </Button>
  147. </Grid>
  148. )
  149. }, {
  150. tabButton: "Alamat",
  151. tabIcon: LocationOn,
  152. tabContent: (
  153. <Grid container="container">
  154. <Grid item="item" xs={12}>
  155. <div align="left">
  156. <h3>Alamat Saya</h3>
  157. <span>Kelola informasi Alamat Anda untuk Proses Pengirim Barang</span>
  158. </div>
  159. <hr></hr>
  160. </Grid>
  161. <img
  162. src={image1}
  163. style={{
  164. width: "920px"
  165. }}/>
  166. <br></br>
  167. <Grid
  168. container="container"
  169. style={{
  170. padding: "10px"
  171. }}>
  172. <Grid item="item" xs="xs">
  173. <div align="left">
  174. Nama
  175. </div>
  176. </Grid>
  177. <Grid item="item" xs={6}>
  178. <div align="left">
  179. : {data.firstName}
  180. </div>
  181. </Grid>
  182. <Grid item="item" xs="xs"></Grid>
  183. </Grid>
  184. <Grid
  185. container="container"
  186. style={{
  187. padding: "10px"
  188. }}>
  189. <Grid item="item" xs="xs">
  190. <div align="left">
  191. Telpon
  192. </div>
  193. </Grid>
  194. <Grid item="item" xs={6}>
  195. <div align="left">
  196. : {data.telp}
  197. </div>
  198. </Grid>
  199. <Grid item="item" xs="xs"></Grid>
  200. </Grid>
  201. <Grid
  202. container="container"
  203. style={{
  204. padding: "10px"
  205. }}>
  206. <Grid item="item" xs="xs">
  207. <div align="left">
  208. Alamat
  209. </div>
  210. </Grid>
  211. <Grid item="item" xs={6}>
  212. <div align="left">
  213. : {data.address}
  214. </div>
  215. </Grid>
  216. <Grid item="item" xs="xs"></Grid>
  217. </Grid>
  218. <Button color="info" round="round" href={"/yamaha/product/product_detail?s="+data.id}>
  219. <Icon className={classes.icons}>open_in_new</Icon>Edit Alamat
  220. </Button>
  221. </Grid>
  222. )
  223. }, {
  224. tabButton: "Ubah Password",
  225. tabIcon: Lock,
  226. tabContent: (
  227. <Grid container="container">
  228. <Grid item="item" xs={12}>
  229. <div align="left">
  230. <h3>Ubah Password</h3>
  231. <span>Untuk keamanan akun Anda, mohon untuk tidak menyebarkan password Anda ke
  232. orang lain</span>
  233. </div>
  234. <hr></hr>
  235. </Grid>
  236. <Grid
  237. container="container"
  238. style={{
  239. padding: "10px"
  240. }}>
  241. <Grid item="item" xs="xs">
  242. <div align="left">
  243. <br></br>
  244. Password Saat Ini
  245. </div>
  246. </Grid>
  247. <Grid item="item" xs={6}>
  248. <div align="left">
  249. <CustomInput
  250. labelText="Password Saat Ini"
  251. id="pass"
  252. value={pass}
  253. formControlProps={{
  254. fullWidth: true
  255. }}
  256. inputProps={{
  257. onChange: (event) => setPass(event.target.value),
  258. type: "password",
  259. endAdornment: (
  260. <InputAdornment position="end">
  261. <Icon className={classes.inputIconsColor}>
  262. lock_outline
  263. </Icon>
  264. </InputAdornment>
  265. ),
  266. autoComplete: "off"
  267. }}/>
  268. </div>
  269. </Grid>
  270. <Grid item="item" xs="xs"></Grid>
  271. </Grid>
  272. <Grid
  273. container="container"
  274. style={{
  275. padding: "10px"
  276. }}>
  277. <Grid item="item" xs="xs">
  278. <div align="left">
  279. <br></br>
  280. Password Baru
  281. </div>
  282. </Grid>
  283. <Grid item="item" xs={6}>
  284. <div align="left">
  285. <CustomInput
  286. labelText="Password Baru"
  287. id="pass"
  288. value={pass}
  289. formControlProps={{
  290. fullWidth: true
  291. }}
  292. inputProps={{
  293. onChange: (event) => setPass(event.target.value),
  294. type: "password",
  295. endAdornment: (
  296. <InputAdornment position="end">
  297. <Icon className={classes.inputIconsColor}>
  298. lock_outline
  299. </Icon>
  300. </InputAdornment>
  301. ),
  302. autoComplete: "off"
  303. }}/>
  304. </div>
  305. </Grid>
  306. <Grid item="item" xs="xs"></Grid>
  307. </Grid>
  308. <Grid
  309. container="container"
  310. style={{
  311. padding: "10px"
  312. }}>
  313. <Grid item="item" xs="xs">
  314. <div align="left">
  315. <br></br>
  316. Konfirmasi Password
  317. </div>
  318. </Grid>
  319. <Grid item="item" xs={6}>
  320. <div align="left">
  321. <CustomInput
  322. labelText="Konfirmasi Password"
  323. id="pass"
  324. value={pass}
  325. formControlProps={{
  326. fullWidth: true
  327. }}
  328. inputProps={{
  329. onChange: (event) => setPass(event.target.value),
  330. type: "password",
  331. endAdornment: (
  332. <InputAdornment position="end">
  333. <Icon className={classes.inputIconsColor}>
  334. lock_outline
  335. </Icon>
  336. </InputAdornment>
  337. ),
  338. autoComplete: "off"
  339. }}/>
  340. </div>
  341. </Grid>
  342. <Grid item="item" xs="xs"></Grid>
  343. </Grid>
  344. <Button color="info" round="round" href={"/yamaha/product/product_detail?s="+data.id}>
  345. <Icon className={classes.icons}>open_in_new</Icon>
  346. Simpan
  347. </Button>
  348. </Grid>
  349. )
  350. }
  351. ]}/>
  352. );
  353. })
  354. return (
  355. <div>
  356. <Card className={classes.textCenter} align="center">
  357. <CardBody>
  358. <div align="center">
  359. <div
  360. align="center"
  361. className={classes.section}
  362. id="notifications"
  363. style={{
  364. marginTop: "-50px"
  365. }}>
  366. <SnackbarContent message={<h4 > Profile</h4>} align="center" color="info"/>
  367. </div>
  368. <GridContainer
  369. justify="center"
  370. style={{
  371. padding: "10px"
  372. }}>
  373. {Profile}
  374. </GridContainer>
  375. </div>
  376. <br></br>
  377. <br></br>
  378. </CardBody>
  379. </Card>
  380. </div>
  381. );
  382. }
  383. export default DataApparel;