]> gitweb.stoutner.com Git - PrivacyBrowserPC.git/blobdiff - src/helpers/FilterListHelper.h
Flesh out request detail dialog.
[PrivacyBrowserPC.git] / src / helpers / FilterListHelper.h
index 5bd9ad261c146e2e0d01e17a162c33f10f5ebb55..b1c93a04a66b3f972ca874376f3cd33d1e9fb03e 100644 (file)
@@ -17,8 +17,8 @@
  * along with Privacy Browser PC.  If not, see <http://www.gnu.org/licenses/>.
  */
 
  * along with Privacy Browser PC.  If not, see <http://www.gnu.org/licenses/>.
  */
 
-#ifndef FILTERLISTHELPER_H
-#define FILTERLISTHELPER_H
+#ifndef FILTER_LIST_HELPER_H
+#define FILTER_LIST_HELPER_H
 
 // Application headers.
 #include "structs/FilterListStruct.h"
 
 // Application headers.
 #include "structs/FilterListStruct.h"
@@ -40,7 +40,10 @@ public:
     static const int BLOCKED = 2;
 
     // The public static sublist constant integers.
     static const int BLOCKED = 2;
 
     // The public static sublist constant integers.
-    static const int MAIN_BLOCKLIST = 0;
+    static const int MAIN_ALLOWLIST = 0;
+    static const int MAIN_BLOCKLIST = 1;
+    static const int INITIAL_DOMAIN_BLOCKLIST = 2;
+    static const int REGULAR_EXPRESSION_BLOCKLIST = 3;
 
     // The public variables.
     FilterListStruct *easyListStructPointer;
 
     // The public variables.
     FilterListStruct *easyListStructPointer;
@@ -53,6 +56,7 @@ public:
     bool checkFilterLists(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer) const;
     QString getDispositionString(int dispositionInt) const;
     QString getNavigationTypeString(int navigationTypeInt) const;
     bool checkFilterLists(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer) const;
     QString getDispositionString(int dispositionInt) const;
     QString getNavigationTypeString(int navigationTypeInt) const;
+    QString getRequestOptionDispositionString(const FilterOptionDisposition filterOptionDisposition) const;
     QString getResourceTypeString(int resourceTypeInt) const;
     QString getSublistName(int sublistInt) const;
 
     QString getResourceTypeString(int resourceTypeInt) const;
     QString getSublistName(int sublistInt) const;
 
@@ -62,6 +66,11 @@ private:
     QString ALLOWED_STRING;
     QString BLOCKED_STRING;
 
     QString ALLOWED_STRING;
     QString BLOCKED_STRING;
 
+    // The private translated filter option dispositions.
+    QString FILTER_OPTION_NULL;
+    QString FILTER_OPTION_APPLY;
+    QString FILTER_OPTION_OVERRIDE;
+
     // The private translated navigation type strings.
     QString NAVIGATION_TYPE_LINK;
     QString NAVIGATION_TYPE_TYPED;
     // The private translated navigation type strings.
     QString NAVIGATION_TYPE_LINK;
     QString NAVIGATION_TYPE_TYPED;
@@ -95,12 +104,25 @@ private:
     QString RESOURCE_TYPE_UNKNOWN;
 
     // The private translated sublist strings.
     QString RESOURCE_TYPE_UNKNOWN;
 
     // The private translated sublist strings.
+    QString MAIN_ALLOWLIST_STRING;
     QString MAIN_BLOCKLIST_STRING;
     QString MAIN_BLOCKLIST_STRING;
+    QString INITIAL_DOMAIN_BLOCKLIST_STRING;
+    QString REGULAR_EXPRESSION_BLOCKLIST_STRING;
 
     // The private functions.
 
     // The private functions.
-    bool checkIndividualList(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, FilterListStruct *filterListStruct) const;
+    bool blockRequest(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt, EntryStruct *entryStructPointer) const;
+    bool checkAppliedEntry(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt, QString urlString,
+                           const RequestUrlType requestUrlType, EntryStruct *entryStructPointer) const;
+    bool checkDomain(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt,
+                     EntryStruct *entryStructPointer) const;
+    bool checkIndividualList(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, FilterListStruct *filterListStructPointer) const;
+    bool checkRegularExpression(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt,
+                                EntryStruct *entryStructPointer) const;
+    bool checkRequestOptions(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt,
+                             EntryStruct *entryStructPointer) const;
+    bool checkThirdParty(QWebEngineUrlRequestInfo &urlRequestInfo, RequestStruct *requestStructPointer, const QString &filterListTitle, const int sublistInt, EntryStruct *entryStructPointer) const;
     FilterListStruct* populateFilterList(const QString &filterListFileName) const;
     FilterListStruct* populateFilterList(const QString &filterListFileName) const;
-    void populateRequestStruct(RequestStruct *requestStructPointer, const int disposition, const QString &filterListTitle, const int sublistInt, const QString &appliedEntry,
-                               const QString &originalEntry) const;
+    void populateRequestStruct(RequestStruct *requestStructPointer, const int disposition, const QString &filterListTitle, const int sublistInt, EntryStruct *entryStructPointer) const;
+    void prepareFilterListString(QString &filterListString, EntryStruct *entryStructPointer) const;
 };
 #endif
 };
 #endif