diff --git a/module/action/control.php b/module/action/control.php index 564c1e72bc..c71f561f77 100644 --- a/module/action/control.php +++ b/module/action/control.php @@ -63,4 +63,17 @@ class action extends control $this->action->undelete($actionID); die(js::locate(inlink('trash'), 'parent')); } + + /** + * Hide object. + * + * @param int $actionID + * @access public + * @return void + */ + public function hide($actionID) + { + $this->action->hide($actionID); + die(js::reload('parent')); + } } diff --git a/module/action/lang/en.php b/module/action/lang/en.php index 46b56b69f0..d23603b39a 100644 --- a/module/action/lang/en.php +++ b/module/action/lang/en.php @@ -12,6 +12,7 @@ $lang->action->common = 'Logs'; $lang->action->trash = 'Trash'; $lang->action->undelete = 'Restore'; +$lang->action->hide = 'Hide'; $lang->action->product = 'Product'; $lang->action->project = 'Project'; @@ -63,6 +64,7 @@ $lang->action->desc->deletedfile = '$date, deleted file by $actoraction->desc->editfile = '$date, edit file by $actor, the file is $extra.'; $lang->action->desc->erased = '$date, erased by $actor.'; $lang->action->desc->undeleted = '$date, restored by $actor.'; +$lang->action->desc->hidden = '$date, hidden by $actor.'; $lang->action->desc->commented = '$date, commented by $actor.'; $lang->action->desc->activated = '$date, activated by $actor.'; $lang->action->desc->moved = '$date, moved by $actor, previouse is "$extra".'; @@ -89,6 +91,7 @@ $lang->action->label->deletedfile = 'deleted file'; $lang->action->label->editfile = 'edit file name'; $lang->action->label->erased = 'deleted'; $lang->action->label->undeleted = 'restore'; +$lang->action->label->hidden = 'hidden'; $lang->action->label->commented = 'commented'; $lang->action->label->activated = 'activated'; $lang->action->label->resolved = 'resolved'; @@ -158,6 +161,7 @@ $lang->action->search->label['deletedfile'] = $lang->action->label->dele $lang->action->search->label['editfile'] = $lang->action->label->editfile; $lang->action->search->label['erased'] = $lang->action->label->erased; $lang->action->search->label['undeleted'] = $lang->action->label->undeleted; +$lang->action->search->label['hidden'] = $lang->action->label->hidden; $lang->action->search->label['commented'] = $lang->action->label->commented; $lang->action->search->label['activated'] = $lang->action->label->activated; $lang->action->search->label['resolved'] = $lang->action->label->resolved; diff --git a/module/action/lang/zh-cn.php b/module/action/lang/zh-cn.php index f0146de6d1..1b56883141 100644 --- a/module/action/lang/zh-cn.php +++ b/module/action/lang/zh-cn.php @@ -12,6 +12,7 @@ $lang->action->common = '系统日志'; $lang->action->trash = '回收站'; $lang->action->undelete = '还原'; +$lang->action->hide = '隐藏'; $lang->action->product = '产品'; $lang->action->project = '项目'; @@ -63,6 +64,7 @@ $lang->action->desc->deletedfile = '$date, 由 $actor 删除 $lang->action->desc->editfile = '$date, 由 $actor 编辑了附件:$extra。' . "\n"; $lang->action->desc->erased = '$date, 由 $actor 删除。' . "\n"; $lang->action->desc->undeleted = '$date, 由 $actor 还原。' . "\n"; +$lang->action->desc->hidden = '$date, 由 $actor 隐藏。' . "\n"; $lang->action->desc->commented = '$date, 由 $actor 添加备注。' . "\n"; $lang->action->desc->activated = '$date, 由 $actor 激活。' . "\n"; $lang->action->desc->moved = '$date, 由 $actor 移动,之前为 "$extra"。' . "\n"; @@ -89,6 +91,7 @@ $lang->action->label->deletedfile = '删除附件'; $lang->action->label->editfile = '编辑附件'; $lang->action->label->erased = '删除了'; $lang->action->label->undeleted = '还原了'; +$lang->action->label->hidden = '隐藏了'; $lang->action->label->commented = '评论了'; $lang->action->label->activated = '激活了'; $lang->action->label->resolved = '解决了'; @@ -158,6 +161,7 @@ $lang->action->search->label['deletedfile'] = $lang->action->label->dele $lang->action->search->label['editfile'] = $lang->action->label->editfile; $lang->action->search->label['erased'] = $lang->action->label->erased; $lang->action->search->label['undeleted'] = $lang->action->label->undeleted; +$lang->action->search->label['hidden'] = $lang->action->label->hidden; $lang->action->search->label['commented'] = $lang->action->label->commented; $lang->action->search->label['activated'] = $lang->action->label->activated; $lang->action->search->label['resolved'] = $lang->action->label->resolved; diff --git a/module/action/model.php b/module/action/model.php index 1d01d91525..09f6807739 100644 --- a/module/action/model.php +++ b/module/action/model.php @@ -15,6 +15,7 @@ class actionModel extends model { const CAN_UNDELETED = 1; // The deleted object can be undeleted or not. const BE_UNDELETED = 0; // The deleted object has been undeleted or not. + const BE_HIDDEN = 2; /** * Create a action. @@ -553,4 +554,19 @@ class actionModel extends model } } } + + /** + * Hide object. + * + * @param int $actionID + * @access public + * @return void + */ + public function hide($actionID) + { + $action = $this->getById($actionID); + if($action->action != 'deleted') return; + $this->dao->update(TABLE_ACTION)->set('extra')->eq(self::BE_HIDDEN)->where('id')->eq($actionID)->exec(); + $this->create($action->objectType, $action->objectID, 'hidden'); + } } diff --git a/module/action/view/trash.html.php b/module/action/view/trash.html.php index c4ce7cc97b..ebef148bc6 100644 --- a/module/action/view/trash.html.php +++ b/module/action/view/trash.html.php @@ -33,7 +33,12 @@ createLink($module, 'view', "id=$action->objectID"), $action->objectName);?> actor];?> date;?> - id", $lang->action->undelete, 'hiddenwin');?> + + id", $lang->action->undelete, 'hiddenwin'); + common::printLink('action', 'hide', "actionid=$action->id", $lang->action->hide, 'hiddenwin'); + ?> +