diff --git a/services/web/app/coffee/Features/Blog/BlogController.coffee b/services/web/app/coffee/Features/Blog/BlogController.coffee index 11af432624..4aaee6962a 100644 --- a/services/web/app/coffee/Features/Blog/BlogController.coffee +++ b/services/web/app/coffee/Features/Blog/BlogController.coffee @@ -27,6 +27,8 @@ module.exports = BlogController = data = data.trim() try data = JSON.parse(data) + if settings.cdn?.web?.host? + data?.content = data?.content?.replace(/src="([^"]+)"/g, "src='#{settings.cdn?.web?.host}$1'"); catch err logger.err err:err, data:data, "error parsing data from data" res.render "blog/blog_holder", data diff --git a/services/web/app/coffee/Features/Project/ProjectEntityHandler.coffee b/services/web/app/coffee/Features/Project/ProjectEntityHandler.coffee index 946a57d527..c68f732f16 100644 --- a/services/web/app/coffee/Features/Project/ProjectEntityHandler.coffee +++ b/services/web/app/coffee/Features/Project/ProjectEntityHandler.coffee @@ -512,6 +512,11 @@ module.exports = ProjectEntityHandler = return callback(e) type = sanitizeTypeOfElement type + if path.resolve("/", element.name) isnt "/#{element.name}" or element.name.match("/") + e = new Error("invalid element name") + logger.err project_id:project._id, folder_id:folder_id, element:element, type:type, "failed trying to insert element as name was invalid" + return callback(e) + if !folder_id? folder_id = project.rootFolder[0]._id ProjectEntityHandler._countElements project, (err, count)-> diff --git a/services/web/app/coffee/Features/References/ReferencesController.coffee b/services/web/app/coffee/Features/References/ReferencesController.coffee index 5976af9430..305c4715b5 100644 --- a/services/web/app/coffee/Features/References/ReferencesController.coffee +++ b/services/web/app/coffee/Features/References/ReferencesController.coffee @@ -32,8 +32,8 @@ module.exports = ReferencesController = _handleIndexResponse: (req, res, projectId, shouldBroadcast, data) -> if !data? or !data.keys? - return res.send() - else if shouldBroadcast + return res.json({projectId, keys: []}) + if shouldBroadcast logger.log {projectId}, "emitting new references keys to connected clients" EditorRealTimeController.emitToRoom projectId, 'references:keys:updated', data.keys return res.json data diff --git a/services/web/app/coffee/infrastructure/Server.coffee b/services/web/app/coffee/infrastructure/Server.coffee index 3b40ff6885..8ac543c698 100644 --- a/services/web/app/coffee/infrastructure/Server.coffee +++ b/services/web/app/coffee/infrastructure/Server.coffee @@ -101,19 +101,19 @@ if app.get('env') == 'production' logger.info "Production Enviroment" app.enable('view cache') - - app.use (req, res, next)-> metrics.inc "http-request" crawlerLogger.log(req) next() -app.use (req, res, next) -> - if !Settings.editorIsOpen +webRouter.use (req, res, next) -> + if Settings.editorIsOpen + next() + else if req.url.indexOf("/admin") == 0 + next() + else res.status(503) res.render("general/closed", {title:"maintenance"}) - else - next() apiRouter.get "/status", (req, res)-> res.send("web sharelatex is alive") diff --git a/services/web/public/img/crests/cambridge.png b/services/web/public/img/crests/cambridge.png index 9e4f079b36..2d052e9d79 100644 Binary files a/services/web/public/img/crests/cambridge.png and b/services/web/public/img/crests/cambridge.png differ diff --git a/services/web/public/img/crests/durham.png b/services/web/public/img/crests/durham.png index 4f3d7c2762..13ab59ff4c 100644 Binary files a/services/web/public/img/crests/durham.png and b/services/web/public/img/crests/durham.png differ diff --git a/services/web/public/img/crests/icl.png b/services/web/public/img/crests/icl.png index 7838fca3a1..9d58a1f94a 100644 Binary files a/services/web/public/img/crests/icl.png and b/services/web/public/img/crests/icl.png differ diff --git a/services/web/public/img/crests/nasa.png b/services/web/public/img/crests/nasa.png index 8849968577..e2db4e837a 100644 Binary files a/services/web/public/img/crests/nasa.png and b/services/web/public/img/crests/nasa.png differ diff --git a/services/web/public/img/crests/stanford.png b/services/web/public/img/crests/stanford.png index 7ecda1f1ef..514ecb2176 100644 Binary files a/services/web/public/img/crests/stanford.png and b/services/web/public/img/crests/stanford.png differ diff --git a/services/web/public/img/crests/tokyo.png b/services/web/public/img/crests/tokyo.png index 74f5c0057f..87eee0263a 100644 Binary files a/services/web/public/img/crests/tokyo.png and b/services/web/public/img/crests/tokyo.png differ diff --git a/services/web/public/img/crests/toronto.gif b/services/web/public/img/crests/toronto.gif index e41e87a9d5..a4eb9a42bb 100644 Binary files a/services/web/public/img/crests/toronto.gif and b/services/web/public/img/crests/toronto.gif differ diff --git a/services/web/public/img/crests/yale.png b/services/web/public/img/crests/yale.png index 6bb48e3499..78db969673 100644 Binary files a/services/web/public/img/crests/yale.png and b/services/web/public/img/crests/yale.png differ diff --git a/services/web/public/img/dropbox/document_updated_modal.png b/services/web/public/img/dropbox/document_updated_modal.png index a8f213f428..720263bb5a 100644 Binary files a/services/web/public/img/dropbox/document_updated_modal.png and b/services/web/public/img/dropbox/document_updated_modal.png differ diff --git a/services/web/public/img/dropbox/dropbox_banner.png b/services/web/public/img/dropbox/dropbox_banner.png index 0de0ce1f47..a29b9cc407 100644 Binary files a/services/web/public/img/dropbox/dropbox_banner.png and b/services/web/public/img/dropbox/dropbox_banner.png differ diff --git a/services/web/public/img/dropbox/dropbox_banner_tall.png b/services/web/public/img/dropbox/dropbox_banner_tall.png index 0d64cd02c6..2045f2d83c 100644 Binary files a/services/web/public/img/dropbox/dropbox_banner_tall.png and b/services/web/public/img/dropbox/dropbox_banner_tall.png differ diff --git a/services/web/public/img/dropbox/dropbox_logo.png b/services/web/public/img/dropbox/dropbox_logo.png index 75ed862bef..27a57ad82d 100644 Binary files a/services/web/public/img/dropbox/dropbox_logo.png and b/services/web/public/img/dropbox/dropbox_logo.png differ diff --git a/services/web/public/img/dropbox/dropbox_progress_bar.png b/services/web/public/img/dropbox/dropbox_progress_bar.png index 0d7d20831f..b72506752e 100644 Binary files a/services/web/public/img/dropbox/dropbox_progress_bar.png and b/services/web/public/img/dropbox/dropbox_progress_bar.png differ diff --git a/services/web/public/img/dropbox/history_diff.png b/services/web/public/img/dropbox/history_diff.png index 32451b040a..27629b1628 100644 Binary files a/services/web/public/img/dropbox/history_diff.png and b/services/web/public/img/dropbox/history_diff.png differ diff --git a/services/web/public/img/dropbox/share_dropbox_folder.png b/services/web/public/img/dropbox/share_dropbox_folder.png index 12dbdad029..368743fb23 100644 Binary files a/services/web/public/img/dropbox/share_dropbox_folder.png and b/services/web/public/img/dropbox/share_dropbox_folder.png differ diff --git a/services/web/public/img/dropbox/simple_logo.png b/services/web/public/img/dropbox/simple_logo.png index b6ac2e4772..998c996fd1 100644 Binary files a/services/web/public/img/dropbox/simple_logo.png and b/services/web/public/img/dropbox/simple_logo.png differ diff --git a/services/web/public/img/enago.png b/services/web/public/img/enago.png index 473ce8bac2..c8b3a349eb 100644 Binary files a/services/web/public/img/enago.png and b/services/web/public/img/enago.png differ diff --git a/services/web/public/img/faileupload.png b/services/web/public/img/faileupload.png index 60691e4d3b..36c5ef6faf 100644 Binary files a/services/web/public/img/faileupload.png and b/services/web/public/img/faileupload.png differ diff --git a/services/web/public/img/favicon.png b/services/web/public/img/favicon.png index cd7357a8bb..6788f68a24 100644 Binary files a/services/web/public/img/favicon.png and b/services/web/public/img/favicon.png differ diff --git a/services/web/public/img/favicon@2x.png b/services/web/public/img/favicon@2x.png index bc7b7aaaaf..65313b7353 100644 Binary files a/services/web/public/img/favicon@2x.png and b/services/web/public/img/favicon@2x.png differ diff --git a/services/web/public/img/flags/24/en.png b/services/web/public/img/flags/24/en.png index 4db6548dc7..719c69fa67 100644 Binary files a/services/web/public/img/flags/24/en.png and b/services/web/public/img/flags/24/en.png differ diff --git a/services/web/public/img/flags/32/en.png b/services/web/public/img/flags/32/en.png index 4db6548dc7..719c69fa67 100644 Binary files a/services/web/public/img/flags/32/en.png and b/services/web/public/img/flags/32/en.png differ diff --git a/services/web/public/img/lion-128.png b/services/web/public/img/lion-128.png index f945ac9e03..5c67094b18 100644 Binary files a/services/web/public/img/lion-128.png and b/services/web/public/img/lion-128.png differ diff --git a/services/web/public/img/lion-sad-128.png b/services/web/public/img/lion-sad-128.png index 3a0bc7bfb8..7edf83ada9 100644 Binary files a/services/web/public/img/lion-sad-128.png and b/services/web/public/img/lion-sad-128.png differ diff --git a/services/web/public/img/logo.png b/services/web/public/img/logo.png index 440376c052..7552a994c0 100644 Binary files a/services/web/public/img/logo.png and b/services/web/public/img/logo.png differ diff --git a/services/web/public/img/logo@2x.png b/services/web/public/img/logo@2x.png index a4ea401456..aea32a35be 100644 Binary files a/services/web/public/img/logo@2x.png and b/services/web/public/img/logo@2x.png differ diff --git a/services/web/public/img/pattern-home.png b/services/web/public/img/pattern-home.png index 79746dcbc6..e9782053e7 100644 Binary files a/services/web/public/img/pattern-home.png and b/services/web/public/img/pattern-home.png differ diff --git a/services/web/public/img/references-search/search_example.gif b/services/web/public/img/references-search/search_example.gif index c028a094b2..397e41ce3f 100644 Binary files a/services/web/public/img/references-search/search_example.gif and b/services/web/public/img/references-search/search_example.gif differ diff --git a/services/web/public/img/screen.png b/services/web/public/img/screen.png index dcef9cd572..9bfeabfd8b 100644 Binary files a/services/web/public/img/screen.png and b/services/web/public/img/screen.png differ diff --git a/services/web/public/img/screen@2x.png b/services/web/public/img/screen@2x.png index 7d694223bc..be51af0fd7 100644 Binary files a/services/web/public/img/screen@2x.png and b/services/web/public/img/screen@2x.png differ diff --git a/services/web/public/img/social/facebook-32.png b/services/web/public/img/social/facebook-32.png index ecf7dcdd64..5b085e2b32 100644 Binary files a/services/web/public/img/social/facebook-32.png and b/services/web/public/img/social/facebook-32.png differ diff --git a/services/web/public/img/social/link-32.png b/services/web/public/img/social/link-32.png index 56fa0de6d3..0c64abc6a1 100644 Binary files a/services/web/public/img/social/link-32.png and b/services/web/public/img/social/link-32.png differ diff --git a/services/web/public/img/social/twitter-32.png b/services/web/public/img/social/twitter-32.png index aa11c75395..d0b55b9a6e 100644 Binary files a/services/web/public/img/social/twitter-32.png and b/services/web/public/img/social/twitter-32.png differ diff --git a/services/web/public/img/spellcheck-underline.png b/services/web/public/img/spellcheck-underline.png index 8f22344148..07d7c5ce0e 100644 Binary files a/services/web/public/img/spellcheck-underline.png and b/services/web/public/img/spellcheck-underline.png differ diff --git a/services/web/public/img/spinner.gif b/services/web/public/img/spinner.gif index 634932d13c..dd95fb6350 100644 Binary files a/services/web/public/img/spinner.gif and b/services/web/public/img/spinner.gif differ diff --git a/services/web/public/img/sprite.png b/services/web/public/img/sprite.png index 366d994ce8..7a982e9a25 100644 Binary files a/services/web/public/img/sprite.png and b/services/web/public/img/sprite.png differ diff --git a/services/web/test/UnitTests/coffee/References/ReferencesControllerTests.coffee b/services/web/test/UnitTests/coffee/References/ReferencesControllerTests.coffee index 0d58da7631..37a448d34a 100644 --- a/services/web/test/UnitTests/coffee/References/ReferencesControllerTests.coffee +++ b/services/web/test/UnitTests/coffee/References/ReferencesControllerTests.coffee @@ -134,9 +134,10 @@ describe "ReferencesController", -> @res.sendStatus.calledWith(400).should.equal false done() - it 'should close the response', (done) -> + it 'should send a response with an empty keys list', (done) -> @call () => - @res.send.called.should.equal true + @res.json.called.should.equal true + @res.json.calledWith({projectId: @projectId, keys: []}).should.equal true done() describe 'index', ->