| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/web_resource/promo_resource_service.h" | 5 #include "chrome/browser/web_resource/promo_resource_service.h" |
| 6 | 6 |
| 7 #include "base/string_number_conversions.h" | 7 #include "base/string_number_conversions.h" |
| 8 #include "base/threading/thread_restrictions.h" | 8 #include "base/threading/thread_restrictions.h" |
| 9 #include "base/time.h" | 9 #include "base/time.h" |
| 10 #include "base/values.h" | 10 #include "base/values.h" |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 49 | 49 |
| 50 } // namespace | 50 } // namespace |
| 51 | 51 |
| 52 // Server for dynamically loaded NTP HTML elements. TODO(mirandac): append | 52 // Server for dynamically loaded NTP HTML elements. TODO(mirandac): append |
| 53 // locale for future usage, when we're serving localizable strings. | 53 // locale for future usage, when we're serving localizable strings. |
| 54 const char* PromoResourceService::kDefaultPromoResourceServer = | 54 const char* PromoResourceService::kDefaultPromoResourceServer = |
| 55 "https://www.google.com/support/chrome/bin/topic/1142433/inproduct?hl="; | 55 "https://www.google.com/support/chrome/bin/topic/1142433/inproduct?hl="; |
| 56 | 56 |
| 57 // static | 57 // static |
| 58 void PromoResourceService::RegisterPrefs(PrefService* local_state) { | 58 void PromoResourceService::RegisterPrefs(PrefService* local_state) { |
| 59 local_state->RegisterIntegerPref(prefs::kNTPPromoVersion, 0); | 59 local_state->RegisterIntegerPref(prefs::kNTPPromoVersion, |
| 60 local_state->RegisterStringPref(prefs::kNTPPromoLocale, std::string()); | 60 0, |
| 61 false /* don't sync pref */); |
| 62 local_state->RegisterStringPref(prefs::kNTPPromoLocale, |
| 63 std::string(), |
| 64 false /* don't sync pref */); |
| 61 } | 65 } |
| 62 | 66 |
| 63 // static | 67 // static |
| 64 void PromoResourceService::RegisterUserPrefs(PrefService* prefs) { | 68 void PromoResourceService::RegisterUserPrefs(PrefService* prefs) { |
| 65 prefs->RegisterDoublePref(prefs::kNTPCustomLogoStart, 0); | 69 prefs->RegisterDoublePref(prefs::kNTPCustomLogoStart, |
| 66 prefs->RegisterDoublePref(prefs::kNTPCustomLogoEnd, 0); | 70 0, |
| 67 prefs->RegisterDoublePref(prefs::kNTPPromoStart, 0); | 71 false /* don't sync pref */); |
| 68 prefs->RegisterDoublePref(prefs::kNTPPromoEnd, 0); | 72 prefs->RegisterDoublePref(prefs::kNTPCustomLogoEnd, |
| 69 prefs->RegisterStringPref(prefs::kNTPPromoLine, std::string()); | 73 0, |
| 70 prefs->RegisterBooleanPref(prefs::kNTPPromoClosed, false); | 74 false /* don't sync pref */); |
| 71 prefs->RegisterIntegerPref(prefs::kNTPPromoGroup, -1); | 75 prefs->RegisterDoublePref(prefs::kNTPPromoStart, |
| 72 prefs->RegisterIntegerPref(prefs::kNTPPromoBuild, | 76 0, |
| 73 CANARY_BUILD | DEV_BUILD | BETA_BUILD | STABLE_BUILD); | 77 false /* don't sync pref */); |
| 74 prefs->RegisterIntegerPref(prefs::kNTPPromoGroupTimeSlice, 0); | 78 prefs->RegisterDoublePref(prefs::kNTPPromoEnd, |
| 79 0, |
| 80 false /* don't sync pref */); |
| 81 prefs->RegisterStringPref(prefs::kNTPPromoLine, |
| 82 std::string(), |
| 83 false /* don't sync pref */); |
| 84 prefs->RegisterBooleanPref(prefs::kNTPPromoClosed, |
| 85 false, |
| 86 false /* don't sync pref */); |
| 87 prefs->RegisterIntegerPref(prefs::kNTPPromoGroup, |
| 88 -1, |
| 89 false /* don't sync pref */); |
| 90 prefs->RegisterIntegerPref( |
| 91 prefs::kNTPPromoBuild, |
| 92 CANARY_BUILD | DEV_BUILD | BETA_BUILD | STABLE_BUILD, |
| 93 false /* don't sync pref */); |
| 94 prefs->RegisterIntegerPref(prefs::kNTPPromoGroupTimeSlice, |
| 95 0, |
| 96 false /* don't sync pref */); |
| 75 } | 97 } |
| 76 | 98 |
| 77 // static | 99 // static |
| 78 bool PromoResourceService::IsBuildTargeted(platform_util::Channel channel, | 100 bool PromoResourceService::IsBuildTargeted(platform_util::Channel channel, |
| 79 int builds_allowed) { | 101 int builds_allowed) { |
| 80 if (builds_allowed == NO_BUILD) | 102 if (builds_allowed == NO_BUILD) |
| 81 return false; | 103 return false; |
| 82 switch (channel) { | 104 switch (channel) { |
| 83 case platform_util::CHANNEL_CANARY: | 105 case platform_util::CHANNEL_CANARY: |
| 84 return (CANARY_BUILD & builds_allowed) != 0; | 106 return (CANARY_BUILD & builds_allowed) != 0; |
| (...skipping 349 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 434 base::ThreadRestrictions::ScopedAllowIO allow_io; | 456 base::ThreadRestrictions::ScopedAllowIO allow_io; |
| 435 platform_util::Channel channel = platform_util::GetChannel(); | 457 platform_util::Channel channel = platform_util::GetChannel(); |
| 436 is_promo_build = PromoResourceService::IsBuildTargeted( | 458 is_promo_build = PromoResourceService::IsBuildTargeted( |
| 437 channel, prefs->GetInteger(prefs::kNTPPromoBuild)); | 459 channel, prefs->GetInteger(prefs::kNTPPromoBuild)); |
| 438 } | 460 } |
| 439 | 461 |
| 440 return !promo_closed && !is_synced && is_promo_build; | 462 return !promo_closed && !is_synced && is_promo_build; |
| 441 } | 463 } |
| 442 | 464 |
| 443 } // namespace PromoResourceServiceUtil | 465 } // namespace PromoResourceServiceUtil |
| OLD | NEW |