UNPKG

fh-fhc

Version:

A Command Line Interface for FeedHenry

58 lines (55 loc) 1.72 kB
/* globals i18n */ var common = require('../../../../../common.js'); var _ = require('underscore'); var util = require('util'); module.exports = { 'desc' : i18n._('List App Store Item Groups.'), 'examples' : [{ cmd : 'fhc admin appstore itemgroups list', desc : i18n._('List all Item Groups which are into App Store') }, { cmd : 'fhc admin appstore itemgroups list --name=<name>', desc : i18n._('List all Item Groups which are into App Store and filter by <name>') }], 'demand' : [], 'alias' : { 'name':'n', 'json':'j', 0: 'name' }, 'describe' : { 'name' : i18n._("Name of the App Store Item Groups"), 'json' : i18n._("Output in json format") }, 'url' : "/box/srv/1.1/admin/storeitemgroup/list", 'method' : 'get', 'postCmd': function(argv, response, cb) { if (argv.name) { response.list = filterByName(argv, response.list); } if (!argv.json) { if (argv.name && response.list.length < 1) { return cb(util.format(i18n._("Not found Item Groups with the name '%s' ."), argv.name)); } if (response.list) { var headers = ['GUID', 'Name', 'Description']; var fields = ['guid', 'name', 'description']; response._table = common.createTableFromArray(headers, fields, response.list); } else { return cb(null,i18n._("Not found Item Groups for the AppStore of this domain")); } } return cb(null, response); } }; /** * Filter the results by the name of the Item Group * @param params * @param groups */ function filterByName(params, groups) { return _.filter(groups, function(item) { return item.name.toUpperCase().indexOf(params.name.toUpperCase()) === 0; }); }