fix logo upload

This commit is contained in:
yogesh_gohil
2019-11-16 17:50:21 +05:30
parent fa9197c5bc
commit 8de610ad63
2 changed files with 29 additions and 22 deletions

View File

@ -27,6 +27,7 @@
:upload-handler="cropperHandler" :upload-handler="cropperHandler"
trigger="#pick-avatar" trigger="#pick-avatar"
@changed="setFileObject" @changed="setFileObject"
@error="hadleUploadError"
/> />
</div> </div>
<div class="row"> <div class="row">
@ -177,9 +178,9 @@ export default {
}, },
isFetchingData: false, isFetchingData: false,
formData: { formData: {
name: '', name: null,
logo: null, logo: null,
email: '', email: null,
phone: null, phone: null,
zip: null, zip: null,
address_street_1: null, address_street_1: null,
@ -286,6 +287,9 @@ export default {
setFileObject (file) { setFileObject (file) {
this.fileObject = file this.fileObject = file
}, },
hadleUploadError (message, type, xhr) {
window.toastr['error']('Oops! Something went wrong...')
},
async setInitialData () { async setInitialData () {
let response = await this.loadData() let response = await this.loadData()
this.isFetchingData = true this.isFetchingData = true
@ -318,15 +322,19 @@ export default {
let response = await this.editCompany(data) let response = await this.editCompany(data)
if (response.data.success) { if (response.data.success) {
this.isLoading = false this.isLoading = false
if (this.previewLogo) { if (this.fileObject && this.previewLogo) {
let logoData = new FormData() let logoData = new FormData()
logoData.append('company_logo', JSON.stringify({name: 'company', data: this.previewLogo})) logoData.append('company_logo', JSON.stringify({
let logoUpload = await axios.post('/api/settings/company/upload-logo', logoData) name: this.fileObject.name,
console.log(logoUpload.data) data: this.previewLogo
}))
await axios.post('/api/settings/company/upload-logo', logoData)
} }
this.isLoading = false
window.toastr['success'](this.$t('settings.company_info.updated_message')) window.toastr['success'](this.$t('settings.company_info.updated_message'))
return true return true
} }
this.isLoading = false
window.toastr['error'](response.data.error) window.toastr['error'](response.data.error)
return true return true
}, },

View File

@ -22,6 +22,7 @@
:upload-handler="cropperHandler" :upload-handler="cropperHandler"
trigger="#pick-avatar" trigger="#pick-avatar"
@changed="setFileObject" @changed="setFileObject"
@error="hadleUploadError"
/> />
</div> </div>
<div class="row"> <div class="row">
@ -256,30 +257,28 @@ export default {
setFileObject (file) { setFileObject (file) {
this.fileObject = file this.fileObject = file
}, },
hadleUploadError (message, type, xhr) {
window.toastr['error']('Oops! Something went wrong...')
},
async next () { async next () {
this.$v.companyData.$touch() this.$v.companyData.$touch()
if (this.$v.companyData.$invalid) { if (this.$v.companyData.$invalid) {
return true return true
} }
this.loading = true this.loading = true
let data = new FormData() let response = await window.axios.post('/api/admin/onboarding/company', this.companyData)
data.append('logo', this.fileObject)
data.append('name', this.companyData.name)
data.append('address_street_1', this.companyData.address_street_1)
data.append('address_street_2', this.companyData.address_street_2)
data.append('city_id', this.companyData.city_id)
data.append('state_id', this.companyData.state_id)
data.append('country_id', this.companyData.country_id)
data.append('zip', this.companyData.zip)
data.append('phone', this.companyData.phone)
let response = await window.axios.post('/api/admin/onboarding/company', data, {
headers: {
'Content-Type': 'multipart/form-data'
}
})
if (response.data) { if (response.data) {
if (this.fileObject && this.previewLogo) {
let logoData = new FormData()
logoData.append('company_logo', JSON.stringify({
name: this.fileObject.name,
data: this.previewLogo
}))
await axios.post('/api/settings/company/upload-logo', logoData)
}
this.$emit('next') this.$emit('next')
this.loading = false this.loading = false
} }