op.jsp
13.6 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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=UTF-8" isELIgnored="true"%>
<%@ page import="com.weaver.formmodel.mobile.utils.MobileCommonUtil"%>
<%@ include file="/mobilemode/admin/init.jsp"%>
<%
String theme = "";
String type = Util.null2String(request.getParameter("type"));
String refId = Util.null2String(request.getParameter("refId"));
Cookie[] cookies = request.getCookies();
for(int i = 0; cookies != null && i < cookies.length; i++){
Cookie c = cookies[i];
if(c != null && "webeditor_theme".equals(c.getName())){
theme = Util.null2String(c.getValue());
}
}
if(theme.equals("")){theme = "light";}
%>
<html>
<head>
<title>移动建模开放平台</title>
<meta charset="utf-8" />
<link type="text/css" rel="stylesheet" href="/mobilemode/admin/src/common/css/common.css">
<link type="text/css" rel="stylesheet" href="/mobilemode/admin/src/openPlatform/op.css">
</head>
<body class="<%=theme%>">
<header id="header">
<div class="op-title">e-cology | <%=MobileCommonUtil.getHtmlLabelName(385646,user.getLanguage(),"移动建模开放平台")%></div>
<nav class="tools-tab">
<a href="javascript:;" data-mode="run" data-action="modeChange"><%=MobileCommonUtil.getHtmlLabelName(385647,user.getLanguage(),"运行模式")%></a>
<a href="javascript:;" data-mode="dev" data-action="modeChange"><%=MobileCommonUtil.getHtmlLabelName(385648,user.getLanguage(),"开发模式")%></a>
</nav>
<nav class="tools-menu" style="visibility: hidden;">
<a href="javascript:;" class="icon-run" data-action="run"><i class="iconfont"></i><%=MobileCommonUtil.getHtmlLabelName(385649,user.getLanguage(),"运行")%></a>
<a href="javascript:;" class="icon-saved hide" data-action="save">
<div class="loading"><span class="icon-2"></span></div>
<i class="iconfont"></i><%=MobileCommonUtil.getHtmlLabelName(384114,user.getLanguage(),"保存")%></a>
<a href="javascript:;" class="icon-plugin-export hide" data-action="export"><i class="iconfont"></i><%=MobileCommonUtil.getHtmlLabelName(384125,user.getLanguage(),"导出")%></a>
<a href="javascript:;" class="icon-delete hide" data-action="delete"><i class="iconfont"></i><%=MobileCommonUtil.getHtmlLabelName(384118,user.getLanguage(),"删除")%></a>
<a href="javascript:;" class="icon-theme" data-action="theme"><i class="iconfont"></i><%=MobileCommonUtil.getHtmlLabelName(25025,user.getLanguage(),"主题")%></a>
<a href="javascript:;" class="icon-settings" data-action="settings"><i class="iconfont"></i><%=MobileCommonUtil.getHtmlLabelName(385650,user.getLanguage(),"设置")%></a>
</nav>
</header>
<div id="main-container">
<div id="business-container">
<div id="menu-container">
<div class="vertical-menu">
<div class="plugin" data-href="plugin"></div>
<div class="function" data-href="function"></div>
<div class="skin" data-href="skin"></div>
</div>
</div>
<div id="panel-container">
<div id="plugin-panel" class="panel">
<div class="panel-header">
<header>
<span><%=MobileCommonUtil.getHtmlLabelName(383339,user.getLanguage(),"插件")%></span>
<div class="actions"><a class="action-btn" data-action="showDropMenu"><i class="iconfont icon-plus-light"></i></a></div>
<div class="ad-dropdown">
<ul class="ad-dropdown-menu">
<li class="ad-dropdown-menu-item">
<a href="javascript:;" data-action="create"><i class="iconfont fa icon-plus fa-small"></i><%=MobileCommonUtil.getHtmlLabelName(384112,user.getLanguage(),"新建")%></a>
</li>
<li class="ad-dropdown-menu-item">
<a href="javascript:;" data-action="import"><i class="iconfont fa icon-plug fa-small"></i><%=MobileCommonUtil.getHtmlLabelName(384124,user.getLanguage(),"导入")%></a>
</li>
</ul>
</div>
</header>
<section class="search">
<input id="plugins-search-input" value="" autocomplete="off" type="text" placeholder="input search text" />
<a href="javascript:;" class="clean-icon" data-action="clean"><i class="iconfont icon-del fa-normal-1x"></i></a>
<a href="javascript:;" class="search-icon"><i class="iconfont icon-search fa-normal-1x"></i></a>
</section>
</div>
<div class="panel-content"></div>
</div>
<div id="function-panel" class="panel">
<div class="panel-header">
<header>
<span>API</span>
<div class="actions"><a class="action-btn" data-action="create"><i class="iconfont icon-plus-light"></i></a></div>
</header>
<section class="search">
<input id="function-search-input" value="" autocomplete="off" type="text" placeholder="input search text" />
<a href="javascript:;" class="clean-icon" data-action="clean"><i class="iconfont icon-del fa-normal-1x"></i></a>
<a href="javascript:;" class="search-icon"><i class="iconfont icon-search fa-normal-1x"></i></a>
</section>
</div>
<div class="panel-content"></div>
</div>
<div id="skin-panel" class="panel">
<div class="skin-wrapper">
<div class="panel-header">
<header>
<span><%=MobileCommonUtil.getHtmlLabelName(84213,user.getLanguage(),"皮肤")%></span>
<div class="actions"><a class="action-btn" data-action="create"><i class="iconfont icon-plus-light"></i></a></div>
</header>
<section class="search">
<input id="skin-search-input" value="" autocomplete="off" type="text" placeholder="input search text" />
<a href="javascript:;" class="clean-icon" data-action="clean"><i class="iconfont icon-del fa-normal-1x"></i></a>
<a href="javascript:;" class="search-icon"><i class="iconfont icon-search fa-normal-1x"></i></a>
</section>
</div>
<div class="panel-content"></div>
</div>
<div class="plugin-list">
<div class="plugin-search-icon"><i class="iconfont icon-filter"></i></div>
<ul></ul>
</div>
</div>
</div>
</div>
<div id="editor-container">
<iframe id="editor-run-frame" class="editor-frame" src="webEditor.jsp"></iframe>
<iframe id="editor-dev-frame" class="editor-frame" src="webEditor.jsp?mode=dev"></iframe>
</div>
</div>
<div id="theme-cfg">
<div class="theme-panel dark" data-theme="dark"></div>
<div class="theme-panel light" data-theme="light"></div>
</div>
<div id="editor-cfg">
<div class="field-label">
<%=MobileCommonUtil.getHtmlLabelName(385652,user.getLanguage(),"代码缩进")%>
</div>
<div class="field-content">
<input class="config-tabSize" type="range" min="1" max="6" name="tabSize" value="4" list="tab-width-options" style="width: 100px;vertical-align: middle;">
<datalist id="tab-width-options">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
</datalist>
<span class="field-inline-desc">(<span>4</span><%=MobileCommonUtil.getHtmlLabelName(385655,user.getLanguage(),"个空格")%>)</span>
</div>
<div class="field-label">
<%=MobileCommonUtil.getHtmlLabelName(385654,user.getLanguage(),"自动更新预览")%>
</div>
<div class="field-content">
<input class="config-autoRun" type="checkbox" name="autoRun" checked="checked"/><span style="top: 0px;"><%=MobileCommonUtil.getHtmlLabelName(31676,user.getLanguage(),"启用")%></span>
<div class="field-checkbox-desc"><%=MobileCommonUtil.getHtmlLabelName(385656,user.getLanguage(),"如果启用,预览面板会自动更新为您的代码。")%>
<br/><%=MobileCommonUtil.getHtmlLabelName(385657,user.getLanguage(),"如果禁用,请使用“运行”按钮更新。")%></div>
</div>
</div>
<div id="plugin-create-panel" class="create-panel">
<form data-checkStatus="false">
<div class="form-group">
<div class="row">
<span class="col-2 span-control"><%=MobileCommonUtil.getHtmlLabelName(385658,user.getLanguage(),"插件标识:")%></span>
<div class="col-m-8 required" required>
<input class="form-control" name="id" type="text" placeholder="<%=MobileCommonUtil.getHtmlLabelName(385659,user.getLanguage(),"英文标识,建议使用帕斯卡命名法,如BarChart")%>"/>
</div>
</div>
<div class="row">
<span class="col-2 span-control"><%=MobileCommonUtil.getHtmlLabelName(385660,user.getLanguage(),"插件名称:")%></span>
<div class="col-m-8 required" required>
<input class="form-control" name="text" type="text" placeholder="<%=MobileCommonUtil.getHtmlLabelName(385661,user.getLanguage(),"中文名称,如柱状图")%>"/>
</div>
</div>
<div class="errMsg"></div>
</div>
</form>
</div>
<div id="function-create-panel" class="create-panel">
<div class="form-group">
<div class="row">
<div class="form-zip-upload">
<div class="form-upload-wrapper">
<i class="form-upload-icon"></i>
<span><%=MobileCommonUtil.getHtmlLabelName(385662,user.getLanguage(),"上传函数包")%></span>
<input class="form-control" name="file" type="file" single="single" accept=".zip,.rar"/>
</div>
<span class="file-name"></span>
<div class="form-upload-tip">
<%=MobileCommonUtil.getHtmlLabelName(385680,user.getLanguage(),"初次使用请")%><a class="download-link" href="javascript:window.open('/mobilemode/admin/function/mobilemode_custom_function.zip', '_self')"><%=MobileCommonUtil.getHtmlLabelName(385677,user.getLanguage(),"下载")%></a><%=MobileCommonUtil.getHtmlLabelName(385682,user.getLanguage(),"并参考函数示例包中的示例进行自定义函数的开发。")%>
</div>
</div>
</div>
</div>
</div>
<div id="function-cover-panel" class="create-panel">
<div class="form-group">
<div class="row">
<div class="form-zip-upload">
<div>
<%=MobileCommonUtil.getHtmlLabelName(516340,user.getLanguage(),"系统已存在相同名称的函数,是否覆盖?")%>
</div>
</div>
</div>
</div>
</div>
<div id="skin-create-panel" class="create-panel">
<div class="form-group">
<div class="row">
<span class="col-2 span-control"><%=MobileCommonUtil.getHtmlLabelName(385670,user.getLanguage(),"皮肤名称:")%></span>
<div class="col-m-8 required" required>
<input class="form-control" name="name" type="text" placeholder="<%=MobileCommonUtil.getHtmlLabelName(383222,user.getLanguage(),"请输入皮肤名称")%>"/>
</div>
</div>
<div class="row">
<span class="col-2 span-control"><%=MobileCommonUtil.getHtmlLabelName(127472,user.getLanguage(),"效果图片:")%></span>
<div class="col-m-8">
<div class="form-file-upload">
<img />
<input class="form-control" name="previewImg" type="file" single="single" accept="image/jpg,image/jpeg,image/png,image/gif"/>
</div>
</div>
</div>
<div class="errMsg"><%=MobileCommonUtil.getHtmlLabelName(385671,user.getLanguage(),"皮肤名称 为必填项,请填写。")%></div>
</div>
</div>
<script type="text/template" id="plugin-import-panel">
<div class="dialog-panel">
<div class="form-group">
<div class="row">
<div class="form-zip-upload">
<div class="form-upload-wrapper">
<i class="form-upload-icon"></i>
<span><%=MobileCommonUtil.getHtmlLabelName(385674,user.getLanguage(),"上传插件包")%></span>
<input class="form-control" name="file" type="file" single="single" accept=".zip,.rar"/>
</div>
<span class="file-name"></span>
<div class="form-upload-tip">
<%=MobileCommonUtil.getHtmlLabelName(388594,user.getLanguage(),"1、导入自定义插件,")%><%=MobileCommonUtil.getHtmlLabelName(385680,user.getLanguage(),"初次使用请")%><a class="download-link" href="javascript:window.open('/mobilemode/admin/plugin/mobilemode_custom_plugin.zip', '_self')"><%=MobileCommonUtil.getHtmlLabelName(385677,user.getLanguage(),"下载")%></a><%=MobileCommonUtil.getHtmlLabelName(385681,user.getLanguage(),"并参考插件示例包中的示例进行自定义插件的开发。")%>
<br/><br/>
<%=MobileCommonUtil.getHtmlLabelName(388595,user.getLanguage(),"2、导入插件时,因插件中包含class文件,")%><span style="color: red"><%=MobileCommonUtil.getHtmlLabelName(501041,user.getLanguage(),"导入后可能会导致ecology服务重启,")%></span><%=MobileCommonUtil.getHtmlLabelName(501042,user.getLanguage(),"请知晓。")%>
<br/><br/>
<%=MobileCommonUtil.getHtmlLabelName(501068,user.getLanguage(),"3、导入插件后,为确保插件功能正常生效,需将ecology服务重启。")%>
</div>
</div>
</div>
</div>
</div>
</script>
<script type="text/javascript">
requirejs.config({
paths: {
'openPlatform': './openPlatform/op',
'op/plugin': './openPlatform/modules/plugin',
'op/function': './openPlatform/modules/function',
'op/skin': './openPlatform/modules/skin'
}
});
require(["openPlatform"]);
</script>
<script type="text/javascript">
var _tabType = op_GetHashQuery('type') ? op_GetHashQuery('type') : "<%=type%>";
var _refId = op_GetHashQuery('refId') ? op_GetHashQuery('refId') : "<%=refId%>";
var maximization = function(isresize) {
$("#main-container").toggleClass("maximization", !isresize);
};
function op_GetHashQuery(name){
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.hash.substr(3).match(reg);
if (r != null) {
return unescape(r[2]);
}
return null;
}
function op_changeURLHash(arg,arg_val){
var url = window.location.hash ? window.location.hash : '#/';
var pattern = arg+'=([^&]*)';
var replaceText = arg+'='+arg_val;
if(url.match(pattern)){
var tmp='/('+ arg+'=)([^&]*)/gi';
tmp=url.replace(eval(tmp),replaceText);
return tmp;
}else{
if(url.match('[\?]')){
return url+'&'+replaceText;
}else{
return url+'?'+replaceText;
}
}
}
</script>
</body>
</html>