Merge branch 'i18n' of git://github.com/bperretti/erpnext into bperretti-i18n
This commit is contained in:
commit
ca8ad210d2
@ -11,7 +11,7 @@ cur_frm.cscript.onload = function(doc, cdt, cdn) {
|
||||
// -----------------------------------------
|
||||
cur_frm.cscript.refresh = function(doc, cdt, cdn) {
|
||||
if(doc.__islocal) {
|
||||
msgprint("Please create new account from Chart of Accounts.");
|
||||
msgprint(wn._("Please create new account from Chart of Accounts."));
|
||||
throw "cannot create";
|
||||
}
|
||||
|
||||
@ -38,7 +38,7 @@ cur_frm.cscript.refresh = function(doc, cdt, cdn) {
|
||||
// read-only for root accounts
|
||||
if(!doc.parent_account) {
|
||||
cur_frm.perm = [[1,0,0], [1,0,0]];
|
||||
cur_frm.set_intro("This is a root account and cannot be edited.");
|
||||
cur_frm.set_intro(wn._("This is a root account and cannot be edited."));
|
||||
} else {
|
||||
// credit days and type if customer or supplier
|
||||
cur_frm.set_intro(null);
|
||||
@ -81,17 +81,17 @@ cur_frm.cscript.account_type = function(doc, cdt, cdn) {
|
||||
// Hide/unhide group or ledger
|
||||
// -----------------------------------------
|
||||
cur_frm.cscript.add_toolbar_buttons = function(doc) {
|
||||
cur_frm.add_custom_button('Chart of Accounts',
|
||||
cur_frm.add_custom_button(wn._('Chart of Accounts'),
|
||||
function() { wn.set_route("Accounts Browser", "Account"); }, 'icon-sitemap')
|
||||
|
||||
if (cstr(doc.group_or_ledger) == 'Group') {
|
||||
cur_frm.add_custom_button('Convert to Ledger',
|
||||
cur_frm.add_custom_button(wn._('Convert to Ledger'),
|
||||
function() { cur_frm.cscript.convert_to_ledger(); }, 'icon-retweet')
|
||||
} else if (cstr(doc.group_or_ledger) == 'Ledger') {
|
||||
cur_frm.add_custom_button('Convert to Group',
|
||||
cur_frm.add_custom_button(wn._('Convert to Group'),
|
||||
function() { cur_frm.cscript.convert_to_group(); }, 'icon-retweet')
|
||||
|
||||
cur_frm.add_custom_button('View Ledger', function() {
|
||||
cur_frm.add_custom_button(wn._('View Ledger'), function() {
|
||||
wn.route_options = {
|
||||
"account": doc.name,
|
||||
"from_date": sys_defaults.year_start_date,
|
||||
|
@ -41,8 +41,8 @@ cur_frm.cscript.refresh = function(doc, cdt, cdn) {
|
||||
cur_frm.toggle_enable(['group_or_ledger', 'company'], doc.__islocal);
|
||||
|
||||
if(!doc.__islocal && doc.group_or_ledger=='Group') {
|
||||
intro_txt += '<p><b>Note:</b> This Cost Center is a <i>Group</i>, \
|
||||
Accounting Entries are not allowed against groups.</p>';
|
||||
intro_txt += '<p><b>'+wn._('Note:')+'</b>'+ wn._('This Cost Center is a')+ '<i>'+wn._('Group')+'</i>, '+
|
||||
wn._('Accounting Entries are not allowed against groups.')+'</p>';
|
||||
}
|
||||
|
||||
cur_frm.cscript.hide_unhide_group_ledger(doc);
|
||||
@ -50,22 +50,22 @@ cur_frm.cscript.refresh = function(doc, cdt, cdn) {
|
||||
cur_frm.toggle_display('sb1', doc.group_or_ledger=='Ledger')
|
||||
cur_frm.set_intro(intro_txt);
|
||||
|
||||
cur_frm.add_custom_button('Chart of Cost Centers',
|
||||
cur_frm.add_custom_button(wn._('Chart of Cost Centers'),
|
||||
function() { wn.set_route("Accounts Browser", "Cost Center"); }, 'icon-sitemap')
|
||||
}
|
||||
|
||||
cur_frm.cscript.parent_cost_center = function(doc,cdt,cdn){
|
||||
if(!doc.company){
|
||||
alert('Please enter company name first');
|
||||
alert(wn._('Please enter company name first'));
|
||||
}
|
||||
}
|
||||
|
||||
cur_frm.cscript.hide_unhide_group_ledger = function(doc) {
|
||||
if (cstr(doc.group_or_ledger) == 'Group') {
|
||||
cur_frm.add_custom_button('Convert to Ledger',
|
||||
cur_frm.add_custom_button(wn._('Convert to Ledger'),
|
||||
function() { cur_frm.cscript.convert_to_ledger(); }, 'icon-retweet')
|
||||
} else if (cstr(doc.group_or_ledger) == 'Ledger') {
|
||||
cur_frm.add_custom_button('Convert to Group',
|
||||
cur_frm.add_custom_button(wn._('Convert to Group'),
|
||||
function() { cur_frm.cscript.convert_to_group(); }, 'icon-retweet')
|
||||
}
|
||||
}
|
||||
|
@ -5,8 +5,8 @@ cur_frm.cscript.refresh = function(doc, dt, dn) {
|
||||
cur_frm.toggle_enable('year_start_date', doc.__islocal)
|
||||
|
||||
if (!doc.__islocal && (doc.name != sys_defaults.fiscal_year)) {
|
||||
cur_frm.add_custom_button("Set as Default", cur_frm.cscript.set_as_default);
|
||||
cur_frm.set_intro("To set this Fiscal Year as Deafult, click on 'Set as Default'");
|
||||
cur_frm.add_custom_button(wn._("Set as Default"), cur_frm.cscript.set_as_default);
|
||||
cur_frm.set_intro(wn._("To set this Fiscal Year as Deafult, click on 'Set as Default'"));
|
||||
} else cur_frm.set_intro("");
|
||||
}
|
||||
|
||||
|
@ -115,7 +115,7 @@ cur_frm.cscript.refresh = function(doc) {
|
||||
erpnext.hide_naming_series();
|
||||
cur_frm.cscript.voucher_type(doc);
|
||||
if(doc.docstatus==1) {
|
||||
cur_frm.add_custom_button('View Ledger', function() {
|
||||
cur_frm.add_custom_button(wn._('View Ledger'), function() {
|
||||
wn.route_options = {
|
||||
"voucher_no": doc.name,
|
||||
"from_date": doc.posting_date,
|
||||
@ -185,7 +185,7 @@ cur_frm.cscript.select_print_heading = function(doc,cdt,cdn){
|
||||
cur_frm.pformat.print_heading = doc.select_print_heading;
|
||||
}
|
||||
else
|
||||
cur_frm.pformat.print_heading = "Journal Voucher";
|
||||
cur_frm.pformat.print_heading = wn._("Journal Voucher");
|
||||
}
|
||||
|
||||
cur_frm.cscript.voucher_type = function(doc, cdt, cdn) {
|
||||
|
@ -13,15 +13,15 @@ cur_frm.cscript.onload_post_render = function(doc) {
|
||||
cur_frm.cscript.refresh = function(doc) {
|
||||
cur_frm.set_intro("");
|
||||
if(!doc.voucher_no) {
|
||||
cur_frm.set_intro("Select the Invoice against which you want to allocate payments.");
|
||||
cur_frm.set_intro(wn._("Select the Invoice against which you want to allocate payments."));
|
||||
} else {
|
||||
cur_frm.set_intro("Set allocated amount against each Payment Entry and click 'Allocate'.");
|
||||
cur_frm.set_intro(wn._("Set allocated amount against each Payment Entry and click 'Allocate'."));
|
||||
}
|
||||
}
|
||||
|
||||
cur_frm.fields_dict.voucher_no.get_query = function(doc) {
|
||||
// TO-do: check for pos, it should not come
|
||||
if (!doc.account) msgprint("Please select Account first");
|
||||
if (!doc.account) msgprint(wn._("Please select Account first"));
|
||||
else {
|
||||
return {
|
||||
doctype: doc.voucher_type,
|
||||
|
@ -27,10 +27,10 @@ erpnext.accounts.PurchaseInvoice = erpnext.buying.BuyingController.extend({
|
||||
|
||||
// Show / Hide button
|
||||
if(doc.docstatus==1 && doc.outstanding_amount > 0)
|
||||
this.frm.add_custom_button('Make Payment Entry', this.make_bank_voucher);
|
||||
this.frm.add_custom_button(wn._('Make Payment Entry'), this.make_bank_voucher);
|
||||
|
||||
if(doc.docstatus==1) {
|
||||
cur_frm.add_custom_button('View Ledger', function() {
|
||||
cur_frm.add_custom_button(wn._('View Ledger'), function() {
|
||||
wn.route_options = {
|
||||
"voucher_no": doc.name,
|
||||
"from_date": doc.posting_date,
|
||||
@ -214,5 +214,5 @@ cur_frm.cscript.select_print_heading = function(doc,cdt,cdn){
|
||||
cur_frm.pformat.print_heading = doc.select_print_heading;
|
||||
}
|
||||
else
|
||||
cur_frm.pformat.print_heading = "Purchase Invoice";
|
||||
cur_frm.pformat.print_heading = wn._("Purchase Invoice");
|
||||
}
|
@ -62,12 +62,12 @@ cur_frm.pformat.purchase_tax_details= function(doc){
|
||||
cur_frm.cscript.add_deduct_tax = function(doc, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
if(!d.category && d.add_deduct_tax){
|
||||
alert("Please select Category first");
|
||||
alert(wn._("Please select Category first"));
|
||||
d.add_deduct_tax = '';
|
||||
}
|
||||
else if(d.category != 'Total' && d.add_deduct_tax == 'Deduct') {
|
||||
console.log([d.category, d.add_deduct_tax]);
|
||||
msgprint("You cannot deduct when category is for 'Valuation' or 'Valuation and Total'");
|
||||
msgprint(wn._("You cannot deduct when category is for 'Valuation' or 'Valuation and Total'"));
|
||||
d.add_deduct_tax = '';
|
||||
}
|
||||
|
||||
@ -76,15 +76,15 @@ cur_frm.cscript.add_deduct_tax = function(doc, cdt, cdn) {
|
||||
cur_frm.cscript.charge_type = function(doc, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
if(!d.category && d.charge_type){
|
||||
alert("Please select Category first");
|
||||
alert(wn._("Please select Category first"));
|
||||
d.charge_type = '';
|
||||
}
|
||||
else if(d.idx == 1 && (d.charge_type == 'On Previous Row Amount' || d.charge_type == 'On Previous Row Total')){
|
||||
alert("You cannot select Charge Type as 'On Previous Row Amount' or 'On Previous Row Total' for first row");
|
||||
alert(wn._("You cannot select Charge Type as 'On Previous Row Amount' or 'On Previous Row Total' for first row"));
|
||||
d.charge_type = '';
|
||||
}
|
||||
else if((d.category == 'Valuation' || d.category == 'Valuation and Total') && (d.charge_type == 'On Previous Row Amount' || d.charge_type == 'On Previous Row Total')){
|
||||
alert("You cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for valuation. You can select only 'Total' option for previous row amount or previous row total")
|
||||
alert(wn._("You cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for valuation. You can select only 'Total' option for previous row amount or previous row total"))
|
||||
d.charge_type = '';
|
||||
}
|
||||
validated = false;
|
||||
@ -99,16 +99,16 @@ cur_frm.cscript.charge_type = function(doc, cdt, cdn) {
|
||||
cur_frm.cscript.row_id = function(doc, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
if(!d.charge_type && d.row_id){
|
||||
alert("Please select Charge Type first");
|
||||
alert(wn._("Please select Charge Type first"));
|
||||
d.row_id = '';
|
||||
}
|
||||
else if((d.charge_type == 'Actual' || d.charge_type == 'On Net Total') && d.row_id) {
|
||||
alert("You can Enter Row only if your Charge Type is 'On Previous Row Amount' or ' Previous Row Total'");
|
||||
alert(wn._("You can Enter Row only if your Charge Type is 'On Previous Row Amount' or ' Previous Row Total'"));
|
||||
d.row_id = '';
|
||||
}
|
||||
else if((d.charge_type == 'On Previous Row Amount' || d.charge_type == 'On Previous Row Total') && d.row_id){
|
||||
if(d.row_id >= d.idx){
|
||||
alert("You cannot Enter Row no. greater than or equal to current row no. for this Charge type");
|
||||
alert(wn._("You cannot Enter Row no. greater than or equal to current row no. for this Charge type"));
|
||||
d.row_id = '';
|
||||
}
|
||||
}
|
||||
@ -136,10 +136,27 @@ cur_frm.fields_dict['purchase_tax_details'].grid.get_field("cost_center").get_qu
|
||||
}
|
||||
}
|
||||
|
||||
<<<<<<< HEAD
|
||||
cur_frm.cscript.account_head = function(doc, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
if(!d.charge_type && d.account_head){
|
||||
alert(wn._("Please select Charge Type first"));
|
||||
validated = false;
|
||||
d.account_head = '';
|
||||
}
|
||||
else if(d.account_head && d.charge_type) {
|
||||
arg = "{'charge_type' : '" + d.charge_type + "', 'account_head' : '" + d.account_head + "'}";
|
||||
return get_server_fields('get_rate', arg, 'purchase_tax_details', doc, cdt, cdn, 1);
|
||||
}
|
||||
refresh_field('account_head',d.name,'purchase_tax_details');
|
||||
}
|
||||
|
||||
=======
|
||||
>>>>>>> f146e8b7f52a3e46e335c0fefd92c347717b370b
|
||||
cur_frm.cscript.rate = function(doc, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
if(!d.charge_type && d.rate) {
|
||||
alert("Please select Charge Type first");
|
||||
alert(wn._("Please select Charge Type first"));
|
||||
d.rate = '';
|
||||
}
|
||||
validated = false;
|
||||
@ -149,11 +166,11 @@ cur_frm.cscript.rate = function(doc, cdt, cdn) {
|
||||
cur_frm.cscript.tax_amount = function(doc, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
if(!d.charge_type && d.tax_amount){
|
||||
alert("Please select Charge Type first");
|
||||
alert(wn._("Please select Charge Type first"));
|
||||
d.tax_amount = '';
|
||||
}
|
||||
else if(d.charge_type && d.tax_amount) {
|
||||
alert("You cannot directly enter Amount and if your Charge Type is Actual enter your amount in Rate");
|
||||
alert(wn._("You cannot directly enter Amount and if your Charge Type is Actual enter your amount in Rate"));
|
||||
d.tax_amount = '';
|
||||
}
|
||||
validated = false;
|
||||
|
@ -61,7 +61,7 @@ erpnext.accounts.SalesInvoiceController = erpnext.selling.SellingController.exte
|
||||
var percent_paid = cint(flt(doc.grand_total - doc.outstanding_amount) / flt(doc.grand_total) * 100);
|
||||
cur_frm.dashboard.add_progress(percent_paid + "% Paid", percent_paid);
|
||||
|
||||
cur_frm.add_custom_button('Send SMS', cur_frm.cscript.send_sms);
|
||||
cur_frm.add_custom_button(wn._('Send SMS'), cur_frm.cscript.send_sms);
|
||||
|
||||
if(cint(doc.update_stock)!=1) {
|
||||
// show Make Delivery Note button only if Sales Invoice is not created from Delivery Note
|
||||
@ -72,11 +72,11 @@ erpnext.accounts.SalesInvoiceController = erpnext.selling.SellingController.exte
|
||||
});
|
||||
|
||||
if(!from_delivery_note)
|
||||
cur_frm.add_custom_button('Make Delivery', cur_frm.cscript['Make Delivery Note']);
|
||||
cur_frm.add_custom_button(wn._('Make Delivery'), cur_frm.cscript['Make Delivery Note']);
|
||||
}
|
||||
|
||||
if(doc.outstanding_amount!=0)
|
||||
cur_frm.add_custom_button('Make Payment Entry', cur_frm.cscript.make_bank_voucher);
|
||||
cur_frm.add_custom_button(wn._('Make Payment Entry'), cur_frm.cscript.make_bank_voucher);
|
||||
}
|
||||
|
||||
// Show buttons only when pos view is active
|
||||
|
@ -95,7 +95,7 @@ cur_frm.pformat.other_charges= function(doc){
|
||||
cur_frm.cscript.charge_type = function(doc, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
if(d.idx == 1 && (d.charge_type == 'On Previous Row Amount' || d.charge_type == 'On Previous Row Total')){
|
||||
alert("You cannot select Charge Type as 'On Previous Row Amount' or 'On Previous Row Total' for first row");
|
||||
alert(wn._("You cannot select Charge Type as 'On Previous Row Amount' or 'On Previous Row Total' for first row"));
|
||||
d.charge_type = '';
|
||||
}
|
||||
validated = false;
|
||||
@ -108,16 +108,16 @@ cur_frm.cscript.charge_type = function(doc, cdt, cdn) {
|
||||
cur_frm.cscript.row_id = function(doc, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
if(!d.charge_type && d.row_id){
|
||||
alert("Please select Charge Type first");
|
||||
alert(wn._("Please select Charge Type first"));
|
||||
d.row_id = '';
|
||||
}
|
||||
else if((d.charge_type == 'Actual' || d.charge_type == 'On Net Total') && d.row_id) {
|
||||
alert("You can Enter Row only if your Charge Type is 'On Previous Row Amount' or ' Previous Row Total'");
|
||||
alert(wn._("You can Enter Row only if your Charge Type is 'On Previous Row Amount' or ' Previous Row Total'"));
|
||||
d.row_id = '';
|
||||
}
|
||||
else if((d.charge_type == 'On Previous Row Amount' || d.charge_type == 'On Previous Row Total') && d.row_id){
|
||||
if(d.row_id >= d.idx){
|
||||
alert("You cannot Enter Row no. greater than or equal to current row no. for this Charge type");
|
||||
alert(wn._("You cannot Enter Row no. greater than or equal to current row no. for this Charge type"));
|
||||
d.row_id = '';
|
||||
}
|
||||
}
|
||||
@ -145,10 +145,28 @@ cur_frm.fields_dict['other_charges'].grid.get_field("cost_center").get_query = f
|
||||
}
|
||||
}
|
||||
|
||||
<<<<<<< HEAD
|
||||
|
||||
cur_frm.cscript.account_head = function(doc, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
if(!d.charge_type && d.account_head){
|
||||
alert(wn._("Please select Charge Type first"));
|
||||
validated = false;
|
||||
d.account_head = '';
|
||||
}
|
||||
else if(d.account_head && d.charge_type) {
|
||||
arg = "{'charge_type' : '" + d.charge_type +"', 'account_head' : '" + d.account_head + "'}";
|
||||
return get_server_fields('get_rate', arg, 'other_charges', doc, cdt, cdn, 1);
|
||||
}
|
||||
refresh_field('account_head',d.name,'other_charges');
|
||||
}
|
||||
|
||||
=======
|
||||
>>>>>>> f146e8b7f52a3e46e335c0fefd92c347717b370b
|
||||
cur_frm.cscript.rate = function(doc, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
if(!d.charge_type && d.rate) {
|
||||
alert("Please select Charge Type first");
|
||||
alert(wn._("Please select Charge Type first"));
|
||||
d.rate = '';
|
||||
}
|
||||
validated = false;
|
||||
@ -158,11 +176,11 @@ cur_frm.cscript.rate = function(doc, cdt, cdn) {
|
||||
cur_frm.cscript.tax_amount = function(doc, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
if(!d.charge_type && d.tax_amount){
|
||||
alert("Please select Charge Type first");
|
||||
alert(wn._("Please select Charge Type first"));
|
||||
d.tax_amount = '';
|
||||
}
|
||||
else if(d.charge_type && d.tax_amount) {
|
||||
alert("You cannot directly enter Amount and if your Charge Type is Actual enter your amount in Rate");
|
||||
alert(wn._("You cannot directly enter Amount and if your Charge Type is Actual enter your amount in Rate"));
|
||||
d.tax_amount = '';
|
||||
}
|
||||
validated = false;
|
||||
|
@ -20,29 +20,31 @@ pscript['onload_Accounts Browser'] = function(wrapper){
|
||||
chart_area = $("<div>")
|
||||
.css({"margin-bottom": "15px"})
|
||||
.appendTo(main),
|
||||
help_area = $('<div class="well">\
|
||||
<h4>Quick Help</h4>\
|
||||
<ol>\
|
||||
<li>To add child nodes, explore tree and click on the node under which you \
|
||||
want to add more nodes.\
|
||||
<li>Accounting Entries can be made against leaf nodes, called <b>Ledgers</b>.\
|
||||
Entries against <b>Groups</b> are not allowed.\
|
||||
<li>Please do NOT create Account (Ledgers) for Customers and Suppliers. \
|
||||
They are created directly from the Customer / Supplier masters.\
|
||||
<li><b>To create a Bank Account:</b> Go to the appropriate group \
|
||||
(usually Application of Funds > Current Assets > Bank Accounts)\
|
||||
and create a new Account Ledger (by clicking on Add Child) of \
|
||||
type "Bank or Cash"\
|
||||
<li><b>To create a Tax Account:</b> Go to the appropriate group \
|
||||
(usually Source of Funds > Current Liabilities > Taxes and Duties) \
|
||||
and create a new Account Ledger (by clicking on Add Child) of type\
|
||||
"Tax" and do mention the Tax rate.\
|
||||
</ol>\
|
||||
<p>Please setup your chart of accounts before you start Accounting Entries</p>\
|
||||
</div>').appendTo(main);
|
||||
help_area = $('<div class="well">'+
|
||||
'<h4>'+wn._('Quick Help')+'</h4>'+
|
||||
'<ol>'+
|
||||
'<li>'+wn._('To add child nodes, explore tree and click on the node under which you want to add more nodes.')+'</li>'+
|
||||
'<li>'+
|
||||
wn._('Accounting Entries can be made against leaf nodes, called')+
|
||||
'<b>' +wn._('Ledgers')+'</b>.'+ wn._('Entries against') +
|
||||
'<b>' +wn._('Groups') + '</b>'+ wn._('are not allowed.')+
|
||||
'</li>'+
|
||||
'<li>'+wn._('Please do NOT create Account (Ledgers) for Customers and Suppliers. They are created directly from the Customer / Supplier masters.')+'</li>'+
|
||||
'<li>'+
|
||||
'<b>'+wn._('To create a Bank Account:')+'</b>'+
|
||||
wn._('Go to the appropriate group (usually Application of Funds > Current Assets > Bank Accounts)')+
|
||||
wn._('and create a new Account Ledger (by clicking on Add Child) of type "Bank or Cash"')+
|
||||
'</li>'+
|
||||
'<li>'+
|
||||
'<b>'+wn._('To create a Tax Account:')+'</b>'+
|
||||
wn._('Go to the appropriate group (usually Source of Funds > Current Liabilities > Taxes and Duties)')+
|
||||
wn._('and create a new Account Ledger (by clicking on Add Child) of type "Tax" and do mention the Tax rate.')+
|
||||
'</li>'+
|
||||
'</ol>'+
|
||||
'<p>'+wn._('Please setup your chart of accounts before you start Accounting Entries')+'</p></div>').appendTo(main);
|
||||
|
||||
if (wn.boot.profile.can_create.indexOf("Company") !== -1) {
|
||||
wrapper.appframe.add_button('New Company', function() { newdoc('Company'); },
|
||||
wrapper.appframe.add_button(wn._('New Company'), function() { newdoc('Company'); },
|
||||
'icon-plus');
|
||||
}
|
||||
|
||||
@ -145,20 +147,20 @@ erpnext.AccountsChart = Class.extend({
|
||||
var node_links = [];
|
||||
// edit
|
||||
if (wn.model.can_read(this.ctype) !== -1) {
|
||||
node_links.push('<a onclick="erpnext.account_chart.open();">Edit</a>');
|
||||
node_links.push('<a onclick="erpnext.account_chart.open();">'+wn._('Edit')+'</a>');
|
||||
}
|
||||
if (data.expandable && wn.boot.profile.in_create.indexOf(this.ctype) !== -1) {
|
||||
node_links.push('<a onclick="erpnext.account_chart.new_node();">Add Child</a>');
|
||||
node_links.push('<a onclick="erpnext.account_chart.new_node();">'+wn._('Add Child')+'</a>');
|
||||
} else if (this.ctype === 'Account' && wn.boot.profile.can_read.indexOf("GL Entry") !== -1) {
|
||||
node_links.push('<a onclick="erpnext.account_chart.show_ledger();">View Ledger</a>');
|
||||
node_links.push('<a onclick="erpnext.account_chart.show_ledger();">'+wn._('View Ledger')+'</a>');
|
||||
}
|
||||
|
||||
if (this.can_write) {
|
||||
node_links.push('<a onclick="erpnext.account_chart.rename()">Rename</a>');
|
||||
node_links.push('<a onclick="erpnext.account_chart.rename()">'+wn._('Rename')+'</a>');
|
||||
};
|
||||
|
||||
if (this.can_delete) {
|
||||
node_links.push('<a onclick="erpnext.account_chart.delete()">Delete</a>');
|
||||
node_links.push('<a onclick="erpnext.account_chart.delete()">'+wn._('Delete')+'</a>');
|
||||
};
|
||||
|
||||
link.toolbar.append(node_links.join(" | "));
|
||||
@ -204,20 +206,20 @@ erpnext.AccountsChart = Class.extend({
|
||||
|
||||
// the dialog
|
||||
var d = new wn.ui.Dialog({
|
||||
title:'New Account',
|
||||
title:wn._('New Account'),
|
||||
fields: [
|
||||
{fieldtype:'Data', fieldname:'account_name', label:'New Account Name', reqd:true,
|
||||
description: "Name of new Account. Note: Please don't create accounts for Customers and Suppliers, \
|
||||
they are created automatically from the Customer and Supplier master"},
|
||||
{fieldtype:'Select', fieldname:'group_or_ledger', label:'Group or Ledger',
|
||||
options:'Group\nLedger', description:'Further accounts can be made under Groups,\
|
||||
but entries can be made against Ledger'},
|
||||
{fieldtype:'Select', fieldname:'account_type', label:'Account Type',
|
||||
{fieldtype:'Data', fieldname:'account_name', label:wn._('New Account Name'), reqd:true,
|
||||
description: wn._("Name of new Account. Note: Please don't create accounts for Customers and Suppliers,")+
|
||||
wn._("they are created automatically from the Customer and Supplier master")},
|
||||
{fieldtype:'Select', fieldname:'group_or_ledger', label:wn._('Group or Ledger'),
|
||||
options:'Group\nLedger', description: wn._('Further accounts can be made under Groups,')+
|
||||
wn._('but entries can be made against Ledger')},
|
||||
{fieldtype:'Select', fieldname:'account_type', label:wn._('Account Type'),
|
||||
options: ['', 'Fixed Asset Account', 'Bank or Cash', 'Expense Account', 'Tax',
|
||||
'Income Account', 'Chargeable'].join('\n'),
|
||||
description: "Optional. This setting will be used to filter in various transactions." },
|
||||
{fieldtype:'Float', fieldname:'tax_rate', label:'Tax Rate'},
|
||||
{fieldtype:'Button', fieldname:'create_new', label:'Create New' }
|
||||
description: wn._("Optional. This setting will be used to filter in various transactions.") },
|
||||
{fieldtype:'Float', fieldname:'tax_rate', label:wn._('Tax Rate')},
|
||||
{fieldtype:'Button', fieldname:'create_new', label:wn._('Create New') }
|
||||
]
|
||||
})
|
||||
|
||||
@ -282,13 +284,13 @@ erpnext.AccountsChart = Class.extend({
|
||||
var me = this;
|
||||
// the dialog
|
||||
var d = new wn.ui.Dialog({
|
||||
title:'New Cost Center',
|
||||
title:wn._('New Cost Center'),
|
||||
fields: [
|
||||
{fieldtype:'Data', fieldname:'cost_center_name', label:'New Cost Center Name', reqd:true},
|
||||
{fieldtype:'Select', fieldname:'group_or_ledger', label:'Group or Ledger',
|
||||
options:'Group\nLedger', description:'Further accounts can be made under Groups,\
|
||||
but entries can be made against Ledger'},
|
||||
{fieldtype:'Button', fieldname:'create_new', label:'Create New' }
|
||||
{fieldtype:'Data', fieldname:'cost_center_name', label:wn._('New Cost Center Name'), reqd:true},
|
||||
{fieldtype:'Select', fieldname:'group_or_ledger', label:wn._('Group or Ledger'),
|
||||
options:'Group\nLedger', description:wn._('Further accounts can be made under Groups,')+
|
||||
wn._('but entries can be made against Ledger')},
|
||||
{fieldtype:'Button', fieldname:'create_new', label:wn._('Create New') }
|
||||
]
|
||||
});
|
||||
|
||||
|
@ -88,12 +88,12 @@ wn.module_page["Accounts"] = [
|
||||
{
|
||||
"label": wn._("Period Closing Voucher"),
|
||||
"doctype": "Period Closing Voucher",
|
||||
description: "Close Balance Sheet and book Profit or Loss."
|
||||
description: wn._("Close Balance Sheet and book Profit or Loss.")
|
||||
},
|
||||
{
|
||||
"page":"voucher-import-tool",
|
||||
"label": wn._("Voucher Import Tool"),
|
||||
"description": "Import accounting entries from CSV."
|
||||
"description": wn._("Import accounting entries from CSV.")
|
||||
},
|
||||
]
|
||||
},
|
||||
@ -105,7 +105,7 @@ wn.module_page["Accounts"] = [
|
||||
"label": wn._("Accounts Settings"),
|
||||
"route": "Form/Accounts Settings",
|
||||
"doctype":"Accounts Settings",
|
||||
"description": "Settings for Accounts"
|
||||
"description": wn._("Settings for Accounts")
|
||||
},
|
||||
{
|
||||
"label": wn._("Sales Taxes and Charges Master"),
|
||||
@ -130,7 +130,7 @@ wn.module_page["Accounts"] = [
|
||||
{
|
||||
"label": wn._("Point-of-Sale Setting"),
|
||||
"doctype":"POS Setting",
|
||||
"description": "User settings for Point-of-sale (POS)"
|
||||
"description": wn._("User settings for Point-of-sale (POS)")
|
||||
},
|
||||
{
|
||||
"doctype":"Budget Distribution",
|
||||
@ -150,7 +150,7 @@ wn.module_page["Accounts"] = [
|
||||
{
|
||||
"doctype":"C-Form",
|
||||
"label": wn._("C-Form"),
|
||||
description: "C-Form records",
|
||||
description: wn._("C-Form records"),
|
||||
country: "India"
|
||||
}
|
||||
]
|
||||
|
@ -6,7 +6,7 @@ wn.require("app/js/account_tree_grid.js");
|
||||
wn.pages['financial-analytics'].onload = function(wrapper) {
|
||||
wn.ui.make_app_page({
|
||||
parent: wrapper,
|
||||
title: 'Financial Analytics',
|
||||
title: wn._('Financial Analytics'),
|
||||
single_column: true
|
||||
});
|
||||
erpnext.trial_balance = new erpnext.FinancialAnalytics(wrapper, 'Financial Analytics');
|
||||
@ -18,7 +18,7 @@ wn.pages['financial-analytics'].onload = function(wrapper) {
|
||||
|
||||
erpnext.FinancialAnalytics = erpnext.AccountTreeGrid.extend({
|
||||
filters: [
|
||||
{fieldtype:"Select", label: "PL or BS", options:["Profit and Loss", "Balance Sheet"],
|
||||
{fieldtype:"Select", label: wn._("PL or BS"), options:["Profit and Loss", "Balance Sheet"],
|
||||
filter: function(val, item, opts, me) {
|
||||
if(item._show) return true;
|
||||
|
||||
@ -28,27 +28,27 @@ erpnext.FinancialAnalytics = erpnext.AccountTreeGrid.extend({
|
||||
|
||||
return me.apply_zero_filter(val, item, opts, me);
|
||||
}},
|
||||
{fieldtype:"Select", label: "Company", link:"Company", default_value: "Select Company...",
|
||||
{fieldtype:"Select", label: wn._("Company"), link:"Company", default_value: "Select Company...",
|
||||
filter: function(val, item, opts) {
|
||||
return item.company == val || val == opts.default_value || item._show;
|
||||
}},
|
||||
{fieldtype:"Select", label: "Fiscal Year", link:"Fiscal Year",
|
||||
{fieldtype:"Select", label: wn._("Fiscal Year"), link:"Fiscal Year",
|
||||
default_value: "Select Fiscal Year..."},
|
||||
{fieldtype:"Date", label: "From Date"},
|
||||
{fieldtype:"Label", label: "To"},
|
||||
{fieldtype:"Date", label: "To Date"},
|
||||
{fieldtype:"Select", label: "Range",
|
||||
{fieldtype:"Date", label: wn._("From Date")},
|
||||
{fieldtype:"Label", label: wn._("To")},
|
||||
{fieldtype:"Date", label: wn._("To Date")},
|
||||
{fieldtype:"Select", label: wn._("Range"),
|
||||
options:["Daily", "Weekly", "Monthly", "Quarterly", "Yearly"]},
|
||||
{fieldtype:"Button", label: "Refresh", icon:"icon-refresh icon-white", cssClass:"btn-info"},
|
||||
{fieldtype:"Button", label: "Reset Filters"}
|
||||
{fieldtype:"Button", label: wn._("Refresh"), icon:"icon-refresh icon-white", cssClass:"btn-info"},
|
||||
{fieldtype:"Button", label: wn._("Reset Filters")}
|
||||
],
|
||||
setup_columns: function() {
|
||||
var std_columns = [
|
||||
{id: "check", name: "Plot", field: "check", width: 30,
|
||||
{id: "check", name: wn._("Plot"), field: "check", width: 30,
|
||||
formatter: this.check_formatter},
|
||||
{id: "name", name: "Account", field: "name", width: 300,
|
||||
{id: "name", name: wn._("Account"), field: "name", width: 300,
|
||||
formatter: this.tree_formatter},
|
||||
{id: "opening", name: "Opening", field: "opening", hidden: true,
|
||||
{id: "opening", name: wn._("Opening"), field: "opening", hidden: true,
|
||||
formatter: this.currency_formatter}
|
||||
];
|
||||
|
||||
|
@ -6,7 +6,7 @@ erpnext.fs = {}
|
||||
pscript['onload_Financial Statements'] = function(wrapper) {
|
||||
wn.ui.make_app_page({
|
||||
parent: wrapper,
|
||||
"title": "Financial Statements",
|
||||
"title": wn._("Financial Statements"),
|
||||
"single_column": true,
|
||||
});
|
||||
|
||||
@ -34,18 +34,18 @@ pscript['onload_Financial Statements'] = function(wrapper) {
|
||||
options: ['Loading...']
|
||||
})
|
||||
|
||||
wrapper.appframe.add_button("Create", function() {
|
||||
wrapper.appframe.add_button(wn._("Create"), function() {
|
||||
pscript.stmt_new();
|
||||
}, "icon-refresh")
|
||||
|
||||
wrapper.appframe.add_button("Print", function() {
|
||||
wrapper.appframe.add_button(wn._("Print"), function() {
|
||||
_p.go($i('print_html').innerHTML);
|
||||
}, "icon-print")
|
||||
|
||||
$(wrapper).find(".layout-main").html('<div id="print_html">\
|
||||
<div id="stmt_title1" style="margin:16px 0px 4px 0px; font-size: 16px; font-weight: bold; color: #888;"></div>\
|
||||
<div id="stmt_title2" style="margin:0px 0px 8px 0px; font-size: 16px; font-weight: bold;"></div>\
|
||||
<div id="stmt_tree" style="margin: 0px 0px 16px; overflow: auto;">Please select options and click on Create</div>\
|
||||
<div id="stmt_tree" style="margin: 0px 0px 16px; overflow: auto;">'+wn._('Please select options and click on Create')+'</div>\
|
||||
</div>').css({"min-height": "400px"});
|
||||
|
||||
// load companies
|
||||
@ -61,7 +61,7 @@ pscript['onload_Financial Statements'] = function(wrapper) {
|
||||
|
||||
pscript.stmt_new = function(stmt,company_name,level,period,year) {
|
||||
|
||||
$i('stmt_tree').innerHTML = 'Refreshing....';
|
||||
$i('stmt_tree').innerHTML = wn._('Refreshing....');
|
||||
$i('stmt_tree').style.display = 'block';
|
||||
|
||||
var company =erpnext.fs.stmt_company.get_value();
|
||||
|
@ -4,7 +4,7 @@
|
||||
wn.pages['general-ledger'].onload = function(wrapper) {
|
||||
wn.ui.make_app_page({
|
||||
parent: wrapper,
|
||||
title: 'General Ledger',
|
||||
title: wn._('General Ledger'),
|
||||
single_column: true
|
||||
});
|
||||
|
||||
@ -16,7 +16,7 @@ wn.pages['general-ledger'].onload = function(wrapper) {
|
||||
erpnext.GeneralLedger = wn.views.GridReport.extend({
|
||||
init: function(wrapper) {
|
||||
this._super({
|
||||
title: "General Ledger",
|
||||
title: wn._("General Ledger"),
|
||||
page: wrapper,
|
||||
parent: $(wrapper).find('.layout-main'),
|
||||
appframe: wrapper.appframe,
|
||||
@ -24,41 +24,42 @@ erpnext.GeneralLedger = wn.views.GridReport.extend({
|
||||
});
|
||||
},
|
||||
setup_columns: function() {
|
||||
var DEFAULT_COMPANY_VALUE = wn._("Select Company...");
|
||||
this.columns = [
|
||||
{id: "posting_date", name: "Posting Date", field: "posting_date", width: 100,
|
||||
{id: "posting_date", name: wn._("Posting Date"), field: "posting_date", width: 100,
|
||||
formatter: this.date_formatter},
|
||||
{id: "account", name: "Account", field: "account", width: 240,
|
||||
{id: "account", name: wn._("Account"), field: "account", width: 240,
|
||||
link_formatter: {
|
||||
filter_input: "account",
|
||||
open_btn: true,
|
||||
doctype: "'Account'"
|
||||
}},
|
||||
{id: "against_account", name: "Against Account", field: "against_account",
|
||||
{id: "against_account", name: wn._("Against Account"), field: "against_account",
|
||||
width: 240, hidden: !this.account},
|
||||
|
||||
{id: "debit", name: "Debit", field: "debit", width: 100,
|
||||
{id: "debit", name: wn._("Debit"), field: "debit", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
{id: "credit", name: "Credit", field: "credit", width: 100,
|
||||
{id: "credit", name: wn._("Credit"), field: "credit", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
{id: "voucher_type", name: "Voucher Type", field: "voucher_type", width: 120},
|
||||
{id: "voucher_no", name: "Voucher No", field: "voucher_no", width: 160,
|
||||
{id: "voucher_type", name: wn._("Voucher Type"), field: "voucher_type", width: 120},
|
||||
{id: "voucher_no", name: wn._("Voucher No"), field: "voucher_no", width: 160,
|
||||
link_formatter: {
|
||||
filter_input: "voucher_no",
|
||||
open_btn: true,
|
||||
doctype: "dataContext.voucher_type"
|
||||
}},
|
||||
{id: "remarks", name: "Remarks", field: "remarks", width: 200,
|
||||
{id: "remarks", name: wn._("Remarks"), field: "remarks", width: 200,
|
||||
formatter: this.text_formatter},
|
||||
|
||||
];
|
||||
},
|
||||
|
||||
filters: [
|
||||
{fieldtype:"Select", label: "Company", link:"Company", default_value: "Select Company...",
|
||||
{fieldtype:"Select", label: wn._("Company"), link:"Company", default_value: DEFAULT_COMPANY_VALUE,
|
||||
filter: function(val, item, opts) {
|
||||
return item.company == val || val == opts.default_value;
|
||||
return item.company == val || val == DEFAULT_COMPANY_VALUE;
|
||||
}},
|
||||
{fieldtype:"Link", label: "Account", link:"Account",
|
||||
{fieldtype:"Link", label: wn._("Account"), link:"Account",
|
||||
filter: function(val, item, opts, me) {
|
||||
if(!val) {
|
||||
return true;
|
||||
@ -68,22 +69,22 @@ erpnext.GeneralLedger = wn.views.GridReport.extend({
|
||||
return me.is_child_account(val, item.account);
|
||||
}
|
||||
}},
|
||||
{fieldtype:"Data", label: "Voucher No",
|
||||
{fieldtype:"Data", label: wn._("Voucher No"),
|
||||
filter: function(val, item, opts) {
|
||||
if(!val) return true;
|
||||
return (item.voucher_no && item.voucher_no.indexOf(val)!=-1);
|
||||
}},
|
||||
{fieldtype:"Date", label: "From Date", filter: function(val, item) {
|
||||
{fieldtype:"Date", label: wn._("From Date"), filter: function(val, item) {
|
||||
return dateutil.str_to_obj(val) <= dateutil.str_to_obj(item.posting_date);
|
||||
}},
|
||||
{fieldtype:"Label", label: "To"},
|
||||
{fieldtype:"Date", label: "To Date", filter: function(val, item) {
|
||||
{fieldtype:"Label", label: wn._("To")},
|
||||
{fieldtype:"Date", label: wn._("To Date"), filter: function(val, item) {
|
||||
return dateutil.str_to_obj(val) >= dateutil.str_to_obj(item.posting_date);
|
||||
}},
|
||||
{fieldtype: "Check", label: "Group by Ledger"},
|
||||
{fieldtype: "Check", label: "Group by Voucher"},
|
||||
{fieldtype:"Button", label: "Refresh", icon:"icon-refresh icon-white", cssClass:"btn-info"},
|
||||
{fieldtype:"Button", label: "Reset Filters"}
|
||||
{fieldtype: "Check", label: wn._("Group by Ledger")},
|
||||
{fieldtype: "Check", label: wn._("Group by Voucher")},
|
||||
{fieldtype:"Button", label: wn._("Refresh"), icon:"icon-refresh icon-white", cssClass:"btn-info"},
|
||||
{fieldtype:"Button", label: wn._("Reset Filters")}
|
||||
],
|
||||
setup_filters: function() {
|
||||
this._super();
|
||||
@ -160,7 +161,7 @@ erpnext.GeneralLedger = wn.views.GridReport.extend({
|
||||
var to_date = dateutil.str_to_obj(this.to_date);
|
||||
|
||||
if(to_date < from_date) {
|
||||
msgprint("From Date must be before To Date");
|
||||
msgprint(wn._("From Date must be before To Date"));
|
||||
return;
|
||||
}
|
||||
|
||||
@ -236,7 +237,7 @@ erpnext.GeneralLedger = wn.views.GridReport.extend({
|
||||
closing.credit = opening.credit + totals.credit;
|
||||
|
||||
if(me.account) {
|
||||
me.appframe.set_title("General Ledger: " + me.account);
|
||||
me.appframe.set_title(wn._("General Ledger: ") + me.account);
|
||||
|
||||
// group by ledgers
|
||||
if(this.account_by_name[this.account].group_or_ledger==="Group"
|
||||
@ -254,7 +255,7 @@ erpnext.GeneralLedger = wn.views.GridReport.extend({
|
||||
|
||||
out = [opening].concat(out).concat([totals, closing]);
|
||||
} else {
|
||||
me.appframe.set_title("General Ledger");
|
||||
me.appframe.set_title(wn._("General Ledger"));
|
||||
out = out.concat([totals]);
|
||||
}
|
||||
|
||||
|
@ -6,7 +6,7 @@ wn.require("app/js/account_tree_grid.js");
|
||||
wn.pages['trial-balance'].onload = function(wrapper) {
|
||||
wn.ui.make_app_page({
|
||||
parent: wrapper,
|
||||
title: 'Trial Balance',
|
||||
title: wn._('Trial Balance'),
|
||||
single_column: true
|
||||
});
|
||||
var TrialBalance = erpnext.AccountTreeGrid.extend({
|
||||
@ -17,8 +17,8 @@ wn.pages['trial-balance'].onload = function(wrapper) {
|
||||
// period closing entry checkbox
|
||||
this.wrapper.bind("make", function() {
|
||||
$('<div style="margin: 10px 0px; "\
|
||||
class="with_period_closing_entry"><input type="checkbox" checked="checked">\
|
||||
With period closing entry</div>')
|
||||
class="with_period_closing_entry"><input type="checkbox" checked="checked">' +
|
||||
wn._("With period closing entry") + '</div>')
|
||||
.appendTo(me.wrapper)
|
||||
.find("input").click(function() { me.refresh(); });
|
||||
});
|
||||
|
@ -4,29 +4,34 @@
|
||||
wn.pages['voucher-import-tool'].onload = function(wrapper) {
|
||||
wn.ui.make_app_page({
|
||||
parent: wrapper,
|
||||
title: 'Voucher Import Tool',
|
||||
title: wn._('Voucher Import Tool'),
|
||||
single_column: true
|
||||
});
|
||||
|
||||
$(wrapper).find('.layout-main').html('\
|
||||
<p class="help">Import multiple accounting entries via CSV (spreadsheet) file:</p>\
|
||||
<h3>1. Download Template</h3><br>\
|
||||
<div style="padding-left: 30px;">\
|
||||
<button class="btn btn-default btn-download-two-accounts">Download</button>\
|
||||
<p class="help">Import multiple vouchers with one debit and one credit entry</p>\
|
||||
</div>\
|
||||
<div style="padding-left: 30px;">\
|
||||
<button class="btn btn-default btn-download-multiple-accounts">Download</button>\
|
||||
<p class="help">Import multiple vouchers with multiple accounts</p>\
|
||||
</div>\
|
||||
<hr>\
|
||||
<h3>2. Upload</h3><br>\
|
||||
<div style="padding-left: 30px;">\
|
||||
<p class="help">Upload file in CSV format with UTF-8 encoding</p>\
|
||||
<div id="voucher-upload"></div>\
|
||||
</div><br>\
|
||||
<div class="working"></div>\
|
||||
<div class="well messages" style="display: none;"></div>');
|
||||
$(wrapper).find('.layout-main').html('<p class="help">' +
|
||||
wn._('Import multiple accounting entries via CSV (spreadsheet) file:') +
|
||||
'</p><h3> 1. ' + wn._('Download Template') + '</h3><br>' +
|
||||
'<div style="padding-left: 30px;">' +
|
||||
'<button class="btn btn-default btn-download-two-accounts">' +
|
||||
wn._('Download') + '</button>' +
|
||||
'<p class="help">' +
|
||||
wn._('Import multiple vouchers with one debit and one credit entry') +
|
||||
'</p></div>'+
|
||||
'<div style="padding-left: 30px;">'+
|
||||
'<button class="btn btn-default btn-download-multiple-accounts">' +
|
||||
wn._('Download') +
|
||||
'</button><p class="help">' +
|
||||
wn._('Import multiple vouchers with multiple accounts')+
|
||||
'</p>'+
|
||||
'</div>'+
|
||||
'<hr>'+
|
||||
'<h3> 2. ' + wn._('Upload') + '</h3><br>'+
|
||||
'<div style="padding-left: 30px;">'+
|
||||
'<p class="help">' + wn._('Upload file in CSV format with UTF-8 encoding') +
|
||||
'</p><div id="voucher-upload"></div>'+
|
||||
'</div><br>'+
|
||||
'<div class="working"></div>'+
|
||||
'<div class="well messages" style="display: none;"></div>');
|
||||
|
||||
wn.upload.make({
|
||||
parent: $(wrapper).find("#voucher-upload"),
|
||||
|
@ -5,14 +5,14 @@ wn.query_reports["Accounts Payable"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"company",
|
||||
"label": "Company",
|
||||
"label": wn._("Company"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Company",
|
||||
"default": wn.defaults.get_default("company")
|
||||
},
|
||||
{
|
||||
"fieldname":"account",
|
||||
"label": "Account",
|
||||
"label": wn._("Account"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Account",
|
||||
"get_query": function() {
|
||||
@ -30,13 +30,13 @@ wn.query_reports["Accounts Payable"] = {
|
||||
},
|
||||
{
|
||||
"fieldname":"report_date",
|
||||
"label": "Date",
|
||||
"label": wn._("Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": get_today()
|
||||
},
|
||||
{
|
||||
"fieldname":"ageing_based_on",
|
||||
"label": "Ageing Based On",
|
||||
"label": wn._("Ageing Based On"),
|
||||
"fieldtype": "Select",
|
||||
"options": 'Posting Date' + NEWLINE + 'Due Date',
|
||||
"default": "Posting Date"
|
||||
|
@ -5,14 +5,14 @@ wn.query_reports["Accounts Receivable"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"company",
|
||||
"label": "Company",
|
||||
"label": wn._("Company"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Company",
|
||||
"default": wn.defaults.get_default("company")
|
||||
},
|
||||
{
|
||||
"fieldname":"account",
|
||||
"label": "Account",
|
||||
"label": wn._("Account"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Account",
|
||||
"get_query": function() {
|
||||
@ -30,13 +30,13 @@ wn.query_reports["Accounts Receivable"] = {
|
||||
},
|
||||
{
|
||||
"fieldname":"report_date",
|
||||
"label": "Date",
|
||||
"label": wn._("Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": get_today()
|
||||
},
|
||||
{
|
||||
"fieldname":"ageing_based_on",
|
||||
"label": "Ageing Based On",
|
||||
"label": wn._("Ageing Based On"),
|
||||
"fieldtype": "Select",
|
||||
"options": 'Posting Date' + NEWLINE + 'Due Date',
|
||||
"default": "Posting Date"
|
||||
|
@ -5,20 +5,20 @@ wn.query_reports["Bank Clearance Summary"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"from_date",
|
||||
"label": "From Date",
|
||||
"label": wn._("From Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": wn.defaults.get_user_default("year_start_date"),
|
||||
"width": "80"
|
||||
},
|
||||
{
|
||||
"fieldname":"to_date",
|
||||
"label": "To Date",
|
||||
"label": wn._("To Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": get_today()
|
||||
},
|
||||
{
|
||||
"fieldname":"account",
|
||||
"label": "Bank Account",
|
||||
"label": wn._("Bank Account"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Account",
|
||||
"get_query": function() {
|
||||
|
@ -5,7 +5,7 @@ wn.query_reports["Bank Reconciliation Statement"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"account",
|
||||
"label": "Bank Account",
|
||||
"label": wn._("Bank Account"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Account",
|
||||
"get_query": function() {
|
||||
@ -20,7 +20,7 @@ wn.query_reports["Bank Reconciliation Statement"] = {
|
||||
},
|
||||
{
|
||||
"fieldname":"report_date",
|
||||
"label": "Date",
|
||||
"label": wn._("Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": get_today()
|
||||
},
|
||||
|
@ -5,21 +5,21 @@ wn.query_reports["Budget Variance Report"] = {
|
||||
"filters": [
|
||||
{
|
||||
fieldname: "fiscal_year",
|
||||
label: "Fiscal Year",
|
||||
label: wn._("Fiscal Year"),
|
||||
fieldtype: "Link",
|
||||
options: "Fiscal Year",
|
||||
default: sys_defaults.fiscal_year
|
||||
},
|
||||
{
|
||||
fieldname: "period",
|
||||
label: "Period",
|
||||
label: wn._("Period"),
|
||||
fieldtype: "Select",
|
||||
options: "Monthly\nQuarterly\nHalf-Yearly\nYearly",
|
||||
default: "Monthly"
|
||||
},
|
||||
{
|
||||
fieldname: "company",
|
||||
label: "Company",
|
||||
label: wn._("Company"),
|
||||
fieldtype: "Link",
|
||||
options: "Company",
|
||||
default: wn.defaults.get_default("company")
|
||||
|
@ -5,20 +5,20 @@ wn.query_reports["Gross Profit"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"company",
|
||||
"label": "Company",
|
||||
"label": wn._("Company"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Company",
|
||||
"default": wn.defaults.get_user_default("company")
|
||||
},
|
||||
{
|
||||
"fieldname":"from_date",
|
||||
"label": "From Date",
|
||||
"label": wn._("From Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": wn.defaults.get_user_default("year_start_date")
|
||||
},
|
||||
{
|
||||
"fieldname":"to_date",
|
||||
"label": "To Date",
|
||||
"label": wn._("To Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": wn.defaults.get_user_default("year_end_date")
|
||||
},
|
||||
|
@ -5,26 +5,26 @@ wn.query_reports["Item-wise Purchase Register"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"from_date",
|
||||
"label": "From Date",
|
||||
"label": wn._("From Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": wn.defaults.get_user_default("year_start_date"),
|
||||
"width": "80"
|
||||
},
|
||||
{
|
||||
"fieldname":"to_date",
|
||||
"label": "To Date",
|
||||
"label": wn._("To Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": get_today()
|
||||
},
|
||||
{
|
||||
"fieldname": "item_code",
|
||||
"label": "Item",
|
||||
"label": wn._("Item"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Item",
|
||||
},
|
||||
{
|
||||
"fieldname":"account",
|
||||
"label": "Account",
|
||||
"label": wn._("Account"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Account",
|
||||
"get_query": function() {
|
||||
@ -42,7 +42,7 @@ wn.query_reports["Item-wise Purchase Register"] = {
|
||||
},
|
||||
{
|
||||
"fieldname":"company",
|
||||
"label": "Company",
|
||||
"label": wn._("Company"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Company",
|
||||
"default": wn.defaults.get_default("company")
|
||||
|
@ -5,20 +5,20 @@ wn.query_reports["Item-wise Sales Register"] = wn.query_reports["Sales Register"
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"from_date",
|
||||
"label": "From Date",
|
||||
"label": wn._("From Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": wn.defaults.get_default("year_start_date"),
|
||||
"width": "80"
|
||||
},
|
||||
{
|
||||
"fieldname":"to_date",
|
||||
"label": "To Date",
|
||||
"label": wn._("To Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": get_today()
|
||||
},
|
||||
{
|
||||
"fieldname":"account",
|
||||
"label": "Account",
|
||||
"label": wn._("Account"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Account",
|
||||
"get_query": function() {
|
||||
@ -36,7 +36,7 @@ wn.query_reports["Item-wise Sales Register"] = wn.query_reports["Sales Register"
|
||||
},
|
||||
{
|
||||
"fieldname":"company",
|
||||
"label": "Company",
|
||||
"label": wn._("Company"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Company",
|
||||
"default": wn.defaults.get_default("company")
|
||||
|
@ -5,20 +5,20 @@ wn.query_reports["Payment Collection With Ageing"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname": "from_date",
|
||||
"label": "From Date",
|
||||
"label": wn._("From Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": wn.defaults.get_user_default("year_start_date"),
|
||||
"width": "80"
|
||||
},
|
||||
{
|
||||
"fieldname":"to_date",
|
||||
"label": "To Date",
|
||||
"label": wn._("To Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": get_today()
|
||||
},
|
||||
{
|
||||
"fieldname":"account",
|
||||
"label": "Customer Account",
|
||||
"label": wn._("Customer Account"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Account",
|
||||
"get_query": function() {
|
||||
@ -36,7 +36,7 @@ wn.query_reports["Payment Collection With Ageing"] = {
|
||||
},
|
||||
{
|
||||
"fieldname":"company",
|
||||
"label": "Company",
|
||||
"label": wn._("Company"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Company",
|
||||
"default": wn.defaults.get_default("company")
|
||||
|
@ -5,19 +5,19 @@ wn.query_reports["Payment Made With Ageing"] = {
|
||||
"filters": [
|
||||
{
|
||||
fieldname: "from_date",
|
||||
label: "From Date",
|
||||
label: wn._("From Date"),
|
||||
fieldtype: "Date",
|
||||
default: wn.defaults.get_user_default("year_start_date"),
|
||||
},
|
||||
{
|
||||
fieldname:"to_date",
|
||||
label: "To Date",
|
||||
label: wn._("To Date"),
|
||||
fieldtype: "Date",
|
||||
default: get_today()
|
||||
},
|
||||
{
|
||||
fieldname:"account",
|
||||
label: "Supplier Account",
|
||||
label: wn._("Supplier Account"),
|
||||
fieldtype: "Link",
|
||||
options: "Account",
|
||||
get_query: function() {
|
||||
@ -34,7 +34,7 @@ wn.query_reports["Payment Made With Ageing"] = {
|
||||
},
|
||||
{
|
||||
fieldname:"company",
|
||||
label: "Company",
|
||||
label: wn._("Company"),
|
||||
fieldtype: "Link",
|
||||
options: "Company",
|
||||
default: wn.defaults.get_default("company")
|
||||
|
@ -5,20 +5,20 @@ wn.query_reports["Purchase Register"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"from_date",
|
||||
"label": "From Date",
|
||||
"label": wn._("From Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": wn.defaults.get_user_default("year_start_date"),
|
||||
"width": "80"
|
||||
},
|
||||
{
|
||||
"fieldname":"to_date",
|
||||
"label": "To Date",
|
||||
"label": wn._("To Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": get_today()
|
||||
},
|
||||
{
|
||||
"fieldname":"account",
|
||||
"label": "Account",
|
||||
"label": wn._("Account"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Account",
|
||||
"get_query": function() {
|
||||
@ -36,7 +36,7 @@ wn.query_reports["Purchase Register"] = {
|
||||
},
|
||||
{
|
||||
"fieldname":"company",
|
||||
"label": "Company",
|
||||
"label": wn._("Company"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Company",
|
||||
"default": wn.defaults.get_default("company")
|
||||
|
@ -5,20 +5,20 @@ wn.query_reports["Sales Register"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"from_date",
|
||||
"label": "From Date",
|
||||
"label": wn._("From Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": wn.defaults.get_default("year_start_date"),
|
||||
"width": "80"
|
||||
},
|
||||
{
|
||||
"fieldname":"to_date",
|
||||
"label": "To Date",
|
||||
"label": wn._("To Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": get_today()
|
||||
},
|
||||
{
|
||||
"fieldname":"account",
|
||||
"label": "Account",
|
||||
"label": wn._("Account"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Account",
|
||||
"get_query": function() {
|
||||
@ -36,7 +36,7 @@ wn.query_reports["Sales Register"] = {
|
||||
},
|
||||
{
|
||||
"fieldname":"company",
|
||||
"label": "Company",
|
||||
"label": wn._("Company"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Company",
|
||||
"default": wn.defaults.get_default("company")
|
||||
|
@ -24,19 +24,19 @@ erpnext.buying.PurchaseOrderController = erpnext.buying.BuyingController.extend(
|
||||
doc.per_billed);
|
||||
|
||||
|
||||
cur_frm.add_custom_button('Send SMS', cur_frm.cscript['Send SMS']);
|
||||
cur_frm.add_custom_button(wn._('Send SMS'), cur_frm.cscript['Send SMS']);
|
||||
if(flt(doc.per_received, 2) < 100)
|
||||
cur_frm.add_custom_button('Make Purchase Receipt', this.make_purchase_receipt);
|
||||
cur_frm.add_custom_button(wn._('Make Purchase Receipt'), this.make_purchase_receipt);
|
||||
if(flt(doc.per_billed, 2) < 100)
|
||||
cur_frm.add_custom_button('Make Invoice', this.make_purchase_invoice);
|
||||
cur_frm.add_custom_button(wn._('Make Invoice'), this.make_purchase_invoice);
|
||||
if(flt(doc.per_billed, 2) < 100 || doc.per_received < 100)
|
||||
cur_frm.add_custom_button('Stop', cur_frm.cscript['Stop Purchase Order']);
|
||||
cur_frm.add_custom_button(wn._('Stop'), cur_frm.cscript['Stop Purchase Order']);
|
||||
} else if(doc.docstatus===0) {
|
||||
cur_frm.cscript.add_from_mappers();
|
||||
}
|
||||
|
||||
if(doc.docstatus == 1 && doc.status == 'Stopped')
|
||||
cur_frm.add_custom_button('Unstop Purchase Order',
|
||||
cur_frm.add_custom_button(wn._('Unstop Purchase Order'),
|
||||
cur_frm.cscript['Unstop Purchase Order']);
|
||||
},
|
||||
|
||||
@ -137,7 +137,7 @@ cur_frm.cscript.get_last_purchase_rate = function(doc, cdt, cdn){
|
||||
|
||||
cur_frm.cscript['Stop Purchase Order'] = function() {
|
||||
var doc = cur_frm.doc;
|
||||
var check = confirm("Do you really want to STOP " + doc.name);
|
||||
var check = confirm(wn._("Do you really want to STOP ") + doc.name);
|
||||
|
||||
if (check) {
|
||||
return $c('runserverobj', args={'method':'update_status', 'arg': 'Stopped', 'docs': wn.model.compress(make_doclist(doc.doctype, doc.name))}, function(r,rt) {
|
||||
@ -148,7 +148,7 @@ cur_frm.cscript['Stop Purchase Order'] = function() {
|
||||
|
||||
cur_frm.cscript['Unstop Purchase Order'] = function() {
|
||||
var doc = cur_frm.doc;
|
||||
var check = confirm("Do you really want to UNSTOP " + doc.name);
|
||||
var check = confirm(wn._("Do you really want to UNSTOP ") + doc.name);
|
||||
|
||||
if (check) {
|
||||
return $c('runserverobj', args={'method':'update_status', 'arg': 'Submitted', 'docs': wn.model.compress(make_doclist(doc.doctype, doc.name))}, function(r,rt) {
|
||||
|
@ -68,7 +68,7 @@ cur_frm.cscript.make_address = function() {
|
||||
return "select name, address_type, address_line1, address_line2, city, state, country, pincode, fax, email_id, phone, is_primary_address, is_shipping_address from tabAddress where supplier='"+cur_frm.docname+"' and docstatus != 2 order by is_primary_address desc"
|
||||
},
|
||||
as_dict: 1,
|
||||
no_results_message: 'No addresses created',
|
||||
no_results_message: wn._('No addresses created'),
|
||||
render_row: cur_frm.cscript.render_address_row,
|
||||
});
|
||||
// note: render_address_row is defined in contact_control.js
|
||||
@ -86,7 +86,7 @@ cur_frm.cscript.make_contact = function() {
|
||||
return "select name, first_name, last_name, email_id, phone, mobile_no, department, designation, is_primary_contact from tabContact where supplier='"+cur_frm.docname+"' and docstatus != 2 order by is_primary_contact desc"
|
||||
},
|
||||
as_dict: 1,
|
||||
no_results_message: 'No contacts created',
|
||||
no_results_message: wn._('No contacts created'),
|
||||
render_row: cur_frm.cscript.render_contact_row,
|
||||
});
|
||||
// note: render_contact_row is defined in contact_control.js
|
||||
|
@ -16,7 +16,7 @@ erpnext.buying.SupplierQuotationController = erpnext.buying.BuyingController.ext
|
||||
this._super();
|
||||
|
||||
if (this.frm.doc.docstatus === 1) {
|
||||
cur_frm.add_custom_button("Make Purchase Order", this.make_purchase_order);
|
||||
cur_frm.add_custom_button(wn._("Make Purchase Order"), this.make_purchase_order);
|
||||
}
|
||||
else if (this.frm.doc.docstatus===0) {
|
||||
cur_frm.add_custom_button(wn._('From Material Request'),
|
||||
|
@ -58,7 +58,7 @@ wn.module_page["Buying"] = [
|
||||
"label": wn._("Buying Settings"),
|
||||
"route": "Form/Buying Settings",
|
||||
"doctype":"Buying Settings",
|
||||
"description": "Settings for Buying Module"
|
||||
"description": wn._("Settings for Buying Module")
|
||||
},
|
||||
{
|
||||
"label": wn._("Purchase Taxes and Charges Master"),
|
||||
|
@ -4,7 +4,7 @@
|
||||
wn.pages['purchase-analytics'].onload = function(wrapper) {
|
||||
wn.ui.make_app_page({
|
||||
parent: wrapper,
|
||||
title: 'Purchase Analytics',
|
||||
title: wn._('Purchase Analytics'),
|
||||
single_column: true
|
||||
});
|
||||
|
||||
@ -18,7 +18,7 @@ wn.pages['purchase-analytics'].onload = function(wrapper) {
|
||||
erpnext.PurchaseAnalytics = wn.views.TreeGridReport.extend({
|
||||
init: function(wrapper) {
|
||||
this._super({
|
||||
title: "Purchase Analytics",
|
||||
title: wn._("Purchase Analytics"),
|
||||
page: wrapper,
|
||||
parent: $(wrapper).find('.layout-main'),
|
||||
appframe: wrapper.appframe,
|
||||
@ -31,7 +31,7 @@ erpnext.PurchaseAnalytics = wn.views.TreeGridReport.extend({
|
||||
|
||||
this.tree_grids = {
|
||||
"Supplier Type": {
|
||||
label: "Supplier Type / Supplier",
|
||||
label: wn._("Supplier Type / Supplier"),
|
||||
show: true,
|
||||
item_key: "supplier",
|
||||
parent_field: "parent_supplier_type",
|
||||
@ -44,7 +44,7 @@ erpnext.PurchaseAnalytics = wn.views.TreeGridReport.extend({
|
||||
}
|
||||
},
|
||||
"Supplier": {
|
||||
label: "Supplier",
|
||||
label: wn._("Supplier"),
|
||||
show: false,
|
||||
item_key: "supplier",
|
||||
formatter: function(item) {
|
||||
@ -74,7 +74,7 @@ erpnext.PurchaseAnalytics = wn.views.TreeGridReport.extend({
|
||||
this.tree_grid = this.tree_grids[this.tree_type];
|
||||
|
||||
var std_columns = [
|
||||
{id: "check", name: "Plot", field: "check", width: 30,
|
||||
{id: "check", name: wn._("Plot"), field: "check", width: 30,
|
||||
formatter: this.check_formatter},
|
||||
{id: "name", name: this.tree_grid.label, field: "name", width: 300,
|
||||
formatter: this.tree_formatter},
|
||||
@ -86,23 +86,23 @@ erpnext.PurchaseAnalytics = wn.views.TreeGridReport.extend({
|
||||
this.columns = std_columns.concat(this.columns);
|
||||
},
|
||||
filters: [
|
||||
{fieldtype:"Select", label: "Tree Type", options:["Supplier Type", "Supplier",
|
||||
{fieldtype:"Select", label: wn._("Tree Type"), options:["Supplier Type", "Supplier",
|
||||
"Item Group", "Item"],
|
||||
filter: function(val, item, opts, me) {
|
||||
return me.apply_zero_filter(val, item, opts, me);
|
||||
}},
|
||||
{fieldtype:"Select", label: "Based On", options:["Purchase Invoice",
|
||||
{fieldtype:"Select", label: wn._("Based On"), options:["Purchase Invoice",
|
||||
"Purchase Order", "Purchase Receipt"]},
|
||||
{fieldtype:"Select", label: "Value or Qty", options:["Value", "Quantity"]},
|
||||
{fieldtype:"Select", label: "Company", link:"Company",
|
||||
{fieldtype:"Select", label: wn._("Value or Qty"), options:["Value", "Quantity"]},
|
||||
{fieldtype:"Select", label: wn._("Company"), link:"Company",
|
||||
default_value: "Select Company..."},
|
||||
{fieldtype:"Date", label: "From Date"},
|
||||
{fieldtype:"Label", label: "To"},
|
||||
{fieldtype:"Date", label: "To Date"},
|
||||
{fieldtype:"Select", label: "Range",
|
||||
{fieldtype:"Date", label: wn._("From Date")},
|
||||
{fieldtype:"Label", label: wn._("To")},
|
||||
{fieldtype:"Date", label: wn._("To Date")},
|
||||
{fieldtype:"Select", label: wn._("Range"),
|
||||
options:["Daily", "Weekly", "Monthly", "Quarterly", "Yearly"]},
|
||||
{fieldtype:"Button", label: "Refresh", icon:"icon-refresh icon-white", cssClass:"btn-info"},
|
||||
{fieldtype:"Button", label: "Reset Filters"}
|
||||
{fieldtype:"Button", label: wn._("Refresh"), icon:"icon-refresh icon-white", cssClass:"btn-info"},
|
||||
{fieldtype:"Button", label: wn._("Reset Filters")}
|
||||
],
|
||||
setup_filters: function() {
|
||||
var me = this;
|
||||
@ -130,18 +130,18 @@ erpnext.PurchaseAnalytics = wn.views.TreeGridReport.extend({
|
||||
})
|
||||
|
||||
wn.report_dump.data["Supplier Type"] = [{
|
||||
name: "All Supplier Types",
|
||||
name: wn._("All Supplier Types"),
|
||||
id: "All Supplier Types",
|
||||
}].concat(wn.report_dump.data["Supplier Type"]);
|
||||
|
||||
wn.report_dump.data["Supplier"].push({
|
||||
name: "Not Set",
|
||||
name: wn._("Not Set"),
|
||||
parent_supplier_type: "All Supplier Types",
|
||||
id: "Not Set",
|
||||
});
|
||||
|
||||
wn.report_dump.data["Item"].push({
|
||||
name: "Not Set",
|
||||
name: wn._("Not Set"),
|
||||
parent_item_group: "All Item Groups",
|
||||
id: "Not Set",
|
||||
});
|
||||
|
@ -4,7 +4,7 @@
|
||||
wn.pages['activity'].onload = function(wrapper) {
|
||||
wn.ui.make_app_page({
|
||||
parent: wrapper,
|
||||
title: "Activity",
|
||||
title: wn._("Activity"),
|
||||
single_column: true
|
||||
})
|
||||
wrapper.appframe.add_module_icon("Activity");
|
||||
@ -21,7 +21,7 @@ wn.pages['activity'].onload = function(wrapper) {
|
||||
|
||||
// Build Report Button
|
||||
if(wn.boot.profile.can_get_report.indexOf("Feed")!=-1) {
|
||||
wrapper.appframe.add_button('Build Report', function() {
|
||||
wrapper.appframe.add_button(wn._('Build Report'), function() {
|
||||
wn.set_route('Report', "Feed");
|
||||
}, 'icon-th')
|
||||
}
|
||||
|
@ -4,7 +4,7 @@
|
||||
wn.pages['latest-updates'].onload = function(wrapper) {
|
||||
wn.ui.make_app_page({
|
||||
parent: wrapper,
|
||||
title: 'Latest Updates',
|
||||
title: wn._('Latest Updates'),
|
||||
single_column: true
|
||||
});
|
||||
|
||||
@ -16,9 +16,9 @@ wn.pages['latest-updates'].onload = function(wrapper) {
|
||||
method:"home.page.latest_updates.latest_updates.get",
|
||||
callback: function(r) {
|
||||
parent.empty();
|
||||
$("<p class='help'>Report issues at\
|
||||
<a href='https://github.com/webnotes/erpnext/issues'>GitHub Issues</a></p>\
|
||||
<hr><h3>Commit Log</h3>")
|
||||
$("<p class='help'>"+wn._("Report issues at")+
|
||||
"<a href='https://github.com/webnotes/erpnext/issues'>"+wn._("GitHub Issues")+"</a></p>\
|
||||
<hr><h3>"+wn._("Commit Log")+"</h3>")
|
||||
.appendTo(parent);
|
||||
|
||||
var $tbody = $('<table class="table table-bordered"><tbody></tbody></table>')
|
||||
|
@ -45,7 +45,7 @@ cur_frm.cscript.score = function(doc,cdt,cdn){
|
||||
var d = locals[cdt][cdn];
|
||||
if (d.score){
|
||||
if (flt(d.score) > 5) {
|
||||
msgprint("Score must be less than or equal to 5");
|
||||
msgprint(wn._("Score must be less than or equal to 5"));
|
||||
d.score = 0;
|
||||
refresh_field('score', d.name, 'appraisal_details');
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ erpnext.hr.EmployeeController = wn.ui.form.Controller.extend({
|
||||
var me = this;
|
||||
erpnext.hide_naming_series();
|
||||
if(!this.frm.doc.__islocal) {
|
||||
cur_frm.add_custom_button('Make Salary Structure', function() {
|
||||
cur_frm.add_custom_button(wn._('Make Salary Structure'), function() {
|
||||
me.make_salary_structure(this); });
|
||||
}
|
||||
},
|
||||
|
@ -93,28 +93,28 @@ cur_frm.cscript.refresh = function(doc,cdt,cdn){
|
||||
cur_frm.savesubmit();
|
||||
|
||||
if(doc.docstatus==1 && wn.model.can_create("Journal Voucher"))
|
||||
cur_frm.add_custom_button("Make Bank Voucher", cur_frm.cscript.make_bank_voucher);
|
||||
cur_frm.add_custom_button(wn._("Make Bank Voucher"), cur_frm.cscript.make_bank_voucher);
|
||||
}
|
||||
}
|
||||
|
||||
cur_frm.cscript.set_help = function(doc) {
|
||||
cur_frm.set_intro("");
|
||||
if(doc.__islocal && !in_list(user_roles, "HR User")) {
|
||||
cur_frm.set_intro("Fill the form and save it")
|
||||
cur_frm.set_intro(wn._("Fill the form and save it"))
|
||||
} else {
|
||||
if(doc.docstatus==0 && doc.approval_status=="Draft") {
|
||||
if(user==doc.exp_approver) {
|
||||
cur_frm.set_intro("You are the Expense Approver for this record. \
|
||||
Please Update the 'Status' and Save");
|
||||
cur_frm.set_intro(wn._("You are the Expense Approver for this record. \
|
||||
Please Update the 'Status' and Save"));
|
||||
} else {
|
||||
cur_frm.set_intro("Expense Claim is pending approval. \
|
||||
Only the Expense Approver can update status.");
|
||||
cur_frm.set_intro(wn._("Expense Claim is pending approval. \
|
||||
Only the Expense Approver can update status."));
|
||||
}
|
||||
} else {
|
||||
if(doc.approval_status=="Approved") {
|
||||
cur_frm.set_intro("Expense Claim has been approved.");
|
||||
cur_frm.set_intro(wn._("Expense Claim has been approved."));
|
||||
} else if(doc.approval_status=="Rejected") {
|
||||
cur_frm.set_intro("Expense Claim has been rejected.");
|
||||
cur_frm.set_intro(wn._("Expense Claim has been rejected."));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -7,8 +7,8 @@ cur_frm.cscript = {
|
||||
onload: function(doc, dt, dn) {
|
||||
if(in_list(user_roles,'System Manager')) {
|
||||
cur_frm.footer.help_area.innerHTML = '<hr>\
|
||||
<p><a href="#Form/Jobs Email Settings">Jobs Email Settings</a><br>\
|
||||
<span class="help">Automatically extract Job Applicants from a mail box e.g. "jobs@example.com"</span></p>';
|
||||
<p><a href="#Form/Jobs Email Settings">'+wn._("Jobs Email Settings")+'</a><br>\
|
||||
<span class="help">'+wn._('Automatically extract Job Applicants from a mail box ')+'e.g. "jobs@example.com"</span></p>';
|
||||
}
|
||||
},
|
||||
refresh: function(doc) {
|
||||
|
@ -31,14 +31,14 @@ cur_frm.cscript.refresh = function(doc, dt, dn) {
|
||||
}
|
||||
cur_frm.set_intro("");
|
||||
if(doc.__islocal && !in_list(user_roles, "HR User")) {
|
||||
cur_frm.set_intro("Fill the form and save it")
|
||||
cur_frm.set_intro(wn._("Fill the form and save it"))
|
||||
} else {
|
||||
if(doc.docstatus==0 && doc.status=="Open") {
|
||||
if(user==doc.leave_approver) {
|
||||
cur_frm.set_intro("You are the Leave Approver for this record. Please Update the 'Status' and Save");
|
||||
cur_frm.set_intro(wn._("You are the Leave Approver for this record. Please Update the 'Status' and Save"));
|
||||
cur_frm.toggle_enable("status", true);
|
||||
} else {
|
||||
cur_frm.set_intro("This Leave Application is pending approval. Only the Leave Apporver can update status.")
|
||||
cur_frm.set_intro(wn._("This Leave Application is pending approval. Only the Leave Apporver can update status."))
|
||||
cur_frm.toggle_enable("status", false);
|
||||
if(!doc.__islocal) {
|
||||
if(cur_frm.frm_head.appframe.buttons.Submit)
|
||||
@ -47,12 +47,12 @@ cur_frm.cscript.refresh = function(doc, dt, dn) {
|
||||
}
|
||||
} else {
|
||||
if(doc.status=="Approved") {
|
||||
cur_frm.set_intro("Leave application has been approved.");
|
||||
cur_frm.set_intro(wn._("Leave application has been approved."));
|
||||
if(cur_frm.doc.docstatus==0) {
|
||||
cur_frm.set_intro("Please submit to update Leave Balance.");
|
||||
cur_frm.set_intro(wn._("Please submit to update Leave Balance."));
|
||||
}
|
||||
} else if(doc.status=="Rejected") {
|
||||
cur_frm.set_intro("Leave application has been rejected.");
|
||||
cur_frm.set_intro(wn._("Leave application has been rejected."));
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -86,7 +86,7 @@ cur_frm.cscript.from_date = function(doc, dt, dn) {
|
||||
|
||||
cur_frm.cscript.to_date = function(doc, dt, dn) {
|
||||
if(cint(doc.half_day) == 1 && cstr(doc.from_date) && doc.from_date != doc.to_date){
|
||||
msgprint("To Date should be same as From Date for Half Day leave");
|
||||
msgprint(wn._("To Date should be same as From Date for Half Day leave"));
|
||||
set_multiple(dt,dn,{to_date:doc.from_date});
|
||||
}
|
||||
cur_frm.cscript.calculate_total_days(doc, dt, dn);
|
||||
|
@ -15,7 +15,7 @@ cur_frm.cscript.to_date = function(doc, cdt, cdn) {
|
||||
function(r, rt) {
|
||||
var doc = locals[cdt][cdn];
|
||||
if (r.message) {
|
||||
alert("To date cannot be before from date");
|
||||
alert(wn._("To date cannot be before from date"));
|
||||
doc.to_date = '';
|
||||
refresh_field('to_date');
|
||||
}
|
||||
|
@ -5,7 +5,7 @@ var display_activity_log = function(msg) {
|
||||
if(!pscript.ss_html)
|
||||
pscript.ss_html = $a(cur_frm.fields_dict['activity_log'].wrapper,'div');
|
||||
pscript.ss_html.innerHTML =
|
||||
'<div class="panel"><div class="panel-heading">Activity Log:</div>'+msg+'</div>';
|
||||
'<div class="panel"><div class="panel-heading">'+wn._("Activity Log:")+'</div>'+msg+'</div>';
|
||||
}
|
||||
|
||||
//Create salary slip
|
||||
@ -23,7 +23,7 @@ cur_frm.cscript.create_salary_slip = function(doc, cdt, cdn) {
|
||||
//Submit salary slip
|
||||
//-----------------------
|
||||
cur_frm.cscript.submit_salary_slip = function(doc, cdt, cdn) {
|
||||
var check = confirm("Do you really want to Submit all Salary Slip for month : " + doc.month+" and fiscal year : "+doc.fiscal_year);
|
||||
var check = confirm(wn._("Do you really want to Submit all Salary Slip for month : ") + doc.month+ wn._(" and fiscal year : ")+doc.fiscal_year);
|
||||
if(check){
|
||||
var callback = function(r, rt){
|
||||
if (r.message)
|
||||
@ -49,7 +49,7 @@ cur_frm.cscript.make_jv = function(doc, dt, dn) {
|
||||
var jv = wn.model.make_new_doc_and_get_name('Journal Voucher');
|
||||
jv = locals['Journal Voucher'][jv];
|
||||
jv.voucher_type = 'Bank Voucher';
|
||||
jv.user_remark = 'Payment of salary for the month: ' + doc.month + 'and fiscal year: ' + doc.fiscal_year;
|
||||
jv.user_remark = wn._('Payment of salary for the month: ') + doc.month + wn._('and fiscal year: ') + doc.fiscal_year;
|
||||
jv.fiscal_year = doc.fiscal_year;
|
||||
jv.company = doc.company;
|
||||
jv.posting_date = dateutil.obj_to_str(new Date());
|
||||
|
@ -12,7 +12,7 @@ cur_frm.cscript.onload = function(doc, dt, dn){
|
||||
|
||||
cur_frm.cscript.refresh = function(doc, dt, dn){
|
||||
if((!doc.__islocal) && (doc.is_active == 'Yes')){
|
||||
cur_frm.add_custom_button('Make Salary Slip', cur_frm.cscript['Make Salary Slip']);
|
||||
cur_frm.add_custom_button(wn._('Make Salary Slip'), cur_frm.cscript['Make Salary Slip']);
|
||||
}
|
||||
|
||||
cur_frm.toggle_enable('employee', doc.__islocal);
|
||||
|
@ -17,7 +17,7 @@ erpnext.hr.AttendanceControlPanel = wn.ui.form.Controller.extend({
|
||||
|
||||
get_template:function() {
|
||||
if(!this.frm.doc.att_fr_date || !this.frm.doc.att_to_date) {
|
||||
msgprint("Attendance From Date and Attendance To Date is mandatory");
|
||||
msgprint(wn._("Attendance From Date and Attendance To Date is mandatory"));
|
||||
return;
|
||||
}
|
||||
window.location.href = repl(wn.request.url +
|
||||
@ -56,10 +56,10 @@ erpnext.hr.AttendanceControlPanel = wn.ui.form.Controller.extend({
|
||||
return v;
|
||||
});
|
||||
|
||||
r.messages = ["<h4 style='color:red'>Import Failed!</h4>"]
|
||||
r.messages = ["<h4 style='color:red'>"+wn._("Import Failed!")+"</h4>"]
|
||||
.concat(r.messages)
|
||||
} else {
|
||||
r.messages = ["<h4 style='color:green'>Import Successful!</h4>"].
|
||||
r.messages = ["<h4 style='color:green'>"+wn._("Import Successful!")+"</h4>"].
|
||||
concat(r.message.messages)
|
||||
}
|
||||
|
||||
|
@ -5,7 +5,7 @@ wn.query_reports["Employee Birthday"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"month",
|
||||
"label": "Month",
|
||||
"label": wn._("Month"),
|
||||
"fieldtype": "Select",
|
||||
"options": "Jan\nFeb\nMar\nApr\nMay\nJun\nJul\nAug\nSep\nOct\nNov\nDec",
|
||||
"default": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov",
|
||||
@ -13,7 +13,7 @@ wn.query_reports["Employee Birthday"] = {
|
||||
},
|
||||
{
|
||||
"fieldname":"company",
|
||||
"label": "Company",
|
||||
"label": wn._("Company"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Company",
|
||||
"default": wn.defaults.get_user_default("company")
|
||||
|
@ -5,14 +5,14 @@ wn.query_reports["Employee Leave Balance"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"fiscal_year",
|
||||
"label": "Fiscal Year",
|
||||
"label": wn._("Fiscal Year"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Fiscal Year",
|
||||
"default": wn.defaults.get_user_default("fiscal_year")
|
||||
},
|
||||
{
|
||||
"fieldname":"company",
|
||||
"label": "Company",
|
||||
"label": wn._("Company"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Company",
|
||||
"default": wn.defaults.get_user_default("company")
|
||||
|
@ -5,7 +5,7 @@ wn.query_reports["Monthly Attendance Sheet"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"month",
|
||||
"label": "Month",
|
||||
"label": wn._("Month"),
|
||||
"fieldtype": "Select",
|
||||
"options": "Jan\nFeb\nMar\nApr\nMay\nJun\nJul\nAug\nSep\nOct\nNov\nDec",
|
||||
"default": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov",
|
||||
@ -13,20 +13,20 @@ wn.query_reports["Monthly Attendance Sheet"] = {
|
||||
},
|
||||
{
|
||||
"fieldname":"fiscal_year",
|
||||
"label": "Fiscal Year",
|
||||
"label": wn._("Fiscal Year"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Fiscal Year",
|
||||
"default": sys_defaults.fiscal_year,
|
||||
},
|
||||
{
|
||||
"fieldname":"employee",
|
||||
"label": "Employee",
|
||||
"label": wn._("Employee"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Employee"
|
||||
},
|
||||
{
|
||||
"fieldname":"company",
|
||||
"label": "Company",
|
||||
"label": wn._("Company"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Company",
|
||||
"default": wn.defaults.get_default("company")
|
||||
|
@ -5,7 +5,7 @@ wn.query_reports["Monthly Salary Register"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"month",
|
||||
"label": "Month",
|
||||
"label": wn._("Month"),
|
||||
"fieldtype": "Select",
|
||||
"options": "Jan\nFeb\nMar\nApr\nMay\nJun\nJul\nAug\nSep\nOct\nNov\nDec",
|
||||
"default": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov",
|
||||
@ -13,20 +13,20 @@ wn.query_reports["Monthly Salary Register"] = {
|
||||
},
|
||||
{
|
||||
"fieldname":"fiscal_year",
|
||||
"label": "Fiscal Year",
|
||||
"label": wn._("Fiscal Year"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Fiscal Year",
|
||||
"default": sys_defaults.fiscal_year,
|
||||
},
|
||||
{
|
||||
"fieldname":"employee",
|
||||
"label": "Employee",
|
||||
"label": wn._("Employee"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Employee"
|
||||
},
|
||||
{
|
||||
"fieldname":"company",
|
||||
"label": "Company",
|
||||
"label": wn._("Company"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Company",
|
||||
"default": wn.defaults.get_default("company")
|
||||
|
@ -6,7 +6,7 @@ cur_frm.cscript.refresh = function(doc,dt,dn){
|
||||
cur_frm.toggle_enable("item", doc.__islocal);
|
||||
|
||||
if (!doc.__islocal && doc.docstatus<2) {
|
||||
cur_frm.add_custom_button("Update Cost", cur_frm.cscript.update_cost);
|
||||
cur_frm.add_custom_button(wn._("Update Cost"), cur_frm.cscript.update_cost);
|
||||
}
|
||||
|
||||
cur_frm.cscript.with_operations(doc);
|
||||
@ -123,7 +123,7 @@ cur_frm.cscript.qty = function(doc, cdt, cdn) {
|
||||
cur_frm.cscript.rate = function(doc, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
if (d.bom_no) {
|
||||
msgprint("You can not change rate if BOM mentioned agianst any item");
|
||||
msgprint(wn._("You can not change rate if BOM mentioned agianst any item"));
|
||||
get_bom_material_detail(doc, cdt, cdn);
|
||||
} else {
|
||||
calculate_rm_cost(doc);
|
||||
|
@ -13,7 +13,7 @@ cur_frm.cscript.refresh = function(doc, dt, dn) {
|
||||
cfn_set_fields(doc, dt, dn);
|
||||
|
||||
if(doc.docstatus===0 && !doc.__islocal) {
|
||||
cur_frm.set_intro("Submit this Production Order for further processing.");
|
||||
cur_frm.set_intro(wn._("Submit this Production Order for further processing."));
|
||||
} else if(doc.docstatus===1) {
|
||||
var percent = flt(doc.produced_qty) / flt(doc.qty) * 100;
|
||||
cur_frm.dashboard.add_progress(cint(percent) + "% " + wn._("Complete"), percent);
|
||||
@ -27,13 +27,13 @@ cur_frm.cscript.refresh = function(doc, dt, dn) {
|
||||
var cfn_set_fields = function(doc, dt, dn) {
|
||||
if (doc.docstatus == 1) {
|
||||
if (doc.status != 'Stopped' && doc.status != 'Completed')
|
||||
cur_frm.add_custom_button('Stop!', cur_frm.cscript['Stop Production Order']);
|
||||
cur_frm.add_custom_button(wn._('Stop!'), cur_frm.cscript['Stop Production Order']);
|
||||
else if (doc.status == 'Stopped')
|
||||
cur_frm.add_custom_button('Unstop', cur_frm.cscript['Unstop Production Order']);
|
||||
cur_frm.add_custom_button(wn._('Unstop'), cur_frm.cscript['Unstop Production Order']);
|
||||
|
||||
if (doc.status == 'Submitted' || doc.status == 'Material Transferred' || doc.status == 'In Process'){
|
||||
cur_frm.add_custom_button('Transfer Raw Materials', cur_frm.cscript['Transfer Raw Materials']);
|
||||
cur_frm.add_custom_button('Update Finished Goods', cur_frm.cscript['Update Finished Goods']);
|
||||
cur_frm.add_custom_button(wn._('Transfer Raw Materials'), cur_frm.cscript['Transfer Raw Materials']);
|
||||
cur_frm.add_custom_button(wn._('Update Finished Goods'), cur_frm.cscript['Update Finished Goods']);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -47,7 +47,7 @@ cur_frm.cscript.production_item = function(doc) {
|
||||
|
||||
cur_frm.cscript['Stop Production Order'] = function() {
|
||||
var doc = cur_frm.doc;
|
||||
var check = confirm("Do you really want to stop production order: " + doc.name);
|
||||
var check = confirm(wn._("Do you really want to stop production order: " + doc.name));
|
||||
if (check) {
|
||||
return $c_obj(make_doclist(doc.doctype, doc.name), 'stop_unstop', 'Stopped', function(r, rt) {cur_frm.refresh();});
|
||||
}
|
||||
@ -55,7 +55,7 @@ cur_frm.cscript['Stop Production Order'] = function() {
|
||||
|
||||
cur_frm.cscript['Unstop Production Order'] = function() {
|
||||
var doc = cur_frm.doc;
|
||||
var check = confirm("Do really want to unstop production order: " + doc.name);
|
||||
var check = confirm(wn._("Do really want to unstop production order: " + doc.name));
|
||||
if (check)
|
||||
return $c_obj(make_doclist(doc.doctype, doc.name), 'stop_unstop', 'Unstopped', function(r, rt) {cur_frm.refresh();});
|
||||
}
|
||||
@ -105,5 +105,5 @@ cur_frm.set_query("bom_no", function(doc) {
|
||||
query:"controllers.queries.bom",
|
||||
filters: {item: cstr(doc.production_item)}
|
||||
}
|
||||
} else msgprint(" Please enter Production Item first");
|
||||
} else msgprint(wn._("Please enter Production Item first"));
|
||||
});
|
@ -44,7 +44,7 @@ cur_frm.fields_dict['pp_details'].grid.get_field('bom_no').get_query = function(
|
||||
query:"controllers.queries.bom",
|
||||
filters:{'item': cstr(d.item_code)}
|
||||
}
|
||||
} else msgprint(" Please enter Item first");
|
||||
} else msgprint(wn._("Please enter Item first"));
|
||||
}
|
||||
|
||||
cur_frm.fields_dict.customer.get_query = function(doc,cdt,cdn) {
|
||||
|
@ -13,11 +13,11 @@ $(document).ready(function() {
|
||||
$(".progress").remove();
|
||||
if(r.exc) {
|
||||
if(r.exc.indexOf("WebsitePriceListMissingError")!==-1) {
|
||||
erpnext.cart.show_error("Oops!", "Price List not configured.");
|
||||
erpnext.cart.show_error("Oops!", wn._("Price List not configured."));
|
||||
} else if(r["403"]) {
|
||||
erpnext.cart.show_error("Hey!", "You need to be logged in to view your cart.");
|
||||
erpnext.cart.show_error("Hey!", wn._("You need to be logged in to view your cart."));
|
||||
} else {
|
||||
erpnext.cart.show_error("Oops!", "Something went wrong.");
|
||||
erpnext.cart.show_error("Oops!", wn._("Something went wrong."));
|
||||
}
|
||||
} else {
|
||||
erpnext.cart.set_cart_count();
|
||||
@ -78,7 +78,7 @@ $.extend(erpnext.cart, {
|
||||
|
||||
var no_items = $.map(doclist, function(d) { return d.item_code || null;}).length===0;
|
||||
if(no_items) {
|
||||
erpnext.cart.show_error("Empty :-(", "Go ahead and add something to your cart.");
|
||||
erpnext.cart.show_error("Empty :-(", wn._("Go ahead and add something to your cart."));
|
||||
$("#cart-addresses").toggle(false);
|
||||
return;
|
||||
}
|
||||
@ -117,7 +117,7 @@ $.extend(erpnext.cart, {
|
||||
});
|
||||
|
||||
if(!(addresses && addresses.length)) {
|
||||
$cart_shipping_address.html('<div class="well">Hey! Go ahead and add an address</div>');
|
||||
$cart_shipping_address.html('<div class="well">'+wn._("Hey! Go ahead and add an address")+'</div>');
|
||||
} else {
|
||||
erpnext.cart.render_address($cart_shipping_address, addresses, doclist[0].shipping_address_name);
|
||||
erpnext.cart.render_address($cart_billing_address, addresses, doclist[0].customer_address);
|
||||
@ -283,7 +283,7 @@ $.extend(erpnext.cart, {
|
||||
|
||||
$("#cart-error")
|
||||
.empty()
|
||||
.html(msg || "Something went wrong!")
|
||||
.html(msg || wn._("Something went wrong!"))
|
||||
.toggle(true);
|
||||
} else {
|
||||
window.location.href = "order?name=" + encodeURIComponent(r.message);
|
||||
|
@ -4,11 +4,11 @@
|
||||
// show tasks
|
||||
cur_frm.cscript.refresh = function(doc) {
|
||||
if(!doc.__islocal) {
|
||||
cur_frm.add_custom_button("Gantt Chart", function() {
|
||||
cur_frm.add_custom_button(wn._("Gantt Chart"), function() {
|
||||
wn.route_options = {"project": doc.name}
|
||||
wn.set_route("Gantt", "Task");
|
||||
}, "icon-tasks");
|
||||
cur_frm.add_custom_button("Tasks", function() {
|
||||
cur_frm.add_custom_button(wn._("Tasks"), function() {
|
||||
wn.route_options = {"project": doc.name}
|
||||
wn.set_route("List", "Task");
|
||||
}, "icon-list");
|
||||
|
@ -6,7 +6,7 @@ wn.views.calendar["Task"] = {
|
||||
"start": "exp_start_date",
|
||||
"end": "exp_end_date",
|
||||
"id": "name",
|
||||
"title": "subject",
|
||||
"title": wn._("subject"),
|
||||
"allDay": "allDay"
|
||||
},
|
||||
gantt: true,
|
||||
@ -15,7 +15,7 @@ wn.views.calendar["Task"] = {
|
||||
"fieldtype": "Link",
|
||||
"fieldname": "project",
|
||||
"options": "Project",
|
||||
"label": "Project"
|
||||
"label": wn._("Project")
|
||||
}
|
||||
],
|
||||
get_events_method: "projects.doctype.task.task.get_events"
|
||||
|
@ -6,7 +6,7 @@ wn.views.calendar["Time Log"] = {
|
||||
"start": "from_time",
|
||||
"end": "to_time",
|
||||
"id": "name",
|
||||
"title": "title",
|
||||
"title": w._("title"),
|
||||
"allDay": "allDay"
|
||||
},
|
||||
get_events_method: "projects.doctype.time_log.time_log.get_events"
|
||||
|
@ -25,7 +25,7 @@ $.extend(cur_frm.cscript, {
|
||||
}[doc.status]);
|
||||
|
||||
if(doc.status=="Submitted") {
|
||||
cur_frm.add_custom_button("Make Sales Invoice", function() { cur_frm.cscript.make_invoice() },
|
||||
cur_frm.add_custom_button(wn._("Make Sales Invoice"), function() { cur_frm.cscript.make_invoice() },
|
||||
"icon-file-alt");
|
||||
}
|
||||
},
|
||||
|
@ -5,13 +5,13 @@ wn.query_reports["Daily Time Log Summary"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"from_date",
|
||||
"label": "From Date",
|
||||
"label": wn._("From Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": wn.datetime.get_today()
|
||||
},
|
||||
{
|
||||
"fieldname":"to_date",
|
||||
"label": "To Date",
|
||||
"label": wn._("To Date"),
|
||||
"fieldtype": "Date",
|
||||
"default": wn.datetime.get_today()
|
||||
},
|
||||
|
@ -36,39 +36,39 @@ erpnext.AccountTreeGrid = wn.views.TreeGridReport.extend({
|
||||
},
|
||||
setup_columns: function() {
|
||||
this.columns = [
|
||||
{id: "name", name: "Account", field: "name", width: 300, cssClass: "cell-title",
|
||||
{id: "name", name: wn._("Account"), field: "name", width: 300, cssClass: "cell-title",
|
||||
formatter: this.tree_formatter},
|
||||
{id: "opening_debit", name: "Opening (Dr)", field: "opening_debit", width: 100,
|
||||
{id: "opening_debit", name: wn._("Opening (Dr)"), field: "opening_debit", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
{id: "opening_credit", name: "Opening (Cr)", field: "opening_credit", width: 100,
|
||||
{id: "opening_credit", name: wn._("Opening (Cr)"), field: "opening_credit", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
{id: "debit", name: "Debit", field: "debit", width: 100,
|
||||
{id: "debit", name: wn._("Debit"), field: "debit", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
{id: "credit", name: "Credit", field: "credit", width: 100,
|
||||
{id: "credit", name: wn._("Credit"), field: "credit", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
{id: "closing_debit", name: "Closing (Dr)", field: "closing_debit", width: 100,
|
||||
{id: "closing_debit", name: wn._("Closing (Dr)"), field: "closing_debit", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
{id: "closing_credit", name: "Closing (Cr)", field: "closing_credit", width: 100,
|
||||
{id: "closing_credit", name: wn._("Closing (Cr)"), field: "closing_credit", width: 100,
|
||||
formatter: this.currency_formatter}
|
||||
];
|
||||
|
||||
},
|
||||
filters: [
|
||||
{fieldtype: "Select", label: "Company", link:"Company", default_value: "Select Company...",
|
||||
{fieldtype: "Select", label: wn._("Company"), link:"Company", default_value: "Select Company...",
|
||||
filter: function(val, item, opts, me) {
|
||||
if (item.company == val || val == opts.default_value) {
|
||||
return me.apply_zero_filter(val, item, opts, me);
|
||||
}
|
||||
return false;
|
||||
}},
|
||||
{fieldtype: "Select", label: "Fiscal Year", link:"Fiscal Year",
|
||||
{fieldtype: "Select", label: wn._("Fiscal Year"), link:"Fiscal Year",
|
||||
default_value: "Select Fiscal Year..."},
|
||||
{fieldtype: "Date", label: "From Date"},
|
||||
{fieldtype: "Label", label: "To"},
|
||||
{fieldtype: "Date", label: "To Date"},
|
||||
{fieldtype: "Button", label: "Refresh", icon:"icon-refresh icon-white",
|
||||
{fieldtype: "Date", label: wn._("From Date")},
|
||||
{fieldtype: "Label", label: wn._("To")},
|
||||
{fieldtype: "Date", label: wn._("To Date")},
|
||||
{fieldtype: "Button", label: wn._("Refresh"), icon:"icon-refresh icon-white",
|
||||
cssClass:"btn-info"},
|
||||
{fieldtype: "Button", label: "Reset Filters"},
|
||||
{fieldtype: "Button", label: wn._("Reset Filters")},
|
||||
],
|
||||
setup_filters: function() {
|
||||
this._super();
|
||||
@ -193,7 +193,7 @@ erpnext.AccountTreeGrid = wn.views.TreeGridReport.extend({
|
||||
|
||||
set_fiscal_year: function() {
|
||||
if (this.opening_date > this.closing_date) {
|
||||
msgprint("Opening Date should be before Closing Date");
|
||||
msgprint(wn._("Opening Date should be before Closing Date"));
|
||||
return;
|
||||
}
|
||||
|
||||
@ -207,7 +207,7 @@ erpnext.AccountTreeGrid = wn.views.TreeGridReport.extend({
|
||||
});
|
||||
|
||||
if (!this.fiscal_year) {
|
||||
msgprint("Opening Date and Closing Date should be within same Fiscal Year");
|
||||
msgprint(wn._("Opening Date and Closing Date should be within same Fiscal Year"));
|
||||
return;
|
||||
}
|
||||
},
|
||||
|
@ -24,14 +24,14 @@ $(document).bind('toolbar_setup', function() {
|
||||
wn.provide('wn.ui.misc');
|
||||
wn.ui.misc.about = function() {
|
||||
if(!wn.ui.misc.about_dialog) {
|
||||
var d = new wn.ui.Dialog({title:'About ERPNext'})
|
||||
var d = new wn.ui.Dialog({title: wn._('About ERPNext')})
|
||||
|
||||
$(d.body).html(repl("<div>\
|
||||
<p>ERPNext is an open-source web based ERP made by Web Notes Technologies Pvt Ltd.\
|
||||
<p>"+wn._("ERPNext is an open-source web based ERP made by Web Notes Technologies Pvt Ltd.\
|
||||
to provide an integrated tool to manage most processes in a small organization.\
|
||||
For more information about Web Notes, or to buy hosting servies, go to \
|
||||
<a href='https://erpnext.com'>https://erpnext.com</a>.</p>\
|
||||
<p>To report an issue, go to <a href='https://github.com/webnotes/erpnext/issues'>GitHub Issues</a></p>\
|
||||
For more information about Web Notes, or to buy hosting servies, go to ")+
|
||||
"<a href='https://erpnext.com'>https://erpnext.com</a>.</p>\
|
||||
<p>"+wn._("To report an issue, go to ")+"<a href='https://github.com/webnotes/erpnext/issues'>GitHub Issues</a></p>\
|
||||
<hr>\
|
||||
<p><a href='http://www.gnu.org/copyleft/gpl.html'>License: GNU General Public License Version 3</a></p>\
|
||||
</div>", wn.app));
|
||||
|
@ -7,7 +7,7 @@ erpnext.stock.StockController = wn.ui.form.Controller.extend({
|
||||
show_stock_ledger: function() {
|
||||
var me = this;
|
||||
if(this.frm.doc.docstatus===1) {
|
||||
this.frm.add_custom_button("Stock Ledger", function() {
|
||||
this.frm.add_custom_button(wn._("Stock Ledger"), function() {
|
||||
wn.route_options = {
|
||||
voucher_no: me.frm.doc.name,
|
||||
from_date: me.frm.doc.posting_date,
|
||||
@ -22,7 +22,7 @@ erpnext.stock.StockController = wn.ui.form.Controller.extend({
|
||||
show_general_ledger: function() {
|
||||
var me = this;
|
||||
if(this.frm.doc.docstatus===1 && cint(wn.defaults.get_default("auto_accounting_for_stock"))) {
|
||||
cur_frm.add_custom_button('Accounting Ledger', function() {
|
||||
cur_frm.add_custom_button(wn._('Accounting Ledger'), function() {
|
||||
wn.route_options = {
|
||||
"voucher_no": me.frm.doc.name,
|
||||
"from_date": me.frm.doc.posting_date,
|
||||
|
@ -198,7 +198,7 @@ $(document).bind('form_refresh', function() {
|
||||
} else if(cur_frm.fields_dict[fort]) {
|
||||
cur_frm.fields_dict[fort].grid.set_column_disp(pscript.feature_dict[sys_feat][cur_frm.doc.doctype][fort], false);
|
||||
} else {
|
||||
msgprint('Grid "'+fort+'" does not exists');
|
||||
msgprint(wn._('Grid "')+fort+wn._('" does not exists'));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -5,35 +5,35 @@ var get_filters = function(){
|
||||
return [
|
||||
{
|
||||
"fieldname":"period",
|
||||
"label": "Period",
|
||||
"label": wn._("Period"),
|
||||
"fieldtype": "Select",
|
||||
"options": ["Monthly", "Quarterly", "Half-Yearly", "Yearly"].join("\n"),
|
||||
"default": "Monthly"
|
||||
},
|
||||
{
|
||||
"fieldname":"based_on",
|
||||
"label": "Based On",
|
||||
"label": wn._("Based On"),
|
||||
"fieldtype": "Select",
|
||||
"options": ["Item", "Item Group", "Supplier", "Supplier Type", "Project"].join("\n"),
|
||||
"default": "Item"
|
||||
},
|
||||
{
|
||||
"fieldname":"group_by",
|
||||
"label": "Group By",
|
||||
"label": wn._("Group By"),
|
||||
"fieldtype": "Select",
|
||||
"options": ["Item", "Supplier"].join("\n"),
|
||||
"default": ""
|
||||
},
|
||||
{
|
||||
"fieldname":"fiscal_year",
|
||||
"label": "Fiscal Year",
|
||||
"label": wn._("Fiscal Year"),
|
||||
"fieldtype": "Link",
|
||||
"options":'Fiscal Year',
|
||||
"default": sys_defaults.fiscal_year
|
||||
},
|
||||
{
|
||||
"fieldname":"company",
|
||||
"label": "Company",
|
||||
"label": wn._("Company"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Company",
|
||||
"default": wn.defaults.get_default("company")
|
||||
|
@ -5,35 +5,35 @@ var get_filters = function(){
|
||||
return[
|
||||
{
|
||||
"fieldname":"period",
|
||||
"label": "Period",
|
||||
"label": wn._("Period"),
|
||||
"fieldtype": "Select",
|
||||
"options": ["Monthly", "Quarterly", "Half-Yearly", "Yearly"].join("\n"),
|
||||
"default": "Monthly"
|
||||
},
|
||||
{
|
||||
"fieldname":"based_on",
|
||||
"label": "Based On",
|
||||
"label": wn._("Based On"),
|
||||
"fieldtype": "Select",
|
||||
"options": ["Item", "Item Group", "Customer", "Customer Group", "Territory", "Project"].join("\n"),
|
||||
"default": "Item"
|
||||
},
|
||||
{
|
||||
"fieldname":"group_by",
|
||||
"label": "Group By",
|
||||
"label": wn._("Group By"),
|
||||
"fieldtype": "Select",
|
||||
"options": ["Item", "Customer"].join("\n"),
|
||||
"default": ""
|
||||
},
|
||||
{
|
||||
"fieldname":"fiscal_year",
|
||||
"label": "Fiscal Year",
|
||||
"label": wn._("Fiscal Year"),
|
||||
"fieldtype": "Link",
|
||||
"options":'Fiscal Year',
|
||||
"default": sys_defaults.fiscal_year
|
||||
},
|
||||
{
|
||||
"fieldname":"company",
|
||||
"label": "Company",
|
||||
"label": wn._("Company"),
|
||||
"fieldtype": "Link",
|
||||
"options": "Company",
|
||||
"default": wn.defaults.get_default("company")
|
||||
|
@ -6,7 +6,7 @@ var current_module;
|
||||
wn.provide('erpnext.startup');
|
||||
|
||||
erpnext.startup.start = function() {
|
||||
console.log('Starting up...');
|
||||
console.log(wn._('Starting up...'));
|
||||
$('#startup_div').html('Starting up...').toggle(true);
|
||||
|
||||
erpnext.toolbar.setup();
|
||||
@ -20,16 +20,16 @@ erpnext.startup.show_expiry_banner = function() {
|
||||
var today = dateutil.str_to_obj(wn.boot.server_date);
|
||||
var expires_on = dateutil.str_to_obj(wn.boot.expires_on);
|
||||
var diff = dateutil.get_diff(expires_on, today);
|
||||
var payment_link = "<a href=\"https://erpnext.com/modes-of-payment.html\" target=\"_blank\">\
|
||||
Click here to buy subscription.</a>";
|
||||
var payment_link = "<a href=\"https://erpnext.com/modes-of-payment.html\" target=\"_blank\">"+
|
||||
wn._("Click here to buy subscription.")+"</a>";
|
||||
|
||||
var msg = "";
|
||||
if (0 <= diff && diff <= 10) {
|
||||
var expiry_string = diff==0 ? "today" : repl("in %(diff)s day(s)", { diff: diff });
|
||||
msg = repl('Your ERPNext subscription will <b>expire %(expiry_string)s</b>. %(payment_link)s',
|
||||
msg = repl(wn._('Your ERPNext subscription will')+'<b>expire %(expiry_string)s</b>. %(payment_link)s',
|
||||
{ expiry_string: expiry_string, payment_link: payment_link });
|
||||
} else if (diff < 0) {
|
||||
msg = repl('This ERPNext subscription <b>has expired</b>. %(payment_link)s', {payment_link: payment_link});
|
||||
msg = repl(wn._('This ERPNext subscription')+'<b>'+wn._('has expired')+'</b>. %(payment_link)s'), {payment_link: payment_link});
|
||||
}
|
||||
|
||||
if(msg) wn.ui.toolbar.show_banner(msg);
|
||||
|
@ -6,7 +6,7 @@ wn.require("app/js/stock_grid_report.js");
|
||||
erpnext.StockAnalytics = erpnext.StockGridReport.extend({
|
||||
init: function(wrapper, opts) {
|
||||
var args = {
|
||||
title: "Stock Analytics",
|
||||
title: wn._("Stock Analytics"),
|
||||
page: wrapper,
|
||||
parent: $(wrapper).find('.layout-main'),
|
||||
appframe: wrapper.appframe,
|
||||
@ -36,13 +36,13 @@ erpnext.StockAnalytics = erpnext.StockGridReport.extend({
|
||||
},
|
||||
setup_columns: function() {
|
||||
var std_columns = [
|
||||
{id: "check", name: "Plot", field: "check", width: 30,
|
||||
{id: "check", name: wn._("Plot"), field: "check", width: 30,
|
||||
formatter: this.check_formatter},
|
||||
{id: "name", name: "Item", field: "name", width: 300,
|
||||
{id: "name", name: wn._("Item"), field: "name", width: 300,
|
||||
formatter: this.tree_formatter},
|
||||
{id: "brand", name: "Brand", field: "brand", width: 100},
|
||||
{id: "stock_uom", name: "UOM", field: "stock_uom", width: 100},
|
||||
{id: "opening", name: "Opening", field: "opening", hidden: true,
|
||||
{id: "brand", name: wn._("Brand"), field: "brand", width: 100},
|
||||
{id: "stock_uom", name: wn._("UOM"), field: "stock_uom", width: 100},
|
||||
{id: "opening", name: wn._("Opening"), field: "opening", hidden: true,
|
||||
formatter: this.currency_formatter}
|
||||
];
|
||||
|
||||
@ -50,23 +50,23 @@ erpnext.StockAnalytics = erpnext.StockGridReport.extend({
|
||||
this.columns = std_columns.concat(this.columns);
|
||||
},
|
||||
filters: [
|
||||
{fieldtype:"Select", label: "Value or Qty", options:["Value", "Quantity"],
|
||||
{fieldtype:"Select", label: wn._("Value or Qty"), options:["Value", "Quantity"],
|
||||
filter: function(val, item, opts, me) {
|
||||
return me.apply_zero_filter(val, item, opts, me);
|
||||
}},
|
||||
{fieldtype:"Select", label: "Brand", link:"Brand",
|
||||
{fieldtype:"Select", label: wn._("Brand"), link:"Brand",
|
||||
default_value: "Select Brand...", filter: function(val, item, opts) {
|
||||
return val == opts.default_value || item.brand == val || item._show;
|
||||
}, link_formatter: {filter_input: "brand"}},
|
||||
{fieldtype:"Select", label: "Warehouse", link:"Warehouse",
|
||||
{fieldtype:"Select", label: wn._("Warehouse"), link:"Warehouse",
|
||||
default_value: "Select Warehouse..."},
|
||||
{fieldtype:"Date", label: "From Date"},
|
||||
{fieldtype:"Label", label: "To"},
|
||||
{fieldtype:"Date", label: "To Date"},
|
||||
{fieldtype:"Select", label: "Range",
|
||||
{fieldtype:"Date", label: wn._("From Date")},
|
||||
{fieldtype:"Label", label: wn._("To")},
|
||||
{fieldtype:"Date", label: wn._("To Date")},
|
||||
{fieldtype:"Select", label: wn._("Range"),
|
||||
options:["Daily", "Weekly", "Monthly", "Quarterly", "Yearly"]},
|
||||
{fieldtype:"Button", label: "Refresh", icon:"icon-refresh icon-white", cssClass:"btn-info"},
|
||||
{fieldtype:"Button", label: "Reset Filters"}
|
||||
{fieldtype:"Button", label: wn._("Refresh"), icon:"icon-refresh icon-white", cssClass:"btn-info"},
|
||||
{fieldtype:"Button", label: wn._("Reset Filters")}
|
||||
],
|
||||
setup_filters: function() {
|
||||
var me = this;
|
||||
|
@ -326,7 +326,7 @@ erpnext.TransactionController = erpnext.stock.StockController.extend({
|
||||
validate_on_previous_row: function(tax) {
|
||||
// validate if a valid row id is mentioned in case of
|
||||
// On Previous Row Amount and On Previous Row Total
|
||||
if((["On Previous Row Amount", "On Previous Row Total"].indexOf(tax.charge_type) != -1) &&
|
||||
if(([wn._("On Previous Row Amount"), wn._("On Previous Row Total")].indexOf(tax.charge_type) != -1) &&
|
||||
(!tax.row_id || cint(tax.row_id) >= tax.idx)) {
|
||||
var msg = repl(wn._("Row") + " # %(idx)s [%(doctype)s]: " +
|
||||
wn._("Please specify a valid") + " %(row_id_label)s", {
|
||||
|
@ -41,19 +41,19 @@ $.extend(erpnext, {
|
||||
if(!grid_row.fields_dict.serial_no ||
|
||||
grid_row.fields_dict.serial_no.get_status()!=="Write") return;
|
||||
|
||||
var $btn = $('<button class="btn btn-sm btn-default">Add Serial No</button>')
|
||||
var $btn = $('<button class="btn btn-sm btn-default">'+wn._("Add Serial No")+'</button>')
|
||||
.appendTo($("<div>")
|
||||
.css({"margin-bottom": "10px", "margin-top": "-10px"})
|
||||
.appendTo(grid_row.fields_dict.serial_no.$wrapper));
|
||||
|
||||
$btn.on("click", function() {
|
||||
var d = new wn.ui.Dialog({
|
||||
title: "Add Serial No",
|
||||
title: wn._("Add Serial No"),
|
||||
fields: [
|
||||
{
|
||||
"fieldtype": "Link",
|
||||
"options": "Serial No",
|
||||
"label": "Serial No",
|
||||
"label": wn._("Serial No"),
|
||||
"get_query": {
|
||||
item_code: grid_row.doc.item_code,
|
||||
warehouse: grid_row.doc.warehouse
|
||||
@ -61,7 +61,7 @@ $.extend(erpnext, {
|
||||
},
|
||||
{
|
||||
"fieldtype": "Button",
|
||||
"label": "Add"
|
||||
"label": wn._("Add")
|
||||
}
|
||||
]
|
||||
});
|
||||
|
@ -77,7 +77,7 @@ cur_frm.cscript.make_address = function() {
|
||||
return "select name, address_type, address_line1, address_line2, city, state, country, pincode, fax, email_id, phone, is_primary_address, is_shipping_address from tabAddress where customer='"+cur_frm.docname+"' and docstatus != 2 order by is_primary_address desc"
|
||||
},
|
||||
as_dict: 1,
|
||||
no_results_message: 'No addresses created',
|
||||
no_results_message: wn._('No addresses created'),
|
||||
render_row: cur_frm.cscript.render_address_row,
|
||||
});
|
||||
// note: render_address_row is defined in contact_control.js
|
||||
|
@ -24,8 +24,8 @@ erpnext.LeadController = wn.ui.form.Controller.extend({
|
||||
|
||||
if(in_list(user_roles,'System Manager')) {
|
||||
cur_frm.footer.help_area.innerHTML = '<hr>\
|
||||
<p><a href="#Form/Sales Email Settings">Sales Email Settings</a><br>\
|
||||
<span class="help">Automatically extract Leads from a mail box e.g. "sales@example.com"</span></p>';
|
||||
<p><a href="#Form/Sales Email Settings">'+wn._('Sales Email Settings')+'</a><br>\
|
||||
<span class="help">'+wn._('Automatically extract Leads from a mail box e.g.')+' "sales@example.com"</span></p>';
|
||||
}
|
||||
},
|
||||
|
||||
@ -36,9 +36,9 @@ erpnext.LeadController = wn.ui.form.Controller.extend({
|
||||
|
||||
this.frm.__is_customer = this.frm.__is_customer || this.frm.doc.__is_customer;
|
||||
if(!this.frm.doc.__islocal && !this.frm.__is_customer) {
|
||||
this.frm.add_custom_button("Create Customer", this.create_customer);
|
||||
this.frm.add_custom_button("Create Opportunity", this.create_opportunity);
|
||||
this.frm.add_custom_button("Send SMS", this.frm.cscript.send_sms);
|
||||
this.frm.add_custom_button(wn._("Create Customer"), this.create_customer);
|
||||
this.frm.add_custom_button(wn._("Create Opportunity"), this.create_opportunity);
|
||||
this.frm.add_custom_button(wn._("Send SMS"), this.frm.cscript.send_sms);
|
||||
}
|
||||
|
||||
cur_frm.communication_view = new wn.views.CommunicationList({
|
||||
@ -68,7 +68,7 @@ erpnext.LeadController = wn.ui.form.Controller.extend({
|
||||
order by is_primary_address, is_shipping_address desc'
|
||||
},
|
||||
as_dict: 1,
|
||||
no_results_message: 'No addresses created',
|
||||
no_results_message: wn._('No addresses created'),
|
||||
render_row: this.render_address_row,
|
||||
});
|
||||
// note: render_address_row is defined in contact_control.js
|
||||
|
@ -103,12 +103,19 @@ cur_frm.cscript.refresh = function(doc, cdt, cdn){
|
||||
erpnext.hide_naming_series();
|
||||
|
||||
cur_frm.clear_custom_buttons();
|
||||
<<<<<<< HEAD
|
||||
if(doc.docstatus === 1 && doc.status!=="Opportunity Lost") {
|
||||
cur_frm.add_custom_button( wn._('Create Quotation'), cur_frm.cscript.create_quotation);
|
||||
cur_frm.add_custom_button(wn._('Opportunity Lost'), cur_frm.cscript['Declare Opportunity Lost']);
|
||||
cur_frm.add_custom_button(wn._('Send SMS'), cur_frm.cscript.send_sms);
|
||||
=======
|
||||
if(doc.docstatus === 1 && doc.status!=="Lost") {
|
||||
cur_frm.add_custom_button('Create Quotation', cur_frm.cscript.create_quotation);
|
||||
if(doc.status!=="Quotation") {
|
||||
cur_frm.add_custom_button('Opportunity Lost', cur_frm.cscript['Declare Opportunity Lost']);
|
||||
}
|
||||
cur_frm.add_custom_button('Send SMS', cur_frm.cscript.send_sms);
|
||||
>>>>>>> f146e8b7f52a3e46e335c0fefd92c347717b370b
|
||||
}
|
||||
|
||||
cur_frm.toggle_display("contact_info", doc.customer || doc.lead);
|
||||
@ -174,11 +181,11 @@ cur_frm.cscript.lead = function(doc, cdt, cdn) {
|
||||
|
||||
cur_frm.cscript['Declare Opportunity Lost'] = function(){
|
||||
var dialog = new wn.ui.Dialog({
|
||||
title: "Set as Lost",
|
||||
title: wn._("Set as Lost"),
|
||||
fields: [
|
||||
{"fieldtype": "Text", "label": "Reason for losing", "fieldname": "reason",
|
||||
{"fieldtype": "Text", "label": wn._("Reason for losing"), "fieldname": "reason",
|
||||
"reqd": 1 },
|
||||
{"fieldtype": "Button", "label": "Update", "fieldname": "update"},
|
||||
{"fieldtype": "Button", "label": wn._("Update"), "fieldname": "update"},
|
||||
]
|
||||
});
|
||||
|
||||
@ -191,7 +198,7 @@ cur_frm.cscript['Declare Opportunity Lost'] = function(){
|
||||
args: args.reason,
|
||||
callback: function(r) {
|
||||
if(r.exc) {
|
||||
msgprint("There were errors.");
|
||||
msgprint(wn._("There were errors."));
|
||||
return;
|
||||
}
|
||||
dialog.hide();
|
||||
|
@ -25,12 +25,19 @@ erpnext.selling.QuotationController = erpnext.selling.SellingController.extend({
|
||||
refresh: function(doc, dt, dn) {
|
||||
this._super(doc, dt, dn);
|
||||
|
||||
<<<<<<< HEAD
|
||||
if(doc.docstatus == 1 && doc.status!=='Order Lost') {
|
||||
cur_frm.add_custom_button(wn._('Make Sales Order'), cur_frm.cscript['Make Sales Order']);
|
||||
if(doc.status!=="Order Confirmed") {
|
||||
cur_frm.add_custom_button(wn._('Set as Lost'), cur_frm.cscript['Declare Order Lost']);
|
||||
=======
|
||||
if(doc.docstatus == 1 && doc.status!=='Lost') {
|
||||
cur_frm.add_custom_button('Make Sales Order', cur_frm.cscript['Make Sales Order']);
|
||||
if(doc.status!=="Ordered") {
|
||||
cur_frm.add_custom_button('Set as Lost', cur_frm.cscript['Declare Order Lost']);
|
||||
>>>>>>> f146e8b7f52a3e46e335c0fefd92c347717b370b
|
||||
}
|
||||
cur_frm.add_custom_button('Send SMS', cur_frm.cscript.send_sms);
|
||||
cur_frm.add_custom_button(wn._('Send SMS'), cur_frm.cscript.send_sms);
|
||||
}
|
||||
|
||||
if (this.frm.doc.docstatus===0) {
|
||||
@ -122,9 +129,9 @@ cur_frm.cscript['Declare Order Lost'] = function(){
|
||||
var dialog = new wn.ui.Dialog({
|
||||
title: "Set as Lost",
|
||||
fields: [
|
||||
{"fieldtype": "Text", "label": "Reason for losing", "fieldname": "reason",
|
||||
{"fieldtype": "Text", "label": wn._("Reason for losing"), "fieldname": "reason",
|
||||
"reqd": 1 },
|
||||
{"fieldtype": "Button", "label": "Update", "fieldname": "update"},
|
||||
{"fieldtype": "Button", "label": wn._("Update"), "fieldname": "update"},
|
||||
]
|
||||
});
|
||||
|
||||
@ -137,7 +144,7 @@ cur_frm.cscript['Declare Order Lost'] = function(){
|
||||
args: args.reason,
|
||||
callback: function(r) {
|
||||
if(r.exc) {
|
||||
msgprint("There were errors.");
|
||||
msgprint(wn._("There were errors."));
|
||||
return;
|
||||
}
|
||||
dialog.hide();
|
||||
|
@ -4,7 +4,7 @@
|
||||
cur_frm.cscript.refresh = function(doc, cdt, cdn) {
|
||||
cur_frm.toggle_enable('new_item_code', doc.__islocal);
|
||||
if(!doc.__islocal) {
|
||||
cur_frm.add_custom_button("Check for Duplicates", function() {
|
||||
cur_frm.add_custom_button(wn._("Check for Duplicates"), function() {
|
||||
return cur_frm.call_server('check_duplicate', 1)
|
||||
}, 'icon-search')
|
||||
}
|
||||
@ -15,8 +15,8 @@ cur_frm.fields_dict.new_item_code.get_query = function() {
|
||||
query: "selling.doctype.sales_bom.sales_bom.get_new_item_code"
|
||||
}
|
||||
}
|
||||
cur_frm.fields_dict.new_item_code.query_description = 'Select Item where "Is Stock Item" is "No" \
|
||||
and "Is Sales Item" is "Yes" and there is no other Sales BOM';
|
||||
cur_frm.fields_dict.new_item_code.query_description = wn._('Select Item where "Is Stock Item" is "No"')+
|
||||
wn._('and "Is Sales Item" is "Yes" and there is no other Sales BOM');
|
||||
|
||||
cur_frm.cscript.item_code = function(doc, dt, dn) {
|
||||
var d = locals[dt][dn];
|
||||
|
@ -4,7 +4,7 @@
|
||||
wn.pages['sales-analytics'].onload = function(wrapper) {
|
||||
wn.ui.make_app_page({
|
||||
parent: wrapper,
|
||||
title: 'Sales Analytics',
|
||||
title: wn._('Sales Analytics'),
|
||||
single_column: true
|
||||
});
|
||||
new erpnext.SalesAnalytics(wrapper);
|
||||
@ -17,7 +17,7 @@ wn.pages['sales-analytics'].onload = function(wrapper) {
|
||||
erpnext.SalesAnalytics = wn.views.TreeGridReport.extend({
|
||||
init: function(wrapper) {
|
||||
this._super({
|
||||
title: "Sales Analytics",
|
||||
title: wn._("Sales Analytics"),
|
||||
page: wrapper,
|
||||
parent: $(wrapper).find('.layout-main'),
|
||||
appframe: wrapper.appframe,
|
||||
@ -30,14 +30,14 @@ erpnext.SalesAnalytics = wn.views.TreeGridReport.extend({
|
||||
|
||||
this.tree_grids = {
|
||||
"Customer Group": {
|
||||
label: "Customer Group / Customer",
|
||||
label: wn._("Customer Group / Customer"),
|
||||
show: true,
|
||||
item_key: "customer",
|
||||
parent_field: "parent_customer_group",
|
||||
formatter: function(item) { return item.name; }
|
||||
},
|
||||
"Customer": {
|
||||
label: "Customer",
|
||||
label: wn._("Customer"),
|
||||
show: false,
|
||||
item_key: "customer",
|
||||
formatter: function(item) {
|
||||
@ -45,7 +45,7 @@ erpnext.SalesAnalytics = wn.views.TreeGridReport.extend({
|
||||
}
|
||||
},
|
||||
"Item Group": {
|
||||
label: "Item",
|
||||
label: wn._("Item"),
|
||||
show: true,
|
||||
parent_field: "parent_item_group",
|
||||
item_key: "item_code",
|
||||
@ -54,7 +54,7 @@ erpnext.SalesAnalytics = wn.views.TreeGridReport.extend({
|
||||
}
|
||||
},
|
||||
"Item": {
|
||||
label: "Item",
|
||||
label: wn._("Item"),
|
||||
show: false,
|
||||
item_key: "item_code",
|
||||
formatter: function(item) {
|
||||
@ -62,7 +62,7 @@ erpnext.SalesAnalytics = wn.views.TreeGridReport.extend({
|
||||
}
|
||||
},
|
||||
"Territory": {
|
||||
label: "Territory / Customer",
|
||||
label: wn._("Territory / Customer"),
|
||||
show: true,
|
||||
item_key: "customer",
|
||||
parent_field: "parent_territory",
|
||||
@ -88,23 +88,23 @@ erpnext.SalesAnalytics = wn.views.TreeGridReport.extend({
|
||||
this.columns = std_columns.concat(this.columns);
|
||||
},
|
||||
filters: [
|
||||
{fieldtype:"Select", label: "Tree Type", options:["Customer Group", "Customer",
|
||||
{fieldtype:"Select", label: wn._("Tree Type"), options:["Customer Group", "Customer",
|
||||
"Item Group", "Item", "Territory"],
|
||||
filter: function(val, item, opts, me) {
|
||||
return me.apply_zero_filter(val, item, opts, me);
|
||||
}},
|
||||
{fieldtype:"Select", label: "Based On", options:["Sales Invoice",
|
||||
{fieldtype:"Select", label: wn._("Based On"), options:["Sales Invoice",
|
||||
"Sales Order", "Delivery Note"]},
|
||||
{fieldtype:"Select", label: "Value or Qty", options:["Value", "Quantity"]},
|
||||
{fieldtype:"Select", label: "Company", link:"Company",
|
||||
{fieldtype:"Select", label: wn._("Value or Qty"), options:["Value", "Quantity"]},
|
||||
{fieldtype:"Select", label: wn._("Company"), link:"Company",
|
||||
default_value: "Select Company..."},
|
||||
{fieldtype:"Date", label: "From Date"},
|
||||
{fieldtype:"Label", label: "To"},
|
||||
{fieldtype:"Date", label: "To Date"},
|
||||
{fieldtype:"Select", label: "Range",
|
||||
{fieldtype:"Date", label: wn._("From Date")},
|
||||
{fieldtype:"Label", label: wn._("To")},
|
||||
{fieldtype:"Date", label: wn._("To Date")},
|
||||
{fieldtype:"Select", label: wn._("Range"),
|
||||
options:["Daily", "Weekly", "Monthly", "Quarterly", "Yearly"]},
|
||||
{fieldtype:"Button", label: "Refresh", icon:"icon-refresh icon-white", cssClass:"btn-info"},
|
||||
{fieldtype:"Button", label: "Reset Filters"}
|
||||
{fieldtype:"Button", label: wn._("Refresh"), icon:"icon-refresh icon-white", cssClass:"btn-info"},
|
||||
{fieldtype:"Button", label: wn._("Reset Filters")}
|
||||
],
|
||||
setup_filters: function() {
|
||||
var me = this;
|
||||
|
@ -15,8 +15,9 @@ pscript['onload_Sales Browser'] = function(wrapper){
|
||||
|
||||
$(wrapper)
|
||||
.find(".layout-side-section")
|
||||
.html('<div class="text-muted">Click on a link to get options to expand \
|
||||
get options Add / Edit / Delete.</div>')
|
||||
.html('<div class="text-muted">'+
|
||||
wn._('Click on a link to get options to expand get options ') +
|
||||
wn._('Add') + ' / ' + wn._('Edit') + ' / '+ wn._('Delete') + '.</div>')
|
||||
|
||||
wrapper.make_tree = function() {
|
||||
var ctype = wn.get_route()[1] || 'Territory';
|
||||
@ -87,22 +88,22 @@ erpnext.SalesChart = Class.extend({
|
||||
var node_links = [];
|
||||
|
||||
if (wn.model.can_read(this.ctype)) {
|
||||
node_links.push('<a onclick="erpnext.sales_chart.open();">Edit</a>');
|
||||
node_links.push('<a onclick="erpnext.sales_chart.open();">'+wn._('Edit')+'</a>');
|
||||
}
|
||||
|
||||
if(data.expandable) {
|
||||
if (wn.boot.profile.can_create.indexOf(this.ctype) !== -1 ||
|
||||
wn.boot.profile.in_create.indexOf(this.ctype) !== -1) {
|
||||
node_links.push('<a onclick="erpnext.sales_chart.new_node();">Add Child</a>');
|
||||
node_links.push('<a onclick="erpnext.sales_chart.new_node();">' + wn._('Add Child') + '</a>');
|
||||
}
|
||||
}
|
||||
|
||||
if (wn.model.can_write(this.ctype)) {
|
||||
node_links.push('<a onclick="erpnext.sales_chart.rename()">Rename</a>');
|
||||
node_links.push('<a onclick="erpnext.sales_chart.rename()">' + wn._('Rename') + '</a>');
|
||||
};
|
||||
|
||||
if (wn.model.can_delete(this.ctype)) {
|
||||
node_links.push('<a onclick="erpnext.sales_chart.delete()">Delete</a>');
|
||||
node_links.push('<a onclick="erpnext.sales_chart.delete()">' + wn._('Delete') + '</a>');
|
||||
};
|
||||
|
||||
link.toolbar.append(node_links.join(" | "));
|
||||
@ -114,18 +115,18 @@ erpnext.SalesChart = Class.extend({
|
||||
{fieldtype:'Data', fieldname: 'name_field',
|
||||
label:'New ' + me.ctype + ' Name', reqd:true},
|
||||
{fieldtype:'Select', fieldname:'is_group', label:'Group Node', options:'No\nYes',
|
||||
description: "Further nodes can be only created under 'Group' type nodes"},
|
||||
description: wn._("Further nodes can be only created under 'Group' type nodes")},
|
||||
{fieldtype:'Button', fieldname:'create_new', label:'Create New' }
|
||||
]
|
||||
|
||||
if(me.ctype == "Sales Person") {
|
||||
fields.splice(-1, 0, {fieldtype:'Link', fieldname:'employee', label:'Employee',
|
||||
options:'Employee', description: "Please enter Employee Id of this sales parson"});
|
||||
options:'Employee', description: wn._("Please enter Employee Id of this sales parson")});
|
||||
}
|
||||
|
||||
// the dialog
|
||||
var d = new wn.ui.Dialog({
|
||||
title:'New ' + me.ctype,
|
||||
title: wn._('New ') + wn._(me.ctype),
|
||||
fields: fields
|
||||
})
|
||||
|
||||
|
@ -63,7 +63,7 @@ wn.module_page["Selling"] = [
|
||||
"label": wn._("Selling Settings"),
|
||||
"route": "Form/Selling Settings",
|
||||
"doctype":"Selling Settings",
|
||||
"description": "Settings for Selling Module"
|
||||
"description": wn._("Settings for Selling Module")
|
||||
},
|
||||
{
|
||||
"route":"Form/Shopping Cart Settings",
|
||||
|
@ -5,7 +5,7 @@ wn.query_reports["Customers Not Buying Since Long Time"] = {
|
||||
"filters": [
|
||||
{
|
||||
"fieldname":"days_since_last_order",
|
||||
"label": "Days Since Last Order",
|
||||
"label": wn._("Days Since Last Order"),
|
||||
"fieldtype": "Int",
|
||||
"default": 60
|
||||
}
|
||||
|
@ -5,21 +5,21 @@ wn.query_reports["Sales Person Target Variance Item Group-Wise"] = {
|
||||
"filters": [
|
||||
{
|
||||
fieldname: "fiscal_year",
|
||||
label: "Fiscal Year",
|
||||
label: wn._("Fiscal Year"),
|
||||
fieldtype: "Link",
|
||||
options: "Fiscal Year",
|
||||
default: sys_defaults.fiscal_year
|
||||
},
|
||||
{
|
||||
fieldname: "period",
|
||||
label: "Period",
|
||||
label: wn._("Period"),
|
||||
fieldtype: "Select",
|
||||
options: "Monthly\nQuarterly\nHalf-Yearly\nYearly",
|
||||
default: "Monthly"
|
||||
},
|
||||
{
|
||||
fieldname: "target_on",
|
||||
label: "Target On",
|
||||
label: wn._("Target On"),
|
||||
fieldtype: "Select",
|
||||
options: "Quantity\nAmount",
|
||||
default: "Quantity"
|
||||
|
@ -5,57 +5,57 @@ wn.query_reports["Sales Person-wise Transaction Summary"] = {
|
||||
"filters": [
|
||||
{
|
||||
fieldname: "sales_person",
|
||||
label: "Sales Person",
|
||||
label: wn._("Sales Person"),
|
||||
fieldtype: "Link",
|
||||
options: "Sales Person"
|
||||
},
|
||||
{
|
||||
fieldname: "doc_type",
|
||||
label: "Document Type",
|
||||
label: wn._("Document Type"),
|
||||
fieldtype: "Select",
|
||||
options: "Sales Order\nDelivery Note\nSales Invoice",
|
||||
default: "Sales Order"
|
||||
},
|
||||
{
|
||||
fieldname: "from_date",
|
||||
label: "From Date",
|
||||
label: wn._("From Date"),
|
||||
fieldtype: "Date",
|
||||
default: wn.defaults.get_user_default("year_start_date"),
|
||||
},
|
||||
{
|
||||
fieldname:"to_date",
|
||||
label: "To Date",
|
||||
label: wn._("To Date"),
|
||||
fieldtype: "Date",
|
||||
default: get_today()
|
||||
},
|
||||
{
|
||||
fieldname:"company",
|
||||
label: "Company",
|
||||
label: wn._("Company"),
|
||||
fieldtype: "Link",
|
||||
options: "Company",
|
||||
default: wn.defaults.get_default("company")
|
||||
},
|
||||
{
|
||||
fieldname:"item_group",
|
||||
label: "Item Group",
|
||||
label: wn._("Item Group"),
|
||||
fieldtype: "Link",
|
||||
options: "Item Group",
|
||||
},
|
||||
{
|
||||
fieldname:"brand",
|
||||
label: "Brand",
|
||||
label: wn._("Brand"),
|
||||
fieldtype: "Link",
|
||||
options: "Brand",
|
||||
},
|
||||
{
|
||||
fieldname:"customer",
|
||||
label: "Customer",
|
||||
label: wn._("Customer"),
|
||||
fieldtype: "Link",
|
||||
options: "Customer",
|
||||
},
|
||||
{
|
||||
fieldname:"territory",
|
||||
label: "Territory",
|
||||
label: wn._("Territory"),
|
||||
fieldtype: "Link",
|
||||
options: "Territory",
|
||||
},
|
||||
|
@ -5,21 +5,21 @@ wn.query_reports["Territory Target Variance Item Group-Wise"] = {
|
||||
"filters": [
|
||||
{
|
||||
fieldname: "fiscal_year",
|
||||
label: "Fiscal Year",
|
||||
label: wn._("Fiscal Year"),
|
||||
fieldtype: "Link",
|
||||
options: "Fiscal Year",
|
||||
default: sys_defaults.fiscal_year
|
||||
},
|
||||
{
|
||||
fieldname: "period",
|
||||
label: "Period",
|
||||
label: wn._("Period"),
|
||||
fieldtype: "Select",
|
||||
options: "Monthly\nQuarterly\nHalf-Yearly\nYearly",
|
||||
default: "Monthly"
|
||||
},
|
||||
{
|
||||
fieldname: "target_on",
|
||||
label: "Target On",
|
||||
label: wn._("Target On"),
|
||||
fieldtype: "Select",
|
||||
options: "Quantity\nAmount",
|
||||
default: "Quantity"
|
||||
|
@ -71,7 +71,7 @@ erpnext.selling.SellingController = erpnext.TransactionController.extend({
|
||||
this.frm.set_query("batch_no", this.fname, function(doc, cdt, cdn) {
|
||||
var item = wn.model.get_doc(cdt, cdn);
|
||||
if(!item.item_code) {
|
||||
wn.throw("Please enter Item Code to get batch no");
|
||||
wn.throw(wn._("Please enter Item Code to get batch no"));
|
||||
} else {
|
||||
filters = {
|
||||
'item_code': item.item_code,
|
||||
@ -625,12 +625,12 @@ var set_sales_bom_help = function(doc) {
|
||||
$(cur_frm.fields_dict.packing_list.row.wrapper).toggle(true);
|
||||
|
||||
if (inList(['Delivery Note', 'Sales Invoice'], doc.doctype)) {
|
||||
help_msg = "<div class='alert alert-warning'> \
|
||||
For 'Sales BOM' items, warehouse, serial no and batch no \
|
||||
help_msg = "<div class='alert alert-warning'>" +
|
||||
wn._("For 'Sales BOM' items, warehouse, serial no and batch no \
|
||||
will be considered from the 'Packing List' table. \
|
||||
If warehouse and batch no are same for all packing items for any 'Sales BOM' item, \
|
||||
those values can be entered in the main item table, values will be copied to 'Packing List' table. \
|
||||
</div>";
|
||||
those values can be entered in the main item table, values will be copied to 'Packing List' table.")+
|
||||
"</div>";
|
||||
wn.meta.get_docfield(doc.doctype, 'sales_bom_help', doc.name).options = help_msg;
|
||||
}
|
||||
} else {
|
||||
|
@ -61,7 +61,8 @@ cur_frm.cscript.has_special_chars = function(t) {
|
||||
|
||||
cur_frm.cscript.company_name = function(doc){
|
||||
if(doc.company_name && cur_frm.cscript.has_special_chars(doc.company_name)){
|
||||
msgprint("<font color=red>Special Characters <b>! @ # $ % ^ * + = - [ ] ' ; , / { } | : < > ?</b> are not allowed for</font>\nCompany Name <b>" + doc.company_name +"</b>")
|
||||
msgprint(("<font color=red>"+wn._("Special Characters")+" <b>! @ # $ % ^ * + = - [ ] ' ; , / { } | : < > ?</b> "+
|
||||
wn._("are not allowed for ")+"</font>\n"+wn._("Company Name")+" <b> "+ doc.company_name +"</b>"))
|
||||
doc.company_name = '';
|
||||
refresh_field('company_name');
|
||||
}
|
||||
@ -69,7 +70,8 @@ cur_frm.cscript.company_name = function(doc){
|
||||
|
||||
cur_frm.cscript.abbr = function(doc){
|
||||
if(doc.abbr && cur_frm.cscript.has_special_chars(doc.abbr)){
|
||||
msgprint("<font color=red>Special Characters <b>! @ # $ % ^ * + = - [ ] ' ; , / { } | : < > ?</b> are not allowed for</font>\nAbbr <b>" + doc.abbr +"</b>")
|
||||
msgprint("<font color=red>"+wn._("Special Characters ")+"<b>! @ # $ % ^ * + = - [ ] ' ; , / { } | : < > ?</b>" +
|
||||
wn._("are not allowed for")+ "</font>\nAbbr <b>" + doc.abbr +"</b>")
|
||||
doc.abbr = '';
|
||||
refresh_field('abbr');
|
||||
}
|
||||
|
@ -9,7 +9,7 @@ cur_frm.cscript.set_root_readonly = function(doc) {
|
||||
// read-only for root customer group
|
||||
if(!doc.parent_customer_group) {
|
||||
cur_frm.perm = [[1,0,0], [1,0,0]];
|
||||
cur_frm.set_intro("This is a root customer group and cannot be edited.");
|
||||
cur_frm.set_intro(wn._("This is a root customer group and cannot be edited."));
|
||||
} else {
|
||||
cur_frm.set_intro(null);
|
||||
}
|
||||
|
@ -3,10 +3,10 @@
|
||||
|
||||
cur_frm.cscript.refresh = function(doc, dt, dn) {
|
||||
doc = locals[dt][dn];
|
||||
var save_msg = "You must <b>Save</b> 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."
|
||||
var save_msg = wn._("You must ")+ "<b>"+wn._("Save ")+"</b>"+wn._("the form before proceeding");
|
||||
var err_msg = wn._("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() {
|
||||
cur_frm.add_custom_button(wn._('View Now'), function() {
|
||||
doc = locals[dt][dn];
|
||||
if(doc.__unsaved != 1) {
|
||||
return $c_obj(make_doclist(dt, dn), 'get_digest_msg', '', function(r, rt) {
|
||||
@ -16,7 +16,7 @@ cur_frm.cscript.refresh = function(doc, dt, dn) {
|
||||
} else {
|
||||
//console.log(arguments);
|
||||
var d = new wn.ui.Dialog({
|
||||
title: 'Email Digest: ' + dn,
|
||||
title: wn._('Email Digest: ') + dn,
|
||||
width: 800
|
||||
});
|
||||
|
||||
@ -29,7 +29,7 @@ cur_frm.cscript.refresh = function(doc, dt, dn) {
|
||||
msgprint(save_msg);
|
||||
}
|
||||
}, 1);
|
||||
cur_frm.add_custom_button('Send Now', function() {
|
||||
cur_frm.add_custom_button(wn._('Send Now'), function() {
|
||||
doc = locals[dt][dn];
|
||||
if(doc.__unsaved != 1) {
|
||||
return $c_obj(make_doclist(dt, dn), 'send', '', function(r, rt) {
|
||||
@ -38,7 +38,7 @@ cur_frm.cscript.refresh = function(doc, dt, dn) {
|
||||
console.log(r.exc);
|
||||
} else {
|
||||
//console.log(arguments);
|
||||
msgprint('Message Sent');
|
||||
msgprint(wn._('Message Sent'));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
@ -56,7 +56,7 @@ cur_frm.cscript.addremove_recipients = function(doc, dt, dn) {
|
||||
// Open a dialog and display checkboxes against email addresses
|
||||
doc = locals[dt][dn];
|
||||
var d = new wn.ui.Dialog({
|
||||
title: 'Add/Remove Recipients',
|
||||
title: wn._('Add/Remove Recipients'),
|
||||
width: 400
|
||||
});
|
||||
var dialog_div = $a(d.body, 'div', 'dialog-div', '', '');
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
cur_frm.cscript.refresh = function(doc, cdt, cdn) {
|
||||
cur_frm.cscript.set_root_readonly(doc);
|
||||
cur_frm.add_custom_button("Item Group Tree", function() {
|
||||
cur_frm.add_custom_button(wn._("Item Group Tree"), function() {
|
||||
wn.set_route("Sales Browser", "Item Group");
|
||||
})
|
||||
|
||||
@ -19,7 +19,7 @@ cur_frm.cscript.set_root_readonly = function(doc) {
|
||||
// read-only for root item group
|
||||
if(!doc.parent_item_group) {
|
||||
cur_frm.perm = [[1,0,0], [1,0,0]];
|
||||
cur_frm.set_intro("This is a root item group and cannot be edited.");
|
||||
cur_frm.set_intro(wn._("This is a root item group and cannot be edited."));
|
||||
} else {
|
||||
cur_frm.set_intro(null);
|
||||
}
|
||||
|
@ -39,7 +39,7 @@ cur_frm.cscript.make_address = function() {
|
||||
return "select name, address_type, address_line1, address_line2, city, state, country, pincode, fax, email_id, phone, is_primary_address, is_shipping_address from tabAddress where sales_partner='"+cur_frm.docname+"' and docstatus != 2 order by is_primary_address desc"
|
||||
},
|
||||
as_dict: 1,
|
||||
no_results_message: 'No addresses created',
|
||||
no_results_message: wn._('No addresses created'),
|
||||
render_row: function(wrapper, data) {
|
||||
$(wrapper).css('padding','5px 0px');
|
||||
var link = $ln(wrapper,cstr(data.name), function() { loaddoc("Address", this.dn); }, {fontWeight:'bold'});
|
||||
@ -69,7 +69,7 @@ cur_frm.cscript.make_contact = function() {
|
||||
return "select name, first_name, last_name, email_id, phone, mobile_no, department, designation, is_primary_contact from tabContact where sales_partner='"+cur_frm.docname+"' and docstatus != 2 order by is_primary_contact desc"
|
||||
},
|
||||
as_dict: 1,
|
||||
no_results_message: 'No contacts created',
|
||||
no_results_message: wn._('No contacts created'),
|
||||
render_row: function(wrapper, data) {
|
||||
$(wrapper).css('padding', '5px 0px');
|
||||
var link = $ln(wrapper, cstr(data.name), function() { loaddoc("Contact", this.dn); }, {fontWeight:'bold'});
|
||||
|
@ -9,7 +9,7 @@ cur_frm.cscript.set_root_readonly = function(doc) {
|
||||
// read-only for root
|
||||
if(!doc.parent_sales_person) {
|
||||
cur_frm.perm = [[1,0,0], [1,0,0]];
|
||||
cur_frm.set_intro("This is a root sales person and cannot be edited.");
|
||||
cur_frm.set_intro(wn._("This is a root sales person and cannot be edited."));
|
||||
} else {
|
||||
cur_frm.set_intro(null);
|
||||
}
|
||||
|
@ -2,5 +2,5 @@
|
||||
// License: GNU General Public License v3. See license.txt
|
||||
|
||||
cur_frm.cscript.refresh = function(doc) {
|
||||
cur_frm.set_intro(doc.__islocal ? "" : "There is nothing to edit.")
|
||||
cur_frm.set_intro(doc.__islocal ? "" : wn._("There is nothing to edit."))
|
||||
}
|
@ -9,7 +9,7 @@ cur_frm.cscript.set_root_readonly = function(doc) {
|
||||
// read-only for root territory
|
||||
if(!doc.parent_territory) {
|
||||
cur_frm.perm = [[1,0,0], [1,0,0]];
|
||||
cur_frm.set_intro("This is a root territory and cannot be edited.");
|
||||
cur_frm.set_intro(wn._("This is a root territory and cannot be edited."));
|
||||
} else {
|
||||
cur_frm.set_intro(null);
|
||||
}
|
||||
|
@ -5,12 +5,12 @@ wn.pages['Setup'].onload = function(wrapper) {
|
||||
if(msg_dialog && msg_dialog.display) msg_dialog.hide();
|
||||
wn.ui.make_app_page({
|
||||
parent: wrapper,
|
||||
title: 'Setup',
|
||||
title: wn._('Setup'),
|
||||
single_column: true
|
||||
});
|
||||
|
||||
wrapper.appframe.add_module_icon("Setup");
|
||||
wrapper.appframe.add_button("Refresh", function() {
|
||||
wrapper.appframe.add_button(wn._("Refresh"), function() {
|
||||
wn.pages.Setup.make(wrapper);
|
||||
}, "icon-refresh");
|
||||
|
||||
@ -110,7 +110,7 @@ wn.pages.Setup.make = function(wrapper) {
|
||||
})
|
||||
|
||||
} else if(item.single) {
|
||||
$('<a class="view-link"><i class="icon-edit"></i> Edit</a>')
|
||||
$('<a class="view-link"><i class="icon-edit"></i>'+wn._('Edit')+'</a>')
|
||||
.appendTo($links)
|
||||
|
||||
$links.find(".view-link")
|
||||
@ -119,11 +119,11 @@ wn.pages.Setup.make = function(wrapper) {
|
||||
wn.set_route("Form", $(this).attr("data-doctype"));
|
||||
})
|
||||
} else if(item.type !== "Link"){
|
||||
$('<a class="new-link"><i class="icon-plus"></i> New</a> \
|
||||
$('<a class="new-link"><i class="icon-plus"></i>'+wn._('New')+'</a> \
|
||||
<span class="text-muted">|</span> \
|
||||
<a class="view-link"><i class="icon-list"></i> View</a> \
|
||||
<a class="view-link"><i class="icon-list"></i>'+wn._('View')+'</a> \
|
||||
<span class="text-muted">|</span> \
|
||||
<a class="import-link"><i class="icon-upload"></i> Import</a>')
|
||||
<a class="import-link"><i class="icon-upload"></i>'+wn._('Import')+'</a>')
|
||||
.appendTo($links)
|
||||
|
||||
$links.find(".view-link")
|
||||
@ -180,11 +180,11 @@ wn.pages.Setup.make = function(wrapper) {
|
||||
if(r.message) {
|
||||
body.empty();
|
||||
if(wn.boot.expires_on) {
|
||||
$(body).prepend("<div class='text-muted' style='text-align:right'>Account expires on "
|
||||
$(body).prepend("<div class='text-muted' style='text-align:right'>"+wn.("Account expires on")
|
||||
+ wn.datetime.global_date_format(wn.boot.expires_on) + "</div>");
|
||||
}
|
||||
|
||||
$completed = $('<h4>Setup Completed <span class="completed-percent"></span><h4>\
|
||||
$completed = $('<h4>'+wn._("Setup Completed")+'<span class="completed-percent"></span><h4>\
|
||||
<div class="progress"><div class="progress-bar"></div></div>')
|
||||
.appendTo(body);
|
||||
|
||||
|
@ -26,20 +26,20 @@ erpnext.stock.DeliveryNoteController = erpnext.selling.SellingController.extend(
|
||||
});
|
||||
|
||||
if(!from_sales_invoice)
|
||||
cur_frm.add_custom_button('Make Invoice', this.make_sales_invoice);
|
||||
cur_frm.add_custom_button(wn._('Make Invoice'), this.make_sales_invoice);
|
||||
}
|
||||
|
||||
if(flt(doc.per_installed, 2) < 100 && doc.docstatus==1)
|
||||
cur_frm.add_custom_button('Make Installation Note', this.make_installation_note);
|
||||
cur_frm.add_custom_button(wn._('Make Installation Note'), this.make_installation_note);
|
||||
|
||||
if (doc.docstatus==1) {
|
||||
cur_frm.add_custom_button('Send SMS', cur_frm.cscript.send_sms);
|
||||
cur_frm.add_custom_button(wn._('Send SMS'), cur_frm.cscript.send_sms);
|
||||
this.show_stock_ledger();
|
||||
this.show_general_ledger();
|
||||
}
|
||||
|
||||
if(doc.docstatus==0 && !doc.__islocal) {
|
||||
cur_frm.add_custom_button('Make Packing Slip', cur_frm.cscript['Make Packing Slip']);
|
||||
cur_frm.add_custom_button(wn._('Make Packing Slip'), cur_frm.cscript['Make Packing Slip']);
|
||||
}
|
||||
|
||||
set_print_hide(doc, dt, dn);
|
||||
|
@ -124,7 +124,7 @@ cur_frm.fields_dict['item_group'].get_query = function(doc,cdt,cdn) {
|
||||
// in the "alternate_description" field
|
||||
cur_frm.cscript.add_image = function(doc, dt, dn) {
|
||||
if(!doc.image) {
|
||||
msgprint('Please select an "Image" first');
|
||||
msgprint(wn._('Please select an "Image" first'));
|
||||
return;
|
||||
}
|
||||
|
||||
@ -140,7 +140,7 @@ cur_frm.cscript.weight_to_validate = function(doc,cdt,cdn){
|
||||
|
||||
if((doc.nett_weight || doc.gross_weight) && !doc.weight_uom)
|
||||
{
|
||||
alert('Weight is mentioned,\nPlease mention "Weight UOM" too');
|
||||
alert(wn._('Weight is mentioned,\nPlease mention "Weight UOM" too'));
|
||||
validated=0;
|
||||
}
|
||||
}
|
||||
|
@ -27,21 +27,21 @@ erpnext.buying.MaterialRequestController = erpnext.buying.BuyingController.exten
|
||||
|
||||
if(doc.docstatus == 1 && doc.status != 'Stopped') {
|
||||
if(doc.material_request_type === "Purchase")
|
||||
cur_frm.add_custom_button("Make Supplier Quotation",
|
||||
cur_frm.add_custom_button(wn._("Make Supplier Quotation"),
|
||||
this.make_supplier_quotation);
|
||||
|
||||
if(doc.material_request_type === "Transfer" && doc.status === "Submitted")
|
||||
cur_frm.add_custom_button("Transfer Material", this.make_stock_entry);
|
||||
cur_frm.add_custom_button(wn._("Transfer Material"), this.make_stock_entry);
|
||||
|
||||
if(flt(doc.per_ordered, 2) < 100) {
|
||||
if(doc.material_request_type === "Purchase")
|
||||
cur_frm.add_custom_button('Make Purchase Order',
|
||||
cur_frm.add_custom_button(wn._('Make Purchase Order'),
|
||||
this.make_purchase_order);
|
||||
|
||||
cur_frm.add_custom_button('Stop Material Request',
|
||||
cur_frm.add_custom_button(wn._('Stop Material Request'),
|
||||
cur_frm.cscript['Stop Material Request']);
|
||||
}
|
||||
cur_frm.add_custom_button('Send SMS', cur_frm.cscript.send_sms);
|
||||
cur_frm.add_custom_button(wn._('Send SMS'), cur_frm.cscript.send_sms);
|
||||
|
||||
}
|
||||
|
||||
@ -62,7 +62,7 @@ erpnext.buying.MaterialRequestController = erpnext.buying.BuyingController.exten
|
||||
}
|
||||
|
||||
if(doc.docstatus == 1 && doc.status == 'Stopped')
|
||||
cur_frm.add_custom_button('Unstop Material Request',
|
||||
cur_frm.add_custom_button(wn._('Unstop Material Request'),
|
||||
cur_frm.cscript['Unstop Material Request']);
|
||||
|
||||
},
|
||||
@ -154,12 +154,12 @@ $.extend(cur_frm.cscript, new erpnext.buying.MaterialRequestController({frm: cur
|
||||
cur_frm.cscript.qty = function(doc, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
if (flt(d.qty) < flt(d.min_order_qty))
|
||||
alert("Warning: Material Requested Qty is less than Minimum Order Qty");
|
||||
alert(wn._("Warning: Material Requested Qty is less than Minimum Order Qty"));
|
||||
};
|
||||
|
||||
cur_frm.cscript['Stop Material Request'] = function() {
|
||||
var doc = cur_frm.doc;
|
||||
var check = confirm("Do you really want to STOP this Material Request?");
|
||||
var check = confirm(wn._("Do you really want to STOP this Material Request?"));
|
||||
|
||||
if (check) {
|
||||
return $c('runserverobj', args={'method':'update_status', 'arg': 'Stopped', 'docs': wn.model.compress(make_doclist(doc.doctype, doc.name))}, function(r,rt) {
|
||||
@ -170,7 +170,7 @@ cur_frm.cscript['Stop Material Request'] = function() {
|
||||
|
||||
cur_frm.cscript['Unstop Material Request'] = function(){
|
||||
var doc = cur_frm.doc;
|
||||
var check = confirm("Do you really want to UNSTOP this Material Request?");
|
||||
var check = confirm(wn._("Do you really want to UNSTOP this Material Request?"));
|
||||
|
||||
if (check) {
|
||||
return $c('runserverobj', args={'method':'update_status', 'arg': 'Submitted','docs': wn.model.compress(make_doclist(doc.doctype, doc.name))}, function(r,rt) {
|
||||
|
@ -45,13 +45,13 @@ cur_frm.cscript.validate = function(doc, cdt, cdn) {
|
||||
cur_frm.cscript.validate_case_nos = function(doc) {
|
||||
doc = locals[doc.doctype][doc.name];
|
||||
if(cint(doc.from_case_no)==0) {
|
||||
msgprint("Case No. cannot be 0")
|
||||
msgprint(wn._("Case No. cannot be 0"))
|
||||
validated = false;
|
||||
} else if(!cint(doc.to_case_no)) {
|
||||
doc.to_case_no = doc.from_case_no;
|
||||
refresh_field('to_case_no');
|
||||
} else if(cint(doc.to_case_no) < cint(doc.from_case_no)) {
|
||||
msgprint("'To Case No.' cannot be less than 'From Case No.'");
|
||||
msgprint(wn._("'To Case No.' cannot be less than 'From Case No.'"));
|
||||
validated = false;
|
||||
}
|
||||
}
|
||||
@ -72,14 +72,14 @@ cur_frm.cscript.validate_duplicate_items = function(doc, ps_detail) {
|
||||
for(var i=0; i<ps_detail.length; i++) {
|
||||
for(var j=0; j<ps_detail.length; j++) {
|
||||
if(i!=j && ps_detail[i].item_code && ps_detail[i].item_code==ps_detail[j].item_code) {
|
||||
msgprint("You have entered duplicate items. Please rectify and try again.");
|
||||
msgprint(wn._("You have entered duplicate items. Please rectify and try again."));
|
||||
validated = false;
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(flt(ps_detail[i].qty)<=0) {
|
||||
msgprint("Invalid quantity specified for item " + ps_detail[i].item_code +
|
||||
". Quantity should be greater than 0.");
|
||||
msgprint(wn._("Invalid quantity specified for item ") + ps_detail[i].item_code +
|
||||
"."+wn._(" Quantity should be greater than 0."));
|
||||
validated = false;
|
||||
}
|
||||
}
|
||||
@ -95,9 +95,9 @@ cur_frm.cscript.calc_net_total_pkg = function(doc, ps_detail) {
|
||||
for(var i=0; i<ps_detail.length; i++) {
|
||||
var item = ps_detail[i];
|
||||
if(item.weight_uom != doc.net_weight_uom) {
|
||||
msgprint("Different UOM for items will lead to incorrect \
|
||||
(Total) Net Weight value. Make sure that Net Weight of each item is \
|
||||
in the same UOM.")
|
||||
msgprint(wn._("Different UOM for items will lead to incorrect")+
|
||||
wn._("(Total) Net Weight value. Make sure that Net Weight of each item is")+
|
||||
wn._("in the same UOM."))
|
||||
validated = false;
|
||||
}
|
||||
net_weight_pkg += flt(item.net_weight) * flt(item.qty);
|
||||
|
@ -17,15 +17,15 @@ erpnext.stock.PurchaseReceiptController = erpnext.buying.BuyingController.extend
|
||||
|
||||
if(this.frm.doc.docstatus == 1) {
|
||||
if(!this.frm.doc.__billing_complete) {
|
||||
cur_frm.add_custom_button('Make Purchase Invoice',
|
||||
cur_frm.add_custom_button(wn._('Make Purchase Invoice'),
|
||||
this.make_purchase_invoice);
|
||||
}
|
||||
cur_frm.add_custom_button('Send SMS', cur_frm.cscript['Send SMS']);
|
||||
cur_frm.add_custom_button(wn._('Send SMS'), cur_frm.cscript['Send SMS']);
|
||||
|
||||
this.show_stock_ledger();
|
||||
this.show_general_ledger();
|
||||
} else {
|
||||
cur_frm.add_custom_button(wn._('From Purchase Order'),
|
||||
cur_frm.add_custom_button(wn._(wn._('From Purchase Order')),
|
||||
function() {
|
||||
wn.model.map_current_doc({
|
||||
method: "buying.doctype.purchase_order.purchase_order.make_purchase_receipt",
|
||||
@ -140,7 +140,7 @@ cur_frm.fields_dict['purchase_receipt_details'].grid.get_field('batch_no').get_q
|
||||
}
|
||||
}
|
||||
else{
|
||||
alert("Please enter Item Code.");
|
||||
alert(wn._("Please enter Item Code."));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -70,10 +70,10 @@ erpnext.stock.StockEntry = erpnext.stock.StockController.extend({
|
||||
if(this.frm.doc.docstatus === 1 &&
|
||||
wn.boot.profile.can_create.indexOf("Journal Voucher")!==-1) {
|
||||
if(this.frm.doc.purpose === "Sales Return") {
|
||||
this.frm.add_custom_button("Make Credit Note", function() { me.make_return_jv(); });
|
||||
this.frm.add_custom_button(wn._("Make Credit Note"), function() { me.make_return_jv(); });
|
||||
this.add_excise_button();
|
||||
} else if(this.frm.doc.purpose === "Purchase Return") {
|
||||
this.frm.add_custom_button("Make Debit Note", function() { me.make_return_jv(); });
|
||||
this.frm.add_custom_button(wn._("Make Debit Note"), function() { me.make_return_jv(); });
|
||||
this.add_excise_button();
|
||||
}
|
||||
}
|
||||
@ -195,7 +195,7 @@ erpnext.stock.StockEntry = erpnext.stock.StockController.extend({
|
||||
|
||||
add_excise_button: function() {
|
||||
if(wn.boot.control_panel.country === "India")
|
||||
this.frm.add_custom_button("Make Excise Invoice", function() {
|
||||
this.frm.add_custom_button(wn._("Make Excise Invoice"), function() {
|
||||
var excise = wn.model.make_new_doc_and_get_name('Journal Voucher');
|
||||
excise = locals['Journal Voucher'][excise];
|
||||
excise.voucher_type = 'Excise Voucher';
|
||||
@ -318,7 +318,7 @@ cur_frm.fields_dict['mtn_details'].grid.get_field('batch_no').get_query = functi
|
||||
}
|
||||
}
|
||||
} else {
|
||||
msgprint("Please enter Item Code to get batch no");
|
||||
msgprint(wn._("Please enter Item Code to get batch no"));
|
||||
}
|
||||
}
|
||||
|
||||
@ -372,7 +372,7 @@ cur_frm.cscript.validate = function(doc, cdt, cdn) {
|
||||
cur_frm.cscript.validate_items = function(doc) {
|
||||
cl = getchildren('Stock Entry Detail', doc.name, 'mtn_details');
|
||||
if (!cl.length) {
|
||||
alert("Item table can not be blank");
|
||||
alert(wn._("Item table can not be blank"));
|
||||
validated = false;
|
||||
}
|
||||
}
|
||||
@ -391,4 +391,4 @@ cur_frm.fields_dict.customer.get_query = function(doc, cdt, cdn) {
|
||||
|
||||
cur_frm.fields_dict.supplier.get_query = function(doc, cdt, cdn) {
|
||||
return{ query:"controllers.queries.supplier_query" }
|
||||
}
|
||||
}
|
||||
|
@ -48,13 +48,13 @@ erpnext.stock.StockReconciliation = erpnext.stock.StockController.extend({
|
||||
this.show_download_template();
|
||||
this.show_upload();
|
||||
if(this.frm.doc.reconciliation_json) {
|
||||
this.frm.set_intro("You can submit this Stock Reconciliation.");
|
||||
this.frm.set_intro(wn._("You can submit this Stock Reconciliation."));
|
||||
} else {
|
||||
this.frm.set_intro("Download the Template, fill appropriate data and \
|
||||
attach the modified file.");
|
||||
this.frm.set_intro(wn._("Download the Template, fill appropriate data and \
|
||||
attach the modified file."));
|
||||
}
|
||||
} else if(this.frm.doc.docstatus == 1) {
|
||||
this.frm.set_intro("Cancelling this Stock Reconciliation will nullify its effect.");
|
||||
this.frm.set_intro(wn._("Cancelling this Stock Reconciliation will nullify its effect."));
|
||||
this.show_stock_ledger();
|
||||
this.show_general_ledger();
|
||||
} else {
|
||||
@ -66,20 +66,20 @@ erpnext.stock.StockReconciliation = erpnext.stock.StockController.extend({
|
||||
|
||||
show_download_template: function() {
|
||||
var me = this;
|
||||
this.frm.add_custom_button("Download Template", function() {
|
||||
this.title = "Stock Reconcilation Template";
|
||||
wn.tools.downloadify([["Stock Reconciliation"],
|
||||
this.frm.add_custom_button(wn._("Download Template"), function() {
|
||||
this.title = wn._("Stock Reconcilation Template");
|
||||
wn.tools.downloadify([[wn._("Stock Reconciliation")],
|
||||
["----"],
|
||||
["Stock Reconciliation can be used to update the stock on a particular date,"
|
||||
+ " usually as per physical inventory."],
|
||||
["When submitted, the system creates difference entries"
|
||||
+ " to set the given stock and valuation on this date."],
|
||||
["It can also be used to create opening stock entries and to fix stock value."],
|
||||
[wn._("Stock Reconciliation can be used to update the stock on a particular date, ")
|
||||
+ wn._("usually as per physical inventory.")],
|
||||
[wn._("When submitted, the system creates difference entries ")
|
||||
+ wn._("to set the given stock and valuation on this date.")],
|
||||
[wn._("It can also be used to create opening stock entries and to fix stock value.")],
|
||||
["----"],
|
||||
["Notes:"],
|
||||
["Item Code and Warehouse should already exist."],
|
||||
["You can update either Quantity or Valuation Rate or both."],
|
||||
["If no change in either Quantity or Valuation Rate, leave the cell blank."],
|
||||
[wn._("Notes:")],
|
||||
[wn._("Item Code and Warehouse should already exist.")],
|
||||
[wn._("You can update either Quantity or Valuation Rate or both.")],
|
||||
[wn._("If no change in either Quantity or Valuation Rate, leave the cell blank.")],
|
||||
["----"],
|
||||
["Item Code", "Warehouse", "Quantity", "Valuation Rate"]], null, this);
|
||||
return false;
|
||||
@ -113,8 +113,8 @@ erpnext.stock.StockReconciliation = erpnext.stock.StockController.extend({
|
||||
show_download_reconciliation_data: function() {
|
||||
var me = this;
|
||||
if(this.frm.doc.reconciliation_json) {
|
||||
this.frm.add_custom_button("Download Reconcilation Data", function() {
|
||||
this.title = "Stock Reconcilation Data";
|
||||
this.frm.add_custom_button(wn._("Download Reconcilation Data"), function() {
|
||||
this.title = wn._("Stock Reconcilation Data");
|
||||
wn.tools.downloadify(JSON.parse(me.frm.doc.reconciliation_json), null, this);
|
||||
return false;
|
||||
}, "icon-download");
|
||||
|
@ -7,11 +7,11 @@ cur_frm.cscript.refresh = function(doc) {
|
||||
|
||||
cur_frm.cscript.merge = function(doc, cdt, cdn) {
|
||||
if (!doc.merge_with) {
|
||||
msgprint("Please enter the warehouse to which you want to merge?");
|
||||
msgprint(wn._("Please enter the warehouse to which you want to merge?"));
|
||||
return;
|
||||
}
|
||||
var check = confirm("Are you sure you want to merge this warehouse into "
|
||||
+ doc.merge_with + "?");
|
||||
var check = confirm(wn._("Are you sure you want to merge this warehouse into "
|
||||
+ doc.merge_with + "?"));
|
||||
if (check) {
|
||||
return $c_obj(make_doclist(cdt, cdn), 'merge_warehouses', '', '');
|
||||
}
|
||||
|
@ -5,7 +5,7 @@
|
||||
wn.pages['stock-ageing'].onload = function(wrapper) {
|
||||
wn.ui.make_app_page({
|
||||
parent: wrapper,
|
||||
title: 'Stock Ageing',
|
||||
title: wn._('Stock Ageing'),
|
||||
single_column: true
|
||||
});
|
||||
|
||||
@ -21,7 +21,7 @@ wn.require("app/js/stock_grid_report.js");
|
||||
erpnext.StockAgeing = erpnext.StockGridReport.extend({
|
||||
init: function(wrapper) {
|
||||
this._super({
|
||||
title: "Stock Ageing",
|
||||
title: wn._("Stock Ageing"),
|
||||
page: wrapper,
|
||||
parent: $(wrapper).find('.layout-main'),
|
||||
appframe: wrapper.appframe,
|
||||
@ -30,37 +30,37 @@ erpnext.StockAgeing = erpnext.StockGridReport.extend({
|
||||
},
|
||||
setup_columns: function() {
|
||||
this.columns = [
|
||||
{id: "name", name: "Item", field: "name", width: 300,
|
||||
{id: "name", name: wn._("Item"), field: "name", width: 300,
|
||||
link_formatter: {
|
||||
open_btn: true,
|
||||
doctype: '"Item"'
|
||||
}},
|
||||
{id: "item_name", name: "Item Name", field: "item_name",
|
||||
{id: "item_name", name: wn._("Item Name"), field: "item_name",
|
||||
width: 100, formatter: this.text_formatter},
|
||||
{id: "description", name: "Description", field: "description",
|
||||
{id: "description", name: wn._("Description"), field: "description",
|
||||
width: 200, formatter: this.text_formatter},
|
||||
{id: "brand", name: "Brand", field: "brand", width: 100},
|
||||
{id: "average_age", name: "Average Age", field: "average_age",
|
||||
{id: "brand", name: wn._("Brand"), field: "brand", width: 100},
|
||||
{id: "average_age", name: wn._("Average Age"), field: "average_age",
|
||||
formatter: this.currency_formatter},
|
||||
{id: "earliest", name: "Earliest", field: "earliest",
|
||||
{id: "earliest", name: wn._("Earliest"), field: "earliest",
|
||||
formatter: this.currency_formatter},
|
||||
{id: "latest", name: "Latest", field: "latest",
|
||||
{id: "latest", name: wn._("Latest"), field: "latest",
|
||||
formatter: this.currency_formatter},
|
||||
{id: "stock_uom", name: "UOM", field: "stock_uom", width: 100},
|
||||
];
|
||||
},
|
||||
filters: [
|
||||
{fieldtype:"Select", label: "Warehouse", link:"Warehouse",
|
||||
{fieldtype:"Select", label: wn._("Warehouse"), link:"Warehouse",
|
||||
default_value: "Select Warehouse..."},
|
||||
{fieldtype:"Select", label: "Brand", link:"Brand",
|
||||
{fieldtype:"Select", label: wn._("Brand"), link:"Brand",
|
||||
default_value: "Select Brand...", filter: function(val, item, opts) {
|
||||
return val == opts.default_value || item.brand == val;
|
||||
}, link_formatter: {filter_input: "brand"}},
|
||||
{fieldtype:"Select", label: "Plot By",
|
||||
{fieldtype:"Select", label: wn._("Plot By"),
|
||||
options: ["Average Age", "Earliest", "Latest"]},
|
||||
{fieldtype:"Date", label: "To Date"},
|
||||
{fieldtype:"Button", label: "Refresh", icon:"icon-refresh icon-white", cssClass:"btn-info"},
|
||||
{fieldtype:"Button", label: "Reset Filters"}
|
||||
{fieldtype:"Date", label: wn._("To Date")},
|
||||
{fieldtype:"Button", label: wn._("Refresh"), icon:"icon-refresh icon-white", cssClass:"btn-info"},
|
||||
{fieldtype:"Button", label: wn._("Reset Filters")}
|
||||
],
|
||||
setup_filters: function() {
|
||||
var me = this;
|
||||
|
@ -5,7 +5,7 @@
|
||||
wn.pages['stock-analytics'].onload = function(wrapper) {
|
||||
wn.ui.make_app_page({
|
||||
parent: wrapper,
|
||||
title: 'Stock Analytics',
|
||||
title: wn._('Stock Analytics'),
|
||||
single_column: true
|
||||
});
|
||||
|
||||
|
@ -6,7 +6,7 @@ wn.require("app/js/stock_analytics.js");
|
||||
wn.pages['stock-balance'].onload = function(wrapper) {
|
||||
wn.ui.make_app_page({
|
||||
parent: wrapper,
|
||||
title: 'Stock Balance',
|
||||
title: wn._('Stock Balance'),
|
||||
single_column: true
|
||||
});
|
||||
|
||||
@ -20,58 +20,58 @@ wn.pages['stock-balance'].onload = function(wrapper) {
|
||||
erpnext.StockBalance = erpnext.StockAnalytics.extend({
|
||||
init: function(wrapper) {
|
||||
this._super(wrapper, {
|
||||
title: "Stock Balance",
|
||||
title: wn._("Stock Balance"),
|
||||
doctypes: ["Item", "Item Group", "Warehouse", "Stock Ledger Entry", "Brand",
|
||||
"Stock Entry", "Project"],
|
||||
});
|
||||
},
|
||||
setup_columns: function() {
|
||||
this.columns = [
|
||||
{id: "name", name: "Item", field: "name", width: 300,
|
||||
{id: "name", name: wn._("Item"), field: "name", width: 300,
|
||||
formatter: this.tree_formatter},
|
||||
{id: "item_name", name: "Item Name", field: "item_name", width: 100},
|
||||
{id: "description", name: "Description", field: "description", width: 200,
|
||||
{id: "item_name", name: wn._("Item Name"), field: "item_name", width: 100},
|
||||
{id: "description", name: wn._("Description"), field: "description", width: 200,
|
||||
formatter: this.text_formatter},
|
||||
{id: "brand", name: "Brand", field: "brand", width: 100},
|
||||
{id: "stock_uom", name: "UOM", field: "stock_uom", width: 100},
|
||||
{id: "opening_qty", name: "Opening Qty", field: "opening_qty", width: 100,
|
||||
{id: "brand", name: wn._("Brand"), field: "brand", width: 100},
|
||||
{id: "stock_uom", name: wn._("UOM"), field: "stock_uom", width: 100},
|
||||
{id: "opening_qty", name: wn._("Opening Qty"), field: "opening_qty", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
{id: "inflow_qty", name: "In Qty", field: "inflow_qty", width: 100,
|
||||
{id: "inflow_qty", name: wn._("In Qty"), field: "inflow_qty", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
{id: "outflow_qty", name: "Out Qty", field: "outflow_qty", width: 100,
|
||||
{id: "outflow_qty", name: wn._("Out Qty"), field: "outflow_qty", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
{id: "closing_qty", name: "Closing Qty", field: "closing_qty", width: 100,
|
||||
{id: "closing_qty", name: wn._("Closing Qty"), field: "closing_qty", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
|
||||
{id: "opening_value", name: "Opening Value", field: "opening_value", width: 100,
|
||||
{id: "opening_value", name: wn._("Opening Value"), field: "opening_value", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
{id: "inflow_value", name: "In Value", field: "inflow_value", width: 100,
|
||||
{id: "inflow_value", name: wn._("In Value"), field: "inflow_value", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
{id: "outflow_value", name: "Out Value", field: "outflow_value", width: 100,
|
||||
{id: "outflow_value", name: wn._("Out Value"), field: "outflow_value", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
{id: "closing_value", name: "Closing Value", field: "closing_value", width: 100,
|
||||
{id: "closing_value", name: wn._("Closing Value"), field: "closing_value", width: 100,
|
||||
formatter: this.currency_formatter},
|
||||
];
|
||||
},
|
||||
|
||||
filters: [
|
||||
{fieldtype:"Select", label: "Brand", link:"Brand",
|
||||
{fieldtype:"Select", label: wn._("Brand"), link:"Brand",
|
||||
default_value: "Select Brand...", filter: function(val, item, opts) {
|
||||
return val == opts.default_value || item.brand == val || item._show;
|
||||
}, link_formatter: {filter_input: "brand"}},
|
||||
{fieldtype:"Select", label: "Warehouse", link:"Warehouse",
|
||||
{fieldtype:"Select", label: wn._("Warehouse"), link:"Warehouse",
|
||||
default_value: "Select Warehouse...", filter: function(val, item, opts, me) {
|
||||
return me.apply_zero_filter(val, item, opts, me);
|
||||
}},
|
||||
{fieldtype:"Select", label: "Project", link:"Project",
|
||||
{fieldtype:"Select", label: wn._("Project"), link:"Project",
|
||||
default_value: "Select Project...", filter: function(val, item, opts, me) {
|
||||
return me.apply_zero_filter(val, item, opts, me);
|
||||
}, link_formatter: {filter_input: "project"}},
|
||||
{fieldtype:"Date", label: "From Date"},
|
||||
{fieldtype:"Label", label: "To"},
|
||||
{fieldtype:"Date", label: "To Date"},
|
||||
{fieldtype:"Button", label: "Refresh", icon:"icon-refresh icon-white", cssClass:"btn-info"},
|
||||
{fieldtype:"Button", label: "Reset Filters"}
|
||||
{fieldtype:"Date", label: wn._("From Date")},
|
||||
{fieldtype:"Label", label: wn._("To")},
|
||||
{fieldtype:"Date", label: wn._("To Date")},
|
||||
{fieldtype:"Button", label: wn._("Refresh"), icon:"icon-refresh icon-white", cssClass:"btn-info"},
|
||||
{fieldtype:"Button", label: wn._("Reset Filters")}
|
||||
],
|
||||
|
||||
setup_plot_check: function() {
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user