Commit graph

323 commits

Author SHA1 Message Date
Dan Stillman
9a41dc69fe Add PDF attachment properties to Zotero.Item
- .attachmentLastProcessedModificationTime
- .attachmentPageIndex
2021-03-02 17:58:27 -05:00
Dan Stillman
199619f40e Remove .noteSchemaVersion
This leaves item.note in place, rather than reverting all the
`getNote()` → `.note` changes. We can consider which we want to keep.
2021-03-02 17:36:05 -05:00
Dan Stillman
ebc53a2bbc Add noteSchemaVersion, and replace item.getNote() with .note
```
var noteContents = item.note; // was item.getNote()
var schemaVersion = item.noteSchemaVersion;

item.setNote(contents) // default to Zotero.Notes.schemaVersion
item.setNote(contents, schemaVersion) - explicit version
```
2021-03-02 17:36:05 -05:00
Dan Stillman
1c366de546 Initial annotation support 2021-03-02 17:36:05 -05:00
Dan Stillman
8026f744c5 Remove old HTML snapshot annotation support
Any data trapped in these tables hasn't been accessible in many years.
2021-03-02 17:36:04 -05:00
Dan Stillman
b54d4e78b7 Save createdByUserID and lastModifiedByUserID for group items 2021-03-02 17:36:04 -05:00
Dan Stillman
b2b909b42c Update submodules 2021-02-25 18:45:28 -05:00
Dan Stillman
e45ca4edad Support deleted property for collections and searches
This lays the groundwork for moving collections and searches to the
trash instead of deleting them outright. We're not doing that yet, so
the `deleted` property will never be set (except for items), but this
will allow clients from this point forward to sync collections and
searches with that property for when it's used in the future. For now,
such objects will just be hidden from the collections pane as if they
had been deleted.
2021-01-13 00:49:12 -05:00
Dan Stillman
80b8280e9d Update submodules 2021-01-10 14:58:37 -05:00
Dan Stillman
d5ac87648b Update submodules 2020-11-04 15:04:44 -05:00
Dan Stillman
93d3a4be7a Update translators 2020-10-15 17:42:38 -04:00
Dan Stillman
828ec4010e Don't allow items to be set as their own parents, and correct existing 2020-10-14 19:33:46 -04:00
Dan Stillman
dc41e82833 Update submodules 2020-10-03 17:51:07 -04:00
Dan Stillman
fa8e25eaca Update submodules 2020-07-22 18:40:20 -04:00
Dan Stillman
3e8f0af583 Schema upgrade debugging
Include flags in repo update checks indicating whether a database table
that was previously supposed to be removed was removed and whether a new
table was created. This should help us figure out whether we can safely
perform schema update steps or whether we need to figure out why some
schema update steps aren't being applied.
2020-06-21 03:08:03 -04:00
Dan Stillman
c1839596cf Update submodules 2020-06-12 13:50:55 -04:00
Dan Stillman
482b8b6f75 Update locales from Transifex 2020-06-11 04:21:07 -04:00
Dan Stillman
b2c03a9a3e Update submodules 2020-05-18 01:38:59 -04:00
Dan Stillman
b03a49ce33 Update submodules 2020-05-12 17:48:58 -04:00
Dan Stillman
849d52f1bb Update submodules 2020-05-09 03:20:53 -04:00
Dan Stillman
a416400036 Update locales from Transifex 2020-05-09 03:18:14 -04:00
Dan Stillman
595ba396ef Fix invalid relations from copying invalid feed item to collection
Prior to fdfa8052d1, it was possible to create an item in a feed
library using Add Item by Identifier. If you did that, and then copied
it to a collection in your personal library, it would somehow end up
with an owl:sameAs relation to a `/users/local` URI (probably because
the URI functions don't work properly on a feed library).

This will clean up such relations in a schema update.
2020-04-17 05:42:21 -04:00
Dan Stillman
7fe1dec173 Update translators 2020-03-23 16:05:26 -04:00
Dan Stillman
d95b507ea0 Update locales from Transifex 2020-03-23 16:05:26 -04:00
Dan Stillman
52d5b68564 Update 'type:' handling when migrating Extra lines
- When changing type based on 'type:' line, move existing fields that
  are no longer valid to Extra
- Remove 'type:' line with CSL type if the item's existing type is one
  of the types mapped to it
2020-03-22 15:19:24 -04:00
Dan Stillman
fe9f2ebe01 Update locales from Transifex 2020-02-24 18:48:09 -05:00
Dan Stillman
1a532d3915 Update submodules 2020-02-24 13:27:58 -05:00
Dan Stillman
c81ac1f642 Update global schema to fix "undefined" in Advanced Search "More" menu 2020-02-06 20:08:29 -05:00
Dan Stillman
e6ab5b8889 Update submodules 2020-01-21 19:23:41 -05:00
Dan Stillman
5276cef7d2 Update schema submodule and document chrome.manifest locale dependencies 2020-01-18 17:37:32 -05:00
Dan Stillman
1a790c0c3f Update submodules 2020-01-06 16:04:57 -05:00
Dan Stillman
f7d895ab52 Fix database after direct upgrade from Zotero 4 to 5.0.78-79 2019-12-03 14:03:22 -07:00
Dan Stillman
133b2b83d8 Update submodules 2019-12-01 01:51:55 -07:00
Dan Stillman
c6927643ab Update submodules 2019-11-30 01:17:11 -07:00
Dan Stillman
47d8a54600 Fix invalid tab characters in abbreviations.json
Regression from 1389d8917

(I'm not sure why there are spaces in the middle of this entry, but this
reverts it to what it was before.)
2019-11-23 00:49:21 -07:00
Dan Stillman
1389d89177 Pretty print abbreviations.json for easier editing and smaller diffs 2019-11-15 23:42:21 -05:00
Dan Stillman
d4f682aa88 Merge branch 'fx60' 2019-10-21 21:44:01 -04:00
Dan Stillman
85a9acd403 Update submodules 2019-10-14 01:41:13 -04:00
Dan Stillman
4e63cfd40e Update submodules 2019-10-08 01:10:34 -04:00
Dan Stillman
4b60c6ca27 Type/field handling overhaul
This changes the way item types, item fields, creator types, and CSL
mappings are defined and handled, in preparation for updated types and
fields.

Instead of being predefined in SQL files or code, type/field info is
read from a bundled JSON file shared with other parts of the Zotero
ecosystem [1], referred to as the "global schema". Updates to the
bundled schema file are automatically applied to the database at first
run, allowing changes to be made consistently across apps.

When syncing, invalid JSON properties are now rejected instead of being
ignored and processed later, which will allow for schema changes to be
made without causing problems in existing clients. We considered many
alternative approaches, but this approach is by far the simplest,
safest, and most transparent to the user.

For now, there are no actual changes to types and fields, since we'll
first need to do a sync cut-off for earlier versions that don't reject
invalid properties.

For third-party code, the main change is that type and field IDs should
no longer be hard-coded, since they may not be consistent in new
installs. For example, code should use `Zotero.ItemTypes.getID('note')`
instead of hard-coding `1`.

[1] https://github.com/zotero/zotero-schema
2019-09-16 02:27:22 -04:00
Dan Stillman
2b041ecfd4 Update submodules 2019-08-05 04:39:27 -04:00
Dan Stillman
88b01b7678 Update submodules 2019-07-23 15:12:55 -04:00
Dan Stillman
daf49bd89a Update submodules 2019-07-17 18:18:55 -04:00
Dan Stillman
054d3c9b6f Update submodules 2019-07-12 20:27:09 -04:00
Dan Stillman
0beddb9680 Add flags to disable retraction warnings
Separate flags for hiding the retraction altogether and for hiding
citation warnings for it

New functions:

Zotero.Retractions.hideRetraction(item)
Zotero.Retractions.shouldShowCitationWarning(item)
Zotero.Retractions.disableCitationWarningsForItem(item)

Addresses #1710
2019-07-03 01:23:02 -04:00
Dan Stillman
288ad93422 Fix startup error due to missing retractedItems table
This shouldn't be possible, but there've been a couple reports of people
ending up on version 103 without the table, so create it again with IF
NOT EXISTS. This is obviously a bad fix, but until we know how this
happened it's the best we can do.
2019-06-19 17:06:05 -04:00
Dan Stillman
a6d7b623ac Update submodules 2019-06-19 02:18:42 -04:00
Dan Stillman
dc670938a4 Update submodules 2019-06-14 11:18:04 -04:00
Dan Stillman
d7417af83e Update submodules 2019-06-10 15:00:55 -04:00
Dan Stillman
48580c49d1 Retraction Watch integration
- Check for retracted items using data from Retraction Watch
- Show an X next to retracted items in the items list, and show a
  scary message at the top of the item pane with more info and links.
- Lookup is done in a privacy-preserving manner using k-anonymity --
  the server is unable to determine the specific items that exist in
  the client, so people who don't sync don't need to share any library
  data (though the server doesn't log the lookups anyway).

TODO:

- Pop up an alert when new items are found
- Show a confirmation prompt when citing a retracted item
- Support items without DOIs or PMIDs
- Add a proper PMID field and expand DOI to more item types so these
  values don't need to be parsed out of Extra
- Clear the banner immediately when all possible fields are cleared
  instead of waiting a few seconds
2019-06-06 09:17:21 -04:00
Dan Stillman
679f22d089 What's all this, then? A British English locale? I say!
This adds "English (UK)" to the locale list, which allows for "tag
colours" and allows dates to be recognized in d/m/y form.

I changed "color" and "license" on Transifex, but I'll leave other words
for others to change. If we stick to Oxford spelling, there probably
won't be too much else.
2019-04-16 03:33:30 -04:00
Dan Stillman
8cadbe7eff Update locales from Transifex and submodules 2019-04-11 20:20:50 -04:00
Dan Stillman
6abf64943b Update submodules 2019-03-09 16:25:30 -05:00
Dan Stillman
ef4866f97b Update renamed-styles.json 2019-03-05 21:17:45 -05:00
Dan Stillman
9cdfe8e01c Update submodules 2019-03-05 21:17:14 -05:00
Dan Stillman
7cfac023fa Update renamed styles 2019-01-10 00:55:05 -05:00
Dan Stillman
01b974abf2 Update submodules 2019-01-10 00:37:47 -05:00
Dan Stillman
559881b896 Update submodules 2018-12-18 21:17:48 -05:00
Dan Stillman
f8acc0b10d Update submodules 2018-11-12 01:07:30 -05:00
Dan Stillman
9a8c676ed9 Update submodules 2018-10-23 17:08:46 -04:00
Dan Stillman
28e1d7dfb6 Update submodules 2018-10-21 02:17:57 -04:00
Dan Stillman
f3964972ff Update translators 2018-10-09 17:58:27 -04:00
Dan Stillman
7ecaab73a0 Update submodules 2018-10-07 21:30:34 -04:00
Dan Stillman
e57e297156 Update submodules 2018-09-26 19:00:05 -04:00
Dan Stillman
d6095a4eac Update submodules 2018-08-30 16:52:24 -04:00
Dan Stillman
26056c87f1 Fix non-integer userID in settings table
A submitted database had a text userID with a trailing "A0. Not sure how
that happened -- it doesn't appear to be possible in current code -- but
it caused group permissions not to be properly synced.
2018-08-09 03:30:47 -04:00
Dan Stillman
868a21b7e7 Update renamed styles 2018-08-07 04:58:15 -04:00
adam3smith
94dde661f7 remove Moscow from biochemistry 2018-07-30 00:40:08 -04:00
adam3smith
a8521d2712 fix abbreviation for http://www.ncbi.nlm.nih.gov/nlmcatalog/7505598 (following NLM) 2018-07-30 00:40:03 -04:00
Dan Stillman
2ebc78adc0 Update submodules 2018-07-07 13:04:49 +02:00
Dan Stillman
c26bd73895 Update translators 2018-06-20 17:09:11 -04:00
Dan Stillman
72481b072e Clean up extra files from Mendeley imports
Follow-up to cdee741a6
2018-06-16 03:07:46 -04:00
Dan Stillman
79d7c15d4f Update translators 2018-06-12 07:54:20 -04:00
Dan Stillman
e46f1d06e0 Update submodules 2018-06-05 05:46:41 -04:00
Dan Stillman
05843bb093 Fix base fields in connectorTypeSchemaData.js 2018-05-10 02:26:44 -04:00
Dan Stillman
5751838a3d Update submodules 2018-05-09 04:20:41 -04:00
Dan Stillman
6b4bce8754 Update submodules 2018-04-29 03:54:24 -04:00
Dan Stillman
bf26c230be Update submodules 2018-04-16 14:58:37 -04:00
Dan Stillman
b600885d11 Update translators 2018-03-27 03:10:56 -04:00
Dan Stillman
c96363746b Fix related-item relations pointing to a previous user account
If somebody switched accounts in a previous version, it was apparently
possible for related items to end up pointing at an item URI with the
old userID, which could cause a 403 on sync.

https://forums.zotero.org/discussion/70989/report-id-477331252

(5.0 deletes data when switching accounts to avoid exactly this sort of
bug.)
2018-03-26 02:12:20 -04:00
Dan Stillman
c71f657b08 Update translators 2018-03-20 15:31:58 -07:00
Dan Stillman
5f6de1c787 Update submodules 2018-03-09 14:35:41 -05:00
Dan Stillman
51ddc46322 Update translators 2018-03-05 18:10:17 -05:00
Dan Stillman
16f228b2a3 Update renamed styles 2018-02-28 04:31:22 -05:00
Dan Stillman
eca9d82aa2 Update submodules 2018-01-29 17:22:35 -05:00
Dan Stillman
e3dee4dee7 Update translators 2018-01-17 01:15:31 -05:00
Dan Stillman
09fc3c2b1c Update submodules 2018-01-11 20:20:32 -05:00
Dan Stillman
5847388862 Add schema update step to remove dc:isReplacedBy relations
These should've all been replaced with dc:replaces relations in a schema
update step, so any that exist were likely synced down from the API
(since fixed) and should be obsolete/redundant.
2018-01-05 02:53:27 -05:00
Dan Stillman
90d948a6bc Update submodules 2017-12-13 21:33:00 -05:00
Dan Stillman
8f98398dfd Update submodules 2017-12-03 15:20:35 -05:00
Dan Stillman
bbad56a32a Update submodules 2017-11-27 20:48:24 -05:00
Dan Stillman
d4ae63ff0d Update submodules 2017-11-22 03:15:37 -05:00
Dan Stillman
48928deba4 Update submodules 2017-11-17 09:37:54 -05:00
Dan Stillman
20ad57a368 Update submodules 2017-11-12 18:47:32 -05:00
Dan Stillman
56289b6693 Update submodules 2017-10-25 23:56:12 -04:00
Dan Stillman
45357bdb85 Update submodules 2017-10-17 21:05:52 -04:00
Dan Stillman
5f413b2ff3 Update submodules 2017-09-30 19:10:05 -04:00
Dan Stillman
da21c9c47b Remove old archive.org relations
These aren't allowed by the API and were breaking syncing (and haven't
been exposed anywhere for years anyway).
2017-09-22 16:58:16 -04:00
Dan Stillman
a455a72534 Remove invalid relations mangled during import
Not sure if this occurred for our own translators, but it addresses
items created from #1282.
2017-09-22 01:22:33 -04:00
Dan Stillman
d2a33f2613 Update submodules 2017-09-18 01:37:26 -04:00