translators icon indicating copy to clipboard operation
translators copied to clipboard

ProQuest Ebook Central: Broken on Firefox and Safari

Open adam3smith opened this issue 1 year ago • 3 comments

e.g. https://www.proquest.com/docview/2891926759/ (access varies by institution, this should be pretty common) Works on Edge/Chrome, broken on Firefox (and apparently Safari): https://forums.zotero.org/discussion/111856/proquest-not-recognizing-item-type#latest

adam3smith avatar Feb 15 '24 03:02 adam3smith

@adomasven, any idea what's going on here? The outer page is https://www.proquest.com, and it loads https://ebookcentral.proquest.com in an iframe.

  • The Chrome connector runs detection on the iframe and ProQuest Ebook Central matches, even though it doesn't have a targetAll. But nothing happens when I click Save to Zotero (D1114705680).
  • The Firefox connector runs detection on the iframe as well, but then it logs "Missing host permission for the tab or frames" and doesn't appear to be able to inject scripts into the iframe to run detectWeb. Nothing matches (D1353485621).

Adding targetAll to the translator doesn't change anything.

AbeJellinek avatar Feb 29 '24 20:02 AbeJellinek

See https://github.com/zotero/zotero-connectors/issues/156

Basically when we moved from the native Firefox extension to BrowserExt we had performance issues injecting the translation framework into every frame, so a number of changes followed. The current code injects the translator framework into the first iframe on the page, which works for the majority of cases where translation needs to run in the frame.

The Chrome connector runs detection on the iframe and ProQuest Ebook Central matches, even though it doesn't have a targetAll. But nothing happens when I click Save to Zotero (D1114705680).

I'm not seeing this. It saves fine for me.

The Firefox connector runs detection on the iframe as well, but then it logs "Missing host permission for the tab or frames" and doesn't appear to be able to inject scripts into the iframe to run detectWeb. Nothing matches (D1353485621).

This was broken in Firefox. There was actually a fix, but it didn't work. I've now updated the connector code to fix it properly. It's still broken in Safari, because we don't have the mechanism to run translation on the first frame there, but it may be possible to make it work. I've created an issue for that https://github.com/zotero/zotero-connectors/issues/463

adomasven avatar Mar 01 '24 10:03 adomasven

Adding targetAll to the translator doesn't change anything.

I see that we don't actually have a single translator with targetAll. I'm not sure if we can consider that feature working at this point, as we're not using or testing it.

adomasven avatar Mar 01 '24 10:03 adomasven