| OLD | NEW | 
|    1 /* |    1 /* | 
|    2  * This file is part of Adblock Plus <https://adblockplus.org/>, |    2  * This file is part of Adblock Plus <https://adblockplus.org/>, | 
|    3  * Copyright (C) 2006-2015 Eyeo GmbH |    3  * Copyright (C) 2006-2015 Eyeo GmbH | 
|    4  * |    4  * | 
|    5  * Adblock Plus is free software: you can redistribute it and/or modify |    5  * Adblock Plus is free software: you can redistribute it and/or modify | 
|    6  * it under the terms of the GNU General Public License version 3 as |    6  * it under the terms of the GNU General Public License version 3 as | 
|    7  * published by the Free Software Foundation. |    7  * published by the Free Software Foundation. | 
|    8  * |    8  * | 
|    9  * Adblock Plus is distributed in the hope that it will be useful, |    9  * Adblock Plus is distributed in the hope that it will be useful, | 
|   10  * but WITHOUT ANY WARRANTY; without even the implied warranty of |   10  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|   11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the |   11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
|   12  * GNU General Public License for more details. |   12  * GNU General Public License for more details. | 
|   13  * |   13  * | 
|   14  * You should have received a copy of the GNU General Public License |   14  * You should have received a copy of the GNU General Public License | 
|   15  * along with Adblock Plus.  If not, see <http://www.gnu.org/licenses/>. |   15  * along with Adblock Plus.  If not, see <http://www.gnu.org/licenses/>. | 
|   16  */ |   16  */ | 
|   17  |   17  | 
|   18 #include "PluginStdAfx.h" |   18 #include "PluginStdAfx.h" | 
|   19  |   19  | 
|   20 #include "PluginSettings.h" |   20 #include "PluginSettings.h" | 
|   21 #include "AdblockPlusClient.h" |   21 #include "AdblockPlusClient.h" | 
|   22 #include "PluginSystem.h" |   22 #include "PluginSystem.h" | 
|   23 #include "PluginMutex.h" |   23 #include "PluginMutex.h" | 
|   24 #include "../shared/Utils.h" |   24 #include "../shared/Utils.h" | 
|   25  |   25  | 
|   26 namespace |   26 namespace | 
|   27 { |   27 { | 
|   28   std::wstring CreateDomainWhitelistingFilter(const CString& domain) |   28   std::wstring CreateDomainWhitelistingFilter(const std::wstring& domain) | 
|   29   { |   29   { | 
|   30     return L"@@||" + ToWstring(domain) + L"^$document"; |   30     return L"@@||" + domain + L"^$document"; | 
|   31   } |   31   } | 
|   32 } |   32 } | 
|   33  |   33  | 
|   34 class CPluginSettingsWhitelistLock : public CPluginMutex |   34 class CPluginSettingsWhitelistLock : public CPluginMutex | 
|   35 { |   35 { | 
|   36 public: |   36 public: | 
|   37   CPluginSettingsWhitelistLock() : CPluginMutex(L"SettingsFileWhitelist", PLUGIN
     _ERROR_MUTEX_SETTINGS_FILE_WHITELIST) {} |   37   CPluginSettingsWhitelistLock() : CPluginMutex(L"SettingsFileWhitelist", PLUGIN
     _ERROR_MUTEX_SETTINGS_FILE_WHITELIST) {} | 
|   38   ~CPluginSettingsWhitelistLock() {} |   38   ~CPluginSettingsWhitelistLock() {} | 
|   39 }; |   39 }; | 
|   40  |   40  | 
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   88 std::wstring GetDataPath(const std::wstring& filename) |   88 std::wstring GetDataPath(const std::wstring& filename) | 
|   89 { |   89 { | 
|   90   return GetAppDataPath() + L"\\" + filename; |   90   return GetAppDataPath() + L"\\" + filename; | 
|   91 } |   91 } | 
|   92  |   92  | 
|   93 bool CPluginSettings::IsPluginEnabled() const |   93 bool CPluginSettings::IsPluginEnabled() const | 
|   94 { |   94 { | 
|   95   return GetPluginEnabled(); |   95   return GetPluginEnabled(); | 
|   96 } |   96 } | 
|   97  |   97  | 
|   98 std::map<CString, CString> CPluginSettings::GetFilterLanguageTitleList() const |   98 std::map<std::wstring, std::wstring> CPluginSettings::GetFilterLanguageTitleList
     () const | 
|   99 { |   99 { | 
|  100   std::vector<SubscriptionDescription> subscriptions = CPluginClient::GetInstanc
     e()->FetchAvailableSubscriptions(); |  100   auto subscriptions = CPluginClient::GetInstance()->FetchAvailableSubscriptions
     (); | 
|  101  |  101  | 
|  102   std::map<CString, CString> filterList; |  102   std::map<std::wstring, std::wstring> filterList; | 
|  103   for (size_t i = 0; i < subscriptions.size(); i ++) |  103   for (size_t i = 0; i < subscriptions.size(); i ++) | 
|  104   { |  104   { | 
|  105     SubscriptionDescription it = subscriptions[i]; |  105     auto it = subscriptions[i]; | 
|  106     filterList.insert(std::make_pair(CString(it.url.c_str()), CString(it.title.c
     _str()))); |  106     filterList.insert(std::make_pair(it.url, it.title)); | 
|  107   } |  107   } | 
|  108   return filterList; |  108   return filterList; | 
|  109 } |  109 } | 
|  110  |  110  | 
|  111 bool CPluginSettings::IsWorkingThread(DWORD dwThreadId) const |  111 bool CPluginSettings::IsWorkingThread(DWORD dwThreadId) const | 
|  112 { |  112 { | 
|  113   if (dwThreadId == 0) |  113   if (dwThreadId == 0) | 
|  114   { |  114   { | 
|  115     dwThreadId = ::GetCurrentThreadId(); |  115     dwThreadId = ::GetCurrentThreadId(); | 
|  116   } |  116   } | 
| (...skipping 12 matching lines...) Expand all  Loading... | 
|  129  |  129  | 
|  130 void CPluginSettings::TogglePluginEnabled() |  130 void CPluginSettings::TogglePluginEnabled() | 
|  131 { |  131 { | 
|  132   CPluginClient::GetInstance()->TogglePluginEnabled();   |  132   CPluginClient::GetInstance()->TogglePluginEnabled();   | 
|  133 } |  133 } | 
|  134 bool CPluginSettings::GetPluginEnabled() const |  134 bool CPluginSettings::GetPluginEnabled() const | 
|  135 { |  135 { | 
|  136   return CPluginClient::GetInstance()->GetPref(L"enabled", true); |  136   return CPluginClient::GetInstance()->GetPref(L"enabled", true); | 
|  137 } |  137 } | 
|  138  |  138  | 
|  139  |  | 
|  140 void CPluginSettings::AddError(const CString& error, const CString& errorCode) |  139 void CPluginSettings::AddError(const CString& error, const CString& errorCode) | 
|  141 { |  140 { | 
|  142   DEBUG_SETTINGS(L"SettingsTab::AddError error:" + error + " code:" + errorCode) |  141   DEBUG_SETTINGS(L"SettingsTab::AddError error:" + error + " code:" + errorCode) | 
|  143 } |  142 } | 
|  144  |  143  | 
|  145  |  | 
|  146 // ============================================================================ |  144 // ============================================================================ | 
|  147 // Whitelist settings |  145 // Whitelist settings | 
|  148 // ============================================================================ |  146 // ============================================================================ | 
|  149  |  147  | 
|  150 void CPluginSettings::ClearWhitelist() |  148 void CPluginSettings::ClearWhitelist() | 
|  151 { |  149 { | 
|  152   s_criticalSectionLocal.Lock(); |  150   s_criticalSectionLocal.Lock(); | 
|  153   { |  151   { | 
|  154     m_whitelistedDomains.clear(); |  152     m_whitelistedDomains.clear(); | 
|  155   } |  153   } | 
| (...skipping 21 matching lines...) Expand all  Loading... | 
|  177       s_criticalSectionLocal.Unlock(); |  175       s_criticalSectionLocal.Unlock(); | 
|  178     } |  176     } | 
|  179     else |  177     else | 
|  180     { |  178     { | 
|  181       isRead = false; |  179       isRead = false; | 
|  182     } |  180     } | 
|  183  |  181  | 
|  184     return isRead; |  182     return isRead; | 
|  185 } |  183 } | 
|  186  |  184  | 
|  187 void CPluginSettings::AddWhiteListedDomain(const CString& domain) |  185 void CPluginSettings::AddWhiteListedDomain(const std::wstring& domain) | 
|  188 { |  186 { | 
|  189   DEBUG_SETTINGS("SettingsWhitelist::AddWhiteListedDomain domain:" + domain) |  187   DEBUG_SETTINGS("SettingsWhitelist::AddWhiteListedDomain domain:" + domain) | 
|  190   CPluginClient::GetInstance()->AddFilter(CreateDomainWhitelistingFilter(domain)
     ); |  188   CPluginClient::GetInstance()->AddFilter(CreateDomainWhitelistingFilter(domain)
     ); | 
|  191 } |  189 } | 
|  192  |  190  | 
|  193 void CPluginSettings::RemoveWhiteListedDomain(const CString& domain) |  191 void CPluginSettings::RemoveWhiteListedDomain(const std::wstring& domain) | 
|  194 { |  192 { | 
|  195   DEBUG_SETTINGS("SettingsWhitelist::RemoveWhiteListedDomain domain:" + domain) |  193   DEBUG_SETTINGS("SettingsWhitelist::RemoveWhiteListedDomain domain:" + domain) | 
|  196   CPluginClient::GetInstance()->RemoveFilter(CreateDomainWhitelistingFilter(doma
     in)); |  194   CPluginClient::GetInstance()->RemoveFilter(CreateDomainWhitelistingFilter(doma
     in)); | 
|  197 } |  195 } | 
|  198  |  196  | 
|  199 int CPluginSettings::GetWhiteListedDomainCount() const |  197 int CPluginSettings::GetWhiteListedDomainCount() const | 
|  200 { |  198 { | 
|  201   int count = 0; |  199   int count = 0; | 
|  202  |  200  | 
|  203   s_criticalSectionLocal.Lock(); |  201   s_criticalSectionLocal.Lock(); | 
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  241  |  239  | 
|  242   return m_WindowsBuildNumber; |  240   return m_WindowsBuildNumber; | 
|  243 } |  241 } | 
|  244  |  242  | 
|  245 void CPluginSettings::SetSubscription(const std::wstring& url) |  243 void CPluginSettings::SetSubscription(const std::wstring& url) | 
|  246 { |  244 { | 
|  247   CPluginClient::GetInstance()->SetSubscription(url); |  245   CPluginClient::GetInstance()->SetSubscription(url); | 
|  248   RefreshWhitelist(); |  246   RefreshWhitelist(); | 
|  249 } |  247 } | 
|  250  |  248  | 
|  251 CString CPluginSettings::GetSubscription() |  249 std::wstring CPluginSettings::GetSubscription() | 
|  252 { |  250 { | 
|  253   std::vector<SubscriptionDescription> subscriptions = CPluginClient::GetInstanc
     e()->GetListedSubscriptions(); |  251   auto subscriptions = CPluginClient::GetInstance()->GetListedSubscriptions(); | 
|  254   std::wstring aaUrl = CPluginClient::GetInstance()->GetPref(L"subscriptions_exc
     eptionsurl", L""); |  252   std::wstring aaUrl = CPluginClient::GetInstance()->GetPref(L"subscriptions_exc
     eptionsurl", L""); | 
|  255  |  253  | 
|  256   for (std::vector<SubscriptionDescription>::iterator subscription = subscriptio
     ns.begin(); subscription != subscriptions.end(); subscription++) |  254   for (auto subscription = subscriptions.begin(); subscription != subscriptions.
     end(); subscription++) | 
|  257   { |  255   { | 
|  258     if (subscription->url != aaUrl) |  256     if (subscription->url != aaUrl) | 
|  259     { |  257     { | 
|  260       return CString(subscription->url.c_str()); |  258       return subscription->url; | 
|  261     } |  259     } | 
|  262   } |  260   } | 
|  263   return CString(L""); |  261   return std::wstring(); | 
|  264 } |  262 } | 
|  265  |  | 
|  266 CString CPluginSettings::GetAppLocale() |  | 
|  267 { |  | 
|  268   return ToCString(GetBrowserLanguage()); |  | 
|  269 } |  | 
|  270  |  | 
|  271 CString CPluginSettings::GetDocumentationLink() |  | 
|  272 { |  | 
|  273   return CString(CPluginClient::GetInstance()->GetDocumentationLink().c_str()); |  | 
|  274 } |  | 
| OLD | NEW |