7 Module implementing the network block class. |
7 Module implementing the network block class. |
8 """ |
8 """ |
9 |
9 |
10 from PyQt4.QtCore import QObject, QUrl |
10 from PyQt4.QtCore import QObject, QUrl |
11 from PyQt4.QtNetwork import QNetworkRequest |
11 from PyQt4.QtNetwork import QNetworkRequest |
12 |
|
13 import Helpviewer.HelpWindow |
|
14 |
12 |
15 from .AdBlockBlockedNetworkReply import AdBlockBlockedNetworkReply |
13 from .AdBlockBlockedNetworkReply import AdBlockBlockedNetworkReply |
16 |
14 |
17 |
15 |
18 class AdBlockNetwork(QObject): |
16 class AdBlockNetwork(QObject): |
29 urlString = bytes(url.toEncoded()).decode() |
27 urlString = bytes(url.toEncoded()).decode() |
30 urlDomain = url.host() |
28 urlDomain = url.host() |
31 urlScheme = url.scheme() |
29 urlScheme = url.scheme() |
32 refererHost = QUrl.fromEncoded(request.rawHeader("Referer")).host() |
30 refererHost = QUrl.fromEncoded(request.rawHeader("Referer")).host() |
33 |
31 |
|
32 import Helpviewer.HelpWindow |
34 manager = Helpviewer.HelpWindow.HelpWindow.adBlockManager() |
33 manager = Helpviewer.HelpWindow.HelpWindow.adBlockManager() |
35 if not manager.isEnabled() or \ |
34 if not manager.isEnabled() or \ |
36 not self.canRunOnScheme(urlScheme) or \ |
35 not self.canRunOnScheme(urlScheme) or \ |
37 manager.isHostExcepted(urlDomain) or \ |
36 manager.isHostExcepted(urlDomain) or \ |
38 manager.isHostExcepted(refererHost): |
37 manager.isHostExcepted(refererHost): |
69 Private method to check, if an URL can be blocked. |
68 Private method to check, if an URL can be blocked. |
70 |
69 |
71 @param url URL to be checked (QUrl) |
70 @param url URL to be checked (QUrl) |
72 @return flag indicating, that the URL can be blocked (boolean) |
71 @return flag indicating, that the URL can be blocked (boolean) |
73 """ |
72 """ |
|
73 import Helpviewer.HelpWindow |
74 manager = Helpviewer.HelpWindow.HelpWindow.adBlockManager() |
74 manager = Helpviewer.HelpWindow.HelpWindow.adBlockManager() |
75 if manager.isHostExcepted(url.host()): |
75 if manager.isHostExcepted(url.host()): |
76 return False |
76 return False |
77 for subscription in manager.subscriptions(): |
77 for subscription in manager.subscriptions(): |
78 if subscription.isEnabled() and subscription.adBlockDisabledForUrl(url): |
78 if subscription.isEnabled() and subscription.adBlockDisabledForUrl(url): |