UI improvements

This commit is contained in:
Josh Krawczyk
2020-09-01 14:02:34 -04:00
committed by sadnub
parent 1eecb35561
commit 56d21996f1
3 changed files with 91 additions and 35 deletions

View File

@@ -139,6 +139,32 @@
<q-item-section>Show Relations</q-item-section>
</q-item>
<q-item
clickable
v-close-popup
@click="showPatchPolicyModal(props.row)"
id="context-winupdate"
v-if="props.row.patch_policy !== undefined"
>
<q-item-section side>
<q-icon name="system_update" />
</q-item-section>
<q-item-section>Show Patch Policy</q-item-section>
</q-item>
<q-item
clickable
v-close-popup
@click="showNewPatchPolicyModal(props.row)"
id="context-winupdate"
v-else
>
<q-item-section side>
<q-icon name="system_update" />
</q-item-section>
<q-item-section>Create Patch Policy</q-item-section>
</q-item>
<q-separator></q-separator>
<q-item clickable v-close-popup>
@@ -170,6 +196,21 @@
@click="showRelationsModal(props.row)"
>{{ `Show Relations (${props.row.clients_count + props.row.sites_count + props.row.agents_count}+)` }}</span>
</q-td>
<q-td>
<span
style="cursor:pointer;color:blue;text-decoration:underline"
@click="showPatchPolicyModal(props.row)"
v-if="props.row.winupdatepolicy !== undefined"
>Show Patch Policy</span>
<span
style="cursor:pointer;color:blue;text-decoration:underline"
@click="showNewPatchPolicyModal(props.row)"
v-else
>Create Patch Policy</span>
</q-td>
<q-td>
<q-icon name="content-copy" />
</q-td>
</q-tr>
</template>
</q-table>
@@ -204,10 +245,11 @@ import PolicyForm from "@/components/automation/modals/PolicyForm";
import PolicyOverview from "@/components/automation/PolicyOverview";
import PolicySubTableTabs from "@/components/automation/PolicySubTableTabs";
import RelationsView from "@/components/automation/modals/RelationsView";
import PatchPolicyForm from "@/components/modals/agents/PatchPolicyForm";
export default {
name: "AutomationManager",
components: { PolicyForm, PolicyOverview, PolicySubTableTabs, RelationsView },
components: { PolicyForm, PolicyOverview, PolicySubTableTabs, RelationsView, PatchPolicyForm },
mixins: [mixins],
data() {
return {
@@ -225,24 +267,36 @@ export default {
label: "Name",
field: "name",
align: "left",
sortable: true
sortable: true,
},
{
name: "desc",
label: "Description",
field: "desc",
align: "left"
align: "left",
},
{
name: "relations",
label: "Relations",
field: "relations",
align: "left",
},
{
name: "patch_policy",
label: "Patch Policy",
field: "patch_policy",
align: "left",
},
{
name: "actions",
label: "Actions",
field: "actions",
align: "left"
}
align: "left",
},
],
pagination: {
rowsPerPage: 9999
}
rowsPerPage: 9999,
},
};
},
methods: {
@@ -269,7 +323,7 @@ export default {
.dialog({
title: "Delete policy?",
cancel: true,
ok: { label: "Delete", color: "negative" }
ok: { label: "Delete", color: "negative" },
})
.onOk(() => {
this.$store
@@ -320,7 +374,7 @@ export default {
name: policy.name,
desc: policy.desc,
active: policy.active,
enforced: policy.enforced
enforced: policy.enforced,
};
this.$store
@@ -331,16 +385,16 @@ export default {
.catch(error => {
this.$q.notify(notifyErrorConfig("An Error occured while editing policy"));
});
}
},
},
computed: {
...mapState({
policies: state => state.automation.policies,
selectedRow: state => state.automation.selectedPolicy
})
selectedRow: state => state.automation.selectedPolicy,
}),
},
mounted() {
this.refresh();
}
},
};
</script>

View File

@@ -13,7 +13,6 @@
>
<q-tab name="checks" icon="fas fa-check-double" label="Checks" />
<q-tab name="tasks" icon="fas fa-tasks" label="Tasks" />
<q-tab name="patches" icon="system_update" label="Patches" />
</q-tabs>
<q-separator />
<q-tab-panels v-model="subtab" :animated="false">
@@ -23,9 +22,6 @@
<q-tab-panel name="tasks">
<PolicyAutomatedTasksTab />
</q-tab-panel>
<q-tab-panel name="patches">
<WindowsUpdateForm />
</q-tab-panel>
</q-tab-panels>
</div>
</template>
@@ -33,14 +29,12 @@
<script>
import PolicyChecksTab from "@/components/automation/PolicyChecksTab";
import PolicyAutomatedTasksTab from "@/components/automation/PolicyAutomatedTasksTab";
import WindowsUpdateForm from "@/components/modals/agents/WindowsUpdateForm";
export default {
name: "PolicySubTableTabs",
components: {
PolicyChecksTab,
PolicyAutomatedTasksTab,
WindowsUpdateForm,
},
data() {
return {

View File

@@ -91,13 +91,13 @@
</q-card-section>
<q-card-section>
<div class="q-gutter-sm">
<q-checkbox v-model="winupdatepolicy.run_time_days" :val="0" label="Monday" />
<q-checkbox v-model="winupdatepolicy.run_time_days" :val="1" label="Tuesday" />
<q-checkbox v-model="winupdatepolicy.run_time_days" :val="2" label="Wednesday" />
<q-checkbox v-model="winupdatepolicy.run_time_days" :val="3" label="Thursday" />
<q-checkbox v-model="winupdatepolicy.run_time_days" :val="4" label="Friday" />
<q-checkbox v-model="winupdatepolicy.run_time_days" :val="5" label="Saturday" />
<q-checkbox v-model="winupdatepolicy.run_time_days" :val="6" label="Sunday" />
<q-checkbox v-model="winupdatepolicy.run_time_day_mon" label="Monday" />
<q-checkbox v-model="winupdatepolicy.run_time_day_tue" label="Tuesday" />
<q-checkbox v-model="winupdatepolicy.run_time_day_wed" label="Wednesday" />
<q-checkbox v-model="winupdatepolicy.run_time_day_thur" label="Thursday" />
<q-checkbox v-model="winupdatepolicy.run_time_day_fri" label="Friday" />
<q-checkbox v-model="winupdatepolicy.run_time_day_sat" label="Saturday" />
<q-checkbox v-model="winupdatepolicy.run_time_day_sun" label="Sunday" />
</div>
</q-card-section>
<!-- Reboot After Installation -->
@@ -145,18 +145,26 @@
import { scheduledTimes } from "@/mixins/data";
export default {
name: "WindowsUpdateForm",
name: "PatchPolicyForm",
data() {
return {
winupdatepolicy: {
policy: "",
critical: "",
important: "",
moderate: "",
low: "",
other: "",
run_time_hour: "",
run_time_days: "",
agent: null,
policy: null,
critical: "ignore",
important: "ignore",
moderate: "ignore",
low: "ignore",
other: "ignore",
run_time_hour: 0,
repeat: 0,
run_time_day_mon: false,
run_time_day_tue: false,
run_time_day_wed: false,
run_time_day_thur: false,
run_time_day_fri: false,
run_time_day_sat: false,
run_time_day_sun: false,
reboot_after_install: "never",
reprocess_failed: false,
reprocess_failed_times: 5,