Commit Graph

44 Commits

Author SHA1 Message Date
Oskar Hahn
cd34d30866 Remove utils.collections.Collection class and other cleanups
* Activate restricted_data_cache on inmemory cache
* Use ElementCache in rest-api get requests
* Get requests on the restapi return 404 when the user has no permission
* Added async function for has_perm and in_some_groups
* changed Cachable.get_restricted_data to be an ansync function
* rewrote required_user_system
* changed default implementation of access_permission.check_permission to
  check a given permission or check if anonymous is enabled
2018-11-03 20:48:19 +01:00
Norman Jäckel
6441347d10 Strip out response.data. 2018-10-29 08:52:52 +01:00
Oskar Hahn
401e7821ae Merge remote-tracking branch 'upstream/master' into OpenSlides-3 2018-08-23 21:31:24 +02:00
Oskar Hahn
aac9dcabf5 drop python 3.5 2018-08-23 17:51:30 +02:00
FinnStutzenstein
9bac396b67 Support for decimal places in motion and assignment polls 2018-08-23 08:53:59 +02:00
Oskar Hahn
10b3bb6497 Update to channels 2
* geis does not work with channels2 and never will be (it has to be python now)
* pytest
* rewrote cache system
* use username instead of pk for admin user in tests
2018-08-22 06:30:11 +02:00
Oskar Hahn
acceeff8f8 * Update python requirements
* drop python 3.4
2018-08-07 15:23:11 +02:00
FinnStutzenstein
9e4cafd0f0 Custom workflows and states:
- Added new workflow list view
 - Added state table for each workflow
 - Added new StateViewSet to handle states of workflows
2018-07-13 10:29:06 +02:00
Oskar Hahn
d7db714562 CollectionElement and Autoupdate cleanups
* change get_restricted_data and get_projector_data to always use a list
* Add typings to all get_restricted_data and get_projector_data methods
* Replace CollectionElementList with a real list
* Fixed arguments of inform_deleted_data
* Moved CollectionElementCache to cache.py and refactored it
* Run tests with cache enabled (using fakeredis)
2017-09-15 12:11:32 +02:00
Oskar Hahn
be94e97889 more typings 2017-09-03 18:34:55 +02:00
Oskar Hahn
9d1ebac86e Add typing (#3370)
Add typing
2017-08-23 20:51:06 +02:00
Norman Jäckel
91d365e386 Rework on personal notes. Fixed #3262. 2017-06-13 20:58:17 +02:00
Oskar Hahn
2daafa8db9 Created a function to convert anything possible to a user-collectoin-element or None
Changed user.has_perm(...) to has_perm(user, ...) at any place.

Removed old code
2017-01-26 18:57:10 +01:00
Oskar Hahn
368873e738 Adds a cache system to the CollectionElement and add
a Collection class that can be used to call a collection
used this for the list and receive rest api.
2016-09-30 21:37:52 +02:00
Norman Jäckel
8427ffd816 Small changes for multiple projector feature. 2016-09-30 19:11:33 +02:00
Finn Stutzenstein
e6b9b21d41 Added support for multiple projectors. 2016-09-30 18:58:59 +02:00
Oskar Hahn
6abb0976c2 Change system for autoupdate on the projector (#2394)
* Second websocket channel for the projector

* Removed use of projector requirements for REST API requests.

Refactored data serializing for projector websocket connection.

* Refactor the way that the projector autoupdate get its data.

* Fixed missing assignment slide title for hidden items.

* Release all items for item list slide and list of speakers slide. Fixed error with motion workflow.

* Created CollectionElement class which helps to handle autoupdate.
2016-09-17 22:26:23 +02:00
Norman Jäckel
132c6e81ec Forwarding JSON instead of Django model instances to autoupdate loop.
- Used raw SQL for createing default projector during inital migration.
- Removed default_password and hidden agenda items from autoupdate data for some users.
- Removed old get_collection_and_id_from_url() function.
2016-03-06 14:24:53 +01:00
Norman Jäckel
4daa61888f Massive refactoring for autoupdate optimization. 2016-03-06 14:22:40 +01:00
André Böhlke
3db2f2fc16 "durchstich" for autoupdate optimization 2016-03-06 14:22:40 +01:00
Oskar Hahn
12a08b9732 New Agenda Item
Changed agenda item, so it can not be manualy created, but is always created
when a custom slide, motion or assignment is created.
2015-10-29 15:44:43 +01:00
Norman Jäckel
1e08e9411a Cleaned up users app. 2015-09-21 16:23:47 +02:00
André Böhlke
10b8a1d838 Add upload feature to mediafiles module 2015-09-17 12:35:40 +02:00
Oskar Hahn
89a6d5b451 Appended an _id suffix to all related field names in the rest api
Fixes #1597
2015-07-25 19:17:33 +02:00
Norman Jäckel
7e404946e4 Refactored view permissions.
Refactored permission check for REST API viewsets.
Removed old PermissionMixin.
Cleaned up several views.py files.
2015-07-05 22:17:58 +02:00
Oskar Hahn
e042c668d5 Moved config app into the core app 2015-06-29 15:15:33 +02:00
Norman Jäckel
c5fbe2e9ee Refactored config API.
Removed form_field attributes.
Added extra fields for HTML rendering like label and help text.
Added fields for sorting and grouping. Removed old collection system.
Added config groups to config view via OPTIONS requests.
Regrouped all variables.
Added validation. Changed internal handling.
2015-06-18 21:13:30 +02:00
Oskar Hahn
fbf7d0e43d Remove old thinks not needed for the 2.0 release:
* django templates
* widgets
* views
* mppt
* main_menu
* projector 1.x api

Sorted all imports
Add a ending slash to each url with a redirect view
2015-06-16 17:07:39 +02:00
Norman Jäckel
5813b8341c Added permission check for objects required for active projector elements. 2015-06-15 18:22:15 +02:00
Norman Jäckel
ccaa1eaf27 Added create, updated and destroy view for assignment polls. 2015-06-14 23:26:06 +02:00
Norman Jäckel
dc7d27a985 Added REST API for projector. Introduced new projector API.
Added custom slide projector element class.
Added welcome slide as custom slide.
Added user slide projector element class.
Added clock, countdown ans message projector elements.
Renamed SignalConnectMetaClass classmethod get_all_objects to get_all (private API).
Added migrations to core app.
Fixed and wrote tests.
Updated CHANGELOG.
2015-05-29 12:44:25 +02:00
Norman Jäckel
b30afbd635 Added several motion REST API views.
Added motion creation view, motion update view, version permit and delete view, view to support motions, view to set and reset state. Refactored motion submitters and supporters.
2015-05-13 12:22:50 +02:00
Oskar Hahn
9f93208afd Merge pull request #1512 from normanjaeckel/AssignmentRESTAPIChanges
Assignment REST API changes
2015-04-19 21:26:58 +02:00
Norman Jäckel
d0dc2f8934 Set assignment phase index to zero. Added views to manage candidatures. 2015-04-19 21:20:39 +02:00
Oskar Hahn
505e587d6f Send tree for agenda items 2015-04-17 16:46:13 +02:00
Norman Jäckel
3a19218bd5 Refactored parts of users app.
Refactored user creation and update via REST API. Used new serializer.
Cleaned up management commands, signals and imports. Moved code from 'api.py' to 'models.py'.
Changed usage of group 'Registered'. Now the users don't have to be members to gain its permissions. Used customized auth backend for this.
Added and changed some tests.
2015-02-14 02:29:53 +01:00
Norman Jäckel
87cd31f6a5 Updated ViewSets to Django REST Framework 3.0.5. Refactored imports from openslides/utils/rest_api.py for better overriding them later.
Fixed #1450. Updated requirements.
2015-02-12 19:19:44 +01:00
Oskar Hahn
7171a71919 angular single page application 2015-02-05 23:06:09 +01:00
Norman Jäckel
eed5c59013 Refactored serializers and autoupdate.
Added api for groups.
Refactored serializers now using 'id' instead of 'url'.
Rework of tornado autoupdate functionality.
Implemented extra data in SockJS messages.
2015-02-05 19:49:54 +01:00
Norman Jäckel
7238b8159a Added REST api for motion, mediafile and config app. Refactor REST api in other apps. 2015-01-31 14:15:10 +01:00
Norman Jäckel
0d56424c90 Refactored REST api in agenda, core and users app. 2015-01-17 15:58:51 +01:00
Oskar Hahn
1a1d072454 remove update_projector and add inform_changed_data 2015-01-17 15:16:49 +01:00
Norman Jäckel
b0422c4680 Added api viewset for agenda items.
Fixed style checker problem.
2015-01-17 09:18:40 +01:00
Norman Jäckel
7ed5d2fc43 Setup Django REST Framework. 2015-01-17 08:49:52 +01:00