diff --git a/module/action/lang/en.php b/module/action/lang/en.php
index 605344b547..6188464dc6 100644
--- a/module/action/lang/en.php
+++ b/module/action/lang/en.php
@@ -58,36 +58,38 @@ $lang->action->objectTypes['todo'] = 'Todo';
/* The desc of actions. */
$lang->action->desc = new stdclass();
-$lang->action->desc->common = '$date, $action by $actor.';
-$lang->action->desc->extra = '$date, $action as $extra by $actor.';
-$lang->action->desc->opened = '$date, opened by $actor.';
-$lang->action->desc->created = '$date, created by $actor.';
-$lang->action->desc->changed = '$date, changed by $actor.';
-$lang->action->desc->edited = '$date, edited by $actor.';
-$lang->action->desc->assigned = '$date, $actor assigned task to $extra.' . "\n";
-$lang->action->desc->closed = '$date, closed by $actor.';
-$lang->action->desc->deleted = '$date, deleted by $actor.';
-$lang->action->desc->deletedfile = '$date, deleted file by $actor, the file is $extra.';
-$lang->action->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".';
-$lang->action->desc->confirmed = '$date, confirmed by $actor, version is#$extra.';
-$lang->action->desc->bugconfirmed = '$date, confirmed by $actor.';
-$lang->action->desc->frombug = '$date, from Bug by $actor BugID:$extra.';
-$lang->action->desc->started = '$date, started by $actor.';
-$lang->action->desc->delayed = '$date, delayed by $actor.';
-$lang->action->desc->suspended = '$date, suspended by $actor.';
-$lang->action->desc->recorded = '$date, recorded by $actor.';
-$lang->action->desc->canceled = '$date, canceled by $actor.';
-$lang->action->desc->svncommited = '$date, $actor commited to svn,revision is #$extra.' . "\n";
-$lang->action->desc->finished = '$date, finished by $actor.';
-$lang->action->desc->diff1 = 'changed %s, old is "%s", new is "%s".
';
-$lang->action->desc->diff2 = 'changed %s, the diff is:' . "\n" . "
%s
" . "\n%s
";
-$lang->action->desc->diff3 = "changed file's name %s to %s.";
+$lang->action->desc->common = '$date, $action by $actor.';
+$lang->action->desc->extra = '$date, $action as $extra by $actor.';
+$lang->action->desc->opened = '$date, opened by $actor.';
+$lang->action->desc->created = '$date, created by $actor.';
+$lang->action->desc->changed = '$date, changed by $actor.';
+$lang->action->desc->edited = '$date, edited by $actor.';
+$lang->action->desc->assigned = '$date, $actor assigned task to $extra.' . "\n";
+$lang->action->desc->closed = '$date, closed by $actor.';
+$lang->action->desc->deleted = '$date, deleted by $actor.';
+$lang->action->desc->deletedfile = '$date, deleted file by $actor, the file is $extra.';
+$lang->action->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".';
+$lang->action->desc->confirmed = '$date, confirmed by $actor, version is#$extra.';
+$lang->action->desc->bugconfirmed = '$date, confirmed by $actor.';
+$lang->action->desc->frombug = '$date, from Bug by $actor BugID:$extra.';
+$lang->action->desc->started = '$date, started by $actor.';
+$lang->action->desc->delayed = '$date, delayed by $actor.';
+$lang->action->desc->suspended = '$date, suspended by $actor.';
+$lang->action->desc->recordestimate = '$date, recorded by $actor,consumed $extra hour(s).';
+$lang->action->desc->editestimate = '$date, recorded by $actor,consumed $extra hour(s).';
+$lang->action->desc->deleteestimate = '$date, recorded by $actor,consumed $extra hour(s).';
+$lang->action->desc->canceled = '$date, canceled by $actor.';
+$lang->action->desc->svncommited = '$date, $actor commited to svn,revision is #$extra.' . "\n";
+$lang->action->desc->finished = '$date, finished by $actor.';
+$lang->action->desc->diff1 = 'changed %s, old is "%s", new is "%s".
';
+$lang->action->desc->diff2 = 'changed %s, the diff is:' . "\n" . "%s
" . "\n%s
";
+$lang->action->desc->diff3 = "changed file's name %s to %s.";
/* The action labels. */
$lang->action->label = new stdclass();
diff --git a/module/action/lang/zh-cn.php b/module/action/lang/zh-cn.php
index dbc70ee63b..d368571cde 100644
--- a/module/action/lang/zh-cn.php
+++ b/module/action/lang/zh-cn.php
@@ -58,36 +58,38 @@ $lang->action->objectTypes['todo'] = 'TODO';
/* 用来描述操作历史记录。*/
$lang->action->desc = new stdclass();
-$lang->action->desc->common = '$date, $action by $actor。' . "\n";
-$lang->action->desc->extra = '$date, $action as $extra by $actor。' . "\n";
-$lang->action->desc->opened = '$date, 由 $actor 创建。' . "\n";
-$lang->action->desc->created = '$date, 由 $actor 创建。' . "\n";
-$lang->action->desc->changed = '$date, 由 $actor 变更。' . "\n";
-$lang->action->desc->edited = '$date, 由 $actor 编辑。' . "\n";
-$lang->action->desc->assigned = '$date, 由 $actor 指派给 $extra。' . "\n";
-$lang->action->desc->closed = '$date, 由 $actor 关闭。' . "\n";
-$lang->action->desc->deleted = '$date, 由 $actor 删除。' . "\n";
-$lang->action->desc->deletedfile = '$date, 由 $actor 删除了附件:$extra。' . "\n";
-$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";
-$lang->action->desc->confirmed = '$date, 由 $actor 确认需求变动,最新版本为#$extra。' . "\n";
-$lang->action->desc->bugconfirmed = '$date, 由 $actor 确认Bug。' . "\n";
-$lang->action->desc->frombug = '$date, 由 $actor Bug转化而来,Bug编号为 $extra。';
-$lang->action->desc->started = '$date, 由 $actor 启动。' . "\n";
-$lang->action->desc->delayed = '$date, 由 $actor 延期。' . "\n";
-$lang->action->desc->suspended = '$date, 由 $actor 挂起。' . "\n";
-$lang->action->desc->recorded = '$date, 由 $actor 记录工时。' . "\n";
-$lang->action->desc->canceled = '$date, 由 $actor 取消。' . "\n";
-$lang->action->desc->svncommited = '$date, 由 $actor 提交代码,版本为#$extra。' . "\n";
-$lang->action->desc->finished = '$date, 由 $actor 完成。' . "\n";
-$lang->action->desc->diff1 = '修改了 %s,旧值为 "%s",新值为 "%s"。
' . "\n";
-$lang->action->desc->diff2 = '修改了 %s,区别为:' . "\n" . "%s
" . "\n%s
";
-$lang->action->desc->diff3 = '将文件名 %s 改为 %s 。' . "\n";
+$lang->action->desc->common = '$date, $action by $actor。' . "\n";
+$lang->action->desc->extra = '$date, $action as $extra by $actor。' . "\n";
+$lang->action->desc->opened = '$date, 由 $actor 创建。' . "\n";
+$lang->action->desc->created = '$date, 由 $actor 创建。' . "\n";
+$lang->action->desc->changed = '$date, 由 $actor 变更。' . "\n";
+$lang->action->desc->edited = '$date, 由 $actor 编辑。' . "\n";
+$lang->action->desc->assigned = '$date, 由 $actor 指派给 $extra。' . "\n";
+$lang->action->desc->closed = '$date, 由 $actor 关闭。' . "\n";
+$lang->action->desc->deleted = '$date, 由 $actor 删除。' . "\n";
+$lang->action->desc->deletedfile = '$date, 由 $actor 删除了附件:$extra。' . "\n";
+$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";
+$lang->action->desc->confirmed = '$date, 由 $actor 确认需求变动,最新版本为#$extra。' . "\n";
+$lang->action->desc->bugconfirmed = '$date, 由 $actor 确认Bug。' . "\n";
+$lang->action->desc->frombug = '$date, 由 $actor Bug转化而来,Bug编号为 $extra。';
+$lang->action->desc->started = '$date, 由 $actor 启动。' . "\n";
+$lang->action->desc->delayed = '$date, 由 $actor 延期。' . "\n";
+$lang->action->desc->suspended = '$date, 由 $actor 挂起。' . "\n";
+$lang->action->desc->recordestimate = '$date, 由 $actor 记录工时,消耗 $extra 小时。';
+$lang->action->desc->editestimate = '$date, 由 $actor 编辑工时。';
+$lang->action->desc->deleteestimate = '$date, 由 $actor 删除工时。';
+$lang->action->desc->canceled = '$date, 由 $actor 取消。' . "\n";
+$lang->action->desc->svncommited = '$date, 由 $actor 提交代码,版本为#$extra。' . "\n";
+$lang->action->desc->finished = '$date, 由 $actor 完成。' . "\n";
+$lang->action->desc->diff1 = '修改了 %s,旧值为 "%s",新值为 "%s"。
' . "\n";
+$lang->action->desc->diff2 = '修改了 %s,区别为:' . "\n" . "%s
" . "\n%s
";
+$lang->action->desc->diff3 = '将文件名 %s 改为 %s 。' . "\n";
/* 用来显示动态信息。*/
$lang->action->label = new stdclass();