123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- /*
- * Nextcloud - Android Client
- *
- * SPDX-FileCopyrightText: 2024 Alper Ozturk <alper.ozturk@nextcloud.com>
- * SPDX-License-Identifier: AGPL-3.0-or-later
- */
- package com.nextcloud.utils.mdm
- import android.content.Context
- import com.nextcloud.utils.extensions.getRestriction
- import com.owncloud.android.BuildConfig
- import com.owncloud.android.R
- import com.owncloud.android.utils.appConfig.AppConfigKeys
- object MDMConfig {
- fun multiAccountSupport(context: Context): Boolean {
- val multiAccountSupport = context.resources.getBoolean(R.bool.multiaccount_support)
- val disableMultiAccountViaMDM = context.getRestriction(
- AppConfigKeys.DisableMultiAccount,
- context.resources.getBoolean(R.bool.disable_multiaccount)
- )
- return multiAccountSupport && !disableMultiAccountViaMDM
- }
- fun shareViaLink(context: Context): Boolean {
- val disableShareViaMDM = context.getRestriction(
- AppConfigKeys.DisableSharing,
- context.resources.getBoolean(R.bool.disable_sharing)
- )
- val shareViaLink = context.resources.getBoolean(R.bool.share_via_link_feature)
- return shareViaLink && disableShareViaMDM
- }
- fun shareViaUser(context: Context): Boolean {
- val disableShareViaMDM = context.getRestriction(
- AppConfigKeys.DisableSharing,
- context.resources.getBoolean(R.bool.disable_sharing)
- )
- val shareViaUsers = context.resources.getBoolean(R.bool.share_with_users_feature)
- return shareViaUsers && disableShareViaMDM
- }
- fun clipBoardSupport(context: Context): Boolean {
- val disableClipboardSupport = context.getRestriction(
- AppConfigKeys.DisableClipboard,
- context.resources.getBoolean(R.bool.disable_clipboard)
- )
- return !disableClipboardSupport
- }
- fun externalSiteSupport(context: Context): Boolean {
- val disableMoreExternalSiteViaMDM = context.getRestriction(
- AppConfigKeys.DisableMoreExternalSite,
- context.resources.getBoolean(R.bool.disable_more_external_site)
- )
- val showExternalLinks = context.resources.getBoolean(R.bool.show_external_links)
- return showExternalLinks && !disableMoreExternalSiteViaMDM
- }
- fun showIntro(context: Context): Boolean {
- val disableIntroViaMDM =
- context.getRestriction(AppConfigKeys.DisableIntro, context.resources.getBoolean(R.bool.disable_intro))
- val isProviderOrOwnInstallationVisible = context.resources.getBoolean(R.bool.show_provider_or_own_installation)
- return isProviderOrOwnInstallationVisible && !disableIntroViaMDM
- }
- fun enableLog(context: Context): Boolean {
- val disableLogViaMDM =
- context.getRestriction(AppConfigKeys.DisableLog, context.resources.getBoolean(R.bool.disable_log))
- val loggerEnabled = context.resources.getBoolean(R.bool.logger_enabled)
- return loggerEnabled && !disableLogViaMDM && BuildConfig.DEBUG
- }
- }
|