page.jsp 3.89 KB
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="com.weaver.formmodel.mobile.ui.model.AppHomepage"%>
<%@ page import="com.weaver.formmodel.mobile.ui.manager.MobileAppHomepageManager"%>
<%@ page import="com.weaver.formmodel.mobile.ui.manager.MobiledeviceManager"%>
<%@ page import="com.weaver.formmodel.mobile.types.ClientType"%>
<%@ page import="com.weaver.formmodel.mobile.utils.MobileCommonUtil"%>
<%@ page import="net.sf.json.JSONObject"%>
<%@ page import="com.weaver.formmodel.mobile.mec.MECManager"%>
<%@ page import="com.api.mobilemode.constant.LayoutRightType" %>
<%@ include file="./base.jsp"%>
<%
int appid = Util.getIntValue(request.getParameter("appid"), -1);
int appHomepageId = Util.getIntValue(request.getParameter("appHomepageId"), -1);
int istab = Util.getIntValue(request.getParameter("istab"), -1);
ClientType clienttype = MobileCommonUtil.getClientType(request);
int mobiledeviceid = MobiledeviceManager.getInstance().getDeviceByClienttype(clienttype);
AppHomepage appHomepage;
if(appHomepageId != -1){
	appHomepage = MobileAppHomepageManager.getInstance().getAppHomepage(appHomepageId, mobiledeviceid);
	appid = appHomepage.getAppid();
}else if(appid != -1){
	appHomepage = MobileAppHomepageManager.getInstance().getAppHomepageByAppid(appid, mobiledeviceid);
	appHomepageId = appHomepage.getId();
}else{
	out.println("没有指定页面id");
	return;
}
//判断是否有权限
int right = 0;
int uitype = Util.getIntValue(appHomepage.getUitype(), -1);
int modeid = Util.getIntValue(Util.null2String(appHomepage.getModelid()), -1);
String billid = Util.null2String(request.getParameter("billid"));
boolean hasPermission = true;
if(uitype != -1 && !MobileCommonUtil.isBillidForThumbnail(billid)){
	right = MobileAppHomepageManager.getInstance().getAppHomepageRightInfo(uitype, modeid, billid, user);
	hasPermission = right > LayoutRightType.NO_RIGHT.getLevel();
}
String noPermissionLabel = MobileCommonUtil.getHtmlLabelName(388918, user.getLanguage(), "无权限访问");

String pageName = Util.null2String(appHomepage.getPagename());
String pageContent = Util.null2String(appHomepage.getPageContent());
String pageid = "page_" + new Date().getTime() + "_" + appid + "_" + appHomepageId;
String pageContentId = pageid + "_content";
String pageScrollId = pageid + "_scroller";
String pageKey = UUID.randomUUID().toString().replaceAll("-", "");
//页面插件列表
List<Map<String, Object>> components = MECManager.getComponentsWithContent(pageContent, true);
Map<String, String> pageParam = new HashMap<String, String>();
Enumeration<String> pNames = request.getParameterNames();
while(pNames.hasMoreElements()){
	String pName = pNames.nextElement();
	String pValue = request.getParameter(pName);
	pageParam.put(pName, pValue);
}
pageParam.put("pageKey", pageKey);
String pageclass = istab == 1 ? "tabpanel" : "page";
String dataform = istab == 1 ? "show_hide" : "";
%>
<% if(hasPermission){%>

<div id="<%=pageid %>" data-title="<%=pageName %>" class="<%=pageclass %> out" data-onpagefirstinto="pageInit" data-form="<%=dataform%>">
	<script type="text/javascript">__meta__.pageParams["<%=pageid %>"] = <%=JSONObject.fromObject(pageParam)%>;</script>
	<div class="page-header"></div>
	<div class="page-content" id="<%=pageContentId %>">
		<div class="page-scroller" id="<%=pageScrollId %>">
			<%for(Map<String, Object> c : components){%>
			<abbr id="<%=c.get("id") %>" data-type="<%=c.get("type") %>"></abbr>
			<%}%>
		</div>
	</div>
	<div class="page-footer"></div>
</div>
<% } else { %>
<div id="<%=pageid %>" data-title="<%=pageName %>" class="<%=pageclass %> out" data-onpagefirstinto="pageInit" data-form="<%=dataform%>">
	<script type="text/javascript">__meta__.pageParams["<%=pageid %>"] = <%=JSONObject.fromObject(pageParam)%>;</script>
	<div class="page-tip page-tip-show page-forbidden" data-title="<%=noPermissionLabel%>"></div>
	<div class="page-header"></div>
	<div class="page-footer"></div>
</div>
<% }%>