op.jsp 13.6 KB
<!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>