diff --git a/scipost/services.py b/scipost/services.py index 7fe098f6febac818824fee0f85333d86ba2b5e64..a0388e017c2a2efc2ee15a064337f654d8bd3a9c 100644 --- a/scipost/services.py +++ b/scipost/services.py @@ -257,7 +257,7 @@ class OSFPreprintsCaller: identifier=self.identifier, url=url, )) - if self._result_present(response_content['data']): + if self._result_present(response_content): self.is_valid = True self._osfpreprints_data = response_content['data'] self.metadata = response_content['data'] @@ -267,7 +267,7 @@ class OSFPreprintsCaller: osfpreprints_logger.info('GET [{identifier}] [response {valid}] | {response}'.format( identifier=self.identifier, valid='VALID' if self.is_valid else 'INVALID', - response=response_content['data'], + response=response_content, )) def _format_data(self): @@ -292,7 +292,9 @@ class OSFPreprintsCaller: 'identifier_w_vn_nr': identifier_w_vn_nr } - def _result_present(self, data): - if 'id' in data and data['id'] == self.identifier: + def _result_present(self, response_content): + if ('data' in response_content and + 'id' in response_content['data'] and + response_content['data']['id'] == self.identifier): return True return False diff --git a/submissions/forms.py b/submissions/forms.py index 71d976586eeaf52cb8975814342a46d38e5d5c01..65bbfb1b6e2c5268e454d77e2c0c46fc6255bc6e 100644 --- a/submissions/forms.py +++ b/submissions/forms.py @@ -52,10 +52,8 @@ import strings import iThenticate ARXIV_IDENTIFIER_PATTERN_NEW = r'^[0-9]{4,}\.[0-9]{4,5}v[0-9]{1,2}$' -CHEMRXIV_DOI_PATTERN = r'https://doi.org/10.26434/chemrxiv.[0-9]+.v[0-9]{1,2}$' -CHEMRXIV_IDENTIFIER_PATTERN = r'^[0-9]+\.v[0-9]{1,2}$' FIGSHARE_IDENTIFIER_PATTERN = r'^[0-9]+\.v[0-9]{1,2}$' -OSFPREPRINTS_IDENTIFIER_PATTERN = r'[a-z0-9]+$' +OSFPREPRINTS_IDENTIFIER_PATTERN = r'^[a-z0-9]+$' class SubmissionSearchForm(forms.Form):