| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300 |
- <html>
- <head>
- <title>首页模板官方</title>
- <!-- 调用jquery,注意你放置的目录不要搞错了哦! -->
- <js.ss file="/ss/jquery/jquery-1.7.2.min.js"/>
- <!-- 调用gridster.js和css,注意你放置的目录不要搞错了哦! -->
- <js.ss file="/ss/gridster/jquery.gridster.min.js"/>
- <js.ss file="/ss/gridster/Gridster-Wd.js"/>
- <css.ss file="/ss/gridster/jquery.gridster.min.css"/>
- <js.ss file="/ss/menu/dhtmlxmenu_ext.js"/>
- <js.ss file="/ss/base.js"/>
- <js.ss file="/ss/artdialog/artDialogUtil.js"/>
- <script>
- if (!window.wd) var wd = {};
- if (!wd.display) wd.display = {};
- wd.display.wdDialogId = 4445;
- if (!wd.app) wd.app = {};
- wd.app.name = 'ry';
- </script>
- <js.ss file="/ss/masklayer.js"/>
- <js.ss file="/ss/wdDialogInit.js"/>
- <js.ss file="/ss/common.js"/>
- <js.ss file="/ss/display.js"/>
- <js.ss file="/ss/nicescroll/jquery.nicescroll.js"/>
- <js.ss file="/ss/nicescroll/jquery.nicescroll.iframehelper.min.js"/>
- <css.ss file="/ss/window/dhtmlxwindows.css"/>
- <css.ss file="/ss/window/dhtmlxwindows_dhx_blue.css"/>
- <js.ss file="/ss/window/dhtmlxcommon.js"/>
- <js.ss file="/ss/window/dhtmlxwindows.js"/>
- <js.ss file="/ss/window/dhtmlxcontainer.js"/>
- <js.ss file="/ss/growHeight.js"/>
- <style>
- <%--首页部件居中--%>
- .gridster>ul {
- margin-top: 5px;
- margin-bottom: 30px;
- margin-left: 0px;
- width:100%;
- height:100%;
- background-color: rgba(255, 255, 255, 0);
- margin: 0 auto;
- }
- <%--首页部件关闭按钮--%>
- .gridster .close {
- background-image: url("/ss/gridster/img/close-1.png");
- cursor: pointer;
- right: 1px;
- top: 1px;
- position: absolute;
- width: 15px;
- height: 15px;
- font-size: 0;
- z-index: 2;
- }
- <%--工具条--%>
- .pg_cj {
- position: relative;
- top: 0px;
- left: 0px;
- width: 100%;
- height: 100%;
- overflow: auto;
- }
- .nav_btn {
- position: fixed;
- top: 12;
- z-index: 1111;
- width: 100%;
- margin-left:5px;
- }
- </style>
- </head>
- <body>
-
- <!--部件-罗达桓-->
- <div id="slder" style="display:none; width:987px; height:35px;">
- <div class="nav_btn" style="max-width: 1024px;transform: translateX(-50%);left: 50%;margin:0 auto;">
-
- <div style="float: left;">
- <span><input name="symbbjlb" placeholder="类别" width="115px"/></span>
- <span><input name="symbbjid" placeholder="部件" width="115px"/></span>
- <ccp.ss name="bjlb_bj@symb"/>
- <button class="content-button" onclick="add();">
- 增加
- </button>
- <input type="hidden" value="${sessionScope.ssUser.ryid}" id="yhid" />
- <input type="hidden" value="${sessionScope.ssUser.xm}" id="xm" />
- <input type="hidden" value="${GxhGFDqSyMbid}" id="GxhGFDqSyMbid" />
- <notEqual.ss val="${GxhGFDqSyMbid}" val2="0"> <%-- 改 logic:notEqual name="GxhGFDqSyMbid" value="0"。Lin --%>
- <button style="width:120px" class="content-button" onclick="saveedit()">
- 保存当前模板
- </button>
- </notEqual.ss>
- <button style="width:120px" class="content-button" onclick="SYBJCTRL.saveAsMB()" >
- 另存为新模板
- </button>
- <button style="width:120px" class="content-button" onclick="exitEdit()" >
- 退出(不保存)
- </button>
- </div>
-
-
- <div style="float: right;">
- <span>当前: </span>
- <%-- 去掉 <codebook:option,共用 <objp.ss。Lin
- -- 去掉,没有 空白模板 和 根模板 了。Lin
- -- 再用回,onchange 没起作用。Lin --%>
- <select id="mbselect" class="sel" onchange="SYBJCTRL.selectMB(this.options[this.options.selectedIndex].value)">
- <%-- 去掉,不写 0L,写 个人首页模板ID。Lin
- -- 没有 根模板 了
- <option value="0">空白模板</option>
- <option value="">根模板</option> --%>
- <cbOpt.ss cb="grsymb" defVal="${GxhGFDqSyMbid}" />
- </select>
- <%-- 再用回上面的 <select,onchange 没起作用。Lin
- <input name="mbselect" value="${GxhGFDqSyMbid}" width="120px"
- onchange="SYBJCTRL.selectMB(this.options[this.options.selectedIndex].value)"/>
- <objp.ss name="mbselect" cb="grsymb"/>
- --%>
- <notEqual.ss val="${GxhGFDqSyMbid}" val2="0"> <%-- 改 logic:notEqual name="GxhGFDqSyMbid" value="0"。Lin --%>
- <button style="width:80px" id="grsymb_del_btn" class="content-button" onclick="SYBJCTRL.delMB()" >
- 删除
- </button>
- </notEqual.ss>
- </div>
- </div>
- </div>
- <div id="pg_cj" class="pg_cj scrollbar" style="position:relative;top:0px;left:0px;width:100%;height:100%;overflow:auto;padding-top:25px;">
- <div class="gridster ready">
- <ul style="position: relative;padding-bottom: 25px;">
- </ul>
- </div>
- </div>
- </body>
- <script>
-
- //测试 准备读取的数据
- var json='${json}';
- var SESSION_STATE="${sessionScope.SESSION_STATE}";
- var EditType="${sessionScope.Edit-Type}"; // "$@{sessionScope['Edit-Type']}"。Lin
- var GxhStatus="${sessionScope.GxhStatus}";
-
- var gridster;
- var SYBJCTRL;
-
- //Gridster参数
- var widget_base_dimensions=[dimensions,dimensions]; //宽高的单位像素
- var widget_margins=[margins,margins]; //模块的间距像素 [上下,左右]
- var newWidget_widget_dimensions_value=[12,9];//新增部件默认宽高值[]
-
-
- //通过javascript脚本来配置拖动实例,随后我们会讲每个配置参数的意义
- //首先定义一个变量gridster,为了以后调用gridster的方法
- $(function() {
- gridster = $(".gridster ul").gridster({ //通过jquery选择DOM实现gridster
- widget_base_dimensions:widget_base_dimensions, //模块的宽高 [宽,高]
- widget_margins: widget_margins, //模块的间距 [上下,左右] //5.1?? 避免gridster Bug,新增时总存在缝隙会导致生成位置有错 by Rd 2016-01-07
- autogrow_rows: true,
- autogrow_cols:true,
- max_cols: Math.max($(wd.topWindow).outerWidth(true),calWidthAndHeight(1025)),//最大1024宽度
- draggable: {
- handle: null //'header' //模块内定义拖动的元素<header>,这里也支持jquery选择器,如"span.drag_handle"
- },
- helper: 'clone',
- resize: {
- enabled: true,
- resize:function(e, ui, $widget){
- $widget.find("[onload]").trigger("onload");
- }
- }
- }).data('gridster');
- SYBJCTRL=new GridsterWd(gridster,json);//初始化首页部件控制器 by Rd 2015-12-24
- });
-
-
- // 初始化编辑
- function userEdit(gfOrgr) {
- SYBJCTRL.userEdit(gfOrgr);
- if(gfOrgr=="gr"){ //处理编辑模板下点击编辑模板的情况
- SYBJCTRL.exitMB('open');
- }
- };
-
- // 新增方法
- function add() {
- var sybjsjLb = $('[name=symbbjlb]')[0].value;
- var sybjsjId =$('[name=symbbjid]')[0].value;
- //请求部件数据 [bjId] [bjLb] [serviceUrl]
- var data=SYBJCTRL.getParams("serviceType=2&sybjsjLb="+sybjsjLb+"&sybjsyId="+sybjsjId);
- //请求服务获得数据信息
- if(data["bjId"]){
-
- //新部件改为放在最后
- var new_col=1;
- var new_row=1;
- $("li.gs-w").each(function(){
- new_row=Math.max($(this).data("row")+$(this).data("sizey"),new_row);
- });
-
- gridster.add_widget2(data["bjId"],data["bjLb"],data["serviceUrl"],calWidthAndHeight(data["size_x"]),calWidthAndHeight(data["size_y"]),new_col,new_row);
- var liId="#"+data['bjId'];
- //返回部件代码
- $(liId+" ."+SYBJCTRL.containerForLoad).load(data["serviceUrl"],{"sybjId":data["bjId"],"sybjLb":data["bjLb"],"serviceUrl":data["serviceUrl"]},function(){
- $(liId+" ."+SYBJCTRL.imgheader).attr({style:SYBJCTRL.flushIconStyle});
- });
- $(this).on('click','.'+SYBJCTRL.imgheader,function(){//绑定刷新事件
- SYBJCTRL.flushBj(liId);
- });
- }
- }
-
-
- //加载部件(初始化数据并绑定刷新事件)
- function loadHtmlAndBindFlushEvent() {
-
- $("li.gs-w").on("click",'.'+SYBJCTRL.imgheader,function(){
- var id=$(this).parents("[initurl]").attr("id");
- if(id)
- SYBJCTRL.flushBj("#"+id, this);
- }).on('mousedown',function(){
- var id=$(this).parents("[initurl]").attr("id");
- if(id)
- SYBJCTRL.EventCtrl.setBjId("#"+id);
- });
- //遍历类名为gs-w的元素
- $("li.gs-w").each(function(){
- try{
- //有li标签拿到bjId,bjLb,initUrl
- var id=$(this).attr("id");
- var bjLb=$(this).attr("bjlb");
- var initUrl=$(this).attr("initurl");
- //返回部件代码,并绑定刷新事件
- $(this).find("."+SYBJCTRL.containerForLoad).load(initUrl,{"sybjId":id,"sybjLb":bjLb});
- }catch(e){
- console.log(e)
- }
-
- });
- }
-
- function flushBj(liId){
- SYBJCTRL.flushBj(liId);
- }
-
- // 开启编辑模式
- function yesedit() {
- SYBJCTRL.yesedit();
- };
-
- // 保存方法
- function saveedit() {
- SYBJCTRL.saveedit(SESSION_STATE);
- };
-
-
- function closediv(obj) {
- SYBJCTRL.closediv(obj);
- };
-
-
- //初始化gridster,开启编辑状态
- window.onload = function() {
-
- SYBJCTRL.initGridster();
- SYBJCTRL.yesedit();
- wd.topWindow.gxhymWindow = window;
- loadHtmlAndBindFlushEvent();
- }
-
-
- // window.onbeforeunload=function(){
- // SYBJCTRL.exitMB('forced');
- // }
- function exitEdit(){
- //SYBJCTRL.rollBackChangeAndExit();
- SYBJCTRL.exitMB();
- wd.topWindow.wd.display.home();
- }
-
- </script>
- </html>
|