Commit Graph

362 Commits

Author SHA1 Message Date
Sean Engelhardt
bc0fea3310 Update to Angular 8.0.6
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
2019-07-04 14:20:57 +02:00
Sean Engelhardt
1e7a5b33d7 Enhance Choice service.
- 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
2019-06-28 11:44:16 +02:00
Sean Engelhardt
b4cbf5646f Add detailed filter information
Adds detailed filter information into the table custom head bar.
Filters are scroll-able horizontally
2019-06-27 16:38:21 +02:00
Sean Engelhardt
9d37989ec7 Makes navigation from Legal notice and pp always possible.
Tracks the last history and evaluates if the last visited URL is safe to navigate to

also increases the version of djangorestframework.

fixes #4705
2019-06-25 10:45:24 +02:00
Sean Engelhardt
2758441552 Adds custom filter predicates for native object data
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
2019-06-24 16:30:27 +02:00
Emanuel Schütze
3d573441ca
Merge pull request #4759 from FinnStutzenstein/optionalAgendaItem
Optional agenda items
2019-06-24 12:37:29 +02:00
Sean Engelhardt
afda3e03ec Add Filter predicate for ID
All List View Tables can get custom filter predicates.
Per default, they now filter their primitive content
as well as their ID
2019-06-19 11:38:14 +02:00
Emanuel Schütze
c67ad7f41d
Merge pull request #4795 from tsiegleauq/vlist-refinements
Refine Virtual Scrolling Tables
2019-06-19 08:10:56 +02:00
Sean Engelhardt
6cc8c8b531 Refine Virtual Scrolling Tables
- 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
2019-06-18 23:46:10 +02:00
Emanuel Schütze
ae76a1991d
Merge pull request #4788 from GabrielInTheWorld/aNameForThisBranch
Fixes correct displaying for 'Active filters'
2019-06-18 19:38:45 +02:00
Emanuel Schütze
7cf604918f
Merge pull request #4784 from tsiegleauq/user-list-toggle
Add more user list options
2019-06-17 17:26:29 +02:00
Emanuel Schütze
578efe3345
Merge pull request #4791 from GabrielInTheWorld/tile-enhances
Sorts categories in tile-view by prefix
2019-06-17 17:17:38 +02:00
GabrielMeyer
c136a1b691 Sorts categories in tile-view by prefix 2019-06-17 17:03:43 +02:00
GabrielMeyer
086571d7fe Fixes correct displaying for 'Active filters' 2019-06-17 14:57:26 +02:00
Sean Engelhardt
bb443fd4af Add more user list options
- 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
2019-06-17 12:50:54 +02:00
FinnStutzenstein
8ff0f73477 Optional agenda items 2019-06-17 12:38:17 +02:00
Sean Engelhardt
161873b68c Speeds up the animations.
Removed the on-transition-fade class
The current way to trigger animation seemed not reliable enough.
2019-06-14 15:19:52 +02:00
Sean Engelhardt
15e9ea898b Add virtual scrolling to tables
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.
2019-06-14 11:18:54 +02:00
Emanuel Schütze
face97a2a2
Merge pull request #4767 from normanjaeckel/HistoryRebuild
Refactored OpenSlides history (HistoryInformation is not a root rest …
2019-06-13 11:50:14 +02:00
FinnStutzenstein
ff98ee1b96 Refactured client 2019-06-13 10:09:08 +02:00
GabrielMeyer
5e3f710e4d Adds a new component for icons
- 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.
2019-06-13 08:23:44 +02:00
FinnStutzenstein
bf9973a4a7 Subcategories 2019-06-12 14:37:19 +02:00
Emanuel Schütze
7fac04afa7 Updated Translations 2019-06-05 17:56:18 +02:00
Emanuel Schütze
b5287a4e57
Merge pull request #4656 from MaximilianKrambach/callListBulk
fixing bulk sort trees from list view
2019-06-05 16:35:41 +02:00
GabrielMeyer
9e4b90461d Enhances the tile view
- 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
2019-06-05 15:45:18 +02:00
Maximilian Krambach
5f424aa7c1 tree sorting: fix sorting multiple items 2019-06-04 17:22:50 +02:00
Maximilian Krambach
37f0baf165 sorting tree view filters
- callList
 - refactored agendaSort
2019-06-04 17:21:38 +02:00
Emanuel Schütze
3ea864c3f4
Merge pull request #4750 from MaximilianKrambach/multiMoveInCategory
Multi move motions in category
2019-06-04 17:10:52 +02:00
Emanuel Schütze
eded9acc60
Merge pull request #4746 from GabrielInTheWorld/fix-hammer
Add amendments to Motion-PDF-Summary-Box
2019-06-04 15:14:31 +02:00
Maximilian Krambach
6eeab5fc1e Multi move motions in category
- if there is a multiselection, a 'move to' button will be active
- TODO: better position/layout  for that button and dialogue
2019-06-03 09:29:29 +02:00
Emanuel Schütze
708de917e1 Updated translations 2019-05-31 11:09:31 +02:00
Sean Engelhardt
bbe966efa9 Add amendments to Motion-PDF-Summary-Box
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
2019-05-29 14:36:19 +02:00
FinnStutzenstein
658b1a360d Internal flag for motion blocks
- ServerSide
- Adds the 'internal'-flag to the edit view of motion blocks
2019-05-28 15:24:22 +02:00
Emanuel Schütze
8bf1dad10e
Merge pull request #4708 from GabrielInTheWorld/tile-layout
Adds a new view with tiles to the motion-list
2019-05-27 22:47:24 +02:00
Emanuel Schütze
484d9b23e0
Merge pull request #4742 from FinnStutzenstein/autonomicSlides
Partially scale and scroll the motion slide
2019-05-27 22:43:40 +02:00
Emanuel Schütze
39d77dac29
Merge pull request #4391 from boehlke/mediafiles-projector
Show PDF, PNG and JPEG files in projector
2019-05-27 22:38:16 +02:00
FinnStutzenstein
1f7ace6b4b Partially scale and scroll the motion slide 2019-05-27 22:28:18 +02:00
Emanuel Schütze
2cfff9e1b9 Template rework and fullscreen mode 2019-05-27 22:15:16 +02:00
Maximilian Krambach
bd27951648 drag/Drop multiselect 2019-05-27 17:07:12 +02:00
GabrielMeyer
39d891f851 Adds a new view with tiles to the motion-list
- New components 'Tile' and 'GridLayout'
- Adds a grid-layout to the view
- The grid-layout can have an optional title section
2019-05-27 16:17:23 +02:00
FinnStutzenstein
9f12763f8b Split AgendaItem and ListOfSpeakers
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.
2019-05-24 08:21:59 +02:00
Emanuel Schütze
31274873f1
Merge pull request #4719 from FinnStutzenstein/chyronColor
Added custom color for the projector chyron and reset buttons for colors
2019-05-20 22:12:32 +02:00
FinnStutzenstein
e267279f60 Added custom color for the projector chyron and reset buttons for colors 2019-05-20 21:50:03 +02:00
Maximilian Krambach
014701442c refactor poll calculations 2019-05-20 11:31:27 +02:00
Sean Engelhardt
850fcbe243 Rework sort and filter
More observable based, more scaleable filtering
based on an old branch of @FinnStutzenstein.

cleans some functions and provides some differend features.
2019-05-17 13:03:48 +02:00
FinnStutzenstein
10c329da8d fix tree sorting
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.
2019-05-15 14:14:32 +02:00
Maximilian Krambach
71e2ef65fc fix sorting tree condition 2019-05-14 15:11:25 +02:00
Emanuel Schütze
7792c47656 Fixed projector logo 2019-05-11 09:40:14 +02:00
Emanuel Schütze
51b4b6aba6
Merge pull request #4578 from GabrielInTheWorld/theming
Implements a mechanism for a fallback theme
2019-05-07 21:13:55 +02:00
GabrielMeyer
376f4e2a31 Implements a mechanism for a fallback theme
- 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.
2019-05-07 17:32:28 +02:00
Maximilian Krambach
f00303d753 include global abstain/no option
election polls with 'one vote per candidate' should have a
 global no/abstain option
2019-05-02 10:51:00 +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
Emanuel Schütze
3584dd5646
Merge pull request #4627 from tsiegleauq/virtual-scroll-statute
Add virtual scrolling to statute list
2019-04-28 13:57:30 +02:00
Maximilian Krambach
d1eed23158 last_email_sent display and resend email 2019-04-27 21:16:28 +02:00
Sean Engelhardt
afc6bb629e Fix layout of search value selector 2019-04-26 12:41:55 +02:00
Emanuel Schütze
6800f99ef0
Merge pull request #4624 from tsiegleauq/angular-7.2.14
Migrate to Angular version 7.2.14
2019-04-25 16:44:53 +02:00
Sean Engelhardt
03d935d633 Migrate to Angular version 7.2.14
New version of TS-Lint
New version of ngx-file-drop with breaking changes
npm audits
Removed Terser, should work out of the box again
2019-04-25 13:15:24 +02:00
Sean Engelhardt
98dec23b2f Add virtual scroling to statute list
"experimental" Virtual scrolling on the list of statutes.
It should load and behave way faster on huge amounts of data.
2019-04-25 12:57:11 +02:00
Finn Stutzenstein
0c4076fbd7
Merge pull request #4616 from FinnStutzenstein/basicAssignmentSlide
Basic assignment slide
2019-04-25 10:11:23 +02:00
FinnStutzenstein
55dd2d1d6f Basic assignment and poll slide 2019-04-24 10:34:44 +02:00
GabrielMeyer
c87c41ac56 Fixes showing the arrow to expand. 2019-04-23 16:35:41 +02:00
Finn Stutzenstein
d0c6fd1dd1
Merge pull request #4611 from tsiegleauq/error-page-redirect
Fix AuthGuard race conditions and false redirects
2019-04-23 13:44:59 +02:00
Sean Engelhardt
6a04d3ed0b Fix AuthGuard race conditions and false redirects
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.
2019-04-23 13:23:19 +02:00
Maximilian Krambach
9cdeaf9245 add tag display in several views
- call list sorting
- category sorting
- motion list
2019-04-18 12:46:07 +02:00
Sean
bf525cf852
Merge pull request #4575 from GabrielInTheWorld/tree-sort-agenda
Implements filtering the `sorting-tree.component`
2019-04-17 13:14:57 +02:00
GabrielMeyer
cdc849de6d Implements filtering the sorting-tree.component
- 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
2019-04-17 12:41:16 +02:00
Sean
b581c350c6
Merge pull request #4584 from GabrielInTheWorld/form-validation-new
Validates creating a new user
2019-04-16 14:49:51 +02:00
Maximilian Krambach
217186f435 cleanup of outdated TODOS and stubs 2019-04-16 12:47:48 +02:00
FinnStutzenstein
a715c0e432 Refresh clients cache when the database was migrated 2019-04-15 16:13:52 +02:00
GabrielMeyer
b7799c2337 Validates creating a new user
- 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.
2019-04-15 15:07:23 +02:00
FinnStutzenstein
9cfc0bbd42 Background structure for assignments
- 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.
2019-04-15 10:29:26 +02:00
Finn Stutzenstein
fc5f6f4e54
Merge pull request #4521 from normanjaeckel/RefactorStateAccessLevel
Refactored state access level by renaming state field to restriction.
2019-04-08 15:28:21 +02:00
FinnStutzenstein
23264849c9 client and small changes in the serializer 2019-04-08 14:56:32 +02:00
Sean Engelhardt
054f76a5d4 Cleanups and enhancements
Cleans up and reviews some methods
2019-04-08 10:16:48 +02:00
Maximilian Krambach
52193e9fb2 Assignments 2019-04-08 10:16:46 +02:00
Emanuel Schütze
8dfeaa5b09
Merge pull request #4547 from tsiegleauq/projector-messages-rework
Add better projector messages
2019-04-03 09:05:11 +02:00
Finn Stutzenstein
fc3098b08f
Merge pull request #4560 from FinnStutzenstein/removeChatMessageClient
Remove the ChatMessage from the client
2019-04-02 13:24:55 +02:00
Sean Engelhardt
80dbe60749 Add better projector messages
Adds messages like in the mock ups
2019-04-02 12:31:21 +02:00
Finn Stutzenstein
29762ad89e
Merge pull request #4541 from FinnStutzenstein/projectionDefaults2
Projectiondefaults, width slider direct save
2019-04-02 12:30:20 +02:00
FinnStutzenstein
2c73b9b781 Remove the ChatMessage from the client 2019-04-02 12:28:19 +02:00
Emanuel Schütze
8c26f5286b Redesign offline indicator on projector 2019-04-02 11:32:34 +02:00
FinnStutzenstein
cee6d55b82 Projectiondefaults, width slider direct save 2019-04-01 08:48:52 +02:00
Sean Engelhardt
488690dc8d Add offline indicator
Also adds a function to the offline service to "actually" determinate if we are offline or not
2019-03-29 11:09:52 +01:00
Sean Engelhardt
ab19d66022 Add prettier list of speakers
Also cleans up some CSS and unifies some Drag-N-Drop Component
styles.
2019-03-22 13:25:03 +01:00
Emanuel Schütze
d62f1538ab
Merge pull request #4489 from GabrielInTheWorld/tree-sort-agenda
Replaces the DragDrop-Tree
2019-03-19 19:46:03 +01:00
Sean Engelhardt
183d2738e0 Add Countdowns in projector detail
Adds Pretty countdown controls, detetion and edit in
Projector template.

Countdown list was removed
2019-03-19 17:20:38 +01:00
GabrielMeyer
76d760bd41 Replaces the old angular2tree with a custom drag&drop tree
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.
2019-03-19 13:19:35 +01:00
Sean Engelhardt
5d35a0fa5f Fix certain permission checks
Fixed permissions in topic detail, agenda list and user detail.
Fixes Z-Level of head bar and mat-spinner.
2019-03-14 17:50:33 +01:00
Sean Engelhardt
d4e10702cc Cleanup Repos
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
2019-03-14 10:46:33 +01:00
Sean
ae3ce54f57 workflow table state sort
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
2019-03-13 15:54:35 +01:00
Finn Stutzenstein
6d66ec5b5d
Merge pull request #4493 from FinnStutzenstein/baseComponent
Cleanup optional parameter from BaseComponent
2019-03-12 12:41:09 +01:00
Emanuel Schütze
5139fe8365 Updated tranlstions 2019-03-11 12:28:34 +01:00
FinnStutzenstein
64eab79d3b Cleanup optionalparameter from BaseComponent 2019-03-11 10:49:57 +01:00
Emanuel Schütze
0419ea629f
Merge pull request #4487 from CatoTH/OS3-Bugfix-Amendment-Status-Handling
Bugfix: Amendment statuses
2019-03-09 23:14:29 +01:00
Tobias Hößl
6b685924d9 Bugfix: Amendment statuses 2019-03-09 22:48:21 +01:00
Emanuel Schütze
1ecc7f4baa
Merge pull request #4485 from tsiegleauq/user-detail-template-fixes
User detail template fixes
2019-03-09 22:06:15 +01:00
Emanuel Schütze
cee7c39c7d
Merge pull request #4481 from tsiegleauq/speaker-list-perms
Prevent drag and final versions without perms
2019-03-09 21:49:08 +01:00
Sean Engelhardt
62e3256c54 User detail template fixes
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
2019-03-08 14:51:48 +01:00
Emanuel Schütze
3490ff3ca4
Merge pull request #4477 from FinnStutzenstein/projectorScroll
projector scroll and contdown offset
2019-03-08 14:32:42 +01:00