diff --git a/src/static/app/src/components/clientComponents/availablePeersGroup.vue b/src/static/app/src/components/clientComponents/availablePeersGroup.vue index 3a725b8..5ad7cec 100644 --- a/src/static/app/src/components/clientComponents/availablePeersGroup.vue +++ b/src/static/app/src/components/clientComponents/availablePeersGroup.vue @@ -3,23 +3,27 @@ import {computed, ref} from "vue"; import {DashboardClientAssignmentStore} from "@/stores/DashboardClientAssignmentStore.js"; import LocaleText from "@/components/text/localeText.vue"; -const props = defineProps(['configuration', 'peers', 'clientAssignedPeers']) +const props = defineProps(['configuration', 'peers', 'clientAssignedPeers', 'availablePeerSearchString']) const emits = defineEmits(['assign', 'unassign']) const assignmentStore = DashboardClientAssignmentStore() const available = computed(() => { if (props.clientAssignedPeers){ if (Object.keys(props.clientAssignedPeers).includes(props.configuration)){ return props.peers.filter( - x => !props.clientAssignedPeers[props.configuration].map( - x => x.id - ).includes(x.id) + x => { + return !props.clientAssignedPeers[props.configuration].map( + x => x.id + ).includes(x.id) && + (!props.availablePeerSearchString || + (props.availablePeerSearchString && + (x.id.includes(props.availablePeerSearchString) || x.name.includes(props.availablePeerSearchString)))) + } ) } } return props.peers }) const confirmDelete = ref(false) - const collapse = ref(false) @@ -28,8 +32,8 @@ const collapse = ref(false)
- {{ configuration }} + class="card-header rounded-0 sticky-top z-5 bg-body-secondary border-0 border-bottom text-white d-flex"> + {{ configuration }} diff --git a/src/static/app/src/components/clientComponents/clientAssignedPeers.vue b/src/static/app/src/components/clientComponents/clientAssignedPeers.vue index e6765cc..191ea42 100644 --- a/src/static/app/src/components/clientComponents/clientAssignedPeers.vue +++ b/src/static/app/src/components/clientComponents/clientAssignedPeers.vue @@ -1,115 +1,103 @@ - diff --git a/src/static/app/src/components/clientComponents/clientGroup.vue b/src/static/app/src/components/clientComponents/clientGroup.vue index ddf5547..b4fb6ed 100644 --- a/src/static/app/src/components/clientComponents/clientGroup.vue +++ b/src/static/app/src/components/clientComponents/clientGroup.vue @@ -27,14 +27,12 @@ const getClients = computed(() => {
-
- {{ client.Email }} diff --git a/src/static/app/src/components/clientComponents/clientResetPassword.vue b/src/static/app/src/components/clientComponents/clientResetPassword.vue new file mode 100644 index 0000000..7b47cf6 --- /dev/null +++ b/src/static/app/src/components/clientComponents/clientResetPassword.vue @@ -0,0 +1,42 @@ + + + + + \ No newline at end of file diff --git a/src/static/app/src/components/clientComponents/clientViewer.vue b/src/static/app/src/components/clientComponents/clientViewer.vue index c1f1273..86e48d7 100644 --- a/src/static/app/src/components/clientComponents/clientViewer.vue +++ b/src/static/app/src/components/clientComponents/clientViewer.vue @@ -4,19 +4,36 @@ import { fetchGet } from "@/utilities/fetch.js" import {DashboardClientAssignmentStore} from "@/stores/DashboardClientAssignmentStore.js"; -import {computed} from "vue"; +import {computed, ref, watch} from "vue"; import LocaleText from "@/components/text/localeText.vue"; import ClientAssignedPeers from "@/components/clientComponents/clientAssignedPeers.vue"; +import ClientResetPassword from "@/components/clientComponents/clientResetPassword.vue"; const assignmentStore = DashboardClientAssignmentStore() const route = useRoute() const client = computed(() => { return assignmentStore.getClientById(route.params.id) }) + +const clientAssignedPeers = ref({}) +const getAssignedPeers = async () => { + await fetchGet('/api/clients/assignedPeers', { + ClientID: client.value.ClientID + }, (res) => { + clientAssignedPeers.value = res.data; + }) +} + +if (client.value){ + watch(() => client.value.ClientID, async () => { + await getAssignedPeers() + }) + await getAssignedPeers() +}