89 lines
2.2 KiB
JavaScript
89 lines
2.2 KiB
JavaScript
import React from "react";
|
|
import Head from 'next/head';
|
|
import Image from 'next/image';
|
|
import { connect } from "react-redux";
|
|
import { withRouter } from 'next/router';
|
|
import { reduxWrapper } from '../store';
|
|
|
|
import Header from './components/Header';
|
|
import Footer from './components/Footer';
|
|
import MainHeader from "./components/MainHeader";
|
|
import FormRequest from "./components/FormRequest";
|
|
|
|
import { sendLoginForm } from '../actions';
|
|
|
|
class LoginPage extends React.Component
|
|
{
|
|
constructor(props)
|
|
{
|
|
super(props);
|
|
this.state = {
|
|
username: "",
|
|
password: "",
|
|
};
|
|
}
|
|
|
|
_handle_onSubmit = (event) =>
|
|
{
|
|
event.preventDefault();
|
|
|
|
const { username, password } = this.state;
|
|
sendLoginForm({ username, password });
|
|
}
|
|
|
|
render()
|
|
{
|
|
const { username, password } = this.state;
|
|
|
|
return (
|
|
<React.Fragment>
|
|
<Head>
|
|
<title>ЛК Эволюция автолизинга</title>
|
|
<meta
|
|
name="description"
|
|
content="ЛК Эволюция автолизинга"
|
|
/>
|
|
</Head>
|
|
<MainHeader/>
|
|
<main>
|
|
<section>
|
|
<div class="clear"></div>
|
|
<div class="container">
|
|
<h1 class="section_title">Личный кабинет</h1>
|
|
<div class="login">
|
|
<form onSubmit={ this._handle_onSubmit }>
|
|
<div class="form_field">
|
|
<input type="text" name="username" value={ username } placeholder="Введите логин" onChange={ (event) => this.setState({ username: event.target.value }) }/>
|
|
</div>
|
|
<div class="form_field">
|
|
<input type="password" name="password" value={ password } placeholder="Введите пароль" onChange={ (event) => this.setState({ password: event.target.value }) }/>
|
|
</div>
|
|
<button type="submit" class="button button-blue">Войти</button>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
<FormRequest/>
|
|
</main>
|
|
<Footer/>
|
|
</React.Fragment>
|
|
);
|
|
}
|
|
}
|
|
|
|
function mapStateToProps(state, ownProps)
|
|
{
|
|
return {
|
|
contracts: state.contracts.list,
|
|
page: state.contracts.page,
|
|
pages: state.contracts.pages,
|
|
}
|
|
}
|
|
|
|
export const getServerSideProps = reduxWrapper.getServerSideProps(store =>
|
|
async ({ req, res, query }) =>
|
|
{
|
|
}
|
|
);
|
|
|
|
export default withRouter(connect(mapStateToProps)(LoginPage)); |