コミット
6d58bc7d0a
|
@ -11268,10 +11268,22 @@ input[type=date].hide-calender::-webkit-inner-spin-button, input[type=date].hide
|
||||||
font-size: 20px !important;
|
font-size: 20px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.ft-25 {
|
||||||
|
font-size: 25px !important;
|
||||||
|
}
|
||||||
|
|
||||||
.ft-30 {
|
.ft-30 {
|
||||||
font-size: 30px !important;
|
font-size: 30px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.ft-35 {
|
||||||
|
font-size: 35px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ft-40 {
|
||||||
|
font-size: 40px !important;
|
||||||
|
}
|
||||||
|
|
||||||
@media (max-width: 991.98px) {
|
@media (max-width: 991.98px) {
|
||||||
.ft-md-12 {
|
.ft-md-12 {
|
||||||
font-size: 12px !important;
|
font-size: 12px !important;
|
||||||
|
@ -12045,7 +12057,6 @@ a {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.input-default {
|
.input-default {
|
||||||
border-radius: 18px !important;
|
|
||||||
height: 50px;
|
height: 50px;
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
}
|
}
|
||||||
|
@ -12080,3 +12091,8 @@ a {
|
||||||
.btn-shadow {
|
.btn-shadow {
|
||||||
box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3) !important;
|
box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.btn-disabled {
|
||||||
|
background-color: #eaeff2;
|
||||||
|
color: #6f7372;
|
||||||
|
}
|
||||||
|
|
ファイル差分が大きすぎるため省略します
差分を読み込み
|
@ -1,19 +1,21 @@
|
||||||
import React, { Component } from 'react';
|
import React, { Component } from 'react';
|
||||||
|
|
||||||
import Login from './login';
|
|
||||||
|
|
||||||
import { BrowserRouter, Route, Switch } from 'react-router-dom';
|
import { BrowserRouter, Route, Switch } from 'react-router-dom';
|
||||||
|
|
||||||
|
import Meeting from './meeting';
|
||||||
|
import Side from './side';
|
||||||
|
|
||||||
export default class AdminApp extends Component {
|
export default class AdminApp extends Component {
|
||||||
render() {
|
render() {
|
||||||
return (
|
return (
|
||||||
|
<main className="l-container meeting-consent">
|
||||||
<BrowserRouter>
|
<BrowserRouter>
|
||||||
<Switch>
|
<Switch>
|
||||||
<Route exact path='/login/admin' component={Login} />
|
<Route exact path='/admin/meeting' component={Meeting} />
|
||||||
|
|
||||||
</Switch>
|
</Switch>
|
||||||
|
<Side />
|
||||||
</BrowserRouter>
|
</BrowserRouter>
|
||||||
|
</main>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
import React, { useState } from 'react';
|
import React, { useState } from 'react';
|
||||||
|
import ReactDOM from 'react-dom';
|
||||||
import { Button } from '@material-ui/core';
|
import { Button } from '@material-ui/core';
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
|
|
||||||
import { CircularProgress } from '@material-ui/core';
|
import { CircularProgress } from '@material-ui/core';
|
||||||
|
|
||||||
|
|
||||||
const Login = () => {
|
const AdminLogin = () => {
|
||||||
|
|
||||||
const [email, setEmail] = useState('');
|
const [email, setEmail] = useState('');
|
||||||
const [password, setPassword] = useState('');
|
const [password, setPassword] = useState('');
|
||||||
|
@ -40,7 +41,7 @@ const Login = () => {
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<form onSubmit={handleSubmit} noValidate>
|
<form onSubmit={handleSubmit} noValidate>
|
||||||
<p className="text-center font-weight-bold ft-20 pb-40-px">管理者ログイン</p>
|
<h1 className="text-center font-weight-bold ft-25 pb-40-px">管理者ログイン</h1>
|
||||||
{
|
{
|
||||||
_400error.length != 0 &&
|
_400error.length != 0 &&
|
||||||
<span className="l-alert__text--error ft-16 ft-md-14">{_400error}</span>
|
<span className="l-alert__text--error ft-16 ft-md-14">{_400error}</span>
|
||||||
|
@ -79,4 +80,10 @@ const Login = () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
export default Login;
|
// ----------------------------------------------------------------------
|
||||||
|
if(document.getElementById('admin-login')){
|
||||||
|
ReactDOM.render(
|
||||||
|
<AdminLogin />,
|
||||||
|
document.getElementById('admin-login')
|
||||||
|
)
|
||||||
|
}
|
|
@ -0,0 +1,124 @@
|
||||||
|
import React, { useEffect, useState } from 'react';
|
||||||
|
import { CircularProgress } from '@material-ui/core';
|
||||||
|
import moment from 'moment';
|
||||||
|
import axios from 'axios';
|
||||||
|
import { useHistory } from 'react-router-dom'
|
||||||
|
|
||||||
|
import Notification from '../../component/notification';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
const Meeting = () => {
|
||||||
|
|
||||||
|
|
||||||
|
const history = useHistory();
|
||||||
|
const [keyword, setKeyword] = useState('')
|
||||||
|
const [loading, setLoading] = useState(true);
|
||||||
|
const [finish, setFinish] = useState(false);
|
||||||
|
const [completeOfFather, setCompleteOfFather ] = useState(null);
|
||||||
|
const [inCompleteOfFather, setInCompleteOfFather ] = useState(null);
|
||||||
|
useEffect(() => {
|
||||||
|
axios.get('/api/meetings/listOfCompleteOfFather', {params: { father_id: 1 }}).then((response) => {
|
||||||
|
if(response.data.status_code==200){
|
||||||
|
console.log(response.data.params);
|
||||||
|
} else if(response.data.status_code==400){
|
||||||
|
//TODO
|
||||||
|
}
|
||||||
|
setCompleteOfFather(response.data.params);
|
||||||
|
});
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
axios.get('/api/meetings/listOfIncompleteOfFather', {params: { father_id: 1 }}).then((response) => {
|
||||||
|
if(response.data.status_code==200){
|
||||||
|
console.log(response.data.params);
|
||||||
|
setInCompleteOfFather(response.data.params);
|
||||||
|
setLoading(false);
|
||||||
|
} else if(response.data.status_code==400){
|
||||||
|
//TODO
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div className="l-content">
|
||||||
|
<div className="l-content__ttl">
|
||||||
|
<div className="l-content__ttl__left">
|
||||||
|
<h2>ミーティング一覧</h2>
|
||||||
|
</div>
|
||||||
|
<Notification/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="l-content-wrap">
|
||||||
|
<div className="meeting-tab-container">
|
||||||
|
<div className="meeting-tab-wrap">
|
||||||
|
<div className="meeting-head">
|
||||||
|
<form action="" className="meeting-form">
|
||||||
|
<label className="control-label" htmlFor="keyword">キーワード</label>
|
||||||
|
<input type="search" name="keyword" className="input-default input-keyword input-w380" id="keyword" value={keyword} onChange={e=> setKeyword(e.target.value)}/>
|
||||||
|
<i className="icon icon-search"></i>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="meeting-content">
|
||||||
|
<div className={ `meeting-content-wrap ${!finish ? "is-active" : ""}` } id="item01">
|
||||||
|
{ !loading ? inCompleteOfFather?.map((item, i) => {
|
||||||
|
return (
|
||||||
|
<div className="meeting-item" key={i}>
|
||||||
|
<a
|
||||||
|
className="meeting-link"
|
||||||
|
onClick={e => {
|
||||||
|
e.preventDefault();
|
||||||
|
history.push({
|
||||||
|
pathname: `/p-account/meeting/detail/${item.id}`,
|
||||||
|
state: {}
|
||||||
|
});
|
||||||
|
}} >
|
||||||
|
<h3 className="meeting-ttl">{ item.title }</h3>
|
||||||
|
<p className="meeting-txt">{ item.text }</p>
|
||||||
|
<time dateTime="2021-07-30" className="meeting-time">
|
||||||
|
<span className="meeting-date">{ moment(item.updated_at).format('YYYY/MM/DD') || '' }</span>
|
||||||
|
</time>
|
||||||
|
<div className="meeting-member">
|
||||||
|
<div className="meeting-member-wrap">
|
||||||
|
<div data-url="login.html" className="meeting-member-link">
|
||||||
|
<ul className="meeting-member-count">
|
||||||
|
<li className="numerator">3</li>
|
||||||
|
<li className="denominator">4</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<ul className="meeting-member-list" role="list">
|
||||||
|
<li className="meeting-member__item" role="listitem">
|
||||||
|
<div className="avatar">
|
||||||
|
<img alt="name" className="avatar-img" src="../assets/img/avatar/avatar-sample01@2x.png" />
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<li className="meeting-member__item" role="listitem">
|
||||||
|
<div className="avatar">
|
||||||
|
<img alt="name" className="avatar-img" src="../assets/img/avatar/avatar-sample02@2x.png" />
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<li className="meeting-member__item" role="listitem">
|
||||||
|
<div className="avatar">
|
||||||
|
<img alt="name" className="avatar-img" src="../assets/img/avatar/avatar-sample03@2x.png" />
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}) : <CircularProgress /> }
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
export default Meeting;
|
|
@ -0,0 +1,58 @@
|
||||||
|
import React, { useEffect, useState } from 'react';
|
||||||
|
import { Link } from 'react-router-dom'
|
||||||
|
|
||||||
|
export default function Side() {
|
||||||
|
const [selected, setSelected] = useState('');
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div className="l-side">
|
||||||
|
<div className="l-side-logo">
|
||||||
|
<a href=""><img src="/assets/img/common/logo.svg" alt="ロゴ" /></a>
|
||||||
|
</div>
|
||||||
|
<nav className="mypage-nav">
|
||||||
|
<ul className="mypage-nav-list">
|
||||||
|
<li
|
||||||
|
className={`mypage-nav-list__item -meeting ${(selected == 'meeting' || (selected == '' && document.getElementById('admin_router').value == 'meeting')) && "nav-active"}`}
|
||||||
|
onClick={e => {
|
||||||
|
e.preventDefault();
|
||||||
|
setSelected('meeting');
|
||||||
|
}}>
|
||||||
|
<Link className='mypage-nav-list__link' to='/admin/meeting'>
|
||||||
|
<i className="icon meeting"></i>
|
||||||
|
<span>ミーティング</span>
|
||||||
|
</Link>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li className={`mypage-nav-list__item -childinfo ${ (selected == 'child' || (selected == '' && document.getElementById('admin_router').value == 'child')) && "nav-active"}`}
|
||||||
|
onClick={e => {
|
||||||
|
e.preventDefault();
|
||||||
|
setSelected('parent');
|
||||||
|
}}>
|
||||||
|
<Link className='mypage-nav-list__link' to='/admin/child'>
|
||||||
|
<i className="icon parents"></i>
|
||||||
|
<span>子情報</span>
|
||||||
|
</Link>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li className={`mypage-nav-list__item -parentinfo ${ (selected == 'parent' || (selected == '' && document.getElementById('admin_router').value == 'parent')) && "nav-active"}`}
|
||||||
|
onClick={e => {
|
||||||
|
e.preventDefault();
|
||||||
|
setSelected('parent');
|
||||||
|
}}>
|
||||||
|
<Link className='mypage-nav-list__link' to='/admin/parent'>
|
||||||
|
<i className="icon parents"></i>
|
||||||
|
<span>親情報</span>
|
||||||
|
</Link>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
|
||||||
|
<li className="mypage-nav-list__item -logout">
|
||||||
|
<a href="" className="mypage-nav-list__link">
|
||||||
|
<i className="icon log-out"></i><span>ログアウト</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
|
@ -9,3 +9,4 @@ require('./pages/pages');
|
||||||
require('./child');
|
require('./child');
|
||||||
require('./child/auth');
|
require('./child/auth');
|
||||||
require('./admin');
|
require('./admin');
|
||||||
|
require('./admin/login');
|
||||||
|
|
|
@ -10,6 +10,7 @@ import IconButton from "@material-ui/core/IconButton";
|
||||||
const SignUp = () => {
|
const SignUp = () => {
|
||||||
const [first_name, setFirstName] = useState('');
|
const [first_name, setFirstName] = useState('');
|
||||||
const [last_name, setLastName] = useState('');
|
const [last_name, setLastName] = useState('');
|
||||||
|
const [identify, setIdentify] = useState('');
|
||||||
const [email, setEmail] = useState('');
|
const [email, setEmail] = useState('');
|
||||||
const [password, setPassword] = useState('');
|
const [password, setPassword] = useState('');
|
||||||
const [company, setCompany] = useState('');
|
const [company, setCompany] = useState('');
|
||||||
|
@ -18,6 +19,7 @@ const SignUp = () => {
|
||||||
const [errors, setErrors] = useState({
|
const [errors, setErrors] = useState({
|
||||||
first_name:'',
|
first_name:'',
|
||||||
last_name:'',
|
last_name:'',
|
||||||
|
identify:'',
|
||||||
email:'',
|
email:'',
|
||||||
password:'',
|
password:'',
|
||||||
image:'',
|
image:'',
|
||||||
|
@ -34,6 +36,7 @@ const SignUp = () => {
|
||||||
const formdata = new FormData();
|
const formdata = new FormData();
|
||||||
formdata.append('first_name', first_name);
|
formdata.append('first_name', first_name);
|
||||||
formdata.append('last_name', last_name);
|
formdata.append('last_name', last_name);
|
||||||
|
formdata.append('identify', identify);
|
||||||
formdata.append('email', email);
|
formdata.append('email', email);
|
||||||
formdata.append('password', password);
|
formdata.append('password', password);
|
||||||
formdata.append('company', company);
|
formdata.append('company', company);
|
||||||
|
@ -79,6 +82,9 @@ const SignUp = () => {
|
||||||
if(last_name.length == 0){ formIsValid = false; errors['last_name'] = 'Required'; }
|
if(last_name.length == 0){ formIsValid = false; errors['last_name'] = 'Required'; }
|
||||||
else errors['last_name'] = '';
|
else errors['last_name'] = '';
|
||||||
|
|
||||||
|
if(identify.length == 0){ formIsValid = false; errors['identify'] = 'Required'; }
|
||||||
|
else errors['identify'] = '';
|
||||||
|
|
||||||
if(password.length < 8){ formIsValid = false; errors['password'] = 'Required'; }
|
if(password.length < 8){ formIsValid = false; errors['password'] = 'Required'; }
|
||||||
else errors['password'] = '';
|
else errors['password'] = '';
|
||||||
|
|
||||||
|
@ -154,6 +160,17 @@ const SignUp = () => {
|
||||||
}
|
}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div className="edit-set">
|
||||||
|
<label htmlFor="identify" className="control-label ft-12"> ID </label>
|
||||||
|
<input type="text" name="identify" id="identify" className={`input-default input-nameSei ${ errors['identify'].length != 0 && "is-invalid c-input__target" }`} value={identify} onChange={e=>setIdentify(e.target.value)}/>
|
||||||
|
{
|
||||||
|
errors['identify'].length != 0 &&
|
||||||
|
<span className="l-alert__text--error ft-16 ft-md-14">
|
||||||
|
{errors['identify']}
|
||||||
|
</span>
|
||||||
|
}
|
||||||
|
</div>
|
||||||
|
|
||||||
<div className="edit-set">
|
<div className="edit-set">
|
||||||
<label htmlFor="email" className="control-label ft-12"> メールアドレス </label>
|
<label htmlFor="email" className="control-label ft-12"> メールアドレス </label>
|
||||||
<input type="email" name="email" id="email" className = {`input-default input-nameSei ${ errors['email'].length != 0 && "is-invalid c-input__target" }`} value={email} onChange={e=>setEmail(e.target.value)}/>
|
<input type="email" name="email" id="email" className = {`input-default input-nameSei ${ errors['email'].length != 0 && "is-invalid c-input__target" }`} value={email} onChange={e=>setEmail(e.target.value)}/>
|
||||||
|
|
|
@ -111,9 +111,14 @@ const MeetingDetail = (props) => {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="p-article__pdf">
|
<div className="p-article__pdf">
|
||||||
|
<div className="p-article__pdf__btn mr-2">
|
||||||
|
<a href="/assets/img/dummy/sample.pdf" className="btn-default btn-disabled btn-pdf btn-r8 btn-h60 h-xs-45-px" target="_blank">
|
||||||
|
<span>PDFを確認する</span>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
<div className="p-article__pdf__btn mr-0">
|
<div className="p-article__pdf__btn mr-0">
|
||||||
<a href="/assets/img/dummy/sample.pdf" className="btn-default btn-yellow btn-pdf btn-r8 btn-h60 h-xs-45-px" target="_blank">
|
<a href="/assets/img/dummy/sample.pdf" className="btn-default btn-yellow btn-pdf btn-r8 btn-h60 h-xs-45-px" target="_blank">
|
||||||
<span>PDFを確認する</span>
|
<span>メモを確認する</span>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -13,6 +13,7 @@ const ProfileEdit = () => {
|
||||||
|
|
||||||
const [first_name, setFirstName] = useState('');
|
const [first_name, setFirstName] = useState('');
|
||||||
const [last_name, setLastName] = useState('');
|
const [last_name, setLastName] = useState('');
|
||||||
|
const [identify, setIdentify] = useState('');
|
||||||
const [email, setEmail] = useState('');
|
const [email, setEmail] = useState('');
|
||||||
const [password, setPassword] = useState('');
|
const [password, setPassword] = useState('');
|
||||||
const [company, setCompany] = useState('');
|
const [company, setCompany] = useState('');
|
||||||
|
@ -21,6 +22,7 @@ const ProfileEdit = () => {
|
||||||
const [errors, setErrors] = useState({
|
const [errors, setErrors] = useState({
|
||||||
first_name:'',
|
first_name:'',
|
||||||
last_name:'',
|
last_name:'',
|
||||||
|
identify:'',
|
||||||
email:'',
|
email:'',
|
||||||
password:'',
|
password:'',
|
||||||
image:'',
|
image:'',
|
||||||
|
@ -54,6 +56,9 @@ const ProfileEdit = () => {
|
||||||
if(first_name.length == 0){ formIsValid = false; errors['first_name'] = 'Required'; }
|
if(first_name.length == 0){ formIsValid = false; errors['first_name'] = 'Required'; }
|
||||||
else errors['first_name'] = '';
|
else errors['first_name'] = '';
|
||||||
|
|
||||||
|
if(identify.length == 0){ formIsValid = false; errors['identify'] = 'Required'; }
|
||||||
|
else errors['identify'] = '';
|
||||||
|
|
||||||
if(last_name.length == 0){ formIsValid = false; errors['last_name'] = 'Required'; }
|
if(last_name.length == 0){ formIsValid = false; errors['last_name'] = 'Required'; }
|
||||||
else errors['last_name'] = '';
|
else errors['last_name'] = '';
|
||||||
|
|
||||||
|
@ -77,11 +82,12 @@ const ProfileEdit = () => {
|
||||||
const formdata = new FormData();
|
const formdata = new FormData();
|
||||||
formdata.append('first_name', first_name);
|
formdata.append('first_name', first_name);
|
||||||
formdata.append('last_name', last_name);
|
formdata.append('last_name', last_name);
|
||||||
|
formdata.append('identify', identify);
|
||||||
formdata.append('email', email);
|
formdata.append('email', email);
|
||||||
formdata.append('password', password);
|
formdata.append('password', password);
|
||||||
formdata.append('company', company);
|
formdata.append('company', company);
|
||||||
formdata.append('image', image);
|
formdata.append('image', image);
|
||||||
// axios.post('/api/children/updateProfile/{child_id}', formdata)
|
// axios.post('/api/children/updateProfile/{identify}', formdata)
|
||||||
// .then(response => {
|
// .then(response => {
|
||||||
// if(response.data.status_code==200){
|
// if(response.data.status_code==200){
|
||||||
// setSubmitStatus('success);
|
// setSubmitStatus('success);
|
||||||
|
@ -133,6 +139,17 @@ const ProfileEdit = () => {
|
||||||
}
|
}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div className="edit-set">
|
||||||
|
<label htmlFor="identify" className="control-label ft-12"> ID </label>
|
||||||
|
<input type="text" name="identify" id="identify" className={`input-default input-nameSei ${ errors['identify'].length != 0 && "is-invalid c-input__target" }`} value={identify} onChange={e=>setIdentify(e.target.value)}/>
|
||||||
|
{
|
||||||
|
errors['identify'].length != 0 &&
|
||||||
|
<span className="l-alert__text--error ft-16 ft-md-14">
|
||||||
|
{errors['identify']}
|
||||||
|
</span>
|
||||||
|
}
|
||||||
|
</div>
|
||||||
|
|
||||||
<div className="edit-set">
|
<div className="edit-set">
|
||||||
<label htmlFor="email" className="control-label ft-12"> メールアドレス </label>
|
<label htmlFor="email" className="control-label ft-12"> メールアドレス </label>
|
||||||
<input type="email" name="email" id="email" className = {`input-default input-nameSei ${ errors['email'].length != 0 && "is-invalid c-input__target" }`} value={email} onChange={e=>setEmail(e.target.value)}/>
|
<input type="email" name="email" id="email" className = {`input-default input-nameSei ${ errors['email'].length != 0 && "is-invalid c-input__target" }`} value={email} onChange={e=>setEmail(e.target.value)}/>
|
||||||
|
|
|
@ -13,6 +13,7 @@ const Profile = () => {
|
||||||
const profile = {
|
const profile = {
|
||||||
id: 1,
|
id: 1,
|
||||||
name: '田中 達也',
|
name: '田中 達也',
|
||||||
|
username:'chankan',
|
||||||
tel:'08012927104',
|
tel:'08012927104',
|
||||||
email:'chankan07@gmail.com',
|
email:'chankan07@gmail.com',
|
||||||
company:'株式会社ZOTMAN',
|
company:'株式会社ZOTMAN',
|
||||||
|
@ -87,6 +88,12 @@ const Profile = () => {
|
||||||
</div>
|
</div>
|
||||||
<p className="profile-name ft-xs-14">{profile.name}</p>
|
<p className="profile-name ft-xs-14">{profile.name}</p>
|
||||||
<div className="profile-info ft-xs-14">
|
<div className="profile-info ft-xs-14">
|
||||||
|
<div className="profile-info__item">
|
||||||
|
<p className="profile-info__icon">
|
||||||
|
<img src="/assets/img/icon/mail.svg" alt="メール"/>
|
||||||
|
</p>
|
||||||
|
<p className="txt">{profile.username}</p>
|
||||||
|
</div>
|
||||||
<div className="profile-info__item">
|
<div className="profile-info__item">
|
||||||
<p className="profile-info__icon">
|
<p className="profile-info__icon">
|
||||||
<img src="/assets/img/icon/mail.svg" alt="メール"/>
|
<img src="/assets/img/icon/mail.svg" alt="メール"/>
|
||||||
|
@ -108,14 +115,30 @@ const Profile = () => {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="p-profile-btn">
|
<div className="p-profile-btn">
|
||||||
<a href={`/c-account/profile/edit/${profile.id}`} className="btn-default btn-yellow btn-profile btn-r8 btn-h52 h-xs-45-px">
|
<a className="btn-default btn-yellow btn-profile btn-r8 btn-h52 h-xs-45-px"
|
||||||
|
onClick={e => {
|
||||||
|
e.preventDefault();
|
||||||
|
history.push({
|
||||||
|
pathname: `/c-account/profile/edit/${profile.id}`,
|
||||||
|
state: {}
|
||||||
|
});
|
||||||
|
}}
|
||||||
|
>
|
||||||
<span className="ft-xs-14">プロフィールを変更する</span>
|
<span className="ft-xs-14">プロフィールを変更する</span>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="p-profile-btn">
|
<div className="p-profile-btn">
|
||||||
<a href={`/c-account/profile/password-edit/${profile.id}`} className="btn-default btn-yellow btn-password btn-r8 btn-h52 h-xs-45-px">
|
<a className="btn-default btn-yellow btn-password btn-r8 btn-h52 h-xs-45-px"
|
||||||
<span className="ft-xs-14">パスワードを変更する</span>
|
onClick={e => {
|
||||||
|
e.preventDefault();
|
||||||
|
history.push({
|
||||||
|
pathname: `/c-account/profile/password-edit/${profile.id}`,
|
||||||
|
state: {}
|
||||||
|
});
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<span className="ft-xs-14">パスワードを変更する</span>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -126,7 +149,14 @@ const Profile = () => {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="p-profile-txtLink">
|
<div className="p-profile-txtLink">
|
||||||
<a href="/c-account/profile/withdrawal">
|
<a onClick={e => {
|
||||||
|
e.preventDefault();
|
||||||
|
history.push({
|
||||||
|
pathname: `/c-account/profile/withdrawal`,
|
||||||
|
state: {}
|
||||||
|
});
|
||||||
|
}}
|
||||||
|
>
|
||||||
<span className="ft-xs-14">退会する</span>
|
<span className="ft-xs-14">退会する</span>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
import React, { useEffect, useState } from 'react';
|
import React, { useEffect, useState } from 'react';
|
||||||
import ReactDOM from 'react-dom';
|
import { useHistory } from 'react-router-dom';
|
||||||
import { LoadingButton } from '@material-ui/lab';
|
import { LoadingButton } from '@material-ui/lab';
|
||||||
|
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
|
@ -109,7 +109,7 @@ const ProfilePasswordEdit = () => {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="mt-5">
|
<div className="mt-5">
|
||||||
<LoadingButton type="submit" fullWidth className="p-4 rounded-20 ft-15 font-weight-bold text-black bg-color-2">
|
<LoadingButton type="submit" fullWidth className="p-4 rounded-20 ft-15 ft-xs-13 font-weight-bold text-black bg-color-2">
|
||||||
<span>パスワードを更新</span>
|
<span>パスワードを更新</span>
|
||||||
</LoadingButton>
|
</LoadingButton>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -41,7 +41,7 @@ const ProfileWithdrawal = () => {
|
||||||
<p>本当に退会してもよろしいでしょうか?</p>
|
<p>本当に退会してもよろしいでしょうか?</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<button type="submit" className="btn-edit btn-default btn-h70 btn-r14 btn-yellow ft-xs-15">退会する</button>
|
<button type="submit" className="btn-edit btn-default btn-h70 btn-r20 btn-yellow ft-xs-15">退会する</button>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -59,7 +59,7 @@ const Search = () => {
|
||||||
|
|
||||||
const history = useHistory();
|
const history = useHistory();
|
||||||
|
|
||||||
const [keyword, setKeyword] = useState('')
|
const [keyword, setKeyword] = useState('');
|
||||||
const [tab_status, setTabStatus] = useState(false);
|
const [tab_status, setTabStatus] = useState(false);
|
||||||
// const [meeting_list, setMettingList] = useState([]);
|
// const [meeting_list, setMettingList] = useState([]);
|
||||||
|
|
||||||
|
|
|
@ -42,15 +42,16 @@ export default function Side() {
|
||||||
<span>親情報</span>
|
<span>親情報</span>
|
||||||
</Link>
|
</Link>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li className={`mypage-nav-list__item -profile ${ (selected == 'profile' || (selected == '' && document.getElementById('c_router').value == 'profile')) && "nav-active"}`}
|
<li className={`mypage-nav-list__item -profile ${ (selected == 'profile' || (selected == '' && document.getElementById('c_router').value == 'profile')) && "nav-active"}`}
|
||||||
onClick={e => {
|
onClick={e => {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
setSelected('profile');
|
setSelected('profile');
|
||||||
}}>
|
}}>
|
||||||
<Link className='user-icon mypage-nav-list__link ' to='/c-account/profile'>
|
<Link className='user-icon mypage-nav-list__link' to='/c-account/profile'>
|
||||||
<figure>
|
<figure>
|
||||||
<div className="prof-wrap">
|
<div className="prof-wrap">
|
||||||
<img src="/assets/img/avatar/avatar-sample01@2x.png" alt="" />
|
<img src="/assets/img/avatar/avatar-sample01@2x.png" alt=""/>
|
||||||
</div>
|
</div>
|
||||||
</figure>
|
</figure>
|
||||||
<span>プロフィール</span>
|
<span>プロフィール</span>
|
||||||
|
|
|
@ -12,6 +12,9 @@ const WithdrawalComplete = () => {
|
||||||
退会完了しました。<br/>
|
退会完了しました。<br/>
|
||||||
今後とも、危機管理をよろしくお願いいたします。
|
今後とも、危機管理をよろしくお願いいたします。
|
||||||
</div>
|
</div>
|
||||||
|
<div class="text-center">
|
||||||
|
<a class="ft-xs-13">トップページへ戻る</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -9,8 +9,10 @@
|
||||||
.ft-18{ font-size: 18px !important; }
|
.ft-18{ font-size: 18px !important; }
|
||||||
.ft-19{ font-size: 19px !important; }
|
.ft-19{ font-size: 19px !important; }
|
||||||
.ft-20{ font-size: 20px !important; }
|
.ft-20{ font-size: 20px !important; }
|
||||||
|
.ft-25{ font-size: 25px !important; }
|
||||||
.ft-30{ font-size: 30px !important; }
|
.ft-30{ font-size: 30px !important; }
|
||||||
|
.ft-35{ font-size: 35px !important; }
|
||||||
|
.ft-40{ font-size: 40px !important; }
|
||||||
|
|
||||||
|
|
||||||
.ft-md-12{ @include media-breakpoint-down(md){ font-size: 12px !important; } }
|
.ft-md-12{ @include media-breakpoint-down(md){ font-size: 12px !important; } }
|
||||||
|
|
|
@ -100,7 +100,7 @@ a{
|
||||||
|
|
||||||
|
|
||||||
.input-default{
|
.input-default{
|
||||||
border-radius: 18px !important;
|
// border-radius: 18px !important;
|
||||||
height: 50px;
|
height: 50px;
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
}
|
}
|
||||||
|
@ -134,3 +134,8 @@ a{
|
||||||
.btn-shadow{
|
.btn-shadow{
|
||||||
box-shadow: 0 1px 8px rgb(0 0 0 / 30%) !important;
|
box-shadow: 0 1px 8px rgb(0 0 0 / 30%) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.btn-disabled{
|
||||||
|
background-color: #eaeff2;
|
||||||
|
color: #6f7372;
|
||||||
|
}
|
|
@ -0,0 +1,25 @@
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="ja">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<meta name="csrf-token" content="{{ csrf_token() }}">
|
||||||
|
<title>@yield('title')</title>
|
||||||
|
<link rel="dns-prefetch" href="//fonts.gstatic.com">
|
||||||
|
<link href="https://use.fontawesome.com/releases/v5.6.1/css/all.css" rel = "stylesheet">
|
||||||
|
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
|
||||||
|
<link href="https://fonts.googleapis.com/css?family=Nunito" rel="stylesheet">
|
||||||
|
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
|
||||||
|
|
||||||
|
<link href="{{ asset('css/app.css') }}" rel="stylesheet">
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/css/style.css') }}" />
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
@yield('content')
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
|
||||||
|
<script src="{{ asset('js/app.js') }}"></script>
|
||||||
|
@stack('js')
|
||||||
|
</html>
|
|
@ -3,5 +3,5 @@
|
||||||
@section('title', '管理者ログイン')
|
@section('title', '管理者ログイン')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
<div id="admin-app"></div>
|
<div id="admin-login"></div>
|
||||||
@endsection
|
@endsection
|
|
@ -0,0 +1,8 @@
|
||||||
|
@extends('admin.layout')
|
||||||
|
|
||||||
|
@section('title', 'ミーティング一覧')
|
||||||
|
|
||||||
|
@section('content')
|
||||||
|
<div id="admin-app"></div>
|
||||||
|
<input type="hidden" id="admin_router" value="meeting" />
|
||||||
|
@endsection
|
|
@ -48,6 +48,9 @@
|
||||||
退会完了しました。<br/>
|
退会完了しました。<br/>
|
||||||
今後とも、危機管理をよろしくお願いいたします。
|
今後とも、危機管理をよろしくお願いいたします。
|
||||||
</div>
|
</div>
|
||||||
|
<div class="text-center">
|
||||||
|
<a class="ft-xs-13">トップページへ戻る</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -49,3 +49,4 @@ Route::get('/withdrawal/complete', function () { return view
|
||||||
|
|
||||||
//--------------------------Admin Account----------------------------------------//
|
//--------------------------Admin Account----------------------------------------//
|
||||||
Route::get('/login/admin', function () { return view('admin.login.index'); });
|
Route::get('/login/admin', function () { return view('admin.login.index'); });
|
||||||
|
Route::get('/admin/meeting', function () { return view('admin.meeting.index'); });
|
||||||
|
|
新しいイシューから参照