]> gitweb.stoutner.com Git - PrivacyBrowserPC.git/blobdiff - src/helpers/DomainsDatabaseHelper.cpp
Add User Agent to Domain Settings.
[PrivacyBrowserPC.git] / src / helpers / DomainsDatabaseHelper.cpp
index 5de297d229fe688da8a4aa00d9eb00ca4ca48f3e..48b28a34966733b7bbbbc26dadc043b94f5c71ae 100644 (file)
 
 // Application headers.
 #include "DomainsDatabaseHelper.h"
+#include "UserAgentHelper.h"
 
 // Define the public static domain constants.
 const QString DomainsDatabaseHelper::CONNECTION_NAME = "domains_database";
 const QString DomainsDatabaseHelper::DOMAINS_TABLE = "domains";
 
 // Define the private static schema constants.
-const int DomainsDatabaseHelper::SCHEMA_VERSION = 1;
+const int DomainsDatabaseHelper::SCHEMA_VERSION = 2;
 
 // Define the public static database field names.
 const QString DomainsDatabaseHelper::_ID = "_id";
 const QString DomainsDatabaseHelper::DOMAIN_NAME = "domain_name";
 const QString DomainsDatabaseHelper::JAVASCRIPT = "javascript";
+const QString DomainsDatabaseHelper::USER_AGENT = "user_agent";
 
 // The default constructor.
 DomainsDatabaseHelper::DomainsDatabaseHelper() {}
@@ -72,6 +74,15 @@ void DomainsDatabaseHelper::addDatabase()
 
                         // Set the default value.
                         domainsDatabase.exec("UPDATE " + DOMAINS_TABLE + " SET " + JAVASCRIPT + " = 0" );
+
+                        [[fallthrough]];
+                    }
+
+                    // Upgrade from schema version 1.
+                    case 1:
+                    {
+                        // Add the User Agent column.
+                        domainsDatabase.exec("ALTER TABLE " + DOMAINS_TABLE + " ADD COLUMN " + USER_AGENT + " TEXT DEFAULT '" + UserAgentHelper::SYSTEM_DEFAULT_DATABASE + "'");
                     }
                 }
 
@@ -88,7 +99,8 @@ void DomainsDatabaseHelper::addDatabase()
             createTableQuery.prepare("CREATE TABLE " + DOMAINS_TABLE + "(" +
                 _ID + " INTEGER PRIMARY KEY, " +
                 DOMAIN_NAME + " TEXT, " +
-                JAVASCRIPT + " INTEGER DEFAULT 0)"
+                JAVASCRIPT + " INTEGER DEFAULT 0," +
+                USER_AGENT + " TEXT DEFAULT '" + UserAgentHelper::SYSTEM_DEFAULT_DATABASE + "')"
             );
 
             // Execute the query.