mirror of
				https://github.com/kepler155c/opus
				synced 2025-10-30 23:23:03 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			58 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
| local Ansi   = require('opus.ansi')
 | |
| local Config = require('opus.config')
 | |
| local UI     = require('opus.ui')
 | |
| 
 | |
| if _G.http.websocket then
 | |
| 	local config = Config.load('cloud')
 | |
| 
 | |
| 	local tab = UI.Tab {
 | |
| 		title = 'Cloud',
 | |
| 		description = 'Cloud Catcher options',
 | |
| 		[1] = UI.Window {
 | |
| 			x = 2, y = 2, ex = -2, ey = 4,
 | |
| 		},
 | |
| 		key = UI.TextEntry {
 | |
| 			x = 3, ex = -3, y = 3,
 | |
| 			limit = 32,
 | |
| 			value = config.key,
 | |
| 			shadowText = 'Cloud key',
 | |
| 			accelerators = {
 | |
| 				enter = 'update_key',
 | |
| 			},
 | |
| 		},
 | |
| 		button = UI.Button {
 | |
| 			x = -8, ex = -2, y = -2,
 | |
| 			text = 'Apply',
 | |
| 			event = 'update_key',
 | |
| 		},
 | |
| 		labelText = UI.TextArea {
 | |
| 			x = 2, ex = -2, y = 5, ey = -4,
 | |
| 			textColor = 'yellow',
 | |
| 			backgroundColor = 'black',
 | |
| 			marginLeft = 1, marginRight = 1, marginTop = 1,
 | |
| 			value = string.format(
 | |
| [[Use a non-changing cloud key. Note that only a single computer can use this session at one time.
 | |
| To obtain a key, visit:
 | |
| %shttps://cloud-catcher.squiddev.cc%s then bookmark:
 | |
| %shttps://cloud-catcher.squiddev.cc/?id=KEY
 | |
| 		]],
 | |
| 			Ansi.white, Ansi.reset, Ansi.white),
 | |
| 		},
 | |
| 	}
 | |
| 
 | |
| 	function tab:eventHandler(event)
 | |
| 		if event.type == 'update_key' then
 | |
| 			if self.key.value then
 | |
| 				config.key = self.key.value
 | |
| 			else
 | |
| 				config.key = nil
 | |
| 			end
 | |
| 			Config.update('cloud', config)
 | |
| 			self:emit({ type = 'success_message', message = 'Updated' })
 | |
| 		end
 | |
| 	end
 | |
| 
 | |
| 	return tab
 | |
| end
 | |
| 
 | 
