From feff23ca7fc3f3fb26d2998b555c2f37a70d6dd1 Mon Sep 17 00:00:00 2001 From: caoyanyi Date: Wed, 13 Jul 2022 11:18:03 +0800 Subject: [PATCH] * Adjust codes. --- lib/scm/gitea.class.php | 36 ++++++++++++++++------------ module/gitlab/js/managebranchpriv.js | 2 +- module/gitlab/js/managetagpriv.js | 6 ++--- 3 files changed, 25 insertions(+), 19 deletions(-) diff --git a/lib/scm/gitea.class.php b/lib/scm/gitea.class.php index be541e07c3..5bb922e2b5 100644 --- a/lib/scm/gitea.class.php +++ b/lib/scm/gitea.class.php @@ -527,7 +527,7 @@ class gitea if(!empty($version) and $count == 1) { $api .= '/' . $version; - $commit = $this->fetch($api); + $commit = $this->fetch($api, array('limit' => 1)); if(isset($commit->sha)) { $log = new stdclass; @@ -543,10 +543,8 @@ class gitea } } - $params = array(); - $params['ref_name'] = $branch; - $params['per_page'] = $count; - $params['all'] = 0; + $params['sha'] = $branch; + $params['page'] = $count; if($version and $version != 'HEAD') { @@ -605,8 +603,11 @@ class gitea $time = $dao->select('time')->from(TABLE_REPOHISTORY)->where('revision')->eq($sha)->fetch('time'); if($time) return date('c', strtotime($time)); - $result = $this->fetch("commits/$sha"); - return (isset($result->committed_date)) ? $result->committed_date : false; + $params = array(); + $params['sha'] = $sha; + $params['limit'] = 1; + $result = $this->fetch("commits", $params); + return (isset($resulti[0]->created)) ? date('Y-m-d H:i:s', strtotime($result->created)) : false; } /** @@ -622,14 +623,14 @@ class gitea public function getCommitsByPath($path, $fromRevision = '', $toRevision = '', $perPage = 0) { $path = ltrim($path, DIRECTORY_SEPARATOR); - $api = "commits"; + $api = "commits"; $param = new stdclass(); $param->path = urldecode($path); $param->limit = 1; $param->sha = ($toRevision != 'HEAD' and $toRevision) ? $toRevision : $this->branch; - if($perPage) $param->per_page = $perPage; + if($perPage) $param->page = $perPage; return $this->fetch($api, $param); } @@ -647,18 +648,23 @@ class gitea $results = $this->fetch($api, array('ref' => $revision)); if(empty($results)) return array(); + $diffApi = "git/commits/$revision.patch"; + $diffs = commonModel::http($diffApi); + if(!empty(commonModel::$requestErrors) or empty($diffs)) return array(); + $files = array(); foreach($results as $row) { $file = new stdclass(); $file->revision = $revision; $file->action = 'A'; - $file->type = $row->type; - $file->path = '/' . trim($row->path); - $files[] = $file; + $file->type = $row->type; + $file->path = '/' . $row->path; + + $files[$file->path] = $file; } - return $files; + return array_values($files); } /** @@ -690,8 +696,8 @@ class gitea public function fetch($api, $params = array(), $needToLoop = false) { $params = (array) $params; - $params['token'] = $this->token; - $params['per_page'] = isset($params['per_page']) ? $params['per_page'] : 100; + $params['token'] = $this->token; + $params['limit'] = isset($params['limit']) ? $params['limit'] : 100; $api = ltrim($api, '/'); $api = $this->root . $api . '?' . http_build_query($params); diff --git a/module/gitlab/js/managebranchpriv.js b/module/gitlab/js/managebranchpriv.js index 9ce313c324..5a7931c5e8 100644 --- a/module/gitlab/js/managebranchpriv.js +++ b/module/gitlab/js/managebranchpriv.js @@ -50,7 +50,7 @@ function addItem(obj) { if(this === $branches[0]) return; var $select = $(this); - var picker = $select.data('zui.picker'); + var picker = $select.data('zui.picker'); if(!picker) return; var selectItem = picker.getListItem(picker.getValue()); if(selectItem) disabledItems.push($.extend({}, selectItem, {disabled: true})); diff --git a/module/gitlab/js/managetagpriv.js b/module/gitlab/js/managetagpriv.js index 8593340bad..c431f79906 100644 --- a/module/gitlab/js/managetagpriv.js +++ b/module/gitlab/js/managetagpriv.js @@ -40,8 +40,8 @@ function savePriv() */ function addItem(obj) { - var item = $('#addItem').html().replace(/%i%/g, itemIndex); - var $tr = $('' + item + '').insertAfter($(obj).closest('tr')); + var item = $('#addItem').html().replace(/%i%/g, itemIndex); + var $tr = $('' + item + '').insertAfter($(obj).closest('tr')); var $tags = $tr.find('select').addClass('user-picker').trigger('list:updated').picker({type: 'user'}); itemIndex++; @@ -50,7 +50,7 @@ function addItem(obj) { if(this === $tags[0]) return; var $select = $(this); - var picker = $select.data('zui.picker'); + var picker = $select.data('zui.picker'); if(!picker) return; var selectItem = picker.getListItem(picker.getValue()); if(selectItem) disabledItems.push($.extend({}, selectItem, {disabled: true}));