mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-10-30 18:22:40 -04:00 
			
		
		
		
	* Added devcontainer * Add feature storage pathes * Exclude tests and add versioning * Check escaping * Check escaping * Check quoting * Echo * Escape * Escape : * Double escape \ * Escaping * Remove if * Escape colon * Missing \ * Esacpe : * Escape all * test * Remove sed * Fix exclude * Remove SED command * Add LD_LIBRARY_PATH * Adjusted to v1.7 * Updated test-cases * Remove devcontainer * Removed internal build-file * Run pre-commit * Corrected flak8 error * Adjusted to v1.7 * Updated test-cases * Corrected flak8 error * Adjusted to new plural translations * Small adjustments due to code-review backend * Adjusted line-break * Removed PAPERLESS prefix from settings variables * Corrected style change due to search+replace * First documentation draft * Revert changes to Pipfile * Add sphinx-autobuild with keep-outdated * Revert merge error that results in wrong storage path is evaluated * Adjust styles of generated files ... * Adds additional testing to cover dynamic storage path functionality * Remove unnecessary condition * Add hint to edit storage path dialog * Correct spelling of pathes to paths * Minor documentation tweaks * Minor typo * improving wrapping of filter editor buttons with new storage path button * Update .gitignore * Fix select border radius in non input-groups * Better storage path edit hint * Add note to edit storage path dialog re document_renamer * Add note to bulk edit storage path re document_renamer * Rename FILTER_STORAGE_DIRECTORY to PATH * Fix broken filter rule parsing * Show default storage if unspecified * Remove note re storage path on bulk edit * Add basic validation of filename variables Co-authored-by: Markus Kling <markus@markus-kling.net> Co-authored-by: Trenton Holmes <holmes.trenton@gmail.com> Co-authored-by: Michael Shamoon <4887959+shamoon@users.noreply.github.com> Co-authored-by: Quinn Casey <quinn@quinncasey.com>
		
			
				
	
	
		
			48 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| let toggleButton
 | |
| let icon
 | |
| 
 | |
| function load() {
 | |
| 	'use strict'
 | |
| 
 | |
| 	toggleButton = document.createElement('button')
 | |
| 	toggleButton.setAttribute('title', 'Toggle dark mode')
 | |
| 	toggleButton.classList.add('dark-mode-toggle')
 | |
| 	icon = document.createElement('i')
 | |
| 	icon.classList.add('fa', darkModeState ? 'fa-sun-o' : 'fa-moon-o')
 | |
| 	toggleButton.appendChild(icon)
 | |
| 	document.body.prepend(toggleButton)
 | |
| 
 | |
| 	// Listen for changes in the OS settings
 | |
| 	// addListener is used because older versions of Safari don't support addEventListener
 | |
| 	// prefersDarkQuery set in <head>
 | |
| 	if (prefersDarkQuery) {
 | |
| 		prefersDarkQuery.addListener(function (evt) {
 | |
| 			toggleDarkMode(evt.matches)
 | |
| 		})
 | |
| 	}
 | |
| 
 | |
| 	// Initial setting depending on the prefers-color-mode or localstorage
 | |
| 	// darkModeState should be set in the document <head> to prevent flash
 | |
| 	if (darkModeState == undefined) darkModeState = false
 | |
| 	toggleDarkMode(darkModeState)
 | |
| 
 | |
| 	// Toggles the "dark-mode" class on click and sets localStorage state
 | |
| 	toggleButton.addEventListener('click', () => {
 | |
| 		darkModeState = !darkModeState
 | |
| 
 | |
| 		toggleDarkMode(darkModeState)
 | |
| 		localStorage.setItem('dark-mode', darkModeState)
 | |
| 	})
 | |
| }
 | |
| 
 | |
| function toggleDarkMode(state) {
 | |
| 	document.documentElement.classList.toggle('dark-mode', state)
 | |
| 	document.documentElement.classList.toggle('light-mode', !state)
 | |
| 	icon.classList.remove('fa-sun-o')
 | |
| 	icon.classList.remove('fa-moon-o')
 | |
| 	icon.classList.add(state ? 'fa-sun-o' : 'fa-moon-o')
 | |
| 	darkModeState = state
 | |
| }
 | |
| 
 | |
| document.addEventListener('DOMContentLoaded', load)
 |