diff --git a/cms/sass/themes/_dashboard.scss b/cms/sass/themes/_dashboard.scss index 2c0037f74d..5d68af6374 100644 --- a/cms/sass/themes/_dashboard.scss +++ b/cms/sass/themes/_dashboard.scss @@ -176,7 +176,6 @@ // Application form styles — overrides .form { padding: $spacing-04 0; - background: rgba($salmon, .15); } .form--compact { diff --git a/doajtest/testbook/new_application_form/maned_form.yml b/doajtest/testbook/new_application_form/maned_form.yml index 10c524df2a..82c7fdf388 100644 --- a/doajtest/testbook/new_application_form/maned_form.yml +++ b/doajtest/testbook/new_application_form/maned_form.yml @@ -48,7 +48,10 @@ tests: results: - A message at the top of the form tells you that you can only choose one or two subject classifications - - step: Remove one subject classification and 'Save' + - step: Remove one subject classification + - step: Click "Unlock & Close" + results: Confirmation dialog is displayed warning you about unsaved changes + - step: Click "Stay on Page" and then 'Save' results: - The form saves - The changes you applied, both to the form, and in the functionality box, have diff --git a/portality/settings.py b/portality/settings.py index acbb0ab23f..6259ed09b6 100644 --- a/portality/settings.py +++ b/portality/settings.py @@ -9,7 +9,7 @@ # Application Version information # ~~->API:Feature~~ -DOAJ_VERSION = "6.6.8" +DOAJ_VERSION = "6.6.10" API_VERSION = "3.0.1" ###################################### diff --git a/portality/static/js/application_form.js b/portality/static/js/application_form.js index 3944845669..54fd313368 100644 --- a/portality/static/js/application_form.js +++ b/portality/static/js/application_form.js @@ -460,7 +460,6 @@ doaj.af.EditorialApplicationForm = class extends doaj.af.BaseApplicationForm { event.preventDefault(); let id = $(this).attr("data-id"); let type = $(this).attr("data-type"); - that.submitting = true; that.unlock({type : type, id : id}) }); @@ -477,7 +476,7 @@ doaj.af.EditorialApplicationForm = class extends doaj.af.BaseApplicationForm { // ignore any "view note" modal close button hits // FIXME: I don't love this, it feels brittle, but I don't have a better solution let exceptClasses = ["formulaic-notemodal-close"]; - let exceptIds = ["open_withdraw_reinstate"]; + let exceptIds = ["open_withdraw_reinstate", "unlock"]; let excepted = false; for (let i = 0; i < exceptClasses.length; i++) { if ($(event.currentTarget).hasClass(exceptClasses[i])) { diff --git a/portality/static/js/doaj.fieldrender.edges.js b/portality/static/js/doaj.fieldrender.edges.js index b82822cfbc..dc3138e4f8 100644 --- a/portality/static/js/doaj.fieldrender.edges.js +++ b/portality/static/js/doaj.fieldrender.edges.js @@ -3506,7 +3506,9 @@ $.extend(true, doaj, { if (dir === undefined) { dir = ""; } - dir = " " + dir; + if (dir !== "") { + dir = " " + dir; + } sortOptions += ''; } diff --git a/portality/templates/application_form/editorial_form_body.html b/portality/templates/application_form/editorial_form_body.html index cb2db92565..9750c1ceff 100644 --- a/portality/templates/application_form/editorial_form_body.html +++ b/portality/templates/application_form/editorial_form_body.html @@ -5,8 +5,7 @@ {% import "application_form/_application_warning_msg.html" as _msg %} {% if obj and (obj.es_type == 'journal' and obj.is_in_doaj()) %} {{ _msg.build_journal_withdrawn_deleted_msg(obj) }} - See this - journal in DOAJ + See this journal in DOAJ {% endif %} diff --git a/portality/ui/messages.py b/portality/ui/messages.py index cd64ac3e97..1e14fba93e 100644 --- a/portality/ui/messages.py +++ b/portality/ui/messages.py @@ -7,9 +7,9 @@ class Messages(object): PUBLISHER_APPLICATION_UPDATE_SUBMITTED_FLASH = (""" Your update request has been submitted. You may make further changes until the DOAJ Editorial Team picks it up - for review. Click the 'Edit' button to make further changes, or 'Delete' to cancel the request. + for review. Click the 'Edit' button to make further changes or 'Delete' to cancel the request. """, 'success') - PUBLISHER_UPLOAD_ERROR = """An error has occurred and your upload may not have succeeded. {error_str}
If the problem persists please report the issue with the ID: {id}""" + PUBLISHER_UPLOAD_ERROR = """An error has occurred and your upload may not have succeeded. {error_str}
If the problem persists, please send the error details from the Notes column of the History of Uploads box below and a screenshot of the entire error message""" NO_FILE_UPLOAD_ID="""No file upload record has been specified""" ARTICLE_METADATA_SUBMITTED_FLASH = ("Article created/updated", "success") @@ -50,7 +50,7 @@ class Messages(object): EXCEPTION_ARTICLE_BATCH_DUPLICATE = "One or more articles in this batch have duplicate identifiers" EXCEPTION_ARTICLE_BATCH_FAIL = "One or more articles failed to ingest; entire batch ingest halted" EXCEPTION_ARTICLE_BATCH_CONFLICT = "One or more articles in this batch matched multiple articles as duplicates; entire batch ingest halted" - EXCEPTION_DETECT_DUPLICATE_NO_ID = "The article you provided has neither doi nor fulltext url, and as a result cannot be deduplicated" + EXCEPTION_DETECT_DUPLICATE_NO_ID = "The article you provided has neither doi nor fulltext URL, and as a result cannot be deduplicated" EXCEPTION_ARTICLE_MERGE_CONFLICT = "The article matched multiple existing articles as duplicates, and we cannot tell which one to update" EXCEPTION_NO_DOI_NO_FULLTEXT = "The article must have a DOI and/or a Full-Text URL" EXCEPTION_ARTICLE_OVERRIDE = "Cannot update the article. An article with this URL and DOI already exists. If you are sure you want to replace it please delete it and then re-create it." @@ -63,13 +63,13 @@ class Messages(object): EXCEPTION_TOO_MANY_ISSNS = "Too many ISSNs. Only 2 ISSNs are allowed: one Print ISSN and one Online ISSN." EXCEPTION_MISMATCHED_ISSNS = "ISSNs provided don't match any journal." EXCEPTION_ISSNS_OF_THE_SAME_TYPE = "Both ISSNs have the same type: {type}" - EXCEPTION_IDENTICAL_PISSN_AND_EISSN = "The Print and Online ISSNs supplied are identical. If you supply 2 ISSNs they must be different." - EXCEPTION_NO_ISSNS = "Neither Print ISSN nor Online ISSN has been supplied. DOAJ requires at least one ISSN." + EXCEPTION_IDENTICAL_PISSN_AND_EISSN = "The Print and Online ISSNs supplied are identical. If you supply two ISSNs, they must be different." + EXCEPTION_NO_ISSNS = "Neither the Print ISSN nor Online ISSN have been supplied. DOAJ requires at least one ISSN." EXCEPTION_INVALID_BIBJSON = "Invalid article bibjson: " # + Dataobj exception message EXCEPTION_IDENTIFIER_CHANGE_CLASH = "DOI or Fulltext URL has been changed to match another article that already exists in DOAJ" - EXCEPTION_IDENTIFIER_CHANGE = "DOI or Fulltext URL have been changed. This operation is not permitted, please contact an administrator for help." - EXCEPTION_DUPLICATE_NO_PERMISSION = "You do not have the permissions to carry out the requested change" + EXCEPTION_IDENTIFIER_CHANGE = "Either the DOI or Fulltext URL has been changed. This operation is not permitted; please contact an administrator for help." + EXCEPTION_DUPLICATE_NO_PERMISSION = "You do not have permission to carry out the requested change" EXCEPTION_EDITING_ACCEPTED_JOURNAL = "You cannot edit applications which have been accepted into DOAJ." EXCEPTION_EDITING_WITHDRAWN_JOURNAL = "This journal has been withdrawn, update request cannot be accepted." @@ -84,7 +84,7 @@ class Messages(object): If you would like to see more results, you can download all of our data from {data_dump_url}. You can also harvest from our OAI-PMH endpoints; articles: {oai_article_url}, journals: {oai_journal_url}""" - CONSENT_COOKIE_VALUE = """By using the DOAJ website you have agreed to our cookie policy.""" + CONSENT_COOKIE_VALUE = """By using our website, you have agreed to our cookie policy.""" FORMS__APPLICATION_PROCESSORS__NEW_APPLICATION__FINALISE__USER_EMAIL_ERROR = "We were unable to send you an email confirmation - possible problem with the email address provided" FORMS__APPLICATION_PROCESSORS__NEW_APPLICATION__FINALISE__LOG_EMAIL_ERROR = 'Error sending application received email.' @@ -127,7 +127,7 @@ class Messages(object): FORMS__APPLICATION_STATUS__REJECTED = 'Rejected' FORMS__APPLICATION_STATUS__ACCEPTED = 'Accepted' - JOURNAL_CSV_VALIDATE__HEADER_CASE_MISMATCH = '"{h}" has mismatching case to expected header "{expected}".' + JOURNAL_CSV_VALIDATE__HEADER_CASE_MISMATCH = '"{h}" has a mismatching case to the expected header "{expected}".' JOURNAL_CSV_VALIDATE__INVALID_HEADER = '"{h}" is not a valid column header. Please revert it to match what was sent to you in the original file.' JOURNAL_CSV_VALIDATE__REQUIRED_HEADER_MISSING = '"{h}" is a required column missing from this upload. Please refer to the original file and restore the column.' JOURNAL_CSV_VALIDATE__MISSING_JOURNAL = "There is no journal record in DOAJ for ISSN(s) {issns}. The record may not exist, or it may be withdrawn." diff --git a/portality/view/publisher.py b/portality/view/publisher.py index 86cd10bfdc..81388e583b 100644 --- a/portality/view/publisher.py +++ b/portality/view/publisher.py @@ -212,9 +212,8 @@ def upload_file(): job = IngestArticlesBackgroundTask.prepare(current_user.id, upload_file=f, schema=schema, url=url, previous=previous) IngestArticlesBackgroundTask.submit(job) except TaskException as e: - magic = str(uuid.uuid1()) - flash(Messages.PUBLISHER_UPLOAD_ERROR.format(error_str="", id=magic)) - app.logger.exception('File upload error. ' + magic) + flash(Messages.PUBLISHER_UPLOAD_ERROR.format(error_str=str(e))) + app.logger.exception('File upload error. ' + str(e)) return resp except BackgroundException as e: if str(e) == Messages.NO_FILE_UPLOAD_ID: @@ -223,10 +222,8 @@ def upload_file(): schema = "" return render_template('publisher/uploadmetadata.html', previous=previous, schema=schema, error=True) - - magic = str(uuid.uuid1()) - flash(Messages.PUBLISHER_UPLOAD_ERROR.format(error_str=str(e), id=magic)) - app.logger.exception('File upload error. ' + magic + '; ' + str(e)) + flash(Messages.PUBLISHER_UPLOAD_ERROR.format(error_str=str(e))) + app.logger.exception('File upload error. ' + str(e)) return resp if f is not None and f.filename != "": diff --git a/setup.py b/setup.py index a4e6cc021c..bd8f7df246 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ setup( name='doaj', - version='6.6.8', + version='6.6.10', packages=find_packages(), install_requires=[ "awscli==1.20.50",