Commit graph

426 commits

Author SHA1 Message Date
James Allen
cde5144c42 Retry updates that have not been acknowledged.
If we do not get a reply from the server acknowledging our update after 5 seconds,
send it again. If it never got to the server, this is like normal. If the update
got to the server, but we never received the ack then we need to rely on ShareJs's
duplicate handling. We set the dupIfSource parameter on any retried updates which
let ShareJs know that it's a dup if we already have an op with this version number
and client id. The doc-updater and real-time services need changes to correctly
send another ack only to the submitting client in the case of a duplicate update.
2015-11-19 12:04:12 +00:00
James Allen
2476c1e868 Report unsaved changes after 60 seconds 2015-11-18 15:23:23 +00:00
Henry Oswald
471b285ad7 changed plan choice using ab sixpack not ga 2015-11-16 16:40:14 +00:00
Henry Oswald
f7854649e2 added 20% off option 2015-11-16 15:58:04 +00:00
Henry Oswald
b6b252b1f8 only participate in track changes test if they are shown view 2015-11-10 15:14:27 +00:00
James Allen
a153c6682a Put in client side check for document getting too long 2015-11-06 12:51:43 +00:00
James Allen
8128200d55 Don't show pop up when leaving page in Safari 2015-11-05 10:18:40 +00:00
James Allen
16b7bf222a Merge branch 'contacts' 2015-11-05 10:14:25 +00:00
James Allen
21f702a42e Fix bug with click on share button registering 2015-11-04 14:33:27 +00:00
James Allen
c46f62cfc1 Ensure that a user can only be added to project once 2015-11-02 15:21:41 +00:00
Shane Kilkelly
c05c5ac7c8 Clear drag/drop highlight explicitly after the drop has completed.
Solves a problem where sometimes the Jquery drag/drop plugin
fails to remove the highlight class from drop target.
2015-10-28 12:17:50 +00:00
Henry Oswald
2d03410c42 removed some editor actions sent to google analytics as we are sending too much data 2015-10-27 23:28:54 +00:00
James Allen
fb42489803 Improve formatting of users, groups and tags 2015-10-15 16:43:53 +01:00
James Allen
b0895cc6aa Support adding groups to projects via share modal 2015-10-15 13:53:46 +01:00
Henry Oswald
bbe510099e change auto disconnect to 24 hours and expose it publicly for easier testing 2015-10-15 11:38:23 +01:00
Henry Oswald
2f48568f76 fix free trial button on timeout view 2015-10-15 11:38:01 +01:00
Henry Oswald
9eb4dd1b3b on firefox don't show retrying connected message if the user clicked to change page
it creates a bit of worry for the user as it looks like the connection was not there.
2015-10-14 18:07:12 +01:00
Henry Oswald
f5162d424f if a user is inactive for 12 hours disconect them. 2015-10-14 14:28:24 +01:00
James Allen
c4e4f2c77a Add modules hook for contacts and support groups in auto complete 2015-10-08 18:17:53 +01:00
James Allen
8cc7869b03 Pull in contacts from contacts api and send to tag-input for autocomplete 2015-10-07 17:32:35 +01:00
Henry Oswald
a73b2ceb37 Merge branch 'connect-failed' 2015-10-07 11:30:48 +01:00
Henry Oswald
89256f9d5f added connect timeout option to socket.io.connect needed for the firing of connect_failed. Best way to test is drop connect timeout to 10ms and remove some transports from realtime. 2015-10-05 00:43:37 +01:00
Shane Kilkelly
b4c7209a11 Try to reconnect either on editor-cursor move, or when any thing in the page is clicked. 2015-09-29 10:23:21 +01:00
Shane Kilkelly
8bd83f64e0 Try to reconnect when the editor cursor is moved. 2015-09-28 16:18:09 +01:00
Shane Kilkelly
b393de1450 Try to reconnect when the user types in the editor. 2015-09-28 15:45:14 +01:00
Shane Kilkelly
30a63d1e42 Remove ng-click on output files, which was causing a double-request for download. 2015-09-22 10:11:03 +01:00
Henry Oswald
5ffd76c670 Merge branch 'master' of https://github.com/sharelatex/web-sharelatex 2015-09-14 15:36:08 +01:00
Henry Oswald
9a72667e91 added word count UI feature. 2015-09-14 15:28:19 +01:00
Shane Kilkelly
5e157bcd16 Fix a case where a null user would cause displayName to crash. 2015-09-14 12:27:27 +01:00
Shane Kilkelly
7bc9218b3c Fix up a bunch of issues with the track-changes list view.
- not crash when a user is null
- fix alignment of user color square
- if first and last name are absent, display email instead
- truncate overly long display name with '...'
2015-09-14 12:08:05 +01:00
Shane Kilkelly
4a315a0474 When a user is null in track-changes UI, display them as "Anonymous". 2015-09-10 14:35:09 +01:00
James Allen
1c9f9274a9 Remove uneeded and now wrong Sentry error capturing 2015-09-08 11:48:39 +01:00
James Allen
25b9a9be19 Upgrade Ace to 'package 11.07.15'
This required a refactor of all code that listen to events changes since the API
has changed. See https://github.com/ajaxorg/ace/pull/1745 for more details.
2015-09-07 17:04:05 +01:00
James Allen
7446572ed9 Group online users into dropdown menu when more than 3 2015-09-02 14:33:51 +01:00
James Allen
34c8f22dd7 Allow multiple collaborators to be added at once with a list of emails 2015-09-02 14:33:43 +01:00
Henry Oswald
3e55aef25a show error if socket io fails to connect. Not tested yet. 2015-07-31 15:42:47 +01:00
Brian Gough
1bb7ae3996 always remove the spinner, even if it is not spinning 2015-05-11 14:12:24 +01:00
Brian Gough
92836f49fc avoid unnecessary spell checks on session change 2015-05-11 10:07:11 +01:00
Henry Oswald
7d109ce77d null check error in pdf view 2015-04-23 10:40:11 +01:00
Henry Oswald
31a51b73d8 improved linkify so data is correctly sanitized, used inbuilt angular lib
don't know how I missed that last time!
2015-04-22 17:58:33 +01:00
James Allen
6c585adb3c Merge branch 'buffer_sharejs_ops' 2015-04-22 13:59:19 +01:00
Brian Gough
d0c759c6fb always send the latest position when emitting updatePosition event
Avoid sending outdated position by capturing the current position in
$scope.currentPostion on every call and sending it the when the timer
for updatePosition runs.
2015-04-20 14:26:56 +01:00
James Allen
87d625b5e0 Delay flushes performed after getting an op acknowledgement as well 2015-04-17 17:32:23 +01:00
James Allen
8a32ca1b64 Reduce buffer delay to 1 second 2015-04-17 16:45:17 +01:00
James Allen
af85c83877 Buffer updates when only a single user is editing a document
Add in 5 second delay between flushing updates when only a single user
is editing a document. As soon as an update is received from another user
we switch to sending updates immediately again so there is no latency
between collaborators. The logic applies to individual docs, so two users
can be editing different docs and will still buffer updates since they
will not affect each other.
2015-04-17 11:24:28 +01:00
Henry Oswald
dbd076849b updated online user management to only send cursor position when people are collaborate
if someone is in the project with them cursor info is sent every 500ms, if they are
by themself it is sent every 5mins so they are still marked as online.
2015-04-16 21:01:03 +01:00
Henry Oswald
52f3248869 null check entity in filetree for orderByFoldersFirst 2015-04-14 17:05:13 +01:00
Brian Gough
2ed934120c Fix display of annotations when switching files in ace editor
The annotations (error markers) were not preserved when switching
between files.  The setAnnotations method was being called before the
document is ready -- when the document is attached to ace the content
is deleted and reinserted, which caused the annotations to be removed.
To fix the problem we set the annotations after attaching.
2015-04-08 14:39:39 +01:00
Brian Gough
52b041c0bf update pdf text layer builder with improvements from pdfjs 1.0.1040 2015-03-31 14:55:05 +01:00
Brian Gough
b893446b9c use new pdfjs getDestination method in pdfRenderer
gives faster lookup of link destinations in pdf file
2015-03-31 14:54:36 +01:00
Brian Gough
0684fa36fd upgrade pdfjs to version 1.0.1040 2015-03-31 14:53:27 +01:00
Mick O'Brien
9f037384b6 Update word regex for spellcheck
Adds Latin Extended-A characters to word regex to prevent splitting words half way through on characters like ąęćółżźńś.
2015-03-23 16:14:38 +00:00
James Allen
8483f249ee Actually proxy websocket connections 2015-03-20 19:08:48 +00:00
Brian Gough
b0a32b1ef8 make new pdf viewer the default for all users
remove old pdf viewer
2015-03-20 11:28:28 +00:00
Brian Gough
3bdf2158c1 avoid exception on page size change 2015-03-19 14:26:06 +00:00
Brian Gough
6320fcccec remove underscore from pollSavingStatus
the underscore module is not loading in time for some users on MacOS
2015-03-19 14:22:22 +00:00
James Allen
bb61dfe34a Show nice error page if socket.io could not be loaded 2015-03-09 13:57:13 +00:00
Henry Oswald
69806c02d0 improve behaviour of trying to rename a file to empty 2015-03-04 14:19:47 +00:00
Henry Oswald
fe3b9bf07a clients can not rename docs/files/folders to blank name.
Client and server side checks added
2015-03-04 11:10:59 +00:00
Brian Gough
8d092fc84d replace .filter with _.filter to remove dependency on ES5 2015-03-03 16:45:37 +00:00
Brian Gough
c52a122966 workaround for lack of DOM element .remove in IE 2015-03-03 16:44:26 +00:00
Brian Gough
7aea33b562 keep existing behaviour when loading other output files 2015-03-02 12:18:10 +00:00
Brian Gough
0315954b47 Merge branch 'master' into support-cached-pdfs 2015-03-02 09:20:00 +00:00
Brian Gough
caed778117 load output files from cached build when known 2015-02-26 16:47:47 +00:00
Brian Gough
5b9f2e8fc1 pass build id through to clsi when requesting pdf 2015-02-26 16:21:44 +00:00
Henry Oswald
3a9c6503ee null check mathjax 2015-02-23 17:46:17 +00:00
Henry Oswald
9a7f73ed89 null check response.outputFiles 2015-02-23 17:43:22 +00:00
Henry Oswald
4f11974c85 added null check when looking for deletedByExternalDataSource 2015-02-23 17:33:05 +00:00
Henry Oswald
c98c2db6be change Raven?.captureException to not log json, might be causing error 2015-02-23 17:27:35 +00:00
Henry Oswald
67f4929e49 null check on loadRootFolder 2015-02-18 22:31:45 +00:00
Henry Oswald
e8b50e2ffd null check highlights before removing them 2015-02-18 22:29:07 +00:00
Henry Oswald
2c3b19e43d null check on deleting entry from scope 2015-02-18 22:28:02 +00:00
Henry Oswald
c15484db6b added null check on log entry files in the client 2015-02-18 22:16:29 +00:00
Henry Oswald
4ec05364bb set chat message to empty string by default 2015-02-18 22:06:18 +00:00
Henry Oswald
4c4aaac7a9 Merge branch 'master' of https://github.com/sharelatex/web-sharelatex 2015-02-17 10:59:25 +00:00
Henry Oswald
c4b21f3184 added some null checks to message.user.id 2015-02-16 23:16:38 +00:00
Brian Gough
c29714f427 avoid unnecessary infinite scroll loadUntilFull calls
allow the dom to update before checking if more data is needed
2015-02-13 15:53:59 +00:00
James Allen
f037c466cd Quieten noisy Ace warnings 2015-02-12 12:17:21 +00:00
James Allen
7dd1ab84d5 Wrap calls to localStorage in an exception handler 2015-02-12 11:32:27 +00:00
James Allen
b44e9b1dcb Move template front end code to module 2015-02-10 13:02:43 +00:00
James Allen
e4b77a2563 Merge branch 'dropbox-module' 2015-02-10 11:38:32 +00:00
Brian Gough
353e9c86a8 sample only 1% of pdf exceptions due to volume of requests to sentry 2015-02-09 11:18:46 +00:00
Henry Oswald
08420a305a autolink chat messages 2015-02-07 16:15:33 +00:00
James Allen
6c387edbe2 Remove Dropbox front end logic from main sharelatex repo 2015-02-05 18:20:34 +00:00
James Allen
d7afb4e513 Clean up unused real-time code in web 2015-02-05 16:37:37 +00:00
James Allen
753a80ada5 Navigate away from deleted docs. Closes #141 2015-02-03 13:51:56 +00:00
James Allen
bd8311e1cf Merge pull request #146 from sharelatex/fix-pdfng-no-background-digests
Fix pdfng no background digests
2015-02-03 12:11:46 +00:00
Henry Oswald
69b5eaad19 fixed the classic "UI Layout Callback Error" 2015-01-29 19:23:04 +00:00
Henry Oswald
5a15e826a7 moved mathjax to be served locally 2015-01-29 18:29:53 +00:00
Brian Gough
a13e78e853 catch rejected promises in pdfviewer 2015-01-26 16:07:49 +00:00
Brian Gough
b4f527b099 handle rejected promises in pdf viewer 2015-01-26 16:07:49 +00:00
Brian Gough
182dfabbae fix pdf loadcount (no ?: operator in coffeescript) 2015-01-26 16:07:49 +00:00
Brian Gough
1a8438be5f handle error loading pdf 2015-01-26 16:07:49 +00:00
Brian Gough
d9a3776183 make sure the progress bar always goes to 100% before removing 2015-01-26 16:07:49 +00:00
Brian Gough
5a47b1bac2 use .25-second delay before loading indicator is removed 2015-01-26 16:07:49 +00:00
Brian Gough
940c6a4b8d replace console.logs with error callbacks 2015-01-26 16:07:48 +00:00
Brian Gough
a5900c4b9a handle case where Raven is not defined in pdf renderer 2015-01-26 16:07:48 +00:00
Brian Gough
192918dda1 replace $timeout by setTimeout in pdf viewer 2015-01-26 16:07:48 +00:00
Brian Gough
63fd1f7c78 remove comments 2015-01-26 16:07:48 +00:00
Brian Gough
20d1a8b0f7 queue all pdf rescale/relayout events to avoid duplicate redraws
delay spinner by 100ms, since it now shows sooner
2015-01-26 16:07:48 +00:00
Brian Gough
866de306d6 added comment about double resize event 2015-01-26 16:07:48 +00:00
Brian Gough
3d1fe22f00 remove layout-ready event from pdfjs, we get it from jq layout 2015-01-26 16:07:48 +00:00
Brian Gough
bd8cfb1dae fix pdf viewer to work without background scope.apply 2015-01-26 16:07:48 +00:00
Brian Gough
1160560bfb add missing scope.$apply in pdf viewer event handlers
shows up now there are no apply's coming from the unsaved file check
2015-01-26 16:07:48 +00:00
Brian Gough
994b307e3f added comment for background polling change 2015-01-26 16:06:50 +00:00
Henry Oswald
bebe94a128 Merge branch 'master' of https://github.com/sharelatex/web-sharelatex 2015-01-26 15:38:34 +00:00
Henry Oswald
b06c9f509e if chat errors don't keep trying to get more chat messages
causes loop which is why we have so many sentury errors
2015-01-26 15:36:34 +00:00
Brian Gough
5050c8c023 optimise common case for highlights (triggered on mousemove) 2015-01-26 15:14:55 +00:00
Brian Gough
5244fddce2 optimise common case for closing context menu (triggered on scroll) 2015-01-26 15:04:30 +00:00
Brian Gough
e62a2c7a6f only set watch on attrs.layoutDisabled when attribute is defined 2015-01-26 15:04:30 +00:00
Brian Gough
0453c657da prevent $scope.$apply from firing on every unsaved files check
only trigger a digest when there is a change in the saved state
2015-01-22 17:00:56 +00:00
Brian Gough
4ab0f00b8d do not render offscreen pdf pages yet
they cause a delay without a visible spinner
2015-01-21 14:37:59 +00:00
Brian
f510c5d19f render current page immediately 2015-01-20 21:33:49 +00:00
Brian
62d5916883 replace $timeout by setTimeout in pdf viewer update 2015-01-20 21:06:53 +00:00
Brian
ed6eedd9e2 remove unused functions in pdfRenderer 2015-01-20 20:36:43 +00:00
Brian
c8012dc22c fix getVisiblePages in pdf viewer to allow optimisation 2015-01-20 20:35:29 +00:00
Brian Gough
debc3037ae remove debugging from pdf viewer 2015-01-20 16:22:34 +00:00
Brian Gough
441bc63935 use setTimeout instead of $timeout in pdf scrollhandler 2015-01-20 16:20:38 +00:00
Brian Gough
591498a056 fix dom position calculation in pdf viewer 2015-01-20 16:20:19 +00:00
Brian
53e9086094 remove useless scope.$apply in pdf scrollhandler 2015-01-20 15:37:11 +00:00
Brian
721843695b avoid using jquery in pdf scrollhandler to improve peformance 2015-01-20 15:36:52 +00:00
Brian Gough
96af4e0b4a fix selection of prerender pages in pdf viewer 2015-01-20 14:28:43 +00:00
Brian Gough
f18f862be2 handle different page size in pdf viewer 2015-01-20 14:28:14 +00:00
Brian Gough
c9e019b4a7 clean up calculation of visible pdf pages and display on redraw 2015-01-20 11:06:40 +00:00
Brian Gough
776535f9f3 move pdf page visibility calculation up into pdfViewer directive
removes per-page watch for visibility
2015-01-19 16:55:44 +00:00
Brian Gough
2e021b64d8 remove per-page $watch on default page size in pdf viewer 2015-01-19 14:36:20 +00:00
Brian Gough
906c9114cd replace per-page pdf highlight $watch with highlight event 2015-01-19 14:26:14 +00:00
Brian Gough
adab8c6769 delay pdf spinner by 100ms 2015-01-19 14:24:52 +00:00
Brian
06330e6506 add pdfng scroll handler using requestAnimationFrame 2015-01-16 15:51:22 +00:00
Brian Gough
4e31833131 Merge pull request #138 from sharelatex/pdfng-use-browser-fonts
use font-face for pdfjs rendering
2015-01-16 14:31:37 +00:00
Brian Gough
751166d987 Merge branch 'master' into fix-pdfng-progress-bar
Conflicts:
	public/coffee/ide/pdfng/directives/pdfRenderer.coffee
	public/coffee/ide/pdfng/directives/pdfViewer.coffee
2015-01-16 14:19:59 +00:00
Brian Gough
df9cb03dcc Merge pull request #134 from sharelatex/pdfng-reload-on-error
Pdfng reload on error
2015-01-16 14:18:17 +00:00
Brian Gough
d832406923 pdfng: add comment about getDestinations vs getDestination 2015-01-16 12:50:08 +00:00
Henry Oswald
f2bc98bc3c Change debuging to stringify messages in exception message 2015-01-15 15:18:15 +00:00
Brian Gough
157424c7b6 use font-face for pdfjs rendering 2015-01-13 16:39:49 +00:00
Brian Gough
8d568d9663 increase pdfng page load/render timeouts to 1 minute 2015-01-13 16:38:40 +00:00
Brian Gough
5e06043fcb add loadedCallback to pdfng, detects when pdf is fully loaded 2015-01-13 16:28:24 +00:00
Brian Gough
953821959d hide progress bar when pdfng has loaded 2015-01-13 16:27:04 +00:00
Brian Gough
1d3d316595 capture all pdfng error callbacks with raven 2015-01-13 15:47:27 +00:00
Brian Gough
823bdcf583 fix scope error in pdf viewer 2015-01-12 17:03:03 +00:00
Brian Gough
887423f8d7 report timeout errors to sentry 2015-01-12 17:02:51 +00:00
Brian Gough
560919b78f avoid exception in pdf viewer
if file was previously bigger, current position could be greater than
the number of pages
2015-01-12 16:47:38 +00:00
Brian Gough
bf8bc27de0 catch errors in pdf viewer and reload if necessary
if more than 3 reloads, display error to the user
2015-01-12 16:46:17 +00:00
Brian Gough
7f750ae692 add an error callback to the pdf renderer
use page load and render timeouts of 30 seconds to detect hanging pages
2015-01-12 16:45:24 +00:00
James Allen
dd5562f9b6 Send more data to sentry about messages.reverse error 2015-01-07 13:16:38 +00:00
James Allen
10653c12fd Send more data to Sentry to track down error 2015-01-07 13:16:38 +00:00
Brian Gough
660bb75df4 add query string parameters for compileGroup= and pdfng=
compileGroup will  bypass mongo check for compileGroup priority
pdfng will pass pdf Range: headers through from user request to CLSI
2014-12-12 16:47:43 +00:00
Brian Gough
724116bcc1 Merge branch 'master' into pdfng 2014-12-10 13:18:02 +00:00
Brian Gough
50e03e93ba poll the element for the pdf viewer if it is zero size
avoid invisible pdf forever waiting for layout-ready event when
switching between full-screen and split-screen
2014-12-09 14:40:54 +00:00
Brian Gough
1acc924e0b comment out console.logs in pdfng 2014-12-09 14:39:58 +00:00