Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Validator
- *
- * @module :: Validator
- * @description :: Contains helper for validation.
- */
- var check = require('validator').check;
- module.exports = {
- /**
- * Check an entire object using Validator module. DON'T WORKS.
- * @param params
- * @param callback
- * @param env
- * @returns {{messages: Array, status: boolean}}
- *
- * @example validator.check([{
- value: req.params.email,
- check: [{
- function: 'isNumeric',
- message: 'This is not a number',
- args: []
- }, {
- function: 'contains',
- message: 'The value doesn\'t have a 0 in it',
- args: ['0']
- }
- ]
- }], function(result){
- res.json({message: 'Result validation', data: {result: result}, status: result.status});
- });
- */
- check: function(params, callback, env){
- // Define default environnment.
- if(!env){
- env = 'production';
- }
- // Errors.
- var errors = {
- messages: [],
- status: true// No error.
- };
- // Check params object content.
- if((!params || params.length === 0) && env === 'development'){
- errors.messages.push({
- type: 'Debug',
- file: 'validator.js',
- method: 'check',
- message: 'The first arg must be an array which must contains at least one object.'
- });
- errors.status = false;
- }
- if(errors.status){
- // Check each rule.
- for(var i = 0; i < params.length; i++){
- try{
- var value = params[i].value;
- var rule = params[i].check;
- for(var j = 0; j < rule.length; j++){
- try{
- console.log('VAL: '+value);
- console.log('MESSAGE: '+rule[j].message);
- console.log('FUNCTION: '+rule[j]['function']);
- // I have a problem here because this line don't works.
- check(value, rule[j].message).rule[j]['function']();
- }catch(e){
- errors.messages.push({
- type: 'Error',
- message: (e.message ? e.message : e)// Default is e.message, if exists, else the entire message.
- });
- }
- }
- }catch(e){
- errors.messages.push({
- type: 'Debug',
- message: (e.message ? e.message : e)// Default is e.message, if exists, else the entire message.
- });
- }
- }
- }
- // Do callback or return results.
- if(callback){
- callback(errors);
- }else{
- return errors;
- }
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement