|
|
|
|
|
/* eslint-disable */
|
|
|
|
|
|
|
|
|
|
|
|
// #ifdef APP-PLUS
|
|
|
|
|
|
window = {
|
|
|
|
|
|
location: {
|
|
|
|
|
|
href: 'http://127.0.0.1/print'
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
// #endif
|
|
|
|
|
|
(function(win) {
|
|
|
|
|
|
let printListDev = [];
|
|
|
|
|
|
let printListOnline = [];
|
|
|
|
|
|
var CLODOP = {
|
|
|
|
|
|
strWebPageID: "827AAAL",
|
|
|
|
|
|
strTaskID: "",
|
|
|
|
|
|
strHostURI: "http://localhost:8000",
|
|
|
|
|
|
wsHostURI: "ws://localhost:8000/c_webskt/",
|
|
|
|
|
|
VERSION: "6.5.7.2",
|
|
|
|
|
|
IVERSION: "6572",
|
|
|
|
|
|
CVERSION: "6.5.7.2",
|
|
|
|
|
|
HTTPS_STATUS: 2,
|
|
|
|
|
|
VERSION_EXT: true,
|
|
|
|
|
|
iBaseTask: 0,
|
|
|
|
|
|
timeThreshold: 5,
|
|
|
|
|
|
Priority: 0,
|
|
|
|
|
|
blIslocal: true,
|
|
|
|
|
|
Iframes: [],
|
|
|
|
|
|
ItemDatas: {},
|
|
|
|
|
|
PageData: {},
|
|
|
|
|
|
defStyleJson: {},
|
|
|
|
|
|
PageDataEx: {},
|
|
|
|
|
|
ItemCNameStyles: {},
|
|
|
|
|
|
blWorking: false,
|
|
|
|
|
|
blNormalItemAdded: false,
|
|
|
|
|
|
blTmpSelectedIndex: null,
|
|
|
|
|
|
Caption: null,
|
|
|
|
|
|
Color: null,
|
|
|
|
|
|
CompanyName: null,
|
|
|
|
|
|
strBroadcastMS: null,
|
|
|
|
|
|
Border: null,
|
|
|
|
|
|
Inbrowse: null,
|
|
|
|
|
|
webskt: null,
|
|
|
|
|
|
SocketEnable: false,
|
|
|
|
|
|
SocketOpened: false,
|
|
|
|
|
|
NoClearAfterPrint: false,
|
|
|
|
|
|
On_Return_Remain: false,
|
|
|
|
|
|
On_Broadcast_Remain: false,
|
|
|
|
|
|
On_Return: null,
|
|
|
|
|
|
Result: null,
|
|
|
|
|
|
iTrySendTimes: 0,
|
|
|
|
|
|
OBO_Mode: 1,
|
|
|
|
|
|
blOneByone: false,
|
|
|
|
|
|
DelimChar: "\f\f",
|
|
|
|
|
|
Printers: {
|
|
|
|
|
|
"default": "1",
|
|
|
|
|
|
"list":[]
|
|
|
|
|
|
},
|
|
|
|
|
|
altMessageWebSocketInvalid: "WebSocket没准备好,点确定继续...",
|
|
|
|
|
|
altMessageNoReadWriteFile: "不能远程读写文件!",
|
|
|
|
|
|
altMessageNoReadFile: "不能远程读文件!",
|
|
|
|
|
|
altMessageNoWriteFile: "不能远程写文件!",
|
|
|
|
|
|
altMessageNoPrintDesign: "不能远程打印设计!",
|
|
|
|
|
|
altMessageNoPrintSetup: "不能远程打印维护!",
|
|
|
|
|
|
altMessageSomeWindowExist: "有窗口已打开,先关闭它(持续如此时请刷新页面)!",
|
|
|
|
|
|
altMessageBusy: "上一个请求正忙,请稍后再试!",
|
|
|
|
|
|
Browser: (function() {
|
|
|
|
|
|
// #ifdef APP-PLUS
|
|
|
|
|
|
navigator = {
|
|
|
|
|
|
userAgent: `Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Mobile Safari/537.36`
|
|
|
|
|
|
};
|
|
|
|
|
|
// #endif
|
|
|
|
|
|
var ua = navigator.userAgent;
|
|
|
|
|
|
var isOpera = Object.prototype.toString.call(window.opera) == "[object Opera]";
|
|
|
|
|
|
return {
|
|
|
|
|
|
IE: !!window.attachEvent && !isOpera,
|
|
|
|
|
|
Opera: isOpera,
|
|
|
|
|
|
WebKit: ua.indexOf("AppleWebKit/") > -1,
|
|
|
|
|
|
Gecko: ua.indexOf("Gecko") > -1 && ua.indexOf("KHTML") === -1,
|
|
|
|
|
|
MobileSafari: /Apple.*Mobile/.test(ua)
|
|
|
|
|
|
}
|
|
|
|
|
|
})(),
|
|
|
|
|
|
GetTaskID: function() {
|
|
|
|
|
|
if (!this.strTaskID || this.strTaskID == "") {
|
|
|
|
|
|
var dt = new Date();
|
|
|
|
|
|
this.iBaseTask++;
|
|
|
|
|
|
this.strTaskID = "" + dt.getHours() + dt.getMinutes() + dt.getSeconds() + "_" + this.iBaseTask;
|
|
|
|
|
|
}
|
|
|
|
|
|
return this.strWebPageID + this.strTaskID;
|
|
|
|
|
|
},
|
|
|
|
|
|
DoInit: function() {
|
|
|
|
|
|
if (process.env.NODE_ENV === 'development') {
|
|
|
|
|
|
//开发环境
|
|
|
|
|
|
CLODOP.Printers.list = printListDev
|
|
|
|
|
|
} else {
|
|
|
|
|
|
//生产环境
|
|
|
|
|
|
CLODOP.Printers.list = printListOnline
|
|
|
|
|
|
}
|
|
|
|
|
|
this.strTaskID = "";
|
|
|
|
|
|
if (this.NoClearAfterPrint) return;
|
|
|
|
|
|
this.ItemDatas = {
|
|
|
|
|
|
"count": 0
|
|
|
|
|
|
};
|
|
|
|
|
|
this.PageData = {};
|
|
|
|
|
|
this.ItemCNameStyles = {};
|
|
|
|
|
|
this.defStyleJson = {
|
|
|
|
|
|
"beginpage": 0,
|
|
|
|
|
|
"beginpagea": 0
|
|
|
|
|
|
};
|
|
|
|
|
|
this.blNormalItemAdded = false;
|
|
|
|
|
|
// win.CLODOP.OpenWebSocket();
|
|
|
|
|
|
},
|
|
|
|
|
|
OpenWebSocket: function(rest) {
|
|
|
|
|
|
// #ifdef APP-PLUS
|
|
|
|
|
|
if (window.On_CLodop_Opened) {
|
|
|
|
|
|
if (CLODOP.Priority == window.CLODOP_OK_Priority) setTimeout("window.On_CLodop_Opened(CLODOP)", 1);
|
|
|
|
|
|
}
|
|
|
|
|
|
// #endif
|
|
|
|
|
|
if (!window.WebSocket && !window.MozWebSocket) {
|
|
|
|
|
|
if (window.On_CLodop_Opened) {
|
|
|
|
|
|
if (CLODOP.Priority == window.CLODOP_OK_Priority) setTimeout("window.On_CLodop_Opened(CLODOP)", 1);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
console.log(this.webskt)
|
|
|
|
|
|
console.log(CLODOP.wsHostURI)
|
|
|
|
|
|
console.log(rest)
|
|
|
|
|
|
let ip = uni.getStorageSync('fl_ip') || '192.168.1.56';
|
|
|
|
|
|
let wsHostURI = `ws://${ip}:8000/c_webskt/`
|
|
|
|
|
|
this.SocketEnable = true;
|
|
|
|
|
|
try {
|
|
|
|
|
|
if (!this.webskt || this.webskt.readyState == 3 || rest) {
|
|
|
|
|
|
console.log('链接')
|
|
|
|
|
|
if (!window.WebSocket && window.MozWebSocket) window.WebSocket = window.MozWebSocket;
|
|
|
|
|
|
this.webskt = uni.connectSocket({
|
|
|
|
|
|
url: wsHostURI,
|
|
|
|
|
|
success: res => {
|
|
|
|
|
|
console.info(res);
|
|
|
|
|
|
console.log('链接成功')
|
|
|
|
|
|
},
|
|
|
|
|
|
fail: res => {
|
|
|
|
|
|
console.info(res);
|
|
|
|
|
|
console.log('链接失败')
|
|
|
|
|
|
},
|
|
|
|
|
|
complete: res => {
|
|
|
|
|
|
console.info(res);
|
|
|
|
|
|
console.log('链接完成')
|
|
|
|
|
|
}
|
|
|
|
|
|
});
|
|
|
|
|
|
console.log(this.webskt)
|
|
|
|
|
|
this.webskt.onOpen(function(e) {
|
|
|
|
|
|
CLODOP.SocketOpened = true;
|
|
|
|
|
|
if (window.On_CLodop_Opened) {
|
|
|
|
|
|
if (CLODOP.Priority == window.CLODOP_OK_Priority) setTimeout(window.On_CLodop_Opened(CLODOP), 10000);
|
|
|
|
|
|
}
|
|
|
|
|
|
});
|
|
|
|
|
|
this.webskt.onMessage(function(e) {
|
|
|
|
|
|
console.log(e);
|
|
|
|
|
|
CLODOP.resultHandle(e.data);
|
|
|
|
|
|
});
|
|
|
|
|
|
this.webskt.onClose(function(e) {
|
|
|
|
|
|
if (!CLODOP.SocketOpened) {
|
|
|
|
|
|
CLODOP.SocketEnable = false;
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
// setTimeout(CLODOP.OpenWebSocket(), 2000);
|
|
|
|
|
|
});
|
|
|
|
|
|
this.webskt.onError(function(e) {
|
|
|
|
|
|
console.info(e);
|
|
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
} catch (err) {
|
|
|
|
|
|
this.webskt = null;
|
|
|
|
|
|
if (err.message.indexOf("SecurityError") > -1)
|
|
|
|
|
|
this.SocketEnable = false;
|
|
|
|
|
|
else
|
|
|
|
|
|
setTimeout(()=>{
|
|
|
|
|
|
CLODOP.OpenWebSocket()
|
|
|
|
|
|
}, 2000);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
resultHandle: function(data) {
|
|
|
|
|
|
CLODOP.blOneByone = false;
|
|
|
|
|
|
var strResult = data;
|
|
|
|
|
|
CLODOP.Result = strResult;
|
|
|
|
|
|
try {
|
|
|
|
|
|
var strFTaskID = null;
|
|
|
|
|
|
var iPos = strResult.indexOf("=");
|
|
|
|
|
|
if (iPos >= 0 && iPos < 30) {
|
|
|
|
|
|
strFTaskID = strResult.slice(0, iPos);
|
|
|
|
|
|
strResult = strResult.slice(iPos + 1);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (strFTaskID.indexOf("ErrorMS") > -1) {
|
|
|
|
|
|
console.info(strResult);
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
if (strFTaskID.indexOf("BroadcastMS") > -1) {
|
|
|
|
|
|
CLODOP.strBroadcastMS = strResult;
|
|
|
|
|
|
if (CLODOP.On_Broadcast) {
|
|
|
|
|
|
var selfFunc = CLODOP.On_Broadcast;
|
|
|
|
|
|
CLODOP.On_Broadcast(strResult);
|
|
|
|
|
|
if (!CLODOP.On_Broadcast_Remain && selfFunc === CLODOP.On_Broadcast)
|
|
|
|
|
|
CLODOP.On_Broadcast = null;
|
|
|
|
|
|
}
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
if (CLODOP.On_Return) {
|
|
|
|
|
|
var selfFunc = CLODOP.On_Return;
|
|
|
|
|
|
if ((strResult.toLowerCase() == "true") || (strResult.toLowerCase() == "false"))
|
|
|
|
|
|
CLODOP.On_Return(strFTaskID, strResult.toLowerCase() == "true");
|
|
|
|
|
|
else
|
|
|
|
|
|
CLODOP.On_Return(strFTaskID, strResult);
|
|
|
|
|
|
if (!CLODOP.On_Return_Remain && selfFunc === CLODOP.On_Return) CLODOP.On_Return = null;
|
|
|
|
|
|
}
|
|
|
|
|
|
} catch (err) {
|
|
|
|
|
|
console.log(err);
|
|
|
|
|
|
};
|
|
|
|
|
|
},
|
|
|
|
|
|
wsSend: function(strData) {
|
|
|
|
|
|
console.log(strData);
|
|
|
|
|
|
console.log(this.webskt);
|
|
|
|
|
|
console.log(this.wsHostURI);
|
|
|
|
|
|
if (this.webskt && this.webskt.readyState == 1) {
|
|
|
|
|
|
this.Result = null;
|
|
|
|
|
|
this.iTrySendTimes = 0;
|
|
|
|
|
|
this.webskt.send({
|
|
|
|
|
|
data: strData,
|
|
|
|
|
|
success: res => {
|
|
|
|
|
|
console.info(res);
|
|
|
|
|
|
},
|
|
|
|
|
|
fail: res => {
|
|
|
|
|
|
console.info(res);
|
|
|
|
|
|
}
|
|
|
|
|
|
});
|
|
|
|
|
|
return true;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
this.iTrySendTimes++;
|
|
|
|
|
|
console.log(this.iTrySendTimes);
|
|
|
|
|
|
if (this.iTrySendTimes <= 1) {
|
|
|
|
|
|
this.OpenWebSocket();
|
|
|
|
|
|
setTimeout(()=>{
|
|
|
|
|
|
CLODOP.wsSend(strData)
|
|
|
|
|
|
}, 1000);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
FORMAT: function(oType, oValue) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (oType !== undefined && oValue !== undefined) {
|
|
|
|
|
|
if (oType.replace(/^\s+|\s+$/g, "").toLowerCase().indexOf("time:") == 0) {
|
|
|
|
|
|
oType = oType.replace(/^\s+|\s+$/g, "").slice(5);
|
|
|
|
|
|
if (oValue.toLowerCase().indexOf("now") > -1) oValue = (new Date()).toString();
|
|
|
|
|
|
if (oValue.toLowerCase().indexOf("date") > -1) oValue = (new Date()).toString();
|
|
|
|
|
|
if (oValue.toLowerCase().indexOf("time") > -1) oValue = (new Date()).toString();
|
|
|
|
|
|
var TypeYMD = "ymd";
|
|
|
|
|
|
if (oValue.toLowerCase().indexOf("ymd") > -1) {
|
|
|
|
|
|
TypeYMD = "ymd";
|
|
|
|
|
|
oValue = oValue.slice(3);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (oValue.toLowerCase().indexOf("dmy") > -1) {
|
|
|
|
|
|
TypeYMD = "dmy";
|
|
|
|
|
|
oValue = oValue.slice(3);
|
|
|
|
|
|
}
|
|
|
|
|
|
if (oValue.toLowerCase().indexOf("mdy") > -1) {
|
|
|
|
|
|
TypeYMD = "mdy";
|
|
|
|
|
|
oValue = oValue.slice(3);
|
|
|
|
|
|
}
|
|
|
|
|
|
oValue = oValue.replace(/ [^ ]*\+[^ ]* /g, " ");
|
|
|
|
|
|
oValue = oValue.replace(/\(.*\)/g, " ");
|
|
|
|
|
|
oValue = oValue.replace(/星期日|星期一|星期二|星期三|星期四|星期五|星期六/g, " ");
|
|
|
|
|
|
oValue = oValue.replace(/[A-Za-z]+day|Mon|Tue|Wed|Thu|Fri|Sat|Sun/g, " ");
|
|
|
|
|
|
var aMonth = 0;
|
|
|
|
|
|
var exp = new RegExp("Oct[A-Za-z]*|十月|10月", "i");
|
|
|
|
|
|
if (oValue.match(exp) !== null) {
|
|
|
|
|
|
aMonth = 10;
|
|
|
|
|
|
oValue = oValue.replace(exp, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
exp = new RegExp("Nov[A-Za-z]*|十一月|11月", "i");
|
|
|
|
|
|
if (oValue.match(exp) !== null) {
|
|
|
|
|
|
aMonth = 11;
|
|
|
|
|
|
oValue = oValue.replace(exp, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
exp = new RegExp("Dec[A-Za-z]*|十二月|12月", "i");
|
|
|
|
|
|
if (oValue.match(exp) !== null) {
|
|
|
|
|
|
aMonth = 12;
|
|
|
|
|
|
oValue = oValue.replace(exp, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
exp = new RegExp("Jan[A-Za-z]*|一月|01月|1月", "i");
|
|
|
|
|
|
if (oValue.match(exp) !== null) {
|
|
|
|
|
|
aMonth = 1;
|
|
|
|
|
|
oValue = oValue.replace(exp, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
exp = new RegExp("Feb[A-Za-z]*|二月|02月|2月", "i");
|
|
|
|
|
|
if (oValue.match(exp) !== null) {
|
|
|
|
|
|
aMonth = 2;
|
|
|
|
|
|
oValue = oValue.replace(exp, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
exp = new RegExp("Mar[A-Za-z]*|三月|03月|3月", "i");
|
|
|
|
|
|
if (oValue.match(exp) !== null) {
|
|
|
|
|
|
aMonth = 3;
|
|
|
|
|
|
oValue = oValue.replace(exp, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
exp = new RegExp("Apr[A-Za-z]*|四月|04月|4月", "i");
|
|
|
|
|
|
if (oValue.match(exp) !== null) {
|
|
|
|
|
|
aMonth = 4;
|
|
|
|
|
|
oValue = oValue.replace(exp, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
exp = new RegExp("May[A-Za-z]*|五月|05月|5月", "i");
|
|
|
|
|
|
if (oValue.match(exp) !== null) {
|
|
|
|
|
|
aMonth = 5;
|
|
|
|
|
|
oValue = oValue.replace(exp, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
exp = new RegExp("Jun[A-Za-z]*|六月|06月|6月", "i");
|
|
|
|
|
|
if (oValue.match(exp) !== null) {
|
|
|
|
|
|
aMonth = 6;
|
|
|
|
|
|
oValue = oValue.replace(exp, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
exp = new RegExp("Jul[A-Za-z]*|七月|07月|7月", "i");
|
|
|
|
|
|
if (oValue.match(exp) !== null) {
|
|
|
|
|
|
aMonth = 7;
|
|
|
|
|
|
oValue = oValue.replace(exp, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
exp = new RegExp("Aug[A-Za-z]*|八月|08月|8月", "i");
|
|
|
|
|
|
if (oValue.match(exp) !== null) {
|
|
|
|
|
|
aMonth = 8;
|
|
|
|
|
|
oValue = oValue.replace(exp, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
exp = new RegExp("Sep[A-Za-z]*|九月|09月|9月", "i");
|
|
|
|
|
|
if (oValue.match(exp) !== null) {
|
|
|
|
|
|
aMonth = 9;
|
|
|
|
|
|
oValue = oValue.replace(exp, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
oValue = oValue.replace(/日|秒/g, " ");
|
|
|
|
|
|
oValue = oValue.replace(/时|分/g, ":");
|
|
|
|
|
|
var subTime = oValue.match(/ \d+:\d+:\d+/);
|
|
|
|
|
|
if (subTime == null) subTime = "";
|
|
|
|
|
|
oValue = oValue.replace(/ \d+:\d+:\d+/, "") + subTime;
|
|
|
|
|
|
var dValue = new Date();
|
|
|
|
|
|
var iYear = 0;
|
|
|
|
|
|
var iMonth = 0;
|
|
|
|
|
|
var iDate = 0;
|
|
|
|
|
|
var iHour = 0;
|
|
|
|
|
|
var iMinutes = 0;
|
|
|
|
|
|
var iSecond = 0;
|
|
|
|
|
|
var tmpValue = oValue;
|
|
|
|
|
|
var sValue = "";
|
|
|
|
|
|
var MC1 = 0;
|
|
|
|
|
|
MC2 = 0;
|
|
|
|
|
|
MC3 = 0;
|
|
|
|
|
|
sValue = tmpValue.match(/\d+/);
|
|
|
|
|
|
if (sValue !== null) {
|
|
|
|
|
|
MC1 = parseInt(sValue[0]);
|
|
|
|
|
|
tmpValue = tmpValue.replace(/\d+/, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
sValue = tmpValue.match(/\d+/);
|
|
|
|
|
|
if (sValue !== null) {
|
|
|
|
|
|
MC2 = parseInt(sValue[0]);
|
|
|
|
|
|
tmpValue = tmpValue.replace(/\d+/, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
if (aMonth <= 0) {
|
|
|
|
|
|
sValue = tmpValue.match(/\d+/);
|
|
|
|
|
|
if (sValue !== null) {
|
|
|
|
|
|
MC3 = parseInt(sValue[0]);
|
|
|
|
|
|
tmpValue = tmpValue.replace(/\d+/, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
if (aMonth > 0) {
|
|
|
|
|
|
iMonth = aMonth;
|
|
|
|
|
|
if (MC2 <= 31) {
|
|
|
|
|
|
iYear = MC1;
|
|
|
|
|
|
iDate = MC2;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
iYear = MC2;
|
|
|
|
|
|
iDate = MC1;
|
|
|
|
|
|
}
|
|
|
|
|
|
} else
|
|
|
|
|
|
if (TypeYMD == "dmy") {
|
|
|
|
|
|
iDate = MC1;
|
|
|
|
|
|
iMonth = MC2;
|
|
|
|
|
|
iYear = MC3;
|
|
|
|
|
|
} else
|
|
|
|
|
|
if (TypeYMD == "mdy") {
|
|
|
|
|
|
iMonth = MC1;
|
|
|
|
|
|
iDate = MC2;
|
|
|
|
|
|
iYear = MC3;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
iYear = MC1;
|
|
|
|
|
|
iMonth = MC2;
|
|
|
|
|
|
iDate = MC3;
|
|
|
|
|
|
if (MC3 > 31) {
|
|
|
|
|
|
iYear = MC3;
|
|
|
|
|
|
iMonth = MC1;
|
|
|
|
|
|
iDate = MC2;
|
|
|
|
|
|
if (MC1 > 12) {
|
|
|
|
|
|
iDate = MC1;
|
|
|
|
|
|
iMonth = MC2
|
|
|
|
|
|
};
|
|
|
|
|
|
} else {
|
|
|
|
|
|
if (MC2 > 12) {
|
|
|
|
|
|
iYear = MC2;
|
|
|
|
|
|
iMonth = MC1;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
var sValue = tmpValue.match(/\d+/);
|
|
|
|
|
|
if (sValue !== null) {
|
|
|
|
|
|
iHour = parseInt(sValue[0]);
|
|
|
|
|
|
tmpValue = tmpValue.replace(/\d+/, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
var sValue = tmpValue.match(/\d+/);
|
|
|
|
|
|
if (sValue !== null) {
|
|
|
|
|
|
iMinutes = parseInt(sValue[0]);
|
|
|
|
|
|
tmpValue = tmpValue.replace(/\d+/, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
var sValue = tmpValue.match(/\d+/);
|
|
|
|
|
|
if (sValue !== null) {
|
|
|
|
|
|
iSecond = parseInt(sValue[0]);
|
|
|
|
|
|
tmpValue = tmpValue.replace(/\d+/, "");
|
|
|
|
|
|
}
|
|
|
|
|
|
if (oType.toLowerCase() == "isvalidformat")
|
|
|
|
|
|
oValue = (iYear > 0 && iMonth > 0 && iMonth <= 12 && iDate > 0 && iDate <= 31);
|
|
|
|
|
|
else {
|
|
|
|
|
|
if (("" + iYear).length < 4) iYear = iYear + 2000;
|
|
|
|
|
|
dValue.setFullYear(iYear, iMonth - 1, iDate);
|
|
|
|
|
|
dValue.setHours(iHour);
|
|
|
|
|
|
dValue.setMinutes(iMinutes);
|
|
|
|
|
|
dValue.setSeconds(iSecond);
|
|
|
|
|
|
var iDay = dValue.getDay();
|
|
|
|
|
|
if (oType.toLowerCase() == "weekindex")
|
|
|
|
|
|
oValue = iDay;
|
|
|
|
|
|
else
|
|
|
|
|
|
if (oType.toLowerCase() == "floatvalue")
|
|
|
|
|
|
oValue = dValue.getTime();
|
|
|
|
|
|
else {
|
|
|
|
|
|
var sWeek = "";
|
|
|
|
|
|
switch (iDay) {
|
|
|
|
|
|
case 0:
|
|
|
|
|
|
sWeek = "日";
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 1:
|
|
|
|
|
|
sWeek = "一";
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 2:
|
|
|
|
|
|
sWeek = "二";
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 3:
|
|
|
|
|
|
sWeek = "三";
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 4:
|
|
|
|
|
|
sWeek = "四";
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 5:
|
|
|
|
|
|
sWeek = "五";
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 6:
|
|
|
|
|
|
sWeek = "六";
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
oValue = oType.replace(/dddd/ig, "星期" + sWeek);
|
|
|
|
|
|
if (/(y+)/i.test(oValue)) oValue = oValue.replace(RegExp.$1, (iYear + "").substr(4 - RegExp.$1.length));
|
|
|
|
|
|
if (/(m+:)/i.test(oValue)) oValue = oValue.replace(RegExp.$1, ("00" + iMinutes + ":").substr(("00" + iMinutes +
|
|
|
|
|
|
":").length - RegExp.$1.length));
|
|
|
|
|
|
if (/(M+)/i.test(oValue)) {
|
|
|
|
|
|
var dsWidth = ("" + iMonth).length > RegExp.$1.length ? ("" + iMonth).length : RegExp.$1.length;
|
|
|
|
|
|
oValue = oValue.replace(RegExp.$1, ("00" + iMonth).substr(("00" + iMonth).length - dsWidth));
|
|
|
|
|
|
}
|
|
|
|
|
|
if (/(d+)/i.test(oValue)) {
|
|
|
|
|
|
var dsWidth = ("" + iDate).length > RegExp.$1.length ? ("" + iDate).length : RegExp.$1.length;
|
|
|
|
|
|
oValue = oValue.replace(RegExp.$1, ("00" + iDate).substr(("00" + iDate).length - dsWidth));
|
|
|
|
|
|
}
|
|
|
|
|
|
if (/(H+)/i.test(oValue)) oValue = oValue.replace(RegExp.$1, ("00" + iHour).substr(("00" + iHour).length -
|
|
|
|
|
|
RegExp.$1.length));
|
|
|
|
|
|
if (/(n+)/i.test(oValue)) oValue = oValue.replace(RegExp.$1, ("00" + iMinutes).substr(("00" + iMinutes).length -
|
|
|
|
|
|
RegExp.$1.length));
|
|
|
|
|
|
if (/(s+)/i.test(oValue)) oValue = oValue.replace(RegExp.$1, ("00" + iSecond).substr(("00" + iSecond).length -
|
|
|
|
|
|
RegExp.$1.length));
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
if (CLODOP.On_Return) {
|
|
|
|
|
|
var selfFunc = CLODOP.On_Return;
|
|
|
|
|
|
CLODOP.On_Return(0, oValue);
|
|
|
|
|
|
if (!CLODOP.On_Return_Remain && selfFunc === CLODOP.On_Return) CLODOP.On_Return = null;
|
|
|
|
|
|
}
|
|
|
|
|
|
return oValue;
|
|
|
|
|
|
} else
|
|
|
|
|
|
if (this.blIslocal || oType.indexOf("FILE:") < 0) {
|
|
|
|
|
|
this.PageData["format_type"] = oType;
|
|
|
|
|
|
this.PageData["format_value"] = oValue;
|
|
|
|
|
|
if (this.DoPostDatas("format") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
} else console.info(this.altMessageNoReadWriteFile)
|
|
|
|
|
|
}
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_PRINT_PAPER: function(Top, Left, Width, Height, strPrintTask) {
|
|
|
|
|
|
return this.PRINT_INITA(Top, Left, Width, Height, strPrintTask);
|
|
|
|
|
|
},
|
|
|
|
|
|
PRINT_INIT: function(strPrintTask,host) {
|
|
|
|
|
|
this.wsHostURI = `ws://${host}:8000/c_webskt/`;
|
|
|
|
|
|
return this.PRINT_INITA(null, null, null, null, strPrintTask);
|
|
|
|
|
|
},
|
|
|
|
|
|
PRINT_INITA: function(Top, Left, Width, Height, strPrintTask) {
|
|
|
|
|
|
if (Top === undefined || Top === null) Top = "";
|
|
|
|
|
|
if (Left === undefined || Left === null) Left = "";
|
|
|
|
|
|
if (Width === undefined || Width === null) Width = "";
|
|
|
|
|
|
if (Height === undefined || Height === null) Height = "";
|
|
|
|
|
|
if (strPrintTask === undefined || strPrintTask === null) strPrintTask = "";
|
|
|
|
|
|
this.NoClearAfterPrint = false;
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.PageData["top"] = Top;
|
|
|
|
|
|
this.PageData["left"] = Left;
|
|
|
|
|
|
this.PageData["width"] = Width;
|
|
|
|
|
|
this.PageData["height"] = Height;
|
|
|
|
|
|
this.PageData["printtask"] = strPrintTask;
|
|
|
|
|
|
return true;
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_PRINT_MODE: function(strModeType, ModeValue) {
|
|
|
|
|
|
if (strModeType === undefined || strModeType === null) strModeType = "";
|
|
|
|
|
|
if (ModeValue === undefined || ModeValue === null) ModeValue = "";
|
|
|
|
|
|
if (strModeType === "") return false;
|
|
|
|
|
|
strModeType = strModeType.toLowerCase();
|
|
|
|
|
|
this.PageData[strModeType] = ModeValue;
|
|
|
|
|
|
if (strModeType == "noclear_after_print") this.NoClearAfterPrint = ModeValue;
|
|
|
|
|
|
if (strModeType.indexOf("window_def") > -1 || strModeType.indexOf("control_printer") > -1) {
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (this.DoPostDatas("onlysetprint") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_TEXT: function(top, left, width, height, strText) {
|
|
|
|
|
|
return this.AddItemArray(2, top, left, width, height, strText);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_TEXTA: function(itemName, top, left, width, height, strText) {
|
|
|
|
|
|
return this.AddItemArray(2, top, left, width, height, strText, itemName);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_HTM: function(top, left, width, height, strHTML) {
|
|
|
|
|
|
return this.AddItemArray(4, top, left, width, height, strHTML);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_HTML: function(top, left, width, height, strHTML) {
|
|
|
|
|
|
return this.AddItemArray(1, top, left, width, height, strHTML);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_HTMLA: function(itemName, top, left, width, height, strHTML) {
|
|
|
|
|
|
return this.AddItemArray(1, top, left, width, height, strHTML, itemName);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_BARCODE: function(top, left, width, height, BarType, BarValue) {
|
|
|
|
|
|
return this.AddItemArray(9, top, left, width, height, BarValue, null, null, null, null, null, null, BarType);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_BARCODEA: function(ItemName, top, left, width, height, BarType, BarValue) {
|
|
|
|
|
|
return this.AddItemArray(9, top, left, width, height, BarValue, ItemName, null, null, null, null, null, BarType);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_RECTA: function(top, left, width, height, intPenStyle, intPenWidth, intColor) {
|
|
|
|
|
|
return this.AddItemArray(3, top, left, width, height, null, null, 2, intPenStyle, intPenWidth, intColor, null);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_RECT: function(top, left, width, height, intPenStyle, intPenWidth) {
|
|
|
|
|
|
return this.AddItemArray(3, top, left, width, height, null, null, 2, intPenStyle, intPenWidth, null, null);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_ELLIPSEA: function(top, left, width, height, intPenStyle, intPenWidth, intColor) {
|
|
|
|
|
|
return this.AddItemArray(3, top, left, width, height, null, null, 3, intPenStyle, intPenWidth, intColor, null);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_ELLIPSE: function(top, left, width, height, intPenStyle, intPenWidth) {
|
|
|
|
|
|
return this.AddItemArray(3, top, left, width, height, null, null, 3, intPenStyle, intPenWidth, null, null);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_SHAPE: function(ShapeType, top, left, width, height, intPenStyle, intPenWidth, intColor) {
|
|
|
|
|
|
return this.AddItemArray(3, top, left, width, height, null, null, ShapeType, intPenStyle, intPenWidth, intColor,
|
|
|
|
|
|
null);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_LINE: function(top1, left1, top2, left2, intPenStyle, intPenWidth) {
|
|
|
|
|
|
return this.AddItemArray(3, top1, left1, top2, left2, null, null, 0, intPenStyle, intPenWidth, null, "1");
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_DNLINE: function(Top, Left, Width, Height, intPenStyle, intPenWidth) {
|
|
|
|
|
|
return this.AddItemArray(3, Top, Left, Width, Height, null, null, 1, intPenStyle, intPenWidth, null, null);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_DNLINEA: function(Top, Left, Width, Height, intPenStyle, intPenWidth, intColor) {
|
|
|
|
|
|
return this.AddItemArray(3, Top, Left, Width, Height, null, null, 1, intPenStyle, intPenWidth, intColor, null);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_UPLINE: function(Top, Left, Width, Height, intPenStyle, intPenWidth) {
|
|
|
|
|
|
return this.AddItemArray(3, Top, Left, Width, Height, null, null, 0, intPenStyle, intPenWidth, null, null);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_UPLINEA: function(Top, Left, Width, Height, intPenStyle, intPenWidth, intColor) {
|
|
|
|
|
|
return this.AddItemArray(3, Top, Left, Width, Height, null, null, 0, intPenStyle, intPenWidth, intColor, null);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_TABLE: function(top, left, width, height, strHTML) {
|
|
|
|
|
|
return this.AddItemArray(6, top, left, width, height, strHTML);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_PDF: function(top,left,width,height,strContent) {
|
|
|
|
|
|
if (!this.blIslocal && strContent[1]==":")
|
|
|
|
|
|
alert("Unable to print or view remote service files");
|
|
|
|
|
|
else
|
|
|
|
|
|
return this.AddItemArray(11,top,left,width,height,strContent);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_TBURL: function(top, left, width, height, strURL) {
|
|
|
|
|
|
return this.AddItemArray(7, top, left, width, height, strURL);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_URL: function(top, left, width, height, strURL) {
|
|
|
|
|
|
return this.AddItemArray(5, top, left, width, height, strURL);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_IMAGE: function(top, left, width, height, strHTML) {
|
|
|
|
|
|
return this.AddItemArray(8, top, left, width, height, strHTML);
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_CHART: function(top, left, width, height, strChartTypess, strHTML) {
|
|
|
|
|
|
return this.AddItemArray(10, top, left, width, height, strHTML, null, null, null, null, null, null, null,
|
|
|
|
|
|
strChartTypess);
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
|
|
SET_PRINT_PROPERTY: function(ItemNO, intPageType, intHorzOrient, intVertOrient) {
|
|
|
|
|
|
this.SET_PRINT_STYLEA(ItemNO, "ItemType", intPageType);
|
|
|
|
|
|
this.SET_PRINT_STYLEA(ItemNO, "HOrient", intHorzOrient);
|
|
|
|
|
|
this.SET_PRINT_STYLEA(ItemNO, "VOrient", intVertOrient);
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_PRINT_PROPERTYA: function(ItemName, intPageType, intHorzOrient, intVertOrient) {
|
|
|
|
|
|
this.SET_PRINT_PROPERTY(ItemName, intPageType, intHorzOrient, intVertOrient);
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_PRINT_STYLE: function(strStyleName, StyleValue) {
|
|
|
|
|
|
if (strStyleName === undefined || strStyleName === null) strStyleName = "";
|
|
|
|
|
|
if (StyleValue === undefined || StyleValue === null) StyleValue = "";
|
|
|
|
|
|
if (strStyleName === "") return false;
|
|
|
|
|
|
strStyleName = strStyleName.toLowerCase();
|
|
|
|
|
|
this.defStyleJson[strStyleName] = StyleValue;
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_PRINT_STYLEA: function(ItemNo, strKey, Value) {
|
|
|
|
|
|
if (ItemNo === undefined || ItemNo === null) ItemNo = "";
|
|
|
|
|
|
if (strKey === undefined || strKey === null) strKey = "";
|
|
|
|
|
|
if (Value === undefined || Value === null) Value = "";
|
|
|
|
|
|
if (ItemNo === "" || strKey === "") return false;
|
|
|
|
|
|
if (this.ItemDatas["count"] <= 0) {
|
|
|
|
|
|
if (this.PageData["add_print_program_data"] !== undefined) {
|
|
|
|
|
|
this.ItemCNameStyles[strKey.toLowerCase() + "-" + ItemNo] = Value;
|
|
|
|
|
|
return true;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
strKey = strKey.toLowerCase();
|
|
|
|
|
|
if (strKey == "type") return false;
|
|
|
|
|
|
var blResult = false;
|
|
|
|
|
|
if (ItemNo == 0) {
|
|
|
|
|
|
ItemNo = this.ItemDatas["count"];
|
|
|
|
|
|
}
|
|
|
|
|
|
for (var vItemNO in this.ItemDatas) {
|
|
|
|
|
|
var ItemName = this.ItemDatas[vItemNO]["itemname"];
|
|
|
|
|
|
if ((ItemNo == vItemNO) || (ItemNo == ItemName) || ((typeof ItemNo === "string") && (typeof ItemName ===
|
|
|
|
|
|
"string") && (ItemNo.toUpperCase() == ItemName.toUpperCase()))) {
|
|
|
|
|
|
this.ItemDatas[vItemNO][strKey] = Value;
|
|
|
|
|
|
blResult = true;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
if (blResult) return true;
|
|
|
|
|
|
return false;
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_PRINT_TEXT_STYLE: function(ItemNO, strFontName, intSize, intBold, intItalic, intUnderline, intAlignment) {
|
|
|
|
|
|
this.SET_PRINT_STYLEA(ItemNO, "fontname", strFontName);
|
|
|
|
|
|
this.SET_PRINT_STYLEA(ItemNO, "fontsize", intSize);
|
|
|
|
|
|
this.SET_PRINT_STYLEA(ItemNO, "bold", intBold);
|
|
|
|
|
|
this.SET_PRINT_STYLEA(ItemNO, "italic", intItalic);
|
|
|
|
|
|
this.SET_PRINT_STYLEA(ItemNO, "underline", intUnderline);
|
|
|
|
|
|
this.SET_PRINT_STYLEA(ItemNO, "alignment", intAlignment);
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_PRINT_TEXT_STYLEA: function(ItemNO, strFontName, intSize, intBold, intItalic, intUnderline, intAlignment, Color) {
|
|
|
|
|
|
this.SET_PRINT_TEXT_STYLE(ItemNO, strFontName, intSize, intBold, intItalic, intUnderline, intAlignment);
|
|
|
|
|
|
this.SET_PRINT_STYLEA(ItemNO, "fontcolor", Color);
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_PRINT_TEXT_STYLEB: function(ItemNO, strFontName, intSize, intBold, intItalic, intUnderline, intAlignment, Color) {
|
|
|
|
|
|
this.SET_PRINT_TEXT_STYLEA(ItemNO, strFontName, intSize, intBold, intItalic, intUnderline, intAlignment, Color);
|
|
|
|
|
|
},
|
|
|
|
|
|
NEWPAGE: function() {
|
|
|
|
|
|
this.NewPage();
|
|
|
|
|
|
},
|
|
|
|
|
|
NewPage: function() {
|
|
|
|
|
|
var blSomeNormal = false;
|
|
|
|
|
|
var noItemType;
|
|
|
|
|
|
for (var vItemNO in this.ItemDatas) {
|
|
|
|
|
|
if (vItemNO == "count") noItemType = false;
|
|
|
|
|
|
else noItemType = true;
|
|
|
|
|
|
for (var vItemxx in this.ItemDatas[vItemNO]) {
|
|
|
|
|
|
if (vItemxx == "itemtype") {
|
|
|
|
|
|
noItemType = false;
|
|
|
|
|
|
if ((this.ItemDatas[vItemNO][vItemxx] == 0) || (this.ItemDatas[vItemNO][vItemxx] == 4)) {
|
|
|
|
|
|
blSomeNormal = true;
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
if (noItemType) blSomeNormal = true;
|
|
|
|
|
|
if (blSomeNormal) break;
|
|
|
|
|
|
}
|
|
|
|
|
|
if (blSomeNormal) this.defStyleJson["beginpage"] = this.defStyleJson["beginpage"] + 1;
|
|
|
|
|
|
},
|
|
|
|
|
|
NEWPAGEA: function() {
|
|
|
|
|
|
this.NewPageA();
|
|
|
|
|
|
},
|
|
|
|
|
|
NewPageA: function() {
|
|
|
|
|
|
var blSomeNormal = false;
|
|
|
|
|
|
var noItemType;
|
|
|
|
|
|
for (var vItemNO in this.ItemDatas) {
|
|
|
|
|
|
if (vItemNO == "count") noItemType = false;
|
|
|
|
|
|
else noItemType = true;
|
|
|
|
|
|
for (var vItemxx in this.ItemDatas[vItemNO]) {
|
|
|
|
|
|
if (vItemxx == "itemtype") {
|
|
|
|
|
|
noItemType = false;
|
|
|
|
|
|
if ((this.ItemDatas[vItemNO][vItemxx] == 0) || (this.ItemDatas[vItemNO][vItemxx] == 4)) {
|
|
|
|
|
|
blSomeNormal = true;
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
if (noItemType) blSomeNormal = true;
|
|
|
|
|
|
if (blSomeNormal) break;
|
|
|
|
|
|
}
|
|
|
|
|
|
if (blSomeNormal) this.defStyleJson["beginpagea"] = this.defStyleJson["beginpagea"] + 1;
|
|
|
|
|
|
},
|
|
|
|
|
|
PREVIEW: function(sView, iW, iH) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if ((!sView) && (this.blIslocal)) {
|
|
|
|
|
|
if (this.DoPostDatas("preview") == true) {
|
|
|
|
|
|
this.Result = null;
|
|
|
|
|
|
this.GetLastResult(true);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
} else {
|
|
|
|
|
|
if (this.DoPostDatas("cpreview") == true) {
|
|
|
|
|
|
this.DoCPreview(sView, iW, iH);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
PRINT: function(sView, iW, iH) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (this.DoPostDatas("print") == true)
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
GET_PRINTER_COUNT: function() {
|
|
|
|
|
|
if (this.Printers === undefined) return 0;
|
|
|
|
|
|
else {
|
|
|
|
|
|
return this.Printers["list"].length;
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
GET_PRINTER_NAME: function(intNO) {
|
|
|
|
|
|
if (this.Printers === undefined) return "";
|
|
|
|
|
|
else {
|
|
|
|
|
|
if (typeof intNO == "string" && intNO.indexOf(":") > -1) {
|
|
|
|
|
|
var strPPname = intNO.slice(intNO.indexOf(":") + 1);
|
|
|
|
|
|
intNO = intNO.slice(0, intNO.indexOf(":"));
|
|
|
|
|
|
if (intNO == -1)
|
|
|
|
|
|
return this.Printers["list"][this.Printers["default"]][strPPname];
|
|
|
|
|
|
else
|
|
|
|
|
|
return this.Printers["list"][intNO][strPPname];
|
|
|
|
|
|
} else {
|
|
|
|
|
|
if (intNO == -1)
|
|
|
|
|
|
return this.Printers["list"][this.Printers["default"]].name;
|
|
|
|
|
|
else
|
|
|
|
|
|
if (intNO >= 0 && intNO < this.Printers["list"].length)
|
|
|
|
|
|
return this.Printers["list"][intNO].name;
|
|
|
|
|
|
else return "Printer NO. overflow";
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
GET_PAGESIZES_LIST: function(PNameIndx, Split, ListName, NameOrID) {
|
|
|
|
|
|
if (!ListName) ListName = "pagelist";
|
|
|
|
|
|
if (!NameOrID) NameOrID = "name";
|
|
|
|
|
|
if (this.Printers === undefined) return "";
|
|
|
|
|
|
else {
|
|
|
|
|
|
if (PNameIndx == -1) PNameIndx = this.Printers["list"][this.Printers["default"]].name;
|
|
|
|
|
|
for (var intNO in this.Printers["list"]) {
|
|
|
|
|
|
if (PNameIndx == intNO || PNameIndx == this.Printers["list"][intNO].name) {
|
|
|
|
|
|
var strList = "";
|
|
|
|
|
|
for (var iPNO in this.Printers["list"][intNO][ListName]) {
|
|
|
|
|
|
if ((NameOrID == "id") && this.Printers["list"][intNO][ListName][iPNO].id) {
|
|
|
|
|
|
if (strList === "") strList = this.Printers["list"][intNO][ListName][iPNO].id;
|
|
|
|
|
|
else
|
|
|
|
|
|
strList = strList + Split + this.Printers["list"][intNO][ListName][iPNO].id;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
if (strList === "") strList = this.Printers["list"][intNO][ListName][iPNO].name;
|
|
|
|
|
|
else
|
|
|
|
|
|
strList = strList + Split + this.Printers["list"][intNO][ListName][iPNO].name;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
return strList;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
return "";
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_PRINTER_INDEX: function(strName, strKeyModeName) {
|
|
|
|
|
|
if (isNaN(strName)) {
|
|
|
|
|
|
this.PageData.printerindex = 1
|
|
|
|
|
|
} else{
|
|
|
|
|
|
this.PageData.printerindex = strName
|
|
|
|
|
|
}
|
|
|
|
|
|
return true;
|
|
|
|
|
|
if (this.Printers === undefined) return false;
|
|
|
|
|
|
else {
|
|
|
|
|
|
if (!strKeyModeName) strKeyModeName = "printerindex";
|
|
|
|
|
|
strName = strName + "";
|
|
|
|
|
|
strName = strName.replace(/^\s+|\s+$/g, "");
|
|
|
|
|
|
var iPos = strName.indexOf(",");
|
|
|
|
|
|
var strNameOrNO = strName;
|
|
|
|
|
|
if (iPos > -1) strNameOrNO = strName.slice(0, iPos);
|
|
|
|
|
|
if (strNameOrNO == "-1") {
|
|
|
|
|
|
this.PageData[strKeyModeName] = this.Printers["default"];
|
|
|
|
|
|
if (iPos > -1) this.PageData["printersubid"] = strName.slice(iPos + 1);
|
|
|
|
|
|
return true;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
for (var vNO in this.Printers["list"]) {
|
|
|
|
|
|
var strPrinterName = this.Printers["list"][vNO].name;
|
|
|
|
|
|
if (!strPrinterName) continue;
|
|
|
|
|
|
if ((strPrinterName.replace(/\\/g, "") == strNameOrNO.replace(/\\/g, "")) || (vNO == strNameOrNO)) {
|
|
|
|
|
|
this.PageData[strKeyModeName] = vNO;
|
|
|
|
|
|
if (iPos > -1) this.PageData["printersubid"] = strName.slice(iPos + 1);
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_PRINTER_INDEXA: function(strName) {
|
|
|
|
|
|
return this.SET_PRINTER_INDEX(strName, "printerindexa");
|
|
|
|
|
|
},
|
|
|
|
|
|
PRINT_DESIGN: function() {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (this.blIslocal) {
|
|
|
|
|
|
if (this.DoPostDatas("print_design") == true) {
|
|
|
|
|
|
this.Result = null;
|
|
|
|
|
|
this.GetLastResult(true);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
} else console.info(this.altMessageNoPrintDesign);
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
PRINT_SETUP: function() {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (this.blIslocal) {
|
|
|
|
|
|
if (this.DoPostDatas("print_setup") == true) {
|
|
|
|
|
|
this.Result = null;
|
|
|
|
|
|
this.GetLastResult(true);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
} else console.info(this.altMessageNoPrintSetup);
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_PRINT_PAGESIZE: function(intOrient, PageWidth, PageHeight, strPageName) {
|
|
|
|
|
|
if (intOrient !== undefined && intOrient !== null) this.PageData["orient"] = intOrient;
|
|
|
|
|
|
if (PageWidth !== undefined && PageWidth !== null) this.PageData["pagewidth"] = PageWidth;
|
|
|
|
|
|
if (PageHeight !== undefined && PageHeight !== null) this.PageData["pageheight"] = PageHeight;
|
|
|
|
|
|
if (strPageName !== undefined && strPageName !== null) this.PageData["pagename"] = strPageName;
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_PRINT_COPIES: function(intCopies) {
|
|
|
|
|
|
if (intCopies !== undefined && intCopies !== null) {
|
|
|
|
|
|
this.PageData["printcopies"] = intCopies;
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
SELECT_PRINTER: function(blPrint) {
|
|
|
|
|
|
this.SelectBox.create(388, 240, !blPrint);
|
|
|
|
|
|
return true;
|
|
|
|
|
|
},
|
|
|
|
|
|
PRINTA: function(blPrintB, sView) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (!sView && this.blIslocal) {
|
|
|
|
|
|
this.Result = null;
|
|
|
|
|
|
if (blPrintB) {
|
|
|
|
|
|
if (this.DoPostDatas("printb") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
} else {
|
|
|
|
|
|
if (this.DoPostDatas("printa") == true) {
|
|
|
|
|
|
this.GetLastResult(true);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
this.SELECT_PRINTER(true);
|
|
|
|
|
|
}
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
PRINTAOK: function(iPrintIndex, iPrintCopies, iStartNO, iEndNO, onlySelect) {
|
|
|
|
|
|
this.SET_PRINTER_INDEX(iPrintIndex);
|
|
|
|
|
|
this.SET_PRINT_COPIES(iPrintCopies);
|
|
|
|
|
|
if (iStartNO !== undefined && iStartNO !== 0) this.SET_PRINT_MODE("PRINT_START_PAGE", iStartNO);
|
|
|
|
|
|
if (iEndNO !== undefined && iEndNO !== 0) this.SET_PRINT_MODE("PRINT_END_PAGE", iEndNO);
|
|
|
|
|
|
if (!onlySelect) this.PRINT();
|
|
|
|
|
|
else {
|
|
|
|
|
|
this.blTmpSelectedIndex = iPrintIndex;
|
|
|
|
|
|
if (CLODOP.On_Return) {
|
|
|
|
|
|
var selfFunc = CLODOP.On_Return;
|
|
|
|
|
|
CLODOP.On_Return(0, iPrintIndex);
|
|
|
|
|
|
if (!CLODOP.On_Return_Remain && selfFunc === CLODOP.On_Return) CLODOP.On_Return = null;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_LICENSES: function(strCompanyName, strLicense, strLicenseA, strLicenseB) {
|
|
|
|
|
|
if ((strCompanyName == 'THIRD LICENSE') && (strLicense == "")) {
|
|
|
|
|
|
if (strLicenseA && strLicenseA !== "") this.PageDataEx["licensec"] = strLicenseA;
|
|
|
|
|
|
if (strLicenseB && strLicenseB !== "") this.PageDataEx["licensed"] = strLicenseB;
|
|
|
|
|
|
} else if ((strCompanyName == 'LICENSE TETCODE') && (strLicense == "") && (strLicenseB == "")) {
|
|
|
|
|
|
if (strLicenseA && strLicenseA !== "") this.PageDataEx["Licensetetcode"] = strLicenseA;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
if (strCompanyName && strCompanyName !== "") this.PageDataEx["companyname"] = strCompanyName;
|
|
|
|
|
|
if (strLicense && strLicense !== "") this.PageDataEx["license"] = strLicense;
|
|
|
|
|
|
if (strLicenseA && strLicenseA !== "") this.PageDataEx["licensea"] = strLicenseA;
|
|
|
|
|
|
if (strLicenseB && strLicenseB !== "") this.PageDataEx["licenseb"] = strLicenseB;
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
PRINTB: function() {
|
|
|
|
|
|
return this.PRINTA(true);
|
|
|
|
|
|
},
|
|
|
|
|
|
PREVIEWA: function() {
|
|
|
|
|
|
return this.PREVIEW();
|
|
|
|
|
|
},
|
|
|
|
|
|
PREVIEWB: function() {
|
|
|
|
|
|
return this.PREVIEW();
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_SETUP_BKIMG: function(strContent) {
|
|
|
|
|
|
if (strContent !== undefined && strContent !== null) {
|
|
|
|
|
|
this.PageData["setup_bkimg"] = strContent;
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_PREVIEW_WINDOW: function(intDispMode, intToolMode, blDirectPrint, oWidth, oHeight, strPButtonCaptoin) {
|
|
|
|
|
|
if (intDispMode !== undefined && intDispMode !== null) this.PageData["pvw_dispmode"] = intDispMode;
|
|
|
|
|
|
if (intToolMode !== undefined && intToolMode !== null) this.PageData["pvw_toolmode"] = intToolMode;
|
|
|
|
|
|
if (blDirectPrint !== undefined && blDirectPrint !== null) this.PageData["pvw_directprint"] = blDirectPrint;
|
|
|
|
|
|
if (oWidth !== undefined && oWidth !== null) this.PageData["pvw_width"] = oWidth;
|
|
|
|
|
|
if (oHeight !== undefined && oHeight !== null) this.PageData["pvw_height"] = oHeight;
|
|
|
|
|
|
if (strPButtonCaptoin !== undefined && strPButtonCaptoin !== null) this.PageData["pvw_puttoncaptoin"] =
|
|
|
|
|
|
strPButtonCaptoin;
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_PREVIEW_MODE: function(ModeValue) {
|
|
|
|
|
|
if (ModeValue !== undefined) this.PageData["pvw_preview_mode"] = ModeValue;
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_SHOW_MODE: function(strModeType, ModeValue) {
|
|
|
|
|
|
if (strModeType === undefined || strModeType === null) strModeType = "";
|
|
|
|
|
|
if (ModeValue === undefined || ModeValue === null) ModeValue = "";
|
|
|
|
|
|
if (strModeType === "") return false;
|
|
|
|
|
|
strModeType = strModeType.toLowerCase();
|
|
|
|
|
|
this.PageData['shwmod_' + strModeType] = ModeValue;
|
|
|
|
|
|
},
|
|
|
|
|
|
SAVE_TO_FILE: function(strFileName) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (this.blIslocal) {
|
|
|
|
|
|
if (strFileName) {
|
|
|
|
|
|
this.PageData["stf_file_name"] = strFileName;
|
|
|
|
|
|
if (this.DoPostDatas("savetofile") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
} else console.info(this.altMessageNoWriteFile);
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_SAVE_MODE: function(strModeType, ModeValue) {
|
|
|
|
|
|
if (strModeType === undefined || strModeType === null) strModeType = "";
|
|
|
|
|
|
if (ModeValue === undefined || ModeValue === null) ModeValue = "";
|
|
|
|
|
|
if (strModeType === "") return false;
|
|
|
|
|
|
strModeType = strModeType.toLowerCase();
|
|
|
|
|
|
this.PageData['stfmod_' + strModeType] = ModeValue;
|
|
|
|
|
|
},
|
|
|
|
|
|
SEND_PRINT_RAWDATA: function(strRawData) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (strRawData !== undefined) {
|
|
|
|
|
|
this.PageData["raw_print_data"] = strRawData;
|
|
|
|
|
|
if (this.DoPostDatas("sendrawdata") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
WRITE_FILE_TEXT: function(WriteMode, strFileName, strText) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (this.blIslocal) {
|
|
|
|
|
|
if (strFileName !== undefined && strText !== undefined) {
|
|
|
|
|
|
this.PageData["write_file_mode"] = WriteMode;
|
|
|
|
|
|
this.PageData["write_file_name"] = strFileName;
|
|
|
|
|
|
this.PageData["write_file_text"] = strText;
|
|
|
|
|
|
if (this.DoPostDatas("writefiletext") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
} else console.info(this.altMessageNoWriteFile);
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
GET_DIALOG_VALUE: function(oType, oPreValue) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (oType !== undefined && oPreValue !== undefined) {
|
|
|
|
|
|
if (this.blIslocal) {
|
|
|
|
|
|
this.PageData["dialog_type"] = oType;
|
|
|
|
|
|
this.PageData["dialog_value"] = oPreValue;
|
|
|
|
|
|
if (this.DoPostDatas("dialog") == true) {
|
|
|
|
|
|
this.GetLastResult(true);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
} else console.info(this.altMessageNoReadWriteFile);
|
|
|
|
|
|
}
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
WRITE_PORT_DATA: function(strPortName, strData) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (strPortName !== undefined && strData !== undefined) {
|
|
|
|
|
|
this.PageData["write_port_name"] = strPortName;
|
|
|
|
|
|
this.PageData["write_port_data"] = strData;
|
|
|
|
|
|
if (this.DoPostDatas("writeportdata") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
READ_PORT_DATA: function(strPortName) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (strPortName !== undefined) {
|
|
|
|
|
|
this.PageData["read_port_name"] = strPortName;
|
|
|
|
|
|
if (this.DoPostDatas("readportdata") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
GET_SYSTEM_INFO: function(InfoType) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (InfoType !== undefined) {
|
|
|
|
|
|
this.PageData["system_info_type"] = InfoType;
|
|
|
|
|
|
if (this.DoPostDatas("getsysteminfo") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
GET_FILE_TEXT: function(strFileName) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (this.blIslocal) {
|
|
|
|
|
|
if (strFileName !== undefined) {
|
|
|
|
|
|
this.PageData["get_file_name"] = strFileName;
|
|
|
|
|
|
if (this.DoPostDatas("getfiletext") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
} else console.info(this.altMessageNoReadFile);
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
IS_FILE_EXIST: function(strFileName) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (this.blIslocal) {
|
|
|
|
|
|
if (strFileName !== undefined) {
|
|
|
|
|
|
this.PageData["file_exist_name"] = strFileName;
|
|
|
|
|
|
if (this.DoPostDatas("isfileexist") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
} else console.info(this.altMessageNoReadFile);
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
GET_FILE_TIME: function(strFileName) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (this.blIslocal) {
|
|
|
|
|
|
if (strFileName !== undefined) {
|
|
|
|
|
|
this.PageData["file_time_name"] = strFileName;
|
|
|
|
|
|
if (this.DoPostDatas("getfiletime") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
} else console.info(this.altMessageNoReadFile);
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
GET_PRINT_INIFFNAME: function(strPrintTaskName) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (this.blIslocal) {
|
|
|
|
|
|
if (strPrintTaskName !== undefined) {
|
|
|
|
|
|
this.PageData["iniff_task_name"] = strPrintTaskName;
|
|
|
|
|
|
if (this.DoPostDatas("getiniffname") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
} else console.info(this.altMessageNoReadFile);
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
GET_VALUE: function(ValueType, ValueIndex) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (ValueType !== undefined && ValueIndex !== undefined) {
|
|
|
|
|
|
this.PageData["get_value_type"] = ValueType;
|
|
|
|
|
|
this.PageData["get_value_index"] = ValueIndex;
|
|
|
|
|
|
if (this.DoPostDatas("dogetvalue") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
ADD_PRINT_DATA: function(DataType, oValue) {
|
|
|
|
|
|
if (DataType !== undefined && oValue !== null) {
|
|
|
|
|
|
if (DataType.toLowerCase().indexOf("programdata") > -1) {
|
|
|
|
|
|
this.PageData["add_print_program_data"] = oValue;
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
SHOW_CHART: function() {},
|
|
|
|
|
|
DO_ACTION: function(strActName, strActValue) {
|
|
|
|
|
|
if (this.blWorking) {
|
|
|
|
|
|
console.info(this.altMessageBusy);
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
var tResult = null;
|
|
|
|
|
|
if (strActName !== undefined && strActValue !== undefined) {
|
|
|
|
|
|
this.PageData["do_action_name"] = strActName;
|
|
|
|
|
|
this.PageData["do_action_value"] = strActValue;
|
|
|
|
|
|
if (this.DoPostDatas("doaction") == true) {
|
|
|
|
|
|
this.GetLastResult(false);
|
|
|
|
|
|
tResult = this.GetTaskID();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
this.DoInit();
|
|
|
|
|
|
this.blWorking = false;
|
|
|
|
|
|
return tResult;
|
|
|
|
|
|
},
|
|
|
|
|
|
Create_Printer_List: function(oElement, blNoDetailForAO) {
|
|
|
|
|
|
while (oElement.childNodes.length > 0) {
|
|
|
|
|
|
var children = oElement.childNodes;
|
|
|
|
|
|
for (var i = 0; i < children.length; i++)
|
|
|
|
|
|
oElement.removeChild(children[i]);
|
|
|
|
|
|
};
|
|
|
|
|
|
var iCount = this.GET_PRINTER_COUNT();
|
|
|
|
|
|
var iIndex = 0;
|
|
|
|
|
|
for (var i = 0; i < iCount; i++) {
|
|
|
|
|
|
var option = document.createElement('option');
|
|
|
|
|
|
option.innerHTML = this.GET_PRINTER_NAME(i);
|
|
|
|
|
|
option.value = iIndex;
|
|
|
|
|
|
oElement.appendChild(option);
|
|
|
|
|
|
iIndex++;
|
|
|
|
|
|
if (this.VERSION_EXT) {
|
|
|
|
|
|
if (this.Printers["list"][i]["subdevlist"].length > 0) {
|
|
|
|
|
|
if (blNoDetailForAO) option.innerHTML = option.innerHTML + ',..';
|
|
|
|
|
|
else {
|
|
|
|
|
|
var strDrivename = option.innerHTML;
|
|
|
|
|
|
for (var j = 0; j < this.Printers["list"][i]["subdevlist"].length; j++) {
|
|
|
|
|
|
var strDevID = this.Printers["list"][i]["subdevlist"][j].id;
|
|
|
|
|
|
var strDevName = this.Printers["list"][i]["subdevlist"][j].name;
|
|
|
|
|
|
if (j == 0) {
|
|
|
|
|
|
option.innerHTML = strDrivename + ',' + strDevName;
|
|
|
|
|
|
option.value = strDrivename + ',' + strDevID + ';' + strDevName;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
option = document.createElement('option');
|
|
|
|
|
|
option.innerHTML = strDrivename + ',' + strDevName;
|
|
|
|
|
|
option.value = strDrivename + ',' + strDevID + ';' + strDevName;
|
|
|
|
|
|
oElement.appendChild(option);
|
|
|
|
|
|
iIndex++;
|
|
|
|
|
|
if (iIndex >= 100) return;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
Create_PageSize_List: function(oElement, printIndex) {
|
|
|
|
|
|
while (oElement.childNodes.length > 0) {
|
|
|
|
|
|
var children = oElement.childNodes;
|
|
|
|
|
|
for (var i = 0; i < children.length; i++)
|
|
|
|
|
|
oElement.removeChild(children[i]);
|
|
|
|
|
|
};
|
|
|
|
|
|
var strPageSizeList = CLODOP.GET_PAGESIZES_LIST(printIndex, "\n");
|
|
|
|
|
|
var Options = new Array();
|
|
|
|
|
|
Options = strPageSizeList.split("\n");
|
|
|
|
|
|
for (var i in Options) {
|
|
|
|
|
|
var option = document.createElement('option');
|
|
|
|
|
|
option.innerHTML = Options[i];
|
|
|
|
|
|
option.value = Options[i];
|
|
|
|
|
|
oElement.appendChild(option);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
SET_BRIDGE_INDEX: function(strValue) {
|
|
|
|
|
|
if (this.Printers === undefined) return false;
|
|
|
|
|
|
else {
|
|
|
|
|
|
strValue = (strValue + "").replace(/^\s+|\s+$/g, "");
|
|
|
|
|
|
for (var vNO in this.Printers["list"]) {
|
|
|
|
|
|
var strDriverOrName = this.Printers["list"][vNO].name;
|
|
|
|
|
|
if (strDriverOrName == "(AO)Client-Bridge Driver") {
|
|
|
|
|
|
this.PageData["printerindex"] = vNO;
|
|
|
|
|
|
this.PageData["printersubid"] = strValue;
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
Get_AOPrinters_List: function(DriverNameOrIndex, strListName, strSplit) {
|
|
|
|
|
|
if (!strSplit) strSplit = "\n";
|
|
|
|
|
|
if (!strListName) strListName = "name";
|
|
|
|
|
|
return CLODOP.GET_PAGESIZES_LIST(DriverNameOrIndex, strSplit, "subdevlist", strListName);
|
|
|
|
|
|
},
|
|
|
|
|
|
Get_AOBridges_List: function(DriverNameOrIndex, strListName, strSplit) {
|
|
|
|
|
|
return CLODOP.Get_AOPrinters_List(DriverNameOrIndex, strListName, strSplit);
|
|
|
|
|
|
},
|
|
|
|
|
|
Get_AOBridge_List: function(strListName, strSplit) {
|
|
|
|
|
|
return CLODOP.Get_AOPrinters_List("(AO)Client-Bridge Driver", strListName, strSplit);
|
|
|
|
|
|
},
|
|
|
|
|
|
Get_AOBridge_SubPrinters_List: function(BridgeNameOrIndex, strListName, strSplit, DriverNameOrIndex) {
|
|
|
|
|
|
if (!DriverNameOrIndex) DriverNameOrIndex = "(AO)Client-Bridge Driver";
|
|
|
|
|
|
if (!strSplit) strSplit = "\n";
|
|
|
|
|
|
if (!strListName) strListName = "name";
|
|
|
|
|
|
for (var iDrvNO in this.Printers["list"]) {
|
|
|
|
|
|
if (DriverNameOrIndex == iDrvNO || DriverNameOrIndex == this.Printers["list"][iDrvNO].name) {
|
|
|
|
|
|
for (var iBdgNO in this.Printers["list"][iDrvNO]["subdevlist"]) {
|
|
|
|
|
|
var BridgeID = this.Printers["list"][iDrvNO]["subdevlist"][iBdgNO].id;
|
|
|
|
|
|
var BridgeName = this.Printers["list"][iDrvNO]["subdevlist"][iBdgNO].name;
|
|
|
|
|
|
if (BridgeNameOrIndex == iBdgNO || BridgeNameOrIndex == BridgeID + ";" + BridgeName) {
|
|
|
|
|
|
var strList = "";
|
|
|
|
|
|
for (var iSsbPNO in this.Printers["list"][iDrvNO]["subdevlist"][iBdgNO].ssbprinter["list"]) {
|
|
|
|
|
|
if (iSsbPNO != "0") strList = strList + strSplit;
|
|
|
|
|
|
if (strListName.toLowerCase() == "id") strList = strList + iSsbPNO;
|
|
|
|
|
|
else
|
|
|
|
|
|
strList = strList + this.Printers["list"][iDrvNO]["subdevlist"][iBdgNO].ssbprinter["list"][iSsbPNO].name;
|
|
|
|
|
|
}
|
|
|
|
|
|
return strList;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
return "";
|
|
|
|
|
|
},
|
|
|
|
|
|
Get_AOBridge_SubPrinters_PageSize_List: function(BridgeNameOrIndex, SubPrinterNameOrIndex, strSplit,
|
|
|
|
|
|
DriverNameOrIndex) {
|
|
|
|
|
|
if (!DriverNameOrIndex) DriverNameOrIndex = "(AO)Client-Bridge Driver";
|
|
|
|
|
|
if (!strSplit) strSplit = "\n";
|
|
|
|
|
|
for (var iDrvNO in this.Printers["list"]) {
|
|
|
|
|
|
if (DriverNameOrIndex == iDrvNO || DriverNameOrIndex == this.Printers["list"][iDrvNO].name) {
|
|
|
|
|
|
for (var iBdgNO in this.Printers["list"][iDrvNO]["subdevlist"]) {
|
|
|
|
|
|
var BridgeID = this.Printers["list"][iDrvNO]["subdevlist"][iBdgNO].id;
|
|
|
|
|
|
var BridgeName = this.Printers["list"][iDrvNO]["subdevlist"][iBdgNO].name;
|
|
|
|
|
|
if (BridgeNameOrIndex == iBdgNO || BridgeNameOrIndex == BridgeID + ";" + BridgeName) {
|
|
|
|
|
|
for (var iSsbPNO in this.Printers["list"][iDrvNO]["subdevlist"][iBdgNO].ssbprinter["list"]) {
|
|
|
|
|
|
if (SubPrinterNameOrIndex == iSsbPNO || SubPrinterNameOrIndex == this.Printers["list"][iDrvNO]["subdevlist"]
|
|
|
|
|
|
[iBdgNO].ssbprinter["list"][iSsbPNO].name) {
|
|
|
|
|
|
var strList = "";
|
|
|
|
|
|
for (var iPageSizeNO in this.Printers["list"][iDrvNO]["subdevlist"][iBdgNO].ssbprinter["list"][iSsbPNO][
|
|
|
|
|
|
"pagelist"
|
|
|
|
|
|
]) {
|
|
|
|
|
|
if (iPageSizeNO != "0") strList = strList + strSplit;
|
|
|
|
|
|
strList = strList + this.Printers["list"][iDrvNO]["subdevlist"][iBdgNO].ssbprinter["list"][iSsbPNO][
|
|
|
|
|
|
"pagelist"
|
|
|
|
|
|
][iPageSizeNO].name;
|
|
|
|
|
|
}
|
|
|
|
|
|
return strList;
|
|
|
|
|
|
};
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
return "";
|
|
|
|
|
|
},
|
|
|
|
|
|
AddItemArray: function(type, top, left, width, height, strContent, itemname, ShapeType, intPenStyle, intPenWidth,
|
|
|
|
|
|
intColor, isLinePosition, BarType, strChartTypess) {
|
|
|
|
|
|
if (top === undefined || left === undefined || width === undefined || height === undefined || strContent ===
|
|
|
|
|
|
undefined) {
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
var sCount = this.ItemDatas["count"];
|
|
|
|
|
|
sCount++;
|
|
|
|
|
|
var oneItem = {};
|
|
|
|
|
|
for (var vstyle in this.defStyleJson) {
|
|
|
|
|
|
oneItem[vstyle] = this.defStyleJson[vstyle];
|
|
|
|
|
|
}
|
|
|
|
|
|
oneItem["type"] = type;
|
|
|
|
|
|
oneItem["top"] = top;
|
|
|
|
|
|
oneItem["left"] = left;
|
|
|
|
|
|
oneItem["width"] = width;
|
|
|
|
|
|
oneItem["height"] = height;
|
|
|
|
|
|
if (strContent != null) {
|
|
|
|
|
|
if (typeof strContent === "string" && strContent.indexOf(this.DelimChar) > -1)
|
|
|
|
|
|
oneItem["content"] = strContent.replace(new RegExp(this.DelimChar, 'g'), '');
|
|
|
|
|
|
else
|
|
|
|
|
|
oneItem["content"] = strContent;
|
|
|
|
|
|
}
|
|
|
|
|
|
if ((itemname !== undefined) && (itemname != null)) oneItem["itemname"] = itemname + "";
|
|
|
|
|
|
if ((ShapeType !== undefined) && (ShapeType != null)) oneItem["shapetype"] = ShapeType;
|
|
|
|
|
|
if ((intPenStyle !== undefined) && (intPenStyle != null)) oneItem["penstyle"] = intPenStyle;
|
|
|
|
|
|
if ((intPenWidth !== undefined) && (intPenWidth != null)) oneItem["penwidth"] = intPenWidth;
|
|
|
|
|
|
if ((intColor !== undefined) && (intColor != null)) oneItem["fontcolor"] = intColor;
|
|
|
|
|
|
if ((isLinePosition !== undefined) && (isLinePosition != null)) oneItem["lineposition"] = "1";
|
|
|
|
|
|
if ((BarType !== undefined) && (BarType != null)) oneItem["fontname"] = BarType;
|
|
|
|
|
|
if ((strChartTypess !== undefined) && (strChartTypess != null)) oneItem["charttypess"] = strChartTypess;
|
|
|
|
|
|
|
|
|
|
|
|
oneItem["beginpage"] = this.defStyleJson["beginpage"];
|
|
|
|
|
|
oneItem["beginpagea"] = this.defStyleJson["beginpagea"];
|
|
|
|
|
|
this.ItemDatas["count"] = sCount;
|
|
|
|
|
|
this.ItemDatas[sCount] = oneItem;
|
|
|
|
|
|
this.blNormalItemAdded = true;
|
|
|
|
|
|
return true;
|
|
|
|
|
|
},
|
|
|
|
|
|
RemoveIframes: function() {
|
|
|
|
|
|
// #ifndef APP-PLUS
|
|
|
|
|
|
var obody = document.body || document.getElementsByTagName("body")[0] || document.documentElement;
|
|
|
|
|
|
// #endif
|
|
|
|
|
|
try {
|
|
|
|
|
|
for (var i = 0; i < this.Iframes.length; i++) {
|
|
|
|
|
|
var now = (new Date()).getTime();
|
|
|
|
|
|
if ((now - this.Iframes[i]["time"]) > this.timeThreshold * 60000) {
|
|
|
|
|
|
// #ifndef APP-PLUS
|
|
|
|
|
|
obody.removeChild(this.Iframes[i]["iframe"]);
|
|
|
|
|
|
// #endif
|
|
|
|
|
|
this.Iframes.splice(i, 1);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
} catch (err) {};
|
|
|
|
|
|
},
|
|
|
|
|
|
AddInputElement: function(odocument, oform, name, value) {
|
|
|
|
|
|
if (value !== undefined) {
|
|
|
|
|
|
var oinput = odocument.createElement("input");
|
|
|
|
|
|
oinput.name = name;
|
|
|
|
|
|
oinput.type = "hidden";
|
|
|
|
|
|
oinput.value = value;
|
|
|
|
|
|
oform.appendChild(oinput);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
createPostDataString: function(afterPostAction) {
|
|
|
|
|
|
var strData = "act=" + afterPostAction + this.DelimChar;
|
|
|
|
|
|
strData = strData + "browseurl=" + window.location.href + this.DelimChar;
|
|
|
|
|
|
for (var vMode in this.PageDataEx) {
|
|
|
|
|
|
strData = strData + vMode + "=" + this.PageDataEx[vMode] + this.DelimChar;
|
|
|
|
|
|
}
|
|
|
|
|
|
var PrintModeNamess = "";
|
|
|
|
|
|
for (var vMode in this.PageData) {
|
|
|
|
|
|
strData = strData + vMode + "=" + this.PageData[vMode] + this.DelimChar;
|
|
|
|
|
|
if (vMode != "top" && vMode != "left" && vMode != "width" && vMode != "height" && vMode != "printtask" && vMode !=
|
|
|
|
|
|
"printerindex" && vMode != "printerindexa" && vMode != "printersubid" && vMode != "orient" && vMode !=
|
|
|
|
|
|
"pagewidth" && vMode != "pageheight" && vMode != "pagename" && vMode != "printcopies" && vMode != "setup_bkimg"
|
|
|
|
|
|
)
|
|
|
|
|
|
PrintModeNamess = PrintModeNamess + ";" + vMode;
|
|
|
|
|
|
}
|
|
|
|
|
|
if (PrintModeNamess !== "")
|
|
|
|
|
|
strData = strData + "printmodenames=" + PrintModeNamess + this.DelimChar;
|
|
|
|
|
|
var StyleClassNamess = "";
|
|
|
|
|
|
for (var vClassStyle in this.ItemCNameStyles) {
|
|
|
|
|
|
strData = strData + vClassStyle + "=" + this.ItemCNameStyles[vClassStyle] + this.DelimChar;
|
|
|
|
|
|
StyleClassNamess = StyleClassNamess + ";" + vClassStyle;
|
|
|
|
|
|
}
|
|
|
|
|
|
if (StyleClassNamess !== "")
|
|
|
|
|
|
strData = strData + "printstyleclassnames=" + StyleClassNamess + this.DelimChar;
|
|
|
|
|
|
strData = strData + "itemcount=" + this.ItemDatas["count"] + this.DelimChar;
|
|
|
|
|
|
for (var vItemNO in this.ItemDatas) {
|
|
|
|
|
|
var ItemStyless = "";
|
|
|
|
|
|
for (var vItemxx in this.ItemDatas[vItemNO]) {
|
|
|
|
|
|
if (vItemxx != "beginpage" && vItemxx != "beginpagea" && vItemxx != "type" && vItemxx != "top" && vItemxx !=
|
|
|
|
|
|
"left" && vItemxx != "width" && vItemxx != "height")
|
|
|
|
|
|
ItemStyless = ItemStyless + ";" + vItemxx;
|
|
|
|
|
|
}
|
|
|
|
|
|
strData = strData + vItemNO + "_itemstylenames" + "=" + ItemStyless + this.DelimChar;
|
|
|
|
|
|
for (var vItemxx in this.ItemDatas[vItemNO]) {
|
|
|
|
|
|
strData = strData + vItemNO + "_" + vItemxx + "=" + this.ItemDatas[vItemNO][vItemxx] + this.DelimChar;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
return strData;
|
|
|
|
|
|
},
|
|
|
|
|
|
wsDoPostDatas: function(afterPostAction) {
|
|
|
|
|
|
var strData = "charset=丂" + this.DelimChar;
|
|
|
|
|
|
strData = strData + "tid=" + this.GetTaskID() + this.DelimChar;
|
|
|
|
|
|
strData = strData + this.createPostDataString(afterPostAction);
|
|
|
|
|
|
return this.wsSend("post:" + strData);
|
|
|
|
|
|
},
|
|
|
|
|
|
DoPostDatas: function(afterPostAction) {
|
|
|
|
|
|
if (this.OBO_Mode && this.blOneByone) {
|
|
|
|
|
|
console.info(this.altMessageSomeWindowExist);
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
this.blWorking = true;
|
|
|
|
|
|
if (this.blTmpSelectedIndex !== null)
|
|
|
|
|
|
this.SET_PRINTER_INDEX(this.blTmpSelectedIndex);
|
|
|
|
|
|
if (this.SocketEnable) {
|
|
|
|
|
|
return this.wsDoPostDatas(afterPostAction);
|
|
|
|
|
|
}
|
|
|
|
|
|
// #ifdef APP-PLUS
|
|
|
|
|
|
return this.wsDoPostDatas(afterPostAction);
|
|
|
|
|
|
// #endif
|
|
|
|
|
|
this.RemoveIframes();
|
|
|
|
|
|
var obody = document.body || document.getElementsByTagName("body")[0] || document.documentElement;
|
|
|
|
|
|
var oiframe = document.createElement("iframe");
|
|
|
|
|
|
oiframe.setAttribute("src", "about:blank");
|
|
|
|
|
|
oiframe.setAttribute("style", "display:none");
|
|
|
|
|
|
oiframe.height = 0;
|
|
|
|
|
|
obody.appendChild(oiframe);
|
|
|
|
|
|
var contentdocument = oiframe.contentWindow.document;
|
|
|
|
|
|
contentdocument.write("<form action='" + this.strHostURI +
|
|
|
|
|
|
"/c_dopostdatas' method='post' enctype='application/x-www-form-urlencoded'></form>");
|
|
|
|
|
|
var oform = contentdocument.getElementsByTagName("form")[0];
|
|
|
|
|
|
this.AddInputElement(contentdocument, oform, "charset", "丂");
|
|
|
|
|
|
this.AddInputElement(contentdocument, oform, "tid", this.GetTaskID());
|
|
|
|
|
|
this.AddInputElement(contentdocument, oform, "post", this.createPostDataString(afterPostAction));
|
|
|
|
|
|
oform.submit();
|
|
|
|
|
|
var IframeMS = {};
|
|
|
|
|
|
IframeMS["time"] = (new Date()).getTime();
|
|
|
|
|
|
IframeMS["iframe"] = oiframe;
|
|
|
|
|
|
this.Iframes.push(IframeMS);
|
|
|
|
|
|
return true;
|
|
|
|
|
|
},
|
|
|
|
|
|
GetLastResult: function(blFOneByone) {
|
|
|
|
|
|
if (blFOneByone) this.blOneByone = true;
|
|
|
|
|
|
if (this.SocketEnable) {
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
var url = this.strHostURI + "/c_lastresult.js";
|
|
|
|
|
|
url = url + "?times=" + (new Date().getTime());
|
|
|
|
|
|
url = url + "&tid=" + this.GetTaskID();
|
|
|
|
|
|
url = encodeURI(url).replace("%20", "+");
|
|
|
|
|
|
var oscript = document.createElement("script");
|
|
|
|
|
|
oscript.src = url;
|
|
|
|
|
|
oscript.async = false;
|
|
|
|
|
|
oscript.type = "text/javascript";
|
|
|
|
|
|
oscript.charset = "utf-8";
|
|
|
|
|
|
var head = document.head || document.getElementsByTagName("head")[0] || document.documentElement;
|
|
|
|
|
|
head.insertBefore(oscript, head.firstChild);
|
|
|
|
|
|
oscript.onload = oscript.onreadystatechange = function() {
|
|
|
|
|
|
if (!oscript.readyState || /loaded|complete/.test(oscript.readyState)) {
|
|
|
|
|
|
CLODOP.blOneByone = false;
|
|
|
|
|
|
if (CLodop_ACTLastResult)
|
|
|
|
|
|
var strResult = decodeURIComponent(CLodop_ACTLastResult);
|
|
|
|
|
|
var strResultTaskID = CLodop_ACTTaskID;
|
|
|
|
|
|
CLODOP.Result = strResult;
|
|
|
|
|
|
if (CLodop_ACTAlert) CLodop_ACTconsole.info();
|
|
|
|
|
|
if (CLODOP.On_Return)
|
|
|
|
|
|
try {
|
|
|
|
|
|
var selfFunc = CLODOP.On_Return;
|
|
|
|
|
|
if (strResult == "true" || strResult == "false")
|
|
|
|
|
|
CLODOP.On_Return(strResultTaskID, strResult == "true");
|
|
|
|
|
|
else
|
|
|
|
|
|
CLODOP.On_Return(strResultTaskID, strResult);
|
|
|
|
|
|
if (!CLODOP.On_Return_Remain && selfFunc === CLODOP.On_Return) CLODOP.On_Return = null;
|
|
|
|
|
|
} catch (err) {};
|
|
|
|
|
|
oscript.onload = oscript.onreadystatechange = null;
|
|
|
|
|
|
if (oscript.parentNode) {
|
|
|
|
|
|
oscript.parentNode.removeChild(oscript);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
return true;
|
|
|
|
|
|
},
|
|
|
|
|
|
DoCPreview: function(sView, iW, iH) {
|
|
|
|
|
|
var obody = document.body || document.getElementsByTagName("body")[0] || document.documentElement;
|
|
|
|
|
|
if (typeof iW !== "number") iW = Math.round(obody.offsetWidth * 2 / 3);
|
|
|
|
|
|
else
|
|
|
|
|
|
if (obody.offsetWidth < iW) iW = obody.offsetWidth;
|
|
|
|
|
|
if (typeof iH !== "number") iH = Math.round(window.screen.height - 200);
|
|
|
|
|
|
else
|
|
|
|
|
|
if (window.screen.height < iH) iH = window.screen.height;
|
|
|
|
|
|
var url = this.strHostURI + "/c_dopreview";
|
|
|
|
|
|
url = url + "?times=" + (new Date().getTime());
|
|
|
|
|
|
url = url + "&tid=" + this.GetTaskID();
|
|
|
|
|
|
url = url + "&iw=" + iW;
|
|
|
|
|
|
url = url + "&ih=" + iH;
|
|
|
|
|
|
url = encodeURI(url).replace("%20", "+");
|
|
|
|
|
|
this.PopView(sView, url, iW, iH);
|
|
|
|
|
|
},
|
|
|
|
|
|
PopView: function(sView, strPURL, iW, iH) {
|
|
|
|
|
|
try {
|
|
|
|
|
|
if (sView && typeof sView === "string" && sView.length > 0) {
|
|
|
|
|
|
if (sView === "_dialog") {
|
|
|
|
|
|
if (window.showModalDialog) {
|
|
|
|
|
|
window.showModalDialog(strPURL, 'dialog', 'center:yes');
|
|
|
|
|
|
} else {
|
|
|
|
|
|
window.open(strPURL, "", "scrollbars=yes,toolbar=no,left=150,top=100,resizable=yes");
|
|
|
|
|
|
}
|
|
|
|
|
|
} else
|
|
|
|
|
|
if (sView === "_self" || sView === "_top" || sView === "_parent") {
|
|
|
|
|
|
window.location.href = strPURL;
|
|
|
|
|
|
} else
|
|
|
|
|
|
if (sView === "_blank") {
|
|
|
|
|
|
this.PreviewBox.create(strPURL, iW, iH);
|
|
|
|
|
|
} else
|
|
|
|
|
|
if (sView.indexOf("_winopen:") > -1) {
|
|
|
|
|
|
var strFeatures = sView.slice(sView.indexOf("_winopen:") + 9);
|
|
|
|
|
|
if (strFeatures.indexOf("_blank") > -1)
|
|
|
|
|
|
window.open(strPURL, "_blank", strFeatures.slice(strFeatures.indexOf("_blank") + 6));
|
|
|
|
|
|
else
|
|
|
|
|
|
window.open(strPURL, "", strFeatures);
|
|
|
|
|
|
} else
|
|
|
|
|
|
if (document.getElementById(sView)) {
|
|
|
|
|
|
document.getElementById(sView).src = strPURL;
|
|
|
|
|
|
} else
|
|
|
|
|
|
console.info("iframe '" + sView + "' not exist!");
|
|
|
|
|
|
} else this.PreviewBox.create(strPURL, iW, iH);
|
|
|
|
|
|
} catch (err) {
|
|
|
|
|
|
console.info("CLODOP PopView " + err);
|
|
|
|
|
|
};
|
|
|
|
|
|
},
|
|
|
|
|
|
creatMyButtonElement: function(strType, strValue) {
|
|
|
|
|
|
try {
|
|
|
|
|
|
var oElement = document.createElement("<input type='" + strType + "' value='" + strValue + "'></input>");
|
|
|
|
|
|
} catch (e) {};
|
|
|
|
|
|
if (!oElement) {
|
|
|
|
|
|
oElement = document.createElement("input");
|
|
|
|
|
|
oElement.type = strType;
|
|
|
|
|
|
oElement.value = strValue;
|
|
|
|
|
|
}
|
|
|
|
|
|
return oElement;
|
|
|
|
|
|
},
|
|
|
|
|
|
creatLabelElement: function(Type, Value, Width, Left, Top) {
|
|
|
|
|
|
var TxtLabel = document.createElement(Type);
|
|
|
|
|
|
TxtLabel.innerHTML = Value;
|
|
|
|
|
|
TxtLabel.style.cssText = "position:absolute;width:" + Width + "px;left:" + Left + "px;top:" + Top + "px;";
|
|
|
|
|
|
return TxtLabel;
|
|
|
|
|
|
},
|
|
|
|
|
|
SelectBox: {
|
|
|
|
|
|
dragapproved: false,
|
|
|
|
|
|
offsetx: 0,
|
|
|
|
|
|
offsety: 0,
|
|
|
|
|
|
tempx: 0,
|
|
|
|
|
|
tempy: 0,
|
|
|
|
|
|
FrantDiv: undefined,
|
|
|
|
|
|
PopDiv: undefined,
|
|
|
|
|
|
selPrinter: undefined,
|
|
|
|
|
|
selCopies: undefined,
|
|
|
|
|
|
closeit: function() {
|
|
|
|
|
|
if (CLODOP.SelectBox.PopDiv && CLODOP.SelectBox.PopDiv.parentNode)
|
|
|
|
|
|
CLODOP.SelectBox.PopDiv.parentNode.removeChild(CLODOP.SelectBox.PopDiv);
|
|
|
|
|
|
if (this.FrantDiv && this.FrantDiv.parentNode)
|
|
|
|
|
|
this.FrantDiv.parentNode.removeChild(this.FrantDiv);
|
|
|
|
|
|
this.PopDiv = undefined;
|
|
|
|
|
|
},
|
|
|
|
|
|
initializedrag: function(e) {
|
|
|
|
|
|
var we = window.event || e;
|
|
|
|
|
|
this.offsetx = we.clientX;
|
|
|
|
|
|
this.offsety = we.clientY;
|
|
|
|
|
|
this.tempx = parseInt(this.PopDiv.style.left);
|
|
|
|
|
|
this.tempy = parseInt(this.PopDiv.style.top);
|
|
|
|
|
|
this.dragapproved = true;
|
|
|
|
|
|
},
|
|
|
|
|
|
drag_drop: function(e) {
|
|
|
|
|
|
if (!this.dragapproved) return;
|
|
|
|
|
|
var we = window.event || e;
|
|
|
|
|
|
this.PopDiv.style.left = we.clientX - this.offsetx + this.tempx + "px";
|
|
|
|
|
|
this.PopDiv.style.top = we.clientY - this.offsety + this.tempy + "px";
|
|
|
|
|
|
},
|
|
|
|
|
|
stopdrag: function() {
|
|
|
|
|
|
this.dragapproved = false;
|
|
|
|
|
|
},
|
|
|
|
|
|
clickOK: function(onlySelect) {
|
|
|
|
|
|
CLODOP.PRINTAOK(CLODOP.SelectBox.selPrinter.value, CLODOP.SelectBox.selCopies.value, 0, 0, onlySelect);
|
|
|
|
|
|
this.closeit();
|
|
|
|
|
|
},
|
|
|
|
|
|
create: function(iW, iH, onlySelect) {
|
|
|
|
|
|
if (CLODOP.SelectBox.PopDiv) this.closeit();
|
|
|
|
|
|
var obody = document.body || document.getElementsByTagName("body")[0] || document.documentElement;
|
|
|
|
|
|
var Boxdiv = document.createElement("div");
|
|
|
|
|
|
obody.appendChild(Boxdiv);
|
|
|
|
|
|
Boxdiv.style.cssText =
|
|
|
|
|
|
"position:absolute;z-index:91100;display:block;top:2px;border:1px solid #6B97C1;background:#F5F5F5;color:#000;font-size:13px;";
|
|
|
|
|
|
Boxdiv.style.width = iW + "px";
|
|
|
|
|
|
Boxdiv.style.left = Math.max((obody.offsetWidth - iW) / 2, 0) + "px";
|
|
|
|
|
|
Boxdiv.style.top = Math.max((obody.offsetHeight - iH) / 2, 0) + "px";
|
|
|
|
|
|
Boxdiv.style.height = iH + "px";
|
|
|
|
|
|
this.PopDiv = Boxdiv;
|
|
|
|
|
|
var titleDiv = document.createElement("div");
|
|
|
|
|
|
Boxdiv.appendChild(titleDiv);
|
|
|
|
|
|
titleDiv.style.cssText =
|
|
|
|
|
|
"font: bold 13px Arial;line-height:25px;height:27px;text-indent:5px;color: white;background:#8BACCF";
|
|
|
|
|
|
titleDiv.innerHTML = " 打印";
|
|
|
|
|
|
titleDiv.onmousedown = function(event) {
|
|
|
|
|
|
CLODOP.SelectBox.initializedrag(event);
|
|
|
|
|
|
};
|
|
|
|
|
|
titleDiv.onmousemove = function(event) {
|
|
|
|
|
|
CLODOP.SelectBox.drag_drop(event);
|
|
|
|
|
|
};
|
|
|
|
|
|
titleDiv.onmouseup = function() {
|
|
|
|
|
|
CLODOP.SelectBox.stopdrag();
|
|
|
|
|
|
};
|
|
|
|
|
|
var icoButton = document.createElement("button");
|
|
|
|
|
|
titleDiv.appendChild(icoButton);
|
|
|
|
|
|
icoButton.style.cssText = "background:transparent url(" + CLODOP.strHostURI +
|
|
|
|
|
|
"/c_favicon.ico) no-repeat scroll 0 0px;margin-left:5px;position:absolute;height:20px;line-height:100px;width:34px;left:3px;border:0;top:5px";
|
|
|
|
|
|
var CloseButton = document.createElement("button");
|
|
|
|
|
|
titleDiv.appendChild(CloseButton);
|
|
|
|
|
|
CloseButton.style.cssText = "background:transparent url(" + CLODOP.strHostURI +
|
|
|
|
|
|
"/images/c_winclose.png) no-repeat scroll 0 0px;margin-right:5px;position:absolute;height:20px;line-height:100px;width:34px;right:3px;border:0;top:4px";
|
|
|
|
|
|
CloseButton.onclick = function() {
|
|
|
|
|
|
CLODOP.SelectBox.closeit();
|
|
|
|
|
|
if (onlySelect && CLODOP.On_Return) {
|
|
|
|
|
|
var selfFunc = CLODOP.On_Return;
|
|
|
|
|
|
CLODOP.On_Return(0, -1);
|
|
|
|
|
|
if (!CLODOP.On_Return_Remain && selfFunc === CLODOP.On_Return) CLODOP.On_Return = null;
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
var areaDiv = document.createElement("div");
|
|
|
|
|
|
Boxdiv.appendChild(areaDiv);
|
|
|
|
|
|
areaDiv.style.cssText = "background:#F5F5F5;color:#000;border:0px;left:0px;top:0px;";
|
|
|
|
|
|
areaDiv.style.width = iW - 2 + "px";
|
|
|
|
|
|
areaDiv.style.height = (iH - 27) + "px";
|
|
|
|
|
|
var OKButton = CLODOP.creatMyButtonElement("button", "确定");
|
|
|
|
|
|
Boxdiv.appendChild(OKButton);
|
|
|
|
|
|
OKButton.style.cssText = "position:absolute;width:80px;height:23px;";
|
|
|
|
|
|
OKButton.style.left = "110px";
|
|
|
|
|
|
OKButton.style.top = (iH - 64) + "px";
|
|
|
|
|
|
OKButton.onclick = function() {
|
|
|
|
|
|
CLODOP.SelectBox.clickOK(onlySelect);
|
|
|
|
|
|
};
|
|
|
|
|
|
var CancelButton = CLODOP.creatMyButtonElement("button", "取消");
|
|
|
|
|
|
Boxdiv.appendChild(CancelButton);
|
|
|
|
|
|
CancelButton.style.cssText = "position:absolute;width:80px;;height:23px;";
|
|
|
|
|
|
CancelButton.style.left = "240px";
|
|
|
|
|
|
CancelButton.style.top = (iH - 64) + "px";
|
|
|
|
|
|
CancelButton.onclick = function() {
|
|
|
|
|
|
CLODOP.SelectBox.closeit();
|
|
|
|
|
|
if (onlySelect && CLODOP.On_Return) {
|
|
|
|
|
|
var selfFunc = CLODOP.On_Return;
|
|
|
|
|
|
CLODOP.On_Return(0, -1);
|
|
|
|
|
|
if (!CLODOP.On_Return_Remain && selfFunc === CLODOP.On_Return) CLODOP.On_Return = null;
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
areaDiv.appendChild(CLODOP.creatLabelElement("span", "选打印机:", 200, 46, 67));
|
|
|
|
|
|
var oSelect = document.createElement("select");
|
|
|
|
|
|
Boxdiv.appendChild(oSelect);
|
|
|
|
|
|
this.selPrinter = oSelect;
|
|
|
|
|
|
oSelect.style.cssText = "position:absolute;size:1;width:212px;left:110px;top:62px;";
|
|
|
|
|
|
CLODOP.Create_Printer_List(oSelect);
|
|
|
|
|
|
areaDiv.appendChild(CLODOP.creatLabelElement("span", "打印份数:", 200, 46, 121));
|
|
|
|
|
|
var oCopies = CLODOP.creatMyButtonElement("text", "1");
|
|
|
|
|
|
Boxdiv.appendChild(oCopies);
|
|
|
|
|
|
this.selCopies = oCopies;
|
|
|
|
|
|
oCopies.style.cssText = "position:absolute;size:1;width:30px;left:110px;top:117px;";
|
|
|
|
|
|
this.FrantDiv = document.createElement("div");
|
|
|
|
|
|
obody.appendChild(this.FrantDiv);
|
|
|
|
|
|
this.FrantDiv.style.cssText =
|
|
|
|
|
|
"border:0px;left:0px;top:0px;filter: alpha(opacity=20); position: fixed; opacity: 0.2;-moz-opacity: 0.2; _position: absolute;z-index:91009; over-flow: hidden;";
|
|
|
|
|
|
if (CLODOP.Browser.IE && (document.compatMode == "BackCompat" || navigator.userAgent.indexOf("MSIE 6.0") > 0)) {
|
|
|
|
|
|
this.FrantDiv.style.width = obody.scrollWidth + "px";
|
|
|
|
|
|
this.FrantDiv.style.height = obody.scrollHeight + "px";
|
|
|
|
|
|
} else {
|
|
|
|
|
|
this.FrantDiv.style.width = "100%";
|
|
|
|
|
|
this.FrantDiv.style.height = "100%";
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
PreviewBox: {
|
|
|
|
|
|
dragapproved: false,
|
|
|
|
|
|
offsetx: 0,
|
|
|
|
|
|
offsety: 0,
|
|
|
|
|
|
tempx: 0,
|
|
|
|
|
|
tempy: 0,
|
|
|
|
|
|
FrantDiv: undefined,
|
|
|
|
|
|
PopDiv: undefined,
|
|
|
|
|
|
ContentFrame: undefined,
|
|
|
|
|
|
closeit: function(oSelf) {
|
|
|
|
|
|
if (CLODOP.PreviewBox.PopDiv && CLODOP.PreviewBox.PopDiv.parentNode)
|
|
|
|
|
|
CLODOP.PreviewBox.PopDiv.parentNode.removeChild(CLODOP.PreviewBox.PopDiv);
|
|
|
|
|
|
if (this.FrantDiv && this.FrantDiv.parentNode)
|
|
|
|
|
|
this.FrantDiv.parentNode.removeChild(this.FrantDiv);
|
|
|
|
|
|
this.PopDiv = undefined;
|
|
|
|
|
|
},
|
|
|
|
|
|
initializedrag: function(e, oSelf) {
|
|
|
|
|
|
var we = window.event || e;
|
|
|
|
|
|
this.offsetx = we.clientX;
|
|
|
|
|
|
this.offsety = we.clientY;
|
|
|
|
|
|
this.tempx = parseInt(oSelf.style.left);
|
|
|
|
|
|
this.tempy = parseInt(oSelf.style.top);
|
|
|
|
|
|
this.dragapproved = true;
|
|
|
|
|
|
},
|
|
|
|
|
|
drag_drop: function(e, oSelf) {
|
|
|
|
|
|
if (!this.dragapproved) return;
|
|
|
|
|
|
var we = window.event || e;
|
|
|
|
|
|
oSelf.style.left = we.clientX - this.offsetx + this.tempx + "px";
|
|
|
|
|
|
oSelf.style.top = we.clientY - this.offsety + this.tempy + "px";
|
|
|
|
|
|
},
|
|
|
|
|
|
stopdrag: function() {
|
|
|
|
|
|
this.dragapproved = false;
|
|
|
|
|
|
if (this.ContentFrame) this.ContentFrame.style.display = "block";
|
|
|
|
|
|
},
|
|
|
|
|
|
create: function(strURL, iW, iH) {
|
|
|
|
|
|
if (CLODOP.PreviewBox.PopDiv) this.closeit();
|
|
|
|
|
|
var obody = document.body || document.getElementsByTagName("body")[0] || document.documentElement;
|
|
|
|
|
|
var vBoxDiv = document.createElement("div");
|
|
|
|
|
|
obody.appendChild(vBoxDiv);
|
|
|
|
|
|
vBoxDiv.style.cssText =
|
|
|
|
|
|
"position:absolute;z-index:91100;display:block;top:2px;border:1px solid #6B97C1;font-size:13px;";
|
|
|
|
|
|
vBoxDiv.style.width = iW + "px";
|
|
|
|
|
|
var iLeft = (obody.offsetWidth - iW) / 2;
|
|
|
|
|
|
if (window.screen.width < obody.offsetWidth) iLeft = (window.screen.width - iW) / 2;
|
|
|
|
|
|
if (iLeft < 0) iLeft = 0;
|
|
|
|
|
|
vBoxDiv.style.left = iLeft + "px";
|
|
|
|
|
|
vBoxDiv.style.height = iH + "px";
|
|
|
|
|
|
vBoxDiv.onmousedown = function(event) {
|
|
|
|
|
|
CLODOP.PreviewBox.initializedrag(event, this);
|
|
|
|
|
|
};
|
|
|
|
|
|
vBoxDiv.onmouseup = function() {
|
|
|
|
|
|
CLODOP.PreviewBox.stopdrag();
|
|
|
|
|
|
};
|
|
|
|
|
|
vBoxDiv.onmousemove = function(event) {
|
|
|
|
|
|
CLODOP.PreviewBox.drag_drop(event, this);
|
|
|
|
|
|
};
|
|
|
|
|
|
this.PopDiv = vBoxDiv;
|
|
|
|
|
|
var titleDiv = document.createElement("div");
|
|
|
|
|
|
vBoxDiv.appendChild(titleDiv);
|
|
|
|
|
|
titleDiv.style.cssText =
|
|
|
|
|
|
"position:absolute;left:0px;width:100%;font: bold 14px Arial;line-height:27px;height:27px;text-indent:26px;color: white;background:#8BACCF";
|
|
|
|
|
|
titleDiv.innerHTML = "打印预览";
|
|
|
|
|
|
var icoButton = document.createElement("button");
|
|
|
|
|
|
titleDiv.appendChild(icoButton);
|
|
|
|
|
|
icoButton.style.cssText = "background:transparent url(" + CLODOP.strHostURI +
|
|
|
|
|
|
"/c_favicon.ico) no-repeat scroll 0 0px;margin-left:5px;position:absolute;height:20px;line-height:100px;width:34px;left:3px;border:0;top:5px";
|
|
|
|
|
|
var CloseButton = document.createElement("button");
|
|
|
|
|
|
titleDiv.appendChild(CloseButton);
|
|
|
|
|
|
CloseButton.style.cssText = "background:transparent url(" + CLODOP.strHostURI +
|
|
|
|
|
|
"/images/c_winclose.png) no-repeat scroll 0 0px;margin-right:5px;position:absolute;height:20px;line-height:100px;width:34px;right:3px;border:0;top:4px";
|
|
|
|
|
|
CloseButton.onclick = function() {
|
|
|
|
|
|
CLODOP.PreviewBox.closeit(this);
|
|
|
|
|
|
};
|
|
|
|
|
|
var areaDiv = document.createElement("div");
|
|
|
|
|
|
vBoxDiv.appendChild(areaDiv);
|
|
|
|
|
|
areaDiv.style.cssText = "background:#F5F5F5;color:#000;border:0px;left:0px;top:0px;";
|
|
|
|
|
|
areaDiv.style.width = iW + "px";
|
|
|
|
|
|
areaDiv.style.height = (iH - 0) + "px";
|
|
|
|
|
|
this.ContentFrame = document.createElement("iframe");
|
|
|
|
|
|
areaDiv.appendChild(this.ContentFrame);
|
|
|
|
|
|
this.ContentFrame.style.cssText = "width:100%;height:100%;";
|
|
|
|
|
|
this.ContentFrame.src = strURL;
|
|
|
|
|
|
this.ContentFrame.frameBorder = "no";
|
|
|
|
|
|
this.FrantDiv = document.createElement("div");
|
|
|
|
|
|
obody.appendChild(this.FrantDiv);
|
|
|
|
|
|
this.FrantDiv.style.cssText =
|
|
|
|
|
|
"border:0px;left:0px;top:0px;filter: alpha(opacity=20); position: fixed; opacity: 0.2; -moz-opacity: 0.2; _position: absolute;z-index:91009; over-flow: hidden;";
|
|
|
|
|
|
if (CLODOP.Browser.IE && (document.compatMode == "BackCompat" || navigator.userAgent.indexOf("MSIE 6.0") > 0)) {
|
|
|
|
|
|
this.FrantDiv.style.width = obody.scrollWidth + "px";
|
|
|
|
|
|
this.FrantDiv.style.height = obody.scrollHeight + "px";
|
|
|
|
|
|
} else {
|
|
|
|
|
|
this.FrantDiv.style.width = "100%";
|
|
|
|
|
|
this.FrantDiv.style.height = "100%";
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
if (win.CLODOP2015_7028 && win.CLODOP2015_7028.Priority && win.CLODOP2015_7028.Priority > CLODOP.Priority) {
|
|
|
|
|
|
CLODOP = win.CLODOP2015_7028;
|
|
|
|
|
|
win.CLODOP_OK_Priority = win.CLODOP2015_7028.Priority;
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
win.LODOP = CLODOP;
|
|
|
|
|
|
win.CLODOP = CLODOP;
|
|
|
|
|
|
win.CLODOP2015_7028 = CLODOP;
|
|
|
|
|
|
win.CLODOP_OK_Priority = CLODOP.Priority;
|
|
|
|
|
|
|
|
|
|
|
|
// #ifndef APP-PLUS
|
|
|
|
|
|
win.CLODOP.DoInit();
|
|
|
|
|
|
// #endif
|
|
|
|
|
|
|
|
|
|
|
|
if (navigator.userAgent.indexOf("Lodop") < 0) win.CLODOP.OpenWebSocket();
|
|
|
|
|
|
})(window);
|
|
|
|
|
|
|
|
|
|
|
|
function getCLodop() {
|
|
|
|
|
|
return window.CLODOP2015_7028;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
async function getPrinterList(ip){
|
|
|
|
|
|
if (!ip) {
|
|
|
|
|
|
ip = uni.getStorageSync('fl_ip');
|
|
|
|
|
|
}
|
|
|
|
|
|
try{
|
|
|
|
|
|
const res = await uni.request({
|
|
|
|
|
|
url: `http://${ip}:8000/CLodopfuncs.js`,
|
|
|
|
|
|
});
|
|
|
|
|
|
if (res[0]) {
|
|
|
|
|
|
return [];
|
|
|
|
|
|
}
|
|
|
|
|
|
let temp = res[1].data.match(/"list":(.+)/);
|
|
|
|
|
|
const printerListString = temp[1].substr(0,temp[1].length-2);
|
|
|
|
|
|
let printerListArray = JSON.parse(printerListString);
|
|
|
|
|
|
|
|
|
|
|
|
let printerList = [];
|
|
|
|
|
|
printerListArray.forEach(item=>{
|
|
|
|
|
|
printerList.push(item.name)
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
return printerList;
|
|
|
|
|
|
}catch(e){
|
|
|
|
|
|
console.log(e);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
export {
|
|
|
|
|
|
getCLodop,
|
|
|
|
|
|
getPrinterList
|
|
|
|
|
|
};
|