Commit Graph

667 Commits

Author SHA1 Message Date
FinnStutzenstein
5ad94cb2f4 Handles 'change id too high' and generic websocket error message format 2019-05-15 14:25:54 +02:00
FinnStutzenstein
665426e954 Remove ChatMessage 2019-05-15 13:44:45 +02:00
FinnStutzenstein
f9bac798aa Rename the manage restriction field
Renamed 'managers_only' to 'motions.can_maange' to adapt the (new) behavior of #4638. Closes #4643.
2019-05-14 16:02:59 +02:00
FinnStutzenstein
5e13299ae3 Request for settings a permission in a group (closes #4698) 2019-05-13 10:17:24 +02:00
FinnStutzenstein
635fd3fad5 Fix doulbe create requests for personal notes.
When this is done, the clients needs handle this error @tsiegleauq
2019-05-10 08:18:28 +02:00
FinnStutzenstein
76880100f5 Sort motions in categories 2019-04-30 14:14:41 +02:00
FinnStutzenstein
44b683e361 Add attachments to assignments 2019-04-29 10:31:28 +02:00
FinnStutzenstein
5a1f638f8d Protect element fields from the projector model. Fixes creation of
projectors.
2019-04-09 17:15:16 +02:00
Norman Jäckel
6f24b7c169 Refactored state access level by renaming state field to restriction. 2019-04-08 14:56:14 +02:00
Oskar Hahn
41aed15426 Make the projector-system explicit async.
Also lock config.build_key_to_id
2019-04-06 06:40:15 +02:00
FinnStutzenstein
4308de3164 Remove motion logs 2019-04-01 09:04:22 +02:00
Norman Jäckel
35198f6e64 Fixed commands. 2019-03-20 08:50:57 +01:00
FinnStutzenstein
eb4537c1bf rework login system (again) 2019-03-11 13:45:17 +01:00
Tobias Hößl
6b685924d9 Bugfix: Amendment statuses 2019-03-09 22:48:21 +01:00
FinnStutzenstein
ecdfdf4b87 Resort python import for isort 4.3.11 (fixes #4467)
One dot imports are again behind two dot imports since this new isort
release.
2019-03-06 14:54:03 +01:00
Oskar Hahn
dd4754d045 Disable the future-lock when updating the restircted data cache
Before this commit, there where two different locks when updating the restricted
data cache. A future lock, what is faster but only works in the same thread. The
other lock is in redis, it is not so fast, but also works in many threads.

The future lock was buggy, because on a second call of update_restricted_data
the same future was reused. So on the second run, the future was already done.

I don't see any way to delete. The last client would have to delete it, but there
is no way to find out which client the last one is.
2019-03-04 21:37:00 +01:00
Norman Jäckel
9eec2404dd Fixed on_delete field attr. Fixed #4405 2019-03-01 20:53:01 +01:00
FinnStutzenstein
70d7f49afe Fixed deletion of agenda items.
Introduced by #4352
2019-02-25 11:29:01 +01:00
FinnStutzenstein
63f1802d7a (Current) list of speaker slide 2019-02-22 10:40:28 +01:00
FinnStutzenstein
3f58538afb Agenda item list slide 2019-02-21 21:56:40 +01:00
FinnStutzenstein
7ef36e93c6 List of speakers slide 2019-02-21 12:34:41 +01:00
Tobias Hößl
7b2e116f51 Change reco default value, Slide test cases 2019-02-15 15:15:58 +01:00
Jochen Saalfeld
114c8bfa3c
Merge pull request #4184 from ostcar/fix_gunicorn
Opens the websocket connection before closing it
2019-02-05 08:34:52 +01:00
Norman Jäckel
c355326466 Added new flag to motion state to control access for different users. 2019-02-01 15:42:02 +01:00
Oskar Hahn
1111a8074e fix restricted_data_cache for elements that exists, but a user is not allowed to see them 2019-02-01 08:26:34 +01:00
Emanuel Schütze
42f8b74d8e Projector templates
- Projector base template
- Projection button
- projection dialog
- motion slide (template and motions/projector.py)
- user slide (template and users/projector.py)
- motion and user list view with projector column permission check.
2019-01-29 16:12:19 +01:00
FinnStutzenstein
965d23be50 more work on projector, countdowns, clos
- splitted clos-slide and clos-overlay.
- Synchronize to server, more little changes
2019-01-29 16:10:21 +01:00
Oskar Hahn
1a709a59a9 Projector V
* Changed wording: element is one element on the projector. A slide is a functoin to render one element
* Use AllData as first argument all the time
* Render username on server
* Add exceptions for erros on projector
* Fix motion recommendation
* Only show state extension, if it is allowed by the state
* Add motion_change_recommendations to motion full_data
2019-01-28 23:18:27 +01:00
Oskar Hahn
014b145b0f Opens the websocket connection before closing it
Fixes #4009
2019-01-25 16:33:45 +01:00
Oskar Hahn
cca28a990a New projector IV
* Motion Slide
2019-01-20 13:35:50 +01:00
Oskar Hahn
6b73c5bf1a activate start command 2019-01-20 11:24:42 +01:00
Oskar Hahn
df85e01b16
Merge pull request #4145 from ostcar/logged_in_users
logged in users
2019-01-19 18:00:47 +01:00
Oskar Hahn
5ca2012c44 logged in users 2019-01-19 17:50:18 +01:00
Oskar Hahn
11ba7b9841 Autoupdate on element deletion
Make sure, that a related element gets an autoupdate, when the main object is deleted
2019-01-19 14:46:59 +01:00
Oskar Hahn
b4c3ffe01f New projector III
* Add a new view `project` to set the projector elements-fields
2019-01-19 10:47:11 +01:00
Oskar Hahn
c37bf0fb4f New Projector
* Change Projector model
* Remove old http requests
* Remove old config values
* Remove uuid from config field
* Remove projector broadcast
* Remove projector blank
* Fix serializer
2019-01-19 08:19:40 +01:00
Norman Jäckel
85d9629776 Added new permissions to create new amendments. 2019-01-18 22:06:15 +01:00
Finn Stutzenstein
8bd24d690d
Merge pull request #4118 from FinnStutzenstein/notify
Make OS3 notify ready
2019-01-18 17:55:24 +01:00
Oskar Hahn
b329115007 use f-string syntax for strings 2019-01-18 17:37:36 +01:00
FinnStutzenstein
47a09e4bce Make OS3 notify ready 2019-01-18 17:03:09 +01:00
Oskar Hahn
5127d659db Add the projector config into the data send via websocket 2019-01-18 15:38:20 +01:00
Oskar Hahn
a0f554674b New projector system. Add first slides 2019-01-12 21:21:43 +01:00
Emanuel Schütze
1ff84c1ae1 UI improvements 2019-01-11 16:51:43 +01:00
Oskar Hahn
eddbd86d3a Run black 2019-01-08 21:51:52 +01:00
Emanuel Schütze
b900dfcba3
Merge pull request #4050 from FinnStutzenstein/remove_action_word
removed action word from states
2018-12-13 10:05:11 +01:00
Norman Jäckel
d7231e60f2 Fixed Test 2018-12-07 21:06:30 +01:00
FinnStutzenstein
2e7bbcc981 Manage submitters 2018-12-06 15:54:02 +01:00
FinnStutzenstein
362e2f154f removed action word from states 2018-12-06 11:47:33 +01:00
Norman Jäckel
060856628b OpenSlides history mode.
Also containing auth check and viewpoint to clear history.
2018-11-30 09:51:10 +01:00
Oskar Hahn
67d933a206 fix douple elements 2018-11-18 07:57:44 +01:00
Oskar Hahn
8ee9fb1742 Set websocket url to /ws
The routing is desided by protocol
2018-11-09 09:15:59 +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
FinnStutzenstein
e59497bc54
Setting change recommendations internal 2018-10-29 20:33:40 +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
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
FinnStutzenstein
f7d392f1fc New motion features
- Added weight and sort_parent fields to the motion model
- Added motion sort view (adapted from agenda)
- Added statute-paragraph model and tests for it
- Added statute_paragraph foreign key to the motion model
- Created migrations for sorting and statute-paragraph
2018-10-12 07:15:58 +02:00
Oskar Hahn
9af6bf1606 ensures test on startup 2018-09-23 16:57:49 +02:00
FinnStutzenstein
1ee76de417 Handling of titles, projection and content objects in items
Restructure the titles for motion, motion-block, assignment and topic.
Less possibilities for more clear code. Added mote base models enabling
functionalities of projection and being a content object for items
2018-09-14 08:36:35 +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
Finn Stutzenstein
befbaba525
Merge pull request #3853 from FinnStutzenstein/workflowId
Expose the workflow id during motion serialization
2018-09-07 11:12:07 +02:00
Jochen Saalfeld
b5366ea90f
fixing pytest version and continue if db not available 2018-09-07 10:39:16 +02:00
FinnStutzenstein
9226874010 Expose the workflow id during motion serialization 2018-09-06 13:39:16 +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
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
FinnStutzenstein
9c1290ee0b Do not allow changing a workflow's first state (closes #3778) 2018-08-23 09:09:18 +02:00
Oskar Hahn
e5dd857e87 New url schema 2018-08-22 22:05:06 +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
1a17862d6b New item type internal.
The old hidden type was used as internal, so everything is changed to
not be shown if the item is internal. hidden is "new", and actually
behaves as hidden now.
2018-08-16 15:28:30 +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
26d168110f make the privacy policy available for non logged in users (closes #3757) 2018-06-25 17:28:24 +02:00
Tobias Hößl
d9c08b65b7 New Feature: Paragraph based amendments
With new amendment list table:
- Removed title from table, leadmotion can be selected now
- rename the new list, added the export dialog, multiselect actions and supporter badge in the amendment list view
- Moved collission detection to own factory, compute collissions in the amendment list view
- Delegates can now enter paragraph based amendments
- new amendment list as pdf/csv export
- improved caching of amendments
- Parse styles in headings and removed all double-quotes
- Performance improvements:
  * Removed ng-mouseover/mouseleave actions in amendment-list
  * disable collission detection in amendment list view.
  * Improved state/recommendation dropdown in amendment list.
2018-06-14 11:01:03 +02:00
FinnStutzenstein
b0a42e19e1 Sort submitters 2018-06-13 14:16:25 +02:00
FinnStutzenstein
fa5b81dad8 Protect numbering of the agenda 2018-04-13 10:09:22 +02:00
Tobias Hößl
76fd094ddc OL Offsets - fixes #3643 2018-03-15 12:38:18 +01:00
Emanuel Schütze
4e1c7b7497 New admin user group 2018-03-06 11:21:00 +01:00
FinnStutzenstein
ca8ee3edd6 Splitup comment see and manage permissions for motion comments 2018-02-16 14:09:32 +01:00
Emanuel Schütze
8042beda60
Merge pull request #3577 from CatoTH/Issue3563-Escaping-Ampersands
Escape Ampersands - fixes #3563
2018-02-15 08:23:54 +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
Tobias Hößl
a345815b57 Escape Ampersands - fixes #3563 2018-02-13 16:43:07 +01:00
FinnStutzenstein
5fc7dce567 Mark speakers 2018-02-13 10:32:31 +01:00
FinnStutzenstein
0b04b7478f Fixed email translations, motion sorting, undefined in DOCX, reduced motion search 2018-02-02 12:48:01 +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
1527cc69dd Cleaned up config app. Removed OPTIONS request. Fixed #3531. 2018-01-26 13:58:21 +01:00
Norman Jäckel
d381ca36dd Added autoupdate bundle middleware. 2018-01-25 23:09:28 +01:00
Tobias Hößl
c7729a6619 Diff-Bugfix: Whitespace was inserted after <br> 2018-01-22 09:12:36 +01:00
FinnStutzenstein
5e089bfcdc Preparations for the SAML plugin; Fixed caching of main views. 2018-01-21 11:54:01 +01:00
Emanuel Schütze
2f7bc4227a
Merge pull request #3546 from CatoTH/Bugfix-Diff-Bugfix-Moving-Words
Fixes an edge case in the diff
2018-01-21 10:30:44 +01:00
Tobias Hößl
e4da7905ca Fixes an edge case in the diff 2018-01-21 10:21:22 +01:00
Emanuel Schütze
3ac072d1a2
Merge pull request #3534 from normanjaeckel/BetterProjectorPrioritization
Split send_data channel into send_data_projector and send_data_site f…
2018-01-21 09:23:19 +01:00
Emanuel Schütze
60fa629857 Set new default for projector resolution (1220x915, Fixed #2549). 2018-01-20 21:20:52 +01:00
Tobias Hößl
b574502a37 Bugfix: Diff and Line breaks at dashes 2018-01-20 11:48:46 +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
FinnStutzenstein
5cf82e5921 fixed ValidationError 2018-01-08 10:41:09 +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
FinnStutzenstein
a998657923 extended the legal notice page (fixes #3504) 2017-12-05 07:55:12 +01:00
Tobias Hößl
e18f22f200 Break lines in nodes that have already been parsed 2017-11-02 09:16:36 +01:00
Tobias Hößl
6891471c45 Better handling of inserted paragraphs 2017-11-01 10:29:18 +01:00
Emanuel Schütze
4ff7d0b7dc Merge pull request #3450 from CatoTH/Bugfix-Disable-Change-Ratio
Disable change ratio detection / Fix marking unchanged dangling line as changed
2017-10-16 13:05:35 +02:00
Tobias Hößl
e651c124e4 Disable change ratio detection / Fix for marking unchanged line as changed 2017-10-16 12:27:44 +02:00
Emanuel Schütze
17959bd9c5 Motion template improvements (Fixed #3303)
- Sort categories drop downs by config value (name or prefix) (fixed #3303).
- Show comment fiels in pdf without "Comment" as prefix.
- Improved heading style in web and pdf.
- Added motion block to motion pdf.
2017-10-16 09:35:06 +02:00
Tobias Hößl
a09a12c55c Diff: use comma as a word separator 2017-10-11 22:15:12 +02:00
FinnStutzenstein
178948b269 Index and Webclient View caching 2017-09-27 12:50:59 +02:00
FinnStutzenstein
aa13e5ddd0 Fixing special comments fields, reconnect timeout, minor things. 2017-09-22 13:45:52 +02:00
Tobias Hößl
ee37cfed9c Line break algorithm should not be distracted by newline characters
- Cancel out newlines inserted when inline-editing motions
- Bugfix for newlines after BRs
2017-09-21 16:24:54 +02:00
Emanuel Schütze
9f6deb89c1 Fixed karma diff test of #3408. 2017-09-18 12:02:09 +02:00
Emanuel Schütze
e313731c9e Merge pull request #3408 from CatoTH/Issue3401-Inline-Diff-When-First-Word-Changed
Inline-Diff when the first word in a paragraph is replaced - fixes #3401
2017-09-18 11:15:52 +02:00
Tobias Hößl
8650bc0401 Inline-Diff works when the first word in a paragraph is being replaced - fixes #3401 2017-09-18 11:05:00 +02:00
Tobias Hößl
da8f825d42 Sort attributes before applying the diff - fixes #3402 2017-09-16 14:06:12 +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
Emanuel Schütze
2c4a1d5a6c Merge pull request #3376 from FinnStutzenstein/MotionCommentsRework
Rework on motion comments.
2017-09-15 10:59:02 +02:00
FinnStutzenstein
16abfd0dbf Autoupdates on user login (fixes #3395, fixes #3392) 2017-09-15 10:40:04 +02:00
FinnStutzenstein
288a706d01 Rework on motion comments (fixes #3350). 2017-09-12 14:58:43 +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
24b07da7b4 Fix PersonalNoteAccessPermissions for anonymous user
fixes: #3377
2017-08-31 22:00:22 +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
FinnStutzenstein
727d1341e8 some changes in the example data plugin 2017-08-14 09:56:48 +02:00
Tobias Hößl
7b62c60350 Marks split list items with CSS-classes and hides the bullet points - fixes #3269 2017-07-27 14:42:51 +02:00
Norman Jäckel
77a321894b Merge pull request #3306 from FinnStutzenstein/Issue2862
Remove OPTION request to query permissions (fixes #2862)
2017-07-05 21:26:08 +02:00
Tobias Hößl
65d5bbccd6 Prevent colliding change recommendations - fixes #3298 2017-06-29 18:03:58 +02:00
FinnStutzenstein
90af3e6d1d remove OPTION request to query permissions (fixes #2862) 2017-06-29 13:25:52 +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
Norman Jäckel
260cd5cd16 Merge pull request #3290 from FinnStutzenstein/Issue1533-neu
Massimport for users
2017-06-12 22:07:32 +02:00
FinnStutzenstein
433cdc42fa Massimport for users 2017-06-08 14:40:29 +02:00
Emanuel Schütze
fb56215a26 Merge pull request #3233 from normanjaeckel/FixFreeUserAgenda
Fixes autoupdate bug for a user without user.can_see_name permission …
2017-06-07 21:00:12 +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