2018-02-08 15:08:47 +05:30
|
|
|
const frappe = require('frappejs');
|
2018-01-30 17:33:04 +05:30
|
|
|
const Page = require('frappejs/client/view/page');
|
|
|
|
const view = require('frappejs/client/view');
|
|
|
|
|
2018-02-08 15:08:47 +05:30
|
|
|
module.exports = class ListPage extends Page {
|
2018-01-30 17:33:04 +05:30
|
|
|
constructor(doctype) {
|
2018-02-08 12:16:38 +05:30
|
|
|
let meta = frappe.getMeta(doctype);
|
2018-02-14 22:14:50 +05:30
|
|
|
|
|
|
|
// if center column is present, list does not have its route
|
|
|
|
const hasRoute = frappe.desk.center ? false : true;
|
|
|
|
|
|
|
|
super({
|
|
|
|
title: frappe._("List: {0}", meta.name),
|
|
|
|
parent: hasRoute ? frappe.desk.body : frappe.desk.center,
|
|
|
|
hasRoute: hasRoute
|
|
|
|
});
|
|
|
|
|
2018-02-16 18:43:46 +05:30
|
|
|
this.list = new (view.geListClass(doctype))({
|
2018-01-30 17:33:04 +05:30
|
|
|
doctype: doctype,
|
2018-02-08 15:08:47 +05:30
|
|
|
parent: this.body,
|
|
|
|
page: this
|
2018-01-30 17:33:04 +05:30
|
|
|
});
|
2018-02-14 22:14:50 +05:30
|
|
|
|
2018-01-30 18:55:48 +05:30
|
|
|
this.on('show', async () => {
|
|
|
|
await this.list.run();
|
2018-01-30 17:33:04 +05:30
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|