Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArsentiy Milchakov <milcars@mapswithme.com>2019-05-23 15:09:20 +0300
committerTatiana Yan <tatiana.kondakova@gmail.com>2019-05-23 15:41:48 +0300
commit5dc96147be6e57bcb0193ad5998d210f5270855f (patch)
treee343e9495e8c90486c19f0c28fb3a8bd1e22302c /partners_api
parentd9df94db3f75cfe2615ce859add7a06d93c98de9 (diff)
[promo_api] do not show promo for same city
Diffstat (limited to 'partners_api')
-rw-r--r--partners_api/promo_api.cpp15
1 files changed, 9 insertions, 6 deletions
diff --git a/partners_api/promo_api.cpp b/partners_api/promo_api.cpp
index 3d9ceea9ac..27bde9762d 100644
--- a/partners_api/promo_api.cpp
+++ b/partners_api/promo_api.cpp
@@ -26,8 +26,14 @@ constexpr minutes kMinMinutesAfterBooking = minutes(5);
constexpr minutes kMaxMinutesAfterBooking = minutes(60);
constexpr hours kShowPromoNotRaterThan = hours(24);
-bool NeedToShowImpl(eye::Eye::InfoType const & eyeInfo)
+bool NeedToShowImpl(std::string const & bookingPromoAwaitingForId, eye::Eye::InfoType const & eyeInfo)
{
+ if (bookingPromoAwaitingForId.empty() ||
+ bookingPromoAwaitingForId == eyeInfo->m_promo.m_lastTimeShownAfterBookingCityId)
+ {
+ return false;
+ }
+
auto const timeSinceLastShown = eye::Clock::now() - eyeInfo->m_promo.m_lastTimeShownAfterBooking;
auto const timeSinceLastTransitionToBooking =
eye::Clock::now() - eyeInfo->m_promo.m_transitionToBookingTime;
@@ -158,17 +164,14 @@ void Api::OnEnterForeground()
bool Api::NeedToShowAfterBooking() const
{
- if (m_bookingPromoAwaitingForId.empty())
- return false;
-
- return NeedToShowImpl(eye::Eye::Instance().GetInfo());
+ return NeedToShowImpl(m_bookingPromoAwaitingForId, eye::Eye::Instance().GetInfo());
}
std::string Api::GetPromoLinkAfterBooking() const
{
auto const eyeInfo = eye::Eye::Instance().GetInfo();
- if (m_bookingPromoAwaitingForId.empty() || !NeedToShowImpl(eyeInfo))
+ if (!NeedToShowImpl(m_bookingPromoAwaitingForId, eyeInfo))
return "";
return MakeCityGalleryUrl(m_baseUrl, m_bookingPromoAwaitingForId, languages::GetCurrentNorm());