From ffb6b0a0c34bb4a606bec8330c9951d66f361990 Mon Sep 17 00:00:00 2001 From: guofeilong Date: Wed, 8 Feb 2023 14:57:43 +0800 Subject: [PATCH 1/4] * Code for genDateUsed --- module/admin/control.php | 1 + module/admin/model.php | 20 ++++++++++++++++++++ module/admin/view/index.html.php | 10 +++++++++- 3 files changed, 30 insertions(+), 1 deletion(-) diff --git a/module/admin/control.php b/module/admin/control.php index c49cd97b5e..c24f70ed60 100755 --- a/module/admin/control.php +++ b/module/admin/control.php @@ -42,6 +42,7 @@ class admin extends control $this->view->position[] = $this->lang->admin->index; $this->view->plugins = $this->admin->getExtensionsByAPI('plugin', $langNotCN ? 5 : 6, $hasInternet); $this->view->patches = $this->admin->getExtensionsByAPI('patch', 3, $hasInternet); + $this->view->dateUsed = $this->admin->genDateUsed(); $this->view->hasInternet = $hasInternet; $this->view->publicClass = ($hasInternet and !$langNotCN) ? $this->admin->getPublicClassByAPI(3) : array(); $this->view->langNotCN = $langNotCN; diff --git a/module/admin/model.php b/module/admin/model.php index 473552b348..ebae255e82 100755 --- a/module/admin/model.php +++ b/module/admin/model.php @@ -591,4 +591,24 @@ class adminModel extends model return (bool)$connected; } + + /** + * get date used. + * + * @access public + * @return $interval + */ + public function genDateUsed() + { + $firstUseDate = $this->dao->select('date')->from(TABLE_ACTION) + ->where('date')->gt('0000-00-00') + ->andWhere('actor')->eq($this->app->user->account) + ->orderBy('date_asc') + ->fetch('date'); + $firstUseDate = date_create($firstUseDate); + $dateNow = date("Y-m-d H:i", time()); + $dateNow = date_create($dateNow); + $interval = date_diff($dateNow, $firstUseDate); + return $interval; + } } diff --git a/module/admin/view/index.html.php b/module/admin/view/index.html.php index 7fae6c12d4..3b27c0251b 100755 --- a/module/admin/view/index.html.php +++ b/module/admin/view/index.html.php @@ -90,7 +90,15 @@
admin->zentaoInfo?>
-
您已使用禅道5year?>9admin->mon?>19admin->day?>
+
您已使用禅道 + view->dateUsed->format('%y') != 0) :?> + view->dateUsed->format('%y')?>year?> + + view->dateUsed->format('%m') != 0) :?> + view->dateUsed->format('%m')?>admin->mon?> + + view->dateUsed->format('%d') + 1?>admin->day?> +
From 43866fe1c93913591bf1ba2b09b5aa263d975df5 Mon Sep 17 00:00:00 2001 From: caoyanyi Date: Wed, 8 Feb 2023 15:29:53 +0800 Subject: [PATCH 2/4] * Adjust code. --- module/admin/control.php | 9 ++++++++- module/admin/lang/de.php | 13 +++++++------ module/admin/lang/en.php | 13 +++++++------ module/admin/lang/fr.php | 13 +++++++------ module/admin/lang/zh-cn.php | 13 +++++++------ module/admin/model.php | 17 +++++++++-------- module/admin/view/index.html.php | 13 +++++++------ 7 files changed, 52 insertions(+), 39 deletions(-) diff --git a/module/admin/control.php b/module/admin/control.php index c24f70ed60..a861724435 100755 --- a/module/admin/control.php +++ b/module/admin/control.php @@ -37,12 +37,19 @@ class admin extends control $hasInternet = $this->admin->checkInternet(); $clientLang = $this->app->getClientLang(); $langNotCN = common::checkNotCN(); + $usedTime = $this->admin->genDateUsed(); + + $dateUsed = new stdclass(); + $dateUsed->year = $usedTime->format('%y'); + $dateUsed->month = $usedTime->format('%m'); + $dateUsed->day = $usedTime->format('%d'); + $this->view->title = $this->lang->admin->common; $this->view->position[] = $this->lang->admin->index; $this->view->plugins = $this->admin->getExtensionsByAPI('plugin', $langNotCN ? 5 : 6, $hasInternet); $this->view->patches = $this->admin->getExtensionsByAPI('patch', 3, $hasInternet); - $this->view->dateUsed = $this->admin->genDateUsed(); + $this->view->dateUsed = $dateUsed; $this->view->hasInternet = $hasInternet; $this->view->publicClass = ($hasInternet and !$langNotCN) ? $this->admin->getPublicClassByAPI(3) : array(); $this->view->langNotCN = $langNotCN; diff --git a/module/admin/lang/de.php b/module/admin/lang/de.php index 67e77b6ae4..7d4d570f4a 100755 --- a/module/admin/lang/de.php +++ b/module/admin/lang/de.php @@ -25,6 +25,13 @@ $lang->admin->resetPWDSetting = 'Reset password Setting'; $lang->admin->tableEngine = 'Table Engine'; $lang->admin->setModuleIndex = 'Set Module'; +$lang->admin->mon = 'month'; +$lang->admin->day = 'day'; +$lang->admin->updateDynamics = 'updateDynamics'; +$lang->admin->updatePatch = 'updatePatch'; +$lang->admin->upgradeRecommend = 'upgradeRecommend'; +$lang->admin->zentaoUsed = ''; + $lang->admin->api = 'API'; $lang->admin->log = 'Log'; $lang->admin->setting = 'Einstellungen'; @@ -170,10 +177,4 @@ $lang->admin->menuSetting['dev']['desc'] = 'Support for secondary developm $lang->admin->menuSetting['convert']['name'] = 'Data Import'; $lang->admin->menuSetting['convert']['desc'] = 'Data import from third-party systems.'; -$lang->admin->mon = 'month'; -$lang->admin->day = 'day'; -$lang->admin->updateDynamics = 'updateDynamics'; -$lang->admin->updatePatch = 'updatePatch'; -$lang->admin->upgradeRecommend = 'upgradeRecommend'; - include dirname(__FILE__) . '/menu.php'; diff --git a/module/admin/lang/en.php b/module/admin/lang/en.php index 2314b2dd83..51a566be61 100755 --- a/module/admin/lang/en.php +++ b/module/admin/lang/en.php @@ -25,6 +25,13 @@ $lang->admin->resetPWDSetting = 'Reset password Setting'; $lang->admin->tableEngine = 'Table Engine'; $lang->admin->setModuleIndex = 'Set Module'; +$lang->admin->mon = 'month'; +$lang->admin->day = 'day'; +$lang->admin->updateDynamics = 'updateDynamics'; +$lang->admin->updatePatch = 'updatePatch'; +$lang->admin->upgradeRecommend = 'upgradeRecommend'; +$lang->admin->zentaoUsed = ''; + $lang->admin->api = 'API'; $lang->admin->log = 'Log'; $lang->admin->setting = 'Setting'; @@ -170,10 +177,4 @@ $lang->admin->menuSetting['dev']['desc'] = 'Support for secondary developm $lang->admin->menuSetting['convert']['name'] = 'Data Import'; $lang->admin->menuSetting['convert']['desc'] = 'Data import from third-party systems.'; -$lang->admin->mon = 'month'; -$lang->admin->day = 'day'; -$lang->admin->updateDynamics = 'updateDynamics'; -$lang->admin->updatePatch = 'updatePatch'; -$lang->admin->upgradeRecommend = 'upgradeRecommend'; - include dirname(__FILE__) . '/menu.php'; diff --git a/module/admin/lang/fr.php b/module/admin/lang/fr.php index 2bda8e62e3..2760ba8873 100755 --- a/module/admin/lang/fr.php +++ b/module/admin/lang/fr.php @@ -25,6 +25,13 @@ $lang->admin->resetPWDSetting = 'Reset password Setting'; $lang->admin->tableEngine = 'Table Engine'; $lang->admin->setModuleIndex = 'Set Module'; +$lang->admin->mon = 'month'; +$lang->admin->day = 'day'; +$lang->admin->updateDynamics = 'updateDynamics'; +$lang->admin->updatePatch = 'updatePatch'; +$lang->admin->upgradeRecommend = 'upgradeRecommend'; +$lang->admin->zentaoUsed = ''; + $lang->admin->api = 'API'; $lang->admin->log = 'Log'; $lang->admin->setting = 'Paramétrage'; @@ -170,10 +177,4 @@ $lang->admin->menuSetting['dev']['desc'] = 'Support for secondary developm $lang->admin->menuSetting['convert']['name'] = 'Data Import'; $lang->admin->menuSetting['convert']['desc'] = 'Data import from third-party systems.'; -$lang->admin->mon = 'month'; -$lang->admin->day = 'day'; -$lang->admin->updateDynamics = 'updateDynamics'; -$lang->admin->updatePatch = 'updatePatch'; -$lang->admin->upgradeRecommend = 'upgradeRecommend'; - include dirname(__FILE__) . '/menu.php'; diff --git a/module/admin/lang/zh-cn.php b/module/admin/lang/zh-cn.php index 64939cc0db..ff3b87a8a8 100755 --- a/module/admin/lang/zh-cn.php +++ b/module/admin/lang/zh-cn.php @@ -25,6 +25,13 @@ $lang->admin->resetPWDSetting = '重置密码设置'; $lang->admin->tableEngine = '表引擎'; $lang->admin->setModuleIndex = '系统功能配置'; +$lang->admin->mon = '月'; +$lang->admin->day = '天'; +$lang->admin->updateDynamics = '更新动态'; +$lang->admin->updatePatch = '补丁更新'; +$lang->admin->upgradeRecommend = '推荐升级'; +$lang->admin->zentaoUsed = '您已使用禅道'; + $lang->admin->api = '接口'; $lang->admin->log = '日志'; $lang->admin->setting = '设置'; @@ -170,10 +177,4 @@ $lang->admin->menuSetting['dev']['desc'] = '支持对系统进行二次开 $lang->admin->menuSetting['convert']['name'] = '数据导入'; $lang->admin->menuSetting['convert']['desc'] = '第三方系统的数据导入。'; -$lang->admin->mon = '月'; -$lang->admin->day = '天'; -$lang->admin->updateDynamics = '更新动态'; -$lang->admin->updatePatch = '补丁更新'; -$lang->admin->upgradeRecommend = '推荐升级'; - include dirname(__FILE__) . '/menu.php'; diff --git a/module/admin/model.php b/module/admin/model.php index d83080b9c0..f00bc06b7f 100755 --- a/module/admin/model.php +++ b/module/admin/model.php @@ -603,14 +603,15 @@ class adminModel extends model public function genDateUsed() { $firstUseDate = $this->dao->select('date')->from(TABLE_ACTION) - ->where('date')->gt('0000-00-00') + ->where('date')->gt('0000-00-00') ->andWhere('actor')->eq($this->app->user->account) - ->orderBy('date_asc') - ->fetch('date'); - $firstUseDate = date_create($firstUseDate); - $dateNow = date("Y-m-d H:i", time()); - $dateNow = date_create($dateNow); - $interval = date_diff($dateNow, $firstUseDate); - return $interval; + ->orderBy('date_asc') + ->fetch('date'); + + $firstUseDate = date_create($firstUseDate); + $dateNow = date("Y-m-d H:i"); + $dateNow = date_create($dateNow); + $interval = date_diff($dateNow, $firstUseDate); + return $interval; } } diff --git a/module/admin/view/index.html.php b/module/admin/view/index.html.php index fae7e11f3e..9f32729dc1 100755 --- a/module/admin/view/index.html.php +++ b/module/admin/view/index.html.php @@ -90,14 +90,15 @@
admin->zentaoInfo?>
-
您已使用禅道 - view->dateUsed->format('%y') != 0) :?> - view->dateUsed->format('%y')?>year?> +
+ admin->zentaoUsed;?> + year):?> + year;?>year;?> - view->dateUsed->format('%m') != 0) :?> - view->dateUsed->format('%m')?>admin->mon?> + month):?> + month;?>admin->mon;?> - view->dateUsed->format('%d') + 1?>admin->day?> + day;?>admin->day;?>
From 2e023d5dc1463241c0e515b287059318af9886cd Mon Sep 17 00:00:00 2001 From: caoyanyi Date: Wed, 8 Feb 2023 15:30:36 +0800 Subject: [PATCH 3/4] * Adjust code. --- module/admin/control.php | 1 - 1 file changed, 1 deletion(-) diff --git a/module/admin/control.php b/module/admin/control.php index a861724435..c3dbc59af5 100755 --- a/module/admin/control.php +++ b/module/admin/control.php @@ -44,7 +44,6 @@ class admin extends control $dateUsed->month = $usedTime->format('%m'); $dateUsed->day = $usedTime->format('%d'); - $this->view->title = $this->lang->admin->common; $this->view->position[] = $this->lang->admin->index; $this->view->plugins = $this->admin->getExtensionsByAPI('plugin', $langNotCN ? 5 : 6, $hasInternet); From 88ad600143617c1a169a0e759a115d71dad4a9db Mon Sep 17 00:00:00 2001 From: caoyanyi Date: Wed, 8 Feb 2023 15:53:04 +0800 Subject: [PATCH 4/4] * Adjust code. --- framework/helper.class.php | 37 +++++++++++++++++++++++++++++++++++++ module/admin/control.php | 7 +------ module/admin/model.php | 10 +++------- 3 files changed, 41 insertions(+), 13 deletions(-) diff --git a/framework/helper.class.php b/framework/helper.class.php index 38b42bf5b6..b368adf933 100644 --- a/framework/helper.class.php +++ b/framework/helper.class.php @@ -305,6 +305,43 @@ class helper extends baseHelper { throw EndResponseException::create($content); } + + /** + * Get date interval. + * + * @param string|int $begin + * @param string|int $end + * @param string $format %Y-%m-%d %H:%i:%s + * @static + * @access public + * @return object|string + */ + public static function getDateInterval($begin, $end = '', $format = '') + { + if(empty($end)) $end = time(); + if(is_int($begin)) $begin = date('Y-m-d H:i:s', $begin); + if(is_int($end)) $end = date('Y-m-d H:i:s', $end); + + $begin = date_create($begin); + $end = date_create($end); + $interval = date_diff($begin, $end); + + if($format) + { + $dateInterval = $interval->format($format); + } + else + { + $dateInterval = new stdClass(); + $dateInterval->year = $interval->format('%Y'); + $dateInterval->month = $interval->format('%m'); + $dateInterval->day = $interval->format('%d'); + $dateInterval->hour = $interval->format('%H'); + $dateInterval->minute = $interval->format('%i'); + $dateInterval->secound = $interval->format('%s'); + } + return $dateInterval; + } } /** diff --git a/module/admin/control.php b/module/admin/control.php index c3dbc59af5..df9b8efada 100755 --- a/module/admin/control.php +++ b/module/admin/control.php @@ -37,12 +37,7 @@ class admin extends control $hasInternet = $this->admin->checkInternet(); $clientLang = $this->app->getClientLang(); $langNotCN = common::checkNotCN(); - $usedTime = $this->admin->genDateUsed(); - - $dateUsed = new stdclass(); - $dateUsed->year = $usedTime->format('%y'); - $dateUsed->month = $usedTime->format('%m'); - $dateUsed->day = $usedTime->format('%d'); + $dateUsed = $this->admin->genDateUsed(); $this->view->title = $this->lang->admin->common; $this->view->position[] = $this->lang->admin->index; diff --git a/module/admin/model.php b/module/admin/model.php index f00bc06b7f..a24aa192b3 100755 --- a/module/admin/model.php +++ b/module/admin/model.php @@ -595,10 +595,10 @@ class adminModel extends model } /** - * get date used. + * Get date used object. * * @access public - * @return $interval + * @return object */ public function genDateUsed() { @@ -608,10 +608,6 @@ class adminModel extends model ->orderBy('date_asc') ->fetch('date'); - $firstUseDate = date_create($firstUseDate); - $dateNow = date("Y-m-d H:i"); - $dateNow = date_create($dateNow); - $interval = date_diff($dateNow, $firstUseDate); - return $interval; + return helper::getDateInterval($firstUseDate); } }