Use new server configuration for logging in

This commit is contained in:
Andrew Miner
2016-05-15 19:52:21 -07:00
parent b34ca26d0a
commit 22009557d2
9 changed files with 21 additions and 18 deletions
+1
View File
@@ -1,5 +1,6 @@
*.log *.log
.DS_Store .DS_Store
.env
.sass-cache .sass-cache
.tm_properties .tm_properties
aws.config aws.config
+6 -2
View File
@@ -75,6 +75,10 @@ module.exports = (grunt)->
files: [ files: [
{expand:true, cwd:'./assets/', src:'**/*', dest:'./build/static'} {expand:true, cwd:'./assets/', src:'**/*', dest:'./build/static'}
] ]
env_build:
files: [
{expand:true, cwd:'.', src:'.env', dest:'./build'}
]
build_to_dist: build_to_dist:
files: [ files: [
expand: true expand: true
@@ -192,7 +196,7 @@ module.exports = (grunt)->
['jade', 'build:copy', 'build:css', 'browserify:external', 'browserify:internal'] ['jade', 'build:copy', 'build:css', 'browserify:external', 'browserify:internal']
grunt.registerTask 'build:copy', 'helper task for build', grunt.registerTask 'build:copy', 'helper task for build',
['copy:assets_build', 'copy:common_source', 'copy:server_source'] ['copy:assets_build', 'copy:env_build', 'copy:common_source', 'copy:server_source']
grunt.registerTask 'build:css', 'helper task for build', grunt.registerTask 'build:css', 'helper task for build',
['sass_globbing', 'sass'] ['sass_globbing', 'sass']
@@ -230,7 +234,7 @@ module.exports = (grunt)->
grunt.registerTask 'upload:staging', 'upload the project the staging Amazon S3 environment', grunt.registerTask 'upload:staging', 'upload the project the staging Amazon S3 environment',
['dist', 'script:s3_upload:staging'] ['dist', 'script:s3_upload:staging']
grunt.registerTask 'useLocalDeps', 'use local dependencies instead of NPM dependencies', grunt.registerTask 'use-local-deps', 'use local dependencies instead of NPM dependencies',
['script:use_local_deps'] ['script:use_local_deps']
# Code Tasks ####################################################################################################### # Code Tasks #######################################################################################################
+1
View File
@@ -38,6 +38,7 @@
"client-sessions": "^0.7.0", "client-sessions": "^0.7.0",
"cookie-parser": "^1.3.5", "cookie-parser": "^1.3.5",
"crafting-guide-common": "^1.5.1", "crafting-guide-common": "^1.5.1",
"dotenv": "^2.0.0",
"express": "^4.13.3", "express": "^4.13.3",
"express-session": "^1.11.3", "express-session": "^1.11.3",
"jade": "^1.11.0", "jade": "^1.11.0",
+2 -2
View File
@@ -37,11 +37,11 @@ switch global.hostName
when 'prerender.crafting-guide.com' when 'prerender.crafting-guide.com'
global.env = 'prerender' global.env = 'prerender'
logger.level = Logger.FATAL logger.level = Logger.FATAL
apiBaseUrl = 'http://local.crafting-guide.com:8001' apiBaseUrl = 'http://local.crafting-guide.com:4347'
when 'local.crafting-guide.com', 'localhost' when 'local.crafting-guide.com', 'localhost'
global.env = 'local' global.env = 'local'
logger.level = Logger.DEBUG logger.level = Logger.DEBUG
apiBaseUrl = 'http://local.crafting-guide.com:8001' apiBaseUrl = 'http://local.crafting-guide.com:4347'
when 'staging.crafting-guide.com' when 'staging.crafting-guide.com'
global.env = 'staging' global.env = 'staging'
logger.level = Logger.VERBOSE logger.level = Logger.VERBOSE
@@ -79,9 +79,9 @@ module.exports = class LoginPageController extends PageController
@$userName = @$('.user .name') @$userName = @$('.user .name')
if (not @user?) and (@_params?.state?) and (@_params?.state is @loginSecurityToken) if (not @user?) and (@_params?.state?) and (@_params?.state is @loginSecurityToken)
@_client.completeGitHubLogin code:@_params.code @_client.createSession code:@_params.code
.then (response)=> .then (response)=>
attributes = response.json.data.user attributes = response.json
if attributes? if attributes?
global.site.user = new GitHubUser attributes global.site.user = new GitHubUser attributes
global.site.resumeAfterLogin() global.site.resumeAfterLogin()
@@ -133,7 +133,7 @@ module.exports = class LoginPageController extends PageController
return @State.ReadyToLogin return @State.ReadyToLogin
_compeleteLogin: (code)-> _compeleteLogin: (code)->
@_client.completeGitHubLogin code:code @_client.createSession code:code
.then (response)=> .then (response)=>
global.site.user = new GitHubUser response.json global.site.user = new GitHubUser response.json
.catch (error)=> .catch (error)=>
+3 -3
View File
@@ -59,9 +59,9 @@ module.exports = class SiteController extends BaseController
@$pageContentLoading.addClass 'hidden' @$pageContentLoading.addClass 'hidden'
loadCurrentUser: -> loadCurrentUser: ->
@client.fetchCurrentUser() @client.getCurrentUser()
.then (response)=> .then (response)=>
userData = response.json?.data?.user userData = response.json
@user = new GitHubUser userData if userData? @user = new GitHubUser userData if userData?
.catch (error)=> .catch (error)=>
if error?.response?.statusCode isnt 401 if error?.response?.statusCode isnt 401
@@ -77,7 +77,7 @@ module.exports = class SiteController extends BaseController
logout: -> logout: ->
@storage.store 'loginSecurityToken', null @storage.store 'loginSecurityToken', null
@user = null @user = null
@client.logout() @client.deleteSession()
.catch (error)-> .catch (error)->
logger.error -> "Failed to log out: #{error}" logger.error -> "Failed to log out: #{error}"
.done() .done()
+1 -1
View File
@@ -143,7 +143,7 @@ screen.type.compute = ->
return screen.type.desktop return screen.type.desktop
exports.server = {} exports.server = {}
exports.server.defaultPort = 8080 exports.server.defaultPort = 4347
exports.text = text = {} exports.text = text = {}
text.browseDescription = _.template 'Browse through complete item listings for over a dozen top mods and use the interactive crafting planner for step-by-step instructions' text.browseDescription = _.template 'Browse through complete item listings for over a dozen top mods and use the interactive crafting planner for step-by-step instructions'
+1 -2
View File
@@ -16,8 +16,7 @@ module.exports = class CraftingGuideServer
constructor: (port)-> constructor: (port)->
if not port? then throw new Error 'port is mandatory' if not port? then throw new Error 'port is mandatory'
if not _.isNumber port then throw new Error 'port must be a number' @port = port
@port = parseInt port
app = express() app = express()
app.disable 'etag' app.disable 'etag'
+3 -5
View File
@@ -5,7 +5,7 @@
# All rights reserved. # All rights reserved.
# #
CraftingGuideServer = require './crafting_guide_server' require('dotenv').config()
######################################################################################################################## ########################################################################################################################
@@ -15,10 +15,8 @@ global.w = require 'when'
######################################################################################################################## ########################################################################################################################
port = parseInt process.argv[2] CraftingGuideServer = require './crafting_guide_server'
port = if _.isNaN port then c.server.defaultPort else port server = new CraftingGuideServer process.env.WEBSITE_SERVER_PORT
server = new CraftingGuideServer port
server.start() server.start()
process.on 'SIGINT', -> process.on 'SIGINT', ->