diff --git a/package-lock.json b/package-lock.json index 72268cd75..801ecfc3d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -96,7 +96,6 @@ "babel-loader": "^10.0.0", "com.foxdebug.acode.rk.auth": "file:src/plugins/auth", "com.foxdebug.acode.rk.customtabs": "file:src/plugins/custom-tabs", - "com.foxdebug.acode.rk.exec.proot": "file:src/plugins/proot", "com.foxdebug.acode.rk.exec.terminal": "file:src/plugins/terminal", "com.foxdebug.acode.rk.plugin.plugincontext": "file:src/plugins/pluginContext", "cordova-android": "^15.0.0", @@ -107,7 +106,6 @@ "cordova-plugin-device": "^2.1.0", "cordova-plugin-file": "^8.1.3", "cordova-plugin-ftp": "file:src/plugins/ftp", - "cordova-plugin-iap": "file:src/plugins/iap", "cordova-plugin-sdcard": "file:src/plugins/sdcard", "cordova-plugin-server": "file:src/plugins/server", "cordova-plugin-sftp": "file:src/plugins/sftp", @@ -6223,10 +6221,6 @@ "resolved": "src/plugins/custom-tabs", "link": true }, - "node_modules/com.foxdebug.acode.rk.exec.proot": { - "resolved": "src/plugins/proot", - "link": true - }, "node_modules/com.foxdebug.acode.rk.exec.terminal": { "resolved": "src/plugins/terminal", "link": true @@ -6739,10 +6733,6 @@ "resolved": "src/plugins/ftp", "link": true }, - "node_modules/cordova-plugin-iap": { - "resolved": "src/plugins/iap", - "link": true - }, "node_modules/cordova-plugin-sdcard": { "resolved": "src/plugins/sdcard", "link": true @@ -13713,7 +13703,7 @@ "src/plugins/iap": { "name": "cordova-plugin-iap", "version": "1.0.0", - "dev": true, + "extraneous": true, "license": "ISC" }, "src/plugins/pluginContext": { @@ -13725,7 +13715,7 @@ "src/plugins/proot": { "name": "com.foxdebug.acode.rk.exec.proot", "version": "1.0.0", - "dev": true, + "extraneous": true, "license": "MIT" }, "src/plugins/sdcard": { diff --git a/package.json b/package.json index 5811d1a59..bdfd19c00 100644 --- a/package.json +++ b/package.json @@ -40,9 +40,7 @@ "com.foxdebug.acode.rk.customtabs": {}, "com.foxdebug.acode.rk.plugin.plugincontext": {}, "cordova-plugin-system": {}, - "com.foxdebug.acode.rk.auth": {}, - "com.foxdebug.acode.rk.exec.proot": {}, - "cordova-plugin-iap": {} + "com.foxdebug.acode.rk.auth": {} }, "platforms": [ "android" @@ -72,7 +70,6 @@ "babel-loader": "^10.0.0", "com.foxdebug.acode.rk.auth": "file:src/plugins/auth", "com.foxdebug.acode.rk.customtabs": "file:src/plugins/custom-tabs", - "com.foxdebug.acode.rk.exec.proot": "file:src/plugins/proot", "com.foxdebug.acode.rk.exec.terminal": "file:src/plugins/terminal", "com.foxdebug.acode.rk.plugin.plugincontext": "file:src/plugins/pluginContext", "cordova-android": "^15.0.0", @@ -83,7 +80,6 @@ "cordova-plugin-device": "^2.1.0", "cordova-plugin-file": "^8.1.3", "cordova-plugin-ftp": "file:src/plugins/ftp", - "cordova-plugin-iap": "file:src/plugins/iap", "cordova-plugin-sdcard": "file:src/plugins/sdcard", "cordova-plugin-server": "file:src/plugins/server", "cordova-plugin-sftp": "file:src/plugins/sftp", diff --git a/src/pages/plugin/plugin.js b/src/pages/plugin/plugin.js index 88fc2f688..54c0a2b23 100644 --- a/src/pages/plugin/plugin.js +++ b/src/pages/plugin/plugin.js @@ -5,6 +5,7 @@ import alert from "dialogs/alert"; import loader from "dialogs/loader"; import purchaseListener from "handlers/purchase"; import actionStack from "lib/actionStack"; +import auth from "lib/auth"; import config from "lib/config"; import installPlugin from "lib/installPlugin"; import InstallState from "lib/installState"; @@ -252,6 +253,27 @@ export default async function PluginInclude( const oldText = $button.textContent; try { + if (!config.IAP_AVAILABLE) { + const user = await auth.getLoggedInUser(); + if (!user) { + CustomTabs.open( + `${config.BASE_URL}/login?redirect=app`, + { showTitle: true }, + () => {}, + () => {}, + ); + return; + } + + CustomTabs.open( + `${config.BASE_URL}/plugin/${plugin.id}`, + { showTitle: true }, + () => {}, + () => {}, + ); + return; + } + if (!product) throw new Error("Product not found"); const apiStatus = await helpers.checkAPIStatus(); diff --git a/src/pages/plugin/plugin.view.js b/src/pages/plugin/plugin.view.js index 503537643..0be8ddff3 100644 --- a/src/pages/plugin/plugin.view.js +++ b/src/pages/plugin/plugin.view.js @@ -9,6 +9,7 @@ import alert from "dialogs/alert"; import DOMPurify from "dompurify"; import Ref from "html-tag-js/ref"; import actionStack from "lib/actionStack"; +import auth from "lib/auth"; import config from "lib/config"; import helpers from "utils/helpers"; import Url from "utils/Url"; @@ -271,6 +272,7 @@ function handleTabClick(e) { } function Buttons({ + id, name, isPaid, installed, @@ -283,6 +285,25 @@ function Buttons({ minVersionCode, isSupported = true, }) { + async function openPluginWebsite() { + const user = await auth.getLoggedInUser(); + if (!user) { + CustomTabs.open( + `${config.BASE_URL}/login?redirect=app`, + { showTitle: true }, + () => {}, + () => {}, + ); + return; + } + + CustomTabs.open( + `${config.BASE_URL}/plugin/${id}`, + { showTitle: true }, + () => {}, + () => {}, + ); + } if (!isSupported) { return (