cleaned languages.js

v1.18.x
barisusakli 11 years ago
parent cac3ebc9e5
commit 75bf9e62be

@ -1,3 +1,5 @@
'use strict';
var fs = require('fs'), var fs = require('fs'),
path = require('path'), path = require('path'),
async = require('async'), async = require('async'),
@ -9,29 +11,34 @@ Languages.list = function(callback) {
languages = []; languages = [];
fs.readdir(languagesPath, function(err, files) { fs.readdir(languagesPath, function(err, files) {
if (err) {
return callback(err);
}
async.each(files, function(folder, next) { async.each(files, function(folder, next) {
fs.stat(path.join(languagesPath, folder), function(err, stat) { fs.stat(path.join(languagesPath, folder), function(err, stat) {
if (!err) { if (err) {
if (stat.isDirectory()) { return next(err);
var configPath = path.join(languagesPath, folder, 'language.json'); }
fs.exists(configPath, function(exists) {
if (exists) { if (!stat.isDirectory()) {
fs.readFile(configPath, function(err, stream) { return next();
languages.push(JSON.parse(stream.toString())); }
next();
}); var configPath = path.join(languagesPath, folder, 'language.json');
} else {
next(); fs.readFile(configPath, function(err, stream) {
} if (err) {
});
} else {
next(); next();
} }
} else { languages.push(JSON.parse(stream.toString()));
next(); next();
} });
}); });
}, function(err) { }, function(err) {
if (err) {
return callback(err);
}
// Sort alphabetically // Sort alphabetically
languages = languages.sort(function(a, b) { languages = languages.sort(function(a, b) {
return a.code > b.code ? 1 : -1; return a.code > b.code ? 1 : -1;

Loading…
Cancel
Save