diff --git a/app/controllers/articles.server.controller.js b/app/controllers/articles.server.controller.js index 6cdc331873..45372166c5 100644 --- a/app/controllers/articles.server.controller.js +++ b/app/controllers/articles.server.controller.js @@ -6,6 +6,29 @@ var mongoose = require('mongoose'), Article = mongoose.model('Article'), _ = require('lodash'); +/** + * Get the error message from error object + */ +var getErrorMessage = function(err) { + var message = ''; + + if (err.code) { + switch (err.code) { + case 11000: + case 11001: + message = 'Unique already exists'; + break; + default: + message = 'Something went wrong'; + } + } else { + for (var errName in err.errors) { + if (err.errors[errName].message) message = err.errors[errName].message; + } + } + + return message; +}; /** * Create a article @@ -16,9 +39,8 @@ exports.create = function(req, res) { article.save(function(err) { if (err) { - return res.send('users/signup', { - errors: err.errors, - article: article + return res.send(400, { + message: getErrorMessage(err) }); } else { res.jsonp(article); @@ -43,8 +65,8 @@ exports.update = function(req, res) { article.save(function(err) { if (err) { - res.render('error', { - status: 500 + return res.send(400, { + message: getErrorMessage(err) }); } else { res.jsonp(article); @@ -60,8 +82,8 @@ exports.delete = function(req, res) { article.remove(function(err) { if (err) { - res.render('error', { - status: 500 + return res.send(400, { + message: getErrorMessage(err) }); } else { res.jsonp(article); @@ -75,8 +97,8 @@ exports.delete = function(req, res) { exports.list = function(req, res) { Article.find().sort('-created').populate('user', 'displayName').exec(function(err, articles) { if (err) { - res.render('error', { - status: 500 + return res.send(400, { + message: getErrorMessage(err) }); } else { res.jsonp(articles); diff --git a/app/controllers/core.server.controller.js b/app/controllers/core.server.controller.js index 7073572639..0412dbeb9b 100644 --- a/app/controllers/core.server.controller.js +++ b/app/controllers/core.server.controller.js @@ -4,7 +4,7 @@ * Module dependencies. */ exports.index = function(req, res) { - res.render('index.html', { + res.render('index.server.view.html', { user: req.user || null }); }; \ No newline at end of file diff --git a/app/views/404.html b/app/views/404.server.view.html similarity index 71% rename from app/views/404.html rename to app/views/404.server.view.html index c993001842..0074fa456d 100644 --- a/app/views/404.html +++ b/app/views/404.server.view.html @@ -1,4 +1,4 @@ -{% extends 'layout.html' %} +{% extends 'layout.server.view.html' %} {% block content %}

Page Not Found

diff --git a/app/views/500.html b/app/views/500.server.view.html similarity index 66% rename from app/views/500.html rename to app/views/500.server.view.html index 7bbded9e38..8e6711b72a 100644 --- a/app/views/500.html +++ b/app/views/500.server.view.html @@ -1,4 +1,4 @@ -{% extends 'layout.html' %} +{% extends 'layout.server.view.html' %} {% block content %}

Server Error

diff --git a/app/views/index.html b/app/views/index.server.view.html similarity index 63% rename from app/views/index.html rename to app/views/index.server.view.html index 832522f4d0..7e60893b1f 100644 --- a/app/views/index.html +++ b/app/views/index.server.view.html @@ -1,4 +1,4 @@ -{% extends 'layout.html' %} +{% extends 'layout.server.view.html' %} {% block content %}
diff --git a/app/views/layout.html b/app/views/layout.server.view.html similarity index 94% rename from app/views/layout.html rename to app/views/layout.server.view.html index aebbb40474..e13028aed1 100644 --- a/app/views/layout.html +++ b/app/views/layout.server.view.html @@ -43,7 +43,7 @@ - +
{% block content %}{% endblock %} diff --git a/config/express.js b/config/express.js index 0b3560d397..b5961e49ed 100755 --- a/config/express.js +++ b/config/express.js @@ -115,14 +115,14 @@ module.exports = function(db) { console.error(err.stack); // Error page - res.status(500).render('500.html', { + res.status(500).render('500.server.view.html', { error: err.stack }); }); // Assume 404 since no middleware responded app.use(function(req, res) { - res.status(404).render('404.html', { + res.status(404).render('404.server.view.html', { url: req.originalUrl, error: 'Not Found' }); diff --git a/public/modules/articles/articles.module.js b/public/modules/articles/articles.client.module.js similarity index 100% rename from public/modules/articles/articles.module.js rename to public/modules/articles/articles.client.module.js diff --git a/public/modules/articles/config/articles.config.js b/public/modules/articles/config/articles.client.config.js similarity index 100% rename from public/modules/articles/config/articles.config.js rename to public/modules/articles/config/articles.client.config.js diff --git a/public/modules/articles/config/articles.routes.js b/public/modules/articles/config/articles.client.routes.js similarity index 61% rename from public/modules/articles/config/articles.routes.js rename to public/modules/articles/config/articles.client.routes.js index 5d5b8dad4e..7b78e702ed 100755 --- a/public/modules/articles/config/articles.routes.js +++ b/public/modules/articles/config/articles.client.routes.js @@ -7,19 +7,19 @@ angular.module('articles').config(['$stateProvider', $stateProvider. state('listArticles', { url: '/articles', - templateUrl: 'modules/articles/views/list.html' + templateUrl: 'modules/articles/views/list.client.view.html' }). state('createArticle', { url: '/articles/create', - templateUrl: 'modules/articles/views/create.html' + templateUrl: 'modules/articles/views/create.client.view.html' }). state('viewArticle', { url: '/articles/:articleId', - templateUrl: 'modules/articles/views/view.html' + templateUrl: 'modules/articles/views/view.client.view.html' }). state('editArticle', { url: '/articles/:articleId/edit', - templateUrl: 'modules/articles/views/edit.html' + templateUrl: 'modules/articles/views/edit.client.view.html' }); } ]); \ No newline at end of file diff --git a/public/modules/articles/controllers/articles.controller.js b/public/modules/articles/controllers/articles.client.controller.js similarity index 100% rename from public/modules/articles/controllers/articles.controller.js rename to public/modules/articles/controllers/articles.client.controller.js diff --git a/public/modules/articles/services/articles.service.js b/public/modules/articles/services/articles.client.service.js similarity index 100% rename from public/modules/articles/services/articles.service.js rename to public/modules/articles/services/articles.client.service.js diff --git a/public/modules/articles/tests/articles.controller.test.js b/public/modules/articles/tests/articles.client.controller.test.js similarity index 100% rename from public/modules/articles/tests/articles.controller.test.js rename to public/modules/articles/tests/articles.client.controller.test.js diff --git a/public/modules/articles/views/create.html b/public/modules/articles/views/create.client.view.html similarity index 100% rename from public/modules/articles/views/create.html rename to public/modules/articles/views/create.client.view.html diff --git a/public/modules/articles/views/edit.html b/public/modules/articles/views/edit.client.view.html similarity index 100% rename from public/modules/articles/views/edit.html rename to public/modules/articles/views/edit.client.view.html diff --git a/public/modules/articles/views/list.html b/public/modules/articles/views/list.client.view.html similarity index 100% rename from public/modules/articles/views/list.html rename to public/modules/articles/views/list.client.view.html diff --git a/public/modules/articles/views/view.html b/public/modules/articles/views/view.client.view.html similarity index 100% rename from public/modules/articles/views/view.html rename to public/modules/articles/views/view.client.view.html diff --git a/public/modules/core/config/core.routes.js b/public/modules/core/config/core.client.routes.js similarity index 84% rename from public/modules/core/config/core.routes.js rename to public/modules/core/config/core.client.routes.js index 270503b413..894e3a6caf 100755 --- a/public/modules/core/config/core.routes.js +++ b/public/modules/core/config/core.client.routes.js @@ -10,7 +10,7 @@ angular.module('core').config(['$stateProvider', '$urlRouterProvider', $stateProvider. state('home', { url: '/', - templateUrl: 'modules/core/views/home.html' + templateUrl: 'modules/core/views/home.client.view.html' }); } ]); \ No newline at end of file diff --git a/public/modules/core/controllers/header.controller.js b/public/modules/core/controllers/header.client.controller.js similarity index 100% rename from public/modules/core/controllers/header.controller.js rename to public/modules/core/controllers/header.client.controller.js diff --git a/public/modules/core/controllers/home.controller.js b/public/modules/core/controllers/home.client.controller.js similarity index 100% rename from public/modules/core/controllers/home.controller.js rename to public/modules/core/controllers/home.client.controller.js diff --git a/public/modules/core/core.module.js b/public/modules/core/core.client.module.js similarity index 100% rename from public/modules/core/core.module.js rename to public/modules/core/core.client.module.js diff --git a/public/modules/core/services/menus.service.js b/public/modules/core/services/menus.client.service.js similarity index 100% rename from public/modules/core/services/menus.service.js rename to public/modules/core/services/menus.client.service.js diff --git a/public/modules/core/tests/header.controller.test.js b/public/modules/core/tests/header.client.controller.test.js similarity index 100% rename from public/modules/core/tests/header.controller.test.js rename to public/modules/core/tests/header.client.controller.test.js diff --git a/public/modules/core/tests/home.controller.test.js b/public/modules/core/tests/home.client.controller.test.js similarity index 100% rename from public/modules/core/tests/home.controller.test.js rename to public/modules/core/tests/home.client.controller.test.js diff --git a/public/modules/core/views/header.html b/public/modules/core/views/header.client.view.html similarity index 100% rename from public/modules/core/views/header.html rename to public/modules/core/views/header.client.view.html diff --git a/public/modules/core/views/home.html b/public/modules/core/views/home.client.view.html similarity index 100% rename from public/modules/core/views/home.html rename to public/modules/core/views/home.client.view.html diff --git a/public/modules/users/config/users.config.js b/public/modules/users/config/users.client.config.js similarity index 100% rename from public/modules/users/config/users.config.js rename to public/modules/users/config/users.client.config.js diff --git a/public/modules/users/config/users.routes.js b/public/modules/users/config/users.client.routes.js similarity index 55% rename from public/modules/users/config/users.routes.js rename to public/modules/users/config/users.client.routes.js index f01bd6993b..24f60726eb 100755 --- a/public/modules/users/config/users.routes.js +++ b/public/modules/users/config/users.client.routes.js @@ -7,23 +7,23 @@ angular.module('users').config(['$stateProvider', $stateProvider. state('profile', { url: '/settings/profile', - templateUrl: 'modules/users/views/settings/profile.html' + templateUrl: 'modules/users/views/settings/profile.client.view.html' }). state('password', { url: '/settings/password', - templateUrl: 'modules/users/views/settings/password.html' + templateUrl: 'modules/users/views/settings/password.client.view.html' }). state('accounts', { url: '/settings/accounts', - templateUrl: 'modules/users/views/settings/accounts.html' + templateUrl: 'modules/users/views/settings/accounts.client.view.html' }). state('signup', { url: '/signup', - templateUrl: 'modules/users/views/signup.html' + templateUrl: 'modules/users/views/signup.client.view.html' }). state('signin', { url: '/signin', - templateUrl: 'modules/users/views/signin.html' + templateUrl: 'modules/users/views/signin.client.view.html' }); } ]); \ No newline at end of file diff --git a/public/modules/users/controllers/authentication.controller.js b/public/modules/users/controllers/authentication.client.controller.js similarity index 100% rename from public/modules/users/controllers/authentication.controller.js rename to public/modules/users/controllers/authentication.client.controller.js diff --git a/public/modules/users/controllers/settings.controller.js b/public/modules/users/controllers/settings.client.controller.js similarity index 100% rename from public/modules/users/controllers/settings.controller.js rename to public/modules/users/controllers/settings.client.controller.js diff --git a/public/modules/users/services/authentication.service.js b/public/modules/users/services/authentication.client.service.js similarity index 100% rename from public/modules/users/services/authentication.service.js rename to public/modules/users/services/authentication.client.service.js diff --git a/public/modules/users/services/users.service.js b/public/modules/users/services/users.client.service.js similarity index 100% rename from public/modules/users/services/users.service.js rename to public/modules/users/services/users.client.service.js diff --git a/public/modules/users/users.module.js b/public/modules/users/users.client.module.js similarity index 100% rename from public/modules/users/users.module.js rename to public/modules/users/users.client.module.js diff --git a/public/modules/users/views/settings/accounts.html b/public/modules/users/views/settings/accounts.client.view.html similarity index 100% rename from public/modules/users/views/settings/accounts.html rename to public/modules/users/views/settings/accounts.client.view.html diff --git a/public/modules/users/views/settings/password.html b/public/modules/users/views/settings/password.client.view.html similarity index 100% rename from public/modules/users/views/settings/password.html rename to public/modules/users/views/settings/password.client.view.html diff --git a/public/modules/users/views/settings/profile.html b/public/modules/users/views/settings/profile.client.view.html similarity index 100% rename from public/modules/users/views/settings/profile.html rename to public/modules/users/views/settings/profile.client.view.html diff --git a/public/modules/users/views/signin.html b/public/modules/users/views/signin.client.view.html similarity index 100% rename from public/modules/users/views/signin.html rename to public/modules/users/views/signin.client.view.html diff --git a/public/modules/users/views/signup.html b/public/modules/users/views/signup.client.view.html similarity index 100% rename from public/modules/users/views/signup.html rename to public/modules/users/views/signup.client.view.html