Commit graph

4872 commits

Author SHA1 Message Date
Brian Gough
1bca1e11a9 fix broken unit test 2017-09-15 09:20:53 +01:00
Brian Gough
9f9c15f6f5 Merge pull request #599 from sharelatex/bg-reset-project-state
clear docupdater project state in deleteAuxFiles
2017-09-15 09:09:29 +01:00
James Allen
a0e25386fc Delete cleanup.js 2017-09-14 17:00:44 +02:00
Brian Gough
28a80cf23d Merge pull request #604 from sharelatex/bg-fix-root-doc-in-incremental-compile
fix root doc in incremental compile
2017-09-13 13:47:22 +01:00
Tim Alby
a04adbf132 remove extra security headers 2017-09-13 11:53:11 +02:00
Brian Gough
51eb94a493 handle incremental compile without root doc 2017-09-13 10:10:44 +01:00
Brian Gough
0e87b8950e update clearProjectState endpoint 2017-09-12 11:40:00 +01:00
Shane Kilkelly
54070c7734 pin chai 2017-09-12 11:21:34 +01:00
Tim Alby
d6834ff417 add security headers using Helmet
- use all Helmet's default headers except `X-DNS-Prefetch-Control`
- use `Referrer-Policy`
- use cache headers when:
  - a user is logged in, OR
  - a project is displayed
2017-09-12 11:17:59 +02:00
Nate Stemen
80c00b13f7 Raising the limit on safari regex count 2017-09-11 11:27:03 +01:00
Brian Gough
5430c8a3c2 Merge pull request #593 from sharelatex/bg-fix-inactive-projects-request
avoid error when passing as limit in mongo query
2017-09-11 08:16:28 +01:00
Brian Gough
6d73c48c36 Merge pull request #596 from sharelatex/bg-suppress-incremental-compile-after-errors
suppress incremental compile after errors
2017-09-11 08:15:50 +01:00
Brian Gough
2b4c8bd846 clear docupdater project state in deleteAuxFiles 2017-09-08 15:57:29 +01:00
Brian Gough
e8435e3eae make condition clearer for incremental compile 2017-09-08 13:39:24 +01:00
Paulo Reis
98b380f70a Update translations commit in shrinkwrap. 2017-09-08 12:14:05 +01:00
Alasdair Smith
1b144ed183 Merge pull request #595 from sharelatex/as-fix-share-emails
Fix UX issues in email autocompletion in share modal
2017-09-08 11:25:16 +01:00
Alasdair Smith
38eaf82c65 Ensure that time is monotonic when running autocompile 2017-09-08 11:00:46 +01:00
Alasdair Smith
4a490aafbf Improve UX of triggering autocompile.
If a user is making infrequent edits (i.e. if reading and making small
changes), then waiting 5 seconds for a recompile is bad. Therefore we track
the time since the last recompile and use this to decide whether a recompile
should be run. This reduces the time to recompile, unless the user is typing
for a significant amount of time.
2017-09-08 10:42:54 +01:00
Alasdair Smith
e2523c569e Filter linting warnings 2017-09-07 17:45:16 +01:00
Brian Gough
03a5ff2e43 skip incremental compile after docupdater error 2017-09-07 15:06:09 +01:00
Brian Gough
c6d2f0f4e1 skip incremental compile after server error 2017-09-07 15:05:42 +01:00
Alasdair Smith
624802c28e Remove unnecessary parens 2017-09-07 11:30:42 +01:00
Alasdair Smith
b7713439bf Bring back comparsion erroneously removed 2017-09-07 11:30:20 +01:00
Alasdair Smith
9cde236bc8 Add comment explaining lint errors vs compile log errors 2017-09-07 11:28:36 +01:00
Alasdair Smith
a8cdfb7ecc Track autocompile setting change 2017-09-07 11:13:38 +01:00
Shane Kilkelly
586d1f1599 Merge pull request #531 from sharelatex/sk-allow-explicit-ses-email-config
Instantiate the ses client if explicitly specified.
2017-09-07 10:21:01 +01:00
Alasdair Smith
11386eb817 Add option to autocompile, so can be identified in event tracking 2017-09-07 10:20:21 +01:00
Alasdair Smith
8a8d98935b Remove unnecessary linting check in annotations listener
When user starts typing, compile log annotations are replaced with linter ones,
so log errrors can be ignored for this purpose. Because we don't try to
autocompile unless the user types something
2017-09-07 10:04:10 +01:00
Alasdair Smith
0c76b06a97 Increase timeout to 5 seconds 2017-09-07 10:02:48 +01:00
Alasdair Smith
320466a4f7 Catch invalid email address and show specific error message 2017-09-06 13:47:45 +01:00
Alasdair Smith
79566a9214 Prevent autocomplete on suggestions that don't match
The behaviour of the ngTagsInput directive is somewhat counter-intuitive -
typing part of a suggested email will appear as though it matches but pressing
enter will not input the suggestion, but the current typed value.

Disabling add on enter will still allow enter to select the selection, but
prevents selection of the partially typed email/name.
2017-09-06 11:39:30 +01:00
James Allen
b2257db2c2 Don't get confused by commands in arguments in autocomplete 2017-09-05 19:26:13 +02:00
Alasdair Smith
ca8ba6dabe Fix incorrect checking of contact name 2017-09-05 17:18:26 +01:00
Alasdair Smith
32b849faf7 Use translations 2017-09-05 14:57:06 +01:00
Alasdair Smith
42ae7a6479 Only show auto compile option for beta program users 2017-09-05 14:57:06 +01:00
Alasdair Smith
ce630e4971 Extract timeout constant 2017-09-05 14:57:06 +01:00
Alasdair Smith
a9e94f6a6d Unsubscribe autocompile listener if disabled 2017-09-05 14:57:06 +01:00
Alasdair Smith
cca7f55322 Add autocompile setting 2017-09-05 14:57:06 +01:00
Alasdair Smith
64f70942d0 Ensure user is in beta program 2017-09-05 14:57:06 +01:00
Alasdair Smith
fc4a260d95 Ensure error is from linting not compile logs 2017-09-05 14:57:06 +01:00
Alasdair Smith
9f1adfd0c0 Replace separate autocompile ctrl with listener in PdfController 2017-09-05 14:57:06 +01:00
Alasdair Smith
53bb4fdde0 Use var in root scope instead of event to track linting error 2017-09-05 14:57:06 +01:00
Alasdair Smith
dab799a81b First pass at auto compile ctrl 2017-09-05 14:57:06 +01:00
Alasdair Smith
c42b08fcff Dispatch linting error event when changed 2017-09-05 14:57:06 +01:00
Alasdair Smith
65b2c42fad Emit event when op is acknowledged 2017-09-05 14:57:06 +01:00
Brian Gough
3ac0e97a14 avoid error when passing as limit in mongo query
convert request parameter from string to number
2017-09-05 12:33:13 +01:00
Brian Gough
e2368615e2 Merge pull request #589 from sharelatex/bg-check-options-for-incremental-compile
include the options in the project state hash
2017-09-05 11:53:17 +01:00
Brian Gough
2e6c578dd7 add ol-style.css to fingerprint list 2017-09-05 10:54:26 +01:00
James Allen
39320c20b8 Include OL tokens in project schema 2017-09-05 10:50:39 +02:00
Joe Green
404749acaf disableConcurrentBuilds 2017-09-04 16:02:16 +01:00
Joe Green
144a13462e build.txt 2017-09-04 14:58:13 +01:00
Brian Gough
d9557fcbf5 include the options in the project state hash 2017-09-01 16:36:51 +01:00
Shane Kilkelly
7bb4638186 Restore user features to default after acceptance test.
Fixes an issue that could come up when running the tests
several times.
2017-09-01 14:45:54 +01:00
Shane Kilkelly
c170de7a4f Add unit test to cover project features. 2017-09-01 13:28:11 +01:00
Shane Kilkelly
3d0268a486 Add other required properties for project load. 2017-09-01 11:36:23 +01:00
Shane Kilkelly
68f860b28d Load user features alongside id and email.
Fixes a bug where project features were not applied properly,
and instead fell back to the free-account defaults.
2017-09-01 11:16:45 +01:00
Nate Stemen
54af7fbdcb adding in a few new commands that appear in SL-CLSI analysis 2017-08-31 10:39:46 +01:00
Alasdair Smith
184c8adb84 Merge pull request #582 from sharelatex/as-pdfjs-cmaps-fix
Fix Cmaps path for future versions of PDF.js
2017-08-31 09:36:46 +01:00
Shane Kilkelly
8a612df009 fix use of context helper in onChange 2017-08-31 08:59:38 +01:00
Shane Kilkelly
708afedeb4 Refactor out common code in AutocompleteManager.
(first pass)
2017-08-30 14:01:20 +01:00
Henry Oswald
d4b0c740c2 added csrf acceptence tests 2017-08-29 17:45:16 +01:00
James Allen
9c4dc40abf Merge pull request #583 from sharelatex/ja-import-projects
Add in UserStub model and support in collaborators view
2017-08-29 16:06:00 +02:00
James Allen
a58a715fad Merge pull request #570 from sharelatex/ho-null-check-redis-sessions
Ho null check redis sessions
2017-08-29 15:44:22 +02:00
James Allen
8d268e9d42 Merge pull request #580 from sharelatex/ja-import-collaborators
Add in UserStub model and support in collaborators view
2017-08-29 15:43:54 +02:00
James Allen
ba43e45f85 Merge pull request #578 from sharelatex/ja-import-projects
Update Project schema for overleaf imports
2017-08-29 15:43:39 +02:00
James Allen
2e005fd39a Merge pull request #572 from sharelatex/ns-autocomplete
Adding default list of commands to autocomplete
2017-08-29 15:43:24 +02:00
James Allen
bb6ca9ba51 Update Project schema 2017-08-29 15:21:05 +02:00
Alasdair Smith
285c9587e9 Use injected Cmaps path 2017-08-25 15:48:13 +01:00
Alasdair Smith
baf4eb6b52 Export PDFJS Cmaps path to window 2017-08-25 15:47:56 +01:00
Brian Gough
f9d1650c6a Merge pull request #569 from sharelatex/bg-compile-from-redis
compile from redis
2017-08-25 09:09:52 +01:00
James Allen
d5839437fd Add in UserStub model and support in collaborators view 2017-08-24 17:48:47 +02:00
Shane Kilkelly
88923a314d Disallow toggling track-changes via keyboard if not available on project 2017-08-23 15:02:06 +01:00
James Allen
b4254f06ef Update Project schema for overleaf imports 2017-08-21 17:49:08 +02:00
Nate Stemen
adb26b1b94 forgot meta tag for "thebibiography" 2017-08-18 14:24:44 +01:00
Nate Stemen
fb4182cbb1 Merge branch 'master' into ns-autocomplete 2017-08-18 09:14:06 +01:00
Brian Gough
a569303b7e simplify unusual unit test 2017-08-17 15:36:52 +01:00
Nate Stemen
42be1164bc fixing environment duplication in autocomplete issue 2017-08-17 14:30:18 +01:00
Nate Stemen
d1b906db43 renaming and organizing 2017-08-16 17:55:43 +01:00
Nate Stemen
f253b7e8cb fixing command duplication issue during suggestion 2017-08-16 17:40:01 +01:00
Brian Gough
f4da089ee3 added unit tests for project state hash 2017-08-16 11:42:36 +01:00
Brian Gough
90ff58b820 compute project state hash from sorted docs/files 2017-08-16 10:49:29 +01:00
Joe Green
d184c9c555 Add Jenkinsfile
* added Jenkins file

* Use new build process

* comment out post stage

* use checkout step

* install grunt before unit tests

* swap hardcoded config for env vars
2017-08-16 10:43:48 +01:00
Brian Gough
c91599bfeb add unit test for incremental compile 2017-08-15 16:00:40 +01:00
Brian Gough
739445336f remove unused code and fix flushing 2017-08-15 16:00:00 +01:00
Brian Gough
1179518f4e unit test for sync conflict 2017-08-15 14:35:02 +01:00
Nate Stemen
6e9b1c602b fixing spaces vs. tabs issue 2017-08-14 18:02:51 +01:00
Brian Gough
0347abb13a added unit tests for ProjectEntityHandler 2017-08-14 15:40:46 +01:00
Brian Gough
f9617034be add unit test for getProjectDocsIfMatch 2017-08-14 14:33:34 +01:00
Brian Gough
4789dd23ee docupdater will parse lines in getProjectDocs
no need to do this in web now
2017-08-11 16:57:23 +01:00
Nate Stemen
688f1e9e75 merged staticManager with snippetManager 2017-08-11 09:23:36 +01:00
James Allen
1f326f7990 Merge pull request #575 from sharelatex/ja-overleaf-oauth
Allow OAuth based log-ins from Overleaf
2017-08-10 10:28:41 +02:00
Brian Gough
e2048e1ed5 use incrementalCompilesEnabled as option name 2017-08-09 16:25:57 +01:00
Brian Gough
836bddd91f comment about 409 code in DocumentUpdaterHandler 2017-08-09 16:00:11 +01:00
Brian Gough
ddecd26718 flush documents to mongo on incremental compiles 2017-08-09 15:47:44 +01:00
James Allen
7538c8834f Merge branch 'master' into ja-per-user-track-changes 2017-08-09 14:05:36 +02:00
James Allen
a0a45ee654 Update date 2017-08-09 14:02:40 +02:00
Brian Gough
7eb1c01994 add metrics for incremental compiles 2017-08-09 11:41:09 +01:00
Brian Gough
836219584c fix tests for beta users 2017-08-09 11:33:44 +01:00
Brian Gough
97b129cbe3 enable incremental compilation for beta users 2017-08-09 10:57:24 +01:00
James Allen
638eeb1247 Update Server.coffee 2017-08-09 11:51:08 +02:00
James Allen
17e849792c Pull out logic into module 2017-08-09 11:50:05 +02:00
Brian Gough
8aa77cec5e provide fallback to normal compile method 2017-08-08 16:48:47 +01:00
Brian Gough
203e42fa4c clean up options handling 2017-08-08 16:48:37 +01:00
James Allen
eac0ce8353 Initial spike of Overleaf based logins 2017-08-08 14:00:21 +02:00
Brian Gough
31e71854a4 fix unit tests 2017-08-08 11:38:31 +01:00
James Allen
0be1ee6b6c Fix smoke test when product name changes 2017-08-08 12:31:36 +02:00
James Allen
f9690f9db0 Add Overleaf header logo 2017-08-08 08:26:26 +02:00
James Allen
b4029359bc Fix loading indicator 2017-08-08 08:17:16 +02:00
James Allen
4ab5451827 Keep both editor loading logos 2017-08-07 17:04:49 +02:00
Paulo Reis
d9e1254a6d Update loading screen. 2017-08-07 17:02:55 +02:00
James Allen
5c8442a86f Allow configureable brand prefix with overleaf styles 2017-08-07 17:01:59 +02:00
Brian Gough
849e905efb simplify incremental request to docupdater
if project state hasn't changed, get the docs from the docupdater -- we
check/set the hash and return the docs in a single request.  Otherwise
do a full request from mongo.
2017-08-07 14:45:04 +01:00
James Allen
e5c01df9a8 Merge pull request #544 from sharelatex/ja-update-ace
Update Ace with new context tracking linter
2017-08-04 10:46:34 +02:00
James Allen
6c342a6e65 Merge branch 'master' into ja-update-ace 2017-08-04 10:39:53 +02:00
James Allen
4826616411 Update with latex mode bracket matching changes 2017-08-04 10:38:54 +02:00
Nate Stemen
769875c5d5 Adding default autocomplete commands w/ argument options 2017-08-03 16:31:46 +01:00
Shane Kilkelly
05c5b4f9c5 Merge branch 'master' into sk-fully-hide-trackchanges 2017-08-03 15:20:20 +01:00
Shane Kilkelly
9cc461605e Prevent track-changes hotkey actions when not enabled. 2017-08-03 15:17:28 +01:00
Shane Kilkelly
670d4438dc If track-changes is not enabled, don't show hotkeys for it. 2017-08-03 15:16:54 +01:00
Brian Gough
1321009fe1 update docupdater endpoint to /project/id/docs 2017-08-03 14:40:46 +01:00
Henry Oswald
33fe252a15 null check user during logout 2017-08-03 13:26:14 +01:00
Henry Oswald
35f31d5a3c null check the user correctly 2017-08-03 13:17:39 +01:00
Brian Gough
38c879faf2 improve comment about ClsiStateManager hash 2017-08-03 12:15:27 +01:00
Brian Gough
6d331e8ffd use projectStateUnchanged instead of stateOk 2017-08-03 12:10:23 +01:00
Brian Gough
f44b844d74 refer to project state as projectStateHash 2017-08-03 12:08:11 +01:00
Brian Gough
5c02255e07 use syncType and syncState for clsi state options 2017-08-03 11:44:10 +01:00
Brian Gough
fb29ac3031 clean up logging 2017-08-03 11:36:59 +01:00
Brian Gough
0a859d3b33 clean up state manager 2017-08-03 11:36:23 +01:00
Brian Gough
a955b8fcc9 remove unused inline function 2017-08-03 11:35:42 +01:00
Brian Gough
a4117487e9 switch from mongoose to mongojs in ClsiManager
for efficiency
2017-08-03 11:35:42 +01:00
Brian Gough
17b1075dc9 add rootFolder to attributes in Clsi request 2017-08-03 10:20:57 +01:00
James Allen
86a38df6e0 Merge pull request #563 from sharelatex/pr-support-html-encoded-i18n
Support HTML encoded i18n
2017-08-03 10:36:35 +02:00
James Allen
b2e6c028ba Merge pull request #562 from sharelatex/pr-ignore-deleted-projects-uncategorized
Correct count of uncategorized projects
2017-08-03 10:36:20 +02:00
James Allen
ef9b3e06ee Merge pull request #568 from sharelatex/ja-validate-contact-form
Validate and add error status to contact form
2017-08-03 10:35:48 +02:00
James Allen
2f3c1fae86 Merge pull request #564 from sharelatex/sk-autocomplete-graphics
Sk autocomplete graphics
2017-08-03 10:35:27 +02:00
James Allen
3d9da02815 Merge pull request #555 from sharelatex/sk-password-policy
Enforce stricter password policy.
2017-08-03 10:35:00 +02:00
James Allen
28838eff60 Merge pull request #567 from sharelatex/ja-admin-panel-additions
Some refactoring and methods needed to support the admin panel
2017-08-03 10:34:33 +02:00
Brian Gough
4d4cf4f693 project state can be stored per project
there is no need to store it per project+user because it reflects the
state of the project itself
2017-08-02 16:25:47 +01:00
James Allen
66d18bcbcd Validate and add error status to contact form 2017-08-02 14:59:03 +02:00
Brian Gough
cf780fd8bb start making requests incremental 2017-08-02 13:53:32 +01:00
James Allen
10f362a77a Add SubscriptionUpdater.deleteSubscription 2017-08-02 09:59:45 +02:00
Brian Gough
66cd6ada14 allow querying folders from existing project
avoid loading the project unnecessarily
2017-08-01 14:39:02 +01:00
Brian Gough
7a39eeb2ea make request to docupdater for current docs 2017-08-01 14:38:34 +01:00
Shane Kilkelly
8a0f58c63d Use correct character width 2017-08-01 14:28:10 +01:00
Shane Kilkelly
3ffef7fe56 Dynamically adjust the width of autocomplete popup. 2017-08-01 13:40:30 +01:00
Paulo Reis
d576aa5b9d Update date threshold to show the per-user TC dialog. 2017-08-01 12:01:17 +01:00
Paulo Reis
7b85661035 Re-enable the toggle TC keyboard shortcut. 2017-08-01 11:59:32 +01:00
Paulo Reis
029ab8d2f1 Make sure TC state is applied to all users on load. 2017-08-01 11:30:23 +01:00
Paulo Reis
fbce49f5cd Merge branch 'master' into ja-per-user-track-changes 2017-08-01 10:56:02 +01:00
Shane Kilkelly
9a85e42ddb Remove stray file 2017-08-01 09:53:43 +01:00