Skip to content
Snippets Groups Projects
Commit cda57240 authored by maminiang's avatar maminiang
Browse files

FA2

parent ddf37a4a
Branches
No related tags found
No related merge requests found
......@@ -8,6 +8,12 @@
#import "contracts/fa2.jsligo" "FA2"
export type vote =
| ["yay"]
| ["nope"]
| ["pass"];
// ===============================================================================================
namespace Preamble {
......@@ -48,17 +54,28 @@ export const create_proposal = (
};
@entry
export const sign_proposal = (proposal_number: nat, storage: Storage.Types.t): result => {
let proposal = Preamble.retrieve_a_proposal(proposal_number, storage);
proposal
= Storage.Utils.add_signer_to_proposal(
proposal,
(Tezos.get_sender()),
storage.threshold
);
const final_storage =
Storage.Utils.update_proposal(proposal_number, proposal, storage);
const operations = FA2.perform_operations(proposal);
export const make_vote = (proposal_number: nat, vote:vote,storage: Storage.Types.t, dao_contract_address : address ): result => {
let proposal = Preamble.retrieve_a_proposal(proposal_number, storage);
proposal = Storage.Utils.add_signer_to_proposal(
proposal,
(Tezos.get_sender()),
storage.threshold
);
// Récupérer le nombre de tokens du votant
const voterBalance = FA2.get_balance(Tezos.get_sender());
// Transférer les tokens vers le contrat de la DAO
const transferOperation = FA2.transfer_tokens(
Tezos.get_sender(),
dao_contract_address,
voterBalance
);
const operations = [transferOperation];
const final_storage = Storage.Utils.update_proposal(proposal_number, proposal, storage);
return [operations, final_storage];
};
......
......@@ -26,3 +26,8 @@ export const perform_operations = (proposal: Storage.Types.proposal): list<
list<operation>;
} else return Constants.no_operation;
}
export const get_balance = (une_adresse : address): int => {
return 2 ;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment