mirror of
				https://github.com/crater-invoice/crater.git
				synced 2025-10-31 05:31:10 -04:00 
			
		
		
		
	v5.0.0 update
This commit is contained in:
		| @ -0,0 +1,129 @@ | ||||
| <template> | ||||
|   <form @submit.prevent="submitForm"> | ||||
|     <h6 class="text-gray-900 text-lg font-medium"> | ||||
|       {{ $t('settings.customization.estimates.default_formats') }} | ||||
|     </h6> | ||||
|     <p class="mt-1 text-sm text-gray-500 mb-2"> | ||||
|       {{ $t('settings.customization.estimates.default_formats_description') }} | ||||
|     </p> | ||||
|  | ||||
|     <BaseInputGroup | ||||
|       :label=" | ||||
|         $t('settings.customization.estimates.default_estimate_email_body') | ||||
|       " | ||||
|       class="mt-6 mb-4" | ||||
|     > | ||||
|       <BaseCustomInput | ||||
|         v-model="formatSettings.estimate_mail_body" | ||||
|         :fields="estimateMailFields" | ||||
|       /> | ||||
|     </BaseInputGroup> | ||||
|  | ||||
|     <BaseInputGroup | ||||
|       :label="$t('settings.customization.estimates.company_address_format')" | ||||
|       class="mt-6 mb-4" | ||||
|     > | ||||
|       <BaseCustomInput | ||||
|         v-model="formatSettings.estimate_company_address_format" | ||||
|         :fields="companyFields" | ||||
|       /> | ||||
|     </BaseInputGroup> | ||||
|  | ||||
|     <BaseInputGroup | ||||
|       :label="$t('settings.customization.estimates.shipping_address_format')" | ||||
|       class="mt-6 mb-4" | ||||
|     > | ||||
|       <BaseCustomInput | ||||
|         v-model="formatSettings.estimate_shipping_address_format" | ||||
|         :fields="shippingFields" | ||||
|       /> | ||||
|     </BaseInputGroup> | ||||
|  | ||||
|     <BaseInputGroup | ||||
|       :label="$t('settings.customization.estimates.billing_address_format')" | ||||
|       class="mt-6 mb-4" | ||||
|     > | ||||
|       <BaseCustomInput | ||||
|         v-model="formatSettings.estimate_billing_address_format" | ||||
|         :fields="billingFields" | ||||
|       /> | ||||
|     </BaseInputGroup> | ||||
|  | ||||
|     <BaseButton | ||||
|       :loading="isSaving" | ||||
|       :disabled="isSaving" | ||||
|       variant="primary" | ||||
|       type="submit" | ||||
|       class="mt-4" | ||||
|     > | ||||
|       <template #left="slotProps"> | ||||
|         <BaseIcon v-if="!isSaving" :class="slotProps.class" name="SaveIcon" /> | ||||
|       </template> | ||||
|       {{ $t('settings.customization.save') }} | ||||
|     </BaseButton> | ||||
|   </form> | ||||
| </template> | ||||
|  | ||||
| <script setup> | ||||
| import { ref, reactive, inject } from 'vue' | ||||
| import { useCompanyStore } from '@/scripts/stores/company' | ||||
|  | ||||
| const companyStore = useCompanyStore() | ||||
| const utils = inject('utils') | ||||
|  | ||||
| const estimateMailFields = ref([ | ||||
|   'customer', | ||||
|   'customerCustom', | ||||
|   'estimate', | ||||
|   'estimateCustom', | ||||
|   'company', | ||||
| ]) | ||||
|  | ||||
| const billingFields = ref([ | ||||
|   'billing', | ||||
|   'customer', | ||||
|   'customerCustom', | ||||
|   'estimateCustom', | ||||
| ]) | ||||
|  | ||||
| const shippingFields = ref([ | ||||
|   'shipping', | ||||
|   'customer', | ||||
|   'customerCustom', | ||||
|   'estimateCustom', | ||||
| ]) | ||||
|  | ||||
| const companyFields = ref(['company', 'estimateCustom']) | ||||
|  | ||||
| let isSaving = ref(false) | ||||
|  | ||||
| const formatSettings = reactive({ | ||||
|   estimate_mail_body: null, | ||||
|   estimate_company_address_format: null, | ||||
|   estimate_shipping_address_format: null, | ||||
|   estimate_billing_address_format: null, | ||||
| }) | ||||
|  | ||||
| utils.mergeSettings(formatSettings, { | ||||
|   ...companyStore.selectedCompanySettings, | ||||
| }) | ||||
|  | ||||
| async function submitForm() { | ||||
|   isSaving.value = true | ||||
|  | ||||
|   let data = { | ||||
|     settings: { | ||||
|       ...formatSettings, | ||||
|     }, | ||||
|   } | ||||
|  | ||||
|   await companyStore.updateCompanySettings({ | ||||
|     data, | ||||
|     message: 'settings.customization.estimates.estimate_settings_updated', | ||||
|   }) | ||||
|  | ||||
|   isSaving.value = false | ||||
|  | ||||
|   return true | ||||
| } | ||||
| </script> | ||||
		Reference in New Issue
	
	Block a user