From 8a61570fc55e6bcfd6640e7bd7a844c3f6f0a0a2 Mon Sep 17 00:00:00 2001 From: caoyanyi Date: Sat, 16 Dec 2023 16:58:26 +0800 Subject: [PATCH] * Merge gitea, gogs, gitlab methods to pipeline model. --- module/gitea/model.php | 17 ----------------- module/gogs/model.php | 17 ----------------- module/mr/control.php | 7 +++---- module/mr/model.php | 3 ++- 4 files changed, 5 insertions(+), 39 deletions(-) diff --git a/module/gitea/model.php b/module/gitea/model.php index 91e8ed9963..18934de276 100644 --- a/module/gitea/model.php +++ b/module/gitea/model.php @@ -260,23 +260,6 @@ class giteaModel extends model return true; } - /** - * Get Gitea id list by user account. - * - * @param string $account - * @access public - * @return array - */ - public function getListByAccount($account = '') - { - if(!$account) $account = $this->app->user->account; - - return $this->dao->select('providerID,openID')->from(TABLE_OAUTH) - ->where('providerType')->eq('gitea') - ->andWhere('account')->eq($account) - ->fetchPairs('providerID'); - } - /** * Get matched gitea users. * diff --git a/module/gogs/model.php b/module/gogs/model.php index d538f9cff0..d685eae35b 100644 --- a/module/gogs/model.php +++ b/module/gogs/model.php @@ -219,23 +219,6 @@ class gogsModel extends model return true; } - /** - * Get Gogs id list by user account. - * - * @param string $account - * @access public - * @return array - */ - public function getListByAccount($account = '') - { - if(!$account) $account = $this->app->user->account; - - return $this->dao->select('providerID,openID')->from(TABLE_OAUTH) - ->where('providerType')->eq('gogs') - ->andWhere('account')->eq($account) - ->fetchPairs('providerID'); - } - /** * Get matched gogs users. * diff --git a/module/mr/control.php b/module/mr/control.php index 3e35c0254d..69318106c6 100644 --- a/module/mr/control.php +++ b/module/mr/control.php @@ -103,7 +103,7 @@ class mr extends control $this->view->objectID = $objectID; $this->view->repo = $repo; $this->view->orderBy = $orderBy; - $this->view->openIDList = $this->app->user->admin ? array() : $this->loadModel(strtolower($repo->SCM))->getListByAccount($this->app->user->account); + $this->view->openIDList = $this->app->user->admin ? array() : $this->loadModel('pipeline')->getProviderPairsByAccount($repo->SCM); $this->view->users = $this->loadModel('user')->getPairs('noletter'); $this->display(); } @@ -153,9 +153,8 @@ class mr extends control $openIDList = array(); if(!$this->app->user->admin) { - $openIDList += $this->loadModel('gitlab')->getListByAccount($this->app->user->account); - $openIDList += $this->loadModel('gitea')->getListByAccount($this->app->user->account); - $openIDList += $this->loadModel('gogs')->getListByAccount($this->app->user->account); + $this->loadModel('pipeline'); + foreach(array('gitlab', 'gitea', 'gogs') as $service) $openIDList += $this->pipeline->getProviderPairsByAccount($service); } $this->view->title = $this->lang->mr->common . $this->lang->colon . $this->lang->mr->browse; diff --git a/module/mr/model.php b/module/mr/model.php index 6057104e05..4eccef9748 100644 --- a/module/mr/model.php +++ b/module/mr/model.php @@ -108,7 +108,7 @@ class mrModel extends model */ public function getGitlabProjects(int $hostID = 0, array $projectIdList = array()): array { - $gitlabUsers = $this->loadModel('gitlab')->getListByAccount(); + $gitlabUsers = $this->loadModel('pipeline')->getProviderPairsByAccount('gitlab'); if(!$this->app->user->admin && !isset($gitlabUsers[$hostID])) return array(); $minProject = $maxProject = 0; @@ -125,6 +125,7 @@ class mrModel extends model /* If not an administrator, need to obtain group member information. */ $groupIDList = array(0 => 0); + $this->loadModel('gitlab'); if(!$this->app->user->admin) { $groups = $this->gitlab->apiGetGroups($hostID, 'name_asc', 'reporter');