Skip to content

Commit

Permalink
RocketChat#821 [FIX] Исправление формы ввода номера у протоколов
Browse files Browse the repository at this point in the history
  • Loading branch information
Scarvis committed Dec 26, 2020
1 parent 9d9153a commit 2781ddd
Show file tree
Hide file tree
Showing 7 changed files with 49 additions and 7 deletions.
9 changes: 8 additions & 1 deletion app/protocols/client/views/AddItem.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import { validateItemData, createItemData } from './lib';
import VerticalBar from '../../../../client/components/basic/VerticalBar';
import CKEditor from "@ckeditor/ckeditor5-react";
import ClassicEditor from "@ckeditor/ckeditor5-build-classic";
import { checkNumberWithDot } from '../../../utils/client/methods/checkNumber';

export function AddItem({ goToNew, close, onChange, ...props }) {
const t = useTranslation();
Expand All @@ -27,6 +28,12 @@ export function AddItem({ goToNew, close, onChange, ...props }) {

const insertOrUpdateItem = useMethod('insertOrUpdateItem');

const filterNumber = (value) => {
if (checkNumberWithDot(value, number) !== null || value === '') {
setNumber(value);
}
};

const saveAction = useCallback(async (number, name, responsible, expireAt) => {
const itemData = createItemData(number, name, responsible, expireAt);
const validation = validateItemData(itemData);
Expand Down Expand Up @@ -57,7 +64,7 @@ export function AddItem({ goToNew, close, onChange, ...props }) {
<Field>
<Field.Label>{t('Item_Number')}</Field.Label>
<Field.Row>
<InputBox value={number} onChange={(e) => setNumber(e.currentTarget.value)} placeholder={t('Item_Number')} />
<InputBox value={number} onChange={(e) => filterNumber(e.currentTarget.value)} placeholder={t('Item_Number')} />
</Field.Row>
</Field>
<Field>
Expand Down
9 changes: 8 additions & 1 deletion app/protocols/client/views/AddProtocol.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import { useTranslation } from '../../../../client/contexts/TranslationContext';
import { useMethod } from '../../../../client/contexts/ServerContext';
import { validate, createProtocolData } from './lib';
import VerticalBar from '../../../../client/components/basic/VerticalBar';
import { checkNumberWithDot } from '../../../utils/client/methods/checkNumber';

require('react-datepicker/dist/react-datepicker.css');

Expand All @@ -22,6 +23,12 @@ export function AddProtocol({ goToNew, close, onChange, ...props }) {

const insertOrUpdateProtocol = useMethod('insertOrUpdateProtocol');

const filterNumber = (value) => {
if (checkNumberWithDot(value, number) !== null || value === '') {
setNumber(value);
}
};

const saveAction = useCallback(async (date, number, place) => {
const protocolData = createProtocolData(date, number, place);
const validation = validate(protocolData);
Expand Down Expand Up @@ -51,7 +58,7 @@ export function AddProtocol({ goToNew, close, onChange, ...props }) {
<Field>
<Field.Label>{t('Protocol_Number')}</Field.Label>
<Field.Row>
<InputBox value={number} onChange={(e) => setNumber(e.currentTarget.value)} placeholder={t('Protocol_Number')} />
<InputBox value={number} onChange={(e) => filterNumber(e.currentTarget.value)} placeholder={t('Protocol_Number')} />
</Field.Row>
</Field>
<Field>
Expand Down
9 changes: 8 additions & 1 deletion app/protocols/client/views/AddSection.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import { validateSectionData, createSectionData } from './lib';
import VerticalBar from '../../../../client/components/basic/VerticalBar';
import CKEditor from "@ckeditor/ckeditor5-react";
import ClassicEditor from "@ckeditor/ckeditor5-build-classic";
import { checkNumberWithDot } from '../../../utils/client/methods/checkNumber';

export function AddSection({ goToNew, close, onChange, ...props }) {
const t = useTranslation();
Expand All @@ -21,6 +22,12 @@ export function AddSection({ goToNew, close, onChange, ...props }) {

const insertOrUpdateSection = useMethod('insertOrUpdateSection');

const filterNumber = (value) => {
if (checkNumberWithDot(value, number) !== null || value === '') {
setNumber(value);
}
};

const saveAction = useCallback(async (number, name) => {
const sectionData = createSectionData(number, name);
const validation = validateSectionData(sectionData);
Expand Down Expand Up @@ -49,7 +56,7 @@ export function AddSection({ goToNew, close, onChange, ...props }) {
<Field>
<Field.Label>{t('Section_Number')}</Field.Label>
<Field.Row>
<InputBox value={number} onChange={(e) => setNumber(e.currentTarget.value)} placeholder={t('Section_Number')} />
<InputBox value={number} onChange={(e) => filterNumber(e.currentTarget.value)} placeholder={t('Section_Number')} />
</Field.Row>
</Field>
<Field>
Expand Down
9 changes: 8 additions & 1 deletion app/protocols/client/views/EditItem.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ import { useToastMessageDispatch } from '../../../../client/contexts/ToastMessag
import { useEndpointDataExperimental, ENDPOINT_STATES } from '../../../../client/hooks/useEndpointDataExperimental';
import { validateItemData, createItemData } from './lib';
import VerticalBar from '../../../../client/components/basic/VerticalBar';
import { checkNumberWithDot } from '../../../utils/client/methods/checkNumber';

require('react-datepicker/dist/react-datepicker.css');

Expand Down Expand Up @@ -83,6 +84,12 @@ function EditItemWithData({ close, onChange, protocol, sectionId, itemId, ...pro
const hasUnsavedChanges = useMemo(() => previousNumber !== number || previousName !== name || previousResponsible !== responsible || previousExpireAt !== expireAt,
[number, name, responsible, expireAt]);

const filterNumber = (value) => {
if (checkNumberWithDot(value, number) !== null || value === '') {
setNumber(value);
}
};

const saveAction = useCallback(async (number, name, responsible, expireAt) => {
const itemData = createItemData(number, name, responsible, expireAt, { previousNumber, previousName, _id });
const validation = validateItemData(itemData);
Expand All @@ -102,7 +109,7 @@ function EditItemWithData({ close, onChange, protocol, sectionId, itemId, ...pro
<Field>
<Field.Label>{t('Item_Number')}</Field.Label>
<Field.Row>
<InputBox value={number} onChange={(e) => setNumber(e.currentTarget.value)} placeholder={t('Item_Number')} />
<InputBox value={number} onChange={(e) => filterNumber(e.currentTarget.value)} placeholder={t('Item_Number')} />
</Field.Row>
</Field>
<Field>
Expand Down
9 changes: 8 additions & 1 deletion app/protocols/client/views/EditProtocol.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ import { useEndpointDataExperimental, ENDPOINT_STATES } from '../../../../client
import { validate, createProtocolData } from './lib';
import { useSetModal } from '../../../../client/contexts/ModalContext';
import VerticalBar from '../../../../client/components/basic/VerticalBar';
import { checkNumberWithDot } from '../../../utils/client/methods/checkNumber';

require('react-datepicker/dist/react-datepicker.css');

Expand Down Expand Up @@ -118,6 +119,12 @@ function EditProtocolWithData({ close, onChange, protocol, ...props }) {
const deleteProtocol = useMethod('deleteProtocol');
const insertOrUpdateProtocol = useMethod('insertOrUpdateProtocol');

const filterNumber = (value) => {
if (checkNumberWithDot(value, number) !== null || value === '') {
setNumber(value);
}
};

const hasUnsavedChanges = useMemo(() => previousDate !== date || previousNumber !== number || previousPlace !== place,
[date, number, place]);

Expand Down Expand Up @@ -151,7 +158,7 @@ function EditProtocolWithData({ close, onChange, protocol, ...props }) {
<Field>
<Field.Label>{t('Protocol_Number')}</Field.Label>
<Field.Row>
<InputBox value={number} onChange={(e) => setNumber(e.currentTarget.value)} placeholder={t('Protocol_Number')} />
<InputBox value={number} onChange={(e) => filterNumber(e.currentTarget.value)} placeholder={t('Protocol_Number')} />
</Field.Row>
</Field>
<Field>
Expand Down
9 changes: 8 additions & 1 deletion app/protocols/client/views/EditSection.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ import { useToastMessageDispatch } from '../../../../client/contexts/ToastMessag
import { useEndpointDataExperimental, ENDPOINT_STATES } from '../../../../client/hooks/useEndpointDataExperimental';
import { validateSectionData, createSectionData } from './lib';
import VerticalBar from '../../../../client/components/basic/VerticalBar';
import { checkNumberWithDot } from '../../../utils/client/methods/checkNumber';

require('react-datepicker/dist/react-datepicker.css');

Expand Down Expand Up @@ -67,6 +68,12 @@ function EditSectionWithData({ close, onChange, protocol, sectionId, ...props })

const insertOrUpdateSection = useMethod('insertOrUpdateSection');

const filterNumber = (value) => {
if (checkNumberWithDot(value, number) !== null || value === '') {
setNumber(value);
}
};

const hasUnsavedChanges = useMemo(() => previousNumber !== number || previousName !== name,
[number, name]);

Expand All @@ -89,7 +96,7 @@ function EditSectionWithData({ close, onChange, protocol, sectionId, ...props })
<Field>
<Field.Label>{t('Section_Number')}</Field.Label>
<Field.Row>
<InputBox value={number} onChange={(e) => setNumber(e.currentTarget.value)} placeholder={t('Section_Number')} />
<InputBox value={number} onChange={(e) => filterNumber(e.currentTarget.value)} placeholder={t('Section_Number')} />
</Field.Row>
</Field>
<Field>
Expand Down
2 changes: 1 addition & 1 deletion app/protocols/client/views/Protocols.js
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ export function Protocols({
const renderRow = (protocol) => {
const { _id, d: date, num, place, ts } = protocol;
return <Table.Row key={_id} tabIndex={0} role='link' action>
<Table.Cell fontScale='p1' onClick={onClick(_id)} color='default'>{num}</Table.Cell>
<Table.Cell fontScale='p1' onClick={onClick(_id)} color='default'>{num}</Table.Cell>
<Table.Cell fontScale='p1' onClick={onClick(_id)} color='default'><Box withTruncatedText>{formatDate(date)}</Box></Table.Cell>
{ mediaQuery && <Table.Cell fontScale='p1' onClick={onClick(_id)} color='default'><Box withTruncatedText>{place}</Box></Table.Cell>}
{ mediaQuery && <Table.Cell fontScale='p1' onClick={onClick(_id)} color='default'>{formatDateAndTime(ts)}</Table.Cell>}
Expand Down

0 comments on commit 2781ddd

Please sign in to comment.