mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 10:56:10 +01:00 
			
		
		
		
	Remove jQuery .attr from the code line range selection (#30077)
				
					
				
			- Switched from jQuery `attr` to plain javascript `getAttribute` and `setAttribute` - Tested the code line range selection and it works as before --------- Signed-off-by: Yarden Shoham <git@yardenshoham.com> Co-authored-by: silverwind <me@silverwind.io>
This commit is contained in:
		| @@ -28,40 +28,38 @@ function selectRange($linesEls, $selectionEndEl, $selectionStartEls) { | |||||||
|   $linesEls.closest('tr').removeClass('active'); |   $linesEls.closest('tr').removeClass('active'); | ||||||
|  |  | ||||||
|   // add hashchange to permalink |   // add hashchange to permalink | ||||||
|   const $refInNewIssue = $('a.ref-in-new-issue'); |   const refInNewIssue = document.querySelector('a.ref-in-new-issue'); | ||||||
|   const $copyPermalink = $('a.copy-line-permalink'); |   const copyPermalink = document.querySelector('a.copy-line-permalink'); | ||||||
|   const $viewGitBlame = $('a.view_git_blame'); |   const viewGitBlame = document.querySelector('a.view_git_blame'); | ||||||
|  |  | ||||||
|   const updateIssueHref = function (anchor) { |   const updateIssueHref = function (anchor) { | ||||||
|     if (!$refInNewIssue.length) { |     if (!refInNewIssue) return; | ||||||
|       return; |     const urlIssueNew = refInNewIssue.getAttribute('data-url-issue-new'); | ||||||
|     } |     const urlParamBodyLink = refInNewIssue.getAttribute('data-url-param-body-link'); | ||||||
|     const urlIssueNew = $refInNewIssue.attr('data-url-issue-new'); |  | ||||||
|     const urlParamBodyLink = $refInNewIssue.attr('data-url-param-body-link'); |  | ||||||
|     const issueContent = `${toAbsoluteUrl(urlParamBodyLink)}#${anchor}`; // the default content for issue body |     const issueContent = `${toAbsoluteUrl(urlParamBodyLink)}#${anchor}`; // the default content for issue body | ||||||
|     $refInNewIssue.attr('href', `${urlIssueNew}?body=${encodeURIComponent(issueContent)}`); |     refInNewIssue.setAttribute('href', `${urlIssueNew}?body=${encodeURIComponent(issueContent)}`); | ||||||
|   }; |   }; | ||||||
|  |  | ||||||
|   const updateViewGitBlameFragment = function (anchor) { |   const updateViewGitBlameFragment = function (anchor) { | ||||||
|     if (!$viewGitBlame.length) return; |     if (!viewGitBlame) return; | ||||||
|     let href = $viewGitBlame.attr('href'); |     let href = viewGitBlame.getAttribute('href'); | ||||||
|     href = `${href.replace(/#L\d+$|#L\d+-L\d+$/, '')}`; |     href = `${href.replace(/#L\d+$|#L\d+-L\d+$/, '')}`; | ||||||
|     if (anchor.length !== 0) { |     if (anchor.length !== 0) { | ||||||
|       href = `${href}#${anchor}`; |       href = `${href}#${anchor}`; | ||||||
|     } |     } | ||||||
|     $viewGitBlame.attr('href', href); |     viewGitBlame.setAttribute('href', href); | ||||||
|   }; |   }; | ||||||
|  |  | ||||||
|   const updateCopyPermalinkUrl = function (anchor) { |   const updateCopyPermalinkUrl = function (anchor) { | ||||||
|     if (!$copyPermalink.length) return; |     if (!copyPermalink) return; | ||||||
|     let link = $copyPermalink.attr('data-url'); |     let link = copyPermalink.getAttribute('data-url'); | ||||||
|     link = `${link.replace(/#L\d+$|#L\d+-L\d+$/, '')}#${anchor}`; |     link = `${link.replace(/#L\d+$|#L\d+-L\d+$/, '')}#${anchor}`; | ||||||
|     $copyPermalink.attr('data-url', link); |     copyPermalink.setAttribute('data-url', link); | ||||||
|   }; |   }; | ||||||
|  |  | ||||||
|   if ($selectionStartEls) { |   if ($selectionStartEls) { | ||||||
|     let a = parseInt($selectionEndEl.attr('rel').slice(1)); |     let a = parseInt($selectionEndEl[0].getAttribute('rel').slice(1)); | ||||||
|     let b = parseInt($selectionStartEls.attr('rel').slice(1)); |     let b = parseInt($selectionStartEls[0].getAttribute('rel').slice(1)); | ||||||
|     let c; |     let c; | ||||||
|     if (a !== b) { |     if (a !== b) { | ||||||
|       if (a > b) { |       if (a > b) { | ||||||
| @@ -85,11 +83,11 @@ function selectRange($linesEls, $selectionEndEl, $selectionStartEls) { | |||||||
|     } |     } | ||||||
|   } |   } | ||||||
|   $selectionEndEl.closest('tr').addClass('active'); |   $selectionEndEl.closest('tr').addClass('active'); | ||||||
|   changeHash(`#${$selectionEndEl.attr('rel')}`); |   changeHash(`#${$selectionEndEl[0].getAttribute('rel')}`); | ||||||
|  |  | ||||||
|   updateIssueHref($selectionEndEl.attr('rel')); |   updateIssueHref($selectionEndEl[0].getAttribute('rel')); | ||||||
|   updateViewGitBlameFragment($selectionEndEl.attr('rel')); |   updateViewGitBlameFragment($selectionEndEl[0].getAttribute('rel')); | ||||||
|   updateCopyPermalinkUrl($selectionEndEl.attr('rel')); |   updateCopyPermalinkUrl($selectionEndEl[0].getAttribute('rel')); | ||||||
| } | } | ||||||
|  |  | ||||||
| function showLineButton() { | function showLineButton() { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user