Commit Graph
100 Commits
Author SHA1 Message Date
Oliver Walters ab454e5ba4 More template changes: perms -> roles 2020-10-06 16:46:13 +11:00
Oliver Walters 88f73443ee Yet more style fixes 2020-10-06 16:43:39 +11:00
Oliver Walters 77a2b6de8b Merge branch 'part-permissions' of https://github.com/SchrodingersGat/InvenTree into part-permissions 2020-10-06 16:03:33 +11:00
Oliver Walters b3e4efd96e Unit testing fixes 2020-10-06 16:03:19 +11:00
OliverandGitHub e076470305 Merge branch 'master' into part-permissions 2020-10-06 12:35:45 +11:00
Oliver Walters d691b15f4b Fix conflicts 2020-10-06 12:34:30 +11:00
Oliver Walters 11d31960c7 Change modal form permissions to use new "role" strategy 2020-10-06 11:42:16 +11:00
Oliver Walters c740cce5e4 PEP fixes 2020-10-06 11:31:04 +11:00
Oliver Walters dc2c9aa662 Add InvenTreeRoleMixin
- Simplifies permission requirements for views
- e.g. 'part.view' rather than 'part.view_partcategory'
2020-10-06 11:29:38 +11:00
Oliver Walters d2e2e7511f Update templates: Change perms to roles 2020-10-06 10:07:39 +11:00
Oliver Walters fa21d66c41 Fix logic for global context object 'roles'
- User may be a part of multiple groups
- Roles are additive across groups
2020-10-06 09:54:37 +11:00
Oliver Walters 23aee234f0 Change index page to use roles rather than perms to determine user permissions 2020-10-06 09:32:05 +11:00
Oliver Walters 556ffa1099 Change label for permissions to match django permission names 2020-10-06 09:28:05 +11:00
Oliver Walters 8b2189daca Add global context 'roles'
- Access via template e.g. {% if roles.part.view %}
- Always True if the user is a superuser
2020-10-06 09:27:22 +11:00
OliverandGitHub e74bfb90a5 Merge pull request #1025 from eeintech/fixed_group_redundant_saves
Fixed Group model permissions redundant saves
2020-10-06 07:40:44 +11:00
Oliver Walters 3f59ce3f93 Update unit tests
- requires the user to actually have the necessary permissions!
2020-10-06 01:30:36 +11:00
Oliver Walters 16d720b62c Update permission requirements for API
- Automatically use model permissions by default!
-
2020-10-06 00:36:55 +11:00
Oliver Walters 8ee16d6f98 update translation files 2020-10-06 00:20:57 +11:00
Oliver Walters ba4c829b10 Add permission requirements in various part templates 2020-10-06 00:20:45 +11:00
Oliver Walters afadd51a14 Fix permissions in views.py
Silly, "add" not "create"
2020-10-06 00:19:44 +11:00
Oliver Walters 66bdce3d04 Hide elements on the PartCategory page, based on permissions 2020-10-05 23:53:24 +11:00
Oliver Walters 4d49cb029f Change part views to require permissions
Also adds custom 403 page
2020-10-05 23:49:32 +11:00
OliverandGitHub 796e89c921 Merge pull request #1023 from SchrodingersGat/index-permissions
Change what elements the user can see on the index page
2020-10-05 23:19:13 +11:00
Oliver Walters 3e9c7cda21 Change what elements the user can see on the index page, based on permissions! 2020-10-05 23:11:55 +11:00
OliverandGitHub e5960f6ce4 Merge pull request #1022 from SchrodingersGat/permission-fixes
Fixes for role permissions
2020-10-05 23:04:50 +11:00
Oliver Walters 806a7f961d Fixes for role permissions
- Fixed a strange interaction if multiple rulesets referred to the same models
- Order of operations was incorrect.
- Now is good? Yes!
2020-10-05 22:57:05 +11:00
OliverandGitHub 731c796254 Merge pull request #1011 from SchrodingersGat/navbar-permissions
Hide main elements of navigation bar based on user permissions
2020-10-05 11:17:41 +11:00
OliverandGitHub dc41231fcc Merge pull request #1018 from SchrodingersGat/group-roles
Roles and Permissions
2020-10-05 11:16:52 +11:00
OliverandGitHub cc05220263 Merge pull request #1020 from SchrodingersGat/stock-building
Add "is_building" field to StockItem model
2020-10-05 10:08:40 +11:00
Oliver Walters 898c604b3b Fix incorrect permission names
- Uses the app_model name, *NOT* the name of the database table
- Adds extra tests to ensure that permissions get assigned and removed correctly
2020-10-05 08:55:15 +11:00
Oliver Walters 095ef51991 Cleanup unit testing 2020-10-05 08:29:36 +11:00
Oliver Walters bce7eb1aad update translation files 2020-10-05 01:02:36 +11:00
Oliver Walters 13cd8624b2 Fix permissions 2020-10-05 01:01:56 +11:00
Oliver Walters 48e050d317 Add some more unit tests and validation code for the StockItem model
- Ensure that the build part matches the stockitem part!
2020-10-05 00:49:00 +11:00
Oliver Walters 3ee7be1d58 Add "optional" field to BomItem
- Defaults to False
- Indicates that the BomItem is "optional" for a build
- Will be used in the future when calculating if a Build output is fully allocated!
2020-10-05 00:42:09 +11:00
Oliver Walters c1595396c4 Unit testing: fix PEP issues 2020-10-05 00:29:31 +11:00
Oliver Walters fe3a72c6cc Add some unit testing 2020-10-05 00:29:06 +11:00
Oliver Walters 26d113e8ad Update IN_STOCK_FILTER to reject stock items which have is_building set to True 2020-10-05 00:14:04 +11:00
Oliver Walters ee28b4eea5 Add "is_building" field to StockItem model
- This will be set to TRUE until a stock item has been completed
2020-10-05 00:12:42 +11:00
OliverandGitHub 7f3ce9b0b1 Merge pull request #1019 from SchrodingersGat/installed-stock-improvements
Improvements for the "Installed Items" tab for StockItem display
2020-10-05 00:09:23 +11:00
Oliver Walters 62734c4b72 Add a custom template for the install item form 2020-10-05 00:01:01 +11:00
Oliver Walters 3fe0886207 Remove a debug statement 2020-10-04 23:49:01 +11:00
Oliver Walters 852da6d696 Fix form validation 2020-10-04 23:48:15 +11:00
Oliver Walters 42a75a8238 Add hidden input to the InstallStockForm form
- keeps track of "part" object
- so we can filter the stock_items queryset if the form validation fails
- Is there a more djangonic way of doing this??
2020-10-04 23:45:52 +11:00
Oliver Walters 46f459b4c7 Better display of stock table 2020-10-04 23:34:02 +11:00
Oliver Walters b9291c6705 Improve transaction note recording for the StockItem model 2020-10-04 23:33:43 +11:00
Oliver Walters 824ce6778f Progress bar tweaks
- If no maximum value supplied, just show the value (and fill to 100% width)
2020-10-04 23:33:20 +11:00
Oliver Walters 3c5968ef1a Add subrow table to the "installed items" view
Ah, javascript...
2020-10-04 22:58:41 +11:00
Oliver Walters 9c27680202 Finish function to install stock item(s) 2020-10-04 21:32:21 +11:00
Oliver Walters 45c888e13d Custom cleaning for form
Ok, looks like I've been doing this wrong the whole time!
The "djangonic" way is pretty cool
2020-10-04 21:31:44 +11:00
Oliver Walters a686500df1 Calculate initial values for the view 2020-10-04 21:02:20 +11:00
Oliver Walters fd22e713ff Filter available stock items by Part reference 2020-10-04 20:50:06 +11:00
Oliver Walters f04977e7e1 Add form / view for installing a stock item into another stock item 2020-10-04 20:41:28 +11:00
Oliver Walters b467c8a1ef Add front-end functions to render an "installed stock" table 2020-10-04 15:17:46 +11:00
Oliver Walters b27f926310 Add ability to filter BOM API by "trackable" status of the sub_part object 2020-10-04 13:51:52 +11:00
Oliver Walters fb09f53dc9 Add missing migration file 2020-10-04 12:58:45 +11:00
Oliver Walters 929411e49a Remove "general" ruleset 2020-10-04 12:53:24 +11:00
Oliver Walters 31b699d521 Hide "user permissions" view from the admin interface 2020-10-04 12:47:19 +11:00
Oliver Walters cda52a58e3 Remove manual 'permissions' control from groups admin interface
- Does not actually *do* anything any more as the RuleSet approach overrides it anyway
2020-10-04 12:19:56 +11:00
Oliver Walters c19c014f55 Add or remove permissions from groups as defined by the RuleSet links
- Only runs when the group is changed
- Does not add permissions if they already exist
- Does not remove permissions if they do not exist
2020-10-04 12:18:31 +11:00
Oliver Walters d5c0c12d78 Add some more unit testing
- ALL models must be covered by rulesets
- Added a RULESET_IGNORE list for models we do not want permissions for
2020-10-04 11:03:14 +11:00
Oliver Walters c09b4980ad PEP fixes 2020-10-04 00:43:02 +10:00
Oliver Walters 1ded9e1fc0 Add a warning showing which databases tables are not covered by defined rulesets 2020-10-04 00:38:53 +10:00
Oliver Walters 6c2eb959a6 More unit testing 2020-10-04 00:34:22 +10:00
Oliver Walters 2039100d3e Add some unit testing 2020-10-04 00:24:48 +10:00
Oliver Walters 6bc5fe2497 Tab fix 2020-10-04 00:03:10 +10:00
Oliver Walters 9e4cc73b1c Add migration files 2020-10-04 00:01:18 +10:00
Oliver Walters 16f1b4c784 Add hook to update group permission roles
(doesn't do anything yet)
2020-10-03 23:45:24 +10:00
Oliver Walters bedda66949 Add custom admin view for the "Group" model
- Ref: https://github.com/Microdisseny/django-groupadmin-users
- Adds ability to edit users within a particular group from the group admin page!
2020-10-03 17:37:20 +10:00
OliverandGitHub d81aa5c051 Merge pull request #1017 from SchrodingersGat/admin-shell
Add shell interface
2020-10-03 16:24:55 +10:00
Oliver Walters c7403fd512 Add shell interface 2020-10-03 16:18:03 +10:00
OliverandGitHub e6526288cd Merge pull request #1013 from SchrodingersGat/next-available-fix
Fix for "next avilable serial number" string
2020-10-02 14:01:25 +10:00
Oliver Walters f12f8156bd Fix for "next avilable serial number" string 2020-10-02 13:54:23 +10:00
OliverandGitHub 7f3018ebf8 Merge pull request #1008 from eeintech/parametric_part_tables
Add parametric part tables to category detail page
2020-10-02 08:56:05 +10:00
OliverandGitHub 7356fc3dfc Merge pull request #1002 from eeintech/empty_search_query
Empty search query returned all elements from database
2020-10-01 09:34:02 +10:00
OliverandGitHub 4f648f8787 Merge pull request #1010 from SchrodingersGat/admin-permission-fixes
Update admin links to require specific permissions
2020-10-01 00:37:43 +10:00
Oliver Walters 756f3ddb0f Hide main elements of navigation bar based on user permissions 2020-10-01 00:25:24 +10:00
Oliver Walters 626d0266c8 Add framework for required permissions for any ajax modal forms
- Default permissions of "*" will not immediately change any modal forms
- Set the permission_required attribute of any modal form for this to be implemented
2020-10-01 00:16:04 +10:00
Oliver Walters 56660d52f2 Add "permission denied" message on modal forms 2020-10-01 00:09:21 +10:00
Oliver Walters 81864a6ab8 Fix button layout for stock table 2020-10-01 00:00:37 +10:00
Oliver Walters 27656633df Update admin links to require specific permissions 2020-09-30 23:57:23 +10:00
OliverandGitHub 400f183597 Merge pull request #1009 from SchrodingersGat/ipn-filter
Add filtering for parts which have an IPN set
2020-09-30 23:55:27 +10:00
Oliver Walters a952dc38a3 Add filtering for parts which have an IPN set 2020-09-30 23:35:39 +10:00
OliverandGitHub c4cae02170 Update version.py 2020-09-30 08:06:58 +10:00
OliverandGitHub 8ea2c627c4 Update version.py
Bump version number for release
2020-09-30 08:06:37 +10:00
OliverandGitHub 064a142d76 Merge pull request #1006 from SchrodingersGat/install_into
UI stuff
2020-09-30 08:03:34 +10:00
Oliver Walters 4f1d087654 PEP fix 2020-09-30 07:56:44 +10:00
Oliver Walters d1cce7df94 Add direct admin links if the user is staff 2020-09-30 00:02:10 +10:00
Oliver Walters 0e5f10c020 Add some more search terms to the admin interface 2020-09-29 23:41:50 +10:00
Oliver Walters 1f6cbd7408 Add action to uninstall a particular stock item 2020-09-29 23:11:37 +10:00
OliverandGitHub 9e4a599c44 Merge pull request #1001 from SchrodingersGat/index-fix
Change layout for the index page
2020-09-28 22:23:08 +10:00
Oliver Walters e78e649aa9 Change layout for the index page
- Expanding one table doesn't force the neighbouring one to be expanded also
2020-09-28 22:22:48 +10:00
OliverandGitHub 41d6ad2db9 Merge pull request #1000 from SchrodingersGat/installed-in
Installed in
2020-09-28 22:16:07 +10:00
Oliver Walters 38beaff01b peppy 2020-09-28 22:09:09 +10:00
Oliver Walters d348d90fbe Cleanup errors in unit testing 2020-09-28 22:08:38 +10:00
Oliver Walters ae55c81dae Updated translation files 2020-09-28 22:04:08 +10:00
Oliver Walters 54bfcff213 CHange "parts" to "items" 2020-09-28 22:03:41 +10:00
Oliver Walters b2b22762ef style fixes 2020-09-28 22:01:45 +10:00
Oliver Walters a18886f196 Add some unit tests for the new functions 2020-09-28 22:00:17 +10:00
Oliver Walters df8d1fb32b Add functions to install and uninstall stock items 2020-09-28 21:52:23 +10:00