diff --git a/module/action/model.php b/module/action/model.php index 6df3fd44cd..ba76cf991c 100644 --- a/module/action/model.php +++ b/module/action/model.php @@ -209,7 +209,7 @@ class actionModel extends model * @param string $objectType * @param int $count * @access public - * @return void + * @return array */ public function getDynamic($account = 'all', $period = 'all', $orderBy = 'id_desc', $pager = null) { diff --git a/module/common/lang/en.php b/module/common/lang/en.php index c48a37f9ca..66eea13781 100644 --- a/module/common/lang/en.php +++ b/module/common/lang/en.php @@ -193,6 +193,7 @@ $lang->user->menu->todo = array('link' => 'Todo|user|todo|account=%s', 'subM $lang->user->menu->task = 'Task|user|task|account=%s'; $lang->user->menu->bug = 'Bug列表|user|bug|account=%s'; $lang->user->menu->project = 'Project|user|project|account=%s'; +$lang->user->menu->dynamic = 'Dynamic|user|dynamic|account=%s'; $lang->user->menu->profile = array('link' => 'Profile|user|profile|account=%s', 'alias' => 'edit'); $lang->user->menu->browse = array('link' => '用户管理|company|browse|', 'float' => 'right'); diff --git a/module/common/lang/zh-cn.php b/module/common/lang/zh-cn.php index 7ca8991926..f016e896ca 100644 --- a/module/common/lang/zh-cn.php +++ b/module/common/lang/zh-cn.php @@ -194,6 +194,7 @@ $lang->user->menu->todo = array('link' => 'TODO列表|user|todo|account=%s', $lang->user->menu->task = '任务列表|user|task|account=%s'; $lang->user->menu->bug = 'Bug列表|user|bug|account=%s'; $lang->user->menu->project = '项目列表|user|project|account=%s'; +$lang->user->menu->dynamic = '用户动态|user|dynamic|type=today&account=%s'; $lang->user->menu->profile = array('link' => '用户信息|user|profile|account=%s', 'alias' => 'edit'); $lang->user->menu->browse = array('link' => '用户管理|company|browse|', 'float' => 'right'); diff --git a/module/user/control.php b/module/user/control.php index f70c53d525..e9859a08d0 100644 --- a/module/user/control.php +++ b/module/user/control.php @@ -428,4 +428,53 @@ class user extends control $vars = !empty($referer) ? "referer=$referer" : ''; $this->locate($this->createLink('user', 'login', $vars)); } + + /** + * My dynamic. + * + * @param string $type + * @param string $orderBy + * @param int $recTotal + * @param int $recPerPage + * @param int $pageID + * @access public + * @return void + */ + public function dynamic($period = 'today', $account = '', $orderBy = 'id_desc', $recTotal = 0, $recPerPage = 20, $pageID = 1) + { + /* set menus. */ + $this->lang->set('menugroup.user', 'company'); + $this->user->setMenu($this->user->getPairs('noempty|noclosed'), $account); + + /* Save session. */ + $uri = $this->app->getURI(true); + $this->session->set('productList', $uri); + $this->session->set('productPlanList', $uri); + $this->session->set('releaseList', $uri); + $this->session->set('storyList', $uri); + $this->session->set('projectList', $uri); + $this->session->set('taskList', $uri); + $this->session->set('buildList', $uri); + $this->session->set('bugList', $uri); + $this->session->set('caseList', $uri); + $this->session->set('testtaskList', $uri); + + /* Set the pager. */ + $this->app->loadClass('pager', $static = true); + $pager = pager::init($recTotal, $recPerPage, $pageID); + $this->view->orderBy = $orderBy; + $this->view->pager = $pager; + + $this->view->header->title = $this->lang->company->common . $this->lang->colon . $this->lang->company->dynamic; + $this->view->position[] = $this->lang->company->dynamic; + + /* Assign. */ + $this->view->period = $period; + $this->view->users = $this->loadModel('user')->getPairs('nodeleted|noclosed'); + $this->view->account = $account; + $this->view->actions = $this->loadModel('action')->getDynamic($account, $period, $orderBy, $pager); + $this->display(); + } + + } diff --git a/module/user/view/dynamic.html.php b/module/user/view/dynamic.html.php new file mode 100644 index 0000000000..cf941c84ed --- /dev/null +++ b/module/user/view/dynamic.html.php @@ -0,0 +1,59 @@ +dynamic view file of dashboard module of ZenTaoPMS. + * + * @copyright Copyright 2009-2010 QingDao Nature Easy Soft Network Technology Co,LTD (www.cnezsoft.com) + * @license LGPL (http://www.gnu.org/licenses/lgpl.html) + * @author Chunsheng Wang + * @package dashboard + * @version $Id: action->dynamic.html.php 1477 2011-03-01 15:25:50Z wwccss $ + * @link http://www.zentao.net + */ +?> + + +
+ ' . html::a(inlink('dynamic', "type=today&account=$account"), $lang->action->dynamic->today) . ''; + echo '' . html::a(inlink('dynamic', "type=yesterday&account=$account"), $lang->action->dynamic->yesterday) . ''; + echo '' . html::a(inlink('dynamic', "type=twodaysago&account=$account"), $lang->action->dynamic->twoDaysAgo) . ''; + echo '' . html::a(inlink('dynamic', "type=thisweek&account=$account"), $lang->action->dynamic->thisWeek) . ''; + echo '' . html::a(inlink('dynamic', "type=lastweek&account=$account"), $lang->action->dynamic->lastWeek) . ''; + echo '' . html::a(inlink('dynamic', "type=thismonth&account=$account"), $lang->action->dynamic->thisMonth) . ''; + echo '' . html::a(inlink('dynamic', "type=lastmonth&account=$account"), $lang->action->dynamic->lastMonth) . ''; + echo '' . html::a(inlink('dynamic', "type=all&account=$account"), $lang->action->dynamic->all) . ''; + ?> +
+ + + recTotal}&recPerPage={$pager->recPerPage}"; ?> + + + + + + + + + + + + + objectType == 'case' ? 'testcase' : $action->objectType;?> + + + + + + + + + + + +
action->date);?> action->actor);?>action->action);?> action->objectType);?> idAB);?>action->objectName;?>
date;?>user->realname;?>actionLabel;?>action->objectTypes[$action->objectType];?>objectID;?>createLink($module, 'view', "id=$action->objectID"), $action->objectName);?>
show();?>
+ + diff --git a/www/js/my.js b/www/js/my.js index a5b4691932..62b0351209 100644 --- a/www/js/my.js +++ b/www/js/my.js @@ -272,10 +272,24 @@ function saveProject() if($('#projectID')) $.cookie('lastProject', $('#projectID').val(), {expires:config.cookieLife, path:config.webRoot}); } -/* 选择用户。*/ +/** + * Switch account + * + * @param string $account + * @param string $method + * @access public + * @return void + */ function switchAccount(account, method) { - link = createLink('user', method, 'account=' + account); + if(method == 'dynamic') + { + link = createLink('user', method, 'period=' + period + '&account=' + account); + } + else + { + link = createLink('user', method, 'account=' + account); + } location.href=link; }