add remove button

このコミットが含まれているのは:
dragon1211 2021-10-24 18:32:17 +09:00
コミット ae199925dd
4個のファイルの変更300行の追加211行の削除

ファイルの表示

@ -12185,3 +12185,7 @@ a {
.meeting-item:last-child {
border-bottom: none;
}
.p-file-image figure.image-upload:after {
display: none !important;
}

ファイルの表示

@ -12222,6 +12222,34 @@ exports.default = _default;
/***/ }),
/***/ "./node_modules/@mui/icons-material/Remove.js":
/*!****************************************************!*\
!*** ./node_modules/@mui/icons-material/Remove.js ***!
\****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports.default = void 0;
var _createSvgIcon = _interopRequireDefault(__webpack_require__(/*! ./utils/createSvgIcon */ "./node_modules/@mui/icons-material/utils/createSvgIcon.js"));
var _jsxRuntime = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js");
var _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)("path", {
d: "M19 13H5v-2h14v2z"
}), 'Remove');
exports.default = _default;
/***/ }),
/***/ "./node_modules/@mui/icons-material/Search.js":
/*!****************************************************!*\
!*** ./node_modules/@mui/icons-material/Search.js ***!
@ -29830,20 +29858,15 @@ __webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js");
/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! axios */ "./node_modules/axios/index.js");
/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! axios */ "./node_modules/axios/index.js");
/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @material-ui/core */ "./node_modules/@material-ui/core/CircularProgress/CircularProgress.js");
/* harmony import */ var _material_ui_lab__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @material-ui/lab */ "./node_modules/@material-ui/lab/LoadingButton/LoadingButton.js");
/* harmony import */ var _material_ui_lab__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @material-ui/lab */ "./node_modules/@material-ui/lab/LoadingButton/LoadingButton.js");
/* harmony import */ var _mui_material_IconButton__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @mui/material/IconButton */ "./node_modules/@mui/material/IconButton/IconButton.js");
/* harmony import */ var _mui_icons_material_Remove__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @mui/icons-material/Remove */ "./node_modules/@mui/icons-material/Remove.js");
/* harmony import */ var _component_alert__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../component/alert */ "./resources/js/component/alert.jsx");
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js");
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@ -29863,57 +29886,75 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
var MeetingEdit = function MeetingEdit(props) {
var _useState = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null),
var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
_useState2 = _slicedToArray(_useState, 2),
meeting = _useState2[0],
setMeeting = _useState2[1];
title = _useState2[0],
setTitle = _useState2[1];
var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(''),
var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
_useState4 = _slicedToArray(_useState3, 2),
title = _useState4[0],
setTitle = _useState4[1];
memo = _useState4[0],
setMemo = _useState4[1];
var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(''),
var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
_useState6 = _slicedToArray(_useState5, 2),
memo = _useState6[0],
setMemo = _useState6[1];
text = _useState6[0],
setText = _useState6[1];
var _useState7 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(''),
var _useState7 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
_useState8 = _slicedToArray(_useState7, 2),
text = _useState8[0],
setText = _useState8[1];
pdf = _useState8[0],
setPdf = _useState8[1];
var _useState9 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(''),
var _useState9 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]),
_useState10 = _slicedToArray(_useState9, 2),
pdf = _useState10[0],
setPdf = _useState10[1];
meeting_image = _useState10[0],
setMeetingImages = _useState10[1];
var _useState11 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)({
var _useState11 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
_useState12 = _slicedToArray(_useState11, 2),
imageUri = _useState12[0],
setImageUri = _useState12[1];
var _useState13 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({
title: '',
text: '',
memo: '',
pdf: ''
}),
_useState12 = _slicedToArray(_useState11, 2),
_422errors = _useState12[0],
set422Errors = _useState12[1];
var _useState13 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false),
_useState14 = _slicedToArray(_useState13, 2),
loaded = _useState14[0],
setLoaded = _useState14[1];
_422errors = _useState14[0],
set422Errors = _useState14[1];
var _useState15 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false),
var _useState15 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
_useState16 = _slicedToArray(_useState15, 2),
submit = _useState16[0],
setSubmit = _useState16[1];
_400error = _useState16[0],
set400Error = _useState16[1];
(0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {
var _useState17 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
_useState18 = _slicedToArray(_useState17, 2),
_success = _useState18[0],
setSuccess = _useState18[1];
var _useState19 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
_useState20 = _slicedToArray(_useState19, 2),
loaded = _useState20[0],
setLoaded = _useState20[1];
var _useState21 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
_useState22 = _slicedToArray(_useState21, 2),
submit = _useState22[0],
setSubmit = _useState22[1];
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
var _props$match$params;
setLoaded(false);
axios__WEBPACK_IMPORTED_MODULE_2___default().get("/api/admin/meetings/detail/".concat((_props$match$params = props.match.params) === null || _props$match$params === void 0 ? void 0 : _props$match$params.meeting_id), {
axios__WEBPACK_IMPORTED_MODULE_1___default().get("/api/admin/meetings/detail/".concat((_props$match$params = props.match.params) === null || _props$match$params === void 0 ? void 0 : _props$match$params.meeting_id), {
params: {
father_id: 1
}
@ -29921,70 +29962,91 @@ var MeetingEdit = function MeetingEdit(props) {
setLoaded(true);
if (response.data.status_code == 200) {
var _response$data$params, _response$data$params2, _response$data$params3;
var _response$data$params, _response$data$params2, _response$data$params3, _response$data$params4;
console.log(response.data.params[0]);
setMeeting(response.data.params[0]);
setTitle((_response$data$params = response.data.params[0]) === null || _response$data$params === void 0 ? void 0 : _response$data$params.title);
setMemo((_response$data$params2 = response.data.params[0]) === null || _response$data$params2 === void 0 ? void 0 : _response$data$params2.memo);
setText((_response$data$params3 = response.data.params[0]) === null || _response$data$params3 === void 0 ? void 0 : _response$data$params3.text);
setMeetingImages((_response$data$params4 = response.data.params[0]) === null || _response$data$params4 === void 0 ? void 0 : _response$data$params4.meeting_image);
} else if (response.data.status_code == 400) {//TODO
}
});
}, []);
function handleSubmit() {
return _handleSubmit.apply(this, arguments);
}
var handleSubmit = function handleSubmit(e) {
e.preventDefault();
set422Errors({
title: '',
memo: '',
text: '',
pdf: '',
images: ''
});
function _handleSubmit() {
_handleSubmit = _asyncToGenerator( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().mark(function _callee() {
var formdata;
return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
set422Errors({
title: '',
memo: '',
text: '',
pdf: '',
images: ''
});
try {
var _props$match$params2;
try {
formdata = new FormData();
formdata.append('father_id', fatherId);
formdata.append('title', title);
formdata.append('memo', memo);
formdata.append('text', text); // formdata.append('pdf', pdf);
// formdata.append('images', images);
var request = {
title: title,
text: text,
memo: memo,
pdf: pdf
};
setSubmit(true);
axios__WEBPACK_IMPORTED_MODULE_1___default().put("/api/admin/meetings/update/".concat((_props$match$params2 = props.match.params) === null || _props$match$params2 === void 0 ? void 0 : _props$match$params2.meeting_id), request).then(function (response) {
setSubmit(false);
setSubmit(true); // axios.post('/api/meetings/register', formdata)
// .then(response => {
// if(response.data.status_code==200){
// history.push({
// pathname: "/p-account/meetings/detail/1",
// state: {message : "ミーティングを作成しました!"}
// });
// } else {
// setMessageAlert('error');
// setShowAlert(true);
// }
// });
} catch (error) {
console.log('error', error);
}
switch (response.data.status_code) {
case 200:
setSuccess(response.data.success_messages);
break;
case 2:
case "end":
return _context.stop();
}
case 400:
set400Error(response.data.error_messages);
break;
case 422:
set422Errors(response.data.error_messages);
break;
}
}, _callee);
}));
return _handleSubmit.apply(this, arguments);
}
});
} catch (error) {
console.log('error', error);
}
};
var handleImageChange = function handleImageChange(e) {
e.preventDefault();
var reader = new FileReader();
var _file = e.target.files[0];
reader.readAsDataURL(_file);
reader.onloadend = function () {
var _props$match$params3;
axios__WEBPACK_IMPORTED_MODULE_1___default().put("/api/admin/children/updateImage/".concat((_props$match$params3 = props.match.params) === null || _props$match$params3 === void 0 ? void 0 : _props$match$params3.child_id), {
image: reader.result
}).then(function (response) {
switch (response.data.status_code) {
case 200:
{
setImage(reader.result);
setSuccess(response.data.success_messages);
break;
}
case 400:
set400Error(response.data.error_messages);
break;
case 422:
set422Errors(response.data.error_messages);
break;
}
});
};
};
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("div", {
className: "l-content",
@ -30088,90 +30150,56 @@ var MeetingEdit = function MeetingEdit(props) {
type: "file",
name: "file_pdf",
accept: ".pdf",
id: "file_pdf"
id: "file_pdf",
value: pdf,
onChange: function onChange(e) {
return setPdf(e.target.file);
}
})]
}), _422errors.pdf && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("span", {
className: "l-alert__text--error ft-16 ft-md-14",
children: _422errors.pdf
})]
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("div", {
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("div", {
className: "edit-set edit-set-mt15",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("label", {
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("label", {
className: "edit-set-file-label",
htmlFor: "file_image",
children: ["\u753B\u50CF\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("input", {
type: "file",
name: "file_image",
accept: ".png, .jpg, .jpeg",
id: "file_image"
id: "file_image",
value: imageUri,
onChange: handleImageChange
})]
}), _422errors.pdf && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("span", {
className: "l-alert__text--error ft-16 ft-md-14",
children: _422errors.pdf
})]
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("div", {
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("div", {
className: "p-file-image",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("figure", {
className: "image-upload",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
src: "../../../assets/img/dummy/post-dummy01.jpg",
alt: ""
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("figure", {
className: "image-upload",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
src: "../../../assets/img/dummy/post-dummy02.jpg",
alt: ""
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("figure", {
className: "image-upload",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
src: "../../../assets/img/dummy/post-dummy03.jpg",
alt: ""
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("figure", {
className: "image-upload",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
src: "../../../assets/img/dummy/post-dummy04.jpg",
alt: ""
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("figure", {
className: "image-upload",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
src: "../../../assets/img/dummy/post-dummy05.jpg",
alt: ""
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("figure", {
className: "image-upload",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
src: "../../../assets/img/dummy/post-dummy01.jpg",
alt: ""
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("figure", {
className: "image-upload",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
src: "../../../assets/img/dummy/post-dummy02.jpg",
alt: ""
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("figure", {
className: "image-upload",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
src: "../../../assets/img/dummy/post-dummy03.jpg",
alt: ""
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("figure", {
className: "image-upload",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
src: "../../../assets/img/dummy/post-dummy04.jpg",
alt: ""
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("figure", {
className: "image-upload",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
src: "../../../assets/img/dummy/post-dummy05.jpg",
alt: ""
})
})]
children: meeting_image === null || meeting_image === void 0 ? void 0 : meeting_image.map(function (x, k) {
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("figure", {
className: "image-upload",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
src: x.image,
alt: x.image
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_mui_material_IconButton__WEBPACK_IMPORTED_MODULE_5__.default, {
style: {
position: 'absolute',
bottom: '-6px',
right: '-6px'
},
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_mui_icons_material_Remove__WEBPACK_IMPORTED_MODULE_6__.default, {
style: {
width: '22px',
height: '22px',
color: 'white',
background: '#dd0000',
borderRadius: '50%'
}
})
})]
}, k);
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("div", {
className: "edit-set edit-set-send",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("label", {
@ -30252,7 +30280,7 @@ var MeetingEdit = function MeetingEdit(props) {
}), "\u7530\u4E2D \u9054\u4E5F"]
})
})]
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_material_ui_lab__WEBPACK_IMPORTED_MODULE_5__.default, {
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_material_ui_lab__WEBPACK_IMPORTED_MODULE_7__.default, {
type: "submit",
loading: submit,
className: "btn-edit btn-default btn-h70 btn-r14 btn-yellow rounded-20",
@ -30262,6 +30290,23 @@ var MeetingEdit = function MeetingEdit(props) {
backgroundColor: '#ffed4a'
},
children: "\u30DF\u30FC\u30C6\u30A3\u30F3\u30B0\u3092\u66F4\u65B0"
}), _400error && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_component_alert__WEBPACK_IMPORTED_MODULE_2__.default, {
type: "fail",
hide: function hide() {
return set400Error('');
},
children: _400error
}), _success && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_component_alert__WEBPACK_IMPORTED_MODULE_2__.default, {
type: "success",
hide: function hide() {
var _props$match$params4;
return history.push({
pathname: "/admin/child/detail/".concat((_props$match$params4 = props.match.params) === null || _props$match$params4 === void 0 ? void 0 : _props$match$params4.child_id),
state: {}
});
},
children: _success
})]
})
})

ファイルの表示

@ -3,15 +3,24 @@ import axios from 'axios';
import { CircularProgress } from '@material-ui/core';
import { LoadingButton } from '@material-ui/lab';
import IconButton from '@mui/material/IconButton';
import RemoveIcon from '@mui/icons-material/Remove';
import Alert from '../../component/alert';
const MeetingEdit = (props) => {
const [meeting, setMeeting] = useState(null);
const [title, setTitle] = useState('');
const [memo, setMemo] = useState('');
const [text, setText] = useState('');
const [pdf, setPdf] = useState('');
const [meeting_image, setMeetingImages] = useState([]);
const [imageUri, setImageUri] = useState('');
const [_422errors, set422Errors] = useState({title:'', text:'', memo:'', pdf:''})
const [_400error, set400Error] = useState('');
const [_success, setSuccess] = useState('');
const [loaded, setLoaded] = useState(false);
const [submit, setSubmit] = useState(false);
@ -24,53 +33,67 @@ const MeetingEdit = (props) => {
setLoaded(true);
if(response.data.status_code==200){
console.log(response.data.params[0]);
setMeeting(response.data.params[0]);
setTitle(response.data.params[0]?.title);
setMemo(response.data.params[0]?.memo);
setText(response.data.params[0]?.text);
setMeetingImages(response.data.params[0]?.meeting_image);
} else if(response.data.status_code==400){
//TODO
}
});
}, []);
async function handleSubmit() {
set422Errors({
title:'',
memo:'',
text:'',
pdf:'',
images:''
});
const handleSubmit = (e) => {
e.preventDefault();
set422Errors({title:'',memo:'',text:'',pdf:'',images:''});
try {
const formdata = new FormData();
formdata.append('father_id', fatherId);
formdata.append('title', title);
formdata.append('memo', memo);
formdata.append('text', text);
// formdata.append('pdf', pdf);
// formdata.append('images', images);
setSubmit(true);
// axios.post('/api/meetings/register', formdata)
// .then(response => {
// if(response.data.status_code==200){
// history.push({
// pathname: "/p-account/meetings/detail/1",
// state: {message : ""}
// });
// } else {
// setMessageAlert('error');
// setShowAlert(true);
// }
// });
const request = { title: title, text: text, memo: memo, pdf: pdf };
setSubmit(true);
axios.put(`/api/admin/meetings/update/${props.match.params?.meeting_id}`, request)
.then(response => {
setSubmit(false);
switch(response.data.status_code){
case 200: setSuccess(response.data.success_messages); break;
case 400: set400Error(response.data.error_messages); break;
case 422: set422Errors(response.data.error_messages); break;
}
});
} catch (error) {
console.log('error', error);
}
}
}
const handleImageChange = (e) => {
e.preventDefault();
let reader = new FileReader();
let _file = e.target.files[0];
reader.readAsDataURL(_file);
reader.onloadend = () => {
axios.put(`/api/admin/children/updateImage/${props.match.params?.child_id}`, {image: reader.result})
.then(response => {
switch(response.data.status_code){
case 200: {
setImage(reader.result);
setSuccess(response.data.success_messages);
break;
}
case 400: set400Error(response.data.error_messages); break;
case 422: set422Errors(response.data.error_messages); break;
}
});
};
};
return (
@ -128,7 +151,7 @@ const MeetingEdit = (props) => {
<div className="edit-set edit-set-mt15">
<label className="edit-set-file-label" htmlFor="file_pdf">
PDFアップロード
<input type="file" name="file_pdf" accept=".pdf" id="file_pdf" />
<input type="file" name="file_pdf" accept=".pdf" id="file_pdf" value={pdf} onChange={e=>setPdf(e.target.file)} />
</label>
{
_422errors.pdf &&
@ -140,27 +163,28 @@ const MeetingEdit = (props) => {
<div className="edit-set edit-set-mt15">
<label className="edit-set-file-label" htmlFor="file_image">
画像アップロード
<input type="file" name="file_image" accept=".png, .jpg, .jpeg" id="file_image" />
<input type="file" name="file_image" accept=".png, .jpg, .jpeg" id="file_image" value={imageUri} onChange={handleImageChange}/>
</label>
{
_422errors.pdf &&
<span className="l-alert__text--error ft-16 ft-md-14">
{_422errors.pdf}
</span>
}
</div>
<div className="p-file-image">
<figure className="image-upload"><img src="../../../assets/img/dummy/post-dummy01.jpg" alt="" /></figure>
<figure className="image-upload"><img src="../../../assets/img/dummy/post-dummy02.jpg" alt="" /></figure>
<figure className="image-upload"><img src="../../../assets/img/dummy/post-dummy03.jpg" alt="" /></figure>
<figure className="image-upload"><img src="../../../assets/img/dummy/post-dummy04.jpg" alt="" /></figure>
<figure className="image-upload"><img src="../../../assets/img/dummy/post-dummy05.jpg" alt="" /></figure>
<figure className="image-upload"><img src="../../../assets/img/dummy/post-dummy01.jpg" alt="" /></figure>
<figure className="image-upload"><img src="../../../assets/img/dummy/post-dummy02.jpg" alt="" /></figure>
<figure className="image-upload"><img src="../../../assets/img/dummy/post-dummy03.jpg" alt="" /></figure>
<figure className="image-upload"><img src="../../../assets/img/dummy/post-dummy04.jpg" alt="" /></figure>
<figure className="image-upload"><img src="../../../assets/img/dummy/post-dummy05.jpg" alt="" /></figure>
{
meeting_image?.map((x, k)=>
<figure className="image-upload" key={k}>
<img src={x.image} alt={x.image} />
<IconButton
style={{position: 'absolute',
bottom: '-6px',
right: '-6px'}}>
<RemoveIcon
style={{width:'22px', height:'22px',
color: 'white',
background: '#dd0000',
borderRadius: '50%'}}/>
</IconButton>
</figure>
)
}
</div>
<div className="edit-set edit-set-send">
@ -201,6 +225,18 @@ const MeetingEdit = (props) => {
loading={submit}
className="btn-edit btn-default btn-h70 btn-r14 btn-yellow rounded-20"
style={{fontSize:'18px',fontWeight:'bold', backgroundColor:'#ffed4a'}}>ミーティングを更新</LoadingButton>
{
_400error && <Alert type="fail" hide={()=>set400Error('')}>{_400error}</Alert>
}
{
_success &&
<Alert type="success"
hide={()=>
history.push({
pathname: `/admin/child/detail/${props.match.params?.child_id}`,
state: {}
})}>{_success}</Alert>
}
</form>
</div>
</div>

ファイルの表示

@ -165,4 +165,8 @@ a{
&:last-child{
border-bottom: none;
}
}
.p-file-image figure.image-upload:after{
display: none !important;
}