+ // Get the record for the hostname.
+ QSqlQuery domainQuery = DomainsDatabaseHelper::getDomainQuery(hostname);
+
+ // Check if the hostname has domain settings.
+ if (domainQuery.isValid()) // The hostname has domain settings.
+ {
+
+
+ // Get the domain record.
+ QSqlRecord domainRecord = domainQuery.record();
+
+ // Set the JavaScript status.
+ switch (domainRecord.field(DomainsDatabaseHelper::JAVASCRIPT).value().toInt())
+ {
+ case (DomainsDatabaseHelper::SYSTEM_DEFAULT):
+ {
+ // Set the default JavaScript status.
+ webEngineSettingsPointer->setAttribute(QWebEngineSettings::JavascriptEnabled, Settings::javaScript());
+
+ break;
+ }
+
+ case (DomainsDatabaseHelper::DISABLED):
+ {
+ // Disable JavaScript.
+ webEngineSettingsPointer->setAttribute(QWebEngineSettings::JavascriptEnabled, false);
+
+ break;
+ }
+
+ case (DomainsDatabaseHelper::ENABLED):
+ {
+ // Enable JavaScript.
+ webEngineSettingsPointer->setAttribute(QWebEngineSettings::JavascriptEnabled, true);
+
+ break;
+ }
+ }
+
+ // Apply the user agent.
+ webEngineProfilePointer->setHttpUserAgent(UserAgentHelper::getUserAgent(Settings::userAgent()));
+
+ // Set the zoom factor.
+ webEngineViewPointer->setZoomFactor(Settings::zoomFactor());
+
+ // Apply the domain settings palette to the URL line edit.
+ urlLineEditPointer->setPalette(domainSettingsPalette);
+ }
+ else // The hostname does not have domain settings.
+ {
+ // Set the JavaScript status.
+ webEngineSettingsPointer->setAttribute(QWebEngineSettings::JavascriptEnabled, Settings::javaScript());
+
+ // Apply the user agent.
+ webEngineProfilePointer->setHttpUserAgent(UserAgentHelper::getUserAgent(Settings::userAgent()));
+
+ // Set the zoom factor.
+ webEngineViewPointer->setZoomFactor(Settings::zoomFactor());
+
+ // Apply the no domain settings palette to the URL line edit.
+ urlLineEditPointer->setPalette(noDomainSettingsPalette);
+ }