diff --git a/public/js/legacy/widgets/form/form_fields.js b/public/js/legacy/widgets/form/form_fields.js
index 566b891151..0ae7e88b53 100644
--- a/public/js/legacy/widgets/form/form_fields.js
+++ b/public/js/legacy/widgets/form/form_fields.js
@@ -272,7 +272,7 @@ _f.CodeField.prototype.make_input = function() {
// General options
theme : "advanced",
plugins : "style,inlinepopups,table,advimage",
- extended_valid_elements: "div[id|dir|class|align|style]",
+ extended_valid_elements: "script|embed",
// w/h
width: '100%',
diff --git a/public/js/wn/form/assign_to.js b/public/js/wn/form/assign_to.js
index 47881e9fc7..7d6a2c2ebd 100644
--- a/public/js/wn/form/assign_to.js
+++ b/public/js/wn/form/assign_to.js
@@ -32,9 +32,7 @@ wn.ui.form.AssignTo = Class.extend({
$.extend(this, opts);
var me = this;
this.wrapper = $('
\
-
\
+
\
\
').appendTo(this.parent);
diff --git a/public/js/wn/form/linked_with.js b/public/js/wn/form/linked_with.js
index aae7763945..9f3cb9cc76 100644
--- a/public/js/wn/form/linked_with.js
+++ b/public/js/wn/form/linked_with.js
@@ -22,7 +22,7 @@ wn.ui.form.LinkedWith = Class.extend({
}).sort(function(a, b) { return a.label > b.label ? 1 : -1 });
this.dialog = new wn.ui.Dialog({
- width: 640,
+ width: 700,
title: wn._("Linked With"),
fields: [
{ fieldtype: "HTML", label: "help",
@@ -60,6 +60,7 @@ wn.ui.form.LinkedWith = Class.extend({
},
make_listing: function() {
var me = this;
+ this.listview = wn.views.get_listview(this.doctype, this);
this.lst = new wn.ui.Listing({
hide_refresh: true,
no_loading: true,
@@ -69,34 +70,37 @@ wn.ui.form.LinkedWith = Class.extend({
parent: $(this.dialog.fields_dict.list.wrapper).empty().css("min-height", "300px")
.get(0),
method: 'webnotes.widgets.reportview.get',
+ custom_new_doc: me.listview.make_new_doc || undefined,
get_args: function() {
- return {
- doctype: me.doctype,
- fields: (!me.is_table
- ? [ '`tab' + me.doctype + '`.name',
- '`tab' + me.doctype + '`.modified',
- '`tab' + me.doctype + '`.modified_by',
- '`tab' + me.doctype + '`.docstatus']
- : [ '`tab' + me.doctype + '`.parent',
- '`tab' + me.doctype + '`.parenttype',
- '`tab' + me.doctype + '`.modified_by',
- '`tab' + me.doctype + '`.docstatus']
- ),
- filters: me.lst.filter_list.get_filters(),
- docstatus: ['0','1']
+ var args = {
+ doctype: this.doctype,
+ fields: this.listview.fields,
+ filters: this.filter_list.get_filters(),
+ docstatus: ['0','1'],
+ order_by: this.listview.order_by || undefined,
+ group_by: this.listview.group_by || undefined,
}
+ return args;
+
+ // return {
+ // doctype: me.doctype,
+ // fields: (!me.is_table
+ // ? [ '`tab' + me.doctype + '`.name',
+ // '`tab' + me.doctype + '`.modified',
+ // '`tab' + me.doctype + '`.modified_by',
+ // '`tab' + me.doctype + '`.docstatus']
+ // : [ '`tab' + me.doctype + '`.parent',
+ // '`tab' + me.doctype + '`.parenttype',
+ // '`tab' + me.doctype + '`.modified_by',
+ // '`tab' + me.doctype + '`.docstatus']
+ // ),
+ // filters: me.lst.filter_list.get_filters(),
+ // docstatus: ['0','1']
+ // }
},
render_row: function(parent, data) {
- $(parent).html(repl('%(avatar)s \
- \
- %(doctype)s: %(name)s\
- Last Updated: %(modified)s', {
- avatar: wn.avatar(data.modified_by, null,
- "Last Modified By: " + wn.user_info(data.modified_by).fullname),
- doctype: me.is_table ? data.parenttype : me.doctype,
- modified: dateutil.comment_when(data.modified),
- name: me.is_table ? data.parent : data.name
- })).find('.avatar img').centerImage();
+ data.doctype = this.doctype;
+ me.listview.render(parent, data, this);
},
get_no_result_message: function() {
return repl("%(doctype)s: " + wn._("Not linked") + "
", {
@@ -108,5 +112,6 @@ wn.ui.form.LinkedWith = Class.extend({
me.lst.filter_list.show_filters(true);
me.lst.filter_list.clear_filters();
me.lst.set_filter(me.linked_with[me.doctype], me.frm.doc.name);
+ me.lst.listview = me.listview;
}
});
\ No newline at end of file
diff --git a/public/js/wn/views/doclistview.js b/public/js/wn/views/doclistview.js
index 0d9f0ebe39..1e31bc8cec 100644
--- a/public/js/wn/views/doclistview.js
+++ b/public/js/wn/views/doclistview.js
@@ -129,13 +129,7 @@ wn.views.DocListView = wn.ui.Listing.extend({
}
},
setup_listview: function() {
- if(this.meta.__listjs) {
- eval(this.meta.__listjs);
- this.listview = new wn.doclistviews[this.doctype](this);
- } else {
- this.listview = new wn.views.ListView(this);
- }
- this.listview.parent = this;
+ this.listview = wn.views.get_listview(this.doctype, this);
this.wrapper = this.$page.find('.wnlist-area');
this.page_length = 20;
this.allow_delete = true;
@@ -155,7 +149,6 @@ wn.views.DocListView = wn.ui.Listing.extend({
new_doctype: this.doctype,
allow_delete: this.allow_delete,
no_result_message: this.make_no_result(),
- columns: this.listview.fields,
custom_new_doc: me.listview.make_new_doc || undefined,
});
@@ -188,9 +181,6 @@ wn.views.DocListView = wn.ui.Listing.extend({
});
data.doctype = this.doctype;
this.listview.render(row, data, this);
- },
- get_query_fields: function() {
- return this.listview.fields;
},
get_args: function() {
var docstatus_list = this.can_submit ? $.map(this.$page.find('.show-docstatus :checked'),
@@ -200,7 +190,7 @@ wn.views.DocListView = wn.ui.Listing.extend({
var args = {
doctype: this.doctype,
- fields: this.get_query_fields(),
+ fields: this.listview.fields,
filters: this.filter_list.get_filters(),
docstatus: docstatus_list,
order_by: this.listview.order_by || undefined,
diff --git a/public/js/wn/views/listview.js b/public/js/wn/views/listview.js
index 5960af680b..d8341586d4 100644
--- a/public/js/wn/views/listview.js
+++ b/public/js/wn/views/listview.js
@@ -1,3 +1,14 @@
+wn.views.get_listview = function(doctype, parent) {
+ var meta = locals.DocType[doctype];
+ if(meta.__listjs) {
+ eval(meta.__listjs);
+ var listview = new wn.doclistviews[doctype](parent);
+ } else {
+ var listview = new wn.views.ListView(parent);
+ }
+ return listview;
+}
+
wn.views.ListView = Class.extend({
init: function(doclistview) {
this.doclistview = doclistview;