account resolution error fix#1
This commit is contained in:
parent
23a98aea9c
commit
682a927049
|
|
@ -5,7 +5,7 @@ use anchor_spl::{
|
||||||
};
|
};
|
||||||
use crate::{error::BettingError, shared::transfer_tokens_pda, state::{BetVault, BetsList}};
|
use crate::{error::BettingError, shared::transfer_tokens_pda, state::{BetVault, BetsList}};
|
||||||
|
|
||||||
pub fn close_token_bet(ctx: Context<CloseBetToken>, winner: Pubkey, userid: String) -> Result<()> {
|
pub fn close_token_bet(ctx: Context<CloseBetToken>, winner: Pubkey, userid: String, owner:Pubkey, game_id:String, nonce:u64) -> Result<()> {
|
||||||
let bet_vault = &mut ctx.accounts.bet_vault;
|
let bet_vault = &mut ctx.accounts.bet_vault;
|
||||||
require!(
|
require!(
|
||||||
bet_vault.owner == winner || bet_vault.joiner == winner || bet_vault.owner_id == userid || bet_vault.joiner_id == userid,
|
bet_vault.owner == winner || bet_vault.joiner == winner || bet_vault.owner_id == userid || bet_vault.joiner_id == userid,
|
||||||
|
|
@ -40,13 +40,14 @@ pub fn close_token_bet(ctx: Context<CloseBetToken>, winner: Pubkey, userid: Stri
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Accounts)]
|
#[derive(Accounts)]
|
||||||
|
#[instruction( winner: Pubkey, userid: String,owner:Pubkey, game_id:String, nonce:u64)]
|
||||||
pub struct CloseBetToken<'info> {
|
pub struct CloseBetToken<'info> {
|
||||||
#[account(mut)]
|
#[account(mut)]
|
||||||
pub bets_list: Account<'info, BetsList>,
|
pub bets_list: Account<'info, BetsList>,
|
||||||
|
|
||||||
#[account(
|
#[account(
|
||||||
mut,
|
mut,
|
||||||
seeds = [b"bet_vault", bet_vault.owner.as_ref(), bet_vault.game_id.as_bytes(), &bet_vault.nonce.to_le_bytes()],
|
seeds = [b"bet_vault", owner.as_ref(), game_id.as_bytes(), &nonce.to_le_bytes()],
|
||||||
bump
|
bump
|
||||||
)]
|
)]
|
||||||
pub bet_vault: Account<'info, BetVault>,
|
pub bet_vault: Account<'info, BetVault>,
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ use anchor_spl::{
|
||||||
};
|
};
|
||||||
use crate::{error::BettingError, shared::transfer_tokens_pda, *};
|
use crate::{error::BettingError, shared::transfer_tokens_pda, *};
|
||||||
|
|
||||||
pub fn handle_deduct_fees_token(ctx: Context<DeductFeesToken>, winner: Pubkey, userid: String) -> Result<()> {
|
pub fn handle_deduct_fees_token(ctx: Context<DeductFeesToken>, winner: Pubkey, userid: String, owner:Pubkey, game_id:String, nonce:u64) -> Result<()> {
|
||||||
let bet_vault = &mut ctx.accounts.bet_vault;
|
let bet_vault = &mut ctx.accounts.bet_vault;
|
||||||
require!(
|
require!(
|
||||||
bet_vault.owner == winner || bet_vault.joiner == winner || bet_vault.owner_id == userid || bet_vault.joiner_id == userid,
|
bet_vault.owner == winner || bet_vault.joiner == winner || bet_vault.owner_id == userid || bet_vault.joiner_id == userid,
|
||||||
|
|
@ -90,13 +90,14 @@ pub fn handle_deduct_fees_token(ctx: Context<DeductFeesToken>, winner: Pubkey, u
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Accounts)]
|
#[derive(Accounts)]
|
||||||
|
#[instruction(winner: Pubkey, userid: String,owner:Pubkey, game_id:String, nonce:u64)]
|
||||||
pub struct DeductFeesToken<'info> {
|
pub struct DeductFeesToken<'info> {
|
||||||
#[account(mut)]
|
#[account(mut)]
|
||||||
pub bets_list: Account<'info, BetsList>,
|
pub bets_list: Account<'info, BetsList>,
|
||||||
|
|
||||||
#[account(
|
#[account(
|
||||||
mut,
|
mut,
|
||||||
seeds = [b"bet_vault", bet_vault.owner.as_ref(), bet_vault.game_id.as_bytes(), &bet_vault.nonce.to_le_bytes()],
|
seeds = [b"bet_vault", owner.as_ref(), game_id.as_bytes(), &nonce.to_le_bytes()],
|
||||||
bump
|
bump
|
||||||
)]
|
)]
|
||||||
pub bet_vault: Account<'info, BetVault>,
|
pub bet_vault: Account<'info, BetVault>,
|
||||||
|
|
|
||||||
|
|
@ -48,12 +48,12 @@ pub mod bets {
|
||||||
join_bet_token::join_token_bet(ctx, user_id, game_id)
|
join_bet_token::join_token_bet(ctx, user_id, game_id)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn deduct_fees_token(ctx:Context<DeductFeesToken>, winner:Pubkey, userid:String)->Result<()>{
|
pub fn deduct_fees_token(ctx:Context<DeductFeesToken>, winner:Pubkey, userid:String, owner:Pubkey, game_id:String, nonce:u64)->Result<()>{
|
||||||
deduct_fees_token::handle_deduct_fees_token(ctx, winner, userid)
|
deduct_fees_token::handle_deduct_fees_token(ctx, winner, userid, owner, game_id, nonce)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn close_bet_token(ctx:Context<CloseBetToken>, winner:Pubkey, userid:String)->Result<()>{
|
pub fn close_bet_token(ctx:Context<CloseBetToken>, winner:Pubkey, userid:String, owner:Pubkey, game_id:String, nonce:u64)->Result<()>{
|
||||||
close_bet_token::close_token_bet(ctx, winner, userid)
|
close_bet_token::close_token_bet(ctx, winner, userid, owner, game_id, nonce)
|
||||||
}
|
}
|
||||||
pub fn clear_bets_list(ctx: Context<ClearBetsList>) -> Result<()> {
|
pub fn clear_bets_list(ctx: Context<ClearBetsList>) -> Result<()> {
|
||||||
clear_bets_list::clear(ctx)
|
clear_bets_list::clear(ctx)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user