Skip to content
This repository has been archived by the owner on Sep 9, 2020. It is now read-only.

Commit

Permalink
merge i18n
Browse files Browse the repository at this point in the history
  • Loading branch information
vgeorge committed May 13, 2014
2 parents c879a7a + 0c86af8 commit a96fc9e
Show file tree
Hide file tree
Showing 39 changed files with 2,354 additions and 447 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,5 @@ config/config.js

import/*
backup/*

translation_old.json
34 changes: 17 additions & 17 deletions app/controllers/access_token.js
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ var generateAccessToken = function(user, res) {
token.save(function(err) {
if (err) {
console.log(err);
return res.json(401, messages.errors(err));
return res.json(401, messages.mongooseErrors(req.i18n.t, err, 'accessToken'));
}

var response = _.extend({
Expand Down Expand Up @@ -57,13 +57,13 @@ var authSocialUser = function(provider, profile, res) {

User.load({email: userProfile.email}, function(err, user){
if (err)
return res.json(401, messages.error('Aconteceu um erro ao gerar o token.'));
return res.json(401, messages.error(req.i18n.t('access_token.authsocial.error.load_user')));
if (!user) {

user = new User(userProfile);
user.save(function(err){
if (err)
return res.json(401, messages.error('Erro gravando usuário.'));
return res.json(401, messages.error(req.i18n.t('access_token.authsocial.error.save_user')));
generateAccessToken(user, res);
})
} else {
Expand All @@ -75,7 +75,7 @@ var authSocialUser = function(provider, profile, res) {

if (user.isModified) {
user.save(function(err){
if (err) return res.json(err);
if (err) return res.json(400, messages.mongooseErrors(req.i18n.t, err, 'user'));
generateAccessToken(user, res);
})
} else generateAccessToken(user, res);
Expand Down Expand Up @@ -110,7 +110,7 @@ exports.google = function(req, res){
});
}
} else {
return res.json(400, messages.error('Missing Google authorization token.'));
return res.json(400, messages.error(req.i18n.t('access_token.google.error.missing_token')));
}
}

Expand Down Expand Up @@ -142,7 +142,7 @@ exports.facebook = function(req, res, next) {
});
}
} else {
return res.json(400, messages.error('Missing Facebook authorization token.'));
return res.json(400, messages.error(req.i18n.t('access_token.facebook.error.missing_token')));
}


Expand All @@ -154,37 +154,37 @@ exports.local = function(req, res, next) {

// Unknown error
if (err) {
return res.json(400, messages.errors(err));
return res.json(400, messages.mongooseError(req.i18n, err));

// Error raised by passport
} else if (info && info.message) {
res.json(400, messages.error(info.message));
res.json(400, messages.error(req.i18n.t(info.message)));

// User not found.
} else if (!user) {
return res.json(403, messages.error("Unauthorized."));
return res.json(403, messages.error(req.i18n.t("access_token.local.unauthorized")));
}

// User needs to finish migration.
else if (user.status == 'to_migrate') {
return res.json(400, messages.error("Sua conta não foi migrada ainda. Visite esta <a href='/migrate' target='_self'>página</a>."));
return res.json(400, messages.error(req.i18n.t("access_token.local.needs_migration")));

// User doesn't have a password, because it logged before via Facebook or Google
} else if (!user.hashed_password) {
mailer.passwordNeeded(user, req.app.locals.settings.general.serverUrl, user.callback_url, function(err){
if (err)
return res.json(400, messages.error("Você precisa de uma senha para acessar sua conta, mas houve um erro. Por favor, contate o suporte."));
return res.json(400, messages.error(req.i18n.t("access_token.local.error.send_email")));
else
return res.json(400, messages.error("Você precisa de uma senha para acessar sua conta. Verifique seu e-mail para continuar."));
return res.json(400, messages.error(req.i18n.t("access_token.local.error.need_password")));
});

// User needs to confirm his email
} else if (user.needsEmailConfirmation) {
mailer.confirmEmail(user, req.app.locals.settings.general.serverUrl, req.body.callback_url, function(err){
if (err)
return res.json(400, messages.error("Erro ao enviar e-mail de ativação, por favor, contate o suporte."));
return res.json(400, messages.error(req.i18n.t("access_token.local.error.send_email")));
else
return res.json(400, messages.error("Você ainda não ativou sua conta. Verifique seu e-mail."));
return res.json(400, messages.error(req.i18n.t("access_token.local.error.needs_activation")));
});

// Login successful, proceed with token
Expand All @@ -207,16 +207,16 @@ exports.logout = function(req, res, next) {
var access_token = req.headers.authorization.split(' ')[1];
AccessToken.findOne({_id: access_token}, function(err, at){
if (err) return res.json(400, err);
if (!at) return res.json(400, messages.error("Can't find access token."));
if (!at) return res.json(400, messages.error(req.i18n.t("access_token.logout.error.inexistent_token")));

at.expired = true;
at.save(function(err){
if (err) return res.json(400, err);
else return res.json(messages.success('Logout successful.'));
else return res.json(messages.success(req.i18n.t('access_token.logout.successful')));
});
});
} else {
res.json(400, messages.error('You are not logged in.'));
res.json(400, messages.error(req.i18n.t('access_token.logout.error.not_logged')));
}


Expand Down
34 changes: 19 additions & 15 deletions app/controllers/admin.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,7 @@ exports.firstAdmin = function(req, res) {

// If an admin user already exists, redirects to login
if (admin) {
console.log('admin already exists');
req.flash('error', 'An admin already exists.');
req.flash('error', req.i18n.t('admin.first_admin.error.already_exists'));
res.redirect('/admin/login');
} else {
var user = new User(req.body);
Expand All @@ -50,28 +49,28 @@ exports.firstAdmin = function(req, res) {

// Checks existence of all fields before sending to mongoose
if (!user.name)
preValidationErrors.push('Please enter a name.');
preValidationErrors.push(t('admin.first_admin.error.needs_name'));

if (!user.email)
preValidationErrors.push('Please enter a e-mail address.');
preValidationErrors.push(t('admin.first_admin.error.needs_email'));
else
if (!validator.isEmail(user.email))
preValidationErrors.push('Invalid e-mail address.');
preValidationErrors.push(t('admin.first_admin.error.invalid_email'));

if (!user.password)
preValidationErrors.push('Please type a password.');
preValidationErrors.push(t('admin.first_admin.error.password_missing'));
else if (user.password.length < 6)
preValidationErrors.push('Password should have at least 6 characters.');
preValidationErrors.push(t('admin.first_admin.error.password_length'));

if (preValidationErrors.length > 0){
res.render('admin/first_admin', {messages: messages.errorsArray(preValidationErrors).messages});
} else {
user.save(function (err) {
if (err) {
res.render('admin/first_admin', {messages: messages.mongooseErrors(err)});
res.render('admin/first_admin', messages.mongooseErrors(req.i18n.t, err, 'user'));
}
else {
req.flash('info', 'Admin created successfully.');
req.flash('info', req.i18n.t('admin.first_admin.success'));
res.redirect('/admin/login');
}
});
Expand Down Expand Up @@ -120,7 +119,7 @@ exports.index = function (req, res) {
exports.apiSettings = function(req, res) {
Settings.load(function(err, settings){
if (err)
return res.json(400, message.error('Could not retrive server info.'));
return res.json(400, message.error(t('admin.api_settings.error.load')));
else {

// clear mongoose fields
Expand Down Expand Up @@ -173,6 +172,7 @@ exports.update = function(req, res, next) {
settings.general = req.body.settings;

settings.general.onlyInvitedUsers = req.body.settings.onlyInvitedUsers ? true : false;
settings.general.language = req.body.settings.language;
settings.general.allowImports = req.body.settings.allowImports ? true : false;

settings.save(function(err){
Expand Down Expand Up @@ -244,7 +244,7 @@ exports.invite = function(req, res, next) {
if (err) res.render('500');
else {
if (user && !user.needsEmailConfirmation) {
res.render('admin/users/new', {message: 'User already active.'});
res.render('admin/users/new', {message: req.i18n.t('admin.invite_user.error.already_active')});
} else {

var
Expand All @@ -255,15 +255,16 @@ exports.invite = function(req, res, next) {
email: req.body.user.email,
role: req.body.user.role
},
callbackUrl: req.app.locals.settings.general.clientUrl + '/login'
callbackUrl: req.app.locals.settings.general.clientUrl + '/login',
t: req.i18n.t
}

mailer.invite(options, function(err) {
if (err) {
console.log(err);
next(err);
}
else return res.render('admin/users/new', {messages: messages.success('User invited successfully')});
else return res.render('admin/users/new', messages.success(req.i18n.t('admin.invite_user.success')));
});
}
}
Expand All @@ -285,12 +286,15 @@ exports.changeRole = function(req, res, next) {
if (err || !user) res.render('500');
else {
user.role = req.body.role;
console.log(user);
user.save(function(err){
if (err) res.render('500');
if (err) {
console.log(err);
res.render('500');
}
else {
User.find({}, function(err, users){
if (err) res.render('500');
// else res.render('admin/users/roles', {users: users});
else res.redirect('admin/users/roles');
})
}
Expand Down
39 changes: 17 additions & 22 deletions app/controllers/contents.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@
* Module dependencies.
*/

var mongoose = require('mongoose'),
var
messages = require('../../lib/messages'),
mongoose = require('mongoose'),
Content = mongoose.model('Content'),
Layer = mongoose.model('Layer'),
utils = require('../../lib/utils'),
extend = require('util')._extend,
_ = require('underscore');

/**
Expand All @@ -19,12 +19,7 @@ exports.load = function(req, res, next, id) {
if (err) {
return next(err)
} else if (!content) {
return res.json(400, {
messages: [{
status: 'error',
message: 'Content not found.'
}]
});
return res.json(400, messages.error(req.i18n.t('content.load.error.not_found')));
} else {
req.content = content;
next();
Expand Down Expand Up @@ -57,9 +52,9 @@ exports.index = function(req, res){
}

Content.list(options, function(err, contents) {
if (err) return res.json(400, utils.errorMessages(err.errors || err));
if (err) return res.json(400, messages.mongooseErrors(req.i18n.t, err, 'content'));
Content.count(options.criteria).exec(function (err, count) {
if (err) res.json(400, utils.errorMessages(err.errors || err));
if (err) res.json(400, messages.mongooseErrors(req.i18n.t, err, 'content'));
else res.json({options: options, contentsTotal: count, contents: contents});
})
})
Expand All @@ -82,18 +77,18 @@ exports.create = function (req, res) {
content.creator = req.user;

Layer.findById(req.body['layer'], function(err, layer){
if (err) res.json(400, utils.errorMessages(err.errors || err));
if (err) res.json(400, messages.mongooseErrors(req.i18n.t, err, 'layer'));
else {
layer.contents.addToSet(content);
layer.save(function(err){
if (err) res.json(400, utils.errorMessages(err.errors || err));
if (err) res.json(400, messages.mongooseErrors(req.i18n.t, err, 'layer'));
else {
content.updateSirTrevor(req.body.sirTrevorData, function(err, ct){
if (err) res.json(400, utils.errorMessages(err.errors || err));
if (err) res.json(400, messages.mongooseErrors(req.i18n.t, err, 'content'));
else
content.save(function(err){
// console.log('salvou o content assim\n'+content);
if (err) res.json(400, utils.errorMessages(err.errors || err));
if (err) res.json(400, messages.mongooseErrors(req.i18n.t, err, 'content'));
else res.json(content);
});
});
Expand All @@ -117,13 +112,13 @@ exports.update = function(req, res){
delete req.body['creator'];
delete req.body.layer;

content = extend(content, req.body)
content = _.extend(content, req.body)

content.updateSirTrevor(updatedSirTrevor, function(err, ct){
if (err) res.json(400, utils.errorMessages(err.errors || err));
if (err) res.json(400, messages.mongooseErrors(req.i18n.t, err, 'content'));
else
ct.save(function(err){
if (err) res.json(400, utils.errorMessages(err.errors || err));
if (err) res.json(400, messages.mongooseErrors(req.i18n.t, err, 'content'));
else res.json(ct);
});
});
Expand All @@ -148,17 +143,17 @@ exports.destroy = function(req, res){
content = req.content;

mongoose.model('Layer').findById(content.layer._id, function(err, layer){
if (err) res.json(400, utils.errorMessages(err.errors || err));
if (err) res.json(400, messages.mongooseErrors(req.i18n.t, err, 'layer'));
else {

layer.contents.pull({_id: content._id});

layer.save(function(err){
if (err) res.json(400, utils.errorMessages(err.errors || err));
if (err) res.json(400, messages.mongooseErrors(req.i18n.t, err, 'layer'));
else {
content.remove(function(err){
if (err) res.json(400, utils.errorMessages(err.errors || err));
else res.json({messages: [{status: 'ok', text: 'Content removed successfully.'}]});
if (err) res.json(400, messages.mongooseErrors(req.i18n.t, err, 'content'));
else res.json(messages.success(req.i18n.t('content.destroy.success')));
})
}
})
Expand Down
Loading

0 comments on commit a96fc9e

Please sign in to comment.