X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2Fhelpers%2FDomainsDatabaseHelper.kt;h=a10bdca5401541529b15a3a6e10f9b0b3f438f67;hb=f86528a305568aca6738e194a5e5330a85f6f993;hp=f2fe8aa459b69afb675cf8e83349a97bdf3e0825;hpb=92eb39bb1596a73d24e9490af1ca602e2544b486;p=PrivacyBrowserAndroid.git diff --git a/app/src/main/java/com/stoutner/privacybrowser/helpers/DomainsDatabaseHelper.kt b/app/src/main/java/com/stoutner/privacybrowser/helpers/DomainsDatabaseHelper.kt index f2fe8aa4..a10bdca5 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/helpers/DomainsDatabaseHelper.kt +++ b/app/src/main/java/com/stoutner/privacybrowser/helpers/DomainsDatabaseHelper.kt @@ -397,6 +397,17 @@ class DomainsDatabaseHelper(private val appContext: Context) : SQLiteOpenHelper( return domainsDatabase.rawQuery("SELECT * FROM $DOMAINS_TABLE WHERE $DOMAIN_NAME = $sqlEscapedDomainName", null) } + fun addDomain(contentValues: ContentValues) { + // Get a writable database handle. + val domainsDatabase = this.writableDatabase + + // Add the new domain. + domainsDatabase.insert(DOMAINS_TABLE, null, contentValues) + + // Close the database handle. + domainsDatabase.close() + } + fun addDomain(domainName: String): Int { // Instantiate a content values. val domainContentValues = ContentValues() @@ -434,15 +445,43 @@ class DomainsDatabaseHelper(private val appContext: Context) : SQLiteOpenHelper( return newDomainDatabaseId } - fun addDomain(contentValues: ContentValues) { + fun addDomain(domainName: String, javaScriptInt: Int, cookiesInt: Int, domStorageInt: Int, formDataInt: Int, userAgentName: String, easyListInt: Int, easyPrivacyInt: Int, fanboysAnnoyanceListInt: Int, + fanboysSocialBlockingListInt: Int, ultraListInt: Int, ultraPrivacyInt: Int, blockAllThirdPartyRequestsInt: Int, fontSizeInt: Int, swipeToRefreshInt: Int, webViewThemeInt: Int, + wideViewportInt: Int, displayImagesInt: Int): Int { + // Instantiate a content values. + val domainContentValues = ContentValues() + + // Create entries for the database fields. The ID is created automatically. The pinned SSL certificate information is not created unless added by the user. + domainContentValues.put(DOMAIN_NAME, domainName) + domainContentValues.put(ENABLE_JAVASCRIPT, javaScriptInt) + domainContentValues.put(COOKIES, cookiesInt) + domainContentValues.put(ENABLE_DOM_STORAGE, domStorageInt) + domainContentValues.put(ENABLE_FORM_DATA, formDataInt) // Form data can be removed once the minimum API >= 26. + domainContentValues.put(USER_AGENT, userAgentName) + domainContentValues.put(ENABLE_EASYLIST, easyListInt) + domainContentValues.put(ENABLE_EASYPRIVACY, easyPrivacyInt) + domainContentValues.put(ENABLE_FANBOYS_ANNOYANCE_LIST, fanboysAnnoyanceListInt) + domainContentValues.put(ENABLE_FANBOYS_SOCIAL_BLOCKING_LIST, fanboysSocialBlockingListInt) + domainContentValues.put(ULTRALIST, ultraListInt) + domainContentValues.put(ENABLE_ULTRAPRIVACY, ultraPrivacyInt) + domainContentValues.put(BLOCK_ALL_THIRD_PARTY_REQUESTS, blockAllThirdPartyRequestsInt) + domainContentValues.put(FONT_SIZE, fontSizeInt) + domainContentValues.put(SWIPE_TO_REFRESH, swipeToRefreshInt) + domainContentValues.put(WEBVIEW_THEME, webViewThemeInt) + domainContentValues.put(WIDE_VIEWPORT, wideViewportInt) + domainContentValues.put(DISPLAY_IMAGES, displayImagesInt) + // Get a writable database handle. val domainsDatabase = this.writableDatabase - // Add the new domain. - domainsDatabase.insert(DOMAINS_TABLE, null, contentValues) + // Insert a new row and store the resulting database ID. + val newDomainDatabaseId = domainsDatabase.insert(DOMAINS_TABLE, null, domainContentValues).toInt() // Close the database handle. domainsDatabase.close() + + // Return the new domain database ID. + return newDomainDatabaseId } fun updateDomain(databaseId: Int, domainName: String, javaScript: Int, cookies: Int, domStorage: Int, formData: Int, userAgent: String, easyList: Int, easyPrivacy: Int, fanboysAnnoyance: Int,