diff --git a/services/web/app/coffee/Features/Compile/CompileManager.coffee b/services/web/app/coffee/Features/Compile/CompileManager.coffee index 515369fef8..5e76104273 100755 --- a/services/web/app/coffee/Features/Compile/CompileManager.coffee +++ b/services/web/app/coffee/Features/Compile/CompileManager.coffee @@ -63,8 +63,8 @@ module.exports = CompileManager = UserGetter.getUser project.owner_ref, {"features":1}, (err, owner)-> return callback(error) if error? callback null, { - timeout: owner.features?.compileTimeout || Settings.defaultFeatures.compileTimeout - compileGroup: owner.features?.compileGroup || Settings.defaultFeatures.compileGroup + timeout: owner?.features?.compileTimeout || Settings.defaultFeatures.compileTimeout + compileGroup: owner?.features?.compileGroup || Settings.defaultFeatures.compileGroup } COMPILE_DELAY: 1 # seconds diff --git a/services/web/app/coffee/Features/Project/ProjectDetailsHandler.coffee b/services/web/app/coffee/Features/Project/ProjectDetailsHandler.coffee index c440043df4..542e9a85ba 100644 --- a/services/web/app/coffee/Features/Project/ProjectDetailsHandler.coffee +++ b/services/web/app/coffee/Features/Project/ProjectDetailsHandler.coffee @@ -9,6 +9,7 @@ PublicAccessLevels = require("../Authorization/PublicAccessLevels") Errors = require("../Errors/Errors") ProjectTokenGenerator = require('./ProjectTokenGenerator') ProjectHelper = require('./ProjectHelper') +settings = require('settings-sharelatex') module.exports = ProjectDetailsHandler = getDetails: (project_id, callback)-> @@ -23,7 +24,7 @@ module.exports = ProjectDetailsHandler = name : project.name description: project.description compiler: project.compiler - features: user.features + features: user?.features or settings.defaultFeatures if project.overleaf? details.overleaf = project.overleaf diff --git a/services/web/test/unit/coffee/Project/ProjectDetailsHandlerTests.coffee b/services/web/test/unit/coffee/Project/ProjectDetailsHandlerTests.coffee index 784841d739..045104038e 100644 --- a/services/web/test/unit/coffee/Project/ProjectDetailsHandlerTests.coffee +++ b/services/web/test/unit/coffee/Project/ProjectDetailsHandlerTests.coffee @@ -39,6 +39,8 @@ describe 'ProjectDetailsHandler', -> log:-> err:-> './ProjectTokenGenerator': @ProjectTokenGenerator = {} + 'settings-sharelatex': @settings = + defaultFeatures: 'default-features' describe "getDetails", -> @@ -65,6 +67,12 @@ describe 'ProjectDetailsHandler', -> err.should.eql error done() + it 'should return the default features if no owner found', (done) -> + @UserGetter.getUser.callsArgWith(1, null, null) + @handler.getDetails @project_id, (err, details)=> + details.features.should.equal @settings.defaultFeatures + done() + it "should return the error", (done)-> error = "some error" @ProjectGetter.getProject.callsArgWith(2, error)