v2 first commit
This commit is contained in:
241
resources/assets/js/mixins/global.js
vendored
Normal file
241
resources/assets/js/mixins/global.js
vendored
Normal file
@ -0,0 +1,241 @@
|
||||
import Vue from 'vue';
|
||||
|
||||
import DashboardPlugin from './../plugins/dashboard-plugin';
|
||||
|
||||
import axios from 'axios';
|
||||
|
||||
import AkauntingSearch from './../components/AkauntingSearch';
|
||||
import AkauntingModal from './../components/AkauntingModal';
|
||||
import AkauntingRadioGroup from './../components/forms/AkauntingRadioGroup';
|
||||
import AkauntingSelect from './../components/AkauntingSelect';
|
||||
import AkauntingDate from './../components/AkauntingDate';
|
||||
import AkauntingRecurring from './../components/AkauntingRecurring';
|
||||
|
||||
import NProgress from 'nprogress';
|
||||
import 'nprogress/nprogress.css';
|
||||
import NProgressAxios from './../plugins/nprogress-axios';
|
||||
|
||||
import {VMoney} from 'v-money';
|
||||
import { Select, Option } from 'element-ui';
|
||||
import { isThisSecond } from 'date-fns';
|
||||
|
||||
// plugin setup
|
||||
Vue.use(DashboardPlugin);
|
||||
|
||||
export default {
|
||||
components: {
|
||||
AkauntingSearch,
|
||||
AkauntingRadioGroup,
|
||||
AkauntingSelect,
|
||||
AkauntingModal,
|
||||
AkauntingDate,
|
||||
AkauntingRecurring,
|
||||
[Select.name]: Select,
|
||||
[Option.name]: Option
|
||||
},
|
||||
|
||||
data: function () {
|
||||
return {
|
||||
addNew: {
|
||||
modal: false,
|
||||
title: '',
|
||||
html: null
|
||||
},
|
||||
confirm: {
|
||||
url: '',
|
||||
title: '',
|
||||
message: '',
|
||||
button_cancel: '',
|
||||
button_delete: '',
|
||||
show: false
|
||||
},
|
||||
money: {
|
||||
decimal: '.',
|
||||
thousands: ',',
|
||||
prefix: '$ ',
|
||||
suffix: '',
|
||||
precision: 2,
|
||||
masked: false /* doesn't work with directive */
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
directives: {
|
||||
money: VMoney
|
||||
},
|
||||
|
||||
mounted() {
|
||||
this.checkNotify();
|
||||
|
||||
if (aka_currency) {
|
||||
this.money.decimal = aka_currency.decimal_mark;
|
||||
this.money.thousands = aka_currency.thousands_separator;
|
||||
this.money.prefix = (aka_currency.symbol_first) ? aka_currency.symbol : '';
|
||||
this.money.suffix = !(aka_currency.symbol_first) ? aka_currency.symbol : '';
|
||||
this.money.precision = aka_currency.precision;
|
||||
}
|
||||
},
|
||||
|
||||
methods: {
|
||||
// Check Default set notify > store / update action
|
||||
checkNotify: function () {
|
||||
if (!flash_notification) {
|
||||
return false;
|
||||
}
|
||||
|
||||
flash_notification.forEach(notify => {
|
||||
let type = notify.level;
|
||||
|
||||
this.$notify({
|
||||
message: notify.message,
|
||||
timeout: 5000,
|
||||
icon: 'fas fa-bell',
|
||||
type
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
// Form Submit
|
||||
onSubmit() {
|
||||
this.form.submit();
|
||||
},
|
||||
|
||||
onHandleFileUpload(key, event) {
|
||||
this.form[key] = '';
|
||||
this.form[key] = event.target.files[0];
|
||||
},
|
||||
|
||||
// Bulk Action Select all
|
||||
onSelectAll() {
|
||||
this.bulk_action.selectAll();
|
||||
},
|
||||
|
||||
// Bulk Action Select checked/ unchecked
|
||||
onSelect() {
|
||||
this.bulk_action.select();
|
||||
},
|
||||
|
||||
// Bulk Action use selected Change
|
||||
onChange(event) {
|
||||
var result = this.bulk_action.change(event);
|
||||
},
|
||||
|
||||
// Bulk Action use selected Action
|
||||
onAction() {
|
||||
this.bulk_action.action();
|
||||
|
||||
window.location.reload(false);
|
||||
},
|
||||
|
||||
// Bulk Action modal cancel
|
||||
onCancel() {
|
||||
this.bulk_action.modal = false;
|
||||
},
|
||||
|
||||
// Bulk Action Clear selected items
|
||||
onClear() {
|
||||
this.bulk_action.modal = false;
|
||||
|
||||
this.bulk_action.clear();
|
||||
},
|
||||
|
||||
// List Enabled column status changes
|
||||
onStatus(item_id, event) {
|
||||
this.bulk_action.status(item_id, event, this.$notify);
|
||||
},
|
||||
|
||||
// Actions > Delete
|
||||
confirmDelete(url, title, message, button_cancel, button_delete) {
|
||||
this.confirm.url = url;
|
||||
this.confirm.title = title;
|
||||
this.confirm.message = message;
|
||||
this.confirm.button_cancel = button_cancel;
|
||||
this.confirm.button_delete = button_delete;
|
||||
this.confirm.show = true;
|
||||
},
|
||||
|
||||
// Delete action post
|
||||
onDelete() {
|
||||
axios({
|
||||
method: 'DELETE',
|
||||
url: this.confirm.url,
|
||||
})
|
||||
.then(response => {
|
||||
if (response.data.redirect) {
|
||||
this.confirm.url = '';
|
||||
this.confirm.title = '';
|
||||
this.confirm.message = '';
|
||||
this.confirm.show = false;
|
||||
|
||||
window.location.href = response.data.redirect;
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
this.success = false;
|
||||
});
|
||||
},
|
||||
|
||||
// Close modal empty default value
|
||||
cancelDelete() {
|
||||
this.confirm.url = '';
|
||||
this.confirm.title = '';
|
||||
this.confirm.message = '';
|
||||
this.confirm.show = false;
|
||||
},
|
||||
|
||||
onNewItem(event) {
|
||||
console.log(event);
|
||||
|
||||
axios.get(event.path)
|
||||
.then(response => {
|
||||
this.addNew.modal = true;
|
||||
this.addNew.title = event.title;
|
||||
this.addNew.html = response.data.html;
|
||||
|
||||
/*
|
||||
this.selectOptions[3] = value;
|
||||
|
||||
let newOption = {
|
||||
value: "3",
|
||||
currentLabel: value,
|
||||
label: value
|
||||
};
|
||||
|
||||
this.$children[0].$children[0].handleOptionSelect(newOption);
|
||||
this.$children[0].$children[0].onInputChange('3');
|
||||
|
||||
this.real_model = "3";
|
||||
|
||||
this.$emit('change', this.real_model);
|
||||
*/
|
||||
})
|
||||
.catch(e => {
|
||||
this.errors.push(e)
|
||||
})
|
||||
.finally(function () {
|
||||
// always executed
|
||||
});
|
||||
},
|
||||
|
||||
// Change bank account get money and currency rate
|
||||
onChangeAccount(account_id) {
|
||||
axios.get(url + '/banking/accounts/currency', {
|
||||
params: {
|
||||
account_id: account_id
|
||||
}
|
||||
})
|
||||
.then(response => {
|
||||
this.form.currency_code = response.data.currency_code;
|
||||
this.form.currency_rate = response.data.currency_rate;
|
||||
|
||||
this.money.decimal = response.data.decimal_mark;
|
||||
this.money.thousands = response.data.thousands_separator;
|
||||
this.money.prefix = (response.data.symbol_first) ? response.data.symbol : '';
|
||||
this.money.suffix = !(response.data.symbol_first) ? response.data.symbol : '';
|
||||
this.money.precision = response.data.precision;
|
||||
})
|
||||
.catch(error => {
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user