* adjust the search settings of bug module.

This commit is contained in:
wangchunsheng
2009-12-05 05:55:18 +00:00
parent e46407b986
commit d5060e5a81
7 changed files with 80 additions and 25 deletions

View File

@@ -1,13 +1,38 @@
<?php
global $lang;
$config->bug->search['module'] = 'bug';
$config->bug->search['fields']['id'] = $lang->bug->id;
$config->bug->search['fields']['title'] = $lang->bug->title;
$config->bug->search['fields']['status'] = $lang->bug->status;
$config->bug->search['fields']['openedBy'] = $lang->bug->openedBy;
$config->bug->search['fields']['resolution'] = $lang->bug->resolution;
$config->bug->search['groupItems'] = 3;
$config->bug->search['params']['title'] = array('operator' => 'include', 'control' => 'input', 'values' => '');
$config->bug->search['params']['status'] = array('operator' => '=', 'control' => 'select', 'values' => $lang->bug->statusList);
$config->bug->search['params']['openedBy'] = array('operator' => '=', 'control' => 'select', 'values' => 'users');
$config->bug->search['params']['resolution'] = array('operator' => '=', 'control' => 'select', 'values' => $lang->bug->resolutionList);
$config->bug->search['module'] = 'bug';
$config->bug->search['fields']['id'] = $lang->bug->id;
$config->bug->search['fields']['title'] = $lang->bug->title;
$config->bug->search['fields']['product'] = $lang->bug->product;
$config->bug->search['fields']['assignedTo'] = $lang->bug->assignedTo;
$config->bug->search['fields']['resolvedBy'] = $lang->bug->resolvedBy;
$config->bug->search['fields']['openedBy'] = $lang->bug->openedBy;
$config->bug->search['fields']['closedBy'] = $lang->bug->closedBy;
$config->bug->search['fields']['lastEditedBy'] = $lang->bug->lastEditedBy;
$config->bug->search['fields']['status'] = $lang->bug->status;
$config->bug->search['fields']['severity'] = $lang->bug->severity;
$config->bug->search['fields']['type'] = $lang->bug->type;
$config->bug->search['fields']['os'] = $lang->bug->os;
$config->bug->search['fields']['browser'] = $lang->bug->browser;
$config->bug->search['fields']['resolution'] = $lang->bug->resolution;
$config->bug->search['fields']['mailto'] = $lang->bug->mailto;
$config->bug->search['fields']['openedDate'] = $lang->bug->openedDate;
$config->bug->search['fields']['assignedDate'] = $lang->bug->assignedDate;
$config->bug->search['fields']['closedDate'] = $lang->bug->closedDate;
$config->bug->search['fields']['lastEditedDate'] = $lang->bug->lastEditedDate;
$config->bug->search['groupItems'] = 3;
$config->bug->search['params']['title'] = array('operator' => 'include', 'control' => 'input', 'values' => '');
$config->bug->search['params']['product'] = array('operator' => '=', 'control' => 'select', 'values' => 'products');
$config->bug->search['params']['assignedTo'] = array('operator' => '=', 'control' => 'select', 'values' => 'users');
$config->bug->search['params']['resolvedBy'] = array('operator' => '=', 'control' => 'select', 'values' => 'users');
$config->bug->search['params']['openedBy'] = array('operator' => '=', 'control' => 'select', 'values' => 'users');
$config->bug->search['params']['closedBy'] = array('operator' => '=', 'control' => 'select', 'values' => 'users');
$config->bug->search['params']['lastEditedBy'] = array('operator' => '=', 'control' => 'select', 'values' => 'users');
$config->bug->search['params']['status'] = array('operator' => '=', 'control' => 'select', 'values' => $lang->bug->statusList);
$config->bug->search['params']['severity'] = array('operator' => '=', 'control' => 'select', 'values' => $lang->bug->severityList);
$config->bug->search['params']['type'] = array('operator' => '=', 'control' => 'select', 'values' => $lang->bug->typeList);
$config->bug->search['params']['os'] = array('operator' => '=', 'control' => 'select', 'values' => $lang->bug->osList);
$config->bug->search['params']['browser'] = array('operator' => '=', 'control' => 'select', 'values' => $lang->bug->browserList);
$config->bug->search['params']['resolution'] = array('operator' => '=', 'control' => 'select', 'values' => $lang->bug->resolutionList);
$config->bug->search['params']['mailto'] = array('operator' => 'include', 'control' => 'select', 'values' => 'users');

View File

@@ -101,14 +101,16 @@ $lang->bug->browserList->opera9 = 'opera9';
$lang->bug->browserList->oprea10 = '其他';
/* Define the types. */
$lang->bug->typeList->codeerror = '代码错误';
$lang->bug->typeList->interface = '界面优化';
$lang->bug->typeList->designchange = '设计变更';
$lang->bug->typeList->Others = '其他';
$lang->bug->typeList[''] = '';
$lang->bug->typeList['codeerror'] = '代码错误';
$lang->bug->typeList['interface'] = '界面优化';
$lang->bug->typeList['designchange'] = '设计变更';
$lang->bug->typeList['Others'] = '其他';
$lang->bug->statusList->active = 'active';
$lang->bug->statusList->resolved = 'resolved';
$lang->bug->statusList->closed = 'closed';
$lang->bug->statusList[''] = '';
$lang->bug->statusList['active'] = 'active';
$lang->bug->statusList['resolved'] = 'resolved';
$lang->bug->statusList['closed'] = 'closed';
$lang->bug->resolutionList[''] = '';
$lang->bug->resolutionList['bydesign'] = 'By Design';

View File

@@ -39,7 +39,7 @@ class bugModel extends model
->specialChars('steps')
->join('mailto', ',')
->get();
$this->dao->insert(TABLE_BUG)->data($bug)->autoCheck()->check('title', 'notempty')->exec();
$this->dao->insert(TABLE_BUG)->data($bug)->autoCheck()->batchCheck('title,type', 'notempty')->exec();
if(!dao::isError())
{
$bugID = $this->dao->lastInsertID();
@@ -106,7 +106,7 @@ class bugModel extends model
$this->dao->update(TABLE_BUG)->data($bug)
->autoCheck()
->check('title', 'notempty')
->batchCheck('title,type', 'notempty')
->checkIF($bug->resolvedBy, 'resolution', 'notempty')
->checkIF($bug->closedBy, 'resolution', 'notempty')
->checkIF($bug->resolution == 'duplicate', 'duplicateBug', 'notempty')

View File

@@ -122,7 +122,31 @@ function loadProjectStories(projectID)
</tr>
-->
<tr>
<th class='rowhead'><?php echo $lang->bug->labTypeAndSeverity;?></th> <td class='a-left'> <?php echo html::select('type', (array)$lang->bug->typeList, '', 'class=select-2');?> <?php echo html::select('severity', (array)$lang->bug->severityList, '', 'class=select-2');?> </td> </tr> <tr> <th class='rowhead'><nobr><?php echo $lang->bug->labSystemBrowserAndHardware;?></nobr></th> <td class='a-left'> <?php echo html::select('os', (array)$lang->bug->osList, '', 'class=select-2');?> <?php echo html::select('browser', (array)$lang->bug->browserList, '', 'class=select-2');?> </td> </tr> <tr> <th class='rowhead'><nobr><?php echo $lang->bug->labAssignedTo;?></nobr></th> <td class='a-left'> <?php echo html::select('assignedTo', $users, '', 'class=select-3');?> </td> </tr> <tr> <th class='rowhead'><nobr><?php echo $lang->bug->labMailto;?></nobr></th> <td class='a-left'> <?php echo html::select('mailto[]', $users, '', 'class=select-3 size=5 multiple=multiple');?> </td> </tr> <tr> <th class='rowhead'><?php echo $lang->bug->title;?></th> <td class='a-left'><input type='text' name='title' class='text-1' /></td> </tr>
<th class='rowhead'><?php echo $lang->bug->labTypeAndSeverity;?></th>
<td class='a-left'>
<?php echo html::select('type', (array)$lang->bug->typeList, 'codeerror', 'class=select-2');?>
<?php echo html::select('severity', (array)$lang->bug->severityList, '', 'class=select-2');?>
</td>
</tr>
<tr>
<th class='rowhead'><nobr><?php echo $lang->bug->labSystemBrowserAndHardware;?></nobr></th>
<td class='a-left'>
<?php echo html::select('os', (array)$lang->bug->osList, '', 'class=select-2');?>
<?php echo html::select('browser', (array)$lang->bug->browserList, '', 'class=select-2');?>
</td>
</tr>
<tr>
<th class='rowhead'><nobr><?php echo $lang->bug->labAssignedTo;?></nobr></th>
<td class='a-left'> <?php echo html::select('assignedTo', $users, '', 'class=select-3');?></td>
</tr>
<tr>
<th class='rowhead'><nobr><?php echo $lang->bug->labMailto;?></nobr></th>
<td class='a-left'> <?php echo html::select('mailto[]', $users, '', 'class=select-3 size=5 multiple=multiple');?> </td>
</tr>
<tr>
<th class='rowhead'><?php echo $lang->bug->title;?></th>
<td class='a-left'><input type='text' name='title' class='text-1' /></td>
</tr>
<tr>
<th class='rowhead'><?php echo $lang->bug->steps;?></th>
<td class='a-left'><textarea name='steps' class='area-1' rows='6'></textarea></td>

View File

@@ -62,7 +62,7 @@
</tr>
<tr>
<td class='rowhead'><?php echo $lang->bug->type;?></td>
<td><?php echo $lang->bug->typeList->{$bug->type};?></td>
<td><?php echo $lang->bug->typeList[$bug->type];?></td>
</tr>
<tr>
<td class='rowhead'><?php echo $lang->bug->os;?></td>

View File

@@ -27,6 +27,8 @@ $lang->search->saveQuery = '保存';
$lang->search->myQuery = '我的查询';
$lang->search->group1 = '第一组';
$lang->search->group2 = '第二组';
$lang->search->buildForm = '搜索表单';
$lang->search->buildQuery= '执行搜索';
$lang->search->operators['='] = '等于';
$lang->search->operators['!='] = '不等于';

View File

@@ -109,12 +109,14 @@ class searchModel extends model
/* 设置默认的参数。*/
public function setDefaultParams($fields, $params)
{
$users = $this->loadModel('user')->getPairs();
$fields = array_keys($fields);
$users = $this->loadModel('user')->getPairs();
$products = array('' => '') + $this->loadModel('product')->getPairs();
$fields = array_keys($fields);
foreach($fields as $fieldName)
{
if(!isset($params[$fieldName])) $params[$fieldName] = array('operator' => '=', 'control' => 'input', 'values' => '');
if($params[$fieldName]['values'] == 'users') $params[$fieldName]['values'] = $users;
if($params[$fieldName]['values'] == 'users') $params[$fieldName]['values'] = $users;
if($params[$fieldName]['values'] == 'products') $params[$fieldName]['values'] = $products;
}
return $params;
}