前言
记录禅道8到禅道12的问题与解决方法
其他需要注意的会及时记录到这篇文章,请等待。
Gitee代码:https://gitee.com/bigearrabbit/kevindefine.git
禅道插件地址:https://www.zentao.net/extension-viewExt-62.html
版本:7
一、界面布局
1、顶部工具条
如果是禅道的顶级工具条,会自动适配的
如果是向Kevin小工具的,占据了顶级工具条,要进行适配
zentao 8
Gitee代码:svn://gitee.com/bigearrabbit/kevindefine/module/kevincom/view/header.html.php
版本:3
<header id='header'>
<nav id='mainmenu'>
<?php $this->loadModel("kevincom");
kevincomModel::printMainmenu("kevin",$this->moduleName);?>
</nav>
<nav id="modulemenu">
<?php commonModel::printModuleMenu($this->moduleName);?>
</nav>
</header>
<div id='wrap'>
<?php endif;?>
<div class='outer'>
原来的函数不管用,干脆把禅道的代码拷贝过来,再进行修改,如下。
svn://gitee.com/bigearrabbit/kevindefine/module/kevincom/view/header.html.php
版本:4
<?php
<header id='header'>
<div id='mainHeader'>
<div class='container'>
<hgroup id='heading'>
<h1 class='companyname'><?php echo html::a(helper::createLink('my', 'index'), '<i class="icon-home"></i> HOME'); ?></h1>
</hgroup>
<nav id='navbar'><?php commonModel::printModuleMenu("kevin"); ?></nav>
<div id='toolbar'>
<div id="userMenu">
<?php common::printSearchBox(); ?>
<ul id="userNav" class="nav nav-default">
<li><?php common::printUserBar(); ?></li>
</ul>
</div>
</div>
</div>
</div>
<div id='subHeader'>
<div class='container'>
<div id="pageNav" class='btn-toolbar'><?php if (isset($lang->modulePageNav)) echo $lang->modulePageNav; ?></div>
<nav id='subNavbar'><?php commonModel::printModuleMenu($this->moduleName); ?></nav>
<div id="pageActions">
<div class='btn-toolbar'><?php if (isset($lang->modulePageActions)) echo $lang->modulePageActions; ?></div>
</div>
</div>
</div>
</header>
<main id='main' <?php if (!empty($config->sso->redirect)) echo "class='ranzhiFixedTfootAction'"; ?> >
<?php endif; ?>
<div class='container'>
效果:

2、左右布局
Gitee代码:svn://gitee.com/bigearrabbit/kevindefine/module/kevinsoft/view/statistic.html.php
版本:7
zentao 12的主要布局,左右伸缩的效果。
这个和zentao 8的有不同,要按照下面的div去重新布置。
<div id="mainContent" class="main-row fade">
<div class="side-col" id="sidebar">
<div class="sidebar-toggle"><i class="icon icon-angle-left"></i></div>
<div class="cell">
侧边Div栏,要一直更改到上面一行
这个是左侧的菜单边框
放置各种div,文字等
</div>
</div>
<div class='main main-table'>
这个是正文右侧div,
默认是透明的,
可以根据需要设定为白色背景。
</div>
</div>
效果图:
点击中间的小按钮,关闭的样子:

二、其他修改
1、图标修改
删除图标关键字从remove改为trash
common::printIcon('kevinsoft', 'filedelete', "id=" . $file->id, '', 'list', 'remove', 'hiddenwin');
//改为下面:
common::printIcon('kevinsoft', 'filedelete', "id=" . $file->id, '', 'list', 'trash', 'hiddenwin');
效果:

2、表格样式和悬浮表头
- class=“main-table”
表格的尾部移到table标签的后面,用div标签来单独显示
main-table class放到table标签上一级的标签上,就可以实现table的效果。
table 的上一级,可能是Form标签,div标签,都可以放这个class
- data-ride=‘table’
这个属性,可以实现悬浮表头的效果
<form id="dataForm" method="post" class="main-table" data-ride='table'>
<table class='table has-sort-head'>
...... 这里是Table标签内不的代码
以前的 $pager->show()在这个位置,新版本移到下面的单独的div内
</table>
<div class='table-footer'>
<?php $pager->show('right', 'pagerjs'); ?>
</div>
</form >
3、侧边栏的宽度修改
通过css来修改,下面的240px,和220px可以修改为你需要的宽度。相差20即可。
这个段代码,放到 css的文件内,或者网页的头部,或者自定义的
header.html.php内即可。
<style>
.side-col {
width: 240px;
padding-right: 20px;
}
#sidebar > .cell {
position: relative;
left: 0;
width: 220px;
-webkit-transition: left .2s,opacity .2s;
-o-transition: left .2s,opacity .2s;
transition: left .2s,opacity .2s;
}
</style>
4、My.php访问模式设定
- filterParam
zentao新版本,严格了函数的传参限定。
在control里面的函数如果 只设定了2个参数,
那么通过url传递的更多的参数,是否接收,取决于$config->framework->filterParam变量设定:
1:接收链接中更多的参数
2:过滤,即不接收更多的参数
在config\my.php里面添加语句进行设定
$config->framework->filterParam = 1; // 1=>不过函数定义外的传参,2=>开启过滤参数功能.
- requestType
requestType 严格设定,当设定为PATH_INFOR时,不能使用GET方式传参。
老板不严格。所以如果代码里面有GET方式传参,这里一定要设定为GET模式
$config->requestType = 'GET';//GET or PATH_INFO
总结
新版本的zentao还是漂亮了。
本文记录了禅道8到禅道12的问题与解决方法。包括界面布局,如顶部工具条适配、左右布局调整;其他修改,如图标关键字更改、表格样式与悬浮表头设置、侧边栏宽度修改,以及My.php访问模式设定等内容,还给出了相关代码地址。
793

被折叠的 条评论
为什么被折叠?



