* 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
* 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.
* 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.
Uses django channels instead of tornado for the autoupdate. Therefore
tornado is nolonger a dependency of OpenSlides (but channels).
This uses websockets instead of SockJS.
Use the flag insecure in the start command to provide static files serving.
Use a new session backend that has a ForeignKey to User.
- 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.
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.
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.
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.
Also added the derective osPerms to check if the current user has permissions.
Removed old Django views and urls for user.
Created utils.views.APIView which should be used instead of the AjaxView.
Fixes: #1470Fixes: #1454
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.
Added api for groups.
Refactored serializers now using 'id' instead of 'url'.
Rework of tornado autoupdate functionality.
Implemented extra data in SockJS messages.
* seperate unittests and integration tests
* moved old tests in seperat folder 'old'
* created a testrunner that does not create a testdatabase, if only unittests are run
* wrote some unit- and integration tests as examples
* fixed user.get_short_name() to use the sort order from config
* fixed wrong url_pattern in the user app
- Added missing insertpre plugin and allow <pre> tag with class
attribute. Added font style to base.css.
- Removed unused link to old ckeditor.css (now managed by
django-ckeditor).
- rename static subdirs to css and js
- move global static dir to core/static, changed
- move global templates dir to core/templates
- check comments and code style of all our own CSS and JS files
- minor changes related to the changes of template and static files
Changed api for main menu entries.
Enhanced http error pages using a classed based views.
Moved dashboard and select widgets view from projector to core app.
Also some small clean ups.
It is now possible to define a default state and to submit extra stylefiles and javascript files when defining a widget in an app. This is done by a new metaclass in openslides.utils.dispatch. Also fixed some other tests.
Fixes multiple issues
- Unicode errors when path contained non-ascii characters
- 403 errors when the current working directory was not a parent
directory of the static files
- "API abuse" super() implementation of the get() method was passed a
filesystem path instead of the url-path it was expecting
- The above could also lead to 403 errors on case-insensitive file
systems due to the way the base-class resolved and validated paths
with respect to self.root
When the server is killed there may still be client-sockets connected in
the TIME_WAIT state, causing the bind() call to fail. With the
REUSEADDR option we can reuse the address immediately unless another
process is actually *listening* on the same address.
that we want to reuse the address
Reinsert --no-browser option.
Move some code to utils.main.
Some other small style changes.
Fix merge conflict misstakes.
Change settings behavior. Add tests.
Fix rebase problems.
* Update projector when polls are updated.
* Update projector when assignment candidates are updated
* Update projector when motion submitter are updated
* Fixed the assignment publish poll view
* Added projector.api.register_slide_model
* Set a static projector title
* absolute_urls for the activate links
* update the projector when a slide changes (in save())
* insert the absolute_url template filter
* Preview to slides
* renamed is_active to is_active_slide
* The SlideMixin has to come before the PersonMixin
* Update list of speakers
* Render Countdown via JS
* Reconnect projector after connection lost
* Overlays can allways be active and do not appear in the widget
* Rewrote the clock as overlay
- Added dataTable function for group overview table.
- Added default form help text for groups and an explanation for group overview table.
- Updated translation.
- Translate group name in form.
- Username: FirstName instead of First_Name
- Hide group 'registered' from UserForm
- Linked persons/candidates/submitter etc. to UserView
- Fixed permissions in template
Translation
- Translate group name in participant overview table.
- Move 'status_link' function from participants.js to utils.js for using in VoteCollector plugin.
- Added hook 'post_js' for VoteCollector plugin.
- Fixed poll id in poll_form.
- Improved 'show log' button
- Used welcome_title for default custom slide
- Used bootstraps' fluid grid nesting for responsive layout of widgets.
- Added microphone icon for 'add-me-to-list-of-speakers' button.
- Format motion identifier and title in (motion and account) widgets.
- Format list of speakers (slide, overlay, view, overview)
- Format list of speakers widget and view. Added view to link to current list of speakers (without add to list).
- Fixed motion slide. Made up/down animation faster and the scroll way shorter.
- Fixed icon name.
- Set default context of 'extra_javascript' to use kwargs['context']['extra_javascript'].append('...') without error.
- Fixed translation of motion state.
Moved css code.
- Fixed agenda widget for special slide views (e.g. list of speakers, summary).
- Fixed back to motion(s) link
- Set icon for list of speakers widget.
- Fixed overlay widget layout of form elements.
- Added submenu with other config_pages to version.html.
- Updated completly DE translations, fixed EN strings.
- Coding style: Use correct ugettext and ugettext_lazy strings. Use "as _" for ugettext only.
Updated translation.
- Improved projector template (clock image, fixed facicon, added subtitle for list of speakers)
- Changed permission strings ('oneself'). Added check if group(pk=3) exists.
- Added event name and description to base template. Some minor template layout fixes.
- Use static subtile (no context var). Show last 2 old_speakers for projector.
- Cut old_speakers.
- Projektor template style changes (e.g. overlay list of speakers).
Use html parser 'beautifulsoup' to replace html tags which not supported by reportlab pdf.
'pip install bs4' required.
Fixed nested ol lists and unicode warning.
New requirement: beautifulsoup4
HTML support for reportlab.
Move parse html code into new function. Added missing html support in pdf for motion reason.
Added version number for bleach and beautifulsoup4. Moved to core requirements block.
Added bs4, bleach and html5lib requirements to portable build script. Updated portable readme for 1.4.
Fix formatting (pep8 and otherwise)
Make the CleanHtml a mixin so it can be used easier, add a test case
Mark HTML fields as 'safe' in the template
Update list of allowed HTML tags, take special care for reportlab
Add heading tags to white list
Rename get_clean_html to get_clean_html_fields
Normal delegates can not submit a new motion when this is set to true. Inserted also a new template filter to relate to config variables in if-clauses.
(Note: New dependency! Run 'pip install qrcode')
Fixed pep8 issues. Create qr-code image for system url one time only.
New feature: qr-code for system url on participants password pdf.
(Note: New dependency! Run 'pip install qrcode')
Fixed pep8 issues. Create qr-code image for system url one time only.
Print qrcode image from StringIO stream.
Adapted table stylesheet for better integration of reportlab's Image object.
Fixed pep8 issue.
Made qrcode import as optional feature. Fixed pep8 issue.