diff --git a/contracts/coretime_market/src/lib.rs b/contracts/coretime_market/src/lib.rs index 9302262..0599a22 100755 --- a/contracts/coretime_market/src/lib.rs +++ b/contracts/coretime_market/src/lib.rs @@ -131,8 +131,19 @@ pub mod coretime_market { } #[ink(message)] - pub fn listed_regions(&self) -> Vec { - self.listed_regions.clone() + pub fn listed_regions(&self, maybe_who: Option) -> Vec { + if let Some(who) = maybe_who { + self.listed_regions + .clone() + .into_iter() + .filter(|region_id| { + let Some(listing) = self.listings.get(region_id) else { return false }; + listing.seller == who + }) + .collect() + } else { + self.listed_regions.clone() + } } #[ink(message)]