Commit Graph

389 Commits

Author SHA1 Message Date
Jeremy Stretch
39730b6834 Optimized performance when editing/deleting objects in bulk 2017-07-13 17:39:28 -04:00
Jeremy Stretch
dd1991f2c6 Closes #838: Display details of all objects being edited/deleted in bulk 2017-07-13 16:31:47 -04:00
Jeremy Stretch
2f32e11f53 Fixes #1342: Allow designation of users and groups when creating/editing a secret role 2017-07-13 11:44:29 -04:00
Jeremy Stretch
dc68be5abf Removed SearchTables; created DetailTables for models where needed 2017-07-12 16:42:45 -04:00
Jeremy Stretch
af9fa85cc1 Fixes #1312: Catch error when attempting to activate a user key with an invalid private key 2017-07-12 10:06:13 -04:00
Jeremy Stretch
1f9806a480 Fixes #1285: Enforce model validation when creating/editing objects via the API 2017-07-06 17:37:24 -04:00
Jeremy Stretch
87e5687d03 Closes #1203: Implemented query filters for all models 2017-06-19 16:10:18 -04:00
Jeremy Stretch
469c52be28 Fixes #1263: Differentiate add and edit permissions for objects 2017-06-13 16:41:57 -04:00
Jeremy Stretch
08883d86ef Closes #913: Added headers to object CSV exports 2017-06-09 16:24:59 -04:00
Jeremy Stretch
e06221bc89 Merge branch 'import_headers' into develop 2017-06-07 15:54:59 -04:00
Jeremy Stretch
65b6fe576f Converted device fields to use FlexibleModelChoiceField; misc cleanup 2017-06-07 15:51:11 -04:00
Jeremy Stretch
1ddd7415cb Replaced old CSVDataField 2017-06-05 16:16:23 -04:00
Jeremy Stretch
08c8bd3049 Renamed new import view to BulkImportView 2017-06-05 15:53:41 -04:00
Zach Moody
b732c24ec4 Fixes #1244 2017-06-02 16:33:49 -05:00
Jeremy Stretch
af604aba31 Converted secrets import view to new scheme 2017-06-02 17:23:41 -04:00
Jeremy Stretch
138cbf9761 Created migrations for transition to Unicode literals 2017-05-24 14:18:52 -04:00
Jeremy Stretch
f21c6bca00 Import unicode_literals 2017-05-24 11:33:11 -04:00
Jeremy Stretch
27c94d9874 Fixes #1206: Fix redirection in admin UI after activating secret keys when BASE_PATH is set 2017-05-19 13:23:17 -04:00
Jeremy Stretch
fb85867d72 Converted all object views to class-based views 2017-05-18 17:00:57 -04:00
Jeremy Stretch
ed65721085 Fixes #1160: Linkify secrets and tenants in global search results 2017-05-10 13:16:33 -04:00
Jeremy Stretch
5ca87c0f20 Merge branch 'develop' into v2-develop 2017-05-08 15:02:06 -04:00
Jeremy Stretch
3c631902e1 Closes #1100: Add a "view all" link to completed bulk import views is_pool for prefixes 2017-05-03 15:27:26 -04:00
Jeremy Stretch
7eb9c8265c Fixes #1132: Prompt user to unlock session key when importing secrets 2017-05-03 11:47:28 -04:00
Jeremy Stretch
9d9de6b2a3 Fixes #1126: Fix error when editing a user key via admin UI 2017-05-02 14:50:36 -04:00
Jeremy Stretch
d17efce4f5 Fixes #1111: Correct database ordering of SessionKey model 2017-04-27 11:27:34 -04:00
Jeremy Stretch
b01bf6089c Merge branch 'develop' into v2-develop
Conflicts:
	netbox/dcim/forms.py
	netbox/dcim/views.py
	netbox/ipam/forms.py
	netbox/templates/_base.html
	netbox/utilities/views.py
2017-04-13 15:42:50 -04:00
Jeremy Stretch
f70f0f8d62 Improved handling of return_url for object edit/delete views; removed manual definitions of initial data fields 2017-04-13 13:11:23 -04:00
Jeremy Stretch
82d53a8c3d Fixes #1049: Prompt user if missing session key when adding/editing a secret 2017-04-06 13:55:40 -04:00
Jeremy Stretch
d98e9e1838 Resolved RemovedInDjango20Warning deprecation warnings 2017-04-05 14:40:25 -04:00
Jeremy Stretch
369d3aa62e Rearranged URL namespaces to satisfy deprecation warnings 2017-04-05 14:26:33 -04:00
Jeremy Stretch
a67fc64afb Fixes #1025: Applied missing API view filters 2017-04-03 11:04:17 -04:00
Jeremy Stretch
aefc6ff7b4 Merge branch 'global-search' into v2-develop 2017-03-29 16:45:57 -04:00
Jeremy Stretch
a5dc91c175 Introduced SearchTable for improved performance 2017-03-29 16:05:23 -04:00
Jeremy Stretch
6542b8b198 Base64 decoding tweaks 2017-03-29 13:39:59 -04:00
Jeremy Stretch
afdb24610d Initial work on global search 2017-03-29 12:04:57 -04:00
Jeremy Stretch
58e4bf1cc3 Closes #973: Removed extraneous admin UI functions 2017-03-28 16:41:53 -04:00
Jeremy Stretch
116ceb6f93 Added tests for get-session-key API endpoint 2017-03-28 11:30:38 -04:00
Jeremy Stretch
5d022a575a Closes #985: Added preserve_key to get-session-key endpoint 2017-03-28 11:13:13 -04:00
Jeremy Stretch
0899a1052e Only attempt to process session key if user is authenticated 2017-03-22 17:43:29 -04:00
Jeremy Stretch
04e09c0078 Merge branch 'develop' into api2
Conflicts:
	netbox/circuits/filters.py
2017-03-22 09:48:41 -04:00
Jeremy Stretch
05b71564d8 Closes #981: Allow filtering primary objects by a given set of IDs 2017-03-22 09:39:30 -04:00
Jeremy Stretch
6d30fdb83d Finished work on secrets views; removed path from cookie assignment 2017-03-21 15:30:36 -04:00
Jeremy Stretch
6cb36a6cee Fixed browsable API breadcrumbs 2017-03-20 21:50:10 -04:00
Jeremy Stretch
42fd14f5c0 Introduced HttpStatusMixin to provide more detail on HTTP response status test failures 2017-03-20 13:46:47 -04:00
Jeremy Stretch
671d53877a Python3 fixes 2017-03-17 21:39:29 -04:00
Jeremy Stretch
c08fae8bce Restore not-so-extraneous 'id' field to all WritableSerializers 2017-03-17 17:32:43 -04:00
Jeremy Stretch
e544f1fa1e Removed extraneous 'id' field from all WritableSerializers 2017-03-17 16:20:34 -04:00
Jeremy Stretch
130ff27f26 Wrote tests for secrets API 2017-03-17 16:01:57 -04:00
Jeremy Stretch
e3ae013e42 Implemented full read/write support for secrets 2017-03-15 14:47:18 -04:00
Jeremy Stretch
07a2b136b8 Refactored SecretViewSet 2017-03-15 13:48:09 -04:00
Jeremy Stretch
3dc15068b9 Allow user to delete session key 2017-03-14 14:01:06 -04:00
Jeremy Stretch
4cb30f1ce4 Relate SessionKey to UserKey rather than User 2017-03-14 13:32:07 -04:00
Jeremy Stretch
04aedcc056 Merge branch 'develop' into api2
Conflicts:
	netbox/templates/users/_user.html
	netbox/users/urls.py
2017-03-14 12:40:28 -04:00
Jeremy Stretch
d9f1bcbf15 Renamed user URL namespace 2017-03-14 12:36:44 -04:00
Jeremy Stretch
105d17748e Secrets UI work 2017-03-14 12:32:08 -04:00
Jeremy Stretch
dd27950fae Simplify SessionKey usage 2017-03-14 10:58:57 -04:00
Jeremy Stretch
6c2ed1be22 Standardized API URL definitions 2017-03-09 13:24:02 -05:00
Jeremy Stretch
7e6d061646 Converted GetSessionKey and RSAKeyGeneratorView to ViewSets 2017-03-08 17:57:51 -05:00
Jeremy Stretch
9b39ba169c Merge branch 'develop' into api2
Conflicts:
	netbox/dcim/api/serializers.py
	netbox/dcim/api/urls.py
	netbox/dcim/api/views.py
	netbox/dcim/filters.py
	netbox/dcim/tables.py
	requirements.txt
2017-03-02 16:01:25 -05:00
Jeremy Stretch
1adae67dd7 Closes #927: Upgrade to django-filter 1.0 2017-03-01 13:09:19 -05:00
Jeremy Stretch
616ca4fe1f Adapted the web UI to work with the new secrets API 2017-02-03 16:14:42 -05:00
Jeremy Stretch
a42eeb12d2 Implemented SessionKeys for secrets 2017-02-03 12:49:32 -05:00
Jeremy Stretch
cf66f67fb6 Initial work on using session-based master key ciphers 2017-02-02 21:26:51 -05:00
Jeremy Stretch
2408d78f47 Introduced ability to decrypt secrets by sending the user's private key in an HTTP header 2017-02-01 17:40:50 -05:00
Jeremy Stretch
4f8a5eb1a0 Moved secret views into a ViewSet (no write ability yet) 2017-02-01 16:21:33 -05:00
Jeremy Stretch
bb1f97abc2 Implemented static writable ModelSerializers for all models 2017-01-31 15:35:09 -05:00
Jeremy Stretch
1fcc2b0029 Namespaced all API URLs 2017-01-31 10:40:53 -05:00
Jeremy Stretch
fa900d5dbb Converted nested serializers to HyperlinkedModelSerializer 2017-01-27 12:22:29 -05:00
Jeremy Stretch
acfba410dd Standardized implementation of nested ViewSets 2017-01-26 17:58:36 -05:00
Jeremy Stretch
0f9fe8648e Converted static URL definitions to routers 2017-01-26 15:34:07 -05:00
Jeremy Stretch
c5fba24cc5 Merge branch 'develop' into api2 2017-01-26 14:07:23 -05:00
Jeremy Stretch
5d5d4ac714 Fixes #845: Fix missing edit/delete buttons on object tables for non-superusers 2017-01-26 13:20:56 -05:00
Jeremy Stretch
062a5bfe8d Initial work on API v2.0 2017-01-24 17:12:16 -05:00
Jeremy Stretch
1317c0dd8c Closes #841: Merged search and filter forms on all object lists 2017-01-24 12:05:39 -05:00
Jens L
80439c495e Basic Support for Python 3 (#827)
* Rudimentary python3 support

* update docs and trigger Travis

* fix some of the tests

* fix all python3 errors

* change env calls to just python

* add @python_2_unicode_compatible decorator to models for python2 compatibility

* switch netbox.configuration to from netbox import configuration
2017-01-23 16:44:29 -05:00
Jeremy Stretch
52420945b2 Standardized naming of return_url for all object views 2017-01-23 14:07:26 -05:00
Jeremy Stretch
39d083eae7 Re-implemented method for bulk editing/deleting all objects within a filtered queryset 2017-01-20 16:42:11 -05:00
Jeremy Stretch
28a9307f9f Deprecated use_obj_view in favor of get_return_url() 2017-01-18 14:34:17 -05:00
Jeremy Stretch
3eb969de0c Standardized the use of return_url for ObjectDeleteView 2017-01-18 13:30:19 -05:00
Jeremy Stretch
a5fe4468d0 Upgraded django-filter to 0.15.3 2016-12-26 11:58:27 -05:00
Jeremy Stretch
37b2ff02e7 Standardized inheritance order of BootstrapMixin 2016-12-21 14:15:18 -05:00
Jeremy Stretch
5035a9567b Fixes #729: Corrected cancellation links when editing secondary objects 2016-12-08 12:20:45 -05:00
Jeremy Stretch
a37d2ff4f8 Closes #652: Use password input controls when editing secrets 2016-10-31 12:30:50 -04:00
Jeremy Stretch
d97dd266b7 Cleaned up message strings 2016-10-31 11:16:30 -04:00
Jeremy Stretch
fc2ac8a02b Attributed all model ValidationErrors to specific fields (where appropriate) 2016-10-21 15:39:13 -04:00
Jeremy Stretch
36066068d4 #527: Initial work to allow nullifying fields during bulk edit 2016-09-30 16:17:41 -04:00
Jeremy Stretch
5b7f350ded Added headers to all bulk edit tables 2016-09-28 17:20:16 -04:00
Jeremy Stretch
e618bf40ec Reimplemented FilterChoiceField 2016-09-20 11:08:25 -04:00
Jeremy Stretch
824d2d8205 Implemented FilterChoiceField and get_filter_choices() to reduce filter form boilerplate 2016-09-14 16:27:26 -04:00
Jeremy Stretch
faed3c1314 Merged develop 2016-08-22 15:49:41 -04:00
Jeremy Stretch
ab90a06c54 Fixes #486: Prompt for secret key only if updating a secret's value 2016-08-18 16:43:41 -04:00
Jeremy Stretch
7d879bb0dc Added bulk editing capability for custom fields 2016-08-16 14:57:04 -04:00
Jeremy Stretch
29c4394e64 Fixes #429: Correct redirection of user when adding a secret to a device 2016-08-04 14:37:38 -04:00
Jeremy Stretch
b73f980eb2 Closes #176: Added initial_data fixtures for new installs 2016-08-01 12:29:26 -04:00
Jeremy Stretch
38aee33df0 Closes #358: Improved search of all objects 2016-07-29 12:51:23 -04:00
Jeremy Stretch
b6e5bafd65 Replaced edit links with buttons 2016-07-28 15:04:33 -04:00
Jeremy Stretch
450c51604c Replaced all object-specific BulkDeleteForms with the stock form provided by utilities.BulkDeleteView 2016-07-25 17:02:53 -04:00
Jeremy Stretch
8ee083f7c1 Fixed Unicode support in forms 2016-07-21 10:47:38 -04:00
Zach Moody
c9dc6d04ef Fixes #332 - Add device filter to secrets api. 2016-07-19 10:08:59 -05:00
Jeremy Stretch
82ad479037 Enforce authentication for all secrets API views 2016-07-18 15:28:36 -04:00
Jeremy Stretch
0d46a65a36 Unicode handling cleanup 2016-07-18 14:48:51 -04:00
Jeremy Stretch
18846cf40a Fixes #271: Corrected select_related() in secrets API 2016-07-12 12:27:26 -04:00
Jeremy Stretch
8dd6112a4b Corrected detection of private_key 2016-07-08 17:49:20 -04:00
Jeremy Stretch
7228801cb0 Move membership evaluation to SecretRole 2016-07-07 12:07:02 -04:00
Jeremy Stretch
edde021c85 Grant superusers permission to decrypt all secrets 2016-07-06 17:40:32 -04:00
Jeremy Stretch
966ea45050 #68: Improved permissions-related error handling 2016-07-06 17:22:10 -04:00
Zach Moody
f7e768d166 secrets: imported SecretValidationHasher.iterations for SecretTestCase 2016-06-23 00:01:22 -05:00
Zach Moody
b21833f79c secrets: refactor for py3 (from 3c9c04d4) 2016-06-22 23:52:32 -05:00
Jeremy Stretch
cbd7b5b4c3 Squashed migrations in preparation for public release 2016-06-22 14:23:06 -04:00
Jeremy Stretch
c7d18fc3bd Converted UserKey and Secret to CreatedUpdatedModel 2016-06-22 11:08:29 -04:00
Jeremy Stretch
921040d2fc Renamed 'last_modified' to 'last_updated' 2016-06-22 11:03:49 -04:00
Jeremy Stretch
cb5991d5a6 Extended primary models to include 'created' and 'last_updated' fields 2016-06-22 10:19:00 -04:00
Jeremy Stretch
9cd299f009 Expanded SecretRole docstring 2016-06-21 15:30:43 -04:00
Jeremy Stretch
bc958a23b3 Improved model docstring quality 2016-06-21 12:45:02 -04:00
Jeremy Stretch
a29e57319e Implemented BaseTable for consistent rendering 2016-06-20 16:34:19 -04:00
Jeremy Stretch
c149dd2bd0 Added uniquieness constraint to Secret 2016-06-14 16:25:18 -04:00
Jeremy Stretch
b4619fad7a Added 'select all' option to object lists for bulk edit/delete 2016-06-01 13:30:33 -04:00
Jeremy Stretch
cb8e0c93f2 Implemented object add/edit/delete logging 2016-05-23 14:20:42 -04:00
Jeremy Stretch
bbdc7dccba Added JS for SlugField autofill 2016-05-20 15:32:17 -04:00
Jeremy Stretch
7502a02fba Code cleanup 2016-05-18 16:35:35 -04:00
Jeremy Stretch
b481935b9a Added CBVs for SecretRoles 2016-05-16 12:07:12 -04:00
Jeremy Stretch
062e64a34d Collapsed EditTables into primary table for each object 2016-05-13 11:51:50 -04:00
Jeremy Stretch
f4b14b42ee Converted all delete CBVs to use utilities/obj_delete.html 2016-05-12 15:46:02 -04:00
Jeremy Stretch
a0ffd71755 Consolidated bulk delete views to use a single template 2016-05-11 15:18:39 -04:00
Jeremy Stretch
8e11a3d624 Fixes #4: Include filter params when redirecting user after bulk edit/delete 2016-04-25 15:39:35 -04:00
Jeremy Stretch
0072f54c94 Introduced a no-forms browseable API renderer; changed secrets decyption endpoint from GET to POST 2016-04-12 14:03:18 -04:00
Jeremy Stretch
2cb99c6012 Introduced per-role decryption permissions 2016-04-07 12:37:09 -04:00
Jeremy Stretch
8a39f254ad Switched to a custom low-iteration Secret hasher to avoid excessive delay when retrieving many Secrets 2016-04-06 15:33:26 -04:00
Jeremy Stretch
4561ec7985 Modified the secrets API to accept a private key passed as a GET request body (instead of POSTing) 2016-04-06 11:22:36 -04:00
Jeremy Stretch
8d99502916 Introduced FreeRADIUSClientsRenderer 2016-03-22 14:56:26 -04:00
Jeremy Stretch
eec3ce375c Removed Device filters 2016-03-22 14:55:40 -04:00
Jeremy Stretch
1056fb215e Added Device IP to Secret serializer 2016-03-22 12:36:39 -04:00
Jeremy Stretch
6ce2cf9db0 Reworked secrets API to allow optional decryption by POSTing a private key 2016-03-22 12:17:49 -04:00
Jeremy Stretch
b78caba1ca Added device filter 2016-03-21 12:40:49 -04:00
Jeremy Stretch
a6108f2fa8 Changed Secret parent from a GenericForeignKey to ForeignKey(Device) 2016-03-21 11:42:42 -04:00
Jeremy Stretch
26b2b23e84 Enabled secret list filtering 2016-03-17 14:57:08 -04:00
Jeremy Stretch
5da1ccabf5 Fixed table name in secret_import() 2016-03-17 13:57:05 -04:00
Jeremy Stretch
c036db2677 Converted secrets object lists to ObjectListView 2016-03-04 11:33:15 -05:00
Jeremy Stretch
27b289ee3b Initial push to public repo 2016-03-01 11:23:03 -05:00