Marina Yakovenko пре 5 година
родитељ
комит
f398e5f107
3 измењених фајлова са 30 додато и 187 уклоњено
  1. 0 172
      src/components/adminPhotogalary/adminPhotogalary.js
  2. 5 15
      src/router.js
  3. 25 0
      src/utils/eventFormValidation.js

+ 0 - 172
src/components/adminPhotogalary/adminPhotogalary.js

@@ -1,172 +0,0 @@
-import React, { Component, Fragment } from "react";
-
-import "./adminPhotogalary.scss";
-import { form } from "../../state/photogalaryFormData";
-import Input from "../input/input";
-import Select from "../select/select";
-import Button from "../button/button";
-import Header from '../adminHeader/adminHeader';
-
-export default class PhotogalaryForm extends Component {
-
-    state = {
-        form,
-        validForm: false
-    }
-
-    validator = (rules, value) => {
-        const { requred, minL } = rules;
-
-        let valid = true;
-        if (requred) {
-            valid = value.trim() === "" && valid;
-        }
-
-        if (minL) {
-            valid = value.trim().length < minL && valid;
-        }
-
-        return valid;
-    };
-
-    submit = e => {
-        e.preventDefault();
-
-        const values = Object.keys(this.state.form).reduce((prev, elem) => {
-            return { ...prev, [elem]: this.state.form[elem].value };
-        }, {});
-
-        this.props.submitHandler(values);
-    };
-
-    onChangeHandler = e => {
-        const { name, value, id } = e.target;
-
-        this.setState(prevState => {
-            const values = Object.keys(prevState.form).reduce((prev, elem) => {
-                if (elem === name) return prev.concat(value);
-                return prev.concat(prevState.form[elem].value);
-            }, []);
-
-            return {
-                ...prevState,
-                form: {
-                    ...prevState.form,
-                    [name]: {
-                        ...prevState.form[name],
-                        value,
-                        touch: true,
-                        // fail: this.validator(prevState.form[name].validation, value)
-                    },
-                    pictures: prevState.form.pictures.map(el => (el.id === +id ? { ...el, value } : el))
-                },
-                validForm: values.some(value => value)
-            };
-        });
-    };
-
-    addPicture = (e) => {
-        this.setState(prevState => ({
-            ...prevState,
-            form: {
-                ...prevState.form,
-                pictures: prevState.form.pictures.concat({
-                    id: +Math.random()
-                        .toString()
-                        .substr(2, 100),
-                    type: "input",
-                    name: "pictures",
-                    label: "Picture",
-                    placeholder: 'Enter picture url',
-                    value: ""
-                })
-                // ...prevState.form.pictures,
-                // value: prevState.form.pictures.value.concat(e.value)
-                // 	id: Math.random()
-                // 	.toString()
-                // 	.substr(2, 100),
-                // 	value: prevState.form.pictures.value.concat({
-                // 		id: Math.random()
-                // 			.toString()
-                // 			.substr(2, 100),
-                // 		url: ""
-                // )
-                // }
-            }
-        }));
-    };
-
-    render() {
-        const { form, validForm } = this.state;
-        console.log(this.state)
-
-        const { error } = this.props;
-        const disPictureAdd = form.pictures.every(el => el.value)
-        const disPictureRm = form.pictures.length === 1;
-
-        return (
-            <>
-                <Header />
-                <div className="photogalary-form">
-                    <div className="photogalary-form__content">
-                        <h2 className="photogalary-form__form-title">ADD EVENT PHOTOGALARY</h2>
-                        <form onSubmit={this.submit} className="photogalary-form__photogalary-form">
-
-                            <div className="photogalary-form__photogalary-form__selects">
-                            {Object.keys(form.selects).map((input_name, index) => (
-                                <Select
-                                    key={form.selects[input_name].id}
-                                    id={form.selects[input_name].id}
-                                    name={form.selects[input_name].name}
-                                    // value={form.selects[input_name].value}
-                                    fail={form.selects[input_name].fail}
-                                    touch={form.selects[input_name].touch}
-                                    label={form.selects[input_name].label}
-                                    placeholder={form.selects[input_name].placeholder}
-                                    onChange={this.onChangeHandler}
-                                >
-                                    {form.selects[input_name].options.map(elem =>
-                                        <option key={elem} value={elem}> {elem} </option>)}
-
-                                </Select>
-                            )
-                            )}
-                            </div>
-
-                            {form.pictures.map((el, i) => (
-                                <div key={`${el.id}/${i}`}>
-
-                                    {console.log('elem', el)}
-                                    <Input
-                                        className = "photogalary-form__picture-input"
-                                        id={el.id}
-                                        name={el.name}
-                                        value={el.value}
-                                        label={el.label}
-                                        // key={form[input_name].id}
-                                        // id={form[input_name].id}
-                                        // name={form[input_name].name}
-                                        // value={el.url}
-                                        // fail={form[input_name].fail}
-                                        // touch={form[input_name].touch}
-                                        // label={form[input_name].label}
-                                        placeholder={el.placeholder}
-                                        onChange={this.onChangeHandler}
-                                    />
-
-                                    {/* {!disPictureRm && <Button text="-" onClick={rmHobby.bind(null, el.id)} />} */}
-                                </div>
-                            ))}
-                            <Button className="photogalary-form__picture-btn" text="Add Picture" onClick={this.addPicture} disabled={!disPictureAdd} />
-
-                            {error && <p className="photogalary-form__error-photogalary-text">{error}</p>}
-                            <div className="photogalary-form__control-box">
-                                <Button disabled={!validForm} className="photogalary-form__submit-btn" type="submit" text="Add Photogalary" />
-                            </div>
-                        </form>
-                    </div>
-                </div>
-            </>
-        );
-    }
-}

+ 5 - 15
src/router.js

@@ -1,28 +1,18 @@
 import React from 'react'
 import { Switch, Route } from "react-router-dom";
 import AdminMainPage from './conteiners/adminMainPage/adminMainPage';
-import EventForm from "./components/eventForm/eventForm"
-import PhotogalaryForm from "./components/adminPhotogalary/adminPhotogalary"
+import AdminAddEventPage from './conteiners/adminAddEventPage/adminAddEventPage'
 import EventReduxForm from "./components/eventForm/eventReduxForm"
-
-// import {WhatDoWeOffer} from './conteiners/WhatDoWeOffer/WhatDoWeOffer';
-// import {RentalTerms} from './conteiners/RentalTerms/RentalTerms.js';
-// import {Discount} from './conteiners/Discount/Discount';
-import Header from './components/header/header';
+import AdminAddPhotogalarytPage from "./conteiners/adminPhotogalaryPage/adminPhotogalaryPage"
 
 export default () => (
     <div className="container">
-        {/* <Header /> */}
         <Switch>
-            {/* <Route exact path="/" component={Main} />
-            <Route exact path="/what_do_we_offer" component={WhatDoWeOffer} />
-            <Route exact path="/car_rental-terms" component={RentalTerms} />
-            <Route exact path="/discount" component={Discount} /> */}
-            
+           
             <Route exact path = '/admin' component = {AdminMainPage} />
-            <Route exact path = '/admin/add_new_event' component = {EventForm} />
+            <Route exact path = '/admin/add_new_event' component = {AdminAddEventPage} />
             <Route exact path = '/admin/my_events' component = {EventReduxForm} />
-            <Route exact path = '/admin/photogalary' component = {PhotogalaryForm} />
+            <Route exact path = '/admin/photogalary' component = {AdminAddPhotogalarytPage} />
             
         </Switch>
     </div>

+ 25 - 0
src/utils/eventFormValidation.js

@@ -0,0 +1,25 @@
+export const eventFormValidation = values => {
+	const errors = {};
+
+	if (!values.title) {
+		errors.title = "Required";
+	}
+
+	if (!values.eventType) {
+		errors.eventType = "Required";
+	}
+
+	if (!values.country) {
+		errors.country = "Required";
+    }
+    
+    if (!values.city) {
+		errors.city = "Required";
+    }
+    
+    if (!values.eventDate) {
+		errors.eventDate = "Required";
+	}
+
+	return errors;
+};