feat: view project

This commit is contained in:
Richard Ramos 2019-05-22 16:27:57 -04:00
parent 16ab77ef1a
commit d5d2786b97
3 changed files with 34 additions and 3 deletions

View File

@ -76,11 +76,11 @@ class Actions {
});
for(let i = 1; i <= numProjects; i++){
const pledge = await this.contracts.LiquidPledging.methods.getPledgeAdmin(i).call();
if(pledge.adminType !== '2') continue;
const pledgeAdmin = await this.contracts.LiquidPledging.methods.getPledgeAdmin(i).call();
if(pledgeAdmin.adminType !== '2') continue;
table.push(
[i, pledge.name, pledge.url, pledge.parentProject, pledge.canceled ? 'Canceled' : 'Active', pledge.commitTime, pledge.addr, pledge.plugin]
[i, pledgeAdmin.name, pledgeAdmin.url, pledgeAdmin.parentProject, pledgeAdmin.canceled ? 'Canceled' : 'Active', pledgeAdmin.commitTime, pledgeAdmin.addr, pledgeAdmin.plugin]
);
}
@ -90,6 +90,24 @@ class Actions {
}
}
viewProject(params) {
let text = `await LiquidPledging.methods.getPledgeAdmin(\"${params.id}\").call()`
doAction(text, async () => {
try {
const pledgeAdmin = await this.contracts.LiquidPledging.methods.getPledgeAdmin(params.id).call();
const table = new Table({
head: ['Id', 'Name', 'URL', 'ParentProject', 'Status', 'Commit Time', 'Owner', 'Plugin']
});
table.push(
[params.id, pledgeAdmin.name, pledgeAdmin.url, pledgeAdmin.parentProject, pledgeAdmin.canceled ? 'Canceled' : 'Active', pledgeAdmin.commitTime, pledgeAdmin.addr, pledgeAdmin.plugin]
);
console.log(table.toString());
} catch(error){
console.log("Couldn't obtain the project: ", error.message);
}
});
}
addGiver(params) {
let text = `await LiquidPledging.methods.addGiver(\"${params.name}\", \"${params.url}\", ${params.commitTime}, \"${params.plugin}\").send({from: \"${web3.eth.defaultAccount}\", gas: 2000000})`
doAction(text, async () => {

View File

@ -15,6 +15,8 @@ async function app(actions) {
let params = (await menus.createProject(actions.web3().eth.defaultAccount))
actions.addProject(params);
} if (subAction === 'View Project') {
let params = (await menus.viewProject())
actions.viewProject(params);
} if (subAction === 'Donate to Project') {
let params = (await menus.donate())
actions.donate(params);

View File

@ -150,6 +150,17 @@ const menus = {
}
])
},
viewProject: async function() {
return inquirer.prompt([
{
type: 'input',
name: 'id',
message: 'What is the project ID?',
filter: Number,
default: 0
}
])
},
createFunder: async function() {
return inquirer.prompt([