- Fixes an error where the extension label could open automatically due to state changes by others.
- Changes the quick-navigation div to a host-listener
- Changes the quick-navigation keys to meta+alt+arrow to shift+alt+arrow, since Firefox does not recognize meta
- Removed the ID from all os-sort-lists and moves it into the extra controls of category-motion-sort-list
Enhances the motion extension field to make it even more easily
accessible.
Also allows to quickly jump between motions using:
Meta + Alt(left) + ArrowKeyLeft/Right
Updates to angular 8 and updates all used components
- removed wrapper class for ngx/pwa LocalStorrace
- removed database lock service due to bugs
- tried to work around a cycle of dependancies
- changed some structure to be more close to default angular
- removed legacy angular packages
- removed date-picker since it was not currently used and
is not compatible anymore
- upgrade tinyMCE
- Enhance the behavior on small screens and resolutions
- Only scroll content
- fixes an issue where choices could not be made if no content option where available
Supports properties like motion submitter and more.
Does at the moment "not" support tunneled properties, i.e filters
that need to go over a repository
(i.w workflow-state-label)
Fixes some small issues
- Enabled Word Wrapping
- Fixed an error where the projection dialog did not apear in the agenda
- Better promise handling to decide between motion table and tiles
- Fixed a projector permission bug
- disabled mat-row stagger animation
- Exchanged ngrid-grey theme with OpenSlides mat-card background. Looks cleaner
- Adds an icon with tooltip if a user is inactive to the user list
- always show the 'present'-column, even though the user is not active
- add a info icon if the user has a "comment". The content of the content
is displayed in the tooltip
Replaces most mat-tables with tables using the NGrid library, supporting
extremly performant virtual scrolling.
The ListViewBaseComponent have been extremly simplified.
All list-view code is now mich shorter and way less repitative
The group list and the workflow list have not been altered.
**Works:**
- Fast virtual Scrolling without pagination
- Click Filter
- Search Filter
- Sorting
- Export filtered values (using click filters)
- Export sorted values in correct order
- Right-Click-new-tab
- Hiding/showing columns by permission and screen size
- Multi select
- Auto Updates in MultiSelectMode keep the correct items selected
- OsHeadBar shows the correct amount of data
- Restore scroll position after navigation
- Shared-Table Component
- Clean-Up base-list-view
- Motion List
- Motion Block List
- Motion Block Detail
- User List
- Agnnda List
- Assignment List
- MediaFile List
- Tag List
**TODO:**
- Formulate filter predicates
- LOS Badge autoupdate (change detection)
- Better ellipses in lists
- Horrizontal Scrolling, if the screen get's too small.
- Issues in the change detection
- Some Layouting
**BUG:**
- Using the seach filter prevents the sorting from working.
- NGrid currently has no way to get the filtered list
using search filter. Thus, search-filtered list cannot
be exported.
- An icon followed by text (or something else) can replaced by this new component, to verify a unified size and layout.
- Replaces also existing components with this new one.
- Adds subscriptions to the subscriptions-array from parent to clear them, after destroying the view
- Removes filter and sort service, if the selected view is the tile-view
Adds a second variable to hold the current selected view by user
- Increases the size of the badge
Adds amendments to motion pdf summary box - only if the state of them accepts the merge into the parent motion.
Adds a new flatMap function to array.prototype (should be safe to use until
Array.flatMap made it into official JS. I expect it in ES 2019.
Refactors some PDF and ChangeReco / Amendment related code
Server:
- ListOfSpeakers (LOS) is now a speprate model, containing of an id,
speakers, closed and a content_object.
- Moved all speaker related views from ItemViewSet to the new
ListOfSpeakersViewSet.
- Make Mixins for content objects of items and lists of speakers.
- Migrations: Move the lists of speakers from items to the LOS model.
Client:
- Removed the speaker repo and moved functionality to the new
ListOfSpeakersRepositoryService.
- Splitted base classes for agenda item content objects to items and
LOS.
- CurrentAgendaItemService -> CurrentListOfSpeakersSerivce
- Cleaned up the list of speakers component.
More observable based, more scaleable filtering
based on an old branch of @FinnStutzenstein.
cleans some functions and provides some differend features.
Assigns the weight in the preorder traversal of the tree. Now one without every
object (e.g. missing motions/items) still have the correct sorting. Intorduces
the level attribute of items giving the amount of parents in the agenda. This
allows to reduce complexits in the client.
- If the previously selected theme is not available the default OpenSlides theme will be displayed.
- Before the current selected theme was loaded, no theme is displayed.
Fixes an error where the auth guard had race conditions
with the OpenSlides bootup routine (kinda hacky tbh)
Fixes false redirects in the Auth.Service
Also adjustes the file uploader to be a little more
usable.
- Added filtering by visibility, like internal, public or hidden items
- Added option to collapse or expand all nodes
- Added also style for the dark theme
- If a new user is created and neither the username, first name nor last name is set, a hint is displayed and the user is still in the creating mode.
- Also prevents that the client queries a user that does not exist.
- moved some components
- added consistend namin scheme: (View)Assignment, (View)AssignmentPoll
(View)AssignmentPollOption and (View)AssignmentRelatedUser.
- Added precisionPipe, which needs to be added everywhere.
- Cleaned up converting deciml fields (as strings in the REST API) to
floats
- The repository creates the View* structure and enabled user updates.
Calculates the direction of the moving.
Finishes the moving of nodes in same level
Adds some style
Sets the padding dynamically
Adds placeholder depends on the horizontal movement
Set the placeholder at the correct place, so the user can see, where he will drop the moved node
Finishes moving of nodes
- Old parents change their option to expand.
- New parents change their option to expand.
- If the user moves a node between nodes with a higher level, the node will be moved to the next index with same or lower level.
Fixes the visibility of moved node
- If the new parent is not visible, the moved node will not be seen.
If the user moves an expanded node, the new parent should expanded, too, if it's not already.
Sending successfully data to the server
- Sorting the items
Handles moving nodes between parent and children
- If the user moves a node between a parent and its children, the children will be relinked to the moved node as their new parent.
Replaces the old `sorting-tree` to a new one
- The new `sorted-tree` replaces the old `sorting-tree`.
- The old package `angular-tree-component` was removed.
- The user will only see the buttons to save or cancel his changes, if he made changes.
- The buttons, that do not work currently, were removed.
Adds a guard to check if the user made changes.
- If the user made changes but he has not saved them, then there is a dialog that will prompt to ask for confirmation.
Before cancelling the changes the user has to confirm this.
Add an getViewModelListBehaviorSubject that simplifies
how to get most model lists in the view
unified update, delete and create methods and removed redundant code from the repos
(where it was possible)
cleaned up the motion detail to not directly use the DataStore
Add information about the "main model" to all ViewModels, to call the
correct constructor in the BaseRepo
Sorts the Workflow table to be more predictable
Adds new shared SCSS table rules.
Adds a default with as 100% (there have never been half tables)
Overwrites the rules for sticky tables
Adds a new template to user detail, to show user information in multiple
lines
Also adds a new feature to the headbar. Long titles (over title slot) will
break using ellipsis
Fixes an issue where users without manage rights
were able to use the drag and drop feature of the
list of speakers.
Also hides "modified final version" prints without
sufficient permissions.
Alters OSPerms to support "and" operators,
so "perm" and "other condition" is now possible
Seperates the previously large motion module in various smaller
and very small feature modules.
Motion Detail, and all direct dependancies to Motion Detail
is now an own module.
This significantly increases the response time of openslides 3
Uses css-variabled and dom manipulation to change
the projectors h1 color on the fly.
Will have issues with multiple projectors nested in the same view
- use always color black on projector, also in dark mode
- show border for projector preview
- Fix projector logo margin by using img instead of os-logo
- Use also 'username' in invitation email subject
Fixes an error where the back arrow in the motion block detail was missing
Adds a prompt before deletion of Change Recommendation in motion details
Adds timestamp localisation for history mode
- Added a custom palette (`#c31c23`)
- Set the new primary palette for dark theme
Changes some styles depending on theme
- Removed hard-coded colors
- Set color depending on theme
Prettified
Refactors the media file upload component into
a shared component to be used in both normal pages
and dialogs.
A dialog was addes into the media file "edit" view
to upload and set attachments on the fly.
- Add projector logo/headerimage
- Fixed opening multiselect action menu for users.
- Used defined toolbar color for multiselect mode.
- (server) Added check for 'request.data._mutable = True' to edit user
profile as normal user.
Read projector settings from the config
Preamble, styling fixes
Styling fixes
Show amendments inside of the motion view
Amendment view
Projector and statute paragraphs
Bugfix: Imports
Fixes#3921
Added a new set of icons and removed the old one. The new one can used just like the old one.
Changed old improper icons to new ones
- The 'save_alt'-icons are replaced by 'cloud_upload'
- The icon in the navigation for assignments is replaced by 'how_to_vote'
- The drag&drop icon 'unfold_more' is replaced by 'drag_indicator'
Alters motion detail to show amendments and to a given motion
and original motions to a given amendment.
Changes the motion PDF to show amendments.
Fixes a bug with the projection indicator
- 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.
Fixed the non-autofocus search-input-element on the search-page.
Added directive 'osAutofocus' to the input-element, so it will be autofocussed when the user enters the search-component.
Resolved answers of pull-request
- Added `osAutofocus` to the `os-sort-filter-bar`
Alters the user detail view and the list of speakers to
support the gender field.
Default selection of genders was set to "Female", "Male"
and "Diverse".
Adding genders to users is completely optional
- "no workflows set" removed
- motion block filter hides if there is no motion block
- inserted the group filter
- fixed display of agenda filter menu
- show plural if multiple filters are selected, show filtered amount
- recommendation, done/not done status filter
- active filter count and clearing option
- number of current items to the left
Adds information about duration, visibility and comment to agenda list view
Allows channg these information over a dialog component on the
information column
Add view for full history and History Repom TimeTravelService
Add function time travel routine
Updated the HTTP Service, fixed usage of storage, OSStatus Service, fixed loading of the history data
- 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
Whats still missing, but has not a high priority:
- DateTimePicker. Entering dates through the popup works (but only with
a hack in the config-field.component update() method). Displaying values
from the server does not work. Also the localisation is missing. See
attempts to fix it in the sheared module.
- Errors, if the server cannot be reached. Should be solved in another
PR fixing the datasendservice and make generic error messages.
- Custom translations are missing
Used for internal apps as well as for plugins. The pluginpart is
currently missing, in fact that the main OpenSlides part is more
important. Apps can give their models and mainmenu entries.
Routes are not enabled, because the routes have to be static for webpack
to build the bundles. If we want to keep lazy loading, I see no
possibility to encapsulate the routes from the site-routing module.
fix disappearing submitters (hopefully)
- replaced "motion from form values" function with deserialize
- fix some typos
- make id id again
null, in contrast to undefined, will be send to the server...
Better typing and changed the create/update signatures in BaseViewModel
- use object as default type for BaseModel.
- use partial objects for updating
- Displayable should not have an id. Moved this into own interface
Identifiable and make the id in the BaseViewMotion abstract.
- create only takes a BaseModel. A ViewModel should not exists so far.
- Updated the update and create method for motions.
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
Also making sure that every BaseModel implements onString to be
displayable by a Selector.
And adding the new search-value-selector in the motion-detail-view
Adds a repository to remove the logic in the motion domain object
The repository will add a new model layer between the components
and the domain objects
implicitly add a new buttion into the motion detail view
Save those values in a new service, that will also watch for changes in
config variables. UI is not good; this can be done later
Share legal notice and privacy policy
Created some containers for them
- 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.