Commit Graph

83 Commits

Author SHA1 Message Date
Sean Engelhardt
c2ad39a2c5 Update ngrid, redefine prototypes of datatypes
Updates ngrid to the latest version
Use Object.defineProperty instead of
Number.prototype to safer extend native datatypes
2020-01-23 12:38:46 +01:00
Sean Engelhardt
ff271748d7 Reenable Service Worker
Fixes a regression that was preventing the service worker from loading
2019-12-17 10:00:57 +01:00
Sean Engelhardt
a6891ef8e1 Consider offline during update checks
Hides the spinner if the update checks fail cause the server is
unreachable

use new cleansup the code a little
2019-12-02 16:55:46 +01:00
Sean
d3efba9dd5 Replace encode and decode
Replaces encode and decode with manual functions
2019-10-21 17:25:16 +02:00
Sean Engelhardt
58541aedd3 Adjust ng test to be more serverfriendly
Uses Chrome Headless without sandboxing for running Angular karma tests
add new "test-silently" command run tests in a more discrete way,
Should enhance testspeed on servers and CI
2019-10-11 14:29:38 +02:00
GabrielMeyer
71fdc28413 Build agenda with optional subtitle
- Updates the `virtual-scroll`-package.
- Updates the `list-view-table.component` for variable row-height.
- Adds config to have optional a subtitle in the `agenda-list`.
2019-09-24 11:15:28 +02:00
Emanuel Schütze
82d9f280ed Added new Russian language. Updated Czech translations. 2019-09-04 09:34:55 +02:00
Sean Engelhardt
62825f41b0 Update to angular 8.2
Increase the version of angular and our components
2019-08-30 10:57:28 +02:00
Sean
53dbcca85a
Merge pull request #4950 from GabrielInTheWorld/config-datetimepicker
Adds a picker for date and time in config
2019-08-29 11:43:50 +02:00
Joshua Sangmeister
90dd843d43 added a datetimepicker to the config, including localisation.
also changed from NativeDateAdapter to MomentDateAdapter.
2019-08-27 14:36:04 +02:00
GabrielMeyer
c49ea53ab1 Checks, if content is too large and hide it in 'meta-text-block'
- Also updates the library 'css-element-queries'.
- Builds a directive to check, if the scroll-height of an element
has changed.
2019-08-27 10:00:04 +02:00
GabrielMeyer
c42a9b4a13 Adds compiling to ES5 for IE11 2019-08-21 17:34:05 +02:00
Sean Engelhardt
1ecd5d663b Update NGrid and fix build errors
Set NGrid fix to alpha 26, since travis has issues with 27
Uses high memory to build, since a JavaScript heap out of memory exception will now be thrown
2019-08-15 12:01:09 +02:00
FinnStutzenstein
5aef823807 Major cache rewrite:
- Removed the restricted data cache (it wasn't used since OS 3.0)
- unify functions for restricted and full data: Just one function, which
  accteps an optional user_id: If it is None, full data is returned, and
  with a user id given, the restricted data
- More atomic access to redis, especially for:
- Check for data-existance in redis and do an auto-ensure-cache.
- Speedup through hashing of scripts and redis' script cache.
- Save schema version into the redis cache and rebuild, if the version
  changed

Client changes:
- Simplified the ConstantsService
- Fixed bug, when receiving an autoupdate with all_data=True from the
  Server
2019-08-08 08:35:02 +02:00
Joshua Sangmeister
b7c9b3f2ae w 2019-08-06 09:56:38 +02:00
jsangmeister
1bd93f0e98 added dialogs for creating and editing tags, statute paragraphs, motion comments and motion blocks 2019-08-06 08:03:59 +02:00
Sean Engelhardt
357b55ae43 Adjust compodoc to the new location of tsconfig 2019-08-02 12:23:17 +02:00
FinnStutzenstein
51a3fbdf3e New linting rules and ordering of imports 2019-07-30 09:53:14 +02:00
Sean Engelhardt
f2e9c558e1 Downgrade exceljs to 1.10.0
Upstream bugs exceljs prevent the writebuffer from working
2019-07-10 20:44:29 +02:00
Emanuel Schütze
a8ae878cd2 Run production build (ng build --prod) without --aot
aot is already set in angular.json.
2019-07-08 19:57:06 +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
Emanuel Schütze
611d0f4610 Use npm package text-encoding to fix IE11/Edge login.
IE11/Edge does not support TextDecoder/TextEncoder.
Solved by using the npm package 'text-encoding'.
2019-06-25 14:59:04 +02:00
Sean Engelhardt
582db8bf2c Remove unnecessary fs package
Remove a dev package and update the readme accordingly.
2019-06-24 11:45:35 +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
FinnStutzenstein
d9c88c02b3 Compression: Recieving compressed messages 2019-06-12 08:21:16 +02:00
FinnStutzenstein
213fc30800 Update prettier 2019-06-12 08:01:33 +02:00
André Böhlke
b3ff250d38 WIP: show PDF, PNG and JPEG files in projector 2019-05-27 16:08:10 +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
GabrielMeyer
6de79fc96a Implements a crawler to find all directly used packages
- Holds a 'default' `README.md` with the default content.
- Writes down all found packages with links to their repositories.
2019-04-16 14:20:59 +02:00
Sean Engelhardt
9b9bf244c1 Enhance excel exporting 2019-04-16 13:04:10 +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
Sean Engelhardt
a973ad1719 Export motions as excel document (.xlsx)
Adds exceljs library.
Extends the "motion export dialog" to support xlsx export with a specific set of rules similar
to CSV
2019-04-02 14:23:01 +02:00
GabrielMeyer
cd2907381b Includes hammerjs. 2019-03-25 14:41:47 +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
53ea73ccde Add "No." as translateable
To display user numbers, No. is now translateable
2019-02-20 16:17:05 +01:00
Sean Engelhardt
8f83fc1bd5 Update to angular 7.2.5
Adds new update to angular 7.2.5 including fresh npm packages.
vulnerabilities currently concern PDF and dev-packages only
2019-02-20 13:13:34 +01:00
GabrielMeyer
63989b2b29 Adds a new IconFont-set
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'
2019-02-12 17:39:06 +01:00
Emanuel Schütze
279d1323fa Updated translations 2019-02-11 21:39:14 +01:00
Maximilian Krambach
66a1ac1532 estimated duration, and datetimepicker in config 2019-02-05 13:49:48 +01:00
Jochen Saalfeld
f5ac1822bf
pinning typescript to <3.3 - fixes #4249 2019-02-04 11:55:58 +01:00
Emanuel Schütze
a4fcc43121 Hotfix: Downgrade terser to 3.14.1
see https://github.com/webpack-contrib/terser-webpack-plugin/issues/66
2019-02-03 22:26:47 +01:00
FinnStutzenstein
97f60c1e6c Restructure the client, register Repositories and map to collection
strings.
2019-02-01 10:19:17 +01:00
Sean Engelhardt
b5ea837e0a Update to angular 7.2.2
- updates the dependancien in package.json
- Angular is now compatible with current typescript
- Jasmine/Karma supports LazyLoading again
2019-01-30 12:54:25 +01:00
Maximilian Krambach
52d622b624 po2json-tempfix
run through sed after autotranslating po2json
2019-01-28 16:14:51 +01:00
Sean Engelhardt
e680ca38da Add PDF custom fonts 2019-01-22 11:59:16 +01:00
FinnStutzenstein
74e0bea108 Wirst work for the projector system on the client 2019-01-19 21:26:05 +01:00
Sean Engelhardt
9b61603dae Add motion to pdf converter
Adds the converstion from motion to PDF.
Uses pdfmake as the old openslides does
2019-01-18 20:25:06 +01:00
Emanuel Schütze
f83f3fed46 Use OpenSlides as Progressive Web App (PWA). 2019-01-17 15:58:05 +01:00
Jochen Saalfeld
4c02661649
Merge pull request #4102 from MaximilianKrambach/npmfix
fix vulnerable npm dependency angular-devkit
2019-01-14 10:00:59 +01:00
Emanuel Schütze
1ff84c1ae1 UI improvements 2019-01-11 16:51:43 +01:00