diff --git a/src/components/RequestModal/MovieRequestModal.tsx b/src/components/RequestModal/MovieRequestModal.tsx index 4b5ae9e3bf..090544bfda 100644 --- a/src/components/RequestModal/MovieRequestModal.tsx +++ b/src/components/RequestModal/MovieRequestModal.tsx @@ -23,15 +23,14 @@ const messages = defineMessages({ requesttitle: 'Request {title}', request4ktitle: 'Request {title} in 4K', edit: 'Edit Request', - editAndApprove: 'Edit & Approve Request', + approve: 'Approve Request', cancel: 'Cancel Request', pendingrequest: 'Pending Request for {title}', pending4krequest: 'Pending 4K Request for {title}', requestfrom: "{username}'s request is pending approval.", errorediting: 'Something went wrong while editing the request.', requestedited: 'Request for {title} edited successfully!', - requestEditedAndApproved: - 'Request for {title} edited and approved successfully!', + requestApproved: 'Request for {title} approved!', requesterror: 'Something went wrong while submitting the request.', pendingapproval: 'Your request is pending approval.', }); @@ -159,7 +158,7 @@ const MovieRequestModal: React.FC = ({ } }; - const updateRequest = async (alsoAcceptRequest = false) => { + const updateRequest = async (alsoApproveRequest = false) => { setIsUpdating(true); try { @@ -172,15 +171,15 @@ const MovieRequestModal: React.FC = ({ tags: requestOverrides?.tags, }); - if (alsoAcceptRequest) { + if (alsoApproveRequest) { await axios.post(`/api/v1/request/${editRequest?.id}/approve`); } addToast( {intl.formatMessage( - alsoAcceptRequest - ? messages.requestEditedAndApproved + alsoApproveRequest + ? messages.requestApproved : messages.requestedited, { title: data?.title, @@ -211,8 +210,6 @@ const MovieRequestModal: React.FC = ({ if (editRequest) { const isOwner = editRequest.requestedBy.id === user?.id; - const canManageRequests = hasPermission(Permission.MANAGE_REQUESTS); - const canEditRequests = hasPermission(Permission.REQUEST_ADVANCED); return ( = ({ { title: data?.title } )} onOk={() => - canManageRequests + hasPermission(Permission.MANAGE_REQUESTS) ? updateRequest(true) - : canEditRequests + : hasPermission(Permission.REQUEST_ADVANCED) ? updateRequest() : cancelRequest() } okDisabled={isUpdating} okText={ - canManageRequests - ? intl.formatMessage(messages.editAndApprove) - : canEditRequests + hasPermission(Permission.MANAGE_REQUESTS) + ? intl.formatMessage(messages.approve) + : hasPermission(Permission.REQUEST_ADVANCED) ? intl.formatMessage(messages.edit) : intl.formatMessage(messages.cancel) } okButtonType={ - canManageRequests ? 'success' : canEditRequests ? 'primary' : 'danger' + hasPermission(Permission.MANAGE_REQUESTS) + ? 'success' + : hasPermission(Permission.REQUEST_ADVANCED) + ? 'primary' + : 'danger' } onSecondary={ - isOwner && (canManageRequests || canEditRequests) + isOwner && + hasPermission( + [Permission.REQUEST_ADVANCED, Permission.MANAGE_REQUESTS], + { type: 'or' } + ) ? () => cancelRequest() : undefined } secondaryDisabled={isUpdating} secondaryText={ - isOwner && (canManageRequests || canEditRequests) + isOwner && + hasPermission( + [Permission.REQUEST_ADVANCED, Permission.MANAGE_REQUESTS], + { type: 'or' } + ) ? intl.formatMessage(messages.cancel) : undefined } diff --git a/src/components/RequestModal/TvRequestModal.tsx b/src/components/RequestModal/TvRequestModal.tsx index 73292912fe..63e24e6141 100644 --- a/src/components/RequestModal/TvRequestModal.tsx +++ b/src/components/RequestModal/TvRequestModal.tsx @@ -30,7 +30,7 @@ const messages = defineMessages({ requesttitle: 'Request {title}', request4ktitle: 'Request {title} in 4K', edit: 'Edit Request', - editAndApprove: 'Edit & Approve Request', + approve: 'Approve Request', cancel: 'Cancel Request', pendingrequest: 'Pending Request for {title}', pending4krequest: 'Pending 4K Request for {title}', @@ -46,8 +46,7 @@ const messages = defineMessages({ extras: 'Extras', errorediting: 'Something went wrong while editing the request.', requestedited: 'Request for {title} edited successfully!', - requestEditedAndApproved: - 'Request for {title} edited and approved successfully!', + requestApproved: 'Request for {title} approved!', requestcancelled: 'Request for {title} canceled.', autoapproval: 'Automatic Approval', requesterror: 'Something went wrong while submitting the request.', @@ -99,7 +98,7 @@ const TvRequestModal: React.FC = ({ selectedSeasons.length + (editRequest?.seasons ?? []).length; - const updateRequest = async (alsoAcceptRequest = false) => { + const updateRequest = async (alsoApproveRequest = false) => { if (!editRequest) { return; } @@ -121,7 +120,7 @@ const TvRequestModal: React.FC = ({ seasons: selectedSeasons, }); - if (alsoAcceptRequest) { + if (alsoApproveRequest) { await axios.post(`/api/v1/request/${editRequest.id}/approve`); } } else { @@ -132,8 +131,8 @@ const TvRequestModal: React.FC = ({ {selectedSeasons.length > 0 ? intl.formatMessage( - alsoAcceptRequest - ? messages.requestEditedAndApproved + alsoApproveRequest + ? messages.requestApproved : messages.requestedited, { title: data?.name, @@ -361,7 +360,6 @@ const TvRequestModal: React.FC = ({ }; const isOwner = editRequest && editRequest.requestedBy.id === user?.id; - const canManageRequests = hasPermission(Permission.MANAGE_REQUESTS); return !data?.externalIds.tvdbId && searchModal.show ? ( = ({ onCancel={tvdbId ? () => setSearchModal({ show: true }) : onCancel} onOk={() => editRequest - ? canManageRequests + ? hasPermission(Permission.MANAGE_REQUESTS) ? updateRequest(true) : updateRequest() : sendRequest() @@ -402,8 +400,8 @@ const TvRequestModal: React.FC = ({ editRequest ? selectedSeasons.length === 0 ? intl.formatMessage(messages.cancel) - : canManageRequests - ? intl.formatMessage(messages.editAndApprove) + : hasPermission(Permission.MANAGE_REQUESTS) + ? intl.formatMessage(messages.approve) : intl.formatMessage(messages.edit) : getAllRequestedSeasons().length >= getAllSeasons().length ? intl.formatMessage(messages.alreadyrequested) @@ -431,7 +429,7 @@ const TvRequestModal: React.FC = ({ ? settings.currentSettings.partialRequestsEnabled && selectedSeasons.length === 0 ? 'danger' - : canManageRequests + : hasPermission(Permission.MANAGE_REQUESTS) ? 'success' : 'primary' : 'primary' diff --git a/src/i18n/locale/en.json b/src/i18n/locale/en.json index f6592eb53a..12cbb3f81b 100644 --- a/src/i18n/locale/en.json +++ b/src/i18n/locale/en.json @@ -223,10 +223,10 @@ "components.RequestModal.SearchByNameModal.nosummary": "No summary for this title was found.", "components.RequestModal.SearchByNameModal.notvdbiddescription": "We couldn't automatically match your request. Please select the correct match from the list below.", "components.RequestModal.alreadyrequested": "Already Requested", + "components.RequestModal.approve": "Approve Request", "components.RequestModal.autoapproval": "Automatic Approval", "components.RequestModal.cancel": "Cancel Request", "components.RequestModal.edit": "Edit Request", - "components.RequestModal.editAndApprove": "Edit & Approve Request", "components.RequestModal.errorediting": "Something went wrong while editing the request.", "components.RequestModal.extras": "Extras", "components.RequestModal.numberofepisodes": "# of Episodes", @@ -234,8 +234,8 @@ "components.RequestModal.pendingapproval": "Your request is pending approval.", "components.RequestModal.pendingrequest": "Pending Request for {title}", "components.RequestModal.request4ktitle": "Request {title} in 4K", + "components.RequestModal.requestApproved": "Request for {title} approved!", "components.RequestModal.requestCancel": "Request for {title} canceled.", - "components.RequestModal.requestEditedAndApproved": "Request for {title} edited and approved successfully!", "components.RequestModal.requestSuccess": "{title} requested successfully!", "components.RequestModal.requestadmin": "This request will be approved automatically.", "components.RequestModal.requestall": "Request All Seasons",