Merge branch 'master' of https://github.com/easysoft/zentaopms
This commit is contained in:
+1
-1
@@ -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
@@ -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'),
|
||||
|
||||
@@ -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;?>
|
||||
|
||||
|
||||
@@ -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;?>
|
||||
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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;}
|
||||
|
||||
@@ -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
@@ -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
|
||||
|
||||
@@ -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 = '當前指派';
|
||||
|
||||
@@ -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)));
|
||||
}
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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'>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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']);
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -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
@@ -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">
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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'>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
<button id='saveMenuBtn' type='button' class='btn btn-primary'><?php echo $lang->save ?></button>
|
||||
<button id='closeModalBtn' type='button' class='btn'><?php echo $lang->close ?></button>
|
||||
<button id='resetMenuBtn' type='button' class='btn'><?php echo $lang->custom->restore ?></button>
|
||||
<span class='text-danger'> <i class="icon icon-info-sign"></i> <?php echo $lang->custom->menuTip ?></span>
|
||||
<span class='text-danger'> <i class="icon exclamation-sign"></i> <?php echo $lang->custom->menuTip ?></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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
|
||||
{
|
||||
|
||||
@@ -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
@@ -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
@@ -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
@@ -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 = "您確定刪除該文檔庫嗎?";
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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¶m=$module->id&orderBy=$orderBy&from=$from"), "<i class='icon icon-folder text-yellow'></i> " . $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> " . $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;?>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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';?>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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¶m=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>
|
||||
|
||||
@@ -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,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;}
|
||||
|
||||
@@ -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.';
|
||||
|
||||
@@ -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>";
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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'):?>
|
||||
|
||||
@@ -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> " . $file->title .'.' . $file->extension;
|
||||
$fileTitle = "<li title='{$uploadDate}'><i class='icon icon-file-text'></i> " . $file->title;
|
||||
$imageWidth = 0;
|
||||
if(stripos('jpg|jpeg|gif|png|bmp', $file->extension) !== false)
|
||||
{
|
||||
|
||||
@@ -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. */
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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'>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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';
|
||||
|
||||
@@ -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,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 = '我的版本';
|
||||
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
|
||||
@@ -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');
|
||||
|
||||
@@ -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;}
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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;?> </span>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -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;?>
|
||||
|
||||
@@ -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');
|
||||
|
||||
@@ -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 ++;
|
||||
|
||||
@@ -69,6 +69,7 @@ $(function()
|
||||
isItemLoading = false;
|
||||
$itemContent.find('.text-limit').textLimit();
|
||||
$itemContent.find('.histories').histories();
|
||||
$itemContent.find('.iframe').modalTrigger();
|
||||
},
|
||||
error: function()
|
||||
{
|
||||
|
||||
@@ -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; 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';
|
||||
|
||||
@@ -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 = '修改首天工时';
|
||||
|
||||
@@ -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 = '修改首天工時';
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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',
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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:?>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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']?>
|
||||
}]
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -239,7 +239,7 @@
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
<?php echo $pager->show('right', 'pagerjs');?>
|
||||
<?php $pager->show('right', 'pagerjs');?>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
</form>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -258,7 +258,7 @@
|
||||
$whitelist = explode(',', $project->whitelist);
|
||||
foreach($whitelist as $groupID) if(isset($groups[$groupID])) echo $groups[$groupID] . ' ';
|
||||
?>
|
||||
</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',
|
||||
|
||||
@@ -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("-");
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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';
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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,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;}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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'>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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
Reference in New Issue
Block a user