Kaynağa Gözat

Merge branch 'sk-flush-when-refreshing-linked-file'

Shane Kilkelly 8 yıl önce
ebeveyn
işleme
1848befcb7

+ 12 - 9
services/web/app/coffee/Features/LinkedFiles/ProjectFileAgent.coffee

@@ -2,6 +2,7 @@ AuthorizationManager = require('../Authorization/AuthorizationManager')
 ProjectLocator = require('../Project/ProjectLocator')
 ProjectLocator = require('../Project/ProjectLocator')
 ProjectGetter = require('../Project/ProjectGetter')
 ProjectGetter = require('../Project/ProjectGetter')
 DocstoreManager = require('../Docstore/DocstoreManager')
 DocstoreManager = require('../Docstore/DocstoreManager')
+DocumentUpdaterHandler = require('../DocumentUpdater/DocumentUpdaterHandler')
 FileStoreHandler = require('../FileStore/FileStoreHandler')
 FileStoreHandler = require('../FileStore/FileStoreHandler')
 _ = require "underscore"
 _ = require "underscore"
 Settings = require 'settings-sharelatex'
 Settings = require 'settings-sharelatex'
@@ -75,15 +76,17 @@ module.exports = ProjectFileAgent = {
 			@_getSourceProject linkedFileData, (err, project) ->
 			@_getSourceProject linkedFileData, (err, project) ->
 				return callback(err) if err?
 				return callback(err) if err?
 				source_project_id = project._id
 				source_project_id = project._id
-				ProjectLocator.findElementByPath {
-					project_id: source_project_id,
-					path: source_entity_path
-				}, (err, entity, type) ->
-					if err?
-						if /^not found.*/.test(err.toString())
-							err = new SourceFileNotFoundError()
-						return callback(err)
-					callback(null, project, entity, type)
+				DocumentUpdaterHandler.flushProjectToMongo source_project_id, (err) ->
+					return callback(err) if err?
+					ProjectLocator.findElementByPath {
+						project_id: source_project_id,
+						path: source_entity_path
+					}, (err, entity, type) ->
+						if err?
+							if /^not found.*/.test(err.toString())
+								err = new SourceFileNotFoundError()
+							return callback(err)
+						callback(null, project, entity, type)
 
 
 	_sanitizeData: (data) ->
 	_sanitizeData: (data) ->
 		return _.pick(
 		return _.pick(