You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

106 lines
3.3 KiB
JavaScript

2 months ago
/// <reference path="jquery-1.4.1-vsdoc.js" />
(function ($) {
$.RTX = {
SignatureAuth: function (objAx, url, options) {
try {
if (objAx.IsRTXCRunning() == false) {
return;
}
}
catch (e) {
return;
}
var settings = {
sessionKey: "",
success: function () { },
fail: function (code) { }
};
if (options) {
settings = $.extend(settings, options);
}
var client = objAx.GetObject("KernalRoot");
if (client.Account == "") {
return;
}
$.RTX.ShowLoading("请稍候正在验证RTX客户端……");
var data = client.Sign;
var userName = client.Account;
var sign = data.GetString("Sign");
$.ajax({
type: "POST",
url: url,
data: "userName=" + encodeURIComponent(userName) + "&sign=" + encodeURIComponent(sign) + "&sessionKey=" + encodeURIComponent(settings.sessionKey),
success: function (data) {
var d = $.parseJSON(data);
if (d.success) {
settings.success();
}
else {
settings.fail(1);
$.RTX.HideLoading();
}
},
error: function () {
settings.fail(2);
$.RTX.HideLoading();
}
});
},
Start: function (objAx, url, userName) {
$.RTX.ShowLoading("正在启动客户端……");
try {
objAx.SetFrameMiniSize();
var client = objAx.GetObject("KernalRoot");
} catch (e) {
$.RTX.ShowLoading("获取客户端出错,请刷新页面。");
$.RTX.HideLoading();
return;
}
if (client.Account != "") {
client.Logout();
}
$.ajax({
type: "POST",
url: url,
data: "userName=" + encodeURIComponent(userName),
success: function (data) {
var d = $.parseJSON(data);
client.LoginSessionKey(d.serverIp, d.serverPort, userName, d.session);
$.RTX.HideLoading();
},
error: function () {
$.RTX.ShowLoading("因网络原因,无法实现登录。");
$.RTX.HideLoading();
}
});
},
ShowLoading: function (message) {
var loading_mask = $("#loading_mask");
if (loading_mask.html() == null) {
loading_mask = $("<div id=\"loading_mask\" style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #000; z-index: 9999;\"></div>").appendTo(document.body);
loading_mask.css({ opacity: 0.5 });
}
loading_mask.show();
var loading = $("#loading");
if (loading.html() == null) {
loading = $("<div id=\"loading\" style=\"background: #fff; top: 50%; left: 50%; margin-top: -25px; margin-left: -100px; width: 200px; height: 50px; position: absolute; z-index: 10000; text-align: center; line-height: 50px; font-size: 12px;\"></div>").appendTo(document.body);
}
loading.show();
loading.text(message);
},
HideLoading: function () {
var loading = $("#loading");
if (loading.html() != null) {
loading.fadeTo("slow", 0);
setTimeout(function () {
loading.css({ display: "none" });
}, 1200);
}
var loading_mask = $("#loading_mask");
if (loading_mask.html() != null) {
loading_mask.hide();
}
}
};
})(jQuery)