mirror of
				https://github.com/go-gitea/gitea
				synced 2025-10-31 03:18:24 +00:00 
			
		
		
		
	Load citation JS only when needed (#29855)
Previously, the citation js would load every time when opening a citable repo. Now it only loads when the user clicks the button for it. The loading state is representend with a spinner on the button: <img width="83" alt="Screenshot 2024-03-17 at 00 25 13" src="https://github.com/go-gitea/gitea/assets/115237/29649089-13f3-4974-ab81-e12c0f8e651f"> Diff ist best viewed with whitespace hidden. --------- Co-authored-by: Giteabot <teabot@gitea.io>
This commit is contained in:
		| @@ -40,28 +40,35 @@ export async function initCitationFileCopyContent() { | ||||
|     $citationCopyApa.toggleClass('primary', !isBibtex); | ||||
|   }; | ||||
|  | ||||
|   try { | ||||
|     await initInputCitationValue($citationCopyApa, $citationCopyBibtex); | ||||
|   } catch (e) { | ||||
|     console.error(`initCitationFileCopyContent error: ${e}`, e); | ||||
|     return; | ||||
|   } | ||||
|   updateUi(); | ||||
|   $('#cite-repo-button').on('click', async (e) => { | ||||
|     const dropdownBtn = e.target.closest('.ui.dropdown.button'); | ||||
|     dropdownBtn.classList.add('is-loading'); | ||||
|  | ||||
|   $citationCopyApa.on('click', () => { | ||||
|     localStorage.setItem('citation-copy-format', 'apa'); | ||||
|     updateUi(); | ||||
|   }); | ||||
|   $citationCopyBibtex.on('click', () => { | ||||
|     localStorage.setItem('citation-copy-format', 'bibtex'); | ||||
|     updateUi(); | ||||
|   }); | ||||
|     try { | ||||
|       try { | ||||
|         await initInputCitationValue($citationCopyApa, $citationCopyBibtex); | ||||
|       } catch (e) { | ||||
|         console.error(`initCitationFileCopyContent error: ${e}`, e); | ||||
|         return; | ||||
|       } | ||||
|       updateUi(); | ||||
|  | ||||
|   $inputContent.on('click', () => { | ||||
|     $inputContent.trigger('select'); | ||||
|   }); | ||||
|       $citationCopyApa.on('click', () => { | ||||
|         localStorage.setItem('citation-copy-format', 'apa'); | ||||
|         updateUi(); | ||||
|       }); | ||||
|       $citationCopyBibtex.on('click', () => { | ||||
|         localStorage.setItem('citation-copy-format', 'bibtex'); | ||||
|         updateUi(); | ||||
|       }); | ||||
|  | ||||
|       $inputContent.on('click', () => { | ||||
|         $inputContent.trigger('select'); | ||||
|       }); | ||||
|     } finally { | ||||
|       dropdownBtn.classList.remove('is-loading'); | ||||
|     } | ||||
|  | ||||
|   $('#cite-repo-button').on('click', () => { | ||||
|     $('#cite-repo-modal').modal('show'); | ||||
|   }); | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user