diff options
author | wxiaoguang <wxiaoguang@gmail.com> | 2021-11-09 17:27:25 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-09 17:27:25 +0800 |
commit | bb71ceeeb24a7d3e768ace8075b7dcc5c13713df (patch) | |
tree | f06b659609893ecafff60a0772b31dbf83d51412 /web_src/js/features/repo-commit.js | |
parent | 3a693bd18c6274b62aa7bcde69e9a0d86e43c534 (diff) | |
download | gitea-bb71ceeeb24a7d3e768ace8075b7dcc5c13713df.tar.gz gitea-bb71ceeeb24a7d3e768ace8075b7dcc5c13713df.zip |
Improve async/await usage, and sort init calls in `index.js` (#17386)
* clean up async/await, and sort init calls in `index.js
* use `const _promise` to indicate that we do not need await an async function
Diffstat (limited to 'web_src/js/features/repo-commit.js')
-rw-r--r-- | web_src/js/features/repo-commit.js | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/web_src/js/features/repo-commit.js b/web_src/js/features/repo-commit.js index 336a37d654..847fed3f1d 100644 --- a/web_src/js/features/repo-commit.js +++ b/web_src/js/features/repo-commit.js @@ -1,6 +1,47 @@ +const {csrfToken} = window.config; + export function initRepoCommitButton() { $('.commit-button').on('click', function (e) { e.preventDefault(); $(this).parent().find('.commit-body').toggle(); }); } + +export function initRepoCommitLastCommitLoader() { + const entryMap = {}; + + const entries = $('table#repo-files-table tr.notready') + .map((_, v) => { + entryMap[$(v).attr('data-entryname')] = $(v); + return $(v).attr('data-entryname'); + }) + .get(); + + if (entries.length === 0) { + return; + } + + const lastCommitLoaderURL = $('table#repo-files-table').data('lastCommitLoaderUrl'); + + if (entries.length > 200) { + $.post(lastCommitLoaderURL, { + _csrf: csrfToken, + }, (data) => { + $('table#repo-files-table').replaceWith(data); + }); + return; + } + + $.post(lastCommitLoaderURL, { + _csrf: csrfToken, + 'f': entries, + }, (data) => { + $(data).find('tr').each((_, row) => { + if (row.className === 'commit-list') { + $('table#repo-files-table .commit-list').replaceWith(row); + return; + } + entryMap[$(row).attr('data-entryname')].replaceWith(row); + }); + }); +} |