diff --git a/frontend/src/components/Layouts/AppSidebar.vue b/frontend/src/components/Layouts/AppSidebar.vue index 94059457..d237f1b9 100644 --- a/frontend/src/components/Layouts/AppSidebar.vue +++ b/frontend/src/components/Layouts/AppSidebar.vue @@ -77,12 +77,6 @@
- diff --git a/frontend/src/components/Modals/DealModal.vue b/frontend/src/components/Modals/DealModal.vue index d82a4b95..9d964d87 100644 --- a/frontend/src/components/Modals/DealModal.vue +++ b/frontend/src/components/Modals/DealModal.vue @@ -207,7 +207,7 @@ const sections = computed(() => { label: 'Status', name: 'status', type: 'select', - options: statusOptions('deal'), + options: dealStatuses.value, prefix: getDealStatus(deal.status).iconColorClass, }, { @@ -222,6 +222,14 @@ const sections = computed(() => { return fields }) +const dealStatuses = computed(() => { + let statuses = statusOptions('deal') + if (!deal.status) { + deal.status = statuses[0].value + } + return statuses +}) + function createDeal() { createResource({ url: 'crm.fcrm.doctype.crm_deal.crm_deal.create_deal', diff --git a/frontend/src/components/Modals/LeadModal.vue b/frontend/src/components/Modals/LeadModal.vue index 25d21224..ed92a0ef 100644 --- a/frontend/src/components/Modals/LeadModal.vue +++ b/frontend/src/components/Modals/LeadModal.vue @@ -12,7 +12,12 @@ @@ -158,7 +163,7 @@ const sections = computed(() => { label: 'Status', name: 'status', type: 'select', - options: statusOptions('lead'), + options: leadStatuses.value, prefix: getLeadStatus(lead.status).iconColorClass, }, { @@ -185,6 +190,14 @@ const createLead = createResource({ }, }) +const leadStatuses = computed(() => { + let statuses = statusOptions('lead') + if (!lead.status) { + lead.status = statuses[0].value + } + return statuses +}) + function createNewLead() { createLead.submit(lead, { validate() { diff --git a/frontend/src/components/UserDropdown.vue b/frontend/src/components/UserDropdown.vue index b58f7f85..d07130d6 100644 --- a/frontend/src/components/UserDropdown.vue +++ b/frontend/src/components/UserDropdown.vue @@ -67,14 +67,36 @@ const user = computed(() => getUser() || {}) let dropdownOptions = ref([ { - icon: 'corner-up-left', - label: computed(() => __('Switch to Desk')), - onClick: () => window.location.replace('/app'), + group: 'Manage', + hideLabel: true, + items: [ + { + icon: 'corner-up-left', + label: computed(() => __('Switch to Desk')), + onClick: () => window.location.replace('/app'), + }, + { + icon: 'life-buoy', + label: computed(() => __('Support')), + onClick: () => window.open('https://t.me/frappecrm', '_blank'), + }, + { + icon: 'book-open', + label: computed(() => __('Docs')), + onClick: () => window.open('https://docs.frappe.io/crm', '_blank'), + }, + ], }, { - icon: 'log-out', - label: computed(() => __('Log out')), - onClick: () => logout.submit(), + group: 'Logout', + hideLabel: true, + items: [ + { + icon: 'log-out', + label: computed(() => __('Log out')), + onClick: () => logout.submit(), + }, + ], }, ]) diff --git a/frontend/src/stores/statuses.js b/frontend/src/stores/statuses.js index 8b306ec0..402c0d67 100644 --- a/frontend/src/stores/statuses.js +++ b/frontend/src/stores/statuses.js @@ -97,6 +97,7 @@ export const statusesStore = defineStore('crm-statuses', () => { for (const status in statusesByName) { options.push({ label: statusesByName[status].name, + value: statusesByName[status].name, icon: () => h(IndicatorIcon, { class: statusesByName[status].iconColorClass,