Преглед изворни кода

Merge pull request #1233 from sharelatex/ja-owner-userstubs

Allow importing projects by non-owners

GitOrigin-RevId: b8e5597deef8229b22c5605965d246e6ed95d624
James Allen пре 7 година
родитељ
комит
d0744d779e

+ 2 - 1
services/web/app/coffee/Features/Project/ProjectCreationHandler.coffee

@@ -59,7 +59,8 @@ module.exports = ProjectCreationHandler =
 			project.imageName ?= Settings.currentImageName
 			project.imageName ?= Settings.currentImageName
 		project.rootFolder[0] = rootFolder
 		project.rootFolder[0] = rootFolder
 		User.findById owner_id, "ace.spellCheckLanguage", (err, user)->
 		User.findById owner_id, "ace.spellCheckLanguage", (err, user)->
-			project.spellCheckLanguage = user.ace.spellCheckLanguage
+			if user? # It's possible the owner_id is a UserStub
+				project.spellCheckLanguage = user.ace.spellCheckLanguage
 			project.save (err)->
 			project.save (err)->
 				return callback(err) if err?
 				return callback(err) if err?
 				callback err, project
 				callback err, project

+ 2 - 2
services/web/app/coffee/Features/Project/ProjectEntityUpdateHandler.coffee

@@ -168,7 +168,7 @@ module.exports = ProjectEntityUpdateHandler = self =
 					return callback(error) if error?
 					return callback(error) if error?
 					callback null, doc, folder_id
 					callback null, doc, folder_id
 
 
-	_uploadFile: (project_id, folder_id, fileName, fsPath, linkedFileData, userId, callback = (error, fileRef, fileStoreUrl) ->)->
+	_uploadFile: (project_id, folder_id, fileName, fsPath, linkedFileData, callback = (error, fileRef, fileStoreUrl) ->)->
 		if not SafePath.isCleanFilename fileName
 		if not SafePath.isCleanFilename fileName
 			return callback new Errors.InvalidNameError("invalid element name")
 			return callback new Errors.InvalidNameError("invalid element name")
 		fileRef = new File(
 		fileRef = new File(
@@ -195,7 +195,7 @@ module.exports = ProjectEntityUpdateHandler = self =
 			(project_id, folder_id, fileName, fsPath, linkedFileData, userId, callback) ->
 			(project_id, folder_id, fileName, fsPath, linkedFileData, userId, callback) ->
 				if not SafePath.isCleanFilename fileName
 				if not SafePath.isCleanFilename fileName
 					return callback new Errors.InvalidNameError("invalid element name")
 					return callback new Errors.InvalidNameError("invalid element name")
-				ProjectEntityUpdateHandler._uploadFile project_id, folder_id, fileName, fsPath, linkedFileData, userId, (error, fileRef, fileStoreUrl) ->
+				ProjectEntityUpdateHandler._uploadFile project_id, folder_id, fileName, fsPath, linkedFileData, (error, fileRef, fileStoreUrl) ->
 					return callback(error) if error?
 					return callback(error) if error?
 					next(project_id, folder_id, fileName, fsPath, linkedFileData, userId, fileRef, fileStoreUrl, callback)
 					next(project_id, folder_id, fileName, fsPath, linkedFileData, userId, fileRef, fileStoreUrl, callback)
 		withLock: (project_id, folder_id, fileName, fsPath, linkedFileData, userId, fileRef, fileStoreUrl, callback = (error, fileRef, folder_id) ->)->
 		withLock: (project_id, folder_id, fileName, fsPath, linkedFileData, userId, fileRef, fileStoreUrl, callback = (error, fileRef, folder_id) ->)->