This commit is contained in:
tengfei
2018-05-21 10:27:03 +08:00
164 changed files with 833 additions and 629 deletions
+1 -1
View File
@@ -1 +1 @@
10.0.beta
10.0.alpha
+1 -1
View File
@@ -16,7 +16,7 @@ if(!class_exists('config')){class config{}}
if(!function_exists('getWebRoot')){function getWebRoot(){}}
/* 基本设置。Basic settings. */
$config->version = '10.0.beta'; // ZenTaoPHP的版本。 The version of ZenTaoPHP. Don't change it.
$config->version = '10.0.alpha'; // ZenTaoPHP的版本。 The version of ZenTaoPHP. Don't change it.
$config->charset = 'UTF-8'; // ZenTaoPHP的编码。 The encoding of ZenTaoPHP.
$config->cookieLife = time() + 2592000; // Cookie的生存时间。The cookie life time.
$config->timezone = 'Asia/Shanghai'; // 时区设置。 The time zone setting, for more see http://www.php.net/manual/en/timezones.php.
@@ -1,5 +1,4 @@
ALTER TABLE `zt_release` ADD `marker` enum('0','1') NOT NULL default '0' AFTER `name`;
ALTER TABLE `zt_doc` ADD `collector` text NOT NULL AFTER `views`;
ALTER TABLE `zt_doc` ADD `visitedDate` datetime NOT NULL AFTER `editedDate`;
ALTER TABLE `zt_doclib` ADD `collector` text NOT NULL AFTER `main`;
ALTER TABLE `zt_module` ADD `collector` text NOT NULL AFTER `owner`;
+12 -1
View File
@@ -260,7 +260,6 @@ CREATE TABLE IF NOT EXISTS `zt_doc` (
`addedDate` datetime NOT NULL,
`editedBy` varchar(30) NOT NULL,
`editedDate` datetime NOT NULL,
`visitedDate` datetime NOT NULL,
`acl` varchar(10) NOT NULL DEFAULT 'open',
`groups` varchar(255) NOT NULL,
`users` text NOT NULL,
@@ -292,6 +291,7 @@ CREATE TABLE IF NOT EXISTS `zt_doclib` (
`groups` varchar(255) NOT NULL,
`users` text NOT NULL,
`main` enum('0','1') NOT NULL default '0',
`collector` text NOT NULL,
`order` tinyint(5) unsigned NOT NULL,
`deleted` enum('0','1') NOT NULL default '0',
PRIMARY KEY (`id`)
@@ -404,6 +404,7 @@ CREATE TABLE IF NOT EXISTS `zt_module` (
`order` smallint(5) unsigned NOT NULL default '0',
`type` char(30) NOT NULL,
`owner` varchar(30) NOT NULL,
`collector` text NOT NULL,
`short` varchar(30) NOT NULL,
`deleted` enum('0','1') NOT NULL default '0',
PRIMARY KEY (`id`),
@@ -1109,6 +1110,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(1, 'my', 'testCase'),
(1, 'my', 'testTask'),
(1, 'my', 'todo'),
(1, 'my', 'calendar'),
(1, 'my', 'unbind'),
(1, 'my', 'manageContacts'),
(1, 'my', 'deleteContacts'),
@@ -1421,6 +1423,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(2, 'my', 'story'),
(2, 'my', 'task'),
(2, 'my', 'todo'),
(2, 'my', 'calendar'),
(2, 'my', 'unbind'),
(2, 'my', 'manageContacts'),
(2, 'my', 'deleteContacts'),
@@ -1605,6 +1608,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(3, 'my', 'testCase'),
(3, 'my', 'testTask'),
(3, 'my', 'todo'),
(3, 'my', 'calendar'),
(3, 'my', 'unbind'),
(3, 'my', 'manageContacts'),
(3, 'my', 'deleteContacts'),
@@ -1844,6 +1848,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(4, 'my', 'testCase'),
(4, 'my', 'testTask'),
(4, 'my', 'todo'),
(4, 'my', 'calendar'),
(4, 'my', 'unbind'),
(4, 'my', 'manageContacts'),
(4, 'my', 'deleteContacts'),
@@ -2070,6 +2075,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(5, 'my', 'testCase'),
(5, 'my', 'testTask'),
(5, 'my', 'todo'),
(5, 'my', 'calendar'),
(5, 'my', 'unbind'),
(5, 'my', 'manageContacts'),
(5, 'my', 'deleteContacts'),
@@ -2342,6 +2348,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(6, 'my', 'testCase'),
(6, 'my', 'testTask'),
(6, 'my', 'todo'),
(6, 'my', 'calendar'),
(6, 'my', 'unbind'),
(6, 'my', 'manageContacts'),
(6, 'my', 'deleteContacts'),
@@ -2566,6 +2573,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(7, 'my', 'testCase'),
(7, 'my', 'testTask'),
(7, 'my', 'todo'),
(7, 'my', 'calendar'),
(7, 'my', 'unbind'),
(7, 'my', 'manageContacts'),
(7, 'my', 'deleteContacts'),
@@ -2816,6 +2824,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(8, 'my', 'testCase'),
(8, 'my', 'testTask'),
(8, 'my', 'todo'),
(8, 'my', 'calendar'),
(8, 'my', 'unbind'),
(8, 'my', 'manageContacts'),
(8, 'my', 'deleteContacts'),
@@ -3054,6 +3063,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(9, 'my', 'testCase'),
(9, 'my', 'testTask'),
(9, 'my', 'todo'),
(9, 'my', 'calendar'),
(9, 'my', 'unbind'),
(9, 'my', 'manageContacts'),
(9, 'my', 'deleteContacts'),
@@ -3199,6 +3209,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(10, 'my', 'profile'),
(10, 'my', 'task'),
(10, 'my', 'todo'),
(10, 'my', 'calendar'),
(10, 'my', 'unbind'),
(10, 'product', 'browse'),
(10, 'product', 'doc'),
+1 -1
View File
@@ -15,7 +15,7 @@
<?php if(!$bind and !$ignore and common::hasPriv('admin', 'register')):?>
<div id="notice" class='alert alert-success'>
<?php echo html::a(inlink('ignore'), '<i class="icon-close icon-sm"></i> ' . $lang->admin->notice->ignore, 'hiddenwin', 'class="close" data-dismiss="alert" style="font-size: 12px"');?>
<div class="content"><i class='icon-info-sign'></i> <?php echo sprintf($lang->admin->notice->register, html::a(inlink('register'), $lang->admin->register->click, '', 'class="alert-link"'));?></div>
<div class="content"><i class='icon-exclamation-sign'></i> <?php echo sprintf($lang->admin->notice->register, html::a(inlink('register'), $lang->admin->register->click, '', 'class="alert-link"'));?></div>
</div>
<?php endif;?>
+1 -1
View File
@@ -13,7 +13,7 @@
<?php include '../../common/view/header.html.php';?>
<?php if(!empty($error)):?>
<div id="notice" class='alert alert-success' style="margin-bottom:35px;">
<div class="content"><i class='icon-info-sign'></i> <?php echo $error;?></div>
<div class="content"><i class='icon-exclamation-sign'></i> <?php echo $error;?></div>
</div>
<?php endif;?>
+4
View File
@@ -15,7 +15,9 @@
<thead>
<tr>
<th class='w-id text-center'><?php echo $lang->idAB?></th>
<?php if($longBlock):?>
<th><?php echo $lang->build->product;?></th>
<?php endif;?>
<th><?php echo $lang->build->name;?></th>
<th class='w-date'><?php echo $lang->build->date;?></th>
</tr>
@@ -28,7 +30,9 @@
?>
<tr data-url='<?php echo empty($sso) ? $viewLink : $sso . $sign . 'referer=' . base64_encode($viewLink); ?>' <?php echo $appid?>>
<td class='text-center'><?php echo $build->id;?></td>
<?php if($longBlock):?>
<td title='<?php echo $build->productName?>'><?php echo $build->productName?></td>
<?php endif;?>
<td title='<?php echo $build->name?>'><?php echo $build->name?></td>
<td><?php echo $build->date?></td>
</tr>
+1 -1
View File
@@ -11,7 +11,7 @@
*/
?>
<style>
.block-todoes .panel-body {position: relative;padding-top: 42px;overflow: visible;}
.block-todoes .panel-body {position: relative; padding-top: 42px;}
.block-todoes .todoes-input {position: absolute;top: 0;right: 0;left: 0;padding: 0 20px 20px 20px;}
.block-todoes .todoes-input .form-control::-webkit-input-placeholder {font-size: 12px;line-height: 20px;color: #a4a8b6;}
.block-todoes .todoes-input .form-control::-moz-placeholder {font-size: 12px;line-height: 20px;color: #a4a8b6;}
+1
View File
@@ -3,6 +3,7 @@ $lang->branch->common = 'Branch';
$lang->branch->manage = 'Manage a Branch';
$lang->branch->sort = 'Sort';
$lang->branch->delete = 'Delete Branch';
$lang->branch->add = 'Add';
$lang->branch->manageTitle = '%s Management';
$lang->branch->all = 'All';
+9 -11
View File
@@ -1,36 +1,34 @@
$(document).ready(function()
$(function()
{
if(browseType == 'bysearch') ajaxGetSearchForm();
if($('#bugList thead th.w-title').width() < 150) $('#bugList thead th.w-title').width(150);
if(flow == 'onlyTest')
{
$('#modulemenu > .nav').append($('#featurebar > .submenu').html());
toggleSearch();
$(".export").modalTrigger({width:650, type:'iframe'});
$('#modulemenu > .nav > li').removeClass('active');
$('#modulemenu > .nav > li[data-id=' + browseType + ']').addClass('active');
$('#subNavbar > .nav > li').removeClass('active');
$('#subNavbar > .nav > li[data-id=' + browseType + ']').addClass('active');
var navWidth = $('#modulemenu > .nav').width();
var navWidth = $('#subNavbar > .nav').width();
var leftWidth = 0;
var rightWidth = 0;
$rightNav = $('#modulemenu > .nav > li.right');
$rightNav = $('#subNavbar > .nav > li.right');
rightLength = $rightNav.length;
for(i = 0; i < rightLength; i++) rightWidth += $rightNav.eq(i).width();
var maxWidth = navWidth - $('#modulemenu > .nav > #bysearchTab').width() - rightWidth - 100;
var maxWidth = navWidth - $('#subNavbar > .nav > #bysearchTab').width() - rightWidth - 100;
$('#modulemenu > .nav > li:not(.right)').each(function()
$('#subNavbar > .nav > li:not(.right)').each(function()
{
if(leftWidth > maxWidth)
{
if($(this).attr('id') != 'moreMenus' && $(this).attr('id') != 'bysearchTab')
{
$('#moreMenus').removeClass('hidden');
$('#moreMenus > ul').append($(this)[0]);
$('#subNavbar').removeClass('hidden');
$('#subNavbar > ul').append($(this)[0]);
}
}
else
+1
View File
@@ -130,6 +130,7 @@ $lang->bug->ditto = '同上';
$lang->bug->dittoNotice = '該bug與上一bug不屬於同一產品!';
$lang->bug->noAssigned = '未指派';
$lang->bug->noBug = '暫時沒有BUG,您現在可以';
$lang->bug->noModule = '<div>您現在還沒有模組信息</div><div>請維護測試模組</div>';
/* 頁面標籤。*/
$lang->bug->lblAssignedTo = '當前指派';
+5 -4
View File
@@ -71,7 +71,7 @@ class bugModel extends model
->cleanInt('product, module, severity')
->join('openedBuild', ',')
->join('mailto', ',')
->remove('files, labels,uid,oldTaskID')
->remove('files, labels,uid,oldTaskID,contactListMenu')
->get();
/* Check repeat bug. */
@@ -545,7 +545,7 @@ class bugModel extends model
->setIF($this->post->resolution == '' and $this->post->resolvedDate =='', 'status', 'active')
->setIF($this->post->resolution != '', 'confirmed', 1)
->setIF($this->post->story != false and $this->post->story != $oldBug->story, 'storyVersion', $this->loadModel('story')->getVersion($this->post->story))
->remove('comment,files,labels,uid')
->remove('comment,files,labels,uid,contactListMenu')
->get();
$bug = $this->loadModel('file')->processImgURL($bug, $this->config->bug->editor->edit['id'], $this->post->uid);
@@ -2408,7 +2408,7 @@ class bugModel extends model
if($id == 'title')
{
$class .= ' text-left';
$title = "title='{$bug->title}";
$title = "title='{$bug->title}'";
}
if($id == 'assignedTo')
{
@@ -2421,7 +2421,8 @@ class bugModel extends model
switch($id)
{
case 'id':
if($mode == 'table' && $canBatchAction)
//if($mode == 'table' && $canBatchAction)
if($canBatchAction)
{
echo html::checkbox('bugIDList', array($bug->id => sprintf('%03d', $bug->id)));
}
+1 -1
View File
@@ -43,7 +43,7 @@
<td colspan='2' class='text-left'><?php echo $this->fetch('file', 'buildform');?></td>
</tr>
<tr>
<td class='text-center' colspan='3'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->session->bugList, '', '', 'btn btn-wide');?></td>
<td class='text-center' colspan='3'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->session->bugList, 'self', '', 'btn btn-wide');?></td>
</tr>
</table>
</form>
+1 -1
View File
@@ -43,7 +43,7 @@ js::set('page', 'assignedto');
<td colspan='2'><?php echo html::textarea('comment', '', "rows='6' class='form-control'");?></td>
</tr>
<tr>
<td colspan='3' class='text-center'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->server->http_referer, '', '', 'btn btn-wide');?></td>
<td colspan='3' class='text-center'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->server->http_referer, 'self', '', 'btn btn-wide');?></td>
</tr>
</table>
</form>
+2 -2
View File
@@ -52,7 +52,7 @@ $currentBrowseType = isset($lang->bug->mySelects[$browseType]) && in_array($brow
</div>
</li>
<li class='right'>
<?php common::printLink('bug', 'report', "productID=$productID&browseType=$browseType&branchID=$branch&moduleID=$moduleID", "<i class='icon-bar-chart muted'></i> " . $lang->bug->report->common); ?>
<?php common::printLink('bug', 'report', "productID=$productID&browseType=$browseType&branchID=$branch&moduleID=$moduleID", "<i class='icon icon-bar-chart muted'></i> " . $lang->bug->report->common); ?>
</li>
<li class='right'>
<a href='###' class='dropdown-toggle' data-toggle='dropdown'>
@@ -145,7 +145,7 @@ $currentBrowseType = isset($lang->bug->mySelects[$browseType]) && in_array($brow
<a class="btn btn-link querybox-toggle" id='bysearchTab'><i class="icon icon-search muted"></i> <?php echo $lang->bug->byQuery;?></a>
</div>
<div class="btn-toolbar pull-right">
<?php common::printIcon('bug', 'report', "productID=$productID&browseType=$browseType&branchID=$branch&moduleID=$moduleID");?>
<?php common::printIcon('bug', 'report', "productID=$productID&browseType=$browseType&branchID=$branch&moduleID=$moduleID", '', 'button', 'bar-chart muted');?>
<?php if(common::hasPriv('bug', 'export')):?>
<div class='btn-group'>
<button type='button' class='btn btn-link dropdown-toggle' data-toggle='dropdown'>
+1 -1
View File
@@ -31,7 +31,7 @@
<td><?php echo html::textarea('comment', '', "rows='6' class='w-p98'");?></td>
</tr>
<tr>
<td colspan='2' class='text-center'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->session->bugList);?></td>
<td colspan='2' class='text-center'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->session->bugList, 'self', '', 'btn btn-wide');?></td>
</tr>
</table>
</form>
+1 -1
View File
@@ -52,7 +52,7 @@ js::set('page', 'confirmbug');
<td colspan='2'><?php echo html::textarea('comment', '', "rows='6' class='w-p94'");?></td>
</tr>
<tr>
<td class='text-center' colspan='3'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->server->http_referer, '', '', 'btn btn-wide');?></td>
<td class='text-center' colspan='3'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->server->http_referer, 'self', '', 'btn btn-wide');?></td>
</tr>
</table>
</form>
+1 -2
View File
@@ -12,7 +12,6 @@
?>
<?php
include '../../common/view/header.html.php';
include '../../common/view/form.html.php';
include '../../common/view/kindeditor.html.php';
include '../../common/view/datepicker.html.php';
js::set('holders', $lang->bug->placeholder);
@@ -31,7 +30,7 @@ js::set('confirmDeleteTemplate', $lang->bug->confirmDeleteTemplate);
<?php include '../../common/view/customfield.html.php';?>
</div>
</div>
<form class="load-indicator main-form form-ajax" method='post' enctype='multipart/form-data' id='dataform' data-type='ajax'>
<form class="load-indicator main-form form-ajax" method='post' enctype='multipart/form-data' id='dataform'>
<table class="table table-form">
<tbody>
<tr>
+10 -7
View File
@@ -43,13 +43,13 @@ js::set('oldResolvedBuild' , $bug->resolvedBuild);
<div class='cell'>
<div class='form-group'>
<div class="input-control has-icon-right">
<?php echo html::input('title', $bug->title, "class='form-control' autocomplete='off' style='color:{$bug->color}' required");?>
<?php echo html::input('title', $bug->title, "class='form-control bug-title' autocomplete='off' style='color:{$bug->color}' required");?>
<div class="colorpicker">
<button type="button" class="btn btn-link dropdown-toggle" data-toggle="dropdown"><span class="cp-title"></span><span class="color-bar" style="background:<?php echo $bug->color;?>"></span><i class="ic"></i></button>
<ul class="dropdown-menu clearfix">
<li class="heading"><?php echo $lang->story->colorTag;?><i class="icon icon-close"></i></li>
</ul>
<input type="hidden" class="colorpicker" id="color" name="color" value="<?php $bug->color;?>" data-icon="color" data-wrapper="input-control-icon-right" data-update-color="#title" data-provide="colorpicker">
<input type="hidden" class="colorpicker" id="color" name="color" value="<?php $bug->color;?>" data-icon="color" data-wrapper="input-control-icon-right" data-update-color=".bug-title" data-provide="colorpicker">
</div>
</div>
</div>
@@ -65,14 +65,17 @@ js::set('oldResolvedBuild' , $bug->resolvedBuild);
<?php echo html::textarea('comment', '', "rows='5' class='form-control kindeditor' hidefocus='true'");?>
</div>
</div>
<div class='form-group'><?php echo $this->fetch('file', 'buildform');?></div>
<div class="detail">
<div class="detail-title"><?php echo $lang->files;?></div>
<div class='detail-content'><?php echo $this->fetch('file', 'buildform');?></div>
</div>
<div class='actions actions-form text-center'>
<?php
<?php
echo html::hidden('lastEditedDate', $bug->lastEditedDate);
echo html::submitButton('', '', 'btn btn-wide btn-primary');
$browseLink = $app->session->bugList != false ? $app->session->bugList : inlink('browse', "productID=$bug->product");
echo html::linkButton($lang->goback, $browseLink, '', '', "btn btn-wide");
echo html::linkButton($lang->goback, $browseLink, 'self', '', "btn btn-wide");
?>
</div>
<hr class='small' />
@@ -98,7 +101,7 @@ js::set('oldResolvedBuild' , $bug->resolvedBuild);
<th><?php echo $lang->bug->module;?></th>
<td>
<div class='input-group' id='moduleIdBox'>
<?php
<?php
echo html::select('module', $moduleOptionMenu, $currentModuleID, "onchange='loadModuleRelated()' class='form-control chosen'");
if(count($moduleOptionMenu) == 1)
{
@@ -125,7 +128,7 @@ js::set('oldResolvedBuild' , $bug->resolvedBuild);
<td>
<?php
/**
* Remove designchange, newfeature, trackings from the typeList, because should be tracked in story or task.
* Remove designchange, newfeature, trackings from the typeList, because should be tracked in story or task.
* These thress types if upgrade from bugfree2.x.
*/
if($bug->type != 'designchange') unset($lang->bug->typeList['designchange']);
+1 -1
View File
@@ -82,7 +82,7 @@ js::set('productID' , $bug->product);
<td colspan='3'><?php echo html::textarea('comment', '', "rows='6' class='form-control'");?></td>
</tr>
<tr>
<td class='text-center' colspan='4'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->session->bugList);?></td>
<td class='text-center' colspan='4'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->session->bugList, 'self', '', 'btn btn-wide');?></td>
</tr>
</table>
</form>
+3 -1
View File
@@ -15,8 +15,10 @@
<?php $browseLink = $app->session->bugList != false ? $app->session->bugList : inlink('browse', "productID=$bug->product");?>
<div id="mainMenu" class="clearfix">
<div class="btn-toolbar pull-left">
<?php if(!isonlybody()):?>
<?php echo html::a($browseLink, '<i class="icon icon-back icon-sm"></i> ' . $lang->goback, '', "class='btn btn-link'");?>
<div class="divider"></div>
<?php endif;?>
<div class="page-title">
<span class="label label-id"><?php echo $bug->id?></span>
<span class="text" style='color: <?php echo $bug->color; ?>'><?php echo $bug->title;?></span>
@@ -107,7 +109,7 @@
</tr>
<tr>
<th><?php echo $lang->bug->severity;?></th>
<td><span class='<?php echo 'severity severity-' . $bug->severity;?>'><?php echo zget($lang->bug->severityList, $bug->severity)?></span></td>
<td><span class='label-severity' data-severity='<?php echo $bug->severity;?>' title='<?php echo zget($lang->bug->severityList, $bug->severity)?>'></span></td>
</tr>
<tr>
<th><?php echo $lang->bug->pri;?></th>
+3 -3
View File
@@ -243,8 +243,8 @@ $lang->project->subMenu->list->tree = 'Tree View|project|tree|projectID=%s'
$lang->project->subMenu->qa = new stdclass();
$lang->project->subMenu->qa->bug = 'Bug|project|bug|projectID=%s';
$lang->project->subMenu->qa->build = 'Build|project|build|projectID=%s';
$lang->project->subMenu->qa->testtask = array('link' => 'Test Task|project|testtask|projectID=%s', 'subModule' => 'testreport');
$lang->project->subMenu->qa->build = array('link' => 'Build|project|build|projectID=%s', 'subModule' => 'build');
$lang->project->subMenu->qa->testtask = array('link' => 'Test Task|project|testtask|projectID=%s', 'subModule' => 'testreport,testtask');
$lang->project->subMenu->action = new stdclass();
$lang->project->subMenu->action->dynamic = 'Dynamic|project|dynamic|projectID=%s';
@@ -345,7 +345,7 @@ $lang->company->menu = new stdclass();
$lang->company->menu->browseUser = array('link' => 'User|company|browse', 'subModule' => 'user');
$lang->company->menu->dept = array('link' => 'Department|dept|browse', 'subModule' => 'dept');
$lang->company->menu->browseGroup = array('link' => 'Group|group|browse', 'subModule' => 'group');
$lang->company->menu->view = array('link' => 'Company|company|view', 'alias' => 'edit');
$lang->company->menu->view = array('link' => 'Company|company|view');
$lang->company->menu->dynamic = 'Dynamic|company|dynamic|';
$lang->dept = new stdclass();
+3 -3
View File
@@ -243,8 +243,8 @@ $lang->project->subMenu->list->tree = '树状图|project|tree|projectID=%s'
$lang->project->subMenu->qa = new stdclass();
$lang->project->subMenu->qa->bug = 'Bug|project|bug|projectID=%s';
$lang->project->subMenu->qa->build = '版本|project|build|projectID=%s';
$lang->project->subMenu->qa->testtask = array('link' => '测试单|project|testtask|projectID=%s', 'subModule' => 'testreport');
$lang->project->subMenu->qa->build = array('link' => '版本|project|build|projectID=%s', 'subModule' => 'build');
$lang->project->subMenu->qa->testtask = array('link' => '测试单|project|testtask|projectID=%s', 'subModule' => 'testreport,testtask');
$lang->project->subMenu->action = new stdclass();
$lang->project->subMenu->action->dynamic = '动态|project|dynamic|projectID=%s';
@@ -345,7 +345,7 @@ $lang->company->menu = new stdclass();
$lang->company->menu->browseUser = array('link' => '用户|company|browse', 'subModule' => 'user');
$lang->company->menu->dept = array('link' => '部门|dept|browse', 'subModule' => 'dept');
$lang->company->menu->browseGroup = array('link' => '权限|group|browse', 'subModule' => 'group');
$lang->company->menu->view = array('link' => '公司|company|view', 'alias' => 'edit');
$lang->company->menu->view = array('link' => '公司|company|view');
$lang->company->menu->dynamic = '动态|company|dynamic|';
$lang->dept = new stdclass();
+3 -3
View File
@@ -243,8 +243,8 @@ $lang->project->subMenu->list->tree = '樹狀圖|project|tree|projectID=%s'
$lang->project->subMenu->qa = new stdclass();
$lang->project->subMenu->qa->bug = 'Bug|project|bug|projectID=%s';
$lang->project->subMenu->qa->build = '版本|project|build|projectID=%s';
$lang->project->subMenu->qa->testtask = array('link' => '測試單|project|testtask|projectID=%s', 'subModule' => 'testreport');
$lang->project->subMenu->qa->build = array('link' => '版本|project|build|projectID=%s', 'subModule' => 'build');
$lang->project->subMenu->qa->testtask = array('link' => '測試單|project|testtask|projectID=%s', 'subModule' => 'testreport,testtask');
$lang->project->subMenu->action = new stdclass();
$lang->project->subMenu->action->dynamic = '動態|project|dynamic|projectID=%s';
@@ -345,7 +345,7 @@ $lang->company->menu = new stdclass();
$lang->company->menu->browseUser = array('link' => '用戶|company|browse', 'subModule' => 'user');
$lang->company->menu->dept = array('link' => '部門|dept|browse', 'subModule' => 'dept');
$lang->company->menu->browseGroup = array('link' => '權限|group|browse', 'subModule' => 'group');
$lang->company->menu->view = array('link' => '公司|company|view', 'alias' => 'edit');
$lang->company->menu->view = array('link' => '公司|company|view');
$lang->company->menu->dynamic = '動態|company|dynamic|';
$lang->dept = new stdclass();
+8 -10
View File
@@ -256,13 +256,13 @@ class commonModel extends model
echo "<li class='divider'></li>";
}
echo "<li class='dropdown-submenu'>";
echo "<a href='javascript:;'>" . $lang->theme . "</a><ul class='dropdown-menu pull-left'>";
foreach($app->lang->themes as $key => $value)
{
echo "<li " . ($app->cookie->theme == $key ? "class='selected'" : '') . "><a href='javascript:selectTheme(\"$key\");' data-value='" . $key . "'>" . $value . "</a></li>";
}
echo '</ul></li>';
//echo "<li class='dropdown-submenu'>";
//echo "<a href='javascript:;'>" . $lang->theme . "</a><ul class='dropdown-menu pull-left'>";
//foreach($app->lang->themes as $key => $value)
//{
// echo "<li " . ($app->cookie->theme == $key ? "class='selected'" : '') . "><a href='javascript:selectTheme(\"$key\");' data-value='" . $key . "'>" . $value . "</a></li>";
//}
//echo '</ul></li>';
echo "<li class='dropdown-submenu'>";
echo "<a href='javascript:;'>" . $lang->lang . "</a><ul class='dropdown-menu pull-left'>";
@@ -665,8 +665,6 @@ class commonModel extends model
*/
public static function printCommentIcon($commentFormLink, $object = null)
{
if(isonlybody()) return false;
global $lang;
if(!commonModel::hasPriv('action', 'comment', $object)) return false;
@@ -676,7 +674,7 @@ class commonModel extends model
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">关闭</span></button>
<button type="button" class="close" data-dismiss="modal"><i class="icon icon-close"></i></button>
<h4 class="modal-title">{$lang->action->create}</h4>
</div>
<div class="modal-body">
+1 -2
View File
@@ -6,12 +6,11 @@ var defaultChosenOptions = {no_results_text: noResultsMatch, width:'100%', allow
$(document).ready(function()
{
$("#mailto").attr('data-placeholder', chooseUsersToMail);
$("#mailto, .chosen, #productID").chosen(defaultChosenOptions).on('chosen:showing_dropdown', function()
$("#mailto, #productID").chosen(defaultChosenOptions).on('chosen:showing_dropdown', function()
{
var $this = $(this);
var $chosen = $this.next('.chosen-container').removeClass('chosen-up');
var $drop = $chosen.find('.chosen-drop');
$chosen.toggleClass('chosen-up', $drop.height() + $drop.offset().top - $(document).scrollTop() > $(window).height());
});
});
</script>
+1 -1
View File
@@ -52,6 +52,6 @@ if($extHookFiles) foreach($extHookFiles as $extHookFile) include $extHookFile;
?>
</header>
<main id='main' <?php if(!empty($this->config->sso->redirect)) echo "class='ranzhiFixedTfootAction'";?> >
<?php endif;?>
<main id='main' <?php if(!empty($this->config->sso->redirect)) echo "class='ranzhiFixedTfootAction'";?> >
<div class='container'>
+18 -2
View File
@@ -12,9 +12,25 @@ $editor['id'] = explode(',', $editor['id']);
.CodeMirror,.CodeMirror-scroll{min-height:200px!important;}
.CodeMirror-fullscreen + .editor-preview-side{display:block;}
.CodeMirror-fullscreen, .editor-preview-side{margin-bottom:40px;}
.editor-toolbar .icon-html {position: relative; top: -1px;}
.editor-toolbar .icon-html:before {content:"HTML"; font-size: 12px; padding: 0 2px;}
.editor-preview-side table > tbody > tr:last-child td{border:1px solid #e5e5e5 !important}
.editor-toolbar {padding: 1px;}
.editor-toolbar .icon-html:before {content:"HTML"; font-size: 12px; padding: 0 2px;}
.editor-toolbar .icon:before {font-size: 14px;}
.editor-toolbar a.icon:before {line-height: 22px;}
.editor-toolbar a {opacity: 0.8}
.editor-toolbar a:hover {opacity: 1}
.icon-bold:before {content: '\e953';}
.icon-italic:before {content: '\e955';}
.icon-header:before {content: '\e954';}
.icon-quote-left:before {content: '\e96a';}
.icon-list-ul:before {content: '\e956';}
.icon-list-ol:before {content: '\e969';}
.icon-picture:before {content: '\e96c';}
.icon-table:before {content: '\e96d';}
.icon-eye-open:before {content: '\e94e';}
.icon-columns:before {content: '\f0db';}
.icon-expand-full:before {content: '\e96b';}
.icon-question-sign:before {content: '\e968';}
</style>
<script>
+2 -2
View File
@@ -83,7 +83,7 @@ js::set('confirmDelete', $lang->user->confirmDelete);
<td><?php echo $user->account;?></td>
<td class="c-type"><?php echo zget($lang->user->roleList, $user->role, '');?></td>
<td class="c-url" title="<?php echo $user->email;?>"><?php echo html::mailto($user->email);?></td>
<td class="c-type"<?php if(isset($lang->user->genderList[$user->gender])) echo $lang->user->genderList[$user->gender];?></td>
<td class="c-type"><?php echo zget($lang->user->genderList, $user->gender, $user->gender);?></td>
<td><?php echo $user->phone;?></td>
<td><?php if($user->qq) echo html::a("tencent://message/?uin=$user->qq", $user->qq);?></td>
<td class='c-date'><?php if($user->last) echo date('Y-m-d', $user->last);?></td>
@@ -114,7 +114,7 @@ js::set('confirmDelete', $lang->user->confirmDelete);
<div class='table-footer'>
<?php if($canBatchEdit):?>
<div class="checkbox-primary check-all"><label><?php echo $lang->selectAll?></label></div>
<div class="table-actions btn-toolbar"><?php echo html::submitButton($lang->edit);?></div>
<div class="table-actions btn-toolbar"><?php echo html::submitButton($lang->edit, '', 'btn');?></div>
<?php endif;?>
<?php $pager->show('right', 'pagerjs');?>
</div>
+1 -1
View File
@@ -38,7 +38,7 @@
<button id='saveMenuBtn' type='button' class='btn btn-primary'><?php echo $lang->save ?></button> &nbsp;
<button id='closeModalBtn' type='button' class='btn'><?php echo $lang->close ?></button> &nbsp;
<button id='resetMenuBtn' type='button' class='btn'><?php echo $lang->custom->restore ?></button> &nbsp;
<span class='text-danger'> &nbsp; <i class="icon icon-info-sign"></i> <?php echo $lang->custom->menuTip ?></span>
<span class='text-danger'> &nbsp; <i class="icon exclamation-sign"></i> <?php echo $lang->custom->menuTip ?></span>
</div>
</div>
</div>
+2 -1
View File
@@ -194,7 +194,8 @@ $(function()
return sets;
}).get();
window.saveDatatableConfig('<?php echo $mode == 'table' ? 'tablecols' : 'cols';?>', setting, true, $('#global1').prop('checked') ? 1 : 0);
//window.saveDatatableConfig('<?php echo $mode == 'table' ? 'tablecols' : 'cols';?>', setting, true, $('#global1').prop('checked') ? 1 : 0);
window.saveDatatableConfig('<?php echo 'cols';?>', setting, true, $('#global1').prop('checked') ? 1 : 0);
});
$('#resetBtn').on("click", function()
+8
View File
@@ -103,6 +103,8 @@ class doc extends control
$this->lang->doc->menuOrder = $this->lang->product->menuOrder;
$this->product->setMenu($this->product->getPairs(), $lib->product);
$this->lang->set('menugroup.doc', 'product');
if(common::hasPriv('doc', 'create')) $this->lang->modulePageActions = html::a(helper::createLink('doc', 'create', "libID=$libID"), "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");
}
elseif($from == 'project')
{
@@ -110,6 +112,8 @@ class doc extends control
$this->lang->doc->menuOrder = $this->lang->project->menuOrder;
$this->project->setMenu($this->project->getPairs('nocode'), $lib->project);
$this->lang->set('menugroup.doc', 'project');
if(common::hasPriv('doc', 'create')) $this->lang->modulePageActions = html::a(helper::createLink('doc', 'create', "libID=$libID"), "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");
}
else
{
@@ -296,6 +300,8 @@ class doc extends control
$this->lang->doc->menuOrder = $this->lang->product->menuOrder;
$this->product->setMenu($this->product->getPairs(), $lib->product);
$this->lang->set('menugroup.doc', 'product');
if(common::hasPriv('doc', 'create')) $this->lang->modulePageActions = html::a(helper::createLink('doc', 'create', "libID=$libID"), "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");
}
elseif($this->from == 'project')
{
@@ -303,6 +309,8 @@ class doc extends control
$this->lang->doc->menuOrder = $this->lang->project->menuOrder;
$this->project->setMenu($this->project->getPairs('nocode'), $lib->project);
$this->lang->set('menugroup.doc', 'project');
if(common::hasPriv('doc', 'create')) $this->lang->modulePageActions = html::a(helper::createLink('doc', 'create', "libID=$libID"), "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");
}
else
{
+1
View File
@@ -9,3 +9,4 @@
#libs .libs-custom-heading a{display:block;height:100%;}
#libs .libs-custom-heading .lable-custom{position: absolute;left:8px;}
#libs hr {margin-top:0px;}
#libs .panel-body {overflow: auto; max-height: 224px;}
+38 -17
View File
@@ -43,28 +43,38 @@ $lang->doc->download = 'Download';
$lang->doc->acl = 'Right';
$lang->doc->groups = 'Groups';
$lang->doc->users = 'Users';
$lang->doc->item = 'Item';
$lang->doc->searchResult = 'Search Result';
$lang->doc->moduleDoc = 'By Module';
$lang->doc->searchDoc = 'Search';
$lang->doc->fast = 'Fast access';
$lang->doc->allDoc = 'All';
$lang->doc->openedByMe = 'My';
$lang->doc->orderByOpen = 'Recently Added';
$lang->doc->orderByEdit = 'Recently Modifie';
$lang->doc->orderByEdit = 'Recently Modified';
$lang->doc->orderByVisit = 'Recently Visited';
$lang->doc->todayEdited = 'Today Modified';
$lang->doc->pastEdited = 'Past Modified';
$lang->doc->myDoc = 'My Doc';
$lang->doc->myCollection = 'My Collection';
/* 方法列表。*/
$lang->doc->index = 'Home';
$lang->doc->create = 'Create a Doc';
$lang->doc->edit = 'Edit';
$lang->doc->delete = 'Delete';
$lang->doc->browse = 'List';
$lang->doc->view = 'Details';
$lang->doc->diff = 'Diff';
$lang->doc->sort = 'Sort';
$lang->doc->manageType = 'Manage Category';
$lang->doc->editType = 'Edit';
$lang->doc->deleteType = 'Delete';
$lang->doc->addType = 'Add';
$lang->doc->childType = 'Child';
$lang->doc->index = 'Home';
$lang->doc->create = 'Create a Doc';
$lang->doc->edit = 'Edit';
$lang->doc->delete = 'Delete';
$lang->doc->browse = 'List';
$lang->doc->view = 'Details';
$lang->doc->diff = 'Diff';
$lang->doc->sort = 'Sort';
$lang->doc->manageType = 'Manage Category';
$lang->doc->editType = 'Edit';
$lang->doc->deleteType = 'Delete';
$lang->doc->addType = 'Add';
$lang->doc->childType = 'Child';
$lang->doc->collect = 'Collect';
$lang->doc->cancelCollection = 'Collect Collection';
$lang->doc->libName = 'Name';
$lang->doc->libType = 'Category';
@@ -109,9 +119,20 @@ $lang->doc->contentTypeList['markdown'] = 'MarkDown';
$lang->doc->browseType = 'Categories';
$lang->doc->browseTypeList['list'] = 'List';
$lang->doc->browseTypeList['menu'] = 'Menu';
$lang->doc->browseTypeList['tree'] = 'Tree';
$lang->doc->browseTypeList['card'] = 'Card';
$lang->doc->browseTypeList['grid'] = 'Card';
$lang->doc->fastMenuList['byediteddate'] = 'Recently Modified';
//$lang->doc->fastMenuList['visiteddate'] = 'Recently Visited';
$lang->doc->fastMenuList['openedbyme'] = 'My Doc';
$lang->doc->fastMenuList['collectedbyme'] = 'My collection';
$lang->doc->fastMenuIconList['byediteddate'] = 'icon-folder-upload';
//$lang->doc->fastMenuIconList['visiteddate'] = 'icon-folder-move';
$lang->doc->fastMenuIconList['openedbyme'] = 'icon-folder-account';
$lang->doc->fastMenuIconList['collectedbyme'] = 'icon-folder-star';
$lang->doc->customObjectLibs['files'] = 'Display File Library';
$lang->doc->customObjectLibs['customFiles'] = 'Display Custom Library';
$lang->doc->confirmDelete = "Do you want to delete this document?";
$lang->doc->confirmDeleteLib = "Do you want to delete this Doc Lib?";
+17 -16
View File
@@ -60,20 +60,21 @@ $lang->doc->myDoc = '我的文档';
$lang->doc->myCollection = '我的收藏';
/* 方法列表。*/
$lang->doc->index = '文档主页';
$lang->doc->create = '创建文档';
$lang->doc->edit = '编辑文档';
$lang->doc->delete = '删除文档';
$lang->doc->browse = '文档列表';
$lang->doc->view = '文档详情';
$lang->doc->diff = '对比';
$lang->doc->sort = '排序';
$lang->doc->manageType = '维护分类';
$lang->doc->editType = '编辑分类';
$lang->doc->deleteType = '删除分类';
$lang->doc->addType = '增加分类';
$lang->doc->childType = '子分类';
$lang->doc->collect = '收藏';
$lang->doc->index = '文档主页';
$lang->doc->create = '创建文档';
$lang->doc->edit = '编辑文档';
$lang->doc->delete = '删除文档';
$lang->doc->browse = '文档列表';
$lang->doc->view = '文档详情';
$lang->doc->diff = '对比';
$lang->doc->sort = '排序';
$lang->doc->manageType = '维护分类';
$lang->doc->editType = '编辑分类';
$lang->doc->deleteType = '删除分类';
$lang->doc->addType = '增加分类';
$lang->doc->childType = '子分类';
$lang->doc->collect = '收藏';
$lang->doc->cancelCollection = '取消收藏';
$lang->doc->libName = '文档库名称';
$lang->doc->libType = '文档库类型';
@@ -130,8 +131,8 @@ $lang->doc->fastMenuIconList['byediteddate'] = 'icon-folder-upload';
$lang->doc->fastMenuIconList['openedbyme'] = 'icon-folder-account';
$lang->doc->fastMenuIconList['collectedbyme'] = 'icon-folder-star';
$lang->doc->customObjectLibs['files'] = '是否显示附件库';
$lang->doc->customObjectLibs['customFiles'] = '是否显示自定义文件';
$lang->doc->customObjectLibs['files'] = '显示附件库';
$lang->doc->customObjectLibs['customFiles'] = '显示自定义文件';
$lang->doc->confirmDelete = "您确定删除该文档吗?";
$lang->doc->confirmDeleteLib = "您确定删除该文档库吗?";
+17 -16
View File
@@ -60,20 +60,21 @@ $lang->doc->myDoc = '我的文檔';
$lang->doc->myCollection = '我的收藏';
/* 方法列表。*/
$lang->doc->index = '文檔主頁';
$lang->doc->create = '創建文檔';
$lang->doc->edit = '編輯文檔';
$lang->doc->delete = '刪除文檔';
$lang->doc->browse = '文檔列表';
$lang->doc->view = '文檔詳情';
$lang->doc->diff = '對比';
$lang->doc->sort = '排序';
$lang->doc->manageType = '維護分類';
$lang->doc->editType = '編輯分類';
$lang->doc->deleteType = '刪除分類';
$lang->doc->addType = '增加分類';
$lang->doc->childType = '子分類';
$lang->doc->collect = '收藏';
$lang->doc->index = '文檔主頁';
$lang->doc->create = '創建文檔';
$lang->doc->edit = '編輯文檔';
$lang->doc->delete = '刪除文檔';
$lang->doc->browse = '文檔列表';
$lang->doc->view = '文檔詳情';
$lang->doc->diff = '對比';
$lang->doc->sort = '排序';
$lang->doc->manageType = '維護分類';
$lang->doc->editType = '編輯分類';
$lang->doc->deleteType = '刪除分類';
$lang->doc->addType = '增加分類';
$lang->doc->childType = '子分類';
$lang->doc->collect = '收藏';
$lang->doc->cancelCollection = '取消收藏';
$lang->doc->libName = '文檔庫名稱';
$lang->doc->libType = '文檔庫類型';
@@ -130,8 +131,8 @@ $lang->doc->fastMenuIconList['byediteddate'] = 'icon-folder-upload';
$lang->doc->fastMenuIconList['openedbyme'] = 'icon-folder-account';
$lang->doc->fastMenuIconList['collectedbyme'] = 'icon-folder-star';
$lang->doc->customObjectLibs['files'] = '是否顯示附件庫';
$lang->doc->customObjectLibs['customFiles'] = '是否顯示自定義檔案';
$lang->doc->customObjectLibs['files'] = '顯示附件庫';
$lang->doc->customObjectLibs['customFiles'] = '顯示自定義檔案';
$lang->doc->confirmDelete = "您確定刪除該文檔嗎?";
$lang->doc->confirmDeleteLib = "您確定刪除該文檔庫嗎?";
+2 -5
View File
@@ -159,16 +159,13 @@ class docModel extends model
list($menuLabel, $module, $method, $vars) = explode('|', $menu['link']);
$actions .= html::a(helper::createLink($module, $method, $vars), $menuLabel, '', "class='btn'");
}
}
}
$actions .= html::a(helper::createLink('doc', 'createLib'), "<i class='icon icon-folder-plus'></i> " . $this->lang->doc->createLib, '', "class='btn btn-secondary iframe'");
if($libID) $actions .= html::a(helper::createLink('doc', 'create', "libID=$libID"), "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");
$actions .= common::hasPriv('doc', 'createLib') ? html::a(helper::createLink('doc', 'createLib'), "<i class='icon icon-folder-plus'></i> " . $this->lang->doc->createLib, '', "class='btn btn-secondary iframe'") : '';
if($libID and common::hasPriv('doc', 'create')) $actions .= html::a(helper::createLink('doc', 'create', "libID=$libID"), "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");
$this->lang->modulePageActions = $actions;
}
//$selectHtml .= $crumb ? $crumb : $this->getCrumbs($libID, $moduleID);
+3 -2
View File
@@ -11,7 +11,7 @@
*/
?>
<?php include '../../common/view/header.html.php';?>
<div class="main-row split-row" id="mainRow">
<div class="main-row <?php if($this->from == 'doc') echo 'split-row';?>" id="mainRow">
<?php if($this->from == 'doc'):?>
<?php include './side.html.php';?>
<?php endif;?>
@@ -47,13 +47,14 @@
<?php common::printLink('doc', 'collect', "objectID=$lib->id&objectType=lib", "<i class='icon icon-star-empty'></i>", 'hiddenwin', "title='{$lang->doc->collect}' class='btn btn-link'")?>
<?php common::printLink('doc', 'editLib', "libID=$lib->id", "<i class='icon icon-edit'></i>", '', "title='{$lang->edit}' class='btn btn-link iframe'")?>
<?php common::printLink('doc', 'deleteLib', "libID=$lib->id", "<i class='icon icon-trash'></i>", 'hiddenwin', "title='{$lang->delete}' class='btn btn-link'")?>
<?php common::printLink('tree', 'browse', "rootID=$lib->id&type=doc", "<i class='icon icon-cog'></i>", '', "title='{$lang->tree->manage}' class='btn btn-link'")?>
</div>
<?php endif;?>
</div>
<?php endforeach;?>
</div>
</div>
<div class='table-footer'><?php echo $pager->show('right', 'pagerjs');?></div>
<div class='table-footer'><?php $pager->show('right', 'pagerjs');?></div>
</div>
</div>
</div>
+14 -11
View File
@@ -19,7 +19,7 @@ var browseType = '<?php echo $browseType;?>';
<?php js::set('libID', $libID);?>
<?php if($this->from != 'doc') js::set('type', 'doc');?>
<div class='main-row split-row' id='mainRow'>
<div class="main-row <?php if($this->from == 'doc') echo 'split-row';?>" id="mainRow">
<?php if($this->from == 'doc'):?>
<?php include './side.html.php';?>
<div class="col-spliter"></div>
@@ -50,48 +50,51 @@ var browseType = '<?php echo $browseType;?>';
<thead>
<tr class="muted">
<th class="c-name"><?php echo $lang->doc->title;?></th>
<th class="c-actions"></th>
<th class="c-num"><?php echo $lang->doc->size;?></th>
<th class="c-user"><?php echo $lang->doc->addedBy;?></th>
<th class="c-datetime"><?php echo $lang->doc->addedDate;?></th>
<th class="c-datetime"><?php echo $lang->doc->editedDate;?></th>
<th class="c-actions"><?php echo $lang->actions;?></th>
</tr>
</thead>
<tbody>
<?php if(isset($modules)):?>
<?php foreach($modules as $module):?>
<?php $star = strpos($module->collector, ',' . $this->app->user->account . ',') !== false ? 'icon-star text-yellow' : 'icon-star-empty';?>
<?php $collectTitle = strpos($module->collector, ',' . $this->app->user->account . ',') !== false ? $lang->doc->cancelCollection : $lang->doc->collect;?>
<tr>
<td class="c-name"><?php echo html::a(inlink('browse', "libID=$libID&browseType=bymodule&param=$module->id&orderBy=$orderBy&from=$from"), "<i class='icon icon-folder text-yellow'></i> &nbsp;" . $module->name);?></td>
<td class="c-actions">
<?php common::printLink('doc', 'collect', "objectID=$module->id&objectType=module", "<i class='icon {$star}'></i>", 'hiddenwin', "title='{$lang->doc->collect}' class='btn btn-link'")?>
</td>
<td class="c-num"></td>
<td class="c-user"></td>
<td class="c-datetime"></td>
<td class="c-datetime"></td>
<td>
<?php common::printLink('doc', 'collect', "objectID=$module->id&objectType=module", "<i class='icon {$star}'></i>", 'hiddenwin', "title='{$collectTitle}' class='btn btn-link'")?>
<?php common::printLink('tree', 'browse', "rootID=$libID&type=doc", "<i class='icon icon-cog'></i>", '', "title='{$lang->tree->manage}' class='btn btn-link'")?>
</td>
</tr>
<?php endforeach;?>
<?php endif;?>
<?php foreach($docs as $doc):?>
<?php $star = strpos($doc->collector, ',' . $this->app->user->account . ',') !== false ? 'icon-star text-yellow' : 'icon-star-empty';?>
<?php $collectTitle = strpos($doc->collector, ',' . $this->app->user->account . ',') !== false ? $lang->doc->cancelCollection : $lang->doc->collect;?>
<tr>
<td class="c-name"><?php echo html::a(inlink('view', "docID=$doc->id"), "<i class='icon icon-file-text text-muted'></i> &nbsp;" . $doc->title);?></td>
<td class="c-actions">
<?php common::printLink('doc', 'collect', "objectID=$doc->id&objectType=doc", "<i class='icon {$star}'></i>", 'hiddenwin', "title='{$lang->doc->collect}' class='btn btn-link'")?>
<?php common::printLink('doc', 'edit', "docID=$doc->id", "<i class='icon icon-edit'></i>", '', "title='{$lang->edit}' class='btn btn-link'")?>
<?php common::printLink('doc', 'delete', "docID=$doc->id", "<i class='icon icon-trash'></i>", 'hiddenwin', "title='{$lang->delete}' class='btn btn-link'")?>
</td>
<td class="c-num"></td>
<td class="c-user"><?php echo zget($users, $doc->addedBy);?></td>
<td class="c-datetime"><?php echo formatTime($doc->addedDate, 'm-d h:i');?></td>
<td class="c-datetime"><?php echo formatTime($doc->editedDate, 'm-d h:i');?></td>
<td>
<?php common::printLink('doc', 'collect', "objectID=$doc->id&objectType=doc", "<i class='icon {$star}'></i>", 'hiddenwin', "title='{$collectTitle}' class='btn btn-link'")?>
<?php common::printLink('doc', 'edit', "docID=$doc->id", "<i class='icon icon-edit'></i>", '', "title='{$lang->edit}' class='btn btn-link'")?>
<?php common::printLink('doc', 'delete', "docID=$doc->id", "<i class='icon icon-trash'></i>", 'hiddenwin', "title='{$lang->delete}' class='btn btn-link'")?>
</td>
</tr>
<?php endforeach;?>
</tbody>
</table>
</div>
<div class='table-footer'><?php echo $pager->show('right', 'pagerjs');?></div>
<div class='table-footer'><?php $pager->show('right', 'pagerjs');?></div>
</div>
</div>
<?php endif;?>
+4 -2
View File
@@ -21,11 +21,13 @@
</a>
<div class="actions">
<?php common::printLink('doc', 'collect', "objectID={$module->id}&objectType=module", "<i class='icon {$star}'></i>", 'hiddenwin', "title='{$lang->doc->collect}' class='btn btn-link'");?>
<?php common::printLink('tree', 'browse', "rootID=$libID&type=doc", "<i class='icon icon-cog'></i>", '', "title='{$lang->tree->manage}' class='btn btn-link'")?>
</div>
</div>
<?php endforeach;?>
<?php foreach($docs as $doc):?>
<?php $star = strpos($doc->collector, ',' . $this->app->user->account . ',') !== false ? 'icon-star text-yellow' : 'icon-star-empty';?>
<?php $collectTitle = strpos($doc->collector, ',' . $this->app->user->account . ',') !== false ? $lang->doc->cancelCollection : $lang->doc->collect;?>
<div class="col">
<a class="file" href="<?php echo inlink('view', "docID=$doc->id");?>">
<i class="file-icon icon icon-file-text text-muted"></i>
@@ -33,7 +35,7 @@
<div class="text-primary file-info"><?php echo zget($users, $doc->addedBy);?></div>
</a>
<div class="actions">
<?php common::printLink('doc', 'collect', "objectID={$doc->id}&objectType=doc", "<i class='icon {$star}'></i>", 'hiddenwin', "title='{$lang->doc->collect}' class='btn btn-link'")?>
<?php common::printLink('doc', 'collect', "objectID={$doc->id}&objectType=doc", "<i class='icon {$star}'></i>", 'hiddenwin', "title='{$collectTitle}' class='btn btn-link'")?>
<?php common::printLink('doc', 'edit', "docID={$doc->id}", "<i class='icon icon-edit'></i>", '', "title='{$lang->edit}' class='btn btn-link'")?>
<?php common::printLink('doc', 'delete', "docID={$doc->id}", "<i class='icon icon-trash'></i>", '', "title='{$lang->delete}' class='btn btn-link'")?>
</div>
@@ -41,6 +43,6 @@
<?php endforeach;?>
</div>
</div>
<div class='table-footer'><?php echo $pager->show('right', 'pagerjs');?></div>
<div class='table-footer'><?php $pager->show('right', 'pagerjs');?></div>
</div>
</div>
+48 -44
View File
@@ -12,51 +12,55 @@
?>
<?php include '../../common/view/header.lite.html.php';?>
<?php include '../../common/view/chosen.html.php';?>
<div id='mainContent' class='main-content'>
<div class='center-block'>
<div class='main-header'>
<h2><?php echo $lang->doc->createLib;?></h2>
<div id="main">
<div class="container">
<div id='mainContent' class='main-content'>
<div class='center-block'>
<div class='main-header'>
<h2><?php echo $lang->doc->createLib;?></h2>
</div>
<form method='post' target='hiddenwin' >
<table class='table table-form'>
<tr>
<th class='w-80px'><?php echo $lang->doc->libType?></th>
<td><?php echo html::select('libType', $libTypeList, $type, "class='form-control chosen-simple'")?></td>
</tr>
<tr class='product'>
<th><?php echo $lang->doc->product?></th>
<td><?php echo html::select('product', $products, $type == 'product' ? $objectID : '', "class='form-control chosen'")?></td>
</tr>
<tr class='project hidden'>
<th><?php echo $lang->doc->project?></th>
<td><?php echo html::select('project', $projects, $type == 'project' ? $objectID : '', "class='form-control chosen'")?></td>
</tr>
<tr>
<th><?php echo $lang->doclib->name?></th>
<td><?php echo html::input('name', '', "class='form-control' autocomplete='off'")?></td>
</tr>
<tr>
<th><?php echo $lang->doclib->control;?></th>
<td><?php echo html::radio('acl', $lang->doc->aclList, 'open', "onchange='toggleAcl(this.value)'")?></td>
</tr>
<tr id='whiteListBox' class='hidden'>
<th><?php echo $lang->doc->whiteList;?></th>
<td>
<div class='input-group'>
<span class='input-group-addon groups-addon'><?php echo $lang->doclib->group?></span>
<?php echo html::select('groups[]', $groups, '', "class='form-control chosen' multiple")?>
</div>
<div class='input-group'>
<span class='input-group-addon'><?php echo $lang->doclib->user?></span>
<?php echo html::select('users[]', $users, '', "class='form-control chosen' multiple")?>
</div>
</td>
</tr>
<tr>
<td class='text-center' colspan='2'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?></td>
</tr>
</table>
</form>
</div>
</div>
<form method='post' target='hiddenwin' >
<table class='table table-form'>
<tr>
<th class='w-80px'><?php echo $lang->doc->libType?></th>
<td><?php echo html::select('libType', $libTypeList, $type, "class='form-control'")?></td>
</tr>
<tr class='product'>
<th><?php echo $lang->doc->product?></th>
<td><?php echo html::select('product', $products, $type == 'product' ? $objectID : '', "class='form-control chosen'")?></td>
</tr>
<tr class='project hidden'>
<th><?php echo $lang->doc->project?></th>
<td><?php echo html::select('project', $projects, $type == 'project' ? $objectID : '', "class='form-control chosen'")?></td>
</tr>
<tr>
<th><?php echo $lang->doclib->name?></th>
<td><?php echo html::input('name', '', "class='form-control' autocomplete='off'")?></td>
</tr>
<tr>
<th><?php echo $lang->doclib->control;?></th>
<td><?php echo html::radio('acl', $lang->doc->aclList, 'open', "onchange='toggleAcl(this.value)'")?></td>
</tr>
<tr id='whiteListBox' class='hidden'>
<th><?php echo $lang->doc->whiteList;?></th>
<td>
<div class='input-group'>
<span class='input-group-addon groups-addon'><?php echo $lang->doclib->group?></span>
<?php echo html::select('groups[]', $groups, '', "class='form-control chosen' multiple")?>
</div>
<div class='input-group'>
<span class='input-group-addon'><?php echo $lang->doclib->user?></span>
<?php echo html::select('users[]', $users, '', "class='form-control chosen' multiple")?>
</div>
</td>
</tr>
<tr>
<td class='text-center' colspan='2'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?></td>
</tr>
</table>
</form>
</div>
</div>
<?php include '../../common/view/footer.lite.html.php';?>
+1 -1
View File
@@ -170,7 +170,7 @@
</thead>
<tbody>
<?php foreach($myDocs as $doc):?>
<tr data-url="">
<tr data-url="<?php echo $this->createLink('doc', 'view', "docID={$doc->id}");?>">
<td class="c-name"><?php echo $doc->title;?></td>
<td class="c-user"><?php echo zget($users, $doc->addedBy);?></td>
<td class="c-datetime"><?php echo formatTime($doc->editedDate) ? formatTime($doc->editedDate, 'm-d H:i') : formatTime($doc->addedDate, 'm-d H:i');?></td>
+6 -3
View File
@@ -11,7 +11,7 @@
*/
?>
<?php include '../../common/view/header.html.php';?>
<div class="main-row split-row" id="mainRow">
<div class="main-row <?php if($this->from == 'doc') echo 'split-row';?>" id="mainRow">
<?php if($this->from == 'doc'):?>
<?php include './side.html.php';?>
<?php endif;?>
@@ -52,7 +52,7 @@
<?php foreach($libs as $libID => $lib):?>
<?php if($libID == 'project' and $from != 'doc') continue;?>
<?php if(strpos($this->config->doc->custom->objectLibs, 'files') === false && $libID == 'files') continue;?>
<?php if(strpos($this->config->doc->custom->objectLibs, 'customFiles') === false && !$lib->main) continue;?>
<?php if(strpos($this->config->doc->custom->objectLibs, 'customFiles') === false && isset($lib->main) && !$lib->main) continue;?>
<?php $libLink = inlink('browse', "libID=$libID&browseType=all&param=0&orderBy=id_desc&from=$from");?>
<?php if($libID == 'project') $libLink = inlink('allLibs', "type=project&product=$object->id");?>
@@ -68,10 +68,13 @@
<div class="text-primary file-info"><?php echo $lib->allCount . $lang->doc->item;?></div>
</a>
<?php if($libID != 'project' and $libID != 'files'):?>
<?php $star = strpos($lib->collector, ',' . $this->app->user->account . ',') !== false ? 'icon-star text-yellow' : 'icon-star-empty';?>
<?php $collectTitle = strpos($lib->collector, ',' . $this->app->user->account . ',') !== false ? $lang->doc->cancelCollection : $lang->doc->collect;?>
<div class="actions">
<?php common::printLink('doc', 'collect', "objectID=$libID&objectType=doclib", "<i class='icon icon-star-empty'></i>", 'hiddenwin', "title='{$lang->doc->collect}' class='btn btn-link'")?>
<?php common::printLink('doc', 'collect', "objectID=$libID&objectType=doclib", "<i class='icon {$star}'></i>", 'hiddenwin', "title='{$collectTitle}' class='btn btn-link'")?>
<?php common::printLink('doc', 'editLib', "libID=$libID", "<i class='icon icon-edit'></i>", '', "title='{$lang->edit}' class='btn btn-link iframe'")?>
<?php common::printLink('doc', 'deleteLib', "libID=$libID", "<i class='icon icon-trash'></i>", 'hiddenwin', "title='{$lang->delete}' class='btn btn-link'")?>
<?php common::printLink('tree', 'browse', "rootID=$libID&type=doc", "<i class='icon icon-cog'></i>", '', "title='{$lang->tree->manage}' class='btn btn-link'")?>
</div>
<?php endif;?>
</div>
+4 -2
View File
@@ -11,9 +11,11 @@
*/
?>
<?php include '../../common/view/header.html.php';?>
<div class='main-row split-row' id='mainRow'>
<div class="main-row <?php if($this->from == 'doc') echo 'split-row';?>" id="mainRow">
<?php if($this->from == 'doc'):?>
<?php include './side.html.php';?>
<div class="col-spliter"></div>
<?php endif;?>
<div class="main-col" data-min-width="400">
<div class="panel block-files block-sm no-margin">
<div class="panel-heading">
@@ -141,7 +143,7 @@
</div>
</div>
<?php endif?>
<div class='table-footer'><?php echo $pager->show('right', 'pagerjs');?></div>
<div class='table-footer'><?php $pager->show('right', 'pagerjs');?></div>
</div>
</div>
</div>
+1 -1
View File
@@ -1,6 +1,6 @@
.alert-link:hover {text-decoration: underline;}
.alert {width: 100%; display: table;}
code{padding-left:0px;}
.alert.with-icon .icon-ok-sign, .alert.with-icon .icon-info-sign{padding-top:18px;vertical-align:top;}
.alert.with-icon .icon-ok-sign, .alert.with-icon .exclamation-sign{padding-top:18px;vertical-align:top;}
.detail-actions{margin-top:10px;}
.detail-actions .pull-right{margin-top:-10px;}
+1
View File
@@ -105,6 +105,7 @@ $lang->extension->errorDownloadPathNotWritable = 'Extensiond ownload path <stron
$lang->extension->errorPackageFileExists = '<strong>%s</strong> has existed in the download path.<h5> Please %s it again, <a href="%s" class="alert-link">CLICK HERE</a></h5>';
$lang->extension->errorDownloadFailed = 'Download failed. Please try it again. If still not OK, try to download it manually and upload it to install.';
$lang->extension->errorMd5Checking = 'Incomplete File. Please download it again. If still not OK, try to download it manually and upload it to install.';
$lang->extension->errorCheckIncompatible = 'Incompatible with this version of ZenTao. It may not be used %s later.<h5>You can choose to <a href="%s" class="btn btn-sm">force%s</a> or <a href="#" onclick=parent.location.href="%s" class="btn btn-sm">cancel</a></h5>';
$lang->extension->errorFileConflicted = '<br />%s <h5> is conflicted with others. Choose <a href="%s" class="btn btn-sm">Override</a> or <a href="#" onclick=parent.location.href="%s" class="btn btn-sm">Cancel</a></h5>';
$lang->extension->errorPackageNotFound = '<strong>%s </strong> is not found. Downloading might be failed. Please download it again.';
$lang->extension->errorTargetPathNotWritable = '<strong>%s </strong> is not writable.';
+2 -2
View File
@@ -22,7 +22,7 @@
</div>
<?php if(isset($confirm) and $confirm == 'no'):?>
<div class='alert alert-pure with-icon'>
<i class='icon-info-sign'></i>
<i class='icon-exclamation-sign'></i>
<div class='content'>
<?php
echo "<p class='waring'>{$lang->extension->confirmUninstall}";
@@ -33,7 +33,7 @@
</div>
<?php elseif(!empty($error)):?>
<div class='alert alert-pure with-icon'>
<i class='icon-info-sign'></i>
<i class='icon-exclamation-sign'></i>
<div class='content'>
<?php
echo "<h3 class='error'>" . $lang->extension->uninstallFailed . "</h3>";
+1 -1
View File
@@ -21,7 +21,7 @@
</div>
<?php if($error):?>
<div class='alert alert-danger with-icon'>
<i class='icon-info-sign'></i>
<i class='icon-exclamation-sign'></i>
<div class='content'>
<h3><?php echo $lang->extension->waringInstall;?></h3>
<p><?php echo $error;?></p>
+1 -1
View File
@@ -12,7 +12,7 @@
<div class='main-header clearfix'>
<h2 class='pull-left'><?php echo $lang->file->preview;?></h2>
<?php if($fileType == 'txt'):?>
<div class='btn-toolbar pull-left w-120px'><?php echo html::select('charset', $config->file->charset, $charset, "onchange='setCharset(this.value)' class='chosen'");?></div>
<div class='btn-toolbar pull-left w-120px'><?php echo html::select('charset', $config->file->charset, $charset, "onchange='setCharset(this.value)' class='form-control'");?></div>
<?php endif;?>
</div>
<?php if($fileType == 'image'):?>
+2 -2
View File
@@ -15,7 +15,7 @@ $sessionString .= session_name() . '=' . session_id();
$(function(){
$(".edit").modalTrigger({width:350, type:'iframe'});
})
/* Delete a file. */
function deleteFile(fileID)
{
@@ -49,7 +49,7 @@ $sessionString .= session_name() . '=' . session_id();
if(common::hasPriv('file', 'download'))
{
$uploadDate = $lang->file->uploadDate . substr($file->addedDate, 0, 10);
$fileTitle = "<li title='{$uploadDate}'><i class='icon icon-file-text'></i> &nbsp;" . $file->title .'.' . $file->extension;
$fileTitle = "<li title='{$uploadDate}'><i class='icon icon-file-text'></i> &nbsp;" . $file->title;
$imageWidth = 0;
if(stripos('jpg|jpeg|gif|png|bmp', $file->extension) !== false)
{
+3
View File
@@ -72,6 +72,7 @@ $lang->index->methodOrder[0] = 'index';
$lang->resource->my = new stdclass();
$lang->resource->my->index = 'index';
$lang->resource->my->todo = 'todo';
$lang->resource->my->calendar = 'calendar';
$lang->resource->my->task = 'task';
$lang->resource->my->bug = 'bug';
$lang->resource->my->testTask = 'testTask';
@@ -691,6 +692,7 @@ $lang->resource->doc->allLibs = 'allLibs';
$lang->resource->doc->objectLibs = 'objectLibs';
$lang->resource->doc->showFiles = 'showFiles';
$lang->resource->doc->sort = 'sort';
$lang->resource->doc->collect = 'collect';
//$lang->resource->doc->diff = 'diff';
$lang->doc->methodOrder[0] = 'index';
@@ -706,6 +708,7 @@ $lang->doc->methodOrder[45] = 'allLibs';
$lang->doc->methodOrder[50] = 'showFiles';
$lang->doc->methodOrder[55] = 'objectLibs';
$lang->doc->methodOrder[60] = 'sort';
$lang->doc->methodOrder[65] = 'collect';
//$lang->doc->methodOrder[55] = 'diff';
/* mail. */
+46
View File
@@ -7,6 +7,52 @@ li{line-height: 2em}
.dropdown-menu {min-width: 120px; margin-top: 0;}
.card {
position: relative;
display: block;
padding: 0;
margin-bottom: 20px;
overflow: hidden;
border: 1px solid #ddd;
border-radius: 0;
-webkit-box-shadow: 0 1px 2px rgba(0,0,0,.075);
box-shadow: 0 1px 2px rgba(0,0,0,.075);
-webkit-transition: all .5s cubic-bezier(.175,.885,.32,1);
-o-transition: all .5s cubic-bezier(.175,.885,.32,1);
transition: all .5s cubic-bezier(.175,.885,.32,1);
}
.card .card-heading {
display: block;
padding: 10px;
margin: 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.card .card-content
{
padding: 0 10px 10px 10px;
overflow: hidden;
text-overflow: ellipsis;
}
.card > .card-reveal {
position: absolute;
top: 100%;
left: 0;
width: 100%;
height: 100%;
background-color: #f1f1f1;
-webkit-transition: all .8s cubic-bezier(.175,.885,.32,1);
-o-transition: all .8s cubic-bezier(.175,.885,.32,1);
transition: all .8s cubic-bezier(.175,.885,.32,1);
}
.card>.card-reveal>.card-heading{padding:20px 10px}
.card:hover>.card-reveal{top:0}
.card.ad{margin-bottom:0px;}
.card.ad > .img-wrapper {
background-position: center;
+1 -1
View File
@@ -12,7 +12,7 @@
<?php include '../../common/view/header.lite.html.php';?>
<div class='container'>
<div class='modal-dialog'>
<form method='post' action='<?php echo $this->createLink('install', 'step3');?>' class='form-condensed'>
<form method='post' action='<?php echo $this->createLink('install', 'step3');?>'>
<div class='modal-header'><strong><?php echo $lang->install->setConfig;?></strong></div>
<div class='modal-body'>
<table align='center' class='table table-bordered table-form'>
+1 -1
View File
@@ -37,7 +37,7 @@ EOT;
</div>
<div class='modal-body'>
<div class='alert alert-danger alert-pure with-icon'>
<i class='icon-info-sign'></i>
<i class='icon-exclamation-sign'></i>
<div class='content'><?php echo $error;?></div>
</div>
</div>
+2 -2
View File
@@ -18,7 +18,7 @@
</div>
<div class='modal-body'>
<div class='alert alert-danger alert-pure with-icon'>
<i class='icon-info-sign'></i>
<i class='icon-exclamation-sign'></i>
<div class='content'><?php echo $error;?></div>
</div>
</div>
@@ -43,7 +43,7 @@
<strong><?php echo $lang->install->getPriv;?></strong>
</div>
<div class='modal-body'>
<form class='form-condensed' method='post' target='hiddenwin'>
<form method='post' target='hiddenwin'>
<table class='table table-form mw-400px' style='margin: 0 auto'>
<tr>
<th class='w-100px'><?php echo $lang->install->company;?></th>
+1
View File
@@ -4,6 +4,7 @@ $lang->my->common = 'Dashboard';
/* Method List。*/
$lang->my->index = 'Home';
$lang->my->todo = 'My Todo';
$lang->my->calendar = 'Calendar';
$lang->my->task = 'My Task';
$lang->my->bug = 'My Bug';
$lang->my->testTask = 'My Build';
+1
View File
@@ -4,6 +4,7 @@ $lang->my->common = '我的地盘';
/* 方法列表。*/
$lang->my->index = '首页';
$lang->my->todo = '我的待办';
$lang->my->calendar = '日程';
$lang->my->task = '我的任务';
$lang->my->bug = '我的Bug';
$lang->my->testTask = '我的版本';
+1
View File
@@ -4,6 +4,7 @@ $lang->my->common = '我的地盤';
/* 方法列表。*/
$lang->my->index = '首頁';
$lang->my->todo = '我的待辦';
$lang->my->calendar = '日程';
$lang->my->task = '我的任務';
$lang->my->bug = '我的Bug';
$lang->my->testTask = '我的版本';
+4 -1
View File
@@ -13,7 +13,7 @@
<?php
if($contactLists)
{
echo html::select('', $contactLists, '', "class='form-control chosen' onchange=\"setMailto('mailto', this.value)\"");
echo html::select('contactListMenu', $contactLists, '', "class='form-control chosen' onchange=\"setMailto('mailto', this.value)\"");
}
else
{
@@ -23,3 +23,6 @@ else
echo '</span>';
}
?>
<style>
#contactListMenu + .chosen-container {min-width: 100px;}
</style>
+1 -1
View File
@@ -86,7 +86,7 @@
<?php if($mode == 'new' || !in_array($list->id, $disabled)):?>
<tr>
<td></td>
<td>
<td class="form-actions">
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::hidden('mode', $mode);?>
<?php if($mode == 'edit') echo html::a(inlink('deleteContacts', "listID=$listID"), $lang->delete, 'hiddenwin', "class='btn btn-danger'");?>
</td>
+1 -1
View File
@@ -86,7 +86,7 @@
<td class="c-status"><?php echo $lang->todo->statusList[$todo->status];?></td>
<td class="c-actions">
<?php
if($todo->status != 'done') common::printIcon('todo', 'assignto', "todoID=$todo->id", $todo, 'list', 'hand-right', '', "btn-icon", '', "data-toggle='assigntoModal'", $lang->todo->assignTo);
if($todo->status != 'done') common::printIcon('todo', 'assignto', "todoID=$todo->id", $todo, 'list', 'hand-right', '', "btn-icon", '', "data-toggle='assigntoModal' data-width='500'", $lang->todo->assignTo);
if($todo->status == 'done') common::printIcon('todo', 'activate', "id=$todo->id", $todo, 'list', 'magic', 'hiddenwin');
if($todo->status != 'done') common::printIcon('todo', 'finish', "id=$todo->id", $todo, 'list', 'checked', 'hiddenwin');
if($todo->status == 'done') common::printIcon('todo', 'close', "id=$todo->id", $todo, 'list', 'off', 'hiddenwin');
+1
View File
@@ -5,4 +5,5 @@
.release-head .subtitle {font-size: 12px; color: #7B8599;}
.release-line {margin: 0; padding-bottom: 40px;}
.release-line > li > a:before {border-color: #00da88;}
.release-line > li:nth-child(even) > a {padding-bottom: 38px;}
.release-link-line {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+YAAADiCAMAAAD0xy2eAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAABOUExURUdwTOXl5eXl5ebm5ufn5+rq6u7u7unp6eXl5f///+Xl5eXl5efn5+Xl5eXl5eXl5ebm5uXl5eXl5ebm5ubm5ubm5uXl5ebm5uXl5eXl5Uh6G7kAAAAZdFJOUwDuuVQtFQwg1gXH+Dpzoq1CmIV7aEuOX+MTWsN0AAAGrUlEQVQYGe3ACbaYOHRF0SuQkETfw5v/RPNdLpMZZKWez5buVQBcu8zmJACO1WOwcAqAZ7kx66MAeNa+ZncnAI51t1kvAK7F/hEAAAAAAACA/xP93gmAZ6tZOKsAODb2ZuUSAM/aYtZEAXCsTsFs7gTAse4eigD4lqMAAAAAAMD/D09/CYBrvVl/CYBjdXrN+lUAHOumYNavAuBYNwWzTQA866ZwCYBvnQAAAAD8V7RHEgDParHhzgLg2NqYDXMUAMfiPJg1qwA4lu/BbBMAz7rjvQTAtyoAAOBG1wmAb1O4swB4NptZcwmAY3EbzN4pCYBfaSpmwywAnl2NNQLgW44CAABuZAHwLQ1lSgLg2BjMhuUSAL9q25jZu2cB8CsfxcweAfBsnYcsAL51AgAAboxL2wmAZ5vZMF9VANxKZ29mYRsFwK98FDN7swA4Fvc3VAHwLQsAALgxlSMKgGeNmZU9CoBb9dqCmb33KABu1XV7zSwJgGfjPQsAALixHlEAXJvN3u3qBMCtdXvNbGjOLABuxaO3H1EAHEvPUgQAANwYlycLgGe7mZX76gTAq3wuwcyGZsoC4FUd997MLgHwLLVbJwB/j7UTANeyDf2+dgLgVuwHMxv6fa0C4FR37b39WATAse66+0kA/h45CYBvjZX5yQLg1xLsR1imsQqATzVOy2s/kgA4lp+tEYC/R9rOsRMAx1r7UebjygLgU57mMtgvswC4VeNzN++hT0oC4FDVZ7ehLPe55ioAPu3BfhseAXCqi+2xNa9d+rTnFTsB8KLqH7Xq09iPoTTzngXApXNrSrBfRn1i7ATAlS5e5570KWbD2y/b8XQC4NJSgv2W9RljrgLgR5fH9tznqk8ws1D6ZTs6AXCp6d/B/lH1Oc52jakKgBcpj+156FPtt1B6AXCp27elKcHMgj5d6Zdtn55rzALgRcpRn2x/vPrUMaYqAP9hVZ8a1/Y87rnpG32y/Qhv38y7ALiU+xIG+6Xok5r5Ps52jbkTABe6PF5Pq89ofxR9upg7AXAiXc+0b0tT3kaf0cyGtzTLdgqAS2N5B/tHo09ctn162jGmKgAedDmu7Xnp09ofjT5dTFUAnEjtedzz0pd30+cxs/D2zXy3AuBSW4L9tumzzvdxtmvMnQC40OXxes5Vn8n+2PTpkgC4EZ9p35amvMOuz2QWSr/M9zQKgEtTsH/t+qzH2a4xVQFwoaY4Xs+0r/rs9lsopwC4tO7b0pcwmJ367KVftn16rjEJgBddTvrM9sejT46pCoATKY7tedxz06/6zGYWSr9sexQAl+4S7LdLn3Z6rpirAHiR4tieR9ansX+E0o8C4NJzz015BzMb9bmX7TjbMXcC4EaXx06fYv8aogC4NLbnvi19CZb06Usz38dzjVkA/Kj6X8H+SPpUAfAjxfWZ9rnp36pPCKWZ7+m5ogC4VAf7o+rTCYAjKa7PdM9Nr0+1UJr5ntoxC4BLebB/BQFwKsX1me6lb/RJ89HGKgB+jfZLae5zFACX0nk3xX5pBMCvGttjnvRJWQB8myw0e5sFwK0p2C+h2aMAOJXbvQlm1gqAZ/k6sgD8PfpmXzsB8KuzX8rWZgFwKrV3P9iPIgB+1fFoQi8AziV9qgA4d4bljALg2GY/3vnJAuBVfubXfryrAPgVzyVYFgDfogD8Per8JAHwbDWzfh+rAHiVpmYws7CcWQC8qtddzOwWAM/yuawCAABu9HPbCYBj2cyG5swC4FacevtR9lEA3ErPEswWAfCsrncrAADgxraPAuBZN5i921oFwK31fs0szG0nAG7FvZhZLwCe5ak/BAAA3FizAPj2WjmyAPjVzcHMyhEFwK16zcHMyiQAftVrCzYLgGt1jQIAAG7MRxYAz7KZ9VMWALfqNQcz66ckAG7VdhnM7BYAx2q7DKcA+NZ1AgAAXtSyjQLg2WVm7x4FwK94v2ZWpiwAfo1bMLNJAByr1zyMAuBbJwAA4EYsUxYAzw4za55OANyq1zKYDctVBcCt7mnMLIwC4Fg+ytAJgG9ZAADAjWuPAuBaY9afSQD8GrdgNixXFQC3atuYWbirAPiVpmJFAHyLqwAAgBtjEgDX6jssVxUAv9IymIU7CoBfaSpm1p9JAPwat2A2C4BntW1WAQAAAPiPyGVKAuDZYTYslwD4VdvGzN49C4Bf6Shm1kQBcGydhyEJgGvdJQAA4EZOAuDbMiyrAHi2mNl7ZAHwKx2vmTVXFQC/1mUw6wXAszSVQwCcqwIAAG4cSQBcW4ckAK7lU/8D/a9fSZZlwxkAAAAASUVORK5CYII=); height: 218px; position: absolute; left: 10px; right: 100px; top: 97px; background-size: 100% 100%; background-repeat: no-repeat;}
+1 -1
View File
@@ -31,7 +31,7 @@
<tr>
<td colspan='2' class='text-center'>
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?>
<?php echo html::linkButton($lang->goback, $this->session->taskList, '', '', 'btn btn-wide');?>
<?php echo html::linkButton($lang->goback, $this->session->taskList, 'self', '', 'btn btn-wide');?>
</td>
</tr>
</table>
+1 -1
View File
@@ -47,7 +47,7 @@
<div class="block">
<span class="title"><?php echo isset($roadmap->build) ? $roadmap->name : $roadmap->title;?></span>
<span class="date"><?php echo isset($roadmap->build) ? $roadmap->date : ($roadmap->end == '2030-01-01' ? $lang->productplan->future : $roadmap->begin . '~' . $roadmap->end);?></span>
<span class="info"><?php echo $roadmap->desc;?></span>
<span class="info text-ellipsis" title="<?php echo strip_tags($roadmap->desc);?>"><?php echo $roadmap->desc;?>&nbsp;</span>
</div>
</a>
</li>
+1 -1
View File
@@ -31,7 +31,7 @@
<?php if(!empty($release->marker)) echo "<i class='icon icon-flag text-primary'></i>";?>
<span class="title"><?php echo $release->name;?></span>
<span class="date"><?php echo $release->date;?></span>
<span class="info"><?php echo $release->desc;?></span>
<span class="info text-ellipsis" title="<?php echo strip_tags($release->desc);?>"><?php echo $release->desc;?></span>
</a>
</li>
<?php endforeach;?>
+1 -1
View File
@@ -219,7 +219,7 @@ class project extends control
$this->view->productID = $productID;
$this->view->modules = $this->tree->getTaskOptionMenu($projectID);
$this->view->moduleID = $moduleID;
$this->view->moduleTree = $this->tree->getTaskTreeMenu($projectID, $productID = 0, $startModuleID = 0, array('treeModel', 'createTaskLink'));
$this->view->moduleTree = $this->tree->getTaskTreeMenu($projectID, $productID, $startModuleID = 0, array('treeModel', 'createTaskLink'));
$this->view->projectTree = $this->project->tree();
$this->view->memberPairs = $memberPairs;
$this->view->branchGroups = $this->loadModel('branch')->getByProducts(array_keys($products), 'noempty');
+3 -3
View File
@@ -13,11 +13,11 @@ function setRole(account, roleID)
roleOBJ.val(role) // set the role.
}
function addItem()
function addItem(obj)
{
var item = $('#addItem').html().replace(/%i%/g, i);
$('#teamForm table tbody').append('<tr class="addedItem">' + item + '</tr>');
var accounts = $('#submit').closest('table').find('tr.addedItem:last').find('select:first')
$(obj).closest('tr').after('<tr class="addedItem">' + item + '</tr>');
var accounts = $('#hours' + i).closest('tr').find('select:first')
accounts.trigger('liszt:updated');
accounts.chosen();
i ++;
+1
View File
@@ -69,6 +69,7 @@ $(function()
isItemLoading = false;
$itemContent.find('.text-limit').textLimit();
$itemContent.find('.histories').histories();
$itemContent.find('.iframe').modalTrigger();
},
error: function()
{
+8 -2
View File
@@ -23,6 +23,7 @@ $lang->project->days = 'Man-Day';
$lang->project->day = 'day';
$lang->project->workHour = 'Hour(s)';
$lang->project->totalHours = 'Working Hour(s)';
$lang->project->totalDays = 'Working Day(s)';
$lang->project->status = 'Status';
$lang->project->desc = 'Desc';
$lang->project->owner = 'Owner';
@@ -40,7 +41,6 @@ $lang->project->whitelist = 'Whitelist';
$lang->project->totalEstimate = 'Est.(h)';
$lang->project->totalConsumed = 'Cost';
$lang->project->totalLeft = 'Left';
$lang->project->Left = 'Left';
$lang->project->progress = 'Progress';
$lang->project->hours = '%s Estimate, %s Cost, %s Left.';
$lang->project->viewBug = 'Bugs';
@@ -57,6 +57,8 @@ $lang->project->delayed = 'Delayed';
$lang->project->product = $lang->project->products;
$lang->project->readjustTime = 'Adjust project begin and end time';
$lang->project->readjustTask = 'Adjust task start date and deadline';
$lang->project->effort = 'Effort';
$lang->project->relatedMember = 'Related Member';
$lang->project->start = 'Start';
$lang->project->activate = 'Activate';
@@ -114,12 +116,12 @@ $lang->project->latestDynamic = 'Latest Dynamic';
$lang->project->build = 'Builds';
$lang->project->testtask = 'Test Tasks';
$lang->project->burn = 'Burndown';
$lang->project->baseline = 'Baseline';
$lang->project->computeBurn = 'Update';
$lang->project->burnData = 'Burndown Data';
$lang->project->fixFirst = 'Edit Man-hour of 1st Day';
$lang->project->team = 'Team Member';
$lang->project->doc = 'Doc';
$lang->project->doclib = 'Doc Library';
$lang->project->manageProducts = 'Link ' . $lang->productCommon;
$lang->project->linkStory = 'Link Story';
$lang->project->linkStoryByPlan = 'Link Story From Plan';
@@ -189,6 +191,8 @@ $lang->project->aboveAllProject = "All the above {$lang->projectCommon}";
/* 页面提示。*/
$lang->project->selectProject = "Select {$lang->projectCommon}";
$lang->project->beginAndEnd = 'Duration';
$lang->project->begin = 'Begin';
$lang->project->end = 'End';
$lang->project->lblStats = 'Man-Hour Summary(h) : ';
$lang->project->stats = '<strong>%s</strong> Available, <strong>%s</strong> Total Estimated, <strong>%s</strong> Cost, <strong>%s</strong> Left.';
$lang->project->taskSummary = "Tasks on this page : <strong>%s</strong> Total, <strong>%s</strong> Wait, <strong>%s</strong> Doing; &nbsp;&nbsp;&nbsp; Hours : <strong>%s</strong> Est., <strong>%s</strong> Cost, <strong>%s</strong> Left.";
@@ -248,6 +252,8 @@ $lang->project->charts->burn->graph->formatNumber = 0;
$lang->project->charts->burn->graph->animation = 0;
$lang->project->charts->burn->graph->rotateNames = 1;
$lang->project->charts->burn->graph->showValues = 0;
$lang->project->charts->burn->graph->reference = 'Reference';
$lang->project->charts->burn->graph->actuality = 'Actuality';
$lang->project->placeholder = new stdclass();
$lang->project->placeholder->code = 'Abbreviation of project name';
-2
View File
@@ -41,7 +41,6 @@ $lang->project->whitelist = '分组白名单';
$lang->project->totalEstimate = '预计';
$lang->project->totalConsumed = '消耗';
$lang->project->totalLeft = '剩余';
$lang->project->Left = '剩余';
$lang->project->progress = '进度';
$lang->project->hours = '预计 %s 消耗 %s 剩余 %s';
$lang->project->viewBug = '查看bug';
@@ -117,7 +116,6 @@ $lang->project->latestDynamic = '最新动态';
$lang->project->build = '所有版本';
$lang->project->testtask = '测试任务';
$lang->project->burn = '燃尽图';
$lang->project->baseline = '基准线';
$lang->project->computeBurn = '更新';
$lang->project->burnData = '燃尽图数据';
$lang->project->fixFirst = '修改首天工时';
-2
View File
@@ -41,7 +41,6 @@ $lang->project->whitelist = '分組白名單';
$lang->project->totalEstimate = '預計';
$lang->project->totalConsumed = '消耗';
$lang->project->totalLeft = '剩餘';
$lang->project->Left = '剩餘';
$lang->project->progress = '進度';
$lang->project->hours = '預計 %s 消耗 %s 剩餘 %s';
$lang->project->viewBug = '查看bug';
@@ -117,7 +116,6 @@ $lang->project->latestDynamic = '最新動態';
$lang->project->build = '所有版本';
$lang->project->testtask = '測試任務';
$lang->project->burn = '燃盡圖';
$lang->project->baseline = '基準綫';
$lang->project->computeBurn = '更新';
$lang->project->burnData = '燃盡圖數據';
$lang->project->fixFirst = '修改首天工時';
+1 -1
View File
@@ -2668,7 +2668,7 @@ class projectModel extends model
$taskItem->consumed = $task->consumed;
$taskItem->left = $task->left;
$taskItem->openedBy = $users[$task->openedBy];
$taskItem->assignedTo = $users[$task->assignedTo];
$taskItem->assignedTo = zget($users, $task->assignedTo);
$taskItem->url = helper::createLink('task', 'view', "task=$task->id");
$taskItem->storyChanged = $story and $story->status == 'active' and $story->version > $story->taskVersion;
+1 -1
View File
@@ -54,7 +54,7 @@
<td colspan='5'><?php echo html::textarea('comment', '', "rows='6' class='form-control kindeditor' hidefocus='true'");?></td>
</tr>
<tr>
<td class='text-center' colspan='6'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->session->taskList, '', '', 'btn btn-wide'); ?></td>
<td class='text-center' colspan='6'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->session->taskList, 'self', '', 'btn btn-wide'); ?></td>
</tr>
</table>
</form>
+2 -2
View File
@@ -52,7 +52,7 @@ function initBurnChar()
labels: <?php echo json_encode($chartData['labels'])?>,
datasets: [
{
label: "<?php echo $lang->project->baseline;?>",
label: "<?php echo $lang->project->charts->burn->graph->reference;?>",
color: "#F1F1F1",
pointColor: '#D8D8D8',
pointStrokeColor: '#D8D8D8',
@@ -62,7 +62,7 @@ function initBurnChar()
data: <?php echo $chartData['baseLine']?>
},
{
label: "<?php echo $lang->project->Left?>",
label: "<?php echo $lang->project->charts->burn->graph->actuality;?>",
color: "#006AF1",
pointStrokeColor: '#006AF1',
pointHighlightStroke: '#006AF1',
+1 -1
View File
@@ -30,7 +30,7 @@
<td><?php echo html::textarea('comment', '', "rows='6' class='form-control kindeditor' hidefocus='true'");?></td>
</tr>
<tr>
<td class='text-center' colspan='2'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->session->taskList, '', '', 'btn btn-wide'); ?></td>
<td class='text-center' colspan='2'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->session->taskList, 'self', '', 'btn btn-wide'); ?></td>
</tr>
</tbody>
</table>
+1 -1
View File
@@ -156,7 +156,7 @@
<div class='modal-body'>
<?php if(count($projects) == 1):?>
<div class='alert alert-warning with-icon'>
<i class='icon-info-sign'></i>
<i class='icon-exclamation-sign'></i>
<div class='content'><?php echo $lang->project->copyNoProject;?></div>
</div>
<?php else:?>
+6 -7
View File
@@ -58,8 +58,7 @@
</td>
<td><?php echo html::radio("limited[$i]", $lang->team->limitedList, $member->limited);?></td>
<td class='c-actions'>
<a href='javascript:;' onclick='addItem()' class='btn btn-link'><i class='icon-plus'></i></a>
<a href='javascript:;' onclick='deleteItem()' class='disabled btn btn-link'><i class='icon icon-trash'></i></a>
<a href='javascript:;' onclick='addItem(this)' class='btn btn-link'><i class='icon-plus'></i></a>
</td>
</tr>
<?php $i ++; $memberCount ++;?>
@@ -76,7 +75,7 @@
</td>
<td><?php echo html::radio("limited[$i]", $lang->team->limitedList, 'no');?></td>
<td class='c-actions'>
<a href='javascript:;' onclick='addItem()' class='btn btn-link'><i class='icon-plus'></i></a>
<a href='javascript:;' onclick='addItem(this)' class='btn btn-link'><i class='icon-plus'></i></a>
<a href='javascript:;' onclick='deleteItem(this)' class='btn btn-link'><i class='icon icon-trash'></i></a>
</td>
</tr>
@@ -95,7 +94,7 @@
</td>
<td><?php echo html::radio("limited[$i]", $lang->team->limitedList, 'no');?></td>
<td class='c-actions'>
<a href='javascript:;' onclick='addItem()' class='btn btn-link'><i class='icon-plus'></i></a>
<a href='javascript:;' onclick='addItem(this)' class='btn btn-link'><i class='icon-plus'></i></a>
<a href='javascript:;' onclick='deleteItem(this)' class='btn btn-link'><i class='icon icon-trash'></i></a>
</td>
</tr>
@@ -114,15 +113,15 @@
</td>
<td><?php echo html::radio("limited[$i]", $lang->team->limitedList, 'no');?></td>
<td class='c-actions'>
<a href='javascript:;' onclick='addItem()' class='btn btn-link'><i class='icon-plus'></i></a>
<a href='javascript:;' onclick='addItem(this)' class='btn btn-link'><i class='icon-plus'></i></a>
<a href='javascript:;' onclick='deleteItem(this)' class='btn btn-link'><i class='icon icon-trash'></i></a>
</td>
</tr>
<?php $i ++; $memberCount ++;?>
<?php endfor;?>
</tbody>
<tfoot><tr><td colspan='6' class='text-center'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . ' ' . html::backButton('', '', 'btn btn-wide'); ?></td></tr></tfoot>
</table>
<div class='table-footer text-center'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . ' ' . html::backButton('', '', 'btn btn-wide'); ?></div>
<?php js::set('i', $i);?>
</form>
</div>
@@ -139,7 +138,7 @@
</td>
<td><?php echo html::radio("limited[$i]", $lang->team->limitedList, $member->realname ? $member->limited : 'no');?></td>
<td class='c-actions'>
<a href='javascript:;' onclick='addItem()' class='btn btn-link'><i class='icon-plus'></i></a>
<a href='javascript:;' onclick='addItem(this)' class='btn btn-link'><i class='icon-plus'></i></a>
<a href='javascript:;' onclick='deleteItem(this)' class='btn btn-link'><i class='icon icon-trash'></i></a>
</td>
</tr>
+3 -3
View File
@@ -231,19 +231,19 @@ $dataType = '';
<script language='Javascript'>
function initBurnChar()
{
var data =
var data =
{
labels: <?php echo json_encode($chartData['labels'])?>,
datasets: [
{
label: "<?php echo $lang->project->baseline;?>",
label: "<?php echo $lang->project->charts->burn->graph->reference;?>",
color: "#CCC",
fillColor: "rgba(0,0,0,0)",
showTooltips: false,
data: <?php echo $chartData['baseLine']?>
},
{
label: "<?php echo $lang->project->Left?>",
label: "<?php echo $lang->project->charts->burn->graph->actuality;?>",
color: "#0033CC",
data: <?php echo $chartData['burnLine']?>
}]
+1 -1
View File
@@ -60,7 +60,7 @@
<td colspan='3'><?php echo html::textarea('comment', '', "rows='6' class='form-control kindeditor' hidefocus='true'");?></td>
</tr>
<tr>
<td colspan='4' class='text-center'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->session->taskList, '', '', 'btn btn-wide'); ?></td>
<td colspan='4' class='text-center'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->session->taskList, 'self', '', 'btn btn-wide'); ?></td>
</tr>
</tbody>
</table>
+1 -1
View File
@@ -30,7 +30,7 @@
<td><?php echo html::textarea('comment', '', "rows='6' class='form-control kindeditor' hidefocus='true'");?></td>
</tr>
<tr>
<td colspan='2' class='text-center'><?php echo html::submitButton($lang->project->start, '', 'btn btn-wide btn-primary') . ' ' . html::linkButton($lang->goback, $this->session->taskList); ?></td>
<td colspan='2' class='text-center'><?php echo html::submitButton($lang->project->start, '', 'btn btn-wide btn-primary') . ' ' . html::linkButton($lang->goback, $this->session->taskList, 'self', '', 'btn btn-wide'); ?></td>
</tr>
</tbody>
</table>
+1 -1
View File
@@ -239,7 +239,7 @@
}
?>
</div>
<?php echo $pager->show('right', 'pagerjs');?>
<?php $pager->show('right', 'pagerjs');?>
</div>
<?php endif;?>
</form>
+1 -1
View File
@@ -29,7 +29,7 @@
<td><?php echo html::textarea('comment', '', "rows='6' class='form-control kindeditor' hidefocus='true'");?></td>
</tr>
<tr>
<td colspan='2' class='text-center'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->session->taskList, '', '', 'btn btn-wide'); ?></td>
<td colspan='2' class='text-center'><?php echo html::submitButton('', '', 'btn btn-wide btn-primary') . html::linkButton($lang->goback, $this->session->taskList, 'self', '', 'btn btn-wide'); ?></td>
</tr>
</table>
</form>
+1 -1
View File
@@ -31,7 +31,7 @@
</div>
</div>
<div id='mainContent'>
<form class='main-table' data-ride='table'>
<form class='main-table'>
<table class='table' id='memberList'>
<thead>
<tr>
+3 -3
View File
@@ -258,7 +258,7 @@
$whitelist = explode(',', $project->whitelist);
foreach($whitelist as $groupID) if(isset($groups[$groupID])) echo $groups[$groupID] . '&nbsp;';
?>
</p>
</p>
<?php endif;?>
</div>
</div>
@@ -303,7 +303,7 @@ $(function()
labels: <?php echo json_encode($chartData['labels'])?>,
datasets: [
{
label: "<?php echo $lang->project->baseline;?>",
label: "<?php echo $lang->project->charts->burn->graph->reference;?>",
color: "#F1F1F1",
pointColor: '#D8D8D8',
pointStrokeColor: '#D8D8D8',
@@ -313,7 +313,7 @@ $(function()
data: <?php echo $chartData['baseLine']?>
},
{
label: "<?php echo $lang->project->Left?>",
label: "<?php echo $lang->project->charts->burn->graph->actuality;?>",
color: "#006AF1",
pointStrokeColor: '#006AF1',
pointHighlightStroke: '#006AF1',
+4 -4
View File
@@ -1,9 +1,9 @@
function changeParams(obj)
{
var begin = $('.main .row').find('#begin').val();
var end = $('.main .row').find('#end').val();
var product = $('.main .row').find('#product').val();
var project = $('.main .row').find('#project').val();
var begin = $('#conditions').find('#begin').val();
var end = $('#conditions').find('#end').val();
var product = $('#conditions').find('#product').val();
var project = $('#conditions').find('#project').val();
if(begin.indexOf('-') != -1)
{
var beginarray = begin.split("-");
+7 -7
View File
@@ -1,11 +1,11 @@
function changeParams(obj)
{
var begin = $('.main .row').find('#begin').val();
var end = $('.main .row').find('#end').val();
var workday = $('.main .row').find('#workday').val();
var dept = $('.main .row').find('#dept').val();
var assign = $('.main .row').find('#assign').val();
var days = diffDate(begin, end);
var begin = $('#conditions').find('#begin').val();
var end = $('#conditions').find('#end').val();
var workday = $('#conditions').find('#workday').val();
var dept = $('#conditions').find('#dept').val();
var assign = $('#conditions').find('#assign').val();
var days = diffDate(begin, end);
$('#days').val(days);
@@ -19,7 +19,7 @@ function changeParams(obj)
{
var endarray = end.split("-");
var end = '';
for(i=0 ; i < endarray.length ; i++) end = end + endarray[i];
for(i = 0 ; i < endarray.length ; i++) end = end + endarray[i];
}
var link = createLink('report', 'workload', 'begin=' + begin + '&end=' + end + '&days=' + days + '&workday=' + workday + '&dept=' + dept + '&assign=' + assign);
+1 -1
View File
@@ -16,7 +16,7 @@
<div class='col-sm-5'>
<div class='input-group input-group-sm'>
<span class='input-group-addon'><?php echo $lang->report->bugOpenedDate;?></span>
<div class='datepicker-wrapper datepicker-date'><?php echo html::input('begin', $begin, "class='w-100px form-control form-date' onchange='changeParams(this)'");?></div>
<div class='datepicker-wrapper datepicker-date'><?php echo html::input('begin', $begin, "class='form-control form-date' onchange='changeParams(this)'");?></div>
<span class='input-group-addon fix-border'><?php echo $lang->report->to;?></span>
<div class='datepicker-wrapper datepicker-date'><?php echo html::input('end', $end, "class='form-control form-date' onchange='changeParams(this)'");?></div>
</div>
+7 -9
View File
@@ -14,38 +14,36 @@
<div class='with-padding'>
<form method='post'>
<div class="table-row" id='conditions'>
<div class='col-sm-2'>
<div class='col-2'>
<div class='input-group'>
<span class='input-group-addon'><?php echo $lang->report->dept;?></span>
<?php echo html::select('dept', $depts, $dept, "class='form-control chosen' onchange='changeParams(this)'");?>
</div>
</div>
<div class='col-sm-4'>
<div class='col-4'>
<div class='input-group input-group-sm'>
<span class='input-group-addon'><?php echo $lang->report->taskAssignedDate;?></span>
<div class='datepicker-wrapper datepicker-date'><?php echo html::input('begin', $begin, "class='w-80px form-control' style='padding-right:10px' onchange='changeParams(this)'");?></div>
<div class='datepicker-wrapper datepicker-date'><?php echo html::input('begin', $begin, "class='form-control' style='padding-right:10px' onchange='changeParams(this)'");?></div>
<span class='input-group-addon fix-border'><?php echo $lang->report->to;?></span>
<div class='datepicker-wrapper datepicker-date'><?php echo html::input('end', $end, "class='form-control' style='padding-right:10px' onchange='changeParams(this)'");?></div>
</div>
</div>
<div class='col-sm-2'>
<div class='col-2'>
<div class='input-group'>
<span class='input-group-addon'><?php echo $lang->report->diffDays;?></span>
<?php echo html::input('days', $days, "class='form-control' autocomplete='off' style='text-align:center'");?>
</div>
</div>
<div class='col-sm-2'>
<div class='col-2'>
<div class='input-group'>
<span class='input-group-addon'><?php echo $lang->report->workday;?></span>
<?php echo html::input('workday', $workday, "class='form-control' autocomplete='off' style='width:50px'");?>
</div>
</div>
<div class='col-sm-1'>
<div class='col-1'>
<?php echo html::select('assign', $lang->report->assign, $assign, "class='form-control' onchange='changeParams(this)' style='width:90px'");?>
</div>
<div class='col-sm-1'>
<div class='input-group'><?php echo html::submitButton($lang->report->query);?></div>
</div>
<div class='col-1 text-right'><?php echo html::submitButton($lang->report->query);?></div>
</div>
</form>
</div>
+1 -1
View File
@@ -18,7 +18,7 @@
</div>
</div>
<div class="alert with-icon hidden" id="scoreLoading">
<i class="icon-info-sign"></i>
<i class="icon-exclamation-sign"></i>
<div class="content">
<p><?php echo $lang->score->resetTips; ?></p>
<p id="loadingContent"></p>
+1 -1
View File
@@ -17,7 +17,7 @@ $lang->search->group1 = 'Group 1';
$lang->search->group2 = 'Group 2';
$lang->search->buildForm = 'Search Form';
$lang->search->buildQuery = 'Execute Query';
$lang->search->saveQuery = 'Save Query';
$lang->search->savedQuery = 'Save Query';
$lang->search->deleteQuery = 'Delete Query';
$lang->search->setQueryTitle = 'Enter the query title. Save it After searching.';
$lang->search->select = 'Stories/Tasks Filter';
+7 -11
View File
@@ -16,12 +16,6 @@ include '../../common/view/datepicker.html.php';
include '../../common/view/chosen.html.php';
?>
<style>
.w-400px {width: 400px;}
.w-60px {width: 60px;}
.w-160px {width: 160px;}
.w-120px {width: 120px;}
.w-70px {width: 70px;}
.w-110px {width: 110px;}
#selectPeriod {padding: 4px 0; height: 197px; min-width: 120px}
#selectPeriod > .dropdown-header {background: #f1f1f1; display: block; text-align: center; padding: 4px 0; line-height: 20px; margin: 5px 10px; font-size: 14px; border-radius: 2px; color: #333; font-size: 12px}
#groupAndOr {display: inline-block;}
@@ -41,9 +35,11 @@ include '../../common/view/chosen.html.php';
#userQueries {border-left: 1px solid #eee; vertical-align: top;}
#userQueries > h4 {margin: 0 0 6px;}
#userQueries .label {line-height: 24px; padding: 0 4px 0 8px; display: inline-block; background-color: #EEEEEE; color: #A6AAB8; border-radius: 12px; margin-bottom: 5px;}
#userQueries ul {list-style: none; padding-left: 0; margin: 0;}
#userQueries ul li + li {margin-top: 5px;}
#userQueries .label {line-height: 24px; padding: 0 20px 0 8px; display: inline-block; background-color: #EEEEEE; color: #A6AAB8; border-radius: 12px; max-width: 100%; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; position: relative;}
#userQueries .label:hover {background-color: #aaa; color: #fff;}
#userQueries .label > .icon-close {position: relative; top: 0; border-radius: 9px; font-size: 12px; line-height: 18px; width: 18px; display: inline-block;}
#userQueries .label > .icon-close {position: absolute; top: 2px; right: 2px; border-radius: 9px; font-size: 12px; line-height: 18px; width: 18px; display: inline-block;}
#userQueries .label > .icon-close:hover {background-color: #ff5d5d; color: #fff;}
</style>
<form method='post' action='<?php echo $this->createLink('search', 'buildQuery');?>' target='hiddenwin' id='searchForm'>
@@ -190,12 +186,12 @@ foreach($fieldParams as $fieldName => $param)
<?php if($style != 'simple'):?>
<td class='w-160px' rowspan='2' id='userQueries'>
<h4><?php echo $lang->search->savedQuery;?></h4>
<div>
<ul>
<?php foreach($queries as $queryID => $queryName):?>
<?php if(empty($queryID)) continue;?>
<?php echo html::a("javascript:executeQuery($queryID)", $queryName . (common::hasPriv('search', 'deleteQuery') ? '<i class="icon icon-close"></i>' : ''), '', "class='label user-query' data-query-id='$queryID'");?>
<li><?php echo html::a("javascript:executeQuery($queryID)", $queryName . (common::hasPriv('search', 'deleteQuery') ? '<i class="icon icon-close"></i>' : ''), '', "class='label user-query' data-query-id='$queryID'");?></li>
<?php endforeach;?>
</div>
</ul>
</td>
<?php endif;?>
</tr>
+4 -4
View File
@@ -11,15 +11,15 @@
*/
?>
<?php include '../../common/view/header.lite.html.php';?>
<form target='hiddenwin' method='post' style='padding: 20px 5% 30px'>
<form target='hiddenwin' method='post' style='padding: 15px 70px 15px 15px'>
<div class='input-group'>
<input name='title' id='title' class="form-control" autocomplete="off" type="text">
<?php if($onMenuBar == 'yes'):?>
<span class='input-group-addon'>
<label class="checkbox-inline">
<div class="checkbox-primary">
<input type="checkbox" name="onMenuBar" value="1" id="onMenuBar" />
<?php echo $lang->search->onMenuBar?>
</label>
<label for="onMenuBar"><?php echo $lang->search->onMenuBar?></label>
</div>
</span>
<?php endif;?>
<span class='input-group-btn'><?php echo html::submitButton() . html::hidden('module', $module)?></span>
-1
View File
@@ -1,4 +1,3 @@
.col-side .chosen-container .chosen-drop {width: 216px!important}
.col-side .chosen-container {width: 218px!important}
#linkStoriesBox > li ,#childStoriesBox > li {margin-left:-56px}
.table-form>tbody>tr>th{padding-top:7px;}
+2 -2
View File
@@ -160,7 +160,7 @@ class storyModel extends model
->setIF($bugID > 0, 'fromBug', $bugID)
->join('mailto', ',')
->stripTags($this->config->story->editor->create['id'], $this->config->allowedTags)
->remove('files,labels,needNotReview,newStory,uid')
->remove('files,labels,needNotReview,newStory,uid,contactListMenu')
->get();
/* Check repeat story. */
@@ -492,7 +492,7 @@ class storyModel extends model
->setIF($this->post->closedReason != false and $this->post->closedBy == false, 'closedBy', $this->app->user->account)
->join('reviewedBy', ',')
->join('mailto', ',')
->remove('linkStories,childStories,files,labels,comment')
->remove('linkStories,childStories,files,labels,comment,contactListMenu')
->get();
if(isset($story->plan) and is_array($story->plan)) $story->plan = trim(join(',', $story->plan), ',');
if(empty($_POST['product'])) $story->branch = $oldStory->branch;
+3 -4
View File
@@ -43,11 +43,10 @@
<td colspan='2'><?php echo html::textarea('comment', '', 'rows=5 class="area-1"');?></td>
</tr>
<tr>
<td></td>
<td colspan='2'>
<td colspan='3' class='text-center'>
<?php
echo html::submitButton(html::icon($lang->icons['activate']) . ' ' . $lang->story->activate, '', 'btn btn-success');
echo html::linkButton($lang->goback, $app->session->storyList ? $app->session->storyList : inlink('view', "storyID=$story->id"));
echo html::submitButton($lang->story->activate, '', 'btn btn-wide btn-success');
echo html::linkButton($lang->goback, $app->session->storyList ? $app->session->storyList : inlink('view', "storyID=$story->id"), 'self', '', 'btn btn-wide');
?>
</td>
</tr>
+2 -2
View File
@@ -26,7 +26,7 @@
<table class='table table-form'>
<tr>
<th class='w-80px'><?php echo $lang->story->closedReason;?></th>
<td class='w-p25-f'><?php echo html::select('closedReason', $lang->story->reasonList, '', 'class=form-control onchange="setStory(this.value)"');?></td><td></td>
<td class='w-p25-f'><?php echo html::select('closedReason', $lang->story->reasonList, '', 'class="form-control chosen-simple" onchange="setStory(this.value)"');?></td><td></td>
</tr>
<tr id='duplicateStoryBox' style='display:none'>
<th><?php echo $lang->story->duplicateStory;?></th>
@@ -43,7 +43,7 @@
<tr>
<td colspan='3' class='text-center'>
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?>
<?php echo html::linkButton($lang->goback, $app->session->storyList ? $app->session->storyList : inlink('view', "storyID=$story->id"), '', '', 'btn btn-wide');?>
<?php echo html::linkButton($lang->goback, $app->session->storyList ? $app->session->storyList : inlink('view', "storyID=$story->id"), 'self', '', 'btn btn-wide');?>
</td>
</tr>
</table>
+9 -3
View File
@@ -24,9 +24,15 @@
<div class='main-col col-8'>
<div class='cell'>
<div class='form-group'>
<div class='input-group'>
<input type='hidden' id='color' name='color' data-provide='colorpicker' data-wrapper='input-group-btn fix-border-right' data-pull-menu-right='false' data-btn-tip='<?php echo $lang->story->colorTag ?>' value='<?php echo $story->color ?>' data-update-text='#title, .story-title'>
<?php echo html::input('title', $story->title, 'class="form-control disabled" disabled="disabled" autocomplete="off"');?>
<div class="input-control has-icon-right">
<div class="colorpicker">
<button type="button" class="btn btn-link dropdown-toggle" data-toggle="dropdown" title="<?php echo $lang->task->colorTag ?>"><span class="cp-title"></span><span class="color-bar"></span><i class="ic"></i></button>
<ul class="dropdown-menu clearfix">
<li class="heading"><?php echo $lang->story->colorTag;?><i class="icon icon-close"></i></li>
</ul>
<input type="hidden" class="colorpicker" id="color" name="color" value="<?php echo $story->color ?>" data-icon="color" data-wrapper="input-control-icon-right" data-update-color=".story-title" data-provide="colorpicker">
</div>
<?php echo html::input('title', $story->title, 'class="form-control disabled story-title" disabled="disabled" autocomplete="off"');?>
</div>
</div>
<div class='detail'>
+1 -1
View File
@@ -67,7 +67,7 @@
<div class='table-footer'>
<div class="checkbox-primary check-all"><label><?php echo $lang->selectAll?></label></div>
<div class="table-actions btn-toolbar">
<?php if($storyCount) echo html::submitButton();?>
<?php if($storyCount) echo html::submitButton('', '', 'btn btn-default');?>
</div>
<?php echo html::hidden('story', $story->id);?>
</div>
+1 -1
View File
@@ -71,7 +71,7 @@ var assignedTo = '<?php $story->lastEditedBy ? print($story->lastEditedBy) : pri
<tr>
<td colspan='3' class='text-center form-actions'>
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?>
<?php echo html::linkButton($lang->goback, $app->session->storyList ? $app->session->storyList : inlink('view', "storyID=$story->id"), '', '', 'btn btn-wide');?>
<?php echo html::linkButton($lang->goback, $app->session->storyList ? $app->session->storyList : inlink('view', "storyID=$story->id"), 'self', '', 'btn btn-wide');?>
</td>
</tr>
</table>
+2
View File
@@ -15,8 +15,10 @@
<?php $browseLink = $app->session->storyList != false ? $app->session->storyList : $this->createLink('product', 'browse', "productID=$story->product&branch=$story->branch&moduleID=$story->module");?>
<div id="mainMenu" class="clearfix">
<div class="btn-toolbar pull-left">
<?php if(!isonlybody()):?>
<?php echo html::a($browseLink, '<i class="icon icon-back icon-sm"></i> ' . $lang->goback, '', "class='btn btn-link'");?>
<div class="divider"></div>
<?php endif;?>
<div class="page-title">
<span class="label label-id"><?php echo $story->id?></span>
<span class="text" style='color: <?php echo $story->color;?>'><?php echo $story->title;?></span>

Some files were not shown because too many files have changed in this diff Show More