close #1053 Added: Dashboard date filter
This commit is contained in:
18
resources/assets/js/plugins/functions.js
vendored
Normal file
18
resources/assets/js/plugins/functions.js
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
// Get Url Paramater
|
||||
function getQueryVariable(variable) {
|
||||
var query = window.location.search.substring(1);
|
||||
|
||||
var vars = query.split("&");
|
||||
|
||||
for (var i = 0; i < vars.length; i++) {
|
||||
var pair = vars[i].split("=");
|
||||
|
||||
if (pair[0] == variable) {
|
||||
return pair[1];
|
||||
}
|
||||
}
|
||||
|
||||
return(false);
|
||||
}
|
||||
|
||||
export {getQueryVariable}
|
47
resources/assets/js/views/common/dashboard.js
vendored
47
resources/assets/js/views/common/dashboard.js
vendored
@ -9,6 +9,7 @@ require('./../../bootstrap');
|
||||
import Vue from 'vue';
|
||||
|
||||
import Global from './../../mixins/global';
|
||||
import {getQueryVariable} from './../../plugins/functions';
|
||||
|
||||
import AkauntingDashboard from './../../components/AkauntingDashboard';
|
||||
import AkauntingWidget from './../../components/AkauntingWidget';
|
||||
@ -49,38 +50,20 @@ const dashboard = new Vue({
|
||||
sort: 0,
|
||||
widget_id: 0
|
||||
},
|
||||
pickerOptions: {
|
||||
shortcuts: [{
|
||||
text: 'Last week',
|
||||
onClick(picker) {
|
||||
const end = new Date();
|
||||
const start = new Date();
|
||||
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
|
||||
picker.$emit('pick', [start, end]);
|
||||
}
|
||||
}, {
|
||||
text: 'Last month',
|
||||
onClick(picker) {
|
||||
const end = new Date();
|
||||
const start = new Date();
|
||||
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
|
||||
picker.$emit('pick', [start, end]);
|
||||
}
|
||||
}, {
|
||||
text: 'Last 3 months',
|
||||
onClick(picker) {
|
||||
const end = new Date();
|
||||
const start = new Date();
|
||||
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
|
||||
picker.$emit('pick', [start, end]);
|
||||
}
|
||||
}]
|
||||
},
|
||||
value2: ''
|
||||
filter_date: [],
|
||||
};
|
||||
},
|
||||
|
||||
mounted() {
|
||||
let start_date = getQueryVariable('start_date');
|
||||
|
||||
if (start_date) {
|
||||
let end_date = getQueryVariable('end_date');
|
||||
|
||||
this.filter_date.push(start_date);
|
||||
this.filter_date.push(end_date);
|
||||
}
|
||||
|
||||
this.getWidgets();
|
||||
},
|
||||
|
||||
@ -166,5 +149,13 @@ const dashboard = new Vue({
|
||||
this.widget.sort = 0;
|
||||
this.widget.widget_id = 0;
|
||||
},
|
||||
|
||||
onChangeFilterDate() {
|
||||
if (this.filter_date) {
|
||||
window.location.href = url + '?start_date=' + this.filter_date[0] + '&end_date=' + this.filter_date[1];
|
||||
} else {
|
||||
window.location.href = url;
|
||||
}
|
||||
},
|
||||
}
|
||||
});
|
||||
|
Reference in New Issue
Block a user