Commit Graph

243 Commits

Author SHA1 Message Date
Sean Engelhardt
bd83a74830 More mobile friendly lists
More mobile friendly lists using menus
2019-09-13 13:37:59 +02:00
Emanuel Schütze
367c06bb02
Merge pull request #4949 from GabrielInTheWorld/lostDeep
Cleans up the stylesheets a little bit
2019-09-03 22:04:02 +02:00
GabrielMeyer
d354461784 Cleans up the stylesheets a little bit
- Removes all `::ng-deep`
- Merges some re-used styles to one stylesheet
- The icon to open the global search will always be seen in the headbar
2019-09-02 17:33:42 +02:00
GabrielMeyer
cc456fdb5a Removes the item-number from items in PDF
- ...for exporting the agenda-list.
- Fixes #4965
2019-09-02 15:57:43 +02:00
Sean Engelhardt
5a7b32e3cd Readd filter store keys
Adds custom storage keys to the filter list again
prevents a problem that appears on minified code
2019-08-21 14:53:07 +02:00
GabrielMeyer
4dd79296e8 Fixes directories as attachments
- Directories are not available anymore.
2019-08-21 10:57:22 +02:00
FinnStutzenstein
78d2766a2c Added missing error handling 2019-08-19 12:12:22 +02:00
Sean Engelhardt
13e1c01bb6 Add amendment list
Adds a new ListView to show all amendments.
The list view can be acessed from both the motion list and the motion detail list
2019-08-16 09:27:41 +02:00
Sean
7f600d4369
Merge pull request #4908 from GabrielInTheWorld/topicSearch
Adds the option to filter a list by function-values
2019-08-13 12:03:51 +02:00
GabrielMeyer
6e059cf82e Adds the option to filter a list by function-values
- In `agenda-list.component` the user can search through the name of the topic.
2019-08-12 14:43:01 +02:00
FinnStutzenstein
0e4090c901 Reverse relations 2019-08-12 14:12:55 +02:00
FinnStutzenstein
bdb206624b Fix user loading in ViewSpeaker 2019-08-05 12:08:43 +02:00
Sean Engelhardt
0ce5ab1eec Visualize closed lists of speakers
Hints if a list of speakers is closed or not
2019-08-01 15:49:59 +02:00
Sean Engelhardt
6123216afc Add pdf webworker and progress bar
Generate PDF in the background using webworker
Shows a progress bar to estimate the PDF generation progress
2019-08-01 13:23:56 +02:00
Finn Stutzenstein
0383f824d7
Merge pull request #4874 from FinnStutzenstein/history
Improve history
2019-08-01 11:19:57 +02:00
GabrielMeyer
bd03300ee0 Exports the settings for the dialogs to a separate file.
- Includes a constant for small, medium and large dialogs.
2019-07-30 15:59:15 +02:00
GabrielMeyer
2a1a44ee5a Saves the value of the local search in 'list-view-table'
- Builds a new component 'rounded-input' to have a input-field with rounded borders.
- Saves the input on every change in the local storage.
- In the `OnInit`-function this value is restored.
2019-07-30 10:57:55 +02:00
FinnStutzenstein
a0501ccf74 Improve history 2019-07-30 10:40:36 +02:00
FinnStutzenstein
51a3fbdf3e New linting rules and ordering of imports 2019-07-30 09:53:14 +02:00
FinnStutzenstein
dd66244d84 Generic relations for the repos 2019-07-30 09:07:51 +02:00
Sean
5c660a373f
Merge pull request #4863 from tsiegleauq/ngrid-real-search-filter
Implement NGrids filter function
2019-07-22 12:19:04 +02:00
Sean Engelhardt
2372408e4c Implement NGrids filter function
- Implements NGrids new "filteredData" function, to restore old filter behavior.
Export a quick-filtered list is now possible.

- More controll about List-View-Table UI

- Use NGrid target-events for better mutli-select behavior

- Changes the behavior of hidden headers to ignore paddings-changes

- filters are more resistant to errors and storage loss
2019-07-19 14:35:24 +02:00
GabrielMeyer
4e0e641002 Form validations
The system validates the input of the users.
In most cases, if a form is invalid, the user has no chance to save his changes.
2019-07-17 15:09:38 +02:00
FinnStutzenstein
56c1da352e Directories and access permissions for mediafiles 2019-07-12 13:08:07 +02:00
GabrielMeyer
dfa80e9cd0 Separates the attachment field to a custom component
- Refactores also the 'search-value-selector.component'
2019-07-08 10:45:11 +02:00
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
FinnStutzenstein
b8d3fa2614 Cleanup 2019-06-28 07:58:36 +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
Emanuel Schütze
7dd59cc477
Merge pull request #4782 from GabrielInTheWorld/tab-title-more
Sets more tab title
2019-06-18 19:44:22 +02:00
GabrielMeyer
31161398c0 Sets more tab title
Sets the titles for the tab on more pages.
Fixes #4773.
2019-06-17 13:15:06 +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
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
213fc30800 Update prettier 2019-06-12 08:01:33 +02:00
FinnStutzenstein
4151797f60 Temporary fix for the agenda item number during updates.
The changes in the agenda reposiroty can be reverted with #4738
2019-06-06 10:03:34 +02:00
Emanuel Schütze
9651a058c3
Merge pull request #4763 from GabrielInTheWorld/tab-title
Sets the TabTitle
2019-06-05 14:49:02 +02:00
GabrielMeyer
23fe9f1a94 Sets the TabTitle
Motions, users and elections reset the title of a tab in their detail-view.
2019-06-05 12:19:18 +02:00
Maximilian Krambach
37f0baf165 sorting tree view filters
- callList
 - refactored agendaSort
2019-06-04 17:21:38 +02:00
Maximilian Krambach
16477a4e92 filter potential speakers
- filter by those already on list
- filter by present, if configured
2019-05-27 11:40:15 +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
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
FinnStutzenstein
c860f45041 Fixed false visible items in the agenda
The fix has to be reworked with #4671 and can be eliminated with #4639
2019-05-13 13:42:03 +02:00
Emanuel Schütze
bbe0b16701 Updated translations 2019-05-08 19:56:31 +02:00
FinnStutzenstein
fe81ea6ff9 Speedup DS and repo updates, DSUpdateSlots, lazyloading history objects 2019-05-06 16:33:36 +02:00
FinnStutzenstein
44b683e361 Add attachments to assignments 2019-04-29 10:31:28 +02:00
Emanuel Schütze
8985d5c5e1 Updated translations 2019-04-25 23:35: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
Maximilian Krambach
217186f435 cleanup of outdated TODOS and stubs 2019-04-16 12:47:48 +02:00
Maximilian Krambach
48593acc25 disable multiselect options if nothing selected 2019-04-15 13:24:42 +02:00
Maximilian Krambach
a2b75194a1 don't autoupdate detail forms during editing 2019-04-11 16:06:05 +02:00
Sean Engelhardt
bd33c59ddf Add permissions to ListViews
Adds the AuthGuard to certain routes
Adds an error-component
Also hides certain other elements where
permissions should apply
2019-04-06 21:13:17 +02:00
Sean Engelhardt
8236d1bf5b Enlarge page size
Enlarges the page size of all list views.
Also move the declaration of the page size into the base list view component
2019-04-04 12:10:45 +02:00
Sean Engelhardt
c0a2072cc2 Add manual sorting to Speaker list
Also create CSS Theme file to prevent side effects from theming
2019-03-25 13:34:10 +01:00
Sean
279b8b1d25
Merge pull request #4524 from GabrielInTheWorld/util-fixes
Adds listener to the pagination
2019-03-25 10:09:01 +01:00
Emanuel Schütze
0cc59c6596 Fixed CSS styling error 2019-03-22 15:47:22 +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
GabrielMeyer
6e628ea4cd Adds listener to the pagination
- Subscription to change events from pagination are used to set the made settings initial.
2019-03-22 13:05:03 +01:00
Sean Engelhardt
ca18d59ac3 Fix some z-level related issues
Fixes some z-layer effects
2019-03-20 12:45:34 +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
Maximilian Krambach
9c67b1c773 sorting from inside base repositories
Authors: FinnStutzenstein, MaximilianKrambach, tsiegleauq
2019-03-15 08:12:50 +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
Emanuel Schütze
5139fe8365 Updated tranlstions 2019-03-11 12:28:34 +01:00
Emanuel Schütze
8ce8286ea2
Merge pull request #4494 from tsiegleauq/agenda-filter-opendone
Fix agenda status filter
2019-03-11 12:23:24 +01:00
Emanuel Schütze
3684701ab6
Merge pull request #4495 from FinnStutzenstein/viewItemTitle
ViewItem title (fixes #4464)
2019-03-11 12:21:21 +01:00
FinnStutzenstein
aa81bf38c3 ViewItem title (fixes #4464) 2019-03-11 11:21:34 +01:00
Sean
8ca1a4256c Fix agenda status filter
Fixes an issue where the status filter in the agenda list did not do
nothing
2019-03-11 11:04:29 +01:00
Finn Stutzenstein
d10dfb0915
Merge pull request #4469 from MaximilianKrambach/speakertime
clarifying duration service usage
2019-03-11 08:07:41 +01:00
Sean Engelhardt
985fe9cc8b Prevent drag and final versions without perms
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
2019-03-08 11:53:25 +01:00
Sean Engelhardt
6a421f8f6b Add more motion modules
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
2019-03-08 10:43:54 +01:00
Maximilian Krambach
9cdc909d25 fix legalnotice and privacy z-index issue 2019-03-07 15:06:41 +01:00
Maximilian Krambach
e05874cf6f clarifying duration service usage 2019-03-06 16:54:00 +01:00
Maximilian Krambach
0ddded4a86 csv example export refactor
- make csv example data respect config separators
- refactor at a more central place
2019-03-06 11:03:51 +01:00
Emanuel Schütze
6e4a110116 List of speakers template 2019-03-01 13:17:30 +01:00
FinnStutzenstein
d0e6681aad One global clos reference. More projector buttons for the clos view 2019-03-01 13:17:26 +01:00
Maximilian Krambach
44d16eb244 countdown: new title field, description optional 2019-03-01 11:22:09 +01:00
FinnStutzenstein
3f77cc7b24 Add item number to topic title, hide clos slide for one projector 2019-03-01 10:26:52 +01:00
Emanuel Schütze
4de14f4100 Updated translations 2019-02-28 22:46:38 +01:00
Sean Engelhardt
03c590c66d Speaker repo
Add an own repository service to manage speakers
2019-02-28 14:26:31 +01:00
Maximilian Krambach
4cf754946c fix agenda editing button 2019-02-27 14:56:00 +01:00
FinnStutzenstein
f039293c09 current speaker chyron 2019-02-26 21:56:59 +01:00
Emanuel Schütze
fc10ee168c
Merge pull request #4400 from MaximilianKrambach/previews
refactor import  preview strings
2019-02-26 21:47:08 +01:00
Maximilian Krambach
93260aaf29 refactor import preview strings 2019-02-26 13:12:40 +01:00
Maximilian Krambach
5cedf6eb58 normalize multiSelect actions 2019-02-26 11:06:42 +01:00
Emanuel Schütze
3073844039
Merge pull request #4392 from emanuelschuetze/ui-improvments
UI improvments
2019-02-24 21:40:56 +01:00
Emanuel Schütze
a077ca85f5 UI improvments
- Use lanaguage files for tinymce.
- Fixed user import error.
- Improve colors for default/dark theme.
- Fixed missing translation.
2019-02-24 20:07:19 +01:00
Emanuel Schütze
15012f4a8b
Merge pull request #4390 from tsiegleauq/hotfix-sort-performance
Disable various expensive sorting functions
2019-02-23 14:24:44 +01:00
Sean Engelhardt
3785545a35 Disable various expensive sorting functions
Prevents the usage of: "sortViewUsersByConfig" of the userRepository
since it's an incredibe heavy operation for ~500 (real) users.

I would advice to sort the datastore rather than the lists
in the view to prevent unnecessary sorting overhead
2019-02-22 17:17:29 +01:00
GabrielMeyer
efe8f3e862 Adds sanitizer to render text correctly
Sanitized the text, which is displayed, to show formatting like
centering, bold etc.

Sanitized the text for projectors
2019-02-22 12:12:08 +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
Emanuel Schütze
29ba4a61e6 Updated translations 2019-02-19 21:32:24 +01:00
Sean Engelhardt
57be0a5bea Force DataSource to refresh
Fixed a bug where data in MatTableDataStore was not updating.
Also:
Cleaned redundant list view sorting and filtering functions
2019-02-18 14:23:33 +01:00
Finn Stutzenstein
9e794c4669
Merge pull request #4344 from FinnStutzenstein/countdowns
Countdown slide and controls
2019-02-15 12:37:23 +01:00
FinnStutzenstein
2801e28704 Countdown slide and controls 2019-02-15 12:21:23 +01:00
Emanuel Schütze
9459e9d6e9
Merge pull request #4342 from MaximilianKrambach/quickfilters
agenda and motion list filters
2019-02-14 15:53:39 +01:00
Maximilian Krambach
ca2a6b33b2 angenda and motion list filters 2019-02-14 15:15:52 +01:00