Norman Jäckel
060856628b
OpenSlides history mode.
...
Also containing auth check and viewpoint to clear history.
2018-11-30 09:51:10 +01:00
Jochen Saalfeld
09e2629b64
the redis host needs to be configured for channel layers
...
otherwise the post migration signal in django will try to establish an connection to localhost, no matter what redis server ip or adress was entered
2018-11-22 09:08:22 +01:00
Oskar Hahn
67d933a206
fix douple elements
2018-11-18 07:57:44 +01:00
Oskar Hahn
eead4efe6a
Remove CollectionElement
...
* Use user_id: int instead of Optional[CollectionElment] in utils
* Rewrote autoupdate system without CollectionElement
2018-11-04 01:06:01 +01:00
Oskar Hahn
93dfd9ef67
Merge pull request #3973 from ostcar/test_with_redis
...
add possebility to run tests with redis
2018-11-03 20:54:55 +01:00
Oskar Hahn
f4f3ab9c49
Merge pull request #3972 from ostcar/websocket_use_restricted_data
...
Fix error, that user get full_data when restricted_data_cache was enabled
2018-11-03 20:53:52 +01:00
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
Oskar Hahn
d11c7bbad7
add possebility to run tests with redis
2018-11-03 16:59:21 +01:00
Oskar Hahn
6480f1cee9
Fix error, that user got full_data when restricted_data_cache was enabled
2018-11-03 14:37:47 +01:00
Oskar Hahn
b97e643b33
Fix error on to big change id on websocket connection
2018-11-02 05:12:20 +01:00
Finn Stutzenstein
72e3df8b65
Merge pull request #3928 from normanjaeckel/StripResponse
...
Strip out response.data.
2018-11-01 07:59:59 +01:00
Norman Jäckel
30c0773838
Split up autoupdate functions (sync and async).
2018-10-30 13:07:24 +01:00
Oskar Hahn
b034839ac8
Remove old projector code
2018-10-29 13:10:15 +01:00
Oskar Hahn
0229bb923d
Move websocket protocoll in apps
2018-10-29 12:33:15 +01:00
Norman Jäckel
6441347d10
Strip out response.data.
2018-10-29 08:52:52 +01:00
Oskar Hahn
c405b4b323
Use Protocol instead of ABC in cache_provicer
2018-10-28 10:37:16 +01:00
Oskar Hahn
b9e24016c1
Add test for second getElement request
2018-10-27 14:56:22 +02:00
Oskar Hahn
e7d14a8081
Change_id API
...
* Improve AutoUpdateFormat
* Receive autoupdate requested via websocket
* Support change_id in query string
* Disable autoupdate at default
* Add websocket protocoll to turn on or off autoupdate
2018-10-26 06:30:01 +02:00
Oskar Hahn
9eef4da21c
remove old client
2018-10-25 16:04:28 +02:00
Oskar Hahn
5b5d0e395a
new autoupdate format
2018-10-19 07:35:59 +02:00
Oskar Hahn
bc442210fb
Improve redis cache
...
* delete only keys with prefix
* Make redis_provider atomic with transactions and lua scripts
* improve lock
* generate change_id in redis to make sure it is uniq
* use miliseconds as starttime
* add argument use max_change_id to get_{full|resticted}_data
2018-10-15 23:37:26 +02:00
FinnStutzenstein
1e4eacecfd
New superadmin group
2018-10-12 07:58:18 +02:00
Oskar Hahn
9af6bf1606
ensures test on startup
2018-09-23 16:57:49 +02:00
FinnStutzenstein
f1ddd16dc6
Motion rework
...
- remove motion version
- migrations for versions and change recommendations
- Redone motion comments. Wording changed from comment fields to comment
sections
- fixed test order, tests are not atomic
- introduce get_group_model. Just use OpenSlides Groups and not the
django's ones.
2018-09-10 09:00:55 +02:00
Oskar Hahn
732de97ec2
Make Consumer real async again
2018-09-04 08:57:50 +02:00
FinnStutzenstein
8adaa6118a
Angular constants via WebSocket
...
- new format for constants on the server
- adaptions for the old client
2018-09-04 08:57:11 +02:00
Oskar Hahn
dc7ca5e2c4
fix empty values in rest
2018-08-24 12:14:02 +02:00
Oskar Hahn
401e7821ae
Merge remote-tracking branch 'upstream/master' into OpenSlides-3
2018-08-23 21:31:24 +02:00
Norman Jäckel
7dd7bb1b8d
Merge pull request #3807 from ostcar/websocket_protocol
...
Add a protocol for websocket
2018-08-23 21:15:48 +02:00
Oskar Hahn
fed6d6f435
Add a protocol for websocket
...
{'type': STRING, 'content': ANY}
2018-08-23 21:02:52 +02:00
Oskar Hahn
aac9dcabf5
drop python 3.5
2018-08-23 17:51:30 +02:00
Norman Jäckel
123b7c702b
Merge pull request #3803 from FinnStutzenstein/voting_decimal_places
...
Support for decimal places in motion and assignment polls
2018-08-23 11:28:26 +02:00
FinnStutzenstein
9bac396b67
Support for decimal places in motion and assignment polls
2018-08-23 08:53:59 +02:00
Norman Jäckel
48a2a3fe53
Fixed settings creation for windows.
2018-08-22 16:51:46 +02:00
Norman Jäckel
07ffb3b6c5
Fixed settings creation for windows.
2018-08-22 12:39: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
FinnStutzenstein
78dab97673
Use newer version of django-redis-sessions, new settings format
2018-08-15 11:37:20 +02:00
Oskar Hahn
92a39a3fc6
support python 3.7
...
fix new pep8 stype
2018-08-08 21:46:56 +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
FinnStutzenstein
252ba02e86
Scroll projector to a given line
2018-06-12 13:02:22 +02:00
FinnStutzenstein
2989024cca
Delete restricted data cache on permission changes ( closes #3396 )
2018-05-16 10:59:00 +02:00
FinnStutzenstein
83edfc2af0
Remove projector from projector-all
2018-04-24 11:20:15 +02:00
FinnStutzenstein
10038b782f
One request for each projection. Added some validation for clear_elements and prune_elements
2018-04-24 10:23:28 +02:00
Emanuel Schütze
ba579637bd
Merge pull request #3684 from FinnStutzenstein/fixMypy
...
Fixed mypy for utils/migration.py
2018-04-05 09:02:05 +02:00
FinnStutzenstein
23a7481277
Fixed mypy for utils/migration.py.
2018-04-04 15:47:13 +02:00
Emanuel Schütze
0710af827e
Merge pull request #3600 from ostcar/cache-api
...
Cache api
2018-04-04 13:41:27 +02:00
FinnStutzenstein
ad5c81a3db
fixed indentions and wrong line breaks in pdf, remove every tab in html ( fixes #3678 )
2018-03-25 11:10:17 +02:00
FinnStutzenstein
b081401d57
Adding new permission to groups during migration from 2.1.1 to 2.2
2018-03-12 14:11:20 +01:00
FinnStutzenstein
aacdc29394
Added --no-template-caching
2018-03-05 11:55:15 +01:00
Oskar Hahn
5aa8f6193e
Add methods to delete the restricted_data_cache
2018-02-24 18:04:32 +01:00
Oskar Hahn
c47d054c67
Activate the restricted_data_cache again.
...
restricted_data_cache.update_element(...) only adds an element to the cache, when
there are already other elements in the cache. So then add_element is never used,
the cache is never created.
2018-02-24 16:57:18 +01:00
Oskar Hahn
6c3ae7cb4e
fix mypy
2018-02-24 16:38:17 +01:00
FinnStutzenstein
3ba39c37c1
Agenda DOCX export, motion log message when comment edited, motion sequential number in detail view and PDF, save pagination state to session storage ( fixes #3558 ).
2018-02-14 10:25:51 +01:00
Emanuel Schütze
9c4a8cc7fc
Merge pull request #3539 from normanjaeckel/BundleAutoupdate
...
Added autoupdate bundle middleware.
2018-01-26 15:23:32 +01:00
Norman Jäckel
d381ca36dd
Added autoupdate bundle middleware.
2018-01-25 23:09:28 +01:00
FinnStutzenstein
60b6ef1415
Repair the master
2018-01-23 14:02:16 +01:00
FinnStutzenstein
5e089bfcdc
Preparations for the SAML plugin; Fixed caching of main views.
2018-01-21 11:54:01 +01:00
Norman Jäckel
aaeb85db61
Split send_data channel into send_data_projector and send_data_site for projector prioritization. Fixed #3426 .
2018-01-20 11:07:28 +01:00
Emanuel Schütze
2fe1218fbb
Merge pull request #3503 from FinnStutzenstein/emailTest
...
Send invitation emails
2017-12-15 08:29:09 +01:00
FinnStutzenstein
2220112d27
Send invitation emails with OpenSlides login.
2017-12-15 08:16:29 +01:00
Norman Jäckel
912876c895
Merge pull request #3505 from FinnStutzenstein/legalNotice
...
extended the legal notice page (fixes #3504 )
2017-12-11 21:49:00 +01:00
Emanuel Schütze
3d264683ff
Assignment improvements
...
- Use ckeditor for assignment description field (e.g. for candidatures
using html).
- Use 2 decimal places for percentage of voting results (motions/assignments)
- Allow css style attributes 'float' and 'padding'.
- Remove progress bar in election result slide to get more space (height)
for candidate rows.
2017-12-05 14:04:35 +01:00
FinnStutzenstein
a998657923
extended the legal notice page ( fixes #3504 )
2017-12-05 07:55:12 +01:00
Emanuel Schütze
279c2ba796
Adds elements to restricted data cache only if cache already exists (hotfix for #3427 ).
...
Prevents corrupt cache if restricted data cache is cleared while runtime.
2017-11-12 17:39:46 +01:00
FinnStutzenstein
2ba1fe2a0f
Instructions for using Nginx in big mode
2017-09-28 09:35:05 +02:00
FinnStutzenstein
5862e054e3
Naive projector prioritization
2017-09-27 14:46:16 +02:00
FinnStutzenstein
178948b269
Index and Webclient View caching
2017-09-27 12:50:59 +02:00
Emanuel Schütze
6f4d122e0f
Fixed two stylistic remarks.
2017-09-18 09:40:57 +02:00
Emanuel Schütze
b824e0387c
Merge pull request #3390 from ostcar/rewrite_restricted_data
...
CollectionElement and Autoupdate cleanups to help mypy
2017-09-15 12:23:50 +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
Emanuel Schütze
4565e7e4a6
Merge pull request #3400 from FinnStutzenstein/UserAutoupdate
...
Autoupdates on user login (fixes #3395 , fixes #3392 )
2017-09-15 11:48:35 +02:00
FinnStutzenstein
16abfd0dbf
Autoupdates on user login ( fixes #3395 , fixes #3392 )
2017-09-15 10:40:04 +02:00
Oskar Hahn
faf44602cb
Make RestrictedDataCache optional
2017-09-15 09:55:21 +02:00
Oskar Hahn
0978cfd5d5
Add restricted_data_cache
...
This replaces the startup cache
2017-09-06 18:06:57 +02:00
Oskar Hahn
b80e95a321
Rewrite projector_element without dispatch
2017-09-05 22:46:13 +02:00
Oskar Hahn
be94e97889
more typings
2017-09-03 18:34:55 +02:00
Oskar Hahn
87b889fbf2
Rewrite config to have id field
2017-08-24 15:02:42 +02:00
Oskar Hahn
9d1ebac86e
Add typing ( #3370 )
...
Add typing
2017-08-23 20:51:06 +02:00
Emanuel Schütze
32c36996b0
Merge pull request #3345 from FinnStutzenstein/testData
...
some changes in the example data plugin
2017-08-14 10:52:45 +02:00
FinnStutzenstein
727d1341e8
some changes in the example data plugin
2017-08-14 09:56:48 +02:00
Tobias Hößl
54e067d9d9
Allow OL[start] - fixes #3339
...
Style
2017-08-02 21:27:12 +02:00
Emanuel Schütze
573fc4da57
Merge pull request #3267 from normanjaeckel/NewPersonalNote
...
Rework on personal notes.
2017-06-16 12:38:40 +02:00
Norman Jäckel
eaebeb8f06
Fixed get_projector_data impementation. Closed #3282 .
2017-06-13 22:21:56 +02:00
Norman Jäckel
91d365e386
Rework on personal notes. Fixed #3262 .
2017-06-13 20:58:17 +02:00
Oskar Hahn
8920ffac66
Block anonymous from websocket, if they are deactivated
2017-06-10 09:25:27 +02:00
Norman Jäckel
ea50971ae6
Fixes autoupdate bug for a user without user.can_see_name permission.
2017-06-07 20:55:00 +02:00
Emanuel Schütze
2994f7713b
Hotfix for issue #3282 .
...
(projector autoupdate problem by deleting projected object)
2017-06-01 14:57:33 +02:00
Norman Jäckel
ebabc291c5
Refactoring of data parsing for startup and autoupdate.
2017-05-03 08:58:29 +02:00
Oskar Hahn
4963bfa7bf
Changed restricted data parsing. Cached full data on startup.
2017-05-01 21:52:16 +02:00
Emanuel Schütze
dd99be5e69
Merge pull request #3221 from normanjaeckel/ChangeKeyError
...
Fixed error for internal function get_model_from_collection_string.
2017-04-27 15:34:39 +02:00
Norman Jäckel
4bdb06bd9b
Fixed error for internal function get_model_from_collection_string.
2017-04-27 15:16:07 +02:00
Emanuel Schütze
9387f83f8a
Merge pull request #3212 from normanjaeckel/Notify
...
Added notify system.
2017-04-27 15:07:15 +02:00
FinnStutzenstein
349505ac3d
Added a warning, if another user edits the same motion.
2017-04-27 13:09:24 +02:00
Oskar Hahn
74c1cc63dc
Open websocket connections immediately
...
Also made a performance boost to get_model_from_collection_string()
2017-04-27 12:54:16 +02:00
Norman Jäckel
bd68997a5d
Added notify system.
2017-04-27 09:30:02 +02:00
Norman Jäckel
21418f632f
Added support for password validation using Django or custom validators e. g. for minimum password length.
2017-04-13 16:20:38 +02:00
Norman Jäckel
14ec6c0f44
Improved autoupdate on permission change.
2017-03-06 17:42:27 +01:00
FinnStutzenstein
bcc85f9cad
Autoupdate on user permission change.
2017-03-06 15:08:23 +01:00
Norman Jäckel
688b247bcc
Added flag to use Geiss. Small changes for the new getgeiss command. Changed path of collected statics.
2017-03-06 14:39:55 +01:00
Oskar Hahn
e3cc592f70
Added the command getgeiss. Work on start script to use Geiss.
2017-03-06 14:39:26 +01:00
Norman Jäckel
89192236fc
Added support for CamelCase to RESTModelMixin. See #2480 .
2017-02-16 13:31:57 +01:00
Norman Jäckel
1a53c7c3cc
Fixed write settings command for Windows portable version. Fixed #2947 .
2017-02-15 17:07:59 +01:00
Oskar Hahn
26b7f2879c
Let CollectionElement fail early
...
Fixes #2835
Fixes #2904
2017-02-12 14:15:58 +01:00
Emanuel Schütze
1230f4a29a
New full text search on client-side ( Fixed #2865 ).
...
Removed server-side search by whoosh.
2017-02-10 22:52:08 +01:00
Emanuel Schütze
3d60238ce1
Fixed dynamic pdf header/footer and table border ( Fixed #2923 ).
...
Updated pdfmake to 0.1.25.
Fixed some pdf style issues.
Updated gulp watch task.
2017-02-03 11:33:46 +01:00
FinnStutzenstein
d55d374211
Prevent XSS-attacks ( fixes #2871 )
2017-01-30 21:04:41 +01:00
Emanuel Schütze
8234340a0c
Merge pull request #2909 from ostcar/rework_auth
...
Created a function to convert anything possible to a user-collection-element or None
2017-01-26 21:42:40 +01:00
Norman Jäckel
ad937aecb3
Typos and small changes.
2017-01-26 21:35:26 +01:00
Oskar Hahn
5dcfc69ff8
Update settings.py.tpl
...
Also the last line of a dict should end with a ',' or with the closing }
2017-01-26 21:17:36 +01:00
Emanuel Schütze
98e6f703e1
Use custom redis prefix for asgi and cache entries.
...
Note: These prefix have to be unique for each OpenSlides instance!
2017-01-26 21:17:32 +01: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
Norman Jäckel
df60700612
Merge pull request #2882 from normanjaeckel/ChannelSendWait
...
Let channels' send method wait and retry if channel layer is full.
2017-01-25 16:40:43 +01:00
Oskar Hahn
44474049c3
Added docstrings
2017-01-24 15:16:29 +01:00
Oskar Hahn
fccde8de11
Changed the function has_perm to support an user id or None as the first argument.
...
Also fixt the case, where an anonymous user connects to the websocket connection.
Also added a function anonymous_is_enabled() to see, if the anyonmous user is enabled.
Added pip freeze to travis to see installed versions.
2017-01-24 15:16:29 +01:00
Norman Jäckel
f271d8bb47
Fixed error when running manage.py collectstatic. Fixed #2861 .
2017-01-18 15:33:45 +01:00
Norman Jäckel
bb8748a506
Let channels' send method wait and retry if channel layer is full. Fixed #2353 .
2017-01-15 22:01:09 +01:00
FinnStutzenstein
a6d1eeb9c3
Worked on startup process.
...
- fix group view on reload
2017-01-14 21:23:05 +01:00
Oskar Hahn
ebf686ef34
Send all data to the client at startup
2017-01-14 20:42:38 +01:00
Norman Jäckel
acab868c79
Quickfix for #2865 . The problem is not completely solved.
2017-01-14 17:15:30 +01:00
Oskar Hahn
1dc671430a
Fix channels
2017-01-13 20:53:06 +01:00
Oskar Hahn
728576d514
Performance improvements
...
* Add caching support to users/group
* Add a function has_perm that works with the cache.
* Removed our session backend so other session backends (without the database) can be used
2017-01-13 13:37:18 +01:00
Oskar Hahn
97b21427aa
Change the way that missing cache ids are found.
...
This is probalby faster but in any way it maks debugging a lot easier. To go though
a big list in a for-loop is no fun at all.
2017-01-10 20:50:44 +01:00
Emanuel Schütze
41124a53ca
Add new personal settings MOTIONS_ALLOW_AMENDMENTS_OF_AMENDMENTS.
...
Set settings value to False to disable new amendment button in motion detail
template. Default: True.
2017-01-09 14:25:28 +01:00
Emanuel Schütze
f4d468a6f6
Add new personal settings MOTION_IDENTIFIER_WITHOUT_BLANKS.
...
Allow to remove all whitespaces from motion identifier if settings
value is True. Default: False.
Example: "B 1 - Ä 1" -> "B1-Ä1"
2017-01-06 21:38:08 +01:00
Norman Jäckel
ad651300d9
Added settings value MOTION_IDENTIFIER_MIN_DIGITS. Solved #2696 .
2016-12-01 14:41:12 +01:00
Emanuel Schütze
ff359ea629
Improved assignments and motions pdf.
...
Load all users in pdfmake function - not in state resolver of
assignment list.
2016-11-14 17:55:50 +01:00
Oskar Hahn
7281aa57b8
Removed old code needed be the server to serve pdf
2016-11-07 15:54:29 +01:00
Emanuel Schütze
5b544ceed2
Improve importing and sorting of users
...
* Add is_present field for csv import of users.
* Refactor JS functions get_full_name and get_short_name (Fixes #2136 ).
- Show participant number in get_full_name() output.
- Sort users by first or last name.
- Extend config option to sort users.
- Mark unused Python methods get_short_name and get_full_name.
2016-11-07 15:04:30 +01:00
Norman Jäckel
20f8875dcd
Added view to follow recommendations.
...
for all motions of a motion block
2016-10-17 21:02:50 +02:00
Emanuel Schuetze
af10c5aa3d
Fixed typo in projector autoupdate ( Fixes #2492 )
2016-10-07 17:02:55 +02:00
Oskar Hahn
e209dd6dfe
Support to send many objects through the autoupdate system
2016-10-04 18:10:04 +02:00
Oskar Hahn
c4f6477a4d
Merge pull request #2475 from normanjaeckel/FixBroadcast
...
Fixed broadcast. Fixed #2467 .
2016-10-01 15:49:07 +02:00
Norman Jäckel
2e7555e720
Fixed broadcast. Fixed #2467 .
2016-10-01 14:37:04 +02:00
Oskar Hahn
962deca506
Send full_data through the channel.
...
Saves db queries.
2016-10-01 13:57:53 +02:00
Oskar Hahn
97bd526dd7
Fix config cache key
2016-10-01 12:37:43 +02:00
Norman Jäckel
039795beb7
Refactored projector requirements system for autoupdate.
2016-10-01 01:49:17 +02:00
Oskar Hahn
ac9c9f4ec3
More tests, development instructions and small changes.
2016-10-01 01:48:30 +02:00
Norman Jäckel
7cd70a568c
Added docstrings. Small changes.
2016-10-01 01:48:18 +02: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
Emanuel Schuetze
720c7e76a5
Hot fix for broadcast (will improved later).
2016-09-30 21:20:30 +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
Norman Jäckel
dc404d21f6
Implemented need_full_update check. Fixed #2396 .
2016-09-23 14:36:26 +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
d7936c53e3
Updated settings files. Fixed timezone support.
2016-09-16 21:17:00 +02:00
Norman Jäckel
3ea46e9dc7
Fixed autoupdate for deleted instances. Fixed #2329 .
2016-08-29 16:37:53 +02:00
Norman Jäckel
aea602acb9
Merge pull request #2256 from ostcar/fix_2248
...
Only do an autoupdate after an ongoing transaction.
2016-08-16 00:14:15 +02:00
Oskar Hahn
ee2f6b500b
Only do an autoupdate after an ongoing transaction.
...
This needs at least django 1.9
Fixes : #2248
2016-08-13 10:08:10 +02:00
Finn Stutzenstein
12af0256dd
No crash without a browser ( fixes #2249 )
2016-08-09 08:22:04 +02:00