close #1551 Fixed: Reconciliation form checkbox missing values
This commit is contained in:
		
							
								
								
									
										26
									
								
								resources/assets/js/plugins/form.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										26
									
								
								resources/assets/js/plugins/form.js
									
									
									
									
										vendored
									
									
								
							@@ -48,9 +48,35 @@ export default class Form {
 | 
			
		||||
                    this[form_element.getAttribute('data-field')] = field;
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                /*
 | 
			
		||||
                if (!this[form_element.getAttribute('data-field')][name]) {
 | 
			
		||||
                    this[form_element.getAttribute('data-field')][name] = '';
 | 
			
		||||
                }
 | 
			
		||||
                */
 | 
			
		||||
 | 
			
		||||
                if (type == 'radio') {
 | 
			
		||||
                    if (!this[form_element.getAttribute('data-field')][name]) {
 | 
			
		||||
                        this[form_element.getAttribute('data-field')][name] = (form_element.getAttribute('value') ? 1 : 0) || 0;
 | 
			
		||||
                    }
 | 
			
		||||
                } else if (type == 'checkbox') {
 | 
			
		||||
                    if (this[form_element.getAttribute('data-field')][name]) {
 | 
			
		||||
                        if (!this[form_element.getAttribute('data-field')][name].push) {
 | 
			
		||||
                            this[form_element.getAttribute('data-field')][name] = [this[form_element.getAttribute('data-field')][name]];
 | 
			
		||||
                        }
 | 
			
		||||
    
 | 
			
		||||
                        if (form_element.checked) {
 | 
			
		||||
                            this[form_element.getAttribute('data-field')][name].push(form_element.value);
 | 
			
		||||
                        }
 | 
			
		||||
                    } else {
 | 
			
		||||
                        if (form_element.checked) {
 | 
			
		||||
                            this[form_element.getAttribute('data-field')][name] = form_element.value;
 | 
			
		||||
                        } else {
 | 
			
		||||
                            this[form_element.getAttribute('data-field')][name] = [];
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
                } else {
 | 
			
		||||
                    this[form_element.getAttribute('data-field')][name] = form_element.getAttribute('value') || '';
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
 
 | 
			
		||||
@@ -43,6 +43,10 @@ const app = new Vue({
 | 
			
		||||
        if (document.getElementById('closing_balance') != null) {
 | 
			
		||||
            this.totals.closing_balance = parseFloat(document.getElementById('closing_balance').value);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (this.form._method == 'PATCH') {
 | 
			
		||||
            this.onCalculate();
 | 
			
		||||
        }
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    methods:{
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user