Created
July 16, 2019 20:15
-
-
Save juanplopes/93e687e65dca1eeb44640c122dbdcb0d to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(async () => { | |
var get = async(url, prop, dataless) => { | |
var data = (await (await fetch(url)).json()); | |
if (!dataless) data = data.data; | |
| |
var result = {}; | |
data.forEach(element => { | |
result[element[prop]] = element; | |
}); | |
return result; | |
} | |
let teams = await get('/rest/team', 'id') | |
let users = await get('/rest/user', 'id') | |
let roles = await get('/rest/role', 'id') | |
let permissions = await get('/rest/role/available-permissions', 'name', true) | |
| |
var result = ''; | |
var append = function(indent, text) { | |
result += ' '.repeat(indent) + text + '\n'; | |
}; | |
| |
Object.values(teams).forEach(team => { | |
append(0, 'Equipe: ' + team.name); | |
append(1, 'Perspectivas:'); | |
Object.values(team.perspectives).forEach(perspective => { | |
append(2, 'Pespectiva: ' + perspective.name); | |
}); | |
append(1, 'Papéis:'); | |
Object.values(team.roles).forEach(role => { | |
role = roles[role.id]; | |
append(2, 'Papel: ' + role.name); | |
role.permissions.forEach(permission => { | |
var fullPermission = permissions[permission.toLowerCase()]; | |
| |
append(3, fullPermission && fullPermission.descriptions['pt_br'] || "unknown: " + permission); | |
}); | |
}); | |
append(1, 'Usuários:'); | |
Object.values(team.users).forEach(user => { | |
user = users[user.id]; | |
append(2, 'Usuário: ' + (user.name && user.name + ' (' +user.username + ')' || user.username)); | |
append(3, 'Criado em: ' + (user.dateCreated && new Date(user.dateCreated).toLocaleString() || 'nunca')); | |
append(3, 'Último login: ' + (user.lastLogin && new Date(user.lastLogin).toLocaleString() || 'nunca')); | |
}); | |
}); | |
| |
console.log(result); | |
})(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment