Commit Graph

103 Commits

Author SHA1 Message Date
FinnStutzenstein
e225a57f97
OpenSlides3+: External Autoupdate Service
- Removing channels. Going back to a wsgi deployment
- Removed server projector code
- Autoupdate throttling is now in the client
- New communication stack in the client
- Adopted all deployment methods: Docker stack and docker compose (prod and dev)
- Added autoupdate service as submodule
2021-01-14 07:55:41 +01:00
Emanuel Schütze
a37e2196b3 Release 3.3 2020-12-18 00:43:02 +01:00
Sean
677a93e2ca Update and fix compodoc generation
Fixes and updates compodoc.
2020-09-28 13:02:56 +02:00
Sean
6606e46f68 Add package lock to dockerfile
Adds the package-lock file to the clients dockerfile, so npm-ci works
2020-09-23 14:44:33 +02:00
Sean
42dd397fae Update to Angular 10
Update @angular/core @angular/cli
Update material, search-select, cdk, ngrid
Update localstorage
Update rxjs
Update ngx-translate
Update ngx-translate-extract
Update @schematics/angular
Update some deps
Update dev deps
Fix css imports, lint
Downgrad CDK and Material for ngrid
Update docker
Provide pdf worker
Move static file output to django folder
Update readme / used files
Update package-lock.json for npm ci
2020-09-23 10:29:57 +02:00
Sean
059ace3a11 Adjust live stream permission
New rules to show the live stream and jitsi bar
2020-09-04 14:14:36 +02:00
Sean
b59c69e086 Update TinyMCE and TinyMCE angular
Updates TinyMCE and TinyMCE angular to the latest version
2020-08-13 12:27:14 +02:00
Sean
e75573e139 Download mutliple files as zip
Adds the possitibility to download folders
and multiple files as zip.
2020-08-12 15:24:37 +02:00
Emanuel Schütze
9aefb122e6 Release 3.2 2020-07-15 16:16:00 +02:00
Sean
346413fbb0 Fix duration service for non chrome browsers
-0, 0 and other uses of negative values in the duration service hat a
change of producing undesired results.
Added tests and fixed the function
2020-07-02 15:52:31 +02:00
Sean
fde745530e Updates some npm deps, fixes travis
Another thing for travis
2020-06-23 12:12:01 +02:00
Sean
9387a3f394 Catch unsupported browsers
unspoorted browsers trying to access the login mask will be forwarded to
an info page.
The info page shows that the browser is not suppoted and hints the smallest
supported version of their current browser.
As it works best and might prevent some support calls, I added an hint
for chrome as the favored browser by OpenSlides (debateable)

To update/downgrade the supported versions, simply edit the enum in the
service.

If we cannot detect the browser, we assume it was supported.
2020-06-11 14:39:14 +02:00
Sean
0d9738b72d Integrate streams
Integrate live streaming inside the jitsi/rtc components.
Live streaming works without jitsi, but is using the same components for
a fluid integration.
A streaming URL can be set in the settings page.
Users EITHER consume the live stream OR are presend in a jitsi live
conference.

To consume both the live stream and the jitsi conference, users may use
a dedicated jitsi tab in their session.

The jitsi users can be restricted to only allow thouse with the right
the manage speakers or being present on the "current list of speakers",
automatically simulating a virtual plenum
2020-06-11 11:20:00 +02:00
Raphael Topel
60621bf4d0 Fix tinymce version to 5.2.2 2020-05-22 22:19:45 +02:00
FinnStutzenstein
38486463bc delete all speakers of all lists of speakers 2020-04-23 09:43:04 +02:00
Sean
820a47123a Fix malfunctions in Firefox ESR
Various cryptic issues that had no usefull debug output.

ngx-translates "translate" directive was causing Firefox ESR
to jump in the "drainMicroTaskQueue" infinite recursion when
using the directive in the same component as nGrid.

Therefore, I changed all uses of the translate directive
to the pipe (arround 700 or so, regex is my best friend now)

open todo: adjust the linter that we may never use the translate
directive again.

There was another cryptic issue with the current version
of exceljs which was also causing firefox to go crash
when loading a workbook object. It was sufficient to
have any Workbook() function declared in a module to cause
firefox to crash.
2020-04-06 20:36:24 +02:00
Sean
7b5f2648af Update translation extractor 2020-04-06 17:18:04 +02:00
Sean Engelhardt
e1acf6e9d6 Update to Anulgar 9
Updates Angular to version 9.1
Updates most-to-all npm components
Removes deprecated components and npm commands
Updates travis node version
Adjust the whole code base to angular 9 standard
Increase TypeScipt version to 3.8
2020-04-01 14:50:15 +02:00
Sean
5bf3dfadff Fix Shift-Enter to save poll
Fixes a bug which caused the event listener not to register
in BasePollDialog

Also hot fixes a bug in babel
2020-03-23 14:26:38 +01:00
GabrielMeyer
96aa3b0084 Adds the chart and dialog for analog voting 2020-03-17 07:24:38 +01:00
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