113 lines
3.4 KiB
JavaScript
113 lines
3.4 KiB
JavaScript
|
apiready = function() {
|
||
|
var ctrl = {
|
||
|
init: {},
|
||
|
toast: {},
|
||
|
getContent: {}
|
||
|
};
|
||
|
ctrl.init = function() {
|
||
|
ctrl.getContent();
|
||
|
}
|
||
|
/**
|
||
|
* 弹出提示框
|
||
|
*/
|
||
|
ctrl.toast = function(msg) {
|
||
|
api.toast({
|
||
|
msg: msg,
|
||
|
duration: 3000,
|
||
|
locaiton: 'top'
|
||
|
});
|
||
|
}
|
||
|
ctrl.getContent = function() {
|
||
|
var url = '/ems/rest/ticket/gzp';
|
||
|
var id = api.pageParam.id;
|
||
|
var data = {
|
||
|
"gzpId": id
|
||
|
};
|
||
|
|
||
|
$api.get(url, data, function(res, err) {
|
||
|
if (err) {
|
||
|
ctrl.toast("网络请求失败");
|
||
|
} else {
|
||
|
if (res.code == 200) {
|
||
|
ctrl.render(res);
|
||
|
} else if (res.code == 404) {
|
||
|
var msg = "";
|
||
|
var messageId = api.pageParam.messageId;
|
||
|
if (messageId) {
|
||
|
msg = "消息不存在";
|
||
|
ctrl.toast(msg);
|
||
|
api.sendEvent({
|
||
|
name: 'removeMessage',
|
||
|
extra: {
|
||
|
messageId: messageId
|
||
|
}
|
||
|
});
|
||
|
window.setTimeout(function() {
|
||
|
api.closeWin();
|
||
|
}, 2000);
|
||
|
}else {
|
||
|
ctrl.toast("服务器响应错误" + (res.code ? (",错误码:" + res.code) : ""));
|
||
|
}
|
||
|
} else {
|
||
|
ctrl.toast("服务器响应错误" + (res.code ? (",错误码:" + res.code) : ""));
|
||
|
}
|
||
|
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
ctrl.render = function(res) {
|
||
|
var ticket = res.body;
|
||
|
var content = ticket.content.replace(/\\\"/g, "\"");
|
||
|
|
||
|
if ($api.getStorage('cus')) {
|
||
|
|
||
|
content = content.replace($api.guestKeysPattern, $api.guestName);
|
||
|
|
||
|
}
|
||
|
//如果有快照
|
||
|
if (ticket.snapshot && !$api.getStorage('cus')) {
|
||
|
|
||
|
var img = new Image();
|
||
|
img.src = res.prefix + ticket.snapshot;
|
||
|
img.onload = function() {
|
||
|
document.getElementById("snapshot").appendChild(img);
|
||
|
document.body.style.width = img.clientWidth + "px";
|
||
|
initLayout();
|
||
|
}
|
||
|
|
||
|
img.onerror = function() {
|
||
|
var contentDiv = document.getElementById("content");
|
||
|
contentDiv.innerHTML = content;
|
||
|
document.body.style.width = (contentDiv.clientWidth + 100) + "px"; //加边距
|
||
|
initLayout();
|
||
|
}
|
||
|
|
||
|
} else {
|
||
|
var contentDiv = document.getElementById("content");
|
||
|
contentDiv.innerHTML = content;
|
||
|
document.body.style.width = (contentDiv.clientWidth + 100) + "px"; //加边距
|
||
|
initLayout();
|
||
|
}
|
||
|
|
||
|
function initLayout() {
|
||
|
// 初始化页面宽度
|
||
|
var container = document.getElementById('container');
|
||
|
var viewPort = document.querySelector('meta[name="viewport"]');
|
||
|
var containerWidth = container.clientWidth;
|
||
|
var screenWidth = window.screen.width;
|
||
|
|
||
|
var scale = screenWidth / containerWidth;
|
||
|
|
||
|
if (api.systemType == 'android') {
|
||
|
document.body.scrollLeft = containerWidth / 2 - (containerWidth * scale / 2);
|
||
|
document.body.style.zoom = scale;
|
||
|
viewPort.setAttribute("content", "maximum-scale=3.0,minimum-scale=1,user-scalable=yes,width=device-width")
|
||
|
} else {
|
||
|
viewPort.setAttribute("content", "maximum-scale=3.0,minimum-scale=" + scale + ",user-scalable=yes,width=device-width,initial-scale=" + scale)
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
ctrl.init();
|
||
|
|
||
|
}
|