[Glitch] Fix some server-side limits not being respected in web UI
Port f6d1795da5e42b9436b6f4bf49d25a3f29d34e25 to glitch-soc Signed-off-by: Claire <claire.github-309c@sitedethib.com>
This commit is contained in:
parent
ad9804b051
commit
2fb6a268b1
@ -361,7 +361,7 @@ export function uploadCompose(files) {
|
|||||||
dispatch(showAlert({ message: messages.uploadQuote }));
|
dispatch(showAlert({ message: messages.uploadQuote }));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const uploadLimit = getState().getIn(['server', 'server', 'configuration', 'statuses', 'max_media_attachments']);
|
const uploadLimit = getState().getIn(['server', 'server', 'item', 'configuration', 'statuses', 'max_media_attachments']);
|
||||||
const media = getState().getIn(['compose', 'media_attachments']);
|
const media = getState().getIn(['compose', 'media_attachments']);
|
||||||
const pending = getState().getIn(['compose', 'pending_media_attachments']);
|
const pending = getState().getIn(['compose', 'pending_media_attachments']);
|
||||||
const progress = new Array(files.length).fill(0);
|
const progress = new Array(files.length).fill(0);
|
||||||
|
|||||||
@ -59,7 +59,7 @@ const Option = ({ multipleChoice, index, title, autoFocus }) => {
|
|||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
const suggestions = useSelector(state => state.getIn(['compose', 'suggestions']));
|
const suggestions = useSelector(state => state.getIn(['compose', 'suggestions']));
|
||||||
const lang = useSelector(state => state.getIn(['compose', 'language']));
|
const lang = useSelector(state => state.getIn(['compose', 'language']));
|
||||||
const maxOptions = useSelector(state => state.getIn(['server', 'server', 'configuration', 'polls', 'max_options']));
|
const maxOptions = useSelector(state => state.getIn(['server', 'server', 'item', 'configuration', 'polls', 'max_options']));
|
||||||
|
|
||||||
const handleChange = useCallback(({ target: { value } }) => {
|
const handleChange = useCallback(({ target: { value } }) => {
|
||||||
dispatch(changePollOption(index, value, maxOptions));
|
dispatch(changePollOption(index, value, maxOptions));
|
||||||
|
|||||||
@ -10,7 +10,7 @@ const mapStateToProps = state => {
|
|||||||
const readyAttachmentsSize = state.getIn(['compose', 'media_attachments']).size ?? 0;
|
const readyAttachmentsSize = state.getIn(['compose', 'media_attachments']).size ?? 0;
|
||||||
const pendingAttachmentsSize = state.getIn(['compose', 'pending_media_attachments']).size ?? 0;
|
const pendingAttachmentsSize = state.getIn(['compose', 'pending_media_attachments']).size ?? 0;
|
||||||
const attachmentsSize = readyAttachmentsSize + pendingAttachmentsSize;
|
const attachmentsSize = readyAttachmentsSize + pendingAttachmentsSize;
|
||||||
const isOverLimit = attachmentsSize > state.getIn(['server', 'server', 'configuration', 'statuses', 'max_media_attachments'])-1;
|
const isOverLimit = attachmentsSize > state.getIn(['server', 'server', 'item', 'configuration', 'statuses', 'max_media_attachments'])-1;
|
||||||
const hasVideoOrAudio = state.getIn(['compose', 'media_attachments']).some(m => ['video', 'audio'].includes(m.get('type')));
|
const hasVideoOrAudio = state.getIn(['compose', 'media_attachments']).some(m => ['video', 'audio'].includes(m.get('type')));
|
||||||
const hasQuote = !!state.compose.get('quoted_status_id');
|
const hasQuote = !!state.compose.get('quoted_status_id');
|
||||||
|
|
||||||
|
|||||||
@ -107,7 +107,7 @@ const mapStateToProps = state => ({
|
|||||||
hasComposingContents: state.getIn(['compose', 'text']).trim().length !== 0 || state.getIn(['compose', 'media_attachments']).size > 0 || state.getIn(['compose', 'poll']) !== null || state.getIn(['compose', 'quoted_status_id']) !== null,
|
hasComposingContents: state.getIn(['compose', 'text']).trim().length !== 0 || state.getIn(['compose', 'media_attachments']).size > 0 || state.getIn(['compose', 'poll']) !== null || state.getIn(['compose', 'quoted_status_id']) !== null,
|
||||||
canUploadMore:
|
canUploadMore:
|
||||||
!state.getIn(['compose', 'media_attachments']).some(x => ['audio', 'video'].includes(x.get('type')))
|
!state.getIn(['compose', 'media_attachments']).some(x => ['audio', 'video'].includes(x.get('type')))
|
||||||
&& state.getIn(['compose', 'media_attachments']).size < state.getIn(['server', 'server', 'configuration', 'statuses', 'max_media_attachments']),
|
&& state.getIn(['compose', 'media_attachments']).size < state.getIn(['server', 'server', 'item', 'configuration', 'statuses', 'max_media_attachments']),
|
||||||
isUploadEnabled:
|
isUploadEnabled:
|
||||||
state.getIn(['compose', 'isDragDisabled']) !== true,
|
state.getIn(['compose', 'isDragDisabled']) !== true,
|
||||||
isWide: state.getIn(['local_settings', 'stretch']),
|
isWide: state.getIn(['local_settings', 'stretch']),
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user