DOAJ/doaj

If you have a bug report or technical question for us, please open a new issue!

Opened this issue · 11 comments

With the implementation of the GDPR recommendations and because the DOAJ Project Team deals necessarily with personal data, we have migrated all of the open DOAJ development tasks to a private GitHub repository.

The source code for DOAJ is still open source and we very much encourage members of the community to submit GitHub tickets to us here.

There are already two container issues here which are provided for information: #1543 and #1560

Hi,
I have a question regarding a recent change to the schema of the public data dumps.
In the past the license data for the journals had this structure:

"license": [
  {
    "embedded_example_url": "http://onlinelibrary.wiley.com/doi/10.7448/IAS.20.1.21188/abstract",
    "NC": false,
    "ND": false,
    "BY": true,
    "open_access": true,
    "title": "CC BY",
    "type": "CC BY",
    "embedded": true,
    "url": "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1758-2652/homepage/open_access_license_and_copyright.htm",
    "SA": false
  }
]

in more recent dumps I see that the structure is like the following:

"license": [
  {
    "NC": true,
    "ND": true,
    "BY": true,
    "type": "CC BY-NC-ND",
    "SA": false
  }
]

was the "open_access" flag moved or renamed? Is it possible to get that information in any way?

Thanks for your question @jgonzalez198311 I have transferred this to the dev team and we will respond as soon as we can.

Hello.
I have a question regrading difficulty with installation/setup.

I have followed the setup instructions (onto a new ubuntu VM) and can browse the home page and created the administrator user as per the readme file. However when I attempt to login I just get hit with a 401 Unauthorised type error. A quick check in the elastic index shows that the administrator user exists. My colleagues have also tried their own setups and seem to get the same issue. Has anyone else experienced the same problem?

Additional Info
The password is correct since and incorrect one will show the message (The password you entered is incorrect).
Settings.py is defauly except for SSL = False

Navigate to home page -> Click Login and then enter credentials. Submit and get 401 error as per the screenshot below

Kind Regards

doaj

Update: To answer my own question here, the issue we found was to do with the following settings, given we were running locally without security enabled. It failed silently, but by reducing the 'strict' settings to 'lax' this seemed to do the trick for us.

SESSION_COOKIE_SAMESITE='Lax'
#'Strict'
SESSION_COOKIE_SECURE=False

Hello @AustinEmerald - thanks for logging this and the solution. Our developers confirms this as the right course of action.

Best, Dom

Hello,

I recently came across the DOAJ and wanted to have a poke around, but the search functionality of the site seems to be broken. I am running the latest version of Firefox with Enhanced Tracking Protection on (though disabling it does not fix the issue).

borked

I had a poke around with the developer tools and established that there are a couple of uncaught syntax errors being generated, weirdly enough, at line 1, column 1 of the page itself. I suspect some script or another is under the impression that the page is valid JS...

Hi @EnronEvolved Thanks for taking the time to log this with us. We weren't able to reproduce this even using FF and Enhanced Protection TRacking. Could you go back and open the network tab in the Developer Tools and let me know if yu see any errors there? If so, can you put the details of that error here?

It seems that my reply to this issue by email never got attached to the issue. Here it is:

The network tab indicates that plausible.io analytics are blocked by uBlock Origin (though that probably shouldn't break the search functionality), and that there are four 403 errors associated with jQuery callbacks to doaj.org/query/article.

Hi @EnronEvolved

Thanks for following up!

You are seeing the 403 forbidden because the request from the front end wasn't acceptable. The public query endpoint has certain protections that prevent invalid requests, so it must be triggering one of those.

Can you send us an example of a request from the Network tab that comes back with a 403? We need the actual URL that they sent which responded with the 403 so we can track it in our logs. Thank you!

Here's one (IIRC, the first rejected request):

{
	"GET": {
		"scheme": "https",
		"host": "doaj.org",
		"filename": "/query/article/_search",
		"query": {
			"callback": "jQuery34102712895576813664_1714058599225",
			"source": "{\"query\":{\"match_all\":{}},\"size\":0,\"aggs\":{\"subject\":{\"terms\":{\"field\":\"index.schema_codes_tree.exact\",\"size\":9999,\"order\":{\"_count\":\"desc\"}}}},\"track_total_hits\":true}",
			"_": "1714058599226"
		},
		"remote": {
			"Address": "172.67.193.174:443"
		}
	}
}

and, for good measure, the full response:

{
	"Response Headers (589 B)": {
		"headers": [
			{
				"name": "access-control-allow-origin",
				"value": "*"
			},
			{
				"name": "alt-svc",
				"value": "h3=\":443\"; ma=86400"
			},
			{
				"name": "cf-cache-status",
				"value": "BYPASS"
			},
			{
				"name": "cf-ray",
				"value": "879f5568bee29418-LHR"
			},
			{
				"name": "content-encoding",
				"value": "br"
			},
			{
				"name": "content-type",
				"value": "text/html; charset=utf-8"
			},
			{
				"name": "date",
				"value": "Thu, 25 Apr 2024 15:23:19 GMT"
			},
			{
				"name": "nel",
				"value": "{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"
			},
			{
				"name": "report-to",
				"value": "{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v4?s=Q6rAUhbiUJyX359IXJLSinXAcJzc0eB8%2BrihAoihfIKF3ljzAHxM7vxIfYD2aIASfmcqIPtM8vGmOc5RPKtdVKnzSBc0vUgnI2IFQ3jgWQOdDXoYZVOlW4TuxQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"
			},
			{
				"name": "server",
				"value": "cloudflare"
			},
			{
				"name": "vary",
				"value": "Accept-Encoding"
			}
		]
	}
}

Hi there @EnronEvolved We took a look at this and recreated the search URL you used.

The query itself is fine, but the request is missing a required parameter ref which should have the value public_article.

We can see that it's set in the page and we have been able to see our browsers passing this value through to the back end, so we're not sure why your browser wouldn't be.

How are you creating the search?

Ah, I see. I have ClearURLs running, disabling the filter fixed it. Thanks for your help!