Merge remote-tracking branch 'origin/prod' into tokens

This commit is contained in:
Sewmina Dilshan 2025-06-18 20:18:58 +05:30
commit 23a98aea9c
4 changed files with 34 additions and 2 deletions

View File

@ -0,0 +1,22 @@
use anchor_lang::prelude::*;
use crate::*;
pub fn clear(ctx: Context<ClearBetsList>) -> Result<()> {
let bets_list = &mut ctx.accounts.bets_list;
bets_list.bets.clear();
msg!("Cleared all bets from the list!");
Ok(())
}
#[derive(Accounts)]
pub struct ClearBetsList<'info> {
#[account(
mut,
seeds = [b"bets_list"],
bump
)]
pub bets_list: Account<'info, BetsList>,
#[account(mut)]
pub payer: Signer<'info>,
}

View File

@ -7,6 +7,10 @@ pub fn close(ctx: Context<CloseBet>, winner:Pubkey, userid:String)->Result<()>{
bet_vault.owner == winner || bet_vault.joiner == winner || bet_vault.owner_id == userid || bet_vault.joiner_id == userid,
BettingError::InvalidWinner
);
let bets_list = &mut ctx.accounts.bets_list;
// Remove the bet_vault public key from the list
bets_list.bets.retain(|&bet| bet != bet_vault.key());
Ok(())
}
@ -17,7 +21,7 @@ pub struct CloseBet<'info>{
#[account(mut)]
pub bets_list: Account<'info, BetsList>,
#[account(mut)]
#[account(mut, close=winner)]
pub bet_vault: Account<'info, BetVault>,
#[account(mut)]

View File

@ -29,4 +29,7 @@ pub mod deduct_fees_token;
pub use deduct_fees_token::*;
pub mod shared;
pub use shared::*;
pub use shared::*;
pub mod clear_bets_list;
pub use clear_bets_list::*;

View File

@ -55,4 +55,7 @@ pub mod bets {
pub fn close_bet_token(ctx:Context<CloseBetToken>, winner:Pubkey, userid:String)->Result<()>{
close_bet_token::close_token_bet(ctx, winner, userid)
}
pub fn clear_bets_list(ctx: Context<ClearBetsList>) -> Result<()> {
clear_bets_list::clear(ctx)
}
}