From 70bd3bafacd9e1b9f0bcc0659bd8a3db57ae24bd Mon Sep 17 00:00:00 2001
From: Shane Kilkelly <shane@kilkelly.me>
Date: Fri, 15 Jun 2018 11:17:20 +0100
Subject: [PATCH] Use errors from ProjectFileAgent

---
 .../LinkedFiles/ProjectFileAgent.coffee       |  8 ++++++--
 .../LinkedFiles/ProjectOutputFileAgent.coffee | 20 ++-----------------
 2 files changed, 8 insertions(+), 20 deletions(-)

diff --git a/app/coffee/Features/LinkedFiles/ProjectFileAgent.coffee b/app/coffee/Features/LinkedFiles/ProjectFileAgent.coffee
index 78fc31ee0..1b9f96473 100644
--- a/app/coffee/Features/LinkedFiles/ProjectFileAgent.coffee
+++ b/app/coffee/Features/LinkedFiles/ProjectFileAgent.coffee
@@ -58,9 +58,12 @@ SourceFileNotFoundError = (message) ->
 SourceFileNotFoundError.prototype.__proto__ = Error.prototype
 
 
-module.exports = ProjectFileAgent =
+module.exports = ProjectFileAgent = {
 
-	V1ProjectNotFoundError: V1ProjectNotFoundError
+	V1ProjectNotFoundError
+	BadDataError
+	ProjectNotFoundError
+	V1ProjectNotFoundError
 
 	_v1ProjectNotFoundMessage: "Sorry, the source project is not yet imported to Overleaf v2. Please import it to Overleaf v2 to refresh this file"
 
@@ -163,3 +166,4 @@ module.exports = ProjectFileAgent =
 		else
 			next(error)
 		next()
+}
diff --git a/app/coffee/Features/LinkedFiles/ProjectOutputFileAgent.coffee b/app/coffee/Features/LinkedFiles/ProjectOutputFileAgent.coffee
index 5969b25c5..d19403227 100644
--- a/app/coffee/Features/LinkedFiles/ProjectOutputFileAgent.coffee
+++ b/app/coffee/Features/LinkedFiles/ProjectOutputFileAgent.coffee
@@ -11,22 +11,6 @@ _ = require "underscore"
 request = require "request"
 
 
-BadDataError = (message) ->
-	error = new Error(message)
-	error.name = 'BadData'
-	error.__proto__ = BadDataError.prototype
-	return error
-BadDataError.prototype.__proto__ = Error.prototype
-
-
-ProjectNotFoundError = (message) ->
-	error = new Error(message)
-	error.name = 'ProjectNotFound'
-	error.__proto__ = ProjectNotFoundError.prototype
-	return error
-ProjectNotFoundError.prototype.__proto__ = Error.prototype
-
-
 OutputFileFetchFailedError = (message) ->
 	error = new Error(message)
 	error.name = 'OutputFileFetchFailedError'
@@ -92,11 +76,11 @@ module.exports = ProjectOutputFileAgent = {
 							callback(error)
 
 	handleError: (error, req, res, next) ->
-		if error instanceof BadDataError
+		if error instanceof ProjectFileAgent.BadDataError
 			res.status(400).send("The submitted data is not valid")
 		else if error instanceof OutputFileFetchFailedError
 			res.status(404).send("Could not get output file")
-		else if error instanceof ProjectNotFoundError
+		else if error instanceof ProjectFileAgent.ProjectNotFoundError
 			res.status(404).send("Project not found")
 		else if error instanceof ProjectFileAgent.V1ProjectNotFoundError
 			res.status(409).send(ProjectFileAgent._v1ProjectNotFoundMessage)
-- 
GitLab