Commit graph

6115 commits

Author SHA1 Message Date
Dan Stillman
d5a8a3420d Additional locale service updates for Firefox 54 compatibility
Follow-up to 0ac37ab65a
2017-05-26 01:37:54 -04:00
Dan Stillman
7fc188b172 Fix crashing for some actions in duplicate items
Necessary after more strict error handling in c4411e1ad3
2017-05-24 18:24:26 -04:00
Dan Stillman
8bc76dd2db Restore logging of unhandled errors from Bluebird (since 9aa057edee) 2017-05-24 18:24:26 -04:00
Dan Stillman
aa321f3495 Add example async/await to test Babel transform 2017-05-24 00:59:45 -04:00
Dan Stillman
6afc58a629 Move require() into ZoteroContext and fix Bluebird module path 2017-05-24 00:58:41 -04:00
Dan Stillman
319edae7f2 Update citeproc-js to 1.1.169 2017-05-23 17:39:10 -04:00
Tom Najdek
9aa057edee Introduce a build system
* Add a multi-process, gulp-based build system to support es6 features,
  async/await, jsx and scss
* Add a package.json to support dependency management and allow starting
  the build process via npm
* Replace embedded Bluebird library with npm-installed one
* Add react, react-dom and web-library
* Introduce a custom require() loader in include.js as well as a minimal
  local require() implementation in various other places
2017-05-23 17:02:50 +01:00
Dan Stillman
e1fb28faa9 Convert some object ids from strings to integers after 4e1937680 2017-05-23 02:10:26 -04:00
Dan Stillman
4e1937680f Throw error if non-number is passed to Zotero.DataObjects.getAsync()
Previously, if an id was psased as a string and the id existed in the
cache, an error wouldn't be thrown, but if there id wasn't in the cache
(e.g., because it was in an unloaded library) it would. This requires an
integer in all cases.

Note that, among other things, any code that gets ids from object keys
will need to convert them to integers before passing to getAsync().
2017-05-23 02:04:58 -04:00
Dan Stillman
265df6d48c Skip edit check if skipAll is passed to object save 2017-05-22 17:29:56 -04:00
Dan Stillman
0ac37ab65a Firefox 54 compatiblity for locale service
Services.locale.getApplicationLocale() -> getAppLocale()
(nsILocaleService -> mozILocaleService)

It's possible this will fix some of the locale resolution problems in
Standalone:

"This is actually a meaningful change because the old one was actually
using OS locale for platforms other than Windows. The new one is using
the app locale for all platforms." [1]

[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1346674#c0
2017-05-22 06:09:25 -04:00
Dan Stillman
1b8704f133 Firefox 54 compatibility: File.createFromFileName() returns a promise 2017-05-22 06:04:27 -04:00
Dan Stillman
a3eea03a38 Firefox 54 compatibility: rename "new" and "delete" XBL methods 2017-05-22 06:03:14 -04:00
Dan Stillman
ddc9989d82 Fix refresh when opening related-item box in note editor 2017-05-19 12:36:03 -04:00
Dan Stillman
1cbc2440ec Make a missing related item not fatal
Since item relations are synced with individual items, an item can exist
before the item it's related to has been downloaded.
2017-05-19 12:11:58 -04:00
Dan Stillman
fc4eb5308f Remove related-item relations when deleting item 2017-05-19 12:11:51 -04:00
Dan Stillman
8edd8830da Remove reference to 'publications' library type in URI.getLibraryPath() 2017-05-19 12:11:21 -04:00
Dan Stillman
90a27f8d4b Add Zotero.URI.getURIItemLibraryKeyFromDB()
Allows getting libraryID and key without relying on library data being
loaded (e.g., at startup)
2017-05-19 12:11:21 -04:00
Dan Stillman
5873e554f1 Allow functions for testing and repair in DB integrity checks
This can be used for things that can't be checked or repaired with SQL
alone, or that are too difficult to do that way.
2017-05-19 12:11:14 -04:00
Dan Stillman
caf61bec2f Use COUNT(*) > 1 for DB integrity check queries 2017-05-19 06:33:03 -04:00
Dan Stillman
cf125435fb Update citeproc-js to 1.1.167 2017-05-19 04:51:20 -04:00
Dan Stillman
05dcc11a8d Update localized string name
Most localizations still say "Firefox" for this string, so this will
clear those.
2017-05-17 21:41:40 -04:00
Dan Stillman
d9fbccca67 Add item sanity check to note editor
When refreshing the note editor, store the associated itemID on the
textbox, and check it when saving to make sure it's for the expected
note. This might prevent weird situations (which I can't reproduce, but
there was a report in the forums [1]) where something goes wrong and the
note doesn't refresh when selecting a new item, and then one note's
content is saved over another's.

[1] https://forums.zotero.org/discussion/65708/
2017-05-17 21:41:40 -04:00
Dan Stillman
c4411e1ad3 Crash app if there's an error selecting an item 2017-05-17 21:41:39 -04:00
Adomas Venčkauskas
182cf67a97 Fix wrong localization arg passing 2017-05-15 18:26:41 +03:00
Dan Stillman
7e95f8fc51 Use proper alerts for export errors 2017-05-14 05:07:18 -04:00
Dan Stillman
e1986b460e Fix failed export due to missing attachment path 2017-05-14 05:06:37 -04:00
Dan Stillman
eb42152c42 UI fixes for read-only notes
- Don't show toolbar in read-only note editor
- Get rid of "undefined" button in CR window
- Better padding/alignment in CR window
2017-05-12 20:01:47 -04:00
Dan Stillman
be7cc45c0e Better debug logging for CR error 2017-05-12 17:53:19 -04:00
Dan Stillman
a92d469466 Remove accidental 'false' in 20121b9b9 2017-05-12 06:16:29 -04:00
Dan Stillman
20121b9b97 Fix tag selector tests (broken in 5963c02db) 2017-05-12 06:13:02 -04:00
Dan Stillman
5963c02dbb Fix "Display All Tags in This Library" (broken in fe186333b) 2017-05-12 05:37:46 -04:00
Dan Stillman
9de6a55bce Better approach to opening files after on-demand downloads
Follow-up to 44507ce20b
2017-05-11 01:26:46 -04:00
Dan Stillman
b3acb12973 Don't show Modified if attachment is missing 2017-05-11 01:07:21 -04:00
Dan Stillman
44507ce20b Prevent conflicting file downloads on double double-click 2017-05-11 01:05:55 -04:00
Dan Stillman
60810ea0a0 Fix access date without time coming from sync 2017-05-11 00:44:37 -04:00
Dan Stillman
a207e388db Fix attachment download progress pies 2017-05-10 23:27:28 -04:00
Dan Stillman
5b5da4140b Display connection error when linking sync account 2017-05-10 02:32:21 -04:00
Dan Stillman
b60fdacd3f Fix whitespace and description in build_typeSchemaData.html 2017-05-08 18:51:50 -04:00
Adomas Venčkauskas
e1f09d4655 Remove unneeded connector files, update connectorTypeSchemaData.js
Addresses zotero/zotero-connectors#121
2017-05-08 14:38:03 +03:00
Adomas Venčkauskas
dbeecb9b0a Make itemFromCSLJSON independent of Zotero.Item existance.
Addresses !zotero/zotero-connectors#121"
2017-05-08 09:24:34 +03:00
Adomas Venčkauskas
746171ab78 Fix doc.prefs.noteType handling with NaN values 2017-05-08 09:24:34 +03:00
Dan Stillman
c0a47713f3 Remove extra argument in removeAttribute() 2017-05-07 23:45:33 -04:00
Dan Stillman
4273f14fe1 Optimize items list refreshing
When refreshing, keep the previous list intact, removing only the items
that aren't in the new list and sorting only the newly added items.
2017-05-07 23:36:28 -04:00
Dan Stillman
e0e22225bc Fix entering date without time into Accessed
https://forums.zotero.org/discussion/65560/5-0-beta-accessed-field-changes-dates
2017-05-05 17:59:53 -04:00
Adomas Venčkauskas
b679adad45 Potential bugfixery for #1218 2017-05-05 14:53:55 +03:00
Dan Stillman
7a51f5e3cc Update citeproc-js to 1.1.165 2017-05-05 05:20:03 -04:00
Adomas Venčkauskas
b80cdb2915 A couple more changes to document prefs dialog 2017-05-05 11:19:34 +03:00
Dan Stillman
43d12ee3b7 Remove debugging 2017-05-05 03:27:15 -04:00
Dan Stillman
40da5f61a0 Still process downloads if uploads fail for a library 2017-05-05 03:26:29 -04:00
Dan Stillman
021cfa8b3b Better debug output for objects in sync queue skipped for uploading 2017-05-05 01:38:09 -04:00
Dan Stillman
2f0391fb9c Clean up some comments and debug lines 2017-05-05 01:06:00 -04:00
Dan Stillman
a1bd2bace5 Remove objects from sync queue if missing from response
While objects in the sync queue that fail to save should remain in the
queue, objects that just don't exist remotely need to be removed, or
else they'll be retried forever.
2017-05-05 01:04:16 -04:00
Dan Stillman
ad9c2ed36c Use coroutine() in Zotero.Sync.Data.Engine::_downloadObjects() 2017-05-05 00:30:00 -04:00
Dan Stillman
b30e168c21 Add Zotero.Utilities.pluralize()
This makes it a little easier to use the proper plural form of a word.
Currently this only supports English forms and is used only in debug
output. For proper plural form support, use PluralForm.jsm.
2017-05-05 00:21:30 -04:00
Dan Stillman
397ea5875a Use Set for arrayUnique 2017-05-05 00:18:35 -04:00
Dan Stillman
2eef1702e0 Prevent items in group libraries from being added to My Publications
And remove existing group items that have been added
2017-05-04 21:18:44 -04:00
Dan Stillman
3561864542 Ignore drags to tag selector background
This was causing tags to be created with the text of all tags.
2017-05-04 13:51:16 -04:00
Dan Stillman
697937a72c Make file sync timestamp comparison a little more lenient
There was a report [1] of slow file syncing that showed all file
timestamps being reported as ending with 020 (e.g., 1436492361020). The
previous code assumed that systems without millisecond precision would
report as whole seconds, so the timestamp checks weren't matching and it
was moving on to hash-based checks (which seemed to be taking a very
long time, but that's another matter). This changes the comparison so
that, as long as both timestamps floor to the same whole second, they'll
be considered equal.

[1] https://forums.zotero.org/discussion/65515/5-0-beta-sync-problem
2017-05-04 02:04:47 -04:00
Adomas Venčkauskas
8f19d1f826 Update citeproc instances in Integration on Styles.reinit
Closes zotero/zotero-word-for-windows-integration#34
2017-05-03 14:35:44 +03:00
Adomas Venčkauskas
37fa0c203f Write sessionID into the doc on new session creation 2017-05-03 14:34:00 +03:00
Adomas Venčkauskas
6336a30cb9 Remove obsolete styles related code 2017-05-03 14:00:17 +03:00
Adomas Ven
7d79865023 Merge pull request #1222 from adomasven/feature/document-preferences-cleanup
Document preferences cleanup
2017-05-03 13:09:49 +03:00
Dan Stillman
b2d91af90d Fix missing paren from 5b0b874435 2017-05-03 04:47:40 -04:00
Dan Stillman
2588a0a651 Simplify deleteCacheObjectVersions() query 2017-05-03 03:54:54 -04:00
Dan Stillman
5b0b874435 Purge old objects in sync cache after upload 2017-05-03 03:43:59 -04:00
Dan Stillman
aa1fc01b31 Fix syncing of related item removal 2017-05-02 20:15:54 -04:00
Dan Stillman
5f819b7baa Additional debugging for sync issue 2017-05-02 17:29:10 -04:00
Dan Stillman
4502b5e990 Debugging for sync issue 2017-05-02 16:56:55 -04:00
Adomas Venčkauskas
3c19bbffe4 Remove store references in document option. Closes #1216 2017-05-02 16:29:19 +03:00
Adomas Venčkauskas
5e3c7bf63d Fix test breakage from a76493f60 2017-05-02 15:09:12 +03:00
Adomas Venčkauskas
a76493f60d Fix noteType type issues when talking to js-ctypes libs
Reported https://forums.zotero.org/discussion/65496/zotero-5-185-bug-cant-insert-field
2017-05-02 14:45:06 +03:00
Dan Stillman
9e1533c32d Fix error with citations not in library (since f3ceb7f66) 2017-04-28 04:07:27 -04:00
Dan Stillman
fe88530120 Recover from a remotely missing parent collection 2017-04-28 03:18:50 -04:00
Dan Stillman
2db41b0adc Don't update various primary fields unnecessarily during save 2017-04-27 22:41:53 -04:00
Dan Stillman
7bd8f47dac Schema update step to remove linked files from My Publications 2017-04-27 15:33:25 -04:00
Dan Stillman
9bd01af2a5 Disallow inPublications for linked-file attachments 2017-04-27 15:33:24 -04:00
Dan Stillman
d715197b2f Don't show Show/Hide button in My Publications for linked files 2017-04-27 04:52:50 -04:00
Adomas Venčkauskas
8dacf4455d Revert accidental stopOnError change in 2bf53824 2017-04-27 11:46:35 +03:00
Adomas Venčkauskas
2bf5382431 Log errors from syncRunner concurrent caller 2017-04-27 11:40:30 +03:00
Dan Stillman
d527c340c6 Fix "text is not defined" error during full-text content sync 2017-04-26 02:44:01 -04:00
Dan Stillman
696e828a02 Merge pull request #1218 from adomasven/feature/JSON-pref-docs
Feature/json pref docs
2017-04-22 22:54:28 -04:00
Adomas Venčkauskas
7661f71d6c Fix broken integration test in a8d0110e 2017-04-21 11:12:02 +03:00
Dan Stillman
21a3bf8aa5 Fix indexing of synced full-text content 2017-04-21 02:59:24 -04:00
Adomas Venčkauskas
a8d0110e07 Add a deprecation warning to non-string params for #htmlSpecialChars
Revert change from ff74e0ff
2017-04-20 13:12:36 -04:00
Adomas Venčkauskas
bbec11e3eb Prepare 5.0 to handle JSON doc prefs 2017-04-20 18:03:15 +03:00
Adomas Venčkauskas
e272465f6c Fix DocumentData serialization hairiness due to #htmlSpecialChars
Add tests
2017-04-20 13:39:19 +03:00
Dan Stillman
d472752101 Collapse My Publications when first opened
Child items marked as visible are technically search matches, so we have
to take extra steps to keep the parents from being auto-expanded.
2017-04-19 21:56:38 -04:00
Dan Stillman
f3ceb7f66e Load object data when looking up integration items
Item data may not have been loaded for a library when requesting an item
from a document (e.g., for Refresh), so we need to load all data for
requested items to avoid unloaded-data errors. (Data isn't loaded if
it's already been loaded, so hopefully this doesn't slow things down too
much.)
2017-04-19 04:24:34 -04:00
Dan Stillman
ab2bedc0df Clear inPublications in PATCH JSON with false, not empty string 2017-04-19 03:18:05 -04:00
Dan Stillman
c03a0df226 Add settings table flag to auto-repair database on startup
This will allow the DB Repair Tool to only recreate the file and leave
schema knowledge to the client.

Addresses #895
2017-04-19 02:53:39 -04:00
Dan Stillman
698eb3358a Retry library sync on 409 error
Closes #928
2017-04-19 02:53:39 -04:00
Adomas Venčkauskas
ff74e0ff00 Do not return empty string for falsy arguments in Utilities.htmlSpecialChars 2017-04-18 16:21:49 +03:00
Dan Stillman
de7b56b8a1 Don't include items in My Publications in Unfiled Items 2017-04-17 21:34:08 -04:00
Dan Stillman
2160b1cb87 Remove stray console.log() calls in citeproc-js
This is breaking bibliography output for some citations.
2017-04-17 13:56:59 -04:00
Dan Stillman
8a7d405e4d Close #932, Disable file dragging into My Publications
Already disabled for collections pane, now for items pane
2017-04-16 03:35:02 -04:00
Dan Stillman
58f4dc3bb5 Unescape HTML in API upload errors 2017-04-14 23:14:22 -04:00
Dan Stillman
0920e25393 Make 404 handling for uploaded objects permanent
Related to https://github.com/zotero/dataserver/commit/aafda6d835
2017-04-14 23:14:22 -04:00
Dan Stillman
a2f11f5338 Update submodules 2017-04-14 23:14:22 -04:00
Dan Stillman
287a0b587b Update citeproc-js to 1.1.160 2017-04-14 23:14:22 -04:00