Skip to content

Commit

Permalink
Get verified state from the list
Browse files Browse the repository at this point in the history
  • Loading branch information
NejcZdovc committed Apr 9, 2019
1 parent cb711d1 commit 239ae76
Show file tree
Hide file tree
Showing 2 changed files with 93 additions and 7 deletions.
90 changes: 83 additions & 7 deletions vendor/bat-native-ledger/src/bat/ledger/internal/ledger_impl.cc
Expand Up @@ -371,6 +371,10 @@ void LedgerImpl::OnPublisherInfoSavedInternal(
}

void LedgerImpl::SetPublisherInfo(std::unique_ptr<ledger::PublisherInfo> info) {
if (info) {
info->verified = bat_publishers_->isVerified(info->id);
}

ledger_client_->SavePublisherInfo(
std::move(info),
std::bind(&LedgerImpl::OnPublisherInfoSavedInternal,
Expand All @@ -380,6 +384,10 @@ void LedgerImpl::SetPublisherInfo(std::unique_ptr<ledger::PublisherInfo> info) {
}

void LedgerImpl::SetActivityInfo(std::unique_ptr<ledger::PublisherInfo> info) {
if (info) {
info->verified = bat_publishers_->isVerified(info->id);
}

ledger_client_->SaveActivityInfo(
std::move(info),
std::bind(&LedgerImpl::OnPublisherInfoSavedInternal,
Expand Down Expand Up @@ -430,34 +438,92 @@ LedgerImpl::GetRecurringDonationPublisherInfo() {
return bat_publishers_->GetRecurringDonationList();
}

void LedgerImpl::ModifyPublisherVerified(
ledger::Result result,
std::unique_ptr<ledger::PublisherInfo> publisher,
ledger::PublisherInfoCallback callback) {
if (publisher) {
publisher->verified = bat_publishers_->isVerified(publisher->id);
}

callback(result, std::move(publisher));
}

void LedgerImpl::ModifyPublisherListVerified(
const ledger::PublisherInfoList& list,
uint32_t record,
ledger::PublisherInfoListCallback callback) {
ledger::PublisherInfoList new_list;

for (const auto& publisher : list) {
ledger::PublisherInfo info(publisher);
info.verified = bat_publishers_->isVerified(info.id);
new_list.push_back(info);
}

callback(new_list, record);
}

void LedgerImpl::GetPublisherInfo(const std::string& publisher_key,
ledger::PublisherInfoCallback callback) {
ledger_client_->LoadPublisherInfo(publisher_key, callback);
ledger_client_->LoadPublisherInfo(
publisher_key,
std::bind(&LedgerImpl::ModifyPublisherVerified,
this,
_1,
_2,
callback));
}

void LedgerImpl::GetActivityInfo(const ledger::ActivityInfoFilter& filter,
ledger::PublisherInfoCallback callback) {
ledger_client_->LoadActivityInfo(filter, callback);
ledger_client_->LoadActivityInfo(
filter,
std::bind(&LedgerImpl::ModifyPublisherVerified,
this,
_1,
_2,
callback));
}

void LedgerImpl::GetPanelPublisherInfo(
const ledger::ActivityInfoFilter& filter,
ledger::PublisherInfoCallback callback) {
ledger_client_->LoadPanelPublisherInfo(filter, callback);
ledger_client_->LoadPanelPublisherInfo(
filter,
std::bind(&LedgerImpl::ModifyPublisherVerified,
this,
_1,
_2,
callback));
}

void LedgerImpl::GetMediaPublisherInfo(
const std::string& media_key,
ledger::PublisherInfoCallback callback) {
ledger_client_->LoadMediaPublisherInfo(media_key, callback);
ledger_client_->LoadMediaPublisherInfo(
media_key,
std::bind(&LedgerImpl::ModifyPublisherVerified,
this,
_1,
_2,
callback));
}

void LedgerImpl::GetActivityInfoList(
uint32_t start,
uint32_t limit,
const ledger::ActivityInfoFilter& filter,
ledger::PublisherInfoListCallback callback) {
ledger_client_->GetActivityInfoList(start, limit, filter, callback);
ledger_client_->GetActivityInfoList(
start,
limit,
filter,
std::bind(&LedgerImpl::ModifyPublisherListVerified,
this,
_1,
_2,
callback));
}

void LedgerImpl::SetRewardsMainEnabled(bool enabled) {
Expand Down Expand Up @@ -777,12 +843,22 @@ void LedgerImpl::OnTimer(uint32_t timer_id) {

void LedgerImpl::GetRecurringTips(
ledger::PublisherInfoListCallback callback) {
ledger_client_->GetRecurringTips(callback);
ledger_client_->GetRecurringTips(
std::bind(&LedgerImpl::ModifyPublisherListVerified,
this,
_1,
_2,
callback));
}

void LedgerImpl::GetOneTimeTips(
ledger::PublisherInfoListCallback callback) {
ledger_client_->GetOneTimeTips(callback);
ledger_client_->GetOneTimeTips(
std::bind(&LedgerImpl::ModifyPublisherListVerified,
this,
_1,
_2,
callback));
}

void LedgerImpl::LoadPublishersListCallback(
Expand Down
10 changes: 10 additions & 0 deletions vendor/bat-native-ledger/src/bat/ledger/internal/ledger_impl.h
Expand Up @@ -483,6 +483,16 @@ class LedgerImpl : public ledger::Ledger,

void OnRemovedRecurring(ledger::Result result);

void ModifyPublisherVerified(
ledger::Result result,
std::unique_ptr<ledger::PublisherInfo> publisher,
ledger::PublisherInfoCallback callback);

void ModifyPublisherListVerified(
const ledger::PublisherInfoList&,
uint32_t record,
ledger::PublisherInfoListCallback callback);

// ledger::LedgerCallbacHandler implementation
void OnPublisherStateLoaded(ledger::Result result,
const std::string& data) override;
Expand Down

0 comments on commit 239ae76

Please sign in to comment.