formFields.js 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453
  1. import React from 'react';
  2. import Main from "../components/main/Main";
  3. import Doctors from "../components/specialists/Doctors";
  4. import Services from "../components/services/Services";
  5. import MoreInfo from "../components/specialists/MoreInfo";
  6. import Reviews from "../components/Reviews";
  7. import Admin from "../components/Admin/Admin";
  8. import Appointment from "../components/appointment/Appointment";
  9. import Auth from "../containers/auth";
  10. import User from "../containers/user";
  11. const PAGENOTFOUND = () =>
  12. <div className="main">
  13. <div className="info-wrap">
  14. <div className="page-not-found">
  15. <h1>PAGE 404 NOT FOUND</h1>
  16. <img src="./images/logo.png" alt=""/>
  17. </div>
  18. </div>
  19. </div>;
  20. export const logInForm = {
  21. form: {
  22. email: {
  23. id: 1,
  24. name: "email",
  25. type: "email",
  26. label: "Email",
  27. validation: {
  28. requred: {
  29. cb: v => v.trim() === ""
  30. }
  31. },
  32. fail: false,
  33. touch: false,
  34. value: ""
  35. },
  36. password: {
  37. id: 2,
  38. name: "password",
  39. type: "password",
  40. label: "Пароль",
  41. validation: {
  42. requred: {
  43. cb: v => v.trim() === ""
  44. },
  45. minL: {
  46. cb: v => v.trim().length < 6
  47. }
  48. },
  49. fail: false,
  50. touch: false,
  51. value: ""
  52. }
  53. },
  54. validForm: false
  55. };
  56. export const signUpForm = {
  57. form: {
  58. email: {
  59. id: 1,
  60. name: "email",
  61. type: "email",
  62. label: "Email",
  63. validation: {
  64. requred: {
  65. cb: v => v.trim() === ""
  66. }
  67. },
  68. fail: false,
  69. touch: false,
  70. value: ""
  71. },
  72. firstName: {
  73. id: 2,
  74. type: "text",
  75. name: "firstName",
  76. label: "Имя",
  77. validation: {
  78. requred: {
  79. cb: v => v.trim() === ""
  80. },
  81. regExp: {
  82. cb: v => !/^\w/.test(v)
  83. }
  84. },
  85. fail: false,
  86. touch: false,
  87. value: ""
  88. },
  89. lastName: {
  90. id: 3,
  91. type: "text",
  92. name: "lastName",
  93. label: "Фамилия",
  94. validation: {
  95. requred: {
  96. cb: v => v.trim() === ""
  97. }
  98. },
  99. fail: false,
  100. touch: false,
  101. value: ""
  102. },
  103. phone: {
  104. id: 4,
  105. type: "number",
  106. name: "phone",
  107. label: "Телефон",
  108. validation: {
  109. requred: {
  110. cb: v => v.trim() === ""
  111. }
  112. },
  113. fail: false,
  114. touch: false,
  115. value: ""
  116. },
  117. password: {
  118. id: 5,
  119. name: "password",
  120. type: "password",
  121. label: "Пароль",
  122. validation: {
  123. requred: {
  124. cb: v => v.trim() === ""
  125. },
  126. minL: {
  127. cb: v => v.trim().length < 6
  128. }
  129. },
  130. fail: false,
  131. touch: false,
  132. value: ""
  133. },
  134. confirmPassword: {
  135. id: 6,
  136. name: "confirmPassword",
  137. type: "password",
  138. label: "Повторите пароль",
  139. validation: {
  140. requred: {
  141. cb: v => v.trim() === ""
  142. },
  143. minL: {
  144. cb: v => v.trim().length < 6
  145. },
  146. match: {
  147. match: "password",
  148. cb: (v, m) => v !== m
  149. }
  150. },
  151. fail: false,
  152. touch: false,
  153. value: ""
  154. }
  155. },
  156. validForm: false
  157. };
  158. export const postNewDoctorForm =[
  159. {
  160. id:1,
  161. type:'text',
  162. value:"",
  163. name:'name',
  164. placeholder:'Введите ФИО сотрудника',
  165. required:true
  166. },
  167. {
  168. id:2,
  169. type:'text',
  170. value:"",
  171. name:'experience',
  172. placeholder:'Введите дату начала практики',
  173. required:true
  174. },
  175. {
  176. id:3,
  177. type:'text',
  178. value:"",
  179. name:'photo',
  180. className: "btn service-btn",
  181. placeholder:'Добавьте фотографию',
  182. required:true
  183. },
  184. {
  185. id:4,
  186. type:'text',
  187. value:"",
  188. name:'profession',
  189. placeholder:'Добавьте специализацию',
  190. required:true
  191. },
  192. {
  193. id:5,
  194. type:'text',
  195. value:"",
  196. name:'skillsDescription',
  197. placeholder:'Введите описание навыков здесь',
  198. required:true
  199. }
  200. ];
  201. export const postNewServiceForm =[
  202. {
  203. id:1,
  204. type:'text',
  205. value:"",
  206. name:'name',
  207. placeholder:'Введите название сервиса',
  208. required:true
  209. },
  210. {
  211. id:2,
  212. type:'text',
  213. value:"",
  214. name:'description',
  215. placeholder:'Введите описание сервиса',
  216. required:true
  217. },
  218. {
  219. id:3,
  220. type:'number',
  221. value:"",
  222. name:'duration',
  223. placeholder:'Введите длительность (часы)',
  224. required:true
  225. },
  226. {
  227. id:4,
  228. type:'number',
  229. value:"",
  230. name:'price',
  231. placeholder:'Введите стоимость сервиса',
  232. required:true
  233. }
  234. ];
  235. export const changeUserForm = [
  236. {
  237. id:1,
  238. type:'email',
  239. value:"",
  240. name:'email',
  241. placeholder:'Введите E-mail',
  242. readOnly:true,
  243. required:true
  244. },
  245. {
  246. id:2,
  247. type:'text',
  248. value:"",
  249. name:'firstName',
  250. placeholder:'Введите Имя',
  251. required:true
  252. },
  253. {
  254. id:3,
  255. type:'text',
  256. value:"",
  257. name:'lastName',
  258. placeholder:'Введите Фамилию',
  259. required:true
  260. },
  261. {
  262. id:4,
  263. type:'number',
  264. value:"",
  265. name:'phone',
  266. placeholder:'Введите ваш номер',
  267. required:true
  268. },
  269. {
  270. id:5,
  271. type:'password',
  272. value:"",
  273. name:'password',
  274. placeholder:'Введите новый пароль',
  275. required:true
  276. },
  277. {
  278. id:6,
  279. type:'password',
  280. value:"",
  281. name:'confirmPassword',
  282. placeholder:'Повторите пароль',
  283. required:true
  284. }
  285. ];
  286. export const adminChangeUserForm =[
  287. {
  288. id:1,
  289. type:'text',
  290. value:"",
  291. inputName:'firstName',
  292. pageValue : "Имя" ,
  293. placeholder:'Введите Имя',
  294. required:true
  295. },
  296. {
  297. id:2,
  298. type:'text',
  299. value:"",
  300. inputName:'lastName',
  301. pageValue : "Фамилия" ,
  302. placeholder:'Введите Фамилию',
  303. required:true
  304. },
  305. {
  306. id:3,
  307. type:'email',
  308. value:"",
  309. inputName:'email',
  310. pageValue : "E-mail" ,
  311. placeholder:'Введите E-mail',
  312. readOnly:true,
  313. required:true
  314. },
  315. {
  316. id:4,
  317. type:'phone',
  318. value:"",
  319. inputName:'phone',
  320. pageValue : "Номер телефона" ,
  321. placeholder:'Введите номер телефона',
  322. required:true
  323. },
  324. // {
  325. // id:5,
  326. // type:'text',
  327. // value:"",
  328. // name:'_id',
  329. // readOnly:true,
  330. // required:true
  331. // },
  332. {
  333. id:6,
  334. type:'radio',
  335. value: 'role',
  336. pageValue : "Админ",
  337. name: 'access',
  338. inputName:'role',
  339. required:true,
  340. className:"radio"
  341. },
  342. {
  343. id:7,
  344. type:'radio',
  345. value: 'doctor',
  346. inputName: 'doctor',
  347. pageValue : "Доктор",
  348. name:'access',
  349. required:true,
  350. className:"radio"
  351. },
  352. {
  353. id:8,
  354. type:'radio',
  355. value: 'user',
  356. inputName: 'user',
  357. pageValue : "Пользователь",
  358. name:'access',
  359. required:true,
  360. className:"radio"
  361. },
  362. ];
  363. export const route = [
  364. {
  365. id: 1,
  366. exact: true,
  367. path: "/",
  368. protected: false,
  369. // hasAccess: [],
  370. component: Main
  371. },
  372. {
  373. id: 2,
  374. exact: true,
  375. path: "/doctors",
  376. protected: false,
  377. component: Doctors
  378. },
  379. {
  380. id: 3,
  381. exact: true,
  382. path: "/services",
  383. protected: false,
  384. component: Services
  385. },
  386. {
  387. id: 3,
  388. exact: false,
  389. path: "/doctors/:doctor/:flag",
  390. protected: false,
  391. component: MoreInfo
  392. },
  393. {
  394. id: 4,
  395. exact: true,
  396. path: "/services/:service/:flag",
  397. protected: false,
  398. component: MoreInfo
  399. },
  400. {
  401. id: 5,
  402. exact: true,
  403. path: "/reviews",
  404. protected: false,
  405. component: Reviews
  406. },
  407. {
  408. id: 6,
  409. exact: false,
  410. path: "/admin",
  411. protected: true,
  412. component: Admin
  413. },
  414. {
  415. id: 7,
  416. exact: true,
  417. path: "/appointment/:doctorId",
  418. protected: false,
  419. component: Appointment
  420. },
  421. {
  422. id: 8,
  423. exact: true,
  424. path: "/auth",
  425. protected: false,
  426. component: Auth
  427. },
  428. {
  429. id: 9,
  430. exact: false,
  431. path: "/user",
  432. protected: true,
  433. component: User
  434. },
  435. {
  436. id: 10,
  437. component: PAGENOTFOUND
  438. },
  439. ];