Merge pull request #2008 from pateljannat/issues-175

fix: misc issues
This commit is contained in:
Jannat Patel
2026-01-20 22:08:56 +05:30
committed by GitHub
4 changed files with 19 additions and 15 deletions
+1 -3
View File
@@ -10,9 +10,8 @@
<script setup> <script setup>
import { FrappeUIProvider } from 'frappe-ui' import { FrappeUIProvider } from 'frappe-ui'
import { Dialogs } from '@/utils/dialogs' import { Dialogs } from '@/utils/dialogs'
import { computed, onUnmounted, ref, watch } from 'vue' import { computed, onUnmounted, ref } from 'vue'
import { useScreenSize } from './utils/composables' import { useScreenSize } from './utils/composables'
import { usersStore } from '@/stores/user'
import { useSettings } from '@/stores/settings' import { useSettings } from '@/stores/settings'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
import DesktopLayout from './components/DesktopLayout.vue' import DesktopLayout from './components/DesktopLayout.vue'
@@ -23,7 +22,6 @@ import InstallPrompt from './components/InstallPrompt.vue'
const { isMobile } = useScreenSize() const { isMobile } = useScreenSize()
const router = useRouter() const router = useRouter()
const noSidebar = ref(false) const noSidebar = ref(false)
const { userResource } = usersStore()
const { settings } = useSettings() const { settings } = useSettings()
router.beforeEach((to, from, next) => { router.beforeEach((to, from, next) => {
+7 -2
View File
@@ -1,5 +1,5 @@
import './index.css' import './index.css'
import { createApp } from 'vue' import { createApp, watch } from 'vue'
import router from './router' import router from './router'
import App from './App.vue' import App from './App.vue'
import { createPinia } from 'pinia' import { createPinia } from 'pinia'
@@ -19,7 +19,6 @@ app.use(FrappeUI)
app.use(pinia) app.use(pinia)
app.use(router) app.use(router)
app.use(translationPlugin) app.use(translationPlugin)
app.use(telemetryPlugin, { app_name: 'lms' })
app.use(pageMetaPlugin) app.use(pageMetaPlugin)
app.provide('$dayjs', dayjs) app.provide('$dayjs', dayjs)
app.provide('$socket', initSocket()) app.provide('$socket', initSocket())
@@ -29,5 +28,11 @@ const { userResource, allUsers } = usersStore()
app.provide('$user', userResource) app.provide('$user', userResource)
app.provide('$allUsers', allUsers) app.provide('$allUsers', allUsers)
watch(userResource, () => {
if (userResource.data) {
app.use(telemetryPlugin, { app_name: 'lms' })
}
})
app.config.globalProperties.$user = userResource app.config.globalProperties.$user = userResource
app.config.globalProperties.$dialog = createDialog app.config.globalProperties.$dialog = createDialog
+10 -10
View File
@@ -51,12 +51,12 @@
class="hidden lg:block" class="hidden lg:block"
@change="updateJobs" @change="updateJobs"
/> />
<div class="grid grid-cols-2 gap-4"> <div class="flex items-center space-x-4">
<FormControl <FormControl
type="text" type="text"
:placeholder="__('Search')" :placeholder="__('Search')"
v-model="searchQuery" v-model="searchQuery"
class="w-full max-w-40" class="w-full"
@input="updateJobs" @input="updateJobs"
> >
<template #prefix> <template #prefix>
@@ -79,17 +79,17 @@
v-model="jobType" v-model="jobType"
type="select" type="select"
:options="jobTypes" :options="jobTypes"
class="w-full" class="w-full min-w-32"
:placeholder="__('Type')" :placeholder="__('Type')"
@change="updateJobs" @update:modelValue="updateJobs"
/> />
<FormControl <FormControl
v-model="workMode" v-model="workMode"
type="select" type="select"
:options="workModes" :options="workModes"
class="w-full" class="w-full min-w-32"
:placeholder="__('Work Mode')" :placeholder="__('Work Mode')"
@change="updateJobs" @update:modelValue="updateJobs"
/> />
</div> </div>
</div> </div>
@@ -218,13 +218,13 @@ const updateJobs = () => {
const updateFilters = () => { const updateFilters = () => {
filters.value.status = 'Open' filters.value.status = 'Open'
if (jobType.value) { if (jobType.value && jobType.value !== ' ') {
filters.value.type = jobType.value filters.value.type = jobType.value
} else { } else {
delete filters.value.type delete filters.value.type
} }
if (workMode.value) { if (workMode.value && workMode.value !== ' ') {
filters.value.work_mode = workMode.value filters.value.work_mode = workMode.value
} else { } else {
delete filters.value.work_mode delete filters.value.work_mode
@@ -271,7 +271,7 @@ watch(jobs, () => {
const jobTypes = computed(() => { const jobTypes = computed(() => {
return [ return [
{ label: '', value: '' }, { label: ' ', value: ' ' },
{ label: __('Full Time'), value: 'Full Time' }, { label: __('Full Time'), value: 'Full Time' },
{ label: __('Part Time'), value: 'Part Time' }, { label: __('Part Time'), value: 'Part Time' },
{ label: __('Contract'), value: 'Contract' }, { label: __('Contract'), value: 'Contract' },
@@ -281,7 +281,7 @@ const jobTypes = computed(() => {
const workModes = computed(() => { const workModes = computed(() => {
return [ return [
{ label: '', value: '' }, { label: ' ', value: ' ' },
{ label: 'On site', value: 'On-site' }, { label: 'On site', value: 'On-site' },
{ label: 'Hybrid', value: 'Hybrid' }, { label: 'Hybrid', value: 'Hybrid' },
{ label: 'Remote', value: 'Remote' }, { label: 'Remote', value: 'Remote' },
+1
View File
@@ -44,6 +44,7 @@ ALLOWED_PATHS = [
"/api/method/frappe.utils.print_format.download_pdf", "/api/method/frappe.utils.print_format.download_pdf",
"/api/method/frappe.desk.search.search_link", "/api/method/frappe.desk.search.search_link",
"/api/method/frappe.core.doctype.communication.email.make", "/api/method/frappe.core.doctype.communication.email.make",
"/api/method/frappe.core.doctype.user.user.reset_password",
] ]