label-print/assets/app.templates.js
2025-05-17 16:23:48 +02:00

48 lines
1.3 KiB
JavaScript

var App = Vue.createApp({
data() {
return {
templateList: [],
templateIndex: null
}
},
methods: {
EditTemplate(templateIndex)
{
document.location.href = `/template/${this.templateList[templateIndex].id}`;
},
async CreateTemplate()
{
await LabelApi.POST('medium', {
name: "new template",
width: 10,
height: 10
});
await GetTemplateList();
},
async DeleteTemplate(templateIndex, finaly = false)
{
if (finaly) {
$('#DeleteTemplateModal').modal('hide');
await LabelApi.DELETE('template', {
templateId: this.templateList[templateIndex].id
});
this.templateIndex = null;
await GetTemplateList();
} else {
this.templateIndex = templateIndex;
$('#DeleteTemplateModal').modal('show');
}
}
}
}).mount('main');
async function GetTemplateList() {
let templateList = await LabelApi.GET(`templates`);
App.templateList = templateList;
console.log(templateList);
}
GetTemplateList();