diff --git a/client/homebrew/pages/editPage/editPage.jsx b/client/homebrew/pages/editPage/editPage.jsx index 6f1a8d91c..6d8939d56 100644 --- a/client/homebrew/pages/editPage/editPage.jsx +++ b/client/homebrew/pages/editPage/editPage.jsx @@ -1,6 +1,5 @@ /* eslint-disable max-lines */ require('./editPage.less'); -require('../../styles/nav-item-error-container.less'); const React = require('react'); const createClass = require('create-react-class'); const _ = require('lodash'); @@ -263,7 +262,7 @@ const EditPage = createClass({ renderSaveButton : function(){ if(this.state.error){ - return require('../../utils/render-error-nav-item.js')(this, this.state.error); + return require('../../utils/render-error-nav-item.jsx')(this, this.state.error); } if(this.state.autoSaveWarning && this.hasChanges()){ diff --git a/client/homebrew/pages/homePage/homePage.jsx b/client/homebrew/pages/homePage/homePage.jsx index 228a406d7..b594a256e 100644 --- a/client/homebrew/pages/homePage/homePage.jsx +++ b/client/homebrew/pages/homePage/homePage.jsx @@ -1,5 +1,4 @@ require('./homePage.less'); -require('../../styles/nav-item-error-container.less'); const React = require('react'); const createClass = require('create-react-class'); const _ = require('lodash'); @@ -58,7 +57,7 @@ const HomePage = createClass({ }, renderSaveError : function(){ if(this.state.error) { - return require('../../utils/render-error-nav-item.js')(this, this.state.error); + return require('../../utils/render-error-nav-item.jsx')(this, this.state.error); } return null; }, diff --git a/client/homebrew/pages/newPage/newPage.jsx b/client/homebrew/pages/newPage/newPage.jsx index 8f9fc7649..1563d0fd8 100644 --- a/client/homebrew/pages/newPage/newPage.jsx +++ b/client/homebrew/pages/newPage/newPage.jsx @@ -1,6 +1,5 @@ /*eslint max-lines: ["warn", {"max": 300, "skipBlankLines": true, "skipComments": true}]*/ require('./newPage.less'); -require('../../styles/nav-item-error-container.less'); const React = require('react'); const createClass = require('create-react-class'); const _ = require('lodash'); @@ -158,7 +157,7 @@ const NewPage = createClass({ renderSaveButton : function(){ if(this.state.error){ - return require('../../utils/render-error-nav-item.js')(this, this.state.error); + return require('../../utils/render-error-nav-item.jsx')(this, this.state.error); } if(this.state.isSaving){ diff --git a/client/homebrew/utils/render-error-nav-item.js b/client/homebrew/utils/render-error-nav-item.jsx similarity index 98% rename from client/homebrew/utils/render-error-nav-item.js rename to client/homebrew/utils/render-error-nav-item.jsx index bf3960a29..0359c1e43 100644 --- a/client/homebrew/utils/render-error-nav-item.js +++ b/client/homebrew/utils/render-error-nav-item.jsx @@ -1,3 +1,4 @@ +require('./render-error-nav-item.less'); const React = require('react'); const Nav = require('naturalcrit/nav/nav.jsx'); diff --git a/client/homebrew/styles/nav-item-error-container.less b/client/homebrew/utils/render-error-nav-item.less similarity index 100% rename from client/homebrew/styles/nav-item-error-container.less rename to client/homebrew/utils/render-error-nav-item.less diff --git a/client/homebrew/utils/request-middleware.js b/client/homebrew/utils/request-middleware.js index 441218521..f6bc2571b 100644 --- a/client/homebrew/utils/request-middleware.js +++ b/client/homebrew/utils/request-middleware.js @@ -1,6 +1,6 @@ const request = require('superagent'); -const addHeader = (request)=>request.set('Homebrewery-Version', sessionStorage.getItem('version')); +const addHeader = (request)=>request.set('Homebrewery-Version', global.version); const requestMiddleware = { get : (path)=>addHeader(request.get(path)), diff --git a/client/template.js b/client/template.js index a36a04f12..cab4790b9 100644 --- a/client/template.js +++ b/client/template.js @@ -22,9 +22,6 @@ const template = async function(name, title='', props = {}){
${require(`../build/${name}/ssr.js`)(props)}
- diff --git a/server/homebrew.api.js b/server/homebrew.api.js index e108a3946..e6314a635 100644 --- a/server/homebrew.api.js +++ b/server/homebrew.api.js @@ -336,7 +336,7 @@ If you believe you should have access to this brew, ask the file owner to invite } }; -router.use('/api', require('./middleware.js').versionMismatch); +router.use('/api', require('./middleware/check-client-version.js')); router.post('/api', asyncHandler(api.newBrew)); router.put('/api/:id', asyncHandler(api.getBrew('edit', true)), asyncHandler(api.updateBrew)); router.put('/api/update/:id', asyncHandler(api.getBrew('edit', true)), asyncHandler(api.updateBrew)); diff --git a/server/middleware.js b/server/middleware.js deleted file mode 100644 index 2d40d7263..000000000 --- a/server/middleware.js +++ /dev/null @@ -1,17 +0,0 @@ -const middleware = { - versionMismatch : (req, res, next)=>{ - const userVersion = req.get('Homebrewery-Version'); - const version = require('./../package.json').version; - - if(userVersion != version) { - console.warn(`Version mismatch -- expected: ${version}, actual: ${userVersion}`); - return res.status(412).send({ - message : `Client version ${userVersion} is out of date. Please save your changes elsewhere and refresh to pick up client version ${version}.` - }); - } - - next(); - } -}; - -module.exports = middleware; \ No newline at end of file diff --git a/server/middleware/check-client-version.js b/server/middleware/check-client-version.js new file mode 100644 index 000000000..e9caf6eff --- /dev/null +++ b/server/middleware/check-client-version.js @@ -0,0 +1,12 @@ +module.exports = (req, res, next)=>{ + const userVersion = req.get('Homebrewery-Version'); + const version = require('../../package.json').version; + + if(userVersion != version) { + return res.status(412).send({ + message : `Client version ${userVersion} is out of date. Please save your changes elsewhere and refresh to pick up client version ${version}.` + }); + } + + next(); +};