Merge pull request #17703 from rmehta/yeah-form-js

refactor: deprecate old API as per https://github.com/frappe/frappe/pull/7537
This commit is contained in:
Rushabh Mehta
2019-05-24 11:36:16 +05:30
committed by GitHub
19 changed files with 682 additions and 2079 deletions

View File

@@ -3,9 +3,6 @@
cur_frm.cscript.refresh = function(doc, dt, dn) {
doc = locals[dt][dn];
var save_msg = __("You must Save the form before proceeding");
var err_msg = __("There was an error. One probable reason could be that you haven't saved the form. Please contact support@erpnext.com if the problem persists.")
cur_frm.add_custom_button(__('View Now'), function() {
frappe.call({
method: 'erpnext.setup.doctype.email_digest.email_digest.get_digest_msg',
@@ -23,61 +20,47 @@ cur_frm.cscript.refresh = function(doc, dt, dn) {
});
}, "fa fa-eye-open", "btn-default");
if(frappe.session.user==="Administrator") {
if (!cur_frm.is_new()) {
cur_frm.add_custom_button(__('Send Now'), function() {
doc = locals[dt][dn];
if(doc.__unsaved != 1) {
return $c_obj(doc, 'send', '', function(r, rt) {
if(r.exc) {
frappe.msgprint(err_msg);
console.log(r.exc);
} else {
//console.log(arguments);
frappe.msgprint(__('Message Sent'));
}
});
} else {
frappe.msgprint(save_msg);
}
}, "fa fa-envelope", "btn-default");
return cur_frm.call('send', null, (r) => {
frappe.show_alert(__('Message Sent'));
});
});
}
}
};
cur_frm.cscript.addremove_recipients = function(doc, dt, dn) {
// Get user list
return $c_obj(doc, 'get_users', '', function(r, rt) {
if(r.exc) {
frappe.msgprint(r.exc);
} else {
// Open a dialog and display checkboxes against email addresses
doc = locals[dt][dn];
var d = new frappe.ui.Dialog({
title: __('Add/Remove Recipients'),
width: 400
});
$.each(r.user_list, function(i, v) {
var fullname = frappe.user.full_name(v.name);
if(fullname !== v.name) fullname = fullname + " <" + v.name + ">";
return cur_frm.call('get_users', null, function(r) {
// Open a dialog and display checkboxes against email addresses
doc = locals[dt][dn];
var d = new frappe.ui.Dialog({
title: __('Add/Remove Recipients'),
width: 400
});
if(v.enabled==0) {
fullname = repl("<span style='color: red'> %(name)s (" + __("disabled user") + ")</span>", {name: v.name});
}
$.each(r.user_list, function(i, v) {
var fullname = frappe.user.full_name(v.name);
if(fullname !== v.name) fullname = fullname + " &lt;" + v.name + "&gt;";
$('<div class="checkbox"><label>\
<input type="checkbox" data-id="' + v.name + '"'+
(v.checked ? 'checked' : '') +
'> '+ fullname +'</label></div>').appendTo(d.body);
});
if(v.enabled==0) {
fullname = repl("<span style='color: red'> %(name)s (" + __("disabled user") + ")</span>", {name: v.name});
}
// Display add recipients button
d.set_primary_action("Update", function() {
cur_frm.cscript.add_to_rec_list(doc, d.body, r.user_list.length);
});
$('<div class="checkbox"><label>\
<input type="checkbox" data-id="' + v.name + '"'+
(v.checked ? 'checked' : '') +
'> '+ fullname +'</label></div>').appendTo(d.body);
});
cur_frm.rec_dialog = d;
d.show();
}
// Display add recipients button
d.set_primary_action("Update", function() {
cur_frm.cscript.add_to_rec_list(doc, d.body, r.user_list.length);
});
cur_frm.rec_dialog = d;
d.show();
});
}

View File

@@ -1,17 +1,15 @@
// Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and Contributors
// License: GNU General Public License v3. See license.txt
$.extend(cur_frm.cscript, {
onload: function (doc, cdt, cdn) {
cur_frm.trigger("get_distance_uoms");
frappe.ui.form.on('Global Defaults', {
onload: function(frm) {
frm.trigger('get_distance_uoms');
},
validate: function (doc, cdt, cdn) {
return $c_obj(doc, 'get_defaults', '', function (r, rt) {
validate: function(frm) {
frm.call('get_defaults', null, r => {
frappe.sys_defaults = r.message;
});
})
},
get_distance_uoms: function (frm) {
let units = [];
@@ -27,9 +25,8 @@ $.extend(cur_frm.cscript, {
r.message.forEach(row => units.push(row.to_uom));
}
});
cur_frm.set_query("default_distance_unit", function (doc) {
frm.set_query("default_distance_unit", function () {
return { filters: { "name": ["IN", units] } };
})
});
}
});