📄 wlogin.java
字号:
// Check Request Locale
Locale locale = request.getLocale();
AD_Language = Language.getAD_Language (locale);
}
}
if (AD_Language != null)
{
Language language = Language.getLanguage(AD_Language);
Env.verifyLanguage(ctx, language);
Env.setContext(ctx, Env.LANG, language.getAD_Language());
cProp.setProperty(P_LANGUAGE, language.getAD_Language());
sess.setAttribute(WEnv.SA_LANGUAGE, language);
}
} // checkLanguage
/*************************************************************************/
/**
* First Login Page
* @param cProp Login Cookie information for defaults
* @param request request
* @param errorMessage error message
* @return WDoc page
*/
private WDoc createFirstPage(Properties cProp, HttpServletRequest request,
String errorMessage)
{
Log.trace(Log.l4_Data, "WLogin.createFirstPage", errorMessage);
String AD_Language = (cProp.getProperty(P_LANGUAGE, Language.getAD_Language(request.getLocale())));
//
String windowTitle = Msg.getMsg(AD_Language, "Login");
String usrText = Msg.getMsg(AD_Language, "User");
String pwdText = Msg.getMsg(AD_Language, "Password");
String lngText = Msg.translate(AD_Language, "AD_Language");
String okText = Msg.getMsg(AD_Language, "OK");
String cancelText = Msg.getMsg(AD_Language, "Cancel");
String storeTxt = Msg.getMsg(AD_Language, "SaveCookie");
// Document
WDoc doc = WDoc.create (windowTitle);
body b = doc.getBody();
// Clear Menu Frame
b.addElement(WUtil.getClearFrame(WEnv.TARGET_MENU));
// Form - post to same URL
String action = request.getRequestURI();
form form = null;
form = new form(action, form.post, form.ENC_DEFAULT).setName("Login1");
form.setAcceptCharset(WEnv.CHARACTERSET);
table table = new table().setAlign(AlignType.center);
// Username
String userData = cProp.getProperty(P_USERNAME, "");
tr line = new tr();
label usrLabel = new label().setFor(P_USERNAME).addElement(usrText);
usrLabel.setID("ID_"+P_USERNAME);
line.addElement(new td().addElement(usrLabel).setAlign(AlignType.right));
input usr = new input(input.text, P_USERNAME, userData).setSize(20).setMaxlength(30);
usr.setID("ID_"+P_USERNAME);
line.addElement(new td().addElement(usr).setAlign(AlignType.left));
table.addElement(line);
// Password
String pwdData = cProp.getProperty(P_PASSWORD, "");
line = new tr();
label pwdLabel = new label().setFor(P_PASSWORD).addElement(pwdText);
pwdLabel.setID("ID_"+P_PASSWORD);
line.addElement(new td().addElement(pwdLabel).setAlign(AlignType.right));
input pwd = new input(input.password, P_PASSWORD, pwdData).setSize(20).setMaxlength(30);
pwd.setID("ID_"+P_PASSWORD);
line.addElement(new td().addElement(pwd).setAlign(AlignType.left));
table.addElement(line);
// Language Pick
String langData = cProp.getProperty(AD_Language);
line = new tr();
label langLabel = new label().setFor(P_LANGUAGE).addElement(lngText);
langLabel.setID("ID_"+P_LANGUAGE);
line.addElement(new td().addElement(langLabel).setAlign(AlignType.right));
option options[] = new option[Language.getLanguageCount()];
for (int i = 0; i < Language.getLanguageCount(); i++)
{
Language language = Language.getLanguage(i);
options[i] = new option(language.getAD_Language()).addElement(language.getName());
if (language.getAD_Language().equals(langData))
options[i].setSelected(true);
else
options[i].setSelected(false);
}
line.addElement(new td().addElement(new select(P_LANGUAGE, options).setID("ID_"+P_LANGUAGE) ));
table.addElement(line);
// Store Cookie
String storeData = cProp.getProperty(P_STORE, "N");
line = new tr();
line.addElement(new td());
input store = new input(input.checkbox, P_STORE, "Y").addElement(storeTxt).setChecked(storeData.equals("Y"));
store.setID("ID_"+P_STORE);
line.addElement(new td().addElement(store).setAlign(AlignType.left));
table.addElement(line);
// ErrorMessage
if (errorMessage != null && errorMessage.length() > 0)
{
line = new tr();
// line.addElement(new td());
line.addElement(new td().setColSpan(2)
.addElement(new font(HtmlColor.red, 4).addElement(new b(errorMessage)))); // color, size
table.addElement(line);
}
// Finish
line = new tr();
input cancel = new input(input.reset, "Reset", cancelText);
line.addElement(new td().addElement(cancel ));
line.addElement(new td().addElement(new input(input.submit, P_SUBMIT, okText) ));
table.addElement(line);
//
form.addElement(table);
b.addElement(form);
return doc;
} // getUserPasswordPage
/**
* Create Second Page
* @param cProp clinet properties
* @param request request
* @param roleOptions role options
* @param errorMessage error message
* @return WDoc page
*/
private WDoc createSecondPage(Properties cProp, HttpServletRequest request,
option[] roleOptions, String errorMessage)
{
Log.trace(Log.l4_Data, "WLogin.createSecondPage", errorMessage);
String AD_Language = cProp.getProperty(P_LANGUAGE, Language.getAD_Language(request.getLocale()));
String windowTitle = Msg.getMsg(AD_Language, "LoginSuccess");
// Create Document
WDoc doc = WDoc.create (windowTitle);
body b = doc.getBody();
// Form - Get Menu
String action = WEnv.getBaseDirectory("WMenu");
form form = null;
form = new form(action, form.post, form.ENC_DEFAULT).setName("Login2");
form.setTarget(WEnv.TARGET_MENU);
form.setAcceptCharset(WEnv.CHARACTERSET);
table table = new table().setAlign(AlignType.center);
// Role Pick
tr line = new tr();
label roleLabel = new label().setFor(P_ROLE).addElement(Msg.translate(AD_Language, "AD_Role_ID"));
line.addElement(new td().addElement(roleLabel).setAlign(AlignType.right));
select role = new select(P_ROLE, roleOptions);
role.setOnClick("fieldUpdate();"); // WFieldUpdate sets Client & Org
line.addElement(new td().addElement(role));
table.addElement(line);
// Client Pick
line = new tr();
label clientLabel = new label().setFor(P_CLIENT).addElement(Msg.translate(AD_Language, "AD_Client_ID"));
line.addElement(new td().addElement(clientLabel).setAlign(AlignType.right));
select client = new select(P_CLIENT);
client.setOnClick("fieldUpdate();"); // WFieldUpdate sets Warehouse
line.addElement(new td().addElement(client));
table.addElement(line);
// Org Pick
line = new tr();
label orgLabel = new label().setFor(P_ORG).addElement(Msg.translate(AD_Language, "AD_Org_ID"));
line.addElement(new td().addElement(orgLabel).setAlign(AlignType.right));
line.addElement(new td().addElement(new select(P_ORG) ));
table.addElement(line);
// Warehouse
line = new tr();
label whLabel = new label().setFor(P_WAREHOUSE).addElement(Msg.translate(AD_Language, "M_Warehouse_ID"));
line.addElement(new td().addElement(whLabel).setAlign(AlignType.right));
line.addElement(new td().addElement(new select(P_WAREHOUSE) ));
table.addElement(line);
// Date
Language language = (Language)request.getSession().getAttribute(WEnv.SA_LANGUAGE);
DateFormat df = DisplayType.getDateFormat(DisplayType.Date, language);
String dateData = df.format(new java.util.Date());
line = new tr();
label dateLabel = new label().setFor(P_DATE).addElement(Msg.getMsg(AD_Language, "Date"));
line.addElement(new td().addElement(dateLabel).setAlign(AlignType.right));
input date = new input(input.text, P_DATE, dateData).setSize(10).setMaxlength(10);
date.setID("ID_Date");
line.addElement(new td().addElement(date).setAlign(AlignType.left));
table.addElement(line);
// ErrorMessage
if (errorMessage != null && errorMessage.length() > 0)
{
line = new tr();
line.addElement(new td().addElement(new strong(errorMessage)).setColSpan(2).setAlign(AlignType.center));
table.addElement(line);
}
// Finish
line = new tr();
input cancel = new input(input.reset, "Reset", Msg.getMsg(AD_Language, "Cancel"));
line.addElement(new td().addElement(cancel ));
input submit = new input(input.submit, "Submit", Msg.getMsg(AD_Language, "OK"));
submit.setOnClick("showLoadingMenu('" + WEnv.getBaseDirectory("") + "');");
line.addElement(new td().addElement(submit));
table.addElement(line);
// Note
line = new tr();
String note = Msg.getMsg(AD_Language, "WLoginBrowserNote");
line.addElement(new td().addElement(note).setColSpan(2).setAlign(AlignType.center));
table.addElement(line);
//
form.addElement(table);
b.addElement(form);
//
String script = "document.Login2." + P_ROLE + ".click();"; // init dependency updates
b.addElement(new script(script));
return doc;
} // getSecondPage
} // WLogin
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -