diff --git a/frontend/src/components/Icons/BillingIcon.vue b/frontend/src/components/Icons/BillingIcon.vue
deleted file mode 100644
index 82c74c7c..00000000
--- a/frontend/src/components/Icons/BillingIcon.vue
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
diff --git a/frontend/src/components/Icons/PlansIcon.vue b/frontend/src/components/Icons/PlansIcon.vue
deleted file mode 100644
index a0ac6dbb..00000000
--- a/frontend/src/components/Icons/PlansIcon.vue
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
diff --git a/frontend/src/components/Layouts/AppSidebar.vue b/frontend/src/components/Layouts/AppSidebar.vue
index dbedf399..e958952a 100644
--- a/frontend/src/components/Layouts/AppSidebar.vue
+++ b/frontend/src/components/Layouts/AppSidebar.vue
@@ -71,10 +71,7 @@
-
+
Boolean(data),
+})
+
+provide('isFCSite', isFCSite)
diff --git a/frontend/src/components/Settings/Settings.vue b/frontend/src/components/Settings/Settings.vue
index be977cec..16ab8959 100644
--- a/frontend/src/components/Settings/Settings.vue
+++ b/frontend/src/components/Settings/Settings.vue
@@ -45,8 +45,6 @@ import ContactsIcon from '@/components/Icons/ContactsIcon.vue'
import WhatsAppIcon from '@/components/Icons/WhatsAppIcon.vue'
import ERPNextIcon from '@/components/Icons/ERPNextIcon.vue'
import PhoneIcon from '@/components/Icons/PhoneIcon.vue'
-import PlansIcon from '@/components/Icons/PlansIcon.vue'
-import BillingIcon from '@/components/Icons/BillingIcon.vue'
import InviteMemberPage from '@/components/Settings/InviteMemberPage.vue'
import ProfileSettings from '@/components/Settings/ProfileSettings.vue'
import WhatsAppSettings from '@/components/Settings/WhatsAppSettings.vue'
@@ -59,8 +57,8 @@ import {
showSettings,
activeSettingsPage,
} from '@/composables/settings'
-import { Dialog, Plans, Billing } from 'frappe-ui'
-import { ref, markRaw, computed, watch, h } from 'vue'
+import { Dialog } from 'frappe-ui'
+import { ref, markRaw, computed, watch } from 'vue'
const { isManager } = usersStore()
@@ -83,26 +81,6 @@ const tabs = computed(() => {
},
],
},
- {
- label: __('Subscription'),
- condition: () => window.fc_communication_secret && isManager(),
- items: [
- {
- label: 'Plans',
- icon: PlansIcon,
- component: markRaw(Plans),
- },
- {
- label: 'Billing',
- icon: BillingIcon,
- component: markRaw(
- h(Billing, {
- onChangePlan: () => setActiveTab('Plans'),
- }),
- ),
- },
- ],
- },
{
label: __('Integrations'),
items: [
diff --git a/frontend/src/components/UserDropdown.vue b/frontend/src/components/UserDropdown.vue
index 98b80736..25424655 100644
--- a/frontend/src/components/UserDropdown.vue
+++ b/frontend/src/components/UserDropdown.vue
@@ -53,7 +53,7 @@ import { sessionStore } from '@/stores/session'
import { usersStore } from '@/stores/users'
import { showSettings } from '@/composables/settings'
import { Dropdown } from 'frappe-ui'
-import { computed, ref, markRaw } from 'vue'
+import { computed, ref, markRaw, inject } from 'vue'
const props = defineProps({
isCollapsed: {
@@ -67,6 +67,8 @@ const { getUser } = usersStore()
const user = computed(() => getUser() || {})
+const isFCSite = inject('isFCSite')
+
let dropdownOptions = ref([
{
group: 'Manage',
@@ -91,6 +93,12 @@ let dropdownOptions = ref([
group: 'Others',
hideLabel: true,
items: [
+ {
+ icon: 'credit-card',
+ label: computed(() => __('Billing')),
+ onClick: () => (window.location.href = '/billing'),
+ condition: () => isFCSite.data,
+ },
{
icon: 'settings',
label: computed(() => __('Settings')),