Commit Graph

3176 Commits (2415f84b89a8d536de588ae6f5fff320e2c4cfba)

Author SHA1 Message Date
muxator 7bdc9d8a57 dependencies: update npm 6.14.3 -> 6.14.4
For the first time in a VERY long time, we now have exactly 0 vulnerabilities
reported by npm audit.

=====
BEFORE:
$ npm audit

                       === npm audit security report ===

┌──────────────────────────────────────────────────────────────────────────────┐
│                                Manual Review                                 │
│            Some vulnerabilities require your attention to resolve            │
│                                                                              │
│         Visit https://go.npm.me/audit-guide for additional guidance          │
└──────────────────────────────────────────────────────────────────────────────┘
    [...]
found 4 low severity vulnerabilities in 13796 scanned packages
  4 vulnerabilities require manual review. See the full report for details.

=====
AFTER:
$ npm audit

                       === npm audit security report ===

found 0 vulnerabilities
 in 13796 scanned packages
2020-04-26 23:13:10 +02:00
Chocobozzz 6cb78e51b0 pad.js: wait write callback instead of buffer callback 2020-04-26 04:14:19 +02:00
Chocobozzz 53003d4471 pad.js: fix freeze on pad deletion when it has many revisions 2020-04-26 04:14:19 +02:00
John McLear 09ddfb9e20 pad_impexp: close modal on succesful import 2020-04-21 15:03:09 +00:00
John McLear de09b9a410 ace2_inner: reformatting, no functional changes 2020-04-21 15:02:58 +00:00
John McLear c9a9b7ae42 pad.js: in switchToPad() remove the first iframe before loading the pad
This is an old bug: after an import there were always two iframes with
duplicated content, and the last one was simply on top of the old one.

This bug was there since forever, and became evident when the layout was
migrated to Flexbox.
2020-04-26 03:31:02 +02:00
Luke Williams a471dbeebf html10n: do a lax match between the Accept-Language header and available locales
Before this change, we simply generated an error.

For example:
- if the browser sent 'ru-RU', but Etherpad has 'ru' available, select 'ru';
- if the browser sent 'zh', but we have 'zh-hans' available, use 'zh-hans'.

Fixes #3882.
2020-04-26 03:07:01 +02:00
Sebastian Castro e8cd83286d
css: fix timeslider toolbar on mobile when multiple authors are displayed (#3933) 2020-04-24 20:56:30 +01:00
muxator 01497aa399 SecurityManager: clarify the role of the token parameter (and cookie)
"token" is a random token representing the author, of the form
t.randomstring_of_lenght_20. The random string is generated by the client. The
cookie is used for every pad in the web UI, and is not used for HTTP API.

This comes from the discussion at https://github.com/ether/etherpad-lite/issues/3563
2020-04-24 02:55:20 +02:00
muxator 1bd595fdc7 ace2_inner: prefix all logging statements: "console.*" -> "top.console.*"
For reference, see:
https://github.com/ether/etherpad-lite/pull/3915#issuecomment-617681463
2020-04-22 22:19:40 +02:00
Sebastian Castro 789dd7acd6 skin builder: add coma at the end of the generated code
Closes #3919
2020-04-22 22:02:25 +02:00
John McLear 208c7a849c pad.html: UI telling the user that a contribution is required before importing
This commit is an integration to 24ee37a38f.
2020-04-22 21:12:49 +02:00
John McLear c6cb253f76 ImportHandler: UI for showing maxFileSize error on import
This commit is an integration to f4418149cb.
2020-04-14 10:02:21 +00:00
John McLear 53d8e32ecb messages: "install AbiWord" -> "install AbiWord or LibreOffice" 2020-04-14 09:43:21 +00:00
John McLear ffa7244e81 ace2_inner: close all gritters when hitting escape key 2020-04-22 01:51:59 +02:00
Sebastian Castro 51d924c1f8
css: Fix last commit overflow should not apply to inner-editors (#3914)
* css: Fix last commit overflow should not apply to inner-editors

* css: hide toolbar popup and nice-select when clicking on pad
2020-04-21 22:46:54 +01:00
Luke Williams 7ec3be640b specialpages: do not set a language cookie if the browser did not send one
In this way, if the browser sends a list of preferred languages via
Accept-Language HTTP header, Etherpad will honor that.

Before this change, Etherpad always forced on the user the language from
padOptions.lang in settings.json.

This reverts a feature that was introduced in 295672f598.
2020-04-19 19:56:16 +02:00
Sebastian Castro cb785590bc
css: some fix for browser compatibility refs #3907 (#3913) 2020-04-21 14:33:53 +01:00
muxator 9882362e2e settings: clarify that null defaults are supported, using the syntax "${VAR_NAME}"
Using "${VAR_NAME:null}", instead, would define the literal string "null".
2020-04-21 04:44:56 +02:00
translatewiki.net 68ff6d497d Localisation updates from https://translatewiki.net. 2020-04-20 16:52:37 +02:00
Sebastian Castro 84d82b506b
css: Fix some problems with new UI refs #3907 (#3908)
* css: Fix sidedivinner padding  creating ui problems refs #3907

* css: Fix colorpicker for mobile
2020-04-20 14:51:02 +01:00
Sebastian Castro 4ceb42603e
css: Fixes #3900 innerdocbodyu Layout broken for safari (#3906) and other browsers 2020-04-20 09:47:52 +01:00
Gabriel Augusto Almeida da0ea3a29d tests: avoid ERR_TOO_MANY_REDIRECTS on frontend tests under Windows
If Etherpad is hosted on Windows the frontend test URI needs to be
/tests/frontend/index.html (docs say .../frontend/), otherwise there is this
error: ERR_TOO_MANY_REDIRECTS.

Fixes #3804.
2020-04-20 01:48:23 +02:00
John McLear 51e40ddbc9 ace2_inner: when atext.text is "", replace with "\n"
The server is fine with atext.text being an empty string, but the front end is
not, and crashes.

It is not clear if this is a problem in the server or in the client code, and
this is a client-side hack fix. The underlying problem needs to be
investigated.

See for reference:
- https://github.com/ether/etherpad-lite/issues/3861
2020-04-20 00:49:50 +02:00
Sebastian Castro 70990afd66 Change favicon to be closer to new style 2020-04-19 18:20:21 +02:00
muxator 48b0290977 AbsolutePaths: be able to read the git commit version independently on CWD
--HG--
branch : absolute-paths
2020-04-19 04:51:50 +02:00
muxator 72ccb28382 AbsolutePaths: initial work to allow Etherpad to be run without changing CWD
With this change, it is no longer necessary to "cd" to the Etherpad base
directory to start it: Etherpad runs from everywhere.

Known issues:
- unless the program is started as before (CWD == base directory) it is still
  not possible to install & uninstall plugins via the web interface

--HG--
branch : absolute-paths
2020-04-19 04:51:50 +02:00
muxator be3d158402 pad.html: use TLS for the "Powered by" link: http://etherpad.org -> https://etherpad.org 2020-04-19 03:24:47 +02:00
Sebastian Castro 03227e526f css: fix toolbar overlay so it cover only toolbar and not the whole screen
This allows to copy & paste the pad text even when disconnected.
2020-04-19 03:03:44 +02:00
Sebastian Castro 4593c4be7c users: remove hardcoded color for editempty. Use opacity instead 2020-04-19 03:03:44 +02:00
Sebastian Castro cbd9378908 colibris: full-width-editor fix padding property which was overwritten 2020-04-19 03:03:44 +02:00
Sebastian Castro 22f7e1fd36 colibris: small improvement on chat and sidediv 2020-04-19 03:03:44 +02:00
Sebastian Castro b06324ad80 css: improve gritters
- have two containers, one of the top, on of the bottom;
- remove gritting chat message when opening the chat.
2020-04-19 03:03:44 +02:00
Sebastian Castro 3e12b6d132 chat: fix coloring with dark background, and scrolling chattext when new message come in 2020-04-19 03:03:44 +02:00
Sebastian Castro 780eaad573 no-skin: fix toolbar icons position 2020-04-19 03:03:44 +02:00
Sebastian Castro 705b6c5e2e colibris: adds toolbar border when editor is scrolling 2020-04-19 03:03:44 +02:00
Sebastian Castro f650d3a35a colibris: fixs skin variants background 2020-04-19 03:03:44 +02:00
Sebastian Castro e2e5c7695b colibris: Fix skin variant builder after introducing nice-select 2020-04-19 03:03:44 +02:00
Sebastian Castro 621448b92f css: add default color/variable for browsers non supporting css variables 2020-04-19 03:03:44 +02:00
Sebastian Castro 6de996c973 css: various improvements 2020-04-19 03:03:44 +02:00
Sebastian Castro 02769bee44 css: simplify new theme and variants
make design simpler so it's less complex to implement
remove light-soft-color and dark-soft-color
2020-04-19 03:03:44 +02:00
Sebastian Castro ca12287a26 pad_editor: fix manage show authorship on both pad and chat 2020-04-19 03:03:44 +02:00
Sebastian Castro c5fdc6129e colibris: adjust commented text color 2020-04-19 03:03:44 +02:00
Sebastian Castro 2193875292 colibris: fix coloring text when authorship background color is activated #3641 2020-04-19 03:03:44 +02:00
Sebastian Castro 5e6ceb071e prevent sticky chat and chatAndUsers for mobile 2020-04-19 03:03:44 +02:00
Sebastian Castro c945c57a87 css: use default cursor 2020-04-19 03:03:44 +02:00
Sebastian Castro 8a4de6c366 css: fix comment style 2020-04-19 03:03:44 +02:00
Sebastian Castro 0cbd178f95 css: small fixes 2020-04-19 03:03:44 +02:00
Sebastian Castro 8b6cfba639 css: simplify input coloring 2020-04-19 03:03:44 +02:00
Sebastian Castro 12da4f751f colibris: style ep_comments 2020-04-19 03:03:44 +02:00
Sebastian Castro ce1e9672f9 css: style select with nice-select library 2020-04-19 03:03:44 +02:00
Sebastian Castro 21de2bf4a0 css: fix default skin after all the changes made to Colibris 2020-04-19 03:03:44 +02:00
Sebastian Castro 7fb086edbe css: Still some adjustements to handle all variants properly 2020-04-19 03:03:44 +02:00
Sebastian Castro c6f5ced23c css: adds UI skin variants builder (only for colibris skin) 2020-04-19 03:03:44 +02:00
Sebastian Castro cbc6304243 css: add chat animation on opening 2020-04-19 03:03:44 +02:00
Sebastian Castro f5685f45c7 css: various improvements 2020-04-19 03:03:44 +02:00
Sebastian Castro 709e5d2233 colibris: introduce skin variants, in order to customize the rendering
This provide a nice way to change the colors of main containers from settings file. See comment inside settings for how it works
2020-04-19 03:03:44 +02:00
Sebastian Castro 913d5fd0d9 colibris: Improve table of content
Display it on the left to balance with comments and chat and user that can go on the right
2020-04-19 03:03:44 +02:00
Sebastian Castro 99d9752b0a css: introduce css variables in Colibris skin 2020-04-19 03:03:44 +02:00
Sebastian Castro a89503a4dd css: style scroll bars 2020-04-19 03:03:44 +02:00
Sebastian Castro 71a3579ae7 css: fix broken popup colorpicker chatAndUsers 2020-04-19 03:03:44 +02:00
Sebastian Castro eb0d8839c2 css: minor improvements 2020-04-19 03:03:44 +02:00
Sebastian Castro 281b7a2ab0 css: style checkboxes 2020-04-19 03:03:44 +02:00
Sebastian Castro 9497db89c9 css: fix popup broken by new animation
fix connectivity
fix chat and users
2020-04-19 03:03:44 +02:00
Sebastian Castro 9b60bb4d55 gritter: Improve animations
fix recently introduced bug by myself where all gritter were removed when first removed.
Display container at the top
2020-04-19 03:03:44 +02:00
Sebastian Castro 559a48221e css: Clear old comments code, we gonna write it from scratch 2020-04-19 03:03:44 +02:00
Sebastian Castro 6a5c35b651 css: layout, restrict innerdoc width instead of outerdoc width 2020-04-19 03:03:44 +02:00
Sebastian Castro 51b857ad1a css: minor improvements 2020-04-19 03:03:44 +02:00
Sebastian Castro a5164dad43 fonts: improve default fonts & font picker
- change default font for colibris and for no-skin
- add roboto and quicksand font files
- simplify font picker: directly use the name of the font, and reduce their
  number
2020-04-19 03:03:44 +02:00
Sebastian Castro fb5a65c5fc css: add normalizer, and fix previous rules
Some old rules was build with box-sizing: content-box. Switching now to border-box change how containers are calculated
2020-04-19 03:03:44 +02:00
Sebastian Castro ae1a2531f8 css: upgrade icons to fontawesome 5 2020-04-19 03:03:44 +02:00
Sebastian Castro 8a9300866b css: make box-sizing border-box by default everywhere 2020-04-19 03:03:44 +02:00
Sebastian Castro 2dc4cfdfe1 css: improve popup opening animation 2020-04-19 03:03:44 +02:00
Sebastian Castro a5d461f25f css: minor improvements 2020-04-19 03:03:44 +02:00
Sebastian Castro 6d586a21b3 colibris: clean no more used code since refactor 2020-04-19 03:03:44 +02:00
Sebastian Castro b5543d65be mobile: fix colibris skin 2020-04-19 03:03:44 +02:00
Sebastian Castro d3d8cca947 mobile: timeslider and small adjustements 2020-04-19 03:03:44 +02:00
Sebastian Castro 146bece0f1 css: fix colorpicker 2020-04-19 03:03:44 +02:00
Sebastian Castro b94019e99e mobile: fix toolbar popup 2020-04-19 03:03:44 +02:00
Sebastian Castro 1d927854a4 mobile: ability to display hidden toolbar buttons 2020-04-19 03:03:44 +02:00
Sebastian Castro d6aec95684 colibris: improve toolbar 2020-04-19 03:03:44 +02:00
Sebastian Castro c79ad1e504 css: fix Colibris timeslider 2020-04-19 03:03:44 +02:00
Sebastian Castro f3fcbf2653 css: refactor timeslider
- simplify template
- use flexboxes
- simplify javascript code
- remove some obsolete code adjusting a background-position when using steppers buttons
- add comments and remove old code
2020-04-19 03:03:44 +02:00
Sebastian Castro 41d67b9fa3 css: disable changing opacity of chatbox when writing on bottom of page 2020-04-19 03:03:44 +02:00
Sebastian Castro e041099d1b fix colibris skin after refactor 2020-04-19 03:03:44 +02:00
Sebastian Castro a482a94fb8 css: improve gritter
- rename DOM wrapper because is was blacklisted by some ad blocker
- make the template and the lib to add gritter more simple (remove unused
  option, make template simpler)
- add style for gritter error message
2020-04-19 03:03:44 +02:00
muxator c0d9797d0f formatting: remove trailing whitespaces on files Sebastian is going to modify
In the following commits Sebastian is going to edit three files. This change is
necessary make evident what he is going to modify, because some of them are old
vendorized libraries whose history we might want to reconstruct.

No functional changes.

Command:
    sed --in-place 's/[[:space:]]*$//' src/static/js/farbtastic.js
    sed --in-place 's/[[:space:]]*$//' src/static/js/gritter.js
    sed --in-place 's/[[:space:]]*$//' tests/frontend/specs/change_user_color.js
2020-04-19 03:03:44 +02:00
Sebastian Castro 082906ace2 css: Improve toolbar icon positionning 2020-04-19 03:03:44 +02:00
Sebastian Castro 8e467ce9aa css: add new icons (mic, video, mic slash, video slash, cancel)
Fix icon spin animation for popup "reconnecting to your pad"
2020-04-19 03:03:44 +02:00
Sebastian Castro 0923cd3f21 css: make all editor containers use the same background color 2020-04-19 03:03:44 +02:00
Sebastian Castro e0f63a4a14 css: add skin scrollbar 2020-04-19 03:03:44 +02:00
Sebastian Castro 5fd6aeeea6 css: refactor element positioning
No more javascript to change css properties
Remove a number of useless tables
Try to stop positioning elements with absolute, but use flex-boxes instead

Adds comment to pad template, and move popups and chatbox inside editorcontainerbox (so absolute positioning is straightforward)

Make the design more consistent: always use base color, font-family and font-size. USe relative font size if necessary (.9rem instead of 11px for example)

Remove two columns in the popups, just use one column

Remove css meant to support old browser (like -webkit-box-shadow, -moz-box-shadow). Those css rules are quite common now, and If we want to support very old browser, we should use clean-css or other tools to add them automatically
2020-04-19 03:03:44 +02:00
Sebastian Castro 0603bf8097 css: remove no more used element
#nootherusers, #chatthrob, #focusprotector, #mystatusform, .hotrect, .throbbold
2020-04-19 03:03:44 +02:00
Sebastian Castro 4177b3f943 css: split base CSS code into subfiles (without modifications) 2020-04-19 03:03:44 +02:00
muxator 0b0608d7d4 skins: use "colibris" as default, even when no settings.json is present
Starting with Etherpad 1.8.3 we decided to use Colibris as default skin for new
installs. Without this change, when starting with no settings.json file,
Etherpad would (wrongly) use "no-skin".

This change should have been part of 70bc71c0c3.
2020-04-19 02:58:35 +02:00
translatewiki.net b2aa0881af Localisation updates from https://translatewiki.net. 2020-04-16 17:06:58 +02:00
Christian Schröder f0fdb94eb0 PadMessageHandler: fix for scoping error hiding original error
`r` is undefined outside of the for loop, but used in the catch block of the try
statement
2020-04-16 02:58:47 +02:00
translatewiki.net 4ddcaefed2 Localisation updates from https://translatewiki.net. 2020-04-14 05:23:20 +02:00
John McLear c9d55c81a3 import/export: always rate limit import and exports
This is a departure from previous versions, which did not limit import/export
requests. Now such requests are ALWAYS rate limited. The default is 10 requests
per IP each 90 seconds, and also applies to old instances upgraded to 1.8.3.

Administrators can tune the parameters via settings.importExportRateLimiting.
2020-04-14 03:36:13 +02:00
John McLear 24ee37a38f import: do not allow importing into a pad from the web UI if the user is not on that pad
Importing to a pad is allowed only if an author has a session estabilished and
has already contributed to that specific pad. This means that as long as the
user is on the pad (via the browser) then import is possible.

Note that an author session is NOT the same as a group session, which is not
required.

This setting does not apply to API requests, only to /p/$PAD$/import

This change of behaviour is introduced in Etherpad 1.8.3, and cannot be
disabled.
2020-04-14 03:36:13 +02:00