Advertisement
Guest User

Untitled

a guest
Aug 18th, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.44 KB | None | 0 0
  1. import React from 'react';
  2. import TopHero from '../TopHero';
  3. import {Grid, Col, Row} from 'react-styled-flexboxgrid';
  4. import ProizvodList from './ProizvodList';
  5. import Porudzbine from './Porudzbine';
  6. import NavBar from './NavBar';
  7. import scss from '../styles.scss';
  8. import gql from 'graphql-tag';
  9. import { graphql } from 'react-apollo';
  10. import { connect } from 'react-redux';
  11. import md5 from 'js-md5';
  12. @connect(state => ({ counter: state.counter, orders: state.orders, users: state.users }))
  13. @graphql(gql`
  14. query giveMeUsers($password: String!, $userName: String!) {
  15. allUserAdmins(filter: { password: $password, userName: $userName}) {
  16. userName
  17. password
  18. }
  19. }`,
  20. {
  21. options: (props) => ({
  22. variables: {
  23. userName: props.users.userName,
  24. password: props.users.password,
  25. }
  26. })
  27. }
  28. )
  29. export default class Admin extends React.Component {
  30. constructor(props) {
  31. super (props);
  32. this.state = {
  33. pin: '',
  34. inputOn: false,
  35. enteredPin: '',
  36. enteredUsername: '',
  37. }
  38. }
  39. componentWillMount() {
  40.  
  41. }
  42. componentDidMount() {
  43. if(typeof window !== 'undefined' && window.document) {
  44. if (localStorage.getItem("userName") === null || localStorage.getItem("password") === null) {
  45. console.log("JOJO00", localStorage.getItem("userName"));
  46. } else {
  47. this.setState({
  48. inputOn: true,
  49. })
  50. console.log("EVO ME");
  51. }
  52. }
  53. }
  54. handleChangePass = (event) => {
  55. this.setState({enteredPin: event.target.value});
  56. let password = md5(event.target.value);
  57. this.props.dispatch({
  58. type: 'CHANGE_PASSWORD',
  59. password,
  60. });
  61. }
  62. handleChangeUser = (event) => {
  63. this.setState({enteredUsername: event.target.value});
  64. this.props.dispatch({
  65. type: 'CHANGE_USERNAME',
  66. userName: event.target.value,
  67. });
  68. }
  69. checkPin = async () => {
  70. const respons = await this.props.data.refetch();
  71. if(!respons.data.loading && respons.data.allUserAdmins.length) {
  72. let userName = respons.data.allUserAdmins[0].userName;
  73. let password = respons.data.allUserAdmins[0].password;
  74. localStorage.setItem("userName", userName);
  75. localStorage.setItem("password", password);
  76. this.setState({
  77. inputOn: true,
  78. });
  79. } else {
  80. console.log("ZAO MI JE NISI ");
  81. }
  82. }
  83. render () {
  84. let putinput = null;
  85. console.log("OVO JE PROPS", this.props)
  86. if(!this.state.inputOn) {
  87. putinput =
  88. <div className={scss.adminLog}>
  89. <div>
  90. <form>
  91. <p>
  92. <input value={this.state.enteredUsername} placeholder="Username" onChange={this.handleChangeUser} type="text" />
  93. </p>
  94. <p>
  95. <input value={this.state.enteredPin} type="password" placeholder="Password" onChange={this.handleChangePass} type="text" />
  96. </p>
  97. <p>
  98. <h3 onClick={this.checkPin}>Unesite Šifru</h3>
  99. </p>
  100. </form>
  101. </div>
  102. </div>;
  103. }else {
  104. putinput =
  105. <div>
  106. <NavBar />
  107. <Grid>
  108. <Row>
  109. <Porudzbine />
  110. <ProizvodList />
  111. </Row>
  112. </Grid>
  113. </div>
  114. ;
  115. }
  116. return (
  117. <div>
  118. <TopHero title="ADMIN" subtitle="Kontrolni Panel" bgImage={{backgroundImage: 'url("/admin.jpg")'}} />
  119. {putinput}
  120. </div>
  121. );
  122. }
  123. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement