Commit graph

1166 commits

Author SHA1 Message Date
Xander Smeets
5f6ee45f44 Fixed typo (#1134) 2018-05-06 11:22:30 -07:00
stanjg
095d85bb60
Added the server as argument, and improved the bug fix 2018-05-06 17:59:11 +02:00
stanjg
06a67bb4bb
Cleaned up some duplicate code 2018-05-05 10:39:20 +02:00
stanjg
28a97fea54
Polished it up 2018-05-04 22:48:43 +02:00
stanjg
93a7d11c28
Made a base 2018-05-04 18:45:37 +02:00
stanjg
86c8ecdcdf
Added the actual logic 2018-05-04 15:02:51 +02:00
stanjg
17a72d0895
StyleCI fixes 2018-05-04 14:05:42 +02:00
stanjg
9ae25538c3
Made it so users can switch languages themselves 2018-05-04 13:08:41 +02:00
stanjg
9a06647435
Added support for user specific languages 2018-05-04 12:56:30 +02:00
Dane Everitt
4fad244073
Show correct auth error. 2018-04-08 16:16:04 -05:00
Dane Everitt
b6e94d9a1e
Code cleanup 2018-04-08 16:00:52 -05:00
Dane Everitt
6d970a4cc3
Finalize login page! 2018-04-08 15:46:32 -05:00
Lance Pioch
88fd83d413 Remove unused imports (#1102) 2018-04-08 15:37:27 -05:00
Lance Pioch
ceff5acb85 Public is just the boolean (#1101) 2018-04-08 15:36:40 -05:00
Dane Everitt
d63624f607
Working login form with password reset functionality. 2018-04-08 15:18:13 -05:00
Dane Everitt
c3e462ab2f
Cleanup login/reset functionality, address security issue with 2FA pathways 2018-04-07 16:17:51 -05:00
Dane Everitt
4f3c668420
Refactor auth controllers to be cleaner and easier to maintain 2018-04-07 12:35:15 -05:00
Dane Everitt
324b989a29
Get a working rough copy of the login page 2018-04-01 17:46:16 -05:00
Dane Everitt
791cbaa5ce
Get things into a somewhat working state on the login form 2018-03-31 15:52:11 -05:00
Dane Everitt
8d704ae5c8
Inital commit with gulp and base asset setup 2018-03-27 00:44:14 -05:00
Dane Everitt
68f0811273
Merge branch 'feature/api-integration-testing' into develop 2018-03-26 19:55:28 -05:00
Stan
f1a76ec7fd Add description field to nodes (#1065) 2018-03-26 13:57:24 -05:00
Stan
56478d81da Added cast for 'public' field (#1085)
The missing cast was resulting in the API to send a 0 or 1 instead of true or false for the public field
2018-03-26 13:56:58 -05:00
Dane Everitt
565c5ddc52
Add integration tests for nests 2018-03-25 17:41:36 -05:00
Dane Everitt
bde4d4187f
Merge branch 'develop' into feature/api-integration-testing 2018-03-21 22:25:16 -05:00
Dane Everitt
b96c2d16ee
Added validation to variable validation rules to validate that the validation rules are valid
closes #988
2018-03-17 15:09:09 -05:00
Dane Everitt
3e2ac981a9
Add API endpoint for getting server resource utilization, closes #900
This endpoint is throttled to 15 requests per minute to avoid destroying the daemon since clients can use it.
2018-03-17 14:01:53 -05:00
Dane Everitt
21cd0688e0
Added giant warning message if you attempt to change an encryption key once one has been set. 2018-03-10 15:18:24 -06:00
Dane Everitt
f8e98e9c9e
Add ability to change server name, closes #563 2018-03-10 14:44:21 -06:00
Dane Everitt
e55d3c1a9a
Add check on SFTP page to make sure the permission is assigned before showing 2018-03-10 14:26:00 -06:00
Dane Everitt
abd2a42471
Fix data integrity exception thrown when attempting to store updated server egg variables 2018-03-10 13:55:24 -06:00
Dane Everitt
40c74ae1e7
Add validation to prevent invalid ports, closes #1034 2018-03-10 13:10:40 -06:00
Dane Everitt
e5c59c4984
Change exception handling for display exception 2018-03-10 13:02:41 -06:00
Dane Everitt
ef371a508d
Change check on debugbar to use debug not environment 2018-03-10 12:03:23 -06:00
Dane Everitt
dfb002fb33
Change config value for daemon 2018-03-08 23:35:36 -06:00
Dane Everitt
5839034e8f
Fix egg copy from, closes #995 2018-03-06 23:07:00 -06:00
Dane Everitt
4964d294f6
Throw 504 where necessary 2018-03-06 22:17:01 -06:00
Dane Everitt
ac9f83a8fe
Fix test to run with new bootstrapping 2018-03-04 22:42:33 -06:00
Dane Everitt
e8ea218f20
Add integration test for remaining application api user endpoints 2018-03-04 22:35:57 -06:00
Dane Everitt
bbbab4bf81
Handle error codes from custom rules better 2018-03-04 22:21:23 -06:00
Dane Everitt
e2aa01c9cc
First go at integration tests 2018-03-04 16:30:16 -06:00
Dane Everitt
36837df0a6
Use beginning of UUID for server uuidShort 2018-03-03 22:20:53 -06:00
Dane Everitt
85e75a2808
Fix bulk key revocation 2018-03-03 21:53:07 -06:00
Dane Everitt
d7efb4c4a2
Fix inability to revoke admin tokens from daemon 2018-03-03 21:45:10 -06:00
Dane Everitt
a4f03f5d02
Handle missing daemon keys better and fix subuser missing key errors 2018-03-03 21:31:44 -06:00
Dane Everitt
6d217869e0
Don't load daemon key on server models automatically. 2018-03-03 18:09:49 -06:00
Dane Everitt
a31334c0c5
Fix SQl queries being executed unnecessarily when listing servers 2018-03-03 18:00:23 -06:00
Dane Everitt
c739f292e4
paginate databases when viewing a host 2018-03-03 17:52:35 -06:00
Dane Everitt
dff7e8f734
Fix server creation in UI and API 2018-03-02 23:11:30 -06:00
Dane Everitt
0135f7ee8e
Add test for new command 2018-03-02 21:26:42 -06:00
Dane Everitt
021710aa1c
Add bulk power management via CLI 2018-03-02 20:58:58 -06:00
Dane Everitt
c6137db529
Fix build limit management in Admin CP 2018-03-02 19:49:09 -06:00
Dane Everitt
e39353a18d
Add tests for new service 2018-03-02 19:37:21 -06:00
Dane Everitt
bcb69603ad
Add support for user management of databases 2018-03-02 19:03:55 -06:00
Dane Everitt
07893effa3
Add initial go at user created databases for servers, still needs cleaning 2018-03-01 21:27:37 -06:00
Dane Everitt
87b96bdfc8
Add core logic to allow for limited databases and allocations 2018-03-01 20:08:27 -06:00
Dane Everitt
5f6c153537
Validate resource existence before validating data sent 2018-03-01 20:00:14 -06:00
Dane Everitt
070239abcf
Fix inability to edit certain environment vars and start line, closes #1008 2018-03-01 19:26:11 -06:00
Dane Everitt
85bdbdce14
Better handling of file download requests 2018-03-01 19:19:19 -06:00
Dane Everitt
838b9a9093
Add support for filesystem caching, closes #993 2018-03-01 18:46:59 -06:00
Dane Everitt
ab2973c4d1
Add pack transformer support 2018-03-01 18:43:39 -06:00
Dane Everitt
0a39a9b6bf
Don't require an environment variable to be present if none are required anyways, closes #1007 2018-03-01 18:35:53 -06:00
Dane Everitt
8f72571895
Fix IP access middleware 2018-02-28 23:39:59 -06:00
Dane Everitt
9b93629f45
Add UI for client API keys 2018-02-28 23:30:39 -06:00
Dane Everitt
2017e640b6
Add client API 2018-02-28 22:51:04 -06:00
Dane Everitt
4e12c289ed
Add command sending 2018-02-27 22:09:34 -06:00
Dane Everitt
cef3e4ced4
Add base routes for managing servers as a client 2018-02-27 21:28:43 -06:00
Dane Everitt
9a32b9fd03
Merge branch 'develop' into feature/client-api 2018-02-27 21:04:18 -06:00
Dane Everitt
23e07689a7
Handle 404 errors in API bindings correctly to avoid explosing that a resource exists before validating a key 2018-02-27 21:04:04 -06:00
Dane Everitt
d4e331c20a
Merge branch 'develop' into feature/client-api 2018-02-27 19:49:06 -06:00
Dane Everitt
a765e0dbb6
closes #991 2018-02-27 19:43:47 -06:00
Dane Everitt
4cfb8941d5
Fix broken users table in database causing validation errors. 2018-02-25 16:08:01 -06:00
Dane Everitt
e28973bcae
Move everything around as needed to get things setup for the client API 2018-02-25 15:30:56 -06:00
Dane Everitt
8daf97021a
Add ability to modify external id for a server 2018-02-25 14:45:16 -06:00
Dane Everitt
6a4b5e04e2
Fix broken external_id handling when creating servers 2018-02-25 14:43:40 -06:00
Dane Everitt
bdbed7706d
Set much higher throttle limits by default 2018-02-24 16:00:53 -06:00
Dane Everitt
5c4200dc0c
Make external_id fillable 2018-02-24 14:47:53 -06:00
Dane Everitt
fb1b2406b5
Add API endpoint to get a server by external ID 2018-02-24 14:09:09 -06:00
Dane Everitt
a1e704d3a7
Add back server sidebar list 2018-02-24 13:58:48 -06:00
Dane Everitt
5b6d3b8325
Slightly more clear errors 2018-02-24 12:27:41 -06:00
Dane Everitt
baeffef24b
Fix bad permissions check on server API route 2018-02-24 12:15:21 -06:00
Dane Everitt
807521b97c
Fix schedules with no names being uneditable 2018-02-24 12:04:14 -06:00
Dane Everitt
633bba6d6e
Add support for external_id on servers, closes #975 2018-02-24 11:57:12 -06:00
Dane Everitt
f655188c58
Fix searching servers 2018-02-24 11:48:24 -06:00
Dane Everitt
be6b398e2d
add support for egg variables, closes #974 2018-02-24 11:17:21 -06:00
Dane Everitt
620c624e6f
Fix exception thrown when accessing /nests/:id/eggs/:id API endpoint 2018-02-24 11:11:57 -06:00
Dane Everitt
e7e50bc45d
Add a few new internal configs to the node config 2018-02-18 20:39:43 -06:00
Dane Everitt
0341dbdfad
Add very basic cache busting 2018-02-18 15:15:53 -06:00
Dane Everitt
1eb76c4457
Log more information for PDOExceptions while also keeping passwords out. 2018-02-18 14:31:40 -06:00
Dane Everitt
4b9f025e98
Fix exception when trying to edit a host, ref #957 2018-02-18 14:10:12 -06:00
Dane Everitt
541b9ec7f5
Fix database name using d#_ rather than s#_, ref #957 2018-02-18 13:46:42 -06:00
Dane Everitt
3fb02a4b3c
Fix FQDN failing validation in database host UI, ref #957 2018-02-18 13:43:54 -06:00
Dane Everitt
c61c2bc5fd
Fix User model validation behavior, closes #950 2018-02-18 13:29:28 -06:00
Dane Everitt
50809cad36
Fix exception when no 2FA token is entered when enabling or disabling 2018-02-18 13:15:10 -06:00
Dane Everitt
e9680fc29c
Fix for StyleCI 2018-02-17 16:21:37 -06:00
ShadowKitten
d8be167a9c Add support for allowing subusers to access SFTP. (#918) 2018-02-17 16:10:44 -06:00
Dane Everitt
f61a5fa0cb
Use left join, not inner here 2018-02-17 15:52:41 -06:00
Dane Everitt
7562e501af
Fix an auto deployment bug causing a node to be ignored if it had no servers already attached to it
closes #919
2018-02-17 15:51:28 -06:00
Dane Everitt
d86c35d80f
Prevent duplicate allocations for servers 2018-02-17 13:53:38 -06:00
Dane Everitt
241f7d0125
Fix some data integrity issues 2018-02-17 13:37:53 -06:00
Dane Everitt
d52f8d9215
Fix behavior of validation when creating egg variables 2018-02-17 13:09:54 -06:00
Dane Everitt
303b64ced1
Fix improperly named mailgun environment variable, closes #942 2018-02-17 13:00:11 -06:00
Dane Everitt
8e1aa15dba
Fixes a bug that would cause non-editable variables on the front-end to throw a validation error 2018-02-15 20:58:51 -06:00
Dane Everitt
e2cdb3b4b1
Add test cases for services 2018-02-11 17:32:45 -06:00
Dane Everitt
3ecab82358
Fix exception when empty default value is passed for an egg variable, closes #934 2018-02-11 16:47:50 -06:00
Dane Everitt
bf537922a3
Fix username validation and auto-generation, closes #927 2018-02-11 16:39:50 -06:00
Dane Everitt
cfb7415e2a
Fix data integrity exception, closes #922 2018-02-10 14:01:49 -06:00
Dane Everitt
db29b04c39
Fix improper allocation id validation on API 2018-02-07 22:50:22 -06:00
Dane Everitt
a9c1946319
Add support for finding a user by external ID. 2018-02-07 21:56:11 -06:00
Dane Everitt
2e693067b8
Add search to API endpoints 2018-02-07 21:33:44 -06:00
Dane Everitt
dd54c5abb1
Fix user password handling in Admin CP 2018-02-07 21:13:40 -06:00
Dane Everitt
2ec76d283b
Fix bad API behavior 2018-02-04 15:38:38 -06:00
Dane Everitt
d4d9eda57a
Add schedule edit support 2018-02-04 13:51:24 -06:00
Dane Everitt
f42bc8a031
Cleanup exception reporting, stop logging PDO exception stacks.
PDOException stacks include the MySQL password for the connection attempt and many people do not realize this when providing logs.
2018-02-04 13:31:39 -06:00
Dane Everitt
ff8b5fc5a3
Fix exception when modifying existing DB host, closes #910 2018-02-04 12:59:14 -06:00
Dane Everitt
de1d9502c1
fix error when resetting daemon secret, closes #915 2018-02-04 12:55:50 -06:00
Dane Everitt
0b00895261
fix saving of egg variable values, closes #905 2018-02-03 12:36:57 -06:00
Dane Everitt
d9355b93b4
Fix exception when adjusting mail settings, closes #907 2018-02-03 12:28:39 -06:00
Dane Everitt
48c933fa0f
fix exception when deleting allocations, closes #908 2018-02-03 12:22:10 -06:00
Dane Everitt
ffa09d81e2
Pass strings for deletion of user sessions, closes #906 2018-02-03 12:18:18 -06:00
Dane Everitt
7a19019980
Fix suspension/installed handling for servers
closes Pterodactyl/Panel#891
2018-01-30 22:40:21 -06:00
Dane Everitt
c599112021
Finalize server management API 2018-01-30 20:36:59 -06:00
Dane Everitt
1be7805481
Add line? 2018-01-28 17:14:34 -06:00
Dane Everitt
5ed164e13e
Implement server creation though the API.
Also implements auto-deployment to specific locations and ports.
2018-01-28 17:14:14 -06:00
Dane Everitt
97ee95b4da
Fix some error handling 2018-01-27 13:26:43 -06:00
Dane Everitt
8afced3410
Add nests & eggs
Cleanup middleware handling and parameters on controllers...
2018-01-27 12:38:56 -06:00
Dane Everitt
de07b3cc7f
Add server database management support to API. 2018-01-25 22:34:53 -06:00
Dane Everitt
2bd691efad
Add database list endpoint, add more resource name magic 2018-01-25 21:26:06 -06:00
Dane Everitt
407120a854
Merge branch 'develop' into feature/api-v1 2018-01-21 17:06:31 -06:00
Dane Everitt
655d2485b5
Fix error causing inability to save variables. 2018-01-21 17:02:25 -06:00
Dane Everitt
aca0819bcd
Add server build management to API 2018-01-21 16:02:03 -06:00
Dane Everitt
d3dba3fcf9
Fix bug when modifying server descriptions 2018-01-21 14:45:20 -06:00
Dane Everitt
faaf27632c
Fix behavior on automatic resource name setter 2018-01-21 14:37:57 -06:00
Dane Everitt
8dcab927e5
Merge branch 'develop' into feature/api-v1 2018-01-21 14:31:32 -06:00
Dane Everitt
c369151397
Allow editing symlinked files 2018-01-21 14:24:59 -06:00
Dane Everitt
c69f48ad83
Fix filemanager file edit bug, closes #867 2018-01-21 12:31:41 -06:00
Dane Everitt
2212f28351
Don't break the page if no variable rules are provided. 2018-01-21 11:58:59 -06:00
Dane Everitt
62fd299fa2
Fix some egregious search and replace action... 2018-01-21 11:38:16 -06:00
Dane Everitt
17f6f3eeb6
Add server details modification endpoint to API. 2018-01-20 16:03:23 -06:00
Dane Everitt
3e327b8b0e
Use more logical route binding to not reveal resources on the API unless authenticated. 2018-01-20 15:33:04 -06:00
Dane Everitt
17544481b5
More server management via the API 2018-01-20 13:48:02 -06:00
Dane Everitt
3724559468
Forgotten changes 2018-01-19 21:48:26 -06:00
Dane Everitt
a497a3d153
Make server listing and single server view API endpoints work 2018-01-19 21:47:06 -06:00
Dane Everitt
74bdbea6a4
Sneaky files 2018-01-19 20:01:56 -06:00
Dane Everitt
0e7f8cedf0
Reorganize API files 2018-01-19 19:58:57 -06:00
Dane Everitt
bdadec002c
Push updates to server transformer 2018-01-18 21:56:12 -06:00
Dane Everitt
c3b9738364
Implement application API Keys 2018-01-18 21:36:15 -06:00
Dane Everitt
f9fc3f4370
Update interface to begin change to seperate account API keys and application keys
Main difference is permissions, cleaner UI for normal users, and account keys use permissions assigned to servers and subusers while application keys use R/W ACLs stored in the key table.
2018-01-14 13:30:55 -06:00
Dane Everitt
14f9e1ad43
More permission removal cleanup 2018-01-14 12:11:04 -06:00
Dane Everitt
ad3a954256
Rename APIKey to ApiKey 2018-01-14 12:06:15 -06:00
Dane Everitt
7aa540b895
Remove api permissions table 2018-01-14 12:05:18 -06:00
Dane Everitt
e0fb7fa30c
Fix failing ApiKeyCreationService test 2018-01-13 16:23:43 -06:00
Dane Everitt
e3df0738da
Change the way API keys are stored and validated; clarify API namespacing
Previously, a single key was used to access the API, this has not changed in terms of what the user sees. However, API keys now use an identifier and token internally. The identifier is the first 16 characters of the key, and the token is the remaining 32. The token is stored encrypted at rest in the database and the identifier is used by the API middleware to grab that record and make a timing attack safe comparison.
2018-01-13 16:06:19 -06:00
Dane Everitt
11c4f3f6f2
Finish putting permissions on the API 2018-01-13 14:08:19 -06:00
Dane Everitt
d644a53951
Update users & locations to use new permissions format 2018-01-12 20:39:15 -06:00
Dane Everitt
a31e5875dc
First round of changes to API to support simpler permissions. 2018-01-11 22:49:46 -06:00
Dane Everitt
0e24c669c4
docblock 2018-01-11 20:08:49 -06:00
Dane Everitt
cf21fd5a4b
More API updates, better support for node config edits 2018-01-10 23:19:03 -06:00
Dane Everitt
800e2df6b2
Merge branch 'develop' into feature/api-v1
# Conflicts:
#	app/Contracts/Repository/RepositoryInterface.php
#	app/Repositories/Eloquent/EloquentRepository.php
#	app/Services/Nodes/NodeUpdateService.php
#	tests/Unit/Services/Nodes/NodeUpdateServiceTest.php
2018-01-10 20:55:22 -06:00
Dane Everitt
bd238c7555
No more OOME checkboxes 2018-01-08 23:03:14 -06:00
Dane Everitt
02e4c1424e
Select less data from servers 2018-01-08 22:23:12 -06:00
Dane Everitt
0acc260b81
Change order that allocations are loaded in on the allocation listing 2018-01-08 22:21:35 -06:00
Dane Everitt
22511c8e24
Fix allocation behavior, closes #712 2018-01-08 22:12:19 -06:00
Dane Everitt
036bea2b94
Update schedule process to allow toggling/triggering via UI 2018-01-08 21:43:10 -06:00
Dane Everitt
94809b953c
Fix server setting bug 2018-01-06 15:20:47 -06:00
Dane Everitt
4b5ee920bd
Fix logic mistake with findOrFail 2018-01-06 13:08:20 -06:00
Dane Everitt
adcab5969a
Fix server description nullablility 2018-01-06 12:58:30 -06:00
Dane Everitt
a75b15cd8d
closes #852 2018-01-06 12:53:17 -06:00
Dane Everitt
59f8ae4b50
Too much grep 2018-01-06 12:49:32 -06:00
Dane Everitt
b3d7c6f1af
Fix search weighting for servers 2018-01-05 18:49:00 -06:00
Dane Everitt
21a78f465b
Fix node return being too strict 2018-01-05 18:44:20 -06:00
Dane Everitt
d2afc29a80
Refactor how repositories for the daemon work. 2018-01-05 18:27:47 -06:00
Dane Everitt
5f9fe4a69b
Update calls to missing function 2018-01-05 16:33:50 -06:00
Dane Everitt
60eb60013c
Update repository base code to be cleaner and make use of PHP 7 features 2018-01-04 22:49:50 -06:00
Dane Everitt
f32cee3ae5
Add location control through API 2018-01-03 21:14:53 -06:00
Dane Everitt
15289b76a7
Finish first round of User/Node API additions
Will still need some tweaking and improvements to allow everything to be used.
2018-01-01 15:11:44 -06:00
Dane Everitt
d21f70c04b
Merge branch 'develop' into feature/api-v1 2018-01-01 13:33:06 -06:00
Dane Everitt
0ec5a4e08c
Fix some file management bugs, closes #621 2018-01-01 13:21:10 -06:00
Dane Everitt
ffc8d4875f
Fix unability to store '-1' in the database properly 2018-01-01 12:32:33 -06:00
Dane Everitt
958c29cfbf
Fix empty server descriptions throwing SQL errors, closes #842 2018-01-01 12:23:45 -06:00
Dane Everitt
4457634127
Fix user creation to use UUIDs correctly
Also updates the notification send method to be cleaner and more maintainable
2018-01-01 12:13:08 -06:00
Dane Everitt
8a38a8af4a
Update file manager to account for new API error responses 2017-12-31 10:39:07 -06:00
Dane Everitt
46d7ba7585
Merge branch 'develop' into feature/api-v1 2017-12-31 10:32:28 -06:00
Dane Everitt
6b2d7b6488
If folder does not exist, reload the file manager index 2017-12-31 10:30:19 -06:00
Dane Everitt
8ce0863559
Fix settings service provider to actually work when no migrations have been run. 2017-12-30 20:53:34 -06:00
Dane Everitt
5efee34378
close #840 2017-12-30 20:25:04 -06:00
Dane Everitt
10e2e6e379
close #841 2017-12-30 19:56:42 -06:00
Dane Everitt
e4feee6932
Fix setting of environment variable 2017-12-30 16:34:22 -06:00
Dane Everitt
1b9b92ac62
Cleanup settings use in panel. 2017-12-30 16:33:00 -06:00
Lance Pioch
59b50ca75e Allow the environment setup without loading the database (settings provider) first (#823) 2017-12-30 17:16:49 -05:00
Dane Everitt
54b6fb5ebd
More work on the API utilizing Laravel 5.5 exception rendering
Also corrects API format to maintain JSONAPI spec
2017-12-17 14:57:05 -06:00
Dane Everitt
b9d67459b2
Update to Laravel 5.5 (#814) 2017-12-17 13:07:38 -06:00
Dane Everitt
f30f4b45ba
Merge branch 'feature/laravel-55-update' into feature/api-v1 2017-12-16 17:19:35 -06:00
Dane Everitt
631b5eb1b2
Fix form requests 2017-12-16 13:44:30 -06:00
Dane Everitt
c6cece51ee
Fix the surprisingly few broken tests 2017-12-16 13:35:32 -06:00
Dane Everitt
3c48947f9d
Fix known issues from the upgrade guide 2017-12-16 13:15:09 -06:00
Dane Everitt
0dcf2aaed6
Inital upgrade to 5.5
This simply updates dependencies and gets all of the providers and config files updated based on what  the laravel/laravel currently ships with
2017-12-16 12:20:09 -06:00
Dane Everitt
4a65dff940
Implement admin user management API routes 2017-12-16 11:31:18 -06:00
Dane Everitt
a1da8a3c9d
Merge branch 'develop' into feature/api-v1 2017-12-14 21:12:17 -06:00
Dane Everitt
f9df463d32
Implement a better management interface for Settings (#809) 2017-12-14 21:05:26 -06:00