mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-26 12:27:06 +00:00 
			
		
		
		
	Add goto issue id function (#24479)
for https://github.com/go-gitea/gitea/issues/4109#issuecomment-1527104992 Supports format: `#1234` `Org/Repo#1234` --------- Co-authored-by: techknowlogick <techknowlogick@gitea.io>
This commit is contained in:
		| @@ -4,6 +4,7 @@ import {showTemporaryTooltip, createTippy} from '../modules/tippy.js'; | ||||
| import {hideElem, showElem, toggleElem} from '../utils/dom.js'; | ||||
| import {setFileFolding} from './file-fold.js'; | ||||
| import {getComboMarkdownEditor, initComboMarkdownEditor} from './comp/ComboMarkdownEditor.js'; | ||||
| import {parseIssueHref} from '../utils.js'; | ||||
|  | ||||
| const {appSubUrl, csrfToken} = window.config; | ||||
|  | ||||
| @@ -636,3 +637,31 @@ export function initRepoIssueBranchSelect() { | ||||
|   }; | ||||
|   $('#branch-select > .item').on('click', changeBranchSelect); | ||||
| } | ||||
|  | ||||
| export function initRepoIssueGotoID() { | ||||
|   const issueidre = /^(?:\w+\/\w+#\d+|#\d+|\d+)$/; | ||||
|   const isGlobalIssuesArea = $('.repo.name.item').length > 0; // for global issues area or repository issues area | ||||
|   $('form.list-header-search').on('submit', (e) => { | ||||
|     const qval = e.target.q.value; | ||||
|     const aElm = document.activeElement; | ||||
|     if (!$('#hashtag-button').length || aElm.id === 'search-button' || (aElm.name === 'q' && !qval.includes('#')) || (isGlobalIssuesArea && !qval.includes('/')) || !issueidre.test(qval)) return; | ||||
|     const pathname = window.location.pathname; | ||||
|     let gotoUrl = qval.includes('/') ? `${qval.replace('#', '/issues/')}` : `${pathname}/${qval.replace('#', '')}`; | ||||
|     if (appSubUrl.length) { | ||||
|       gotoUrl = qval.includes('/') ? `/${appSubUrl}/${qval.replace('#', '/issues/')}` : `/${appSubUrl}/${pathname}/${qval.replace('#', '')}`; | ||||
|     } | ||||
|     const {owner, repo, type, index} = parseIssueHref(gotoUrl); | ||||
|     if (owner && repo && type && index) { | ||||
|       e.preventDefault(); | ||||
|       window.location.href = gotoUrl; | ||||
|     } | ||||
|   }); | ||||
|   $('form.list-header-search input[name=q]').on('input', (e) => { | ||||
|     const qval = e.target.value; | ||||
|     if (isGlobalIssuesArea && qval.includes('/') && issueidre.test(qval) || !isGlobalIssuesArea && issueidre.test(qval)) { | ||||
|       showElem($('#hashtag-button')); | ||||
|     } else { | ||||
|       hideElem($('#hashtag-button')); | ||||
|     } | ||||
|   }); | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Tyrone Yeh
					Tyrone Yeh