appThumbnail.jsp
3.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="com.weaver.formmodel.util.NumberHelper"%>
<%@ page import="com.weaver.formmodel.util.StringHelper"%>
<%@ include file="/mobilemode/init2.jsp"%>
<%
int appid = NumberHelper.string2Int(request.getParameter("appid"),0);
int appHomepageId = NumberHelper.string2Int(request.getParameter("appHomepageId"), -1);
String timestamp = StringHelper.null2String(request.getParameter("timestamp"));
%>
<script type="text/javascript">
window.alert = function(){ };
window.confirm = function() { };
window.prompt = function() { };
</script>
<script src="/mobilemode/admin/dep/html2canvas/html2canvas.min.js" type="text/javascript"></script>
<jsp:include page="/mobilemode/mobile/view.html"></jsp:include>
<style>
.page,
.page-content {
overflow: hidden !important;
}
.wev-comp-List.wev-refreshing .wev-table-view-wrapper,
.wev-comp-NList.wev-refreshing .wev-table-view-wrapper,
.wev-comp-UrlList.wev-refreshing .wev-table-view-wrapper,
.wev-comp-LargeList.wev-refreshing .wev-table-view-wrapper,
.wev-comp-APIList.wev-refreshing .wev-table-view-wrapper,
.wev-comp-Timelinr.wev-refreshing .wev-table-view-wrapper,
.wev-comp-HoriList.wev-refreshing .wev-table-view-wrapper,
.wev-comp-Tree.wev-refreshing .wev-table-view-wrapper,
.wev-comp-RSSList.wev-refreshing .wev-table-view-wrapper,
.wev-comp-DetailTable.wev-refreshing .wev-detailtable-content-wrapper {
transform: none !important;
-webkit-transform: none !important;
min-height: auto !important;
}
.wev-refresh-loading{
display: none !important;
}
</style>
<canvas id="canvas"></canvas>
<script type="text/javascript">
window.onThumbUpload = function () {};
var appHomepageId = <%=appHomepageId %>;
var isReadly = false;
var v = setInterval(function(){
if(typeof($load) != "undefined"){
clearInterval(v);
$load(function(){
require("mUtil").pluginLoad("page_" + appHomepageId, function(){
if(!isReadly){
isReadly = true;
setTimeout(screenshot, 1000);
}
});
});
setTimeout(function(){
if(!isReadly){
isReadly = true;
screenshot();
}
}, 10000);
}
}, 300);
function screenshot() {
html2canvas($("#page_"+appHomepageId)[0], {
useCORS: true,
logging: false
}).then(function(canvas) {
var base64 = canvas.toDataURL('image/png');
upload(base64).then(function () {
window.onThumbUpload();
});
});
}
function upload(base64) {
var fdata = new FormData();
function dataURLtoBlob(dataurl) {
var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1],
bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);
while (n--) {
u8arr[n] = bstr.charCodeAt(n);
}
return new Blob([u8arr], { type: mime });
}
fdata.append('appHomepageId', appHomepageId);
fdata.append('thumbnail', dataURLtoBlob(base64));
return $.ajax({
url: "/api/mobilemode/admin/designer/saveAppHomepageThumbnail",
data: fdata,
type: 'post',
processData: false,
contentType: false,
success: function(result) {
result = JSON.parse(result);
if(result.api_status && parent.require) {
parent.require('appdesigner').reloadThumbnail('S' + appHomepageId, result.data.thumbnail, "<%=timestamp%>");
}
}
});
}
</script>
</body>
</html>