diff --git a/app/javascript/vue/repository_print_modal/container.vue b/app/javascript/vue/repository_print_modal/container.vue index 2b5e35cb6..6053560f2 100644 --- a/app/javascript/vue/repository_print_modal/container.vue +++ b/app/javascript/vue/repository_print_modal/container.vue @@ -36,6 +36,7 @@ { this.templates = result.data + this.selectDefaultLabelTemplate(); }) $.get(this.urls.printers, (result) => { @@ -172,8 +174,20 @@ } }, methods: { + selectDefaultLabelTemplate() { + if (this.selectedPrinter && this.templates) { + let template = this.templates.find(i => i.attributes.default + && i.type.includes(this.selectedPrinter.attributes.type_of)); + if (template) { + this.$nextTick(() => { + this.$refs.labelTemplateDropdown.selectValues(template.id); + }); + } + } + }, selectPrinter(value) { - this.selectedPrinter = this.printers.find(i => i.id === value); + this.selectedPrinter = this.printers.find(i => i.id === value) + this.selectDefaultLabelTemplate(); }, selectTemplate(value) { this.selectedTemplate = this.templates.find(i => i.id === value); diff --git a/app/javascript/vue/shared/dropdown_selector.vue b/app/javascript/vue/shared/dropdown_selector.vue index eabc3f3fc..9b2d18800 100644 --- a/app/javascript/vue/shared/dropdown_selector.vue +++ b/app/javascript/vue/shared/dropdown_selector.vue @@ -130,6 +130,9 @@ 'dropdown:changed', value ); + }, + selectValues(value) { + dropdownSelector.selectValues(`#${this.selectorId}`, value); } } } diff --git a/app/serializers/label_template_serializer.rb b/app/serializers/label_template_serializer.rb index b8a914f8b..a0df6840e 100644 --- a/app/serializers/label_template_serializer.rb +++ b/app/serializers/label_template_serializer.rb @@ -4,7 +4,7 @@ class LabelTemplateSerializer < ActiveModel::Serializer include Canaid::Helpers::PermissionsHelper include Rails.application.routes.url_helpers - attributes :name, :description, :language_type, :icon_url, :urls, :content, :type + attributes :name, :description, :language_type, :icon_url, :urls, :content, :type, :default def icon_url ActionController::Base.helpers.image_path("label_template_icons/#{object.icon}.svg")