Merge branch 'stable' into latest

Conflicts:
	erpnext/home/page/event_updates/event_updates.js
This commit is contained in:
Anand Doshi 2012-02-09 12:23:15 +05:30
commit 95e89de21d
3 changed files with 126 additions and 5 deletions

View File

@ -613,7 +613,7 @@ pscript.home_make_status = function() {
// complete registration
if(in_list(user_roles,'System Manager')) {
wn.require("erpnext/home/page/event_updates/complete_registration.js");
pscript.complete_registration(r.message.registration_complete);
pscript.complete_registration(r.message.registration_complete, r.message.profile);
}
// setup wizard
@ -624,6 +624,114 @@ pscript.home_make_status = function() {
);
}
// complete my company registration
// --------------------------------
pscript.complete_registration = function(is_complete, profile) {
if(is_complete == 'No'){
var d = new Dialog(400, 200, "Setup your Account");
if(user != 'Administrator'){
d.no_cancel(); // Hide close image
$dh(page_body.wntoolbar.wrapper);
}
d.make_body([
['HTML', 'Your Profile Details', '<h4>Your Profile Details</h4>'],
['Data', 'First Name'],
['Data', 'Last Name'],
['HTML', 'Company Details', '<h4>Create your first company</h4>'],
['Data','Company Name','Example: Your Company LLC'],
['Data','Company Abbreviation', 'Example: YC (all your acconts will have this as a suffix)'],
['Select','Fiscal Year Start Date'],
['Select','Default Currency'],
['Button','Save'],
]);
// if company name is set, set the input value
// and disable it
if(locals['Control Panel']['Control Panel'].company_name) {
d.widgets['Company Name'].value = locals['Control Panel']['Control Panel'].company_name;
d.widgets['Company Name'].disabled = 1;
}
if(profile && profile.length>0) {
if(profile[0].first_name && profile[0].first_name!='None') {
d.widgets['First Name'].value = profile[0].first_name;
}
if(profile[0].last_name && profile[0].last_name!='None') {
d.widgets['Last Name'].value = profile[0].last_name;
}
}
//d.widgets['Save'].disabled = true; // disable Save button
pscript.make_dialog_field(d);
// submit details
d.widgets['Save'].onclick = function()
{
d.widgets['Save'].set_working();
flag = pscript.validate_fields(d);
if(flag)
{
var args = [
d.widgets['Company Name'].value,
d.widgets['Company Abbreviation'].value,
d.widgets['Fiscal Year Start Date'].value,
d.widgets['Default Currency'].value,
d.widgets['First Name'].value,
d.widgets['Last Name'].value
];
$c_obj('Setup Control','setup_account',JSON.stringify(args),function(r, rt){
sys_defaults = r.message.sys_defaults;
user_fullname = r.message.user_fullname;
d.hide();
$ds(page_body.wntoolbar.wrapper);
$('#user_fullname').html(user_fullname + " (Profile Settings)");
});
} else {
d.widgets['Save'].done_working();
}
}
d.show();
}
}
// make dialog fields
// ------------------
pscript.make_dialog_field = function(d)
{
// fiscal year format
fisc_format = d.widgets['Fiscal Year Start Date'];
add_sel_options(fisc_format, ['', '1st Jan', '1st Apr', '1st Jul', '1st Oct']);
// default currency
currency_list = ['', 'AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'AUD', 'AZN', 'BAM', 'BBD', 'BDT', 'BGN', 'BHD', 'BIF', 'BMD', 'BND', 'BOB', 'BRL', 'BSD', 'BTN', 'BYR', 'BZD', 'CAD', 'CDF', 'CFA', 'CFP', 'CHF', 'CLP', 'CNY', 'COP', 'CRC', 'CUC', 'CZK', 'DJF', 'DKK', 'DOP', 'DZD', 'EEK', 'EGP', 'ERN', 'ETB', 'EUR', 'EURO', 'FJD', 'FKP', 'FMG', 'GBP', 'GEL', 'GHS', 'GIP', 'GMD', 'GNF', 'GQE', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK', 'HTG', 'HUF', 'IDR', 'ILS', 'INR', 'IQD', 'IRR', 'ISK', 'JMD', 'JOD', 'JPY', 'KES', 'KGS', 'KHR', 'KMF', 'KPW', 'KRW', 'KWD', 'KYD', 'KZT', 'LAK', 'LBP', 'LKR', 'LRD', 'LSL', 'LTL', 'LVL', 'LYD', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK', 'MNT', 'MOP', 'MRO', 'MUR', 'MVR', 'MWK', 'MXN', 'MYR', 'MZM', 'NAD', 'NGN', 'NIO', 'NOK', 'NPR', 'NRs', 'NZD', 'OMR', 'PAB', 'PEN', 'PGK', 'PHP', 'PKR', 'PLN', 'PYG', 'QAR', 'RMB', 'RON', 'RSD', 'RUB', 'RWF', 'SAR', 'SCR', 'SDG', 'SDR', 'SEK', 'SGD', 'SHP', 'SOS', 'SRD', 'STD', 'SYP', 'SZL', 'THB', 'TJS', 'TMT', 'TND', 'TRY', 'TTD', 'TWD', 'TZS', 'UAE', 'UAH', 'UGX', 'USD', 'USh', 'UYU', 'UZS', 'VEB', 'VND', 'VUV', 'WST', 'XAF', 'XCD', 'XDR', 'XOF', 'XPF', 'YEN', 'YER', 'YTL', 'ZAR', 'ZMK', 'ZWR'];
currency = d.widgets['Default Currency'];
add_sel_options(currency, currency_list);
}
// validate fields
// ---------------
pscript.validate_fields = function(d)
{
var lst = ['First Name', 'Company Name', 'Company Abbreviation', 'Fiscal Year Start Date', 'Default Currency'];
var msg = 'Please enter the following fields\n';
var flag = 1;
for(var i=0; i<lst.length; i++)
{
if(!d.widgets[lst[i]].value || d.widgets[lst[i]].value=='None'){
flag = 0;
msg = msg + NEWLINE + lst[i];
}
}
if(!flag) alert(msg);
return flag;
}
SetupWizard = function(status) {
var me = this;
$.extend(this, {

View File

@ -36,7 +36,10 @@ def get_status_details(arg=None):
'is_trial': webnotes.conn.get_global('is_trial'),
'days_to_expiry': (webnotes.conn.get_global('days_to_expiry') or '0'),
'setup_status': get_setup_status(),
'registration_complete': cint(get_defaults('registration_complete')) and 'Yes' or 'No'
'registration_complete': cint(get_defaults('registration_complete')) and 'Yes' or 'No',
'profile': webnotes.conn.sql("""\
SELECT first_name, last_name FROM `tabProfile`
WHERE name=%s AND docstatus<2""", webnotes.user.name, as_dict=1)
}
return ret
@ -89,4 +92,4 @@ def get_setup_status():
return ''
return {'ret': ret, 'percent': percent}

View File

@ -47,9 +47,17 @@ class DocType:
# Account Setup
# ---------------
def setup_account(self, args):
company_name, comp_abbr, fy_start, currency = eval(args)
import webnotes
company_name, comp_abbr, fy_start, currency, first_name, last_name = eval(args)
curr_fiscal_year,fy_start_date = self.get_fy_details(fy_start)
self.currency = currency
# Update Profile
if last_name=='None': last_name = None
webnotes.conn.sql("""\
UPDATE `tabProfile` SET first_name=%s, last_name=%s
WHERE name=%s AND docstatus<2""", (first_name, last_name, webnotes.user.name))
# Fiscal Year
master_dict = {'Fiscal Year':{'year':curr_fiscal_year, 'year_start_date':fy_start_date}}
@ -66,6 +74,7 @@ class DocType:
'default_currency': currency,
'default_company':company_name,
'default_valuation_method':'FIFO',
'default_stock_uom':'Nos',
'date_format':'dd-mm-yyyy',
'default_currency_format':'Lacs',
'so_required':'No',
@ -87,7 +96,8 @@ class DocType:
msgprint("Great! Your company has now been created")
import webnotes.utils
return webnotes.utils.get_defaults()
user_fullname = (first_name or '') + (last_name and (" " + last_name) or '')
return {'sys_defaults': webnotes.utils.get_defaults(), 'user_fullname': user_fullname}
# Get Fiscal year Details